diff --git a/.gitignore b/.gitignore index 38a55a3b5d..35d50b35af 100644 --- a/.gitignore +++ b/.gitignore @@ -69,7 +69,6 @@ /etc/guix-publish.conf /etc/guix-publish.service /guix-daemon -/guix-register /guix/config.scm /libformat.a /libstore.a @@ -147,3 +146,4 @@ tmp /nix/scripts/download /etc/indent-code.el /.version +/doc/stamp-[0-9] diff --git a/Makefile.am b/Makefile.am index 7898a3648a..ab145065d6 100644 --- a/Makefile.am +++ b/Makefile.am @@ -11,6 +11,7 @@ # Copyright © 2017 Arun Isaac # Copyright © 2018 Nils Gillmann # Copyright © 2018 Julien Lepiller +# Copyright © 2018 Oleg Pykhalov # # This file is part of GNU Guix. # @@ -262,11 +263,7 @@ STORE_MODULES = \ guix/store/database.scm \ guix/store/deduplication.scm -if HAVE_GUILE_SQLITE3 MODULES += $(STORE_MODULES) -else -MODULES_NOT_COMPILED += $(STORE_MODULES) -endif !HAVE_GUILE_SQLITE3 # Internal modules with test suite support. dist_noinst_DATA = guix/tests.scm guix/tests/http.scm @@ -300,6 +297,7 @@ EXAMPLES = \ GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go $(dist_noinst_DATA:%.scm=%.go) nobase_dist_guilemodule_DATA = \ + guix/store/schema.sql \ $(MODULES) $(MODULES_NOT_COMPILED) $(AUX_FILES) $(EXAMPLES) \ $(MISC_DISTRO_FILES) nobase_nodist_guilemodule_DATA = guix/config.scm @@ -378,7 +376,9 @@ SCM_TESTS = \ tests/scripts-build.scm \ tests/containers.scm \ tests/pack.scm \ - tests/import-utils.scm + tests/import-utils.scm \ + tests/store-database.scm \ + tests/store-deduplication.scm if HAVE_GUILE_JSON @@ -390,14 +390,6 @@ SCM_TESTS += \ endif -if HAVE_GUILE_SQLITE3 - -SCM_TESTS += \ - tests/store-database.scm \ - tests/store-deduplication.scm - -endif - SH_TESTS = \ tests/guix-build.sh \ tests/guix-download.sh \ @@ -414,13 +406,6 @@ SH_TESTS = \ tests/guix-graph.sh \ tests/guix-lint.sh -if BUILD_DAEMON - -SH_TESTS += tests/guix-register.sh - -endif BUILD_DAEMON - - TESTS = $(SCM_TESTS) $(SH_TESTS) AM_TESTS_ENVIRONMENT = abs_top_srcdir="$(abs_top_srcdir)" GUILE_AUTO_COMPILE=0 @@ -470,7 +455,8 @@ dist_pkgdata_DATA = \ berlin.guixsd.org.pub # Bash completion file. -dist_bashcompletion_DATA = etc/completion/bash/guix +dist_bashcompletion_DATA = etc/completion/bash/guix \ + etc/completion/bash/guix-daemon # Zsh completion file. dist_zshcompletion_DATA = etc/completion/zsh/_guix diff --git a/NEWS b/NEWS index 0ce9611e1b..bc12161f42 100644 --- a/NEWS +++ b/NEWS @@ -2,7 +2,7 @@ #+TITLE: Guix NEWS – history of user-visible changes #+STARTUP: content hidestars -Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès +Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright @@ -14,19 +14,39 @@ Please send Guix bug reports to bug-guix@gnu.org. ** Package management +*** ‘guix pull’ has been overhauled; it now populates ~/.config/guix/current *** ‘guix pack’ now supports building SquashFS images -*** ‘guix pack’ can now build relocatable tarballs +*** ‘guix pack’ can now build tarballs with relocatable executables +*** ‘guix system’ gives more hints for common configuration errors +*** ‘guix package’ no longer warns about harmless file collisions +*** ‘guix weather’ now reports continuous integration statistics +*** ‘guix import elpa’ has a new ‘--recursive’ option ** Distribution +*** New ‘initrd-modules’ field of ‘operating-system’ +*** New ‘file-system-label’ construct supersedes ‘title’ field of ‘file-system’ +*** Package for Python 2.x has been renamed from “python” to “python2” +*** RHEL6 systems based on kernel Linux 2.6 are supported again *** New services -enlightenment +enlightenment, qemu-binfmt ** Programming interfaces +*** ‘gnu-build-system’ now includes a ‘bootstrap’ phase to run ‘autoreconf’ +*** ‘gnu-build-system’ dumps contents of ‘test-suite.log’ upon test failures +*** New build systems: ‘android-ndk’ +*** New (guix store database) and (guix store deduplication) modules +*** The ‘guix-register’ C++ program no longer is *** package-full-name (guix packages) now uses "@" as its delimiter. () + +** Noteworthy bug fixes + +** Native language support +*** the manual can now be translated and is partially translated into French + * Changes in 0.14.0 (since 0.13.0) ** Package management diff --git a/README b/README index 243a6c058c..348a7ada5f 100644 --- a/README +++ b/README @@ -23,7 +23,8 @@ GNU Guix currently depends on the following packages: - [[https://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.13 or later - [[https://gnupg.org/][GNU libgcrypt]] - [[https://www.gnu.org/software/make/][GNU Make]] - - [[https://www.gnutls.org][GnuTLS]] compiled with guile support enabled. + - [[https://www.gnutls.org][GnuTLS]] compiled with guile support enabled + - [[https://notabug.org/civodul/guile-sqlite3][Guile-SQLite3]], version 0.1.0 or later - [[https://gitlab.com/guile-git/guile-git][Guile-Git]] - [[http://www.zlib.net/][zlib]] - optionally [[https://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command diff --git a/build-aux/build-self.scm b/build-aux/build-self.scm index bccb7a959e..3ecdc931a5 100644 --- a/build-aux/build-self.scm +++ b/build-aux/build-self.scm @@ -53,7 +53,7 @@ (define %dependency-variables ;; (guix config) variables corresponding to dependencies. - '(%libgcrypt %libz %xz %gzip %bzip2 %nix-instantiate)) + '(%libgcrypt %libz %xz %gzip %bzip2)) (define %persona-variables ;; (guix config) variables that define Guix's persona. @@ -63,17 +63,14 @@ %guix-home-page-url)) (define %config-variables - ;; (guix config) variables corresponding to Guix configuration (storedir, - ;; localstatedir, etc.) - (sort (filter pair? - (module-map (lambda (name var) - (and (not (memq name %dependency-variables)) - (not (memq name %persona-variables)) - (cons name (variable-ref var)))) - (resolve-interface '(guix config)))) - (lambda (name+value1 name+value2) - (stringstring (car name+value1)) - (symbol->string (car name+value2)))))) + ;; (guix config) variables corresponding to Guix configuration. + (letrec-syntax ((variables (syntax-rules () + ((_) + '()) + ((_ variable rest ...) + (cons `(variable . ,variable) + (variables rest ...)))))) + (variables %localstatedir %storedir %sysconfdir %system))) (define* (make-config.scm #:key libgcrypt zlib gzip xz bzip2 (package-name "GNU Guix") @@ -91,12 +88,15 @@ %guix-version %guix-bug-report-address %guix-home-page-url + %store-directory + %state-directory + %store-database-directory + %config-directory %libgcrypt %libz %gzip %bzip2 - %xz - %nix-instantiate)) + %xz)) ;; XXX: Work around . (eval-when (expand load eval) @@ -105,6 +105,26 @@ #~(define-public #$name #$value))) %config-variables) + (define %store-directory + (or (and=> (getenv "NIX_STORE_DIR") canonicalize-path) + %storedir)) + + (define %state-directory + ;; This must match `NIX_STATE_DIR' as defined in + ;; `nix/local.mk'. + (or (getenv "NIX_STATE_DIR") + (string-append %localstatedir "/guix"))) + + (define %store-database-directory + (or (getenv "NIX_DB_DIR") + (string-append %state-directory "/db"))) + + (define %config-directory + ;; This must match `GUIX_CONFIGURATION_DIRECTORY' as + ;; defined in `nix/local.mk'. + (or (getenv "GUIX_CONFIGURATION_DIRECTORY") + (string-append %sysconfdir "/guix"))) + (define %guix-package-name #$package-name) (define %guix-version #$package-version) (define %guix-bug-report-address #$bug-report-address) @@ -122,10 +142,7 @@ (file-append libgcrypt "/lib/libgcrypt"))) (define %libz #+(and zlib - (file-append zlib "/lib/libz"))) - - (define %nix-instantiate ;for (guix import snix) - "nix-instantiate"))))) + (file-append zlib "/lib/libz"))))))) ;;; @@ -184,7 +201,8 @@ person's version identifier." (date->string (current-date 0) "~Y~m~d.~H")) (define* (build-program source version - #:optional (guile-version (effective-version))) + #:optional (guile-version (effective-version)) + #:key (pull-version 0)) "Return a program that computes the derivation to build Guix from SOURCE." (define select? ;; Select every module but (guix config) and non-Guix modules. @@ -214,11 +232,12 @@ person's version identifier." ;; (gnu packages …) modules are going to be looked up ;; under SOURCE. (guix config) is looked up in FRONT. - (match %load-path - ((#$source _ ...) - #t) ;already done - ((front _ ...) - (set! %load-path (list #$source front)))) + (match (command-line) + ((_ source _ ...) + (match %load-path + ((front _ ...) + (unless (string=? front source) ;already done? + (set! %load-path (list source front))))))) ;; Only load our own modules or those of Guile. (match %load-compiled-path @@ -246,18 +265,33 @@ person's version identifier." (loop (cdr spin)))) (match (command-line) - ((_ _ system) - (with-store store + ((_ source system version protocol-version) + ;; The current input port normally wraps a file + ;; descriptor connected to the daemon, or it is + ;; connected to /dev/null. In the former case, reuse + ;; the connection such that we inherit build options + ;; such as substitute URLs and so on; in the latter + ;; case, attempt to open a new connection. + (let* ((proto (string->number protocol-version)) + (store (if (integer? proto) + (port->connection (duplicate-port + (current-input-port) + "w+0") + #:version proto) + (open-connection)))) (call-with-new-thread (lambda () (spin system))) (display - (derivation-file-name + (and=> (run-with-store store - (guix-derivation #$source #$version - #$guile-version) - #:system system))))))) + (guix-derivation source version + #$guile-version + #:pull-version + #$pull-version) + #:system system) + derivation-file-name)))))) #:module-path (list source)))) ;; The procedure below is our return value. @@ -266,22 +300,37 @@ person's version identifier." (guile-version (match ((@ (guile) version)) ("2.2.2" "2.2.2") (_ (effective-version)))) + (pull-version 0) #:allow-other-keys #:rest rest) "Return a derivation that unpacks SOURCE into STORE and compiles Scheme files." ;; Build the build program and then use it as a trampoline to build from ;; SOURCE. - (mlet %store-monad ((build (build-program source version guile-version)) - (system (if system (return system) (current-system)))) + (mlet %store-monad ((build (build-program source version guile-version + #:pull-version pull-version)) + (system (if system (return system) (current-system))) + (port ((store-lift nix-server-socket))) + (major ((store-lift nix-server-major-version))) + (minor ((store-lift nix-server-minor-version)))) (mbegin %store-monad (show-what-to-build* (list build)) (built-derivations (list build)) - (let* ((pipe (begin - (setenv "GUILE_WARN_DEPRECATED" "no") ;be quiet and drive - (open-pipe* OPEN_READ - (derivation->output-path build) - source system))) + + ;; Use the port beneath the current store as the stdin of BUILD. This + ;; way, we know 'open-pipe*' will not close it on 'exec'. If PORT is + ;; not a file port (e.g., it's an SSH channel), then the subprocess's + ;; stdin will actually be /dev/null. + (let* ((pipe (with-input-from-port port + (lambda () + (setenv "GUILE_WARN_DEPRECATED" "no") ;be quiet and drive + (open-pipe* OPEN_READ + (derivation->output-path build) + source system version + (if (file-port? port) + (number->string + (logior major minor)) + "none"))))) (str (get-string-all pipe)) (status (close-pipe pipe))) (match str @@ -292,6 +341,9 @@ files." (return (newline (current-output-port))) ((store-lift add-temp-root) drv) (return (read-derivation-from-file drv)))) + ("#f" + ;; Unsupported PULL-VERSION. + (return #f)) ((? string? str) (error "invalid build result" (list build str)))))))) diff --git a/build-aux/compile-as-derivation.scm b/build-aux/compile-as-derivation.scm index afb134a92a..59a84b1415 100644 --- a/build-aux/compile-as-derivation.scm +++ b/build-aux/compile-as-derivation.scm @@ -25,7 +25,8 @@ (and=> (or (getenv "XDG_CONFIG_HOME") (and=> (getenv "HOME") (cut string-append <> "/.config"))) - (cut string-append <> "/guix/latest"))) + (cute string-append <> "/guix/current/share/guile/site/" + (effective-version)))) (use-modules (guix) (guix ui) (guix git-download) @@ -43,7 +44,7 @@ (mlet* %store-monad ((source (interned-file source "guix-source" #:select? git? #:recursive? #t)) - (drv (build source))) + (drv (build source #:pull-version 1))) (mbegin %store-monad (show-what-to-build* (list drv)) (built-derivations (list drv)) diff --git a/build-aux/hydra/gnu-system.scm b/build-aux/hydra/gnu-system.scm index 654f3ecf3e..b1554ced4c 100644 --- a/build-aux/hydra/gnu-system.scm +++ b/build-aux/hydra/gnu-system.scm @@ -43,7 +43,8 @@ (and=> (assoc-ref (current-source-location) 'filename) (lambda (file) - (let ((dir (string-append (dirname file) "/../.."))) + (let ((dir (canonicalize-path + (string-append (dirname file) "/../..")))) (format (current-error-port) "prepending ~s to the load path~%" dir) (set! %load-path (cons dir %load-path)))))) diff --git a/build-aux/hydra/guix-modular.scm b/build-aux/hydra/guix-modular.scm index 58e09e1831..9ff9e090fc 100644 --- a/build-aux/hydra/guix-modular.scm +++ b/build-aux/hydra/guix-modular.scm @@ -46,6 +46,7 @@ for SYSTEM. Use VERSION as the version identifier." `((derivation . ,(derivation-file-name (run-with-store store (build source #:version version #:system system + #:pull-version 1 #:guile-version "2.2")))) ;the latest 2.2.x (description . "Modular Guix") (long-description diff --git a/build-aux/pre-inst-env.in b/build-aux/pre-inst-env.in index 14315d40d4..286a81591c 100644 --- a/build-aux/pre-inst-env.in +++ b/build-aux/pre-inst-env.in @@ -1,7 +1,7 @@ #!/bin/sh # GNU Guix --- Functional package management for GNU -# Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès +# Copyright © 2012, 2013, 2014, 2015, 2017, 2018 Ludovic Courtès # Copyright © 2017 Eric Bavier # # This file is part of GNU Guix. @@ -55,10 +55,6 @@ NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload" @BUILD_DAEMON_OFFLOAD_FALSE@# No offloading support. @BUILD_DAEMON_OFFLOAD_FALSE@unset NIX_BUILD_HOOK -# The 'guix-register' program. -GUIX_REGISTER="$abs_top_builddir/guix-register" -export GUIX_REGISTER - # The following variables need only be defined when compiling Guix # modules, but we define them to be on the safe side in case of # auto-compilation. diff --git a/configure.ac b/configure.ac index d338bfda53..b34f15a77b 100644 --- a/configure.ac +++ b/configure.ac @@ -126,8 +126,9 @@ AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"]) dnl Guile-Sqlite3 is used by the (guix store ...) modules. GUIX_CHECK_GUILE_SQLITE3 -AM_CONDITIONAL([HAVE_GUILE_SQLITE3], - [test "x$guix_cv_have_recent_guile_sqlite3" = "xyes"]) +if test "x$guix_cv_have_recent_guile_sqlite3" != "xyes"; then + AC_MSG_ERROR([A recent Guile-SQLite3 could not be found; please install it.]) +fi dnl Make sure we have a full-fledged Guile. GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads]) @@ -159,18 +160,11 @@ AC_ARG_WITH([nix-prefix], esac], []) -AC_PATH_PROG([NIX_INSTANTIATE], [nix-instantiate]) AC_PATH_PROG([NIX_HASH], [nix-hash]) -if test "x$guix_build_daemon$NIX_INSTANTIATE$NIX_HASH" = "xno"; then +if test "x$guix_build_daemon$NIX_HASH" = "xno"; then AC_MSG_ERROR([Nix programs not found; please install Nix or use `--with-nix-prefix'.]) fi -if test "x$NIX_INSTANTIATE" = "x"; then - # This program is an optional dependency, so we just want it to be - # taken from $PATH if it's not available right now. - NIX_INSTANTIATE="nix-instantiate" -fi - AC_ARG_WITH([nixpkgs], [AS_HELP_STRING([--with-nixpkgs=DIR], [search for Nixpkgs in DIR (for testing purposes only)])], diff --git a/doc/contributing.fr.texi b/doc/contributing.fr.texi index 0ded44c5fd..bd2fa6555d 100644 --- a/doc/contributing.fr.texi +++ b/doc/contributing.fr.texi @@ -3,17 +3,17 @@ Ce projet est un effort coopératif et nous avons besoin de votre aide pour le faire grandir ! Contactez-nous sur @email{guix-devel@@gnu.org} et -@code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les -rapports de bogues, les correctifs et tout ce qui pourrait aider le -projet. Nous apprécions particulièrement toute aide sur la création de -paquets (@pxref{Consignes d'empaquetage}). +@code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les +rapports de bogues, les correctifs et tout ce qui pourrait aider le projet. +Nous apprécions particulièrement toute aide sur la création de paquets +(@pxref{Consignes d'empaquetage}). @cindex code de conduite, des contributeurs @cindex convention de contribution Nous souhaitons fournir un environnement chaleureux, amical et sans harcèlement pour que tout le monde puisse contribuer au mieux de ses -capacités. Pour cela notre projet a une « Convention de contribution » -adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une +capacités. Pour cela notre projet a une « Convention de contribution » +adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une version locale dans le fichier @file{CODE-OF-CONDUCT} dans l'arborescence des sources. @@ -22,7 +22,7 @@ correctifs et leurs communications en ligne ; ils peuvent utiliser n'importe quel nom ou pseudonyme de leur choix. @menu -* Construire depuis Git:: The latest and greatest. +* Construire depuis Git:: toujours le plus récent. * Lancer Guix avant qu'il ne soit installé:: Astuces pour les hackers. * La configuration parfaite:: Les bons outils. * Style de code:: Hygiène du contributeur. @@ -62,7 +62,7 @@ guix environment guix @end example @xref{Invoquer guix environment}, pour plus d'information sur cette -commande. On peut ajouter des dépendances supplémentaires avec +commande. On peut ajouter des dépendances supplémentaires avec @option{--ad-hoc} : @example @@ -70,7 +70,7 @@ guix environment guix --ad-hoc help2man git strace @end example Lancez @command{./bootstrap} pour générer l'infrastructure du système de -construction avec Autoconf et Automake. Si vous avez une erreur comme : +construction avec Autoconf et Automake. Si vous avez une erreur comme : @example configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES @@ -78,11 +78,11 @@ configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES @noindent cela signifie probablement qu'Autoconf n'a pas pu trouver @file{pkg.m4} qui -est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est -disponible. C'est aussi vrai pour l'ensemble de macros de @file{guile.m4} -fournies par Guile. Par exemple, si vous avez installé Automake dans -@file{/usr/local}, il ne cherchera pas les fichiers @file{.m4} dans -@file{/usr/share}. Dans ce case vous devez invoquer la commande suivante : +est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est disponible. +C'est aussi vrai pour l'ensemble de macros de @file{guile.m4} fournies par +Guile. Par exemple, si vous avez installé Automake dans @file{/usr/local}, +il ne cherchera pas les fichiers @file{.m4} dans @file{/usr/share}. Dans ce +case vous devez invoquer la commande suivante : @example export ACLOCAL_PATH=/usr/share/aclocal @@ -91,13 +91,13 @@ export ACLOCAL_PATH=/usr/share/aclocal @xref{Macro Search Path,,, automake, The GNU Automake Manual}, pour plus d'information. -Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de +Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de passer @code{--localstatedir=@var{directory}} où @var{directory} est la valeur @code{localstatedir} utilisée par votre installation actuelle (@pxref{Le dépôt} pour plus d'informations à ce propos). Finalement, vous devez invoquer @code{make check} pour lancer les tests -(@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil +(@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil aux instructions d'installation (@pxref{Installation}) ou envoyez un message à la list @email{guix-devel@@gnu.org}. @@ -106,12 +106,12 @@ aux instructions d'installation (@pxref{Installation}) ou envoyez un message @section Lancer Guix avant qu'il ne soit installé Pour garder un environnement de travail sain, il est utile de tester les -changement localement sans les installer pour de vrai. Pour pouvoir +changement localement sans les installer pour de vrai. Pour pouvoir distinguer votre rôle « d'utilisateur final » de celui parfois haut en couleur de « développeur ». Pour cela, tous les outils en ligne de commande sont utilisables même sans -avoir lancé @code{make install}. Vous devez pour cela préfixer chaque +avoir lancé @code{make install}. Vous devez pour cela préfixer chaque commande par @command{./pre-inst-env} (le script @file{pre-inst-env} se trouve dans le répertoire de plus haut niveau de l'arborescence des sources de Guix) comme cela@footnote{L'option @option{-E} de @command{sudo} garantie @@ -159,16 +159,10 @@ Le script @command{pre-inst-env} paramètre toutes les variables d'environnement nécessaires, dont @env{PATH} et @env{GUILE_LOAD_PATH}. Remarquez que @command{./pre-inst-env guix pull} ne met @emph{pas} à jour -l'arborescence des sources locale ; il met seulement à jour le lien -symbolique @file{~/.config/guix/latest} (@pxref{Invoquer guix pull}). Lancez -@command{git pull} à la place si vous voulez mettre à jour votre -arborescence des sources locale@footnote{Si vous voulez paramétrer -@command{guix} pour qu'il utilise votre dépôt Git, vous pouvez faire pointer -le lien symbolique @file{~/.config/guix/latest} vers le répertoire contenant -ce dépôt. Si vous le seul utilisateur du système, vous pouvez aussi -considérer faire pointer le lien symbolique @file{/root/.config/guix/latest} -vers @file{~/.config/guix/latest} ; comme ça root aura toujours la même -commande @command{guix} que votre utilisateur}. +l'arborescence des sources locale ; cela met seulement à jour le lien +symbolique de @file{~/.config/guix/current} (@pxref{Invoquer guix pull}). +Lancez @command{git pull} à la place si vous voulez mettre à jour votre +arborescence des source locale. @node La configuration parfaite @@ -176,7 +170,7 @@ commande @command{guix} que votre utilisateur}. La configuration parfaite pour travailler sur Guix est simplement la configuration parfaite pour travailler en Guile (@pxref{Using Guile in -Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de +Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de mieux qu'un éditeur de texte, vous avez besoin de @url{http://www.gnu.org/software/emacs, Emacs}, amélioré par le superbe @url{http://nongnu.org/geiser/, Geiser}. @@ -185,10 +179,10 @@ Geiser permet le développement interactif et incrémental depuis Emacs : la compilation du code et son évaluation depuis les buffers, l'accès à la documentation en ligne (docstrings), la complétion sensible au contexte, @kbd{M-.} pour sauter à la définition d'un objet, un REPL pour tester votre -code, et bien plus (@pxref{Introduction,,, geiser, Geiser User -Manual}). Pour travailler confortablement sur Guix, assurez-vous de modifier -le chemin de chargement de Guile pour qu'il trouve les fichiers source de -votre dépôt : +code, et bien plus (@pxref{Introduction,,, geiser, Geiser User Manual}). +Pour travailler confortablement sur Guix, assurez-vous de modifier le chemin +de chargement de Guile pour qu'il trouve les fichiers source de votre dépôt +: @lisp ;; @r{Si l'extrait est dans ~/src/guix.} @@ -196,21 +190,21 @@ votre dépôt : (add-to-list 'geiser-guile-load-path "~/src/guix")) @end lisp -To actually edit the code, Emacs already has a neat Scheme mode. But in -addition to that, you must not miss -@url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides -facilities to directly operate on the syntax tree, such as raising an -s-expression or wrapping it, swallowing or rejecting the following -s-expression, etc. +Pour effectivement éditer le code, Emacs a déjà un très bon mode Scheme. +Mais en plus de ça, vous ne devez pas rater +@url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. Il fournit des +fonctionnalités pour opérer directement sur l'arbre de syntaxe, comme +relever une s-expression ou l'envelopper, absorber ou rejeter la +s-expression suivante, etc. @cindex extraits de code @cindex modèles @cindex réduire la quantité de code commun Nous fournissons aussi des modèles pour les messages de commit git communs -et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces +et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces modèles s'utilisent avec @url{http://joaotavora.github.io/yasnippet/, YASnippet} pour développer des chaînes courtes de déclenchement en extraits -de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la +de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la variables @var{yas-snippet-dirs} d'Emacs. @lisp @@ -220,14 +214,14 @@ variables @var{yas-snippet-dirs} d'Emacs. @end lisp Les extraits de messages de commit dépendent de @url{https://magit.vc/, -Magit} pour afficher les fichiers sélectionnés. Lors de la modification d'un -message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un +Magit} pour afficher les fichiers sélectionnés. Lors de la modification +d'un message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un modèle de message de commit pour ajouter un paquet ; tapez @code{update} suivi de @kbd{TAB} pour insérer un modèle pour la mise à jour d'un paquet. L'extrait principal pour @code{scheme-mode} est lancé en tapant -@code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de -déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait +@code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de +déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait @code{origin} lui-même peut aussi insérer des chaînes de déclenchement qui finissent sur @code{…}, qui peuvent aussi être étendues. @@ -236,7 +230,7 @@ finissent sur @code{…}, qui peuvent aussi être étendues. @section Style de code En général notre code suit le Standard de Code GNU (@pxref{Top,,, standards, -GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc +GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc voici quelques règles supplémentaires. @menu @@ -250,7 +244,7 @@ voici quelques règles supplémentaires. @node Paradigme de programmation @subsection Paradigme de programmation -Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le +Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le code qui s'occupe des entrées-sorties est une exception ainsi que les procédures qui implémentent des concepts bas-niveau comme la procédure @code{memoize}. @@ -259,8 +253,8 @@ procédures qui implémentent des concepts bas-niveau comme la procédure @subsection Modules Les modules Guile qui sont sensés être utilisés du côté de la construction -doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne -doivent pas se référer à d'autres modules Guix ou GNU. Cependant il est +doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne +doivent pas se référer à d'autres modules Guix ou GNU@. Cependant il est correct pour un module « côté hôte » de dépendre d'un module coté construction. @@ -272,13 +266,13 @@ l'espace de nom @code{(gnu @dots{})} plutôt que @code{(guix @dots{})}. La tendance en Lisp classique est d'utiliser des listes pour tout représenter et de naviguer dedans « à la main ( avec @code{car}, @code{cdr}, -@code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style, +@code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style, notamment le fait qu'il soit dur à lire, source d'erreur et un obstacle aux rapports d'erreur bien typés. Le code de Guix devrait définir des types de données appropriées (par -exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes. En -plus, il devrait utiliser la recherche de motifs, via le module Guile +exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes. +En plus, il devrait utiliser la recherche de motifs, via le module Guile @code{(ice-9 match)}, surtout pour rechercher dans des listes. @node Formatage du code @@ -287,22 +281,22 @@ plus, il devrait utiliser la recherche de motifs, via le module Guile @cindex formater le code @cindex style de code Lorsque nous écrivons du code Scheme, nous suivons la sagesse commune aux -programmeurs Scheme. En général, nous suivons les +programmeurs Scheme. En général, nous suivons les @url{http://mumble.net/~campbell/scheme/style.txt, règles de style de -Riastradh}. Ce document décrit aussi les conventions utilisées dans le code -de Guile. Il est bien pensé et bien écrit, alors n'hésitez pas à le lire. +Riastradh}. Ce document décrit aussi les conventions utilisées dans le code +de Guile. Il est bien pensé et bien écrit, alors n'hésitez pas à le lire. Certaines formes spéciales introduites dans Guix comme la macro -@code{substitute*} ont des règles d'indentation spécifiques. Elles sont +@code{substitute*} ont des règles d'indentation spécifiques. Elles sont définies dans le fichier @file{.dir-locals.el} qu'Emacs utilise -automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode +automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode @code{guix-devel-mode} qui indente et colore le code Guix correctement (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual}). @cindex indentation, du code @cindex formatage, du code Si vous n'utilisez pas Emacs, assurez-vous que votre éditeur connaisse ces -règles. Pour indenter automatiquement une définition de paquet, vous pouvez +règles. Pour indenter automatiquement une définition de paquet, vous pouvez aussi lancer : @example @@ -311,16 +305,24 @@ aussi lancer : @noindent Cela indente automatiquement la définition de @var{package} dans -@file{gnu/packages/@var{file}.scm} en lançant Emacs en mode commande. Pour +@file{gnu/packages/@var{file}.scm} en lançant Emacs en mode commande. Pour indenter un fichier complet, n'indiquez pas de second argument : @example ./etc/indent-code.el gnu/services/@var{file}.scm @end example +@cindex Vim, édition de code Scheme +Si vous éditez du code avec Vim, nous recommandons de lancer @code{:set +autoindent} pour que votre code soit automatiquement indenté au moment où +vous l'entrez. En plus, +@uref{https://www.vim.org/scripts/script.php?script_id=3998, +@code{paredit.vim}} peut vous aider à gérer toutes ces parenthèses. + Nous demandons que toutes les procédure de premier niveau contiennent une -chaîne de documentation. Ce pré-requis peut être relâché pour les procédures -privées simples dans l'espace de nom @code{(guix build @dots{})} cependant. +chaîne de documentation. Ce pré-requis peut être relâché pour les +procédures privées simples dans l'espace de nom @code{(guix build @dots{})} +cependant. Les procédures ne devraient pas avoir plus de quatre paramètres positionnés. Utilisez des paramètres par mot-clefs pour les procédures qui @@ -330,14 +332,14 @@ prennent plus de quatre paramètres. @node Envoyer des correctifs @section Envoyer des correctifs -Le développement se fait avec le système de contrôle de version Git. Ainsi, -l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les +Le développement se fait avec le système de contrôle de version Git. Ainsi, +l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les contributions sous forme de correctifs produits par @code{git format-patch} envoyés sur la liste de diffusion @email{guix-patches@@gnu.org}. Cette liste de diffusion est gérée par une instance Debbugs accessible à l'adresse @uref{https://bugs.gnu.org/guix-patches}, qui nous permet de -suivre les soumissions. Chaque message envoyé à cette liste se voit +suivre les soumissions. Chaque message envoyé à cette liste se voit attribuer un numéro de suivi ; les gens peuvent ensuite répondre à cette soumission en envoyant un courriel à @code{@var{NNN}@@debbugs.gnu.org}, où @var{NNN} est le numéro de suivi (@pxref{Envoyer une série de correctifs}). @@ -352,13 +354,13 @@ paquet, veuillez vérifier cette check-list : @enumerate @item Si les auteurs du paquet logiciel fournissent une signature cryptographique -pour l'archive, faîtes un effort pour vérifier l'authenticité de -l'archive. Pour un fichier de signature GPG détaché, cela se fait avec la -commande @code{gpg --verify}. +pour l'archive, faîtes un effort pour vérifier l'authenticité de l'archive. +Pour un fichier de signature GPG détaché, cela se fait avec la commande +@code{gpg --verify}. @item Prenez un peu de temps pour fournir un synopsis et une description adéquats -pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes +pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes directrices. @item @@ -376,9 +378,9 @@ Assurez-vous que le paquet n'utilise pas de copie groupée d'un logiciel déjà disponible dans un paquet séparé. Parfois, les paquets incluent des copie du code source de leurs dépendances -pour le confort de leurs utilisateurs. Cependant, en tant que distribution, +pour le confort de leurs utilisateurs. Cependant, en tant que distribution, nous voulons nous assurer que ces paquets utilisent bien les copient que -nous avons déjà dans la distribution si elles existent. Cela améliore +nous avons déjà dans la distribution si elles existent. Cela améliore l'utilisation des ressources (la dépendance n'est construite et stockée qu'une seule fois) et permet à la distribution de faire des changements transversaux comme appliquer des correctifs de sécurité pour un paquet donné @@ -386,8 +388,8 @@ depuis un unique emplacement et qu'ils affectent tout le système, ce qu'empêchent les copies groupées. @item -Regardez le profile rapporté par @command{guix size} (@pxref{Invoquer guix size}). Cela vous permettra de remarquer des références à d'autres paquets -qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le +Regardez le profile rapporté par @command{guix size} (@pxref{Invoquer guix size}). Cela vous permettra de remarquer des références à d'autres paquets +qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le paquet (@pxref{Des paquets avec plusieurs résultats}) et quelle dépendance facultative utiliser. @@ -413,27 +415,34 @@ principes : branche @code{master} (changements non-disruptifs). @item entre 300 et 1 200 paquets dépendants -branche @code{staging} (changemets non-disruptifs). Cette branche devrait -être fusionnées dans @code{master} tous les 3 semaines. Les changements par +branche @code{staging} (changemets non-disruptifs). Cette branche devrait +être fusionnées dans @code{master} tous les 3 semaines. Les changements par thèmes (par exemple une mise à jour de la pile GNOME) peuvent aller dans une branche spécifique (disons, @code{gnome-updates}). @item plus de 1 200 paquets dépendants branche @code{core-updates} (peut inclure des changements majeurs et -potentiellement disruptifs). Cette branche devrait être fusionnée dans +potentiellement disruptifs). Cette branche devrait être fusionnée dans @code{master} tous les 2,5 mois environ. @end table -Toutes ces branches sont gérées par notre ferme de construction et -fusionnées dans @code{master} une fois que tout a été construit -correctement. Cela nous permet de corriger des problèmes avant qu'ils -n'atteignent les utilisateurs et réduit la fenêtre pendant laquelle les -binaires pré-construits ne sont pas disponibles. +Toutes ces branches sont @uref{https://hydra.gnu.org/project/gnu, gérées par +notre ferme de construction} et fusionnées dans @code{master} une fois que +tout a été construit correctement. Cela nous permet de corriger des +problèmes avant qu'ils n'atteignent les utilisateurs et réduit la fenêtre +pendant laquelle les binaires pré-construits ne sont pas disponibles. + +@c TODO: It would be good with badges on the website that tracks these +@c branches. Or maybe even a status page. +Généralement les autres branches que @code{master} sont considérées comme +@emph{gelées} s'il y a eu une évaluation récente ou qu'il y a une branche +@code{-next} correspondante. Demandez sur la liste de diffusion ou sur IRC +si vous n'êtes pas sûr de savoir où pousser votre correctif. @item @cindex déterminisme, du processus de construction @cindex construction reproductibles, vérification -Vérifiez si le processus de construction du paquet est déterministe. Cela +Vérifiez si le processus de construction du paquet est déterministe. Cela signifie typiquement vérifier qu'une construction indépendante du paquet renvoie exactement le même résultat que vous avez obtenu, bit à bit. @@ -449,10 +458,10 @@ comme l'horodatage ou des sorties générées aléatoirement dans le résultat d la construction. Une autre option consiste à utiliser @command{guix challenge} -(@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois +(@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois que les paquets ont été commités et construits par @code{hydra.gnu.org} pour -vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une -autre machine qui peut le construire et lancez @command{guix publish}. Puis +vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une +autre machine qui peut le construire et lancez @command{guix publish}. Puis la machine distante est sûrement différente de la vôtre, cela peut trouver des problèmes de non-déterminisme liés au matériel — par exemple utiliser une extension du jeu d'instruction — ou du noyau du système d'exploitation — @@ -466,8 +475,8 @@ neutre lorsque vous vous référez à des personnes, comme le @item Vérifiez que votre correctif contienne seulement un ensemble de changements -liés. Grouper des changements non liés ensemble rend la revue plus difficile -et plus lente. +liés. Grouper des changements non liés ensemble rend la revue plus +difficile et plus lente. Ajouter plusieurs paquet ou une mise à jour d'un paquet avec des corrections dans ce paquet sont des exemples de changements sans rapport. @@ -480,10 +489,10 @@ du code}). @end enumerate Lorsque vous envoyez un correctif à la liste de diffusion, utilisez -@samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de +@samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de courriel ou la commande @command{git send-email} (@pxref{Envoyer une série -de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit -en ligne, soit en pièce-jointe MIME. Nous vous conseillons de faire +de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit +en ligne, soit en pièce-jointe MIME@. Nous vous conseillons de faire attention si votre client de courriel change par exemple les retours à la ligne ou l'indentation, ce qui peut casser les correctifs. @@ -497,9 +506,9 @@ Lorsqu'un bogue est résolu, veuillez fermer le fil en envoyant un courriel à @cindex @code{git-send-email} @c Debbugs bug: https://debbugs.gnu.org/db/15/15361.html -Lorsque vous envoyez une série de correctifs (p.e. avec @code{git +Lorsque vous envoyez une série de correctifs (p.@@:: ex.@: avec @code{git send-email}), envoyez d'abord une premier message à @email{guix-patches@@gnu.org} puis envoyez le reste des correctifs à @email{@var{NNN}@@debbugs.gnu.org} pour vous assurer qu'ils seront groupés -ensemble. Voyez @uref{https://debbugs.gnu.org/Advanced.html, la +ensemble. Voyez @uref{https://debbugs.gnu.org/Advanced.html, la documentation de Debbugs} pour plus d'informations. diff --git a/doc/contributing.texi b/doc/contributing.texi index 2792fe2b29..ca44b3b0b0 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -155,15 +155,9 @@ The @command{pre-inst-env} script sets up all the environment variables necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}. Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the -local source tree; it simply updates the @file{~/.config/guix/latest} +local source tree; it simply updates the @file{~/.config/guix/current} symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if -you want to upgrade your local source tree.@footnote{If you would like -to set up @command{guix} to use your Git checkout, you can point the -@file{~/.config/guix/latest} symlink to your Git checkout directory. -If you are the sole user of your system, you may also consider pointing -the @file{/root/.config/guix/latest} symlink to point to -@file{~/.config/guix/latest}; this way it will always use the same -@command{guix} as your user does.} +you want to upgrade your local source tree. @node The Perfect Setup @@ -413,12 +407,19 @@ changes). This branch is intended to be merged in @code{master} every 2.5 months or so. @end table -All these branches are tracked by our build farm -and merged into @code{master} once +All these branches are @uref{https://hydra.gnu.org/project/gnu, +tracked by our build farm} and merged into @code{master} once everything has been successfully built. This allows us to fix issues before they hit users, and to reduce the window during which pre-built binaries are not available. +Generally, branches other than @code{master} are considered +@emph{frozen} if there has been a recent evaluation, or there is a +corresponding @code{-next} branch. Please ask on the mailing list or +IRC if unsure where to place a patch. +@c TODO: It would be good with badges on the website that tracks these +@c branches. Or maybe even a status page. + @item @cindex determinism, of build processes @cindex reproducible builds, checking diff --git a/doc/guix.fr.texi b/doc/guix.fr.texi index 5ad167a317..8eda0087e9 100644 --- a/doc/guix.fr.texi +++ b/doc/guix.fr.texi @@ -10,6 +10,7 @@ @setfilename guix.fr.info @documentencoding UTF-8 @documentlanguage fr +@frenchspacing on @settitle Manuel de référence de GNU Guix @c %**end of header @@ -36,45 +37,46 @@ Lassieur@* Copyright @copyright{} 2017 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher -Allan Webber@* Copyright @copyright{} 2017 Marius Bakke@* Copyright +Allan Webber@* Copyright @copyright{} 2017, 2018 Marius Bakke@* Copyright @copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike -Gerwitz +Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby Vous avez la permission de copier, distribuer ou modifier ce document sous les termes de la Licence GNU Free Documentation, version 1.3 ou toute version ultérieure publiée par la Free Software Foundation ; sans section -invariante, texte de couverture et sans texte de quatrième de -couverture. Une copie de la licence est incluse dans la section intitulée -« GNU Free Documentation License ». +invariante, texte de couverture et sans texte de quatrième de couverture. +Une copie de la licence est incluse dans la section intitulée « GNU Free +Documentation License ». @end copying @dircategory Administration système @direntry -* Guix: (guix). Gérer les logiciels installés et la +* Guix: (guix.fr). Gérer les logiciels installés et la configuration du système. -* guix package : (guix)Invoquer guix package. Intaller, supprimer et - mettre à jour des paquets. -* guix gc : (guix)Invoquer guix gc. Récupérer de l'espace disque - inutilisé. -* guix pull : (guix)Invoquer guix pull. Mettre à jour la liste des - paquets disponibles. -* guix system : (guix)Invoquer guix system. Gérer la configuration du - système d'exploitation. +* guix package : (guix.fr)Invoquer guix package. Intaller, supprimer et + mettre à jour des + paquets. +* guix gc : (guix.fr)Invoquer guix gc. Récupérer de l'espace disque + inutilisé. +* guix pull : (guix.fr)Invoquer guix pull. Mettre à jour la liste des + paquets disponibles. +* guix system : (guix.fr)Invoquer guix system. Gérer la configuration du + système d'exploitation. @end direntry @dircategory Développement logiciel @direntry -* guix environment : (guix)Invoquer guix environment. Construire des - environnements de - construction avec - Guix. -* guix build : (guix)Invoquer guix build. Construire des paquets. -* guix pack : (guix) Invoquer guix pack. Créer des lots binaires. +* guix environment : (guix.fr)Invoquer guix environment. Construire des + environnements + de construction + avec Guix. +* guix build : (guix.fr)Invoquer guix build. Construire des paquets. +* guix pack : (guix.fr) Invoquer guix pack. Créer des lots binaires. @end direntry @titlepage @@ -95,8 +97,8 @@ couverture. Une copie de la licence est incluse dans la section intitulée @node Top @top GNU Guix -Cette documentation décrit GNU Guix version @value{VERSION}, un outils de -gestion de paquets fonctionnel écrit pour le système GNU. +Cette documentation décrit GNU Guix version @value{VERSION}, un outil de +gestion de paquets fonctionnel écrit pour le système GNU@. @menu * Introduction:: Qu'est-ce que Guix ? @@ -146,7 +148,7 @@ Gestion de paquets * Fonctionnalités:: Comment Guix va rendre votre vie plus heureuse. -* Invoquer guix package:: Installation, suppression, etc. de paquets. +* Invoquer guix package:: Installation, suppression, etc.@: de paquets. * Substituts:: Télécharger des binaire déjà construits. * Des paquets avec plusieurs résultats:: Un seul paquet source, plusieurs résultats. @@ -250,14 +252,15 @@ Installation du système d'installation. * Préparer l'installation:: Réseau, partitionnement, etc. * Effectuer l'installation:: Pour de vrai. -* Installer GuixSD dans une VM:: Jouer avec GuixSD. +* Installer GuixSD dans une VM:: Jouer avec GuixSD@. * Construire l'image d'installation:: D'où vient tout cela. Configuration système -* Utiliser le système de configuration:: Personnaliser votre système GNU. +* Utiliser le système de configuration:: Personnaliser votre système + GNU@. * Référence de système d'exploitation:: Détail sur la déclaration de système d'exploitation. * Systèmes de fichiers:: Configurer les montages de systèmes de @@ -268,7 +271,7 @@ Configuration système culturelles. * Services:: Spécifier les services du système. * Programmes setuid:: Programmes tournant avec les privilèges root. -* Certificats X.509:: Authentifier les serveurs HTTPS. +* Certificats X.509:: Authentifier les serveurs HTTPS@. * Name Service Switch:: Configurer le « name service switch » de la libc. * Disque de RAM initial:: Démarrage de Linux-Libre. @@ -284,30 +287,33 @@ Services * Services de base:: Services systèmes essentiels. -* Scheduled Job Execution:: The mcron service. -* Log Rotation:: The rottlog service. -* Networking Services:: Network setup, SSH daemon, etc. -* X Window:: Graphical display. -* Printing Services:: Local and remote printer support. -* Desktop Services:: D-Bus and desktop services. -* Database Services:: SQL databases, key-value stores, etc. -* Mail Services:: IMAP, POP3, SMTP, and all that. -* Messaging Services:: Messaging services. -* Telephony Services:: Telephony services. -* Monitoring Services:: Monitoring services. -* Kerberos Services:: Kerberos services. -* Web Services:: Web servers. -* Certificate Services:: TLS certificates via Let's Encrypt. -* DNS Services:: DNS daemons. -* VPN Services:: VPN daemons. -* Network File System:: NFS related services. -* Continuous Integration:: The Cuirass service. -* Power management Services:: The TLP tool. -* Audio Services:: The MPD. -* Virtualization Services:: Virtualization services. -* Version Control Services:: Providing remote access to Git repositories. -* Game Services:: Game servers. -* Miscellaneous Services:: Other services. +* Exécution de tâches planifiées:: Le service mcron. +* Rotation des journaux:: Le service rottlog. +* Services réseau:: Paramétres réseau, démon SSH, etc. +* Système de fenêtrage X:: Affichage graphique. +* Services d'impression:: Support pour les imprimantes locales et + distantes. +* Services de bureaux:: D-Bus et les services de bureaux. +* Services de son:: Services ALSA et Pulseaudio. +* Services de bases de données:: Bases SQL, clefs-valeurs, etc. +* Services de courriels:: IMAP, POP3, SMTP, et tout ça. +* Services de messagerie:: Services de messagerie. +* Services de téléphonie:: Services de téléphonie. +* Services de surveillance:: Services de surveillance. +* Services Kerberos:: Services Kerberos. +* Services web:: Services web. +* Services de certificats:: Certificats TLS via Let's Encrypt. +* Services DNS:: Démons DNS@. +* Services VPN:: Démons VPN +* Système de fichiers en réseau:: Services liés à NFS@. +* Intégration continue:: Le service Cuirass. +* Services de gestion de l'énergie:: L'outil TLP@. +* Services audio:: MPD@. +* Services de virtualisation:: Services de virtualisation. +* Services de contrôle de version:: Fournit des accès distants à des + dépôts Git. +* Services de jeu:: Serveurs de jeu. +* Services divers:: D'autres services. Définir des services @@ -315,7 +321,7 @@ Définir des services * Composition de services:: Le modèle de composition des services. * Types service et services:: Types et services. -* Référence de service:: Référence de l'API. +* Référence de service:: Référence de l'API@. * Services Shepherd:: Un type de service particulier. Consignes d'empaquetage @@ -330,13 +336,13 @@ Consignes d'empaquetage * Modules python:: Un peu de comédie anglaise. * Modules perl:: Petites perles. * Paquets java:: Pause café. -* Polices de caractères:: Fond of fonts. +* Polices de caractères:: À fond les fontes. Contribuer -* Construire depuis Git:: The latest and greatest. +* Construire depuis Git:: toujours le plus récent. * Lancer Guix avant qu'il ne soit installé:: Astuces pour les hackers. * La configuration parfaite:: Les bons outils. * Style de code:: Hygiène du contributeur. @@ -362,7 +368,7 @@ Style de code @cindex but GNU Guix@footnote{« Guix » se prononce comme « geeks » (en prononçant le « s »), ou « ɡiːks » dans l'alphabet phonétique international (API).} est un -outil de gestion de paquets pour le système GNU. Guix facilite pour les +outil de gestion de paquets pour le système GNU@. Guix facilite pour les utilisateurs non privilégiés l'installation, la mise à jour et la suppression de paquets, la restauration à un ensemble de paquets précédent, la construction de paquets depuis les sources et plus généralement aide à la @@ -383,9 +389,9 @@ téléchargement des binaires pré-construits depuis les sources autorisées @cindex personnalisation, des paquets Guix contient de nombreuses définitions de paquet GNU et non-GNU qui respectent tous les @uref{https://www.gnu.org/philosophy/free-sw.fr.html, -libertés de l'utilisateur}. Il est @emph{extensible} : les utilisateurs +libertés de l'utilisateur}. Il est @emph{extensible} : les utilisateurs peuvent écrire leurs propres définitions de paquets (@pxref{Définition des paquets}) et les rendre disponibles dans des modules de paquets -indépendants (@pxref{Modules de paquets}). Il est aussi +indépendants (@pxref{Modules de paquets}). Il est aussi @emph{personnalisable} : les utilisateurs peuvent @emph{dériver} des définitions de paquets spécialisées à partir de définitions existantes, même depuis la ligne de commande (@pxref{Options de transformation de paquets}). @@ -395,7 +401,7 @@ depuis la ligne de commande (@pxref{Options de transformation de paquets}). Vous pouvez installer GNU@tie{}Guix sur un système GNU/Linux existant pour compléter les outils disponibles sans interférence (@pxref{Installation}) ou vous pouvez l'utiliser à travers la @dfn{Distribution Système Guix} ou -GuixSD (@pxref{Distribution GNU}) distincte. Avec GNU@tie{}GuixSD, vous +GuixSD (@pxref{Distribution GNU}) distincte. Avec GNU@tie{}GuixSD, vous @emph{déclarez} tous les aspects de la configuration du système d'exploitation et Guix s'occupe de créer la configuration d'une manière transactionnelle, reproductible et sans état (@pxref{Configuration @@ -403,27 +409,27 @@ système}). @cindex gestion de paquet fonctionnelle Sous le capot, Guix implémente la discipline de @dfn{gestion de paquet -fonctionnel} inventé par Nix (@pxref{Remerciements}). Dans Guix le processus -de construction et d'installation des paquets est vu comme une -@emph{fonction} dans le sens mathématique du terme. Cette fonction a des +fonctionnel} inventé par Nix (@pxref{Remerciements}). Dans Guix le +processus de construction et d'installation des paquets est vu comme une +@emph{fonction} dans le sens mathématique du terme. Cette fonction a des entrées (comme des scripts de construction, un compilateur et des -bibliothèques) et renvoie un paquet installé. En tant que fonction pure, son -résultat ne dépend que de ses entrées. Par exemple, il ne peut pas faire -référence à des logiciels ou des scripts qui n'ont pas été explicitement -passés en entrée. Une fonction de construction produit toujours le même -résultat quand on lui donne le même ensemble d'entrée. Elle ne peut pas -modifier l'environnement du système en cours d'exécution d'aucune manière ; -par exemple elle ne peut pas créer, modifier ou supprimer des fichiers en -dehors de ses répertoires de construction et d'installation. Ce résultat -s'obtient en lançant les processus de construction dans des environnements -isolés (ou des @dfn{conteneurs}) où seules les entrées explicites sont -visibles. +bibliothèques) et renvoie un paquet installé. En tant que fonction pure, +son résultat ne dépend que de ses entrées. Par exemple, il ne peut pas +faire référence à des logiciels ou des scripts qui n'ont pas été +explicitement passés en entrée. Une fonction de construction produit +toujours le même résultat quand on lui donne le même ensemble d'entrée. +Elle ne peut pas modifier l'environnement du système en cours d'exécution +d'aucune manière ; par exemple elle ne peut pas créer, modifier ou supprimer +des fichiers en dehors de ses répertoires de construction et +d'installation. Ce résultat s'obtient en lançant les processus de +construction dans des environnements isolés (ou des @dfn{conteneurs}) où +seules les entrées explicites sont visibles. @cindex dépôt Le résultat des fonctions de construction de paquets est mis en @dfn{cache} dans le système de fichier, dans répertoire spécial appelé le @dfn{dépôt} -(@pxref{Le dépôt}). Chaque paquet est installé dans son répertoire propre -dans le dépôt — par défaut dans @file{/gnu/store}. Le nom du répertoire +(@pxref{Le dépôt}). Chaque paquet est installé dans son répertoire propre +dans le dépôt — par défaut dans @file{/gnu/store}. Le nom du répertoire contient un hash de toutes les entrées utilisées pour construire le paquet ; ainsi, changer une entrée donnera un nom de répertoire différent. @@ -439,19 +445,19 @@ de miettes pour les paquets (@pxref{Fonctionnalités}). @cindex installer Guix GNU Guix est disponible au téléchargement depuis son site web sur -@url{http://www.gnu.org/software/guix/}. Cette section décrit les pré-requis -logiciels de Guix ainsi que la manière de l'installer et de se préparer à -l'utiliser. +@url{http://www.gnu.org/software/guix/}. Cette section décrit les +pré-requis logiciels de Guix ainsi que la manière de l'installer et de se +préparer à l'utiliser. Remarquez que cette section concerne l'installation du gestionnaire de -paquet, ce qui se fait sur un système GNU/Linux en cours d'exécution. Si +paquet, ce qui se fait sur un système GNU/Linux en cours d'exécution. Si vous souhaitez plutôt installer le système d'exploitation GNU complet, @pxref{Installation du système}. @cindex distro extérieure Lorsqu'il est installé sur an système GNU/Linux existant — ci-après nommé @dfn{distro extérieure} — GNU@tie{}Guix complète les outils disponibles sans -interférence. Ses données se trouvent exclusivement dans deux répertoires, +interférence. Ses données se trouvent exclusivement dans deux répertoires, typiquement @file{/gnu/store} et @file{/var/guix} ; les autres fichiers de votre système comme @file{/etc} sont laissés intacts. @@ -473,39 +479,40 @@ Une fois installé, Guix peut être mis à jour en lançant @command{guix pull} @node Installation binaire @section Installation binaire -@cindex installing Guix from binaries -This section describes how to install Guix on an arbitrary system from a -self-contained tarball providing binaries for Guix and for all its -dependencies. This is often quicker than installing from source, which is -described in the next sections. The only requirement is to have -GNU@tie{}tar and Xz. +@cindex installer Guix depuis les binaires +Cette section décrit comment intaller Guix sur un système quelconque depuis +un archive autonome qui fournit les binaires pour Guix et toutes ses +dépendances. C'est souvent plus rapide que d'installer depuis les sources, +ce qui est décrit dans les sections suivantes. Le seul pré-requis est +d'avoir GNU@tie{}tar et Xz. -We provide a +Nous fournissons un script @uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh, -shell installer script}, which automates the download, installation, and -initial configuration of Guix. It should be run as the root user. +script d'intallation shell} qui automatise le téléchargement, l'installation +et la configuration initiale de Guix. Il devrait être lancé en tant +qu'utilisateur root. -Installing goes along these lines: +L'installation se comme ceci : @enumerate @item -@cindex downloading Guix binary -Download the binary tarball from -@indicateurl{ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{system}.tar.xz}, -where @var{system} is @code{x86_64-linux} for an @code{x86_64} machine -already running the kernel Linux, and so on. +@cindex téléchargement du Guix binaire +Téléchargez l'archive binaire depuis +@indicateurl{ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{système}.tar.xz}, +où @var{système} est @code{x86_64-linux} pour une machine @code{x86_64} sur +laquelle tourne déjà le noyau Linux, etc. @c The following is somewhat duplicated in ``System Installation''. -Make sure to download the associated @file{.sig} file and to verify the -authenticity of the tarball against it, along these lines: +Assurez-vous de télécharger le fichier @file{.sig} associé et de vérifier +l'authenticité de l'archive avec, comme ceci : @example -$ wget ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{system}.tar.xz.sig -$ gpg --verify guix-binary-@value{VERSION}.@var{system}.tar.xz.sig +$ wget ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{système}.tar.xz.sig +$ gpg --verify guix-binary-@value{VERSION}.@var{système}.tar.xz.sig @end example -If that command fails because you do not have the required public key, then -run this command to import it: +Si cette commande échoue parce que vous n'avez pas la clef publique requise, +lancez cette commande pour l'importer : @example $ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} @@ -513,44 +520,46 @@ $ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} @noindent @c end authentication part -and rerun the @code{gpg --verify} command. +et relancez la commande @code{gpg --verify}. @item -Now, you need to become the @code{root} user. Depending on your -distribution, you may have to run @code{su -} or @code{sudo -i}. As -@code{root}, run: +Maintenant, vous devez devenir l'utilisateur @code{root}. En fonction de +votre distribution, vous devrez lancer @code{su -} ou @code{sudo -i}. En +tant que @code{root}, lancez : @example # cd /tmp # tar --warning=no-timestamp -xf \ - guix-binary-@value{VERSION}.@var{system}.tar.xz + guix-binary-@value{VERSION}.@var{système}.tar.xz # mv var/guix /var/ && mv gnu / @end example -This creates @file{/gnu/store} (@pxref{Le dépôt}) and @file{/var/guix}. -The latter contains a ready-to-use profile for @code{root} (see next step.) +Cela crée @file{/gnu/store} (@pxref{Le dépôt}) and @file{/var/guix}. Ce +deuxième dossier contient un profil pret à être utilisé pour @code{root} +(voir les étapes suivantes). -Do @emph{not} unpack the tarball on a working Guix system since that would -overwrite its own essential files. +Ne décompressez @emph{pas} l'archive sur un système Guix lancé car cela +écraserait ses propres fichiers essentiels. -The @code{--warning=no-timestamp} option makes sure GNU@tie{}tar does not -emit warnings about ``implausibly old time stamps'' (such warnings were -triggered by GNU@tie{}tar 1.26 and older; recent versions are fine.) They -stem from the fact that all the files in the archive have their modification -time set to zero (which means January 1st, 1970.) This is done on purpose -to make sure the archive content is independent of its creation time, thus -making it reproducible. +L'option @code{--warning=no-timestamp} s'assure que GNU@tie{}tar ne produise +pas d'avertissement disant que « l'horodatage est trop vieux pour être +plausible » (ces avertissements étaient produits par GNU@tie{}tar 1.26 et +précédents ; les versions récentes n'ont pas ce problème). Cela vient du +fait que les fichiers de l'archive ont pour date de modification zéro (ce +qui signifie le 1er janvier 1970). C'est fait exprès pour s'assurer que le +contenu de l'archive ne dépende pas de la date de création, ce qui la rend +reproductible. @item -Make @code{root}'s profile available under @file{~root/.guix-profile}: +Rendez le profil de @code{root} disponible sous @file{~root/.guix-profile} : @example # ln -sf /var/guix/profiles/per-user/root/guix-profile \ ~root/.guix-profile @end example -Source @file{etc/profile} to augment @code{PATH} and other relevant -environment variables: +Sourcez @file{etc/profile} pour augmenter @code{PATH} et les autres +variables d'environnement nécessaires : @example # GUIX_PROFILE="`echo ~root`/.guix-profile" ; \ @@ -558,14 +567,14 @@ environment variables: @end example @item -Create the group and user accounts for build users as explained below -(@pxref{Réglages de l'environnement de construction}). +Créez le groupe et les comptes utilisateurs pour les utilisateurs de +construction comme expliqué plus loin (@pxref{Réglages de l'environnement de construction}). @item -Run the daemon, and set it to automatically start on boot. +Lancez le démon et paramétrez-le pour démarrer automatiquement au démarrage. -If your host distro uses the systemd init system, this can be achieved with -these commands: +Si votre distribution hôte utilise le système d'initialisation systemd, cela +peut se faire avec ces commandes : @c Versions of systemd that supported symlinked service files are not @c yet widely deployed, so we should suggest that users copy the service @@ -580,7 +589,7 @@ these commands: # systemctl start guix-daemon && systemctl enable guix-daemon @end example -If your host distro uses the Upstart init system: +Si votre distribution hôte utilise le système d'initialisation Upstart : @example # initctl reload-configuration @@ -588,15 +597,15 @@ If your host distro uses the Upstart init system: # start guix-daemon @end example -Otherwise, you can still start the daemon manually with: +Sinon, vous pouvez toujours démarrer le démon manuellement avec : @example # ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild @end example @item -Make the @command{guix} command available to other users on the machine, for -instance with: +Rendez la commande @command{guix} disponible pour les autres utilisateurs +sur la machine, par exemple avec : @example # mkdir -p /usr/local/bin @@ -604,8 +613,8 @@ instance with: # ln -s /var/guix/profiles/per-user/root/guix-profile/bin/guix @end example -It is also a good idea to make the Info version of this manual available -there: +C'est aussi une bonne idée de rendre la version Info de ce manuel disponible +ici : @example # mkdir -p /usr/local/share/info @@ -614,13 +623,13 @@ there: do ln -s $i ; done @end example -That way, assuming @file{/usr/local/share/info} is in the search path, -running @command{info guix} will open this manual (@pxref{Other Info -Directories,,, texinfo, GNU Texinfo}, for more details on changing the Info -search path.) +Comme cela, en supposant que @file{/usr/local/share/info} est dans le chemin +de recherche, lancer @command{info guix} ouvrira ce manuel (@pxref{Other +Info Directories,,, texinfo, GNU Texinfo}, pour plus de détails sur comment +changer le chemin de recherche de Info). @item -@cindex substitutes, authorization thereof +@cindex substituts, autorisations Pour utiliser les substituts de @code{hydra.gnu.org} ou l'un de ses mirroirs (@pxref{Substituts}), autorisez-les : @@ -629,169 +638,181 @@ Pour utiliser les substituts de @code{hydra.gnu.org} ou l'un de ses mirroirs @end example @item -Each user may need to perform a few additional steps to make their Guix -environment ready for use, @pxref{Réglages applicatifs}. +Chaque utilisateur peut avoir besoin d'effectuer des étapes supplémentaires +pour que leur environnement Guix soit prêt à être utilisé, +@pxref{Réglages applicatifs}. @end enumerate -Voilà, the installation is complete! +Voilà, l'installation est terminée ! -You can confirm that Guix is working by installing a sample package into the -root profile: +Vous pouvez confirmer que Guix fonctionne en installant un paquet d'exemple +dans le profil de root : @example # guix package -i hello @end example -The @code{guix} package must remain available in @code{root}'s profile, or -it would become subject to garbage collection---in which case you would find -yourself badly handicapped by the lack of the @command{guix} command. In -other words, do not remove @code{guix} by running @code{guix package -r -guix}. +Le paquet @code{guix} doit rester disponible dans le profil de @code{root} +ou il pourrait être sujet au ramassage de miettes — dans ce cas vous vous +retrouveriez gravement handicapé par l'absence de la commande +@command{guix}. En d'autres termes, ne supprimez pas @code{guix} en lançant +@code{guix package -r guix}. -The binary installation tarball can be (re)produced and verified simply by -running the following command in the Guix source tree: +L'archive d'installation binaire peut être (re)produite et vérifiée +simplement en lançaint la commande suivante dans l'arborescence des sources +de Guix : @example make guix-binary.@var{system}.tar.xz @end example @noindent -... which, in turn, runs: +… ce qui à son tour lance : @example guix pack -s @var{system} --localstatedir guix @end example -@xref{Invoquer guix pack}, for more info on this handy tool. +@xref{Invoquer guix pack}, pour plus d'info sur cet outil pratique. @node Prérequis @section Prérequis -This section lists requirements when building Guix from source. The build -procedure for Guix is the same as for other GNU software, and is not covered -here. Please see the files @file{README} and @file{INSTALL} in the Guix -source tree for additional details. +Cette section dresse la liste des pré-requis pour la construction de Guix +depuis les sources. La procédure de construction pour Guix est la même que +pour les autres logiciels GNU, et n'est pas expliquée ici. Regardez les +fichiers @file{README} et @file{INSTALL} dans l'arborescence des sources de +Guix pour plus de détails. -GNU Guix depends on the following packages: +GNU Guix dépend des paquets suivants : @itemize -@item @url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.13 or -later, including 2.2.x; -@item @url{http://gnupg.org/, GNU libgcrypt}; +@item @url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.13 ou +ultérieure, dont 2.2.x, +@item @url{http://gnupg.org/, GNU libgcrypt}, @item -@uref{http://gnutls.org/, GnuTLS}, specifically its Guile bindings +@uref{http://gnutls.org/, GnuTLS}, en particulier ses liaisons Guile (@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, -gnutls-guile, GnuTLS-Guile}); +gnutls-guile, GnuTLS-Guile}), @item @c FIXME: Specify a version number once a release has been made. -@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August 2017 -or later; -@item @url{http://zlib.net, zlib}; +@uref{https://notabug.org/civodul/guile-sqlite3, Guile-SQLite3} ; +@item +@c FIXME: Specify a version number once a release has been made. +@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, d'août 2017 ou +ultérieur, +@item @url{http://zlib.net, zlib}, @item @url{http://www.gnu.org/software/make/, GNU Make}. @end itemize -The following dependencies are optional: +Les dépendances suivantes sont facultatives : @itemize @item -Installing @url{http://savannah.nongnu.org/projects/guile-json/, Guile-JSON} -will allow you to use the @command{guix import pypi} command -(@pxref{Invoquer guix import}). It is of interest primarily for developers -and not for casual users. +Installer @url{http://savannah.nongnu.org/projects/guile-json/, Guile-JSON} +vous permettra d'utiliser la commande @command{guix import pypi} +(@pxref{Invoquer guix import}). Il est surtout utile pour les développeurs +et pas pour les utilisateurs occasionnels. @item @c Note: We need at least 0.10.2 for 'channel-send-eof'. -Support for build offloading (@pxref{Réglages du délestage du démon}) and -@command{guix copy} (@pxref{Invoquer guix copy}) depends on +Le support pour la décharge de construction (@pxref{Réglages du délestage du démon}) +et @command{guix copy} (@pxref{Invoquer guix copy}) dépend de @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH}, version -0.10.2 or later. +0.10.2 ou ulltérieure. @item -When @url{http://www.bzip.org, libbz2} is available, @command{guix-daemon} -can use it to compress build logs. +Lorsque @url{http://www.bzip.org, libbz2} est disponible, +@command{guix-daemon} peut l'utiliser pour compresser les journaux de +construction. @end itemize -Unless @code{--disable-daemon} was passed to @command{configure}, the -following packages are also needed: +À moins que @code{--disable-daemon} ne soit passé à @command{configure}, les +paquets suivants sont aussi requis : @itemize -@item @url{http://sqlite.org, SQLite 3}; -@item @url{http://gcc.gnu.org, GCC's g++}, with support for the -C++11 standard. +@item @url{http://sqlite.org, SQLite 3}, +@item @url{http://gcc.gnu.org, GCC's g++}, avec le support pour le +standard C++11. @end itemize -@cindex state directory -When configuring Guix on a system that already has a Guix installation, be -sure to specify the same state directory as the existing installation using -the @code{--localstatedir} option of the @command{configure} script +@cindex répertoire d'état +Lorsque vous configurez Guix sur un système qui a déjà une installation de +Guix, assurez-vous de spécifier le même répertoire d'état que l'installation +existante avec l'option @code{--localstatedir} du script @command{configure} (@pxref{Directory Variables, @code{localstatedir},, standards, GNU Coding -Standards}). The @command{configure} script protects against unintended -misconfiguration of @var{localstatedir} so you do not inadvertently corrupt -your store (@pxref{Le dépôt}). +Standards}). Le script @command{configure} vous protège des mauvaises +configurations involontaires de @var{localstatedir} pour éviter que vous ne +corrompiez votre dépôt (@pxref{Le dépôt}). -@cindex Nix, compatibility -When a working installation of @url{http://nixos.org/nix/, the Nix package -manager} is available, you can instead configure Guix with -@code{--disable-daemon}. In that case, Nix replaces the three dependencies -above. +@cindex Nix, compatibilité +Lorsque vous avez une installation fonctionnelle du +@url{http://nixos.org/nix/, gestionnaire de paquets Nix}, vous pouvez +configurer Guix avec @code{--disable-daemon}. Dan ce cas, Nix remplace les +trois dépendances au dessus. -Guix is compatible with Nix, so it is possible to share the same store -between both. To do so, you must pass @command{configure} not only the same -@code{--with-store-dir} value, but also the same @code{--localstatedir} -value. The latter is essential because it specifies where the database that -stores metadata about the store is located, among other things. The default -values for Nix are @code{--with-store-dir=/nix/store} and -@code{--localstatedir=/nix/var}. Note that @code{--disable-daemon} is not -required if your goal is to share the store with Nix. +Guix est compatible avec Nix, donc il est possible de partager le même dépôt +entre les deux. Pour cela, vous devez passer à @command{configure} non +seulement la même valeur de @code{--with-store-dir} mais aussi la même +valeur de @code{--localstatedir}. Cette dernière est nécessaires car elle +spécifie l'emplacement de la base de données qui stocke les métadonnées sur +le dépôt, entre autres choses. Les valeurs par défaut pour Nix sont +@code{--with-store-dir=/nix/store} et @code{--localstatedir=/nix/var}. +Remarquez que @code{--disable-daemon} n'est pas requis si votre but est de +partager le dépôt avec Nix. @node Lancer la suite de tests @section Lancer la suite de tests -@cindex test suite -After a successful @command{configure} and @code{make} run, it is a good -idea to run the test suite. It can help catch issues with the setup or -environment, or bugs in Guix itself---and really, reporting test failures is -a good way to help improve the software. To run the test suite, type: +@cindex suite de tests +Après avoir lancé @command{configure} et @code{make} correctement, c'est une +bonne idée de lancer la suite de tests. Elle peut aider à trouver des +erreurs avec la configuration ou l'environnement, ou des bogues dans Guix +lui-même — et vraiment, rapporter des échecs de tests est une bonne manière +d'aider à améliorer le logiciel. Pour lancer la suite de tests, tapez : @example make check @end example -Test cases can run in parallel: you can use the @code{-j} option of -GNU@tie{}make to speed things up. The first run may take a few minutes on a -recent machine; subsequent runs will be faster because the store that is -created for test purposes will already have various things in cache. +Les cas de tests peuvent être lancés en parallèle : vous pouvez utiliser +l'option @code{-j} de GNU@tie{}make pour accélérer les choses. Le premier +lancement peut prendre plusieurs minutes sur une machine récente ; les +lancements suivants seront plus rapides car le dépôt créé pour les tests +aura déjà plusieurs choses en cache. -It is also possible to run a subset of the tests by defining the -@code{TESTS} makefile variable as in this example: +Il est aussi possible de lancer un sous-ensemble des tests en définissant la +variable makefile @code{TESTS} comme dans cet exemple : @example make check TESTS="tests/store.scm tests/cpio.scm" @end example -By default, tests results are displayed at a file level. In order to see -the details of every individual test cases, it is possible to define the -@code{SCM_LOG_DRIVER_FLAGS} makefile variable as in this example: +Par défaut, les résultats des tests sont affichés au niveau du fichier. +Pour voir les détails de chaque cas de test individuel, il est possible de +définire la variable makefile @code{SCM_LOG_DRIVER_FLAGS} comme dans cet +exemple : @example make check TESTS="tests/base64.scm" SCM_LOG_DRIVER_FLAGS="--brief=no" @end example -Upon failure, please email @email{bug-guix@@gnu.org} and attach the -@file{test-suite.log} file. Please specify the Guix version being used as -well as version numbers of the dependencies (@pxref{Prérequis}) in your -message. +Après un échec, envoyez un courriel à @email{bug-guix@@gnu.org} et attachez +le fichier @file{test-suite.log}. Précisez la version de Guix utilisée +ainsi que les numéros de version de ses dépendances (@pxref{Prérequis}) +dans votre message. -Guix also comes with a whole-system test suite that tests complete GuixSD -operating system instances. It can only run on systems where Guix is -already installed, using: +Guix possède aussi une suite de tests de systèmes complets qui test des +instances complètes du système d'exploitation GuixSD@. Elle ne peut être +lancée qui sur un système où Guix est déjà installé, avec : @example make check-system @end example @noindent -or, again, by defining @code{TESTS} to select a subset of tests to run: +Ou, de nouveau, en définissant @code{TESTS} pour choisir un sous-ensemble +des tests à lancer : @example make check-system TESTS="basic mcron" @@ -799,29 +820,30 @@ make check-system TESTS="basic mcron" Ces tests systèmes sont définis dans les modules @code{(gnu tests @dots{})}. Ils fonctionnent en lançant les systèmes d'exploitation sous test -avec une instrumentation légère dans une machine virtuelle (VM). Ils peuvent -être intenses en terme de calculs ou plutôt rapides en fonction de la -disponibilité des substituts de leurs dépendances -(@pxref{Substituts}). Certains requièrent beaucoup d'espace disque pour -contenir les images des VM. +avec une instrumentation légère dans une machine virtuelle (VM). Ils +peuvent être intenses en terme de calculs ou plutôt rapides en fonction de +la disponibilité des substituts de leurs dépendances (@pxref{Substituts}). +Certains requièrent beaucoup d'espace disque pour contenir les images des +VM@. -Again in case of test failures, please send @email{bug-guix@@gnu.org} all -the details. +De nouveau, en cas d'échec, envoyez tous les détails à +@email{bug-guix@@gnu.org}. @node Paramétrer le démon @section Paramétrer le démon -@cindex daemon -Operations such as building a package or running the garbage collector are -all performed by a specialized process, the @dfn{build daemon}, on behalf of -clients. Only the daemon may access the store and its associated database. -Thus, any operation that manipulates the store goes through the daemon. For -instance, command-line tools such as @command{guix package} and -@command{guix build} communicate with the daemon (@i{via} remote procedure -calls) to instruct it what to do. +@cindex démon +Les opérations comme la construction d'un paquet ou le lancement du +ramasse-miettes sont toutes effectuées par un processus spécialisé, le +@dfn{démon de construction}, pour le compte des clients. Seul le démon peut +accéder au dépôt et à sa base de données associée. Ainsi, toute opération +manipulant le dépôt passe par le démon. Par exemple, les outils en ligne de +commande comme @command{guix package} et @command{guix build} communiquent +avec le démon (@i{via} des appels de procédures distantes) pour lui dire +quoi faire. Les sections suivantes expliquent comment préparer l'environnement du démon -de construction. Voir aussi @ref{Substituts} pour apprendre comment +de construction. Voir aussi @ref{Substituts} pour apprendre comment permettre le téléchargement de binaires pré-construits. @menu @@ -835,29 +857,33 @@ permettre le téléchargement de binaires pré-construits. @node Réglages de l'environnement de construction @subsection Réglages de l'environnement de construction -@cindex build environment -In a standard multi-user setup, Guix and its daemon---the -@command{guix-daemon} program---are installed by the system administrator; -@file{/gnu/store} is owned by @code{root} and @command{guix-daemon} runs as -@code{root}. Unprivileged users may use Guix tools to build packages or -otherwise access the store, and the daemon will do it on their behalf, -ensuring that the store is kept in a consistent state, and allowing built -packages to be shared among users. +@cindex environnement de construction +Dans une installation standard multi-utilisateurs, Guix et son démon — le +programme @command{guix-daemon} — sont installé par l'administrateur système +; @file{/gnu/store} appartient à @code{root} et @command{guix-daemon} est +lancé en @code{root}. Les utilisateurs non-privilégiés peuvent utiliser les +outils Guix pour construire des paquets ou accéder au dépôt et le démon le +fera pour leur compte en s'assurant que le dépôt garde un état cohérent et +permet le partage des paquets déjà construits entre les utilisateurs. -@cindex build users -When @command{guix-daemon} runs as @code{root}, you may not want package -build processes themselves to run as @code{root} too, for obvious security -reasons. To avoid that, a special pool of @dfn{build users} should be -created for use by build processes started by the daemon. These build users -need not have a shell and a home directory: they will just be used when the -daemon drops @code{root} privileges in build processes. Having several such -users allows the daemon to launch distinct build processes under separate -UIDs, which guarantees that they do not interfere with each other---an -essential feature since builds are regarded as pure functions -(@pxref{Introduction}). +@cindex utilisateurs de construction +Alors que @command{guix-daemon} tourne en @code{root}, vous n'avez pas +forcément envie que les processus de construction de paquets tournent aussi +en @code{root}, pour des raisons de sécurité évidentes. Pour éviter cela, +vous devriez créer une réserve spéciale d'@dfn{utilisateurs de construction} +que les processus de construction démarrés par le démon utiliseront. Ces +utilisateurs de construction n'ont pas besoin d'un shell ou d'un répertoire +personnel ; ils seront seulement utilisés quand le démon délaissera ses +privilèges @code{root} dans les processus de construction. En ayant +plusieurs de ces utilisateurs, vous permettez au démon de lancer des +processus de construction distincts sous des UID différent, ce qui garanti +qu'aucune interférence n'ait lieu entre les uns et les autres — une +fonctionnalité essentielle puisque les constructions sont supposées être des +fonctions pures (@pxref{Introduction}). -On a GNU/Linux system, a build user pool may be created like this (using -Bash syntax and the @code{shadow} commands): +Sur un système GNU/Linux, on peut créer une réserve d'utilisateurs de +construction comme ceci (avec la syntaxe Bash et les commandes +@code{shadow}) : @c See http://lists.gnu.org/archive/html/bug-guix/2013-01/msg00239.html @c for why `-G' is needed. @@ -867,25 +893,29 @@ Bash syntax and the @code{shadow} commands): do useradd -g guixbuild -G guixbuild \ -d /var/empty -s `which nologin` \ - -c "Guix build user $i" --system \ + -c "Utilisateur de construction Guix $i" --system \ guixbuilder$i; done @end example @noindent -The number of build users determines how many build jobs may run in -parallel, as specified by the @option{--max-jobs} option (@pxref{Invoquer guix-daemon, @option{--max-jobs}}). To use @command{guix system vm} and -related commands, you may need to add the build users to the @code{kvm} -group so they can access @file{/dev/kvm}, using @code{-G guixbuild,kvm} -instead of @code{-G guixbuild} (@pxref{Invoquer guix system}). +Le nombre d'utilisateurs de construction détermine le nombre de tâches de +constructions qui peuvent tourner en parallèle, tel que spécifié par +l'option @option{--max-jobs} (@pxref{Invoquer guix-daemon, +@option{--max-jobs}}). Pour utiliser @command{guix system vm} et les +commandes liées, vous devrez ajouter les utilisateurs de construction au +groupe @code{kvm} pour qu'ils puissent accéder à @file{/dev/kvm} avec +@code{-G guixbuild,kvm} plutôt que @code{-G guixbuild} (@pxref{Invoquer guix system}). -The @code{guix-daemon} program may then be run as @code{root} with the -following command@footnote{If your machine uses the systemd init system, -dropping the @file{@var{prefix}/lib/systemd/system/guix-daemon.service} file -in @file{/etc/systemd/system} will ensure that @command{guix-daemon} is -automatically started. Similarly, if your machine uses the Upstart init -system, drop the @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} -file in @file{/etc/init}.}: +Le programme @code{guix-daemon} peut ensuite être lancé en @code{root} avec +la commande suivante@footnote{Si votre machine utilise le système +d'initialisation systemd, copiez le fichier +@file{@var{prefix}/lib/systemd/system/guix-daemon.service} dans +@file{/etc/systemd/system} pour vous assurer que @command{guix-daemon} est +démarré automatiquement. De même, si votre machine utilise le système +d'initialisation Upstart, copiez le fichier +@file{@var{prefix}/lib/upstart/system/guix-daemon.conf} dans +@file{/etc/init}.} : @example # guix-daemon --build-users-group=guixbuild @@ -893,77 +923,82 @@ file in @file{/etc/init}.}: @cindex chroot @noindent -This way, the daemon starts build processes in a chroot, under one of the -@code{guixbuilder} users. On GNU/Linux, by default, the chroot environment -contains nothing but: +De cette façon, le démon démarre les processus de construction dans un +chroot, sous un des utilisateurs @code{guixbuilder}. Sur GNU/Linux par +défaut, l'environnement chroot ne contient rien d'autre que : @c Keep this list in sync with libstore/build.cc! ----------------------- @itemize @item -a minimal @code{/dev} directory, created mostly independently from the host -@code{/dev}@footnote{``Mostly'', because while the set of files that appear -in the chroot's @code{/dev} is fixed, most of these files can only be -created if the host has them.}; +un répertoire @code{/dev} minimal, créé presque indépendamment du +@code{/dev} de l'hôte@footnote{« presque », parce que même si l'ensemble des +fichiers qui apparaissent dans le @code{/dev} du chroot sont déterminés à +l'avance, la plupart de ces fichiers ne peut pas être créée si l'hôte ne les +a pas.} ; @item -the @code{/proc} directory; it only shows the processes of the container -since a separate PID name space is used; +le répertoire @code{/proc} ; il ne montre que les processus du conteneur car +on utilise une espace de nom séparé pour les PID ; @item -@file{/etc/passwd} with an entry for the current user and an entry for user -@file{nobody}; +@file{/etc/passwd} avec une entrée pour l'utilisateur actuel et une entrée +pour l'utilisateur @file{nobody} ; @item -@file{/etc/group} with an entry for the user's group; +@file{/etc/group} avec une entrée pour le groupe de l'utilisateur ; @item -@file{/etc/hosts} with an entry that maps @code{localhost} to -@code{127.0.0.1}; +@file{/etc/hosts} avec une entrée qui fait correspondre @code{localhost} à +@code{127.0.0.1} ; @item -a writable @file{/tmp} directory. +un répertoire @file{/tmp} inscriptible. @end itemize -You can influence the directory where the daemon stores build trees @i{via} -the @code{TMPDIR} environment variable. However, the build tree within the -chroot is always called @file{/tmp/guix-build-@var{name}.drv-0}, where -@var{name} is the derivation name---e.g., @code{coreutils-8.24}. This way, -the value of @code{TMPDIR} does not leak inside build environments, which -avoids discrepancies in cases where build processes capture the name of -their build tree. +Vous pouvez influencer le répertoire où le démon stocke les arbres de +construction @i{via} la variable d'environnement @code{TMPDIR}. Cependant, +l'arbre de construction dans le chroot sera toujours appelé +@file{/tmp/guix-build-@var{nom}.drv-0}, où @var{nom} est le nom de la +dérivation — p.@: ex.@: @code{coreutils-8.24}. De cette façon, la valeur de +@code{TMPDIR} ne fuite pas à l'intérieur des environnements de construction, +ce qui évite des différences lorsque le processus de construction retient le +nom de leur répertoire de construction. @vindex http_proxy Le démon tient aussi compte de la variable d'environnement @code{http_proxy} pour ses téléchargements HTTP, que ce soit pour les dérivations à sortie fixes (@pxref{Dérivations}) ou pour les substituts (@pxref{Substituts}). -If you are installing Guix as an unprivileged user, it is still possible to -run @command{guix-daemon} provided you pass @code{--disable-chroot}. -However, build processes will not be isolated from one another, and not from -the rest of the system. Thus, build processes may interfere with each -other, and may access programs, libraries, and other files available on the -system---making it much harder to view them as @emph{pure} functions. +Si vous installez Guix en tant qu'utilisateur non-privilégié, il est +toujours possible de lancer @command{guix-daemon} si vous passez +@code{--disable-chroot}. Cependant, les processus de construction ne seront +pas isolés les uns des autres ni du reste du système. Ainsi les processus +de construction peuvent interférer les uns avec les autres, et peuvent +accéder à des programmes, des bibliothèques et d'autres fichiers présents +sur le système — ce qui rend plus difficile de les voir comme des fonctions +@emph{pures}. @node Réglages du délestage du démon -@subsection Using the Offload Facility +@subsection Utiliser le dispositif de déchargement -@cindex offloading -@cindex build hook -When desired, the build daemon can @dfn{offload} derivation builds to other -machines running Guix, using the @code{offload} @dfn{build -hook}@footnote{This feature is available only when -@uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} is present.}. -When that feature is enabled, a list of user-specified build machines is -read from @file{/etc/guix/machines.scm}; every time a build is requested, -for instance via @code{guix build}, the daemon attempts to offload it to one -of the machines that satisfy the constraints of the derivation, in -particular its system type---e.g., @file{x86_64-linux}. Missing -prerequisites for the build are copied over SSH to the target machine, which -then proceeds with the build; upon success the output(s) of the build are -copied back to the initial machine. +@cindex déchargement +@cindex crochet de construction +Si vous le souhaitez, le démon de construction peut @dfn{décharger} des +constructions de dérivations sur d'autres machines Guix avec le @dfn{crochet +de construction} @code{offload}@footnote{Cette fonctionnalité n'est +disponible que si @uref{https://github.com/artyom-poptsov/guile-ssh, +Guile-SSH} est présent.}. Lorsque cette fonctionnalité est activée, Guix +lit une liste de machines de constructions spécifiée par l'utilisateur dans +@file{/etc/guix/machines.scm} ; à chaque fois qu'une construction est +demandée, par exemple par @code{guix build}, le démon essaie de la décharger +sur une des machines qui satisfont les contraintes de la dérivation, en +particulier le type de système, p.@: ex.@: @file{x86_64-linux}. Les +prérequis manquants pour la construction sont copiés par SSH sur la machine +de construction qui procède ensuite à la construction ; si elle réussi, les +sorties de la construction sont copiés vers la machine de départ. -The @file{/etc/guix/machines.scm} file typically looks like this: +Le fichier @file{/etc/guix/machines.scm} ressemble typiquement à cela : @example (list (build-machine @@ -971,7 +1006,7 @@ The @file{/etc/guix/machines.scm} file typically looks like this: (system "x86_64-linux") (host-key "ssh-ed25519 AAAAC3Nza@dots{}") (user "bob") - (speed 2.)) ;incredibly fast! + (speed 2.)) ;très rapide ! (build-machine (name "meeps.example.org") @@ -984,50 +1019,52 @@ The @file{/etc/guix/machines.scm} file typically looks like this: @end example @noindent -In the example above we specify a list of two build machines, one for the -@code{x86_64} architecture and one for the @code{mips64el} architecture. +Dans l'exemple ci-dessus nous spécifions une liste de deux machines de +construction, une pour l'architecture @code{x86_64} et une pour +l'architecture @code{mips64el}. -In fact, this file is---not surprisingly!---a Scheme file that is evaluated -when the @code{offload} hook is started. Its return value must be a list of -@code{build-machine} objects. While this example shows a fixed list of -build machines, one could imagine, say, using DNS-SD to return a list of -potential build machines discovered in the local network +En fait, ce fichier est — et ça ne devrait pas vous surprendre ! — un +fichier Scheme qui est évalué au démarrage du crochet @code{offload}. Sa +valeur de retour doit être une liste d'objets @code{build-machine}. Même si +cet exemple montre une liste fixée de machines de construction, on pourrait +imaginer par exemple utiliser DNS-SD pour renvoyer une liste de machines de +constructions potentielles découvertes sur le réseau local (@pxref{Introduction, Guile-Avahi,, guile-avahi, Using Avahi in Guile Scheme -Programs}). The @code{build-machine} data type is detailed below. +Programs}). Le type de données @code{build-machine} est détaillé plus bas. -@deftp {Data Type} build-machine -This data type represents build machines to which the daemon may offload -builds. The important fields are: +@deftp {Type de données} build-machine +Ce type de données représente les machines de construction sur lesquelles le +démon peut décharger des constructions. Les champs importants sont : @table @code @item name -The host name of the remote machine. +Le nom d'hôte de la machine distante. @item system -The system type of the remote machine---e.g., @code{"x86_64-linux"}. +Le type de système de la machine distante, p.@: ex.@: @code{"x86_64-linux"}. @item user -The user account to use when connecting to the remote machine over SSH. -Note that the SSH key pair must @emph{not} be passphrase-protected, to allow -non-interactive logins. +Le compte utilisateur à utiliser lors de la connexion à la machine distante +par SSH@. Remarquez que la paire de clef SSH ne doit @emph{pas} être +protégée par mot de passe pour permettre des connexions non-interactives. @item host-key -This must be the machine's SSH @dfn{public host key} in OpenSSH format. -This is used to authenticate the machine when we connect to it. It is a -long string that looks like this: +Cela doit être la @dfn{clef d'hôte SSH publique} de la machine au format +OpenSSH@. Elle est utilisée pour authentifier la machine lors de la +connexion. C'est une longue chaîne qui ressemble à cela : @example ssh-ed25519 AAAAC3NzaC@dots{}mde+UhL hint@@example.org @end example -If the machine is running the OpenSSH daemon, @command{sshd}, the host key -can be found in a file such as @file{/etc/ssh/ssh_host_ed25519_key.pub}. +Si la machine utilise le démon OpenSSH, @command{sshd}, la clef d'hôte se +trouve dans un fichier comme @file{/etc/ssh/ssh_host_ed25519_key.pub}. -If the machine is running the SSH daemon of GNU@tie{}lsh, @command{lshd}, -the host key is in @file{/etc/lsh/host-key.pub} or a similar file. It can -be converted to the OpenSSH format using @command{lsh-export-key} -(@pxref{Converting keys,,, lsh, LSH Manual}): +Si la machine utilise le démon SSH de GNU@tie{}lsh, la clef d'hôte est dans +@file{/etc/lsh/host-key.pub} ou un fichier similaire. Elle peut être +convertie au format OpenSSH avec @command{lsh-export-key} +(@pxref{Converting keys,,, lsh, LSH Manual}) : @example $ lsh-export-key --openssh < /etc/lsh/host-key.pub @@ -1036,112 +1073,120 @@ ssh-rsa AAAAB3NzaC1yc2EAAAAEOp8FoQAAAQEAs1eB46LV@dots{} @end table -A number of optional fields may be specified: +Il y a un certain nombre de champs facultatifs que vous pouvez remplir : @table @asis -@item @code{port} (default: @code{22}) -Port number of SSH server on the machine. +@item @code{port} (par défaut : @code{22}) +Numéro de port du serveur SSH sur la machine. -@item @code{private-key} (default: @file{~root/.ssh/id_rsa}) -The SSH private key file to use when connecting to the machine, in OpenSSH -format. +@item @code{private-key} (par défaut : @file{~root/.ssh/id_rsa}) +Le fichier de clef privée à utiliser lors de la connexion à la machine, au +format OpenSSH@. -Note that the default value is the private key @emph{of the root account}. -Make sure it exists if you use the default. +Remarquez que la valeur par défaut est la clef privée @emph{du compte +root}. Assurez-vous qu'elle existe si vous utilisez la valeur par défaut. -@item @code{compression} (default: @code{"zlib@@openssh.com,zlib"}) -@itemx @code{compression-level} (default: @code{3}) -The SSH-level compression methods and compression level requested. +@item @code{compression} (par défaut : @code{"zlib@@openssh.com,zlib"}) +@itemx @code{compression-level} (par défaut : @code{3}) +Les méthodes de compression au niveau SSH et le niveau de compression +demandé. -Note that offloading relies on SSH compression to reduce bandwidth usage -when transferring files to and from build machines. +Remarquez que le déchargement utilise la compression SSH pour réduire la +bande passante utilisée lors du transfert vers et depuis les machines de +construction. -@item @code{daemon-socket} (default: @code{"/var/guix/daemon-socket/socket"}) -File name of the Unix-domain socket @command{guix-daemon} is listening to on -that machine. +@item @code{daemon-socket} (par défaut : @code{"/var/guix/daemon-socket/socket"}) +Le nom de fichier du socket Unix-domain sur lequel @command{guix-daemon} +écoute sur cette machine. -@item @code{parallel-builds} (default: @code{1}) -The number of builds that may run in parallel on the machine. +@item @code{parallel-builds} (par défaut : @code{1}) +Le nombre de constructions qui peuvent tourner simultanément sur la machine. -@item @code{speed} (default: @code{1.0}) -A ``relative speed factor''. The offload scheduler will tend to prefer -machines with a higher speed factor. +@item @code{speed} (par défaut : @code{1.0}) +Un « facteur de vitesse relatif ». L'ordonnanceur des constructions tendra +à préférer les machines avec un plus grand facteur de vitesse. -@item @code{features} (default: @code{'()}) -A list of strings denoting specific features supported by the machine. An -example is @code{"kvm"} for machines that have the KVM Linux modules and -corresponding hardware support. Derivations can request features by name, -and they will be scheduled on matching build machines. +@item @code{features} (par défaut : @code{'()}) +Une liste de chaînes qui contient les fonctionnalités spécifiques supportées +par la machine. Un exemple est @code{"kvm"} pour les machines qui ont le +module Linux KVM et le support matériel correspondant. Les dérivations +peuvent demander des fonctionnalités par leur nom et seront orchestrées sur +les machines de construction correspondantes. @end table @end deftp -The @code{guile} command must be in the search path on the build machines. -In addition, the Guix modules must be in @code{$GUILE_LOAD_PATH} on the -build machine---you can check whether this is the case by running: +La commande @code{guile} doit être dans le chemin de recherche des machines +de construction. En plus, les modules Guix doivent se trouver dans +@code{$GUILE_LOAD_PATH} sur la machine de construction. Vous pouvez +vérifier si c'est le cas en lançant : @example ssh build-machine guile -c "'(use-modules (guix config))'" @end example -There is one last thing to do once @file{machines.scm} is in place. As -explained above, when offloading, files are transferred back and forth -between the machine stores. For this to work, you first need to generate a -key pair on each machine to allow the daemon to export signed archives of -files from the store (@pxref{Invoquer guix archive}): +Il reste une dernière chose à faire maintenant que @file{machines.scm} est +en place. Comme expliqué ci-dessus, lors du déchargement les fichiers sont +transférés entre les dépôts des machines. Pour que cela fonctionne, vous +devez d'abord générer une paire de clef sur chaque machine pour permettre au +démon d'exporter des archives signées des fichiers de son dépôt +(@pxref{Invoquer guix archive}) : @example # guix archive --generate-key @end example @noindent -Each build machine must authorize the key of the master machine so that it -accepts store items it receives from the master: +Chaque machine de construction doit autoriser la clef de la machine +maîtresse pour qu'ils acceptent les éléments de dépôt de celle-ci : @example # guix archive --authorize < master-public-key.txt @end example @noindent -Likewise, the master machine must authorize the key of each build machine. +De même, la machine maîtresse doit autoriser les clefs de chaque machine de +construction. -All the fuss with keys is here to express pairwise mutual trust relations -between the master and the build machines. Concretely, when the master -receives files from a build machine (and @i{vice versa}), its build daemon -can make sure they are genuine, have not been tampered with, and that they -are signed by an authorized key. +Toute cette histoire de clefs permet d'exprimer la confiance mutuelle +deux-à-deux entre le maître et les machines de construction. Concrètement, +lorsque le maître reçoit des fichiers d'une machine de construction (et +vice-versa), son démon de construction s'assure qu'ils sont authentiques, +n'ont pas été modifiés par un tiers et qu'il sont signés par un clef +autorisée. -@cindex offload test -To test whether your setup is operational, run this command on the master -node: +@cindex test du déchargement +Pour tester que votre paramétrage fonctionne, lancez cette commande sur le +nœud maître : @example # guix offload test @end example -This will attempt to connect to each of the build machines specified in -@file{/etc/guix/machines.scm}, make sure Guile and the Guix modules are -available on each machine, attempt to export to the machine and import from -it, and report any error in the process. +Cela essaiera de se connecter à toutes les machines de construction +spécifiées dans @file{/etc/guix/machines.scm}, s'assurera que Guile et les +modules Guix sont disponibles sur toutes les machines et tentera d'exporter +vers la machine et d'importer depuis elle, et rapportera toute erreur +survenu pendant le processus. -If you want to test a different machine file, just specify it on the command -line: +Si vous souhaitez tester un fichier de machines différent, spécifiez-le sur +la ligne de commande : @example # guix offload test machines-qualif.scm @end example -Last, you can test the subset of the machines whose name matches a regular -expression like this: +Enfin, vous pouvez tester un sous-ensemble de machines dont le nom +correspond à une expression rationnelle comme ceci : @example # guix offload test machines.scm '\.gnu\.org$' @end example -@cindex offload status -To display the current load of all build hosts, run this command on the main -node: +@cindex statut du déchargement +Pour afficher la charge actuelle de tous les hôtes de construction, lancez +cette commande sur le nœud principal : @example # guix offload status @@ -1151,93 +1196,98 @@ node: @node Support de SELinux @subsection Support de SELinux -@cindex SELinux, daemon policy -@cindex mandatory access control, SELinux -@cindex security, guix-daemon -Guix includes an SELinux policy file at @file{etc/guix-daemon.cil} that can -be installed on a system where SELinux is enabled, in order to label Guix -files and to specify the expected behavior of the daemon. Since GuixSD does -not provide an SELinux base policy, the daemon policy cannot be used on -GuixSD. +@cindex SELinux, politique du démon +@cindex contrôle d'accès obligatoire, SELinux +@cindex sécurité, guix-daemon +Guix inclus un fichier de politique SELniux dans @file{etc/guix-daemon.cil} +qui peut être installé sur un système où SELinux est activé pour que les +fichiers Guix soient étiquetés et pour spécifier le comportement attendu du +démon. Comme GuixSD ne fournit pas de politique SELniux de base, la +politique du démon ne peut pas être utilisée sur GuixSD@. -@subsubsection Installing the SELinux policy -@cindex SELinux, policy installation -To install the policy run this command as root: +@subsubsection Installer la politique SELinux +@cindex SELinux, installation de la politique +Pour installer la politique, lancez cette commande en root : @example semodule -i etc/guix-daemon.cil @end example -Then relabel the file system with @code{restorecon} or by a different -mechanism provided by your system. +Puis ré-étiquetez le système de fichier avec @code{restorecon} ou par un +mécanisme différent fournit par votre système. -Once the policy is installed, the file system has been relabeled, and the -daemon has been restarted, it should be running in the @code{guix_daemon_t} -context. You can confirm this with the following command: +Une fois la politique installée, le système de fichier ré-étiqueté et le +démon redémarré, il devrait être lancé dans le contexte +@code{guix_daemon_t}. Vous pouvez le confirmer avec la commande suivante : @example ps -Zax | grep guix-daemon @end example -Monitor the SELinux log files as you run a command like @code{guix build -hello} to convince yourself that SELinux permits all necessary operations. +Surveillez les fichiers journaux de SELinux pendant que vous lancez une +commande comme @code{guix build hello} pour vous convaincre que SELniux +permet toutes les opérations nécessaires. @subsubsection Limitations -@cindex SELinux, limitations +@cindex SELinux, limites -This policy is not perfect. Here is a list of limitations or quirks that -should be considered when deploying the provided SELinux policy for the Guix -daemon. +La politique n'et pas parfaite. Voici une liste de limitations et de +bizarreries qui vous devriez prendre en compte avant de déployer la +politique SELinux fournie pour le démon Guix. @enumerate @item -@code{guix_daemon_socket_t} isn’t actually used. None of the socket -operations involve contexts that have anything to do with -@code{guix_daemon_socket_t}. It doesn’t hurt to have this unused label, but -it would be preferrable to define socket rules for only this label. +@code{guix_daemon_socket_t} n'est pas vraiment utilisé. Aucune des +opérations sur les sockets n'impliquent de contextes qui ont quoi que ce +soit à voir avec @code{guix_daemon_socket_t}. Ça ne fait pas de mal d'avoir +une étiquette inutilisée, mais il serait préférable de définir des règles +sur les sockets uniquement pour cette étiquette. @item -@code{guix gc} cannot access arbitrary links to profiles. By design, the -file label of the destination of a symlink is independent of the file label -of the link itself. Although all profiles under $localstatedir are -labelled, the links to these profiles inherit the label of the directory -they are in. For links in the user’s home directory this will be -@code{user_home_t}. But for links from the root user’s home directory, or -@file{/tmp}, or the HTTP server’s working directory, etc, this won’t work. -@code{guix gc} would be prevented from reading and following these links. +@code{guix gc} ne peut pas accéder à n'importe quel lien vers les profils. +Par conception, l'étiquette de fichier de la destination d'un lien +symbolique est indépendant de l'étiquette du lien lui-même. Bien que tous +les profils sous $localstatedir aient une étiquette, les liens vers ces +profils héritent de l'étiquette du répertoire dans lequel ils se trouvent. +Pour les liens dans le répertoire personnel cela sera @code{user_home_t}. +Mais pour les liens du répertoire personnel de l'utilisateur root, ou +@file{/tmp}, ou du répertoire de travail du serveur HTTP, etc, cela ne +fonctionnera pas. SELinux empêcherait @code{guix gc} de lire et de suivre +ces liens. @item -The daemon’s feature to listen for TCP connections might no longer work. -This might require extra rules, because SELinux treats network sockets -differently from files. +La fonctionnalité du démon d'écouter des connexions TCP pourrait ne plus +fonctionner. Cela demande des règles supplémentaires car SELinux traite les +sockets réseau différemment des fichiers. @item -Currently all files with a name matching the regular expression -@code{/gnu/store/.+-(guix-.+|profile)/bin/guix-daemon} are assigned the -label @code{guix_daemon_exec_t}; this means that @emph{any} file with that -name in any profile would be permitted to run in the @code{guix_daemon_t} -domain. This is not ideal. An attacker could build a package that provides -this executable and convince a user to install and run it, which lifts it -into the @code{guix_daemon_t} domain. At that point SELinux could not -prevent it from accessing files that are allowed for processes in that -domain. +Actuellement tous les fichiers qui correspondent à l'expression rationnelle +@code{/gnu/store/.+-(guix-.+|profile)/bin/guix-daemon} reçoivent l'étiquette +@code{guix_daemon_exec_t} ; cela signifie que @emph{tout} fichier avec ce +nom dans n'importe quel profil serait autorisé à se lancer dans le domaine +@code{guix_daemon_t}. Ce n'est pas idéal. Un attaquant pourrait construire +un paquet qui fournit cet exécutable et convaincre un utilisateur de +l'installer et de le lancer, ce qui l'élève dans le domaine +@code{guix_daemon_t}. À ce moment SELinux ne pourrait pas l'empêcher +d'accéder à des fichiers autorisés pour les processus de ce domaine. -We could generate a much more restrictive policy at installation time, so -that only the @emph{exact} file name of the currently installed -@code{guix-daemon} executable would be labelled with -@code{guix_daemon_exec_t}, instead of using a broad regular expression. The -downside is that root would have to install or upgrade the policy at -installation time whenever the Guix package that provides the effectively -running @code{guix-daemon} executable is upgraded. +Nous pourrions générer une politique bien plus restrictive à l'installation, +pour que seuls les noms de fichiers @emph{exacts} de l'exécutable +@code{guix-daemon} actuellement installé soit étiqueté avec +@code{guix_daemon_exec_t}, plutôt que d'utiliser une expression rationnelle +plus large. L'inconvénient c'est que root devrait installer ou mettre à +jour la politique à l'installation à chaque fois que le paquet Guix qui +fournit l'exécutable @code{guix-daemon} effectivement exécuté est mis à +jour. @end enumerate @node Invoquer guix-daemon -@section Invoking @command{guix-daemon} +@section Invoquer @command{guix-daemon} -The @command{guix-daemon} program implements all the functionality to access -the store. This includes launching build processes, running the garbage -collector, querying the availability of a build result, etc. It is normally -run as @code{root} like this: +Le programme @command{guix-daemon} implémente toutes les fonctionnalités +d'accès au dépôt. Cela inclus le lancement des processus de construction, +le lancement du ramasse-miettes, la demande de disponibilité des résultats +de construction, etc. Il tourne normalement en @code{root} comme ceci : @example # guix-daemon --build-users-group=guixbuild @@ -1247,247 +1297,258 @@ run as @code{root} like this: Pour des détails sur son paramétrage, @pxref{Paramétrer le démon}. @cindex chroot -@cindex container, build environment -@cindex build environment -@cindex reproducible builds +@cindex conteneur, environnement de construction +@cindex environnement de construction +@cindex constructions reproductibles Par défaut, @command{guix-daemon} lance les processus de construction sous différents UID récupérés depuis le groupe de construction spécifié avec -@code{--build-users-group}. En plus, chaque processus de construction est +@code{--build-users-group}. En plus, chaque processus de construction est lancé dans un environnement chroot qui ne contient que le sous-ensemble du dépôt dont le processus de construction dépend, tel que spécifié par sa dérivation (@pxref{Interface de programmation, dérivation}), plus un -ensemble de répertoires systèmes spécifiques. Par défaut ce dernier contient -@file{/dev} et @file{/dev/pts}. De plus, sous GNU/Linux, l'environnement de -construction est un @dfn{conteneur} : en plus d'avoir sa propre arborescence -du système de fichier, elle a un espace de montage séparé, son propre espace -de PID, son espace de réseau, etc. Cela aide à obtenir des constructions -reproductibles (@pxref{Fonctionnalités}). +ensemble de répertoires systèmes spécifiques. Par défaut ce dernier +contient @file{/dev} et @file{/dev/pts}. De plus, sous GNU/Linux, +l'environnement de construction est un @dfn{conteneur} : en plus d'avoir sa +propre arborescence du système de fichier, elle a un espace de montage +séparé, son propre espace de PID, son espace de réseau, etc. Cela aide à +obtenir des constructions reproductibles (@pxref{Fonctionnalités}). -When the daemon performs a build on behalf of the user, it creates a build -directory under @file{/tmp} or under the directory specified by its -@code{TMPDIR} environment variable; this directory is shared with the -container for the duration of the build. Be aware that using a directory -other than @file{/tmp} can affect build results---for example, with a longer -directory name, a build process that uses Unix-domain sockets might hit the -name length limitation for @code{sun_path}, which it would otherwise not -hit. +Lorsque le démon effectue une construction pour le compte de l'utilisateur, +il crée un répertoire sous @file{/tmp} ou sous le répertoire spécifié par sa +variable d'environnement @code{TMPDIR}. Ce répertoire est partagé avec le +conteneur pendant la durée de la construction. Soyez conscient qu'utiliser +un répertoire différent de @file{/tmp} peut affecter les résultats de la +construction — par exemple avec un nom de répertoire plus long, un processus +de construction qui utiliserait des socket Unix-domain pourrait atteindre la +limite de longueur de nom de fichier pour @code{sun_path}, qu'il n'aurait +sinon pas atteinte. -The build directory is automatically deleted upon completion, unless the -build failed and the client specified @option{--keep-failed} -(@pxref{Invoquer guix build, @option{--keep-failed}}). +Le répertoire de construction est automatiquement supprimé à la fin, à moins +que la construction n'ait échoué et que le client ait spécifié +@option{--keep-failed} (@pxref{Invoquer guix build, +@option{--keep-failed}}). -The following command-line options are supported: +Les options en ligne de commande suivantes sont disponibles : @table @code -@item --build-users-group=@var{group} -Prend les utilisateurs de @var{group} pour lancer les processus de +@item --build-users-group=@var{groupe} +Prendre les utilisateurs de @var{group} pour lancer les processus de construction (@pxref{Paramétrer le démon, utilisateurs de construction}). @item --no-substitutes -@cindex substitutes -Ne pas utiliser de substitut pour les résultats de la -construction. C'est-à-dire, toujours construire localement plutôt que de -permettre le téléchargement de binaires pré-construits (@pxref{Substituts}). +@cindex substituts +Ne pas utiliser de substitut pour les résultats de la construction. +C'est-à-dire, toujours construire localement plutôt que de permettre le +téléchargement de binaires pré-construits (@pxref{Substituts}). -When the daemon runs with @code{--no-substitutes}, clients can still -explicitly enable substitution @i{via} the @code{set-build-options} remote -procedure call (@pxref{Le dépôt}). +Lorsque le démon tourne avec @code{--no-substitutes}, les clients peuvent +toujours activer explicitement la substitution @i{via} l'appel de procédure +distante @code{set-build-options} (@pxref{Le dépôt}). @item --substitute-urls=@var{urls} @anchor{daemon-substitute-urls} -Consider @var{urls} the default whitespace-separated list of substitute -source URLs. When this option is omitted, -@indicateurl{https://mirror.hydra.gnu.org https://hydra.gnu.org} is used -(@code{mirror.hydra.gnu.org} is a mirror of @code{hydra.gnu.org}). +Considèrer @var{urls} comme la liste séparée par des espaces des URL des +sources de substituts par défaut. Lorsque cette option est omise, +@indicateurl{https://mirror.hydra.gnu.org https://hydra.gnu.org} est utilisé +(@code{mirror.hydra.gnu.org} est un mirroire de @code{hydra.gnu.org}). Cela signifie que les substituts sont téléchargés depuis les @var{urls}, tant qu'ils sont signés par une signature de confiance (@pxref{Substituts}). -@cindex build hook +@cindex crochet de construction @item --no-build-hook -Do not use the @dfn{build hook}. +Ne pas utiliser le @dfn{crochet de construction}. -The build hook is a helper program that the daemon can start and to which it -submits build requests. This mechanism is used to offload builds to other -machines (@pxref{Réglages du délestage du démon}). +Le crochet de construction est un programme d'aide qui le démon peut +démarrer et auquel soumettre les requêtes de construction. Ce mécanisme est +utilisé pour décharger les constructions à d'autres machines (@pxref{Réglages du délestage du démon}). @item --cache-failures -Cache build failures. By default, only successful builds are cached. +Mettre les échecs de construction en cache. Par défaut, seules les +constructions réussies sont mises en cache. -When this option is used, @command{guix gc --list-failures} can be used to -query the set of store items marked as failed; @command{guix gc ---clear-failures} removes store items from the set of cached failures. -@xref{Invoquer guix gc}. +Lorsque cette option est utilisée, @command{guix gc --list-failures} peut +être utilisé pour demander l'ensemble des éléments du dépôt marqués comme +échoués ; @command{guix gc --clear-failures} vide la liste des éléments +aillant échoué. @xref{Invoquer guix gc}. @item --cores=@var{n} @itemx -c @var{n} -Use @var{n} CPU cores to build each derivation; @code{0} means as many as -available. +Utiliser @var{n} cœurs CPU pour construire chaque dérivation ; @code{0} +signifie autant que possible. -The default value is @code{0}, but it may be overridden by clients, such as -the @code{--cores} option of @command{guix build} (@pxref{Invoquer guix build}). +La valeur par défaut est @code{0}, mais elle peut être modifiée par les +clients comme avec l'option @code{--cores} de @command{guix build} +(@pxref{Invoquer guix build}). -The effect is to define the @code{NIX_BUILD_CORES} environment variable in -the build process, which can then use it to exploit internal -parallelism---for instance, by running @code{make -j$NIX_BUILD_CORES}. +L'effet est de définir la variable d'environnement @code{NIX_BUILD_CORES} +dans le processus de construction, qui peut ensuite l'utiliser pour +exploiter le parallélisme en interne — par exemple en lançant @code{make +-j$NIX_BUILD_CORES}. @item --max-jobs=@var{n} @itemx -M @var{n} -Allow at most @var{n} build jobs in parallel. The default value is -@code{1}. Setting it to @code{0} means that no builds will be performed -locally; instead, the daemon will offload builds (@pxref{Réglages du délestage du démon}), or simply fail. +Permettre au plus @var{n} travaux de construction en parallèle. La valeur +par défaut est @code{1}. La mettre à @code{0} signifie qu'aucune +construction ne sera effectuée localement ; à la place, le démon déchargera +les constructions (@pxref{Réglages du délestage du démon}) ou échouera. -@item --max-silent-time=@var{seconds} -When the build or substitution process remains silent for more than -@var{seconds}, terminate it and report a build failure. +@item --max-silent-time=@var{secondes} +Lorsque le processus de construction ou de substitution restent silencieux +pendant plus de @var{secondes}, le terminer et rapporter une erreur de +construction. -The default value is @code{0}, which disables the timeout. +La valeur par défaut est @code{0}, ce qui désactive le délai. -The value specified here can be overridden by clients (@pxref{Options de construction communes, @code{--max-silent-time}}). +La valeur spécifiée ici peut être modifiée par les clients (@pxref{Options de construction communes, @code{--max-silent-time}}). -@item --timeout=@var{seconds} -Likewise, when the build or substitution process lasts for more than -@var{seconds}, terminate it and report a build failure. +@item --timeout=@var{secondes} +De même, lorsque le processus de construction ou de substitution dure plus +de @var{secondes}, le terminer et rapporter une erreur de construction. -The default value is @code{0}, which disables the timeout. +La valeur par défaut est @code{0}, ce qui désactive le délai. -The value specified here can be overridden by clients (@pxref{Options de construction communes, @code{--timeout}}). +La valeur spécifiée ici peut être modifiée par les clients (@pxref{Options de construction communes, @code{--timeout}}). @item --rounds=@var{N} -Build each derivation @var{n} times in a row, and raise an error if -consecutive build results are not bit-for-bit identical. Note that this -setting can be overridden by clients such as @command{guix build} -(@pxref{Invoquer guix build}). +Construire chaque dérivations @var{N} fois à la suite, et lever une erreur +si les résultats de construction consécutifs ne sont pas identiques +bit-à-bit. Remarquez que ce paramètre peut être modifié par les clients +comme @command{guix build} (@pxref{Invoquer guix build}). -When used in conjunction with @option{--keep-failed}, the differing output -is kept in the store, under @file{/gnu/store/@dots{}-check}. This makes it -easy to look for differences between the two results. +Lorsqu'utilisé avec @option{--keep-failed}, la sourtie différente est gardée +dans le dépôt sous @file{/gnu/store/@dots{}-check}. Cela rend plus facile +l'étude des différences entre les deux résultats. @item --debug -Produce debugging output. +Produire une sortie de débogage. -This is useful to debug daemon start-up issues, but then it may be -overridden by clients, for example the @code{--verbosity} option of -@command{guix build} (@pxref{Invoquer guix build}). +Cela est utile pour déboguer des problèmes de démarrage du démon, mais +ensuite elle peut être modifiée par les clients, par exemple par l'option +@code{--verbosity} de @command{guix build} (@pxref{Invoquer guix build}). -@item --chroot-directory=@var{dir} -Add @var{dir} to the build chroot. +@item --chroot-directory=@var{rép} +Ajouter @var{rép} au chroot de construction -Doing this may change the result of build processes---for instance if they -use optional dependencies found in @var{dir} when it is available, and not -otherwise. For that reason, it is not recommended to do so. Instead, make -sure that each derivation declares all the inputs that it needs. +Cela peut changer le résultat d'un processus de construction — par exemple +s'il utilise une dépendance facultative trouvée dans @var{rép} lorsqu'elle +est disponible ou pas sinon. Pour cette raison, il n'est pas recommandé +d'utiliser cette option. À la place, assurez-vous que chaque dérivation +déclare toutes les entrées dont elle a besoin. @item --disable-chroot -Disable chroot builds. +Désactive les constructions dans un chroot. -Using this option is not recommended since, again, it would allow build -processes to gain access to undeclared dependencies. It is necessary, -though, when @command{guix-daemon} is running under an unprivileged user -account. +Utiliser cette option n'est pas recommandé car, de nouveau, elle permet aux +processus de construction d'accéder à des dépendances non déclarées. Elle +est nécessaire cependant lorsque @command{guix-daemon} tourne en tant +qu'utilisateur non privilégié. @item --log-compression=@var{type} -Compress build logs according to @var{type}, one of @code{gzip}, -@code{bzip2}, or @code{none}. +Compresser les journaux de construction suivant le @var{type}, parmi +@code{gzip}, @code{bzip2} ou @code{none}. -Unless @code{--lose-logs} is used, all the build logs are kept in the -@var{localstatedir}. To save space, the daemon automatically compresses -them with bzip2 by default. +À moins que @code{--lose-logs} ne soit utilisé, tous les journaux de +construction sont gardés dans @var{localstatedir}. Pour gagner de la place, +le démon les compresse automatiquement avec bzip2 par défaut. @item --disable-deduplication -@cindex deduplication -Disable automatic file ``deduplication'' in the store. +@cindex déduplication +Désactiver la « déduplication » automatique des fichiers dans le dépôt. -By default, files added to the store are automatically ``deduplicated'': if -a newly added file is identical to another one found in the store, the -daemon makes the new file a hard link to the other file. This can -noticeably reduce disk usage, at the expense of slightly increased -input/output load at the end of a build process. This option disables this -optimization. +Par défaut, les fichiers ajoutés au dépôt sont automatiquement « dédupliqués +» : si un nouveau fichier est identique à un autre fichier trouvé dans le +dépôt, le démon en fait un lien en dur vers l'autre fichier. Cela réduit +considérablement l'utilisation de l'espace disque au prix d'une charge en +entrée/sortie plus grande à la fin d'un processus de construction. Cette +option désactive cette optimisation. @item --gc-keep-outputs[=yes|no] -Tell whether the garbage collector (GC) must keep outputs of live -derivations. +Dire si le ramasse-miettes (GC) doit garder les sorties des dérivations +utilisées. -@cindex GC roots -@cindex garbage collector roots -When set to ``yes'', the GC will keep the outputs of any live derivation -available in the store---the @code{.drv} files. The default is ``no'', -meaning that derivation outputs are kept only if they are GC roots. -@xref{Invoquer guix gc}, for more on GC roots. +@cindex racines du GC +@cindex racines du ramasse-miettes +Lorsqu'elle est à « yes », le GC gardera les sorties de toutes les +dérivations — les fichiers @code{.drv} — utilisées dans le dépôt. La valeur +par défaut est « no », ce qui signifie que les sorties des dérivations ne +sont gardées que s'il s'agit de racines du GC@. @xref{Invoquer guix gc} +pour plus d'informations sur les racines du GC@. @item --gc-keep-derivations[=yes|no] -Tell whether the garbage collector (GC) must keep derivations corresponding -to live outputs. +Dire si le ramasse-miettes (GC) doit garder les dérivations correspondant à +des sorties utilisées. -When set to ``yes'', as is the case by default, the GC keeps -derivations---i.e., @code{.drv} files---as long as at least one of their -outputs is live. This allows users to keep track of the origins of items in -their store. Setting it to ``no'' saves a bit of disk space. +Lorsqu'elle est à « yes », comme c'est le cas par défaut, le GC garde les +dérivations — c.-à-d.@: les fichiers @file{.drv} — tant qu'au moins une de +leurs sorties est utilisée. Cela permet aux utilisateurs de garder une +trace de l'origine des éléments du dépôt. Le mettre à « no » préserve un +peu d'espace disque. -Note that when both @code{--gc-keep-derivations} and -@code{--gc-keep-outputs} are used, the effect is to keep all the build -prerequisites (the sources, compiler, libraries, and other build-time tools) -of live objects in the store, regardless of whether these prerequisites are -live. This is convenient for developers since it saves rebuilds or -downloads. +Remarquez qu'avec @code{--gc-keep-derivations} et @code{--gc-keep-outputs}, +le GC gardera tous les prérequis de construction (les sources, le +compilateur, les bibliothèques, et les autres outils de construction) des +objets utilisés dans le dépôt, indépendamment du fait qu'ils soient ou non +utilisés. Cela est pratique pour les développeurs car ça leur fait gagner +du temps de reconstruction et de téléchargement. @item --impersonate-linux-2.6 -On Linux-based systems, impersonate Linux 2.6. This means that the kernel's -@code{uname} system call will report 2.6 as the release number. +Sur les système basés sur Linux, se faire passer pour Linux 2.6. Cela +signifie que l'appel système du noyau @code{uname} rapportera 2.6 comme +numéro de version. -This might be helpful to build programs that (usually wrongfully) depend on -the kernel version number. +Cela peut être utile pour construire des programmes qui dépendent +(généralement sans fondement) du numéro de version du noyau. @item --lose-logs -Do not keep build logs. By default they are kept under +Ne pas garder les journaux de construction. Par défaut ils sont gardés dans @code{@var{localstatedir}/guix/log}. -@item --system=@var{system} -Assume @var{system} as the current system type. By default it is the -architecture/kernel pair found at configure time, such as +@item --system=@var{système} +Supposer que @var{système} est le type de système actuel. Par défaut c'est +la paire architecture-noyau trouvée à la configuration, comme @code{x86_64-linux}. -@item --listen=@var{endpoint} -Listen for connections on @var{endpoint}. @var{endpoint} is interpreted as -the file name of a Unix-domain socket if it starts with @code{/} (slash -sign). Otherwise, @var{endpoint} is interpreted as a host name or host name -and port to listen to. Here are a few examples: +@item --listen=@var{extrémité} +Écouter les connexions sur @var{extrémité}. @var{extrémité} est interprété +comme un nom de fichier d'un socket Unix-domain s'il commence par @code{/} +(barre oblique). Sinon, @var{extrémité} est interprété comme un nom de +domaine ou d'hôte et un port sur lequel écouter. Voici quelques exemples : @table @code @item --listen=/gnu/var/daemon -Listen for connections on the @file{/gnu/var/daemon} Unix-domain socket, -creating it if needed. +Écouter les connexions sur le socket Unix-domain @file{/gnu/var/daemon} en +le créant si besoin. @item --listen=localhost -@cindex daemon, remote access -@cindex remote access to the daemon -@cindex daemon, cluster setup -@cindex clusters, daemon setup -Listen for TCP connections on the network interface corresponding to -@code{localhost}, on port 44146. +@cindex démon, accès distant +@cindex accès distant au démon +@cindex démon, paramètres de grappes +@cindex grappes, paramètres du démon +Écouter les connexions TCP sur l'interface réseau correspondant à +@code{localhost} sur le port 44146. @item --listen=128.0.0.42:1234 -Listen for TCP connections on the network interface corresponding to -@code{128.0.0.42}, on port 1234. +Écouter les connexions TCP sur l'interface réseau correspondant à +@code{128.0.0.42} sur le port 1234. @end table -This option can be repeated multiple times, in which case -@command{guix-daemon} accepts connections on all the specified endpoints. -Users can tell client commands what endpoint to connect to by setting the -@code{GUIX_DAEMON_SOCKET} environment variable (@pxref{Le dépôt, -@code{GUIX_DAEMON_SOCKET}}). +Cette option peut être répétée plusieurs fois, auquel cas +@command{guix-daemon} accepte des connexions sur toutes les extrémités +spécifiées. Les utilisateurs peuvent dire aux commandes clientes à quelle +extrémité se connecter en paramétrant la variable d'environnement +@code{GUIX_DAEMON_SOCKET} (@pxref{Le dépôt, @code{GUIX_DAEMON_SOCKET}}). -@quotation Note -The daemon protocol is @emph{unauthenticated and unencrypted}. Using -@code{--listen=@var{host}} is suitable on local networks, such as clusters, -where only trusted nodes may connect to the build daemon. In other cases -where remote access to the daemon is needed, we recommend using Unix-domain -sockets along with SSH. +@quotation Remarque +Le protocole du démon est @emph{non authentifié et non chiffré}. Utiliser +@code{--listen=@var{host}} est adapté sur des réseaux locaux, comme pour des +grappes de serveurs, où seuls des nœuds de confiance peuvent se connecter au +démon de construction. Dans les autres cas où l'accès à distance au démon +est requis, nous conseillons d'utiliser un socket Unix-domain avec SSH@. @end quotation -When @code{--listen} is omitted, @command{guix-daemon} listens for -connections on the Unix-domain socket located at +Lorsque @code{--listen} est omis, @command{guix-daemon} écoute les +connexions sur le socket Unix-domain situé à @file{@var{localstatedir}/guix/daemon-socket/socket}. @end table @@ -1496,52 +1557,54 @@ connections on the Unix-domain socket located at @section Réglages applicatifs @cindex distro extérieure -When using Guix on top of GNU/Linux distribution other than GuixSD---a -so-called @dfn{foreign distro}---a few additional steps are needed to get -everything in place. Here are some of them. +Lorsque vous utilisez Guix par dessus une distribution GNU/Linux différente +de GuixSD — ce qu'on appelle une @dfn{distro externe} — quelques étapes +supplémentaires sont requises pour que tout soit en place. En voici +certaines. @subsection Régionalisation @anchor{locales-and-locpath} -@cindex locales, when not on GuixSD +@cindex régionalisation, en dehors de GuixSD @vindex LOCPATH @vindex GUIX_LOCPATH -Packages installed @i{via} Guix will not use the locale data of the host -system. Instead, you must first install one of the locale packages -available with Guix and then define the @code{GUIX_LOCPATH} environment -variable: +Les paquets installés @i{via} Guix n'utiliseront pas les données de +régionalisation du système hôte. À la place, vous devrez d'abord installer +l'un des paquets linguistiques disponibles dans Guix puis définir la +variable d'environnement @code{GUIX_LOCPATH} : @example $ guix package -i glibc-locales $ export GUIX_LOCPATH=$HOME/.guix-profile/lib/locale @end example -Note that the @code{glibc-locales} package contains data for all the locales -supported by the GNU@tie{}libc and weighs in at around 110@tie{}MiB. -Alternatively, the @code{glibc-utf8-locales} is smaller but limited to a few -UTF-8 locales. +Remarquez que le paquet @code{glibc-locales} contient les données pour tous +les environnement linguistiques supportés par la GNU@tie{}libc et pèse +environ 110@tie{}Mo. Autrement, les @code{glibc-utf8-locales} est plus +petit mais limité à quelques environnements UTF-8. -The @code{GUIX_LOCPATH} variable plays a role similar to @code{LOCPATH} +La variable @code{GUIX_LOCPATH} joue un rôle similaire à @code{LOCPATH} (@pxref{Locale Names, @code{LOCPATH},, libc, The GNU C Library Reference -Manual}). There are two important differences though: +Manual}). Il y a deux différences importantes cependant : @enumerate @item -@code{GUIX_LOCPATH} is honored only by the libc in Guix, and not by the libc -provided by foreign distros. Thus, using @code{GUIX_LOCPATH} allows you to -make sure the programs of the foreign distro will not end up loading -incompatible locale data. +@code{GUIX_LOCPATH} n'est compris que par la libc dans Guix et pas par la +libc fournie par les distros externes. Ainsi, utiliser @code{GUIX_LOCPATH} +vous permet de vous assurer que les programmes de la distro externe ne +chargeront pas de données linguistiques incompatibles. @item -libc suffixes each entry of @code{GUIX_LOCPATH} with @code{/X.Y}, where -@code{X.Y} is the libc version---e.g., @code{2.22}. This means that, should -your Guix profile contain a mixture of programs linked against different -libc version, each libc version will only try to load locale data in the -right format. +La libc ajoute un suffixe @code{/X.Y} à chaque entrée de +@code{GUIX_LOCPATH}, où @code{X.Y} est la version de la libc — p.@: ex.@: +@code{2.22}. Cela signifie que, si votre profile Guix contient un mélange +de programmes liés avec des versions différentes de la libc, chaque version +de la libc essaiera de charger les environnements linguistiques dans le bon +format. @end enumerate -This is important because the locale data format used by different libc -versions may be incompatible. +Cela est important car le format des données linguistiques utilisés par +différentes version de la libc peuvent être incompatibles. @subsection Name Service Switch @@ -1549,79 +1612,86 @@ versions may be incompatible. @cindex NSS (name service switch), glibc @cindex nscd (name service caching daemon) @cindex name service caching daemon (nscd) -When using Guix on a foreign distro, we @emph{strongly recommend} that the -system run the GNU C library's @dfn{name service cache daemon}, -@command{nscd}, which should be listening on the @file{/var/run/nscd/socket} -socket. Failing to do that, applications installed with Guix may fail to -look up host names or user accounts, or may even crash. The next paragraphs -explain why. +Lorsque vous utilisez Guix sur une distro externe, nous @emph{recommandons +fortement} que ce système fasse tourner le @dfn{démon de cache de service de +noms} de la bibliothèque C de GNU, @command{nscd}, qui devrait écouter sur +le socket @file{/var/run/nscd/socket}. Sans cela, les applications +installées avec Guix peuvent échouer à résoudre des noms d'hôtes ou +d'utilisateurs, ou même planter. Les paragraphes suivants expliquent +pourquoi. @cindex @file{nsswitch.conf} -The GNU C library implements a @dfn{name service switch} (NSS), which is an -extensible mechanism for ``name lookups'' in general: host name resolution, -user accounts, and more (@pxref{Name Service Switch,,, libc, The GNU C -Library Reference Manual}). +La bibliothèque C de GNU implémente un @dfn{name service switch} (NSS), qui +est un mécanisme d'extension pour les « résolutions de noms » en général : +résolution de nom d'hôte, de compte utilisateur et plus (@pxref{Name Service Switch,,, libc, The GNU C Library Reference Manual}). @cindex Network information service (NIS) @cindex NIS (Network information service) -Being extensible, the NSS supports @dfn{plugins}, which provide new name -lookup implementations: for example, the @code{nss-mdns} plugin allow -resolution of @code{.local} host names, the @code{nis} plugin allows user -account lookup using the Network information service (NIS), and so on. -These extra ``lookup services'' are configured system-wide in -@file{/etc/nsswitch.conf}, and all the programs running on the system honor -those settings (@pxref{NSS Configuration File,,, libc, The GNU C Reference -Manual}). +Comme il est extensible, NSS supporte des @dfn{greffons} qui fournissent une +nouvelle implémentation de résolution de nom : par exemple le greffon +@code{nss-mdns} permet la résolution de noms d'hôtes en @code{.local}, le +greffon @code{nis} permet la résolution de comptes utilisateurs avec le +Network Information Service (NIS), etc. Ces « services de recherches » +supplémentaires sont configurés au niveau du système dans +@file{/etc/nsswitch.conf}, et tous les programmes qui tournent sur ce +système honorent ces paramètres (@pxref{NSS Configuration File,,, libc, The +GNU C Reference Manual}) -When they perform a name lookup---for instance by calling the -@code{getaddrinfo} function in C---applications first try to connect to the -nscd; on success, nscd performs name lookups on their behalf. If the nscd -is not running, then they perform the name lookup by themselves, by loading -the name lookup services into their own address space and running it. These -name lookup services---the @file{libnss_*.so} files---are @code{dlopen}'d, -but they may come from the host system's C library, rather than from the C -library the application is linked against (the C library coming from Guix). +Lorsqu'ils essayent d'effectuer une résolution de nom — par exemple en +appelant la fonction @code{getaddrinfo} en C — les applications essayent +d'abord de se connecter au nscd ; en cas de réussite, nscd effectue la +résolution de nom pour eux. Si le nscd ne tourne pas, alors ils effectue la +résolution eux-même, en changeant les service de résolution dans leur propre +espace d'adressage et en le lançant. Ce services de résolution de noms — +les fichiers @file{libnns_*.so} — sont @code{dlopen}és mais ils peuvent +provenir de la bibliothèque C du système, plutôt que de la bibliothèque C à +laquelle l'application est liée (la bibliothèque C de Guix). -And this is where the problem is: if your application is linked against -Guix's C library (say, glibc 2.24) and tries to load NSS plugins from -another C library (say, @code{libnss_mdns.so} for glibc 2.22), it will -likely crash or have its name lookups fail unexpectedly. +Et c'est là que se trouve le problème : si votre application est liée à la +bibliothèque C de Guix (disons, glibc-2.24) et essaye de charger les +greffons NSS d'une autre bibliothèque C (disons, @code{libnss_mdns.so} pour +glibc-2.22), il est très probable qu'elle plante ou que sa résolution de nom +échoue de manière inattendue. -Running @command{nscd} on the system, among other advantages, eliminates -this binary incompatibility problem because those @code{libnss_*.so} files -are loaded in the @command{nscd} process, not in applications themselves. +Lancer @command{nscd} sur le système, entre autres avantages, élimine ce +problème d'incompatibilité binaire car ces fichiers @code{libnss_*.so} sont +chargés par le processus @command{nscd}, pas par l'application elle-même. -@subsection X11 Fonts +@subsection Polices X11 -@cindex fonts -The majority of graphical applications use Fontconfig to locate and load -fonts and perform X11-client-side rendering. The @code{fontconfig} package -in Guix looks for fonts in @file{$HOME/.guix-profile} by default. Thus, to -allow graphical applications installed with Guix to display fonts, you have -to install fonts with Guix as well. Essential font packages include -@code{gs-fonts}, @code{font-dejavu}, and @code{font-gnu-freefont-ttf}. +@cindex polices +La majorité des applications graphiques utilisent fontconfig pour trouver et +charger les police et effectuer le rendu côté client X11. Le paquet +@code{fontconfig} dans Guix cherche les polices dans +@file{$HOME/.guix-profile} par défaut. Ainsi, pour permettre aux +applications graphiques installées avec Guix d'afficher des polices, vous +devez aussi installer des polices avec Guix. Les paquets de polices +essentiels sont @code{gs-fonts}, @code{font-dejavu} et +@code{font-gnu-freefont-ttf}. -To display text written in Chinese languages, Japanese, or Korean in -graphical applications, consider installing -@code{font-adobe-source-han-sans} or @code{font-wqy-zenhei}. The former has -multiple outputs, one per language family (@pxref{Des paquets avec plusieurs résultats}). For instance, the following command installs fonts for Chinese -languages: +Pour afficher des textes écrits en chinois, en japonais ou en coréen dans +les applications graphiques, installez @code{font-adobe-source-han-sans} ou +@code{font-wqy-zenhei}. Le premier a plusieurs sorties, une par famille de +langue (@pxref{Des paquets avec plusieurs résultats}). Par exemple, la commande +suivante installe les polices pour le chinois : @example guix package -i font-adobe-source-han-sans:cn @end example @cindex @code{xterm} -Older programs such as @command{xterm} do not use Fontconfig and instead -rely on server-side font rendering. Such programs require to specify a full -name of a font using XLFD (X Logical Font Description), like this: +Les vieux programmes comme @command{xterm} n'utilisent pas fontconfig et +s'appuient sur le rendu du côté du serveur. Ces programmes ont besoin de +spécifier le nom complet de la police en utlisant XLFD (X Logical Font +Description), comme ceci : @example -*-dejavu sans-medium-r-normal-*-*-100-*-*-*-*-*-1 @end example -To be able to use such full names for the TrueType fonts installed in your -Guix profile, you need to extend the font path of the X server: +Pour pouvoir utiliser ces noms complets avec les polices TrueType installées +dans votre profil Guix, vous devez étendre le chemin des polices du serveur +X : @c Note: 'xset' does not accept symlinks so the trick below arranges to @c get at the real directory. See . @@ -1630,68 +1700,72 @@ xset +fp $(dirname $(readlink -f ~/.guix-profile/share/fonts/truetype/fonts.dir) @end example @cindex @code{xlsfonts} -After that, you can run @code{xlsfonts} (from @code{xlsfonts} package) to -make sure your TrueType fonts are listed there. +Ensuite, vous pouvez lancer @code{xlsfonts} (du paquet @code{xlsfonts}) pour +vous assurer que vos polices TrueType y sont listées. @cindex @code{fc-cache} -@cindex font cache -After installing fonts you may have to refresh the font cache to use them in -applications. The same applies when applications installed via Guix do not -seem to find fonts. To force rebuilding of the font cache run -@code{fc-cache -f}. The @code{fc-cache} command is provided by the -@code{fontconfig} package. +@cindex cache de polices +Après l'installation des polices vous devrez peut-être rafraîchir le cache +des polices pour pouvoir les utiliser dans les applications. Ça s'applique +aussi lorsque les applications installées avec Guix n'ont pas l'air de +trouver les polices. Pour forcer la reconstruction du cache de polices +lancez @code{fc-cache -f}. La commande @code{fc-cache} est fournie par le +paquet @code{fontconfig}. @subsection Certificats X.509 @cindex @code{nss-certs} -The @code{nss-certs} package provides X.509 certificates, which allow -programs to authenticate Web servers accessed over HTTPS. +Le paquet @code{nss-certs} fournit les certificats X.509 qui permettent aux +programmes d'authentifier les serveurs web par HTTPS@. -When using Guix on a foreign distro, you can install this package and define -the relevant environment variables so that packages know where to look for -certificates. @xref{Certificats X.509}, for detailed information. +Lorsque vous utilisez Guix sur une distribution externe, vous pouvez +installer ce paquet et définir les variables d'environnement adéquates pour +que les paquets sachent où trouver les certificats. @xref{Certificats X.509}, pour des informations détaillées. -@subsection Emacs Packages +@subsection Paquets emacs @cindex @code{emacs} -When you install Emacs packages with Guix, the elisp files may be placed -either in @file{$HOME/.guix-profile/share/emacs/site-lisp/} or in -sub-directories of -@file{$HOME/.guix-profile/share/emacs/site-lisp/guix.d/}. The latter -directory exists because potentially there may exist thousands of Emacs -packages and storing all their files in a single directory may not be -reliable (because of name conflicts). So we think using a separate -directory for each package is a good idea. It is very similar to how the -Emacs package system organizes the file structure (@pxref{Package Files,,, -emacs, The GNU Emacs Manual}). +Lorsque vous installez les paquets Emacs avec Guix, les fichiers elisp +peuvent être placés soit dans +@file{$HOME/.guix-profile/share/emacs/site-lisp/} soit dans des +sous-répertoires de +@file{$HOME/.guix-profile/share/emacs/site-lisp/guix.d/}. Ce dernier existe +car il existe potentiellement des milliers de paquets Emacs et stocker leurs +fichiers dans un seul répertoire peut ne pas être fiable (à cause de +conflits de noms). Donc on pense qu'utiliser un répertoire séparé est une +bonne idée. C'est très similaire à la manière dont le système de paquet +d'Emacs organise la structure de fichiers (@pxref{Package Files,,, emacs, +The GNU Emacs Manual}). -By default, Emacs (installed with Guix) ``knows'' where these packages are -placed, so you do not need to perform any configuration. If, for some -reason, you want to avoid auto-loading Emacs packages installed with Guix, -you can do so by running Emacs with @code{--no-site-file} option -(@pxref{Init File,,, emacs, The GNU Emacs Manual}). +Par défaut, Emacs (installé avec Guix) « sait » où ces paquets ce trouvent, +donc vous n'avez pas besoin de le configurer. Si, pour quelque raison que +ce soit, vous souhaitez éviter de charger automatiquement les paquets Emacs +installés avec Guix, vous pouvez le faire en lançaint Emacs avec l'option +@code{--no-site-file} (@pxref{Init File,,, emacs, The GNU Emacs Manual}). -@subsection The GCC toolchain +@subsection La chaîne d'outils GCC @cindex GCC @cindex ld-wrapper -Guix offers individual compiler packages such as @code{gcc} but if you are -in need of a complete toolchain for compiling and linking source code what -you really want is the @code{gcc-toolchain} package. This package provides -a complete GCC toolchain for C/C++ development, including GCC itself, the -GNU C Library (headers and binaries, plus debugging symbols in the -@code{debug} output), Binutils, and a linker wrapper. +Guix offre des paquets de compilateurs individuels comme @code{gcc} mais si +vous avez besoin d'une chaîne de compilation complète pour compiler et lier +du code source, vous avez en fait besoin du paquet @code{gcc-toolchain}. Ce +paquet fournit une chaîne d'outils GCC pour le développement C/C++, dont GCC +lui-même, la bibliothèque C de GNU (les en-têtes et les binaires, plus les +symboles de débogage dans la sortie @code{debug}), Binutils et une enveloppe +pour l'éditeur de liens. -@cindex attempt to use impure library, error message +@cindex tentative d'utiliser une bibliothèque impure, message d'erreur -The wrapper's purpose is to inspect the @code{-L} and @code{-l} switches -passed to the linker, add corresponding @code{-rpath} arguments, and invoke -the actual linker with this new set of arguments. By default, the linker -wrapper refuses to link to libraries outside the store to ensure -``purity''. This can be annoying when using the toolchain to link with -local libraries. To allow references to libraries outside the store you -need to define the environment variable +Le rôle de l'enveloppe est d'inspecter les paramètres @code{-L} et @code{-l} +passés à l'éditeur de liens, d'ajouter des arguments @code{-rpath} +correspondants et d'invoquer le véritable éditeur de liens avec ce nouvel +ensemble d'arguments. Par défaut, l'enveloppe refuse de lier des +bibliothèques en dehors du dépôt pour assure la « pureté ». Cela peut être +embêtant lorsque vous utilisez la chaîne d'outils pour lier des +bibliothèques locales. Pour permettre des références à des bibliothèques en +dehors du dépôt, vous devrez définir la variable d'environnement @code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES}. @c TODO What else? @@ -1700,19 +1774,19 @@ need to define the environment variable @node Gestion de paquets @chapter Gestion de paquets -@cindex packages -The purpose of GNU Guix is to allow users to easily install, upgrade, and -remove software packages, without having to know about their build -procedures or dependencies. Guix also goes beyond this obvious set of -features. +@cindex paquets +Le but de GNU Guix est de permettre à ses utilisateurs d'installer, mettre à +jour et supprimer facilement des paquets logiciels sans devoir connaître +leur procédure de construction ou leurs dépendances. Guix va aussi plus +loin que ces fonctionnalités évidentes. Ce chapitre décrit les principales fonctionnalités de Guix, ainsi que des -outils de gestion des paquets qu'il fournit. En plus de l'interface en ligne -de commande décrite en dessous de (@pxref{Invoquer guix package, @code{guix -package}}), vous pouvez aussi utiliser l'interface Emacs-Guix (@pxref{Top,,, -emacs-guix, Le manuel de référence de emacs-guix}), après avoir installé le -paquet @code{emacs-guix} (lancez la commande @kbd{M-x guix-help} pour le -démarrer) : +outils de gestion des paquets qu'il fournit. En plus de l'interface en +ligne de commande décrite en dessous de (@pxref{Invoquer guix package, +@code{guix package}}), vous pouvez aussi utiliser l'interface Emacs-Guix +(@pxref{Top,,, emacs-guix, Le manuel de référence de emacs-guix}), après +avoir installé le paquet @code{emacs-guix} (lancez la commande @kbd{M-x +guix-help} pour le démarrer) : @example guix package -i emacs-guix @@ -1720,7 +1794,7 @@ guix package -i emacs-guix @menu * Fonctionnalités:: Comment Guix va rendre votre vie plus heureuse. -* Invoquer guix package:: Installation, suppression, etc. de paquets. +* Invoquer guix package:: Installation, suppression, etc.@: de paquets. * Substituts:: Télécharger des binaire déjà construits. * Des paquets avec plusieurs résultats:: Un seul paquet source, plusieurs résultats. @@ -1734,250 +1808,262 @@ guix package -i emacs-guix @node Fonctionnalités @section Fonctionnalités -When using Guix, each package ends up in the @dfn{package store}, in its own -directory---something that resembles @file{/gnu/store/xxx-package-1.2}, -where @code{xxx} is a base32 string. +Lorsque vous utilisez Guix, chaque paquet arrive dans @dfn{dépôt des +paquets}, dans son propre répertoire — quelque chose comme +@file{/gnu/store/xxx-paquet-1.2}, où @code{xxx} est une chaîne en base32. -Instead of referring to these directories, users have their own -@dfn{profile}, which points to the packages that they actually want to use. -These profiles are stored within each user's home directory, at -@code{$HOME/.guix-profile}. +Plutôt que de se rapporter à ces répertoires, les utilisateurs ont leur +propre @dfn{profil} qui pointe vers les paquets qu'ils veulent vraiment +utiliser. Ces profils sont stockés dans le répertoire personnel de chaque +utilisateur dans @code{$HOME/.guix-profile}. -For example, @code{alice} installs GCC 4.7.2. As a result, -@file{/home/alice/.guix-profile/bin/gcc} points to -@file{/gnu/store/@dots{}-gcc-4.7.2/bin/gcc}. Now, on the same machine, -@code{bob} had already installed GCC 4.8.0. The profile of @code{bob} -simply continues to point to -@file{/gnu/store/@dots{}-gcc-4.8.0/bin/gcc}---i.e., both versions of GCC -coexist on the same system without any interference. +Par exemple, @code{alice} installe GCC 4.7.2. Il en résulte que +@file{/home/alice/.guix-profile/bin/gcc} pointe vers +@file{/gnu/store/@dots{}-gcc-4.7.2/bin/gcc}. Maintenant, sur la même +machine, @code{bob} a déjà intallé GCC 4.8.0. Le profil de @code{bob} +continue simplement de pointer vers +@file{/gnu/store/@dots{}-gcc-4.8.0/bin/gcc} — c.-à-d.@: les deux versions de +GCC coexistent surs le même système sans aucune interférence. -The @command{guix package} command is the central tool to manage packages -(@pxref{Invoquer guix package}). It operates on the per-user profiles, and -can be used @emph{with normal user privileges}. +La commande @command{guix package} est l'outil central pour gérer les +paquets (@pxref{Invoquer guix package}). Il opère sur les profils +utilisateurs et peut être utilisé avec les @emph{privilèges utilisateurs +normaux}. @cindex transactions -The command provides the obvious install, remove, and upgrade operations. -Each invocation is actually a @emph{transaction}: either the specified -operation succeeds, or nothing happens. Thus, if the @command{guix package} -process is terminated during the transaction, or if a power outage occurs -during the transaction, then the user's profile remains in its previous -state, and remains usable. +La commande fournit les opérations évidentes d'installation, de suppression +et de mise à jour. Chaque invocation est en fait une @emph{transaction} : +soit l'opération demandée réussi, soit rien ne se passe. Ainsi, si le +processus @command{guix package} est terminé pendant la transaction ou si +une panne de courant arrive pendant la transaction, le profil de +l'utilisateur reste dans son état précédent et reste utilisable. -In addition, any package transaction may be @emph{rolled back}. So, if, for -example, an upgrade installs a new version of a package that turns out to -have a serious bug, users may roll back to the previous instance of their -profile, which was known to work well. Similarly, the global system -configuration on GuixSD is subject to transactional upgrades and roll-back +En plus, il est possible @emph{d'annuler} toute transaction sur les +paquets. Donc si par exemple un mise à jour installe une nouvelle version +d'un paquet qui révèle un bogue sérieux, les utilisateurs peuvent revenir en +arrière à l'instance précédente de leur profil qui est connu pour bien +fonctionner. De manière similaire, la configuration globale du système dans +GuixSD est sujette aux mises à jour transactionnelles et aux annulations (@pxref{Utiliser le système de configuration}). -All packages in the package store may be @emph{garbage-collected}. Guix can -determine which packages are still referenced by user profiles, and remove -those that are provably no longer referenced (@pxref{Invoquer guix gc}). -Users may also explicitly remove old generations of their profile so that -the packages they refer to can be collected. +Tous les paquets du dépôt des paquets peut être @emph{glané}. Guix peut +déterminer quels paquets sont toujours référencés par les profils des +utilisateurs et supprimer ceux qui ne sont plus référencés de manière +prouvable (@pxref{Invoquer guix gc}). Les utilisateurs peuvent toujours +explicitement supprimer les anciennes générations de leur profil pour que +les paquets auxquels elles faisaient référence puissent être glanés. -@cindex reproducibility -@cindex reproducible builds -Finally, Guix takes a @dfn{purely functional} approach to package -management, as described in the introduction (@pxref{Introduction}). Each -@file{/gnu/store} package directory name contains a hash of all the inputs -that were used to build that package---compiler, libraries, build scripts, -etc. This direct correspondence allows users to make sure a given package -installation matches the current state of their distribution. It also helps -maximize @dfn{build reproducibility}: thanks to the isolated build -environments that are used, a given build is likely to yield bit-identical -files when performed on different machines (@pxref{Invoquer guix-daemon, -container}). +@cindex reproductibilité +@cindex constructions reproductibles +Finalement, Guix prend une approche @dfn{purement fonctionnelle} de la +gestion de paquets, telle que décrite dans l'introduction +(@pxref{Introduction}). Chaque nom de répertoire de paquet dans +@file{/gnu/store} contient un hash de toutes les entrées qui ont été +utilisées pendant la construction de ce paquet — le compilateur, les +bibliothèques, les scripts de construction, etc. Cette correspondance +directe permet aux utilisateurs de s'assurer que l'installation d'un paquet +donné correspond à l'état actuel de leur distribution. Elle aide aussi à +maximiser la @dfn{reproductibilité} : grâce aux environnements de +construction utilisés, une construction donnée à de forte chances de donner +des fichiers identiques bit-à-bit lorsqu'elle est effectuée sur des machines +différents (@pxref{Invoquer guix-daemon, container}). -@cindex substitutes +@cindex substituts Ce fondement permet à Guix de supporter le @dfn{déploiement transparent de -binaire ou source}. Lorsqu'une binaire pré-construit pour une entrée de +binaire ou source}. Lorsqu'une binaire pré-construit pour une entrée de @file{/gnu/store} est disponible depuis une source externe (un @dfn{substitut}), Guix le télécharge simplement et le décompresse ; sinon, -il construit le paquet depuis les sources localement -(@pxref{Substituts}). Comme les résultats des constructions sont -généralement reproductibles au bit près, si vous n'avez pas besoin de faire -confiance aux serveurs qui fournissent les substituts : vous pouvez forcer -une construction locale et @emph{défier} les fournisseurs (@pxref{Invoquer guix challenge}). +il construit le paquet depuis les sources localement (@pxref{Substituts}). +Comme les résultats des constructions sont généralement reproductibles au +bit près, si vous n'avez pas besoin de faire confiance aux serveurs qui +fournissent les substituts : vous pouvez forcer une construction locale et +@emph{défier} les fournisseurs (@pxref{Invoquer guix challenge}). -Control over the build environment is a feature that is also useful for -developers. The @command{guix environment} command allows developers of a -package to quickly set up the right development environment for their -package, without having to manually install the dependencies of the package -into their profile (@pxref{Invoquer guix environment}). +Le contrôle de l'environnement de construction est aussi une fonctionnalité +utile pour les développeurs. La commande @command{guix environment} permet +aux développeurs d'un paquet de mettre en place rapidement le bon +environnement de développement pour leur paquet, sans avoir à installer +manuellement les dépendances du paquet dans leur profil (@pxref{Invoquer guix environment}). @node Invoquer guix package -@section Invoking @command{guix package} +@section Invoquer @command{guix package} -@cindex installing packages -@cindex removing packages -@cindex package installation -@cindex package removal +@cindex installer des paquets +@cindex supprimer des paquets +@cindex installation de paquets +@cindex suppression de paquets La commande @command{guix package} est l'outil qui permet d'installer, mettre à jour et supprimer les paquets ainsi que de revenir à une -configuration précédente. Elle n'opère que dans le profil de l'utilisateur +configuration précédente. Elle n'opère que dans le profil de l'utilisateur et fonctionne avec les privilèges utilisateurs normaux -(@pxref{Fonctionnalités}). Sa syntaxe est : +(@pxref{Fonctionnalités}). Sa syntaxe est : @example guix package @var{options} @end example @cindex transactions -Primarily, @var{options} specifies the operations to be performed during the -transaction. Upon completion, a new profile is created, but previous -@dfn{generations} of the profile remain available, should the user want to -roll back. +@var{options} spécifie d'abord les opérations à effectuer pendant la +transaction. À la fin, une nouvelle génération du profil est créée mais les +@dfn{générations} précédentes du profil restent disponibles si l'utilisateur +souhaite y revenir. -For example, to remove @code{lua} and install @code{guile} and -@code{guile-cairo} in a single transaction: +Par exemple, pour supprimer @code{lua} et installer @code{guile} et +@code{guile-cairo} en une seule transaction : @example guix package -r lua -i guile guile-cairo @end example -@command{guix package} also supports a @dfn{declarative approach} whereby -the user specifies the exact set of packages to be available and passes it -@i{via} the @option{--manifest} option (@pxref{profile-manifest, -@option{--manifest}}). +@command{guix package} supporte aussi une @dfn{approche déclarative} où +l'utilisateur spécifie l'ensemble exact des paquets qui doivent être +disponibles le passe @i{via} l'option @option{--manifest} +(@pxref{profile-manifest, @option{--manifest}}). -@cindex profile -For each user, a symlink to the user's default profile is automatically -created in @file{$HOME/.guix-profile}. This symlink always points to the -current generation of the user's default profile. Thus, users can add -@file{$HOME/.guix-profile/bin} to their @code{PATH} environment variable, -and so on. -@cindex search paths -If you are not using the Guix System Distribution, consider adding the -following lines to your @file{~/.bash_profile} (@pxref{Bash Startup Files,,, -bash, The GNU Bash Reference Manual}) so that newly-spawned shells get all -the right environment variable definitions: +@cindex profil +Pour chaque utilisateur, un lien symbolique vers le profil par défaut de cet +utilisateur est automatiquement créé dans @file{$HOME/.guix-profile}. Ce +lien symbolique pointe toujours vers la génération actuelle du profil par +défaut de l'utilisateur. Ainsi, les utilisateurs peuvent ajouter +@file{$HOME/.guix-profile/bin} à leur variable d'environnement @code{PATH} +etc. +@cindex chemins de recherche +Si vous n'utilisez pas la distribution système Guix, vous devriez ajouter +les lignes suivantes à votre @file{~/.bash_profile} (@pxref{Bash Startup +Files,,, bash, The GNU Bash Reference Manual}) pour que les shells créés +ensuite aient les bonnes définitions des variables d'environnement : @example GUIX_PROFILE="$HOME/.guix-profile" ; \ source "$HOME/.guix-profile/etc/profile" @end example -In a multi-user setup, user profiles are stored in a place registered as a -@dfn{garbage-collector root}, which @file{$HOME/.guix-profile} points to -(@pxref{Invoquer guix gc}). That directory is normally -@code{@var{localstatedir}/guix/profiles/per-user/@var{user}}, where -@var{localstatedir} is the value passed to @code{configure} as -@code{--localstatedir}, and @var{user} is the user name. The -@file{per-user} directory is created when @command{guix-daemon} is started, -and the @var{user} sub-directory is created by @command{guix package}. +Dans un environnement multi-utilisateur, les profils utilisateurs sont +stockés comme une @dfn{racine du ramasse-miettes}, vers laquelle pointe +@file{$HOME/.guix-profile} (@pxref{Invoquer guix gc}). Ce répertoire est +normalement +@code{@var{localstatedir}/guix/profiles/per-user/@var{utilisateur}}, où +@var{localstatedir} est la valeur passée à @code{configure} avec +@code{--localstatedir} et @var{utilisateur} le nom d'utilisateur. Le +répertoire @file{per-user} est créé lorsque @command{guix-daemon} est +démarré et sous-répertoire @var{utilisateur} est créé par @command{guix +package}. -The @var{options} can be among the following: +Les @var{options} peuvent être les suivante : @table @code -@item --install=@var{package} @dots{} -@itemx -i @var{package} @dots{} -Install the specified @var{package}s. +@item --install=@var{paquet} @dots{} +@itemx -i @var{paquet} @dots{} +Installer les @var{paquet}s spécifiés. -Each @var{package} may specify either a simple package name, such as -@code{guile}, or a package name followed by an at-sign and version number, -such as @code{guile@@1.8.8} or simply @code{guile@@1.8} (in the latter case, -the newest version prefixed by @code{1.8} is selected.) +Chaque @var{paquet} peut spécifier soit un simple nom de paquet, comme +@code{guile} ou un nom de paquet suivi d'un arobase et d'un numéro de +version, comme @code{guile@@1.8.8} ou simplement @code{guile@@1.8} (dans ce +dernier cas, la version la plus récente commençant par @code{1.8} est +utilisée). -If no version number is specified, the newest available version will be -selected. In addition, @var{package} may contain a colon, followed by the -name of one of the outputs of the package, as in @code{gcc:doc} or -@code{binutils@@2.22:lib} (@pxref{Des paquets avec plusieurs résultats}). -Packages with a corresponding name (and optionally version) are searched for -among the GNU distribution modules (@pxref{Modules de paquets}). +Si aucun numéro de version n'est spécifié, la version la plus récente +disponible est choisie. En plus, @var{paquet} peut contenir un deux-points, +suivi du nom d'une des sorties du paquet, comme dans @code{gcc:doc} ou +@code{binutils@@2.22:lib} (@pxref{Des paquets avec plusieurs résultats}). Des +paquets avec un nom correspondant et (éventuellement une version) sont +recherchés dans les modules de la distribution GNU (@pxref{Modules de paquets}). -@cindex propagated inputs -Sometimes packages have @dfn{propagated inputs}: these are dependencies that -automatically get installed along with the required package +@cindex entrées propagées +Parfois les paquets ont des @dfn{entrées propagées} : ce sont des +dépendances qui sont installées automatiquement avec le paquet demandé (@pxref{package-propagated-inputs, @code{propagated-inputs} in -@code{package} objects}, for information about propagated inputs in package -definitions). +@code{package} objects} pour plus d'informations sur les entrées propagées +dans les définitions des paquets). @anchor{package-cmd-propagated-inputs} -An example is the GNU MPC library: its C header files refer to those of the -GNU MPFR library, which in turn refer to those of the GMP library. Thus, -when installing MPC, the MPFR and GMP libraries also get installed in the -profile; removing MPC also removes MPFR and GMP---unless they had also been -explicitly installed by the user. +Un exemple est la bibliothèque MPC de GNU : ses fichiers d'en-tête C se +réfèrent à ceux de la bibliothèque MPFR de GNU, qui se réfèrent en retour à +ceux de la bibliothèque GMP. Ainsi, lorsqu'on installe MPC, les +bibliothèques MPFR et GMP sont aussi installées dans le profil ; supprimer +MPC supprimera aussi MPFR et GMP — à moins qu'ils n'aient été aussi +installés explicitement par l'utilisateur. -Besides, packages sometimes rely on the definition of environment variables -for their search paths (see explanation of @code{--search-paths} below). -Any missing or possibly incorrect environment variable definitions are -reported here. +D'autre part, les paquets dépendent parfois de la définition de variables +d'environnement pour leur chemin de recherche (voir les explications sur +@code{--search-paths} plus bas). Toute définition de variable +d'environnement manquante ou possiblement incorrecte est rapportée ici. @item --install-from-expression=@var{exp} @itemx -e @var{exp} -Install the package @var{exp} evaluates to. +Installer le paquet évalué par @var{exp} -@var{exp} must be a Scheme expression that evaluates to a @code{} -object. This option is notably useful to disambiguate between same-named -variants of a package, with expressions such as @code{(@@ (gnu packages -base) guile-final)}. +@var{exp} doit être une expression Scheme qui s'évalue en un objet +@code{}. Cette option est notamment utile pour distinguer les +variantes d'un paquet avec le même nom, avec des expressions comme @code{(@@ +(gnu packages base) guile-final)}. -Note that this option installs the first output of the specified package, -which may be insufficient when needing a specific output of a -multiple-output package. +Remarquez que cette option installe la première sortie du paquet, ce qui +peut être insuffisant lorsque vous avez besoin d'une sortie spécifique d'un +paquet à plusieurs sorties. -@item --install-from-file=@var{file} -@itemx -f @var{file} -Install the package that the code within @var{file} evaluates to. +@item --install-from-file=@var{fichier} +@itemx -f @var{fichier} +Installer le paquet évalué par le code dans le @var{fichier}. -As an example, @var{file} might contain a definition like this -(@pxref{Définition des paquets}): +Par exemple, @var{fichier} peut contenir une définition comme celle-ci +(@pxref{Définition des paquets}) : @example @verbatiminclude package-hello.scm @end example -Developers may find it useful to include such a @file{guix.scm} file in the -root of their project source tree that can be used to test development -snapshots and create reproducible development environments (@pxref{Invoquer guix environment}). +Les développeurs peuvent trouver utile d'inclure un tel fichier +@file{guix.scm} à la racine de l'arborescence des sources de leur projet qui +pourrait être utilisé pour tester des versions de développement et créer des +environnements de développement reproductibles (@pxref{Invoquer guix environment}). -@item --remove=@var{package} @dots{} -@itemx -r @var{package} @dots{} -Remove the specified @var{package}s. +@item --remove=@var{paquet} @dots{} +@itemx -r @var{paquet} @dots{} +Supprimer les @var{paquet}s spécifiés. -As for @code{--install}, each @var{package} may specify a version number -and/or output name in addition to the package name. For instance, @code{-r -glibc:debug} would remove the @code{debug} output of @code{glibc}. +Comme pour @code{--install}, chaque @var{paquet} peut spécifier un numéro de +version ou un nom de sortie en plus du nom du paquet. Par exemple, @code{-r +glibc:debug} supprimerait la sortie @code{debug} de @code{glibc}. @item --upgrade[=@var{regexp} @dots{}] @itemx -u [@var{regexp} @dots{}] -@cindex upgrading packages -Upgrade all the installed packages. If one or more @var{regexp}s are -specified, upgrade only installed packages whose name matches a -@var{regexp}. Also see the @code{--do-not-upgrade} option below. +@cindex mettre à jour des paquets +Mettre à jour tous les paquets installés. Si une @var{regexp} ou plus est +spécifiée, la mise à jour n'installera que les paquets dont le nom +correspond à @var{regexp}. Voyez aussi l'option @code{--do-not-upgrade} en +dessous. -Note that this upgrades package to the latest version of packages found in -the distribution currently installed. To update your distribution, you -should regularly run @command{guix pull} (@pxref{Invoquer guix pull}). +Remarquez que cela met à jour vers la dernière version des paquets trouvée +dans la distribution actuellement installée. Pour mettre à jour votre +distribution, vous devriez lancer régulièrement @command{guix pull} +(@pxref{Invoquer guix pull}). @item --do-not-upgrade[=@var{regexp} @dots{}] -When used together with the @code{--upgrade} option, do @emph{not} upgrade -any packages whose name matches a @var{regexp}. For example, to upgrade all -packages in the current profile except those containing the substring -``emacs'': +Lorsqu'elle est utilisée avec l'option @code{--upgrade}, ne @emph{pas} +mettre à jour les paquets dont le nom correspond à @var{regexp}. Par +exemple, pour mettre à jour tous les paquets du profil actuel à l'exception +de ceux qui contiennent la chaîne « emacs » : @example $ guix package --upgrade . --do-not-upgrade emacs @end example -@item @anchor{profile-manifest}--manifest=@var{file} -@itemx -m @var{file} -@cindex profile declaration -@cindex profile manifest -Create a new generation of the profile from the manifest object returned by -the Scheme code in @var{file}. +@item @anchor{profile-manifest}--manifest=@var{fichier} +@itemx -m @var{fichier} +@cindex déclaration de profil +@cindex manifest de profil +Créer une nouvelle génération du profil depuis l'objet manifeste renvoyé par +le code Scheme dans @var{fichier}. -This allows you to @emph{declare} the profile's contents rather than -constructing it through a sequence of @code{--install} and similar -commands. The advantage is that @var{file} can be put under version -control, copied to different machines to reproduce the same profile, and so -on. +Cela vous permet de @emph{déclarer} le contenu du profil plutôt que de le +construire avec une série de @code{--install} et de commandes similaires. +L'avantage étant que le @var{fichier} peut être placé sous contrôle de +version, copié vers d'autres machines pour reproduire le même profil, etc. @c FIXME: Add reference to (guix profile) documentation when available. -@var{file} must return a @dfn{manifest} object, which is roughly a list of -packages: +@var{fichier} doit retourner un objet @dfn{manifest} qui est en gros une +liste de paquets : @findex packages->manifest @example @@ -1986,16 +2072,17 @@ packages: (packages->manifest (list emacs guile-2.0 - ;; Use a specific package output. + ;; Utiliser une sortie spécifique d'un paquet. (list guile-2.0 "debug"))) @end example @findex specifications->manifest -In this example we have to know which modules define the @code{emacs} and -@code{guile-2.0} variables to provide the right @code{use-package-modules} -line, which can be cumbersome. We can instead provide regular package -specifications and let @code{specifications->manifest} look up the -corresponding package objects, like this: +Dans cet exemple on doit savoir quels modules définissent les variables +@code{emacs} et @code{guile-2.0} pour fournir la bonne ligne +@code{use-package-modules} ce qui peut être embêtant. On peut à la place +fournir des spécifications de paquets normales et laisser +@code{specifications->manifest} rechercher les objets de paquets +correspondants, comme ceci : @example (specifications->manifest @@ -2003,65 +2090,69 @@ corresponding package objects, like this: @end example @item --roll-back -@cindex rolling back -@cindex undoing transactions -@cindex transactions, undoing -Roll back to the previous @dfn{generation} of the profile---i.e., undo the -last transaction. +@cindex revenir en arrière +@cindex défaire des transactions +@cindex transactions, défaire +Revenir à la @dfn{génération} précédente du profil c.-à-d.@: défaire la +dernière transaction. -When combined with options such as @code{--install}, roll back occurs before -any other actions. +Lorsqu'elle est combinée avec des options comme @code{--install}, cette +option revient en arrière avant toute autre action. -When rolling back from the first generation that actually contains installed -packages, the profile is made to point to the @dfn{zeroth generation}, which -contains no files apart from its own metadata. +Lorsque vous revenez de la première génération qui contient des fichiers, le +profil pointera vers la @dfn{zéroième génération} qui ne contient aucun +fichier en dehors de ses propres métadonnées. -After having rolled back, installing, removing, or upgrading packages -overwrites previous future generations. Thus, the history of the -generations in a profile is always linear. +Après être revenu en arrière, l'installation, la suppression et la mise à +jour de paquets réécrit les futures générations précédentes. Ainsi, +l'historique des générations dans un profil est toujours linéaire. -@item --switch-generation=@var{pattern} -@itemx -S @var{pattern} -@cindex generations -Switch to a particular generation defined by @var{pattern}. +@item --switch-generation=@var{motif} +@itemx -S @var{motif} +@cindex générations +Basculer vers une génération particulière définie par le @var{motif}. -@var{pattern} may be either a generation number or a number prefixed with -``+'' or ``-''. The latter means: move forward/backward by a specified -number of generations. For example, if you want to return to the latest -generation after @code{--roll-back}, use @code{--switch-generation=+1}. +Le @var{motif} peut être soit un numéro de génération soit un nombre précédé +de « + » ou « - ». Ce dernier signifie : se déplacer en avant ou en arrière +d'un nombre donné de générations. Par exemple, si vous voulez retourner à +la dernière génération après @code{--roll-back}, utilisez +@code{--switch-generation=+1}. -The difference between @code{--roll-back} and @code{--switch-generation=-1} -is that @code{--switch-generation} will not make a zeroth generation, so if -a specified generation does not exist, the current generation will not be -changed. +La différence entre @code{--roll-back} et @code{--switch-generation=-1} est +que @code{--switch-generation} ne vous amènera pas à la zéroième génération, +donc si la génération demandée n'existe pas la génération actuelle ne +changera pas. -@item --search-paths[=@var{kind}] -@cindex search paths -Report environment variable definitions, in Bash syntax, that may be needed -in order to use the set of installed packages. These environment variables -are used to specify @dfn{search paths} for files used by some of the -installed packages. +@item --search-paths[=@var{genre}] +@cindex chemins de recherche +Rapporter les définitions des variables d'environnement dans la syntaxe Bash +qui peuvent être requises pour utiliser l'ensemble des paquets installés. +Ces variables d'environnement sont utilisées pour spécifier les @dfn{chemins +de recherche} de fichiers utilisés par les paquets installés. -For example, GCC needs the @code{CPATH} and @code{LIBRARY_PATH} environment -variables to be defined so it can look for headers and libraries in the -user's profile (@pxref{Environment Variables,,, gcc, Using the GNU Compiler -Collection (GCC)}). If GCC and, say, the C library are installed in the -profile, then @code{--search-paths} will suggest setting these variables to -@code{@var{profile}/include} and @code{@var{profile}/lib}, respectively. +Par exemple, GCC a besoin des variables d'environnement @code{CPATH} et +@code{LIBRARY_PATH} pour trouver les en-têtes et les bibliothèques dans le +profil de l'utilisateur (@pxref{Environment Variables,,, gcc, Using the GNU +Compiler Collection (GCC)}). Si GCC et, disons, la bibliothèque C sont +installés dans le profil, alors @code{--search-paths} suggérera +d'initialiser ces variables à @code{@var{profil}/include} et +@code{@var{profil}/lib}, respectivement. -The typical use case is to define these environment variables in the shell: +Le cas d'utilisation typique est de définir ces variables d'environnement +dans le shell : @example $ eval `guix package --search-paths` @end example -@var{kind} may be one of @code{exact}, @code{prefix}, or @code{suffix}, -meaning that the returned environment variable definitions will either be -exact settings, or prefixes or suffixes of the current value of these -variables. When omitted, @var{kind} defaults to @code{exact}. +@var{genre} peut être l'une des valeurs @code{exact}, @code{prefix} ou +@code{suffix}, ce qui signifie que les définitions des variables +d'environnement retournées seront soit les paramètres exactes, ou placés +avant ou après la valeur actuelle de ces paramètres. Lorsqu'il est omis, +@var{genre} a pour valeur par défaut @code{exact}. -This option can also be used to compute the @emph{combined} search paths of -several profiles. Consider this example: +Cette option peut aussi être utilisé pour calculer les chemins de recherche +@emph{combinés} de plusieurs profils. Regardez cet exemple : @example $ guix package -p foo -i guile @@ -2069,51 +2160,52 @@ $ guix package -p bar -i guile-json $ guix package -p foo -p bar --search-paths @end example -The last command above reports about the @code{GUILE_LOAD_PATH} variable, -even though, taken individually, neither @file{foo} nor @file{bar} would -lead to that recommendation. +La dernière commande ci-dessus montre la variable @code{GUILE_LOAD_PATH} +bien que, pris individuellement, ni @file{foo} ni @file{bar} n'auraient +donné cette recommendation. -@item --profile=@var{profile} -@itemx -p @var{profile} -Use @var{profile} instead of the user's default profile. +@item --profile=@var{profil} +@itemx -p @var{profil} +Utiliser le @var{profil} à la place du profil par défaut de l'utilisateur. -@cindex collisions, in a profile -@cindex colliding packages in profiles -@cindex profile collisions +@cindex collisions, dans un profil +@cindex faire des collisions de paquets dans des profils +@cindex profil, collisions @item --allow-collisions -Allow colliding packages in the new profile. Use at your own risk! +Permettre des collisions de paquets dans le nouveau profil. À utiliser à +vos risques et périls ! -By default, @command{guix package} reports as an error @dfn{collisions} in -the profile. Collisions happen when two or more different versions or -variants of a given package end up in the profile. +Par défaut, @command{guix package} rapporte les @dfn{collisions} dans le +profil comme des erreurs. Les collisions ont lieu quand deux version ou +variantes d'un paquet donné se retrouvent dans le profil. @item --verbose -Produce verbose output. In particular, emit the build log of the -environment on the standard error port. +Produire une sortie verbeuse. En particulier, fournir les journaux de +construction de l'environnement sur le port d'erreur standard. @item --bootstrap -Use the bootstrap Guile to build the profile. This option is only useful to -distribution developers. +Utiliser le programme d'amorçage Guile pour compiler le profil. Cette +option n'est utile que pour les développeurs de la distriibution. @end table -In addition to these actions, @command{guix package} supports the following -options to query the current state of a profile, or the availability of -packages: +En plus de ces actions, @command{guix package} supporte les options +suivantes pour demander l'état actuel d'un profil ou la disponibilité des +paquets : @table @option @item --search=@var{regexp} @itemx -s @var{regexp} -@cindex searching for packages -List the available packages whose name, synopsis, or description matches -@var{regexp}, sorted by relevance. Print all the metadata of matching -packages in @code{recutils} format (@pxref{Top, GNU recutils databases,, -recutils, GNU recutils manual}). +@cindex chercher des paquets +Lister les paquets disponibles dont le nom, le synopsis ou la description +correspondent à la @var{regexp}, triés par pertinence. Afficher toutes les +métadonnées des paquets correspondants au format @code{recutils} +(@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual}). -This allows specific fields to be extracted using the @command{recsel} -command, for instance: +Cela permet à des champs spécifiques d'être extraits avec la commande +@command{recsel}, par exemple : @example $ guix package -s malloc | recsel -p name,version,relevance @@ -2130,8 +2222,8 @@ version: 7.6.0 relevance: 1 @end example -Similarly, to show the name of all the packages available under the terms of -the GNU@tie{}LGPL version 3: +De manière similaire, pour montrer le nom de tous les paquets disponibles +sous license GNU@tie{}LGPL version 3 : @example $ guix package -s "" | recsel -p name -e 'license ~ "LGPL 3"' @@ -2141,8 +2233,9 @@ name: gmp @dots{} @end example -It is also possible to refine search results using several @code{-s} flags. -For example, the following command returns a list of board games: +Il est aussi possible de raffiner les résultats de la recherche avec +plusieurs options @code{-s}. Par exemple, la commande suivante renvoie la +liste des jeux de plateau : @example $ guix package -s '\' -s game | recsel -p name @@ -2150,13 +2243,14 @@ name: gnubg @dots{} @end example -If we were to omit @code{-s game}, we would also get software packages that -deal with printed circuit boards; removing the angle brackets around -@code{board} would further add packages that have to do with keyboards. +Si on avait oublié @code{-s game}, on aurait aussi eu les paquets logiciels +qui s'occupent de circuits imprimés (en anglais : circuit board) ; supprimer +les chevrons autour de @code{board} aurait aussi ajouté les paquets qui +parlent de clavier (en anglais : key@emph{board}). -And now for a more elaborate example. The following command searches for -cryptographic libraries, filters out Haskell, Perl, Python, and Ruby -libraries, and prints the name and synopsis of the matching packages: +Et maintenant un exemple plus élaboré. La commande suivante recherche les +bibliothèques cryptographiques, retire les bibliothèques Haskell, Perl, +Python et Ruby et affiche le nom et le synopsis des paquets correspondants : @example $ guix package -s crypto -s library | \ @@ -2164,12 +2258,12 @@ $ guix package -s crypto -s library | \ @end example @noindent -@xref{Selection Expressions,,, recutils, GNU recutils manual}, for more -information on @dfn{selection expressions} for @code{recsel -e}. +@xref{Selection Expressions,,, recutils, GNU recutils manual} pour plus +d'information sur les @dfn{expressions de sélection} pour @code{recsel -e}. -@item --show=@var{package} -Show details about @var{package}, taken from the list of available packages, -in @code{recutils} format (@pxref{Top, GNU recutils databases,, recutils, +@item --show=@var{paquet} +Afficher les détails du @var{paquet} dans la liste des paquets disponibles, +au format @code{recutils} (@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual}). @example @@ -2181,8 +2275,8 @@ name: python version: 3.3.5 @end example -You may also specify the full name of a package to only get details about a -specific version of it: +Vous pouvez aussi spécifier le nom complet d'un paquet pour n'avoir que les +détails concernant une version spécifique : @example $ guix package --show=python@@3.4 | recsel -p name,version name: python @@ -2193,103 +2287,109 @@ version: 3.4.3 @item --list-installed[=@var{regexp}] @itemx -I [@var{regexp}] -List the currently installed packages in the specified profile, with the -most recently installed packages shown last. When @var{regexp} is -specified, list only installed packages whose name matches @var{regexp}. +Liste les paquets actuellement installés dans le profil spécifié, avec les +paquets les plus récemment installés en dernier. Lorsque @var{regexp} est +spécifié, liste uniquement les paquets installés dont le nom correspond à +@var{regexp}. -For each installed package, print the following items, separated by tabs: -the package name, its version string, the part of the package that is -installed (for instance, @code{out} for the default output, @code{include} -for its headers, etc.), and the path of this package in the store. +Pour chaque paquet installé, affiche les éléments suivants, séparés par des +tabulations : le nom du paquet, sa version, la partie du paquet qui est +installé (par exemple, @code{out} pour la sortie par défaut, @code{include} +pour ses en-têtes, etc) et le chemin du paquet dans le dépôt. @item --list-available[=@var{regexp}] @itemx -A [@var{regexp}] -Liste les paquets actuellement disponibles dans la distribution pour ce -système (@pxref{Distribution GNU}). Lorsque @var{regexp} est spécifié, liste -uniquement les paquets dont le nom correspond à @var{regexp}. +Lister les paquets actuellement disponibles dans la distribution pour ce +système (@pxref{Distribution GNU}). Lorsque @var{regexp} est spécifié, +liste uniquement les paquets dont le nom correspond à @var{regexp}. -For each package, print the following items separated by tabs: its name, its -version string, the parts of the package (@pxref{Des paquets avec plusieurs résultats}), and the source location of its definition. +Pour chaque paquet, affiche les éléments suivants séparés par des +tabulations : son nom, sa version, les parties du paquet (@pxref{Des paquets avec plusieurs résultats}), et l'emplacement de sa définition. -@item --list-generations[=@var{pattern}] -@itemx -l [@var{pattern}] -@cindex generations -Return a list of generations along with their creation dates; for each -generation, show the installed packages, with the most recently installed -packages shown last. Note that the zeroth generation is never shown. +@item --list-generations[=@var{motif}] +@itemx -l [@var{motif}] +@cindex générations +Renvoyer la liste des générations avec leur date de création ; pour chaque +génération, montre les paquets installés avec les paquets installés les plus +récemment en dernier. Remarquez que la zéroième génération n'est jamais +montrée. -For each installed package, print the following items, separated by tabs: -the name of a package, its version string, the part of the package that is -installed (@pxref{Des paquets avec plusieurs résultats}), and the location of this -package in the store. +Pour chaque paquet installé, afficher les éléments suivants, séparés par des +tabulations : le nom du paquet, sa version, la partie du paquet qui a été +installée (@pxref{Des paquets avec plusieurs résultats}), et l'emplacement du +paquet dans le dépôt. -When @var{pattern} is used, the command returns only matching generations. -Valid patterns include: +Lorsque @var{motif} est utilisé, la commande ne renvoie que les générations +correspondantes. Les motifs valides sont : @itemize -@item @emph{Integers and comma-separated integers}. Both patterns denote -generation numbers. For instance, @code{--list-generations=1} returns the -first one. +@item @emph{Des entiers et des entiers séparés par des virgules}. Les deux motifs correspondent +à des numéros de version. Par exemple, @code{--list-generations=1} renvoie +la première. -And @code{--list-generations=1,8,2} outputs three generations in the -specified order. Neither spaces nor trailing commas are allowed. +Et @code{--list-generations=1,8,2} renvoie les trois générations dans +l'ordre spécifié. Aucune espace ni virgule surnuméraire n'est permise. -@item @emph{Ranges}. @code{--list-generations=2..9} prints the -specified generations and everything in between. Note that the start of a -range must be smaller than its end. +@item @emph{Des interval}. @code{--list-generations=2..9} affiche les +générations demandées et tout ce qui se trouvent entre elles. Remarquez que +le début d'un interval doit être plus petit que sa fin. -It is also possible to omit the endpoint. For example, -@code{--list-generations=2..}, returns all generations starting from the -second one. +Il est aussi possible d'omettre le numéro final. Par exemple, +@code{--list-generations=2..} renvoie toutes les générations à partir de la +deuxième. -@item @emph{Durations}. You can also get the last @emph{N}@tie{}days, weeks, -or months by passing an integer along with the first letter of the -duration. For example, @code{--list-generations=20d} lists generations that -are up to 20 days old. +@item @emph{Des durées}. Vous pouvez aussi récupérer les derniers @emph{N}@tie{}jours, semaines, +ou moins en passant un entier avec la première lettre de la durée (en +anglais : d, w ou m). Par exemple @code{--list-generations=20d} liste les +générations qui sont agées d'au plus 20 jours. @end itemize -@item --delete-generations[=@var{pattern}] -@itemx -d [@var{pattern}] -When @var{pattern} is omitted, delete all generations except the current -one. +@item --delete-generations[=@var{motif}] +@itemx -d [@var{motif}] +Lorsque @var{motif} est omis, supprimer toutes les générations en dehors de +l'actuelle. -This command accepts the same patterns as @option{--list-generations}. When -@var{pattern} is specified, delete the matching generations. When -@var{pattern} specifies a duration, generations @emph{older} than the -specified duration match. For instance, @code{--delete-generations=1m} -deletes generations that are more than one month old. +Cette commande accepte les même motifs que @option{--list-generations}. +Lorsque @var{motif} est spécifié, supprimer les générations correspondante. +Lorsque @var{motif} spécifie une durée, les générations @emph{plus vieilles} +que la durée spécifiée correspondent. Par exemple +@code{--delete-generations=1m} supprime les générations vieilles de plus +d'un mois. -If the current generation matches, it is @emph{not} deleted. Also, the -zeroth generation is never deleted. +Si la génération actuelle correspond, elle n'est @emph{pas} supprimée. La +zéroième génération n'est elle non plus jamais supprimée. -Note that deleting generations prevents rolling back to them. Consequently, -this command must be used with care. +Remarquez que supprimer des générations empêche de revenir en arrière vers +elles. Ainsi, cette commande doit être utilisée avec précaution. @end table -Finally, since @command{guix package} may actually start build processes, it -supports all the common build options (@pxref{Options de construction communes}). It -also supports package transformation options, such as @option{--with-source} -(@pxref{Options de transformation de paquets}). However, note that package -transformations are lost when upgrading; to preserve transformations across -upgrades, you should define your own package variant in a Guile module and -add it to @code{GUIX_PACKAGE_PATH} (@pxref{Définition des paquets}). +Enfin, comme @command{guix package} peut démarrer des processus de +construction, elle supporte les options de construction communes +(@pxref{Options de construction communes}). Elle supporte aussi les options de +transformation de paquets comme @option{--with-source} (@pxref{Options de transformation de paquets}). Cependant, remarquez que les transformations de +paquets sont perdues à la mise à jour ; pour les préserver à travers les +mises à jours, vous devriez définir vos propres variantes des paquets dans +une module Guile et l'ajouter à @code{GUIX_PACKAGE_PATH} (@pxref{Définition des paquets}). @node Substituts @section Substituts -@cindex substitutes -@cindex pre-built binaries -Guix supports transparent source/binary deployment, which means that it can -either build things locally, or download pre-built items from a server, or -both. We call these pre-built items @dfn{substitutes}---they are -substitutes for local build results. In many cases, downloading a -substitute is much faster than building things locally. +@cindex substituts +@cindex binaires pré-construits +Guix gère le déploiement depuis des binaires ou des sources de manière +transparente ce qui signifie qu'il peut aussi bien construire localement que +télécharger des éléments pré-construits depuis un serveur ou les deux. Nous +appelons ces éléments pré-construits des @dfn{substituts} — ils se +substituent aux résultats des constructions locales. Dans la plupart des +cas, télécharger un substitut est bien plus rapide que de construire les +choses localement. -Substitutes can be anything resulting from a derivation build -(@pxref{Dérivations}). Of course, in the common case, they are pre-built -package binaries, but source tarballs, for instance, which also result from -derivation builds, can be available as substitutes. +Les substituts peuvent être tout ce qui résulte d'une construction de +dérivation (@pxref{Dérivations}). Bien sûr dans le cas général, il s'agit +de paquets binaires pré-construits, mais les archives des sources par +exemple résultent aussi de la construction d'une dérivation qui peut aussi +être disponible en tant que substitut. @menu * Serveur de substituts officiel:: Une source particulière de substituts. @@ -2307,69 +2407,73 @@ derivation builds, can be available as substitutes. @subsection Serveur de substituts officiel @cindex hydra -@cindex build farm -The @code{mirror.hydra.gnu.org} server is a front-end to an official build -farm that builds packages from Guix continuously for some architectures, and -makes them available as substitutes. This is the default source of -substitutes; it can be overridden by passing the @option{--substitute-urls} -option either to @command{guix-daemon} (@pxref{daemon-substitute-urls,, -@code{guix-daemon --substitute-urls}}) or to client tools such as -@command{guix package} (@pxref{client-substitute-urls,, client -@option{--substitute-urls} option}). +@cindex ferme de construction +Le serveur @code{mirror.hydra.gnu.org} est une interface à la ferme de +construction officielle qui construit des paquets pour Guix continuellement +pour certaines architectures et les rend disponibles en tant que +substituts. C'est la source par défaut des substituts ; elle peut être +modifiée en passant l'option @option{--substitute-urls} soit à +@command{guix-daemon} (@pxref{daemon-substitute-urls,, @code{guix-daemon +--substitute-urls}}) soit aux outils clients comme @command{guix package} +(@pxref{client-substitute-urls,, client @option{--substitute-urls} option}). -Substitute URLs can be either HTTP or HTTPS. HTTPS is recommended because -communications are encrypted; conversely, using HTTP makes all -communications visible to an eavesdropper, who could use the information -gathered to determine, for instance, whether your system has unpatched -security vulnerabilities. +Les URL des substituts peuvent être soit en HTTP soit en HTTPS. Le HTTPS +est recommandé parce que les communications sont chiffrées ; à l'inverse +HTTP rend les communications visibles pour un espion qui peut utiliser les +informations accumulées sur vous pour déterminer par exemple si votre +système a des vulnérabilités de sécurités non corrigées. -Substitutes from the official build farm are enabled by default when using -the Guix System Distribution (@pxref{Distribution GNU}). However, they are -disabled by default when using Guix on a foreign distribution, unless you -have explicitly enabled them via one of the recommended installation steps -(@pxref{Installation}). The following paragraphs describe how to enable or -disable substitutes for the official build farm; the same procedure can also -be used to enable substitutes for any other substitute server. +Les substituts de la ferme de construction officielle sont activés par +défaut dans la distribution système Guix (@pxref{Distribution GNU}). +Cependant, ils sont désactivés par défaut lorsque vous utilisez Guix sur une +distribution externe, à moins que vous ne les ayez explicitement activés via +l'une des étapes d'installation recommandées (@pxref{Installation}). Les +paragraphes suivants décrivent comment activer ou désactiver les substituts +de la ferme de construction ; la même procédure peut être utilisée pour +activer les substituts de n'importe quel autre serveur de substituts. @node Autoriser un serveur de substituts @subsection Autoriser un serveur de substituts -@cindex security -@cindex substitutes, authorization thereof -@cindex access control list (ACL), for substitutes -@cindex ACL (access control list), for substitutes -To allow Guix to download substitutes from @code{hydra.gnu.org} or a mirror -thereof, you must add its public key to the access control list (ACL) of -archive imports, using the @command{guix archive} command (@pxref{Invoquer guix archive}). Doing so implies that you trust @code{hydra.gnu.org} to not -be compromised and to serve genuine substitutes. +@cindex sécurité +@cindex substituts, autorisations +@cindex liste de contrôle d'accès (ACL), pour les substituts +@cindex ACL (liste de contrôle d'accès), pour les substituts +Pour permettre à Guix de télécharger les substituts depuis +@code{hydra.gnu.org} ou un mirroir, vous devez ajouter sa clef publique à la +liste de contrôle d'accès (ACL) des imports d'archives, avec la commande +@command{guix archive} (@pxref{Invoquer guix archive}). Cela implique que +vous faîtes confiance à @code{hydra.gnu.org} pour ne pas être compromis et +vous servir des substituts authentiques. -The public key for @code{hydra.gnu.org} is installed along with Guix, in -@code{@var{prefix}/share/guix/hydra.gnu.org.pub}, where @var{prefix} is the -installation prefix of Guix. If you installed Guix from source, make sure -you checked the GPG signature of @file{guix-@value{VERSION}.tar.gz}, which -contains this public key file. Then, you can run something like this: +La clef publique pour @code{hydra.gnu.org} est installée avec Guix, dans +@code{@var{préfixe}/share/guix/hydra.gnu.org.pub}, où @var{préfixe} est le +préfixe d'installation de Guix. Si vous avez installé Guix depuis les +sources, assurez-vous d'avoir vérifié la signature GPG de +@file{guix-@value{VERSION}.tar.gz} qui contient ce fichier de clef +publique. Ensuite vous pouvez lancer quelque chose comme ceci : @example -# guix archive --authorize < @var{prefix}/share/guix/hydra.gnu.org.pub +# guix archive --authorize < @var{préfixe}/share/guix/hydra.gnu.org.pub @end example -@quotation Note -Similarly, the @file{berlin.guixsd.org.pub} file contains the public key for -the project's new build farm, reachable at +@quotation Remarque +De même, le fichier @file{berlin.guixsd.org.pub} contient la clef publique +de la nouvelle ferme de construction du projet, disponible depuis @indicateurl{https://berlin.guixsd.org}. -As of this writing @code{berlin.guixsd.org} is being upgraded so it can -better scale up, but you might want to give it a try. It is backed by 20 -x86_64/i686 build nodes and may be able to provide substitutes more quickly -than @code{mirror.hydra.gnu.org}. +Au moment où ces lignes sont écrites, @code{berlin.guixsd.org} est mis à +niveau pour mieux passer à l'échelle, mais vous pourriez vouloir le tester. +Il est associé à 20 nœuds de construction x86_64/i686 et pourrait fournir +des substituts plus rapidement que @code{mirror.hydra.gnu.org} @end quotation -Once this is in place, the output of a command like @code{guix build} should -change from something like: +Une fois que cela est en place, la sortie d'une commande comme @code{guix +build} devrait changer de quelque chose comme : @example $ guix build emacs --dry-run -The following derivations would be built: +Les dérivations suivantes seraient construites : /gnu/store/yr7bnx8xwcayd6j95r2clmkdl1qh688w-emacs-24.3.drv /gnu/store/x8qsh1hlhgjx6cwsjyvybnfv2i37z23w-dbus-1.6.4.tar.gz.drv /gnu/store/1ixwp12fl950d15h2cj11c73733jay0z-alsa-lib-1.0.27.1.tar.bz2.drv @@ -2378,11 +2482,11 @@ The following derivations would be built: @end example @noindent -to something like: +à quelque chose comme : @example $ guix build emacs --dry-run -112.3 MB would be downloaded: +112.3 Mo seraient téléchargés : /gnu/store/pk3n22lbq6ydamyymqkkz7i69wiwjiwi-emacs-24.3 /gnu/store/2ygn4ncnhrpr61rssa6z0d9x22si0va3-libjpeg-8d /gnu/store/71yz6lgx4dazma9dwn2mcjxaah9w77jq-cairo-1.12.16 @@ -2391,439 +2495,511 @@ $ guix build emacs --dry-run @end example @noindent -This indicates that substitutes from @code{hydra.gnu.org} are usable and -will be downloaded, when possible, for future builds. +Cela indique que les substituts de @code{hydra.gnu.org} sont utilisables et +seront téléchargés, si possible, pour les futures constructions. -@cindex substitutes, how to disable -The substitute mechanism can be disabled globally by running -@code{guix-daemon} with @code{--no-substitutes} (@pxref{Invoquer guix-daemon}). It can also be disabled temporarily by passing the -@code{--no-substitutes} option to @command{guix package}, @command{guix -build}, and other command-line tools. +@cindex substituts, comment les désactiver +Le mécanisme de substitution peut être désactivé globalement en lançant +@code{guix-daemon} avec @code{--no-substitutes} (@pxref{Invoquer guix-daemon}). Il peut aussi être désactivé temporairement en passant +l'option @code{--no-substitutes} à @command{guix package}, @command{guix +build} et aux autres outils en ligne de commande. @node Authentification des substituts @subsection Authentification des substituts -@cindex digital signatures -Guix detects and raises an error when attempting to use a substitute that -has been tampered with. Likewise, it ignores substitutes that are not -signed, or that are not signed by one of the keys listed in the ACL. +@cindex signatures numériques +Guix détecte et lève une erreur lorsqu'il essaye d'utiliser un substituts +qui a été modifié. De même, il ignore les substituts qui ne sont pas signés +ou qui ne sont pas signés par l'une des clefs listés dans l'ACL. -There is one exception though: if an unauthorized server provides -substitutes that are @emph{bit-for-bit identical} to those provided by an -authorized server, then the unauthorized server becomes eligible for -downloads. For example, assume we have chosen two substitute servers with -this option: +Il y a une exception cependant : si un serveur non autorisé fournit des +substituts qui sont @emph{identiques bit-à-bit} à ceux fournis par un +serveur autorisé, alors le serveur non autorisé devient disponible pour les +téléchargements. Par exemple en supposant qu'on a choisi deux serveurs de +substituts avec cette option : @example --substitute-urls="https://a.example.org https://b.example.org" @end example @noindent -@cindex reproducible builds -If the ACL contains only the key for @code{b.example.org}, and if -@code{a.example.org} happens to serve the @emph{exact same} substitutes, -then Guix will download substitutes from @code{a.example.org} because it -comes first in the list and can be considered a mirror of -@code{b.example.org}. In practice, independent build machines usually -produce the same binaries, thanks to bit-reproducible builds (see below). +@cindex constructions reproductibles +Si l'ACL contient uniquement la clef de @code{b.example.org}, et si +@code{a.example.org} sert @emph{exactement les mêmes} substituts, alors Guix +téléchargera les substituts de @code{a.example.org} parce qu'il vient en +premier dans la liste et peut être considéré comme un mirroir de +@code{b.example.org}. En pratique, des machines de constructions produisent +souvent les mêmes binaires grâce à des construction reproductibles au bit +près (voir plus bas). -When using HTTPS, the server's X.509 certificate is @emph{not} validated (in -other words, the server is not authenticated), contrary to what HTTPS -clients such as Web browsers usually do. This is because Guix authenticates -substitute information itself, as explained above, which is what we care -about (whereas X.509 certificates are about authenticating bindings between -domain names and public keys.) +Lorsque vous utilisez HTTPS, le certificat X.509 du serveur n'est @emph{pas} +validé (en d'autre termes, le serveur n'est pas authentifié), contrairement +à ce que des clients HTTPS comme des navigateurs web font habituellement. +Cela est dû au fait que Guix authentifie les informations sur les substituts +eux-même, comme expliqué plus haut, ce dont on se soucie réellement (alors +que les certificats X.509 authentifie la relation entre nom de domaine et +clef publique). @node Paramètres de serveur mandataire @subsection Paramètres de serveur mandataire @vindex http_proxy -Substitutes are downloaded over HTTP or HTTPS. The @code{http_proxy} -environment variable can be set in the environment of @command{guix-daemon} -and is honored for downloads of substitutes. Note that the value of -@code{http_proxy} in the environment where @command{guix build}, -@command{guix package}, and other client commands are run has -@emph{absolutely no effect}. +Les substituts sont téléchargés par HTTP ou HTTPS. La variable +d'environnement @code{http_proxy} peut être initialisée dans l'environnement +de @command{guix-daemon} et est respectée pour le téléchargement des +substituts. Remarquez que la valeur de @code{http_proxy} dans +l'environnement où tournent @command{guix build}, @command{guix package} et +les autres clients n'a @emph{absolument aucun effet}. @node Échec de substitution @subsection Échec de substitution -Even when a substitute for a derivation is available, sometimes the -substitution attempt will fail. This can happen for a variety of reasons: -the substitute server might be offline, the substitute may recently have -been deleted, the connection might have been interrupted, etc. +Même lorsqu'un substitut pour une dérivation est disponible, la substitution +échoue parfois. Cela peut arriver pour plusieurs raisons : le serveur de +substitut peut être hors ligne, le substitut a récemment été supprimé du +serveur, la connexion peut avoir été interrompue, etc. -When substitutes are enabled and a substitute for a derivation is available, -but the substitution attempt fails, Guix will attempt to build the -derivation locally depending on whether or not @code{--fallback} was given -(@pxref{fallback-option,, common build option @code{--fallback}}). -Specifically, if @code{--fallback} was omitted, then no local build will be -performed, and the derivation is considered to have failed. However, if -@code{--fallback} was given, then Guix will attempt to build the derivation -locally, and the success or failure of the derivation depends on the success -or failure of the local build. Note that when substitutes are disabled or -no substitute is available for the derivation in question, a local build -will @emph{always} be performed, regardless of whether or not -@code{--fallback} was given. +Lorsque les substituts sont activés et qu'un substitut pour une dérivation +est disponible, mais que la tentative de substitution échoue, Guix essaiera +de construire la dérivation localement si @code{--fallback} a été passé en +argument (@pxref{fallback-option,, common build option @code{--fallback}}). +Plus spécifiquement, si cet option n'a pas été passée en argument, alors +aucune construction locale n'est effectuée et la dérivation est considérée +comme étant en échec. Cependant, si @code{--fallback} est passé en argument, +alors Guix essaiera de construire la dérivation localement et l'échec ou le +succès de la dérivation dépend de l'échec ou du succès de la construction +locale. Remarquez que lorsque les substituts sont désactivés ou qu'aucun +substitut n'est disponible pour la dérivation en question, une construction +locale sera @emph{toujours} effectuée, indépendamment du fait que l'argument +@code{--fallback} ait été ou non passé. -To get an idea of how many substitutes are available right now, you can try -running the @command{guix weather} command (@pxref{Invoquer guix weather}). -This command provides statistics on the substitutes provided by a server. +Pour se donner une idée du nombre de substituts disponibles maintenant, vous +pouvez essayer de lancer la commande @command{guix weather} (@pxref{Invoquer guix weather}). Cette command fournit des statistiques sur les substituts +fournis par un serveur. @node De la confiance en des binaires @subsection De la confiance en des binaires -@cindex trust, of pre-built binaries -Today, each individual's control over their own computing is at the mercy of -institutions, corporations, and groups with enough power and determination -to subvert the computing infrastructure and exploit its weaknesses. While -using @code{hydra.gnu.org} substitutes can be convenient, we encourage users -to also build on their own, or even run their own build farm, such that -@code{hydra.gnu.org} is less of an interesting target. One way to help is -by publishing the software you build using @command{guix publish} so that -others have one more choice of server to download substitutes from -(@pxref{Invoquer guix publish}). +@cindex confiance, en des binaires pré-construits +De nos jours, le contrôle individuel sur son utilisation propre de +l'informatique est à la merci d'institutions, de sociétés et de groupes avec +assez de pouvoir et de détermination pour contourner les infrastructures +informatiques et exploiter leurs faiblesses. Bien qu'utiliser les +substituts de @code{hydra.gnu.org} soit pratique, nous encourageons les +utilisateurs à construire aussi par eux-même, voir à faire tourner leur +propre ferme de construction, pour que @code{hydra.gnu.org} devienne une +cible moins intéressante. Une façon d'aider est de publier les logiciels +que vous construisez avec @command{guix publish} pour que les autres aient +plus de choix de serveurs où télécharger les substituts (@pxref{Invoquer guix publish}). -Guix has the foundations to maximize build reproducibility -(@pxref{Fonctionnalités}). In most cases, independent builds of a given package or -derivation should yield bit-identical results. Thus, through a diverse set -of independent package builds, we can strengthen the integrity of our -systems. The @command{guix challenge} command aims to help users assess -substitute servers, and to assist developers in finding out about -non-deterministic package builds (@pxref{Invoquer guix challenge}). -Similarly, the @option{--check} option of @command{guix build} allows users -to check whether previously-installed substitutes are genuine by rebuilding -them locally (@pxref{build-check, @command{guix build --check}}). +Guix possède les fondations pour maximiser la reproductibilité logicielle +(@pxref{Fonctionnalités}). Dans la plupart des cas, des constructions +indépendantes d'un paquet donnée ou d'une dérivation devrait donner des +résultats identiques au bit près. Ainsi, à travers un ensemble de +constructions de paquets indépendantes il est possible de renforcer +l'intégrité du système. La commande @command{guix challenge} a pour but +d'aider les utilisateurs à tester les serveurs de substituts et à aider les +développeurs à trouver les constructions de paquets non-déterministes +(@pxref{Invoquer guix challenge}). De même, l'option @option{--check} de +@command{guix build} permet aux utilisateurs de vérifier si les substituts +précédemment installés sont authentiques en les reconstruisant localement +(@pxref{build-check, @command{guix build --check}}). -In the future, we want Guix to have support to publish and retrieve binaries -to/from other users, in a peer-to-peer fashion. If you would like to -discuss this project, join us on @email{guix-devel@@gnu.org}. +Dans le futur, nous aimerions que Guix puisse publier et recevoir des +binaires d'autres utilisateurs, d'une manière pair-à-pair. Si vous voulez +discuter de ce projet, rejoignez-nous sur @email{guix-devel@@gnu.org}. @node Des paquets avec plusieurs résultats @section Des paquets avec plusieurs résultats -@cindex multiple-output packages -@cindex package outputs -@cindex outputs +@cindex paquets avec plusieurs résultats +@cindex sorties de paquets +@cindex sorties -Often, packages defined in Guix have a single @dfn{output}---i.e., the -source package leads to exactly one directory in the store. When running -@command{guix package -i glibc}, one installs the default output of the GNU -libc package; the default output is called @code{out}, but its name can be -omitted as shown in this command. In this particular case, the default -output of @code{glibc} contains all the C header files, shared libraries, -static libraries, Info documentation, and other supporting files. +Souvent, les paquets définis dans Guix ont une seule @dfn{sortie} — +c.-à-d.@: que le paquet source conduit à exactement un répertoire dans le +dépôt. Lorsque vous lancez @command{guix package -i glibc}, vous installez +la sortie par défaut du paquet GNU libc ; la sortie par défaut est appelée +@code{out} mais son nom peut être omis comme le montre cette commande. Dans +ce cas particuliers, la sortie par défaut de @code{glibc} contient tous les +fichiers d'en-tête C, les bibliothèques partagées, les bibliothèques +statiques, la documentation Info et les autres fichiers de support. -Sometimes it is more appropriate to separate the various types of files -produced from a single source package into separate outputs. For instance, -the GLib C library (used by GTK+ and related packages) installs more than -20 MiB of reference documentation as HTML pages. To save space for users -who do not need it, the documentation goes to a separate output, called -@code{doc}. To install the main GLib output, which contains everything but -the documentation, one would run: +Parfois il est plus approprié de séparer les divers types de fichiers +produits par un même paquet source en plusieurs sorties. Par exemple, la +bibliothèque C GLib (utilisée par GTK+ et des paquets associés) installe +plus de 20 Mo de documentation de référence dans des pages HTML. Pour +préserver l'espace disque des utilisateurs qui n'en ont pas besoin, la +documentation va dans une sortie séparée nommée @code{doc}. Pour installer +la sortie principale de GLib, qui contient tout sauf la documentation, on +devrait lancer : @example guix package -i glib @end example @cindex documentation -The command to install its documentation is: +La commande pour installer la documentation est : @example guix package -i glib:doc @end example -Some packages install programs with different ``dependency footprints''. -For instance, the WordNet package installs both command-line tools and -graphical user interfaces (GUIs). The former depend solely on the C -library, whereas the latter depend on Tcl/Tk and the underlying X -libraries. In this case, we leave the command-line tools in the default -output, whereas the GUIs are in a separate output. This allows users who do -not need the GUIs to save space. The @command{guix size} command can help -find out about such situations (@pxref{Invoquer guix size}). @command{guix -graph} can also be helpful (@pxref{Invoquer guix graph}). +Certains paquets installent des programmes avec des « empreintes dépendances +» différentes. Par exemple le paquet WordNet installe à la fois les outils +en ligne de commande et les interfaces graphiques (GUI). La première ne +dépend que de la bibliothèque C, alors que cette dernière dépend de Tcl/Tk +et des bibliothèques X sous-jacentes. Dans ce cas, nous laissons les outils +en ligne de commande dans la sortie par défaut et l'interface graphique dans +une sortie séparée. Cela permet aux utilisateurs qui n'ont pas besoin +d'interface graphique de gagner de la place. La commande @command{guix +size} peut aider à trouver ces situations (@pxref{Invoquer guix size}). @command{guix graph} peut aussi être utile (@pxref{Invoquer guix graph}). -There are several such multiple-output packages in the GNU distribution. -Other conventional output names include @code{lib} for libraries and -possibly header files, @code{bin} for stand-alone programs, and @code{debug} -for debugging information (@pxref{Installer les fichiers de débogage}). The outputs -of a packages are listed in the third column of the output of @command{guix -package --list-available} (@pxref{Invoquer guix package}). +Il y a plusieurs paquets à sorties multiples dans la distribution GNU. +D'autres noms de sorties conventionnels sont @code{lib} pour les +bibliothèques et éventuellement les fichiers d'en-tête, @code{bin} pour les +programmes indépendants et @code{debug} pour les informations de débogage +(@pxref{Installer les fichiers de débogage}). Les sorties d'un paquet sont listés +dans la troisième colonne de la sortie de @command{guix package +--list-available} (@pxref{Invoquer guix package}). @node Invoquer guix gc -@section Invoking @command{guix gc} +@section Invoquer @command{guix gc} -@cindex garbage collector -@cindex disk space -Packages that are installed, but not used, may be @dfn{garbage-collected}. -The @command{guix gc} command allows users to explicitly run the garbage -collector to reclaim space from the @file{/gnu/store} directory. It is the -@emph{only} way to remove files from @file{/gnu/store}---removing files or -directories manually may break it beyond repair! +@cindex ramasse-miettes +@cindex espace disque +Les paquets qui sont installés mais pas utilisés peuvent être @dfn{glanés}. +La commande @command{guix gc} permet aux utilisateurs de lancer +explicitement le ramasse-miettes pour récupérer de l'espace dans le +répertoire @file{/gnu/store}. C'est la @emph{seule} manière de supprimer +des fichiers de @file{/gnu/store} — supprimer des fichiers ou des +répertoires à la main peut le casser de manière impossible à réparer ! -@cindex GC roots -@cindex garbage collector roots -The garbage collector has a set of known @dfn{roots}: any file under -@file{/gnu/store} reachable from a root is considered @dfn{live} and cannot -be deleted; any other file is considered @dfn{dead} and may be deleted. The -set of garbage collector roots (``GC roots'' for short) includes default -user profiles; by default, the symlinks under @file{/var/guix/gcroots} -represent these GC roots. New GC roots can be added with @command{guix -build --root}, for example (@pxref{Invoquer guix build}). +@cindex racines du GC +@cindex racines du ramasse-miettes +Le ramasse-miettes a un ensemble de @dfn{racines} connues : tout fichier +dans @file{/gnu/store} atteignable depuis une racine est considéré comme +@dfn{utilisé} et ne peut pas être supprimé ; tous les autres fichiers sont +considérés comme @dfn{inutilisés} et peuvent être supprimés. L'ensemble des +racines du ramasse-miettes (ou « racines du GC » pour faire court) inclue +les profils par défaut des utilisateurs ; par défaut les liens symboliques +sous @file{/var/guix/gcroots} représentent ces racines du GC. De nouvelles +racines du GC peuvent être ajoutées avec la @command{guix build -- root} par +exemple (@pxref{Invoquer guix build}). -Prior to running @code{guix gc --collect-garbage} to make space, it is often -useful to remove old generations from user profiles; that way, old package -builds referenced by those generations can be reclaimed. This is achieved -by running @code{guix package --delete-generations} (@pxref{Invoquer guix package}). +Avant de lancer @code{guix gc --collect-garbage} pour faire de la place, +c'est souvent utile de supprimer les anciennes génération des profils +utilisateurs ; de cette façon les anciennes constructions de paquets +référencées par ces générations peuvent être glanées. Cela se fait en +lançaint @code{guix package --delete-generations} (@pxref{Invoquer guix package}). -Our recommendation is to run a garbage collection periodically, or when you -are short on disk space. For instance, to guarantee that at least 5@tie{}GB -are available on your disk, simply run: +Nous recommandons de lancer le ramasse-miettes régulièrement ou lorsque vous +avez besoin d'espace disque. Par exemple pour garantir qu'au moins +5@tie{}Go d'espace reste libre sur votre disque, lancez simplement : @example guix gc -F 5G @end example -It is perfectly safe to run as a non-interactive periodic job -(@pxref{Scheduled Job Execution}, for how to set up such a job on GuixSD). -Running @command{guix gc} with no arguments will collect as much garbage as -it can, but that is often inconvenient: you may find yourself having to -rebuild or re-download software that is ``dead'' from the GC viewpoint but -that is necessary to build other pieces of software---e.g., the compiler -tool chain. +Il est parfaitement possible de le lancer comme une tâche périodique +non-interactive (@pxref{Exécution de tâches planifiées} pour apprendre comment +paramétrer une telle tâche sur GuixSD). Lancer @command{guix gc} sans +argument ramassera autant de miettes que possible mais ça n'est pas le plus +pratique : vous pourriez vous retrouver à reconstruire ou re-télécharger des +logiciels « inutilisés » du point de vu du GC mais qui sont nécessaires pour +construire d'autres logiciels — p.@: ex.@: la chaîne de compilation. -The @command{guix gc} command has three modes of operation: it can be used -to garbage-collect any dead files (the default), to delete specific files -(the @code{--delete} option), to print garbage-collector information, or for -more advanced queries. The garbage collection options are as follows: +La command @command{guix gc} a trois modes d'opération : il peut être +utilisé pour glaner des fichiers inutilisés (par défaut), pour supprimer des +fichiers spécifiques (l'option @code{--delete}), pour afficher des +informations sur le ramasse-miettes ou pour des requêtes plus avancées. Les +options du ramasse-miettes sont : @table @code @item --collect-garbage[=@var{min}] @itemx -C [@var{min}] -Collect garbage---i.e., unreachable @file{/gnu/store} files and -sub-directories. This is the default operation when no option is specified. +Ramasse les miettes — c.-à-d.@: les fichiers inaccessibles de +@file{/gnu/store} et ses sous-répertoires. C'est l'opération par défaut +lorsqu'aucune option n'est spécifiée. -When @var{min} is given, stop once @var{min} bytes have been collected. -@var{min} may be a number of bytes, or it may include a unit as a suffix, -such as @code{MiB} for mebibytes and @code{GB} for gigabytes (@pxref{Block -size, size specifications,, coreutils, GNU Coreutils}). +Lorsque @var{min} est donné, s'arrêter une fois que @var{min} octets ont été +collectés. @var{min} pour être un nombre d'octets ou inclure un suffixe +d'unité, comme @code{MiB} pour mébioctet et @code{GB} pour gigaoctet +(@pxref{Block size, size specifications,, coreutils, GNU Coreutils}). -When @var{min} is omitted, collect all the garbage. +Lorsque @var{min} est omis, tout glaner. -@item --free-space=@var{free} -@itemx -F @var{free} -Collect garbage until @var{free} space is available under @file{/gnu/store}, -if possible; @var{free} denotes storage space, such as @code{500MiB}, as -described above. +@item --free-space=@var{libre} +@itemx -F @var{libre} +Glaner jusqu'à ce que @var{libre} espace soit disponible dans +@file{/gnu/store} si possible ; @var{libre} est une quantité de stockage +comme @code{500MiB} comme décrit ci-dessus. -When @var{free} or more is already available in @file{/gnu/store}, do -nothing and exit immediately. +Lorsque @var{libre} ou plus est disponible dans @file{/gnu/store} ne rien +faire et s'arrêter immédiatement. @item --delete @itemx -d -Attempt to delete all the store files and directories specified as -arguments. This fails if some of the files are not in the store, or if they -are still live. +Essayer de supprimer tous les fichiers et les répertoires du dépôt spécifiés +en argument. Cela échoue si certains des fichiers ne sont pas dans le dépôt +ou s'ils sont toujours utilisés. @item --list-failures -List store items corresponding to cached build failures. +Lister les éléments du dépôt qui correspondent à des échecs de construction -This prints nothing unless the daemon was started with +Cela n'affiche rien à moins que le démon n'ait été démarré avec @option{--cache-failures} (@pxref{Invoquer guix-daemon, @option{--cache-failures}}). @item --clear-failures -Remove the specified store items from the failed-build cache. +Supprimer les éléments du dépôt spécifiés du cache des constructions +échouées. -Again, this option only makes sense when the daemon is started with -@option{--cache-failures}. Otherwise, it does nothing. +De nouveau, cette option ne fait de sens que lorsque le démon est démarré +avec @option{--cache-failures}. Autrement elle ne fait rien. @item --list-dead -Show the list of dead files and directories still present in the -store---i.e., files and directories no longer reachable from any root. +Montrer la liste des fichiers et des répertoires inutilisés encore présents +dans le dépôt — c.-à-d.@: les fichiers et les répertoires qui ne sont plus +atteignables par aucune racine. @item --list-live -Show the list of live store files and directories. +Montrer la liste des fichiers et des répertoires du dépôt utilisés. @end table -In addition, the references among existing store files can be queried: +En plus, les références entre les fichiers existants du dépôt peuvent être +demandés : @table @code @item --references @itemx --referrers -@cindex package dependencies -List the references (respectively, the referrers) of store files given as -arguments. +@cindex dépendances des paquets +Lister les références (respectivement les référents) des fichiers du dépôt +en argument. @item --requisites @itemx -R @cindex closure -List the requisites of the store files passed as arguments. Requisites -include the store files themselves, their references, and the references of -these, recursively. In other words, the returned list is the -@dfn{transitive closure} of the store files. +Lister les prérequis des fichiers du dépôt passés en argument. Les +prérequis sont le fichier du dépôt lui-même, leur références et les +références de ces références, récursivement. En d'autre termes, la liste +retournée est la @dfn{closure transitive} des fichiers du dépôt. -@xref{Invoquer guix size}, for a tool to profile the size of the closure of -an element. @xref{Invoquer guix graph}, for a tool to visualize the graph -of references. +@xref{Invoquer guix size} pour un outil pour surveiller la taille de la +closure d'un élément. @xref{Invoquer guix graph} pour un outil pour +visualiser le graphe des références. @item --derivers -@cindex derivation -Return the derivation(s) leading to the given store items +@cindex dérivation +Renvoie les dérivations menant aux éléments du dépôt donnés (@pxref{Dérivations}). -For example, this command: +Par exemple cette commande : @example guix gc --derivers `guix package -I ^emacs$ | cut -f4` @end example @noindent -returns the @file{.drv} file(s) leading to the @code{emacs} package -installed in your profile. +renvoie les fichiers @file{.drv} menant au paquet @code{emacs} installé dans +votre profil. -Note that there may be zero matching @file{.drv} files, for instance because -these files have been garbage-collected. There can also be more than one -matching @file{.drv} due to fixed-output derivations. +Remarquez qu'il peut n'y avoir aucun fichier @file{.drv} par exemple quand +ces fichiers ont été glanés. Il peut aussi y avoir plus d'un fichier +@file{.drv} correspondant à cause de dérivations à sortie fixées. @end table -Lastly, the following options allow you to check the integrity of the store -and to control disk usage. +Enfin, les options suivantes vous permettent de vérifier l'intégrité du +dépôt et de contrôler l'utilisation du disque. @table @option @item --verify[=@var{options}] -@cindex integrity, of the store -@cindex integrity checking -Verify the integrity of the store. +@cindex intégrité, du dépôt +@cindex vérification d'intégrité +Vérifier l'intégrité du dépôt. -By default, make sure that all the store items marked as valid in the -database of the daemon actually exist in @file{/gnu/store}. +Par défaut, s'assurer que tous les éléments du dépôt marqués comme valides +dans la base de données du démon existent bien dans @file{/gnu/store}. -When provided, @var{options} must be a comma-separated list containing one -or more of @code{contents} and @code{repair}. +Lorsqu'elle est fournie, l'@var{option} doit être une liste séparée par des +virgule de l'un ou plus parmi @code{contents} et @code{repair}. -When passing @option{--verify=contents}, the daemon computes the content -hash of each store item and compares it against its hash in the database. -Hash mismatches are reported as data corruptions. Because it traverses -@emph{all the files in the store}, this command can take a long time, -especially on systems with a slow disk drive. +Lorsque vous passez @option{--verify=contents}, le démon calcul le hash du +contenu de chaque élément du dépôt et le compare au hash de sa base de +données. Les différences de hash sont rapportées comme des corruptions de +données. Comme elle traverse @emph{tous les fichiers du dépôt}, cette +commande peut prendre très longtemps pour terminer, surtout sur un système +avec un disque lent. -@cindex repairing the store -@cindex corruption, recovering from +@cindex réparer le dépôt +@cindex corruption, récupérer de Utiliser @option{--verify=repair} ou @option{--verify=contents,repair} fait que le démon essaie de réparer les objets du dépôt corrompus en récupérant -leurs substituts (@pxref{Substituts}). Comme la réparation n'est pas +leurs substituts (@pxref{Substituts}). Comme la réparation n'est pas atomique et donc potentiellement dangereuse, elle n'est disponible que pour -l'administrateur système. Une alternative plus légère lorsque vous +l'administrateur système. Une alternative plus légère lorsque vous connaissez exactement quelle entrée est corrompue consiste à lancer @command{guix build --repair} (@pxref{Invoquer guix build}). @item --optimize -@cindex deduplication -Optimize the store by hard-linking identical files---this is -@dfn{deduplication}. +@cindex déduplication +Optimiser le dépôt en liant en dur les fichiers identiques — c'est la +@dfn{déduplication}. -The daemon performs deduplication after each successful build or archive -import, unless it was started with @code{--disable-deduplication} -(@pxref{Invoquer guix-daemon, @code{--disable-deduplication}}). Thus, this -option is primarily useful when the daemon was running with -@code{--disable-deduplication}. +Le démon effectue une déduplication à chaque construction réussie ou import +d'archive à moins qu'il n'ait été démarré avec +@code{--disable-deduplication} (@pxref{Invoquer guix-daemon, +@code{--disable-deduplication}}). Ainsi, cette option est surtout utile +lorsque le démon tourne avec @code{--disable-deduplication}. @end table @node Invoquer guix pull -@section Invoking @command{guix pull} +@section Invoquer @command{guix pull} -@cindex upgrading Guix -@cindex updating Guix +@cindex mettre à niveau Guix +@cindex mettre à jour Guix @cindex @command{guix pull} @cindex pull -Packages are installed or upgraded to the latest version available in the -distribution currently available on your local machine. To update that -distribution, along with the Guix tools, you must run @command{guix pull}: -the command downloads the latest Guix source code and package descriptions, -and deploys it. Source code is downloaded from a @uref{https://git-scm.com, -Git} repository. +Les paquets sont installés ou mis à jour vers la dernière version disponible +dans la distribution actuellement disponible sur votre machine locale. Pour +mettre à jour cette distribution, en même temps que les outils Guix, vous +devez lancer @command{guix pull} ; la commande télécharge le dernier code +source de Guix et des descriptions de paquets et le déploie. Le code source +est téléchargé depuis un dépôt @uref{https://git-scm.com, Git}. -On completion, @command{guix package} will use packages and package versions -from this just-retrieved copy of Guix. Not only that, but all the Guix -commands and Scheme modules will also be taken from that latest version. -New @command{guix} sub-commands added by the update also become available. +À la fin, @command{guix package} utilisera les paquets et les versions des +paquets de la copie de Guix tout juste récupérée. Non seulement ça, mais +toutes les commandes Guix et les modules Scheme seront aussi récupérés +depuis la dernière version. Les nouvelles sous-commandes de @command{guix} +ajoutés par la mise à jour sont aussi maintenant disponibles. -Any user can update their Guix copy using @command{guix pull}, and the -effect is limited to the user who run @command{guix pull}. For instance, -when user @code{root} runs @command{guix pull}, this has no effect on the -version of Guix that user @code{alice} sees, and vice versa@footnote{Under -the hood, @command{guix pull} updates the @file{~/.config/guix/latest} -symbolic link to point to the latest Guix, and the @command{guix} command -loads code from there. Currently, the only way to roll back an invocation -of @command{guix pull} is to manually update this symlink to point to the -previous Guix.}. +Chaque utilisateur peut mettre à jour sa copie de Guix avec @command{guix +pull} et l'effet est limité à l'utilisateur qui a lancé @command{guix +pull}. Par exemple, lorsque l'utilisateur @code{root} lance @command{guix +pull}, cela n'a pas d'effet sur la version de Guix que vois @code{alice} et +vice-versa -The @command{guix pull} command is usually invoked with no arguments, but it -supports the following options: +Le résultat après avoir lancé @command{guix pull} est un @dfn{profil} +disponible sous @file{~/.config/guix/current} contenant la dernière version +de Guix. Ainsi, assurez-vous de l'ajouter au début de votre chemin de +recherche pour que vous utilisiez la dernière version. Le même conseil +s'applique au manuel Info (@pxref{Documentation}) : + +@example +export PATH="$HOME/.config/guix/current/bin:$PATH" +export INFOPATH="$HOME/.config/guix/current/share/info:$INFOPATH" +@end example + +L'option @code{--list-generations} ou @code{-l} liste les anciennes +générations produites par @command{guix pull}, avec des détails sur leur +origine : + +@example +$ guix pull -l +Génération 1 10 juin 2018 00:18:18 + guix 65956ad + URL du dépôt : https://git.savannah.gnu.org/git/guix.git + branche : origin/master + commit : 65956ad3526ba09e1f7a40722c96c6ef7c0936fe + +Génération 2 11 juin 2018 11:02:49 + guix e0cc7f6 + URL du dépôt : https://git.savannah.gnu.org/git/guix.git + branche : origin/master + commit : e0cc7f669bec22c37481dd03a7941c7d11a64f1d + +Génération 3 13 juin 2018 23:31:07 (actuelle) + guix 844cc1c + URL du dépôt : https://git.savannah.gnu.org/git/guix.git + branche : origin/master + commit : 844cc1c8f394f03b404c5bb3aee086922373490c +@end example + +Ce profil @code{~/.config/guix/current} fonctionne comme les autres profils +créés par @command{guix package} (@pxref{Invoquer guix package}). +C'est-à-dire que vous pouvez lister les générations, revenir en arrière à +une génération précédente — c.-à-d.@: la version de Guix précédente — etc : + +@example +$ guix package -p ~/.config/guix/current --roll-back +passé de la génération 3 à 2 +$ guix package -p ~/.config/guix/current --delete-generations=1 +suppression de /home/charlie/.config/guix/current-1-link +@end example + +La commande @command{guix pull} est typiquement invoquée sans arguments mais +il supporte les options suivantes : @table @code @item --verbose -Produce verbose output, writing build logs to the standard error output. +Produire une sortie verbeuse, en écrivant les journaux de construction sur +la sortie d'erreur standard. @item --url=@var{url} -Download Guix from the Git repository at @var{url}. +Télécharger Guix depuis le dépôt Git à @var{url}. @vindex GUIX_PULL_URL -By default, the source is taken from its canonical Git repository at -@code{gnu.org}, for the stable branch of Guix. To use a different source, -set the @code{GUIX_PULL_URL} environment variable. +Par défaut, la source est récupérée depuis le dépôt Git canonique sur +@code{gnu.org}, pour la branche stable de Guix. Pour utiliser une autre +source, paramétrez la variable d'environnement @code{GUIX_PULL_URL}. @item --commit=@var{commit} -Deploy @var{commit}, a valid Git commit ID represented as a hexadecimal -string. +Déployer de @var{commit}, un ID de commit Git valide représenté par une +chaîne hexadécimale. -@item --branch=@var{branch} -Deploy the tip of @var{branch}, the name of a Git branch available on the -repository at @var{url}. +@item --branch=@var{branche} +Déployer le haut de la @var{branche}, le nom d'une branche Git disponible +sur le répertoire à @var{url}. + +@item --list-generations[=@var{motif}] +@itemx -l [@var{motif}] +Liste toutes les générations de @file{~/.config/guix/current} ou, si +@var{motif} est fournit, le sous-ensemble des générations qui correspondent +à @var{motif}. La syntaxe de @var{motif} est la même qu'avec @code{guix +package --list-generations} (@pxref{Invoquer guix package}). @item --bootstrap -Use the bootstrap Guile to build the latest Guix. This option is only -useful to Guix developers. +Utiliser le programme d'amorçage Guile pour construire la dernière version +de Guix. Cette option n'est utile que pour les développeurs de Guix. @end table -In addition, @command{guix pull} supports all the common build options -(@pxref{Options de construction communes}). +En plus, @command{guix pull} supporte toutes les options de construction +communes (@pxref{Options de construction communes}). @node Invoquer guix pack -@section Invoking @command{guix pack} +@section Invoquer @command{guix pack} -Occasionally you want to pass software to people who are not (yet!) lucky -enough to be using Guix. You'd tell them to run @command{guix package -i -@var{something}}, but that's not possible in this case. This is where -@command{guix pack} comes in. +Parfois vous voulez passer un logiciel à des gens qui n'ont pas (encore !) +la chance d'utiliser Guix. Vous leur diriez bien de lancer @command{guix +package -i @var{quelque chose}} mais ce n'est pas possible dans ce cas. +C'est là que @command{guix pack} entre en jeu. -@quotation Note -If you are looking for ways to exchange binaries among machines that already -run Guix, @pxref{Invoquer guix copy}, @ref{Invoquer guix publish}, and -@ref{Invoquer guix archive}. +@quotation Remarque +Si vous cherchez comment échanger des binaires entre des machines où Guix +est déjà installé, @pxref{Invoquer guix copy}, @ref{Invoquer guix publish}, +et @ref{Invoquer guix archive}. @end quotation @cindex pack -@cindex bundle -@cindex application bundle -@cindex software bundle -The @command{guix pack} command creates a shrink-wrapped @dfn{pack} or -@dfn{software bundle}: it creates a tarball or some other archive containing -the binaries of the software you're interested in, and all its -dependencies. The resulting archive can be used on any machine that does -not have Guix, and people can run the exact same binaries as those you have -with Guix. The pack itself is created in a bit-reproducible fashion, so -anyone can verify that it really contains the build results that you pretend -to be shipping. +@cindex lot +@cindex lot d'applications +@cindex lot de logiciels +La commande @command{guix pack} crée un @dfn{pack} ou @dfn{lot de logiciels} +: elle crée une archive tar ou un autre type d'archive contenunt les +binaires pour le logiciel qui vous intéresse ainsi que ses dépendances. +L'archive qui en résulte peut être utilisée sur toutes les machines qui +n'ont pas Guix et les gens peuvent lancer exactement les mêmes binaires que +ceux que vous avez avec Guix. Le pack lui-même est créé d'une manière +reproductible au bit près, pour que n'importe qui puisse vérifier qu'il +contient bien les résultats que vous prétendez proposer. -For example, to create a bundle containing Guile, Emacs, Geiser, and all -their dependencies, you can run: +Par exemple, pour créer un lot contenant Guile, Emacs, Geiser et toutes +leurs dépendances, vous pouvez lancer : @example $ guix pack guile emacs geiser @@ -2831,270 +3007,345 @@ $ guix pack guile emacs geiser /gnu/store/@dots{}-pack.tar.gz @end example -The result here is a tarball containing a @file{/gnu/store} directory with -all the relevant packages. The resulting tarball contains a @dfn{profile} -with the three packages of interest; the profile is the same as would be -created by @command{guix package -i}. It is this mechanism that is used to -create Guix's own standalone binary tarball (@pxref{Installation binaire}). +Le résultat ici est une archive tar contenant un répertoire +@file{/gnu/store} avec tous les paquets nécessaires. L'archive qui en +résulte contient un @dfn{profil} avec les trois paquets qui vous intéressent +; le profil est le même qui celui qui aurait été créé avec @command{guix +package -i}. C'est ce mécanisme qui est utilisé pour créer les archives tar +binaires indépendantes de Guix (@pxref{Installation binaire}). -Users of this pack would have to run -@file{/gnu/store/@dots{}-profile/bin/guile} to run Guile, which you may find -inconvenient. To work around it, you can create, say, a @file{/opt/gnu/bin} -symlink to the profile: +Les utilisateurs de ce pack devraient lancer +@file{/gnu/store/@dots{}-profile/bin/guile} pour lancer Guile, ce qui n'est +pas très pratique. Pour éviter cela, vous pouvez créer, disons, un lien +symbolique @file{/opt/gnu/bin} vers le profil : @example guix pack -S /opt/gnu/bin=bin guile emacs geiser @end example @noindent -That way, users can happily type @file{/opt/gnu/bin/guile} and enjoy. +De cette façon, les utilisateurs peuvent joyeusement taper +@file{/opt/gnu/bin/guile} et profiter. -Alternatively, you can produce a pack in the Docker image format using the -following command: +@cindex binaires repositionnables, avec @command{guix pack} +Et si le destinataire de votre pack n'a pas les privilèges root sur sa +machine, et ne peut donc pas le décompresser dans le système de fichiers +racine ? Dans ce cas, vous pourriez utiliser l'option @code{--relocatable} +(voir plus bas). Cette option produite des @dfn{binaire repositionnables}, +ce qui signifie qu'ils peuvent être placés n'importe où dans l'arborescence +du système de fichiers : dans l'exemple au-dessus, les utilisateurs peuvent +décompresser votre archive dans leur répertoire personnel et lancer +directement @file{./opt/gnu/bin/guile}. + +@cindex Docker, construire une image avec guix pack +Autrement, vous pouvez produire un pack au format d'image Docker avec la +commande suivante : @example guix pack -f docker guile emacs geiser @end example @noindent -The result is a tarball that can be passed to the @command{docker load} -command. See the -@uref{https://docs.docker.com/engine/reference/commandline/load/, Docker -documentation} for more information. +Le résultat est une archive tar qui peut être passée à la commande +@command{docker load}. Voir la +@uref{https://docs.docker.com/engine/reference/commandline/load/, +documentation de Docker} pour plus d'informations. -Several command-line options allow you to customize your pack: +@cindex Singularity, construire une image avec guix pack +@cindex SquashFS, construire une image avec guix pack +Autrement, vous pouvez produire une image SquashFS avec la commande suivante +: + +@example +guix pack -f squashfs guile emacs geiser +@end example + +@noindent +Le résultat est une image de système de fichiers SquashFS qui peut soit être +montée directement soit être utilisée comme image de conteneur de système de +fichiers avec l'@uref{http://singularity.lbl.gov, environnement d'exécution +conteneurisé Singularity}, avec des commandes comme @command{singularity +shell} ou @command{singularity exec}. + +Diverses options en ligne de commande vous permettent de personnaliser votre +pack : @table @code @item --format=@var{format} @itemx -f @var{format} -Produce a pack in the given @var{format}. +Produire un pack dans le @var{format} donné. -The available formats are: +Les formats disponibles sont : @table @code @item tarball -This is the default format. It produces a tarball containing all the -specified binaries and symlinks. +C'est le format par défaut. Il produit une archive tar contenant tous les +binaires et les liens symboliques spécifiés. @item docker -This produces a tarball that follows the +Cela produit une archive tar qui suit la @uref{https://github.com/docker/docker/blob/master/image/spec/v1.2.md, -Docker Image Specification}. +spécification des images Docker}. + +@item squashfs +Cela produit une image SquashFS contenant tous les binaires et liens +symboliques spécifiés, ainsi que des points de montages vides pour les +systèmes de fichiers virtuels comme procfs. @end table +@item --relocatable +@itemx -R +Produit des @dfn{binaires repositionnables} — c.-à-d.@: des binaires que +vous pouvez placer n'importe où dans l'arborescence du système de fichiers +et les lancer à partir de là. Par exemple, si vous créez un pack contenant +Bash avec : + +@example +guix pack -R -S /mybin=bin bash +@end example + +@noindent +… vous pouvez copier ce pack sur une machine qui n'a pas Guix et depuis +votre répertoire personnel en tant qu'utilisateur non-privilégié, lancer : + +@example +tar xf pack.tar.gz +./mybin/sh +@end example + +@noindent +Dans ce shell, si vous tapez @code{ls /gnu/store}, vous remarquerez que +@file{/gnu/store} apparaît et contient toutes les dépendances de +@code{bash}, même si la machine n'a pas du tout de @file{/gnu/store} ! +C'est sans doute la manière la plus simple de déployer du logiciel construit +avec Guix sur une machine sans Guix. + +Il y a un inconvénient cependant : cette technique repose sur les +@dfn{espaces de noms} du noyau Linux qui permettent à des utilisateurs +non-privilégiés de monter des systèmes de fichiers ou de changer de racine. +Les anciennes versions de Linux ne le supportaient pas et certaines +distributions GNU/Linux les désactivent ; sur ces système, les programme du +pack @emph{ne fonctionneront pas} à moins qu'ils ne soient décompressés à la +racine du système de fichiers. + @item --expression=@var{expr} @itemx -e @var{expr} -Consider the package @var{expr} evaluates to. +Considérer le paquet évalué par @var{expr}. -This has the same purpose as the same-named option in @command{guix build} -(@pxref{Options de construction supplémentaires, @code{--expression} in @command{guix +Cela a le même but que l'option de même nom de @command{guix build} +(@pxref{Options de construction supplémentaires, @code{--expression} dans @command{guix build}}). -@item --manifest=@var{file} -@itemx -m @var{file} -Use the packages contained in the manifest object returned by the Scheme -code in @var{file}. +@item --manifest=@var{fichier} +@itemx -m @var{fichier} +Utiliser les paquets contenus dans l'objet manifeste renvoyé par le code +Scheme dans @var{fichier} -This has a similar purpose as the same-named option in @command{guix -package} (@pxref{profile-manifest, @option{--manifest}}) and uses the same -manifest files. It allows you to define a collection of packages once and -use it both for creating profiles and for creating archives for use on -machines that do not have Guix installed. Note that you can specify -@emph{either} a manifest file @emph{or} a list of packages, but not both. +Elle a un but similaire à l'option de même nom dans @command{guix package} +(@pxref{profile-manifest, @option{--manifest}}) et utilise les mêmes +fichiers manifeste. Ils vous permettent de définir une collection de +paquets une fois et de l'utiliser aussi bien pour créer des profils que pour +créer des archives pour des machines qui n'ont pas Guix d'installé. +Remarquez que vous pouvez spécifier @emph{soit} un fichier manifeste, +@emph{soit} une liste de paquet, mais pas les deux. -@item --system=@var{system} -@itemx -s @var{system} -Attempt to build for @var{system}---e.g., @code{i686-linux}---instead of the -system type of the build host. +@item --system=@var{système} +@itemx -s @var{système} +Tenter de construire pour le @var{système} — p.@: ex.@: @code{i686-linux} — +plutôt que pour le type de système de l'hôte de construction. @item --target=@var{triplet} -@cindex cross-compilation -Cross-build for @var{triplet}, which must be a valid GNU triplet, such as -@code{"mips64el-linux-gnu"} (@pxref{Specifying target triplets, GNU -configuration triplets,, autoconf, Autoconf}). +@cindex compilation croisée +Effectuer une compilation croisée pour @var{triplet} qui doit être un +triplet GNU valide, comme @code{"mips64el-linux-gnu"} (@pxref{Specifying +target triplets, GNU configuration triplets,, autoconf, Autoconf}). -@item --compression=@var{tool} -@itemx -C @var{tool} -Compress the resulting tarball using @var{tool}---one of @code{gzip}, -@code{bzip2}, @code{xz}, @code{lzip}, or @code{none} for no compression. +@item --compression=@var{outil} +@itemx -C @var{outil} +Compresser l'archive résultante avec @var{outil} — l'un des outils parmi +@code{bzip2}, @code{xz}, @code{lzip} ou @code{none} pour aucune compression. @item --symlink=@var{spec} @itemx -S @var{spec} -Add the symlinks specified by @var{spec} to the pack. This option can -appear several times. +Ajouter les liens symboliques spécifiés par @var{spec} dans le pack. Cette +option peut apparaître plusieurs fois. -@var{spec} has the form @code{@var{source}=@var{target}}, where @var{source} -is the symlink that will be created and @var{target} is the symlink target. +@var{spec} a la forme @code{@var{source}=@var{cible}}, où @var{source} est +le lien symbolique qui sera créé et @var{cible} est la cible du lien. -For instance, @code{-S /opt/gnu/bin=bin} creates a @file{/opt/gnu/bin} -symlink pointing to the @file{bin} sub-directory of the profile. +Par exemple, @code{-S /opt/gnu/bin=bin} crée un lien symbolique +@file{/opt/gnu/bin} qui pointe vers le sous-répertoire @file{bin} du profil. @item --localstatedir -Include the ``local state directory'', @file{/var/guix}, in the resulting -pack. +Inclure le « répertoire d'état local », @file{/var/guix} dans le paquet +résultant. -@file{/var/guix} contains the store database (@pxref{Le dépôt}) as well as -garbage-collector roots (@pxref{Invoquer guix gc}). Providing it in the -pack means that the store is ``complete'' and manageable by Guix; not -providing it pack means that the store is ``dead'': items cannot be added to -it or removed from it after extraction of the pack. +@file{/var/guix} contient la base de données du dépôt (@pxref{Le dépôt}) +ainsi que les racines du ramasse-miettes (@pxref{Invoquer guix gc}). Le +fournir dans le pack signifie que le dépôt et « complet » et gérable par +Guix ; ne pas le fournir dans le pack signifie que le dépôt est « mort » : +aucun élément ne peut être ajouté ni enlevé après l'extraction du pack. -One use case for this is the Guix self-contained binary tarball +Un cas d'utilisation est l'archive binaire indépendante de Guix (@pxref{Installation binaire}). @item --bootstrap -Use the bootstrap binaries to build the pack. This option is only useful to -Guix developers. +Utiliser les programmes d'amorçage pour construire le pack. Cette option +n'est utile que pour les développeurs de Guix. @end table -In addition, @command{guix pack} supports all the common build options -(@pxref{Options de construction communes}) and all the package transformation options -(@pxref{Options de transformation de paquets}). +En plus, @command{guix pack} supporte toutes les options de construction +communes (@pxref{Options de construction communes}) et toutes les options de +transformation de paquets (@pxref{Options de transformation de paquets}). @node Invoquer guix archive -@section Invoking @command{guix archive} +@section Invoquer @command{guix archive} @cindex @command{guix archive} @cindex archive -The @command{guix archive} command allows users to @dfn{export} files from -the store into a single archive, and to later @dfn{import} them on a machine -that runs Guix. In particular, it allows store files to be transferred from -one machine to the store on another machine. +La commande @command{guix archive} permet aux utilisateurs d'@dfn{exporter} +des fichiers du dépôt dans une simple archive puis ensuite de les +@dfn{importer} sur une machine qui fait tourner Guix. En particulier, elle +permet de transférer des fichiers du dépôt d'une machine vers le dépôt d'une +autre machine. -@quotation Note -If you're looking for a way to produce archives in a format suitable for -tools other than Guix, @pxref{Invoquer guix pack}. +@quotation Remarque +Si vous chercher une manière de produire des archives dans un format adapté +pour des outils autres que Guix, @pxref{Invoquer guix pack}. @end quotation -@cindex exporting store items -To export store files as an archive to standard output, run: +@cindex exporter des éléments du dépôt +Pour exporter des fichiers du dépôt comme une archive sur la sortie +standard, lancez : @example -guix archive --export @var{options} @var{specifications}... +guix archive --export @var{options} @var{spécifications}... @end example -@var{specifications} may be either store file names or package -specifications, as for @command{guix package} (@pxref{Invoquer guix package}). For instance, the following command creates an archive -containing the @code{gui} output of the @code{git} package and the main -output of @code{emacs}: +@var{spécifications} peut être soit des noms de fichiers soit des +spécifications de paquets, comme pour @command{guix package} +(@pxref{Invoquer guix package}). Par exemple, la commande suivante crée une +archive contenant la sortie @code{gui} du paquet @code{git} et la sortie +principale de @code{emacs} : @example guix archive --export git:gui /gnu/store/...-emacs-24.3 > great.nar @end example -If the specified packages are not built yet, @command{guix archive} -automatically builds them. The build process may be controlled with the -common build options (@pxref{Options de construction communes}). +Si les paquets spécifiés ne sont pas déjà construits, @command{guix archive} +les construit automatiquement. Le processus de construction peut être +contrôlé avec les options de construction communes (@pxref{Options de construction communes}). -To transfer the @code{emacs} package to a machine connected over SSH, one -would run: +Pour transférer le paquet @code{emacs} vers une machine connectée en SSH, on +pourrait lancer : @example -guix archive --export -r emacs | ssh the-machine guix archive --import +guix archive --export -r emacs | ssh la-machine guix archive --import @end example @noindent -Similarly, a complete user profile may be transferred from one machine to -another like this: +De même, on peut transférer un profil utilisateur complet d'une machine à +une autre comme cela : @example guix archive --export -r $(readlink -f ~/.guix-profile) | \ - ssh the-machine guix-archive --import + ssh la-machine guix-archive --import @end example @noindent -However, note that, in both examples, all of @code{emacs} and the profile as -well as all of their dependencies are transferred (due to @code{-r}), -regardless of what is already available in the store on the target machine. -The @code{--missing} option can help figure out which items are missing from -the target store. The @command{guix copy} command simplifies and optimizes -this whole process, so this is probably what you should use in this case -(@pxref{Invoquer guix copy}). +Cependant, remarquez que, dans les deux exemples, le paquet @code{emacs}, le +profil ainsi que toutes leurs dépendances sont transférées (à cause de +@code{-r}), indépendamment du fait qu'ils soient disponibles dans le dépôt +de la machine cible. L'option @code{--missing} peut vous aider à comprendre +les éléments qui manquent dans le dépôt de la machine cible. La commande +@command{guix copy} simplifie et optimise ce processus, c'est donc ce que +vous devriez utiliser dans ce cas (@pxref{Invoquer guix copy}). -@cindex nar, archive format -@cindex normalized archive (nar) -Archives are stored in the ``normalized archive'' or ``nar'' format, which -is comparable in spirit to `tar', but with differences that make it more -appropriate for our purposes. First, rather than recording all Unix -metadata for each file, the nar format only mentions the file type (regular, -directory, or symbolic link); Unix permissions and owner/group are -dismissed. Second, the order in which directory entries are stored always -follows the order of file names according to the C locale collation order. -This makes archive production fully deterministic. +@cindex nar, format d'archive +@cindex archive normalisée (nar) +Les archives sont stockées au format « archive normalisé » ou « nar », qui +est comparable dans l'esprit à « tar » mais avec des différences qui le +rendent utilisable pour ce qu'on veut faire. Tout d'abord, au lieu de +stocker toutes les métadonnées Unix de chaque fichier, le format nar ne +mentionne que le type de fichier (normal, répertoire ou lien symbolique) ; +les permissions Unix, le groupe et l'utilisateur ne sont pas mentionnés. +Ensuite, l'ordre dans lequel les entrées de répertoires sont stockés suit +toujours l'ordre des noms de fichier dans l'environnement linguistique C. +Cela rend la production des archives entièrement déterministe. @c FIXME: Add xref to daemon doc about signatures. -When exporting, the daemon digitally signs the contents of the archive, and -that digital signature is appended. When importing, the daemon verifies the -signature and rejects the import in case of an invalid signature or if the -signing key is not authorized. +Lors de l'export, le démon signe numériquement le contenu de l'archive et +cette signature est ajoutée à la fin du fichier. Lors de l'import, le démon +vérifie la signature et rejette l'import en cas de signature invalide ou si +la clef de signature n'est pas autorisée. -The main options are: +Les principales options sont : @table @code @item --export -Export the specified store files or packages (see below.) Write the -resulting archive to the standard output. +Exporter les fichiers ou les paquets du dépôt (voir plus bas). Écrire +l'archive résultante sur la sortie standard. -Dependencies are @emph{not} included in the output, unless -@code{--recursive} is passed. +Les dépendances ne sont @emph{pas} incluses dans la sortie à moins que +@code{--recursive} ne soit passé. @item -r @itemx --recursive -When combined with @code{--export}, this instructs @command{guix archive} to -include dependencies of the given items in the archive. Thus, the resulting -archive is self-contained: it contains the closure of the exported store -items. +En combinaison avec @code{--export}, cette option demande à @command{guix +archive} d'inclure les dépendances des éléments donnés dans l'archive. +Ainsi, l'archive résultante est autonome : elle contient la closure des +éléments du dépôt exportés. @item --import -Read an archive from the standard input, and import the files listed therein -into the store. Abort if the archive has an invalid digital signature, or -if it is signed by a public key not among the authorized keys (see -@code{--authorize} below.) +Lire une archive depuis l'entrée standard et importer les fichiers inclus +dans le dépôt. Annuler si l'archive a une signature invalide ou si elle est +signée par une clef publique qui ne se trouve pas dans le clefs autorisées +(voir @code{--authorize} plus bas.) @item --missing -Read a list of store file names from the standard input, one per line, and -write on the standard output the subset of these files missing from the -store. +Liste une liste de noms de fichiers du dépôt sur l'entrée standard, un par +ligne, et écrit sur l'entrée standard le sous-ensemble de ces fichiers qui +manquent dans le dépôt. -@item --generate-key[=@var{parameters}] -@cindex signing, archives -Generate a new key pair for the daemon. This is a prerequisite before -archives can be exported with @code{--export}. Note that this operation -usually takes time, because it needs to gather enough entropy to generate -the key pair. +@item --generate-key[=@var{paramètres}] +@cindex signature, archives +Générer une nouvelle paire de clefs pour le démon. Cela est un prérequis +avant que les archives ne puissent être exportées avec @code{--export}. +Remarquez que cette opération prend généralement du temps parce qu'elle doit +récupère suffisamment d'entropie pour générer la paire de clefs. -The generated key pair is typically stored under @file{/etc/guix}, in -@file{signing-key.pub} (public key) and @file{signing-key.sec} (private key, -which must be kept secret.) When @var{parameters} is omitted, an ECDSA key -using the Ed25519 curve is generated, or, for Libgcrypt versions before -1.6.0, it is a 4096-bit RSA key. Alternatively, @var{parameters} can -specify @code{genkey} parameters suitable for Libgcrypt (@pxref{General -public-key related Functions, @code{gcry_pk_genkey},, gcrypt, The Libgcrypt -Reference Manual}). +La paire de clefs générée est typiquement stockée dans @file{/etc/guix}, +dans @file{signing-key.pub} (clef publique) et @file{signing-key.sec} (clef +privée, qui doit rester secrète). Lorsque @var{paramètres} est omis, une +clef ECDSA utilisant la courbe Ed25519 est générée ou pour les version de +libgcrypt avant 1.6.0, une clef RSA de 4096 bits. Autrement, +@var{paramètres} peut spécifier les paramètres @code{genkey} adaptés pour +libgcrypt (@pxref{General public-key related Functions, +@code{gcry_pk_genkey},, gcrypt, The Libgcrypt Reference Manual}). @item --authorize -@cindex authorizing, archives -Authorize imports signed by the public key passed on standard input. The -public key must be in ``s-expression advanced format''---i.e., the same -format as the @file{signing-key.pub} file. +@cindex autorisation, archives +Autoriser les imports signés par la clef publique passée sur l'entrée +standard. La clef publique doit être au « format avancé s-expression » — +c.-à-d.@: le même format que le fichier @file{signing-key.pub}. -The list of authorized keys is kept in the human-editable file -@file{/etc/guix/acl}. The file contains -@url{http://people.csail.mit.edu/rivest/Sexp.txt, ``advanced-format -s-expressions''} and is structured as an access-control list in the -@url{http://theworld.com/~cme/spki.txt, Simple Public-Key Infrastructure -(SPKI)}. +La liste des clefs autorisées est gardée dans un fichier modifiable par des +humains dans @file{/etc/guix/acl}. Le fichier contient des +@url{http://people.csail.mit.edu/rivest/Sexp.txt, « s-expressions au format +avancé »} et est structuré comme une liste de contrôle d'accès dans +l'@url{http://theworld.com/~cme/spki.txt, infrastructure à clefs publiques +simple (SPKI)}. -@item --extract=@var{directory} -@itemx -x @var{directory} +@item --extract=@var{répertoire} +@itemx -x @var{répertoire} Lit une archive à un seul élément telle que servie par un serveur de -substituts (@pxref{Substituts}) et l'extrait dans @var{directory}. C'est une -opération de bas niveau requise seulement dans de rares cas d'usage ; voir -plus loin. +substituts (@pxref{Substituts}) et l'extrait dans @var{répertoire}. C'est +une opération de bas niveau requise seulement dans de rares cas d'usage ; +voir plus loin. -For example, the following command extracts the substitute for Emacs served -by @code{hydra.gnu.org} to @file{/tmp/emacs}: +Par exemple, la commande suivante extrait le substitut pour Emacs servi par +@code{hydra.gnu.org} dans @file{/tmp/emacs} : @example $ wget -O - \ @@ -3102,13 +3353,15 @@ $ wget -O - \ | bunzip2 | guix archive -x /tmp/emacs @end example -Single-item archives are different from multiple-item archives produced by -@command{guix archive --export}; they contain a single store item, and they -do @emph{not} embed a signature. Thus this operation does @emph{no} -signature verification and its output should be considered unsafe. +Les archives à un seul élément sont différentes des archives à plusieurs +éléments produites par @command{guix archive --export} ; elles contiennent +un seul élément du dépôt et elles n'embarquent @emph{pas} de signature. +Ainsi cette opération ne vérifie @emph{pas} de signature et sa sortie +devrait être considérée comme non sûre. -The primary purpose of this operation is to facilitate inspection of archive -contents coming from possibly untrusted substitute servers. +Le but principal de cette opération est de faciliter l'inspection du contenu +des archives venant de serveurs auxquels on ne fait potentiellement pas +confiance. @end table @@ -3116,30 +3369,34 @@ contents coming from possibly untrusted substitute servers. @node Interface de programmation @chapter Interface de programmation -GNU Guix provides several Scheme programming interfaces (APIs) to define, -build, and query packages. The first interface allows users to write -high-level package definitions. These definitions refer to familiar -packaging concepts, such as the name and version of a package, its build -system, and its dependencies. These definitions can then be turned into -concrete build actions. +GNU Guix fournit diverses interface de programmation Scheme (API) qui pour +définir, construire et faire des requêtes sur des paquets. La première +interface permet aux utilisateurs d'écrire des définitions de paquets de +haut-niveau. Ces définitions se réfèrent à des concepts de création de +paquets familiers, comme le nom et la version du paquet, son système de +construction et ses dépendances. Ces définitions peuvent ensuite être +transformées en actions concrètes lors de la construction. -Build actions are performed by the Guix daemon, on behalf of users. In a -standard setup, the daemon has write access to the store---the -@file{/gnu/store} directory---whereas users do not. The recommended setup -also has the daemon perform builds in chroots, under a specific build users, -to minimize interference with the rest of the system. +Les actions de construction sont effectuées par le démon Guix, pour le +compte des utilisateurs. Dans un environnement standard, le démon possède +les droits en écriture sur le dépôt — le répertoire @file{/gnu/store} — mais +pas les utilisateurs. La configuration recommandée permet aussi au démon +d'effectuer la construction dans des chroots, avec un utilisateur de +construction spécifique pour minimiser les interférences avec le reste du +système. -@cindex derivation -Lower-level APIs are available to interact with the daemon and the store. -To instruct the daemon to perform a build action, users actually provide it -with a @dfn{derivation}. A derivation is a low-level representation of the -build actions to be taken, and the environment in which they should -occur---derivations are to package definitions what assembly is to C -programs. The term ``derivation'' comes from the fact that build results -@emph{derive} from them. +@cindex dérivation +Il y a des API de plus bas niveau pour interagir avec le démon et le dépôt. +Pour demander au démon d'effectuer une action de construction, les +utilisateurs lui donnent en fait une @dfn{dérivation}. Une dérivation est +une représentation à bas-niveau des actions de construction à entreprendre +et l'environnement dans lequel elles devraient avoir lieu — les dérivations +sont aux définitions de paquets ce que l'assembleur est aux programmes C. +Le terme de « dérivation » vient du fait que les résultats de la +construction en @emph{dérivent}. -This chapter describes all these APIs in turn, starting from high-level -package definitions. +Ce chapitre décrit toutes ces API tour à tour, à partir des définitions de +paquets à haut-niveau. @menu * Définition des paquets:: Définir de nouveaux paquets. @@ -3155,10 +3412,10 @@ package definitions. @node Définition des paquets @section Définition des paquets -The high-level interface to package definitions is implemented in the -@code{(guix packages)} and @code{(guix build-system)} modules. As an -example, the package definition, or @dfn{recipe}, for the GNU Hello package -looks like this: +L'interface de haut-niveau pour les définitions de paquets est implémentée +dans les modules @code{(guix packages)} et @code{(guix build-system)}. Par +exemple, la définition du paquet, ou la @dfn{recette}, du paquet GNU Hello +ressemble à cela : @example (define-module (gnu packages hello) @@ -3189,179 +3446,189 @@ looks like this: @end example @noindent -Without being a Scheme expert, the reader may have guessed the meaning of -the various fields here. This expression binds the variable @code{hello} to -a @code{} object, which is essentially a record (@pxref{SRFI-9, -Scheme records,, guile, GNU Guile Reference Manual}). This package object -can be inspected using procedures found in the @code{(guix packages)} -module; for instance, @code{(package-name hello)} -returns---surprise!---@code{"hello"}. +Sans être un expert Scheme, le lecteur peut comprendre la signification des +différents champs présents. Cette expression lie la variable @code{hello} à +un objet @code{}, qui est essentiellement un enregistrement +(@pxref{SRFI-9, Scheme records,, guile, GNU Guile Reference Manual}). On +peut inspecter cet objet de paquet avec les procédures qui se trouvent dans +le module @code{(guix packages)} ; par exemple, @code{(package-name hello)} +renvoie — oh surprise ! — @code{"hello"}. -With luck, you may be able to import part or all of the definition of the -package you are interested in from another repository, using the @code{guix -import} command (@pxref{Invoquer guix import}). +Avec un peu de chance, vous pourrez importer tout ou partie de la définition +du paquet qui vous intéresse depuis un autre répertoire avec la commande +@code{guix import} (@pxref{Invoquer guix import}). -In the example above, @var{hello} is defined in a module of its own, -@code{(gnu packages hello)}. Technically, this is not strictly necessary, -but it is convenient to do so: all the packages defined in modules under -@code{(gnu packages @dots{})} are automatically known to the command-line -tools (@pxref{Modules de paquets}). +Dans l'exemple précédent, @var{hello} est défini dans un module à part, +@code{(gnu packages hello)}. Techniquement, cela n'est pas strictement +nécessaire, mais c'est pratique : tous les paquets définis dans des modules +sous @code{(gnu packages @dots{})} sont automatiquement connus des outils en +ligne de commande (@pxref{Modules de paquets}). -There are a few points worth noting in the above package definition: +Il y a quelques points à remarquer dans la définition de paquet précédente : @itemize @item -The @code{source} field of the package is an @code{} object -(@pxref{Référence d'origine}, for the complete reference). Here, the -@code{url-fetch} method from @code{(guix download)} is used, meaning that -the source is a file to be downloaded over FTP or HTTP. +Le champ @code{source} du paquet est un objet @code{} (@pxref{Référence d'origine}, pour la référence complète). Ici, on utilise la méthode +@code{url-fetch} de @code{(guix download)}, ce qui signifie que la source +est un fichier à télécharger par FTP ou HTTP. -The @code{mirror://gnu} prefix instructs @code{url-fetch} to use one of the -GNU mirrors defined in @code{(guix download)}. +Le préfixe @code{mirror://gnu} demande à @code{url-fetch} d'utiliser l'un +des miroirs GNU définis dans @code{(guix download)}. -The @code{sha256} field specifies the expected SHA256 hash of the file being -downloaded. It is mandatory, and allows Guix to check the integrity of the -file. The @code{(base32 @dots{})} form introduces the base32 representation -of the hash. You can obtain this information with @code{guix download} -(@pxref{Invoquer guix download}) and @code{guix hash} (@pxref{Invoquer guix hash}). +Le champ @code{sha256} spécifie le hash SHA256 attendu pour le fichier +téléchargé. Il est requis et permet à Guix de vérifier l'intégrité du +fichier. La forme @code{(base32 @dots{})} introduit a représentation en +base32 du hash. Vous pouvez obtenir cette information avec @code{guix +download} (@pxref{Invoquer guix download}) et @code{guix hash} +(@pxref{Invoquer guix hash}). -@cindex patches -When needed, the @code{origin} form can also have a @code{patches} field -listing patches to be applied, and a @code{snippet} field giving a Scheme -expression to modify the source code. +@cindex correctifs +Lorsque cela est requis, la forme @code{origin} peut aussi avec un champ +@code{patches} qui liste les correctifs à appliquer et un champ +@code{snippet} qui donne une expression Scheme pour modifier le code source. @item -@cindex GNU Build System -The @code{build-system} field specifies the procedure to build the package -(@pxref{Systèmes de construction}). Here, @var{gnu-build-system} represents the -familiar GNU Build System, where packages may be configured, built, and -installed with the usual @code{./configure && make && make check && make -install} command sequence. +@cindex Système de construction GNU +Le champ @code{build-system} spécifie la procédure pour construire le paquet +(@pxref{Systèmes de construction}). Ici, @var{gnu-build-system} représente le système +de construction GNU familier, où les paquets peuvent être configurés, +construits et installés avec la séquence @code{./configure && make && make +check && make install} habituelle. @item -The @code{arguments} field specifies options for the build system -(@pxref{Systèmes de construction}). Here it is interpreted by @var{gnu-build-system} -as a request run @file{configure} with the @code{--enable-silent-rules} -flag. +Le champ @code{arguments} spécifie des options pour le système de +construction (@pxref{Systèmes de construction}). Ici il est interprété par +@var{gnu-build-system} comme une demande de lancer @file{configure} avec le +drapeau @code{--enable-silent-rules}. @cindex quote @cindex quoting @findex ' @findex quote -What about these quote (@code{'}) characters? They are Scheme syntax to -introduce a literal list; @code{'} is synonymous with @code{quote}. -@xref{Expression Syntax, quoting,, guile, GNU Guile Reference Manual}, for -details. Here the value of the @code{arguments} field is a list of -arguments passed to the build system down the road, as with @code{apply} -(@pxref{Fly Evaluation, @code{apply},, guile, GNU Guile Reference Manual}). +Que sont ces apostrophes (@code{'}) ? C'est de la syntaxe Scheme pour +introduire une liste ; @code{'} est synonyme de la fonction @code{quote}. +@xref{Expression Syntax, quoting,, guile, GNU Guile Reference Manual}, pour +des détails. Ice la valeur du champ @code{arguments} est une liste +d'arguments passés au système de construction plus tard, comme avec +@code{apply} (@pxref{Fly Evaluation, @code{apply},, guile, GNU Guile +Reference Manual}). -The hash-colon (@code{#:}) sequence defines a Scheme @dfn{keyword} -(@pxref{Keywords,,, guile, GNU Guile Reference Manual}), and -@code{#:configure-flags} is a keyword used to pass a keyword argument to the -build system (@pxref{Coding With Keywords,,, guile, GNU Guile Reference -Manual}). +La séquence dièse-deux-points (@code{#:}) définie un @dfn{mot-clef} Scheme +(@pxref{Keywords,,, guile, GNU Guile Reference Manual}), et +@code{#:configure-flags} est un mot-clef utilisé pour passer un argument au +système de construction (@pxref{Coding With Keywords,,, guile, GNU Guile +Reference Manual}). @item -The @code{inputs} field specifies inputs to the build process---i.e., -build-time or run-time dependencies of the package. Here, we define an -input called @code{"gawk"} whose value is that of the @var{gawk} variable; -@var{gawk} is itself bound to a @code{} object. +Le champ @code{inputs} spécifie les entrées du processus de construction — +c.-à-d.@: les dépendances à la construction ou à l'exécution du paquet. Ici +on définie une entrée nommée @code{"gawk"} dont la valeur est la variable +@var{gawk} ; @var{gawk} est elle-même liée à un objet @code{}. -@cindex backquote (quasiquote) +@cindex accent grave (quasiquote) @findex ` @findex quasiquote -@cindex comma (unquote) +@cindex virgule (unquote) @findex , @findex unquote @findex ,@@ @findex unquote-splicing -Again, @code{`} (a backquote, synonymous with @code{quasiquote}) allows us -to introduce a literal list in the @code{inputs} field, while @code{,} (a -comma, synonymous with @code{unquote}) allows us to insert a value in that -list (@pxref{Expression Syntax, unquote,, guile, GNU Guile Reference -Manual}). +De nouveau, @code{`} (un accent grave, synonyme de la fonction +@code{quasiquote}) nous permet d'introduire une liste litérale dans le champ +@code{inputs}, tandis que @code{,} (une virgule, synonyme de la fonction +@code{unquote}) nous permet d'insérer une valeur dans cette liste +(@pxref{Expression Syntax, unquote,, guile, GNU Guile Reference Manual}). -Note that GCC, Coreutils, Bash, and other essential tools do not need to be -specified as inputs here. Instead, @var{gnu-build-system} takes care of -ensuring that they are present (@pxref{Systèmes de construction}). +Remarquez que GCC, Coreutils, Bash et les autres outils essentiels n'ont pas +besoin d'être spécifiés en tant qu'entrées ici. À la place, le +@var{gnu-build-system} est en charge de s'assurer qu'ils sont présents +(@pxref{Systèmes de construction}). -However, any other dependencies need to be specified in the @code{inputs} -field. Any dependency not specified here will simply be unavailable to the -build process, possibly leading to a build failure. +Cependant, toutes les autres dépendances doivent être spécifiées dans le +champ @code{inputs}. Toute dépendance qui ne serait pas spécifiée ici sera +simplement indisponible pour le processus de construction, ce qui peut mener +à un échec de la construction. @end itemize -@xref{Référence de paquet}, for a full description of possible fields. +@xref{Référence de paquet}, pour une description complète des champs +possibles. -Once a package definition is in place, the package may actually be built -using the @code{guix build} command-line tool (@pxref{Invoquer guix build}), -troubleshooting any build failures you encounter (@pxref{Débogage des échecs de construction}). You can easily jump back to the package definition using the -@command{guix edit} command (@pxref{Invoquer guix edit}). @xref{Consignes d'empaquetage}, for more information on how to test package definitions, and -@ref{Invoquer guix lint}, for information on how to check a definition for -style conformance. +Lorsqu'une définition de paquet est en place, le paquet peut enfin être +construit avec l'outil en ligne de commande @code{guix build} +(@pxref{Invoquer guix build}), pour résoudre les échecs de construction que +vous pourriez rencontrer (@pxref{Débogage des échecs de construction}). Vous pouvez +aisément revenir à la définition du paquet avec la commande @command{guix +edit} (@pxref{Invoquer guix edit}). @xref{Consignes d'empaquetage}, pour plus +d'inforamtions sur la manière de tester des définitions de paquets et +@ref{Invoquer guix lint}, pour des informations sur la manière de vérifier +que la définition réspecte les conventions de style. @vindex GUIX_PACKAGE_PATH -Lastly, @pxref{Modules de paquets}, for information on how to extend the -distribution by adding your own package definitions to -@code{GUIX_PACKAGE_PATH}. +Enfin, @pxref{Modules de paquets} pour des informations sur la manière +d'étendre la distribution en ajoutant vos propres définitions de paquets +dans @code{GUIX_PACKAGE_PATH}. -Finally, updating the package definition to a new upstream version can be -partly automated by the @command{guix refresh} command (@pxref{Invoquer guix refresh}). +Finalement, la mise à jour de la définition du paquet à une nouvelle version +amont peut en partie s'automatiser avec la commande @command{guix refresh} +(@pxref{Invoquer guix refresh}). -Behind the scenes, a derivation corresponding to the @code{} object -is first computed by the @code{package-derivation} procedure. That -derivation is stored in a @code{.drv} file under @file{/gnu/store}. The -build actions it prescribes may then be realized by using the -@code{build-derivations} procedure (@pxref{Le dépôt}). +Sous le capot, une dérivation qui correspond à un objet @code{} est +d'abord calculé par la procédure @code{package-derivation}. Cette +dérivation est stockée dans un fichier @code{.drv} dans @file{/gnu/store}. +Les actions de construction qu'il prescrit peuvent ensuite être réalisées +par la procédure @code{build-derivation} (@pxref{Le dépôt}). -@deffn {Scheme Procedure} package-derivation @var{store} @var{package} [@var{system}] -Return the @code{} object of @var{package} for @var{system} +@deffn {Procédure Scheme} package-derivation @var{dépôt} @var{paquet} [@var{système}] +Renvoie l'objet @code{} du @var{paquet} pour le @var{système} (@pxref{Dérivations}). -@var{package} must be a valid @code{} object, and @var{system} must -be a string denoting the target system type---e.g., @code{"x86_64-linux"} -for an x86_64 Linux-based GNU system. @var{store} must be a connection to -the daemon, which operates on the store (@pxref{Le dépôt}). +@var{paquet} doit être un objet @code{} valide et @var{système} une +chaîne indiquant le type de système cible — p.ex.@: @code{"x86_64-linux"} +pour un système GNU x86_64 basé sur Linux. @var{dépôt} doit être une +connexion au démon, qui opère sur les dépôt (@pxref{Le dépôt}). @end deffn @noindent -@cindex cross-compilation -Similarly, it is possible to compute a derivation that cross-builds a -package for some other system: +@cindex compilation croisée +De manière identique, il est possible de calculer une dérivation qui +effectue une compilation croisée d'un paquet pour un autre système : -@deffn {Scheme Procedure} package-cross-derivation @var{store} @ - @var{package} @var{target} [@var{system}] Return the @code{} -object of @var{package} cross-built from @var{system} to @var{target}. +@deffn {Procédure Scheme} package-cross-derivation @var{dépôt} @ + @var{paquet} @var{cible} [@var{système}] renvoie l'objet @code{} +duof @var{paquet} construit depuis @var{système} pour @var{cible}. -@var{target} must be a valid GNU triplet denoting the target hardware and -operating system, such as @code{"mips64el-linux-gnu"} (@pxref{Configuration -Names, GNU configuration triplets,, configure, GNU Configure and Build -System}). +@var{cible} doit être un triplet GNU valide indiquant le matériel cible et +le système d'exploitation, comme @code{"mips64el-linux-gnu"} +(@pxref{Configuration Names, GNU configuration triplets,, configure, GNU +Configure and Build System}). @end deffn -@cindex package transformations -@cindex input rewriting -@cindex dependency tree rewriting -Packages can be manipulated in arbitrary ways. An example of a useful -transformation is @dfn{input rewriting}, whereby the dependency tree of a -package is rewritten by replacing specific inputs by others: +@cindex transformations de paquets +@cindex réécriture d'entrées +@cindex réécriture de l'arbre des dépendances +On peut manipuler les paquets de manière arbitraire. Une transformation +utile est par exemple la @dfn{réécriture d'entrées} où l'arbre des +dépendances d'un paquet est réécrit en replaçant des entrées spécifiques par +d'autres : -@deffn {Scheme Procedure} package-input-rewriting @var{replacements} @ - [@var{rewrite-name}] Return a procedure that, when passed a package, -replaces its direct and indirect dependencies (but not its implicit inputs) -according to @var{replacements}. @var{replacements} is a list of package -pairs; the first element of each pair is the package to replace, and the -second one is the replacement. +@deffn {Procédure Scheme} package-input-rewriting @var{remplacements} @ + [@var{nom-réécrit}] Renvoie une procédure qui, lorsqu'on lui donne un +paquet, remplace des dépendances directes et indirectes (mais pas ses +entrées implicites) en fonction de @var{remplacements}. @var{remplacements} +est une liste de paires de paquets ; le premier élément de chaque pair est +le paquet à remplacer, le second son remplaçant. -Optionally, @var{rewrite-name} is a one-argument procedure that takes the -name of a package and returns its new name after rewrite. +De manière facultative, @var{nom-réécrit} est une procédure à un argument +qui prend le nom d'un paquet et renvoie son nouveau nom après l'avoir +réécrit. @end deffn @noindent -Consider this example: +Regardez cet exemple : @example (define libressl-instead-of-openssl - ;; This is a procedure to replace OPENSSL by LIBRESSL, - ;; recursively. + ;; Cette procédure remplace OPENSSL par LIBRESSL, + ;; récursivement. (package-input-rewriting `((,openssl . ,libressl)))) (define git-with-libressl @@ -3369,18 +3636,21 @@ Consider this example: @end example @noindent -Here we first define a rewriting procedure that replaces @var{openssl} with -@var{libressl}. Then we use it to define a @dfn{variant} of the @var{git} -package that uses @var{libressl} instead of @var{openssl}. This is exactly -what the @option{--with-input} command-line option does (@pxref{Options de transformation de paquets, @option{--with-input}}). +Ici nous définissons d'abord une procédure de réécriture qui remplace +@var{openssl} par @var{libressl}. Ensuite nous l'utilisons pour définir une +@dfn{variante} du paquet @var{git} qui utilise @var{libressl} plutôt que +@var{openssl}. cela est exactement ce que l'option en ligne de commande +@option{--with-input} fait (@pxref{Options de transformation de paquets, +@option{--with-input}}). -A more generic procedure to rewrite a package dependency graph is -@code{package-mapping}: it supports arbitrary changes to nodes in the graph. +Une procédure plus générique pour réécrire un graphe de dépendance d'un +paquet est @code{package-mapping} : elle supporte n'importe quel changement +dans les nœuds du graphe. -@deffn {Scheme Procedure} package-mapping @var{proc} [@var{cut?}] -Return a procedure that, given a package, applies @var{proc} to all the -packages depended on and returns the resulting package. The procedure stops -recursion when @var{cut?} returns true for a given package. +@deffn {Procédure Scheme} package-mapping @var{proc} [@var{cut?}] +Renvoie une procédure qui, avec un paquet, applique @var{proc} sur tous les +paquets dont il dépend et renvoie le paquet qui en résulte. La procédure +arrête la récursion là où @var{cut?} renvoie vrai pour un paquet donné. @end deffn @menu @@ -3390,159 +3660,167 @@ recursion when @var{cut?} returns true for a given package. @node Référence de paquet -@subsection @code{package} Reference +@subsection Référence de @code{package} -This section summarizes all the options available in @code{package} -declarations (@pxref{Définition des paquets}). +Cette section résume toutes les options disponibles dans les déclarations +@code{package} (@pxref{Définition des paquets}). -@deftp {Data Type} package -This is the data type representing a package recipe. +@deftp {Type de donnée} package +C'est le type de donnée représentant une recette de paquets @table @asis @item @code{name} -The name of the package, as a string. +Le nom du paquet, comme une chaîne de caractères. @item @code{version} -The version of the package, as a string. +La version du paquet, comme une chaîne de caractères. @item @code{source} -An object telling how the source code for the package should be acquired. -Most of the time, this is an @code{origin} object, which denotes a file -fetched from the Internet (@pxref{Référence d'origine}). It can also be any -other ``file-like'' object such as a @code{local-file}, which denotes a file -from the local file system (@pxref{G-Expressions, @code{local-file}}). +Un objet qui indique comment le code source du paquet devrait être +récupéré. La plupart du temps, c'est un objet @code{origin} qui indique un +fichier récupéré depuis internet (@pxref{Référence d'origine}). Il peut aussi +s'agir de tout autre objet ``simili-fichier'' comme un @code{local-file} qui +indique un fichier du système de fichier local (@pxref{G-Expressions, +@code{local-file}}). @item @code{build-system} -The build system that should be used to build the package (@pxref{Systèmes de construction}). +Le système de construction qui devrait être utilisé pour construire le +paquet (@pxref{Systèmes de construction}). -@item @code{arguments} (default: @code{'()}) -The arguments that should be passed to the build system. This is a list, -typically containing sequential keyword-value pairs. +@item @code{arguments} (par défaut : @code{'()}) +Les arguments à passer au système de construction. C'est une liste qui +contient typiquement une séquence de paires de clefs-valeurs. -@item @code{inputs} (default: @code{'()}) -@itemx @code{native-inputs} (default: @code{'()}) -@itemx @code{propagated-inputs} (default: @code{'()}) -@cindex inputs, of packages -These fields list dependencies of the package. Each one is a list of -tuples, where each tuple has a label for the input (a string) as its first -element, a package, origin, or derivation as its second element, and -optionally the name of the output thereof that should be used, which -defaults to @code{"out"} (@pxref{Des paquets avec plusieurs résultats}, for more -on package outputs). For example, the list below specifies three inputs: +@item @code{inputs} (par défaut : @code{'()}) +@itemx @code{native-inputs} (par défaut : @code{'()}) +@itemx @code{propagated-inputs} (par défaut : @code{'()}) +@cindex entrées, des paquets +Ces champs listent les dépendances du paquet. Chacune est une liste de +tuples, où chaque tuple a une étiquette pour une entrée (une chaîne de +caractères) comme premier élément, un paquet, une origine ou une dérivation +comme deuxième élément et éventuellement le nom d'une sortie à utiliser qui +est @code{"out"} par défaut (@pxref{Des paquets avec plusieurs résultats}, pour +plus d'informations sur les sorties des paquets). Par exemple, la liste +suivante spécifie trois entrées : @example `(("libffi" ,libffi) ("libunistring" ,libunistring) - ("glib:bin" ,glib "bin")) ;the "bin" output of Glib + ("glib:bin" ,glib "bin")) ;la sortie "bin" de Glib @end example -@cindex cross compilation, package dependencies -The distinction between @code{native-inputs} and @code{inputs} is necessary -when considering cross-compilation. When cross-compiling, dependencies -listed in @code{inputs} are built for the @emph{target} architecture; -conversely, dependencies listed in @code{native-inputs} are built for the -architecture of the @emph{build} machine. +@cindex compilation croisée, dépendances des paquets +La distinction entre @code{native-inputs} et @code{inputs} est nécessaire +lorsqu'on considère la compilation croisée. Lors d'une compilation croisée, +les dépendances listées dans @code{inputs} sont construites pour +l'architecture @emph{cible} ; inversement, les dépendances listées dans +@code{native-inputs} sont construites pour l'architecture de la machine de +@emph{construction}. -@code{native-inputs} is typically used to list tools needed at build time, -but not at run time, such as Autoconf, Automake, pkg-config, Gettext, or -Bison. @command{guix lint} can report likely mistakes in this area -(@pxref{Invoquer guix lint}). +@code{native-inputs} est typiquement utilisé pour lister les outils requis à +la construction mais pas à l'exécution, comme Autoconf, Automake, +pkg-config, Gettext ou Bison. @command{guix lint} peut rapporter des +erreurs de ce type (@pxref{Invoquer guix lint}). @anchor{package-propagated-inputs} -Lastly, @code{propagated-inputs} is similar to @code{inputs}, but the -specified packages will be automatically installed alongside the package -they belong to (@pxref{package-cmd-propagated-inputs, @command{guix -package}}, for information on how @command{guix package} deals with -propagated inputs.) +Enfin, @code{propagated-inputs} est similaire à @code{inputs}, mais les +paquets spécifiés seront automatiquement installés avec le paquet auquel ils +appartiennent (@pxref{package-cmd-propagated-inputs, @command{guix +package}}, pour des informations sur la manière dont @command{guix package} +traite les entrées propagées). -For example this is necessary when a C/C++ library needs headers of another -library to compile, or when a pkg-config file refers to another one @i{via} -its @code{Requires} field. +Par exemple cela est nécessaire lorsque des bibliothèques C/C++ ont besoin +d'en-têtes d'une autre bibliothèque pour être compilé ou lorsqu'un fichier +pkg-config se rapporte à un autre @i{via} son champ @code{Requires}. -Another example where @code{propagated-inputs} is useful is for languages -that lack a facility to record the run-time search path akin to the -@code{RUNPATH} of ELF files; this includes Guile, Python, Perl, and more. -To ensure that libraries written in those languages can find library code -they depend on at run time, run-time dependencies must be listed in -@code{propagated-inputs} rather than @code{inputs}. +Un autre exemple où @code{propagated-inputs} est utile est pour les langages +auxquels il manque un moyen de retenir le chemin de recherche comme c'est le +cas du @code{RUNPATH} des fichiers ELF ; cela comprend Guile, Python, Perl +et plus. Pour s'assurer que les bibliothèques écrites dans ces langages +peuvent trouver le code des bibliothèques dont elles dépendent à +l'exécution, les dépendances à l'exécution doivent être listées dans +@code{propagated-inputs} plutôt que @code{inputs}. -@item @code{self-native-input?} (default: @code{#f}) -This is a Boolean field telling whether the package should use itself as a -native input when cross-compiling. +@item @code{self-native-input?} (par défaut : @code{#f}) +C'est un champ booléen qui indique si le paquet devrait s'utiliser lui-même +comme entrée native lors de la compilation croisée. -@item @code{outputs} (default: @code{'("out")}) -The list of output names of the package. @xref{Des paquets avec plusieurs résultats}, for typical uses of additional outputs. +@item @code{outputs} (par défaut : @code{'("out")}) +La liste des noms de sorties du paquet. @xref{Des paquets avec plusieurs résultats}, pour des exemples typiques d'utilisation de sorties +supplémentaires. -@item @code{native-search-paths} (default: @code{'()}) -@itemx @code{search-paths} (default: @code{'()}) -A list of @code{search-path-specification} objects describing search-path -environment variables honored by the package. +@item @code{native-search-paths} (par défaut : @code{'()}) +@itemx @code{search-paths} (par défaut : @code{'()}) +Une liste d'objets @code{search-path-specification} décrivant les variables +d'environnement de recherche de chemins que ce paquet utilise. -@item @code{replacement} (default: @code{#f}) -This must be either @code{#f} or a package object that will be used as a -@dfn{replacement} for this package. @xref{Mises à jour de sécurité, grafts}, for -details. +@item @code{replacement} (par défaut : @code{#f}) +Ce champ doit être soit @code{#f} soit un objet de paquet qui sera utilisé +comme @dfn{remplaçant} de ce paquet. @xref{Mises à jour de sécurité, grafts}, pour +plus de détails. @item @code{synopsis} -A one-line description of the package. +Une description sur une ligne du paquet. @item @code{description} -A more elaborate description of the package. +Une description plus détaillée du paquet. @item @code{license} -@cindex license, of packages -The license of the package; a value from @code{(guix licenses)}, or a list -of such values. +@cindex licence, des paquets +La licence du paquet ; une valeur tirée de @code{(guix licenses)} ou une +liste de ces valeurs. @item @code{home-page} -The URL to the home-page of the package, as a string. +L'URL de la page d'accueil du paquet, en tant que chaîne de caractères. -@item @code{supported-systems} (default: @var{%supported-systems}) -The list of systems supported by the package, as strings of the form -@code{architecture-kernel}, for example @code{"x86_64-linux"}. +@item @code{supported-systems} (par défaut : @var{%supported-systems}) +La liste des systèmes supportés par le paquet, comme des chaînes de +caractères de la forme @code{architecture-noyau}, par exemple +@code{"x86_64-linux"}. -@item @code{maintainers} (default: @code{'()}) -The list of maintainers of the package, as @code{maintainer} objects. +@item @code{maintainers} (par défaut : @code{'()}) +La liste des mainteneurs du paquet, comme des objets @code{maintainer}. -@item @code{location} (default: source location of the @code{package} form) -The source location of the package. It is useful to override this when -inheriting from another package, in which case this field is not -automatically corrected. +@item @code{location} (par défaut : emplacement de la source de la forme @code{package}) +L'emplacement de la source du paquet. C'est utile de le remplacer lorsqu'on +hérite d'un autre paquet, auquel cas ce champ n'est pas automatiquement +corrigé. @end table @end deftp @node Référence d'origine -@subsection @code{origin} Reference +@subsection Référence de @code{origin} -This section summarizes all the options available in @code{origin} -declarations (@pxref{Définition des paquets}). +Cette section résume toutes les options disponibles dans le déclarations +@code{origin} (@pxref{Définition des paquets}). -@deftp {Data Type} origin -This is the data type representing a source code origin. +@deftp {Type de donnée} origin +C'est le type de donnée qui représente l'origine d'un code source. @table @asis @item @code{uri} -An object containing the URI of the source. The object type depends on the -@code{method} (see below). For example, when using the @var{url-fetch} -method of @code{(guix download)}, the valid @code{uri} values are: a URL -represented as a string, or a list thereof. +Un objet contenant l'URI de la source. Le type d'objet dépend de la +@code{method} (voir plus bas). Par exemple, avec la méthode @var{url-fetch} +de @code{(guix download)}, les valeurs valide d'@code{uri} sont : une URL +représentée par une chaîne de caractères, ou une liste de chaînes de +caractères. @item @code{method} -A procedure that handles the URI. +Un procédure qui gère l'URI. -Examples include: +Quelques exemples : @table @asis -@item @var{url-fetch} from @code{(guix download)} -download a file from the HTTP, HTTPS, or FTP URL specified in the @code{uri} -field; +@item @var{url-fetch} de @code{(guix download)} +télécharge un fichier depuis l'URL HTTP, HTTPS ou FTP spécifiée dans le +champ @code{uri} ; @vindex git-fetch -@item @var{git-fetch} from @code{(guix git-download)} -clone the Git version control repository, and check out the revision -specified in the @code{uri} field as a @code{git-reference} object; a -@code{git-reference} looks like this: +@item @var{git-fetch} de @code{(guix git-download)} +clone le dépôt sous contrôle de version Git et récupère la révision +spécifiée dans le champ @code{uri} en tant qu'objet @code{git-reference} ; +un objet @code{git-reference} ressemble à cela : @example (git-reference @@ -3552,47 +3830,50 @@ specified in the @code{uri} field as a @code{git-reference} object; a @end table @item @code{sha256} -A bytevector containing the SHA-256 hash of the source. Typically the -@code{base32} form is used here to generate the bytevector from a base-32 -string. +Un bytevector contenant le hash SHA-256 de la source. Typiquement la forme +@code{base32} est utilisée ici pour générer le bytevector depuis une chaîne +de caractères en base-32. -You can obtain this information using @code{guix download} (@pxref{Invoquer guix download}) or @code{guix hash} (@pxref{Invoquer guix hash}). +Vous pouvez obtenir cette information avec @code{guix download} +(@pxref{Invoquer guix download}) ou @code{guix hash} (@pxref{Invoquer guix hash}). -@item @code{file-name} (default: @code{#f}) -The file name under which the source code should be saved. When this is -@code{#f}, a sensible default value will be used in most cases. In case the -source is fetched from a URL, the file name from the URL will be used. For -version control checkouts, it is recommended to provide the file name -explicitly because the default is not very descriptive. +@item @code{file-name} (par défaut : @code{#f}) +Le nom de fichier à utiliser pour sauvegarder le fichier. Lorsqu'elle est à +@code{#f}, une valeur par défaut raisonnable est utilisée dans la plupart +des cas. Dans le cas où la source est récupérée depuis une URL, le nom de +fichier est celui de l'URL. Pour les sources récupérées depuis un outil de +contrôle de version, il est recommandé de fournir un nom de fichier +explicitement parce que le nom par défaut n'est pas très descriptif. -@item @code{patches} (default: @code{'()}) -A list of file names, origins, or file-like objects (@pxref{G-Expressions, -file-like objects}) pointing to patches to be applied to the source. +@item @code{patches} (par défaut : @code{'()}) +Une liste de noms de fichiers, d'origines ou d'objets simili-fichiers +(@pxref{G-Expressions, file-like objects}) qui pointent vers des correctifs +à appliquer sur la source. -This list of patches must be unconditional. In particular, it cannot depend -on the value of @code{%current-system} or @code{%current-target-system}. +Cette liste de correctifs doit être inconditionnelle. En particulier, elle +ne peut pas dépendre des valeurs de @code{%current-system} ou +@code{%current-target-system}. -@item @code{snippet} (default: @code{#f}) -A G-expression (@pxref{G-Expressions}) or S-expression that will be run in -the source directory. This is a convenient way to modify the source, -sometimes more convenient than a patch. +@item @code{snippet} (par défaut : @code{#f}) +Une G-expression (@pxref{G-Expressions}) ou une S-expression qui sera lancée +dans le répertoire des sources. C'est une manière pratique de modifier la +source, parfois plus qu'un correctif. -@item @code{patch-flags} (default: @code{'("-p1")}) -A list of command-line flags that should be passed to the @code{patch} -command. +@item @code{patch-flags} (par défaut : @code{'("-p1")}) +Une liste de drapeaux à passer à la commande @code{patch}. -@item @code{patch-inputs} (default: @code{#f}) -Input packages or derivations to the patching process. When this is -@code{#f}, the usual set of inputs necessary for patching are provided, such -as GNU@tie{}Patch. +@item @code{patch-inputs} (par défaut : @code{#f}) +Paquets d'entrées ou dérivations pour le processus de correction. +Lorsqu'elle est à @code{#f}, l'ensemble d'entrées habituellement nécessaire +pour appliquer des correctifs est fournit, comme GNU@tie{}Patch. -@item @code{modules} (default: @code{'()}) -A list of Guile modules that should be loaded during the patching process -and while running the code in the @code{snippet} field. +@item @code{modules} (par défaut : @code{'()}) +Une liste de modules Guile qui devraient être chargés pendant le processus +de correction et pendant que le lancement du code du champ @code{snippet}. -@item @code{patch-guile} (default: @code{#f}) -The Guile package that should be used in the patching process. When this is -@code{#f}, a sensible default is used. +@item @code{patch-guile} (par défaut : @code{#f}) +Le paquet Guile à utiliser dans le processus de correction. Lorsqu'elle est +à @code{#f}, une valeur par défaut raisonnable est utilisée. @end table @end deftp @@ -3600,569 +3881,625 @@ The Guile package that should be used in the patching process. When this is @node Systèmes de construction @section Systèmes de construction -@cindex build system -Each package definition specifies a @dfn{build system} and arguments for -that build system (@pxref{Définition des paquets}). This @code{build-system} -field represents the build procedure of the package, as well as implicit -dependencies of that build procedure. +@cindex système de construction +Chaque définition de paquet définie un @dfn{système de construction} et des +arguments pour ce système de construction (@pxref{Définition des paquets}). Ce +champ @code{build-system} représente la procédure de construction du paquet, +ainsi que des dépendances implicites pour cette procédure de construction. -Build systems are @code{} objects. The interface to create -and manipulate them is provided by the @code{(guix build-system)} module, -and actual build systems are exported by specific modules. +Les systèmes de construction sont des objets +@code{}. L'interface pour les créer et les manipuler est +fournie par le module @code{(guix build-system)} et les systèmes de +construction eux-mêmes sont exportés par des modules spécifiques. -@cindex bag (low-level package representation) -Under the hood, build systems first compile package objects to @dfn{bags}. -A @dfn{bag} is like a package, but with less ornamentation---in other words, -a bag is a lower-level representation of a package, which includes all the -inputs of that package, including some that were implicitly added by the -build system. This intermediate representation is then compiled to a -derivation (@pxref{Dérivations}). - -Build systems accept an optional list of @dfn{arguments}. In package -definitions, these are passed @i{via} the @code{arguments} field -(@pxref{Définition des paquets}). They are typically keyword arguments -(@pxref{Optional Arguments, keyword arguments in Guile,, guile, GNU Guile -Reference Manual}). The value of these arguments is usually evaluated in -the @dfn{build stratum}---i.e., by a Guile process launched by the daemon +@cindex sac (représentation à bas-niveau des paquets) +Sous le capot, les systèmes de construction compilent d'abord des objets +paquets en @dfn{sacs}. Un @dfn{sac} est comme un paquet, mais avec moins de +décoration — en d'autres mots, un sac est une représentation à bas-niveau +d'un paquet, qui inclus toutes les entrées de ce paquet, dont certaines ont +été implicitement ajoutées par le système de construction. Cette +représentation intermédiaire est ensuite compilée en une dérivation (@pxref{Dérivations}). -The main build system is @var{gnu-build-system}, which implements the -standard build procedure for GNU and many other packages. It is provided by -the @code{(guix build-system gnu)} module. +Les systèmes de construction acceptent une liste d'@dfn{arguments} +facultatifs. Dans les définitions de paquets, ils sont passés @i{via} le +champ @code{arguments} (@pxref{Définition des paquets}). Ce sont typiquement des +arguments par mot-clef (@pxref{Optional Arguments, keyword arguments in +Guile,, guile, GNU Guile Reference Manual}). La valeur de ces arguments est +habituellement évaluée dans la @dfn{strate de construction} — c.-à-d.@: par +un processus Guile lancé par le démon (@pxref{Dérivations}). -@defvr {Scheme Variable} gnu-build-system -@var{gnu-build-system} represents the GNU Build System, and variants thereof -(@pxref{Configuration, configuration and makefile conventions,, standards, -GNU Coding Standards}). +Le système de construction principal est le @var{gnu-build-system} qui +implémente les procédures de construction standard pour les paquets GNU et +de nombreux autres. Il est fournit par le module @code{(guix build-system +gnu)}. -@cindex build phases -In a nutshell, packages using it are configured, built, and installed with -the usual @code{./configure && make && make check && make install} command -sequence. In practice, a few additional steps are often needed. All these -steps are split up in separate @dfn{phases}, notably@footnote{Please see the -@code{(guix build gnu-build-system)} modules for more details about the -build phases.}: +@defvr {Variable Scheme} gnu-build-system +@var{gnu-build-system} représente le système de construction GNU et ses +variantes (@pxref{Configuration, configuration and makefile conventions,, +standards, GNU Coding Standards}). + +@cindex phases de construction +En résumé, les paquets qui l'utilisent sont configurés, construits et +installés avec la séquence @code{./configure && make && make check && make +install} habituelle. En pratique, des étapes supplémentaires sont souvent +requises. Toutes ces étapes sont séparées dans des @dfn{phases} +différentes, notamment@footnote{Regardez les modules @code{(guix build +gnu-build-system)} pour plus de détails sur les phases de construction.}: @table @code @item unpack -Unpack the source tarball, and change the current directory to the extracted -source tree. If the source is actually a directory, copy it to the build -tree, and enter that directory. +Décompresse l'archive des sources et se déplace dans l'arborescence des +sources fraîchement extraites. Si la source est en fait un répertoire, le +copie dans l'arborescence de construction et entre dans ce répertoire. @item patch-source-shebangs -Patch shebangs encountered in source files so they refer to the right store -file names. For instance, this changes @code{#!/bin/sh} to -@code{#!/gnu/store/@dots{}-bash-4.3/bin/sh}. +Corrige les shebangs (@code{#!}) rencontrés dans les fichiers pour qu'ils se +réfèrent aux bons noms de fichiers. Par exemple, elle change +@code{#!/bin/sh} en @code{#!/gnu/store/@dots{}-bash-4.3/bin/sh}. @item configure -Run the @file{configure} script with a number of default options, such as -@code{--prefix=/gnu/store/@dots{}}, as well as the options specified by the -@code{#:configure-flags} argument. +Lance le script @code{configure} avec un certain nombre d'options par +défaut, comme @code{--prefix=/gnu/store/@dots{}}, ainsi que les options +spécifiées par l'argument @code{#:configure-flags}. @item build -Run @code{make} with the list of flags specified with @code{#:make-flags}. -If the @code{#:parallel-build?} argument is true (the default), build with -@code{make -j}. +Lance @code{make} avec la liste des drapeaux spécifiés avec +@code{#:make-flags}. Si l'argument @code{#:parallel-build?} est vrai (par +défaut), construit avec @code{make -j}. @item check -Run @code{make check}, or some other target specified with -@code{#:test-target}, unless @code{#:tests? #f} is passed. If the -@code{#:parallel-tests?} argument is true (the default), run @code{make +Lance @code{make check}, ou une autre cible spécifiée par +@code{#:test-target}, à moins que @code{#:tests? #f} ne soit passé. Si +l'argument @code{#:parallel-tests?} est vrai (par défaut), lance @code{make check -j}. @item install -Run @code{make install} with the flags listed in @code{#:make-flags}. +Lance @code{make install} avec les drapeaux listés dans @code{#:make-flags}. @item patch-shebangs -Patch shebangs on the installed executable files. +Corrige les shebangs des fichiers exécutables installés. @item strip -Strip debugging symbols from ELF files (unless @code{#:strip-binaries?} is -false), copying them to the @code{debug} output when available -(@pxref{Installer les fichiers de débogage}). +Nettoie les symboles de débogage dans les fichiers ELF (à moins que +@code{#:strip-binaries?} ne soit faux), les copie dans la sortie +@code{debug} lorsqu'elle est disponible (@pxref{Installer les fichiers de débogage}). @end table @vindex %standard-phases -The build-side module @code{(guix build gnu-build-system)} defines -@var{%standard-phases} as the default list of build phases. -@var{%standard-phases} is a list of symbol/procedure pairs, where the -procedure implements the actual phase. +Le module du côté du constructeur @code{(guix build gnu-build-system)} +définie @var{%standard-phases} comme la liste par défaut des phases de +construction. @var{%standard-phases} est une liste de paires de symboles +et de procédures, où la procédure implémente la phase en question. -The list of phases used for a particular package can be changed with the -@code{#:phases} parameter. For instance, passing: +La liste des phases utilisées par un paquet particulier peut être modifiée +avec le paramètre @code{#:phases}. Par exemple, en passant : @example #:phases (modify-phases %standard-phases (delete 'configure)) @end example -means that all the phases described above will be used, except the -@code{configure} phase. +signifie que toutes les procédures décrites plus haut seront utilisées, sauf +la phase @code{configure}. -In addition, this build system ensures that the ``standard'' environment for -GNU packages is available. This includes tools such as GCC, libc, -Coreutils, Bash, Make, Diffutils, grep, and sed (see the @code{(guix -build-system gnu)} module for a complete list). We call these the -@dfn{implicit inputs} of a package, because package definitions do not have -to mention them. +En plus, ce système de construction s'assure que l'environnement « standard +» pour les paquets GNU est disponible. Cela inclus des outils comme GCC, +libc, Coreutils, Bash, Make, Diffutils, grep et sed (voir le module +@code{(guix build-system gnu)} pour une liste complète). Nous les appelons +les @dfn{entrées implicites} d'un paquet parce que la définition du paquet +ne les mentionne pas. @end defvr -Other @code{} objects are defined to support other conventions -and tools used by free software packages. They inherit most of -@var{gnu-build-system}, and differ mainly in the set of inputs implicitly -added to the build process, and in the list of phases executed. Some of -these build systems are listed below. +D'autres objets @code{} sont définis pour supporter d'autres +conventions et outils utilisés par les paquets de logiciels libres. Ils +héritent de la plupart de @var{gnu-build-system} et diffèrent surtout dans +l'ensemble des entrées implicites ajoutées au processus de construction et +dans la liste des phases exécutées. Certains de ces systèmes de +construction sont listés ci-dessous. -@defvr {Scheme Variable} ant-build-system -This variable is exported by @code{(guix build-system ant)}. It implements -the build procedure for Java packages that can be built with -@url{http://ant.apache.org/, Ant build tool}. +@defvr {Variable Scheme} ant-build-system +Cette variable est exportée par @code{(guix build-system ant)}. Elle +implémente la procédure de construction pour les paquets Java qui peuvent +être construits avec @url{http://ant.apache.org/, l'outil de construction +Ant}. -It adds both @code{ant} and the @dfn{Java Development Kit} (JDK) as provided -by the @code{icedtea} package to the set of inputs. Different packages can -be specified with the @code{#:ant} and @code{#:jdk} parameters, -respectively. +Elle ajoute à la fois @code{ant} et the @dfn{kit de développement Java} +(JDK) fournit par le paquet @code{icedtea} à l'ensemble des entrées. Des +paquets différents peuvent être spécifiés avec les paramètres @code{#:ant} +et @code{#:jdk} respectivement. -When the original package does not provide a suitable Ant build file, the -parameter @code{#:jar-name} can be used to generate a minimal Ant build file -@file{build.xml} with tasks to build the specified jar archive. In this -case the parameter @code{#:source-dir} can be used to specify the source -sub-directory, defaulting to ``src''. +Lorsque le paquet d'origine ne fournit pas de fichier de construction Ant +acceptable, le paramètre @code{#:jar-name} peut être utilisé pour générer un +fichier de construction Ant @file{build.xml} minimal, avec des tâches pour +construire l'archive jar spécifiée. Dans ce cas, le paramètre +@code{#:source-dir} peut être utilisé pour spécifier le sous-répertoire des +sources, par défaut « src ». -The @code{#:main-class} parameter can be used with the minimal ant buildfile -to specify the main class of the resulting jar. This makes the jar file -executable. The @code{#:test-include} parameter can be used to specify the -list of junit tests to run. It defaults to @code{(list "**/*Test.java")}. -The @code{#:test-exclude} can be used to disable some tests. It defaults to -@code{(list "**/Abstract*.java")}, because abstract classes cannot be run as -tests. +Le paramètre @code{#:main-class} peut être utilisé avec le fichier de +construction minimal pour spécifier la classe principale du jar. Cela rend +le fichier jar exécutable. Le paramètre @code{#:test-include} peut être +utilisé pour spécifier la liste des tests junit à lancer. Il vaut par +défaut @code{(list "**/*Test.java")}. Le paramètre @code{#:test-exclude} +peut être utilisé pour désactiver certains tests. Sa valeur par défaut est +@code{(list "**/Abstract*.java")}, parce que les classes abstraites ne +peuvent pas être utilisées comme des tests. -The parameter @code{#:build-target} can be used to specify the Ant task that -should be run during the @code{build} phase. By default the ``jar'' task -will be run. +Le paramètre @code{#:build-target} peut être utilisé pour spécifier la tâche +Ant qui devrait être lancée pendant la phase @code{build}. Par défaut la +tâche « jar » sera lancée. @end defvr -@defvr {Scheme Variable} asdf-build-system/source -@defvrx {Scheme Variable} asdf-build-system/sbcl -@defvrx {Scheme Variable} asdf-build-system/ecl +@defvr {Variable Scheme} android-ndk-build-system +@cindex Distribution android +@cindex système de construction Android NDK +Cette variable est exportée par @code{(guix build-system android-ndk)}. +Elle implémente une procédure de construction pour les paquets du NDK +Android (@i{native development kit}) avec des processus de construction +spécifiques à Guix. -These variables, exported by @code{(guix build-system asdf)}, implement -build procedures for Common Lisp packages using -@url{https://common-lisp.net/project/asdf/, ``ASDF''}. ASDF is a system -definition facility for Common Lisp programs and libraries. +Le système de construction suppose que les paquets installent leur interface +publique (les en-têtes) dans un sous-répertoire de « include » de la sortie +« out » et leurs bibliothèques dans le sous-répertoire « lib » de la sortie +« out ». -The @code{asdf-build-system/source} system installs the packages in source -form, and can be loaded using any common lisp implementation, via ASDF. The -others, such as @code{asdf-build-system/sbcl}, install binary systems in the -format which a particular implementation understands. These build systems -can also be used to produce executable programs, or lisp images which -contain a set of packages pre-loaded. +Il est aussi supposé que l'union de toutes les dépendances d'un paquet n'a +pas de fichiers en conflit. -The build system uses naming conventions. For binary packages, the package -name should be prefixed with the lisp implementation, such as @code{sbcl-} -for @code{asdf-build-system/sbcl}. - -Additionally, the corresponding source package should be labeled using the -same convention as python packages (see @ref{Modules python}), using the -@code{cl-} prefix. - -For binary packages, each system should be defined as a Guix package. If -one package @code{origin} contains several systems, package variants can be -created in order to build all the systems. Source packages, which use -@code{asdf-build-system/source}, may contain several systems. - -In order to create executable programs and images, the build-side procedures -@code{build-program} and @code{build-image} can be used. They should be -called in a build phase after the @code{create-symlinks} phase, so that the -system which was just built can be used within the resulting image. -@code{build-program} requires a list of Common Lisp expressions to be passed -as the @code{#:entry-program} argument. - -If the system is not defined within its own @code{.asd} file of the same -name, then the @code{#:asd-file} parameter should be used to specify which -file the system is defined in. Furthermore, if the package defines a system -for its tests in a separate file, it will be loaded before the tests are run -if it is specified by the @code{#:test-asd-file} parameter. If it is not -set, the files @code{-tests.asd}, @code{-test.asd}, -@code{tests.asd}, and @code{test.asd} will be tried if they exist. - -If for some reason the package must be named in a different way than the -naming conventions suggest, the @code{#:asd-system-name} parameter can be -used to specify the name of the system. +Pour l'instant, la compilation croisée n'est pas supportées — donc pour +l'instant les bibliothèques et les fichiers d'en-têtes sont supposés être +des outils de l'hôte. @end defvr -@defvr {Scheme Variable} cargo-build-system -@cindex Rust programming language -@cindex Cargo (Rust build system) -This variable is exported by @code{(guix build-system cargo)}. It supports -builds of packages using Cargo, the build tool of the -@uref{https://www.rust-lang.org, Rust programming language}. +@defvr {Variable Scheme} asdf-build-system/source +@defvrx {Variable Scheme} asdf-build-system/sbcl +@defvrx {Variable Scheme} asdf-build-system/ecl + +Ces variables, exportées par @code{(guix build-system asdf)}, implémentent +les procédures de constructions pour les paquets en Common Lisp qui +utilisent @url{https://common-lisp.net/project/asdf/, ``ASDF''}. ASDF est +un dispositif de définition de systèmes pour les programmes et les +bibliothèques en Common Lisp. + +Le système @code{asdf-build-system/source} installe les paquets au format +source qui peuvent être chargés avec n'importe quelle implémentation de +common lisp, via ASDF. Les autres, comme @code{asdf-build-system/sbcl}, +installent des binaires au format qu'un implémentation particulière +comprend. Ces systèmes de constructions peuvent aussi être utilisés pour +produire des programmes exécutables ou des images lisp qui contiennent un +ensemble de paquets pré-chargés. + +Le système de construction utilise des conventions de nommage. Pour les +paquets binaires, le nom du paquet devrait être préfixé par l'implémentation +lisp, comme @code{sbcl-} pour @code{asdf-build-system/sbcl}. + +En plus, le paquet source correspondant devrait étiquetté avec la même +convention que les paquets python (voir @ref{Modules python}), avec le +préfixe @code{cl-}. + +Pour les paquets binaires, chaque système devrait être défini comme un +paquet Guix. Si un paquet @code{origine} contient plusieurs systèmes, on +peut créer des variantes du paquet pour construire tous les systèmes. Les +paquets sources, qui utilisent @code{asdf-build-system/source}, peuvent +contenir plusieurs systèmes. + +Pour créer des programmes exécutables et des images, les procédures côté +construction @code{build-program} et @code{build-image} peuvent être +utilisées. Elles devraient être appelées dans une phase de construction +après la phase @code{create-symlinks} pour que le système qui vient d'être +construit puisse être utilisé dans l'image créée. @code{build-program} +requiert une liste d'expressions Common Lisp dans l'argument +@code{#:entry-program}. + +Si le système n'est pas défini dans son propre fichier @code{.asd} du même +nom, alors le paramètre @code{#:asd-file} devrait être utilisé pour +spécifier dans quel fichier le système est défini. De plus, si le paquet +défini un système pour ses tests dans un fichier séparé, il sera chargé +avant que les tests ne soient lancés s'il est spécifié par le paramètre +@code{#:test-asd-file}. S'il n'est pas spécifié, les fichiers +@code{-tests.asd}, @code{-test.asd}, @code{tests.asd} et +@code{test.asd} seront testés. + +Si pour quelque raison que ce soit le paquet doit être nommé d'une manière +différente de ce que la convention de nommage suggère, le paramètre +@code{#:asd-system-name} peut être utilisé pour spécifier le nom du système. -In its @code{configure} phase, this build system replaces dependencies -specified in the @file{Carto.toml} file with inputs to the Guix package. -The @code{install} phase installs the binaries, and it also installs the -source code and @file{Cargo.toml} file. @end defvr -@defvr {Scheme Variable} cmake-build-system -This variable is exported by @code{(guix build-system cmake)}. It -implements the build procedure for packages using the -@url{http://www.cmake.org, CMake build tool}. +@defvr {Variable Scheme} cargo-build-system +@cindex Langage de programmation Rust +@cindex Cargo (système de construction Rust) +Cette variable est exportée par @code{(guix build-system cargo)}. Elle +supporte les construction de paquets avec Cargo, le système de construction +du @uref{https://www.rust-lang.org, langage de programmation Rust}. -It automatically adds the @code{cmake} package to the set of inputs. Which -package is used can be specified with the @code{#:cmake} parameter. - -The @code{#:configure-flags} parameter is taken as a list of flags passed to -the @command{cmake} command. The @code{#:build-type} parameter specifies in -abstract terms the flags passed to the compiler; it defaults to -@code{"RelWithDebInfo"} (short for ``release mode with debugging -information''), which roughly means that code is compiled with @code{-O2 --g}, as is the case for Autoconf-based packages by default. +Dans sa phase @code{configure}, ce système de construction remplace les +dépendances spécifiées dans le fichier @file{Cargo.toml} par des paquets +Guix. La phase @code{install} installe les binaires et installe aussi le +code source et le fichier @file{Cargo.toml}. @end defvr -@defvr {Scheme Variable} go-build-system -This variable is exported by @code{(guix build-system go)}. It implements a -build procedure for Go packages using the standard -@url{https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies, Go -build mechanisms}. +@defvr {Variable Scheme} cmake-build-system +Cette variable est exportée par @code{(guix build-system cmake)}. Elle +implémente la procédure de construction des paquets qui utilisent +l'@url{http://www.cmake.org, outils de construction CMake}. -The user is expected to provide a value for the key @code{#:import-path} -and, in some cases, @code{#:unpack-path}. The -@url{https://golang.org/doc/code.html#ImportPaths, import path} corresponds -to the file system path expected by the package's build scripts and any -referring packages, and provides a unique way to refer to a Go package. It -is typically based on a combination of the package source code's remote URI -and file system hierarchy structure. In some cases, you will need to unpack -the package's source code to a different directory structure than the one -indicated by the import path, and @code{#:unpack-path} should be used in -such cases. +Elle ajoute automatiquement le paquet @code{cmake} à l'ensemble des +entrées. Le paquet utilisé peut être spécifié par le paramètre +@code{#:cmake}. -Packages that provide Go libraries should be installed along with their -source code. The key @code{#:install-source?}, which defaults to @code{#t}, -controls whether or not the source code is installed. It can be set to -@code{#f} for packages that only provide executable files. +Le paramètre @code{#:configure-flags} est pris comme une liste de drapeaux à +passer à la commande @command{cmake}. Le paramètre @code{#:build-type} +spécifie en termes abstrait les drapeaux passés au compilateur ; sa valeur +par défaut est @code{"RelWithDebInfo"} (ce qui veut dire « mode public avec +les informations de débogage » en plus court), ce qui signifie en gros que +le code sera compilé avec @code{-O2 -g} comme pour les paquets autoconf par +défaut. @end defvr -@defvr {Scheme Variable} glib-or-gtk-build-system -This variable is exported by @code{(guix build-system glib-or-gtk)}. It is -intended for use with packages making use of GLib or GTK+. +@defvr {Variable Scheme} go-build-system +Cette variable est exportée par @code{(guix build-system go)}. Elle +implémente la procédure pour les paquets Go utilisant les +@url{https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies, +mécanismes de construction Go} standard. -This build system adds the following two phases to the ones defined by -@var{gnu-build-system}: +L'utilisateur doit fournir une valeur à la clef @code{#:import-path} et, +dans certains cas, @code{#:unpack-path}. Le +@url{https://golang.org/doc/code.html#ImportPaths, chemin d'import} +correspond au chemin dans le système de fichiers attendu par le script de +construction du paquet et les paquets qui s'y réfèrent et fournit une +manière unique de se référer à un paquet Go. Il est typiquement basé sur +une combinaison de l'URI du code source du paquet et d'une structure +hiérarchique du système de fichier. Dans certains cas, vous devrez extraire +le code source du paquet dans une structure de répertoires différente que +celle indiquée par le chemin d'import et @code{#:unpack-path} devrait être +utilisé dans ces cas-là. + +Les paquets qui fournissent des bibliothèques Go devraient être installées +avec leur code source. La clef @code{#:install-soruce?}, qui vaut @code{#t} +par défaut, contrôle l'installation du code source. Elle peut être mise à +@code{#f} pour les paquets qui ne fournissent que des fichiers exécutables. +@end defvr + +@defvr {Variable Scheme} glib-or-gtk-build-system +Cette variable est exportée par @code{(guix build-system glib-or-gtk)}. +Elle est conçue pour être utilisée par des paquets qui utilisent GLib ou +GTK+. + +Ce système de construction ajoute les deux phases suivantes à celles +définies par @var{gnu-build-system} : @table @code @item glib-or-gtk-wrap -The phase @code{glib-or-gtk-wrap} ensures that programs in @file{bin/} are -able to find GLib ``schemas'' and -@uref{https://developer.gnome.org/gtk3/stable/gtk-running.html, GTK+ -modules}. This is achieved by wrapping the programs in launch scripts that -appropriately set the @code{XDG_DATA_DIRS} and @code{GTK_PATH} environment -variables. +La phase @code{glib-or-gtk-wrap} s'assure que les programmes dans +@file{bin/} sont capable de trouver les « schemas » GLib et les +@uref{https://developer.gnome.org/gtk3/stable/gtk-running.html, modules +GTK+}. Ceci est fait en enveloppant les programmes dans des scripts de +lancement qui initialisent correctement les variables d'environnement +@code{XDG_DATA_DIRS} et @code{GTK_PATH}. -It is possible to exclude specific package outputs from that wrapping -process by listing their names in the -@code{#:glib-or-gtk-wrap-excluded-outputs} parameter. This is useful when -an output is known not to contain any GLib or GTK+ binaries, and where -wrapping would gratuitously add a dependency of that output on GLib and -GTK+. +Il est possible d'exclure des sorties spécifiques de ce processus +d'enveloppage en listant leur nom dans le paramètre +@code{#:glib-or-gtk-wrap-excluded-outputs}. C'est utile lorsqu'une sortie +est connue pour ne pas contenir de binaires GLib ou GTK+, et où l'enveloppe +ajouterait une dépendance inutile vers GLib et GTK+. @item glib-or-gtk-compile-schemas -The phase @code{glib-or-gtk-compile-schemas} makes sure that all +La phase @code{glib-or-gtk-compile-schemas} s'assure que tous les @uref{https://developer.gnome.org/gio/stable/glib-compile-schemas.html, -GSettings schemas} of GLib are compiled. Compilation is performed by the -@command{glib-compile-schemas} program. It is provided by the package -@code{glib:bin} which is automatically imported by the build system. The -@code{glib} package providing @command{glib-compile-schemas} can be -specified with the @code{#:glib} parameter. +schémas GSettings} de GLib sont compilés. La compilation est effectuée par +le programme @command{glib-compile-schemas}. Il est fournit par le paquet +@code{glib:bin} qui est automatiquement importé par le système de +construction. Le paquet @code{glib} qui fournit +@command{glib-compile-schemas} peut être spécifié avec le paramètre +@code{#:glib}. @end table -Both phases are executed after the @code{install} phase. +Ces deux phases sont exécutées après la phase @code{install}. @end defvr -@defvr {Scheme Variable} minify-build-system -This variable is exported by @code{(guix build-system minify)}. It -implements a minification procedure for simple JavaScript packages. +@defvr {Variable Scheme} minify-build-system +Cette variable est exportée par @code{(guix build-system minify)}. Elle +implémente une procédure de minification pour des paquets JavaScript +simples. -It adds @code{uglify-js} to the set of inputs and uses it to compress all -JavaScript files in the @file{src} directory. A different minifier package -can be specified with the @code{#:uglify-js} parameter, but it is expected -that the package writes the minified code to the standard output. +Elle ajoute @code{uglify-js} à l'ensemble des entrées et l'utilise pour +compresser tous les fichiers JavaScript du répertoire @file{src}. Un +minifieur différent peut être spécifié avec le paramètre @code{#:uglify-js} +mais il est attendu que ce paquet écrive le code minifié sur la sortie +standard. -When the input JavaScript files are not all located in the @file{src} -directory, the parameter @code{#:javascript-files} can be used to specify a -list of file names to feed to the minifier. +Lorsque les fichiers JavaScript d'entrée ne sont pas situés dans le +répertoire @file{src}, le paramètre @code{#:javascript-files} peut être +utilisé pour spécifier une liste de noms de fichiers à donner au minifieur. @end defvr -@defvr {Scheme Variable} ocaml-build-system -This variable is exported by @code{(guix build-system ocaml)}. It -implements a build procedure for @uref{https://ocaml.org, OCaml} packages, -which consists of choosing the correct set of commands to run for each -package. OCaml packages can expect many different commands to be run. This -build system will try some of them. +@defvr {Variable Scheme} ocaml-build-system +Cette variable est exportée par @code{(guix build-system ocaml)}. Elle +implémente une procédure de construction pour les paquets +@uref{https://ocaml.org, OCaml} qui consiste à choisir le bon ensemble de +commande à lancer pour chaque paquet. Les paquets OCaml peuvent demander +des commandes diverses pour être construit. Ce système de construction en +essaye certaines. -When the package has a @file{setup.ml} file present at the top-level, it -will run @code{ocaml setup.ml -configure}, @code{ocaml setup.ml -build} and -@code{ocaml setup.ml -install}. The build system will assume that this file -was generated by @uref{http://oasis.forge.ocamlcore.org/, OASIS} and will -take care of setting the prefix and enabling tests if they are not -disabled. You can pass configure and build flags with the -@code{#:configure-flags} and @code{#:build-flags}. The @code{#:test-flags} -key can be passed to change the set of flags used to enable tests. The -@code{#:use-make?} key can be used to bypass this system in the build and -install phases. +Lorsqu'un fichier @file{setup.ml} est présent dans le répertoire de plus +haut niveau, elle lancera @code{ocaml setup.ml -configure}, @code{ocaml +setup.ml -build} et @code{ocaml setup.ml -install}. Le système de +construction supposera que ces fichiers ont été générés par +@uref{http://oasis.forge.ocamlcore.org/, OASIS} et prendra soin +d'initialiser le préfixe et d'activer les tests s'ils ne sont pas +désactivés. Vous pouvez passer des drapeaux de configuration et de +consturction avec @code{#:configure-flags} et @code{#:build-flags}. La clef +@code{#:test-flags} peut être passée pour changer l'ensemble des drapeaux +utilisés pour activer les tests. La clef @code{#:use-make?} peut être +utilisée pour outrepasser ce système dans les phases de construction et +d'installation. -When the package has a @file{configure} file, it is assumed that it is a -hand-made configure script that requires a different argument format than in -the @code{gnu-build-system}. You can add more flags with the -@code{#:configure-flags} key. +Lorsque le paquet a un fichier @file{configure}, il est supposé qu'il s'agit +d'un script configure écrit à la main qui demande un format différent de +celui de @code{gnu-build-system}. Vous pouvez ajouter plus de drapeaux avec +la clef @code{#:configure-flags}. -When the package has a @file{Makefile} file (or @code{#:use-make?} is -@code{#t}), it will be used and more flags can be passed to the build and -install phases with the @code{#:make-flags} key. +Lorsque le paquet a un fichier @file{Makefile} (ou @code{#:use-make?} vaut +@code{#t}), il sera utilisé et plus de drapeaux peuvent être passés à la +construction et l'installation avec la clef @code{#:make-flags}. -Finally, some packages do not have these files and use a somewhat standard -location for its build system. In that case, the build system will run -@code{ocaml pkg/pkg.ml} or @code{ocaml pkg/build.ml} and take care of -providing the path to the required findlib module. Additional flags can be -passed via the @code{#:build-flags} key. Install is taken care of by -@command{opam-installer}. In this case, the @code{opam} package must be -added to the @code{native-inputs} field of the package definition. +Enfin, certains paquets n'ont pas ces fichiers mais utilisent un emplacement +plus ou moins standard pour leur système de construction. Dans ce cas, le +système de construction lancera @code{ocaml pkg/pkg.ml} ou +@code{pkg/build.ml} et prendra soin de fournir le chemin du module findlib +requis. Des drapeaux supplémentaires peuvent être passés via la clef +@code{#:bulid-flags}. L'installation se fait avec +@command{opam-installer}. Dans ce cas, le paquet @code{opam} doit être +ajouté au champ @code{native-inputs} de la définition du paquet. -Note that most OCaml packages assume they will be installed in the same -directory as OCaml, which is not what we want in guix. In particular, they -will install @file{.so} files in their module's directory, which is usually -fine because it is in the OCaml compiler directory. In guix though, these -libraries cannot be found and we use @code{CAML_LD_LIBRARY_PATH}. This -variable points to @file{lib/ocaml/site-lib/stubslibs} and this is where -@file{.so} libraries should be installed. +Remarquez que la plupart des paquets OCaml supposent qu'ils seront installés +dans le même répertoire qu'OCaml, ce qui n'est pas ce que nous voulons faire +dans Guix. En particulier, ils installeront leurs fichiers @file{.so} dans +leur propre répertoire de module, ce qui est normalement correct puisqu'il +s'agit du répertoire du compilateur OCaml. Dans Guix en revanche, le +bibliothèques ne peuvent pas y être trouvées et on utilise +@code{CAML_LD_LIBRARY_PATH} à la place. Cette variable pointe vers +@file{lib/ocaml/site-lib/stubslibs} et c'est là où les bibliothèques +@file{.so} devraient être installées. @end defvr -@defvr {Scheme Variable} python-build-system -This variable is exported by @code{(guix build-system python)}. It -implements the more or less standard build procedure used by Python -packages, which consists in running @code{python setup.py build} and then -@code{python setup.py install --prefix=/gnu/store/@dots{}}. +@defvr {Variable Scheme} python-build-system +Cette variable est exportée par @code{(guix build-system python)}. Elle +implémente la procédure de construction plus ou moins standarde utilisée +pour les paquets Python, qui consiste à lancer @code{python setup.py build} +puis @code{python setup.py install --prefix=/gnu/store/@dots{}}. -For packages that install stand-alone Python programs under @code{bin/}, it -takes care of wrapping these programs so that their @code{PYTHONPATH} -environment variable points to all the Python libraries they depend on. +Pour les paquets qui installent des programmes autonomes dans @code{bin/}, +elle prend soin d'envelopper ces binaires pour que leur variable +d'environnement @code{PYTHONPATH} pointe vers toutes les bibliothèques +Python dont ils dépendent. -Which Python package is used to perform the build can be specified with the -@code{#:python} parameter. This is a useful way to force a package to be -built for a specific version of the Python interpreter, which might be -necessary if the package is only compatible with a single interpreter -version. +Le paquet Python utilisé pour effectuer la construction peut être spécifié +avec le paramètre @code{#:python}. C'est une manière utile de forcer un +paquet à être construit avec une version particulière de l'interpréteur +python, ce qui peut être nécessaire si le paquet n'est compatible qu'avec +une version de l'interpréteur. -By default guix calls @code{setup.py} under control of @code{setuptools}, -much like @command{pip} does. Some packages are not compatible with -setuptools (and pip), thus you can disable this by setting the -@code{#:use-setuptools} parameter to @code{#f}. +Par défaut Guix appelle @code{setup.py} sous le contrôle de +@code{setuptools}, comme le fait @command{pip}. Certains paquets ne sont +pas compatibles avec setuptools (et pip), ainsi vous pouvez désactiver cela +en mettant le paramètre @code{#:use-setuptools} à @code{#f}. @end defvr -@defvr {Scheme Variable} perl-build-system -This variable is exported by @code{(guix build-system perl)}. It implements -the standard build procedure for Perl packages, which either consists in -running @code{perl Build.PL --prefix=/gnu/store/@dots{}}, followed by -@code{Build} and @code{Build install}; or in running @code{perl Makefile.PL -PREFIX=/gnu/store/@dots{}}, followed by @code{make} and @code{make install}, -depending on which of @code{Build.PL} or @code{Makefile.PL} is present in -the package distribution. Preference is given to the former if both -@code{Build.PL} and @code{Makefile.PL} exist in the package distribution. -This preference can be reversed by specifying @code{#t} for the -@code{#:make-maker?} parameter. +@defvr {Variable Scheme} perl-build-system +Cette variable est exportée par @code{(guix build-system perl)}. Elle +implémente la procédure de construction standarde des paquets Perl, qui +consiste soit à lancer @code{perl Build.PL --prefix=/gnu/store/@dots{}}, +suivi de @code{Build} et @code{Build install} ; ou à lancer @code{perl +Makefile.PL PREFIX=/gnu/store/@dots{}}, suivi de @code{make} et @code{make +install}, en fonction de la présence de @code{Build.PL} ou +@code{Makefile.PL} dans la distribution du paquet. Le premier a la +préférence si @code{Build.PL} et @code{Makefile.PL} existent tous deux dans +la distribution du paquet. Cette préférence peut être inversée en +spécifiant @code{#t} pour le paramètre @code{#:make-maker?}. -The initial @code{perl Makefile.PL} or @code{perl Build.PL} invocation -passes flags specified by the @code{#:make-maker-flags} or -@code{#:module-build-flags} parameter, respectively. +L'invocation initiale de @code{perl Makefile.PL} ou @code{perl Build.PL} +passe les drapeaux spécifiés par le paramètre @code{#:make-maker-flags} ou +@code{#:module-build-flags}, respectivement. -Which Perl package is used can be specified with @code{#:perl}. +Le paquet Perl utilisé peut être spécifié avec @code{#:perl}. @end defvr -@defvr {Scheme Variable} r-build-system -This variable is exported by @code{(guix build-system r)}. It implements -the build procedure used by @uref{http://r-project.org, R} packages, which -essentially is little more than running @code{R CMD INSTALL ---library=/gnu/store/@dots{}} in an environment where @code{R_LIBS_SITE} -contains the paths to all R package inputs. Tests are run after -installation using the R function @code{tools::testInstalledPackage}. +@defvr {Variable Scheme} r-build-system +Cette variable est exportée par @code{(guix build-system r)}. Elle +implémente la procédure de construction utilisée par les paquets +@uref{http://r-project.org, R} qui consiste à lancer à peine plus que +@code{R CMD INSTALL --library=/gnu/store/@dots{}} dans un environnement où +@code{R_LIBS_SITE} contient les chemins de toutes les entrées R. Les tests +sont lancés après l'installation avec la fonction R +@code{tools::testInstalledPackage}. @end defvr -@defvr {Scheme Variable} texlive-build-system -This variable is exported by @code{(guix build-system texlive)}. It is used -to build TeX packages in batch mode with a specified engine. The build -system sets the @code{TEXINPUTS} variable to find all TeX source files in -the inputs. +@defvr {Variable Scheme} texlive-build-system +Cette variable est exportée par @code{(guix build-system texlive)}. Elle +est utilisée pour construire des paquets TeX en mode batch avec le moteur +spécifié. Le système de construction initialise la variable +@code{TEXINPUTS} pour trouver tous les fichiers source TeX dans ses entrées. -By default it runs @code{luatex} on all files ending on @code{ins}. A -different engine and format can be specified with the @code{#:tex-format} -argument. Different build targets can be specified with the -@code{#:build-targets} argument, which expects a list of file names. The -build system adds only @code{texlive-bin} and @code{texlive-latex-base} -(both from @code{(gnu packages tex}) to the inputs. Both can be overridden -with the arguments @code{#:texlive-bin} and @code{#:texlive-latex-base}, -respectively. +Par défaut, elle lance @code{luatex} sur tous les fichiers qui se terminent +par @code{ins}. Un moteur et un format différent peuvent être spécifiés +avec l'argument @code{#:tex-format}. Plusieurs cibles de constructions +peuvent être indiquées avec l'argument @code{#:build-targets} qui attend une +liste de noms de fichiers. Le système de construction ajoute uniquement +@code{texlive-bin} et @code{texlive-latex-base} (de @code{(gnu packages +tex)} à la liste des entrées. Les deux peuvent être remplacés avec les +arguments @code{#:texlive-bin} et @code{#:texlive-latex-base}, +respectivement. -The @code{#:tex-directory} parameter tells the build system where to install -the built files under the texmf tree. +Le paramètre @code{#:tex-directory} dit au système de construction où +installer les fichiers construit dans l'arbre texmf. @end defvr -@defvr {Scheme Variable} ruby-build-system -This variable is exported by @code{(guix build-system ruby)}. It implements -the RubyGems build procedure used by Ruby packages, which involves running -@code{gem build} followed by @code{gem install}. +@defvr {Variable Scheme} ruby-build-system +Cette variable est exportée par @code{(guix build-system ruby)}. Elle +implémenter la procédure de construction RubyGems utilisée par les paquets +Ruby qui consiste à lancer @code{gem build} suivi de @code{gem install}. -The @code{source} field of a package that uses this build system typically -references a gem archive, since this is the format that Ruby developers use -when releasing their software. The build system unpacks the gem archive, -potentially patches the source, runs the test suite, repackages the gem, and -installs it. Additionally, directories and tarballs may be referenced to -allow building unreleased gems from Git or a traditional source release -tarball. +Le champ @code{source} d'un paquet qui utilise ce système de construction +référence le plus souvent une archive gem, puisque c'est le format utilisé +par les développeurs Ruby quand ils publient leur logiciel. Le système de +construction décompresse l'archive gem, éventuellement en corrigeant les +sources, lance la suite de tests, recompresse la gemme et l'installe. En +plus, des répertoires et des archives peuvent être référencés pour permettre +de construire des gemmes qui n'ont pas été publiées depuis Git ou une +archive de sources traditionnelle. -Which Ruby package is used can be specified with the @code{#:ruby} -parameter. A list of additional flags to be passed to the @command{gem} -command can be specified with the @code{#:gem-flags} parameter. +Le paquet Ruby utilisé peut être spécifié avec le paramètre @code{#:ruby}. +Une liste de drapeaux supplémentaires à passer à la commande @command{gem} +peut être spécifiée avec le paramètre @code{#:gem-flags}. @end defvr -@defvr {Scheme Variable} waf-build-system -This variable is exported by @code{(guix build-system waf)}. It implements -a build procedure around the @code{waf} script. The common -phases---@code{configure}, @code{build}, and @code{install}---are -implemented by passing their names as arguments to the @code{waf} script. +@defvr {Variable Scheme} waf-build-system +Cette variable est exportée par @code{(guix build-system waf)}. Elle +implémente une procédure de construction autour du script @code{waf}. Les +phases usuelles — @code{configure}, @code{build} et @code{install} — sont +implémentée en passant leur nom en argument au script @code{waf}. -The @code{waf} script is executed by the Python interpreter. Which Python -package is used to run the script can be specified with the @code{#:python} -parameter. +Le script @code{waf} est exécuté par l'interpréteur Python. Le paquet +Python utilisé pour lancer le script peut être spécifié avec le paramètre +@code{#:python}. @end defvr -@defvr {Scheme Variable} scons-build-system -This variable is exported by @code{(guix build-system scons)}. It -implements the build procedure used by the SCons software construction -tool. This build system runs @code{scons} to build the package, @code{scons -test} to run tests, and then @code{scons install} to install the package. +@defvr {Variable Scheme} scons-build-system +Cette variable est exportée par @code{(guix build-system scons)}. Elle +implémente la procédure de construction utilisée par l'outil de construction +SCons. Ce système de construction lance @code{scons} pour construire le +paquet, @code{scons test} pour lancer les tests puis @code{scons install} +pour installer le paquet. -Additional flags to be passed to @code{scons} can be specified with the -@code{#:scons-flags} parameter. The version of Python used to run SCons can -be specified by selecting the appropriate SCons package with the -@code{#:scons} parameter. +On peut passer des drapeaux supplémentaires à @code{scons} en les spécifiant +avec le paramètre @code{#:scons-flags}. La version de python utilisée pour +lancer SCons peut être spécifiée en sélectionnant le paquet SCons approprié +avec le paramètre @code{#:scons}. @end defvr -@defvr {Scheme Variable} haskell-build-system -This variable is exported by @code{(guix build-system haskell)}. It -implements the Cabal build procedure used by Haskell packages, which -involves running @code{runhaskell Setup.hs configure ---prefix=/gnu/store/@dots{}} and @code{runhaskell Setup.hs build}. Instead -of installing the package by running @code{runhaskell Setup.hs install}, to -avoid trying to register libraries in the read-only compiler store -directory, the build system uses @code{runhaskell Setup.hs copy}, followed -by @code{runhaskell Setup.hs register}. In addition, the build system -generates the package documentation by running @code{runhaskell Setup.hs -haddock}, unless @code{#:haddock? #f} is passed. Optional Haddock -parameters can be passed with the help of the @code{#:haddock-flags} -parameter. If the file @code{Setup.hs} is not found, the build system looks -for @code{Setup.lhs} instead. +@defvr {Variable Scheme} haskell-build-system +Cette variable est exportée par @code{(guix build-system haskell)}. Elle +implémente la procédure de construction Cabal utilisée par les paquets +Haskell, qui consiste à lancer @code{runhaskell Setup.hs configure +--prefix=/gnu/store/@dots{}} et @code{runhaskell Setup.hs build}. Plutôt +que d'installer le paquets en lançant @code{runhaskell Setup.hs install}, +pour éviter d'essayer d'enregistrer les bibliothèques dans le répertoire du +dépôt en lecture-seule du compilateur, le système de construction utilise +@code{runhaskell Setup.hs copy}, suivi de @code{runhaskell Setup.hs +register}. En plus, le système de construction génère la documentation du +paquet en lançant @code{runhaskell Setup.hs haddock}, à moins que +@code{#:haddock? #f} ne soit passé. Des paramètres facultatifs pour Haddock +peuvent être passés à l'aide du paramètre @code{#:haddock-flags}. Si le +fichier @code{Setup.hs} n'est pas trouvé, le système de construction +cherchera @code{Setup.lhs} à la place. -Which Haskell compiler is used can be specified with the @code{#:haskell} -parameter which defaults to @code{ghc}. +Le compilateur Haskell utilisé peut être spécifié avec le paramètre +@code{#:haskell} qui a pour valeur par défaut @code{ghc}. @end defvr -@defvr {Scheme Variable} dub-build-system -This variable is exported by @code{(guix build-system dub)}. It implements -the Dub build procedure used by D packages, which involves running @code{dub -build} and @code{dub run}. Installation is done by copying the files -manually. +@defvr {Variable Scheme} dub-build-system +Cette variable est exportée par @code{(guix build-system dub)}. Elle +implémente la procédure de construction Dub utilisée par les paquets D qui +consiste à lancer @code{dub build} et @code{dub run}. L'installation est +effectuée en copiant les fichiers manuellement. -Which D compiler is used can be specified with the @code{#:ldc} parameter -which defaults to @code{ldc}. +Le compilateur D utilisé peut être spécifié avec le paramètre @code{#:ldc} +qui vaut par défaut @code{ldc}. @end defvr -@defvr {Scheme Variable} emacs-build-system -This variable is exported by @code{(guix build-system emacs)}. It -implements an installation procedure similar to the packaging system of -Emacs itself (@pxref{Packages,,, emacs, The GNU Emacs Manual}). +@defvr {Variable Scheme} emacs-build-system +Cette variable est exportée par @code{(guix build-system emacs)}. Elle +implémente une procédure d'installation similaire au système de gestion de +paquet d'Emacs lui-même (@pxref{Packages,,, emacs, The GNU Emacs Manual}). -It first creates the @code{@var{package}-autoloads.el} file, then it byte -compiles all Emacs Lisp files. Differently from the Emacs packaging system, -the Info documentation files are moved to the standard documentation -directory and the @file{dir} file is deleted. Each package is installed in -its own directory under @file{share/emacs/site-lisp/guix.d}. +Elle crée d'abord le fichier @code{@var{package}-autoloads.el}, puis compile +tous les fichiers Emacs Lisp en bytecode. Contrairement au système de +gestion de paquets d'Emacs, les fichiers de documentation info sont déplacés +dans le répertoire standard et le fichier @file{dir} est supprimé. Chaque +paquet est installé dans son propre répertoire dans +@file{share/emacs/site-lisp/guix.d}. @end defvr -@defvr {Scheme Variable} font-build-system -This variable is exported by @code{(guix build-system font)}. It implements -an installation procedure for font packages where upstream provides -pre-compiled TrueType, OpenType, etc. font files that merely need to be -copied into place. It copies font files to standard locations in the output -directory. +@defvr {Variable Scheme} font-build-system +Cette variable est exportée par @code{(guix build-system font)}. Elle +implémente une procédure d'installation pour les paquets de polices où des +fichiers de polices TrueType, OpenType, etc sont fournis en amont et n'ont +qu'à être copiés à leur emplacement final. Elle copie les fichiers de +polices à l'emplacement standard dans le répertoire de sortie. @end defvr -@defvr {Scheme Variable} meson-build-system -This variable is exported by @code{(guix build-system meson)}. It -implements the build procedure for packages that use -@url{http://mesonbuild.com, Meson} as their build system. +@defvr {Variable Scheme} meson-build-system +Cette variable est exportée par @code{(guix build-system meson)}. Elle +implémente la procédure de construction des paquets qui utilisent +@url{http://mesonbuild.com, Meson} comme système de construction. -It adds both Meson and @uref{https://ninja-build.org/, Ninja} to the set of -inputs, and they can be changed with the parameters @code{#:meson} and -@code{#:ninja} if needed. The default Meson is @code{meson-for-build}, -which is special because it doesn't clear the @code{RUNPATH} of binaries and -libraries when they are installed. +Elle ajoute à la fois Meson et @uref{https://ninja-build.org/, Ninja} à +l'ensemble des entrées, et ils peuvent être modifiés avec les paramètres +@code{#:meson} et @code{#:ninja} si requis. Le Meson par défaut est +@code{meson-for-build}, qui est spécial parce qu'il ne nettoie pas le +@code{RUNPATH} des binaires et les bibliothèques qu'il installe. -This build system is an extension of @var{gnu-build-system}, but with the -following phases changed to some specific for Meson: +Ce système de construction est une extension de @var{gnu-build-system}, mais +avec les phases suivantes modifiées pour Meson : @table @code @item configure -The phase runs @code{meson} with the flags specified in -@code{#:configure-flags}. The flag @code{--build-type} is always set to -@code{plain} unless something else is specified in @code{#:build-type}. +La phase lance @code{meson} avec les drapeaux spécifiés dans +@code{#:configure-flags}. Le drapeau @code{--build-type} est toujours +initialisé à @code{plain} à moins que quelque chose d'autre ne soit spécifié +dans @code{#:build-type}. @item build -The phase runs @code{ninja} to build the package in parallel by default, but -this can be changed with @code{#:parallel-build?}. +La phase lance @code{ninja} pour construire le paquet en parallèle par +défaut, mais cela peut être changé avec @code{#:parallel-build?}. @item check -The phase runs @code{ninja} with the target specified in -@code{#:test-target}, which is @code{"test"} by default. +La phase lance @code{ninja} avec la cible spécifiée dans +@code{#:test-target}, qui est @code{"test"} par défaut. @item install -The phase runs @code{ninja install} and can not be changed. +La phase lance @code{ninja install} et ne peut pas être changée. @end table -Apart from that, the build system also adds the following phases: +En dehors de cela, le système de construction ajoute aussi la phase suivante +: @table @code @item fix-runpath -This phase ensures that all binaries can find the libraries they need. It -searches for required libraries in subdirectories of the package being -built, and adds those to @code{RUNPATH} where needed. It also removes -references to libraries left over from the build phase by -@code{meson-for-build}, such as test dependencies, that aren't actually -required for the program to run. +Cette phase s'assure que tous les binaire peuvent trouver les bibliothèques +dont ils ont besoin. Elle cherche les bibliothèques requises dans les +sous-répertoires du paquet en construction et les ajoute au @code{RUNPATH} +là où c'est nécessaire. Elle supprime aussi les références aux +bibliothèques laissées là par la phase de construction par +@code{meson-for-build} comme les dépendances des tests, qui ne sont pas +vraiment requises pour le programme. @item glib-or-gtk-wrap -This phase is the phase provided by @code{glib-or-gtk-build-system}, and it -is not enabled by default. It can be enabled with @code{#:glib-or-gtk?}. +Cette phase est la phase fournie par @code{glib-or-gtk-build-system} et +n'est pas activée par défaut. Elle peut l'être avec @code{#:glib-or-gtk?}. @item glib-or-gtk-compile-schemas -This phase is the phase provided by @code{glib-or-gtk-build-system}, and it -is not enabled by default. It can be enabled with @code{#:glib-or-gtk?}. +Cette phase est la phase fournie par @code{glib-or-gtk-build-system} et +n'est pas activée par défaut. Elle peut l'être avec @code{#:glib-or-gtk?}. @end table @end defvr -Lastly, for packages that do not need anything as sophisticated, a -``trivial'' build system is provided. It is trivial in the sense that it -provides basically no support: it does not pull any implicit inputs, and -does not have a notion of build phases. +Enfin, pour les paquets qui n'ont pas besoin de choses sophistiquées, un +système de construction « trivial » est disponible. Il est trivial dans le +sens où il ne fournit en gros aucun support : il n'apporte pas de dépendance +implicite, et n'a pas de notion de phase de construction. -@defvr {Scheme Variable} trivial-build-system -This variable is exported by @code{(guix build-system trivial)}. +@defvr {Variable Scheme} trivial-build-system +Cette variable est exportée par @code{(guix build-system trivial)}. -This build system requires a @code{#:builder} argument. This argument must -be a Scheme expression that builds the package output(s)---as with -@code{build-expression->derivation} (@pxref{Dérivations, +Ce système de construction requiert un argument @code{#:builder}. Cet +argument doit être une expression Scheme qui construit la sortie du paquet — +comme avec @code{build-expression->derivation} (@pxref{Dérivations, @code{build-expression->derivation}}). @end defvr @@ -4170,233 +4507,249 @@ be a Scheme expression that builds the package output(s)---as with @section Le dépôt @cindex dépôt -@cindex store items -@cindex store paths +@cindex éléments du dépôt +@cindex chemins dans le dépôt -Conceptually, the @dfn{store} is the place where derivations that have been -built successfully are stored---by default, @file{/gnu/store}. -Sub-directories in the store are referred to as @dfn{store items} or -sometimes @dfn{store paths}. The store has an associated database that -contains information such as the store paths referred to by each store path, -and the list of @emph{valid} store items---results of successful builds. -This database resides in @file{@var{localstatedir}/guix/db}, where -@var{localstatedir} is the state directory specified @i{via} -@option{--localstatedir} at configure time, usually @file{/var}. +Conceptuellement, le @dfn{dépôt} est l'endroit où les dérivations qui ont +bien été construites sont stockées — par défaut, @file{/gnu/store}. Les +sous-répertoires dans le dépôt s'appellent des @dfn{éléments du dépôt} ou +parfois des @dfn{chemins du dépôt}. Le dépôt a une base de données associée +qui contient des informations comme les chemins du dépôt auxquels se +réfèrent chaque chemin du dépôt et la liste des éléments du dépôt +@emph{valides} — les résultats d'une construction réussie. Cette base de +données se trouve dans @file{@var{localstatedir}/guix/db} où +@var{localstatedir} est le répertoire d'états spécifié @i{via} @option +{--localstatedir} à la configuration, typiquement @file{/var}. -The store is @emph{always} accessed by the daemon on behalf of its clients -(@pxref{Invoquer guix-daemon}). To manipulate the store, clients connect to -the daemon over a Unix-domain socket, send requests to it, and read the -result---these are remote procedure calls, or RPCs. +C'est @emph{toujours} le démon qui accède au dépôt pour le compte de ses +clients (@pxref{Invoquer guix-daemon}). Pour manipuler le dépôt, les +clients se connectent au démon par un socket Unix-domain, envoient une +requête dessus et lisent le résultat — ce sont des appels de procédures +distantes, ou RPC. -@quotation Note -Users must @emph{never} modify files under @file{/gnu/store} directly. This -would lead to inconsistencies and break the immutability assumptions of -Guix's functional model (@pxref{Introduction}). +@quotation Remarque +Les utilisateurs ne doivent @emph{jamais} modifier les fichiers dans +@file{/gnu/store} directement. Cela entraînerait des incohérences et +casserait l'hypothèse d'immutabilité du modèle fonctionnel de Guix +(@pxref{Introduction}). -@xref{Invoquer guix gc, @command{guix gc --verify}}, for information on how -to check the integrity of the store and attempt recovery from accidental -modifications. +@xref{Invoquer guix gc, @command{guix gc --verify}}, pour des informations +sur la manière de vérifier l'intégrité du dépôt et d'essayer de réparer des +modifications accidentelles. @end quotation -The @code{(guix store)} module provides procedures to connect to the daemon, -and to perform RPCs. These are described below. By default, -@code{open-connection}, and thus all the @command{guix} commands, connect to -the local daemon or to the URI specified by the @code{GUIX_DAEMON_SOCKET} -environment variable. +Le module @code{(guix store)} fournit des procédures pour se connecter au +démon et pour effectuer des RPC. Elles sont décrites plus bas. Par défaut, +@code{open-connection}, et donc toutes les commandes @command{guix} se +connectent au démon local ou à l'URI spécifiée par la variable +d'environnement @code{GUIX_DAEMON_SOCKET}. -@defvr {Environment Variable} GUIX_DAEMON_SOCKET -When set, the value of this variable should be a file name or a URI -designating the daemon endpoint. When it is a file name, it denotes a -Unix-domain socket to connect to. In addition to file names, the supported -URI schemes are: +@defvr {Variable d'environnement} GUIX_DAEMON_SOCKET +Lorsqu'elle est initialisée, la valeur de cette variable devrait être un nom +de fichier ou une URI qui désigne l'extrémité du démon. Lorsque c'est un +nom de fichier, il dénote un socket Unix-domain où se connecter. En plus +des noms de fichiers, les schémas d'URI supportés sont : @table @code @item file @itemx unix -These are for Unix-domain sockets. -@code{file:///var/guix/daemon-socket/socket} is equivalent to -@file{/var/guix/daemon-socket/socket}. +Pour les sockets Unix-domain. @code{file:///var/guix/daemon-socket/socket} +est équivalent à @file{/var/guix/daemon-socket/socket}. @item guix -@cindex daemon, remote access -@cindex remote access to the daemon -@cindex daemon, cluster setup -@cindex clusters, daemon setup -These URIs denote connections over TCP/IP, without encryption nor -authentication of the remote host. The URI must specify the host name and -optionally a port number (by default port 44146 is used): +@cindex démon, accès distant +@cindex accès distant au démon +@cindex démon, paramètres de grappes +@cindex grappes, paramètres du démon +Ces URI dénotent des connexions par TCP/IP, sans chiffrement ni +authentification de l'hôte distant. L'URI doit spécifier le nom d'hôte et +éventuellement un numéro de port (par défaut 44146) : @example guix://master.guix.example.org:1234 @end example -This setup is suitable on local networks, such as clusters, where only -trusted nodes may connect to the build daemon at -@code{master.guix.example.org}. +Ce paramétrage est adapté aux réseaux locaux, comme dans le cas de grappes +de serveurs, où seuls des noms de confiance peuvent se connecter au démon de +construction sur @code{master.guix.example.org}. -The @code{--listen} option of @command{guix-daemon} can be used to instruct -it to listen for TCP connections (@pxref{Invoquer guix-daemon, +L'option @code{--listen} de @command{guix-daemon} peut être utilisé pour lui +dire d'écouter des connexions TCP (@pxref{Invoquer guix-daemon, @code{--listen}}). @item ssh -@cindex SSH access to build daemons -These URIs allow you to connect to a remote daemon over SSH@footnote{This -feature requires Guile-SSH (@pxref{Prérequis}).}. A typical URL might -look like this: +@cindex accès SSH au démon de construction +Ces URI vous permettent de vous connecter au démon à distance à travers +SSH@footnote{Cette fonctionnalité requiert Guile-SSH +(@pxref{Prérequis}).}. @example ssh://charlie@@guix.example.org:22 @end example -As for @command{guix copy}, the usual OpenSSH client configuration files are -honored (@pxref{Invoquer guix copy}). +Comme pour @command{guix copy}, les fichiers de configuration du client +OpenSSH sont respectés (@pxref{Invoquer guix copy}). @end table -Additional URI schemes may be supported in the future. +Des schémas d'URI supplémentaires pourraient être supportés dans le futur. @c XXX: Remove this note when the protocol incurs fewer round trips @c and when (guix derivations) no longer relies on file system access. -@quotation Note -The ability to connect to remote build daemons is considered experimental as -of @value{VERSION}. Please get in touch with us to share any problems or -suggestions you may have (@pxref{Contribuer}). +@quotation Remarque +La capacité de se connecter à un démon de construction distant est considéré +comme expérimental à la version @value{VERSION}. Contactez-nous pour +partager vos problèmes ou des suggestions que vous pourriez avoir +(@pxref{Contribuer}). @end quotation @end defvr -@deffn {Scheme Procedure} open-connection [@var{uri}] [#:reserve-space? #t] -Connect to the daemon over the Unix-domain socket at @var{uri} (a string). -When @var{reserve-space?} is true, instruct it to reserve a little bit of -extra space on the file system so that the garbage collector can still -operate should the disk become full. Return a server object. +@deffn {Procédure Scheme} open-connection [@var{uri}] [#:reserve-space? #t] +Se connecte au démon à travers le socket Unix-domain à @var{uri} (une chaîne +de caractères). Lorsque @var{reserve-space?} est vrai, cela demande de +réserver un peu de place supplémentaire sur le système de fichiers pour que +le ramasse-miette puisse opérer au cas où le disque serait plein. Renvoie +un objet serveur. -@var{file} defaults to @var{%default-socket-path}, which is the normal -location given the options that were passed to @command{configure}. +@var{file} a pour valeur par défaut @var{%default-socket-path}, qui est +l'emplacement normal en fonction des options données à @command{configure}. @end deffn -@deffn {Scheme Procedure} close-connection @var{server} -Close the connection to @var{server}. +@deffn {Procédure Scheme} close-connection @var{serveur} +Ferme la connexion au @var{serveur}. @end deffn -@defvr {Scheme Variable} current-build-output-port -This variable is bound to a SRFI-39 parameter, which refers to the port -where build and error logs sent by the daemon should be written. +@defvr {Variable Scheme} current-build-output-port +Cette variable est liée à un paramètre SRFI-39, qui se réfère au port où les +journaux de construction et d'erreur envoyés par le démon devraient être +écrits. @end defvr -Procedures that make RPCs all take a server object as their first argument. +Les procédures qui font des RPC prennent toutes un objet serveur comme +premier argument. @deffn {Scheme Procedure} valid-path? @var{server} @var{path} -@cindex invalid store items -Return @code{#t} when @var{path} designates a valid store item and @code{#f} -otherwise (an invalid item may exist on disk but still be invalid, for -instance because it is the result of an aborted or failed build.) +@cindex éléments du dépôt invalides +Renvoie @code{#t} lorsque @var{path} désigne un élément du dépôt valide et +@code{#f} sinon (un élément invalide peut exister sur le disque mais rester +invalide, par exemple parce que c'est le résultat d'une construction annulée +ou échouée). -A @code{&nix-protocol-error} condition is raised if @var{path} is not -prefixed by the store directory (@file{/gnu/store}). +Une condition @code{&nix-protocol-error} est levée si @var{path} n'est pas +préfixée par le répertoire du dépôt (@file{/gnu/store}). @end deffn -@deffn {Scheme Procedure} add-text-to-store @var{server} @var{name} @var{text} [@var{references}] -Add @var{text} under file @var{name} in the store, and return its store -path. @var{references} is the list of store paths referred to by the -resulting store path. +@deffn {Procédure Scheme} add-text-to-store @var{server} @var{name} @var{text} [@var{references}] +Ajoute @var{text} dans le fichier @var{name} dans le dépôt et renvoie son +chemin. @var{references} est la liste des chemins du dépôt référencés par +le chemin du dépôt qui en résulte. @end deffn -@deffn {Scheme Procedure} build-derivations @var{server} @var{derivations} -Build @var{derivations} (a list of @code{} objects or derivation -paths), and return when the worker is done building them. Return @code{#t} -on success. +@deffn {Procédure Scheme} build-derivations @var{server} @var{derivations} +Construit @var{derivaton} (ne liste d'objets @code{} ou de +chemins de dérivations) et retourne quand le travailleur a fini de les +construire. Renvoie @code{#t} en cas de réussite. @end deffn -Note that the @code{(guix monads)} module provides a monad as well as -monadic versions of the above procedures, with the goal of making it more -convenient to work with code that accesses the store (@pxref{La monad du dépôt}). +Remarque que le module @code{(guix monads)} fournit une monad ainsi que des +version monadiques des procédures précédentes, avec le but de rendre plus +facile de travailler avec le code qui accède au dépôt (@pxref{La monad du dépôt}). @c FIXME -@i{This section is currently incomplete.} +@i{Cette section est actuellement incomplète.} @node Dérivations @section Dérivations -@cindex derivations -Low-level build actions and the environment in which they are performed are -represented by @dfn{derivations}. A derivation contains the following -pieces of information: +@cindex dérivations +Les actions de construction à bas-niveau et l'environnement dans lequel +elles sont effectuées sont représentés par des @dfn{dérivations}. Une +dérivation contient cet ensemble d'informations : @itemize @item -The outputs of the derivation---derivations produce at least one file or -directory in the store, but may produce more. +Les sorties de la dérivation — les dérivations produisent au moins un +fichier ou répertoire dans le dépôt, mais peuvent en produire plus. @item -The inputs of the derivations, which may be other derivations or plain files -in the store (patches, build scripts, etc.) +Les entrées de la dérivation, qui peuvent être d'autres dérivations ou des +fichiers dans le dépôt (correctifs, scripts de construction, etc). @item -The system type targeted by the derivation---e.g., @code{x86_64-linux}. +Le type de système ciblé par la dérivation — p.ex.@: @code{x86_64-linux}. @item -The file name of a build script in the store, along with the arguments to be -passed. +Le nom de fichier d'un script de construction dans le dépôt avec les +arguments à lui passer. @item -A list of environment variables to be defined. +Une liste de variables d'environnement à définir. @end itemize -@cindex derivation path -Derivations allow clients of the daemon to communicate build actions to the -store. They exist in two forms: as an in-memory representation, both on the -client- and daemon-side, and as files in the store whose name end in -@code{.drv}---these files are referred to as @dfn{derivation paths}. -Derivations paths can be passed to the @code{build-derivations} procedure to -perform the build actions they prescribe (@pxref{Le dépôt}). +@cindex chemin de dérivation +Les dérivations permettent aux client du démon de communiquer des actions de +construction dans le dépôt. Elles existent sous deux formes : en tant que +représentation en mémoire, à la fois côté client et démon, et en tant que +fichiers dans le dépôt dont le nom fini par @code{.drv} — on dit que ce sont +des @dfn{chemins de dérivations}. Les chemins de dérivations peuvent être +passés à la procédure @code{build-derivations} pour effectuer les actions de +construction qu'ils prescrivent (@pxref{Le dépôt}). -@cindex fixed-output derivations -Operations such as file downloads and version-control checkouts for which -the expected content hash is known in advance are modeled as -@dfn{fixed-output derivations}. Unlike regular derivations, the outputs of -a fixed-output derivation are independent of its inputs---e.g., a source -code download produces the same result regardless of the download method and -tools being used. +@cindex dérivations à sortie fixe +Des opérations comme le téléchargement de fichiers et la récupération de +sources gérés par un logiciel de contrôle de version pour lesquels le hash +du contenu est connu à l'avance sont modélisés par des @dfn{dérivations à +sortie fixe}. Contrairement aux dérivation habituelles, les sorties d'une +dérivation à sortie fixe sont indépendantes de ses entrées — p.ex.@: un code +source téléchargé produit le même résultat quelque soit la méthode de +téléchargement utilisée. -The @code{(guix derivations)} module provides a representation of -derivations as Scheme objects, along with procedures to create and otherwise -manipulate derivations. The lowest-level primitive to create a derivation -is the @code{derivation} procedure: +Le module @code{(guix derivations)} fournit une représentation des +dérivations comme des objets Scheme, avec des procédures pour créer et +manipuler des dérivations. La primitive de plus bas-niveau pour créer une +dérivation est la procédure @code{derivation} : -@deffn {Scheme Procedure} derivation @var{store} @var{name} @var{builder} @ - @var{args} [#:outputs '("out")] [#:hash #f] [#:hash-algo #f] @ [#:recursive? -#f] [#:inputs '()] [#:env-vars '()] @ [#:system (%current-system)] -[#:references-graphs #f] @ [#:allowed-references #f] -[#:disallowed-references #f] @ [#:leaked-env-vars #f] [#:local-build? #f] @ -[#:substitutable? #t] Construit une dérivation avec les arguments donnés et -renvie l'objet @code{} obtenu. +@deffn {Procédure Scheme} derivation @var{store} @var{name} @var{builder} @ + @var{args} [#:outputs '("out")] [#:hash #f] [#:hash-algo #f] @ +[#:recursive? #f] [#:inputs '()] [#:env-vars '()] @ [#:system +(%current-system)] [#:references-graphs #f] @ +[#:allowed-references #f] [#:disallowed-references #f] @ +[#:leaked-env-vars #f] [#:local-build? #f] @ +[#:substitutable? #t] -When @var{hash} and @var{hash-algo} are given, a @dfn{fixed-output -derivation} is created---i.e., one whose result is known in advance, such as -a file download. If, in addition, @var{recursive?} is true, then that fixed -output may be an executable file or a directory and @var{hash} must be the -hash of an archive containing this output. +Construit une dérivation avec les arguments donnés et renvie l'objet +@code{} obtenu. -When @var{references-graphs} is true, it must be a list of file name/store -path pairs. In that case, the reference graph of each store path is -exported in the build environment in the corresponding file, in a simple -text format. +Lorsque @var{hash} et @var{hash-algo} sont donnés, une @dfn{dérivation à +sortie fixe} est créée — c.-à-d.@: une dérivation dont le résultat est connu +à l'avance, comme dans le cas du téléchargement d'un fichier. Si, en plus, +@var{recursive?} est vrai, alors la sortie fixe peut être un fichier +exécutable ou un répertoire et @var{hash} doit être le hash d'une archive +contenant la sortie. -When @var{allowed-references} is true, it must be a list of store items or -outputs that the derivation's output may refer to. Likewise, -@var{disallowed-references}, if true, must be a list of things the outputs -may @emph{not} refer to. +Lorsque @var{references-graphs} est vrai, il doit s'agir d'une liste de +paires de noms de fichiers et de chemins du dépôt. Dans ce cas, le graphe +des références de chaque chemin du dépôt est exporté dans l'environnement de +construction dans le fichier correspondant, dans un simple format texte. -When @var{leaked-env-vars} is true, it must be a list of strings denoting -environment variables that are allowed to ``leak'' from the daemon's -environment to the build environment. This is only applicable to -fixed-output derivations---i.e., when @var{hash} is true. The main use is -to allow variables such as @code{http_proxy} to be passed to derivations -that download files. +Lorsque @var{allowed-references} est vrai, il doit s'agir d'une liste +d'éléments du dépôt ou de sorties auxquelles la sortie de la dérivations +peut faire référence. De même, @var{disallowed-references}, si vrai, doit +être une liste de choses que la sortie ne doit @emph{pas} référencer. -When @var{local-build?} is true, declare that the derivation is not a good -candidate for offloading and should rather be built locally (@pxref{Réglages du délestage du démon}). This is the case for small derivations where the costs of -data transfers would outweigh the benefits. +Lorsque @var{leaked-env-vars} est vrai, il doit s'agir d'une liste de +chaînes de caractères qui désignent les variables d'environnements qui +peuvent « fuiter » de l'environnement du démon dans l'environnement de +construction. Ce n'est possible que pour les dérivations à sortie fixe — +c.-à-d.@: lorsque @var{hash} est vrai. L'utilisation principale est de +permettre à des variables comme @code{http_proxy} d'être passées aux +dérivations qui téléchargent des fichiers. + +Lorsque @var{local-build?} est vrai, déclare que la dérivation n'est pas un +bon candidat pour le déchargement et devrait plutôt être construit +localement (@pxref{Réglages du délestage du démon}). C'est le cas des petites +dérivations où le coût du transfert de données est plus important que les +bénéfices. Lorsque que @var{substitutable?} est faux, déclare que les substituts de la sortie de la dérivation ne devraient pas être utilisés @@ -4405,16 +4758,16 @@ qui utilisent des détails du jeu d'instruction du CPU hôte. @end deffn @noindent -Here's an example with a shell script as its builder, assuming @var{store} -is an open connection to the daemon, and @var{bash} points to a Bash -executable in the store: +Voici un exemple avec un script shell comme constructeur, en supposant que +@var{store} est une connexion ouverte au démon et @var{bash} pointe vers un +exécutable Bash dans le dépôt : @lisp (use-modules (guix utils) (guix store) (guix derivations)) -(let ((builder ; add the Bash script to the store +(let ((builder ; ajoute le script Bash au dépôt (add-text-to-store store "my-builder.sh" "echo hello world > $out\n" '()))) (derivation store "foo" @@ -4424,11 +4777,11 @@ executable in the store: @result{} # /gnu/store/@dots{}-foo> @end lisp -As can be guessed, this primitive is cumbersome to use directly. A better -approach is to write build scripts in Scheme, of course! The best course of -action for that is to write the build code as a ``G-expression'', and to -pass it to @code{gexp->derivation}. For more information, -@pxref{G-Expressions}. +Comme on pourrait s'en douter, cette primitive est difficile à utiliser +directement. Une meilleure approche est d'écrire les scripts de +construction en Scheme, bien sur ! Le mieux à faire pour cela est d'écrire +le code de construction comme une « G-expression » et de la passer à +@code{gexp->derivation}. Pour plus d'informations, @pxref{G-Expressions}. Once upon a time, @code{gexp->derivation} did not exist and constructing derivations with build code written in Scheme was achieved with @@ -4940,6 +5293,23 @@ which comes in handy in this case: @dots{}))) @end example +@cindex extensions, for gexps +@findex with-extensions +In the same vein, sometimes you want to import not just pure-Scheme modules, +but also ``extensions'' such as Guile bindings to C libraries or other +``full-blown'' packages. Say you need the @code{guile-json} package +available on the build side, here's how you would do it: + +@example +(use-modules (gnu packages guile)) ;for 'guile-json' + +(with-extensions (list guile-json) + (gexp->derivation "something-with-json" + #~(begin + (use-modules (json)) + @dots{}))) +@end example + The syntactic form to construct gexps is summarized below. @deffn {Scheme Syntax} #~@var{exp} @@ -5023,6 +5393,17 @@ defined in @var{body}@dots{}, but not on those defined, say, in procedures called from @var{body}@dots{}. @end deffn +@deffn {Scheme Syntax} with-extensions @var{extensions} @var{body}@dots{} +Mark the gexps defined in @var{body}@dots{} as requiring @var{extensions} in +their build and execution environment. @var{extensions} is typically a list +of package objects such as those defined in the @code{(gnu packages guile)} +module. + +Concretely, the packages listed in @var{extensions} are added to the load +path while compiling imported modules in @var{body}@dots{}; they are also +added to the load path of the gexp returned by @var{body}@dots{}. +@end deffn + @deffn {Scheme Procedure} gexp? @var{obj} Return @code{#t} if @var{obj} is a G-expression. @end deffn @@ -5035,15 +5416,15 @@ monads.) @deffn {Monadic Procedure} gexp->derivation @var{name} @var{exp} @ [#:system (%current-system)] [#:target #f] [#:graft? #t] @ [#:hash #f] [#:hash-algo #f] @ [#:recursive? #f] [#:env-vars '()] [#:modules '()] @ -[#:module-path @var{%load-path}] @ [#:references-graphs #f] -[#:allowed-references #f] @ [#:disallowed-references #f] @ -[#:leaked-env-vars #f] @ [#:script-name (string-append @var{name} -"-builder")] @ [#:deprecation-warnings #f] @ [#:local-build? #f] -[#:substitutable? #t] [#:guile-for-build #f] Return a derivation @var{name} -that runs @var{exp} (a gexp) with @var{guile-for-build} (a derivation) on -@var{system}; @var{exp} is stored in a file called @var{script-name}. When -@var{target} is true, it is used as the cross-compilation target triplet for -packages referred to by @var{exp}. +[#:module-path @var{%load-path}] @ [#:effective-version "2.2"] @ +[#:references-graphs #f] [#:allowed-references #f] @ +[#:disallowed-references #f] @ [#:leaked-env-vars #f] @ [#:script-name +(string-append @var{name} "-builder")] @ [#:deprecation-warnings #f] @ +[#:local-build? #f] [#:substitutable? #t] [#:guile-for-build #f] Return a +derivation @var{name} that runs @var{exp} (a gexp) with +@var{guile-for-build} (a derivation) on @var{system}; @var{exp} is stored in +a file called @var{script-name}. When @var{target} is true, it is used as +the cross-compilation target triplet for packages referred to by @var{exp}. @var{modules} is deprecated in favor of @code{with-imported-modules}. Its meaning is to make @var{modules} available in the evaluation context of @@ -5052,6 +5433,10 @@ meaning is to make @var{modules} available in the evaluation context of the load path during the execution of @var{exp}---e.g., @code{((guix build utils) (guix build gnu-build-system))}. +@var{effective-version} determines the string to use when adding extensions +of @var{exp} (see @code{with-extensions}) to the search path---e.g., +@code{"2.2"}. + @var{graft?} determines whether packages referred to by @var{exp} should be grafted when applicable. @@ -5188,7 +5573,7 @@ The resulting file holds references to all the dependencies of @var{exp} or a subset thereof. @end deffn -@deffn {Scheme Procedure} scheme-file @var{name} @var{exp} [#:splice? #f] +@deffn {Scheme Procedure} derivation @var{store} @var{name} @var{builder} @ Return an object representing the Scheme file @var{name} that contains @var{exp}. @@ -5311,10 +5696,11 @@ an associated gexp compiler, such as a @code{}. @node Utilitaires @chapter Utilitaires -This section describes Guix command-line utilities. Some of them are -primarily targeted at developers and users who write new package -definitions, while others are more generally useful. They complement the -Scheme programming interface of Guix in a convenient way. +cette section décrit les utilitaires en ligne de commande de Guix. certains +sont surtout faits pour les développeurs qui écrivent de nouvelles +définitions de paquets tandis que d'autres sont plus utiles pour une +utilisation générale. Ils complètent l'interface de programmation Scheme de +Guix d'une manière pratique. @menu * Invoquer guix build:: Construire des paquets depuis la ligne de @@ -5340,7 +5726,7 @@ Scheme programming interface of Guix in a convenient way. @node Invoquer guix build @section Invoquer @command{guix build} -@cindex package building +@cindex construction de paquets @cindex @command{guix build} The @command{guix build} command builds packages or derivations and their dependencies, and prints the resulting store paths. Note that it does not @@ -5348,7 +5734,7 @@ modify the user's profile---this is the job of the @command{guix package} command (@pxref{Invoquer guix package}). Thus, it is mainly useful for distribution developers. -The general syntax is: +La syntaxe générale est : @example guix build @var{options} @var{package-or-derivation}@dots{} @@ -5447,9 +5833,9 @@ tant qu'ils sont signés par une clef autorisée par l'administrateur système When @var{urls} is the empty string, substitutes are effectively disabled. @item --no-substitutes -Ne pas utiliser de substitut pour les résultats de la -construction. C'est-à-dire, toujours construire localement plutôt que de -permettre le téléchargement de binaires pré-construits (@pxref{Substituts}). +Ne pas utiliser de substitut pour les résultats de la construction. +C'est-à-dire, toujours construire localement plutôt que de permettre le +téléchargement de binaires pré-construits (@pxref{Substituts}). @item --no-grafts Do not ``graft'' packages. In practice, this means that package updates @@ -5476,16 +5862,17 @@ Do not attempt to offload builds @i{via} the ``build hook'' of the daemon (@pxref{Réglages du délestage du démon}). That is, always build things locally instead of offloading builds to remote machines. -@item --max-silent-time=@var{seconds} -When the build or substitution process remains silent for more than -@var{seconds}, terminate it and report a build failure. +@item --max-silent-time=@var{secondes} +Lorsque le processus de construction ou de substitution restent silencieux +pendant plus de @var{secondes}, le terminer et rapporter une erreur de +construction. By default, the daemon's setting is honored (@pxref{Invoquer guix-daemon, @code{--max-silent-time}}). -@item --timeout=@var{seconds} -Likewise, when the build or substitution process lasts for more than -@var{seconds}, terminate it and report a build failure. +@item --timeout=@var{secondes} +De même, lorsque le processus de construction ou de substitution dure plus +de @var{secondes}, le terminer et rapporter une erreur de construction. By default, the daemon's setting is honored (@pxref{Invoquer guix-daemon, @code{--timeout}}). @@ -5640,7 +6027,7 @@ log is kept in @file{/var} (or similar) and can always be retrieved using the @option{--log-file} option. @item --file=@var{file} -@itemx -f @var{file} +@itemx -f @var{fichier} Build the package or derivation that the code within @var{file} evaluates to. @@ -5722,12 +6109,12 @@ The following derivations will be built: @end table -@item --system=@var{system} -@itemx -s @var{system} -Attempt to build for @var{system}---e.g., @code{i686-linux}---instead of the -system type of the build host. +@item --system=@var{système} +@itemx -s @var{système} +Tenter de construire pour le @var{système} — p.@: ex.@: @code{i686-linux} — +plutôt que pour le type de système de l'hôte de construction. -@quotation Note +@quotation Remarque The @code{--system} flag is for @emph{native} compilation and must not be confused with cross-compilation. See @code{--target} below for information on cross-compilation. @@ -5735,11 +6122,18 @@ on cross-compilation. An example use of this is on Linux-based systems, which can emulate different personalities. For instance, passing @code{--system=i686-linux} -on an @code{x86_64-linux} system allows you to build packages in a complete +on an @code{x86_64-linux} system or @code{--system=armhf-linux} on an +@code{aarch64-linux} system allows you to build packages in a complete 32-bit environment. +@quotation Remarque +Building for an @code{armhf-linux} system is unconditionally enabled on +@code{aarch64-linux} machines, although certain aarch64 chipsets do not +allow for this functionality, notably the ThunderX. +@end quotation + Similarly, when transparent emulation with QEMU and @code{binfmt_misc} is -enabled (@pxref{Virtualization Services, @code{qemu-binfmt-service-type}}), +enabled (@pxref{Services de virtualisation, @code{qemu-binfmt-service-type}}), you can build for any system for which a QEMU @code{binfmt_misc} handler is installed. @@ -5747,10 +6141,10 @@ Builds for a system other than that of the machine you are using can also be offloaded to a remote machine of the right architecture. @xref{Réglages du délestage du démon}, for more information on offloading. @item --target=@var{triplet} -@cindex cross-compilation -Cross-build for @var{triplet}, which must be a valid GNU triplet, such as -@code{"mips64el-linux-gnu"} (@pxref{Specifying target triplets, GNU -configuration triplets,, autoconf, Autoconf}). +@cindex compilation croisée +Effectuer une compilation croisée pour @var{triplet} qui doit être un +triplet GNU valide, comme @code{"mips64el-linux-gnu"} (@pxref{Specifying +target triplets, GNU configuration triplets,, autoconf, Autoconf}). @anchor{build-check} @item --check @@ -5765,13 +6159,13 @@ installés sont authentiques (@pxref{Substituts}) ou si le résultat de la construction d'un paquet est déterministe. @xref{Invoquer guix challenge} pour plus d'informations et pour les outils. -When used in conjunction with @option{--keep-failed}, the differing output -is kept in the store, under @file{/gnu/store/@dots{}-check}. This makes it -easy to look for differences between the two results. +Lorsqu'utilisé avec @option{--keep-failed}, la sourtie différente est gardée +dans le dépôt sous @file{/gnu/store/@dots{}-check}. Cela rend plus facile +l'étude des différences entre les deux résultats. @item --repair @cindex repairing store items -@cindex corruption, recovering from +@cindex corruption, récupérer de Attempt to repair the specified store items, if they are corrupt, by re-downloading or rebuilding them. @@ -5984,7 +6378,7 @@ primarily a convenience tool for anyone contributing to the distribution: it computes the cryptographic hash of a file, which can be used in the definition of a package (@pxref{Définition des paquets}). -The general syntax is: +La syntaxe générale est : @example guix hash @var{option} @var{file} @@ -6049,7 +6443,7 @@ demand. The command knows of a few repositories from which it can ``import'' package metadata. The result is a package definition, or a template thereof, in the format we know (@pxref{Définition des paquets}). -The general syntax is: +La syntaxe générale est : @example guix import @var{importer} @var{options}@dots{} @@ -6380,6 +6774,12 @@ package signatures,, emacs, The GNU Emacs Manual}). @uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa} identifier. @end itemize + +@item --recursive +@itemx -r +Traverse the dependency graph of the given upstream package recursively and +generate package expressions for all those packages that are not yet in +Guix. @end table @item crate @@ -6454,7 +6854,7 @@ The following options are supported: @item --expression=@var{expr} @itemx -e @var{expr} -Consider the package @var{expr} evaluates to. +Considérer le paquet évalué par @var{expr}. This is useful to precisely refer to a package, as in this example: @@ -6492,8 +6892,8 @@ The @code{non-core} subset refers to the remaining packages. It is typically useful in cases where an update of the core packages would be inconvenient. -@item --manifest=@var{file} -@itemx -m @var{file} +@item --manifest=@var{fichier} +@itemx -m @var{fichier} Select all the packages from the manifest in @var{file}. This is useful to check if any packages of the user manifest can be updated. @@ -6687,15 +7087,33 @@ where @code{CVE-YYYY-ABCD} is the CVE identifier---e.g., Package developers can specify in package recipes the @uref{https://nvd.nist.gov/cpe.cfm,Common Platform Enumeration (CPE)} name -and version of the package when they differ from the name that Guix uses, as -in this example: +and version of the package when they differ from the name or version that +Guix uses, as in this example: @example (package (name "grub") ;; @dots{} ;; CPE calls this package "grub2". - (properties '((cpe-name . "grub2")))) + (properties '((cpe-name . "grub2") + (cpe-version . "2.3"))) +@end example + +@c See . +Some entries in the CVE database do not specify which version of a package +they apply to, and would thus ``stick around'' forever. Package developers +who found CVE alerts and verified they can be ignored can declare them as in +this example: + +@example +(package + (name "t1lib") + ;; @dots{} + ;; These CVEs no longer apply and can be safely ignored. + (properties `((lint-hidden-cve . ("CVE-2011-0433" + "CVE-2011-1553" + "CVE-2011-1554" + "CVE-2011-5244"))))) @end example @item formatting @@ -6703,7 +7121,7 @@ Warn about obvious source code formatting issues: trailing white space, use of tabulations, etc. @end table -The general syntax is: +La syntaxe générale est : @example guix lint @var{options} @var{package}@dots{} @@ -6738,18 +7156,22 @@ dependency added to a package, or the impact of using a single output for a package that could easily be split (@pxref{Des paquets avec plusieurs résultats}). Such are the typical issues that @command{guix size} can highlight. -The command can be passed a package specification such as @code{gcc@@4.8} or -@code{guile:debug}, or a file name in the store. Consider this example: +The command can be passed one or more package specifications such as +@code{gcc@@4.8} or @code{guile:debug}, or a file name in the store. +Consider this example: @example $ guix size coreutils store item total self -/gnu/store/@dots{}-coreutils-8.23 70.0 13.9 19.8% -/gnu/store/@dots{}-gmp-6.0.0a 55.3 2.5 3.6% -/gnu/store/@dots{}-acl-2.2.52 53.7 0.5 0.7% -/gnu/store/@dots{}-attr-2.4.46 53.2 0.3 0.5% -/gnu/store/@dots{}-gcc-4.8.4-lib 52.9 15.7 22.4% -/gnu/store/@dots{}-glibc-2.21 37.2 37.2 53.1% +/gnu/store/@dots{}-gcc-5.5.0-lib 60.4 30.1 38.1% +/gnu/store/@dots{}-glibc-2.27 30.3 28.8 36.6% +/gnu/store/@dots{}-coreutils-8.28 78.9 15.0 19.0% +/gnu/store/@dots{}-gmp-6.1.2 63.1 2.7 3.4% +/gnu/store/@dots{}-bash-static-4.4.12 1.5 1.5 1.9% +/gnu/store/@dots{}-acl-2.2.52 61.1 0.4 0.5% +/gnu/store/@dots{}-attr-2.4.47 60.6 0.2 0.3% +/gnu/store/@dots{}-libcap-2.25 60.5 0.2 0.2% +total: 78.9 MiB @end example @cindex closure @@ -6769,20 +7191,24 @@ last column shows the ratio of the size of the item itself to the space occupied by all the items listed here. In this example, we see that the closure of Coreutils weighs in at -70@tie{}MiB, half of which is taken by libc. (That libc represents a large -fraction of the closure is not a problem @i{per se} because it is always -available on the system anyway.) +79@tie{}MiB, most of which is taken by libc and GCC's run-time support +libraries. (That libc and GCC's libraries represent a large fraction of the +closure is not a problem @i{per se} because they are always available on the +system anyway.) -When the package passed to @command{guix size} is available in the store, -@command{guix size} queries the daemon to determine its dependencies, and -measures its size in the store, similar to @command{du -ms --apparent-size} -(@pxref{du invocation,,, coreutils, GNU Coreutils}). +When the package(s) passed to @command{guix size} are available in the +store@footnote{More precisely, @command{guix size} looks for the +@emph{ungrafted} variant of the given package(s), as returned by @code{guix +build @var{package} --no-grafts}. @xref{Mises à jour de sécurité}, for information +on grafts.}, @command{guix size} queries the daemon to determine its +dependencies, and measures its size in the store, similar to @command{du -ms +--apparent-size} (@pxref{du invocation,,, coreutils, GNU Coreutils}). -Lorsque le paquet donné n'est @emph{pas} dans le dépôt, @command{guix size} -rapporte les informations en se basant sur les substituts disponibles +Lorsque les paquets donnés ne sont @emph{pas} dans le dépôt, @command{guix +size} rapporte les informations en se basant sur les substituts disponibles (@pxref{Substituts}). Cela permet de profiler l'utilisation du disque des -éléments du dépôt qui ne sont pas sur le disque, mais seulement disponibles -à distance. +éléments du dépôt même s'ils ne sont pas sur le disque, mais disponibles à +distance. You can also specify several package names: @@ -6833,8 +7259,8 @@ This option requires that installed and visible in Guile's module search path. When that is not the case, @command{guix size} fails as it tries to load it. -@item --system=@var{system} -@itemx -s @var{system} +@item --system=@var{système} +@itemx -s @var{système} Consider packages for @var{system}---e.g., @code{x86_64-linux}. @end table @@ -6844,7 +7270,7 @@ Consider packages for @var{system}---e.g., @code{x86_64-linux}. @cindex DAG @cindex @command{guix graph} -@cindex package dependencies +@cindex dépendances des paquets Packages and their dependencies form a @dfn{graph}, specifically a directed acyclic graph (DAG). It can quickly become difficult to have a mental model of the package DAG, so the @command{guix graph} command provides a visual @@ -6929,7 +7355,7 @@ dependencies. @item bag-with-origins Similar to @code{bag}, but also showing origins and their dependencies. -@item derivation +@item dérivation This is the most detailed representation: It shows the DAG of derivations (@pxref{Dérivations}) and plain store items. Compared to the above representation, many additional nodes are visible, including build scripts, @@ -7007,7 +7433,7 @@ Currently, the available backends are Graphviz and d3.js. @item --expression=@var{expr} @itemx -e @var{expr} -Consider the package @var{expr} evaluates to. +Considérer le paquet évalué par @var{expr}. This is useful to precisely refer to a package, as in this example: @@ -7029,7 +7455,7 @@ reproducible development environments without polluting their package profile. The @command{guix environment} tool takes one or more packages, builds all of their inputs, and creates a shell environment to use them. -The general syntax is: +La syntaxe générale est : @example guix environment @var{options} @var{package}@dots{} @@ -7129,7 +7555,7 @@ mounted: guix environment --ad-hoc --container guile -- guile @end example -@quotation Note +@quotation Remarque The @code{--container} option requires Linux-libre 3.19 or newer. @end quotation @@ -7186,15 +7612,15 @@ guix environment --ad-hoc -e '(list (@@ (gnu packages bash) bash) "include")' Create an environment for the package or list of packages that the code within @var{file} evaluates to. -As an example, @var{file} might contain a definition like this -(@pxref{Définition des paquets}): +Par exemple, @var{fichier} peut contenir une définition comme celle-ci +(@pxref{Définition des paquets}) : @example @verbatiminclude environment-gdb.scm @end example -@item --manifest=@var{file} -@itemx -m @var{file} +@item --manifest=@var{fichier} +@itemx -m @var{fichier} Create an environment for the packages contained in the manifest object returned by the Scheme code in @var{file}. @@ -7236,8 +7662,8 @@ contain package inputs. @item --search-paths Display the environment variable definitions that make up the environment. -@item --system=@var{system} -@itemx -s @var{system} +@item --system=@var{système} +@itemx -s @var{système} Attempt to build for @var{system}---e.g., @code{i686-linux}. @item --container @@ -7352,7 +7778,7 @@ privilèges le plus tôt possible. The signing key pair must be generated before @command{guix publish} is launched, using @command{guix archive --generate-key} (@pxref{Invoquer guix archive}). -The general syntax is: +La syntaxe générale est : @example guix publish @var{options}@dots{} @@ -7529,7 +7955,7 @@ If your host distro uses the systemd init system: @end example @item -If your host distro uses the Upstart init system: +Si votre distribution hôte utilise le système d'initialisation Upstart : @example # ln -s ~root/.guix-profile/lib/upstart/system/guix-publish.conf /etc/init/ @@ -7543,7 +7969,7 @@ Otherwise, proceed similarly with your distro's init system. @node Invoquer guix challenge @section Invoking @command{guix challenge} -@cindex reproducible builds +@cindex constructions reproductibles @cindex verifiable builds @cindex @command{guix challenge} @cindex challenge @@ -7647,7 +8073,7 @@ $ guix challenge @var{package} where @var{package} is a package specification such as @code{guile@@2.0} or @code{glibc:debug}. -The general syntax is: +La syntaxe générale est : @example guix challenge @var{options} [@var{packages}@dots{}] @@ -7712,7 +8138,7 @@ retrieving must be in @file{/etc/guix/acl} so it is accepted by your own daemon. @xref{Invoquer guix archive}, for more information about store item authentication. -The general syntax is: +La syntaxe générale est : @example guix copy [--to=@var{spec}|--from=@var{spec}] @var{items}@dots{} @@ -7740,7 +8166,7 @@ unless @option{--dry-run} was specified. Common build options are supported @section Invoking @command{guix container} @cindex container @cindex @command{guix container} -@quotation Note +@quotation Remarque As of version @value{VERSION}, this tool is experimental. The interface is subject to radical change in the future. @end quotation @@ -7749,7 +8175,7 @@ The purpose of @command{guix container} is to manipulate processes running within an isolated environment, commonly known as a ``container'', typically created by the @command{guix environment} (@pxref{Invoquer guix environment}) and @command{guix system container} (@pxref{Invoquer guix system}) commands. -The general syntax is: +La syntaxe générale est : @example guix container @var{action} @var{options}@dots{} @@ -7853,13 +8279,13 @@ specific package sets. The available options are listed below. When this option is omitted, the default set of substitute servers is queried. -@item --system=@var{system} -@itemx -s @var{system} +@item --system=@var{système} +@itemx -s @var{système} Query substitutes for @var{system}---e.g., @code{aarch64-linux}. This option can be repeated, in which case @command{guix weather} will query substitutes for several system types. -@item --manifest=@var{file} +@item --manifest=@var{fichier} Instead of querying substitutes for all the packages, only ask for those specified in @var{file}. @var{file} must contain a @dfn{manifest}, as with the @code{-m} option of @command{guix package} (@pxref{Invoquer guix package}). @@ -7954,7 +8380,7 @@ on a machine. The Guix package manager can also be installed on top of a running GNU/Linux system, @pxref{Installation}. @ifinfo -@quotation Note +@quotation Remarque @c This paragraph is for people reading this from tty2 of the @c installation image. You are reading this documentation with an Info reader. For details on how @@ -7974,7 +8400,7 @@ available. d'installation. * Préparer l'installation:: Réseau, partitionnement, etc. * Effectuer l'installation:: Pour de vrai. -* Installer GuixSD dans une VM:: Jouer avec GuixSD. +* Installer GuixSD dans une VM:: Jouer avec GuixSD@. * Construire l'image d'installation:: D'où vient tout cela. @end menu @@ -8012,8 +8438,7 @@ More than 6,500 packages are available, but you might occasionally find that a useful package is missing. @item -GNOME, Xfce, LXDE, and Enlightenment are available (@pxref{Desktop -Services}), as well as a number of X11 window managers. However, some +GNOME, Xfce, LXDE, and Enlightenment are available (@pxref{Services de bureaux}), as well as a number of X11 window managers. However, some graphical applications may be missing, as well as KDE. @end itemize @@ -8082,8 +8507,8 @@ $ wget ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}. $ gpg --verify guixsd-install-@value{VERSION}.@var{system}.iso.xz.sig @end example -If that command fails because you do not have the required public key, then -run this command to import it: +Si cette commande échoue parce que vous n'avez pas la clef publique requise, +lancez cette commande pour l'importer : @example $ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} @@ -8091,7 +8516,7 @@ $ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID} @noindent @c end duplication -and rerun the @code{gpg --verify} command. +et relancez la commande @code{gpg --verify}. This image contains the tools necessary for an installation. It is meant to be copied @emph{as is} to a large-enough USB stick or DVD. @@ -8166,7 +8591,7 @@ info-stnd, Stand-alone GNU Info}). The installation system runs the GPM mouse daemon, which allows you to select text with the left mouse button and to paste it with the middle button. -@quotation Note +@quotation Remarque Installation requires access to the Internet so that any missing dependencies of your system configuration can be downloaded. See the ``Networking'' section below. @@ -8553,6 +8978,22 @@ Have a look at @file{gnu/system/install.scm} in the source tree, and see also @ref{Invoquer guix system} for more information about the installation image. +@subsection Construire l'image d'installation pour les cartes ARM + +Many ARM boards require a specific variant of the +@uref{http://www.denx.de/wiki/U-Boot/, U-Boot} bootloader. + +If you build a disk image and the bootloader is not available otherwise (on +another boot drive etc), it's advisable to build an image that includes the +bootloader, specifically: + +@example +guix system disk-image --system=armhf-linux -e '((@@ (gnu system install) os-with-u-boot) (@@ (gnu system install) installation-os) "A20-OLinuXino-Lime2")' +@end example + +@code{A20-OLinuXino-Lime2} is the name of the board. If you specify an +invalid board, a list of possible boards will be printed. + @node Configuration système @section Configuration système @@ -8579,7 +9020,8 @@ instantiated. Then we show how this mechanism can be extended, for instance to support new system services. @menu -* Utiliser le système de configuration:: Personnaliser votre système GNU. +* Utiliser le système de configuration:: Personnaliser votre système + GNU@. * Référence de système d'exploitation:: Détail sur la déclaration de système d'exploitation. * Systèmes de fichiers:: Configurer les montages de systèmes de @@ -8590,7 +9032,7 @@ to support new system services. culturelles. * Services:: Spécifier les services du système. * Programmes setuid:: Programmes tournant avec les privilèges root. -* Certificats X.509:: Authentifier les serveurs HTTPS. +* Certificats X.509:: Authentifier les serveurs HTTPS@. * Name Service Switch:: Configurer le « name service switch » de la libc. * Disque de RAM initial:: Démarrage de Linux-Libre. @@ -8677,7 +9119,7 @@ The @code{services} field lists @dfn{system services} to be made available when the system starts (@pxref{Services}). The @code{operating-system} declaration above specifies that, in addition to the basic services, we want the @command{lshd} secure shell daemon listening on port 2222 -(@pxref{Networking Services, @code{lsh-service}}). Under the hood, +(@pxref{Services réseau, @code{lsh-service}}). Under the hood, @code{lsh-service} arranges so that @code{lshd} is started with the right command-line options, possibly with supporting configuration files generated as needed (@pxref{Définir des services}). @@ -8743,7 +9185,7 @@ This example refers to the @file{/boot/efi} file system by its UUID, @code{1234-ABCD}. Replace this UUID with the right UUID on your system, as returned by the @command{blkid} command. -@xref{Desktop Services}, for the exact list of services provided by +@xref{Services de bureaux}, for the exact list of services provided by @var{%desktop-services}. @xref{Certificats X.509}, for background information about the @code{nss-certs} package that is used here. @@ -8989,20 +9431,30 @@ This is a string specifying the type of the file system---e.g., This designates the place where the file system is to be mounted. @item @code{device} -This names the ``source'' of the file system. By default it is the name of -a node under @file{/dev}, but its meaning depends on the @code{title} field -described below. +This names the ``source'' of the file system. It can be one of three +things: a file system label, a file system UUID, or the name of a +@file{/dev} node. Labels and UUIDs offer a way to refer to file systems +without having to hard-code their actual device name@footnote{Note that, +while it is tempting to use @file{/dev/disk/by-uuid} and similar device +names to achieve the same result, this is not recommended: These special +device nodes are created by the udev daemon and may be unavailable at the +time the device is mounted.}. -@item @code{title} (default: @code{'device}) -This is a symbol that specifies how the @code{device} field is to be -interpreted. +@findex file-system-label +File system labels are created using the @code{file-system-label} procedure, +UUIDs are created using @code{uuid}, and @file{/dev} node are plain +strings. Here's an example of a file system referred to by its label, as +shown by the @command{e2label} command: -When it is the symbol @code{device}, then the @code{device} field is -interpreted as a file name; when it is @code{label}, then @code{device} is -interpreted as a file system label name; when it is @code{uuid}, -@code{device} is interpreted as a file system unique identifier (UUID). +@example +(file-system + (mount-point "/home") + (type "ext4") + (device (file-system-label "my-home"))) +@end example -UUIDs may be converted from their string representation (as shown by the +@findex uuid +UUIDs are converted from their string representation (as shown by the @command{tune2fs -l} command) using the @code{uuid} form@footnote{The @code{uuid} form expects 16-byte UUIDs as defined in @uref{https://tools.ietf.org/html/rfc4122, RFC@tie{}4122}. This is the form @@ -9014,21 +9466,12 @@ this: (file-system (mount-point "/home") (type "ext4") - (title 'uuid) (device (uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb"))) @end example -The @code{label} and @code{uuid} options offer a way to refer to file -systems without having to hard-code their actual device name@footnote{Note -that, while it is tempting to use @file{/dev/disk/by-uuid} and similar -device names to achieve the same result, this is not recommended: These -special device nodes are created by the udev daemon and may be unavailable -at the time the device is mounted.}. - -However, when the source of a file system is a mapped device (@pxref{Périphériques mappés}), its @code{device} field @emph{must} refer to the mapped device -name---e.g., @file{/dev/mapper/root-partition}---and consequently -@code{title} must be set to @code{'device}. This is required so that the -system knows that mounting the file system depends on having the +When the source of a file system is a mapped device (@pxref{Périphériques mappés}), its @code{device} field @emph{must} refer to the mapped device +name---e.g., @file{"/dev/mapper/root-partition"}. This is required so that +the system knows that mounting the file system depends on having the corresponding device mapping established. @item @code{flags} (default: @code{'()}) @@ -9544,30 +9987,33 @@ core services, that may be used in an @code{operating-system} declaration. @menu * Services de base:: Services systèmes essentiels. -* Scheduled Job Execution:: The mcron service. -* Log Rotation:: The rottlog service. -* Networking Services:: Network setup, SSH daemon, etc. -* X Window:: Graphical display. -* Printing Services:: Local and remote printer support. -* Desktop Services:: D-Bus and desktop services. -* Database Services:: SQL databases, key-value stores, etc. -* Mail Services:: IMAP, POP3, SMTP, and all that. -* Messaging Services:: Messaging services. -* Telephony Services:: Telephony services. -* Monitoring Services:: Monitoring services. -* Kerberos Services:: Kerberos services. -* Web Services:: Web servers. -* Certificate Services:: TLS certificates via Let's Encrypt. -* DNS Services:: DNS daemons. -* VPN Services:: VPN daemons. -* Network File System:: NFS related services. -* Continuous Integration:: The Cuirass service. -* Power management Services:: The TLP tool. -* Audio Services:: The MPD. -* Virtualization Services:: Virtualization services. -* Version Control Services:: Providing remote access to Git repositories. -* Game Services:: Game servers. -* Miscellaneous Services:: Other services. +* Exécution de tâches planifiées:: Le service mcron. +* Rotation des journaux:: Le service rottlog. +* Services réseau:: Paramétres réseau, démon SSH, etc. +* Système de fenêtrage X:: Affichage graphique. +* Services d'impression:: Support pour les imprimantes locales et + distantes. +* Services de bureaux:: D-Bus et les services de bureaux. +* Services de son:: Services ALSA et Pulseaudio. +* Services de bases de données:: Bases SQL, clefs-valeurs, etc. +* Services de courriels:: IMAP, POP3, SMTP, et tout ça. +* Services de messagerie:: Services de messagerie. +* Services de téléphonie:: Services de téléphonie. +* Services de surveillance:: Services de surveillance. +* Services Kerberos:: Services Kerberos. +* Services web:: Services web. +* Services de certificats:: Certificats TLS via Let's Encrypt. +* Services DNS:: Démons DNS@. +* Services VPN:: Démons VPN +* Système de fichiers en réseau:: Services liés à NFS@. +* Intégration continue:: Le service Cuirass. +* Services de gestion de l'énergie:: L'outil TLP@. +* Services audio:: MPD@. +* Services de virtualisation:: Services de virtualisation. +* Services de contrôle de version:: Fournit des accès distants à des + dépôts Git. +* Services de jeu:: Serveurs de jeu. +* Services divers:: D'autres services. @end menu @node Services de base @@ -10030,7 +10476,7 @@ Name of the group for build user accounts. Number of build user accounts to create. @item @code{authorize-key?} (default: @code{#t}) -@cindex substitutes, authorization thereof +@cindex substituts, autorisations Autoriser ou non les clefs de substituts listées dans @code{authorize-keys} — par défaut celle de @code{hydra.gny.org} (@pxref{Substituts}). @@ -10220,15 +10666,30 @@ See @code{man loadkeys} for details. @cindex mouse @cindex gpm -@deffn {Scheme Procedure} gpm-service [#:gpm @var{gpm}] @ - [#:options] Run @var{gpm}, the general-purpose mouse daemon, with the given -command-line @var{options}. GPM allows users to use the mouse in the -console, notably to select, copy, and paste text. The default value of -@var{options} uses the @code{ps2} protocol, which works for both USB and -PS/2 mice. +@defvr {Variable Scheme} gpm-service-type +This is the type of the service that runs GPM, the @dfn{general-purpose +mouse daemon}, which provides mouse support to the Linux console. GPM +allows users to use the mouse in the console, notably to select, copy, and +paste text. -This service is not part of @var{%base-services}. -@end deffn +The value for services of this type must be a @code{gpm-configuration} (see +below). This service is not part of @var{%base-services}. +@end defvr + +@deftp {Type de donnée} gpm-configuration +Type de données représentant la configuration de GPM. + +@table @asis +@item @code{options} (par défaut : @code{%default-gpm-options}) +Command-line options passed to @command{gpm}. The default set of options +instruct @command{gpm} to listen to mouse events on @file{/dev/input/mice}. +@xref{Command Line,,, gpm, gpm manual}, for more information. + +@item @code{gpm} (par défaut : @code{gpm}) +Le paquet GPM à utiliser. + +@end table +@end deftp @anchor{guix-publish-service-type} @deffn {Scheme Variable} guix-publish-service-type @@ -10253,7 +10714,7 @@ The TCP port to listen for connections. The host (and thus, network interface) to listen to. Use @code{"0.0.0.0"} to listen on all the network interfaces. -@item @code{compression-level} (default: @code{3}) +@item @code{compression-level} (par défaut : @code{3}) The gzip compression level at which substitutes are compressed. Use @code{0} to disable compression altogether, and @code{9} to get the best compression ratio at the expense of increased CPU usage. @@ -10317,8 +10778,8 @@ space that can be locked in memory. These settings are commonly used for real-time audio systems. @end deffn -@node Scheduled Job Execution -@subsubsection Scheduled Job Execution +@node Exécution de tâches planifiées +@subsubsection Exécution de tâches planifiées @cindex cron @cindex mcron @@ -10411,8 +10872,8 @@ mcron, GNU@tie{}mcron}). @end deftp -@node Log Rotation -@subsubsection Log Rotation +@node Rotation des journaux +@subsubsection Rotation des journaux @cindex rottlog @cindex log rotation @@ -10444,7 +10905,7 @@ This is the type of the Rottlog service, whose value is a Other services can extend this one with new @code{log-rotation} objects (see below), thereby augmenting the set of files to be rotated. -This service type can define mcron jobs (@pxref{Scheduled Job Execution}) to +This service type can define mcron jobs (@pxref{Exécution de tâches planifiées}) to run the rottlog service. @end defvr @@ -10464,7 +10925,7 @@ A list of @code{log-rotation} objects as defined below. @item @code{jobs} This is a list of gexps where each gexp corresponds to an mcron job -specification (@pxref{Scheduled Job Execution}). +specification (@pxref{Exécution de tâches planifiées}). @end table @end deftp @@ -10513,8 +10974,8 @@ The list of syslog-controlled files to be rotated. By default it is: @code{'("/var/log/messages" "/var/log/secure")}. @end defvr -@node Networking Services -@subsubsection Networking Services +@node Services réseau +@subsubsection Services réseau The @code{(gnu services networking)} module provides services to configure the network interface. @@ -10525,6 +10986,49 @@ Return a service that runs @var{dhcp}, a Dynamic Host Configuration Protocol (DHCP) client, on all the non-loopback network interfaces. @end deffn +@deffn {Scheme Procedure} dhcpd-service-type +This type defines a service that runs a DHCP daemon. To create a service of +this type, you must supply a @code{}. For example: + +@example +(service dhcpd-service-type + (dhcpd-configuration + (config-file (local-file "my-dhcpd.conf")) + (interfaces '("enp0s25")))) +@end example +@end deffn + +@deftp {Data Type} dhcpd-configuration +@table @asis +@item @code{package} (default: @code{isc-dhcp}) +The package that provides the DHCP daemon. This package is expected to +provide the daemon at @file{sbin/dhcpd} relative to its output directory. +The default package is the @uref{http://www.isc.org/products/DHCP, ISC's +DHCP server}. +@item @code{config-file} (default: @code{#f}) +The configuration file to use. This is required. It will be passed to +@code{dhcpd} via its @code{-cf} option. This may be any ``file-like'' +object (@pxref{G-Expressions, file-like objects}). See @code{man +dhcpd.conf} for details on the configuration file syntax. +@item @code{version} (default: @code{"4"}) +The DHCP version to use. The ISC DHCP server supports the values ``4'', +``6'', and ``4o6''. These correspond to the @code{dhcpd} program options +@code{-4}, @code{-6}, and @code{-4o6}. See @code{man dhcpd} for details. +@item @code{run-directory} (default: @code{"/run/dhcpd"}) +The run directory to use. At service activation time, this directory will +be created if it does not exist. +@item @code{pid-file} (default: @code{"/run/dhcpd/dhcpd.pid"}) +The PID file to use. This corresponds to the @code{-pf} option of +@code{dhcpd}. See @code{man dhcpd} for details. +@item @code{interfaces} (default: @code{'()}) +The names of the network interfaces on which dhcpd should listen for +broadcasts. If this list is not empty, then its elements (which must be +strings) will be appended to the @code{dhcpd} invocation when starting the +daemon. It may not be necessary to explicitly specify any interfaces here; +see @code{man dhcpd} for details. +@end table +@end deftp + @defvr {Scheme Variable} static-networking-service-type @c TODO Document data structures. This is the type for statically-configured network interfaces. @@ -10558,6 +11062,27 @@ several commands to interact with the daemon and configure networking: @command{wicd-cli} and @command{wicd-curses} user interfaces. @end deffn +@cindex ModemManager + +@defvr {Variable Scheme} modem-manager-service-type +This is the service type for the +@uref{https://wiki.gnome.org/Projects/ModemManager, ModemManager} +service. The value for this service type is a +@code{modem-manager-configuration} record. + +This service is part of @code{%desktop-services} (@pxref{Services de bureaux}). +@end defvr + +@deftp {Type de donnée} modem-manager-configuration +Type de donnée représentant la configuration de ModemManager. + +@table @asis +@item @code{modem-manager} (par défaut : @code{modem-manager}) +Le paquet ModemManager à utiliser. + +@end table +@end deftp + @cindex NetworkManager @defvr {Scheme Variable} network-manager-service-type @@ -10566,7 +11091,7 @@ This is the service type for the service. The value for this service type is a @code{network-manager-configuration} record. -This service is part of @code{%desktop-services} (@pxref{Desktop Services}). +This service is part of @code{%desktop-services} (@pxref{Services de bureaux}). @end defvr @deftp {Data Type} network-manager-configuration @@ -10797,7 +11322,7 @@ separated by a colon or period, i.e. @code{"user"}, @code{"user:group"} or @item @code{program} (default: @code{"internal"}) The server program which will serve the requests, or @code{"internal"} if @command{inetd} should use a built-in service. -@item @code{arguments} (default: @code{'()}) +@item @code{arguments} (par défaut : @code{'()}) A list strings or file-like objects, which are the server program's arguments, starting with the zeroth argument, i.e. the name of the program itself. For @command{inetd}'s internal services, this entry must be @@ -11202,8 +11727,8 @@ Package object of the Open vSwitch. @end table @end deftp -@node X Window -@subsubsection X Window +@node Système de fenêtrage X +@subsubsection Système de fenêtrage X @cindex X11 @cindex X Window System @@ -11262,7 +11787,7 @@ If false, a session described by one of the available @file{.desktop} files in @code{/run/current-system/profile} and @code{~/.guix-profile} will be used. -@quotation Note +@quotation Remarque You must install at least one window manager in the system profile or in your user profile. Failing to do that, if @code{auto-login-session} is false, you will be unable to log in. @@ -11359,7 +11884,7 @@ Script to run after starting xorg-server. @item @code{xdisplay-stop} (default @code{#~(string-append #$sddm "/share/sddm/scripts/Xstop")}) Script to run before stopping xorg-server. -@item @code{xsession-command} (default: @code{xinitr }) +@item @code{xsession-command} (par défaut : @code{xinitrc}) Script to run before starting a X session. @item @code{xsessions-directory} (default: "/run/current-system/profile/share/xsessions") @@ -11429,6 +11954,44 @@ resolutions---e.g., @code{((1024 768) (640 480))}. Last, @var{extra-config} is a list of strings or objects appended to the configuration file. It is used to pass extra text to be added verbatim to the configuration file. + +@cindex keymap +@cindex keyboard layout +This procedure is especially useful to configure a different keyboard layout +than the default US keymap. For instance, to use the ``bépo'' keymap by +default on the display manager: + +@example +(define bepo-evdev + "Section \"InputClass\" + Identifier \"evdev keyboard catchall\" + Driver \"evdev\" + MatchIsKeyboard \"on\" + Option \"xkb_layout\" \"fr\" + Option \"xkb_variant\" \"bepo\" +EndSection") + +(operating-system + ... + (services + (modify-services %desktop-services + (slim-service-type config => + (slim-configuration + (inherit config) + (startx (xorg-start-command + #:configuration-file + (xorg-configuration-file + #:extra-config + (list bepo-evdev))))))))) +@end example + +The @code{MatchIsKeyboard} line specifies that we only apply the +configuration to keyboards. Without this line, other devices such as +touchpad may not work correctly because they will be attached to the wrong +driver. In this example, the user typically used @code{setxkbmap fr bepo} +to set their favorite keymap once logged in. The first argument corresponds +to the layout, while the second argument corresponds to the variant. The +@code{xkb_variant} line can be omitted to select the default variant. @end deffn @deffn {Scheme Procedure} screen-locker-service @var{package} [@var{program}] @@ -11444,8 +12007,8 @@ makes the good ol' XlockMore usable. @end deffn -@node Printing Services -@subsubsection Printing Services +@node Services d'impression +@subsubsection Services d'impression @cindex printer support with CUPS The @code{(gnu services cups)} module provides a Guix service definition for @@ -12270,8 +12833,8 @@ strings of the same name, you could instantiate a CUPS service like this: @end example -@node Desktop Services -@subsubsection Desktop Services +@node Services de bureaux +@subsubsection Services de bureaux The @code{(gnu services desktop)} module provides services that are usually useful in the context of a ``desktop'' setup---that is, on a machine running @@ -12287,13 +12850,13 @@ environment and networking: This is a list of services that builds upon @var{%base-services} and adds or adjusts services for a typical ``desktop'' setup. -In particular, it adds a graphical login manager (@pxref{X Window, +In particular, it adds a graphical login manager (@pxref{Système de fenêtrage X, @code{slim-service}}), screen lockers, a network management tool -(@pxref{Networking Services, @code{network-manager-service-type}}), energy +(@pxref{Services réseau, @code{network-manager-service-type}}), energy and color management services, the @code{elogind} login and seat manager, the Polkit privilege service, the GeoClue location service, the AccountsService daemon that allows authorized users change system passwords, -an NTP client (@pxref{Networking Services}), the Avahi daemon, and has the +an NTP client (@pxref{Services réseau}), the Avahi daemon, and has the name service switch service configured to be able to use @code{nss-mdns} (@pxref{Name Service Switch, mDNS}). @end defvr @@ -12301,13 +12864,14 @@ name service switch service configured to be able to use @code{nss-mdns} The @var{%desktop-services} variable can be used as the @code{services} field of an @code{operating-system} declaration (@pxref{Référence de système d'exploitation, @code{services}}). -Additionally, the @code{gnome-desktop-service}, @code{xfce-desktop-service} -and @code{mate-desktop-service} procedures can add GNOME, XFCE and/or MATE -to a system. To ``add GNOME'' means that system-level services like the -backlight adjustment helpers and the power management utilities are added to -the system, extending @code{polkit} and @code{dbus} appropriately, allowing -GNOME to operate with elevated privileges on a limited number of -special-purpose system interfaces. Additionally, adding a service made by +Additionally, the @code{gnome-desktop-service}, @code{xfce-desktop-service}, +@code{mate-desktop-service} and @code{enlightenment-desktop-service-type} +procedures can add GNOME, XFCE, MATE and/or Enlightenment to a system. To +``add GNOME'' means that system-level services like the backlight adjustment +helpers and the power management utilities are added to the system, +extending @code{polkit} and @code{dbus} appropriately, allowing GNOME to +operate with elevated privileges on a limited number of special-purpose +system interfaces. Additionally, adding a service made by @code{gnome-desktop-service} adds the GNOME metapackage to the system profile. Likewise, adding the XFCE service not only adds the @code{xfce} metapackage to the system profile, but it also gives the Thunar file manager @@ -12317,7 +12881,11 @@ graphical interface. To ``add MATE'' means that @code{polkit} and @code{dbus} are extended appropriately, allowing MATE to operate with elevated privileges on a limited number of special-purpose system interfaces. Additionally, adding a service made by -@code{mate-desktop-service} adds the MATE metapackage to the system profile. +@code{mate-desktop-service} adds the MATE metapackage to the system +profile. ``Adding ENLIGHTENMENT'' means that @code{dbus} is extended +appropriately, and several of Enlightenment's binaries are set as setuid, +allowing Enlightenment's screen locker and other functionality to work as +expetected. The desktop environments in Guix use the Xorg display server by default. If you'd like to use the newer display server protocol called Wayland, you need @@ -12345,9 +12913,21 @@ Return a service that adds the @code{mate} package to the system profile, and extends polkit with the actions from @code{mate-settings-daemon}. @end deffn +@deffn {Procédure Scheme} enlightenment-desktop-service-type +Return a service that adds the @code{enlightenment} package to the system +profile, and extends dbus with actions from @code{efl}. +@end deffn + +@deftp {Data Type} enlightenment-desktop-service-configuration +@table @asis +@item @code{enlightenment} (par défaut : @code{enlightenment}) +Le paquet enlightenment à utiliser. +@end table +@end deftp + Because the GNOME, XFCE and MATE desktop services pull in so many packages, -the default @code{%desktop-services} variable doesn't include either of them -by default. To add GNOME, XFCE or MATE, just @code{cons} them onto +the default @code{%desktop-services} variable doesn't include any of them by +default. To add GNOME, XFCE or MATE, just @code{cons} them onto @code{%desktop-services} in the @code{services} field of your @code{operating-system}: @@ -12548,8 +13128,49 @@ keyboard or mouse. Users need to be in the @code{lp} group to access the D-Bus service. @end deffn -@node Database Services -@subsubsection Database Services +@node Services de son +@subsubsection Services de son + +@cindex sound support +@cindex ALSA +@cindex PulseAudio, sound support + +The @code{(gnu services sound)} module provides an @code{alsa-service-type} +service to generate an ALSA @file{/etc/asound.conf} configuration file. +This configuration file is what allows applications that produce sound using +ALSA to be correctly handled. + +@deffn {Variable Scheme} alsa-service-type +This is the type for the @uref{https://alsa-project.org/, ALSA}, +@command{alsa-configuration} record as in this example: + +@example +(service alsa-service-type) +@end example + +See below for details about @code{alsa-configuration}. +@end deffn + +@deftp {Type de donnée} alsa-configuration +Data type representing the configuration for @code{alsa-service}. + +@table @asis +@item @code{pulseaudio?} (par défaut : @code{#t}) +Whether ALSA applications should transparently be made to use the +@uref{http://www.pulseaudio.org/, PulseAudio} sound server. + +Using PulseAudio allows you to run several sound-producing applications at +the same time and to individual control them @i{via} @command{pavucontrol}, +among other things. + +@item @code{extra-options} (par défaut : @code{""}) +String to append to the @file{asound.conf} file. + +@end table +@end deftp + +@node Services de bases de données +@subsubsection Services de bases de données @cindex database @cindex SQL @@ -12672,8 +13293,8 @@ Directory in which to store the database and related files. @end table @end deftp -@node Mail Services -@subsubsection Mail Services +@node Services de courriels +@subsubsection Services de courriels @cindex mail @cindex email @@ -14006,8 +14627,8 @@ above example, there doesn't need to be a @code{postmaster} entry in the @code{postmaster} mail to @code{bob} (which subsequently would deliver mail to @code{bob@@example.com} and @code{bob@@example2.com}). -@node Messaging Services -@subsubsection Messaging Services +@node Services de messagerie +@subsubsection Services de messagerie @cindex messaging @cindex jabber @@ -14479,14 +15100,17 @@ interface. @item @code{package} (default: @code{bitlbee}) The BitlBee package to use. +@item @code{plugins} (par défaut : @code{'()}) +List of plugin packages to use---e.g., @code{bitlbee-discord}. + @item @code{extra-settings} (default: @code{""}) Configuration snippet added as-is to the BitlBee configuration file. @end table @end deftp -@node Telephony Services -@subsubsection Telephony Services +@node Services de téléphonie +@subsubsection Services de téléphonie @cindex Murmur (VoIP server) @cindex VoIP server @@ -14694,8 +15318,8 @@ server will be linked by this host name instead. -@node Monitoring Services -@subsubsection Monitoring Services +@node Services de surveillance +@subsubsection Services de surveillance @subsubheading Tailon Service @@ -14844,8 +15468,8 @@ is accessed via a reverse proxy. @end deftp -@node Kerberos Services -@subsubsection Kerberos Services +@node Services Kerberos +@subsubsection Services Kerberos @cindex Kerberos The @code{(gnu services kerberos)} module provides services relating to the @@ -14966,8 +15590,8 @@ authenticate. @end deftp -@node Web Services -@subsubsection Web Services +@node Services web +@subsubsection Services web @cindex web @cindex www @@ -15240,6 +15864,10 @@ the size of the processors cache line. @item @code{server-names-hash-bucket-max-size} (default: @code{#f}) Maximum bucket size for the server names hash tables. +@item @code{extra-content} (par défaut : @code{""}) +Extra content for the @code{http} block. Should be string or a string +valued G-expression. + @end table @end deffn @@ -15559,8 +16187,65 @@ A simple setup for cat-avatar-generator can look like this: %base-services)) @end example -@node Certificate Services -@subsubsection Certificate Services +@subsubheading Hpcguix-web + +@cindex hpcguix-web +The @uref{hpcguix-web, https://github.com/UMCUGenetics/hpcguix-web/} program +is a customizable web interface to browse Guix packages, initially designed +for users of high-performance computing (HPC) clusters. + +@defvr {Variable Scheme} hpcguix-web-service-type +The service type for @code{hpcguix-web}. +@end defvr + +@deftp {Type de donnée} hpcguix-web-configuration +Data type for the hpcguix-web service configuration. + +@table @asis +@item @code{specs} +A gexp (@pxref{G-Expressions}) specifying the hpcguix-web service +configuration. The main items available in this spec are: + +@table @asis +@item @code{title-prefix} (par défaut : @code{"hpcguix | "}) +Le préfixe du titre des pages. + +@item @code{guix-command} (par défaut : @code{"guix"}) +La commande @command{guix} + +@item @code{package-filter-proc} (par défaut : @code{(const #t)}) +Une procédure qui spécifie comment filtrer les paquets qui seront affichés. + +@item @code{package-page-extension-procinputs} (par défaut : @code{(const '())}) +Extension package for @code{hpcguix-web}. + +@item @code{menu} (par défaut : @code{'()}) +Additional entry in page @code{menu}. +@end table + +See the hpcguix-web repository for a +@uref{https://github.com/UMCUGenetics/hpcguix-web/blob/master/hpcweb-configuration.scm, +complete example}. + +@item @code{packages} (par défaut : @code{hpcguix-web}) +Le paquet hpcguix-web à utiliser. +@end table +@end deftp + +A typical hpcguix-web service declaration looks like this: + +@example +(service hpcguix-web-service-type + (hpcguix-web-configuration + (specs + #~(define site-config + (hpcweb-configuration + (title-prefix "Guix-HPC - ") + (menu '(("/about" "ABOUT")))))))) +@end example + +@node Services de certificats +@subsubsection Services de certificats @cindex Web @cindex HTTP, HTTPS @@ -15653,8 +16338,7 @@ needs to be able to serve challenges and responses, it needs to be able to run a web server. It does so by extending the @code{nginx} web service with an @code{nginx-server-configuration} listening on the @var{domains} on port 80, and which has a @code{nginx-location-configuration} for the -@code{/.well-known/} URI path subspace used by Let's Encrypt. @xref{Web -Services}, for more on these nginx configuration data types. +@code{/.well-known/} URI path subspace used by Let's Encrypt. @xref{Services web}, for more on these nginx configuration data types. Requests to other URL paths will be matched by the @code{default-location}, which if present is added to all @code{nginx-server-configuration}s. @@ -15698,15 +16382,19 @@ space-delimited list of renewed certificate domains (for example, For each @code{certificate-configuration}, the certificate is saved to @code{/etc/letsencrypt/live/@var{name}/fullchain.pem} and the key is saved to @code{/etc/letsencrypt/live/@var{name}/privkey.pem}. -@node DNS Services -@subsubsection DNS Services +@node Services DNS +@subsubsection Services DNS @cindex DNS (domain name system) @cindex domain name system (DNS) The @code{(gnu services dns)} module provides services related to the @dfn{domain name system} (DNS). It provides a server service for hosting an @emph{authoritative} DNS server for multiple zones, slave or master. This -service uses @uref{https://www.knot-dns.cz/, Knot DNS}. +service uses @uref{https://www.knot-dns.cz/, Knot DNS}. And also a caching +and forwarding DNS server for the LAN, which uses +@uref{http://www.thekelleys.org.uk/dnsmasq/doc.html, dnsmasq}. + +@subsubheading Service Knot An example configuration of an authoritative server for two zones, one master and one slave, is: @@ -16104,9 +16792,62 @@ The list of knot-zone-configuration used by this configuration. @end table @end deftp +@subsubheading Services Dnsmasq -@node VPN Services -@subsubsection VPN Services +@deffn {Variable Scheme} dnsmasq-service-type +This is the type of the dnsmasq service, whose value should be an +@code{dnsmasq-configuration} object as in this example: + +@example +(service dnsmasq-service-type + (dnsmasq-configuration + (no-resolv? #t) + (servers '("192.168.1.1")))) +@end example +@end deffn + +@deftp {Type de donnée} dnsmasq-configuration +Type de données qui représente la configuration de dnsmasq. + +@table @asis +@item @code{package} (par défaut : @code{dnsmasq}) +Package object of the dnsmasq server. + +@item @code{no-hosts?} (par défaut : @code{#f}) +When true, don't read the hostnames in /etc/hosts. + +@item @code{port} (par défaut : @code{53}) +The port to listen on. Setting this to zero completely disables DNS +funtion, leaving only DHCP and/or TFTP. + +@item @code{local-service?} (par défaut : @code{#t}) +Accept DNS queries only from hosts whose address is on a local subnet, ie a +subnet for which an interface exists on the server. + +@item @code{listen-addresses} (par défaut : @code{'()}) +Listen on the given IP addresses. + +@item @code{resolv-file} (par défaut : @code{"/etc/resolv.conf"}) +The file to read the IP address of the upstream nameservers from. + +@item @code{no-resolv?} (par défaut : @code{#f}) +When true, don't read @var{resolv-file}. + +@item @code{servers} (default: @code{'()}) +Specify IP address of upstream servers directly. + +@item @code{cache-size} (par défaut : @code{150}) +Set the size of dnsmasq's cache. Setting the cache size to zero disables +caching. + +@item @code{negative-cache?} (par défaut : @code{#t}) +When false, disable negative caching. + +@end table +@end deftp + +@node Services VPN +@subsubsection Services VPN @cindex VPN (virtual private network) @cindex virtual private network (VPN) @@ -16463,8 +17204,8 @@ Defaults to @samp{#f}. @c %end of automatic openvpn-server documentation -@node Network File System -@subsubsection Network File System +@node Système de fichiers en réseau +@subsubsection Système de fichiers en réseau @cindex NFS The @code{(gnu services nfs)} module provides the following services, which @@ -16527,7 +17268,7 @@ The @dfn{global security system} (GSS) daemon provides strong security for RPC based protocols. Before exchanging RPC requests an RPC client must establish a security context. Typically this is done using the Kerberos command @command{kinit} or automatically at login time using PAM services -(@pxref{Kerberos Services}). +(@pxref{Services Kerberos}). @defvr {Scheme Variable} gss-service-type A service type for the Global Security System (GSS) daemon. @@ -16575,8 +17316,8 @@ The local NFSv4 domain name. This must be a string or @code{#f}. If it is @end table @end deftp -@node Continuous Integration -@subsubsection Continuous Integration +@node Intégration continue +@subsubsection Intégration continue @cindex continuous integration @uref{https://notabug.org/mthl/cuirass, Cuirass} est un outil d'intégration @@ -16670,8 +17411,8 @@ The Cuirass package to use. @end table @end deftp -@node Power management Services -@subsubsection Power management Services +@node Services de gestion de l'énergie +@subsubsection Services de gestion de l'énergie @cindex power management with TLP The @code{(gnu services pm)} module provides a Guix service definition for @@ -17193,8 +17934,8 @@ Package object of thermald. @end table @end deftp -@node Audio Services -@subsubsection Audio Services +@node Services audio +@subsubsection Services audio The @code{(gnu services audio)} module provides a service to start MPD (the Music Player Daemon). @@ -17243,7 +17984,7 @@ path can be specified here. @end table @end deftp -@node Virtualization Services +@node Services de virtualisation @subsubsection Virtualization services The @code{(gnu services virtualization)} module provides services for the @@ -18030,8 +18771,8 @@ Return true if @var{obj} is a platform object. Return the name of @var{platform}---a string such as @code{"arm"}. @end deffn -@node Version Control Services -@subsubsection Version Control Services +@node Services de contrôle de version +@subsubsection Services de contrôle de version The @code{(gnu services version-control)} module provides a service to allow remote access to local Git repositories. There are three options: the @@ -18102,8 +18843,7 @@ authenticated and encrypted transport, such as @code{https}. Although Git allows you to serve repositories using unsophisticated file-based web servers, there is a faster protocol implemented by the @code{git-http-backend} program. This program is the back-end of a proper -Git web service. It is designed to sit behind a FastCGI proxy. @xref{Web -Services}, for more on running the necessary @code{fcgiwrap} daemon. +Git web service. It is designed to sit behind a FastCGI proxy. @xref{Services web}, for more on running the necessary @code{fcgiwrap} daemon. Guix has a separate configuration data type for serving Git repositories over HTTP. @@ -18129,8 +18869,7 @@ map @code{http://@var{server}/git/@var{repo}.git} to this prefix are not passed on to this Git instance. @item @code{fcgiwrap-socket} (default: @code{127.0.0.1:9000}) -The socket on which the @code{fcgiwrap} daemon is listening. @xref{Web -Services}. +The socket on which the @code{fcgiwrap} daemon is listening. @xref{Services web}. @end table @end deftp @@ -18163,10 +18902,10 @@ configuration. An example nginx service definition to serve the default @end example This example assumes that you are using Let's Encrypt to get your TLS -certificate. @xref{Certificate Services}. The default @code{certbot} +certificate. @xref{Services de certificats}. The default @code{certbot} service will redirect all HTTP traffic on @code{git.my-host.org} to HTTPS. You will also need to add an @code{fcgiwrap} proxy to your system services. -@xref{Web Services}. +@xref{Services web}. @end deffn @subsubheading Cgit Service @@ -18653,7 +19392,7 @@ Defaults to @samp{#f}. @end deftypevr -@deftypevr {@code{cgit-configuration} parameter} list project-list +@deftypevr {@code{cgit-configuration} parameter} project-list project-list A list of subdirectories inside of @code{repository-directory}, relative to it, that should loaded as Git repositories. An empty list means that all subdirectories will be loaded. @@ -19113,8 +19852,8 @@ instantiate a cgit service like this: @end example -@node Game Services -@subsubsection Game Services +@node Services de jeu +@subsubsection Services de jeu @subsubheading The Battle for Wesnoth Service @cindex wesnothd @@ -19144,8 +19883,23 @@ The port to bind the server to. @end table @end deftp -@node Miscellaneous Services -@subsubsection Miscellaneous Services +@node Services divers +@subsubsection Services divers + +@cindex fingerprint +@subsubheading Fingerprint Service + +The @code{(gnu services fingerprint)} module provides a DBus service to read +and identify fingerprints via a fingerprint sensor. + +@defvr {Scheme Variable} fprintd-service-type +The service type for @command{fprintd}, which provides the fingerprint +reading capability. + +@example +(service fprintd-service-type) +@end example +@end defvr @cindex sysctl @subsubheading System Control Service @@ -19466,9 +20220,9 @@ is to have @code{.local} host lookup working. Note that, in this case, in addition to setting the @code{name-service-switch} of the @code{operating-system} declaration, you -also need to use @code{avahi-service} (@pxref{Networking Services, +also need to use @code{avahi-service} (@pxref{Services réseau, @code{avahi-service}}), or @var{%desktop-services}, which includes it -(@pxref{Desktop Services}). Doing this makes @code{nss-mdns} accessible to +(@pxref{Services de bureaux}). Doing this makes @code{nss-mdns} accessible to the name service cache daemon (@pxref{Services de base, @code{nscd-service}}). For convenience, the following variables provide typical NSS configurations. @@ -19623,7 +20377,7 @@ initialization system. Mount @var{root} as the root file system. @var{root} can be a device name like @code{/dev/sda1}, a file system label, or a file system UUID. -@item --system=@var{system} +@item --system=@var{système} Have @file{/run/booted-system} and @file{/run/current-system} point to @var{system}. @@ -19938,7 +20692,7 @@ It also adds a bootloader menu entry for the new OS configuration, ---unless configurations to a submenu, allowing you to choose an older system generation at boot time should you need it. -@quotation Note +@quotation Remarque @c The paragraph below refers to the problem discussed at @c . It is highly recommended to run @command{guix pull} once before you run @@ -19947,7 +20701,7 @@ It is highly recommended to run @command{guix pull} once before you run @end quotation @item switch-generation -@cindex generations +@cindex générations Switch to an existing system generation. This action atomically switches the system profile to the specified system generation. It also rearranges the system's existing bootloader menu entries. It makes the menu entry for @@ -19987,7 +20741,7 @@ services. This action will fail if the specified generation does not exist. @item roll-back -@cindex rolling back +@cindex revenir en arrière Switch to the preceding system generation. The next time the system boots, it will use the preceding system generation. This is the inverse of @command{reconfigure}, and it is exactly the same as invoking @@ -20126,7 +20880,7 @@ guix system container my-config.scm \ --expose=$HOME --share=$HOME/tmp=/exchange @end example -@quotation Note +@quotation Remarque This option requires Linux-libre 3.19 or newer. @end quotation @@ -20142,8 +20896,8 @@ Consider the operating-system @var{expr} evaluates to. This is an alternative to specifying a file which evaluates to an operating system. This is used to generate the GuixSD installer @pxref{Construire l'image d'installation}). -@item --system=@var{system} -@itemx -s @var{system} +@item --system=@var{système} +@itemx -s @var{système} Attempt to build for @var{system} instead of the host system type. This works as per @command{guix build} (@pxref{Invoquer guix build}). @@ -20210,7 +20964,7 @@ available debugging commands. @end table @end table -@quotation Note +@quotation Remarque All the actions above, except @code{build} and @code{init}, can use KVM support in the Linux-libre kernel. Specifically, if the machine has hardware virtualization support, the corresponding KVM kernel module should @@ -20378,7 +21132,7 @@ your VM. To enable that you'll also have to pass the following flags to name=com.redhat.spice.0 @end example -You'll also need to add the @pxref{Miscellaneous Services, Spice service}. +You'll also need to add the @pxref{Services divers, Spice service}. @node Définir des services @subsection Définir des services @@ -20390,7 +21144,7 @@ in the first place? And what is a service anyway? @menu * Composition de services:: Le modèle de composition des services. * Types service et services:: Types et services. -* Référence de service:: Référence de l'API. +* Référence de service:: Référence de l'API@. * Services Shepherd:: Un type de service particulier. @end menu @@ -20415,10 +21169,10 @@ the @file{/etc} directory of the system. GuixSD services are connected by @dfn{extensions}. For instance, the secure shell service @emph{extends} the Shepherd---the GuixSD initialization system, running as PID@tie{}1---by giving it the command lines to start and -stop the secure shell daemon (@pxref{Networking Services, +stop the secure shell daemon (@pxref{Services réseau, @code{lsh-service}}); the UPower service extends the D-Bus service by passing it its @file{.service} specification, and extends the udev service -by passing it device management rules (@pxref{Desktop Services, +by passing it device management rules (@pxref{Services de bureaux, @code{upower-service}}); the Guix daemon service extends the Shepherd by passing it the command lines to start and stop the daemon, and extends the account service by passing it a list of required build user accounts @@ -20740,7 +21494,7 @@ Return a service that extends @var{target} with @var{value}. This works by creating a singleton service type @var{name}, of which the returned service is an instance. -For example, this extends mcron (@pxref{Scheduled Job Execution}) with an +For example, this extends mcron (@pxref{Exécution de tâches planifiées}) with an additional job: @example @@ -21033,7 +21787,7 @@ gnu/packages/image.scm:312:2: openjpeg@@2.1.0: probably vulnerable to CVE-2016-1 @xref{Invoquer guix lint}, for more information. -@quotation Note +@quotation Remarque As of version @value{VERSION}, the feature described below is considered ``beta''. @end quotation @@ -21252,7 +22006,7 @@ correctif. * Modules python:: Un peu de comédie anglaise. * Modules perl:: Petites perles. * Paquets java:: Pause café. -* Polices de caractères:: Fond of fonts. +* Polices de caractères:: À fond les fontes. @end menu @node Liberté logiciel @@ -21382,7 +22136,7 @@ ambiguities. A typical package definition may look like this: @example (define my-package (let ((commit "c3f29bc928d5900971f65965feaae59e1272a3f7") - (revision "1")) ;Guix package revision + (revision "1")) ;révision du paquet Guix (package (version (git-version "0.9" revision commit)) (source (origin @@ -21581,7 +22335,7 @@ becomes package @code{java-apache-commons-cli}. @node Polices de caractères @subsection Polices de caractères -@cindex fonts +@cindex polices For fonts that are in general not installed by a user for typesetting purposes, or that are distributed as part of a larger software package, we rely on the general packaging rules for software; for instance, this applies @@ -21842,22 +22596,23 @@ generated binaries could be broken for some reason. @node Remerciements @chapter Remerciements -Guix is based on the @uref{http://nixos.org/nix/, Nix package manager}, -which was designed and implemented by Eelco Dolstra, with contributions from -other people (see the @file{nix/AUTHORS} file in Guix.) Nix pioneered -functional package management, and promoted unprecedented features, such as -transactional package upgrades and rollbacks, per-user profiles, and -referentially transparent build processes. Without this work, Guix would -not exist. +Guix se base sur le @uref{http://nixos.org/nix/, gestionnaire de paquets +Nix} conçu et implémenté par Eelco Dolstra, avec des constributions d'autres +personnes (voir le fichier @file{nix/AUTHORS} dans Guix). Nix a inventé la +gestion de paquet fonctionnelle et promu des fonctionnalités sans précédents +comme les mises à jour de paquets transactionnelles et les retours en +arrière, les profils par utilisateurs et les processus de constructions +transparents pour les références. Sans ce travail, Guix n'existerait pas. -The Nix-based software distributions, Nixpkgs and NixOS, have also been an -inspiration for Guix. +Les distributions logicielles basées sur Nix, Nixpkgs et NixOS, ont aussi +été une inspiration pour Guix. -GNU@tie{}Guix itself is a collective work with contributions from a number -of people. See the @file{AUTHORS} file in Guix for more information on -these fine people. The @file{THANKS} file lists people who have helped by -reporting bugs, taking care of the infrastructure, providing artwork and -themes, making suggestions, and more---thank you! +GNU@tie{}Guix lui-même est un travail collectif avec des contributions d'un +grand nombre de personnes. Voyez le fichier @file{AUTHORS} dans Guix pour +plus d'information sur ces personnes de qualité. Le fichier @file{THANKS} +liste les personnes qui ont aidé en rapportant des bogues, en prenant soin +de l'infrastructure, en fournissant des images et des thèmes, en faisant des +suggestions et bien plus. Merci ! @c ********************************************************************* diff --git a/doc/guix.texi b/doc/guix.texi index e1353842e4..841bc2a34f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -37,7 +37,7 @@ Copyright @copyright{} 2017 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* -Copyright @copyright{} 2017 Marius Bakke@* +Copyright @copyright{} 2017, 2018 Marius Bakke@* Copyright @copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* @@ -249,7 +249,7 @@ Services * VPN Services:: VPN daemons. * Network File System:: NFS related services. * Continuous Integration:: The Cuirass service. -* Power management Services:: The TLP tool. +* Power Management Services:: Extending battery life. * Audio Services:: The MPD. * Virtualization Services:: Virtualization services. * Version Control Services:: Providing remote access to Git repositories. @@ -614,6 +614,9 @@ later, including 2.2.x; (@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile}); @item +@uref{https://notabug.org/civodul/guile-sqlite3, Guile-SQLite3}, version 0.1.0 +or later; +@item @c FIXME: Specify a version number once a release has been made. @uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August 2017 or later; @@ -985,7 +988,7 @@ Port number of SSH server on the machine. @item @code{private-key} (default: @file{~root/.ssh/id_rsa}) The SSH private key file to use when connecting to the machine, in -OpenSSH format. +OpenSSH format. This key must not be protected with a passphrase. Note that the default value is the private key @emph{of the root account}. Make sure it exists if you use the default. @@ -2743,11 +2746,54 @@ Any user can update their Guix copy using @command{guix pull}, and the effect is limited to the user who run @command{guix pull}. For instance, when user @code{root} runs @command{guix pull}, this has no effect on the version of Guix that user @code{alice} sees, and vice -versa@footnote{Under the hood, @command{guix pull} updates the -@file{~/.config/guix/latest} symbolic link to point to the latest Guix, -and the @command{guix} command loads code from there. Currently, the -only way to roll back an invocation of @command{guix pull} is to -manually update this symlink to point to the previous Guix.}. +versa. + +The result of running @command{guix pull} is a @dfn{profile} available +under @file{~/.config/guix/current} containing the latest Guix. Thus, +make sure to add it to the beginning of your search path so that you use +the latest version, and similarly for the Info manual +(@pxref{Documentation}): + +@example +export PATH="$HOME/.config/guix/current/bin:$PATH" +export INFOPATH="$HOME/.config/guix/current/share/info:$INFOPATH" +@end example + +The @code{--list-generations} or @code{-l} option lists past generations +produced by @command{guix pull}, along with details about their provenance: + +@example +$ guix pull -l +Generation 1 Jun 10 2018 00:18:18 + guix 65956ad + repository URL: https://git.savannah.gnu.org/git/guix.git + branch: origin/master + commit: 65956ad3526ba09e1f7a40722c96c6ef7c0936fe + +Generation 2 Jun 11 2018 11:02:49 + guix e0cc7f6 + repository URL: https://git.savannah.gnu.org/git/guix.git + branch: origin/master + commit: e0cc7f669bec22c37481dd03a7941c7d11a64f1d + +Generation 3 Jun 13 2018 23:31:07 (current) + guix 844cc1c + repository URL: https://git.savannah.gnu.org/git/guix.git + branch: origin/master + commit: 844cc1c8f394f03b404c5bb3aee086922373490c +@end example + +This @code{~/.config/guix/current} profile works like any other profile +created by @command{guix package} (@pxref{Invoking guix package}). That +is, you can list generations, roll back to the previous +generation---i.e., the previous Guix---and so on: + +@example +$ guix package -p ~/.config/guix/current --roll-back +switched from generation 3 to 2 +$ guix package -p ~/.config/guix/current --delete-generations=1 +deleting /home/charlie/.config/guix/current-1-link +@end example The @command{guix pull} command is usually invoked with no arguments, but it supports the following options: @@ -2772,6 +2818,13 @@ string. Deploy the tip of @var{branch}, the name of a Git branch available on the repository at @var{url}. +@item --list-generations[=@var{pattern}] +@itemx -l [@var{pattern}] +List all the generations of @file{~/.config/guix/current} or, if @var{pattern} +is provided, the subset of generations that match @var{pattern}. +The syntax of @var{pattern} is the same as with @code{guix package +--list-generations} (@pxref{Invoking guix package}). + @item --bootstrap Use the bootstrap Guile to build the latest Guix. This option is only useful to Guix developers. @@ -6586,6 +6639,12 @@ signatures,, emacs, The GNU Emacs Manual}). @uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa} identifier. @end itemize + +@item --recursive +@itemx -r +Traverse the dependency graph of the given upstream package recursively +and generate package expressions for all those packages that are not yet +in Guix. @end table @item crate @@ -8582,21 +8641,21 @@ create a file system on the relevant partition(s)@footnote{Currently GuixSD only supports ext4 and btrfs file systems. In particular, code that reads file system UUIDs and labels only works for these file system types.}. For the ESP, if you have one and assuming it is -@file{/dev/sda2}, run: +@file{/dev/sda1}, run: @example -mkfs.fat -F32 /dev/sda2 +mkfs.fat -F32 /dev/sda1 @end example Preferably, assign file systems a label so that you can easily and reliably refer to them in @code{file-system} declarations (@pxref{File Systems}). This is typically done using the @code{-L} option of @command{mkfs.ext4} and related commands. So, assuming the target root -partition lives at @file{/dev/sda1}, a file system with the label +partition lives at @file{/dev/sda2}, a file system with the label @code{my-root} can be created with: @example -mkfs.ext4 -L my-root /dev/sda1 +mkfs.ext4 -L my-root /dev/sda2 @end example @cindex encrypted disk @@ -8604,12 +8663,12 @@ If you are instead planning to encrypt the root partition, you can use the Cryptsetup/LUKS utilities to do that (see @inlinefmtifelse{html, @uref{https://linux.die.net/man/8/cryptsetup, @code{man cryptsetup}}, @code{man cryptsetup}} for more information.) Assuming you want to -store the root partition on @file{/dev/sda1}, the command sequence would +store the root partition on @file{/dev/sda2}, the command sequence would be along these lines: @example -cryptsetup luksFormat /dev/sda1 -cryptsetup open --type luks /dev/sda1 my-partition +cryptsetup luksFormat /dev/sda2 +cryptsetup open --type luks /dev/sda2 my-partition mkfs.ext4 -L my-root /dev/mapper/my-partition @end example @@ -8629,11 +8688,11 @@ by @code{guix system init} afterwards. Finally, if you plan to use one or more swap partitions (@pxref{Memory Concepts, swap space,, libc, The GNU C Library Reference Manual}), make sure to initialize them with @command{mkswap}. Assuming you have one -swap partition on @file{/dev/sda2}, you would run: +swap partition on @file{/dev/sda3}, you would run: @example -mkswap /dev/sda2 -swapon /dev/sda2 +mkswap /dev/sda3 +swapon /dev/sda3 @end example Alternatively, you may use a swap file. For example, assuming that in @@ -8822,6 +8881,22 @@ Have a look at @file{gnu/system/install.scm} in the source tree, and see also @ref{Invoking guix system} for more information about the installation image. +@subsection Building the Installation Image for ARM Boards + +Many ARM boards require a specific variant of the +@uref{http://www.denx.de/wiki/U-Boot/, U-Boot} bootloader. + +If you build a disk image and the bootloader is not available otherwise +(on another boot drive etc), it's advisable to build an image that +includes the bootloader, specifically: + +@example +guix system disk-image --system=armhf-linux -e '((@@ (gnu system install) os-with-u-boot) (@@ (gnu system install) installation-os) "A20-OLinuXino-Lime2")' +@end example + +@code{A20-OLinuXino-Lime2} is the name of the board. If you specify an invalid +board, a list of possible boards will be printed. + @node System Configuration @section System Configuration @@ -9863,7 +9938,7 @@ declaration. * VPN Services:: VPN daemons. * Network File System:: NFS related services. * Continuous Integration:: The Cuirass service. -* Power management Services:: The TLP tool. +* Power Management Services:: Extending battery life. * Audio Services:: The MPD. * Virtualization Services:: Virtualization services. * Version Control Services:: Providing remote access to Git repositories. @@ -11851,6 +11926,44 @@ resolutions---e.g., @code{((1024 768) (640 480))}. Last, @var{extra-config} is a list of strings or objects appended to the configuration file. It is used to pass extra text to be added verbatim to the configuration file. + +@cindex keymap +@cindex keyboard layout +This procedure is especially useful to configure a different keyboard layout +than the default US keymap. For instance, to use the ``bépo'' keymap by +default on the display manager: + +@example +(define bepo-evdev + "Section \"InputClass\" + Identifier \"evdev keyboard catchall\" + Driver \"evdev\" + MatchIsKeyboard \"on\" + Option \"xkb_layout\" \"fr\" + Option \"xkb_variant\" \"bepo\" +EndSection") + +(operating-system + ... + (services + (modify-services %desktop-services + (slim-service-type config => + (slim-configuration + (inherit config) + (startx (xorg-start-command + #:configuration-file + (xorg-configuration-file + #:extra-config + (list bepo-evdev))))))))) +@end example + +The @code{MatchIsKeyboard} line specifies that we only apply the configuration +to keyboards. Without this line, other devices such as touchpad may not work +correctly because they will be attached to the wrong driver. In this example, +the user typically used @code{setxkbmap fr bepo} to set their favorite keymap +once logged in. The first argument corresponds to the layout, while the second +argument corresponds to the variant. The @code{xkb_variant} line can be omitted +to select the default variant. @end deffn @deffn {Scheme Procedure} screen-locker-service @var{package} [@var{program}] @@ -13018,15 +13131,15 @@ Users need to be in the @code{lp} group to access the D-Bus service. @cindex ALSA @cindex PulseAudio, sound support -The @code{(gnu services sound)} module provides an -@code{alsa-service-type} service to generate an ALSA -@file{/etc/asound.conf} configuration file. This configuration file is -what allows applications that produce sound using ALSA to be correctly -handled. +The @code{(gnu services sound)} module provides a service to configure the +Advanced Linux Sound Architecture (ALSA) system, which making PulseAudio the +prefered ALSA output driver. @deffn {Scheme Variable} alsa-service-type -This is the type for the @uref{https://alsa-project.org/, ALSA}, -@command{alsa-configuration} record as in this example: +This is the type for the @uref{https://alsa-project.org/, Advanced Linux Sound +Architecture} (ALSA) system, which generates the @file{/etc/asound.conf} +configuration file. The value for this type is a @command{alsa-configuration} +record as in this example: @example (service alsa-service-type) @@ -13039,6 +13152,9 @@ See below for details about @code{alsa-configuration}. Data type representing the configuration for @code{alsa-service}. @table @asis +@item @code{alsa-plugins} (default: @var{alsa-plugins}) +@code{alsa-plugins} package to use. + @item @code{pulseaudio?} (default: @var{#t}) Whether ALSA applications should transparently be made to use the @uref{http://www.pulseaudio.org/, PulseAudio} sound server. @@ -13048,11 +13164,47 @@ at the same time and to individual control them @i{via} @command{pavucontrol}, among other things. @item @code{extra-options} (default: @var{""}) -String to append to the @file{asound.conf} file. +String to append to the @file{/etc/asound.conf} file. @end table @end deftp +Individual users who want to override the system configuration of ALSA can do +it with the @file{~/.asoundrc} file: + +@example +# In guix, we have to specify the absolute path for plugins. +pcm_type.jack @{ + lib "/home/alice/.guix-profile/lib/alsa-lib/libasound_module_pcm_jack.so" +@} + +# Routing ALSA to jack: +# . +pcm.rawjack @{ + type jack + playback_ports @{ + 0 system:playback_1 + 1 system:playback_2 + @} + + capture_ports @{ + 0 system:capture_1 + 1 system:capture_2 + @} +@} + +pcm.!default @{ + type plug + slave @{ + pcm "rawjack" + @} +@} +@end example + +See @uref{https://www.alsa-project.org/main/index.php/Asoundrc} for the +details. + + @node Database Services @subsubsection Database Services @@ -15866,6 +16018,10 @@ use the size of the processors cache line. @item @code{server-names-hash-bucket-max-size} (default: @code{#f}) Maximum bucket size for the server names hash tables. +@item @code{extra-content} (default: @code{""}) +Extra content for the @code{http} block. Should be string or a string +valued G-expression. + @end table @end deffn @@ -16852,8 +17008,8 @@ Specify IP address of upstream servers directly. Set the size of dnsmasq's cache. Setting the cache size to zero disables caching. -@item @code{no-negcache?} (default: @code{#f}) -When true, disable negative caching. +@item @code{negative-cache?} (default: @code{#t}) +When false, disable negative caching. @end table @end deftp @@ -17427,10 +17583,13 @@ The Cuirass package to use. @end table @end deftp -@node Power management Services -@subsubsection Power management Services +@node Power Management Services +@subsubsection Power Management Services +@cindex tlp @cindex power management with TLP +@subsubheading TLP daemon + The @code{(gnu services pm)} module provides a Guix service definition for the Linux power management tool TLP. @@ -17931,6 +18090,9 @@ Defaults to @samp{#f}. @end deftypevr +@cindex thermald +@cindex CPU frequency scaling with thermald +@subsubheading Thermald daemon The @code{(gnu services pm)} module provides an interface to thermald, a CPU frequency scaling service which helps prevent overheating. @@ -19926,6 +20088,21 @@ The port to bind the server to. @node Miscellaneous Services @subsubsection Miscellaneous Services +@cindex fingerprint +@subsubheading Fingerprint Service + +The @code{(gnu services fingerprint)} module provides a DBus service to +read and identify fingerprints via a fingerprint sensor. + +@defvr {Scheme Variable} fprintd-service-type +The service type for @command{fprintd}, which provides the fingerprint +reading capability. + +@example +(service fprintd-service-type) +@end example +@end defvr + @cindex sysctl @subsubheading System Control Service diff --git a/etc/completion/bash/guix-daemon b/etc/completion/bash/guix-daemon new file mode 100644 index 0000000000..997c142c7e --- /dev/null +++ b/etc/completion/bash/guix-daemon @@ -0,0 +1,30 @@ +# GNU Guix --- Functional package management for GNU +# Copyright © 2018 Oleg Pykhalov +# +# This file is part of GNU Guix. +# +# GNU Guix is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or (at +# your option) any later version. +# +# GNU Guix is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Guix. If not, see . + +# Bash completion for guix-daemon command. + +_guix_daemon_complete () +{ + local options="$(${COMP_WORDS[0]} --help 2> /dev/null \ + | grep '^ \+-' \ + | sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')" + compopt -o nospace + COMPREPLY=($(compgen -W "$options" -- "${COMP_WORDS[${#COMP_WORDS[*]} - 1]}")) +} + +complete -F _guix_daemon_complete guix-daemon diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index a131f3b506..06856dd58c 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -387,12 +387,18 @@ submenu \"GNU system, old configurations...\" {~%") ;; Install GRUB onto the EFI partition mounted at EFI-DIR, for the ;; system whose root is mounted at MOUNT-POINT. (let ((grub-install (string-append bootloader "/sbin/grub-install")) - (install-dir (string-append mount-point "/boot"))) + (install-dir (string-append mount-point "/boot")) + ;; When installing GuixSD, it's common to mount EFI-DIR below + ;; MOUNT-POINT rather than /boot/efi on the live image. + (target-esp (if (file-exists? (string-append mount-point efi-dir)) + (string-append mount-point efi-dir) + efi-dir))) ;; Tell 'grub-install' that there might be a LUKS-encrypted /boot or ;; root partition. (setenv "GRUB_ENABLE_CRYPTODISK" "y") (unless (zero? (system* grub-install "--boot-directory" install-dir - "--efi-directory" efi-dir)) + "--bootloader-id=GuixSD" + "--efi-directory" target-esp)) (error "failed to install GRUB (EFI)"))))) diff --git a/gnu/build/install.scm b/gnu/build/install.scm index 9e30c0d23e..5a5e703872 100644 --- a/gnu/build/install.scm +++ b/gnu/build/install.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès ;;; Copyright © 2016 Chris Marusich ;;; ;;; This file is part of GNU Guix. @@ -18,6 +18,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu build install) + #:use-module (guix store database) #:use-module (guix build utils) #:use-module (guix build store-copy) #:use-module (srfi srfi-26) @@ -25,7 +26,6 @@ #:export (install-boot-config evaluate-populate-directive populate-root-file-system - reset-timestamps register-closure populate-single-profile-directory)) @@ -110,9 +110,6 @@ STORE." ("/var/guix/gcroots/booted-system" -> "/run/booted-system") ("/var/guix/gcroots/current-system" -> "/run/current-system") - - ;; XXX: 'guix-register' creates this symlink with a wrong target, so - ;; create it upfront to be sure. ("/var/guix/gcroots/profiles" -> "/var/guix/profiles") (directory "/bin") @@ -144,37 +141,27 @@ includes /etc, /var, /run, /bin/sh, etc., and all the symlinks to SYSTEM." (try)) (apply throw args))))))) -(define (reset-timestamps directory) - "Reset the timestamps of all the files under DIRECTORY, so that they appear -as created and modified at the Epoch." - (display "clearing file timestamps...\n") - (for-each (lambda (file) - (let ((s (lstat file))) - ;; XXX: Guile uses libc's 'utime' function (not 'futime'), so - ;; the timestamp of symlinks cannot be changed, and there are - ;; symlinks here pointing to /gnu/store, which is the host, - ;; read-only store. - (unless (eq? (stat:type s) 'symlink) - (utime file 0 0 0 0)))) - (find-files directory #:directories? #t))) - -(define* (register-closure store closure - #:key (deduplicate? #t)) - "Register CLOSURE in STORE, where STORE is the directory name of the target -store and CLOSURE is the name of a file containing a reference graph as used -by 'guix-register'. As a side effect, this resets timestamps on store files -and, if DEDUPLICATE? is true, deduplicates files common to CLOSURE and the -rest of STORE." - (let ((status (apply system* "guix-register" "--prefix" store - (append (if deduplicate? '() '("--no-deduplication")) - (list closure))))) - (unless (zero? status) - (error "failed to register store items" closure)))) +(define* (register-closure prefix closure + #:key + (deduplicate? #t) (reset-timestamps? #t) + (schema (sql-schema))) + "Register CLOSURE in PREFIX, where PREFIX is the directory name of the +target store and CLOSURE is the name of a file containing a reference graph as +produced by #:references-graphs.. As a side effect, if RESET-TIMESTAMPS? is +true, reset timestamps on store files and, if DEDUPLICATE? is true, +deduplicates files common to CLOSURE and the rest of PREFIX." + (let ((items (call-with-input-file closure read-reference-graph))) + (register-items items + #:prefix prefix + #:deduplicate? deduplicate? + #:reset-timestamps? reset-timestamps? + #:registration-time %epoch + #:schema schema))) (define* (populate-single-profile-directory directory #:key profile closure deduplicate? - register?) + register? schema) "Populate DIRECTORY with a store containing PROFILE, whose closure is given in the file called CLOSURE (as generated by #:references-graphs.) DIRECTORY is initialized to contain a single profile under /root pointing to PROFILE. @@ -200,11 +187,11 @@ This is used to create the self-contained tarballs with 'guix pack'." (when register? (register-closure (canonicalize-path directory) closure - #:deduplicate? deduplicate?) + #:deduplicate? deduplicate? + #:schema schema) - ;; XXX: 'guix-register' registers profiles as GC roots but the symlink - ;; target uses $TMPDIR. Fix that. - (delete-file (scope "/var/guix/gcroots/profiles")) + (mkdir-p* "/var/guix/profiles") + (mkdir-p* "/var/guix/gcroots") (symlink* "/var/guix/profiles" "/var/guix/gcroots/profiles")) diff --git a/gnu/build/linux-modules.scm b/gnu/build/linux-modules.scm index 87d2e98edf..2ee2f1771f 100644 --- a/gnu/build/linux-modules.scm +++ b/gnu/build/linux-modules.scm @@ -32,6 +32,7 @@ ensure-dot-ko module-aliases module-dependencies + normalize-module-name recursive-module-dependencies modules-loaded module-loaded? diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index fa3ce7790d..abecc8c470 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -25,6 +25,7 @@ #:use-module (guix build utils) #:use-module (guix build store-copy) #:use-module (guix build syscalls) + #:use-module ((guix store database) #:select (reset-timestamps)) #:use-module (gnu build linux-boot) #:use-module (gnu build install) #:use-module (gnu system uuid) @@ -33,6 +34,7 @@ #:use-module (ice-9 format) #:use-module (ice-9 match) #:use-module (ice-9 regex) + #:use-module (ice-9 popen) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) #:use-module (srfi srfi-26) @@ -345,7 +347,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." ;; Optionally, register the inputs in the image's store. (when register-closures? (unless copy-closures? - ;; XXX: 'guix-register' wants to palpate the things it registers, so + ;; XXX: 'register-closure' wants to palpate the things it registers, so ;; bind-mount the store on the target. (mkdir-p target-store) (mount (%store-directory) target-store "" MS_BIND)) @@ -354,6 +356,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." (for-each (lambda (closure) (register-closure target (string-append "/xchg/" closure) + #:reset-timestamps? copy-closures? #:deduplicate? deduplicate?)) closures) (unless copy-closures? @@ -363,7 +366,7 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." (display "populating...\n") (populate-root-file-system system-directory target) - ;; 'guix-register' resets timestamps and everything, so no need to do it + ;; 'register-closure' resets timestamps and everything, so no need to do it ;; once more in that case. (unless register-closures? (reset-timestamps target)))) @@ -406,42 +409,67 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." register-closures? (closures '())) "Given a GRUB package, creates an iso image as TARGET, using CONFIG-FILE as GRUB configuration and OS-DRV as the stuff in it." - (let ((grub-mkrescue (string-append grub "/bin/grub-mkrescue")) - (target-store (string-append "/tmp/root" (%store-directory)))) - (populate-root-file-system os-drv "/tmp/root") + (define grub-mkrescue + (string-append grub "/bin/grub-mkrescue")) - (mount (%store-directory) target-store "" MS_BIND) + (define target-store + (string-append "/tmp/root" (%store-directory))) - (when register-closures? - (display "registering closures...\n") - (for-each (lambda (closure) - (register-closure - "/tmp/root" - (string-append "/xchg/" closure) - ;; XXX: Using deduplication causes cross device link errors. - #:deduplicate? #f)) - closures)) + (define items + ;; The store items to add to the image. + (delete-duplicates + (append-map (lambda (closure) + (map store-info-item + (call-with-input-file (string-append "/xchg/" closure) + read-reference-graph))) + closures))) - (apply invoke - `(,grub-mkrescue "-o" ,target - ,(string-append "boot/grub/grub.cfg=" config-file) - ,(string-append "gnu/store=" os-drv "/..") - "etc=/tmp/root/etc" - "var=/tmp/root/var" - "run=/tmp/root/run" - ;; /mnt is used as part of the installation - ;; process, as the mount point for the target - ;; file system, so create it. - "mnt=/tmp/root/mnt" - "--" - "-volid" ,(string-upcase volume-id) - ,@(if volume-uuid - `("-volume_date" "uuid" - ,(string-filter (lambda (value) - (not (char=? #\- value))) - (iso9660-uuid->string - volume-uuid))) - `()))))) + (populate-root-file-system os-drv "/tmp/root") + (mount (%store-directory) target-store "" MS_BIND) + + (when register-closures? + (display "registering closures...\n") + (for-each (lambda (closure) + (register-closure + "/tmp/root" + (string-append "/xchg/" closure) + + ;; TARGET-STORE is a read-only bind-mount so we shouldn't try + ;; to modify it. + #:deduplicate? #f + #:reset-timestamps? #f)) + closures) + (register-bootcfg-root "/tmp/root" config-file)) + + (let ((pipe + (apply open-pipe* OPEN_WRITE + grub-mkrescue "-o" target + (string-append "boot/grub/grub.cfg=" config-file) + "etc=/tmp/root/etc" + "var=/tmp/root/var" + "run=/tmp/root/run" + ;; /mnt is used as part of the installation + ;; process, as the mount point for the target + ;; file system, so create it. + "mnt=/tmp/root/mnt" + "-path-list" "-" + "--" + "-volid" (string-upcase volume-id) + (if volume-uuid + `("-volume_date" "uuid" + ,(string-filter (lambda (value) + (not (char=? #\- value))) + (iso9660-uuid->string + volume-uuid))) + `())))) + ;; Pass lines like 'gnu/store/…-x=/gnu/store/…-x' corresponding to the + ;; '-path-list -' option. + (for-each (lambda (item) + (format pipe "~a=~a~%" + (string-drop item 1) item)) + items) + (unless (zero? (close-pipe pipe)) + (error "oh, my! grub-mkrescue failed" grub-mkrescue)))) (define* (initialize-hard-disk device #:key diff --git a/gnu/local.mk b/gnu/local.mk index 5b6fe71d1c..1f09260a4a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -96,6 +96,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/chez.scm \ %D%/packages/ci.scm \ %D%/packages/cinnamon.scm \ + %D%/packages/cluster.scm \ %D%/packages/cmake.scm \ %D%/packages/cobol.scm \ %D%/packages/code.scm \ @@ -321,6 +322,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/ocaml.scm \ %D%/packages/ocr.scm \ %D%/packages/onc-rpc.scm \ + %D%/packages/opencl.scm \ %D%/packages/openbox.scm \ %D%/packages/openldap.scm \ %D%/packages/openstack.scm \ @@ -470,6 +472,7 @@ GNU_SYSTEM_MODULES = \ %D%/services/desktop.scm \ %D%/services/dict.scm \ %D%/services/dns.scm \ + %D%/services/authentication.scm \ %D%/services/games.scm \ %D%/services/kerberos.scm \ %D%/services/lirc.scm \ @@ -580,6 +583,9 @@ dist_patch_DATA = \ %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-completion-directories.patch \ %D%/packages/patches/bazaar-CVE-2017-14176.patch \ + %D%/packages/patches/beignet-correct-file-names.patch \ + %D%/packages/patches/bind-CVE-2018-5738.patch \ + %D%/packages/patches/binutils-aarch64-symbol-relocation.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/blast+-fix-makefile.patch \ %D%/packages/patches/boost-fix-icu-build.patch \ @@ -634,12 +640,13 @@ dist_patch_DATA = \ %D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ + %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \ + %D%/packages/patches/doxygen-gcc-ice.patch \ %D%/packages/patches/doxygen-test.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ %D%/packages/patches/e2fsprogs-glibc-2.27.patch \ %D%/packages/patches/eigen-arm-neon-fixes.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \ - %D%/packages/patches/elixir-disable-failing-tests.patch \ %D%/packages/patches/elogind-glibc-2.27.patch \ %D%/packages/patches/einstein-build.patch \ %D%/packages/patches/emacs-browse-at-remote-cgit-gnu.patch \ @@ -669,6 +676,7 @@ dist_patch_DATA = \ %D%/packages/patches/file-CVE-2017-1000249.patch \ %D%/packages/patches/findutils-localstatedir.patch \ %D%/packages/patches/findutils-test-xargs.patch \ + %D%/packages/patches/flann-cmake-3.11.patch \ %D%/packages/patches/flint-ldconfig.patch \ %D%/packages/patches/fltk-shared-lib-defines.patch \ %D%/packages/patches/fltk-xfont-on-demand.patch \ @@ -699,6 +707,7 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-6-cross-environment-variables.patch \ %D%/packages/patches/gcc-6-source-date-epoch-1.patch \ %D%/packages/patches/gcc-6-source-date-epoch-2.patch \ + %D%/packages/patches/gcc-8-strmov-store-file-names.patch \ %D%/packages/patches/gcr-disable-failing-tests.patch \ %D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch \ %D%/packages/patches/gd-CVE-2018-5711.patch \ @@ -782,14 +791,13 @@ dist_patch_DATA = \ %D%/packages/patches/hdf-eos5-remove-gctp.patch \ %D%/packages/patches/hdf-eos5-fix-szip.patch \ %D%/packages/patches/hdf-eos5-fortrantests.patch \ - %D%/packages/patches/heimdal-CVE-2017-6594.patch \ - %D%/packages/patches/heimdal-CVE-2017-11103.patch \ %D%/packages/patches/hmmer-remove-cpu-specificity.patch \ %D%/packages/patches/higan-remove-march-native-flag.patch \ %D%/packages/patches/hubbub-sort-entities.patch \ %D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \ + %D%/packages/patches/icecat-bug-1413868-pt1.patch \ %D%/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch \ %D%/packages/patches/icecat-use-system-graphite2.patch \ %D%/packages/patches/icecat-use-system-harfbuzz.patch \ @@ -799,6 +807,7 @@ dist_patch_DATA = \ %D%/packages/patches/isl-0.11.1-aarch64-support.patch \ %D%/packages/patches/jacal-fix-texinfo.patch \ %D%/packages/patches/java-apache-ivy-port-to-latest-bouncycastle.patch \ + %D%/packages/patches/java-commons-collections-fix-java8.patch \ %D%/packages/patches/java-jeromq-fix-tests.patch \ %D%/packages/patches/java-powermock-fix-java-files.patch \ %D%/packages/patches/java-simple-xml-fix-tests.patch \ @@ -866,6 +875,7 @@ dist_patch_DATA = \ %D%/packages/patches/libmad-mips-newgcc.patch \ %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \ %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \ + %D%/packages/patches/libreoffice-icu.patch \ %D%/packages/patches/libsndfile-armhf-type-checks.patch \ %D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \ %D%/packages/patches/libsndfile-CVE-2017-8362.patch \ @@ -876,6 +886,8 @@ dist_patch_DATA = \ %D%/packages/patches/libtheora-config-guess.patch \ %D%/packages/patches/libtiff-CVE-2017-9935.patch \ %D%/packages/patches/libtiff-CVE-2017-18013.patch \ + %D%/packages/patches/libtiff-CVE-2018-8905.patch \ + %D%/packages/patches/libtiff-CVE-2018-10963.patch \ %D%/packages/patches/libtool-skip-tests2.patch \ %D%/packages/patches/libusb-0.1-disable-tests.patch \ %D%/packages/patches/libusb-for-axoloti.patch \ @@ -913,6 +925,8 @@ dist_patch_DATA = \ %D%/packages/patches/mars-install.patch \ %D%/packages/patches/mars-sfml-2.3.patch \ %D%/packages/patches/maxima-defsystem-mkdir.patch \ + %D%/packages/patches/maven-generate-component-xml.patch \ + %D%/packages/patches/maven-generate-javax-inject-named.patch \ %D%/packages/patches/mcron-install.patch \ %D%/packages/patches/mcrypt-CVE-2012-4409.patch \ %D%/packages/patches/mcrypt-CVE-2012-4426.patch \ @@ -932,6 +946,8 @@ dist_patch_DATA = \ %D%/packages/patches/mozjs38-shell-version.patch \ %D%/packages/patches/mozjs38-tracelogger.patch \ %D%/packages/patches/mozjs38-version-detection.patch \ + %D%/packages/patches/mrrescue-support-love-11.patch \ + %D%/packages/patches/mumble-1.2.19-abs.patch \ %D%/packages/patches/mumps-build-parallelism.patch \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \ %D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \ @@ -950,10 +966,12 @@ dist_patch_DATA = \ %D%/packages/patches/nvi-assume-preserve-path.patch \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \ %D%/packages/patches/nvi-db4.patch \ + %D%/packages/patches/nyx-show-header-stats-with-python3.patch \ %D%/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch \ %D%/packages/patches/ocaml-bitstring-fix-configure.patch \ %D%/packages/patches/ocaml-CVE-2015-8869.patch \ %D%/packages/patches/ocaml-Add-a-.file-directive.patch \ + %D%/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch \ %D%/packages/patches/ocaml-findlib-make-install.patch \ %D%/packages/patches/ocaml-graph-honor-source-date-epoch.patch \ %D%/packages/patches/omake-fix-non-determinism.patch \ @@ -964,7 +982,12 @@ dist_patch_DATA = \ %D%/packages/patches/openldap-CVE-2017-9287.patch \ %D%/packages/patches/openocd-nrf52.patch \ %D%/packages/patches/openscenegraph-ffmpeg3.patch \ + %D%/packages/patches/opensmtpd-fix-crash.patch \ %D%/packages/patches/openssl-runpath.patch \ + %D%/packages/patches/openssl-1.0.2-CVE-2018-0495.patch \ + %D%/packages/patches/openssl-1.0.2-CVE-2018-0732.patch \ + %D%/packages/patches/openssl-1.1.0-CVE-2018-0495.patch \ + %D%/packages/patches/openssl-1.1.0-CVE-2018-0732.patch \ %D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \ %D%/packages/patches/openssl-c-rehash-in.patch \ %D%/packages/patches/orpheus-cast-errors-and-includes.patch \ @@ -974,12 +997,12 @@ dist_patch_DATA = \ %D%/packages/patches/p7zip-CVE-2016-9296.patch \ %D%/packages/patches/p7zip-CVE-2017-17969.patch \ %D%/packages/patches/p7zip-remove-unused-code.patch \ - %D%/packages/patches/password-store-gnupg-compat.patch \ %D%/packages/patches/patchelf-page-size.patch \ %D%/packages/patches/patchelf-rework-for-arm.patch \ %D%/packages/patches/patchutils-xfail-gendiff-tests.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ %D%/packages/patches/perf-gcc-ice.patch \ + %D%/packages/patches/perl-archive-tar-CVE-2018-12015.patch \ %D%/packages/patches/perl-file-path-CVE-2017-6512.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \ %D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \ @@ -1042,7 +1065,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-genshi-stripping-of-unsafe-script-tags.patch \ %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \ %D%/packages/patches/python-networkx2-reproducible-build.patch \ - %D%/packages/patches/python-nose-timer-drop-ordereddict.patch \ %D%/packages/patches/python-pillow-fix-failing-tests.patch \ %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ %D%/packages/patches/python-scikit-learn-fix-test-non-determinism.patch \ @@ -1060,6 +1082,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-unittest2-remove-argparse.patch \ %D%/packages/patches/python-waitress-fix-tests.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \ + %D%/packages/patches/qemu-CVE-2018-11806.patch \ %D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ @@ -1103,7 +1126,6 @@ dist_patch_DATA = \ %D%/packages/patches/slim-login.patch \ %D%/packages/patches/sooperlooper-build-with-wx-30.patch \ %D%/packages/patches/steghide-fixes.patch \ - %D%/packages/patches/strace-kernel-4.16.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ %D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-format-security.patch \ @@ -1149,6 +1171,7 @@ dist_patch_DATA = \ %D%/packages/patches/ustr-fix-build-with-gcc-5.patch \ %D%/packages/patches/util-linux-tests.patch \ %D%/packages/patches/upower-builddir.patch \ + %D%/packages/patches/upx-fix-CVE-2017-15056.patch \ %D%/packages/patches/valgrind-enable-arm.patch \ %D%/packages/patches/valgrind-glibc-compat.patch \ %D%/packages/patches/vinagre-revert-1.patch \ @@ -1180,6 +1203,7 @@ dist_patch_DATA = \ %D%/packages/patches/wpa-supplicant-fix-nonce-reuse.patch \ %D%/packages/patches/wpa-supplicant-krack-followups.patch \ %D%/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch \ + %D%/packages/patches/x265-fix-ppc64le-build.patch \ %D%/packages/patches/xboing-CVE-2004-0149.patch \ %D%/packages/patches/xdotool-fix-makefile.patch \ %D%/packages/patches/xf86-video-ark-remove-mibstore.patch \ @@ -1195,7 +1219,6 @@ dist_patch_DATA = \ %D%/packages/patches/xinetd-fix-fd-leak.patch \ %D%/packages/patches/xinetd-CVE-2013-4342.patch \ %D%/packages/patches/xmodmap-asprintf.patch \ - %D%/packages/patches/libyaml-CVE-2014-9130.patch \ %D%/packages/patches/zathura-plugindir-environment-variable.patch MISC_DISTRO_FILES = \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index fde09b001b..f00bcd89d7 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2017, 2018 Marius Bakke ;;; Copyright © 2018 Arun Isaac ;;; Copyright © 2018 Pierre-Antoine Rouby +;;; Copyright © 2018 Rutger Helling ;;; ;;; This file is part of GNU Guix. ;;; @@ -139,13 +140,13 @@ usual file attributes can be checked for inconsistencies.") (define-public progress (package (name "progress") - (version "0.13.1") + (version "0.14") (source (origin (method url-fetch) (uri (string-append "https://github.com/Xfennec/" name "/archive/v" version ".tar.gz")) (sha256 - (base32 "199rk6608q9m6l0fbjm0xl2w1c5krf8245dqnksdp4rqp7l9ak06")) + (base32 "1wcanixfsi5k4i9h5vrnncgjdncalsdfqllrxibxwpgfnf20sji1")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (native-inputs @@ -255,7 +256,7 @@ services.") (origin (method url-fetch) (uri (string-append - "http://projects.gw-computing.net/attachments/download/615/dfc-" + "https://projects.gw-computing.net/attachments/download/615/dfc-" version ".tar.gz")) (sha256 (base32 @@ -263,7 +264,7 @@ services.") (build-system cmake-build-system) (arguments '(#:tests? #f)) ; There are no tests. (native-inputs `(("gettext" ,gettext-minimal))) - (home-page "http://projects.gw-computing.net/projects/dfc") + (home-page "https://projects.gw-computing.net/projects/dfc") (synopsis "Display file system space usage using graphs and colors") (description "dfc (df color) is a modern version of df. It uses colors, draws pretty @@ -507,7 +508,7 @@ allow automatic login and starting any app.") "This package provides the /etc/services, /etc/protocols, and /etc/rpc files, which contain information about the IANA-assigned port, protocol, and ONC RPC numbers.") - (home-page "http://packages.debian.org/sid/netbase") + (home-page "https://packages.debian.org/sid/netbase") (license license:gpl2))) (define-public netcat @@ -752,7 +753,7 @@ tools: server, client, and relay agent.") (version "1.8.1") (source (origin (method url-fetch) - (uri (string-append "http://www.tcpdump.org/release/libpcap-" + (uri (string-append "https://www.tcpdump.org/release/libpcap-" version ".tar.gz")) (sha256 (base32 @@ -761,7 +762,7 @@ tools: server, client, and relay agent.") (native-inputs `(("bison" ,bison) ("flex" ,flex))) (arguments '(#:configure-flags '("--with-pcap=linux") #:tests? #f)) ; no 'check' target - (home-page "http://www.tcpdump.org") + (home-page "https://www.tcpdump.org") (synopsis "Network packet capture library") (description "libpcap is an interface for user-level packet capture. It provides a @@ -777,7 +778,7 @@ network statistics collection, security monitoring, network debugging, etc.") (version "4.9.2") (source (origin (method url-fetch) - (uri (string-append "http://www.tcpdump.org/release/tcpdump-" + (uri (string-append "https://www.tcpdump.org/release/tcpdump-" version ".tar.gz")) (sha256 (base32 @@ -786,7 +787,7 @@ network statistics collection, security monitoring, network debugging, etc.") (inputs `(("libpcap" ,libpcap) ("openssl" ,openssl))) (native-inputs `(("perl" ,perl))) ; for tests - (home-page "http://www.tcpdump.org/") + (home-page "https://www.tcpdump.org/") (synopsis "Network packet analyzer") (description "Tcpdump is a command-line tool to analyze network traffic passing @@ -822,41 +823,36 @@ by bandwidth they use.") (define-public clusterssh (package (name "clusterssh") - (version "3.28") + (version "4.13.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/clusterssh/" - "1.%20ClusterSSH%20Series%203/" version - "/clusterssh-" version ".tar.gz")) + "2.%20ClusterSSH%20Series%204/" + "App-ClusterSSH-v" version ".tar.gz")) (sha256 (base32 - "1bwggpvaj2al5blg1ynapviv2kpydffpzq2zkhi81najnvzc1rr7")))) - (build-system gnu-build-system) - (inputs `(("perl" ,perl))) - (propagated-inputs `(("xterm" ,xterm) - ("perl-tk" ,perl-tk) - ("perl-x11-protocol" ,perl-x11-protocol))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'install 'set-load-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Put the perl-tk and perl-x11-protocol modules in the perl inc - ;; path for PROG - (let* ((out (assoc-ref outputs "out")) - (prog (string-append out "/bin/cssh")) - (perl-ver ,(package-version perl)) - (x11-inc (string-append - (assoc-ref inputs "perl-x11-protocol") - "/lib/perl5/site_perl/" perl-ver)) - (tk-inc (string-append - (assoc-ref inputs "perl-tk") - "/lib/perl5/site_perl/" perl-ver - "/x86_64-linux"))) - (wrap-program - prog - `("PERL5LIB" ":" prefix (,x11-inc ,tk-inc)))) - #t))))) + "0rmk2p3f2wz1h092anidjclh212rv3gxyk0c641qk3frlrjnw6mp")))) + (build-system perl-build-system) + (native-inputs + `(("perl-cpan-changes" ,perl-cpan-changes) + ("perl-file-slurp" ,perl-file-slurp) + ("perl-file-which" ,perl-file-which) + ("perl-module-build" ,perl-module-build) + ("perl-readonly" ,perl-readonly) + ("perl-test-differences" ,perl-test-differences) + ("perl-test-distmanifest" ,perl-test-distmanifest) + ("perl-test-perltidy" ,perl-test-perltidy) + ("perl-test-pod" ,perl-test-pod) + ("perl-test-pod-coverage" ,perl-test-pod-coverage) + ("perl-test-trap" ,perl-test-trap) + ("perltidy" ,perltidy))) + (propagated-inputs + `(("xterm" ,xterm) + ("perl-exception-class" ,perl-exception-class) + ("perl-tk" ,perl-tk) + ("perl-try-tiny" ,perl-try-tiny) + ("perl-x11-protocol" ,perl-x11-protocol) + ("perl-x11-protocol-other" ,perl-x11-protocol-other))) ;; The clusterssh.sourceforge.net address requires login to view (home-page "https://sourceforge.net/projects/clusterssh/") (synopsis "Secure concurrent multi-server terminal control") @@ -869,7 +865,7 @@ over ssh connections.") (define-public rename (package (name "rename") - (version "0.20") + (version "0.35") (source (origin (method url-fetch) (uri (string-append @@ -877,7 +873,7 @@ over ssh connections.") version ".tar.gz")) (sha256 (base32 - "1cf6xx2hiy1xalp35fh8g73j67r0w0g66jpcbc6971x9jbm7bvjy")))) + "052iqmn7ya3w1nadpiyavmr3rx566r0lbflx94y8b5wx9q5c16rq")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build) @@ -1047,7 +1043,7 @@ commands and their arguments.") (source (origin (method url-fetch) (uri (string-append - "http://w1.fi/releases/wpa_supplicant-" + "https://w1.fi/releases/wpa_supplicant-" version ".tar.gz")) (patches (search-patches "wpa-supplicant-CVE-2017-13082.patch" @@ -1108,7 +1104,7 @@ commands and their arguments.") ("libgcrypt" ,libgcrypt))) ;needed by crypto_gnutls.c (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://w1.fi/wpa_supplicant/") + (home-page "https://w1.fi/wpa_supplicant/") (synopsis "Connecting to WPA and WPA2-protected wireless networks") (description "wpa_supplicant is a WPA Supplicant with support for WPA and WPA2 (IEEE @@ -1225,7 +1221,7 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.") (string-append "--mandir=" out "/share/man"))))))) #:tests? #f)) - (home-page "http://kernel.org") ; really, no home page + (home-page "https://www.kernel.org") ; really, no home page (synopsis "Send a wake-on-LAN packet") (description "WakeLan broadcasts a properly formatted UDP packet across the local area @@ -1460,7 +1456,7 @@ track changes in important system configuration files.") (source (origin (method url-fetch) (uri (string-append - "http://people.redhat.com/sgrubb/libcap-ng/libcap-ng-" + "https://people.redhat.com/sgrubb/libcap-ng/libcap-ng-" version ".tar.gz")) (sha256 (base32 @@ -1655,7 +1651,7 @@ limits.") (define-public autojump (package (name "autojump") - (version "22.3.4") + (version "22.5.1") (source (origin (method url-fetch) @@ -1664,7 +1660,7 @@ limits.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "113rcpr37ngf2xs8da41qdarq5qmj0dwx8ggqy3lhlb0kvqq7g9z")))) + "17z9j9936x0nizwrzf664bngh60x5qbvrrf1s5qdzd0f2gdanpvn")))) (build-system gnu-build-system) (native-inputs ;for tests `(("python-mock" ,python-mock) @@ -1672,36 +1668,19 @@ limits.") (inputs `(("python" ,python-wrapper))) (arguments - `(#:phases (modify-phases %standard-phases - (delete 'configure) - (delete 'build) - (replace 'check - (lambda _ - (zero? - (system* "python" "tests/unit/autojump_utils_test.py")))) - (replace 'install - ;; The install.py script doesn't allow system installation - ;; into an arbitrary prefix, so do our own install. - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (share (string-append out "/share/autojump")) - (py (string-append out "/lib/python" - ,(version-major+minor - (package-version python-wrapper)) - "/site-packages")) - (man (string-append out "/share/man/man1"))) - (install-file "bin/autojump" bin) - (for-each (λ (f) (install-file f py)) - (find-files "bin" "\\.py$")) - (for-each (λ (f) (install-file f share)) - (find-files "bin" "autojump\\..*$")) - (substitute* (string-append share "/autojump.sh") - (("/usr/local") out)) - (install-file "docs/autojump.1" man) - (wrap-program (string-append bin "/autojump") - `("PYTHONPATH" ":" prefix (,py))) - #t)))))) + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'check + (lambda _ + (invoke "python" "tests/unit/autojump_utils_test.py"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (setenv "SHELL" (which "bash")) + (invoke "python" "install.py" + (string-append "--destdir=" + (assoc-ref outputs "out")))))))) (home-page "https://github.com/wting/autojump") (synopsis "Shell extension for file system navigation") (description @@ -1796,13 +1775,13 @@ platform-specific methods.") (version "2.4.5") (source (origin (method url-fetch) - (uri (string-append "http://people.redhat.com/sgrubb/audit/" + (uri (string-append "https://people.redhat.com/sgrubb/audit/" "audit-" version ".tar.gz")) (sha256 (base32 "1q1q51dvxscbi4kbakmd4bn0xrvwwaiwvaya79925cbrqwzxsg77")))) (build-system gnu-build-system) - (home-page "http://people.redhat.com/sgrubb/audit/") + (home-page "https://people.redhat.com/sgrubb/audit/") (arguments `(#:configure-flags (list "--with-python=no") #:phases @@ -2131,7 +2110,7 @@ with @code{ChallengeResponseAuthentication} and @code{PrivilegeSeparation} enabled, and supports extensive configuration either by PAM options or in krb5.conf or both. PKINIT is supported with recent versions of both MIT Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") - (home-page "http://www.eyrie.org/~eagle/software/pam-krb5") + (home-page "https://www.eyrie.org/~eagle/software/pam-krb5") ;; Dual licenced under a homebrew non-copyleft OR GPL (any version) ;; However, the tarball does not contain a copy of the GPL, so unless ;; we put one in, we cannot distribute it under GPL without violating @@ -2359,11 +2338,23 @@ Intel DRM Driver.") "13r0b0hllgf8j9rh6x1knmbgvingbdmx046aazv6vck2ll120mw1")))) (build-system python-build-system) (arguments - `(#:python ,python-2)) ; Python 2 only + `(#:python ,python-2 ; Python 2 only + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke + "nosetests" "-v" "tests/" + ;; This test hangs indefinitely when run on a single core VM + ;; (see GNU bug #26647 and Debian bug #850230). + "--exclude=test_nested_execution_with_explicit_ports" + ;; This test randomly fails in certain environments causing too + ;; much noise to be useful (see Debian bug #854686). + "--exclude=test_should_use_sentinel_for_tasks_that_errored")))))) (native-inputs - `(("python2-fudge" ,python2-fudge) - ("python2-jinja2" ,python2-jinja2) - ("python2-nose" ,python2-nose) + `(("python2-fudge" ,python2-fudge) ; Requires < 1.0 + ("python2-jinja2" ,python2-jinja2) ; Requires < 3.0 + ("python2-nose" ,python2-nose) ; Requires < 2.0 ("python2-pynacl" ,python2-pynacl) ("python2-bcrypt" ,python2-bcrypt))) (propagated-inputs @@ -2383,15 +2374,15 @@ tool for remote execution and deployment.") (define-public neofetch (package (name "neofetch") - (version "3.4.0") + (version "5.0.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/dylanaraps/neofetch/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dylanaraps/neofetch") + (commit version))) (sha256 (base32 - "18rhamy910ig03rr55y9x5i6pf78yj9xc6jpm6nfh3gqja7340rb")))) + "0yzyi2p0d8xp576lxyv5m9h60dl1d5dmrn40aad307872835b9rr")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; there are no tests @@ -2399,31 +2390,11 @@ tool for remote execution and deployment.") (list (string-append "PREFIX=" %output)) #:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-target-directories - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* "Makefile" - (("\\$\\(DESTDIR\\)/etc/") - "$(PREFIX)/etc/")) - (substitute* "neofetch" - (("\"/etc/neofetch") - (string-append "\"" out "/etc/neofetch")) - (("\"/usr/share/neofetch") - (string-append "\"" out "/share/neofetch")))) - #t)) - (delete 'configure) ; no configure script - (replace 'install - (lambda* (#:key make-flags outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (doc (string-append out "/share/doc/" ,name "-" ,version)) - (etc (string-append doc "/examples/etc"))) - (zero? (apply system* `("make" ,@make-flags - ,(string-append "SYSCONFDIR=" etc) - "install"))))))))) + (delete 'configure)))) ; no configure script (home-page "https://github.com/dylanaraps/neofetch") - (synopsis "System info script") - (description "Neofetch is a CLI system information tool written in Bash. -Neofetch displays information about your system next to an image, your OS + (synopsis "System information script") + (description "Neofetch is a command-line system information tool written in +Bash. Neofetch displays information about your system next to an image, your OS logo, or any ASCII file of your choice. The main purpose of Neofetch is to be used in screenshots to show other users what operating system or distribution you are running, what theme or icon set you are using, etc.") @@ -2661,7 +2632,7 @@ Python loading in HPC environments.") (let ((real-name "inxi")) (package (name "inxi-minimal") - (version "3.0.11-1") + (version "3.0.13-1") (source (origin (method git-fetch) @@ -2670,7 +2641,7 @@ Python loading in HPC environments.") (commit version))) (sha256 (base32 - "07wihl4gsamq98mhxvm6k4vpphym75467cxfa19b3g5ggpyq894g")))) + "0732ligzmzwpwaxin4g8rbfj91ghyvf69lx2jyrahi4df0bfamh5")))) (build-system trivial-build-system) (inputs `(("bash" ,bash) @@ -2727,10 +2698,10 @@ Python loading in HPC environments.") (string-append %output "/share/man/man1"))) #t))) (home-page "https://smxi.org/docs/inxi.htm") - (synopsis "Full featured system information script") + (synopsis "Full-featured system information script") (description "Inxi is a system information script that can display various things about your hardware and software to users in an IRC chatroom or -support forum. It runs with the /exec command in most IRC clients.") +support forum. It runs with the @code{/exec} command in most IRC clients.") (license license:gpl3+)))) (define-public inxi diff --git a/gnu/packages/aidc.scm b/gnu/packages/aidc.scm index 4615b346d6..64d26548c4 100644 --- a/gnu/packages/aidc.scm +++ b/gnu/packages/aidc.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2014 John Darringon ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2017 Hartmut Goebel +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -51,7 +52,7 @@ formats.") (define-public qrencode (package (name "qrencode") - (version "4.0.0") + (version "4.0.2") (source (origin (method url-fetch) (uri (string-append @@ -59,7 +60,7 @@ formats.") ".tar.bz2")) (sha256 (base32 - "02vx69fl52jbcrmnydsaxcmy6nxqm9jyxzd7hr07s491d7hka069")))) + "1d2q5d3v8g3hsi3h5jq4n177bjhf3kawms09immw7p187f6jgjy9")))) (build-system gnu-build-system) (inputs `(("libpng" ,libpng))) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 816f013655..45d15d6fd5 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -143,7 +143,7 @@ solve the shortest vector problem.") (source (origin (method url-fetch) (uri (string-append - "http://pari.math.u-bordeaux.fr/pub/pari/unix/pari-" + "https://pari.math.u-bordeaux.fr/pub/pari/unix/pari-" version ".tar.gz")) (sha256 (base32 @@ -174,7 +174,7 @@ polynomials, power series, algebraic numbers, etc., and a lot of transcendental functions. PARI is also available as a C library to allow for faster computations.") (license license:gpl2+) - (home-page "http://pari.math.u-bordeaux.fr/"))) + (home-page "https://pari.math.u-bordeaux.fr/"))) (define-public gp2c (package @@ -183,7 +183,7 @@ PARI is also available as a C library to allow for faster computations.") (source (origin (method url-fetch) (uri (string-append - "http://pari.math.u-bordeaux.fr/pub/pari/GP2C/gp2c-" + "https://pari.math.u-bordeaux.fr/pub/pari/GP2C/gp2c-" version ".tar.gz")) (sha256 (base32 @@ -208,7 +208,7 @@ PARI is also available as a C library to allow for faster computations. GP2C, the GP to C compiler, translates GP scripts to PARI programs.") (license license:gpl2) - (home-page "http://pari.math.u-bordeaux.fr/"))) + (home-page "https://pari.math.u-bordeaux.fr/"))) (define-public giac-xcas (package @@ -746,7 +746,7 @@ Sine Transform} (DST) and @dfn{Discrete Hartley Transform} (DHT).") ;; Then run 'CTest' with -V so we get more ;; details upon failure. (zero? (system* "ctest" "-V" dash-j))))))))) - (home-page "http://eigen.tuxfamily.org") + (home-page "https://eigen.tuxfamily.org") (synopsis "C++ template library for linear algebra") (description "Eigen is a C++ template library for linear algebra: matrices, vectors, diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm index b56a081984..a10747ef38 100644 --- a/gnu/packages/animation.scm +++ b/gnu/packages/animation.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2017 Ricardo Wurmus +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -52,7 +53,7 @@ (base32 "0ii73nsd3xzkhz6w1rnxwphl637j9w82xiy6apa9vin2isdynnmc")))) (build-system gnu-build-system) - (home-page "http://www.synfig.org") + (home-page "https://www.synfig.org") (synopsis "Extended C++ template library") (description "ETL is a class and template library designed to add new datatypes and @@ -130,7 +131,7 @@ C++ @dfn{Standard Template Library} (STL).") ("pango" ,pango))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://www.synfig.org") + (home-page "https://www.synfig.org") (synopsis "Vector-based 2D animation renderer") (description "Synfig is a vector-based 2D animation package. It is designed to be @@ -180,7 +181,7 @@ for tweening, preventing the need to hand-draw each frame.") (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) - (home-page "http://www.synfig.org") + (home-page "https://www.synfig.org") (synopsis "Vector-based 2D animation package (GUI)") (description "Synfig is a vector-based 2D animation package. It is designed to @@ -226,10 +227,10 @@ contains the graphical user interface for synfig.") "\nLIBS +=" libsndfile "/lib/libsndfile.so\n" "win32 {")))) - (zero? (system* "qmake" - (string-append "DESTDIR=" - (assoc-ref outputs "out") - "/bin"))))) + (invoke "qmake" + (string-append "DESTDIR=" + (assoc-ref outputs "out") + "/bin")))) ;; Ensure that all required Qt plugins are found at runtime. (add-after 'install 'wrap-executable (lambda* (#:key inputs outputs #:allow-other-keys) @@ -248,7 +249,7 @@ contains the graphical user interface for synfig.") ("libsndfile" ,libsndfile))) (native-inputs `(("qttools" ,qttools))) - (home-page "http://www.lostmarble.com/papagayo/") + (home-page "https://www.lostmarble.com/papagayo/") (synopsis "Lip-syncing for animations") (description "Papagayo is a lip-syncing program designed to help you line up diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 232157da34..8129da832d 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -116,7 +116,9 @@ header.") `(("cfitsio" ,cfitsio) ("gsl" ,gsl) ("libjpeg" ,libjpeg) - ("wcslib" ,wcslib))) + ("libtiff" ,libtiff) + ("wcslib" ,wcslib) + ("zlib" ,zlib))) (build-system gnu-build-system) (home-page "https://www.gnu.org/software/gnuastro/") (synopsis "Astronomy utilities") diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index d8dc1e3134..98f66aae88 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1220,7 +1220,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.") (define-public guitarix (package (name "guitarix") - (version "0.36.1") + (version "0.37.1") (source (origin (method url-fetch) (uri (string-append @@ -1228,7 +1228,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.") version ".tar.xz")) (sha256 (base32 - "1g5949jwh2n755xjs3kcbdb8a1wxr5mn0m115wdnk27dxcdn93b0")))) + "064k0jzxqgx9gwf8za6jziansabzrwzjaim3qx1743ify5g3gaai")))) (build-system waf-build-system) (arguments `(#:tests? #f ; no "check" target @@ -1476,7 +1476,7 @@ synchronous execution of all clients, and low latency operation.") (version "1.6.0") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/jalv-" + (uri (string-append "https://download.drobilla.net/jalv-" version ".tar.bz2")) (sha256 (base32 @@ -1501,7 +1501,7 @@ synchronous execution of all clients, and low latency operation.") ("jack" ,jack-1))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/jalv/") + (home-page "https://drobilla.net/software/jalv/") (synopsis "Simple LV2 host for JACK") (description "Jalv is a simple but fully featured LV2 host for JACK. It runs LV2 @@ -1711,7 +1711,7 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.") (version "0.24.2") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/lilv-" + (uri (string-append "https://download.drobilla.net/lilv-" version ".tar.bz2")) (sha256 (base32 @@ -1737,7 +1737,7 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.") `(("lv2" ,lv2))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/lilv/") + (home-page "https://drobilla.net/software/lilv/") (synopsis "Library to simplify use of LV2 plugins in applications") (description "Lilv is a C library to make the use of LV2 plugins as simple as possible @@ -1890,7 +1890,7 @@ lv2-c++-tools.") (define-public openal (package (name "openal") - (version "1.17.2") + (version "1.18.2") (source (origin (method url-fetch) (uri (string-append @@ -1898,7 +1898,7 @@ lv2-c++-tools.") version ".tar.bz2")) (sha256 (base32 - "051k5fy8pk4fd9ha3qaqcv08xwbks09xl5qs4ijqq2qz5xaghhd3")))) + "10kydm8701a2kppiss9sdidn1820cmzhqgx1b2bsa5dsgzic32lz")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no check target @@ -1966,7 +1966,7 @@ buffers, and audio capture.") (version "1.0.0") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/patchage-" + (uri (string-append "https://download.drobilla.net/patchage-" version ".tar.bz2")) (sha256 @@ -1984,7 +1984,7 @@ buffers, and audio capture.") ("dbus-glib" ,dbus-glib))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/patchage/") + (home-page "https://drobilla.net/software/patchage/") (synopsis "Modular patch bay for audio and MIDI systems") (description "Patchage is a modular patch bay for audio and MIDI systems based on JACK @@ -2163,7 +2163,7 @@ using GuixSD.") (version "0.8.0") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/raul-" + (uri (string-append "https://download.drobilla.net/raul-" version ".tar.bz2")) (sha256 (base32 @@ -2177,7 +2177,7 @@ using GuixSD.") ("boost" ,boost))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/raul/") + (home-page "https://drobilla.net/software/raul/") (synopsis "Real-time audio utility library") (description "Raul (Real-time Audio Utility Library) is a C++ utility library primarily @@ -2194,7 +2194,7 @@ aimed at audio/musical applications.") (source (origin (method git-fetch) (uri (git-reference - (url "http://git.drobilla.net/raul.git") + (url "https://git.drobilla.net/raul.git") (commit commit))) (file-name (string-append name "-" version "-checkout")) (sha256 @@ -2249,7 +2249,7 @@ tempo and pitch of an audio recording independently of one another.") #:phases (modify-phases %standard-phases (add-after 'unpack 'autoconf - (lambda _ (zero? (system* "autoreconf" "-vfi")))) + (lambda _ (invoke "autoreconf" "-vfi"))) (add-before 'build 'fix-makefile (lambda _ @@ -2287,7 +2287,7 @@ input/output.") (version "0.6.0") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/sratom-" + (uri (string-append "https://download.drobilla.net/sratom-" version ".tar.bz2")) (sha256 (base32 @@ -2300,7 +2300,7 @@ input/output.") ("sord" ,sord))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/sratom/") + (home-page "https://drobilla.net/software/sratom/") (synopsis "Library for serialising LV2 atoms to/from RDF") (description "Sratom is a library for serialising LV2 atoms to/from RDF, particularly @@ -2313,7 +2313,7 @@ the Turtle syntax.") (version "0.10.0") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/suil-" + (uri (string-append "https://download.drobilla.net/suil-" version ".tar.bz2")) (sha256 (base32 @@ -2330,7 +2330,7 @@ the Turtle syntax.") ("qt" ,qtbase))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/suil/") + (home-page "https://drobilla.net/software/suil/") (synopsis "Library for loading and wrapping LV2 plugin UIs") (description "Suil is a lightweight C library for loading and wrapping LV2 plugin UIs. @@ -2723,7 +2723,7 @@ portions of LAME.") (modify-phases %standard-phases (add-after 'unpack 'autoreconf (lambda _ - (zero? (system* "autoreconf" "-vif"))))) + (invoke "autoreconf" "-vif")))) #:tests? #f)) ;no 'check' target (home-page "http://www.portaudio.com/") (synopsis "Audio I/O library") @@ -2791,9 +2791,8 @@ synthesizer written in C++.") (replace 'configure (lambda* (#:key outputs #:allow-other-keys) (setenv "CC" "gcc") - (zero? - (system* "./configure" - (string-append "--prefix=" (assoc-ref outputs "out"))))))) + (invoke "./configure" + (string-append "--prefix=" (assoc-ref outputs "out")))))) ;; No 'check' target. #:tests? #f)) (home-page "http://themaister.net/rsound.html") diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 8d988a08a2..9884f58fc3 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2017 Christopher Allan Webber ;;; Copyright © 2017 Rutger Helling ;;; Copyright © 2018 Mark H Weaver +;;; Copyright © 2018 Oleg Pykhalov ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,6 +33,7 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system go) #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages acl) @@ -45,6 +47,7 @@ #:use-module (gnu packages ftp) #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) + #:use-module (gnu packages golang) #:use-module (gnu packages gperf) #:use-module (gnu packages guile) #:use-module (gnu packages linux) @@ -64,7 +67,7 @@ (define-public duplicity (package (name "duplicity") - (version "0.7.12") + (version "0.7.17") (source (origin (method url-fetch) @@ -74,12 +77,13 @@ version ".tar.gz")) (sha256 (base32 - "1rhgrz2lm9vbfdp2raykrih1c6n2lw5jd572z4dsz488m52avjqi")))) + "0jmh3h09680xyf33hzxxxl74bwz66zqhzvjlj7j89r9rz3qwa91p")))) (build-system python-build-system) (native-inputs `(("util-linux" ,util-linux) ;setsid command, for the tests ("par2cmdline" ,par2cmdline) ("python-pexpect" ,python2-pexpect) + ("python-fasteners" ,python2-fasteners) ("mock" ,python2-mock))) (propagated-inputs `(("lockfile" ,python2-lockfile) @@ -143,7 +147,7 @@ spying and/or modification by the server.") `(#:phases (modify-phases %standard-phases (add-after 'unpack 'autoreconf - (lambda _ (zero? (system* "autoreconf" "-vfi"))))))) + (lambda _ (invoke "autoreconf" "-vfi")))))) (synopsis "File verification and repair tools") (description "Par2cmdline uses Reed-Solomon error-correcting codes to generate and verify PAR2 recovery files. These files can be distributed @@ -416,7 +420,7 @@ rdiff-backup is easy to use and settings have sensible defaults.") "t/backup_exec/conf/backup_exec.conf") (("/bin/true") (which "true")) (("/bin/false") (which "false"))) - (zero? (system* "make" "test"))))))) + (invoke "make" "test")))))) (inputs `(("perl" ,perl) ("rsync" ,rsync))) @@ -471,13 +475,13 @@ detection, and lossless compression.") (define-public borg (package (name "borg") - (version "1.1.5") + (version "1.1.6") (source (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) (sha256 - (base32 "0gbdnq7ks46diz6y2pf6wpwkb9hy6hp3immi7jg3h7w72b3ycmj3")) + (base32 "0c09j46fi8i7klas0bh82a4whlwnajshk0izkgax6fjxr1sf9lm1")) (modules '((guix build utils))) (snippet '(begin @@ -510,17 +514,6 @@ detection, and lossless compression.") ;; HOME=/homeless-shelter. (setenv "HOME" "/tmp") #t))) - ;; Later versions of msgpack were disallowed to some warnings and lack - ;; of support for Python versions that we don't support anyways. So, - ;; it's okay to to keep using more recents versions of msgpack for - ;; Borg. Also see the note about msgpack in the list of inputs. - ;; https://github.com/borgbackup/borg/issues/3517#issuecomment-357221978 - (add-before 'build 'adjust-msgpack-dependency - (lambda _ - (substitute* "setup.py" - (("msgpack-python>=0.4.6,<0.5.0") - "msgpack-python>=0.4.6")) - #t)) ;; The tests need to be run after Borg is installed. (delete 'check) (add-after 'install 'check @@ -530,25 +523,24 @@ detection, and lossless compression.") ;; The tests should be run in an empty directory. (mkdir-p "tests") (with-directory-excursion "tests" - (zero? - (system* "py.test" "-v" "--pyargs" "borg.testsuite" "-k" - (string-append - ;; These tests need to write to '/var'. - "not test_get_cache_dir " - "and not test_get_config_dir " - "and not test_get_keys_dir " - "and not test_get_security_dir " - ;; These tests assume there is a root user in - ;; '/etc/passwd'. - "and not test_access_acl " - "and not test_default_acl " - "and not test_non_ascii_acl " - ;; This test needs the unpackaged pytest-benchmark. - "and not benchmark " - ;; These tests assume the kernel supports FUSE. - "and not test_fuse " - "and not test_fuse_allow_damaged_files " - "and not test_mount_hardlinks")))))) + (invoke "py.test" "-v" "--pyargs" "borg.testsuite" "-k" + (string-append + ;; These tests need to write to '/var'. + "not test_get_cache_dir " + "and not test_get_config_dir " + "and not test_get_keys_dir " + "and not test_get_security_dir " + ;; These tests assume there is a root user in + ;; '/etc/passwd'. + "and not test_access_acl " + "and not test_default_acl " + "and not test_non_ascii_acl " + ;; This test needs the unpackaged pytest-benchmark. + "and not benchmark " + ;; These tests assume the kernel supports FUSE. + "and not test_fuse " + "and not test_fuse_allow_damaged_files " + "and not test_mount_hardlinks"))))) (add-after 'install 'install-doc (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -559,11 +551,9 @@ detection, and lossless compression.") "docs/misc/internals-picture.txt" "docs/misc/prune-example.txt")) (add-installed-pythonpath inputs outputs) - (and - (zero? (system* "python3" "setup.py" "build_man")) - (begin - (copy-recursively "docs/man" man) - #t)))))))) + (invoke "python3" "setup.py" "build_man") + (copy-recursively "docs/man" man) + #t)))))) (native-inputs `(("python-cython" ,python-cython) ("python-setuptools-scm" ,python-setuptools-scm) @@ -693,17 +683,17 @@ NTFS volumes using @code{ntfs-3g}, preserving NTFS-specific attributes.") (replace 'check (lambda _ (substitute* "obnamlib/vfs_local_tests.py" - ;; Check for the nobody user instead of root + ;; Check for the nobody user instead of root. (("self.fs.get_username\\(0\\), 'root'") "self.fs.get_username(65534), 'nobody'") - ;; Disable tests checking for root group + ;; Disable tests checking for root group. (("self.fs.get_groupname\\(0\\)") "'root'")) (substitute* "obnamlib/vfs_local.py" - ;; Don't cover get_groupname function + ;; Don't cover get_groupname function. (("def get_groupname\\(self, gid\\):") "def get_groupname(self, gid): # pragma: no cover")) - ;; Can't run network tests - (zero? (system* "./check" "--unit-tests"))))))) + ;; Can't run network tests. + (invoke "./check" "--unit-tests")))))) (inputs `(("python2-cliapp" ,python2-cliapp) ("python2-larch" ,python2-larch) @@ -832,3 +822,114 @@ file systems with unattended creation and expiration. A dirvish backup vault is like a time machine for your data. ") (license (license:fsf-free "file://COPYING" "Open Software License 2.0")))) + +(define-public restic + (package + (name "restic") + (version "0.9.1") + ;; TODO Try packaging the bundled / vendored dependencies in the 'vendor/' + ;; directory. + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/restic/restic/releases/download/" + "v" version "/restic-" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "15f0rsm2lxk4lmn4773q28g49p68pqyyx0ccp7r556asan73p79m")))) + (build-system go-build-system) + (arguments + `(#:import-path "github.com/restic/restic" + #:unpack-path "github.com/restic" + ;; We don't need to install the source code for end-user applications. + #:install-source? #f + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion (string-append + "src/github.com/restic/restic-" + ,version) + (invoke "go" "run" "build.go")))) + + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (src (string-append "src/github.com/restic/restic-" + ,version))) + (install-file (string-append src "/restic") + (string-append out "/bin")) + #t))) + + (add-after 'install 'install-docs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (man "/share/man") + (man-section (string-append man "/man")) + (src (string-append "src/github.com/restic/restic-" + ,version "/doc/man/"))) + ;; Install all the man pages to "out". + (for-each + (lambda (file) + (install-file file + (string-append out man-section + (string-take-right file 1)))) + (find-files src "\\.[1-9]")) + #t))) + + (add-after 'install-docs 'install-shell-completion + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (etc (string-append out "/etc")) + (share (string-append out "/share"))) + (for-each + (lambda (shell) + (let* ((shell-name (symbol->string shell)) + (dir (string-append "etc/completion/" shell-name))) + (mkdir-p dir) + (invoke (string-append bin "/restic") "generate" + (string-append "--" shell-name "-completion") + (string-append dir "/" + (case shell + ((bash) "restic") + ((zsh) "_restic")))))) + '(bash zsh)) + (with-directory-excursion "etc/completion" + (install-file "bash/restic" + (string-append etc "/bash_completion.d")) + (install-file "zsh/_restic" + (string-append share "/zsh/site-functions"))) + #t)))))) + (home-page "https://restic.net/") + (synopsis "Backup program with multiple revisions, encryption and more") + (description "Restic is a program that does backups right and was designed +with the following principles in mind: + +@itemize +@item Easy: Doing backups should be a frictionless process, otherwise you +might be tempted to skip it. Restic should be easy to configure and use, so +that, in the event of a data loss, you can just restore it. Likewise, +restoring data should not be complicated. + +@item Fast: Backing up your data with restic should only be limited by your +network or hard disk bandwidth so that you can backup your files every day. +Nobody does backups if it takes too much time. Restoring backups should only +transfer data that is needed for the files that are to be restored, so that +this process is also fast. + +@item Verifiable: Much more important than backup is restore, so restic +enables you to easily verify that all data can be restored. @item Secure: +Restic uses cryptography to guarantee confidentiality and integrity of your +data. The location the backup data is stored is assumed not to be a trusted +environment (e.g. a shared space where others like system administrators are +able to access your backups). Restic is built to secure your data against +such attackers. + +@item Efficient: With the growth of data, additional snapshots should only +take the storage of the actual increment. Even more, duplicate data should be +de-duplicated before it is actually written to the storage back end to save +precious backup space. +@end itemize") + (license license:bsd-2))) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 6d9f019857..fef6002b3c 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -480,6 +480,17 @@ included.") (license gpl3+) (home-page "https://www.gnu.org/software/binutils/"))) +(define-public binutils/fixed + ;; TODO: Incorporate this in binutils during the next rebuild cycle. + (hidden-package + (package + (inherit binutils) + (source (origin + (inherit (package-source binutils)) + (patches (append (origin-patches (package-source binutils)) + (search-patches + "binutils-aarch64-symbol-relocation.patch")))))))) + (define* (make-ld-wrapper name #:key (target (const #f)) binutils diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index ebc8bdb5f2..be3662798b 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2016, 2017 Marius Bakke ;;; Copyright © 2017 Dave Love ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -34,15 +35,14 @@ (define-public fio (package (name "fio") - (version "3.6") + (version "3.7") (source (origin (method url-fetch) - (uri (string-append - "http://brick.kernel.dk/snaps/" - "fio-" version ".tar.bz2")) + (uri (string-append "http://brick.kernel.dk/snaps/" + "fio-" version ".tar.gz")) (sha256 (base32 - "1d2jibp1b2dq97f22wj6pcjl7gbd2kmhfggj2c7q3j8v9axjqsh2")))) + "0rw9jf2ikm19lq4jizavdvvp3vfvlm3annq7jsxl2y5nf1pi2qr7")))) (build-system gnu-build-system) (arguments '(#:test-target "test" diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index ed35b4c61a..a6a8216ccb 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -24,10 +24,11 @@ #:use-module (guix download) #:use-module (guix build-system r) #:use-module (gnu packages) + #:use-module (gnu packages bioinformatics) #:use-module (gnu packages cran) #:use-module (gnu packages compression) - #:use-module (gnu packages statistics) - #:use-module (gnu packages bioinformatics)) + #:use-module (gnu packages graph) + #:use-module (gnu packages statistics)) (define-public r-bsgenome-dmelanogaster-ucsc-dm6 (package @@ -61,6 +62,111 @@ melanogaster (Fly) as provided by UCSC (dm6) and stored in Biostrings objects.") (license license:artistic2.0))) +(define-public r-bsgenome-dmelanogaster-ucsc-dm3-masked + (package + (name "r-bsgenome-dmelanogaster-ucsc-dm3-masked") + (version "1.3.99") + (source (origin + (method url-fetch) + ;; We cannot use bioconductor-uri here because this tarball is + ;; located under "data/annotation/" instead of "bioc/". + (uri (string-append "http://www.bioconductor.org/packages/" + "release/data/annotation/src/contrib/" + "BSgenome.Dmelanogaster.UCSC.dm3.masked_" + version ".tar.gz")) + (sha256 + (base32 + "1756csb09f1br9rj1l3f08qyh4hlymdbd0cfn8x3fq39dn45m5ap")))) + (properties + `((upstream-name . "BSgenome.Dmelanogaster.UCSC.dm3.masked"))) + (build-system r-build-system) + (propagated-inputs + `(("r-bsgenome" ,r-bsgenome) + ("r-bsgenome-dmelanogaster-ucsc-dm3" + ,r-bsgenome-dmelanogaster-ucsc-dm3))) + (home-page "https://www.bioconductor.org/packages/BSgenome.Dmelanogaster.UCSC.dm3.masked/") + (synopsis "Full masked genome sequences for Fly") + (description + "This package provides full masked genome sequences for Drosophila +melanogaster (Fly) as provided by UCSC (dm3, April 2006) and stored in +Biostrings objects. The sequences are the same as in +BSgenome.Dmelanogaster.UCSC.dm3, except that each of them has the 4 following +masks on top: (1) the mask of assembly gaps (AGAPS mask), (2) the mask of +intra-contig ambiguities (AMB mask), (3) the mask of repeats from +RepeatMasker (RM mask), and (4) the mask of repeats from Tandem Repeats +Finder (TRF mask). Only the AGAPS and AMB masks are \"active\" by default.") + (license license:artistic2.0))) + +(define-public r-bsgenome-hsapiens-ucsc-hg19-masked + (package + (name "r-bsgenome-hsapiens-ucsc-hg19-masked") + (version "1.3.99") + (source (origin + (method url-fetch) + ;; We cannot use bioconductor-uri here because this tarball is + ;; located under "data/annotation/" instead of "bioc/". + (uri (string-append "http://www.bioconductor.org/packages/" + "release/data/annotation/src/contrib/" + "BSgenome.Hsapiens.UCSC.hg19.masked_" + version ".tar.gz")) + (sha256 + (base32 + "0452pyah0kv1vsrsjbrqw4k2rm8lc2vc771dzib45gnnfz86qxrr")))) + (properties + `((upstream-name . "BSgenome.Hsapiens.UCSC.hg19.masked"))) + (build-system r-build-system) + (propagated-inputs + `(("r-bsgenome" ,r-bsgenome) + ("r-bsgenome-hsapiens-ucsc-hg19" + ,r-bsgenome-hsapiens-ucsc-hg19))) + (home-page "https://bioconductor.org/packages/BSgenome.Hsapiens.UCSC.hg19.masked/") + (synopsis "Full masked genome sequences for Homo sapiens") + (description + "This package provides full genome sequences for Homo sapiens (Human) as +provided by UCSC (hg19, Feb. 2009) and stored in Biostrings objects. The +sequences are the same as in BSgenome.Hsapiens.UCSC.hg19, except that each of +them has the 4 following masks on top: (1) the mask of assembly gaps (AGAPS +mask), (2) the mask of intra-contig ambiguities (AMB mask), (3) the mask of +repeats from RepeatMasker (RM mask), and (4) the mask of repeats from Tandem +Repeats Finder (TRF mask). Only the AGAPS and AMB masks are \"active\" by +default.") + (license license:artistic2.0))) + +(define-public r-bsgenome-mmusculus-ucsc-mm9-masked + (package + (name "r-bsgenome-mmusculus-ucsc-mm9-masked") + (version "1.3.99") + (source (origin + (method url-fetch) + ;; We cannot use bioconductor-uri here because this tarball is + ;; located under "data/annotation/" instead of "bioc/". + (uri (string-append "http://www.bioconductor.org/packages/" + "release/data/annotation/src/contrib/" + "BSgenome.Mmusculus.UCSC.mm9.masked_" + version ".tar.gz")) + (sha256 + (base32 + "00bpbm3havqcxr4g63zhllsbpd9q6svgihks7qp7x73nm4gvq7fn")))) + (properties + `((upstream-name . "BSgenome.Mmusculus.UCSC.mm9.masked"))) + (build-system r-build-system) + (propagated-inputs + `(("r-bsgenome" ,r-bsgenome) + ("r-bsgenome-mmusculus-ucsc-mm9" + ,r-bsgenome-mmusculus-ucsc-mm9))) + (home-page "http://bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm9.masked/") + (synopsis "Full masked genome sequences for Mouse") + (description + "This package provides full genome sequences for Mus musculus (Mouse) as +provided by UCSC (mm9, Jul. 2007) and stored in Biostrings objects. The +sequences are the same as in BSgenome.Mmusculus.UCSC.mm9, except that each of +them has the 4 following masks on top: (1) the mask of assembly gaps (AGAPS +mask), (2) the mask of intra-contig ambiguities (AMB mask), (3) the mask of +repeats from RepeatMasker (RM mask), and (4) the mask of repeats from Tandem +Repeats Finder (TRF mask). Only the AGAPS and AMB masks are \"active\" by +default." ) + (license license:artistic2.0))) + (define-public r-hpar (package (name "r-hpar") @@ -371,3 +477,201 @@ filtered to remove spurious regions in the genome. Downstream steps of segmentation and calling are also implemented via packages DNAcopy and CGHcall, respectively.") (license license:gpl2+))) + +(define-public r-bayseq + (package + (name "r-bayseq") + (version "2.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "baySeq" version)) + (sha256 + (base32 + "0hbmm01a8libara9mbxknpk0wzarwfngnfwlmhpww91a0cmy5klg")))) + (properties `((upstream-name . "baySeq"))) + (build-system r-build-system) + (propagated-inputs + `(("r-abind" ,r-abind) + ("r-edger" ,r-edger) + ("r-genomicranges" ,r-genomicranges))) + (home-page "https://bioconductor.org/packages/baySeq/") + (synopsis "Bayesian analysis of differential expression patterns in count data") + (description + "This package identifies differential expression in high-throughput count +data, such as that derived from next-generation sequencing machines, +calculating estimated posterior likelihoods of differential expression (or +more complex hypotheses) via empirical Bayesian methods.") + (license license:gpl3))) + +(define-public r-chipcomp + (package + (name "r-chipcomp") + (version "1.10.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "ChIPComp" version)) + (sha256 + (base32 + "0j9nif7z33qdxf347r9wa62hhz8qs09r2p96x3hg5yz30a10ahqs")))) + (properties `((upstream-name . "ChIPComp"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19) + ("r-bsgenome-mmusculus-ucsc-mm9" ,r-bsgenome-mmusculus-ucsc-mm9) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-limma" ,r-limma) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://bioconductor.org/packages/ChIPComp") + (synopsis "Quantitative comparison of multiple ChIP-seq datasets") + (description + "ChIPComp implements a statistical method for quantitative comparison of +multiple ChIP-seq datasets. It detects differentially bound sharp binding +sites across multiple conditions considering matching control in ChIP-seq +datasets.") + ;; Any version of the GPL. + (license license:gpl3+))) + +(define-public r-riboprofiling + (package + (name "r-riboprofiling") + (version "1.10.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "RiboProfiling" version)) + (sha256 + (base32 + "04yjklqdjkim7yxyk3cyvf0mmwyxyfvw2mmfzgwaaqbiyg29sli0")))) + (properties `((upstream-name . "RiboProfiling"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-data-table" ,r-data-table) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) + ("r-ggbio" ,r-ggbio) + ("r-ggplot2" ,r-ggplot2) + ("r-iranges" ,r-iranges) + ("r-plyr" ,r-plyr) + ("r-reshape2" ,r-reshape2) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-sqldf" ,r-sqldf))) + (home-page "https://bioconductor.org/packages/RiboProfiling/") + (synopsis "Ribosome profiling data analysis") + (description "Starting with a BAM file, this package provides the +necessary functions for quality assessment, read start position recalibration, +the counting of genomic sequence reads on CDS, 3'UTR, and 5'UTR, and plotting +of count data: pairs, log fold-change, codon frequency and coverage +assessment, principal component analysis on codon coverage.") + (license license:gpl3))) + +(define-public r-riboseqr + (package + (name "r-riboseqr") + (version "1.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "riboSeqR" version)) + (sha256 + (base32 + "0xavd1cdhi8qfjn9a1hjhflyg6jq1ydvv56z12gjz572pwz2knvn")))) + (properties `((upstream-name . "riboSeqR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-abind" ,r-abind) + ("r-bayseq" ,r-bayseq) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-rsamtools" ,r-rsamtools) + ("r-seqlogo" ,r-seqlogo))) + (home-page "https://bioconductor.org/packages/riboSeqR/") + (synopsis "Analysis of sequencing data from ribosome profiling experiments") + (description + "This package provides plotting functions, frameshift detection and +parsing of genetic sequencing data from ribosome profiling experiments.") + (license license:gpl3))) + +(define-public r-interactionset + (package + (name "r-interactionset") + (version "1.8.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "InteractionSet" version)) + (sha256 + (base32 + "0xngraq7ic80jr98i1wqp8bxdgidq6py60m2wfk82n1ixpcdck8n")))) + (properties + `((upstream-name . "InteractionSet"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-matrix" ,r-matrix) + ("r-rcpp" ,r-rcpp) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (home-page "https://bioconductor.org/packages/InteractionSet") + (synopsis "Base classes for storing genomic interaction data") + (description + "This packages provides the @code{GInteractions}, +@code{InteractionSet} and @code{ContactMatrix} objects and associated methods +for storing and manipulating genomic interaction data from Hi-C and ChIA-PET +experiments.") + (license license:gpl3))) + +(define-public r-genomicinteractions + (package + (name "r-genomicinteractions") + (version "1.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "GenomicInteractions" version)) + (sha256 + (base32 + "0cnagprxj0b7p6s29iyhqwxj7hgmrh75gj52y4dlil790d1bmq2q")))) + (properties + `((upstream-name . "GenomicInteractions"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-data-table" ,r-data-table) + ("r-dplyr" ,r-dplyr) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-gviz" ,r-gviz) + ("r-igraph" ,r-igraph) + ("r-interactionset" ,r-interactionset) + ("r-iranges" ,r-iranges) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors) + ("r-stringr" ,r-stringr))) + (home-page "https://github.com/ComputationalRegulatoryGenomicsICL/GenomicInteractions/") + (synopsis "R package for handling genomic interaction data") + (description + "This R package provides tools for handling genomic interaction data, +such as ChIA-PET/Hi-C, annotating genomic features with interaction +information and producing various plots and statistics.") + (license license:gpl3))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3628d6231a..f89c60b8cd 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5826,15 +5826,16 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.") (define-public star (package (name "star") - (version "2.6.0a") + (version "2.6.0c") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/alexdobin/STAR/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/alexdobin/STAR.git") + (commit version))) + (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0yci4ymy4407kjh0lqp021nzccp6r31wgrkixkmix5p130cxvc56")) + "04cj6jw8d9q6lk9c78wa4fky6jdlicf1d13plq7182h8vqiz8p59")) (modules '((guix build utils))) (snippet '(begin @@ -6938,13 +6939,13 @@ Bioconductor, CRAN, and Github.") (define-public r-biocviews (package (name "r-biocviews") - (version "1.48.0") + (version "1.48.2") (source (origin (method url-fetch) (uri (bioconductor-uri "biocViews" version)) (sha256 (base32 - "1yx2lir67ny0j150wyfqca0wsxp84byri8nscbs9qlndkh2jppq9")))) + "01yiafayl1m5704xdd2cn3zjc78rs10dqyz66lr3qkf6d8w66938")))) (properties `((upstream-name . "biocViews"))) (build-system r-build-system) @@ -7082,14 +7083,14 @@ support for default values, positional argument support, etc.") (define-public r-optparse (package (name "r-optparse") - (version "1.4.4") + (version "1.6.0") (source (origin (method url-fetch) (uri (cran-uri "optparse" version)) (sha256 (base32 - "1ff4wmsszrb3spwfp7ynfs8w11qpy1sdzfxm1wk8dqqvdwris7qb")))) + "1d7v5gl45x4amsfmzn5zyyffyqlc7a82h01szlnda22viyxids0h")))) (build-system r-build-system) (propagated-inputs `(("r-getopt" ,r-getopt))) @@ -7127,13 +7128,13 @@ abnormal copy number.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.18.2") + (version "0.18.3") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "0qvj2j0zl4djjl7vrwc6xak6h8dxr53iwypfbcvfb3sh7jwhdiz5")))) + "02bps2rpjqx2npwxq3x62ncwi9ggr165cwi56h6hld28bw2gddy8")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) @@ -7586,13 +7587,13 @@ files.") (define-public r-delayedarray (package (name "r-delayedarray") - (version "0.6.0") + (version "0.6.1") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedArray" version)) (sha256 (base32 - "0n3w57cwy911q812wc8658y0v3xgpmg379sj98kfqdxa80z1mxdf")))) + "0sjwszxdi0vkj2i2di5i46gh9chc660yr3gs5nk9qnqp77713zds")))) (properties `((upstream-name . "DelayedArray"))) (build-system r-build-system) @@ -8528,43 +8529,51 @@ paired-end data.") (define-public r-rcas (package (name "r-rcas") - (version "1.3.4") + (version "1.6.0") (source (origin (method url-fetch) - (uri (string-append "https://github.com/BIMSBbioinfo/RCAS/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (bioconductor-uri "RCAS" version)) (sha256 (base32 - "1qgc7vi6fpzl440yg7jhiycg5q336kd4pxqzx10yx2zcq3bq3msg")))) + "0vmn7a0rm2ban0kaxrf5danhss2r4hfhnwh5889fjcgqy300fdd5")))) (build-system r-build-system) (native-inputs - `(("r-knitr" ,r-knitr) - ("r-testthat" ,r-testthat) + `(("r-testthat" ,r-testthat) ;; During vignette building knitr checks that "pandoc-citeproc" ;; is in the PATH. ("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc-with-pandoc-1))) (propagated-inputs - `(("r-data-table" ,r-data-table) + `(("r-biocgenerics" ,r-biocgenerics) ("r-biomart" ,r-biomart) - ("r-org-hs-eg-db" ,r-org-hs-eg-db) - ("r-org-ce-eg-db" ,r-org-ce-eg-db) - ("r-org-dm-eg-db" ,r-org-dm-eg-db) - ("r-org-mm-eg-db" ,r-org-mm-eg-db) + ("r-biostrings" ,r-biostrings) ("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19) ("r-bsgenome-mmusculus-ucsc-mm9" ,r-bsgenome-mmusculus-ucsc-mm9) ("r-bsgenome-celegans-ucsc-ce10" ,r-bsgenome-celegans-ucsc-ce10) ("r-bsgenome-dmelanogaster-ucsc-dm3" ,r-bsgenome-dmelanogaster-ucsc-dm3) - ("r-topgo" ,r-topgo) + ("r-cowplot" ,r-cowplot) + ("r-data-table" ,r-data-table) + ("r-dbi" ,r-dbi) ("r-dt" ,r-dt) - ("r-pbapply" ,r-pbapply) - ("r-plotly" ,r-plotly) - ("r-plotrix" ,r-plotrix) - ("r-motifrg" ,r-motifrg) ("r-genomation" ,r-genomation) ("r-genomicfeatures" ,r-genomicfeatures) + ("r-ggplot2" ,r-ggplot2) + ("r-ggseqlogo" ,r-ggseqlogo) + ("r-knitr" ,r-knitr) + ("r-motifrg" ,r-motifrg) + ("r-org-hs-eg-db" ,r-org-hs-eg-db) + ("r-org-ce-eg-db" ,r-org-ce-eg-db) + ("r-org-dm-eg-db" ,r-org-dm-eg-db) + ("r-org-mm-eg-db" ,r-org-mm-eg-db) + ("r-pbapply" ,r-pbapply) + ("r-pheatmap" ,r-pheatmap) + ("r-plotly" ,r-plotly) + ("r-plotrix" ,r-plotrix) + ("r-proxy" ,r-proxy) + ("r-rsqlite" ,r-rsqlite) ("r-rtracklayer" ,r-rtracklayer) - ("r-rmarkdown" ,r-rmarkdown))) + ("r-rmarkdown" ,r-rmarkdown) + ("r-s4vectors" ,r-s4vectors) + ("r-topgo" ,r-topgo))) (synopsis "RNA-centric annotation system") (description "RCAS aims to be a standalone RNA-centric annotation system that provides @@ -8576,7 +8585,7 @@ library implementing most of the pipeline's features.") (define-public rcas-web (package (name "rcas-web") - (version "0.0.4") + (version "0.0.5") (source (origin (method url-fetch) @@ -8585,7 +8594,7 @@ library implementing most of the pipeline's features.") "/rcas-web-" version ".tar.gz")) (sha256 (base32 - "1p16frfys41a8yaa4gkm457nzkqhqs2pc3lkac0ds457w9w5j1gm")))) + "0igz7jpcf7cm9800zcag6p3gd1i649figrhbdba6cjkm8f4gfspr")))) (build-system gnu-build-system) (arguments `(#:phases @@ -9696,13 +9705,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.") (define-public r-seurat (package (name "r-seurat") - (version "2.3.1") + (version "2.3.2") (source (origin (method url-fetch) (uri (cran-uri "Seurat" version)) (sha256 (base32 - "0hi59rgdrr2iqfvx5bq7yq02hbjxkjl1fzidqj14z0ypq0nzbjys")) + "1sjpy5rrpvlpm6hs7qy7qpglgbp7zrgfybcsalpmjb51rhxhgcg1")) ;; Delete pre-built jar. (snippet '(begin (delete-file "inst/java/ModularityOptimizer.jar") @@ -9746,6 +9755,7 @@ Main-Class: ModularityOptimizer\n"))) ("r-ggplot2" ,r-ggplot2) ("r-ggridges" ,r-ggridges) ("r-gplots" ,r-gplots) + ("r-hdf5r" ,r-hdf5r) ("r-hmisc" ,r-hmisc) ("r-ica" ,r-ica) ("r-igraph" ,r-igraph) @@ -10060,14 +10070,14 @@ provide added flexibility for data combination and manipulation.") (define-public r-complexheatmap (package (name "r-complexheatmap") - (version "1.18.0") + (version "1.18.1") (source (origin (method url-fetch) (uri (bioconductor-uri "ComplexHeatmap" version)) (sha256 (base32 - "0z57mrginzd40niy51dvnyqgbrij05ji0dbwqs3x2as80sq28i3q")))) + "0qjwz1hzpjnc90jiinjkikfnr0shi72q3zfdjjz7pxydy0mglq8n")))) (properties `((upstream-name . "ComplexHeatmap"))) (build-system r-build-system) @@ -11439,7 +11449,7 @@ applications for tackling some common problems in a user-friendly way.") ("python2-numpy" ,python2-numpy) ("python2-matplotlib" ,python2-matplotlib) ("python2-pysam" ,python2-pysam))) - (home-page "http://3dgenomes.github.io/TADbit/") + (home-page "https://3dgenomes.github.io/TADbit/") (synopsis "Analyze, model, and explore 3C-based data") (description "TADbit is a complete Python library to deal with all steps to analyze, @@ -12715,7 +12725,7 @@ contains #:phases (modify-phases %standard-phases ;; FIXME: fails with "java.io.FileNotFoundException: - ;; /gnu/store/q76y0ximcziplgfpbn26kbw4h3s14f33-dropseq-tools-1.13/share/java/lib/biojava-alignment.jar" + ;; /gnu/store/…-dropseq-tools-1.13/share/java/lib/biojava-alignment.jar" (delete 'generate-jar-indices) ;; All dependencies must be linked to "lib", because that's where ;; they will be searched for when the Class-Path property of the @@ -12896,7 +12906,7 @@ expression report comparing samples in an easily configurable manner.") (define-public pigx-chipseq (package (name "pigx-chipseq") - (version "0.0.15") + (version "0.0.17") (source (origin (method url-fetch) (uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/" @@ -12904,20 +12914,10 @@ expression report comparing samples in an easily configurable manner.") "/pigx_chipseq-" version ".tar.gz")) (sha256 (base32 - "11v9v3vyda0sv4cl45nki7mm4v4bjfcdq7a70kcvi9h465nq66wg")))) + "1c0x5lswvc8v9fw4iynl5rcfs7h7clzp4hqdnl65ia7rk35n4zg9")))) (build-system gnu-build-system) - (arguments - `(#:tests? #f ; parts of the tests rely on access to the network - #:phases - (modify-phases %standard-phases - (add-after 'install 'wrap-executable - ;; Make sure the executable finds all R modules. - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/bin/pigx-chipseq") - `("R_LIBS_SITE" ":" = (,(getenv "R_LIBS_SITE"))) - `("PYTHONPATH" ":" = (,(getenv "PYTHONPATH"))))) - #t))))) + ;; parts of the tests rely on access to the network + (arguments '(#:tests? #f)) (inputs `(("grep" ,grep) ("coreutils" ,coreutils) @@ -12976,7 +12976,7 @@ in an easily configurable manner.") (define-public pigx-bsseq (package (name "pigx-bsseq") - (version "0.0.8") + (version "0.0.9") (source (origin (method url-fetch) (uri (string-append "https://github.com/BIMSBbioinfo/pigx_bsseq/" @@ -12984,7 +12984,7 @@ in an easily configurable manner.") "/pigx_bsseq-" version ".tar.gz")) (sha256 (base32 - "0irlnlhhw9fd4ha7hksrxn3y7j76mz5qq1wjswbs9p364laqg69y")))) + "0j1dfjk8m1p1h6d5yw63scjlbx56z8gixmbw626w1vcyblg0frmz")))) (build-system gnu-build-system) (arguments `(#:phases @@ -13043,7 +13043,7 @@ methylation and segmentation.") (define-public pigx-scrnaseq (package (name "pigx-scrnaseq") - (version "0.0.4") + (version "0.0.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/BIMSBbioinfo/pigx_scrnaseq/" @@ -13051,7 +13051,7 @@ methylation and segmentation.") "/pigx_scrnaseq-" version ".tar.gz")) (sha256 (base32 - "1pvjm6f3mascprs65vflggwwg5v925knvgal7k7a6nnlmw5qndrf")))) + "0a73rilv0vnw42d5rsdq205h4f0x8j3jqv998janh4s324c6w2kj")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -13079,6 +13079,7 @@ methylation and segmentation.") ("python-wrapper" ,python-wrapper) ("python-pyyaml" ,python-pyyaml) ("python-pandas" ,python-pandas) + ("python-magic" ,python-magic) ("python-numpy" ,python-numpy) ("python-loompy" ,python-loompy) ("ghc-pandoc" ,ghc-pandoc-1) @@ -13236,3 +13237,62 @@ rate speciation and extinction.") junctions in RNA-seq data. It is annotation-agnostic and offset-aware. This version does count multisplits.") (license license:gpl3+)))) + +(define-public minimap2 + (package + (name "minimap2") + (version "2.10") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lh3/minimap2/" + "releases/download/v" version "/" + "minimap2-" version ".tar.bz2")) + (sha256 + (base32 + "080w9066irkbhbyr4nmf19pzkdd2s4v31hpzlajgq2y0drr6zcsj")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are none + #:make-flags + (list "CC=gcc" + (let ((system ,(or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) + "all") + ((or (string-prefix? "armhf" system) + (string-prefix? "aarch64" system)) + "arm_neon=1") + (_ "sse2only=1")))) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man (string-append out "/share/man/man1"))) + (install-file "minimap2" bin) + (mkdir-p man) + (install-file "minimap2.1" man)) + #t))))) + (inputs + `(("zlib" ,zlib))) + (home-page "https://lh3.github.io/minimap2/") + (synopsis "Pairwise aligner for genomic and spliced nucleotide sequences") + (description "Minimap2 is a versatile sequence alignment program that +aligns DNA or mRNA sequences against a large reference database. Typical use +cases include: + +@enumerate +@item mapping PacBio or Oxford Nanopore genomic reads to the human genome; +@item finding overlaps between long reads with error rate up to ~15%; +@item splice-aware alignment of PacBio Iso-Seq or Nanopore cDNA or Direct RNA + reads against a reference genome; +@item aligning Illumina single- or paired-end reads; +@item assembly-to-assembly alignment; +@item full-genome alignment between two closely related species with + divergence below ~15%. +@end enumerate\n") + (license license:expat))) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index a86c73731e..6e4e021180 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès ;;; Copyright © 2015, 2018 Mark H Weaver ;;; Copyright © 2015 Leo Famulari ;;; Copyright © 2016 Jan Nieuwenhuizen @@ -61,7 +61,8 @@ #:use-module (guix packages) #:use-module (guix utils) #:use-module (srfi srfi-1) - #:use-module (srfi srfi-26)) + #:use-module (srfi srfi-26) + #:use-module (ice-9 regex)) (define unifont ;; GNU Unifont, . @@ -144,6 +145,22 @@ ("texinfo" ,texinfo) ("help2man" ,help2man) + ;; XXX: When building GRUB 2.02 on 32-bit x86, we need a binutils + ;; capable of assembling 64-bit instructions. However, our default + ;; binutils on 32-bit x86 is not 64-bit capable. + ,@(if (string-match "^i[3456]86-" (%current-system)) + (let ((binutils (package/inherit + binutils + (name "binutils-i386") + (arguments + (substitute-keyword-arguments (package-arguments binutils) + ((#:configure-flags flags ''()) + `(cons "--enable-64-bit-bfd" ,flags))))))) + `(("ld-wrapper" ,(make-ld-wrapper "ld-wrapper-i386" + #:binutils binutils)) + ("binutils" ,binutils))) + '()) + ;; Dependencies for the test suite. The "real" QEMU is needed here, ;; because several targets are used. ("parted" ,parted) @@ -439,7 +456,7 @@ def test_ctrl_c")) also initializes the boards (RAM etc). This package provides its board-independent tools."))) -(define (make-u-boot-package board triplet) +(define-public (make-u-boot-package board triplet) "Returns a u-boot package for BOARD cross-compiled for TRIPLET." (let ((same-arch? (if (string-prefix? (%current-system) (gnu-triplet->nix-system triplet)) @@ -483,7 +500,7 @@ board-independent tools."))) (string-drop-right file-name suffix-len)))) (sort entries string-ci<))) - #f))))) + (error "Invalid boardname ~s." ,board)))))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) diff --git a/gnu/packages/busybox.scm b/gnu/packages/busybox.scm index 6ef7200f9d..4cdea3a294 100644 --- a/gnu/packages/busybox.scm +++ b/gnu/packages/busybox.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 John Darrington ;;; Copyright © 2016, 2017 Efraim Flashner +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -44,7 +45,7 @@ '(#:phases (modify-phases %standard-phases (replace 'configure - (lambda _ (zero? (system* "make" "defconfig")))) + (lambda _ (invoke "make" "defconfig"))) (replace 'check (lambda _ (substitute* '("testsuite/du/du-s-works" @@ -71,18 +72,17 @@ (delete-file "testsuite/which/which-uses-default-path") (rmdir "testsuite/which") - (zero? (system* "make" - ;; "V=1" - "SKIP_KNOWN_BUGS=1" - "SKIP_INTERNET_TESTS=1" - "check")))) + (invoke "make" + ;; "V=1" + "SKIP_KNOWN_BUGS=1" + "SKIP_INTERNET_TESTS=1" + "check"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (zero? - (system* "make" - (string-append "CONFIG_PREFIX=" out) - "install")))))))) + (invoke "make" + (string-append "CONFIG_PREFIX=" out) + "install"))))))) (native-inputs `(("perl" ,perl) ; needed to generate the man pages (pod2man) ;; The following are needed by the tests. ("inetutils" ,inetutils) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 3e959bde92..42b90bc2b2 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -293,13 +293,13 @@ format.") (define-public cppcheck (package (name "cppcheck") - (version "1.83") + (version "1.84") (source (origin (method url-fetch) (uri (string-append "https://github.com/danmar/cppcheck/archive/" version ".tar.gz")) (sha256 - (base32 "15ghxwmyy09cd9mi008k4jn09c441j86qyaa4dz0is7f5dv5cdkx")) + (base32 "1ibz07dgs1dpfb8bmjh3qsma37wl5p6s6b4qlv5ccpshj4yjk9ma")) (file-name (string-append name "-" version ".tar.gz")))) (build-system cmake-build-system) (home-page "http://cppcheck.sourceforge.net") @@ -1902,19 +1902,14 @@ create data based on random numbers and yet remain repeatable.") (define-public python-nose-timer (package (name "python-nose-timer") - (version "0.7.0") + (version "0.7.2") (source (origin (method url-fetch) (uri (pypi-uri "nose-timer" version)) - (patches - (search-patches - ;; This patch will not be needed in the next version. - ;; It is taken from the master branch. - "python-nose-timer-drop-ordereddict.patch")) (sha256 (base32 - "1s32ymsnby8lz2qk55ifj9zi50dqcg6swnj5cz2rmwxg2jsslsxp")))) + "0ywg223p528014z5s0vzck74r4xyw3kvcp2casfnc85dkvir1zj7")))) (build-system python-build-system) (propagated-inputs `(("python-nose" ,python-nose) @@ -1930,14 +1925,14 @@ create data based on random numbers and yet remain repeatable.") (define-public python-freezegun (package (name "python-freezegun") - (version "0.3.9") + (version "0.3.10") (source (origin (method url-fetch) (uri (pypi-uri "freezegun" version)) (sha256 (base32 - "1vhf3kgdy7gpy70n3bxa3y1n6aza316137md97z8p5k0gz6wqg3q")))) + "08m6b42yxb9hk5lv747v9n2qsxyadmkb0k6yg0gxdanwap0slg3h")))) (build-system python-build-system) (native-inputs `(("python-mock" ,python-mock) @@ -1953,7 +1948,7 @@ create data based on random numbers and yet remain repeatable.") ;; package does not include the Makefile. (replace 'check (lambda _ - (zero? (system* "nosetests" "./tests/"))))))) + (invoke "nosetests" "./tests/")))))) (home-page "https://github.com/spulec/freezegun") (synopsis "Test utility for mocking the datetime module") (description diff --git a/gnu/packages/cluster.scm b/gnu/packages/cluster.scm new file mode 100644 index 0000000000..faaaa2419a --- /dev/null +++ b/gnu/packages/cluster.scm @@ -0,0 +1,81 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Sou Bunnbu +;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages cluster) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module (guix packages) + #:use-module (gnu packages linux) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) + #:use-module (gnu packages texinfo) + #:use-module (gnu packages tls)) + +(define-public keepalived + (package + (name "keepalived") + (version "2.0.4") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.keepalived.org/software/keepalived-" + version ".tar.gz")) + (sha256 + (base32 + "0qf46bfxv4w7qx7d73qq26pp72cvbyfjvna3hxn208vynvapalh0")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'build 'build-info + (lambda _ + (invoke "make" "-C" "doc" "texinfo") + ;; Put images in a subdirectory as recommended by 'texinfo'. + (install-file "doc/build/texinfo/software_design.png" + "doc/build/texinfo/keepalived-figures") + (substitute* "doc/build/texinfo/keepalived.texi" + (("@image\\{software_design,") + "@image{keepalived-figures/software_design,")) + (invoke "make" "-C" "doc/build/texinfo"))) + (add-after 'install 'install-info + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (infodir (string-append out "/share/info"))) + (install-file "doc/build/texinfo/keepalived.info" infodir) + (install-file "doc/build/texinfo/software_design.png" + (string-append infodir "/keepalived-figures")) + #t)))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("python-sphinx" ,python-sphinx) + ("texinfo" ,texinfo))) + (inputs + `(("openssl" ,openssl) + ("libnfnetlink" ,libnfnetlink) + ("libnl" ,libnl))) + (home-page "http://www.keepalived.org/") + (synopsis "Load balancing and high-availability frameworks") + (description + "Keepalived provides frameworks for both load balancing and high +availability. The load balancing framework relies on the Linux Virtual +Server (@dfn{IPVS}) kernel module. High availability is achieved by the Virtual +Redundancy Routing Protocol (@dfn{VRRP}). Each Keepalived framework can be used +independently or together to provide resilient infrastructures.") + (license license:gpl2+))) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index a8c85fdb5e..dea2f09022 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2015, 2018 Ludovic Courtès ;;; Copyright © 2015 Andreas Enge -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2018 Ricardo Wurmus ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2017, 2018 Clément Lassieur @@ -581,7 +581,7 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features: (define-public astyle (package (name "astyle") - (version "2.05") + (version "3.1") (source (origin (method url-fetch) @@ -589,7 +589,7 @@ Objective@tie{}C, D, Java, Pawn, and Vala). Features: version "/astyle_" version "_linux.tar.gz")) (sha256 (base32 - "0f9sh9kq5ajp1yz133h00fr9235p1m698x7n3h7zbrhjiwgynd6s")))) + "1ms54wcs7hg1bsywqwf2lhdfizgbk7qxc9ghasxk8i99jvwlrk6b")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;no tests diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 1c27beb134..d9d15a710d 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -604,39 +604,40 @@ with the sfArk algorithm.") (license license:gpl3+))) (define-public sfarkxtc - (let ((commit "b5e0a2ba3921f019d74d4b92bd31c36dd19d2cf1")) - (package - (name "sfarkxtc") - (version (string-take commit 10)) - (source (origin - ;; There are no release tarballs, so we just fetch the latest - ;; commit at this time. - (method git-fetch) - (uri (git-reference - (url "https://github.com/raboof/sfarkxtc.git") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0f5x6i46qfl6ry21s7g2p4sd4b2r1g4fb03yqi2vv4kq3saryhvj")))) - (build-system gnu-build-system) - (arguments - `(#:tests? #f ;no "check" target - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "Makefile" - (("/usr/local") (assoc-ref outputs "out"))) - #t))))) - (inputs - `(("zlib" ,zlib) - ("sfarklib" ,sfarklib))) - (home-page "https://github.com/raboof/sfarkxtc") - (synopsis "Basic sfArk decompressor") - (description "SfArk extractor converts SoundFonts in the compressed legacy + (let ((commit "13cd6f93725a90d91ec5ea75babf1dbd694ac463") + (revision "1")) + (package + (name "sfarkxtc") + (version (git-version "0" revision commit)) + (source (origin + ;; There are no release tarballs, so we just fetch the latest + ;; commit at this time. + (method git-fetch) + (uri (git-reference + (url "https://github.com/raboof/sfarkxtc.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1mb1jyk1m11l1gppd9hmql9cyp55sdf7jk5rbc7acky1z4k4mv19")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ;no "check" target + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "Makefile" + (("/usr/local") (assoc-ref outputs "out"))) + #t))))) + (inputs + `(("zlib" ,zlib) + ("sfarklib" ,sfarklib))) + (home-page "https://github.com/raboof/sfarkxtc") + (synopsis "Basic sfArk decompressor") + (description "SfArk extractor converts SoundFonts in the compressed legacy sfArk file format to the uncompressed sf2 format.") - (license license:gpl3+)))) + (license license:gpl3+)))) (define-public libmspack (package @@ -2111,7 +2112,7 @@ single-member files which can't be decompressed in parallel.") (define-public innoextract (package (name "innoextract") - (version "1.6") + (version "1.7") (source (origin (method url-fetch) @@ -2119,7 +2120,7 @@ single-member files which can't be decompressed in parallel.") version ".tar.gz")) (sha256 (base32 - "08sp5vbfjvq1irhhraqkn5m2x1z209r4axhx7laf1adcw30ccapi")) + "0khwi9f0q0h6xfbixrrc1rfpgj0b7ajwilq7yhmxnn5lpc807f6x")) (file-name (string-append name "-" version ".tar.gz")))) (build-system cmake-build-system) (arguments @@ -2209,7 +2210,8 @@ decompression is a little bit slower.") version "/" name "-" version "-src.tar.xz")) (sha256 (base32 - "08anybdliqsbsl6x835iwzljahnm9i7v26icdjkcv33xmk6p5vw1")))) + "08anybdliqsbsl6x835iwzljahnm9i7v26icdjkcv33xmk6p5vw1")) + (patches (search-patches "upx-fix-CVE-2017-15056.patch")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl) ("ucl" ,ucl))) @@ -2241,6 +2243,11 @@ decompression is a little bit slower.") #t)) ))) (home-page "https://upx.github.io/") + ;; CVE-2017-16869 is about Mach-O files which is not of a big concern for Guix. + ;; See https://github.com/upx/upx/issues/146 and + ;; https://nvd.nist.gov/vuln/detail?vulnId=CVE-2017-16869. + ;; The issue will be fixed after version 3.94. + (properties `((lint-hidden-cve . ("CVE-2017-16869")))) (synopsis "Compression tool for executables") (description "The Ultimate Packer for eXecutables (UPX) is an executable file diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 10cdd1b307..eeaeefd81f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -30,6 +30,7 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system r) + #:use-module (gnu packages compression) #:use-module (gnu packages gcc) #:use-module (gnu packages machine-learning) #:use-module (gnu packages maths) @@ -245,15 +246,17 @@ into a pipeline of data manipulation and visualisation.") (define-public r-haven (package (name "r-haven") - (version "1.1.1") + (version "1.1.2") (source (origin (method url-fetch) (uri (cran-uri "haven" version)) (sha256 (base32 - "1fkcvsrnw8waqwggv0aydbvbi99x5kp9g78xfxj4w6s3xvdzcysz")))) + "0pp8xjf5lzqg1wr8cwxj4njx99vxwlflwjrd7jvyzwlfpwh7n1qa")))) (build-system r-build-system) + (inputs + `(("zlib" ,zlib))) (propagated-inputs `(("r-forcats" ,r-forcats) ("r-hms" ,r-hms) @@ -423,6 +426,41 @@ the plog header-only C++ logging library, and a method to log to R's standard error stream.") (license license:expat))) +(define-public r-pls + (package + (name "r-pls") + (version "2.6-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "pls" version)) + (sha256 + (base32 + "15j59p5x0rkdrk7iqzkipsy50rsyjl31w8zxc4w3v1j5gzxhi1rx")))) + (build-system r-build-system) + (home-page "http://mevik.net/work/software/pls.html") + (synopsis "Partial Least Squares and Principal Component Regression") + (description + "The pls package implements multivariate regression methods: Partial Least +Squares Regression (@dfn{PLSR}), Principal Component Regression (@dfn{PCR}), and +Canonical Powered Partial Least Squares (@dfn{CPPLS}). It supports: + +@itemize +@item several algorithms: the traditional orthogonal scores (@dfn{NIPALS}) PLS +algorithm, kernel PLS, wide kernel PLS, Simpls, and PCR through @code{svd} +@item multi-response models (or @dfn{PLS2}) +@item flexible cross-validation +@item Jackknife variance estimates of regression coefficients +@item extensive and flexible plots: scores, loadings, predictions, coefficients, +(R)MSEP, R², and correlation loadings +@item formula interface, modelled after @code{lm()}, with methods for predict, +print, summary, plot, update, etc. +@item extraction functions for coefficients, scores, and loadings +@item MSEP, RMSEP, and R² estimates +@item multiplicative scatter correction (@dfn{MSC}) +@end itemize\n") + (license license:gpl2))) + (define-public r-rcpp (package (name "r-rcpp") @@ -556,14 +594,14 @@ ellipses, circles, cylinders, arrows, ...") (define-public r-globaloptions (package (name "r-globaloptions") - (version "0.0.13") + (version "0.1.0") (source (origin (method url-fetch) (uri (cran-uri "GlobalOptions" version)) (sha256 (base32 - "04jvha0mafslqz5nr99xjylg9n2x31gj9v4mgyg7qcmfwpqyw3ch")))) + "1wlyqz1yhmhjwslrd7q69jbd9vsbjkjfc01g60kl3cdpyr8hlyjn")))) (properties `((upstream-name . "GlobalOptions"))) (build-system r-build-system) (home-page "https://github.com/jokergoo/GlobalOptions") @@ -576,14 +614,14 @@ validation and filtering on the values, making options invisible or private.") (define-public r-circlize (package (name "r-circlize") - (version "0.4.3") + (version "0.4.4") (source (origin (method url-fetch) (uri (cran-uri "circlize" version)) (sha256 (base32 - "0pg947gkryygikfbv6admx8gsg02b6g219j6a1sdnqij2908yxna")))) + "1l28maiqi549z191srncxgabx5fnvf0lld7smzwfd3vr5cx8nqww")))) (build-system r-build-system) (propagated-inputs `(("r-colorspace" ,r-colorspace) @@ -681,14 +719,14 @@ compare different dendrograms to one another.") (define-public r-getoptlong (package (name "r-getoptlong") - (version "0.1.6") + (version "0.1.7") (source (origin (method url-fetch) (uri (cran-uri "GetoptLong" version)) (sha256 (base32 - "1d98gcvlvp9nz5lbnzr0kkpc2hbkx74hlhrnybqhg1gdwc3g09pm")))) + "1fl3w2n602ldybc5qj7qw4xmzzb804bsjkqwf6dswzj0vf0qiadr")))) (properties `((upstream-name . "GetoptLong"))) (build-system r-build-system) (inputs @@ -818,17 +856,19 @@ quantities.") (define-public r-progress (package (name "r-progress") - (version "1.1.2") + (version "1.2.0") (source (origin (method url-fetch) (uri (cran-uri "progress" version)) (sha256 (base32 - "1fxakchfjr5vj59s9sxynd7crpz97xj42438rmkhkf3rjpyspx59")))) + "1rhwm0bdw30z3rvl0bn56xprjl3zrdy7150w4gl4bkvn2d6h9fav")))) (build-system r-build-system) (propagated-inputs - `(("r-prettyunits" ,r-prettyunits) + `(("r-crayon" ,r-crayon) + ("r-hms" ,r-hms) + ("r-prettyunits" ,r-prettyunits) ("r-r6" ,r-r6))) (home-page "https://github.com/gaborcsardi/progress") (synopsis "Terminal progress bars") @@ -896,14 +936,14 @@ most popular ones.") (define-public r-sp (package (name "r-sp") - (version "1.2-7") + (version "1.3-1") (source (origin (method url-fetch) (uri (cran-uri "sp" version)) (sha256 (base32 - "0q04yfgyjannsrzl0ppwcv0simrxrrbx2iz5mzaafc5x38zf0q3d")))) + "17xm1ig80p9wc860hm3bgishz6lj9fxgwqidj7rkbk4ap99qp62p")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice))) @@ -1009,14 +1049,14 @@ SpatialVx.") (define-public r-extremes (package (name "r-extremes") - (version "2.0-8") + (version "2.0-9") (source (origin (method url-fetch) (uri (cran-uri "extRemes" version)) (sha256 (base32 - "0pnpib3g2r9x8hfqhvq23j8m3jh62lp28ipnqir5yadnzv850gfm")))) + "0cpvcajk9xyy7662nqkyx333vrxpwsc5nmv0bfnhsbgijz5y0hvm")))) (properties `((upstream-name . "extRemes"))) (build-system r-build-system) (propagated-inputs @@ -1539,14 +1579,14 @@ Delaunay triangulation and convex hull computation.") (define-public r-ddalpha (package (name "r-ddalpha") - (version "1.3.3") + (version "1.3.4") (source (origin (method url-fetch) (uri (cran-uri "ddalpha" version)) (sha256 (base32 - "0g4iqhrz2gym05q40ih6srilyajw2l2mv46pchn65bc7hw4vkgrk")))) + "16cn0bhbaz9l9k4y79sv2d4f7pvs7dyka273y89igs5jvr99kfj1")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -1595,14 +1635,14 @@ Core algorithms are executed in parallel on systems supporting OpenMP.") (define-public r-rcpproll (package (name "r-rcpproll") - (version "0.2.2") + (version "0.3.0") (source (origin (method url-fetch) (uri (cran-uri "RcppRoll" version)) (sha256 (base32 - "19xzvxym8zbighndygkq4imfwc0abh4hqyq3qrr8aakyd096iisi")))) + "0srzfhzkk42kzrdjnhbb37946jp1p688rgysy6k3i2is8jb21zyb")))) (properties `((upstream-name . "RcppRoll"))) (build-system r-build-system) (propagated-inputs @@ -1713,14 +1753,14 @@ provides a one-row summary of model-level statistics.") (define-public r-recipes (package (name "r-recipes") - (version "0.1.2") + (version "0.1.3") (source (origin (method url-fetch) (uri (cran-uri "recipes" version)) (sha256 (base32 - "1car3a3mqn87pz049cbgkaayz86970mvkapk6al2k7jjw76306l9")))) + "1vqh3pxs4n1azhnd1lzg91vasya6g323kllhbrw177j7kdxqyimy")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -1732,6 +1772,7 @@ provides a one-row summary of model-level statistics.") ("r-lubridate" ,r-lubridate) ("r-magrittr" ,r-magrittr) ("r-matrix" ,r-matrix) + ("r-pls" ,r-pls) ("r-purrr" ,r-purrr) ("r-rcpproll" ,r-rcpproll) ("r-rlang" ,r-rlang) @@ -1822,14 +1863,14 @@ color labels, layout, etc.") (define-public r-stringdist (package (name "r-stringdist") - (version "0.9.4.7") + (version "0.9.5.1") (source (origin (method url-fetch) (uri (cran-uri "stringdist" version)) (sha256 (base32 - "1qg80wmcrpkba9njvgjdg15bgw7ddks40kkfh5x61as9lhchy4i4")))) + "0gap1g9xwhp0zxqsznkc2carpvi80z03prr4q8m528684lznx2xa")))) (build-system r-build-system) (home-page "https://github.com/markvanderloo/stringdist") (synopsis "Approximate string matching and string distance functions") @@ -1917,14 +1958,14 @@ analysis of multiply imputed data sets.") (define-public r-mice (package (name "r-mice") - (version "3.0.0") + (version "3.1.0") (source (origin (method url-fetch) (uri (cran-uri "mice" version)) (sha256 (base32 - "1p8a5ham90iaak4w17114pdnw535r2l9sxr402yrkc4gbwfbpdlq")))) + "0xpn215yfzib4hw09cwilnyg9zbvq460njavfvm84mvgwbm25byi")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -2569,14 +2610,14 @@ iVAT).") (define-public r-xfun (package (name "r-xfun") - (version "0.1") + (version "0.2") (source (origin (method url-fetch) (uri (cran-uri "xfun" version)) (sha256 (base32 - "1sm51gmwgw876d6d1q8smxmfgfh6zsnykfx8qp8z6jmh0fvd89pj")))) + "0zl22fcw90kdvzkjyf6vbmdmn9rz3bl51522fasvmykypffyng4a")))) (build-system r-build-system) (home-page "https://github.com/yihui/xfun") (synopsis "Miscellaneous functions") @@ -2718,17 +2759,19 @@ supports arbitrary vertex/edge/graph attributes.") (define-public r-statnet-common (package (name "r-statnet-common") - (version "4.0.0") + (version "4.1.2") (source (origin (method url-fetch) (uri (cran-uri "statnet.common" version)) (sha256 (base32 - "0yw6l5b4qv0jqlg4zyczas7m12a5pyqghs6ydxy2f6v6vxkijvi0")))) + "0h3g687214rlycca0fjrpy1lqbqsrginxqhmhl2mb2jinqqxcfgd")))) (properties `((upstream-name . "statnet.common"))) (build-system r-build-system) + (propagated-inputs + `(("r-coda" ,r-coda))) (home-page "https://statnet.org") (synopsis "R scripts and utilities used by the Statnet software") (description "This package provides non-statistical utilities used by the @@ -2971,14 +3014,14 @@ Cryer and Kung-Sik Chan.") (define-public r-extradistr (package (name "r-extradistr") - (version "1.8.8") + (version "1.8.9") (source (origin (method url-fetch) (uri (cran-uri "extraDistr" version)) (sha256 (base32 - "0ywn4qwnamv36l1hw27l9y5kh3v6ha5781wsv2bz6szqjgg7kdb3")))) + "1fg8vjpal33y51iqzglk1yvy46d7js0l0wfbdy698lq8a06hq19p")))) (properties `((upstream-name . "extraDistr"))) (build-system r-build-system) (propagated-inputs @@ -3041,14 +3084,14 @@ applied econometric analysis.") (define-public r-cubature (package (name "r-cubature") - (version "1.3-11") + (version "1.4") (source (origin (method url-fetch) (uri (cran-uri "cubature" version)) (sha256 (base32 - "06f6gsvbb732p80r6hxvzh4ik546icxfvx21dyh65ypmw3kgm64k")))) + "1hd23b8v2kpqp5gr0va8p2q7j8w9rik6ks7zrr4b8mb2mwrakk74")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) @@ -3324,14 +3367,14 @@ environment within Shiny.") (define-public r-radiant-data (package (name "r-radiant-data") - (version "0.8.1") + (version "0.9.5") (source (origin (method url-fetch) (uri (cran-uri "radiant.data" version)) (sha256 (base32 - "1ylina1jlrmvjkj8pwg0ip5jv1038vnzyckmf542xl7g11x8rvw1")) + "0mbxfqn79nphii4hb6kxl2wc0w0ra16y378rp2yw9a9926zdb7mb")) (modules '((guix build utils))) (snippet '(begin @@ -3347,6 +3390,7 @@ environment within Shiny.") ("r-curl" ,r-curl) ("r-dplyr" ,r-dplyr) ("r-dt" ,r-dt) + ("r-glue" ,r-glue) ("r-ggplot2" ,r-ggplot2) ("r-gridextra" ,r-gridextra) ("r-import" ,r-import) @@ -3355,16 +3399,19 @@ environment within Shiny.") ("r-lubridate" ,r-lubridate) ("r-magrittr" ,r-magrittr) ("r-markdown" ,r-markdown) - ("r-pryr" ,r-pryr) + ("r-plotly" ,r-plotly) ("r-psych" ,r-psych) ("r-readr" ,r-readr) + ("r-readxl" ,r-readxl) + ("r-rlang" ,r-rlang) ("r-rmarkdown" ,r-rmarkdown) ("r-rstudioapi" ,r-rstudioapi) ("r-scales" ,r-scales) ("r-shiny" ,r-shiny) ("r-shinyace" ,r-shinyace) ("r-tibble" ,r-tibble) - ("r-tidyr" ,r-tidyr))) + ("r-tidyr" ,r-tidyr) + ("r-writexl" ,r-writexl))) (home-page "https://github.com/radiant-rstats/radiant.data") (synopsis "Data menu for Radiant: business analytics using R and Shiny") (description @@ -3533,14 +3580,14 @@ extracting and replacing data in arrays.") (define-public r-prroc (package (name "r-prroc") - (version "1.3") + (version "1.3.1") (source (origin (method url-fetch) (uri (cran-uri "PRROC" version)) (sha256 (base32 - "03hvh92lq4i4w4mla9bvwrwb4626f4hvlxgdn57hamp70960vjyc")))) + "1m28h8pcd78049lz2qixhkcr9h5b3jik3maqzfbvq9y58z71i4a7")))) (properties `((upstream-name . "PRROC"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/PRROC/") @@ -3915,14 +3962,14 @@ exchanging spatial objects with other R packages.") (define-public r-later (package (name "r-later") - (version "0.7.2") + (version "0.7.3") (source (origin (method url-fetch) (uri (cran-uri "later" version)) (sha256 (base32 - "0l5ln7sjyi2rj7bx8iamxykqlfarv05zb9882ikizppb1cr1hgyw")))) + "04j2phymxgkk4hv9pfa5w3s98w5d7fvm11blrdhxmray4n618msw")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -4125,14 +4172,14 @@ obtain a better initial configuration in non-metric MDS.") (define-public r-reticulate (package (name "r-reticulate") - (version "1.7") + (version "1.8") (source (origin (method url-fetch) (uri (cran-uri "reticulate" version)) (sha256 (base32 - "1ghhc4hbmwpp79ilbdbshynhs61i8sv8z6p1al04jy7ij0lcglxy")))) + "0zwb4ikf021nw7axdn7qlr6bq4xkph3anfy314idkspy1iil4nmr")))) (build-system r-build-system) (inputs `(("python" ,python))) (propagated-inputs @@ -4166,3 +4213,291 @@ Python to R they are converted back to R types.") (description "This package provides a utility for R to parse a bibtex file.") (license license:gpl2+))) + +(define-public r-ggseqlogo + (package + (name "r-ggseqlogo") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggseqlogo" version)) + (sha256 + (base32 + "13q6kcpxrqxqbji889fx63p0nsi08lk5yymkchig75r5k1d18ky1")))) + (build-system r-build-system) + (propagated-inputs `(("r-ggplot2" ,r-ggplot2))) + (home-page "https://github.com/omarwagih/ggseqlogo") + (synopsis "ggplot2 extension for drawing genetic sequence logos") + (description + "The range of functions provided by this package makes it possible to +draw highly versatile genomic sequence logos. Features include, but are not +limited to, modifying colour schemes and fonts used to draw the logo, +generating multiple logo plots, and aiding the visualisation with annotations. +Sequence logos can easily be combined with other ggplot2 plots.") + ;; Unspecified version of the LGPL. + (license license:lgpl3+))) + +(define-public r-ggsci + (package + (name "r-ggsci") + (version "2.9") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggsci" version)) + (sha256 + (base32 + "0g73x6grbka7ahjh6z23m3wrcifp5rdfdiasbl8lq4sp6rplxwaa")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-scales" ,r-scales))) + (home-page "https://nanx.me/ggsci/") + (synopsis "Scientific journal and sci-fi themed color palettes for ggplot2") + (description + "This package provides a collection of ggplot2 color palettes inspired by +plots in scientific journals, data visualization libraries, science fiction +movies, and TV shows.") + (license license:gpl3))) + +(define-public r-ggsignif + (package + (name "r-ggsignif") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggsignif" version)) + (sha256 + (base32 + "1rn58d7pb3axk6chiihryykrzw76adaa2yiafq4d0j6qbhax78f7")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2))) + (home-page "https://github.com/const-ae/ggsignif") + (synopsis "Significance brackets for ggplot2") + (description + "Enrich your ggplots with group-wise comparisons. This package provides +an easy way to indicate if two groups are significantly different. Commonly +this is shown by a bracket on top connecting the groups of interest which +itself is annotated with the level of significance. The package provides a +single layer that takes the groups for comparison and the test as arguments +and adds the annotation to the plot.") + (license license:gpl3))) + +(define-public r-ggpubr + (package + (name "r-ggpubr") + (version "0.1.7") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggpubr" version)) + (sha256 + (base32 + "110ny8p41kmbz0a5rl0mv9cqpjkx6yr3ybflp1r0fmcvhwv7cr3i")))) + (build-system r-build-system) + (propagated-inputs + `(("r-cowplot" ,r-cowplot) + ("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-ggrepel" ,r-ggrepel) + ("r-ggsci" ,r-ggsci) + ("r-ggsignif" ,r-ggsignif) + ("r-gridextra" ,r-gridextra) + ("r-magrittr" ,r-magrittr) + ("r-purrr" ,r-purrr) + ("r-scales" ,r-scales) + ("r-tidyr" ,r-tidyr))) + (home-page "http://www.sthda.com/english/rpkgs/ggpubr") + (synopsis "ggplot2-based publication-ready plots") + (description + "The ggplot2 package is an excellent and flexible package for elegant +data visualization in R. However the default generated plots require some +formatting before we can send them for publication. The ggpubr package +provides some easy-to-use functions for creating and customizing ggplot2-based +publication-ready plots.") + (license license:gpl2))) + +(define-public r-ellipse + (package + (name "r-ellipse") + (version "0.4.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "ellipse" version)) + (sha256 + (base32 + "0g82vc51m3c1k0hnpp2zla6amxxgk2mmkl8ssnsc49jv3599r6hs")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/ellipse/") + (synopsis "Functions for drawing ellipses and ellipse-like confidence regions") + (description + "This package contains various routines for drawing ellipses and +ellipse-like confidence regions, implementing the plots described in Murdoch +and Chow (1996), A graphical display of large correlation matrices, The +American Statistician 50, 178-180. There are also routines implementing the +profile plots described in Bates and Watts (1988), Nonlinear Regression +Analysis and its Applications.") + (license license:gpl2+))) + +(define-public r-flashclust + (package + (name "r-flashclust") + (version "1.01-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "flashClust" version)) + (sha256 + (base32 + "0l4lpz451ll7f7lfxmb7ds24ppzhfg1c3ypvydglcc35p2dq99s8")))) + (properties `((upstream-name . "flashClust"))) + (build-system r-build-system) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/flashClust/") + (synopsis "Implementation of optimal hierarchical clustering") + (description + "This package provides a fast implementation of hierarchical +clustering.") + (license license:gpl2+))) + +(define-public r-factominer + (package + (name "r-factominer") + (version "1.41") + (source + (origin + (method url-fetch) + (uri (cran-uri "FactoMineR" version)) + (sha256 + (base32 + "1h20hydav6l2b7bngqw1av4l5rrh0wk58nhailga1f4qw9lrv259")))) + (properties `((upstream-name . "FactoMineR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-car" ,r-car) + ("r-cluster" ,r-cluster) + ("r-ellipse" ,r-ellipse) + ("r-flashclust" ,r-flashclust) + ("r-lattice" ,r-lattice) + ("r-leaps" ,r-leaps) + ("r-mass" ,r-mass) + ("r-scatterplot3d" ,r-scatterplot3d))) + (home-page "http://factominer.free.fr") + (synopsis "Multivariate exploratory data analysis and data mining") + (description + "This package provides exploratory data analysis methods to summarize, +visualize and describe datasets. The main principal component methods are +available, those with the largest potential in terms of applications: +principal component analysis (PCA) when variables are quantitative, +correspondence analysis (CA) and multiple correspondence analysis (MCA) when +variables are categorical, Multiple Factor Analysis when variables are +structured in groups, etc. and hierarchical cluster analysis.") + (license license:gpl2+))) + +(define-public r-factoextra + (package + (name "r-factoextra") + (version "1.0.5") + (source + (origin + (method url-fetch) + (uri (cran-uri "factoextra" version)) + (sha256 + (base32 + "1l6m8k7qhdw8ndar8nhmym0lfyd1i2iszl1cicjax0vq23ss6xw1")))) + (build-system r-build-system) + (propagated-inputs + `(("r-abind" ,r-abind) + ("r-cluster" ,r-cluster) + ("r-dendextend" ,r-dendextend) + ("r-factominer" ,r-factominer) + ("r-ggplot2" ,r-ggplot2) + ("r-ggpubr" ,r-ggpubr) + ("r-ggrepel" ,r-ggrepel) + ("r-reshape2" ,r-reshape2) + ("r-tidyr" ,r-tidyr))) + (home-page "http://www.sthda.com/english/rpkgs/factoextra") + (synopsis "Extract and visualize the results of multivariate data analyses") + (description + "This package provides some easy-to-use functions to extract and +visualize the output of multivariate data analyses, including +@code{PCA} (Principal Component Analysis), @code{CA} (Correspondence +Analysis), @code{MCA} (Multiple Correspondence Analysis), @code{FAMD} (Factor +Analysis of Mixed Data), @code{MFA} (Multiple Factor Analysis) and +@code{HMFA} (Hierarchical Multiple Factor Analysis) functions from different R +packages. It contains also functions for simplifying some clustering analysis +steps and provides ggplot2-based elegant data visualization.") + (license license:gpl2))) + +(define-public r-nbclust + (package + (name "r-nbclust") + (version "3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "NbClust" version)) + (sha256 + (base32 + "1vwb48zy6ln1ddpqmfngii1i80n8qmqyxnzdp6gbaq96lakl3w3c")))) + (properties `((upstream-name . "NbClust"))) + (build-system r-build-system) + (home-page "https://sites.google.com/site/malikacharrad/research/nbclust-package") + (synopsis "Determine the best number of clusters in a data set") + (description + "NbClust provides 30 indexes for determining the optimal number of +clusters in a data set and offers the best clustering scheme from different +results to the user.") + (license license:gpl2))) + +(define-public r-hdf5r + (package + (name "r-hdf5r") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "hdf5r" version)) + (sha256 + (base32 + "1s6p4cj909kc635fh5xpl87bqlcdj3dn3r1wk5g40abimk2b0pva")))) + (build-system r-build-system) + (inputs + `(("hdf5" ,hdf5) + ("zlib" ,zlib))) + (propagated-inputs + `(("r-bit64" ,r-bit64) + ("r-r6" ,r-r6))) + (home-page "https://hhoeflin.github.io/hdf5r") + (synopsis "Interface to the HDF5 binary data format") + (description + "HDF5 is a data model, library and file format for storing and managing +large amounts of data. This package provides a nearly feature complete, +object oriented wrapper for the HDF5 API using R6 classes. Additionally, +functionality is added so that HDF5 objects behave very similar to their +corresponding R counterparts.") + (license license:asl2.0))) + +(define-public r-writexl + (package + (name "r-writexl") + (version "1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "writexl" version)) + (sha256 + (base32 + "0r2v12dc4zqmr1agp6vbw0fc48i278018684x84psjjqfmnv14cf")))) + (build-system r-build-system) + (inputs `(("zlib" ,zlib))) + (home-page "https://github.com/ropensci/writexl") + (synopsis "Export data frames to xlsx format") + (description + "This package provides a data frame to xlsx exporter based on +libxlsxwriter.") + (license license:bsd-2))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 929fbb5bc2..338db04f53 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -32,6 +32,7 @@ #:use-module (gnu packages attr) #:use-module (gnu packages autotools) #:use-module (gnu packages boost) + #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cryptsetup) #:use-module (gnu packages databases) @@ -217,7 +218,7 @@ communication.") (define-public encfs (package (name "encfs") - (version "1.9.1") + (version "1.9.5") (source (origin (method url-fetch) @@ -226,13 +227,13 @@ communication.") version "/encfs-" version ".tar.gz")) (sha256 (base32 - "1906254dg5hwljh0h4gyrw09ms3b57dlhjfzhfzffv50yzpkl837")) + "0qzxavvv20577bxvly8s7d3y7bqasqclc2mllp0ddfncjm9z02a7")) (modules '((guix build utils))) ;; Remove bundled dependencies in favour of proper inputs. (snippet '(begin (for-each delete-file-recursively - (find-files "internal" "^tinyxml2-[0-9]" - #:directories? #t)) + '("vendor/github.com/leethomason/tinyxml2" + "vendor/github.com/google/googletest")) #t)))) (build-system cmake-build-system) (native-inputs @@ -240,6 +241,7 @@ communication.") ;; Test dependencies. ("expect" ,expect) + ("googletest-source" ,(package-source googletest)) ("perl" ,perl))) (inputs `(("attr" ,attr) @@ -247,7 +249,18 @@ communication.") ("openssl" ,openssl) ("tinyxml2" ,tinyxml2))) (arguments - `(#:configure-flags (list "-DUSE_INTERNAL_TINYXML=OFF"))) + `(#:configure-flags (list "-DUSE_INTERNAL_TINYXML=OFF") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-googletest + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "vendor/github.com/google/googletest") + (invoke "tar" "xvf" (assoc-ref inputs "googletest-source") + "-C" "vendor/github.com/google/googletest" + "--strip-components=1"))) + (add-before 'check 'make-unittests + (lambda _ + (invoke "make" "unittests")))))) (home-page "https://vgough.github.io/encfs") (synopsis "Encrypted virtual file system") (description @@ -713,14 +726,14 @@ SHA256, SHA512, SHA3, AICH, ED2K, Tiger, DC++ TTH, BitTorrent BTIH, GOST R (define-public botan (package (name "botan") - (version "2.5.0") + (version "2.6.0") (source (origin (method url-fetch) (uri (string-append "https://botan.randombit.net/releases/" "Botan-" version ".tgz")) (sha256 (base32 - "06zvwknhwfrkdvq2sybqbqhnd2d4nq2cszlnsddql13z7vh1z8xq")))) + "1iawmymmnp5j2mcjj70slivn6bgg8gbpppldc1rjqw5sbdan3wn1")))) (build-system gnu-build-system) (arguments '(#:phases diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 201c180013..a99f2f22bf 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -23,29 +23,30 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages cups) - #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) #:use-module (gnu packages compression) - #:use-module (gnu packages groff) - #:use-module (gnu packages libusb) - #:use-module (gnu packages perl) - #:use-module (gnu packages pretty-print) - #:use-module (gnu packages python) - #:use-module (gnu packages scanner) - #:use-module (gnu packages image) - #:use-module (gnu packages fonts) ;font-dejavu + #:use-module (gnu packages fonts) ; font-dejavu #:use-module (gnu packages fontutils) #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) + #:use-module (gnu packages groff) + #:use-module (gnu packages image) + #:use-module (gnu packages libusb) #:use-module (gnu packages pdf) + #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages tls)) + #:use-module (gnu packages pretty-print) + #:use-module (gnu packages python) + #:use-module (gnu packages qt) + #:use-module (gnu packages scanner) + #:use-module (gnu packages tls) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages)) (define-public cups-filters (package @@ -379,14 +380,14 @@ device-specific programs to convert and print many types of files.") (define-public hplip (package (name "hplip") - (version "3.18.3") + (version "3.18.6") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/hplip/hplip/" version "/hplip-" version ".tar.gz")) (sha256 (base32 - "0x5xs86v18w46rxz5whc15bl4fb7p4km6xqjpwzclp83nl7rl01y")) + "0zbv6cp9n3xypf2fg4j6fpz8zkvl0z08lyc1vq1gd04ln1l3xkqf")) (modules '((guix build utils))) (snippet ;; Fix type mismatch. @@ -396,8 +397,10 @@ device-specific programs to convert and print many types of files.") #t)))) (build-system gnu-build-system) (home-page "http://hplipopensource.com/") - (synopsis "HP Printer Drivers") - (description "Hewlett-Packard Printer Drivers and PPDs.") + (synopsis "HP printer drivers") + (description + "Hewlett-Packard printer drivers and PostScript Printer Descriptions +(@dfn{PPD}s).") ;; The 'COPYING' file lists directories where each of these 3 licenses ;; applies. @@ -424,7 +427,8 @@ device-specific programs to convert and print many types of files.") ,(string-append "--with-icondir=" (assoc-ref %outputs "out") "/share/applications") ,(string-append "--with-systraydir=" - (assoc-ref %outputs "out") "/etc/xdg")) + (assoc-ref %outputs "out") "/etc/xdg") + "--enable-qt5" "--disable-qt4") #:imported-modules ((guix build python-build-system) ,@%gnu-build-system-modules) @@ -463,7 +467,7 @@ device-specific programs to convert and print many types of files.") (string-append "hplip_confdir = " out "/etc/hp")) (("halpredir = /usr/share/hal/fdi/preprobe/10osvendor") - ;; Note: We don't use hal. + ;; We don't use hal. (string-append "halpredir = " out "/share/hal/fdi/preprobe/10osvendor")) (("rulesdir = /etc/udev/rules.d") @@ -477,23 +481,30 @@ device-specific programs to convert and print many types of files.") (("/etc/sane.d") (string-append out "/etc/sane.d")))))) - ;; Wrap bin/* so that the Python libs are found. + ;; Wrap bin/* so that the Python libraries are found. (add-after 'install 'wrap-binaries (assoc-ref python:%standard-phases 'wrap))))) - ;; Python3 support is available starting from hplip@3.15.2. - (inputs `(("libjpeg" ,libjpeg) - ("cups-minimal" ,cups-minimal) - ("libusb" ,libusb) - ("sane-backends" ,sane-backends-minimal) - ("zlib" ,zlib) - ("dbus" ,dbus) - ("python-wrapper" ,python-wrapper) - ("python" ,python) - ;; TODO: Make hp-setup find python-dbus. - ("python-dbus" ,python-dbus))) - (native-inputs `(("pkg-config" ,pkg-config) - ("perl" ,perl))))) + ;; Note that the error messages printed by the tools in the case of + ;; missing dependencies are often downright misleading. + ;; TODO: hp-toolbox still fails to start with: + ;; from dbus.mainloop.pyqt5 import DBusQtMainLoop + ;; ModuleNotFoundError: No module named 'dbus.mainloop.pyqt5' + (inputs + `(("cups-minimal" ,cups-minimal) + ("dbus" ,dbus) + ("libjpeg" ,libjpeg) + ("libusb" ,libusb) + ("python" ,python) + ("python-dbus" ,python-dbus) + ("python-pygobject" ,python-pygobject) + ("python-pyqt" ,python-pyqt) + ("python-wrapper" ,python-wrapper) + ("sane-backends" ,sane-backends-minimal) + ("zlib" ,zlib))) + (native-inputs + `(("perl" ,perl) + ("pkg-config" ,pkg-config))))) (define-public foomatic-filters (package diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 7690a85f1b..9cbdf616c0 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -398,7 +398,7 @@ mapping from string keys to string values.") (define-public memcached (package (name "memcached") - (version "1.5.6") + (version "1.5.8") (source (origin (method url-fetch) @@ -406,7 +406,7 @@ mapping from string keys to string values.") "https://memcached.org/files/memcached-" version ".tar.gz")) (sha256 (base32 - "00szy9d4szaixi260dcd4846zci04y0sd47ia2lzg0bxkn2ywxcn")))) + "1ppnhsqv9047vm0rrmqla56y972f8qqjdb780iz6v922jjcc723k")))) (build-system gnu-build-system) (inputs `(("libevent" ,libevent) @@ -1107,7 +1107,7 @@ extremely small.") (define-public perl-dbi (package (name "perl-dbi") - (version "1.637") + (version "1.641") (source (origin (method url-fetch) (uri (string-append @@ -1115,7 +1115,7 @@ extremely small.") version ".tar.gz")) (sha256 (base32 - "1ikbsb6sb0bd2m1dqknl4vx7ikmnd41y0xq8np1l40g8jcjp2mr5")))) + "1hf2x29bnqf2x1v4bdhji802z7n2mbg7h1amv8gdkqyhrlrfa2am")))) (build-system perl-build-system) (synopsis "Database independent interface for Perl") (description "This package provides an database interface for Perl.") @@ -1487,14 +1487,14 @@ similar to BerkeleyDB, LevelDB, etc.") (define-public redis (package (name "redis") - (version "4.0.2") + (version "4.0.10") (source (origin (method url-fetch) (uri (string-append "http://download.redis.io/releases/redis-" version".tar.gz")) (sha256 (base32 - "04s8cgvwjj1979s3hg8zkwc9pyn3jkjpz5zidp87kfcipifr385i")))) + "194cydhv3hf4v95ifvjvsqrs4jn3ffrkg5lvxj5d3y04lwsp9dhx")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; tests related to master/slave and replication fail diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm index 0c6c62d5a3..9d0479b1e1 100644 --- a/gnu/packages/dav.scm +++ b/gnu/packages/dav.scm @@ -57,13 +57,13 @@ clients.") (define-public vdirsyncer (package (name "vdirsyncer") - (version "0.16.4") + (version "0.16.6") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "03wva48bgv1ad3df6plc9b8xxh6k8bcaxrhlzwh81c9mzn5bspzv")))) + "07iqq5c53cfrb5xnmam1rsl683hc3rykmdak896n2gm81r361c66")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -76,7 +76,6 @@ clients.") (zero? (system* "make" "test")))) (add-after 'install 'manpage (lambda* (#:key inputs outputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) (zero? (system* "make" "--directory=docs/" "man")) (install-file "docs/_build/man/vdirsyncer.1" diff --git a/gnu/packages/debian.scm b/gnu/packages/debian.scm index d3438a1f4c..e1dd9d1485 100644 --- a/gnu/packages/debian.scm +++ b/gnu/packages/debian.scm @@ -129,6 +129,7 @@ contains the archive keys used for that.") (add-after 'unpack 'patch-source (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) + (coreutils (assoc-ref inputs "coreutils")) (wget (assoc-ref inputs "wget")) (debian (assoc-ref inputs "debian-keyring")) (ubuntu (assoc-ref inputs "ubuntu-keyring"))) @@ -141,6 +142,7 @@ contains the archive keys used for that.") (substitute* "scripts/gutsy" (("/usr") ubuntu)) (substitute* "debootstrap" + (("chroot ") (string-append coreutils "/bin/chroot ")) (("=/usr") (string-append "=" out))) (substitute* "functions" (("wget ") (string-append wget "/bin/wget "))) @@ -154,7 +156,8 @@ contains the archive keys used for that.") #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))) #:tests? #f)) ; no tests (inputs - `(("debian-keyring" ,debian-archive-keyring) + `(("coreutils" ,coreutils) + ("debian-keyring" ,debian-archive-keyring) ("ubuntu-keyring" ,ubuntu-keyring) ("wget" ,wget))) ;; The following are required for debootstrap to work correctly diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 0b8d8be574..78479b2d32 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -50,6 +50,7 @@ #:use-module (gnu packages tls) #:use-module (gnu packages web) #:use-module (gnu packages xml) + #:use-module (gnu packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) @@ -104,6 +105,7 @@ and BOOTP/TFTP for network booting of diskless machines.") (uri (string-append "ftp://ftp.isc.org/isc/bind9/" version "/" name "-" version ".tar.gz")) + (patches (search-patches "bind-CVE-2018-5738.patch")) (sha256 (base32 "0a9dvyg1dk7vpqn9gz7p5jas3bz7z22bjd66b98g1qk16i2w7rqd")))) @@ -188,7 +190,7 @@ high-volume and high-reliability applications. The name BIND stands for ;; Re-generate build files due to unbundling ltdl. ;; TODO: Prevent generating new libltdl and building it. ;; The system version is still favored and referenced. - (zero? (system* "autoreconf" "-vif"))))))) + (invoke "autoreconf" "-vif")))))) (native-inputs `(("pkg-config" ,pkg-config) ("automake" ,automake) @@ -233,7 +235,7 @@ servers is included, and an up-to-date version is available at (modify-phases %standard-phases (add-after 'unpack 'create-configure (lambda _ - (zero? (system* "make" "configure"))))))) + (invoke "make" "configure")))))) (native-inputs `(("autoconf" ,autoconf))) (inputs @@ -424,9 +426,9 @@ struct servent *getservbyport(int port, const char *proto) { } return s; }" port))) - (system* (string-append gcc "/bin/gcc") - "-shared" "-fPIC" "-o" "/tmp/nss_preload.so" - "/tmp/nss_preload.c") + (invoke (string-append gcc "/bin/gcc") + "-shared" "-fPIC" "-o" "/tmp/nss_preload.so" + "/tmp/nss_preload.c") ;; The preload library only affects the unittests. (substitute* "Makefile" (("./unittest") @@ -539,10 +541,9 @@ Extensions} (DNSSEC).") (let* ((out (assoc-ref outputs "out")) (doc (string-append out "/share/doc/knot")) (etc (string-append doc "/examples/etc"))) - (zero? - (system* "make" - (string-append "config_dir=" etc) - "install"))))) + (invoke "make" + (string-append "config_dir=" etc) + "install")))) (add-after 'install 'wrap-python-scripts (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm index 9425df707c..f533535f03 100644 --- a/gnu/packages/documentation.scm +++ b/gnu/packages/documentation.scm @@ -139,10 +139,23 @@ markup) can be customized and extended by the user.") ("libxml2" ,libxml2) ; provides xmllint for the tests ("python" ,python-2))) ; for creating the documentation (inputs - `(("bash" ,bash-minimal))) + `(("bash" ,bash-minimal) + ,@(if (string-prefix? "armhf-" (%current-system)) + `(("gcc-ice-patch" ,@(search-patches "doxygen-gcc-ice.patch"))) + '()))) (arguments `(#:test-target "tests" #:phases (modify-phases %standard-phases + ;; Work around an ICE that shows up on native compiles for + ;; armhf-linux. + ,@(if (string-prefix? "armhf-" (%current-system)) + `((add-after 'unpack 'apply-gcc-patch + (lambda* (#:key inputs #:allow-other-keys) + (let ((patch (assoc-ref inputs "gcc-ice-patch"))) + (invoke "patch" "-p1" "--force" + "--input" patch))))) + '()) + (add-before 'configure 'patch-sh (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/portable.cpp" diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index 068aa23e36..af3ebeb805 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -146,7 +146,7 @@ as simple logic analyzer and/or oscilloscope hardware.") #t))) (add-after 'build 'build-doc (lambda _ - (zero? (system* "doxygen")))) + (invoke "doxygen"))) (add-after 'install 'install-doc (lambda* (#:key outputs #:allow-other-keys) (copy-recursively "doxy/html-api" @@ -158,7 +158,8 @@ as simple logic analyzer and/or oscilloscope hardware.") (install-file "contrib/60-libsigrok.rules" (string-append (assoc-ref outputs "out") - "/lib/udev/rules.d/")))) + "/lib/udev/rules.d/")) + #t)) (add-after 'install-udev-rules 'install-fw (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((fx2lafw (assoc-ref inputs "sigrok-firmware-fx2lafw")) diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index 9b120751d2..97bc7728ec 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -34,14 +34,14 @@ (define-public elfutils (package (name "elfutils") - (version "0.170") + (version "0.172") (source (origin (method url-fetch) (uri (string-append "https://sourceware.org/elfutils/ftp/" version "/elfutils-" version ".tar.bz2")) (sha256 (base32 - "0rp0r54z44is49c594qy7hr211nhb00aa5y7z74vsybbaxslg10z")) + "090fmbnvd9jblkwhb2bm3hanim63rrvd5f30mfxq4jac6kk9k73p")) (patches (search-patches "elfutils-tests-ptrace.patch")))) (build-system gnu-build-system) diff --git a/gnu/packages/elixir.scm b/gnu/packages/elixir.scm index ceabc2a6c4..ed6bd00236 100644 --- a/gnu/packages/elixir.scm +++ b/gnu/packages/elixir.scm @@ -40,15 +40,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0acnxfwvkx1m1d0h5z051mz95n35zm468hcvc3wpmn17c15h5ihg")) - ;; FIXME: 27 tests (out of 4K) had to be disabled as - ;; they fail in the build environment. Common failures - ;; are: - ;; - Mix.Shell.cmd() fails with error 130 - ;; - The git_repo fixture cannot be found - ;; - Communication with spawned processes fails with EPIPE - ;; - Failure to copy files - (patches (search-patches "elixir-disable-failing-tests.patch")))) + "0acnxfwvkx1m1d0h5z051mz95n35zm468hcvc3wpmn17c15h5ihg")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -70,27 +62,6 @@ (("#!/usr/bin/env elixir") (string-append "#!" out "/bin/elixir")))) #t)) - (add-after 'unpack 'fix-or-disable-tests - (lambda* (#:key inputs #:allow-other-keys) - ;; Some tests require access to a home directory. - (setenv "HOME" "/tmp") - - ;; FIXME: These tests fail because the "git_repo" fixture does - ;; not exist or cannot be found. - (delete-file "lib/mix/test/mix/tasks/deps.git_test.exs") - - ;; FIXME: Mix.Shell.cmd() always fails with error code 130. - (delete-file "lib/mix/test/mix/shell_test.exs") - - ;; FIXME: - ;; disabled failing impure tests to make it build again. - ;; related discussion: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28034#14 - (delete-file "lib/elixir/test/elixir/kernel/cli_test.exs") - (delete-file "lib/elixir/test/elixir/kernel/dialyzer_test.exs") - (delete-file "lib/iex/test/iex/helpers_test.exs") - (delete-file "lib/ex_unit/test/ex_unit/capture_io_test.exs") - - #t)) (add-before 'build 'make-current ;; The Elixir compiler checks whether or not to compile files by ;; inspecting their timestamps. When the timestamp is equal to the @@ -102,6 +73,11 @@ (utime file recent recent 0 0))) (find-files "." ".*")) #t)) + (add-before 'check 'set-home + (lambda* (#:key inputs #:allow-other-keys) + ;; Some tests require access to a home directory. + (setenv "HOME" "/tmp") + #t)) (delete 'configure)))) (inputs `(("erlang" ,erlang) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index e90660a236..349ae0d20c 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -108,6 +108,7 @@ #:use-module (gnu packages password-utils) #:use-module (gnu packages xdisorg) #:use-module (gnu packages shells) + #:use-module (gnu packages gnupg) #:use-module (guix utils) #:use-module (srfi srfi-1) #:use-module (ice-9 match)) @@ -312,12 +313,12 @@ editor (without an X toolkit)" ) ((#:phases phases) `(modify-phases ,phases (add-after 'unpack 'autogen - (lambda _ - (zero? (system* "sh" "autogen.sh")))) + (lambda _ + (invoke "sh" "autogen.sh"))) ;; Build sometimes fails: deps/dispnew.d: No such file or directory (add-before 'build 'make-deps-dir (lambda _ - (zero? (system* "mkdir" "-p" "src/deps")))))))))) + (invoke "mkdir" "-p" "src/deps"))))))))) ;;; @@ -411,7 +412,7 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.") (define-public emacs-with-editor (package (name "emacs-with-editor") - (version "2.7.2") + (version "2.7.3") (source (origin (method url-fetch) (uri (string-append @@ -420,7 +421,7 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1jqi3axcs0cb1pcv1jxxc2a09v6psrm33wwl6hmyshzl8kbxs2mv")))) + "1ln2s0kckzkv50qmr6x1kb2j30cfjii0vs6lpghg7ff4lav8jqgh")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash))) @@ -436,7 +437,7 @@ on stdout instead of using a socket as the Emacsclient does.") (define-public magit (package (name "magit") - (version "2.12.1") + (version "2.13.0") (source (origin (method url-fetch) (uri (string-append @@ -444,7 +445,7 @@ on stdout instead of using a socket as the Emacsclient does.") version "/" name "-" version ".tar.gz")) (sha256 (base32 - "1czzknmhzbggcv3bxl5amvfpp0zrkdwl1x05qarsq6qakvc85xy3")))) + "1ygaah3dd3nxpyd17297xgvdcgr7pgzzwlmpnmchki0kiwgg3sbc")))) (build-system gnu-build-system) (native-inputs `(("texinfo" ,texinfo) ("emacs" ,emacs-minimal))) @@ -585,7 +586,7 @@ support for Git-SVN.") (modify-phases %standard-phases (add-before 'install 'make-info (lambda _ - (zero? (system* "make" "info"))))))) + (invoke "make" "info")))))) (native-inputs `(("texinfo" ,texinfo))) (propagated-inputs @@ -602,7 +603,7 @@ process, passing on the arguments as command line arguments.") (define-public emacs-ghub (package (name "emacs-ghub") - (version "2.0.0") + (version "2.0.1") (source (origin (method url-fetch) (uri (string-append @@ -611,14 +612,14 @@ process, passing on the arguments as command line arguments.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1zrb3xk04a228g2ahx0r02d0d3xskj60q73qavvmm2i56r66cxvc")))) + "0d0qj5r1bm2aidi61rigrdaycxnyb7y1ivb3h8rpvvapsf8sk7z0")))) (build-system emacs-build-system) (arguments `(#:phases (modify-phases %standard-phases (add-before 'install 'make-info (lambda _ - (zero? (system* "make" "info"))))))) + (invoke "make" "info")))))) (native-inputs `(("texinfo" ,texinfo))) (home-page "https://github.com/magit/ghub") @@ -702,8 +703,7 @@ only a handful of functions that are not resource-specific.") files)) (with-directory-excursion "doc" - (unless (zero? (system* "makeinfo" "haskell-mode.texi")) - (error "makeinfo failed")) + (invoke "makeinfo" "haskell-mode.texi") (install-file "haskell-mode.info" info)) (copy-to-dir doc '("CONTRIBUTING.md" "NEWS" "README.md")) (copy-to-dir el-dir (find-files "." "\\.elc?")) @@ -794,7 +794,7 @@ provides an optional IDE-like error list.") (modify-phases %standard-phases (add-after 'unpack 'autoconf (lambda _ - (zero? (system* "autoconf")))) + (invoke "autoconf"))) (add-before 'configure 'support-emacs! (lambda _ ;; For some reason 'AC_PATH_EMACS' thinks that 'Emacs 26' is @@ -825,13 +825,13 @@ provides an optional IDE-like error list.") #t))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (and (zero? (system* "make" "install" "install-icons")) - (with-directory-excursion - (string-append (assoc-ref outputs "out") - "/share/emacs/site-lisp") - (for-each delete-file '("ChangeLog" "ChangeLog.1")) - (symlink "w3m-load.el" "w3m-autoloads.el") - #t))))))) + (invoke "make" "install" "install-icons") + (with-directory-excursion + (string-append (assoc-ref outputs "out") + "/share/emacs/site-lisp") + (for-each delete-file '("ChangeLog" "ChangeLog.1")) + (symlink "w3m-load.el" "w3m-autoloads.el") + #t)))))) (home-page "http://emacs-w3m.namazu.org/") (synopsis "Simple Web browser for Emacs based on w3m") (description @@ -937,7 +937,8 @@ provides an optional IDE-like error list.") (vorbis (assoc-ref inputs "vorbis-tools")) (alsa (assoc-ref inputs "alsa-utils")) (mpg321 (assoc-ref inputs "mpg321")) - (mp3info (assoc-ref inputs "mp3info"))) + (mp3info (assoc-ref inputs "mp3info")) + (opus (assoc-ref inputs "opus-tools"))) ;; Specify the installation directory. (substitute* "Makefile" (("PREFIX=.*$") @@ -962,6 +963,9 @@ provides an optional IDE-like error list.") (emacs-substitute-variables "emms-info-ogginfo.el" ("emms-info-ogginfo-program-name" (string-append vorbis "/bin/ogginfo"))) + (emacs-substitute-variables "emms-info-opusinfo.el" + ("emms-info-opusinfo-program-name" + (string-append opus "/bin/opusinfo"))) (emacs-substitute-variables "emms-info-libtag.el" ("emms-info-libtag-program-name" (string-append out "/bin/emms-print-metadata"))) @@ -1010,7 +1014,8 @@ provides an optional IDE-like error list.") ("vorbis-tools" ,vorbis-tools) ("mpg321" ,mpg321) ("taglib" ,taglib) - ("mp3info" ,mp3info))) + ("mp3info" ,mp3info) + ("opus-tools" ,opus-tools))) (properties '((upstream-name . "emms"))) (synopsis "Emacs Multimedia System") (description @@ -1023,27 +1028,8 @@ light user interface.") (license license:gpl3+))) (define-public emacs-emms-player-mpv - (package - (name "emacs-emms-player-mpv") - (version "0.1.0") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/dochang/emms-player-mpv/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "05qwbagc4i7yn7i94r1hdgj6wc5xijy1pxqv08pwsmli9rqj51n9")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emms" ,emms))) - (home-page "https://github.com/dochang/emms-player-mpv/") - (synopsis "Mpv support for EMMS") - (description - "This package provides an EMMS player that uses mpv. It supports pause -and seeking.") - (license license:gpl3+))) + ;; A new mpv backend is included in Emms from 5.0. + (deprecated-package "emacs-emms-player-mpv" emms)) (define-public emacs-emms-mode-line-cycle (package @@ -1154,7 +1140,7 @@ than @code{electric-indent-mode}.") (add-before 'install 'make-info (lambda _ (with-directory-excursion "docs" - (zero? (system* "make" "info"))))) + (invoke "make" "info")))) (add-after 'install 'install-info (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1430,11 +1416,11 @@ Maps directly inside Emacs.") (license license:gpl3+))) (define-public emacs-graphviz-dot-mode - (let ((commit "fdaabbcc95d9156e3dadc84f81a4750c5b692580") + (let ((commit "c456a2b65c734089e6c44e87209a5a432a741b1a") (revision "1")) (package (name "emacs-graphviz-dot-mode") - (version (string-append "0.3.10-" revision "." + (version (string-append "0.3.11-" revision "." (string-take commit 7))) (source (origin (method git-fetch) @@ -1444,7 +1430,7 @@ Maps directly inside Emacs.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1s1qh5r0xp6hs0rl5yz5mkmjhpg04bh449c7vgjbb1pjsl1dl714")))) + "0j1r2rspaakw37b0mx7pwpvdsvixq9sw3xjbww5piihzpdxz58z1")))) (build-system emacs-build-system) (arguments `(#:phases @@ -1455,13 +1441,12 @@ Maps directly inside Emacs.") (substitute* "Makefile" (("\\/usr\\/bin\\/gzip") (string-append (assoc-ref inputs "gzip") "/bin/gzip"))) - (zero? - (system* "make" - "clean" - "info" - (string-append "TEXINFODIR=" - (assoc-ref inputs "texinfo") - "/bin")))))) + (invoke "make" + "clean" + "info" + (string-append "TEXINFODIR=" + (assoc-ref inputs "texinfo") + "/bin"))))) (add-after 'install 'install-info (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1499,7 +1484,7 @@ diagrams.") (modify-phases %standard-phases (add-after 'unpack 'autogen (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -1564,7 +1549,7 @@ filters, new key bindings and faces. It can be enabled by (lambda _ (chdir "server") #t)) (add-after 'enter-server-dir 'autogen (lambda _ - (zero? (system* "bash" "autogen.sh")))) + (invoke "bash" "autogen.sh"))) ;; Build emacs side using 'emacs-build-system'. (add-after 'compress-documentation 'enter-lisp-dir @@ -1656,15 +1641,14 @@ type, for example: packages, buffers, files, etc.") (define-public emacs-guix (package (name "emacs-guix") - (version "0.4") + (version "0.4.1.1") (source (origin (method url-fetch) - (uri (string-append "https://github.com/alezost/guix.el" - "/releases/download/v" version - "/emacs-guix-" version ".tar.gz")) + (uri (string-append "https://emacs-guix.gitlab.io/website/" + "releases/emacs-guix-" version ".tar.gz")) (sha256 (base32 - "1nn4b0gd895g0k4fynzrip7z8yb1r3qmvznq9v8a6q7sm84irmqq")))) + "0jbnrcazbks7h50rngpw5l40a6vn2794kb53cpva3yzdjmrc1955")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -1715,7 +1699,7 @@ type, for example: packages, buffers, files, etc.") ("bui" ,emacs-bui) ("edit-indirect" ,emacs-edit-indirect) ("magit-popup" ,emacs-magit-popup))) - (home-page "https://alezost.github.io/guix.el/") + (home-page "https://emacs-guix.gitlab.io/website/") (synopsis "Emacs interface for GNU Guix") (description "Emacs-Guix provides a visual interface, tools and features for the GNU @@ -1727,7 +1711,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or (define-public emacs-d-mode (package (name "emacs-d-mode") - (version "2.0.8") + (version "2.0.9") (source (origin (method url-fetch) (uri (string-append @@ -1736,7 +1720,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0knpgi55jm09282aqf8pv55zillpnpzf9f4sgm6gwsmvxf17xaw0")))) + "127aa77ix3p7w4g339bx026df9y649dahlr3v359z0hs40zjz3kd")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-undercover" ,emacs-undercover))) @@ -2662,7 +2646,7 @@ build jobs.") (define-public emacs-company (package (name "emacs-company") - (version "0.9.3") + (version "0.9.6") (source (origin (method url-fetch) @@ -2671,7 +2655,7 @@ build jobs.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1fyrpchpdmvszssy1qmsw41aqpv6q5rybvs1bw00nv9xdhiaq4vh")))) + "0a7zvmfvxh9w67myvcj2511ayk0fvkm06cdg38y8khnsx63jrr4k")))) (build-system emacs-build-system) (arguments `(#:phases @@ -2971,8 +2955,8 @@ in @code{html-mode}.") (substitute* "Makefile" (("infodir=/usr/local/info") (string-append "infodir=" info-dir))) - (system* "make" "html/index.html") - (system* "make" "slime.info") + (invoke "make" "html/index.html") + (invoke "make" "slime.info") (install-file "slime.info" info-dir) (copy-recursively "html" (string-append doc-dir "/html"))) (for-each (lambda (f) @@ -3014,6 +2998,33 @@ This provides a basic API and common UI widgets such as popup tooltips and popup menus.") (license license:gpl3+))) +(define-public emacs-puppet-mode + (let ((commit "b3ed5057166a4f49dfa9be638523a348b55a2fd2") + (revision "1")) + (package + (name "emacs-puppet-mode") + ;; The last release, 0.3 was several years ago, and there have been many + ;; commits since + (version (git-version "0.3" revision commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://raw.githubusercontent.com/voxpupuli/puppet-mode/" + commit "/puppet-mode.el")) + (sha256 + (base32 + "1indycxawsl0p2aqqg754f6735q3cmah9vd886rpn0ncc3ipi1xm")))) + (build-system emacs-build-system) + (home-page "https://github.com/voxpupuli/puppet-mode") + (synopsis "Emacs major mode for the Puppet configuration language") + (description + "This package provides support for the Puppet configuration language, +including syntax highlighting, indentation of expressions and statements, +linting of manifests and integration with Puppet Debugger.") + ;; Also incorporates work covered by the Apache License, Version 2.0 + (license license:gpl3+)))) + (define-public emacs-god-mode (let ((commit "6cf0807b6555eb6fcf8387a4e3b667071ef38964") (revision "1")) @@ -3625,9 +3636,9 @@ automatically.") (let* ((out (assoc-ref outputs "out")) (info (string-append out "/share/info"))) (with-directory-excursion "doc" - (unless (zero? (system* "makeinfo" "ivy.texi")) - (error "makeinfo failed")) - (install-file "ivy.info" info)))))))) + (invoke "makeinfo" "ivy.texi") + (install-file "ivy.info" info) + #t))))))) (propagated-inputs `(("emacs-hydra" ,emacs-hydra))) (native-inputs @@ -3643,6 +3654,35 @@ splitting the input text by spaces and re-building it into a regular expression.") (license license:gpl3+))) +(define-public emacs-ivy-yasnippet + (let ((commit "59b32cf8cfb63df906822a17f6f5e8545dac38d4")) + (package + (name "emacs-ivy-yasnippet") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mkcms/ivy-yasnippet.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0hghdlxkfwrglvc1nql2ikgp6jj0qdbfwc3yvpb19mrf26hwgp13")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ivy" ,emacs-ivy) + ("emacs-yasnippet" ,emacs-yasnippet) + ("emacs-dash" ,emacs-dash))) + (home-page "https://github.com/mkcms/ivy-yasnippet") + (synopsis "Preview @code{yasnippets} with @code{ivy}") + (description "This package allows you to select @code{yasnippet} +snippets using @code{ivy} completion. When current selection changes in the +minibuffer, the snippet contents are temporarily expanded in the buffer. To +use it, call @code{M-x ivy-yasnippet} (but make sure you have enabled +@code{yas-minor-mode} first).") + (license license:gpl3+)))) + (define-public emacs-avy (package (name "emacs-avy") @@ -4050,14 +4090,15 @@ programming language.") (lambda* (#:key inputs #:allow-other-keys) (substitute* "Makeconf" (("SHELL = /bin/sh") - (string-append "SHELL = " (which "sh")))))) + (string-append "SHELL = " (which "sh")))) + #t)) ;; FIXME: the texlive-union insists on regenerating fonts. It stores ;; them in HOME, so it needs to be writeable. (add-before 'build 'set-HOME (lambda _ (setenv "HOME" "/tmp") #t)) (replace 'check (lambda _ - (zero? (system* "make" "test")))))))) + (invoke "make" "test"))))))) (inputs `(("emacs" ,emacs-minimal) ("r-minimal" ,r-minimal))) @@ -4395,7 +4436,7 @@ indentation command behavior very similar to that of python-mode.") (define-public emacs-web-mode (package (name "emacs-web-mode") - (version "14") + (version "16") (source (origin (method url-fetch) (uri (string-append "https://raw.githubusercontent.com/fxbois" @@ -4403,7 +4444,7 @@ indentation command behavior very similar to that of python-mode.") (file-name (string-append "web-mode-" version ".el")) (sha256 (base32 - "086hik5fmxg3kx74qmransx9cz961qd22d4m6ah2dw6cwaj1s3s5")))) + "1hs5w7kdvcyn4ihyw1kfjg48djn5p7lz4rlbhzzdqv1g56xqx3gw")))) (build-system emacs-build-system) (synopsis "Major mode for editing web templates") (description "Web-mode is an Emacs major mode for editing web templates @@ -4439,7 +4480,7 @@ the file buffer.") (define-public emacs-helm (package (name "emacs-helm") - (version "2.9.0") + (version "2.9.6") (source (origin (method url-fetch) (uri (string-append @@ -4448,7 +4489,7 @@ the file buffer.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1798gn0za11cxdbi436javfczv4abniccxcl0jppl463r8lzb8is")))) + "1f7m09i8gr0gk5nw5dn7rpdz20dg3hl4p77dpygkhl82yhk9q2ql")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-async" ,emacs-async) @@ -4671,36 +4712,38 @@ news items, openrc and runscripts.") (license license:gpl2+))) (define-public emacs-evil - (package - (name "emacs-evil") - (version "1.2.13") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/emacs-evil/evil/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1z63zsxmsc6mh74wv6065carwqmgs7b7lz5044s12xvgsjfbwi8h")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-undo-tree" ,emacs-undo-tree) - ("emacs-goto-chg" ,emacs-goto-chg))) - (home-page "https://github.com/emacs-evil/evil") - (synopsis "Extensible Vi layer for Emacs") - (description - "Evil is an extensible vi layer for Emacs. It emulates the + (let ((commit "230b87212c81aaa68ef5547a6b998d9c365fe139")) + (package + (name "emacs-evil") + (version (git-version "1.2.13" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-evil/evil") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0c9zy3bpck10gcrv79kd3h7i4ygd5bgbgy773n0lg7a2r5kwn1gx")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-undo-tree" ,emacs-undo-tree) + ("emacs-goto-chg" ,emacs-goto-chg))) + (home-page "https://github.com/emacs-evil/evil") + (synopsis "Extensible Vi layer for Emacs") + (description + "Evil is an extensible vi layer for Emacs. It emulates the main features of Vim, and provides facilities for writing custom extensions.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-evil-collection - (let ((commit "f40704a57fd33b4bfad64147a2b771fc8961fdfc") + (let ((commit "ac21b8957cfc22485cdaa316384edf9cb220d837") (revision "1")) (package (name "emacs-evil-collection") - (version (git-version "20180425" revision commit)) + (version (git-version "20180617" revision commit)) (source (origin (method git-fetch) (uri (git-reference @@ -4709,7 +4752,7 @@ extensions.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0qn19k0f3isnbi1hkmcf3qjxbyvp23m5ak5ny7623qgwb2nwz1l5")))) + "082a3c5c2ls9ryqrl5kzb4z6bcprhqx8pypnlj1razbld3lny934")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) @@ -4768,7 +4811,7 @@ distribution, primarily targeting Clojure users") (define-public emacs-orgalist (package (name "emacs-orgalist") - (version "1.7") + (version "1.8") (source (origin (method url-fetch) @@ -4776,7 +4819,7 @@ distribution, primarily targeting Clojure users") "orgalist-" version ".el")) (sha256 (base32 - "13dl0l727vlny3y88gqpngcy90ly5r719s1pbmkva5gmcryb68xr")))) + "1wqwnmn08i0qkxm8b2iclvf6cydcn68h1p3h7r1kig2bdn5b8948")))) (build-system emacs-build-system) (home-page "http://elpa.gnu.org/packages/orgalist.html") (synopsis "Manage Org-like lists in non-Org buffers") @@ -5410,8 +5453,8 @@ Yasnippet.") (license license:gpl2+)))) (define-public emacs-helm-system-packages - (let ((commit "986b7bd360a705053500c4ce2c9bea03dd7b24a6") - (revision "1")) + (let ((commit "b41f8f251695cf236e9d1627070049a5b41aa38a") + (revision "2")) (package (name "emacs-helm-system-packages") (version (git-version "1.9.0" revision commit)) @@ -5423,7 +5466,7 @@ Yasnippet.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "19iklhpxgh5xx6h4dysf58nd46lmyb46xj601lf7kbwl6yq0y61f")))) + "1wrsx1j86c9a74nsdndjv21slzl46idd3p6wqy5wnasawj0kfn8r")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-helm" ,emacs-helm))) @@ -5580,7 +5623,7 @@ highlights quasi-quoted expressions.") (define-public emacspeak (package (name "emacspeak") - (version "47.0") + (version "48.0") (source (origin (method url-fetch) @@ -5589,7 +5632,7 @@ highlights quasi-quoted expressions.") version "/emacspeak-" version ".tar.bz2")) (sha256 (base32 - "0xbcc266x752y68s3g096m161irzvsqym3axzqn8rb276a8x55n7")))) + "07imi3hji06b3r7v7v59978q76s8a7ynmxwfc9j03pgnv965lpjy")))) (build-system gnu-build-system) (arguments '(#:make-flags (list (string-append "prefix=" @@ -5597,30 +5640,35 @@ highlights quasi-quoted expressions.") #:phases (modify-phases %standard-phases (replace 'configure - (lambda _ - ;; Configure Emacspeak according to etc/install.org. - (setenv "SHELL" (which "sh")) - (zero? (system* "make" "config")))) + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lisp (string-append out + "/share/emacs/site-lisp/emacspeak"))) + (setenv "SHELL" (which "sh")) + ;; Configure Emacspeak according to etc/install.org. + (invoke "make" "config")))) (add-after 'build 'build-espeak (lambda _ - (zero? (system* "make" "espeak")))) + (invoke "make" "espeak"))) (replace 'install - (lambda* (#:key outputs #:allow-other-keys) + (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin")) (lisp (string-append out "/share/emacs/site-lisp/emacspeak")) - (info (string-append out "/share/info"))) + (info (string-append out "/share/info")) + (emacs (string-append (assoc-ref inputs "emacs") + "/bin/emacs"))) ;; According to etc/install.org, the Emacspeak directory should ;; be copied to its installation destination. (for-each (lambda (file) (copy-recursively file (string-append lisp "/" file))) - '("etc" "info" "lisp" "media" "servers" "sounds" "stumpwm" - "xsl")) + '("etc" "info" "js" "lisp" "media" "scapes" "servers" "sounds" + "stumpwm" "xsl")) ;; Make sure emacspeak is loaded from the correct directory. (substitute* "etc/emacspeak.sh" - (("exec emacs.*$") - (string-append "exec emacs -l " lisp + (("exec FLAVOR.*") + (string-append "exec " emacs " -l " lisp "/lisp/emacspeak-setup.el $CL_ALL"))) ;; Install the convenient startup script. (mkdir-p bin) @@ -5639,10 +5687,11 @@ highlights quasi-quoted expressions.") #t)))) #:tests? #f)) ; no check target (inputs - `(("espeak" ,espeak) + `(("emacs" ,emacs) + ("espeak" ,espeak) + ("perl" ,perl) ("tcl" ,tcl) ("tclx" ,tclx))) - (native-inputs `(("emacs" ,emacs-minimal))) (home-page "http://emacspeak.sourceforge.net") (synopsis "Audio desktop interface for Emacs") (description @@ -5804,7 +5853,7 @@ source file, @file{jl-encrypt.el}.") (define-public emacs-htmlize (package (name "emacs-htmlize") - (version "1.51") + (version "1.53") (source (origin (method url-fetch) @@ -5814,7 +5863,7 @@ source file, @file{jl-encrypt.el}.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1fy1lybzrxl8a8r88f6p19nz8ygmvcxhxbnymkxh7jqaz25viwld")))) + "1lzaf9m1qr9dhw4nn53g6wszk2vqw95gpsbrc3y85bams4cn24ga")))) (build-system emacs-build-system) (home-page "https://github.com/hniksic/emacs-htmlize") (synopsis "Convert buffer text and decorations to HTML") @@ -6087,13 +6136,13 @@ which code derived from Kelvin H's org-page.") (modify-phases %standard-phases (add-after 'unpack 'regenerate-el-files (lambda* (#:key inputs #:allow-other-keys) - (zero? (system* "make" - (string-append "PROTO_PATH=" - (assoc-ref inputs "xcb-proto") - "/share/xcb") - (string-append "EMACS_BIN=" - (assoc-ref inputs "emacs") - "/bin/emacs -Q")))))))) + (invoke "make" + (string-append "PROTO_PATH=" + (assoc-ref inputs "xcb-proto") + "/share/xcb") + (string-append "EMACS_BIN=" + (assoc-ref inputs "emacs") + "/bin/emacs -Q"))))))) (native-inputs `(("xcb-proto" ,xcb-proto))) (home-page "https://github.com/ch11ng/xelb") (synopsis "X protocol Emacs Lisp binding") @@ -7175,7 +7224,7 @@ messaging service.") (define-public emacs-bash-completion (package (name "emacs-bash-completion") - (version "2.0.0") + (version "2.1.0") (source (origin (method url-fetch) @@ -7185,7 +7234,7 @@ messaging service.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0mkci4a1fy8z4cmry8mx5vsx4f16a8r454slnh7lqzidnhfi63hj")))) + "1z0qck3v3ra6ivacn8n04w1v33a4xn01xx860761q31qzsv3sksq")))) (inputs `(("bash" ,bash))) (build-system emacs-build-system) (arguments @@ -7888,7 +7937,7 @@ close, copy, cut, paste, undo, redo.") (define-public emacs-password-store (package (name "emacs-password-store") - (version "1.7.1") + (version "1.7.2") (source (origin (method url-fetch) (uri @@ -7896,7 +7945,7 @@ close, copy, cut, paste, undo, redo.") "password-store-" version ".tar.xz")) (sha256 (base32 - "0scqkpll2q8jhzcgcsh9kqz0gwdpvynivqjmmbzax2irjfaiklpn")))) + "1sl0d7nc85c6c2bmmmyb8rpmn47vhkj831l153mjlkawjvhwas27")))) (build-system emacs-build-system) (arguments `(#:phases @@ -7911,6 +7960,7 @@ close, copy, cut, paste, undo, redo.") (propagated-inputs `(("emacs-f" ,emacs-f) ("emacs-s" ,emacs-s) + ("emacs-with-editor" ,emacs-with-editor) ("password-store" ,password-store))) (home-page "https://git.zx2c4.com/password-store/tree/contrib/emacs") (synopsis "Password store (pass) support for Emacs") @@ -8099,7 +8149,7 @@ object has been freed.") #t))))) (inputs `(("emacs-minimal" ,emacs-minimal) - ("mysql" ,mysql) + ("mariadb" ,mariadb) ("postgresql" ,postgresql))) (propagated-inputs `(("emacs-finalize" ,emacs-finalize) @@ -8905,10 +8955,10 @@ confused by comments or @code{foo-bar} matching @code{foo}.") (modify-phases %standard-phases (add-before 'install 'check (lambda* (#:key inputs #:allow-other-keys) - (zero? (system* "emacs" "--batch" "-L" "." - "-l" "test/m-buffer-test.el" - "-l" "test/m-buffer-at-test.el" - "-f" "ert-run-tests-batch-and-exit"))))))) + (invoke "emacs" "--batch" "-L" "." + "-l" "test/m-buffer-test.el" + "-l" "test/m-buffer-at-test.el" + "-f" "ert-run-tests-batch-and-exit")))))) (build-system emacs-build-system) (home-page "https://github.com/phillord/m-buffer-el") (synopsis "List oriented buffer operations for Emacs") @@ -9592,31 +9642,8 @@ time is being spent during Emacs startup in order to optimize startup time.") (license license:gpl3+))) (define-public emacs-emms-player-simple-mpv - (let ((commit "101d120ccdee1c2c213fd2f0423c858b21649c00") - (revision "1")) - (package - (name "emacs-emms-player-simple-mpv") - (version (string-append "0.4.0" "-" revision "." - (string-take commit 7))) - - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/momomo5717/emms-player-simple-mpv.git") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1i6rxkm0ra0jbkkwgkwxg3vk5xfl794h1gkgnlpscynz0v94b6ll")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-emms" ,emms))) - (home-page "https://github.com/momomo5717/emms-player-simple-mpv") - (synopsis "Extension of @file{emms-player-simple.el} for mpv JSON IPC") - (description "@code{emms-player-simple-mpv} provides macros and -functions for defining emms simple players of mpv.") - (license license:gpl3+)))) + ;; A new mpv backend is included in Emms from 5.0. + (deprecated-package "emacs-emms-player-simple-mpv" emms)) (define-public emacs-magit-org-todos-el (let ((commit "df206287737b9671f2e36ae7b1474ebbe9940d2a")) @@ -9905,11 +9932,11 @@ perform regression test for packages that provide font-lock rules.") (license license:gpl3+)))) (define-public emacs-racket-mode - (let ((commit "33877b1bb24faea68842e0396bd5718b84e47451") + (let ((commit "48f0cb99d3b2ca6066249546d2063d85437251c1") (revision "1")) (package (name "emacs-racket-mode") - (version (string-append "0.0.1" "-" revision "." + (version (string-append "0.0.2" "-" revision "." (string-take commit 7))) (source (origin @@ -9920,8 +9947,10 @@ perform regression test for packages that provide font-lock rules.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0681mzwx08zwbh8qg3s26jw1jn4fw2ljp1akxqkhy08sxhafqvb1")))) + "0fxky8xj639bjhiab9way9daqda22301b7w85vm4b4ydgjgnc59x")))) (build-system emacs-build-system) + (arguments + `(#:include '("\\.el$" "\\.rkt$"))) (propagated-inputs `(("emacs-faceup" ,emacs-faceup) ("emacs-s" ,emacs-s))) @@ -10637,27 +10666,8 @@ Org-mode file, and citations of Zotero items in Pandoc Markdown files.") (license license:gpl3+))) (define-public emacs-evil-ediff - (package - (name "emacs-evil-ediff") - (version "20170724") - (source - (origin - (method url-fetch) - (uri (string-append - "https://github.com/emacs-evil/evil-ediff/archive/" - "67b0e69f65c196eff5b39dacb7a9ec05bb919c74" - ".tar.gz")) - (sha256 - (base32 - "0j2x26zfc6md54mjf76qpybil4yal70lp5bifcz62l1f8fc1vvlq")))) - (build-system emacs-build-system) - (propagated-inputs `(("emacs-evil" ,emacs-evil))) - (home-page "https://github.com/emacs-evil/evil-ediff") - (synopsis "Make Ediff a little evil") - (description - "This Emacs package configures Ediff to be friendlier to users of Vi-like -keybindings. Consult the help buffer for more information.") - (license license:gpl3+))) + ;; Evil-Ediff is included in Evil Collection from 20180617. + (deprecated-package "emacs-evil-ediff" emacs-evil-collection)) (define-public emacs-evil-magit (let ((commit "dbf5a646a7ce1c35c229dfdc423bd5ecd927a3a8")) @@ -10689,30 +10699,8 @@ describing the key binding changes.") (license license:gpl3+)))) (define-public emacs-evil-mu4e - (package - (name "emacs-evil-mu4e") - (version "0.0.8") - (source - (origin - (method url-fetch) - (uri (string-append - "https://github.com/JorisE/evil-mu4e/archive/" - "c03a0e11afda3092eb1461be09fa6a61ebc0e4f6" - ".tar.gz")) - (sha256 - (base32 - "1k3z5h04bqslrkq13paqf8pv9r0rf0zjl0zbb57ly043ds3nvxr2")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-dash" ,emacs-dash) - ("emacs-evil" ,emacs-evil) - ("mu" ,mu))) - (home-page "https://github.com/JorisE/evil-mu4e") - (synopsis "Evil-based key bindings for mu4e") - (description - "Use keybindings for the mu4e mail reader in Emacs that make sense for -Evil users.") - (license license:gpl3+))) + ;; Evil-mu4e is included in Evil Collection from 20180617. + (deprecated-package "emacs-evil-mu4e" emacs-evil-collection)) (define-public emacs-evil-multiedit (let ((commit "ea3d9177b74ab0bc65e55df9cc0a0b42e4ef815d")) @@ -10778,26 +10766,39 @@ Org-mode. It features: (license license:gpl3+)))) (define-public emacs-fish-completion - (package - (name "emacs-fish-completion") - (version "20180329") - (source - (origin - (method url-fetch) - (uri (string-append - "https://github.com/Ambrevar/emacs-fish-completion/archive/" - "3e3ed1f19fa778b7c35ad88e033dce5a6b1fc153" - ".tar.gz")) - (sha256 - (base32 - "16329py7fvid0bap1qhqxhdc68m9qqy1p8gc2bhng81zhm5a5zsm")))) - (build-system emacs-build-system) - (propagated-inputs `(("fish" ,fish))) - (home-page - "https://github.com/Ambrevar/emacs-fish-completion") - (synopsis "Fish completion for Emacs pcomplete") - (description - "This package provides completion for the Fish shell to pcomplete (used + (let ((commit "bac15fda1392a891070574dfe5d2d50b10831e8b")) + (package + (name "emacs-fish-completion") + (version (git-version "20180616" "1" commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://gitlab.com/Ambrevar/emacs-fish-completion/repository/" + "archive.tar.gz?ref=" + commit)) + (sha256 + (base32 + "093qzdrbkl7dhjk16zq8i13kh1phyigkblcfrbgbrxjqd2ndrfdi")))) + (build-system emacs-build-system) + (inputs `(("fish" ,fish))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((fish (assoc-ref inputs "fish"))) + ;; Specify the absolute file names of the various + ;; programs so that everything works out-of-the-box. + (emacs-substitute-variables + "fish-completion.el" + ("fish-completion-command" + (string-append fish "/bin/fish"))))))))) + (home-page + "https://gitlab.com/Ambrevar/emacs-fish-completion") + (synopsis "Fish completion for Emacs pcomplete") + (description + "This package provides completion for the Fish shell to pcomplete (used by shell and Eshell). You can set it up globally with: @example @@ -10812,4 +10813,466 @@ shell/Eshell mode hook. The package @code{emacs-bash-completion} is an optional dependency: if available, @code{fish-completion-complete} can be configured to fall back on bash to further try completing. See @code{fish-completion-fallback-on-bash-p}.") - (license license:gpl3+))) + (license license:gpl3+)))) + +(define-public emacs-gif-screencast + (let ((commit "12b25442b97b84abae74ecb5190a9d14ff7cfe5a")) + (package + (name "emacs-gif-screencast") + (version (git-version "20180616" "1" commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://gitlab.com/Ambrevar/emacs-gif-screencast/" + "repository/archive.tar.gz?ref=" + commit)) + (sha256 + (base32 + "0lc457i78xjkn5idr2aaiadkh76zcsksj84z0qh80a9y775syrgh")))) + (build-system emacs-build-system) + (inputs + `(("scrot" ,scrot) + ("imagemagick" ,imagemagick) + ("gifsicle" ,gifsicle))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((scrot (assoc-ref inputs "scrot")) + (imagemagick (assoc-ref inputs "imagemagick")) + (gifsicle (assoc-ref inputs "gifsicle"))) + ;; Specify the absolute file names of the various + ;; programs so that everything works out-of-the-box. + (emacs-substitute-variables + "gif-screencast.el" + ("gif-screencast-program" + (string-append scrot "/bin/scrot")) + ("gif-screencast-convert-program" + (string-append imagemagick "/bin/convert")) + ("gif-screencast-cropping-program" + (string-append imagemagick "/bin/mogrify")) + ("gif-screencast-optimize-program" + (string-append imagemagick "/bin/gifsicle"))))))))) + (home-page + "https://gitlab.com/Ambrevar/emacs-gif-screencast") + (synopsis "One-frame-per-action GIF recording") + (description + "Call @code{gif-screencast} to start a recording. +A screenshot is taken for every user action. Call +@code{gif-screencast-stop} ( by default) to finish recording and create +the GIF result.") + (license license:gpl3+)))) + +(define-public emacs-google-translate + (let ((commit "d8b84a8359fcc697114d1298840e9a45b111c974")) + (package + (name "emacs-google-translate") + (version (git-version "0.11.14" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/atykhonov/google-translate") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1qs4hcg1i2m487z50nnwgs0sa2xj4lpgizbrvi2yda0mf3m75fgc")))) + (build-system emacs-build-system) + (home-page "https://github.com/atykhonov/google-translate") + (synopsis "Emacs interface to Google Translate") + (description + "This packages provides an Emacs interface to the Google Translate +on-line service.") + (license license:gpl3+)))) + +(define-public emacs-helm-company + (let ((commit "acc9c7901e094c1591327a0db1ec7a439f67a84d")) + (package + (name "emacs-helm-company") + (version (git-version "0.2.2" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Sodel-the-Vociferous/helm-company") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1d4q9clp0q56br80c21a4wz1gc4jw3mdy97z9mq07x9i8rhlppzs")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-company" ,emacs-company))) + (home-page "https://github.com/Sodel-the-Vociferous/helm-company") + (synopsis "Helm interface for company-mode") + (description + "This is a Helm interface to company-mode, a text completion +framework.") + (license license:gpl3+)))) + +(define-public emacs-helm-descbinds + (let ((commit "033be73f21778633813264ce1634a6e1ad873d8e")) + (package + (name "emacs-helm-descbinds") + (version (git-version "1.13" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-helm/helm-descbinds") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1n89p56qwa243w1c85i5awnaf7piwjsvfi7nmnsrwm33hix5dknk")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-helm" ,emacs-helm))) + (home-page "https://github.com/emacs-helm/helm-descbinds") + (synopsis "Convenient @code{describe-bindings} with Helm") + (description + "This package is a replacement of @code{describe-bindings} for Helm. +@code{describe-bindings} is replaced with @code{helm-descbinds}. As usual, +type @code{C-h b}, or any incomplete key sequence plus @code{C-h}, to run +@code{helm-descbinds}. The bindings are presented in a similar way as +@code{describe-bindings} does, but you can use completion to find the command +you searched for and execute it, or view its documentation.") + (license license:gpl3+)))) + +(define-public emacs-helm-emms + (let ((commit "d3f9bdef8ff0d093eaf6e26af50ea905ab53fdec")) + (package + (name "emacs-helm-emms") + (version (git-version "1.3" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-helm/helm-emms") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0bdb8xp0yp3gijpa9i2rc17gfzjhzlm92vdzw93i10qpd1xhj4aa")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-emms" ,emms))) + (home-page + "https://github.com/emacs-helm/helm-emms") + (synopsis "Emms for Helm") + (description "Helm interface for Emms to browse all tracks and all folders +from @code{emms-source-file-default-directory}.") + (license license:gpl3+)))) + +(define-public emacs-helm-exwm + (let ((commit "82a856c80c8d295e3be522a01c5a15af50d08990")) + (package + (name "emacs-helm-exwm") + (version (git-version "20180523" "1" commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/emacs-helm/helm-exwm/archive/" + commit + ".tar.gz")) + (sha256 + (base32 + "1xsg2lar1vh7jmj5lnnyi14vssxkgy95sv9r8pbfhbnkjkbjm9pb")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-exwm" ,emacs-exwm))) + (home-page + "https://github.com/emacs-helm/helm-exwm") + (synopsis "Helm for EXWM buffers") + (description + "@code{helm-exwm} runs a Helm session over the list of EXWM buffers. +@code{helm-exwm-switch} is a convenience X application launcher using Helm to +switch between the various windows of one or several specific applications. +See @code{helm-exwm-switch-browser} for an example.") + (license license:gpl3+)))) + +(define-public emacs-helm-flycheck + (let ((commit "3cf7d3bb194acacc6395f88360588013d92675d6")) + (package + (name "emacs-helm-flycheck") + (version (git-version "0.4" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/yasuyk/helm-flycheck") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1a2yfxhz04klwhcandqvfzysxp6b7bxyxx1xk1x3kds5hif5fkl4")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-flycheck" ,flycheck) + ("emacs-helm" ,emacs-helm))) + (home-page "https://github.com/yasuyk/helm-flycheck") + (synopsis "Show Flycheck errors with Helm") + (description + "This integrates Flycheck with Helm.") + (license license:gpl3+)))) + +(define-public emacs-helm-ls-git + (let ((commit "76654c776a7f6e2e5290645e748aac2a746f7daa")) + (package + (name "emacs-helm-ls-git") + (version (git-version "1.9.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-helm/helm-ls-git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0vsq1n3xl3ghy5zik2scm7jrs501n4kybdqd6yw6j0cv4jxdqbr0")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-helm" ,emacs-helm))) + (home-page "https://github.com/emacs-helm/helm-ls-git") + (synopsis "Helm interface for listing the files in a Git repository") + (description + "This package provides a Helm interface for Git files. +@itemize +@item Display the open buffers in project. +@item Display a status source showing state of project (modified files etc.). +@item Display a list of all files in project under git control. +@item Quickly look at diffs of modified files. +@item Allow switching to @code{git status} with your preferred frontend +(vc-dir, Magit,etc.). +@item Full integration of git-grep, also allow usage of @code{helm-grep} (you +can use ack-grep instead of grep). +@item Integrate usage of gid from id-utils. +@item Full integration with @code{helm-find-files}, allow you to browse +projects unrelated to current-buffer. +@item In addition, all actions of type files and buffers are provided. +@end itemize\n") + (license license:gpl3+)))) + +(define-public emacs-helm-mu + (let ((commit "77e6fea24e01481418738421dbcfe28ef1bd63cf")) + (package + (name "emacs-helm-mu") + (version (git-version "20180513" "1" commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/emacs-helm/helm-mu/archive/" + commit + ".tar.gz")) + (sha256 + (base32 + "0qm4xi3i957scm50nar398pv4x8y03si10l77jb9ckjaviyq2hj9")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("mu" ,mu))) + (home-page + "https://github.com/emacs-helm/helm-mu") + (synopsis + "Helm sources for searching emails and contacts") + (description + "Helm sources for searching emails and contacts using @code{mu} and +@code{mu4e}. Mu is an indexer for maildirs and mu4e is a mutt-like MUA for +Emacs build on top of mu. Mu is highly efficient making it possible to get +instant results even for huge maildirs. It also provides search operators, +e.g: @code{from:Peter to:Anne flag:attach search term}.") + (license license:gpl3+)))) + +(define-public emacs-helm-pass + (let ((commit "ebcbef1a962795a36e3491ae926e2a4b8a8b0ebb")) + (package + (name "emacs-helm-pass") + (version (git-version "20180416" "1" commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/jabranham/helm-pass/archive/" + commit + ".tar.gz")) + (sha256 + (base32 + "1pgq4hj9wvz7z2fyxwsvbh6rmc1akya84v382nx26rr76iavz6wi")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-password-store" ,emacs-password-store))) + (home-page + "https://github.com/jabranham/helm-pass") + (synopsis "Helm interface to pass, the standard Unix password manager") + (description + "Users of @code{helm-pass} may also be interested in functionality +provided by other Emacs packages dealing with pass: +@itemize +@item @code{emacs-password-store}, which @code{helm-pass} relies on. +@item @code{emacs-pass}, a major mode for @code{pass}. +@item @code{auth-source-pass.el}: integration of Emacs' auth-source with +@code{pass}, included in Emacs 26+). +@end itemize\n") + (license license:gpl3+)))) + +(define-public emacs-image+ + (let ((commit "6834d0c09bb4df9ecc0d7a559bd7827fed48fffc")) + (package + (name "emacs-image+") + (version (git-version "0.6.2" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mhayashi1120/Emacs-imagex") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0v66wk9nh0raih4jhrzmmyi5lbysjnmbv791vm2230ffi2hmwxnd")))) + (build-system emacs-build-system) + (inputs `(("imagemagick" ,imagemagick))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((imagemagick (assoc-ref inputs "imagemagick"))) + ;; Specify the absolute file names of the various + ;; programs so that everything works out-of-the-box. + (chmod "image+.el" #o666) + (emacs-substitute-variables + "image+.el" + ("imagex-convert-command" + (string-append imagemagick "/bin/convert")) + ("imagex-identify-command" + (string-append imagemagick "/bin/identify"))))))))) + (home-page "https://github.com/mhayashi1120/Emacs-imagex") + (synopsis "Image manipulation extensions for Emacs") + (description + "Image+ provides keybindings allowing you to zoom in or zoom out of an +image, rotate it, save modified images, and more.") + (license license:gpl3+)))) + +(define-public emacs-package-lint + (let ((commit "69bb89d00ba212b734c676ad056aa793c450b288")) + (package + (name "emacs-package-lint") + (version (git-version "0.5" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/purcell/package-lint") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1hfricsgmy3x9snnd2p4xq6vnnv94qdsxxnxp07b3hqc9bhw31rq")))) + (build-system emacs-build-system) + (home-page "https://github.com/purcell/package-lint") + (synopsis "Linting library for elisp package authors") + (description + "This provides a list of issues with the Emacs package metadata of a file, +e.g. the package dependencies it requires. See function +@code{package-lint-buffer}. Checks will currently be enabled only if a +\"Package-Requires:\" or \"Package-Version:\" header is present in the +file.") + (license license:gpl3+)))) + +(define-public emacs-wgrep-helm + (let ((commit "1cdd7c136f1e7565bb13d2df69be3dc77b83698d")) + (package + (name "emacs-wgrep-helm") + (version (git-version "2.1.10" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mhayashi1120/Emacs-wgrep") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "057p99hq0r6z1k8sl15w3sxrqvlv0g9wp39zy1pqhccv2mn3g2d6")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-wgrep" ,emacs-wgrep))) + (home-page + "https://github.com/mhayashi1120/Emacs-wgrep") + (synopsis + "Writable helm-grep-mode buffer and apply the changes to files") + (description + "@code{wgrep-helm} allows you to edit a @code{helm-grep-mode} buffer and +apply those changes to the file buffer.") + (license license:gpl3+)))) + +(define-public emacs-mu4e-conversation + (let ((commit "b60d6bd27d7220c3dd041ff2a090e29f2166a319")) + (package + (name "emacs-mu4e-conversation") + (version (git-version "20180615" "1" commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "https://gitlab.com/Ambrevar/mu4e-conversation/" + "repository/archive.tar.gz?ref=" + commit)) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0x8kmi0rmbaaxn5zicm1f9yb8ynxi8074hi2n0rvymlfpxbpn0ma")))) + (build-system emacs-build-system) + (propagated-inputs + `(("mu" ,mu))) + (home-page + "https://gitlab.com/Ambrevar/mu4e-conversation") + (synopsis + "Show a complete thread in a single buffer") + (description + "This package offers an alternate view to mu4e e-mail display. It +shows all e-mails of a thread in a single view, where each correspondant has +their own face. Threads can be displayed linearly (in which case e-mails are +displayed in chronological order) or as an Org document where the node tree +maps the thread tree.") + (license license:gpl3+)))) + +(define-public emacs-pinentry + (let ((commit "dcc9ba03252ee5d39e03bba31b420e0708c3ba0c") + (revision "1")) + (package + (name "emacs-pinentry") + (version (git-version "0.1" revision commit)) + (source + (origin + (method url-fetch) + (uri (string-append + "http://git.savannah.gnu.org/cgit/emacs/elpa.git/plain" + "/packages/pinentry/pinentry.el?id=" commit)) + (file-name (string-append "pinentry.el")) + (sha256 + (base32 + "1lf30q6r8nz5cjzclbb9bbymsk2y75nskvb55hnjdv93gr3j0sik")))) + (build-system emacs-build-system) + (propagated-inputs + `(("gnupg" ,gnupg))) + (home-page "https://elpa.gnu.org/packages/pinentry.html") + (synopsis "GnuPG Pinentry server implementation") + (description + "This package allows GnuPG passphrase to be prompted through the +minibuffer instead of graphical dialog. + +To use, add @code{allow-emacs-pinentry} to @code{~/.gnupg/gpg-agent.conf}, +reload the configuration with @code{gpgconf --reload gpg-agent}, and start the +server with @code{M-x pinentry-start}.") + (license license:gpl3+)))) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 8fbb804e57..f669213f4f 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -56,13 +56,19 @@ #:use-module (gnu packages libedit) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) + #:use-module (gnu packages lua) + #:use-module (gnu packages maths) #:use-module (gnu packages mp3) + #:use-module (gnu packages music) #:use-module (gnu packages ncurses) + #:use-module (gnu packages networking) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages python) #:use-module (gnu packages qt) #:use-module (gnu packages sdl) + #:use-module (gnu packages texinfo) + #:use-module (gnu packages textutils) #:use-module (gnu packages tls) #:use-module (gnu packages upnp) #:use-module (gnu packages video) @@ -72,6 +78,7 @@ #:use-module (gnu packages xiph) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) + #:use-module (gnu packages web) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu)) @@ -1170,3 +1177,188 @@ already have their data files. The clever part about this: ScummVM just replaces the executables shipped with the games, allowing you to play them on systems for which they were never designed!") (license license:gpl2+))) + +(define-public mame + (package + (name "mame") + (version "0.199") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mamedev/mame.git") + (commit (apply string-append "mame" (string-split version #\.))))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rb2k6dxss36jjalbpvj2xsqdwqyqy89qab7jpv8ig1y08dpg36n")) + (modules '((guix build utils))) + (snippet + ;; Remove bundled libraries. + '(begin + (with-directory-excursion "3rdparty" + (for-each delete-file-recursively + '("asio" "expat" "glm" "libflac" "libjpeg" "lua" + "portaudio" "portmidi" "pugixml" "rapidjson" "SDL2" + "SDL2-override" "sqlite3" "utf8proc" "zlib"))) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (cons* + (string-append "QT_HOME=" (assoc-ref %build-inputs "qtbase")) + (string-append "SDL_INI_PATH=" + (assoc-ref %outputs "out") + "/share/mame/ini") + (map (lambda (lib) + (string-append "USE_SYSTEM_LIB_" (string-upcase lib) "=1")) + '("asio" "expat" "flac" "glm" "jpeg" "lua" "portaudio" "portmidi" + "pugixml" "rapidjson" "sqlite3" "utf8proc" "zlib"))) + #:tests? #f ;no test in regular release + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'build 'build-documentation + (lambda _ (invoke "make" "-C" "docs" "man" "info"))) + (replace 'install + ;; Upstream does not provide an installation phase. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share/mame"))) + ;; Install data. + (for-each (lambda (dir) + (copy-recursively dir (string-append share "/" dir))) + '("artwork" "bgfx" "ctrlr" "hash" "ini" "language" + "plugins" "samples")) + (let ((keymaps (string-append share "/keymaps"))) + (for-each (lambda (file) (install-file file keymaps)) + (find-files "keymaps" ".*LINUX\\.map"))) + (let ((fonts (string-append share "/fonts"))) + (install-file "uismall.bdf" fonts)) + (when (file-exists? "mame64") + (rename-file "mame64" "mame")) + (install-file "mame" (string-append out "/bin"))) + #t)) + (add-after 'install 'install-documentation + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (man (string-append out "/share/man/man1")) + (info (string-append out "/share/info"))) + (install-file "docs/build/man/MAME.1" man) + (install-file "docs/build/texinfo/MAME.info" info)) + #t)) + (add-after 'install 'install-ini-file + ;; Generate an ini file so as to set some directories (e.g., roms) + ;; to a writable location, i.e., "$HOME/.mame/" and "$HOME/mame/". + ;; + ;; XXX: We need to insert absolute references to the store. It can + ;; be an issue if they leak into user's home directory, e.g., with + ;; "mame -createconfig" and the package is later GC'ed. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share/mame")) + (ini (string-append share "/ini"))) + (with-output-to-file (string-append ini "/mame.ini") + (lambda _ + (format #t + "inipath $HOME/.mame;~a/ini~@ + homepath $HOME/mame~@ + rompath $HOME/mame/roms~@ + samplepath $HOME/mame/samples;~a/samples~@ + cheatpath $HOME/mame/cheat~@ + artpath $HOME/mame/artwork;~a/artwork~@ + crosshairpath $HOME/mame/crosshair~@ + snapshot_directory $HOME/mame/snapshots~@ + hashpath ~a/hash~@ + fontpath $HOME/mame/fonts;~a/fonts~@ + ctrlrpath $HOME/mame/ctrlr;~a/ctrlr~@ + bgfx_path ~a/bgfx~@ + pluginspath $HOME/mame/plugins;~a/plugins~@ + languagepath ~a/language~@ + cfg_directory $HOME/.mame/cfg~@ + nvram_directory $HOME/.mame/nvram~@ + input_directory $HOME/.mame/inp~@ + state_directory $HOME/.mame/sta~@ + diff_directory $HOME/.mame/diff~@ + comment_directory $HOME/.mame/comments~%" + share share share share share share share share + share))) + (with-output-to-file (string-append ini "/ui.ini") + (lambda _ + (format #t + "historypath $HOME/mame/history~@ + categorypath $HOME/mame/folders~@ + cabinets_directory $HOME/mame/cabinets~@ + cpanels_directory $HOME/mame/cpanel~@ + pcbs_directory $HOME/mame/pcb~@ + flyers_directory $HOME/mame/flyers~@ + titles_directory $HOME/mame/titles~@ + ends_directory $HOME/mame/ends~@ + marquees_directory $HOME/mame/marquees~@ + artwork_preview_directory $HOME/mame/artpreview~@ + bosses_directory $HOME/mame/bosses~@ + logos_directory $HOME/mame/logo~@ + scores_directory $HOME/mame/scores~@ + versus_directory $HOME/mame/versus~@ + gameover_directory $HOME/mame/gameover~@ + howto_directory $HOME/mame/howto~@ + select_directory $HOME/mame/select~@ + icons_directory $HOME/mame/icons~@ + covers_directory $HOME/mame/covers~@ + ui_path $HOME/.mame/ui~%"))) + #t))) + (add-after 'install 'install-desktop-file + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (desktop (string-append out "/share/applications")) + (executable (string-append out "/bin/mame"))) + (mkdir-p desktop) + (with-output-to-file (string-append desktop "/mame.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=mame~@ + Comment=Multi-purpose emulation framework~@ + Exec=~a~@ + TryExec=~@*~a~@ + Terminal=false~@ + Type=Application~@ + Categories=Game;Emulator;~@ + Keywords=Game;Emulator;Arcade;~%" + executable))) + #t)))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("pugixml" ,pugixml) + ("python-sphinx" ,python-sphinx) + ("texinfo" ,texinfo))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("asio" ,asio) + ("expat" ,expat) + ("flac" ,flac) + ("fontconfig" ,fontconfig) + ("glm" ,glm) + ("libjpeg" ,libjpeg-8) ;jpeg_read_header argument error in libjpeg-9 + ("libxinerama" ,libxinerama) + ("lua" ,lua) + ("portaudio" ,portaudio) + ("portmidi" ,portmidi) + ("python-wrapper" ,python-wrapper) + ("qtbase" ,qtbase) + ("rapidjson" ,rapidjson) + ("sdl" ,(sdl-union (list sdl2 sdl2-ttf))) + ("sqlite" ,sqlite) + ("utf8proc" ,utf8proc) + ("zlib" ,zlib))) + (home-page "http://mamedev.org/") + (synopsis "Multi-purpose emulation framework") + (description "MAME's purpose is to preserve decades of software +history. As electronic technology continues to rush forward, MAME +prevents this important @emph{vintage} software from being lost and +forgotten. This is achieved by documenting the hardware and how it +functions. The source code to MAME serves as this documentation.") + ;; The MAME project as a whole is distributed under the terms of GPL2+. + ;; However, over 90% of the files are under Expat license. Also, artwork, + ;; keymaps, languages and samples are under CC0. + (license (list license:gpl2+ license:expat license:cc0)))) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 6c3846ff76..8578789872 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 David Thompson ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès -;;; Copyright © 2016, 2017 Theodoros Foradis +;;; Copyright © 2016, 2017, 2018 Theodoros Foradis ;;; Copyright © 2017 Julien Lepiller ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Clément Lassieur @@ -1175,14 +1175,14 @@ high-performance parallel differential evolution (DE) optimization algorithm.") ;; See . (package (name "libngspice") - (version "26") + (version "28") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/ngspice/ng-spice-rework/" version "/ngspice-" version ".tar.gz")) (sha256 (base32 - "02019ndcl057nq9z41nxycqba7wxlb081ibvfj9jv010nz431qji")) + "0rnz2rdgyav16w7wfn3sfrk2lwvvgz1fh0l9107zkcldijklz04l")) (modules '((guix build utils))) ;; We remove the non-free cider and build without it. (snippet @@ -1206,7 +1206,7 @@ high-performance parallel differential evolution (DE) optimization algorithm.") (add-after 'unpack 'patch-timestamps (lambda _ (substitute* "configure" - (("`date`") "Do 1. Jan 00:00:00 UTC 1970")) + (("`date`") "Thu Jan 1 00:00:01 UTC 1970")) #t)) (add-after 'unpack 'delete-program-manuals (lambda _ @@ -1279,17 +1279,27 @@ an embedded event driven algorithm.") ;; TODO: Remove when we have modular Trilinos packages? (package (name "trilinos-serial-xyce") - (version "12.6.3") + (version "12.12.1") (source (origin (method url-fetch) (uri (string-append "https://trilinos.org/oldsite/download/files/trilinos-" version "-Source.tar.gz")) (sha256 (base32 - "07jd1qpsbf31cmbyyngr4l67xzwyan24dyx5wlcahgbw7x6my3wn")))) + "1zgrcksrcbmyy79mbdv0j4j4sh0chpigxk8vcrrwgaxyxwxxhrvw")))) (build-system cmake-build-system) (arguments `(#:out-of-source? #t + #:phases + (modify-phases %standard-phases + ;; Delete unneeded tribits(build system) directory which makes validate-runpath + ;; phase to fail. + (add-before 'validate-runpath 'delete-tribits + (lambda* (#:key outputs #:allow-other-keys) + (delete-file-recursively + (string-append (assoc-ref outputs "out") + "/lib/cmake/tribits")) + #t))) #:configure-flags (list "-DCMAKE_CXX_FLAGS=-O3 -fPIC" "-DCMAKE_C_FLAGS=-O3 -fPIC" @@ -1322,7 +1332,7 @@ an embedded event driven algorithm.") ("swig" ,swig))) (inputs `(("boost" ,boost) - ("lapack" ,lapack-3.5) + ("lapack" ,lapack) ("suitesparse" ,suitesparse))) (home-page "https://trilinos.org") (synopsis "Engineering and scientific problems algorithms") @@ -1337,14 +1347,14 @@ unique design feature of Trilinos is its focus on packages.") (define-public xyce-serial (package (name "xyce-serial") - (version "6.7") + (version "6.8") (source (origin (method url-fetch) (uri (string-append "https://archive.org/download/Xyce-" version "/Xyce-" version ".tar.gz")) (sha256 (base32 - "02k952mnvrnc5kv7r65fdrn7khwq1lbyhwyvd7jznafzdpsvgm4x")))) + "09flp1xywbb2laayd9rg8vd0fjsh115y6k1p71jacy0nrbdvvlcg")))) (build-system gnu-build-system) (arguments `(#:tests? #f @@ -1360,7 +1370,7 @@ unique design feature of Trilinos is its focus on packages.") (inputs `(("fftw" ,fftw) ("suitesparse" ,suitesparse) - ("lapack" ,lapack-3.5) + ("lapack" ,lapack) ("trilinos" ,trilinos-serial-xyce))) (home-page "https://xyce.sandia.gov/") (synopsis "High-performance analog circuit simulator") @@ -1395,8 +1405,6 @@ parallel computing platforms. It also supports serial execution.") "CC=mpicc" "F77=mpif77" "--enable-mpi" - "--enable-isorropia=no" - "--enable-zoltan=no" (string-append "ARCHDIR=" (assoc-ref %build-inputs "trilinos"))))))) @@ -1503,116 +1511,134 @@ parallel computing platforms. It also supports serial execution.") license:lgpl2.0+)))) ; freehdl's libraries (define-public qucs - (package - (name "qucs") - (version "0.0.19") - (source (origin - (method url-fetch) - (uri - (string-append - "https://sourceforge.net/projects/qucs/files/qucs/" version - "/qucs-" version ".tar.gz")) - (sha256 - (base32 - "0giv9gfyfdizvjhq56x2pdncrlyv3k15lrsh6pk37i94vr7l7ij5")))) - (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'configure 'patch-configure - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "qucs/configure" - (("\\$QTDIR") (assoc-ref inputs "qt4"))) - #t)) - (add-after 'patch-configure 'patch-scripts - (lambda* (#:key inputs outputs #:allow-other-keys) - (substitute* '("qucs/qucs/qucsdigi" - "qucs/qucs/qucsdigilib" - "qucs/qucs/qucsveri") - (("\\$BINDIR") - (string-append (assoc-ref outputs "out") "/bin")) - (("freehdl-config") - (string-append (assoc-ref inputs "freehdl") "/bin/freehdl-config")) - (("freehdl-v2cc") - (string-append (assoc-ref inputs "freehdl") "/bin/freehdl-v2cc")) - (("cp ") - (string-append (assoc-ref inputs "coreutils") "/bin/cp ")) - (("glibtool") - (string-append (assoc-ref inputs "libtool") "/bin/libtool")) - (("sed") - (string-append (assoc-ref inputs "sed") "/bin/sed")) - (("iverilog") - (string-append (assoc-ref inputs "iverilog") "/bin/iverilog")) - (("vvp") - (string-append (assoc-ref inputs "iverilog") "/bin/vvp"))) - #t)) - (add-before 'check 'pre-check - (lambda _ - ;; The test suite requires a running X server. - (system "Xvfb :1 &") - (setenv "DISPLAY" ":1") - #t)) - (add-after 'install 'make-wrapper - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; 'qucs' directly invokes gcc, hence this wrapping. - (wrap-program (string-append out "/bin/qucs") - `("CPLUS_INCLUDE_PATH" ":" prefix - (,(string-append (assoc-ref inputs "gcc-toolchain") - "/include"))) - `("PATH" ":" prefix - (,(string-append (assoc-ref inputs "gcc-toolchain") - "/bin"))) - `("LIBRARY_PATH" ":" prefix - (,(string-append (assoc-ref inputs "gcc-toolchain") - "/lib"))) - `("ADMSXMLBINDIR" ":" prefix - (,(string-append (assoc-ref inputs "adms") "/bin"))) - `("ASCOBINDIR" ":" prefix - (,(string-append (assoc-ref inputs "asco") "/bin"))) - `("QUCS_OCTAVE" ":" prefix - (,(string-append (assoc-ref inputs "octave") "/bin/octave"))))) - #t))) - #:parallel-build? #f ; race condition - #:configure-flags '("--disable-doc"))) ; we need octave-epstk - (native-inputs - `(("gperf" ,gperf) - ("libtool-native" ,libtool) - ("python" ,python-2) ; for tests - ("matplotlib" ,python2-matplotlib) ; for tests - ("numpy" ,python2-numpy) ; for tests - ("xorg-server" ,xorg-server))) ; for tests - (inputs - `(("adms" ,adms) - ("asco" ,asco) - ("coreutils" ,coreutils) - ("freehdl" ,freehdl) - ("gcc-toolchain" ,gcc-toolchain) - ("iverilog" ,iverilog) - ("libtool" ,libtool) - ("octave" ,octave) - ("qt4" ,qt-4) - ("sed" ,sed))) - (home-page "http://qucs.sourceforge.net/") - (synopsis "Circuit simulator with graphical user interface") - (description - "Qucs is a circuit simulator with graphical user interface. The software + ;; Qucs 0.0.19 segfaults when using glibc-2.26. Temporarily build from git. + ;; TODO: When qucs-0.0.20 is released, revert the commit that introduced this + ;; comment and update the package. + (let ((commit "b4f27d9222568066cd59e4c387c51a35056c99d8") + (revision "0")) + (package + (name "qucs") + (version (git-version "0.0.19" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Qucs/qucs") + (commit commit))) + (sha256 + (base32 "10bclay9xhkffmsh4j4l28kj1qpxx0pnxja5vx6305cllnq4r3gb")) + (file-name (string-append name "-" version "-checkout")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'bootstrap 'patch-bootstrap + (lambda _ + (for-each patch-shebang + '("bootstrap" + "qucs/bootstrap" + "qucs-doc/bootstrap" + "qucs-core/bootstrap")) + #t)) + (add-before 'configure 'patch-configure + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "qucs/configure" + (("\\$QTDIR") (assoc-ref inputs "qt4"))) + #t)) + (add-after 'patch-configure 'patch-scripts + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* '("qucs/qucs/qucsdigi" + "qucs/qucs/qucsdigilib" + "qucs/qucs/qucsveri") + (("\\$BINDIR") + (string-append (assoc-ref outputs "out") "/bin")) + (("freehdl-config") + (string-append (assoc-ref inputs "freehdl") "/bin/freehdl-config")) + (("freehdl-v2cc") + (string-append (assoc-ref inputs "freehdl") "/bin/freehdl-v2cc")) + (("cp ") + (string-append (assoc-ref inputs "coreutils") "/bin/cp ")) + (("glibtool") + (string-append (assoc-ref inputs "libtool") "/bin/libtool")) + (("sed") + (string-append (assoc-ref inputs "sed") "/bin/sed")) + (("iverilog") + (string-append (assoc-ref inputs "iverilog") "/bin/iverilog")) + (("vvp") + (string-append (assoc-ref inputs "iverilog") "/bin/vvp"))) + #t)) + (add-before 'check 'pre-check + (lambda _ + ;; The test suite requires a running X server. + (system "Xvfb :1 &") + (setenv "DISPLAY" ":1") + #t)) + (add-after 'install 'make-wrapper + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; 'qucs' directly invokes gcc, hence this wrapping. + (wrap-program (string-append out "/bin/qucs") + `("CPLUS_INCLUDE_PATH" ":" prefix + (,(string-append (assoc-ref inputs "gcc-toolchain") + "/include"))) + `("PATH" ":" prefix + (,(string-append (assoc-ref inputs "gcc-toolchain") + "/bin"))) + `("LIBRARY_PATH" ":" prefix + (,(string-append (assoc-ref inputs "gcc-toolchain") + "/lib"))) + `("ADMSXMLBINDIR" ":" prefix + (,(string-append (assoc-ref inputs "adms") "/bin"))) + `("ASCOBINDIR" ":" prefix + (,(string-append (assoc-ref inputs "asco") "/bin"))) + `("QUCS_OCTAVE" ":" prefix + (,(string-append (assoc-ref inputs "octave") "/bin/octave"))))) + #t))) + #:parallel-build? #f ; race condition + #:configure-flags '("--disable-doc"))) ; we need octave-epstk + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("bison" ,bison) + ("flex" ,flex) + ("gperf" ,gperf) + ("libtool-native" ,libtool) + ("pkg-config" ,pkg-config) + ("python" ,python-2) ; for tests + ("matplotlib" ,python2-matplotlib) ; for tests + ("numpy" ,python2-numpy) ; for tests + ("xorg-server" ,xorg-server))) ; for tests + (inputs + `(("adms" ,adms) + ("asco" ,asco) + ("coreutils" ,coreutils) + ("freehdl" ,freehdl) + ("gcc-toolchain" ,gcc-toolchain) + ("iverilog" ,iverilog) + ("libtool" ,libtool) + ("octave" ,octave) + ("qt4" ,qt-4) + ("sed" ,sed))) + (home-page "http://qucs.sourceforge.net/") + (synopsis "Circuit simulator with graphical user interface") + (description + "Qucs is a circuit simulator with graphical user interface. The software aims to support all kinds of circuit simulation types---e.g. DC, AC, S-parameter, transient, noise and harmonic balance analysis. Pure digital simulations are also supported.") - (license license:gpl2+))) + (license license:gpl2+)))) (define-public qucs-s (package (name "qucs-s") - (version "0.0.19S") + (version "0.0.20") (source (origin (method url-fetch) - (uri (string-append "https://github.com/ra3xdh/qucs/releases/download/" - version "/qucs-" version ".tar.gz")) + (uri (string-append "https://github.com/ra3xdh/qucs_s/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1bhahvdqmayaw0306fxz1ghmjhd4fq05yk3rk7zi0z703w5imgjv")))) + "01dizf4rjciqc8x7bmv3kbhdlz90bm6n9m9fz7dbzqcwvszcs1hx")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no tests @@ -1647,19 +1673,21 @@ simulations are also supported.") "\\+ \"qucsator\" \\+ executableSuffix")) (string-append "}{ QucsSettings.Qucsator = \"" (assoc-ref inputs "qucs") "/bin/qucsator\"")) - (((string-append "else QucsSettings\\.XyceExecutable = " - "\"/usr/local/Xyce-Release-6.2.0-OPENSOURCE/bin/runxyce")) - (string-append "QucsSettings.XyceExecutable = \"" + (((string-append "QucsSettings\\.XyceExecutable = " + "\"/usr/local/Xyce-Release-6.8.0-OPENSOURCE/bin/Xyce")) + (string-append "}{ QucsSettings.XyceExecutable = \"" (assoc-ref inputs "xyce-serial") "/bin/Xyce")) - (((string-append "else QucsSettings\\.XyceParExecutable = \"/usr/local" - "/Xyce-Release-6.2.0-OPENMPI-OPENSOURCE/bin/xmpirun")) + (((string-append "else QucsSettings\\.XyceParExecutable = " + "\"mpirun -np %p /usr/local" + "/Xyce-Release-6.8.0-OPENMPI-OPENSOURCE/bin/Xyce")) (string-append "QucsSettings.XyceParExecutable = \"" - (assoc-ref inputs "mpi") "/bin/mpirun")) - (("%p") - (string-append "%p "(assoc-ref inputs "xyce-parallel") "/bin/Xyce")) + (assoc-ref inputs "mpi") "/bin/mpirun -np %p " + (assoc-ref inputs "xyce-parallel") "/bin/Xyce")) (("else QucsSettings\\.NgspiceExecutable = \"ngspice\"") (string-append "QucsSettings.NgspiceExecutable = " "\"" (assoc-ref inputs "ngspice") "/bin/ngspice\""))) + (substitute* "qucs/extsimkernels/ngspice.cpp" + (("share/qucs/xspice_cmlib") "share/qucs-s/xspice_cmlib")) (substitute* "qucs/qucs_actions.cpp" (("qucstrans") (string-append (assoc-ref inputs "qucs") "/bin/qucstrans")) @@ -1672,7 +1700,7 @@ simulations are also supported.") (lambda* (#:key inputs outputs #:allow-other-keys) (for-each (lambda (script) - (let ((file (string-append "../qucs-" ,version + (let ((file (string-append "../qucs_s-" ,version "/qucs/" script)) (out (assoc-ref outputs "out"))) (install-file file (string-append out "/bin")) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index d749ada9f0..cff5ab14a9 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -177,7 +177,7 @@ removable devices or support for multimedia.") (define-public terminology (package (name "terminology") - (version "1.2.0") + (version "1.2.1") (source (origin (method url-fetch) (uri @@ -185,7 +185,7 @@ removable devices or support for multimedia.") "terminology/terminology-" version ".tar.xz")) (sha256 (base32 - "0kw34l5lahn1qaks3ah6x8k41d6hfywpqfak2p7qq1z87zj506mx")) + "1ii8332bl88l8md3gvz5dhi9bjpm6shyf14ck9kfyy7d56hp71mc")) (modules '((guix build utils))) ;; Remove the bundled fonts. ;; TODO: Remove bundled lz4. diff --git a/gnu/packages/erlang.scm b/gnu/packages/erlang.scm index 0e2b7b5bcb..1c18efe9da 100644 --- a/gnu/packages/erlang.scm +++ b/gnu/packages/erlang.scm @@ -89,6 +89,7 @@ (guix build gnu-build-system)) #:phases (modify-phases %standard-phases + (delete 'bootstrap) ;; The are several code fragments that embed timestamps into the ;; output. Here, we alter those fragments to use the value of ;; SOURCE_DATE_EPOCH instead. @@ -127,6 +128,29 @@ (date->string source-date-epoch "{H,Mi,S} = {~H,~M,~S},"))) #t))) + (add-after 'unpack 'patch-/bin/sh + (lambda _ + (substitute* "erts/etc/unix/run_erl.c" + (("sh = \"/bin/sh\";") + (string-append "sh = \"" + (which "sh") + "\";"))) + + (substitute* "erts/emulator/sys/unix/sys_drivers.c" + (("SHELL \"/bin/sh\"") + (string-append "SHELL \"" + (which "sh") + "\""))) + (substitute* "erts/emulator/sys/unix/erl_child_setup.c" + (("SHELL \"/bin/sh\"") + (string-append "SHELL \"" + (which "sh") + "\""))) + + (substitute* "lib/kernel/src/os.erl" + (("/bin/sh") (which "sh"))) + + #t)) (add-after 'patch-source-shebangs 'patch-source-env (lambda _ (let ((escripts diff --git a/gnu/packages/fcitx.scm b/gnu/packages/fcitx.scm index fc55df14a6..bcd5f12dd1 100644 --- a/gnu/packages/fcitx.scm +++ b/gnu/packages/fcitx.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Sou Bunnbu +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,14 +36,14 @@ (define-public fcitx (package (name "fcitx") - (version "4.2.8.6") + (version "4.2.9.6") (source (origin (method url-fetch) (uri (string-append "http://download.fcitx-im.org/fcitx/" name "-" version "_dict.tar.xz")) (sha256 (base32 - "15ymd42kg920ri0f8fymq3i68g8k1kgpmdlnk9jf5fvnz6g4w0wi")))) + "0hyrh3v82a32ylnlvzrp6cmq56x4p1a42q5xc6njmmj2msxm34x5")))) (build-system cmake-build-system) (outputs '("out" "gtk2" "gtk3")) (arguments @@ -65,7 +66,12 @@ "-DENABLE_QT_IM_MODULE=OFF"))) (native-inputs `(("doxygen" ,doxygen) - ("glib:bin" ,glib "bin") ; for glib-genmarshal + ("extra-cmake-modules" + ;; XXX: We can't simply #:use-module due to a cycle somewhere. + ,(module-ref + (resolve-interface '(gnu packages kde-frameworks)) + 'extra-cmake-modules)) + ("glib:bin" ,glib "bin") ; for glib-genmarshal ("pkg-config" ,pkg-config))) (inputs `(("dbus" ,dbus) @@ -78,7 +84,7 @@ ("libxkbfile" ,libxkbfile) ("libxml2" ,libxml2) ("xkeyboard-config" ,xkeyboard-config))) - (home-page "http://fcitx-im.org") + (home-page "https://fcitx-im.org") (synopsis "Input method framework") (description "Fcitx is an input method framework with extension support. It has @@ -89,14 +95,14 @@ built-in.") (define-public fcitx-configtool (package (name "fcitx-configtool") - (version "0.4.8") + (version "0.4.10") (source (origin (method url-fetch) (uri (string-append "https://download.fcitx-im.org/fcitx-configtool/" name "-" version ".tar.xz")) (sha256 (base32 - "1vaim0namw58bfafbvws1vgd4010p19zwqfbx6bd1zi5sgchdg0f")))) + "1yyi9jhkwn49lx9a47k1zbvwgazv4y4z72gnqgzdpgdzfrlrgi5w")))) (build-system cmake-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 4fd33ae901..3c9d7d49c1 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2017 Gábor Boskovits -;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2017, 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -144,7 +144,7 @@ non-determinism in the build process.") (define-public glusterfs (package (name "glusterfs") - (version "3.10.7") + (version "3.10.12") (source (origin (method url-fetch) @@ -153,7 +153,7 @@ non-determinism in the build process.") "/glusterfs-" version ".tar.gz")) (sha256 (base32 - "02sn9s3jjva2i1l47y3in326n8jgp57rbykz5s8m87y4bzpw0ym1")) + "01ysvamvfv2l5pswa1rygpg8w0954h2wkh1ba97h3nx03m5n0prg")) (patches (search-patches "glusterfs-use-PATH-instead-of-hardcodes.patch")))) (build-system gnu-build-system) @@ -170,11 +170,12 @@ non-determinism in the build process.") ;; must be replaced. (install-file (string-append (assoc-ref inputs "automake") "/share/automake-" - ,(package-version automake) "/config.sub") + ,(version-major+minor (package-version automake)) "/config.sub") ".") #t)) ;; Fix flex error. This has already been fixed with upstream commit - ;; db3fe245a9e8812829eae7d143e49d0bfdfef9a7. + ;; db3fe245a9e8812829eae7d143e49d0bfdfef9a7, but is not available in + ;; current releases. (add-before 'configure 'fix-lex (lambda _ (substitute* "libglusterfs/src/Makefile.in" diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 986e1d6219..176eef5137 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -209,7 +209,8 @@ by the b43-open driver of Linux-libre.") (let* ((out (assoc-ref outputs "out")) (fmw (string-append out "/share/firmware"))) (mkdir-p fmw) - (copy-file "out/bios.bin" (string-append fmw "/bios.bin")))))))) + (copy-file "out/bios.bin" (string-append fmw "/bios.bin")) + #t)))))) (home-page "https://www.seabios.org/SeaBIOS") (synopsis "x86 BIOS implementation") (description "SeaBIOS is an implementation of a 16bit x86 BIOS. SeaBIOS @@ -262,36 +263,26 @@ coreboot.") (setenv "PATH" (string-append (getenv "PATH") ":" bin)) ; FIXME: The below script errors out. When using 'invoke' instead ; of 'system*' this causes the build to fail. - (system* "bash" "edksetup.sh" "BaseTools") + (system* "bash" "edksetup.sh") (substitute* "Conf/target.txt" (("^TARGET[ ]*=.*$") "TARGET = RELEASE\n") - (("^TOOL_CHAIN_TAG[ ]*=.*$") "TOOL_CHAIN_TAG = GCC49\n") (("^MAX_CONCURRENT_THREAD_NUMBER[ ]*=.*$") (format #f "MAX_CONCURRENT_THREAD_NUMBER = ~a~%" (number->string (parallel-job-count))))) ;; Build build support. (setenv "BUILD_CC" "gcc") - (invoke "make" "-C" (string-append tools "/Source/C")) + (invoke "make" "-C" tools) #t))) - (add-after 'build 'build-ia32 + (replace 'build (lambda _ - (substitute* "Conf/target.txt" - (("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = IA32\n") - (("^ACTIVE_PLATFORM[ ]*=.*$") - "ACTIVE_PLATFORM = OvmfPkg/OvmfPkgIa32.dsc\n")) - (invoke "build") - #t)) + (invoke "build" "-a" "IA32" "-t" "GCC49" + "-p" "OvmfPkg/OvmfPkgIa32.dsc"))) ,@(if (string=? "x86_64-linux" (%current-system)) '((add-after 'build 'build-x64 (lambda _ - (substitute* "Conf/target.txt" - (("^TARGET_ARCH[ ]*=.*$") "TARGET_ARCH = X64\n") - (("^ACTIVE_PLATFORM[ ]*=.*$") - "ACTIVE_PLATFORM = OvmfPkg/OvmfPkgX64.dsc\n")) - (invoke "build") - #t))) + (invoke "build" "-a" "X64" "-t" "GCC49" + "-p" "OvmfPkg/OvmfPkgX64.dsc")))) '()) - (delete 'build) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -312,6 +303,76 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.") (license (list license:expat license:bsd-2 license:bsd-3 license:bsd-4)))) +(define-public ovmf-aarch64 + (package + (inherit ovmf) + (name "ovmf-aarch64") + (native-inputs + `(,@(package-native-inputs ovmf) + ,@(if (not (string-prefix? "aarch64" (%current-system))) + `(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu")) + ("cross-binutils" ,(cross-binutils "aarch64-linux-gnu"))) + '()))) + (arguments + (substitute-keyword-arguments (package-arguments ovmf) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'configure 'set-env + (lambda _ + ,@(if (not (string-prefix? "aarch64" (%current-system))) + `((setenv "GCC49_AARCH64_PREFIX" "aarch64-linux-gnu-")) + '()) + #t)) + (replace 'build + (lambda _ + (invoke "build" "-a" "AARCH64" "-t" "GCC49" + "-p" "ArmVirtPkg/ArmVirtQemu.dsc"))) + (delete 'build-x64) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (fmw (string-append out "/share/firmware"))) + (mkdir-p fmw) + (copy-file "Build/ArmVirtQemu-AARCH64/RELEASE_GCC49/FV/QEMU_EFI.fd" + (string-append fmw "/ovmf_aarch64.bin")) + #t))))))) + (supported-systems %supported-systems))) + +(define-public ovmf-arm + (package + (inherit ovmf) + (name "ovmf-arm") + (native-inputs + `(,@(package-native-inputs ovmf) + ,@(if (not (string-prefix? "armhf" (%current-system))) + `(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf")) + ("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf"))) + '()))) + (arguments + (substitute-keyword-arguments (package-arguments ovmf) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'configure 'set-env + (lambda _ + ,@(if (not (string-prefix? "armhf" (%current-system))) + `((setenv "GCC49_ARM_PREFIX" "arm-linux-gnueabihf-")) + '()) + #t)) + (replace 'build + (lambda _ + (invoke "build" "-a" "ARM" "-t" "GCC49" + "-p" "ArmVirtPkg/ArmVirtQemu.dsc"))) + (delete 'build-x64) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (fmw (string-append out "/share/firmware"))) + (mkdir-p fmw) + (copy-file "Build/ArmVirtQemu-ARM/RELEASE_GCC49/FV/QEMU_EFI.fd" + (string-append fmw "/ovmf_arm.bin")) + #t))))))) + (supported-systems %supported-systems))) + (define* (make-arm-trusted-firmware platform #:optional (arch "aarch64")) (package (name (string-append "arm-trusted-firmware-" platform)) diff --git a/gnu/packages/fltk.scm b/gnu/packages/fltk.scm index af7186ab7f..e4eb2fcad0 100644 --- a/gnu/packages/fltk.scm +++ b/gnu/packages/fltk.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 John Darrington ;;; Copyright © 2015 Eric Bavier -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2018 Ricardo Wurmus ;;; Copyright © 2016 Kei Kebreau ;;; Copyright © 2018 Mark H Weaver ;;; @@ -99,7 +99,7 @@ UI builder called FLUID that can be used to create applications in minutes.") (define-public ntk (package (name "ntk") - (version "1.3.0") + (version "1.3.1000") (source (origin (method git-fetch) (uri (git-reference @@ -107,21 +107,20 @@ UI builder called FLUID that can be used to create applications in minutes.") (commit (string-append "v" version)))) (sha256 (base32 - "0ggrh6rihf676z1vfgpgcl6kpqwyh39ih0hskcgzklh7fphfik39")) + "0j38mhnfqy6swcrnc5zxcwlqi8b1pgklyghxk6qs1lf4japv2zc0")) (file-name (string-append name "-" version "-checkout")))) (build-system waf-build-system) (arguments `(#:tests? #f ;no "check" target - #:python ,python-2 #:configure-flags '("--enable-gl") #:phases (modify-phases %standard-phases - (add-before - 'configure 'set-ldflags - (lambda* (#:key outputs #:allow-other-keys) - (setenv "LDFLAGS" - (string-append "-Wl,-rpath=" - (assoc-ref outputs "out") "/lib"))))))) + (add-before 'configure 'set-ldflags + (lambda* (#:key outputs #:allow-other-keys) + (setenv "LDFLAGS" + (string-append "-Wl,-rpath=" + (assoc-ref outputs "out") "/lib")) + #t))))) (inputs `(("libjpeg" ,libjpeg) ("glu" ,glu))) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 031df7faa7..e9b68a7797 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -431,15 +431,19 @@ text in Simplified Chinese, Traditional Chinese, Japanese, and Korean.") (license license:silofl1.1))) (define-public font-cns11643 + ;; Since upstream doesn't provide any version numbers, the date of the last + ;; edit is used, taken from https://data.gov.tw/dataset/5961 + ;; XXX: The source is also updated in-place, so it may be desirable to mirror + ;; it elsewhere to avoid suddenly losing the current source file. (package (name "font-cns11643") - (version "98.1.20170524") + (version "98.1.20180605") (source (origin (method url-fetch) (uri "http://www.cns11643.gov.tw/AIDB/Open_Data.zip") (sha256 (base32 - "1iad6rklxkx03ji1fav9faq7cmqkci3i6pcyg2ilvh984j5qzhq3")))) + "000a9whrjr1cd4pjc23pbl60zwkq3wcb5g61p9qi7fn3hwkp0kyw")))) (build-system font-build-system) (home-page "http://www.cns11643.gov.tw/AIDB/welcome.do") (synopsis "CJK TrueType fonts, TW-Kai and TW-Sung") @@ -617,7 +621,7 @@ languages, plus Greek and Cyrillic.") (define-public font-gnu-unifont (package (name "font-gnu-unifont") - (version "10.0.07") + (version "11.0.01") (source (origin (method url-fetch) (uri (string-append @@ -625,7 +629,7 @@ languages, plus Greek and Cyrillic.") version ".tar.gz")) (sha256 (base32 - "1js8dn4v4pv8jqprsxa1fv4fs3hqhm9x4dj19fg9qgc8fx7k0v0k")))) + "1nkapra0ic4fp3lmnvfc6jly62yskhcdkwrnq29hvh3xs51ncc52")))) (build-system gnu-build-system) (outputs '("out" ; TrueType version "pcf" ; PCF (bitmap) version @@ -650,12 +654,12 @@ languages, plus Greek and Cyrillic.") (psf (string-append (assoc-ref outputs "psf") "/share/consolefonts")) (bin (assoc-ref outputs "bin"))) - (system* "make" - (string-append "PREFIX=" bin) - (string-append "TTFDEST=" ttf) - (string-append "PCFDEST=" pcf) - (string-append "CONSOLEDEST=" psf) - "install") + (invoke "make" + (string-append "PREFIX=" bin) + (string-append "TTFDEST=" ttf) + (string-append "PCFDEST=" pcf) + (string-append "CONSOLEDEST=" psf) + "install") ;; Move Texinfo file to the right place. (mkdir (string-append bin "/share/info")) (rename-file (string-append bin "/share/unifont/unifont.info.gz") diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index de87f998ae..44f1b7628f 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -334,15 +334,15 @@ X11-system or any other graphical user interface.") (define-public teckit (package (name "teckit") - (version "2.5.7") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/silnrsi/teckit/releases/download/v" - version "/teckit-" version ".tar.gz")) - (sha256 - (base32 - "1pbp97vcpj6x4yixx6ww0vsi1rrr99fksxdjafs6gdargzd24cj4")))) + (version "2.5.8") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/silnrsi/teckit") + (commit (string-append "v" version)))) + (sha256 + (base32 "1jmsdmfz7bgq1n5qsqgpq1b1n77f1hll0czfw5wkxz4knzb14ndn")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib) diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index 0a5568a016..5c461f9861 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -152,7 +152,7 @@ For synthesis, the compiler generates netlists in the desired format.") #t)) (replace 'configure (lambda* (#:key inputs (make-flags '()) #:allow-other-keys) - (zero? (apply system* "make" "config-gcc" make-flags)))) + (apply invoke "make" "config-gcc" make-flags))) (add-after 'configure 'prepare-abc (lambda* (#:key inputs #:allow-other-keys) (let* ((sourceabc (assoc-ref inputs "abc")) @@ -163,7 +163,7 @@ For synthesis, the compiler generates netlists in the desired format.") (lambda (port) (format port ".PHONY: all\nall:\n\tcp -f abc abc-default\n"))) (copy-file source "abc/abc") - (zero? (system* "chmod" "+w" "abc/abc"))))) + (invoke "chmod" "+w" "abc/abc")))) (add-before 'check 'fix-iverilog-references (lambda* (#:key inputs native-inputs #:allow-other-keys) (let* ((xinputs (or native-inputs inputs)) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index ea48afcb20..9173c02601 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -419,10 +419,11 @@ manager for the current system.") ;; AssertionError: 'x-apple-ios-png' != 'png' (substitute* "test/test-mime.py" (("self.check_mimetype\\(imgpng, 'image', 'png'\\)") "#")) - (zero? (system* "nosetests" "-v"))))))) + (invoke "nosetests" "-v")))))) (native-inputs - `(("shared-mime-info" ,shared-mime-info) ;for tests - ("hicolor-icon-theme" ,hicolor-icon-theme) ;for tests + ;; For tests. + `(("shared-mime-info" ,shared-mime-info) + ("hicolor-icon-theme" ,hicolor-icon-theme) ("python-nose" ,python-nose))) (home-page "https://www.freedesktop.org/wiki/Software/pyxdg") (synopsis "Implementations of freedesktop.org standards in Python") diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index cb837e554e..8f64225ab4 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -169,7 +169,7 @@ as required.") (define-public libfilezilla (package (name "libfilezilla") - (version "0.12.2") + (version "0.12.3") (source (origin (method url-fetch) @@ -177,7 +177,7 @@ as required.") name "/" name "-" version ".tar.bz2")) (sha256 (base32 - "1v461hwdk74whp89s490dj1z18gfqf9bz9140m5f11rsvrpid33p")))) + "1v606kcz2rdmmlwxrv3xvwh7ia1nh6jfc9bhjw2r4ai3rm16gch5")))) (build-system gnu-build-system) (native-inputs `(("cppunit" ,cppunit) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 3d6a038d9d..b428fa77f2 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015, 2016, 2017 David Thompson ;;; Copyright © 2016, 2017, 2018 Efraim Flashner ;;; Copyright © 2016, 2017 Kei Kebreau -;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2016, 2018 Ricardo Wurmus ;;; Copyright © 2016, 2017 Julian Graham ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis @@ -74,6 +74,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages qt) #:use-module (gnu packages sdl) + #:use-module (gnu packages texinfo) #:use-module (gnu packages tls) #:use-module (gnu packages video) #:use-module (gnu packages xdisorg) @@ -1233,3 +1234,40 @@ related games such as Heretic and Hexen. It comes with a 3d preview mode and a 2D editor view.") (home-page "http://eureka-editor.sourceforge.net/") (license license:gpl2+))) + +(define-public guile-chickadee + (package + (name "guile-chickadee") + (version "0.2.0") + (source (origin + (method url-fetch) + (uri (string-append "https://files.dthompson.us/chickadee/" + "chickadee-" version ".tar.gz")) + (sha256 + (base32 + "10qx0ha5gsayybd186r1my7vc7rf5fbzp9jvmc4xg9a8wz8rqhah")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags '("GUILE_AUTO_COMPILE=0"))) + (propagated-inputs + `(("guile-opengl" ,guile-opengl) + ("guile-sdl2" ,guile-sdl2))) + (inputs + `(("guile" ,guile-2.2))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("texinfo" ,texinfo))) + (home-page "https://dthompson.us/projects/chickadee.html") + (synopsis "Game development toolkit for Guile Scheme with SDL2 and OpenGL") + (description "Chickadee is a game development toolkit for Guile Scheme +built on top of SDL2 and OpenGL. Chickadee aims to provide all the features +that parenthetically inclined game developers need to make 2D (and eventually +3D) games in Scheme, such as: + +@enumerate +@item extensible, fixed-timestep game loop +@item OpenGL-based rendering engine +@item keyboard, mouse, controller input +@item REPL-driven development model +@end enumerate\n") + (license license:gpl3+))) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 5568de033b..5f43aa154c 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -177,82 +177,70 @@ settings to tweak as well.") (license license:gpl2+))) (define-public cataclysm-dda - (package - (name "cataclysm-dda") - (version "0.C") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/CleverRaven/Cataclysm-DDA/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1xlajmgl9cviqyjpp5g5q4rbljy9gqc49v54bi8gpzr68s14gsb9")) - (modules '((guix build utils))) - (snippet - ;; Import cmath header for the std::pow function. - '(begin - (for-each (lambda (file) - (substitute* file - (("#include ") - "#include "))) - (find-files "src")) - #t)))) - (build-system gnu-build-system) - (arguments - '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) - "USE_HOME_DIR=1" "DYNAMIC_LINKING=1" "RELEASE=1") - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda _ - (substitute* "Makefile" - (("ncursesw5-config") "ncursesw6-config") - (("RELEASE_FLAGS = -Werror") "RELEASE_FLAGS =")) - #t)) - (add-after 'build 'build-tiles - (lambda* (#:key make-flags outputs #:allow-other-keys) - ;; Change prefix directory and enable tile graphics and sound. - (zero? - (apply system* "make" "TILES=1" "SOUND=1" - (string-append "PREFIX=" - (assoc-ref outputs "tiles")) - (cdr make-flags))))) - (add-after 'install 'install-tiles - (lambda* (#:key make-flags outputs #:allow-other-keys) - (zero? - (apply system* "make" "install" "TILES=1" "SOUND=1" - (string-append "PREFIX=" - (assoc-ref outputs "tiles")) - (cdr make-flags)))))) - ;; TODO: Add libtap++ from https://github.com/cbab/libtappp as a native - ;; input in order to support tests. - #:tests? #f)) - (outputs '("out" - "tiles")) ; For tile graphics and sound support. - (native-inputs - `(("gettext" ,gettext-minimal) - ("pkg-config" ,pkg-config))) - (inputs - `(("freetype" ,freetype) - ("libogg" ,libogg) - ("libvorbis" ,libvorbis) - ("ncurses" ,ncurses) - ("sdl2" ,sdl2) - ("sdl2-image" ,sdl2-image) - ("sdl2-ttf" ,sdl2-ttf) - ("sdl2-mixer" ,sdl2-mixer))) - (home-page "http://en.cataclysmdda.com/") - (synopsis "Survival horror roguelike video game") - (description - "Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic world. -Struggle to survive in a harsh, persistent, procedurally generated world. -Scavenge the remnants of a dead civilization for food, equipment, or, if you are -lucky, a vehicle with a full tank of gas to get you out of Dodge. Fight to -defeat or escape from a wide variety of powerful monstrosities, from zombies to -giant insects to killer robots and things far stranger and deadlier, and against -the others like yourself, that want what you have.") - (license license:cc-by-sa3.0))) + (let ((commit "ad3b0c3d521292d119f97a83390e7acfe9e9e7f7") + (revision "1")) + (package + (name "cataclysm-dda") + ;; This denotes the version released after the 0.C release. + ;; Revert to a normal version number if updating to stable version 0.D. + (version (git-version "0.C" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/CleverRaven/Cataclysm-DDA.git") + (commit commit))) + (sha256 + (base32 + "1kdgbl8zqd53f5yilm2c9nyq3w6585yxl5jvgxy65dlpzxcqqj7y")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) + "USE_HOME_DIR=1" "DYNAMIC_LINKING=1" "RELEASE=1") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'build 'build-tiles + (lambda* (#:key make-flags outputs #:allow-other-keys) + ;; Change prefix directory and enable tile graphics and sound. + (apply invoke "make" "TILES=1" "SOUND=1" + (string-append "PREFIX=" + (assoc-ref outputs "tiles")) + (cdr make-flags)))) + (add-after 'install 'install-tiles + (lambda* (#:key make-flags outputs #:allow-other-keys) + (apply invoke "make" "install" "TILES=1" "SOUND=1" + (string-append "PREFIX=" + (assoc-ref outputs "tiles")) + (cdr make-flags))))) + ;; TODO: Add libtap++ from https://github.com/cbab/libtappp as a native + ;; input in order to support tests. + #:tests? #f)) + (outputs '("out" + "tiles")) ; For tile graphics and sound support. + (native-inputs + `(("gettext" ,gettext-minimal) + ("pkg-config" ,pkg-config))) + (inputs + `(("freetype" ,freetype) + ("libogg" ,libogg) + ("libvorbis" ,libvorbis) + ("ncurses" ,ncurses) + ("sdl2" ,sdl2) + ("sdl2-image" ,sdl2-image) + ("sdl2-ttf" ,sdl2-ttf) + ("sdl2-mixer" ,sdl2-mixer))) + (home-page "http://en.cataclysmdda.com/") + (synopsis "Survival horror roguelike video game") + (description + "Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic +world. Struggle to survive in a harsh, persistent, procedurally generated +world. Scavenge the remnants of a dead civilization for food, equipment, or, +if you are lucky, a vehicle with a full tank of gas to get you out of Dodge. +Fight to defeat or escape from a wide variety of powerful monstrosities, from +zombies to giant insects to killer robots and things far stranger and deadlier, +and against the others like yourself, that want what you have.") + (license license:cc-by-sa3.0)))) (define-public cowsay (package @@ -461,7 +449,7 @@ automata. The following features are available: (define-public meandmyshadow (package (name "meandmyshadow") - (version "0.4") + (version "0.4.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/meandmyshadow/" @@ -469,7 +457,7 @@ automata. The following features are available: "-src.tar.gz")) (sha256 (base32 - "1dpb7s32b2psj5w3nr5kqibib8nndi86mw8gxp4hmxwrfiisf86d")))) + "0wl5dc75qy001s6043cx0vr2l5y2qfv1cldqnwill9sfygqj9p95")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; there are no tests @@ -485,7 +473,7 @@ automata. The following features are available: ;; link with libX11, even though we're using the GL backend. (substitute* "CMakeLists.txt" (("\\$\\{X11_LIBRARIES\\}") "-lX11")) - ))))) + #t))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs @@ -1616,23 +1604,20 @@ reference interpreter, using the Glk API.") (define-public fizmo (package (name "fizmo") - (version "0.8.4") + (version "0.8.5") (source (origin (method url-fetch) - (uri (string-append "https://christoph-ender.de/fizmo/source/" + (uri (string-append "https://fizmo.spellbreaker.org/source/" name "-" version ".tar.gz")) (sha256 (base32 - "1sd988db2302r7cbfcfghbmg8ck43c6hvnlnlpb0rqxb7pm9cwyy")))) + "1amyc4n41jf08kxmdgkk30bzzx54miaxa97w28f417qwn8lrl98w")))) (build-system gnu-build-system) (arguments '(#:configure-flags (let ((libjpeg (assoc-ref %build-inputs "libjpeg")) (ncurses (assoc-ref %build-inputs "ncurses"))) - (list (string-append "jpeg_CFLAGS=-I" libjpeg "/include") - (string-append "jpeg_LIBS=-ljpeg") - (string-append "ncursesw_CFLAGS=-I" ncurses "/include") - (string-append "ncursesw_LIBS=-lncursesw"))))) + (list (string-append "--with-jpeg-includedir=" libjpeg "/include"))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs @@ -1643,7 +1628,7 @@ reference interpreter, using the Glk API.") ("libxml2" ,libxml2) ("ncurses" ,ncurses) ("sdl2" ,sdl2))) - (home-page "https://christoph-ender.de/fizmo/") + (home-page "https://fizmo.spellbreaker.org/") (synopsis "Z-machine interpreter") (description "Fizmo is a console-based Z-machine interpreter. It is used to play @@ -1679,7 +1664,7 @@ Protocol).") (define-public extremetuxracer (package (name "extremetuxracer") - (version "0.7.4") + (version "0.7.5") (source (origin (method url-fetch) (uri (string-append @@ -1687,15 +1672,15 @@ Protocol).") version "/etr-" version ".tar.xz")) (sha256 (base32 - "0d2j4ybdjmimg67v2fndgahgq4fvgz3fpfb3a4l1ar75n6hy776s")))) + "1ly63316c07i0gyqqmyzsyvygsvygn0fpk3bnbg25fi6li99rlsg")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("glu" ,glu) ("sfml" ,sfml))) - (synopsis "High speed arctic racing game based on Tux Racer") - ;; Snarfed straight from Debian + (synopsis "High-speed arctic racing game based on Tux Racer") + ;; Snarfed straight from Debian. (description "Extreme Tux Racer, or etracer as it is called for short, is a simple OpenGL racing game featuring Tux, the Linux mascot. The goal of the game is to slide down a snow- and ice-covered mountain as quickly as possible, @@ -1822,7 +1807,7 @@ falling, themeable graphics and sounds, and replays.") (define-public wesnoth (package (name "wesnoth") - (version "1.14.1") + (version "1.14.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/wesnoth/wesnoth-" @@ -1831,7 +1816,7 @@ falling, themeable graphics and sounds, and replays.") name "-" version ".tar.bz2")) (sha256 (base32 - "1mzrnbv71b4s41c5x8clhb53l8lidiwzny1hl828228pvys5bxkb")))) + "06648041nr77sgzr7jpmcn37cma3hp41qynp50xzddx28l17zwg9")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no check target @@ -2001,6 +1986,16 @@ world}, @uref{http://evolonline.org, Evol Online} and (origin (method url-fetch) (uri (string-append "http://binaries.openttd.org/releases/" version "/openttd-" version "-source.tar.xz")) + (patches + (list + (origin (method url-fetch) + (uri (string-append + "https://github.com/OpenTTD/OpenTTD/commit/" + "19076c24c1f3baf2a22d1fa832d5688216cf54a3.patch")) + (file-name "openttd-fix-compilation-with-ICU-61.patch") + (sha256 + (base32 + "02d1xmb75yv4x6rfnvxk3vvq4l3lvvwr2pfsdzn7lzalic51ziqh"))))) (sha256 (base32 "0dhv5bbbg1dmmq7fi3xss0a9jq2rqgb5sf9fsqzlsjcdm590j6b1")) @@ -2219,6 +2214,88 @@ Transport Tycoon Deluxe.") ("opensfx" ,openttd-opensfx) ,@(package-native-inputs openttd-engine))))) +(define openrct2-title-sequences + (package + (name "openrct2-title-sequences") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/OpenRCT2/title-sequences/releases/download/v" + version "/title-sequence-v" version ".zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "0qbyxrsw8hlgaq0r5d7lx7an3idy4qbfv7yiw9byhldk763n9cfw")))) + (build-system trivial-build-system) + (native-inputs + `(("bash" ,bash) + ("coreutils" ,coreutils) + ("unzip" ,unzip))) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (openrct2-title-sequences (string-append out + "/share/openrct2/title-sequences")) + (source (assoc-ref %build-inputs "source")) + (unzip (string-append (assoc-ref %build-inputs "unzip") "/bin/unzip"))) + (copy-file source (string-append ,name "-" ,version ".zip")) + (invoke unzip (string-append ,name "-" ,version ".zip")) + (delete-file (string-append ,name "-" ,version ".zip")) + (mkdir-p openrct2-title-sequences) + (copy-recursively "." + openrct2-title-sequences) + #t)))) + (home-page "https://github.com/OpenRCT2/OpenRCT2") + (synopsis "Title sequences for OpenRCT2") + (description + "openrct2-title-sequences is a set of title sequences for OpenRCT2.") + (license license:gpl3+))) + +(define openrct2-objects + (package + (name "openrct2-objects") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/OpenRCT2/objects/releases/download/v" + version "/objects.zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "1z92afhbv13j1ig6fz0x8w9vdmfchssv16vwwhb0vj40pn1g1rwy")))) + (build-system trivial-build-system) + (native-inputs + `(("bash" ,bash) + ("coreutils" ,coreutils) + ("unzip" ,unzip))) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (openrct2-objects (string-append out + "/share/openrct2/objects")) + (source (assoc-ref %build-inputs "source")) + (unzip (string-append (assoc-ref %build-inputs "unzip") "/bin/unzip"))) + (copy-file source (string-append ,name "-" ,version ".zip")) + (invoke unzip (string-append ,name "-" ,version ".zip")) + (delete-file (string-append ,name "-" ,version ".zip")) + (mkdir-p openrct2-objects) + (copy-recursively "." + openrct2-objects) + #t)))) + (home-page "https://github.com/OpenRCT2/OpenRCT2") + (synopsis "Objects for OpenRCT2") + (description + "openrct2-objects is a set of objects for OpenRCT2.") + (license license:gpl3+))) + (define-public openrct2 (package (name "openrct2") @@ -2234,35 +2311,39 @@ Transport Tycoon Deluxe.") (file-name (string-append name "-" version ".tar.gz")))) (build-system cmake-build-system) (arguments - `(#:tests? #f ;; no tests available + `(#:configure-flags '("-DDOWNLOAD_TITLE_SEQUENCES=OFF") + #:tests? #f ; Tests require network. #:phases (modify-phases %standard-phases - (add-after 'unpack 'fix-usr-share-paths - (lambda* (#:key make-flags outputs #:allow-other-keys) + (add-after 'unpack 'fix-usr-share-paths&add-data + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((titles (assoc-ref inputs "openrct2-title-sequences")) + (objects (assoc-ref inputs "openrct2-objects"))) ;; Fix some references to /usr/share. + ;; Change to Platform.Linux.cpp on 0.1.2+ (substitute* "src/openrct2/platform/linux.c" (("/usr/share") - (string-append (assoc-ref %outputs "out") "/share"))))) - (add-after 'build 'fix-cmake-install-file - (lambda _ - ;; The build system tries to download a file and compare hashes. - ;; Since we have no network, remove this so the install doesn't fail. - (substitute* "cmake_install.cmake" - (("EXPECTED_HASH SHA1=b587d83de508d0b104d14c599b76f8565900fce0") - ""))))))) + (string-append (assoc-ref %outputs "out") "/share"))) + (copy-recursively (string-append titles + "/share/openrct2/title-sequences") "data/title") + (copy-recursively (string-append objects + "/share/openrct2/objects") "data/object"))))))) (inputs `(("curl" ,curl) ("fontconfig" ,fontconfig) ("freetype" ,freetype) + ("icu4c" ,icu4c) ("jansson" ,jansson) ("libpng" ,libpng) ("libzip" ,libzip) ("mesa" ,mesa) + ("openrct2-objects" ,openrct2-objects) + ("openrct2-title-sequences" ,openrct2-title-sequences) ("openssl" ,openssl) ("sdl2" ,sdl2) ("speexdsp" ,speexdsp) ("zlib" ,zlib))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config))) (home-page "https://github.com/OpenRCT2/OpenRCT2") (synopsis "Free software re-implementation of RollerCoaster Tycoon 2") (description "OpenRCT2 is a free software re-implementation of @@ -2315,19 +2396,21 @@ are only two levels to play with, but they are very addictive.") (define-public pioneers (package (name "pioneers") - (version "15.4") + (version "15.5") (source (origin (method url-fetch) (uri (string-append "http://downloads.sourceforge.net/pio/" "pioneers-" version ".tar.gz")) (sha256 (base32 - "1p1d18hrfmqcnghip3shkzcs5qkz6j99jvkdkqfi7pqdvjc323cs")))) + "037gdiiw690jw3wd1s9lxmkqx0caxyk0b4drpm7i9p28gig43q9y")))) (build-system gnu-build-system) - (inputs `(("gtk+" ,gtk+) - ("librsvg" ,librsvg) - ("avahi" ,avahi))) + (inputs `(("avahi" ,avahi) + ("gtk+" ,gtk+) + ("librsvg" ,librsvg))) (native-inputs `(("intltool" ,intltool) + ("itstool" ,itstool) + ("libxml2" ,libxml2) ("pkg-config" ,pkg-config))) (synopsis "Board game inspired by The Settlers of Catan") (description "Pioneers is an emulation of the board game The Settlers of @@ -3171,25 +3254,46 @@ colors, pictures, and sounds.") "0jwzbwkgp1l5ia6c7s760gmdirbsncp6nfqp7vqdqsfb63la9gl2")))) (build-system trivial-build-system) (arguments - '(#:modules ((guix build utils)) + `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils)) - (let* ((out (assoc-ref %outputs "out")) - (bindir (string-append out "/bin")) - (prog (string-append bindir "/mrrescue")) - (source (assoc-ref %build-inputs "source")) - (bash (string-append (assoc-ref %build-inputs "bash") - "/bin/bash")) - (love (string-append (assoc-ref %build-inputs "love") - "/bin/love"))) - (mkdir-p bindir) - (with-output-to-file prog + (let* ((out (assoc-ref %outputs "out")) + (script (string-append out "/bin/" ,name)) + (data (string-append out "/share/" ,name)) + (source (assoc-ref %build-inputs "source")) + (unzip (string-append (assoc-ref %build-inputs "unzip") + "/bin/unzip")) + (patch (string-append (assoc-ref %build-inputs "patch") + "/bin/patch")) + (bash (string-append (assoc-ref %build-inputs "bash") + "/bin/bash")) + (love (string-append (assoc-ref %build-inputs "love") + "/bin/love"))) + + (mkdir-p (dirname script)) + (with-output-to-file script (lambda () (format #t "#!~a~%" bash) - (format #t "exec -a mrrescue \"~a\" \"~a\"~%" love source))) - (chmod prog #o755) + (format #t "exec -a ~a \"~a\" \"~a\"~%" ,name love data))) + (chmod script #o755) + + ;; The better way to package this game would be to install *only* the + ;; script above, pointing to the unextracted .love file in the store. + ;; However, mrrescue 1.02e needs to be patched to work with Love 11. + ;; Instead of extracting the .love file, patching it, and re-zipping + ;; it to the store, simply point the script to the extracted patched + ;; data directory directly. + (mkdir-p data) + (with-directory-excursion data + (invoke unzip source) + (invoke patch "-p1" "-i" + (assoc-ref %build-inputs "love-11.patch"))) #t)))) + (native-inputs + `(("unzip" ,unzip) + ("patch" ,patch) + ("love-11.patch" ,(search-patch "mrrescue-support-love-11.patch")))) (inputs `(("bash" ,bash) ("love" ,love))) @@ -3197,8 +3301,8 @@ colors, pictures, and sounds.") (synopsis "Arcade-style fire fighting game") (description "Mr. Rescue is an arcade styled 2d action game centered around evacuating -civilians from burning buildings. The game features fast paced fire -extinguishing action, intense boss battles, a catchy soundtrack and lots of +civilians from burning buildings. The game features fast-paced fire +extinguishing action, intense boss battles, a catchy soundtrack, and lots of throwing people around in pseudo-randomly generated buildings.") (license (list license:zlib ; for source code license:cc-by-sa3.0)))) ; for graphics and music assets @@ -4306,7 +4410,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as (define-public tome4 (package (name "tome4") - (version "1.5.5") + (version "1.5.10") (synopsis "Single-player, RPG roguelike game set in the world of Eyal") (source (origin @@ -4315,7 +4419,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as version ".tar.bz2")) (sha256 (base32 - "0v2qgdfpvdzd1bcbp9v8pfahj1bgczsq2d4xfhh5wg11jgjcwz03")) + "0mc5dgh2x9nbili7gy6srjhb23ckalf08wqq2amyjr5rq392jvd7")) (modules '((guix build utils))) (snippet '(begin @@ -4337,9 +4441,10 @@ Crowther & Woods, its original authors, in 1995. It has been known as (arguments `(#:make-flags '("CC=gcc" "config=release") #:phases (modify-phases %standard-phases + (delete 'bootstrap) (replace 'configure (lambda _ - (zero? (system* "premake4" "gmake")) + (invoke "premake4" "gmake") #t)) (add-after 'set-paths 'set-sdl-paths (lambda* (#:key inputs #:allow-other-keys) @@ -4426,7 +4531,7 @@ Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century.") (define-public quakespasm (package (name "quakespasm") - (version "0.93.0") + (version "0.93.1") (source (origin (method url-fetch) @@ -4434,7 +4539,7 @@ Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century.") version ".tgz")) (sha256 (base32 - "0b2nz7w4za32pc34r62ql270z692qcjs2pm0i3svkxkvfammhdfq")))) + "1bimv18f6rzhyjz78yvw2vqr5n0kdqbcqmq7cb3m951xgsxfcgpd")))) (arguments `(#:tests? #f #:make-flags '("CC=gcc" @@ -4471,7 +4576,7 @@ some graphical niceities, and numerous bug-fixes and other improvements.") (package (inherit quakespasm) (name "vkquake") - (version "0.97.3") + (version "1.00.0") (source (origin (method url-fetch) @@ -4480,7 +4585,7 @@ some graphical niceities, and numerous bug-fixes and other improvements.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1p0nh2v2ilylw62fxc5qpfcmyhs0s64w8sgh036nc6kn21kbjc0d")))) + "0bviv18jvp41jvrabgl7l5kq4n1p6p3rywij481yswawdw6l5idh")))) (arguments `(#:make-flags (let ((vulkanlib (string-append (assoc-ref %build-inputs diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 2ab70c107c..e7ce5f3c52 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner ;;; Copyright © 2016 Carlos Sánchez de La Lama ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -515,6 +516,20 @@ Go. It also includes runtime support libraries for these languages.") for several languages, including C, C++, Objective-C, Fortran, Ada, and Go. It also includes runtime support libraries for these languages."))) +(define-public gcc-8 + (package + (inherit gcc-7) + (version "8.1.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gcc/gcc-" + version "/gcc-" version ".tar.xz")) + (sha256 + (base32 + "0lxil8x0jjx7zbf90cy1rli650akaa6hpk8wk8s62vk2jbwnc60x")) + (patches (search-patches "gcc-8-strmov-store-file-names.patch" + "gcc-5.0-libvtv-runpath.patch")))))) + ;; Note: When changing the default gcc version, update ;; the gcc-toolchain-* definitions and the gfortran definition ;; accordingly. diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 4ba09f2a90..85bb0ccf9b 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -544,14 +544,14 @@ coordinates.") (define-public r-rgooglemaps (package (name "r-rgooglemaps") - (version "1.4.1") + (version "1.4.2") (source (origin (method url-fetch) (uri (cran-uri "RgoogleMaps" version)) (sha256 (base32 - "0fsmlnhl4kw2j4972kfanzw9njhnzk695gsyw8g6yppsmz2clcaq")))) + "112mdm53qx92n2m4ms02sbppckp44l1z19vy99j6gw3jrdprjydl")))) (properties `((upstream-name . "RgoogleMaps"))) (build-system r-build-system) (propagated-inputs `(("r-png" ,r-png))) diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index 9b45e84559..f887f8eb30 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -142,14 +142,14 @@ translated messages from the catalogs. Nearly all GNU packages use Gettext.") (define-public po4a (package (name "po4a") - (version "0.47") + (version "0.53") (source (origin (method url-fetch) - (uri (string-append "https://alioth.debian.org/frs/download.php" - "/file/4142/po4a-" version ".tar.gz")) + (uri (string-append "https://github.com/mquinson/po4a/releases/download/v" + version "/po4a-" version ".tar.gz")) (sha256 (base32 - "01vm0750aq0h2lphrflv3wq9gz7y0py8frglfpacn58ivyvy242h")))) + "033qrd37zjjzvjl6g55fvhlcrm7gynfx6rj76qpr2852dn0mw069")))) (build-system perl-build-system) (arguments `(#:phases @@ -166,6 +166,14 @@ translated messages from the catalogs. Nearly all GNU packages use Gettext.") (lambda _ (delete-file "t/20-sgml.t") #t)) + (add-before 'check 'disable-asciidoc-test + (lambda _ + (delete-file "t/30-asciidoc.t") + #t)) + (add-before 'check 'disable-yaml-test + (lambda _ + (delete-file "t/32-yaml.t") + #t)) (add-after 'unpack 'fix-builder (lambda* (#:key inputs outputs #:allow-other-keys) (substitute* "Po4aBuilder.pm" diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index 628d285e45..3a16309618 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -48,7 +48,7 @@ (define-public babl (package (name "babl") - (version "0.1.46") + (version "0.1.50") (source (origin (method url-fetch) (uri (list (string-append "https://download.gimp.org/pub/babl/" @@ -62,7 +62,7 @@ "/babl-" version ".tar.bz2"))) (sha256 (base32 - "0nwyhvfca6m35wjcccvwca7fcihzgdfyc012qi703y5d3cxl1hmv")))) + "0bavr2y4v88pip7vlca4kwmnksk2qxcvkkdp9jyfi6pzh701sb5m")))) (build-system gnu-build-system) (home-page "http://gegl.org/babl/") (synopsis "Image pixel format conversion library") @@ -79,7 +79,7 @@ provided, as well as a framework to add new color models and data types.") (define-public gegl (package (name "gegl") - (version "0.4.0") + (version "0.4.2") (source (origin (method url-fetch) (uri (list (string-append "https://download.gimp.org/pub/gegl/" @@ -87,7 +87,7 @@ provided, as well as a framework to add new color models and data types.") "/" name "-" version ".tar.bz2"))) (sha256 (base32 - "1ighk4z8nlqrzyj8w97s140hzj59564l3xv6fpzbr97m1zx2nkfh")))) + "13bzl0k5l12pk8bkcq4ar7wscbnw7jswhp34mwfsrf10kp0qndba")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("LDFLAGS=-lm"))) @@ -117,7 +117,7 @@ buffers.") (define-public gimp (package (name "gimp") - (version "2.10.0") + (version "2.10.2") (source (origin (method url-fetch) (uri (string-append "https://download.gimp.org/pub/gimp/v" @@ -125,10 +125,10 @@ buffers.") "/gimp-" version ".tar.bz2")) (sha256 (base32 - "1qkxaigbfkx26xym5nzrgfrmn97cbnhn63v1saaha2nbi3xrdk3z")))) + "1srkqd9cx1xmny7cyk3b6f14dknb3fd77whm38vlvr7grnpbmc0w")))) (build-system gnu-build-system) (outputs '("out" - "doc")) ;9 MiB of gtk-doc HTML + "doc")) ; 9 MiB of gtk-doc HTML (arguments '(#:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 794fb17471..33f1f935ac 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3756,6 +3756,17 @@ which can read a large number of file formats.") (uri (string-append "mirror://gnome/sources/" name "/" (version-major+minor version) "/" name "-" version ".tar.xz")) + (patches + (list + ;; fmradio: Fix build with GStreamer master + (origin + (method url-fetch) + (uri (string-append + "https://gitlab.gnome.org/GNOME/rhythmbox/commit/" + "b182c6b9e1d09e601bac0b703cc5f8b159ebbc3a.patch")) + (sha256 + (base32 + "17j45vyyr071ka3nckj2gycgyyv1j08fyrxw89jfdq2442nzrsiy"))))) (sha256 (base32 "0hzcns8gf5yb0rm4ss8jd8qzarcaplp5cylk6plwilsqfvxj4xn2")))) @@ -4186,7 +4197,7 @@ a secret password store, an adblocker, and a modern UI.") (define-public epiphany (package (name "epiphany") - (version "3.28.2.1") + (version "3.28.3.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4194,7 +4205,7 @@ a secret password store, an adblocker, and a modern UI.") name "-" version ".tar.xz")) (sha256 (base32 - "0ba0qqsbg3cv1k1pcj971y7l8kqib5l7kbr743x9a7hbmkqfk95s")))) + "1xz6xl6b0iihvczyr0cs1z5ifvpai6anb4m0ng1caiph06klc1b9")))) (build-system meson-build-system) (arguments @@ -6307,7 +6318,7 @@ fit the GNOME desktop.") (define-public gnome-dictionary (package (name "gnome-dictionary") - (version "3.24.0") + (version "3.26.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -6315,8 +6326,9 @@ fit the GNOME desktop.") name "-" version ".tar.xz")) (sha256 (base32 - "1wnrpg8yndacq0xnzc84d519yp7f28brzklm3a48xcgs1i50drs1")))) - (build-system glib-or-gtk-build-system) + "007k2bq8iplg4psdpz074r5d4zxvn4s95qym4rw9hs6giljbrf0n")))) + (build-system meson-build-system) + (arguments '(#:glib-or-gtk? #t)) (native-inputs `(("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) @@ -6481,6 +6493,12 @@ like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.") (substitute* '("Makefile.am") (("\\$\\(DESTDIR\\)/usr/share") "$(datadir)")) + #t)) + (add-after 'unpack 'disable-configure-during-bootstrap + (lambda _ + ;; Do not run configure as part of autogen.sh because references + ;; to /bin are not fixed yet. + (setenv "NOCONFIGURE" "y") #t))))) (native-inputs `(("autoconf" ,autoconf) @@ -6530,6 +6548,14 @@ simple and consistent.") (base32 "1ya1cqvv8q847c0rpcg6apzky87q3h04y8jz5nmi52qk6kg8si0b")))) (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-configure-during-bootstrap + (lambda _ + (substitute* "autogen.sh" + (("^\"\\$srcdir/configure\".*") "")) + #t))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake))) @@ -7135,7 +7161,7 @@ photo-booth-like software, such as Cheese.") (define-public cheese (package (name "cheese") - (version "3.26.0") + (version "3.28.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -7143,7 +7169,7 @@ photo-booth-like software, such as Cheese.") version ".tar.xz")) (sha256 (base32 - "01f6lsp9jkhq5v2zxlghw15bca4xqavkxqkl8977r0g13p22zxcf")))) + "06da5qc5hdvwwd5vkbgbx8pjx1l3mvr07yrnnv3v1hfc3wp7l7jw")))) (arguments ;; Tests require GDK. `(#:tests? #f @@ -7268,7 +7294,7 @@ mp3, Ogg Vorbis and FLAC") ("libxtst" ,libxtst) ("dconf" ,dconf) ("libice" ,libice))) - (inputs `(("libsm", libsm) + (inputs `(("libsm" ,libsm) ("python-cheetah" ,python2-cheetah))) (native-inputs `(("glib" ,glib "bin") ("pkg-config" ,pkg-config) @@ -7282,9 +7308,10 @@ mp3, Ogg Vorbis and FLAC") ("gobject-introspection" ,gobject-introspection) ("python2" ,python-2))) (synopsis "Tool to help prevent repetitive strain injury (RSI)") - (description "Workrave is a program that assists in the recovery and -prevention of repetitive strain injury (RSI). The program frequently alerts -you to take micro-pauses, rest breaks and restricts you to your daily limit") + (description + "Workrave is a program that assists in the recovery and prevention of +repetitive strain injury (@dfn{RSI}). The program frequently alerts you to take +micro-pauses and rest breaks, and restricts you to your daily limit.") (home-page "http://www.workrave.org") (license license:gpl3+)))) diff --git a/gnu/packages/gnu-pw-mgr.scm b/gnu/packages/gnu-pw-mgr.scm index 906e7d3cf8..6bb5fea84b 100644 --- a/gnu/packages/gnu-pw-mgr.scm +++ b/gnu/packages/gnu-pw-mgr.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Eric Bavier ;;; Copyright © 2015 Mark H Weaver -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2018 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,7 +30,7 @@ (define-public gnu-pw-mgr (package (name "gnu-pw-mgr") - (version "2.0") + (version "2.3.1") (source (origin (method url-fetch) @@ -38,8 +38,16 @@ version ".tar.xz")) (sha256 (base32 - "19qvg37snfa8s06q5crx25m1r1n4l0wvfpkbdxz17q7whp0plrl6")))) + "05vv6n5sqdswhzm21cqn8m2p6avblxl3cv7b39nqx8yxf58gi2xv")))) (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'patch-more-shebangs + (lambda _ + (substitute* "tests/dom.test" + (("/usr/bin/printf") (which "printf"))) + #t))))) (native-inputs `(("which" ,which) ("autogen" ,autogen))) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 8a8a1f5645..9564afbb90 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -107,6 +107,7 @@ Daemon and possibly more in the future.") (define-public libgcrypt (package + (replacement libgcrypt/fixed) (name "libgcrypt") (version "1.8.2") (source (origin @@ -141,6 +142,19 @@ generation.") (properties '((ftp-server . "ftp.gnupg.org") (ftp-directory . "/gcrypt/libgcrypt"))))) +(define libgcrypt/fixed + (package + (inherit libgcrypt) + (name "libgcrypt") + (version "1.8.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" + version ".tar.bz2")) + (sha256 + (base32 + "0z5gs1khzyknyfjr19k8gk4q148s6q987ya85cpn0iv70fz91v36")))))) + (define-public libassuan (package (name "libassuan") @@ -230,14 +244,14 @@ compatible to GNU Pth.") (define-public gnupg (package (name "gnupg") - (version "2.2.7") + (version "2.2.8") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "0vlpis0q7gvq9mhdc43hkyn3cdriz4mwgj20my3gyzpgwqg3cnyr")))) + "1k8dnnfs9888yp713l7kg2jg110lw47s4krx0njna6fjrsw4qyvp")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -348,14 +362,14 @@ libskba (working with X.509 certificates and CMS data).") (define-public gnupg-1 (package (inherit gnupg) - (version "1.4.22") + (version "1.4.23") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "1d1hz4szh1kvwhsw7w2zxa6q5ndrk3qy6hj289l1b8k3xi5s554m")))) + "1fkq4sqldvf6a25mm2qz95swv1qjg464736091w51djiwqbjyin9")))) (native-inputs '()) (inputs `(("zlib" ,zlib) @@ -506,14 +520,14 @@ decrypt messages using the OpenPGP format by making use of GPGME.") (define-public python-gnupg (package (name "python-gnupg") - (version "0.3.8") + (version "0.4.3") (source (origin (method url-fetch) (uri (pypi-uri "python-gnupg" version)) (sha256 (base32 - "0nkbs9c8f30lra7ca39kg91x8cyxn0jb61vih4qky839gpbwwwiq")))) + "03dc8whhvk7ccspbk8vzfhkxli8cd9zfbss5p597g4jldgy8s59d")))) (build-system python-build-system) (arguments `(#:phases @@ -521,16 +535,14 @@ decrypt messages using the OpenPGP format by making use of GPGME.") (replace 'check (lambda _ (substitute* "test_gnupg.py" - ;; Exported keys don't have a version line! - (("del k1\\[1\\]") "#") ;; Unsure why this test fails. (("'test_search_keys'") "True") (("def test_search_keys") "def disabled__search_keys")) (setenv "USERNAME" "guixbuilder") ;; The doctests are extremely slow and sometimes time out, ;; so we disable them. - (zero? (system* "python" - "test_gnupg.py" "--no-doctests"))))))) + (invoke "python" + "test_gnupg.py" "--no-doctests")))))) (native-inputs `(("gnupg" ,gnupg-1))) (home-page "https://packages.python.org/python-gnupg/index.html") diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index df87700d6f..9e6061eb64 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -479,27 +479,43 @@ security standards.") (mozilla-patch "icecat-CVE-2018-5150-pt08.patch" "134c728799c1" "16hbwx6fx1hrddsyjjbd3z954ql3pg348xs13h9riyblq8crzmam") (mozilla-patch "icecat-CVE-2018-5150-pt09.patch" "14eab155eaa8" "0wr4xgblxzk4c2gvlnpl7ic1196mrhry1hgwdl1jivq0ji5cbvbd") (mozilla-patch "icecat-bug-1452619.patch" "2b75d55ccf0e" "1g87aybw6ggv6hyk385bplv0lx63n020gwyq0d6d4pqld48hsm1i") - (mozilla-patch "icecat-bug-1453127.patch" "89857f35df29" "0gzi47svrw5ajdlm3i12193psm702zx70x5h1rwp4gb7gxh4m4d9") + (mozilla-patch "icecat-CVE-2018-5156-pt1.patch" "89857f35df29" "0gzi47svrw5ajdlm3i12193psm702zx70x5h1rwp4gb7gxh4m4d9") (mozilla-patch "icecat-CVE-2018-5150-pt10.patch" "3f2ec03c0405" "0w02952dlxd2gmwghck2nm4rjjmc5ylg62bw6m1rvi35kcr134lr") (mozilla-patch "icecat-CVE-2018-5183.patch" "f729bf78fb3a" "0xkj6jwxwdqkvb5c7wi16b8cm8qrnlrd3s9jnd46jg03iykrx56f") - (mozilla-patch "icecat-bug-1437842.patch" "eb896089db47" "10lppk4x2d3pim71a36ky1dmg08rs5ckfiljwvfnr1cw6934qxl4") - (mozilla-patch "icecat-bug-1458270.patch" "2374dca97bde" "0y1g55wvj44nzb1qfkl271jcf8s1ik8lcl1785z0zim4qzn7qkpa") - (mozilla-patch "icecat-bug-1452576.patch" "70b6298e0c9e" "0n5jfy6c421dkybk8m18vd61y95zz0r64g1p1zlya3fps5knfaqi") - (mozilla-patch "icecat-bug-1459206-pt1.patch" "4ef79fe9b3b7" "1c32z1ki1i6xj1nbb0xlxwqnmz48ikmy8dmp37rkjz8ssn04wgfg") - (mozilla-patch "icecat-bug-1459206-pt2.patch" "9ad16112044a" "0ayya67sx7avcb8bplfdxb92l9g4mjrb1s3hby283llhqv0ikg9b") - (mozilla-patch "icecat-bug-1459162.patch" "11d8a87fb6d6" "1rkmdk18llw0x1jakix75hlhy0hpsmlminnflagbzrzjli81gwm1") - (mozilla-patch "icecat-bug-1451297.patch" "407b10ad1273" "16qzsfirw045xag96f1qvpdlibm8lwdj9l1mlli4n1vz0db91v9q") - (mozilla-patch "icecat-bug-1462682.patch" "e76e2e481b17" "0hnx13msjy28n3bpa2c24kpzalam4bdk5gnp0f9k671l48rs9yb3") - (mozilla-patch "icecat-bug-1450688.patch" "2c75bfcd465c" "1pjinj8qypafqm2fk68s3hzcbzcijn09qzrpcxvzq6bl1yfc1xfd") - (mozilla-patch "icecat-bug-1456975.patch" "042f80f3befd" "0av918kin4bkrq7gnjz0h9w8kkq8rk9l93250lfl5kqrinza1gsk") - (mozilla-patch "icecat-bugs-1442722+1455071+1433642+1456604+1458320.patch" + (mozilla-patch "icecat-CVE-2018-5188-pt01.patch" "eb896089db47" "10lppk4x2d3pim71a36ky1dmg08rs5ckfiljwvfnr1cw6934qxl4") + (mozilla-patch "icecat-CVE-2018-5188-pt02.patch" "2374dca97bde" "0y1g55wvj44nzb1qfkl271jcf8s1ik8lcl1785z0zim4qzn7qkpa") + (mozilla-patch "icecat-CVE-2018-5188-pt03.patch" "70b6298e0c9e" "0n5jfy6c421dkybk8m18vd61y95zz0r64g1p1zlya3fps5knfaqi") + (mozilla-patch "icecat-CVE-2018-12365-pt1.patch" "4ef79fe9b3b7" "1c32z1ki1i6xj1nbb0xlxwqnmz48ikmy8dmp37rkjz8ssn04wgfg") + (mozilla-patch "icecat-CVE-2018-12365-pt2.patch" "9ad16112044a" "0ayya67sx7avcb8bplfdxb92l9g4mjrb1s3hby283llhqv0ikg9b") + (mozilla-patch "icecat-CVE-2018-12359.patch" "11d8a87fb6d6" "1rkmdk18llw0x1jakix75hlhy0hpsmlminnflagbzrzjli81gwm1") + (mozilla-patch "icecat-CVE-2018-5188-pt04.patch" "407b10ad1273" "16qzsfirw045xag96f1qvpdlibm8lwdj9l1mlli4n1vz0db91v9q") + (mozilla-patch "icecat-CVE-2018-6126.patch" "e76e2e481b17" "0hnx13msjy28n3bpa2c24kpzalam4bdk5gnp0f9k671l48rs9yb3") + (mozilla-patch "icecat-CVE-2018-5188-pt05.patch" "2c75bfcd465c" "1pjinj8qypafqm2fk68s3hzcbzcijn09qzrpcxvzq6bl1yfc1xfd") + (mozilla-patch "icecat-CVE-2018-5188-pt06.patch" "042f80f3befd" "0av918kin4bkrq7gnjz0h9w8kkq8rk9l93250lfl5kqrinza1gsk") + (mozilla-patch "icecat-CVE-2018-5188-pt07+bugs-1455071+1433642+1456604+1458320.patch" "bb0451c9c4a0" "1lhm1b2a7c6jwhzsg3c830hfhp17p8j9zbcmgchpb8c5jkc3vw0x") - (mozilla-patch "icecat-bug-1465108-pt1.patch" "8189b262e3b9" "13rh86ddwmj1bhv3ibbil3sv5xbqq1c9v1czgbsna5hxxkzc1y3b") - (mozilla-patch "icecat-bug-1465108-pt2.patch" "9f81ae3f6e1d" "05vfg8a8jrzd93n1wvncmvdmqgf9cgsl8ryxgjs3032gbbjkga7q") - (mozilla-patch "icecat-bug-1459693.patch" "face7a3dd5d7" "0jclw30mf693w8lrmvn0iankggj21nh4j3zh51q5363rj5xncdzx") - (mozilla-patch "icecat-bug-1464829.patch" "7afb58c046c8" "1r0569r76712x7x1sw6xr0x06ilv6iw3fncb0f8r8b9mp6wrpx34") - (mozilla-patch "icecat-bug-1452375-pt1.patch" "f1a745f8c42d" "11q73pb7a8f09xjzil4rhg5nr49zrnz1vb0prni0kqvrnppf5s40") - (mozilla-patch "icecat-bug-1452375-pt2.patch" "1f9a430881cc" "0f79rv7njliqxx33z07n60b50jg0a596d1km7ayz2hivbl2d0168"))) + (mozilla-patch "icecat-CVE-2018-5188-pt08.patch" "8189b262e3b9" "13rh86ddwmj1bhv3ibbil3sv5xbqq1c9v1czgbsna5hxxkzc1y3b") + (mozilla-patch "icecat-CVE-2018-5188-pt09.patch" "9f81ae3f6e1d" "05vfg8a8jrzd93n1wvncmvdmqgf9cgsl8ryxgjs3032gbbjkga7q") + (mozilla-patch "icecat-CVE-2018-12360.patch" "face7a3dd5d7" "0jclw30mf693w8lrmvn0iankggj21nh4j3zh51q5363rj5xncdzx") + (mozilla-patch "icecat-CVE-2018-5188-pt10.patch" "7afb58c046c8" "1r0569r76712x7x1sw6xr0x06ilv6iw3fncb0f8r8b9mp6wrpx34") + (mozilla-patch "icecat-CVE-2018-12362-pt1.patch" "f1a745f8c42d" "11q73pb7a8f09xjzil4rhg5nr49zrnz1vb0prni0kqvrnppf5s40") + (mozilla-patch "icecat-CVE-2018-12362-pt2.patch" "1f9a430881cc" "0f79rv7njliqxx33z07n60b50jg0a596d1km7ayz2hivbl2d0168") + (mozilla-patch "icecat-CVE-2018-5188-pt11.patch" "28f4fc0a5141" "1a8f9z6c80in8ccj82ysdrcr2lqypp29l4acs50kwncm0c0b01zl") + (mozilla-patch "icecat-CVE-2018-12363.patch" "ad5a53a1d2b1" "0rhl4r39ydb3lkfp5pkwvhhzqgfh33s9r7b7jccgkrx6f13xyq78") + (mozilla-patch "icecat-CVE-2018-5188-pt12.patch" "0ddfc03c0454" "1b0xw2kj9765lvpl8iwr3wwcz40bdfp3dp4y9f546a61qsi9q9d6") + (mozilla-patch "icecat-CVE-2018-5156-pt2.patch" "dbf36189a364" "1awbyhy0r79i03sns2p0m78f9hb6c7kp4hwia2khx4qszlsr4j95") + (mozilla-patch "icecat-CVE-2018-5188-pt13.patch" "32509dfde003" "0cc3c92dgf5qynk093prq610c9x815l2fa24ddrw9czdzbwblsdq") + (mozilla-patch "icecat-bug-1462912.patch" "f18535a212da" "0zkqz9il89f1s1yrp5c6hj6kysy2x02iy50vgwdj30lr56gkpzmk") + (mozilla-patch "icecat-CVE-2018-5188-pt14.patch" "e8e9e1ef79f2" "0dc8p6fsppq3bhbpmp41f8mjxbr31pvgpga0a73dqdaicq5ydgj4") + (search-patch "icecat-bug-1413868-pt1.patch") + (mozilla-patch "icecat-CVE-2018-5188-pt15.patch" "9d4d31b2630d" "1lcbmsyi09kp80h1jgxj5l45zl24xn22h1lq7drbyjxsn1kggq4g") + (mozilla-patch "icecat-CVE-2018-12366-pt1.patch" "edf2c7dff493" "06xmyk7nm54cm9m6qc59wz8cxxfa5r25mf2xzdzy74iq5hwa1ac8") + (mozilla-patch "icecat-CVE-2018-5188-pt16.patch" "05549a4d1b80" "10q68cllshmmhlrbirm9h4gyc3ffrcpsxihfpcbxh90nv2h16jci") + (mozilla-patch "icecat-CVE-2018-12364.patch" "67b2d8924841" "197riigbb6l30959pygr0zlv7vaims78dg1mh0pg33pa7cbna0ds") + (mozilla-patch "icecat-CVE-2018-12366-pt2.patch" "528d4d997bb3" "0f375i96a404dkn0fanmd9pgfj3wyrhjfc5dwslw2s44gwfjhljb") + (mozilla-patch "icecat-bug-1369771.patch" "fab16ad7f256" "0kd8qm04sjgfgfg8yw3ivcxazb1d7v430g86chw4n64qybsh9ka3") + (mozilla-patch "icecat-CVE-2018-5188-pt17.patch" "068e249d02b4" "1iy9by1mg5qhp8502h31m8zm99aq2hx0c5n3hadd5pk11lfnq6ll") + (mozilla-patch "icecat-bug-1413868-pt2.patch" "755067c14b06" "089dwqwzcdg1l6aimi0i65q4dgb2iny5h8yjx63h9zgv77n0700a"))) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index d61747a09c..3640d7640b 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -78,7 +78,8 @@ (delete 'configure) (add-after 'patch-generated-file-shebangs 'chdir (lambda _ - (chdir "src"))) + (chdir "src") + #t)) (add-before 'build 'prebuild (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib")) @@ -160,7 +161,7 @@ ;; Go 1.4's cgo will not work with binutils >= 2.27: ;; https://github.com/golang/go/issues/16906 (setenv "CGO_ENABLED" "0") - (zero? (system* "sh" "all.bash"))))) + (invoke "sh" "all.bash")))) (replace 'install (lambda* (#:key outputs inputs #:allow-other-keys) @@ -215,7 +216,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.4) (name "go") - (version "1.9.6") + (version "1.9.7") (source (origin (method url-fetch) @@ -223,7 +224,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") name version ".src.tar.gz")) (sha256 (base32 - "0a2qkvzr0g5cbd66wi7b6r40qyp9p55y0zz2j5qg1xsqwsdhbx1n")))) + "08kpy874x0rx43zpyv5kwd8xj2ma91xm33i0ka2v1v788px18a2q")))) (arguments (substitute-keyword-arguments (package-arguments go-1.4) ((#:phases phases) @@ -343,7 +344,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (setenv "GOROOT" (dirname (getcwd))) (setenv "GOROOT_FINAL" output) (setenv "CGO_ENABLED" "1") - (zero? (system* "sh" "all.bash"))))) + (invoke "sh" "all.bash")))) (replace 'install ;; TODO: Most of this could be factorized with Go 1.4. @@ -374,7 +375,8 @@ in the style of communicating sequential processes (@dfn{CSP}).") '("README.md" "CONTRIBUTORS" "AUTHORS" "PATENTS" "LICENSE" "VERSION" "CONTRIBUTING.md" "robots.txt")) - (copy-recursively "../" output)))))))) + (copy-recursively "../" output) + #t))))))) (native-inputs `(("go" ,go-1.4) ,@(package-native-inputs go-1.4))) @@ -384,7 +386,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.9) (name "go") - (version "1.10.2") + (version "1.10.3") (source (origin (method url-fetch) @@ -392,7 +394,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") name version ".src.tar.gz")) (sha256 (base32 - "1gcqbac3wbhbcr0ri9zgfj6qkqbwf9fn116a0a7fvn4wdff60r32")))) + "1wjmw65nfkkzz084695gdgn13sbjcaafy2y5370d214pdk31qysn")))) (arguments (substitute-keyword-arguments (package-arguments go-1.9) ((#:phases phases) @@ -1621,3 +1623,173 @@ values for the purpose of fuzz testing.") (synopsis "Go registry for request variables") (description "This package provides @code{gorilla/context}, which is a general purpose registry for global request variables in the Go programming language.") (license license:bsd-3)))) + +(define-public go-github-com-gorilla-mux + (let ((commit "599cba5e7b6137d46ddf58fb1765f5d928e69604") + (revision "0")) + (package + (name "go-github-com-gorilla-mux") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gorilla/mux.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0wd6jjii1kg5s0nk3ri6gqriz6hbd6bbcn6x4jf8n7ncrb8qsxyz")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/gorilla/mux")) + (home-page "https://github.com/gorilla/mux") + (synopsis "URL router and dispatcher for Go") + (description + "Gorilla/Mux implements a request router and dispatcher for matching +incoming requests with their respective handler.") + (license license:bsd-3)))) + +(define-public go-github-com-jonboulle-clockwork + (let ((commit "e3653ace2d63753697e0e5b07b9393971c0bba9d") + (revision "0")) + (package + (name "go-github-com-jonboulle-clockwork") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jonboulle/clockwork.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1avzqhks12a8x2yzpvjsf3k0gv9cy7zx2z88hn0scacnxkphisvc")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/jonboulle/clockwork")) + (home-page "https://github.com/jonboulle/clockwork") + (synopsis "Fake clock library for Go") + (description + "Replace uses of the @code{time} package with the +@code{clockwork.Clock} interface instead.") + (license license:asl2.0)))) + +(define-public go-github-com-spf13-pflag + (let ((commit "4f9190456aed1c2113ca51ea9b89219747458dc1") + (revision "0")) + (package + (name "go-github-com-spf13-pflag") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/spf13/pflag.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "12vrlcsbwjqlfc49rwky45mbcj74c0kb6z54354pzas6fwzyi1kc")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/spf13/pflag")) + (home-page "https://github.com/spf13/pflag") + (synopsis "Replacement for Go's @code{flag} package") + (description + "Pflag is library to replace Go's @code{flag} package. It implements +POSIX/GNU-style command-line options with double hyphens. It is is compatible +with the +@uref{https://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html, +GNU extensions} to the POSIX recommendations for command-line options.") + (license license:bsd-3)))) + +(define-public go-github-com-sirupsen-logrus + (package + (name "go-github-com-sirupsen-logrus") + (version "1.0.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sirupsen/logrus.git") + (commit (string-append "v" version)))) + (sha256 + (base32 + "0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz")))) + (build-system go-build-system) + (native-inputs + `(("go-golang-org-x-crypto-ssh-terminal" + ,go-golang-org-x-crypto-ssh-terminal) + ("go-github-com-stretchr-testify" + ,go-github-com-stretchr-testify) + ("go-golang-org-x-sys-unix" + ,go-golang-org-x-sys-unix))) + (arguments + '(#:tests? #f ;FIXME missing dependencies + #:import-path "github.com/sirupsen/logrus")) + (home-page "https://github.com/sirupsen/logrus") + (synopsis "Structured, pluggable logging for Go") + (description "Logrus is a structured logger for Go, completely API +compatible with the standard library logger.") + (license license:expat))) + +(define-public go-github-com-kardianos-osext + (let ((commit "ae77be60afb1dcacde03767a8c37337fad28ac14") + (revision "1")) + (package + (name "go-github-com-kardianos-osext") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kardianos/osext") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz")))) + (build-system go-build-system) + (arguments + `(#:import-path "github.com/kardianos/osext" + ;; The tests are flaky: + ;; + #:tests? #f)) + (synopsis "Find the running executable") + (description "Osext provides a method for finding the current executable +file that is running. This can be used for upgrading the current executable or +finding resources located relative to the executable file.") + (home-page "https://github.com/kardianos/osext") + (license license:bsd-3)))) + +(define-public go-github-com-ayufan-golang-kardianos-service + (let ((commit "0c8eb6d8fff2e2fb884a7bfd23e183fb63c0eff3") + (revision "0")) + (package + (name "go-github-com-ayufan-golang-kardianos-service") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url + "https://github.com/ayufan/golang-kardianos-service.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0x0cn7l5gda2khsfypix7adxd5yqighzn04mxjw6hc4ayrh7his5")))) + (build-system go-build-system) + (native-inputs + `(("go-github-com-kardianos-osext" + ,go-github-com-kardianos-osext))) + (arguments + '(#:tests? #f ;FIXME tests fail: Service is not running. + #:import-path "github.com/ayufan/golang-kardianos-service")) + (home-page "https://github.com/ayufan/golang-kardianos-service") + (synopsis "Go interface to a variety of service supervisors") + (description "This package provides @code{service}, a Go module that can +run programs as a service using a variety of supervisors, including systemd, +SysVinit, and more.") + (license license:zlib)))) diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm index e913c25904..0555d831e3 100644 --- a/gnu/packages/gps.scm +++ b/gnu/packages/gps.scm @@ -193,7 +193,7 @@ coordinates as well as partial support for adjustments in global coordinate syst ;; Use lrelease to convert TS translation files into QM files. (lambda* (#:key inputs outputs #:allow-other-keys) (for-each (lambda (file) - (system* "lrelease" file)) + (invoke "lrelease" file)) (find-files "lang" "\\.ts")) (substitute* "src/config.h" (("/usr/share/gpxsee") diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 439170c007..52f7ff3ba6 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -373,7 +373,7 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.") (define-public openimageio (package (name "openimageio") - (version "1.6.15") + (version "1.7.19") (source (origin (method url-fetch) (uri (string-append "https://github.com/OpenImageIO/oiio/" @@ -381,7 +381,7 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "144crq0205d0w5aq4iglh2rhzf54a8rv3pksy6d533b75w5d7rq7")))) + "1qlmfhvl2wva4aifyiq7c4sdy61ddl7wykwvlpfys9p701xghvj7")))) (build-system cmake-build-system) ;; FIXME: To run all tests successfully, test image sets from multiple ;; third party sources have to be present. For details see diff --git a/gnu/packages/groovy.scm b/gnu/packages/groovy.scm index 512f9c9edb..aaa524b1ba 100644 --- a/gnu/packages/groovy.scm +++ b/gnu/packages/groovy.scm @@ -1107,7 +1107,7 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST)."))) "groovy-jmx" "groovy-json" "groovy-jsr223" "groovy-nio" "groovy-servlet" "groovy-sql" "groovy-swing" "groovy-templates" "groovy-testng" - "java-commons-cli" "java-asm" + "groovy-xml" "java-commons-cli" "java-asm" "java-classpathx-servletapi" "java-xstream" "java-jansi" "java-jline-2")) ;; antlr.jar is present twice in antlr2. Symlink doesn't like @@ -1140,6 +1140,7 @@ and modify groovy's @dfn{Abstract Syntax Tree} (AST)."))) ("groovy-swing" ,groovy-swing) ("groovy-templates" ,groovy-templates) ("groovy-testng" ,groovy-testng) + ("groovy-xml" ,groovy-xml) ("java-commons-cli" ,java-commons-cli) ("java-asm" ,java-asm) ("java-classpathx-servletapi" ,java-classpathx-servletapi) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index dfe982c803..76346f6bb2 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -284,7 +284,7 @@ functions which were removed.") (version "1.4.2") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/ganv-" + (uri (string-append "https://download.drobilla.net/ganv-" version ".tar.bz2")) (sha256 (base32 @@ -309,7 +309,7 @@ functions which were removed.") (native-inputs `(("glib" ,glib "bin") ; for glib-genmarshal, etc. ("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/ganv/") + (home-page "https://drobilla.net/software/ganv/") (synopsis "GTK+ widget for interactive graph-like environments") (description "Ganv is an interactive GTK+ widget for interactive “boxes and lines” or @@ -328,7 +328,7 @@ diagrams.") (source (origin (method git-fetch) (uri (git-reference - (url "http://git.drobilla.net/ganv.git") + (url "https://git.drobilla.net/ganv.git") (commit commit))) (file-name (git-file-name name version)) (sha256 @@ -1416,7 +1416,7 @@ information.") (define-public gtk-doc (package (name "gtk-doc") - (version "1.25") + (version "1.27") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -1424,12 +1424,30 @@ information.") name "-" version ".tar.xz")) (sha256 (base32 - "0hpxcij9xx9ny3gs9p0iz4r8zslw8wqymbyababiyl7603a6x90y")))) + "0vwsdl61nvnmqswlz5j9m4hg7qirhazwcikcnqf9nx0c13vx6sz2")))) (build-system gnu-build-system) (arguments `(#:parallel-tests? #f #:phases (modify-phases %standard-phases + (add-after 'unpack 'patch-gtk-doc-scan + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "gtk-doc.xsl" + (("http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl") + (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl) + "/html/chunk.xsl"))) + #t)) + (add-after 'patch-gtk-doc-scan 'patch-test-out + (lambda _ + ;; sanity.sh counts the number of status lines. Since our + ;; texlive regenerates the fonts every time and the font + ;; generator metafont outputs a lot of extra lines, this + ;; test would always fail. Disable it for now. + (substitute* "tests/Makefile.in" + (("empty.sh sanity.sh") "empty.sh")) + #t)) (add-before 'build 'set-HOME (lambda _ ;; FIXME: dblatex with texlive-union does not find the built @@ -1450,7 +1468,15 @@ information.") (string-append (car (find-files (assoc-ref inputs "docbook-xsl") "^catalog.xml$")) " \"http://docbook.sourceforge.net/release/xsl/"))) - #t))) + #t)) + (add-after 'install 'wrap-executables + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each (lambda (prog) + (wrap-program prog + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))))) + (find-files (string-append out "/bin"))) + #t)))) #:configure-flags (list (string-append "--with-xml-catalog=" (assoc-ref %build-inputs "docbook-xml") @@ -1469,7 +1495,8 @@ information.") ("docbook-xml" ,docbook-xml-4.3) ("docbook-xsl" ,docbook-xsl) ("source-highlight" ,source-highlight) - ("glib" ,glib))) + ("glib" ,glib) + ("python-six" ,python-six))) (home-page "http://www.gtk.org/gtk-doc/") (synopsis "Documentation generator from C source code") (description diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index a88d24885f..81b673c7e2 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -767,14 +767,23 @@ The library is shipped with documentation in Info format and usage examples.") (define-public guile-lib (package (name "guile-lib") - (version "0.2.5.1") + (version "0.2.6") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/guile-lib/guile-lib-" version ".tar.gz")) (sha256 (base32 - "19q420i3is3d4jmkdqs5y7ir7ipp4s795saflqgwf6617cx2zpj4")))) + "0n1lf5bsr5s9gqi07sdfkl1hpin6dzvkcj1xa63jd1w8aglwv8r1")) + (modules '((guix build utils))) + (snippet + '(begin + ;; 'pre-inst-env' sets an incorrect load path, missing the + ;; "/src" bit. Add it. + (substitute* "pre-inst-env.in" + (("abs_top_(builddir|srcdir)=([[:graph:]]+)" _ dir value) + (string-append "abs_top_" dir "=" value "/src"))) + #t)))) (build-system gnu-build-system) (arguments '(#:make-flags @@ -835,7 +844,8 @@ for Guile\".") "AC_SUBST([GUILE_EFFECTIVE_VERSION])\n"))) (substitute* '("Makefile.am" "json/Makefile.am") (("moddir[[:blank:]]*=.*/share/guile/site" all) - (string-append all "/@GUILE_EFFECTIVE_VERSION@"))))))) + (string-append all "/@GUILE_EFFECTIVE_VERSION@"))) + #t)))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -1206,58 +1216,31 @@ Guile's foreign function interface.") (deprecated-package "guile2.2-gdbm-ffi" guile-gdbm-ffi)) (define-public guile-sqlite3 - (let ((commit "10c13a7e02ab1655c8a758e560cafc9d6eff26f4") - (revision "4")) - (package - (name "guile-sqlite3") - (version (git-version "0.0" revision commit)) - - ;; XXX: This used to be available read-only at - ;; but it - ;; eventually disappeared, so we have our own copy here. - (home-page "https://notabug.org/civodul/guile-sqlite3.git") - (source (origin - (method git-fetch) - (uri (git-reference - (url home-page) - (commit commit))) - (sha256 - (base32 - "0nhhswpd7nb2f0gfr55fzcc2xm3l2xx4rbljsd1clrm8fj2d7q9d")) - (file-name (string-append name "-" version "-checkout")) - (modules '((guix build utils))) - (snippet - ;; Upgrade 'Makefile.am' to the current way of doing things. - '(begin - (substitute* "Makefile.am" - (("TESTS_ENVIRONMENT") - "TEST_LOG_COMPILER")) - #t)))) - - (build-system gnu-build-system) - (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("pkg-config" ,pkg-config))) - (inputs - `(("guile" ,guile-2.2) - ("sqlite" ,sqlite))) - (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi")))) - (add-before 'build 'set-sqlite3-file-name - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "sqlite3.scm" - (("\"libsqlite3\"") - (string-append "\"" (assoc-ref inputs "sqlite") - "/lib/libsqlite3\""))) - #t))))) - (synopsis "Access SQLite databases from Guile") - (description - "This package provides Guile bindings to the SQLite database system.") - (license license:gpl3+)))) + (package + (name "guile-sqlite3") + (version "0.1.0") + (home-page "https://notabug.org/civodul/guile-sqlite3.git") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (sha256 + (base32 + "1nv8j7wk6b5n4p22szyi8lv8fs31rrzxhzz16gyj8r38c1fyp9qp")) + (file-name (string-append name "-" version "-checkout")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (inputs + `(("guile" ,guile-2.2) + ("sqlite" ,sqlite))) + (synopsis "Access SQLite databases from Guile") + (description + "This package provides Guile bindings to the SQLite database system.") + (license license:gpl3+))) (define-public haunt (package @@ -1786,7 +1769,7 @@ is no support for parsing block and inline level HTML.") (define-public guile-bytestructures (package (name "guile-bytestructures") - (version "1.0.1") + (version "1.0.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/TaylanUB/scheme-bytestructures" @@ -1794,7 +1777,7 @@ is no support for parsing block and inline level HTML.") "/bytestructures-" version ".tar.gz")) (sha256 (base32 - "1lnfcy65mqj823lamy2n2vaghdz0g7mj011bgnhmd6hwpnaidnh2")))) + "0xf6s8gd3656j8k2ar6y7i62r68azawyzxhsagsk8nvldnrs1r18")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -2002,20 +1985,6 @@ is not available for Guile 2.0.") "0z1dvn0scx59pbgjkpacam7p5n7630z4qm8fazim7ixq9xv3s8wx")) (file-name (git-file-name name version)))) (build-system gnu-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - ;; FIXME: On i686, bytestructures miscalculates the offset - ;; of the 'old-file' and 'new-file' fields within the - ;; '%diff-delta' structure. See - ;; . - ,@(if (string=? (%current-system) "x86_64-linux") - '() - '((add-before 'check 'skip-tests - (lambda _ - (substitute* "Makefile" - (("tests/status\\.scm") - "")) - #t))))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -2131,8 +2100,8 @@ It has a nice, simple s-expression based syntax.") (license license:gpl3+))) (define-public guile-simple-zmq - (let ((commit "d76657aeb1cd10ef8136edc06bb90999914c7c3c") - (revision "0")) + (let ((commit "1f3b7c0b9b249c6fde8e8a632b252d8a1b794424") + (revision "1")) (package (name "guile-simple-zmq") (version (git-version "0.0.0" revision commit)) @@ -2144,7 +2113,7 @@ It has a nice, simple s-expression based syntax.") (commit commit))) (sha256 (base32 - "1w73dy5gpyv33jn34dqlkqpwh9w4y8wm6hgvbpb3wbp6xsa2mk4z")) + "0nj2pd5bsmmgd3c54wh4sixfhmsv1arsq7yam2d7487h3n9q57r7")) (file-name (git-file-name name version)))) (build-system trivial-build-system) (arguments @@ -2209,9 +2178,10 @@ It has a nice, simple s-expression based syntax.") file go-file))))) (list scm-file)) #t)))) + (inputs + `(("guile" ,guile-2.2))) (propagated-inputs - `(("guile" ,guile-2.2) - ("zeromq" ,zeromq))) + `(("zeromq" ,zeromq))) (home-page "https://github.com/jerry40/guile-simple-zmq") (synopsis "Guile wrapper over ZeroMQ library") (description diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 5abcdf9a2a..b2e67e52f9 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -60,7 +60,7 @@ (define-public feh (package (name "feh") - (version "2.26.3") + (version "2.27") (home-page "https://feh.finalrewind.org/") (source (origin (method url-fetch) @@ -68,7 +68,7 @@ name "-" version ".tar.bz2")) (sha256 (base32 - "08aagymgajcvciagwy2zdxhicvdfnjmd2xyx9bqjy7l1n16ydwrz")))) + "0kn6cka9m76697i495npd60ad64jnfnzv5z6znzyr0vlxx2nhcmg")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 6b7f41c906..a330a31599 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -394,6 +394,7 @@ extracting icontainer icon files.") (define-public libtiff (package (name "libtiff") + (replacement libtiff/fixed) (version "4.0.9") (source (origin @@ -426,6 +427,17 @@ collection of tools for doing simple manipulations of TIFF images.") "See COPYRIGHT in the distribution.")) (home-page "http://www.simplesystems.org/libtiff/"))) +(define libtiff/fixed + (package + (inherit libtiff) + (source + (origin + (inherit (package-source libtiff)) + (patches + (append (origin-patches (package-source libtiff)) + (search-patches "libtiff-CVE-2018-8905.patch" + "libtiff-CVE-2018-10963.patch"))))))) + (define-public leptonica (package (name "leptonica") @@ -487,8 +499,9 @@ arithmetic ops.") (source (origin (method url-fetch) - (uri (string-append "http://downloads.ghostscript.com/public/" name "/" - name "-" version ".tar.gz")) + (uri + (string-append "https://github.com/ArtifexSoftware/ghostpdl-downloads/" + "releases/download/gs922/" name "-" version ".tar.gz")) (sha256 (base32 "0k01hp0q4275fj4rbr1gy64svfraw5w7wvwl08yjhvsnpb1rid11")) (patches (search-patches "jbig2dec-ignore-testtest.patch")))) @@ -504,7 +517,7 @@ This is a decoder only implementation, and currently is in the alpha stage, meaning it doesn't completely work yet. However, it is maintaining parity with available encoders, so it is useful for real work.") - (home-page "http://www.ghostscript.com/jbig2dec.html") + (home-page "https://jbig2dec.com") (license license:gpl2+))) (define-public openjpeg diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index e80da6d848..24e62142b9 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -47,14 +47,14 @@ ;; The 7 release series has an incompatible API, while the 6 series is still ;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; users are ready for the 7-series API. - (version "6.9.9-43") + (version "6.9.10-3") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "09vfxb1ljfma7mvkcqp17bs7adlrfh6kc6k9hifkhgxf51vr7hk6")))) + "0njq3vp0f3d5992jsah5nhbc5id2bnl7myhdw669k0vmc55mmlcj")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 993102f272..5a1df6d600 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -133,12 +133,11 @@ irssi, but graphical.") (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (setenv "CONFIG_SHELL" (which "bash")) - (zero? - (system* "./configure" - (string-append "--prefix=" out) - (string-append "--with-proxy") - (string-append "--with-socks") - (string-append "--with-bot"))))))))) + (invoke "./configure" + (string-append "--prefix=" out) + (string-append "--with-proxy") + (string-append "--with-socks") + (string-append "--with-bot")))))))) (inputs `(("glib" ,glib) ("ncurses" ,ncurses) @@ -405,21 +404,20 @@ other enhancements and bug fixes.") '()) (setenv "CONFIG_SHELL" (which "bash")) (setenv "SHELL" (which "bash")) - (zero? - (system* "./configure" - (string-append "--prefix=" out) - "--with-ipv6" "--with-libarchive" - ;; We use libressl because openssl does not come - ;; with the lib/libssl.a which is needed for epic5. - ;; XXX: No matter which implementation is chosen, - ;; epic5 fails to connect to tls ports of roundrobin - ;; irc networks. This however is believed to be an - ;; protocol issue at epic5 related to ircd. - (string-append "--with-ssl=" - (assoc-ref %build-inputs "libressl")) - (string-append "--with-tcl=" - (assoc-ref %build-inputs "tcl") - "/lib/tclConfig.sh"))))))))) + (invoke "./configure" + (string-append "--prefix=" out) + "--with-ipv6" "--with-libarchive" + ;; We use libressl because openssl does not come + ;; with the lib/libssl.a which is needed for epic5. + ;; XXX: No matter which implementation is chosen, + ;; epic5 fails to connect to tls ports of roundrobin + ;; irc networks. This however is believed to be an + ;; protocol issue at epic5 related to ircd. + (string-append "--with-ssl=" + (assoc-ref %build-inputs "libressl")) + (string-append "--with-tcl=" + (assoc-ref %build-inputs "tcl") + "/lib/tclConfig.sh")))))))) (inputs `(("libressl" ,libressl) ("ncurses" ,ncurses) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 678cbee188..64d82439b2 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -2629,7 +2629,16 @@ documentation tools.") "code.google.com/jarjar/jarjar-src-" version ".zip")) (sha256 (base32 - "1v8irhni9cndcw1l1wxqgry013s2kpj0qqn57lj2ji28xjq8ndjl")))) + "1v8irhni9cndcw1l1wxqgry013s2kpj0qqn57lj2ji28xjq8ndjl")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete bundled thirds-party jar archives. + ;; TODO: unbundle maven-plugin-api. + (delete-file "lib/asm-4.0.jar") + (delete-file "lib/asm-commons-4.0.jar") + (delete-file "lib/junit-4.8.1.jar") + #t)))) (build-system ant-build-system) (arguments `(;; Tests require junit, which ultimately depends on this package. @@ -2637,6 +2646,26 @@ documentation tools.") #:build-target "jar" #:phases (modify-phases %standard-phases + (add-before 'build 'do-not-use-bundled-asm + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "build.xml" + (("") + (string-append "")) + (("") "") + (("lib/asm-commons-4.0.jar") + (string-append (assoc-ref inputs "java-asm-bootstrap") + "/share/java/asm-6.0.jar")) + (("") + (string-append "" + "" + "" + ""))) + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((target (string-append (assoc-ref outputs "out") @@ -2644,6 +2673,8 @@ documentation tools.") (install-file (string-append "dist/jarjar-" ,version ".jar") target)) #t))))) + (inputs + `(("java-asm-bootstrap" ,java-asm-bootstrap))) (native-inputs `(("unzip" ,unzip))) (home-page "https://code.google.com/archive/p/jarjar/") @@ -3262,6 +3293,39 @@ Compiler component."))) This component decrypts a string passed to it.") (license license:asl2.0))) +(define-public java-plexus-cli + (package + (name "java-plexus-cli") + (version "1.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sonatype/plexus-cli") + (commit "a776afa6bca84e5107bedb69440329cdb24ed645"))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "0xjrlay605rypv3zd7y24vlwf0039bil3n2cqw54r1ddpysq46vx")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "plexus-cli.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:test-dir "src/test")) + (inputs + `(("java-commons-cli" ,java-commons-cli) + ("java-plexus-container-default" ,java-plexus-container-default) + ("java-plexus-classworlds" ,java-plexus-classworlds))) + (native-inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("java-junit" ,java-junit) + ("java-guava" ,java-guava))) + (home-page "https://codehaus-plexus.github.io/plexus-cli") + (synopsis "CLI building library for plexus") + (description "This package is a library to help creating CLI around +Plexus components.") + (license license:asl2.0))) + (define-public java-sisu-build-api (package (name "java-sisu-build-api") @@ -3550,7 +3614,7 @@ complex transformations and code analysis tools.") `(("java-aqute-bndlib" ,java-aqute-bndlib-bootstrap) ("java-aqute-libg" ,java-aqute-libg-bootstrap) ,@(delete `("java-aqute-bndlib" ,java-aqute-bndlib) - (delete `("java-aqute-libg", java-aqute-libg) + (delete `("java-aqute-libg" ,java-aqute-libg) (package-inputs java-asm))))))) (define-public java-cglib @@ -3999,7 +4063,9 @@ are many features, including: "commons-collections-" version "-src.tar.gz")) (sha256 (base32 - "055r51a5lfc3z7rkxnxmnn1npvkvda7636hjpm4qk7cnfzz98387")))) + "055r51a5lfc3z7rkxnxmnn1npvkvda7636hjpm4qk7cnfzz98387")) + (patches + (search-patches "java-commons-collections-fix-java8.patch")))) (arguments (substitute-keyword-arguments (package-arguments java-commons-collections4) ((#:phases phases) @@ -6967,22 +7033,53 @@ it manages project dependencies, gives diffs jars, and much more.") (name "java-aqute-libg") (arguments `(#:jar-name "java-aqute-libg.jar" - #:source-dir "aQute.libg/src" - #:tests? #f)); FIXME: tests are in "aQute.libg/test", not in a java directory + ;; The build fails when source/target more recent than 1.7. This + ;; is a known issue. See: https://github.com/bndtools/bnd/issues/1327 + ;; + ;; It is closed as won't fix. There is no way to change the source + ;; so that it works on 1.8, and still works on 1.6, the upstream + ;; target. It work fine on 1.7, so we use 1.7. + #:make-flags (list "-Dant.build.javac.source=1.7" + "-Dant.build.javac.target=1.7") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + ;; Change to aQute.libg directory, so that the relative + ;; paths in the tests aren't broken. + (lambda _ + (chdir "aQute.libg") + #t)) + (add-before 'check 'create-test-directory + ;; Copy the test directory to test/java, since that's where + ;; ant-build-system's default project in build.xml expects to find + ;; the test classes. Leave a copy in the original place to not + ;; break paths in tests. + (lambda _ + (mkdir "src/test") + (copy-recursively "test" "src/test/java") + #t))))) (inputs `(("slf4j" ,java-slf4j-api) ("osgi-annot" ,java-osgi-annotation) ("java-osgi-cmpn" ,java-osgi-cmpn) - ("osgi" ,java-osgi-core))))) + ("osgi" ,java-osgi-core))) + (native-inputs + `(("hamcrest" ,java-hamcrest-core) + ("java-junit" ,java-junit))))) (define java-aqute-libg-bootstrap (package (inherit java-aqute-libg) (name "java-aqute-libg-bootstrap") + (arguments + ;; Disable tests, at this stage of bootstrap we have no test frameworks. + (substitute-keyword-arguments (package-arguments java-aqute-libg) + ((#:tests? _ #f) #f))) (inputs `(("slf4j-bootstrap" ,java-slf4j-api-bootstrap) ,@(delete `("slf4j" ,java-slf4j-api) - (package-inputs java-aqute-libg)))))) + (package-inputs java-aqute-libg)))) + (native-inputs '()))) (define-public java-aqute-bndlib (package @@ -10153,3 +10250,32 @@ This module can be assimilated to a significantly improved version of log4j. Moreover, @code{logback-classic} natively implements the slf4j API so that you can readily switch back and forth between logback and other logging frameworks such as log4j or @code{java.util.logging} (JUL)."))) + +(define-public java-qdox + (package + (name "java-qdox") + ; Newer version exists, but this version is required by java-plexus-component-metadata + (version "2.0-M2") + (source (origin + (method url-fetch) + ;; 2.0-M4, -M5 at https://github.com/paul-hammant/qdox + ;; Older releases at https://github.com/codehaus/qdox/ + ;; Note: The release at maven is pre-generated. The release at + ;; github requires jflex. + (uri (string-append "http://central.maven.org/maven2/" + "com/thoughtworks/qdox/qdox/" version + "/qdox-" version "-sources.jar")) + (sha256 + (base32 + "10xxrcaicq6axszcr2jpygisa4ch4sinyx5q7kqqxv4lknrmxp5x")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "qdox.jar" + #:tests? #f)); no tests + (home-page "http://qdox.codehaus.org/") + (synopsis "Parse definitions from Java source files") + (description "QDox is a high speed, small footprint parser for extracting +class/interface/method definitions from source files complete with JavaDoc +@code{@@tags}. It is designed to be used by active code generators or +documentation tools.") + (license license:asl2.0))) diff --git a/gnu/packages/kerberos.scm b/gnu/packages/kerberos.scm index 7b16da781e..cb14f765e2 100644 --- a/gnu/packages/kerberos.scm +++ b/gnu/packages/kerberos.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2012, 2017 Ludovic Courtès ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2017 Alex Vong ;;; ;;; This file is part of GNU Guix. ;;; @@ -136,29 +137,26 @@ secure manner through client-server mutual authentication via tickets.") (define-public heimdal (package (name "heimdal") - (version "1.5.3") + (version "7.5.0") (source (origin (method url-fetch) - (uri (string-append "http://www.h5l.org/dist/src/heimdal-" - version ".tar.gz")) + (uri (string-append + "https://github.com/heimdal/heimdal/releases/download/" + "heimdal-" version "/" "heimdal-" version ".tar.gz")) (sha256 (base32 - "19gypf9vzfrs2bw231qljfl4cqc1riyg0ai0xmm1nd1wngnpphma")) - (patches (search-patches "heimdal-CVE-2017-6594.patch" - "heimdal-CVE-2017-11103.patch")) + "1bdc682in55ygrxmhncs7cf4s239apcblci3z8i80wnc1w1s18n5")) (modules '((guix build utils))) (snippet '(begin (substitute* "configure" (("User=.*$") "User=Guix\n") + (("Host=.*$") "Host=GNU") (("Date=.*$") "Date=2017\n")) #t)))) (build-system gnu-build-system) (arguments '(#:configure-flags (list - ;; Work around a linker error. - "CFLAGS=-pthread" - ;; Avoid 7 MiB of .a files. "--disable-static" @@ -168,22 +166,40 @@ secure manner through client-server mutual authentication via tickets.") (assoc-ref %build-inputs "readline") "/lib") (string-append "--with-readline-include=" - (assoc-ref %build-inputs "readline") "/include")) + (assoc-ref %build-inputs "readline") "/include") + + ;; Do not build sqlite. + (string-append + "--with-sqlite3=" + (assoc-ref %build-inputs "sqlite"))) #:phases (modify-phases %standard-phases - (add-before 'check 'skip-tests + (add-before 'configure 'pre-configure (lambda _ - ;; The test simply runs 'ftp --version && ftp --help' - ;; but that fails in the chroot because 'ftp' tries to - ;; do a service lookup before printing the help/version. - (substitute* "appl/ftp/ftp/Makefile.in" - (("^CHECK_LOCAL =.*") - "CHECK_LOCAL = no-check-local\n")) - #t))))) - (native-inputs `(("e2fsprogs" ,e2fsprogs))) ;for 'compile_et' + (substitute* '("appl/afsutil/pagsh.c" + "tools/Makefile.in") + (("/bin/sh") (which "sh"))) + #t)) + (add-before 'check 'pre-check + (lambda _ + ;; For 'getxxyyy-test'. + (setenv "USER" (passwd:name (getpwuid (getuid)))) + + ;; Skip 'db' and 'kdc' tests for now. + ;; FIXME: figure out why 'kdc' tests fail. + (with-output-to-file "tests/db/have-db.in" + (lambda () + (format #t "#!~a~%exit 1~%" (which "sh")))) + #t))) + ;; Tests fail when run in parallel. + #:parallel-tests? #f)) + (native-inputs `(("e2fsprogs" ,e2fsprogs) ;for 'compile_et' + ("texinfo" ,texinfo) + ("unzip" ,unzip))) ;for tests (inputs `(("readline" ,readline) ("bdb" ,bdb) - ("e2fsprogs" ,e2fsprogs))) ;for libcom_err + ("e2fsprogs" ,e2fsprogs) ;for libcom_err + ("sqlite" ,sqlite))) (home-page "http://www.h5l.org/") (synopsis "Kerberos 5 network authentication") (description diff --git a/gnu/packages/libedit.scm b/gnu/packages/libedit.scm index 9f6f1d05ce..095749e868 100644 --- a/gnu/packages/libedit.scm +++ b/gnu/packages/libedit.scm @@ -28,7 +28,7 @@ (define-public libedit (package (name "libedit") - (version "20170329-3.1") + (version "20180525-3.1") (source (origin (method url-fetch) @@ -36,7 +36,7 @@ "/" name "-" version ".tar.gz")) (sha256 (base32 - "1gnlgl0x8g9ky59s70nriy5gv47676d1s4ypvbv8y11apl7xkwli")))) + "05iicng4kag5hxdc7adbyj1gm3qbmvcc33m9cyx5gys0s67yl6y4")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses))) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 1faab302a0..33ecdc47f0 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2017, 2018 Ludovic Courtès ;;; Copyright © 2017, 2018 Marius Bakke ;;; Copyright © 2017 Rutger Helling +;;; Copyright © 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -78,20 +79,21 @@ (define-public ixion (package (name "ixion") - (version "0.12.2") + (version "0.13.0") (source (origin - (method url-fetch) - (uri (string-append "http://kohei.us/files/ixion/src/libixion-" - version ".tar.xz")) - (sha256 (base32 - "1bnsqbxpbijwbg42rrqq6mz06wvcxjpl0gjdzwyilkmv6s400i4b")))) + (method url-fetch) + (uri (string-append "http://kohei.us/files/ixion/src/libixion-" + version ".tar.xz")) + (sha256 + (base32 + "1rf76drzg593jzswwnh8kr2jangp8ylizqjspx57rld25g2n1qss")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) - (inputs - `(("mdds" ,mdds) - ("python" ,python))) + (inputs + `(("mdds" ,mdds) + ("python" ,python))) (home-page "https://gitlab.com/ixion/ixion") (synopsis "General purpose formula parser and interpreter") (description "Ixion is a library for calculating the results of formula @@ -103,22 +105,23 @@ their dependencies automatically upon calculation.") (define-public orcus (package (name "orcus") - (version "0.12.1") + (version "0.13.4") (source (origin - (method url-fetch) - (uri (string-append "http://kohei.us/files/" name "/src/lib" - name "-" version ".tar.xz")) - (sha256 (base32 - "171bmqa9hkk4xygz20qda5900rs4kq9fgl424ldkxlj4d733dffi")))) + (method url-fetch) + (uri (string-append "http://kohei.us/files/" name "/src/lib" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1r42waglxwmvvwl20fy49vzgfp1sis4j703f81iswzdyzqalq75p")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) - (inputs - `(("ixion" ,ixion) - ("mdds" ,mdds) - ("python" ,python) - ("zlib" ,zlib))) + (inputs + `(("ixion" ,ixion) + ("mdds" ,mdds) + ("python" ,python) + ("zlib" ,zlib))) (home-page "https://gitlab.com/orcus/orcus") (synopsis "File import filter library for spreadsheet documents") (description "Orcus is a library that provides a collection of standalone @@ -224,6 +227,34 @@ cellphones), TCR (simple compressed text format), TealDoc, zTXT, ZVR (simple compressed text format).") (license mpl2.0))) +(define-public libepubgen + (package + (name "libepubgen") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/libepubgen/libepubgen-" + version "/libepubgen-" version ".tar.xz")) + (sha256 + (base32 + "1b8mc9zzrqypj1v9zdy3ybc48pw0rfr06cyi7n6grvybjjwq9q03")))) + (build-system gnu-build-system) + (native-inputs + `(("cppunit" ,cppunit) + ("pkg-config" ,pkg-config))) + (inputs + `(("libxml2" ,libxml2) + ("boost" ,boost))) + (propagated-inputs ; in Requires field of .pkg + `(("librevenge" ,librevenge))) + (home-page "https://sourceforge.net/projects/libepubgen/") + (synopsis "EPUB generator library for librevenge") + (description "libepubgen is an EPUB generator for librevenge. It supports +librevenge's text document interface and--currently in a very limited +way--presentation and vector drawing interfaces.") + (license mpl2.0))) + (define-public libwpg (package (name "libwpg") @@ -835,10 +866,37 @@ and to return information on pronunciations, meanings and synonyms.") (license (non-copyleft "file://COPYING" "See COPYING in the distribution.")))) +(define-public libqxp + (package + (name "libqxp") + (version "0.0.1") + (source (origin + (method url-fetch) + (uri (string-append "https://dev-www.libreoffice.org/src/libqxp/" + "libqxp-" version ".tar.xz")) + (sha256 + (base32 + "0wswz49y0lqwqw2nj9j7jaj5ag88hapcz8czgkxax57zhihpy9cc")))) + (build-system gnu-build-system) + (inputs + `(("boost" ,boost) + ("icu4c" ,icu4c) + ("zlib" ,zlib))) + (native-inputs + `(("cppunit" ,cppunit) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("librevenge" ,librevenge))) ; mentioned in Requires field + (home-page "https://www.libreoffice.org") + (synopsis "Library and tools for the QuarkXPress file format") + (description "libqxp is a library and a set of tools for reading and +converting QuarkXPress file format. It supports versions 3.1 to 4.1.") + (license mpl2.0))) + (define-public libreoffice (package (name "libreoffice") - (version "5.4.7.2") + (version "6.0.5.1") (source (origin (method url-fetch) @@ -848,7 +906,8 @@ and to return information on pronunciations, meanings and synonyms.") (version-prefix version 3) "/libreoffice-" version ".tar.xz")) (sha256 (base32 - "0s9s4nhp2whwxis54jbxrf1dwpnpl95b9781d1pdj4xk5z9v90fv")))) + "0vnmb231hyhxm7klaqd8vp3rmvix145bq8iqzv19jgl1yaqkxl21")) + (patches (search-patches "libreoffice-icu.patch")))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) @@ -880,6 +939,7 @@ and to return information on pronunciations, meanings and synonyms.") ("libcmis" ,libcmis) ("libjpeg-turbo" ,libjpeg-turbo) ("libe-book" ,libe-book) + ("libepubgen" ,libepubgen) ("libetonyek" ,libetonyek) ("libexttextcat" ,libexttextcat) ("libfreehand" ,libfreehand) @@ -890,6 +950,7 @@ and to return information on pronunciations, meanings and synonyms.") ("libmwaw" ,libmwaw) ("libodfgen" ,libodfgen) ("libpagemaker" ,libpagemaker) + ("libqxp" ,libqxp) ("libstaroffice" ,libstaroffice) ("libvisio" ,libvisio) ("libwpg" ,libwpg) @@ -927,34 +988,23 @@ and to return information on pronunciations, meanings and synonyms.") (modify-phases %standard-phases (add-before 'configure 'prepare-src (lambda* (#:key inputs #:allow-other-keys) - (let ((gpgme (assoc-ref inputs "gpgme"))) - (substitute* - "sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx" - ;; This header was renamed in Poppler 0.62.0. - (("UTF8.h") "UnicodeMapFuncs.h") - ;; And mapUCS2() was renamed to mapUTF16(). - (("UCS2") "UTF16")) - (substitute* + (substitute* (list "sysui/CustomTarget_share.mk" "solenv/gbuild/gbuild.mk" "solenv/gbuild/platform/unxgcc.mk") - (("/bin/sh") (which "sh"))) + (("/bin/sh") (which "sh"))) - ;; GPGME++ headers are installed in a gpgme++ subdirectory, - ;; but files in "xmlsecurity/source/gpg/" expect to find them - ;; on the include path without a prefix. - (substitute* "xmlsecurity/Library_xsec_xmlsec.mk" - (("\\$\\$\\(INCLUDE\\)") - (string-append "$$(INCLUDE) -I" gpgme "/include/gpgme++"))) + ;; GPGME++ headers are installed in a gpgme++ subdirectory, but + ;; files in "xmlsecurity/source/gpg/" and elsewhere expect to + ;; find them on the include path without a prefix. + (substitute* '("xmlsecurity/Library_xsec_xmlsec.mk" + "comphelper/Library_comphelper.mk") + (("\\$\\$\\(INCLUDE\\)") + (string-append "$$(INCLUDE) -I" + (assoc-ref inputs "gpgme") + "/include/gpgme++"))) - ;; XXX: When GTK2 is disabled, one header file is not included. - ;; This is likely fixed in later versions. See also - ;; . - (substitute* "vcl/unx/gtk3/gtk3gtkframe.cxx" - (("#include ") - "#include \n#include ")) - - #t))) + #t)) (add-after 'install 'bin-and-desktop-install ;; Create 'soffice' and 'libreoffice' symlinks to the executable ;; script. diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm index 62c936c191..e4b8bbbbed 100644 --- a/gnu/packages/libusb.scm +++ b/gnu/packages/libusb.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2016 Theodoros Foradis ;;; Copyright © 2017 Jonathan Brielmaier ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Vagrant Cascadian ;;; ;;; This file is part of GNU Guix. ;;; @@ -214,6 +215,49 @@ with usb4java.") implementing @code{javax.usb} (JSR-80).") (license expat))) +(define-public python-libusb1 + (package + (name "python-libusb1") + (version "1.6.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "libusb1" version)) + (sha256 + (base32 + "03b7xrz8vqg8w0za5r503jhcmbd1ls5610jcja1rqz833nf0v4wc")))) + (build-system python-build-system) + (arguments + `(#:modules ((srfi srfi-1) + (guix build utils) + (guix build python-build-system)) + #:phases + (modify-phases %standard-phases + (add-before 'install-license-files 'remove-incorrect-license + (lambda* (#:key out #:allow-other-keys) + ;; Was relicensed to LGPL 2.1+, but old COPYING file still left + ;; in source. Remove it so it does not get installed. + (delete-file "COPYING") + #t)) + (add-after 'unpack 'fix-libusb-reference + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "usb1/libusb1.py" + (("libusb_path = ctypes.util.find_library\\(base_name\\)") + (string-append + "libusb_path = \"" + (find (negate symbolic-link?) + (find-files (assoc-ref inputs "libusb") + "^libusb.*\\.so\\..*")) + "\""))) + #t))))) + (inputs `(("libusb" ,libusb))) + (home-page "https://github.com/vpelletier/python-libusb1") + (synopsis "Pure-python wrapper for libusb-1.0") + (description "Libusb is a library that gives applications easy access to +USB devices on various operating systems. This package provides a Python +wrapper for accessing libusb-1.0.") + (license lgpl2.1+))) + (define-public python-pyusb (package (name "python-pyusb") diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index cc1ee48792..ff3024d574 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -50,6 +50,7 @@ #:use-module (gnu packages admin) #:use-module (gnu packages algebra) #:use-module (gnu packages attr) + #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) #:use-module (gnu packages base) @@ -295,6 +296,12 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (or (%current-target-system) (%current-system))) ((or "x86_64" "i386") `(("gcc" ,gcc-7))) + ("arm64" + ;; Work around a binutils 2.30 bug where some kernel symbols would + ;; be incorrectly marked as relocatable: + ;; . + `(("ld-wrapper" ,(make-ld-wrapper "ld-wrapper" + #:binutils binutils/fixed)))) (_ '())) ,@(match (and configuration-file @@ -395,8 +402,8 @@ It has been modified to remove all non-free binary blobs.") ;; supports qemu "virt" machine and possibly a large number of ARM boards. ;; See : https://wiki.debian.org/DebianKernel/ARMMP. -(define %linux-libre-version "4.17") -(define %linux-libre-hash "0abbqrq96kn97jr02mf4ahqg7hl9vhq95c1l2z0s7jqrmhv1n8pb") +(define %linux-libre-version "4.17.3") +(define %linux-libre-hash "06mjbs3i0xq1h1cgr6xldr6a8rxsy30mf86wp3n2ff6l5v78iw2q") (define-public linux-libre (make-linux-libre %linux-libre-version @@ -404,8 +411,8 @@ It has been modified to remove all non-free binary blobs.") %linux-compatible-systems #:configuration-file kernel-config)) -(define %linux-libre-4.14-version "4.14.48") -(define %linux-libre-4.14-hash "011lkq30gpvbgvg2p1nw2kqkig9a3qridy678rkx3fpah0ya4rhd") +(define %linux-libre-4.14-version "4.14.52") +(define %linux-libre-4.14-hash "0lx916iw33n32h1fca59r7mh6l2smyml6igvzhimcah62hqx4rk8") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version @@ -414,14 +421,14 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.106" - "0wgyv15x2czd4nyw4smzp9923cl1ix7pjcry4zn3y61ivqxbqini" + (make-linux-libre "4.9.110" + "0nzfna9w9a45y521d3dcxkdv66gn38n4pq814rdqazk74qb5macn" %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.135" - "0jdf5yx8b6q4zw7q9k8vv0ky8wlvclr9qz70wgrrvmm5dh1662j9" + (make-linux-libre "4.4.138" + "1030ra5gn24qmx8lsnhr6kfnfm60avzs23r81dl7mvzr5dci8vsl" %intel-compatible-systems #:configuration-file kernel-config)) @@ -914,16 +921,15 @@ Zerofree requires the file system to be unmounted or mounted read-only.") (define-public strace (package (name "strace") - (version "4.22") + (version "4.23") (home-page "https://strace.io") (source (origin (method url-fetch) (uri (string-append home-page "/files/" version "/strace-" version ".tar.xz")) - (patches (search-patches "strace-kernel-4.16.patch")) (sha256 (base32 - "17dkpnsjxmys1ydidm9wcvc3wscsz44fmlxw3dclspn9cj9d1306")))) + "1bcsq2gbpcb81ayryvn56a6kjx42fc21la6qgds35n0xbybacq3q")))) (build-system gnu-build-system) (arguments '(#:phases @@ -1055,7 +1061,7 @@ MIDI functionality to the Linux-based operating system.") ;; TODO: Remove OSS related plugins, they add support to run native ;; ALSA applications on OSS however we do not offer OSS and OSS is ;; obsolete. - (outputs '("out" "pulseaudio")) + (outputs '("out" "pulseaudio" "jack")) (arguments `(#:phases (modify-phases %standard-phases @@ -1063,9 +1069,17 @@ MIDI functionality to the Linux-based operating system.") (lambda* (#:key inputs outputs #:allow-other-keys) ;; Distribute the binaries to the various outputs. (let* ((out (assoc-ref outputs "out")) + (jack (assoc-ref outputs "jack")) + (jacklib (string-append jack "/lib/alsa-lib")) (pua (assoc-ref outputs "pulseaudio")) (pualib (string-append pua "/lib/alsa-lib")) (puaconf (string-append pua "/share/alsa/alsa.conf.d"))) + ;; For jack. + (mkdir-p jacklib) + (for-each (lambda (file) + (rename-file file (string-append jacklib "/" (basename file)))) + (find-files out ".*jack\\.(la|so)")) + ;; For pluseaudio. (mkdir-p puaconf) (mkdir-p pualib) (chdir (string-append out "/share")) @@ -1082,6 +1096,7 @@ MIDI functionality to the Linux-based operating system.") #t)))))) (inputs `(("alsa-lib" ,alsa-lib) + ("jack" ,jack-1) ("speex" ,speex) ; libspeexdsp resampling plugin ("libsamplerate" ,libsamplerate) ; libsamplerate resampling plugin ("ffmpeg" ,ffmpeg) ; libavcodec resampling plugin, a52 plugin @@ -1195,7 +1210,7 @@ that the Ethernet protocol is much simpler than the IP protocol.") (define-public iproute (package (name "iproute2") - (version "4.16.0") + (version "4.17.0") (source (origin (method url-fetch) (uri (string-append @@ -1203,7 +1218,7 @@ that the Ethernet protocol is much simpler than the IP protocol.") version ".tar.xz")) (sha256 (base32 - "02pfalg319jpbjz273ph725br8dnkzpfvi98azi9yd6p1w128p0c")))) + "0vmynikcamfhakvwyk5dsffy0ymgi5mdqiwybdvqfn1ijaq93abg")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no test suite @@ -2995,7 +3010,10 @@ arrays when needed.") (let ((lvm2 (assoc-ref inputs "lvm2")) (udev (assoc-ref inputs "udev"))) (substitute* "Makefile.inc" - (("\\$\\(prefix\\)/usr") "$(prefix)")) + (("\\$\\(prefix\\)/usr") "$(prefix)") + ;; Do not save timestamp to avoid gzip "timestamp + ;; out-of-range" warnings. + (("gzip -9") "gzip -9n")) (substitute* '("kpartx/Makefile" "libmultipath/Makefile") (("/usr/include/libdevmapper.h") (string-append lvm2 "/include/libdevmapper.h")) @@ -3256,6 +3274,7 @@ and copy/paste text in the console and in xterm.") (invoke "make" (string-append "bindir=" staticbin) "install-static"))))) + #:tests? #f ; XXX: require the 'btrfs' kernel module. #:test-target "test" #:parallel-tests? #f)) ; tests fail when run in parallel (inputs `(("e2fsprogs" ,e2fsprogs) @@ -3363,7 +3382,7 @@ disks and SD cards. This package provides the userland utilities.") (package (inherit f2fs-tools-1.7) (name "f2fs-tools") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (string-append @@ -3371,7 +3390,7 @@ disks and SD cards. This package provides the userland utilities.") "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz")) (sha256 (base32 - "1bir9ladb58ijlcvrjrq1fb1xv5ys50zdjaq0yzliib0apsyrnyl")))) + "05ikaim0qq3dx9x3sp43ralwz43r3b0viv62n99kabp0vf3b0hg8")))) (inputs `(("libuuid" ,util-linux))))) @@ -4032,26 +4051,27 @@ monitoring tools for Linux. These include @code{mpstat}, @code{iostat}, (define-public light (package (name "light") - (version "1.0") + (version "1.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/haikarainen/" name - "/archive/v" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/haikarainen/light") + (commit version))) (sha256 (base32 - "0r5gn6c0jcxknzybl6059dplxv46dpahchqq4gymrs7z8bp0hilp")) - (file-name (string-append name "-" version ".tar.gz")))) + "1qra8yzsga29bxlvq63v1db071a1xdji7i60p4kzrciidm1206js")))) (build-system gnu-build-system) (arguments - '(#:tests? #f ; no tests + '(#:tests? #f ; no tests #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) #:phases (modify-phases %standard-phases - (delete 'configure) + (delete 'configure) ; no configure script (add-after 'unpack 'patch-makefile (lambda _ - (substitute* "Makefile" (("chown") "#"))))))) + (substitute* "Makefile" (("chown") "#")) + #t))))) (native-inputs `(("help2man" ,help2man))) (home-page "https://haikarainen.github.io/light") @@ -4404,14 +4424,14 @@ available in the kernel Linux.") (define-public cpuid (package (name "cpuid") - (version "20180419") + (version "20180519") (source (origin (method url-fetch) (uri (string-append "http://www.etallen.com/cpuid/cpuid-" version ".src.tar.gz")) (sha256 (base32 - "0cnxj72pjalsszhn862r6shw64zbrkw0k3mm36fn93bivswjnj12")))) + "16pzwyifc9glpk1hm6bqb5d1a7cw0qnqiamh5sbvqg7j6sz26y4n")))) (build-system gnu-build-system) (arguments '(#:make-flags '("CC=gcc") @@ -4826,3 +4846,26 @@ libpfm4 provides support for the @code{perf_events} interface, which was introduced in Linux 2.6.31.") (home-page "http://perfmon2.sourceforge.net/") (license license:expat))) + +(define-public libnfnetlink + (package + (name "libnfnetlink") + (version "1.0.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://www.netfilter.org/projects/libnfnetlink/files/" + "libnfnetlink-" version ".tar.bz2")) + (sha256 + (base32 + "06mm2x4b01k3m7wnrxblk9j0mybyr4pfz28ml7944xhjx6fy2w7j")))) + (build-system gnu-build-system) + (home-page "https://www.netfilter.org/projects/libnfnetlink/") + (synopsis "Low-level netfilter netlink communication library") + (description + "@code{libnfnetlink} is the low-level library for netfilter related +kernel/userspace communication. It provides a generic messaging +infrastructure for in-kernel netfilter subsystems (such as nfnetlink_log, +nfnetlink_queue, nfnetlink_conntrack) and their respective users and/or +management tools in userspace.") + (license license:gpl2))) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 258e9827a5..720ac070cc 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -944,18 +944,19 @@ from other CLXes around the net.") (define-public sbcl-stumpwm (package (name "sbcl-stumpwm") - (version "1.0.0") + (version "18.05") (source (origin (method url-fetch) (uri (string-append "https://github.com/stumpwm/stumpwm/archive/" version ".tar.gz")) (sha256 - (base32 "1maxp98gh64az3d9vz9br6zdd6rc9fmj2imvax4by85g6kxvdz1i")) + (base32 "1n2gaab3lwgf5r1hmwdcw13dkv9xdd7drn2shx28kfxvhdc9kbb9")) (file-name (string-append "stumpwm-" version ".tar.gz")))) (build-system asdf-build-system/sbcl) (inputs `(("cl-ppcre" ,sbcl-cl-ppcre) - ("clx" ,sbcl-clx))) + ("clx" ,sbcl-clx) + ("alexandria" ,sbcl-alexandria))) (outputs '("out" "lib")) (arguments '(#:phases diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm index f50a2f1cbb..665b384b95 100644 --- a/gnu/packages/logging.scm +++ b/gnu/packages/logging.scm @@ -86,7 +86,7 @@ staying as close to their API as is reasonable.") ;; mismatch, so run the whole thing. (delete-file "test-driver") (delete-file "configure") ;it's read-only - (zero? (system* "autoreconf" "-vfi")))) + (invoke "autoreconf" "-vfi"))) (add-before 'check 'disable-signal-tests (lambda _ ;; See e.g. https://github.com/google/glog/issues/219 diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 15e4d45749..a86bdcb5ed 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -47,7 +47,9 @@ #:use-module (gnu packages gcc) #:use-module (gnu packages image) #:use-module (gnu packages maths) + #:use-module (gnu packages mpi) #:use-module (gnu packages ocaml) + #:use-module (gnu packages onc-rpc) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -232,7 +234,7 @@ classification.") #t)) (add-after 'disable-broken-tests 'autogen (lambda _ - (zero? (system* "bash" "autogen.sh"))))))) + (invoke "bash" "autogen.sh")))))) (inputs `(("python" ,python-2) ; only Python 2 is supported ("libxml2" ,libxml2))) @@ -666,15 +668,18 @@ and a QP solver.") ;; No test target, so we build and run the unit tests here. (let ((test-dir (string-append "../dlib-" ,version "/dlib/test"))) (with-directory-excursion test-dir - (and (zero? (system* "make" "-j" (number->string (parallel-job-count)))) - (zero? (system* "./dtest" "--runall"))))))) + (invoke "make" "-j" (number->string (parallel-job-count))) + (invoke "./dtest" "--runall")) + #t))) (add-after 'install 'delete-static-library (lambda* (#:key outputs #:allow-other-keys) (delete-file (string-append (assoc-ref outputs "out") "/lib/libdlib.a")) #t))))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config) + ;; For tests. + ("libnsl" ,libnsl))) (inputs `(("giflib" ,giflib) ("lapack" ,lapack) @@ -725,7 +730,7 @@ computing environments.") (setenv "HOME" "/tmp") ;; Step out of the source directory just to be sure. (chdir "..") - (zero? (system* "nosetests" "-v" "sklearn"))))))) + (invoke "nosetests" "-v" "sklearn")))))) (inputs `(("openblas" ,openblas))) (native-inputs @@ -786,3 +791,78 @@ main intended application of Autograd is gradient-based optimization.") (define-public python2-autograd (package-with-python2 python-autograd)) + +(define-public lightgbm + (package + (name "lightgbm") + (version "2.0.12") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/Microsoft/LightGBM/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "132zf0yk0545mg72hyzxm102g3hpb6ixx9hnf8zd2k55gas6cjj1")) + (file-name (string-append name "-" version ".tar.gz")))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-nose" ,python-nose))) + (inputs + `(("openmpi" ,openmpi))) + (propagated-inputs + `(("python-numpy" ,python-numpy) + ("python-scipy" ,python-scipy))) + (arguments + `(#:configure-flags + '("-DUSE_MPI=ON") + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key outputs #:allow-other-keys) + (with-directory-excursion ,(string-append "../LightGBM-" version) + (invoke "pytest" "tests/c_api_test/test_.py"))))))) + (build-system cmake-build-system) + (home-page "https://github.com/Microsoft/LightGBM") + (synopsis "Gradient boosting framework based on decision tree algorithms") + (description "LightGBM is a gradient boosting framework that uses tree +based learning algorithms. It is designed to be distributed and efficient with +the following advantages: + +@itemize +@item Faster training speed and higher efficiency +@item Lower memory usage +@item Better accuracy +@item Parallel and GPU learning supported (not enabled in this package) +@item Capable of handling large-scale data +@end itemize\n") + (license license:expat))) + +(define-public vowpal-wabbit + ;; Language bindings not included. + (package + (name "vowpal-wabbit") + (version "8.5.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/JohnLangford/vowpal_wabbit/archive/" + version ".tar.gz")) + (sha256 + (base32 + "0clp2kb7rk5sckhllxjr5a651awf4s8dgzg4659yh4hf5cqnf0gr")) + (file-name (string-append name "-" version ".tar.gz")))) + (inputs + `(("boost" ,boost) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags + (list (string-append "--with-boost=" + (assoc-ref %build-inputs "boost"))))) + (build-system gnu-build-system) + (home-page "https://github.com/JohnLangford/vowpal_wabbit") + (synopsis "Fast machine learning library for online learning") + (description "Vowpal Wabbit is a machine learning system with techniques +such as online, hashing, allreduce, reductions, learning2search, active, and +interactive learning.") + (license license:bsd-3))) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index f6dfb33970..bf77b0a7fe 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -26,6 +26,7 @@ ;;; Copyright © 2017 Rene Saavedra ;;; Copyright © 2018 Pierre Langlois ;;; Copyright © 2018 Alex Vong +;;; Copyright © 2018 Gábor Boskovits ;;; ;;; This file is part of GNU Guix. ;;; @@ -81,6 +82,7 @@ #:use-module (gnu packages m4) #:use-module (gnu packages ncurses) #:use-module (gnu packages openldap) + #:use-module (gnu packages onc-rpc) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages python) @@ -489,7 +491,7 @@ and corrections. It is based on a Bayesian filter.") (define-public offlineimap (package (name "offlineimap") - (version "7.2.0") + (version "7.2.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/OfflineIMAP/offlineimap/" @@ -497,7 +499,7 @@ and corrections. It is based on a Bayesian filter.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1i7pzm1vrj98jcyn1ygsg1yp0gqlsssnc25451icvivysvdwdj5n")))) + "1022xf2w1xax4vx4kzhlfbhaf0b72wkpvrcscvs4q8qk2ja68h8x")))) (build-system python-build-system) (native-inputs `(("asciidoc" ,asciidoc))) @@ -515,7 +517,7 @@ and corrections. It is based on a Bayesian filter.") (substitute* "docs/Makefile" ;; Prevent xmllint and xsltproc from downloading a DTD file. (("a2x -v") "a2x --no-xmllint --xsltproc-opts=--nonet -v")) - (zero? (system* "make" "-C" "docs" "man")))) + (invoke "make" "-C" "docs" "man"))) (add-after 'install 'install-documentation (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -761,14 +763,14 @@ invoking @command{notifymuch} from the post-new hook.") (define-public notmuch (package (name "notmuch") - (version "0.26.2") + (version "0.27") (source (origin (method url-fetch) (uri (string-append "https://notmuchmail.org/releases/notmuch-" version ".tar.gz")) (sha256 (base32 - "0fqf6wwvqlccq9qdnd0mky7fx0kbkczd28blf045s0vsvdjii70h")))) + "0xh8vq2sa7r07xb3n13drc6gdiqhcgl0pj0za5xj43qkiwpikls0")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) @@ -793,12 +795,10 @@ invoking @command{notifymuch} from the post-new hook.") (elisp (string-append out "/share/emacs/site-lisp/guix.d/" ,name "-" ,version))) - (zero? - (system* - "./configure" - (string-append "--prefix=" out) - (string-append "--emacslispdir=" elisp) - (string-append "--emacsetcdir=" elisp)))))) + (invoke "./configure" + (string-append "--prefix=" out) + (string-append "--emacslispdir=" elisp) + (string-append "--emacsetcdir=" elisp))))) (add-before 'check 'prepare-test-environment (lambda _ (setenv "TEST_CC" "gcc") @@ -975,7 +975,7 @@ useful features.") (add-after 'unpack 'autogen (lambda _ (setenv "NOCONFIGURE" "true") - (zero? (system* "sh" "autogen.sh"))))) + (invoke "sh" "autogen.sh")))) #:configure-flags '("--disable-static" "--disable-db"))) (home-page "http://www.etpan.org/libetpan.html") @@ -1136,6 +1136,7 @@ delivery.") ("bzip2" ,bzip2) ("xz" ,xz) ("perl" ,perl) + ("libnsl" ,libnsl) ("libxt" ,libxt) ("libxaw" ,libxaw))) (native-inputs @@ -1270,7 +1271,9 @@ It supports mbox/Maildir and its own dbox/mdbox formats.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0rkk10b1bsjz979sc864vpgcdchy7yxwmyv4ik50lar1h6awdnrf")))) + "0rkk10b1bsjz979sc864vpgcdchy7yxwmyv4ik50lar1h6awdnrf")) + (patches + (search-patches "dovecot-trees-support-dovecot-2.3.patch")))) (build-system gnu-build-system) (native-inputs `(("automake" ,automake) @@ -1289,7 +1292,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.") (modify-phases %standard-phases (add-after 'unpack 'autogen (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (home-page "https://0xacab.org/riseuplabs/trees") (synopsis "NaCL-based Dovecot email storage encryption plugin") (description @@ -1345,7 +1348,7 @@ using lidsodium sealed boxes. (modify-phases %standard-phases (add-after 'unpack 'autogen (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (home-page "https://github.com/LuckyFellow/dovecot-libsodium-plugin") (synopsis "Libsodium password hashing schemes plugin for Dovecot") (description @@ -1952,14 +1955,15 @@ define(`confLIBS', `-lresolv') define(`confINSTALL', `~a/devtools/bin/install.sh') define(`confDEPEND_TYPE', `CC-M') define(`confINST_DEP', `') -" (getcwd)))))) +" (getcwd)))) + #t)) (replace 'build (lambda _ - (and (zero? (system* "sh" "Build")) - (with-directory-excursion "cf/cf" - (begin - (copy-file "generic-linux.mc" "sendmail.mc") - (zero? (system* "sh" "Build" "sendmail.cf"))))))) + (invoke "sh" "Build") + (with-directory-excursion "cf/cf" + (copy-file "generic-linux.mc" "sendmail.mc") + (invoke "sh" "Build" "sendmail.cf")) + #t)) (add-before 'install 'pre-install (lambda _ (let ((out (assoc-ref %outputs "out"))) @@ -1968,7 +1972,8 @@ define(`confINST_DEP', `') (mkdir-p (string-append out "/etc/mail")) (setenv "DESTDIR" out) (with-directory-excursion "cf/cf" - (zero? (system* "sh" "Build" "install-cf"))))))) + (invoke "sh" "Build" "install-cf")) + #t)))) ;; There is no make check. There are some post installation tests, but those ;; require root privileges #:tests? #f)) @@ -1995,7 +2000,9 @@ transfer protocols.") name "-" version ".tar.gz")) (sha256 (base32 - "10bsfsnlg9d9i6l2izdnxp05s3ri8fvwzqxvx1jmarc852382619")))) + "10bsfsnlg9d9i6l2izdnxp05s3ri8fvwzqxvx1jmarc852382619")) + ;; Fixed upstream: . + (patches (search-patches "opensmtpd-fix-crash.patch")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb) @@ -2016,17 +2023,24 @@ transfer protocols.") "--with-path-CAfile=/etc/ssl/certs/ca-certificates.crt") #:phases (modify-phases %standard-phases + ;; Fix some incorrectly hard-coded external tool file names. + (add-after 'unpack 'patch-FHS-file-names + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "smtpd/smtpctl.c" + (("/bin/cat") (which "cat")) + (("/bin/sh") (which "sh"))) + #t)) ;; OpenSMTPD provides a single utility smtpctl to control the daemon and ;; the local submission subsystem. To accomodate systems that require ;; historical interfaces such as sendmail, newaliases or makemap, the ;; smtpctl utility can operate in compatibility mode if called with the ;; historical name. - (add-after 'install 'install-compabilitymode - (lambda _ - (let* ((out (assoc-ref %outputs "out")) + (add-after 'install 'install-compability-links + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) (sbin (string-append out "/sbin/"))) - (for-each (lambda (cmd) - (symlink "smtpctl" (string-append sbin cmd))) + (for-each (lambda (command) + (symlink "smtpctl" (string-append sbin command))) '("makemap" "sendmail" "send-mail" "newaliases" "mailq"))) #t))))) @@ -2211,12 +2225,10 @@ installation on systems where resources are limited. Its features include: (modify-phases %standard-phases (replace 'check (lambda _ - (zero? - (system* - "django-admin" - "test" - "--settings=django_mailman3.tests.settings_test" - "django_mailman3"))))) + (invoke "django-admin" + "test" + "--settings=django_mailman3.tests.settings_test" + "django_mailman3")))) #:python ,python-2)) (inputs `(("python2-django" ,python2-django))) diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm index bce411d0bd..e15e8497b7 100644 --- a/gnu/packages/markup.scm +++ b/gnu/packages/markup.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2015 David Thompson ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2017 Nils Gillmann -;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -137,10 +137,9 @@ convert it to structurally valid XHTML (or HTML).") (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (setenv "CC" "gcc") - (zero? (system* - "./configure.sh" + (invoke "./configure.sh" (string-append "--prefix=" (assoc-ref outputs "out")) - "--shared"))))))) + "--shared")))))) (synopsis "Markdown processing library, written in C") (description "Discount is a markdown implementation, written in C. It provides a diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index fa36431e79..ee9d84d1c3 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -294,14 +294,14 @@ semiconductors.") (define-public gsl (package (name "gsl") - (version "2.4") + (version "2.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gsl/gsl-" version ".tar.gz")) (sha256 (base32 - "16yfs5n444s03np1naj6yp1fsysd42kdscxzkg0k2yvfjixx0ijd")) + "1395y9hlhqadn5g9j8q22224fds5sd92jxi9czfavjj24myasq04")) (patches (search-patches "gsl-test-i686.patch")))) (build-system gnu-build-system) (arguments @@ -525,19 +525,6 @@ problems in numerical linear algebra.") (license (license:non-copyleft "file://LICENSE" "See LICENSE in the distribution.")))) -(define-public lapack-3.5 - (package - (inherit lapack) - (version "3.5.0") - (source - (origin - (method url-fetch) - (uri (string-append "http://www.netlib.org/lapack/lapack-" - version ".tgz")) - (sha256 - (base32 - "0lk3f97i9imqascnlf6wr5mjpyxqcdj73pgj97dj2mgvyg9z1n4s")))))) - (define-public scalapack (package (name "scalapack") @@ -3385,7 +3372,8 @@ in finite element programs.") version "-src.zip")) (sha256 (base32 - "022w8hph7bli5zbpnk3z1qh1c2sl5hm8fw2ccim651ynn0hr7fyz")))) + "022w8hph7bli5zbpnk3z1qh1c2sl5hm8fw2ccim651ynn0hr7fyz")) + (patches (search-patches "flann-cmake-3.11.patch")))) (build-system cmake-build-system) (outputs '("out" "octave")) ;46 MiB .mex file that pulls Octave diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm index 81021f6461..f63fcee6b2 100644 --- a/gnu/packages/maven.scm +++ b/gnu/packages/maven.scm @@ -23,7 +23,56 @@ #:use-module (guix utils) #:use-module (guix build-system ant) #:use-module (gnu packages) - #:use-module (gnu packages java)) + #:use-module (gnu packages base) + #:use-module (gnu packages compression) + #:use-module (gnu packages java) + #:use-module (gnu packages web) + #:use-module (gnu packages xml)) + +(define-public java-plexus-component-metadata + (package + (inherit java-plexus-container-default) + (name "java-plexus-component-metadata") + (arguments + `(#:jar-name "plexus-component-metadata.jar" + #:source-dir "src/main/java" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "plexus-component-metadata") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" + "build/classes/") + #t))))) + (inputs + `(("java-plexus-container-default" ,java-plexus-container-default) + ("java-plexu-component-annotations" ,java-plexus-component-annotations) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-cli" ,java-plexus-cli) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("maven-plugin-api" ,maven-plugin-api) + ("maven-plugin-annotations" ,maven-plugin-annotations) + ("maven-core-bootstrap" ,maven-core-bootstrap) + ("maven-model" ,maven-model) + ("java-commons-cli" ,java-commons-cli) + ("java-qdox" ,java-qdox) + ("java-jdom2" ,java-jdom2) + ("java-asm" ,java-asm))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-guava" ,java-guava) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect))) + (synopsis "Inversion-of-control container for Maven") + (description "The Plexus project provides a full software stack for creating +and executing software projects. Based on the Plexus container, the +applications can utilise component-oriented programming to build modular, +reusable components that can easily be assembled and reused. This package +provides the Maven plugin generating the component metadata."))) (define-public maven-resolver-api (package @@ -128,3 +177,1350 @@ ease usage of the repository system."))) (synopsis "Maven repository connector implementation") (description "This package contains a repository connector implementation for repositories using URI-based layouts."))) + +(define-public maven-resolver-impl + (package + (inherit maven-resolver-api) + (name "maven-resolver-impl") + (arguments + `(#:jar-name "maven-resolver-impl.jar" + #:source-dir "maven-resolver-impl/src/main/java" + #:test-dir "maven-resolver-impl/src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-sisu + (lambda _ + (mkdir-p "build/classes/META-INF/sisu") + (with-output-to-file "build/classes/META-INF/sisu/javax.inject.Named" + (lambda _ + (display + (string-append + ;; Build this list by looking for files containing "@Named" + "org.eclipse.aether.internal.impl.DefaultArtifactResolver\n" + "org.eclipse.aether.internal.impl.DefaultTransporterProvider\n" + "org.eclipse.aether.internal.impl.DefaultUpdatePolicyAnalyzer\n" + "org.eclipse.aether.internal.impl.slf4j.Slf4jLoggerFactory\n" + "org.eclipse.aether.internal.impl.DefaultRepositorySystem\n" + "org.eclipse.aether.internal.impl.LoggerFactoryProvider\n" + "org.eclipse.aether.internal.impl.DefaultFileProcessor\n" + "org.eclipse.aether.internal.impl.DefaultLocalRepositoryProvider\n" + "org.eclipse.aether.internal.impl.SimpleLocalRepositoryManagerFactory\n" + "org.eclipse.aether.internal.impl.DefaultDeployer\n" + "org.eclipse.aether.internal.impl.DefaultMetadataResolver\n" + "org.eclipse.aether.internal.impl.DefaultInstaller\n" + "org.eclipse.aether.internal.impl.Maven2RepositoryLayoutFactory\n" + "org.eclipse.aether.internal.impl.DefaultSyncContextFactory\n" + "org.eclipse.aether.internal.impl.DefaultOfflineController\n" + "org.eclipse.aether.internal.impl.EnhancedLocalRepositoryManagerFactory\n" + "org.eclipse.aether.internal.impl.DefaultRepositoryLayoutProvider\n" + "org.eclipse.aether.internal.impl.DefaultRemoteRepositoryManager\n" + "org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher\n" + "org.eclipse.aether.internal.impl.DefaultRepositoryConnectorProvider\n" + "org.eclipse.aether.internal.impl.DefaultUpdateCheckManager\n" + "org.eclipse.aether.internal.impl.DefaultChecksumPolicyProvider\n" + "org.eclipse.aether.internal.impl.DefaultDependencyCollector\n")))) + #t))))) + (inputs + `(("maven-resolver-api" ,maven-resolver-api) + ("maven-resolver-spi" ,maven-resolver-spi) + ("maven-resolver-util" ,maven-resolver-util) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-javax-inject" ,java-javax-inject) + ("java-guice" ,java-guice) + ("java-guava" ,java-guava) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("jajva-aopalliance" ,java-aopalliance) + ("java-slf4j-api" ,java-slf4j-api))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core) + ("maven-resolver-test-util" ,maven-resolver-test-util))))) + +(define-public maven-resolver-transport-wagon + (package + (inherit maven-resolver-api) + (name "maven-resolver-transport-wagon") + (arguments + `(#:jar-name "maven-resolver-transport-wagon.jar" + #:source-dir "maven-resolver-transport-wagon/src/main/java" + #:test-dir "maven-resolver-transport-wagon/src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-sisu + (lambda _ + (mkdir-p "build/classes/META-INF/sisu") + (with-output-to-file "build/classes/META-INF/sisu/javax.inject.Named" + (lambda _ + (display "org.eclipse.aether.transport.wagon.WagonTransporterFactory\n"))) + #t)) + (add-before 'build 'generate-components.xml + (lambda _ + (mkdir-p "build/classes/META-INF/plexus") + (with-output-to-file "build/classes/META-INF/plexus/components.xml" + (lambda _ + (display + (string-append + " + + + + org.eclipse.aether.transport.wagon.WagonConfigurator + plexus + org.eclipse.aether.internal.transport.wagon.PlexusWagonConfigurator + + false + + + org.codehaus.plexus.PlexusContainer + + container + + + + + org.eclipse.aether.transport.wagon.WagonProvider + plexus + org.eclipse.aether.internal.transport.wagon.PlexusWagonProvider + + false + + + org.codehaus.plexus.PlexusContainer + + container + + + + +\n")))) + #t))))) + (inputs + `(("maven-resolver-api" ,maven-resolver-api) + ("maven-resolver-spi" ,maven-resolver-spi) + ("maven-resolver-util" ,maven-resolver-util) + ("java-javax-inject" ,java-javax-inject) + ("mavne-wagon-provider-api" ,maven-wagon-provider-api) + ("java-plexus-component-annotation" ,java-plexus-component-annotations) + ("java-plexus-classworld" ,java-plexus-classworlds) + ("java-plexus-plexus-util" ,java-plexus-utils) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core) + ("maven-resolver-test-util" ,maven-resolver-test-util) + ("java-guava" ,java-guava) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-aopalliance" ,java-aopalliance) + ("java-guice" ,java-guice))) + (synopsis "Transport implementation for Maven") + (description "This package contains a transport implementation based on +Maven Wagon, for use in Maven."))) + +(define-public maven-shared-utils + (package + (name "maven-shared-utils") + (version "3.2.1") + (source (origin + (method url-fetch) + (uri (string-append "https://archive.apache.org/dist/maven/shared/" + "maven-shared-utils-" version "-source-release.zip")) + (sha256 + (base32 + "1kzmj68wwdcznb36hm6kfz57wbavw7g1rp236pz10znkjljn6rf6")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "maven-shared-utils.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'check 'remove-cyclic-dep + (lambda _ + (delete-file + "src/test/java/org/apache/maven/shared/utils/introspection/ReflectionValueExtractorTest.java") + #t))))) + (inputs + `(("java-jansi" ,java-jansi) + ("java-commons-io" ,java-commons-io) + ("java-jsr305" ,java-jsr305) + ("java-plexus-container-default" ,java-plexus-container-default))) + (native-inputs + `(("unzip" ,unzip) + ("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core) + ("java-commons-lang3" ,java-commons-lang3))) + (home-page "https://maven.apache.org/shared/maven-shared-utils/") + (synopsis "Plexus-util replacement for maven") + (description "This project aims to be a functional replacement for +plexus-utils in Maven. It is not a 100% API compatible replacement but a +replacement with improvements.") + (license license:asl2.0))) + +(define-public maven-plugin-annotations + (package + (name "maven-plugin-annotations") + (version "3.5") + (source (origin + (method url-fetch) + (uri (string-append "https://archive.apache.org/dist/maven/" + "plugin-tools/maven-plugin-tools-" version + "-source-release.zip")) + (sha256 (base32 "1ryqhs62j5pas93brhf5dsnvp99hxbvssf681yj5rk3r9h24hqm2")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "maven-plugin-annotations.jar" + #:source-dir "maven-plugin-annotations/src/main/java" + #:tests? #f)) + (inputs + `(("maven-artifact" ,maven-artifact))) + (native-inputs + `(("unzip" ,unzip))) + (home-page "https://maven.apache.org/plugin-tools/maven-plugin-annotations/") + (synopsis "Java 5 annotations to use in Mojos") + (description "This package contains Java 5 annotations for use in Mojos.") + (license license:asl2.0))) + +(define-public maven-wagon-provider-api + (package + (name "maven-wagon-provider-api") + (version "3.0.0") + (source (origin + (method url-fetch) + (uri (string-append "https://archive.apache.org/dist/maven/wagon/" + "wagon-" version "-source-release.zip")) + (sha256 (base32 "1qb0q4m7vmf290xp3fnfdi3pwl3hkskia5g3z2v82q1ch3y2knqv")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "maven-wagon-provider-api.jar" + #:source-dir "wagon-provider-api/src/main/java" + #:test-dir "wagon-provider-api/src/test")) + (inputs + `(("java-plexus-utils" ,java-plexus-utils))) + (native-inputs + `(("unzip" ,unzip) + ("java-junit" ,java-junit) + ("java-easymock" ,java-easymock))) + (home-page "https://maven.apache.org/wagon") + (synopsis "Transport abstraction for Maven") + (description "Maven Wagon is a transport abstraction that is used in Maven's +artifact and repository handling code.") + (license license:asl2.0))) + +(define-public maven-wagon-provider-test + (package + (inherit maven-wagon-provider-api) + (name "maven-wagon-provider-test") + (arguments + `(#:jar-name "maven-wagon-provider-test.jar" + #:source-dir "wagon-provider-test/src/main/java" + #:tests? #f; no tests + #:jdk ,icedtea-8)) + (inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-container-default" ,java-plexus-container-default) + ("java-eclipse-jetty-util-9.2" ,java-eclipse-jetty-util-9.2) + ("java-eclipse-jetty-security-9.2" ,java-eclipse-jetty-security-9.2) + ("java-eclipse-jetty-server-9.2" ,java-eclipse-jetty-server-9.2) + ("java-eclipse-jetty-servlet-9.2" ,java-eclipse-jetty-servlet-9.2) + ("java-slf4j-api" ,java-slf4j-api) + ("java-tomcat" ,java-tomcat) + ("maven-wagon-provider-api" ,maven-wagon-provider-api))) + (synopsis "Test classes from maven-wagon") + (description "Maven Wagon is a transport abstraction that is used in Maven's +artifact and repository handling code. This package contains common test +classes used in multiple maven-wagon components."))) + +(define-public maven-wagon-file + (package + (inherit maven-wagon-provider-api) + (name "maven-wagon-file") + (arguments + `(#:jar-name "maven-wagon-file.jar" + #:source-dir "wagon-providers/wagon-file/src/main/java" + #:test-dir "wagon-providers/wagon-file/src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'check 'fix-paths + (lambda _ + ;; Tests assume they are run by maven, which copies test resources + ;; to target. Our ant-build-system does the same, but with the + ;; build directory. + (substitute* "wagon-providers/wagon-file/src/test/java/org/apache/maven/wagon/providers/file/FileWagonTest.java" + (("target") "build")) + #t)) + (add-after 'build 'generate-metadata + (lambda _ + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.plexus.metadata.PlexusMetadataGeneratorCli" + "--source" "wagon-providers/wagon-file/src/main/java" + "--output" "build/classes/META-INF/plexus/components.xml" + "--classes" "build/classes" + "--descriptors" "build/classes/META-INF") + #t)) + (add-after 'generate-metadata 'rebuild + (lambda _ + (invoke "ant" "jar") + #t))))) + (inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("maven-wagon-provider-api" ,maven-wagon-provider-api))) + (native-inputs + `(("maven-wagon-provider-test" ,maven-wagon-provider-test) + ("java-plexus-component-metadata" ,java-plexus-component-metadata) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-guava" ,java-guava) + ("java-guice" ,java-guice) + ("java-javax-inject" ,java-javax-inject) + ("java-cglib" ,java-cglib) + ("java-slf4j-api" ,java-slf4j-api) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-cli" ,java-plexus-cli) + ("maven-plugin-api" ,maven-plugin-api) + ("maven-plugin-annotations" ,maven-plugin-annotations) + ("maven-core" ,maven-core) + ("maven-model" ,maven-model) + ("java-commons-cli" ,java-commons-cli) + ("java-qdox" ,java-qdox) + ("java-jdom2" ,java-jdom2) + ("java-asm" ,java-asm) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ,@(package-native-inputs maven-wagon-provider-api))) + (synopsis "Wagon provider that gets and puts artifacts using the file system") + (description "Maven Wagon is a transport abstraction that is used in Maven's +artifact and repository handling code. It uses providers, that are tools to +manage artifacts and deployment. This package contains the file provider which +gets and puts artifacts using the file system."))) + +(define-public maven-wagon-tck-http + (package + (inherit maven-wagon-provider-api) + (name "maven-wagon-tck-http") + (arguments + `(#:jar-name "maven-wagon-tck-http.jar" + #:source-dir "wagon-tcks/wagon-tck-http/src/main/java" + #:tests? #f; no tests + #:jdk ,icedtea-8)) + (inputs + `(("java-plexus-util" ,java-plexus-utils) + ("maven-wagon-provider-api" ,maven-wagon-provider-api) + ("java-tomcat" ,java-tomcat) + ("java-slf4j-api" ,java-slf4j-api) + ("java-commons-codec" ,java-commons-codec) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-eclipse-jetty-util-9.2" ,java-eclipse-jetty-util-9.2) + ("java-eclipse-jetty-webapp-9.2" ,java-eclipse-jetty-webapp-9.2) + ("java-eclipse-jetty-security-9.2" ,java-eclipse-jetty-security-9.2) + ("java-eclipse-jetty-server-9.2" ,java-eclipse-jetty-server-9.2) + ("java-eclipse-jetty-servlet-9.2" ,java-eclipse-jetty-servlet-9.2))) + (synopsis "Wagon HTTP Test Compatibility Kit") + (description "Maven Wagon is a transport abstraction that is used in Maven's +artifact and repository handling code. This package contains the HTTP +Test Compatibility Kit."))) + +(define-public maven-wagon-http-shared + (package + (inherit maven-wagon-provider-api) + (name "maven-wagon-http-shared") + (arguments + `(#:jar-name "maven-wagon-http-shared.jar" + #:source-dir "wagon-providers/wagon-http-shared/src/main/java" + #:test-dir "wagon-providers/wagon-http-shared/src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-after 'build 'generate-metadata + (lambda _ + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.plexus.metadata.PlexusMetadataGeneratorCli" + "--source" "wagon-providers/wagon-http-shared/src/main/java" + "--output" "build/classes/META-INF/plexus/components.xml" + "--classes" "build/classes" + "--descriptors" "build/classes/META-INF") + #t)) + (add-after 'generate-metadata 'rebuild + (lambda _ + (invoke "ant" "jar") + #t))))) + (inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("java-httpcomponents-httpclient" ,java-httpcomponents-httpclient) + ("java-httpcomponents-httpcore" ,java-httpcomponents-httpcore) + ("java-commons-io" ,java-commons-io) + ("java-jsoup" ,java-jsoup) + ("maven-wagon-provider-api" ,maven-wagon-provider-api))) + (native-inputs + `(("maven-wagon-provider-test" ,maven-wagon-provider-test) + ("java-plexus-component-metadata" ,java-plexus-component-metadata) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-guava" ,java-guava) + ("java-guice" ,java-guice) + ("java-javax-inject" ,java-javax-inject) + ("java-cglib" ,java-cglib) + ("java-slf4j-api" ,java-slf4j-api) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-cli" ,java-plexus-cli) + ("maven-plugin-api" ,maven-plugin-api) + ("maven-plugin-annotations" ,maven-plugin-annotations) + ("maven-core" ,maven-core) + ("maven-model" ,maven-model) + ("java-commons-cli" ,java-commons-cli) + ("java-qdox" ,java-qdox) + ("java-jdom2" ,java-jdom2) + ("java-asm" ,java-asm) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ,@(package-native-inputs maven-wagon-provider-api))) + (synopsis "Shared Library for wagon providers supporting HTTP.") + (description "Maven Wagon is a transport abstraction that is used in Maven's +artifact and repository handling code. It uses providers, that are tools to +manage artifacts and deployment. This package contains a shared library for +wagon providers supporting HTTP."))) + +(define-public maven-wagon-http + (package + (inherit maven-wagon-provider-api) + (name "maven-wagon-http") + (arguments + `(#:jar-name "maven-wagon-http.jar" + #:source-dir "wagon-providers/wagon-http/src/main/java" + #:test-dir "wagon-providers/wagon-http/src/test" + #:test-exclude (list + "**/Abstract*.java" + ;; FIXME: javax.net.ssl.SSLHandshakeException: + ;; sun.security.validator.ValidatorException: + ;; PKIX path building failed: + ;; sun.security.provider.certpath.SunCertPathBuilderException: + ;; unable to find valid certification path to requested target + "**/HttpsWagonPreemptiveTest.java" + "**/HttpsWagonTest.java" + ;; Injection errors + "**/TckTest.java") + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-resources + (lambda _ + (install-file "wagon-providers/wagon-http/src/main/resources/META-INF/plexus/components.xml" + "build/classes/META-INF/plexus") + #t)) + (add-before 'check 'fix-resource-path + (lambda _ + (substitute* '("wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpsWagonPreemptiveTest.java" + "wagon-providers/wagon-http/src/test/java/org/apache/maven/wagon/providers/http/HttpsWagonTest.java") + (("src/test") "wagon-providers/wagon-http/src/test")) + #t))))) + (inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("java-httpcomponents-httpclient" ,java-httpcomponents-httpclient) + ("java-httpcomponents-httpcore" ,java-httpcomponents-httpcore) + ("maven-wagon-http-shared" ,maven-wagon-http-shared) + ("maven-wagon-tck-http" ,maven-wagon-tck-http) + ("maven-wagon-provider-api" ,maven-wagon-provider-api))) + (native-inputs + `(("maven-wagon-provider-test" ,maven-wagon-provider-test) + ("java-plexus-component-metadata" ,java-plexus-component-metadata) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-container-default" ,java-plexus-container-default) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-guava" ,java-guava) + ("java-guice" ,java-guice) + ("java-inject" ,java-javax-inject) + ("java-cglib" ,java-cglib) + ("java-slf4j-api" ,java-slf4j-api) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-cli" ,java-plexus-cli) + ("maven-plugin-api" ,maven-plugin-api) + ("maven-plugin-annotations" ,maven-plugin-annotations) + ("maven-core" ,maven-core) + ("maven-model" ,maven-model) + ("java-commons-cli" ,java-commons-cli) + ("java-qdox" ,java-qdox) + ("java-jdom2" ,java-jdom2) + ("java-asm" ,java-asm) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ("java-tomcat" ,java-tomcat) + ("java-eclipse-jetty-util-9.2" ,java-eclipse-jetty-util-9.2) + ("java-eclipse-jetty-io-9.2" ,java-eclipse-jetty-io-9.2) + ("java-eclipse-jetty-http-9.2" ,java-eclipse-jetty-http-9.2) + ("java-eclipse-jetty-server-9.2" ,java-eclipse-jetty-server-9.2) + ("java-eclipse-jetty-servlet-9.2" ,java-eclipse-jetty-servlet-9.2) + ("java-eclipse-jetty-security-9.2" ,java-eclipse-jetty-security-9.2) + ("java-hamcrest-core" ,java-hamcrest-core) + ("java-commons-logging-minimal" ,java-commons-logging-minimal) + ("java-commons-codec" ,java-commons-codec) + ("java-commons-io" ,java-commons-io) + ("java-jsoup" ,java-jsoup) + ("java-slf4j-simple" ,java-slf4j-simple) + ,@(package-native-inputs maven-wagon-provider-api))) + (synopsis "Wagon provider that gets and puts artifacts through HTTP(S)") + (description "Maven Wagon is a transport abstraction that is used in Maven's +artifact and repository handling code. It uses providers, that are tools to +manage artifacts and deployment. This package contains a Wagon provider that +gets and puts artifacts through HTTP(S) using Apache HttpClient-4.x."))) + +(define-public maven-artifact + (package + (name "maven-artifact") + (version "3.5.3") + (source (origin + (method url-fetch) + (uri (string-append "https://archive.apache.org/dist/maven/" + "maven-3/" version "/source/" + "apache-maven-" version "-src.tar.gz")) + (sha256 (base32 "06by23fz207lkvsndq883irfcf4p77jzkgf7n2q7hzyw1hs4h5s7")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file (find-files "." "\\.jar$")) + #t)) + (patches + (search-patches "maven-generate-component-xml.patch" + "maven-generate-javax-inject-named.patch")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "maven-artifact.jar" + #:source-dir "maven-artifact/src/main/java" + #:test-dir "maven-artifact/src/test" + #:main-class "org.apache.maven.artifact.versioning.ComparableVersion")) + (inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("java-commons-lang3" ,java-commons-lang3))) + (native-inputs + `(("java-junit" ,java-junit))) + (home-page "https://maven.apache.org/") + (synopsis "Build system") + (description "Apache Maven is a software project management and comprehension +tool. This package contains the Maven Artifact classes, providing the +@code{Artifact} interface, with its @code{DefaultArtifact} implementation. The +jar file is executable and provides a little tool to display how Maven parses +and compares versions:") + (license license:asl2.0))) + +(define-public maven-model + (package + (inherit maven-artifact) + (name "maven-model") + (arguments + `(#:jar-name "maven-model.jar" + #:source-dir "maven-model/src/main/java" + #:test-dir "maven-model/src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-models + (lambda* (#:key inputs #:allow-other-keys) + (define (modello-single-mode file version mode) + (invoke "java" "org.codehaus.modello.ModelloCli" + file mode "maven-model/src/main/java" version + "false" "true")) + (let ((file "maven-model/src/main/mdo/maven.mdo")) + (modello-single-mode file "4.0.0" "java") + (modello-single-mode file "4.0.0" "xpp3-reader") + (modello-single-mode file "4.0.0" "xpp3-writer") + (modello-single-mode file "4.0.0" "xpp3-extended-reader")) + #t))))) + (inputs + `(("java-commons-lang3" ,java-commons-lang3) + ("java-plexus-utils" ,java-plexus-utils))) + (native-inputs + `(("java-modello-core" ,java-modello-core) + ;; for modello: + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-guice" ,java-guice) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-javax-inject" ,java-javax-inject) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-guava" ,java-guava) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ("java-sisu-build-api" ,java-sisu-build-api) + ;; modello plugins: + ("java-modello-plugins-java" ,java-modello-plugins-java) + ("java-modello-plugins-xml" ,java-modello-plugins-xml) + ("java-modello-plugins-xpp3" ,java-modello-plugins-xpp3) + ;; for tests + ("java-junit" ,java-junit))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains the model for Maven @dfn{POM} (Project Object Model), +so really just plain Java objects."))) + +(define-public maven-builder-support + (package + (inherit maven-artifact) + (name "maven-builder-support") + (arguments + `(#:jar-name "maven-builder-support.jar" + #:source-dir "maven-builder-support/src/main/java" + #:jdk ,icedtea-8 + #:test-dir "maven-builder-support/src/test" + #:phases + (modify-phases %standard-phases + (add-before 'check 'fix-paths + (lambda _ + (with-directory-excursion "maven-builder-support/src/test/java" + (substitute* + '("org/apache/maven/building/FileSourceTest.java" + "org/apache/maven/building/UrlSourceTest.java") + (("target/test-classes") "maven-builder-support/src/test/resources"))) + #t))))) + (inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("java-commons-lang3" ,java-commons-lang3))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains a support library for descriptor builders (model, +setting, toolchains)"))) + +(define-public maven-settings + (package + (inherit maven-artifact) + (name "maven-settings") + (arguments + `(#:jar-name "maven-settings.jar" + #:source-dir "maven-settings/src/main/java" + #:jdk ,icedtea-8 + #:tests? #f; no tests + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-models + (lambda* (#:key inputs #:allow-other-keys) + (define (modello-single-mode file version mode) + (invoke "java" "org.codehaus.modello.ModelloCli" + file mode "maven-settings/src/main/java" version + "false" "true")) + (let ((file "maven-settings/src/main/mdo/settings.mdo")) + (modello-single-mode file "1.1.0" "java") + (modello-single-mode file "1.1.0" "xpp3-reader") + (modello-single-mode file "1.1.0" "xpp3-writer")) + #t))))) + (inputs '()) + (native-inputs + `(("java-modello-core" ,java-modello-core) + ;; for modello: + ;("container" ,java-plexus-container-default) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-guice" ,java-guice) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-javax-inject" ,java-javax-inject) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-plexus-utils" ,java-plexus-utils) + ("java-guava" ,java-guava) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ("java-sisu-build-api" ,java-sisu-build-api) + ;; modello plugins: + ("java-modello-plugins-java" ,java-modello-plugins-java) + ("java-modello-plugins-xml" ,java-modello-plugins-xml) + ("java-modello-plugins-xpp3" ,java-modello-plugins-xpp3))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains strictly the model for Maven settings, that is +simply plain java objects."))) + +(define-public maven-settings-builder + (package + (inherit maven-artifact) + (name "maven-settings-builder") + (arguments + `(#:jar-name "maven-settings-builder.jar" + #:source-dir "maven-settings-builder/src/main/java" + #:jdk ,icedtea-8 + #:test-dir "maven-settings-builder/src/test" + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-components.xml + (lambda _ + (mkdir-p "build/classes/META-INF/plexus") + (chmod "components.sh" #o755) + (invoke "./components.sh" "maven-settings-builder/src/main/java" + "build/classes/META-INF/plexus/components.xml") + #t))))) + (inputs + `(("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-plexus-interpolation" ,java-plexus-interpolation) + ("java-plexus-sec-dispatcher" ,java-plexus-sec-dispatcher) + ("maven-builder-support" ,maven-builder-support) + ("maven-settings" ,maven-settings) + ("java-commons-lang3" ,java-commons-lang3))) + (native-inputs + `(("java-junit" ,java-junit))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains the effective model builder, with profile activation, +inheritance, interpolation, @dots{}"))) + +(define-public maven-model-builder + (package + (inherit maven-artifact) + (name "maven-model-builder") + (arguments + `(#:jar-name "maven-model-builder.jar" + #:source-dir "maven-model-builder/src/main/java" + #:jdk ,icedtea-8 + #:test-dir "maven-model-builder/src/test" + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "maven-model-builder/src/main/resources" + "build/classes") + #t)) + (add-before 'build 'generate-components.xml + (lambda _ + (mkdir-p "build/classes/META-INF/plexus") + (chmod "components.sh" #o755) + (invoke "./components.sh" "maven-model-builder/src/main/java" + "build/classes/META-INF/plexus/components.xml") + #t)) + (add-before 'check 'fix-paths + (lambda _ + (substitute* (find-files "maven-model-builder/src/test/java" ".*.java") + (("src/test") "maven-model-builder/src/test")) + #t))))) + (inputs + `(("model" ,maven-model) + ("artifact" ,maven-artifact) + ("support" ,maven-builder-support) + ("annotations" ,java-plexus-component-annotations) + ("utils" ,java-plexus-utils) + ("interpolation" ,java-plexus-interpolation) + ("lang3" ,java-commons-lang3) + ("guava" ,java-guava))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("guice" ,java-guice) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("sisu-inject" ,java-eclipse-sisu-inject) + ("javax-inject" ,java-javax-inject) + ("xmlunit" ,java-xmlunit) + ("xmlunit" ,java-xmlunit-legacy) + ("xbean" ,java-geronimo-xbean-reflect) + ("classworlds" ,java-plexus-classworlds))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains the effective model builder, with profile activation, +inheritance, interpolation, @dots{}"))) + +(define-public maven-repository-metadata + (package + (inherit maven-artifact) + (name "maven-repository-metadata") + (arguments + `(#:jar-name "maven-repository-metadata.jar" + #:source-dir "maven-repository-metadata/src/main/java" + #:jdk ,icedtea-8 + #:tests? #f; no tests + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-models + (lambda* (#:key inputs #:allow-other-keys) + (define (modello-single-mode file version mode) + (invoke "java" "org.codehaus.modello.ModelloCli" + file mode "maven-repository-metadata/src/main/java" version + "false" "true")) + (let ((file "maven-repository-metadata/src/main/mdo/metadata.mdo")) + (modello-single-mode file "1.1.0" "java") + (modello-single-mode file "1.1.0" "xpp3-reader") + (modello-single-mode file "1.1.0" "xpp3-writer")) + #t))))) + (inputs '()) + (native-inputs + `(("modello" ,java-modello-core) + ;; for modello: + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-guice" ,java-guice) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-javax-inject" ,java-javax-inject) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-guava" ,java-guava) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ("java-sisu-build-api" ,java-sisu-build-api) + ;; modello plugins: + ("java-modello-plugins-java" ,java-modello-plugins-java) + ("java-modello-plugins-xml" ,java-modello-plugins-xml) + ("java-modello-plugins-xpp3" ,java-modello-plugins-xpp3))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains strictly the model for Maven Repository Metadata, +so really just plain objects."))) + +(define-public maven-resolver-provider + (package + (inherit maven-artifact) + (name "maven-resolver-provider") + (arguments + `(#:jar-name "maven-resolver-provider.jar" + #:source-dir "maven-resolver-provider/src/main/java" + #:test-dir "maven-resolver-provider/src/test" + #:jdk ,icedtea-8 + #:tests? #f; dependency loop on maven-core (@Component RepositorySystem) + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-sisu-named + (lambda _ + (mkdir-p "build/classes/META-INF/sisu") + (chmod "./sisu.sh" #o755) + (invoke "./sisu.sh" "maven-resolver-provider/src/main/java" + "build/classes/META-INF/sisu/javax.inject.Named") + #t))))) + (inputs + `(("maven-resolver-spi" ,maven-resolver-spi) + ("maven-resolver-api" ,maven-resolver-api) + ("maven-resolver-impl" ,maven-resolver-impl) + ("maven-resolver-util" ,maven-resolver-util) + ("maven-model" ,maven-model) + ("maven-model-builder" ,maven-model-builder) + ("maven-builder-support" ,maven-builder-support) + ("maven-repository-metadata" ,maven-repository-metadata) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-commons-lang3" ,java-commons-lang3) + ("java-guice" ,java-guice) + ("java-guava" ,java-guava) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-javax-inject" ,java-javax-inject))))) + +(define-public maven-plugin-api + (package + (inherit maven-artifact) + (name "maven-plugin-api") + (arguments + `(#:jar-name "maven-plugin-api.jar" + #:source-dir "maven-plugin-api/src/main/java" + #:jdk ,icedtea-8 + #:test-dir "maven-plugin-api/src/test" + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-models + (lambda* (#:key inputs #:allow-other-keys) + (define (modello-single-mode file version mode) + (invoke "java" "org.codehaus.modello.ModelloCli" + file mode "maven-plugin-api/src/main/java" version + "false" "true")) + (let ((file "maven-plugin-api/src/main/mdo/lifecycle.mdo")) + (modello-single-mode file "1.0.0" "java") + (modello-single-mode file "1.0.0" "xpp3-reader") + (modello-single-mode file "1.0.0" "xpp3-writer")) + #t))))) + (inputs + `(("maven-artifact" ,maven-artifact) + ("maven-model" ,maven-model) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("guice" ,java-guice) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("sisu-inject" ,java-eclipse-sisu-inject) + ("javax-inject" ,java-javax-inject) + ("utils" ,java-plexus-utils))) + (native-inputs + `(("modello" ,java-modello-core) + ;; for modello: + ("classworlds" ,java-plexus-classworlds) + ("guava" ,java-guava) + ("xbean" ,java-geronimo-xbean-reflect) + ("build-api" ,java-sisu-build-api) + ;; modello plugins: + ("java" ,java-modello-plugins-java) + ("xml" ,java-modello-plugins-xml) + ("xpp3" ,java-modello-plugins-xpp3) + ;; for tests + ("java-junit" ,java-junit))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains strictly the API for plugins -- composed of goals +implemented by Mojos -- development. + +A plugin is described in a @file{META-INF/maven/plugin.xml} plugin descriptor, +generally generated from plugin sources using maven-plugin-plugin."))) + +(define maven-core-bootstrap + (package + (inherit maven-artifact) + (name "maven-core") + (arguments + `(#:jar-name "maven-core.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + ;; Tests need maven-compat, which requires maven-core + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + ;; Required for generating components.xml in maven-core + (chdir "maven-core") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (mkdir-p "build/classes/") + (copy-recursively "src/main/resources" "build/classes") + #t)) + (add-after 'copy-resources 'fill-properties + (lambda _ + ;; This file controls the output of some mvn subcommands, such as + ;; mvn -version. + (substitute* "build/classes/org/apache/maven/messages/build.properties" + (("\\$\\{buildNumber\\}") "guix_build") + (("\\$\\{timestamp\\}") "0") + (("\\$\\{project.version\\}") ,(package-version maven-artifact)) + (("\\$\\{distributionId\\}") "apache-maven") + (("\\$\\{distributionShortName\\}") "Maven") + (("\\$\\{distributionName\\}") "Apache Maven")) + #t)) + (add-before 'build 'generate-sisu-named + (lambda _ + (mkdir-p "build/classes/META-INF/sisu") + (chmod "../sisu.sh" #o755) + (invoke "../sisu.sh" "src/main/java" + "build/classes/META-INF/sisu/javax.inject.Named") + #t)) + (add-before 'build 'generate-models + (lambda* (#:key inputs #:allow-other-keys) + (define (modello-single-mode file version mode) + (invoke "java" "org.codehaus.modello.ModelloCli" + file mode "src/main/java" version + "false" "true")) + (let ((file "src/main/mdo/toolchains.mdo")) + (modello-single-mode file "1.1.0" "java") + (modello-single-mode file "1.1.0" "xpp3-reader") + (modello-single-mode file "1.1.0" "xpp3-writer")) + #t))))) + (inputs + `(("maven-artifact" ,maven-artifact) + ("maven-resolver-provider" ,maven-resolver-provider) + ("maven-builder-support" ,maven-builder-support) + ("maven-model" ,maven-model) + ("maven-model-builder" ,maven-model-builder) + ("maven-settings" ,maven-settings) + ("maven-settings-builder" ,maven-settings-builder) + ("maven-plugin-api" ,maven-plugin-api) + ("maven-repository-metadata" ,maven-repository-metadata) + ("maven-shared-utils" ,maven-shared-utils) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-plexus-utils" ,java-plexus-utils) + ("java-commons-lang3" ,java-commons-lang3) + ("java-guava" ,java-guava) + ("java-guice" ,java-guice) + ("maven-resolver-api" ,maven-resolver-api) + ("maven-resolver-spi" ,maven-resolver-spi) + ("maven-resolver-util" ,maven-resolver-util) + ("maven-resolver-impl" ,maven-resolver-impl) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-javax-inject" ,java-javax-inject) + ("java-plexus-classworld" ,java-plexus-classworlds))) + (native-inputs + `(("java-modello-core" ,java-modello-core) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ("java-sisu-build-api" ,java-sisu-build-api) + ("java-modello-plugins-java" ,java-modello-plugins-java) + ("java-modello-plugins-xml" ,java-modello-plugins-xml) + ("java-modello-plugins-xpp3" ,java-modello-plugins-xpp3) + ;; tests + ("java-junit" ,java-junit) + ("java-mockito-1" ,java-mockito-1) + ("java-commons-jxpath" ,java-commons-jxpath))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains the maven core classes managing the whole build +process."))) + +(define-public maven-core + (package + (inherit maven-core-bootstrap) + (arguments + (substitute-keyword-arguments (package-arguments maven-core-bootstrap) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'build 'modify-metainf + (lambda _ + (substitute* "build.xml" + (("message=\"\"") "message=\"Implementation-Version: 3.5.3\n\"")) + #t)) + (add-before 'build 'add-maven-files + (lambda _ + (mkdir-p "build/classes/META-INF/maven/org.apache.maven/maven-core") + (copy-file "pom.xml" + "build/classes/META-INF/maven/org.apache.maven/maven-core/pom.xml") + (with-output-to-file "build/classes/META-INF/maven/org.apache.maven/maven-core/pom.properties" + (lambda _ + (format #t "version=~a~% +groupId=org.apache.maven~% +artifactId=maven-core" ,(package-version maven-core-bootstrap)))) + #t)) + (add-after 'build 'generate-metadata + (lambda _ + (define (components file) + (let ((sxml (with-input-from-file file + (lambda _ (xml->sxml (current-input-port) + #:trim-whitespace? #t))))) + ;; Select the list of s inside the + ;; and . + ((@ (ice-9 match) match) sxml + (('*TOP* + ('*PI* foo ...) + ('component-set + ('components x ...))) x)))) + (use-modules (sxml simple)) + (delete-file "build/classes/META-INF/plexus/components.xml") + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.plexus.metadata.PlexusMetadataGeneratorCli" + "--source" "build/classes/META-INF/plexus" + "--output" "build/classes/META-INF/plexus/components.t.xml" + "--classes" "build/classes" + "--descriptors" "build/classes") + ;; Now we merge all other components from hand-written xml + (let ((generated-xml (components "build/classes/META-INF/plexus/components.t.xml")) + (components-xml (components "src/main/resources/META-INF/plexus/components.xml")) + (default-bindings-xml (components "src/main/resources/META-INF/plexus/default-bindings.xml")) + (artifact-handlers-xml (components "src/main/resources/META-INF/plexus/artifact-handlers.xml"))) + (with-output-to-file "build/classes/META-INF/plexus/components.xml" + (lambda _ + (display "\n") + (sxml->xml + `(component-set + (components + ,@(append generated-xml components-xml + default-bindings-xml + artifact-handlers-xml))))))) + #t)) + (add-after 'generate-metadata 'rebuild + (lambda _ + (invoke "ant" "jar") + #t)))))) + (native-inputs + `(("java-plexus-component-metadata" ,java-plexus-component-metadata) + ("java-commons-cli" ,java-commons-cli) + ("java-plexus-cli" ,java-plexus-cli) + ("java-jdom2" ,java-jdom2) + ("java-qdox" ,java-qdox) + ("maven-core-boot" ,maven-core-bootstrap) + ,@(package-native-inputs maven-core-bootstrap))))) + +(define-public maven-embedder + (package + (inherit maven-artifact) + (name "maven-embedder") + (arguments + `(#:jar-name "maven-embedder.jar" + #:source-dir "maven-embedder/src/main/java" + #:test-dir "maven-embedder/src/test" + #:test-exclude (list "**/MavenCliTest.java") + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-sisu-named + (lambda _ + (mkdir-p "build/classes/META-INF/sisu") + (chmod "sisu.sh" #o755) + (invoke "./sisu.sh" "maven-embedder/src/main/java" + "build/classes/META-INF/sisu/javax.inject.Named") + #t)) + (add-before 'build 'generate-models + (lambda* (#:key inputs #:allow-other-keys) + (define (modello-single-mode file version mode) + (invoke "java" "org.codehaus.modello.ModelloCli" + file mode "maven-embedder/src/main/java" version + "false" "true")) + (let ((file "maven-embedder/src/main/mdo/core-extensions.mdo")) + (modello-single-mode file "1.0.0" "java") + (modello-single-mode file "1.0.0" "xpp3-reader") + (modello-single-mode file "1.0.0" "xpp3-writer")) + #t)) + (add-before 'check 'fix-test-paths + (lambda _ + (substitute* "maven-embedder/src/test/java/org/apache/maven/cli/CLIManagerDocumentationTest.java" + (("target/test-classes") "build/test-classes")) + #t)) + (add-before 'check 'fix-test-compilation + (lambda _ + ;; Tests are in the java/ subdir. Other subdirectories contain + ;; additional test plugins, with duplicate classes, so we can't + ;; compile them. Also, they are meant to be built with maven, to + ;; test its build process. + (substitute* "build.xml" + (("srcdir=\"maven-embedder/src/test\"") + "srcdir=\"maven-embedder/src/test/java\"")) + #t))))) + (inputs + `(("maven-core" ,maven-core) + ("maven-artifact" ,maven-artifact) + ("maven-plugin-api" ,maven-plugin-api) + ("maven-builder-support" ,maven-builder-support) + ("maven-model" ,maven-model) + ("maven-model-builder" ,maven-model-builder) + ("maven-settings" ,maven-settings) + ("maven-settings-builder" ,maven-settings-builder) + ("maven-shared-utils" ,maven-shared-utils) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-plexus-util" ,java-plexus-utils) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-plexus-cipher" ,java-plexus-cipher) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-plexus-sec-dispatcher" ,java-plexus-sec-dispatcher) + ("maven-resolevr-util" ,maven-resolver-util) + ("maven-resolevr-api" ,maven-resolver-api) + ("java-logback-core" ,java-logback-core) + ("java-logback-classic" ,java-logback-classic) + ("java-commons-cli" ,java-commons-cli) + ("java-commons-io" ,java-commons-io) + ("java-commons-lang3" ,java-commons-lang3) + ("java-guava" ,java-guava) + ("java-guice" ,java-guice) + ("java-javax-inject" ,java-javax-inject) + ("java-slf4j-api" ,java-slf4j-api) + ("java-slf4j-simple" ,java-slf4j-simple))) + (native-inputs + `(("java-modello-core" ,java-modello-core) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ("java-sisu-build-api" ,java-sisu-build-api) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-modello-plugins-java" ,java-modello-plugins-java) + ("java-modello-plugins-xml" ,java-modello-plugins-xml) + ("java-modello-plugins-xpp3" ,java-modello-plugins-xpp3) + ;; tests + ("java-junit" ,java-junit) + ("java-objenesis" ,java-objenesis) + ("java-mockito-1" ,java-mockito-1) + ("java-hamcrest-core" ,java-hamcrest-core))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains a Maven embeddable component, with CLI and +logging support."))) + +(define-public maven-compat + (package + (inherit maven-artifact) + (name "maven-compat") + (arguments + `(#:jar-name "maven-compat.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:test-dir "src/test" + #:phases + (modify-phases %standard-phases + ;; Tests assume we're in this directory + (add-before 'configure 'chdir + (lambda _ + (chdir "maven-compat") + #t)) + (add-before 'build 'generate-models + (lambda* (#:key inputs #:allow-other-keys) + (define (modello-single-mode file version mode) + (invoke "java" "org.codehaus.modello.ModelloCli" + file mode "src/main/java" version + "false" "true")) + (let ((file "src/main/mdo/profiles.mdo")) + (modello-single-mode file "1.0.0" "java") + (modello-single-mode file "1.0.0" "xpp3-reader") + (modello-single-mode file "1.0.0" "xpp3-writer")) + (let ((file "src/main/mdo/paramdoc.mdo")) + (modello-single-mode file "1.0.0" "java") + (modello-single-mode file "1.0.0" "xpp3-reader") + (modello-single-mode file "1.0.0" "xpp3-writer")) + #t)) + (add-after 'build 'generate-metadata + (lambda _ + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.plexus.metadata.PlexusMetadataGeneratorCli" + "--source" "src/main/java" + "--output" "build/classes/META-INF/plexus/components.xml" + "--classes" "build/classes" + "--descriptors" "build/classes/META-INF") + #t)) + (add-before 'check 'build-tests + (lambda _ + (invoke "ant" "compile-tests") + #t)) + (add-after 'build-tests 'generate-test-metadata + (lambda _ + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") + ":build/classes" + ":build/test-classes") + "org.codehaus.plexus.metadata.PlexusMetadataGeneratorCli" + "--source" "src/test/java" + "--output" "build/test-classes/META-INF/plexus/components.xml" + "--classes" "build/test-classes" + "--descriptors" "build/test-classes/META-INF") + #t)) + (add-after 'generate-metadata 'rebuild + (lambda _ + (invoke "ant" "jar") + #t))))) + (inputs + `(("maven-artifact" ,maven-artifact) + ("maven-repository-metadata" ,maven-repository-metadata) + ("maven-builder-support" ,maven-builder-support) + ("maven-model" ,maven-model) + ("maven-model-builder" ,maven-model-builder) + ("maven-settings" ,maven-settings) + ("maven-settings-builder" ,maven-settings-builder) + ("maven-core" ,maven-core) + ("maven-wagon-provider-api" ,maven-wagon-provider-api) + ("maven-wagon-file" ,maven-wagon-file) + ("maven-resolver-api" ,maven-resolver-api) + ("maven-resolver-util" ,maven-resolver-util) + ("maven-resolver-spi" ,maven-resolver-spi) + ("java-plexus-interpolation" ,java-plexus-interpolation))) + (native-inputs + `(("java-modello-core" ,java-modello-core) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect) + ("java-sisu-build-api" ,java-sisu-build-api) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-exclispe-sisu-inject" ,java-eclipse-sisu-inject) + ("java-javax-inject" ,java-javax-inject) + ("java-guice" ,java-guice) + ("java-guava" ,java-guava) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-modello-plugins-java" ,java-modello-plugins-java) + ("java-modello-plugins-xml" ,java-modello-plugins-xml) + ("java-modello-plugins-xpp3" ,java-modello-plugins-xpp3) + ;; metadata + ("java-plexus-component-metadata" ,java-plexus-component-metadata) + ("java-commons-cli" ,java-commons-cli) + ("java-plexus-cli" ,java-plexus-cli) + ("java-jdom2" ,java-jdom2) + ("maven-plugin-api" ,maven-plugin-api) + ("java-qdox" ,java-qdox) + ;; tests + ("java-plexus-cipher" ,java-plexus-cipher) + ("java-plexus-sec-dispatcher" ,java-plexus-sec-dispatcher) + ("java-jsr250" ,java-jsr250) + ("java-cdi-api" ,java-cdi-api) + ("java-junit" ,java-junit) + ("maven-resolver-impl" ,maven-resolver-impl) + ("maven-resolver-connector-basic" ,maven-resolver-connector-basic) + ("maven-resolver-transport-wagon" ,maven-resolver-transport-wagon) + ("java-commons-lang3" ,java-commons-lang3) + ("java-aop" ,java-aopalliance) + ("maven-resolver-provider" ,maven-resolver-provider) + ("java-slf4j-api" ,java-slf4j-api) + ("java-slf4j-simple" ,java-slf4j-simple) + ,@(package-inputs java-slf4j-api))) + (description "Apache Maven is a software project management and comprehension +tool. This package contains Maven2 classes maintained as compatibility +layer for plugins that need to keep Maven2 compatibility."))) + +(define-public maven + (package + (inherit maven-artifact) + (name "maven") + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'build + (lambda _ + (substitute* "apache-maven/src/bin/mvn" + (("cygwin=false;") + (string-append + "CLASSPATH=" (getenv "CLASSPATH") "\n" + "cygwin=false;")) + (("-classpath.*") "-classpath ${CLASSPATH} \\\n")) + #t)) + (delete 'check) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin/")) + (conf (string-append (assoc-ref outputs "out") "/conf/"))) + (mkdir-p (string-append (assoc-ref outputs "out") "/lib")) + (for-each (lambda (file) + (install-file (string-append "apache-maven/src/bin/" file) + bin) + (chmod (string-append bin file) #o755)) + '("mvn" "mvnDebug" "mvnyjp")) + (install-file "apache-maven/src/bin/m2.conf" bin) + (copy-recursively "apache-maven/src/conf" conf)) + #t))))) + (inputs + `(("java-plexus-classworlds" ,java-plexus-classworlds) + ("maven-artifact" ,maven-artifact) + ("maven-embedder" ,maven-embedder) + ("maven-core" ,maven-core) + ("maven-compat" ,maven-compat) + ("maven-builder-support" ,maven-builder-support) + ("maven-model" ,maven-model) + ("maven-model-builder" ,maven-model-builder) + ("maven-settings" ,maven-settings) + ("maven-settings-builder" ,maven-settings-builder) + ("maven-plugin-api" ,maven-plugin-api) + ("maven-repository-metadata" ,maven-repository-metadata) + ("maven-shared-utils" ,maven-shared-utils) + ("maven-resolver-api" ,maven-resolver-api) + ("maven-resolver-spi" ,maven-resolver-spi) + ("maven-resolver-util" ,maven-resolver-util) + ("maven-resolver-impl" ,maven-resolver-impl) + ("maven-resolver-connector-basic" ,maven-resolver-connector-basic) + ("maven-resolver-provider" ,maven-resolver-provider) + ("maven-resolver-transport-wagon" ,maven-resolver-transport-wagon) + ("maven-wagon-provider-api" ,maven-wagon-provider-api) + ("maven-wagon-file" ,maven-wagon-file) + ("maven-wagon-http" ,maven-wagon-http) + ("java-commons-logging-minimal" ,java-commons-logging-minimal) + ("java-httpcomponents-httpclient" ,java-httpcomponents-httpclient) + ("java-httpcomponents-httpcore" ,java-httpcomponents-httpcore) + ("maven-wagon-http-shared" ,maven-wagon-http-shared) + ("maven-wagon-tck-http" ,maven-wagon-tck-http) + ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus) + ("java-guice" ,java-guice) + ("java-aopalliance" ,java-aopalliance) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-javax-inject" ,java-javax-inject) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-plexus-utils" ,java-plexus-utils) + ("java-plexus-interpolation" ,java-plexus-interpolation) + ("java-plexus-sec-dispatcher" ,java-plexus-sec-dispatcher) + ("java-plexus-cipher" ,java-plexus-cipher) + ("java-guava" ,java-guava) + ("java-jansi" ,java-jansi) + ("java-jsr250" ,java-jsr250) + ("java-cdi-api" ,java-cdi-api) + ("java-commons-cli" ,java-commons-cli) + ("java-commons-io" ,java-commons-io) + ("java-commons-lang3" ,java-commons-lang3) + ("java-slf4j-api" ,java-slf4j-api) + ;; TODO: replace with maven-slf4j-provider + ("java-slf4j-simple" ,java-slf4j-simple))) + (propagated-inputs + `(("coreutils" ,coreutils) + ("which" ,which))) + (description "Apache Maven is a software project management and comprehension +tool. Based on the concept of a project object model: builds, dependency +management, documentation creation, site publication, and distribution +publication are all controlled from the @file{pom.xml} declarative file. Maven +can be extended by plugins to utilise a number of other development tools for +reporting or the build process."))) diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index a8a19854de..52464e28d4 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -73,7 +73,7 @@ extensive examples, including parsers for the Javascript and C99 languages.") (let ((triplet "i686-unknown-linux-gnu")) (package (name "mes") - (version "0.14") + (version "0.16") (source (origin (method url-fetch) (uri (string-append "https://gitlab.com/janneke/mes" @@ -81,7 +81,7 @@ extensive examples, including parsers for the Javascript and C99 languages.") "/mes-" version ".tar.gz")) (sha256 (base32 - "1i23jk61iibjza2s3lka56ry4ma424g2fyk8pjd5bd1dyjd0yrzf")))) + "0c4vz1qw767af5h615055hh8zjwwmwf5mwkb64l0l921zaa9hg2n")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (propagated-inputs @@ -98,9 +98,7 @@ extensive examples, including parsers for the Javascript and C99 languages.") '()) ("perl" ,perl))) ;build-aux/gitlog-to-changelog (arguments - `(#:make-flags (list - (string-append "PREFIX=" (assoc-ref %outputs "out"))) - #:phases + `(#:phases (modify-phases %standard-phases (add-before 'install 'generate-changelog (lambda _ @@ -122,7 +120,7 @@ Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in (define-public mescc-tools (package (name "mescc-tools") - (version "0.4") + (version "0.5.1") (source (origin (method url-fetch) (uri (string-append @@ -132,7 +130,7 @@ Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1iwc8xqwzdaqckb4jkkisljrgn8ii4bl7dzk1l2kpv98hsyq9vi1")))) + "0rsxbjc3bg0jl3h7ai4hndxx2iyyk8bvwj9nd3xv2vgz3bmypnah")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (arguments diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index bbfa4957fc..db6c22a69c 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -22,10 +22,12 @@ (define-module (gnu packages monitoring) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system perl) #:use-module (guix build-system python) #:use-module (guix build-system gnu) + #:use-module (guix build-system go) #:use-module (gnu packages admin) #:use-module (gnu packages base) #:use-module (gnu packages check) @@ -295,3 +297,27 @@ WSGI and the node exporter textfile collector.") (define-public python2-prometheus-client (package-with-python2 python-prometheus-client)) + +(define-public go-github-com-prometheus-node-exporter + (let ((commit "55c32fcf02492fe4946f7ab563547cc5df7fc61e") + (revision "0")) + (package + (name "go-github-com-prometheus-node-exporter") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/prometheus/node_exporter.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "041b87a0sid23c29swqmi5hw6cxbxvkfj3415jg73cm2pi8wh5s6")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/prometheus/node_exporter")) + (synopsis "Prometheus exporter for hardware and OS metrics") + (description "Prometheus exporter for metrics exposed by *NIX kernels, +written in Go with pluggable metric collectors.") + (home-page "https://github.com/prometheus/node_exporter") + (license license:asl2.0)))) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 3c06fb0e64..57a04e1113 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -276,7 +276,7 @@ information about tracks being played to a scrobbler, such as Libre.FM.") '(#:phases (modify-phases %standard-phases (replace 'check - (lambda _ (zero? (system* "python" "mpd_test.py"))))))) + (lambda _ (invoke "python" "mpd_test.py")))))) (native-inputs `(("python-mock" ,python-mock))) (home-page "https://github.com/Mic92/python-mpd2") (synopsis "Python MPD client library") diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 55dd3a5c42..824b03dc0c 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 nee ;;; Copyright © 2018 Stefan Reichör +;;; Copyright © 2018 Pierre Neidhardt ;;; ;;; This file is part of GNU Guix. ;;; @@ -41,10 +42,12 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system ant) #:use-module (guix build-system cmake) + #:use-module (guix build-system meson) #:use-module (guix build-system python) #:use-module (guix build-system scons) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system waf) + #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages algebra) #:use-module (gnu packages apr) @@ -554,14 +557,14 @@ MusePack, Monkey's Audio, and WavPack files.") (name "extempore") (version "0.7.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/digego/extempore/archive/" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/digego/extempore.git") + (commit version))) (sha256 (base32 - "1wap1mvsicrhlazikf7l8zxg37fir8bmnh9rin28m1rix730vcch")) - (file-name (string-append name "-" version ".tar.gz")))) + "12fsp7zkfxb9kykwq46l88kcbbici9arczrrsl4qn87m6vm5349l")) + (file-name (string-append name "-" version "-checkout")))) (build-system cmake-build-system) (arguments `(;; The default target also includes ahead-of-time compilation of the @@ -918,8 +921,8 @@ Guile.") (define-public non-sequencer ;; The latest tagged release is three years old and uses a custom build ;; system, so we take the last commit. - (let ((commit "10c31e57291b6e42be53371567a722b62b32d220") - (revision "3")) + (let ((commit "5ae43bb27c42387052a73e5ffc5d33efb9d946a9") + (revision "4")) (package (name "non-sequencer") (version (string-append "1.9.5-" revision "." (string-take commit 7))) @@ -930,7 +933,7 @@ Guile.") (commit commit))) (sha256 (base32 - "080rha4ffp7qycyg1mqcf4vj0s7z8qfvz6bxm0w29xgg2kkmb3fx")) + "1cljkkyi9dxqpqhx8y6l2ja4zjmlya26m26kqxml8gx08vyvddhx")) (file-name (string-append name "-" version "-checkout")))) (build-system waf-build-system) (arguments @@ -2641,7 +2644,7 @@ of tools for manipulating and accessing your music.") (define-public milkytracker (package (name "milkytracker") - (version "1.01.00") + (version "1.02.00") (source (origin (method url-fetch) (uri (string-append "https://github.com/milkytracker/" @@ -2650,7 +2653,7 @@ of tools for manipulating and accessing your music.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1dvnddsnn9c83lz4dlm0cfjpc0m524amfkbalxbswdy0qc8cj1wv")) + "08v0l4ipvvwkwv4ywkc6c8a6xnpkyb02anj36w8q6gikxrs6xjvb")) (modules '((guix build utils))) ;; Remove non-FSDG compliant sample songs. (snippet @@ -2683,7 +2686,7 @@ for improved Amiga ProTracker 2/3 compatibility.") (define-public schismtracker (package (name "schismtracker") - (version "20170910") + (version "20180513") (source (origin (method url-fetch) (uri (string-append @@ -2692,7 +2695,7 @@ for improved Amiga ProTracker 2/3 compatibility.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "01gfcjngbpv87y9w5jln8k313hycpkb1d617hdy2cdw2hxqzlclz")) + "1yjfd02arb51n0vyv11qgpn6imh7hcqnc3953cbvgwb4cnrswk9f")) (modules '((guix build utils))) (snippet ;; Remove use of __DATE__ and __TIME__ for reproducibility. @@ -2706,7 +2709,7 @@ for improved Amiga ProTracker 2/3 compatibility.") `(#:phases (modify-phases %standard-phases (add-after 'unpack 'autoconf - (lambda _ (zero? (system* "autoreconf" "-vfi")))) + (lambda _ (invoke "autoreconf" "-vfi"))) (add-before 'configure 'link-libm (lambda _ (setenv "LIBS" "-lm") #t))))) (native-inputs @@ -3196,7 +3199,7 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.") (origin (method git-fetch) (uri (git-reference - (url "http://git.drobilla.net/ingen.git") + (url "https://git.drobilla.net/ingen.git") (commit commit))) (file-name (string-append name "-" version "-checkout")) (sha256 @@ -3257,7 +3260,7 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.") (native-inputs `(("pkg-config" ,pkg-config) ("python-pygments" ,python-pygments))) - (home-page "http://drobilla.net/software/ingen") + (home-page "https://drobilla.net/software/ingen") (synopsis "Modular audio processing system") (description "Ingen is a modular audio processing system for JACK and LV2 based systems. Ingen is built around LV2 technology and a strict @@ -3536,7 +3539,10 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke `(#:make-flags `(,(string-append "PREFIX=" (assoc-ref %outputs "out")) "USE_SYSTEM_FREETYPE=ON" - "DOWNLOAD_SOUNDFONT=OFF") + "DOWNLOAD_SOUNDFONT=OFF" + ;; The following is not supported since Qt 5.11. Can be + ;; removed in Musescore 2.2.2+. + "BUILD_WEBKIT=OFF") ;; There are tests, but no simple target to run. The command ;; used to run them is: ;; @@ -3548,6 +3554,14 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke #:tests? #f #:phases (modify-phases %standard-phases + ;; Fix Qt 5.11 upgrade. Should be fixed in 2.2.2+, see: + ;; + (add-after 'unpack 'patch-sources + (lambda _ + (substitute* "all.h" + (("#include ") "#include +#include ")) + #t)) (delete 'configure)))) (inputs `(("alsa-lib" ,alsa-lib) @@ -3565,7 +3579,6 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke ("qtdeclarative" ,qtdeclarative) ("qtscript" ,qtscript) ("qtsvg" ,qtsvg) - ("qtwebkit" ,qtwebkit) ("qtxmlpatterns" ,qtxmlpatterns))) (native-inputs `(("cmake" ,cmake) @@ -3771,32 +3784,43 @@ notation and includes basic support for digital audio.") (license license:gpl2))) (define-public patchmatrix - (package - (name "patchmatrix") - (version "0.12.0") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/OpenMusicKontrollers/patchmatrix.git") - (commit version))) - (file-name (string-append "patchmatrix-" version "-checkout")) - (sha256 - (base32 - "19ivp7h5vq6r1qhmycjxzvrgg7fc4a3v5vb3n4c7afs4z3pj53zi")))) - (build-system cmake-build-system) - (arguments '(#:tests? #f)) ; no test target - (inputs - `(("jack" ,jack-1) - ("lv2" ,lv2) - ("mesa" ,mesa))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (home-page "https://github.com/OpenMusicKontrollers/patchmatrix") - (synopsis "Simple JACK patch bay") - (description "PatchMatrix is a patch bay for the JACK audio connection + ;; There have been no releases for more than a year. + (let ((commit "a0b0b1e791f4574d5abd059cfe1819c71e8b18d5") + (revision "1")) + (package + (name "patchmatrix") + (version (git-version "0.12.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenMusicKontrollers/patchmatrix.git") + (commit commit))) + (file-name (string-append "patchmatrix-" version "-checkout")) + (sha256 + (base32 + "0pph4ra7aci3rbpqvvr564pi16vxrk448bmvp8985cd9lbjlrp3m")))) + (build-system meson-build-system) + (arguments + '(#:tests? #f ; no test target + #:phases + (modify-phases %standard-phases + (add-before 'reset-gzip-timestamps 'make-gzip-archive-writable + (lambda* (#:key outputs #:allow-other-keys) + (map make-file-writable + (find-files (assoc-ref outputs "out") ".*\\.gz$")) + #t))))) + (inputs + `(("jack" ,jack-1) + ("lv2" ,lv2) + ("mesa" ,mesa))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://github.com/OpenMusicKontrollers/patchmatrix") + (synopsis "Simple JACK patch bay") + (description "PatchMatrix is a patch bay for the JACK audio connection kit. It provides a patch bay in flow matrix style for audio, MIDI, CV, and OSC connections.") - (license license:artistic2.0))) + (license license:artistic2.0)))) (define-public sorcer (package @@ -3994,3 +4018,70 @@ ISRCs and the MCN (=UPC/EAN) from disc.") mb_client, is a development library geared towards developers who wish to add MusicBrainz lookup capabilities to their applications.") (license license:lgpl2.1+))) + +(define-public clyrics + (package + (name "clyrics") + (version "0.10") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/trizen/clyrics/archive/" + version ".tar.gz")) + (sha256 + (base32 + "1l0cg26afnjv8cgk0jbiavbyvq55q1djyigzmi526rpcjjwq9jwn")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system trivial-build-system) + (native-inputs `(("tar" ,tar) + ("gzip" ,gzip))) + (inputs + `(("bash" ,bash) ;for the wrapped program + ("perl" ,perl) + ("perl-www-mechanize" ,perl-www-mechanize) + ("perl-lwp-protocol-https" ,perl-lwp-protocol-https) + ;; Required or else LWP will fail with "GET https://www.google.com/ ==> + ;; 500 Can't verify SSL peers without knowing which Certificate + ;; Authorities to trust". + ("perl-mozilla-ca" ,perl-mozilla-ca))) + (arguments + `(#:modules ((guix build utils)) + #:builder (begin + (use-modules (guix build utils) + (ice-9 match) + (srfi srfi-26)) + (let* ((source (assoc-ref %build-inputs "source")) + (tar (assoc-ref %build-inputs "tar")) + (gzip (assoc-ref %build-inputs "gzip")) + (output (assoc-ref %outputs "out"))) + (setenv "PATH" + (string-append + (assoc-ref %build-inputs "gzip") "/bin" ":" + (assoc-ref %build-inputs "bash") "/bin" ":" + (assoc-ref %build-inputs "perl") "/bin" ":")) + (invoke (string-append tar "/bin/tar") "xvf" + source) + (chdir ,(string-append "clyrics-" version)) + (patch-shebang "clyrics") + (substitute* "clyrics" + (("/usr/share") output)) + (install-file "clyrics" (string-append output "/bin")) + (wrap-program (string-append output "/bin/clyrics") + `("PERL5LIB" ":" = + ,(delete + "" + (map (match-lambda + (((? (cut string-prefix? "perl-" <>) name) . dir) + (string-append dir "/lib/perl5/site_perl")) + (_ "")) + %build-inputs)))) + (copy-recursively "plugins" (string-append output "/clyrics")) + #t)))) + (home-page "https://github.com/trizen/clyrics") + (synopsis "Extensible lyrics fetcher") + (description + "Clyrics is an extensible command-line tool to fetch the lyrics of songs. +It can be used in daemon mode along with the Music-on-Console (MOC) and cmus +console music players.") + (license license:gpl3+))) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 3f23f178ba..b72a4734d7 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2017 Mathieu Othacehe ;;; Copyright © 2017 Leo Famulari ;;; Copyright © 2017, 2018 Efraim Flashner -;;; Copyright © 2017 Rutger Helling +;;; Copyright © 2017, 2018 Rutger Helling ;;; Copyright © 2017 Gábor Boskovits ;;; Copyright © 2017 Thomas Danckaert ;;; Copyright © 2018 Adam Van Ymeren @@ -56,6 +56,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages bison) + #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages code) #:use-module (gnu packages compression) @@ -354,14 +355,14 @@ containing both Producer and Consumer support.") (define-public libndp (package (name "libndp") - (version "1.6") + (version "1.7") (source (origin (method url-fetch) (uri (string-append "http://libndp.org/files/" name "-" version ".tar.gz")) (sha256 (base32 - "03mczwrxqbp54msafxzzyhaazkvjdwm2kipjkrb5xg8kw22glz8c")))) + "1dlinhl39va00v55qygjc9ap77yqf7xvn4rwmvdr49xhzzxhlj1c")))) (build-system gnu-build-system) (home-page "http://libndp.org/") (synopsis "Library for Neighbor Discovery Protocol") @@ -1223,7 +1224,7 @@ gone wild and are suddenly taking up your bandwidth.") (define-public nzbget (package (name "nzbget") - (version "19.1") + (version "20.0") (source (origin (method url-fetch) @@ -1232,7 +1233,7 @@ gone wild and are suddenly taking up your bandwidth.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0y713g7gd4n5chbhr8lv7k50rxkmzysrg13sscxam3s386mmlb1r")) + "0q93aqqyzccn5r9sny38499rmg846qdh9pi2v5kvf9m23v54yk60")) (modules '((guix build utils))) (snippet ;; Reported upstream as . @@ -1349,16 +1350,17 @@ networks.") (define-public speedtest-cli (package (name "speedtest-cli") - (version "2.0.0") + (version "2.0.2") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/sivel/speedtest-cli/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/sivel/speedtest-cli") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "16kcpba7nmszz2h0fq7qvv6src20syck2wlknaacg69kk88aybbk")))) + "0vv2z37g2kgm2dzkfa4bhri92hs0d1acxi8z66gznsl5148q7sdi")))) (build-system python-build-system) (home-page "https://github.com/sivel/speedtest-cli") (synopsis "Internet bandwidth tester") @@ -1774,7 +1776,7 @@ file for more details.") `(("zlib" ,zlib) ("crypto++" ,crypto++) ("libpng" ,libpng) - ("wxwidgets-gtk2", wxwidgets-gtk2))) + ("wxwidgets-gtk2" ,wxwidgets-gtk2))) (home-page "http://amule.org/") (synopsis "Peer-to-peer client for the eD2K and Kademlia networks") (description @@ -1857,3 +1859,79 @@ eight bytes) tools @end itemize") ;; Either BSD-3 or GPL-2 can be used. (license (list license:bsd-3 license:gpl2)))) + +(define-public asio + (package + (name "asio") + (version "1.12.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/chriskohlhoff/asio.git") + (commit (string-join (cons name (string-split version #\.)) + "-")))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "04dg8kpgriay7q62mqcq2gl439k5y4mf761zghsd6wfl0farh3mx")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (inputs + `(("boost" ,boost) + ("openssl" ,openssl))) + (arguments + `(#:configure-flags + (list + (string-append "--with-boost=" (assoc-ref %build-inputs "boost")) + (string-append "--with-openssl=" (assoc-ref %build-inputs "openssl"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir-to-asio + (lambda _ + (chdir "asio"))) + (add-before 'configure 'bootstrap + (lambda _ + (invoke "sh" "autogen.sh")))))) + (home-page "https://think-async.com/Asio") + (synopsis "C++ library for ASynchronous network I/O") + (description "Asio is a cross-platform C++ library for network and +low-level I/O programming that provides developers with a consistent +asynchronous model using a modern C++ approach.") + (license license:boost1.0))) + +(define-public shadowsocks + ;; There are some security fixes after the last release. + (let* ((commit "e332ec93e9c90f1cbee676b022bf2c5d5b7b1239") + (revision "0") + (version (git-version "2.8.2" revision commit))) + (package + (name "shadowsocks") + (version version) + (home-page "https://github.com/shadowsocks/shadowsocks") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "1idd9b4f2pnhcpk1bh030hqg5zq25gkwxd53xi3c0cj242w7sp2j")) + (file-name (git-file-name name version)))) + (build-system python-build-system) + (synopsis "Fast tunnel proxy that helps you bypass firewalls") + (description + "This package is a fast tunnel proxy that helps you bypass firewalls. + +Features: +@itemize +@item TCP & UDP support +@item User management API +@item TCP Fast Open +@item Workers and graceful restart +@item Destination IP blacklist +@end itemize") + (license license:asl2.0)))) diff --git a/gnu/packages/nickle.scm b/gnu/packages/nickle.scm index 4c2269635b..860c111f43 100644 --- a/gnu/packages/nickle.scm +++ b/gnu/packages/nickle.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Nils Gillmann +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,14 +28,14 @@ (define-public nickle (package (name "nickle") - (version "2.77") + (version "2.81") (source (origin (method url-fetch) (uri (string-append "https://nickle.org/release/nickle-" version ".tar.gz")) (sha256 (base32 - "0rhij7cn1zkn8wzxyjkamz9fs262zyg80p6v6i864hdalg4plpm3")))) + "1daqsflnqqgfkq6w6dknbm42avz70f5qxn7qidvgp472i4a37acr")))) (build-system gnu-build-system) (native-inputs `(("readline" ,readline))) diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index 1a79066eac..d1de7a536c 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015, 2016 David Thompson ;;; Copyright © 2016 Ludovic Courtès ;;; Copyright © 2017 Mike Gerwitz +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -46,7 +47,7 @@ (version "9.11.1") (source (origin (method url-fetch) - (uri (string-append "http://nodejs.org/dist/v" version + (uri (string-append "https://nodejs.org/dist/v" version "/node-v" version ".tar.gz")) (sha256 (base32 @@ -64,7 +65,7 @@ "deps/uv" "deps/zlib")) (substitute* "Makefile" - ;; Remove references to bundled software + ;; Remove references to bundled software. (("deps/http_parser/http_parser.gyp") "") (("deps/uv/include/\\*.h") "") (("deps/uv/uv.gyp") "") @@ -138,10 +139,10 @@ ;; Node's configure script expects the CC environment variable to ;; be set. (setenv "CC" (string-append (assoc-ref inputs "gcc") "/bin/gcc")) - (zero? (apply system* - (string-append (assoc-ref inputs "python") - "/bin/python") - "configure" flags))))) + (apply invoke + (string-append (assoc-ref inputs "python") + "/bin/python") + "configure" flags)))) (add-after 'patch-shebangs 'patch-npm-shebang (lambda* (#:key outputs #:allow-other-keys) (let* ((bindir (string-append (assoc-ref outputs "out") @@ -176,6 +177,6 @@ for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.") - (home-page "http://nodejs.org/") + (home-page "https://nodejs.org/") (license expat) (properties '((timeout . 3600))))) ; 1 h diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm index e9ae9fa466..24653a235b 100644 --- a/gnu/packages/ntp.scm +++ b/gnu/packages/ntp.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2015, 2018 Ludovic Courtès ;;; Copyright © 2016, 2017, 2018 Efraim Flashner +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -164,7 +165,7 @@ minimalist than ntpd.") ;; "recent date" since it is used to detect bogus dates ;; received from servers. (setenv "COMPILE_DATE" (number->string 1450563040)) - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (inputs `(("openssl" ,openssl) ("libevent" ,libevent))) (native-inputs `(("pkg-config" ,pkg-config) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 864038fe99..f21c2b2610 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -135,7 +135,8 @@ (patches (search-patches "ocaml-CVE-2015-8869.patch" - "ocaml-Add-a-.file-directive.patch")))) + "ocaml-Add-a-.file-directive.patch" + "ocaml-enable-ocamldoc-reproducibility.patch")))) (build-system gnu-build-system) (native-search-paths (list (search-path-specification diff --git a/gnu/packages/opencl.scm b/gnu/packages/opencl.scm new file mode 100644 index 0000000000..644cd95e93 --- /dev/null +++ b/gnu/packages/opencl.scm @@ -0,0 +1,290 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Fis Trivial +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu packages opencl) + #:use-module (guix build-system gnu) + #:use-module (guix build-system cmake) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (gnu packages) + #:use-module (gnu packages gl) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages compression) + #:use-module (gnu packages libedit) + #:use-module (gnu packages llvm) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) + #:use-module (gnu packages ruby) + #:use-module (gnu packages video) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xorg)) + +;; This file adds OpenCL implementation related packages. Due to the fact that +;; OpenCL devices are not available during build (store environment), tests are +;; all disabled. +;; Check https://lists.gnu.org/archive/html/guix-devel/2018-04/msg00293.html + +(define (make-opencl-headers major-version subversion) + (let ((commit "e986688daf750633898dfd3994e14a9e618f2aa5") + (revision "0")) + (package + (name "opencl-headers") + (version (git-version + (string-append major-version "." subversion ".0") + revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/KhronosGroup/OpenCL-Headers.git") + (commit commit))) + (file-name (string-append name "-" commit)) + (sha256 + (base32 + "176ydpbyws5nr4av6hf8p41pkhc0rc4m4vrah9w6gp2fw2i32838")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (delete 'check) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (copy-recursively (string-append "./opencl" (string-append + ,major-version + ,subversion) "/CL") + (string-append + (assoc-ref outputs "out") + "/include/CL"))))))) + (synopsis "The Khronos OpenCL headers") + (description + "This package provides the C headers by Khronos for OpenCL +programming.") + (home-page "https://www.khronos.org/registry/OpenCL/") + (license license:expat)))) + +(define-public opencl-headers-2.2 + (make-opencl-headers "2" "2")) +(define-public opencl-headers-2.1 + (make-opencl-headers "2" "1")) +(define-public opencl-headers-2.0 + (make-opencl-headers "2" "0")) +(define-public opencl-headers-1.2 + (make-opencl-headers "1" "2")) +(define-public opencl-headers-1.1 + (make-opencl-headers "1" "1")) +(define-public opencl-headers-1.0 + (make-opencl-headers "1" "0")) + +(define-public opencl-headers opencl-headers-2.2) + +(define-public opencl-clhpp + (package + (name "opencl-clhpp") + (version "2.0.10") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/KhronosGroup/OpenCL-CLHPP/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "0awg6yznbz3h285kmnd47fykx2qa34a07sr4x1657yn3jmi4a9zs")) + (file-name (string-append name "-" version ".tar.gz")))) + (native-inputs + `(("python" ,python-wrapper))) + (propagated-inputs + `(("opencl-headers" ,opencl-headers))) + (arguments + `(#:configure-flags + (let ((out (assoc-ref %outputs "out"))) + (list + "-DBUILD_EXAMPLES=OFF" + "-DBUILD_TESTS=OFF" + (string-append "-DCMAKE_INSTALL_PREFIX=" + (assoc-ref %outputs "out") + "/include"))) + ;; regression tests requires a lot more dependencies + #:tests? #f)) + (build-system cmake-build-system) + (home-page "http://github.khronos.org/OpenCL-CLHPP/") + (synopsis "Khronos OpenCL-CLHPP") + (description + "This package provides the @dfn{host API} C++ headers for OpenCL.") + (license license:expat))) + +(define-public ocl-icd + (package + (name "ocl-icd") + (version "2.2.12") + (source (origin + (method url-fetch) + (uri (string-append + "https://forge.imag.fr/frs/download.php/836/ocl-icd-" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1x2dr8p4dkfds56r38av360i3nv1y3326jmshxvjngaf6mlg6rbn")) + (modules '((guix build utils))) + (snippet + '(delete-file-recursively "khronos-headers")))) + (native-inputs + `(("opencl-headers" ,opencl-headers) + ("ruby" ,ruby))) + (inputs + `(("libgcrypt" ,libgcrypt))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags '("DEBUG_OCL_ICD=1"))) + (native-search-paths + (list (search-path-specification + (variable "OPENCL_VENDOR_PATH") + (files '("etc/OpenCL/vendors"))))) + (search-paths native-search-paths) + (home-page "https://forge.imag.fr/projects/ocl-icd/") + (synopsis "OpenCL loader for Installable Client Drivers (ICDs)") + (description + "OpenCL implementations are provided as ICDs (Installable Client +Drivers). An OpenCL program can use several ICDs thanks to the use of an ICD +Loader as provided by this package.") + (license license:bsd-2))) + +(define-public clinfo + (package + (name "clinfo") + (version "2.2.18.04.06") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/Oblomov/clinfo/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0v7cy01irwdgns6lzaprkmm0502pp5a24zhhffydxz1sgfjj2w7p")))) + (build-system gnu-build-system) + (native-inputs + `(("opencl-headers" ,opencl-headers))) + (inputs + `(("ocl-icd" ,ocl-icd))) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (let ((cores (number->string (parallel-job-count)))) + (setenv "CC" "gcc") + (invoke "make" "-j" cores)))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "make" "install" (string-append + "PREFIX=" + (assoc-ref outputs "out")))))) + #:tests? #f)) + (home-page "https://github.com/Oblomov/clinfo") + (synopsis "Print information about OpenCL platforms and devices") + ;; Only the implementation installed via Guix will be detected. + (description + "This package provides the @command{clinfo} command that enumerates all +possible (known) properties of the OpenCL platform and devices available on +the system.") + (license license:cc0))) + +(define-public beignet + (package + (name "beignet") + (version "1.3.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/intel/beignet/archive/Release_v" + version + ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "18r0lq3dkd4yn6bxa45s2lrr9cjbg70nr2nn6xablvgqwzw0jb0r")) + (patches (search-patches "beignet-correct-file-names.patch")) + (modules '((guix build utils))) + (snippet + ;; There's a suspicious .isa binary file under kernels/. + ;; Remove it. + '(for-each delete-file (find-files "." "\\.isa$"))))) + (native-inputs `(("pkg-config" ,pkg-config) + ("python" ,python))) + (inputs `(("clang@3.7" ,clang-3.7) + ("clang-runtime@3.7" ,clang-runtime-3.7) + ("glu" ,glu) + ("llvm@3.7" ,llvm-3.7) + ("libdrm" ,libdrm) + ("libedit" ,libedit) + ("libpthread-stubs", libpthread-stubs) + ("libsm" ,libsm) + ("libva" ,libva) + ("libxfixes" ,libxfixes) + ("libxext" ,libxext) + ("mesa-utils" ,mesa-utils) + ("ncurses" ,ncurses) + ("ocl-icd" ,ocl-icd) + ("opencl-headers" ,opencl-headers) + ("xextproto" ,xextproto) + ("zlib" ,zlib))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCLANG_LIBRARY_DIR=" + (assoc-ref %build-inputs "clang@3.7") "/lib") + "-DENABLE_GL_SHARING=ON" + "-DEXPERIMENTAL_DOUBLE=ON") + + #:phases + (modify-phases %standard-phases + (add-after 'install 'remove-headers + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (delete-file-recursively + (string-append out "/include")) + #t))) + (add-after 'remove-headers 'install-kernels + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (builddir (getcwd)) + (source-dir (string-append + builddir + "/../beignet-Release_v1.3.2/kernels"))) + (copy-recursively source-dir + (string-append out "/lib/beignet/kernels")) + #t)))) + ;; Beignet tries to find GPU when running tests, which is not available + ;; during build. + #:tests? #f)) + (home-page "https://wiki.freedesktop.org/www/Software/Beignet/") + (synopsis "OpenCL framework for Intel GPUs") + (description + "Beignet is an implementation of the OpenCL specification. This code +base contains the code to run OpenCL programs on Intel GPUs---IvyBridge, +Haswell, Skylake, Apollolake, etc. It defines and implements the OpenCL host +functions required to initialize the device, create the command queues, the +kernels and the programs, and run them on the GPU. The code also contains a +back-end for the LLVM compiler framework.") + (license license:lgpl2.1+))) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index e8e17eeeef..6a55f62ee6 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Julien Lepiller ;;; Copyright © 2018 Rutger Helling +;;; Copyright © 2018 Sou Bunnbu ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,15 +27,20 @@ (define-module (gnu packages package-management) #:use-module (gnu packages) #:use-module (gnu packages acl) + #:use-module (gnu packages attr) + #:use-module (gnu packages avahi) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) #:use-module (gnu packages bdw-gc) + #:use-module (gnu packages bison) #:use-module (gnu packages bootstrap) ;for 'bootstrap-guile-origin' #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages cpio) + #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages databases) + #:use-module (gnu packages docbook) #:use-module (gnu packages file) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) @@ -94,8 +100,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "0.14.0") - (commit "ab85cf7185da366da56314c53d8e43276e1cccc4") - (revision 11)) + (commit "7af5c2a248b6c229187fc850517c84b0917c452b") + (revision 13)) (package (name "guix") @@ -111,7 +117,7 @@ (commit commit))) (sha256 (base32 - "1c00yr2vgsdl3kmlbjppyws47ssahamdx88y0wg26x73px71rd19")) + "06kjimcln4ydirgl05qy98kxjyx3l6brxnq1ly7wb85f73s97gix")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -207,12 +213,13 @@ (let* ((out (assoc-ref outputs "out")) (guile (assoc-ref inputs "guile")) (json (assoc-ref inputs "guile-json")) + (sqlite (assoc-ref inputs "guile-sqlite3")) (git (assoc-ref inputs "guile-git")) (bs (assoc-ref inputs "guile-bytestructures")) (ssh (assoc-ref inputs "guile-ssh")) (gnutls (assoc-ref inputs "gnutls")) - (deps (list json gnutls git bs ssh)) + (deps (list json sqlite gnutls git bs ssh)) (effective (read-line (open-pipe* OPEN_READ @@ -269,6 +276,7 @@ (propagated-inputs `(("gnutls" ,gnutls) ("guile-json" ,guile-json) + ("guile-sqlite3" ,guile-sqlite3) ("guile-ssh" ,guile-ssh) ("guile-git" ,guile-git))) @@ -286,26 +294,34 @@ the Nix package manager.") ;; Alias for backward compatibility. (define-public guix-devel guix) -(define-public guix-register +(define-public guix-daemon ;; This package is for internal consumption: it allows us to quickly build - ;; the 'guix-register' program, which is referred to by (guix config). - ;; TODO: Remove this hack when 'guix-register' has been superseded by Scheme - ;; code. + ;; the 'guix-daemon' program and use that in (guix self), used by 'guix + ;; pull'. (package (inherit guix) (properties `((hidden? . #t))) - (name "guix-register") + (name "guix-daemon") ;; Use a minimum set of dependencies. (native-inputs (fold alist-delete (package-native-inputs guix) '("po4a" "graphviz" "help2man"))) - (propagated-inputs + (inputs `(("gnutls" ,gnutls) - ("guile-git" ,guile-git))) + ("guile-git" ,guile-git) + ,@(fold alist-delete (package-inputs guix) + '("boot-guile" "boot-guile/i686" "util-linux")))) + + (propagated-inputs '()) (arguments (substitute-keyword-arguments (package-arguments guix) + ((#:configure-flags flags '()) + ;; Pretend we have those libraries; we don't actually need them. + `(append ,flags + '("guix_cv_have_recent_guile_sqlite3=yes" + "guix_cv_have_recent_guile_ssh=yes"))) ((#:tests? #f #f) #f) ((#:phases phases '%standard-phases) @@ -315,11 +331,21 @@ the Nix package manager.") (invoke "make" "nix/libstore/schema.sql.hh") (invoke "make" "-j" (number->string (parallel-job-count)) - "guix-register"))) + "guix-daemon"))) (delete 'copy-bootstrap-guile) (replace 'install - (lambda _ - (invoke "make" "install-sbinPROGRAMS"))) + (lambda* (#:key outputs #:allow-other-keys) + (invoke "make" "install-binPROGRAMS" + "install-nodist_pkglibexecSCRIPTS") + + ;; We need to tell 'guix-daemon' which 'guix' command to use. + ;; Here we use a questionable hack where we hard-code + ;; "~root/.config", which could be wrong (XXX). + (let ((out (assoc-ref outputs "out"))) + (substitute* (find-files (string-append out "/libexec")) + (("exec \".*/bin/guix\"") + "exec ~root/.config/current/bin/guix")) + #t))) (delete 'wrap-program))))))) (define-public guile2.0-guix @@ -376,41 +402,24 @@ out) and returning a package that uses that as its 'source'." (define-public nix (package (name "nix") - (version "1.11.9") + (version "2.0.4") (source (origin (method url-fetch) (uri (string-append "http://nixos.org/releases/nix/nix-" version "/nix-" version ".tar.xz")) (sha256 (base32 - "1qg7qrfr60dysmyfg3ijgani71l23p1kqadhjs8kz11pgwkkx50f")))) + "0ss9svxlh1pvrdmnqjvjyqjmbqmrdbyfarvbb14i9d4bggzl0r8n")))) (build-system gnu-build-system) - ;; XXX: Should we pass '--with-store-dir=/gnu/store'? But then we'd also - ;; need '--localstatedir=/var'. But then! The thing would use /var/nix - ;; instead of /var/guix. So in the end, we do nothing special. - (arguments - '(#:configure-flags - ;; Set the prefixes of Perl libraries to avoid propagation. - (let ((perl-libdir (lambda (p) - (string-append - (assoc-ref %build-inputs p) - "/lib/perl5/site_perl")))) - (list (string-append "--with-dbi=" - (perl-libdir "perl-dbi")) - (string-append "--with-dbd-sqlite=" - (perl-libdir "perl-dbd-sqlite")) - (string-append "--with-www-curl=" - (perl-libdir "perl-www-curl")))))) - (native-inputs `(("perl" ,perl) - ("pkg-config" ,pkg-config))) + (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) - ("openssl" ,openssl) - ("libgc" ,libgc) - ("sqlite" ,sqlite) ("bzip2" ,bzip2) - ("perl-www-curl" ,perl-www-curl) - ("perl-dbi" ,perl-dbi) - ("perl-dbd-sqlite" ,perl-dbd-sqlite))) + ("libgc" ,libgc) + ("libseccomp" ,libseccomp) + ("libsodium" ,libsodium) + ("openssl" ,openssl) + ("sqlite" ,sqlite) + ("xz" ,xz))) (home-page "https://nixos.org/nix/") (synopsis "The Nix package manager") (description @@ -544,13 +553,13 @@ transactions from C or Python.") (define-public diffoscope (package (name "diffoscope") - (version "95") + (version "96") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "0aksxxivxli6l3fylxgl771hw0h7l8x35l76cmj0d12zgx54w0a1")))) + "1x66f2x8miy3giff14higpcs70c0zb5d3gj6yn8ac6p183sngl72")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -899,3 +908,57 @@ Microsoft cabinet (.@dfn{CAB}) files.") and sign Windows@tie{}Installer (.@dfn{MSI}) files. It aims to be a solution for packaging and deployment of cross-compiled Windows applications.") (license license:lgpl2.1+))) + +(define-public libostree + (package + (name "libostree") + (version "2018.5") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/ostreedev/ostree/releases/download/v" + version "/libostree-" version ".tar.xz")) + (sha256 + (base32 + "0q82d6rvp119nx7ck7j63a591kz8vg7v465kf9ygh8kzg875l3xd")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + ;; Don't try to use the non-existing '/var/tmp' as test + ;; directory. + (setenv "TEST_TMPDIR" (getenv "TMPDIR")) + #t))) + ;; XXX: fails with: + ;; tap-driver.sh: internal error getting exit status + ;; tap-driver.sh: fatal: I/O or internal error + #:tests? #f)) + (native-inputs + `(("attr" ,attr) ; for tests + ("bison" ,bison) + ("glib:bin" ,glib "bin") ; for 'glib-mkenums' + ("gobject-introspection" ,gobject-introspection) + ("pkg-config" ,pkg-config) + ("xsltproc" ,libxslt))) + (inputs + `(("avahi" ,avahi) + ("docbook-xml" ,docbook-xml-4.2) + ("docbook-xsl" ,docbook-xsl) + ("e2fsprogs" ,e2fsprogs) + ("fuse" ,fuse) + ("glib" ,glib) + ("gpgme" ,gpgme) + ("libarchive" ,libarchive) + ("libsoup" ,libsoup) + ("nettle" ,nettle) ; required by 'libarchive.la' + ("util-linux" ,util-linux))) + (home-page "https://ostree.readthedocs.io/en/latest/") + (synopsis "Operating system and container binary deployment and upgrades") + (description + "@code{libostree} is both a shared library and suite of command line +tools that combines a \"git-like\" model for committing and downloading +bootable filesystem trees, along with a layer for deploying them and managing +the bootloader configuration.") + (license license:lgpl2.0+))) diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 716b433443..cb27f49c07 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2016 Ben Woodcroft ;;; Copyright © 2017, 2018 Rutger Helling ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -47,7 +48,7 @@ (define-public parallel (package (name "parallel") - (version "20180522") + (version "20180622") (source (origin (method url-fetch) @@ -55,7 +56,7 @@ version ".tar.bz2")) (sha256 (base32 - "1khcz9pm7rjnq4gw8pn30k1d40x337a204dxj4y4qijpx8m7w0gb")))) + "1n91dnnl8d8pman20hr03l9qrpc9wm5hw32ph45xjs0bgp1nmk7j")))) (build-system gnu-build-system) (arguments `(#:phases @@ -68,13 +69,20 @@ ;; Patch hard coded '/bin/sh' in the lin ending in: ;; $Global::shell = $ENV{'PARALLEL_SHELL'} || ;; parent_shell($$) || $ENV{'SHELL'} || "/bin/sh"; - (("/bin/sh\\\";\n$") (string-append (which "sh") "\";\n")) - ;; Patch call to 'ps' and 'perl' commands. - ((" ps ") (string-append " " (which "ps") " ")) - ((" perl -") (string-append " " (which "perl") " -")))) + (("/bin/sh\\\";\n$") (string-append (which "sh") "\";\n")))) (list "src/parallel" "src/sem")) #t)) - (add-after 'install 'post-install-test + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/parallel") + `("PATH" ":" prefix + ,(map (lambda (input) + (string-append (assoc-ref inputs input) "/bin")) + '("perl" + "procps")))) + #t))) + (add-after 'wrap-program 'post-install-test (lambda* (#:key outputs #:allow-other-keys) (invoke (string-append (assoc-ref outputs "out") "/bin/parallel") diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 497963af63..9ac30420b7 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -358,7 +358,7 @@ any X11 window.") (define-public password-store (package (name "password-store") - (version "1.7.1") + (version "1.7.2") (source (origin (method url-fetch) (uri @@ -366,8 +366,7 @@ any X11 window.") name "-" version ".tar.xz")) (sha256 (base32 - "0scqkpll2q8jhzcgcsh9kqz0gwdpvynivqjmmbzax2irjfaiklpn")) - (patches (search-patches "password-store-gnupg-compat.patch")))) + "1sl0d7nc85c6c2bmmmyb8rpmn47vhkj831l153mjlkawjvhwas27")))) (build-system gnu-build-system) (arguments '(#:phases diff --git a/gnu/packages/patches/beignet-correct-file-names.patch b/gnu/packages/patches/beignet-correct-file-names.patch new file mode 100644 index 0000000000..2c5d0bbaea --- /dev/null +++ b/gnu/packages/patches/beignet-correct-file-names.patch @@ -0,0 +1,32 @@ +Help CMake find Clang's libraries. +Have it install the ICD file in the right place. + +diff --git a/CMake/FindLLVM.cmake b/CMake/FindLLVM.cmake +index 5457f248..e8e8f94a 100644 +--- a/CMake/FindLLVM.cmake ++++ b/CMake/FindLLVM.cmake +@@ -107,7 +107,7 @@ endif (LLVM_VERSION_NODOT VERSION_GREATER 34) + macro(add_one_lib name) + FIND_LIBRARY(CLANG_LIB + NAMES ${name} +- PATHS ${LLVM_LIBRARY_DIR} NO_DEFAULT_PATH) ++ PATHS ${CLANG_LIBRARY_DIR} NO_DEFAULT_PATH) + set(CLANG_LIBRARIES ${CLANG_LIBRARIES} ${CLANG_LIB}) + unset(CLANG_LIB CACHE) + endmacro() +diff --git a/CMakeLists.txt b/CMakeLists.txt +index c11acbb2..fb99e5c8 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -217,7 +217,7 @@ IF(OCLIcd_FOUND) + "intel-beignet.icd.in" + "${ICD_FILE_NAME}" + ) +- install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${ICD_FILE_NAME} DESTINATION /etc/OpenCL/vendors) ++ install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${ICD_FILE_NAME} DESTINATION etc/OpenCL/vendors COMPONENT config) + ELSE(OCLIcd_FOUND) + MESSAGE(STATUS "Looking for OCL ICD header file - not found") + MESSAGE(FATAL_ERROR "OCL ICD loader miss. If you really want to disable OCL ICD support, please run cmake with option -DOCLICD_COMPAT=0.") +-- +2.14.3 + diff --git a/gnu/packages/patches/bind-CVE-2018-5738.patch b/gnu/packages/patches/bind-CVE-2018-5738.patch new file mode 100644 index 0000000000..ddef014651 --- /dev/null +++ b/gnu/packages/patches/bind-CVE-2018-5738.patch @@ -0,0 +1,100 @@ +Fix CVE-2018-5738: + +https://kb.isc.org/article/AA-01616/0/CVE-2018-5738 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-5738 + +diff --git a/bin/named/server.c b/bin/named/server.c +index f63554e..847c4ff 100644 +--- a/bin/named/server.c ++++ b/bin/named/server.c +@@ -3725,10 +3725,6 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, + CHECKM(named_config_getport(config, &port), "port"); + dns_view_setdstport(view, port); + +- CHECK(configure_view_acl(vconfig, config, named_g_config, +- "allow-query", NULL, actx, +- named_g_mctx, &view->queryacl)); +- + /* + * Make the list of response policy zone names for a view that + * is used for real lookups and so cares about hints. +@@ -4692,21 +4688,35 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, + "allow-query-cache-on", NULL, actx, + named_g_mctx, &view->cacheonacl)); + /* +- * Set "allow-query-cache", "allow-recursion", and +- * "allow-recursion-on" acls if configured in named.conf. +- * (Ignore the global defaults for now, because these ACLs +- * can inherit from each other when only some of them set at +- * the options/view level.) ++ * Set the "allow-query", "allow-query-cache", "allow-recursion", ++ * and "allow-recursion-on" ACLs if configured in named.conf, but ++ * NOT from the global defaults. This is done by leaving the third ++ * argument to configure_view_acl() NULL. ++ * ++ * We ignore the global defaults here because these ACLs ++ * can inherit from each other. If any are still unset after ++ * applying the inheritance rules, we'll look up the defaults at ++ * that time. + */ +- CHECK(configure_view_acl(vconfig, config, NULL, "allow-query-cache", +- NULL, actx, named_g_mctx, &view->cacheacl)); ++ ++ /* named.conf only */ ++ CHECK(configure_view_acl(vconfig, config, NULL, ++ "allow-query", NULL, actx, ++ named_g_mctx, &view->queryacl)); ++ ++ /* named.conf only */ ++ CHECK(configure_view_acl(vconfig, config, NULL, ++ "allow-query-cache", NULL, actx, ++ named_g_mctx, &view->cacheacl)); + + if (strcmp(view->name, "_bind") != 0 && + view->rdclass != dns_rdataclass_chaos) + { ++ /* named.conf only */ + CHECK(configure_view_acl(vconfig, config, NULL, + "allow-recursion", NULL, actx, + named_g_mctx, &view->recursionacl)); ++ /* named.conf only */ + CHECK(configure_view_acl(vconfig, config, NULL, + "allow-recursion-on", NULL, actx, + named_g_mctx, &view->recursiononacl)); +@@ -4744,18 +4754,21 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, + * the global config. + */ + if (view->recursionacl == NULL) { ++ /* global default only */ + CHECK(configure_view_acl(NULL, NULL, named_g_config, + "allow-recursion", NULL, + actx, named_g_mctx, + &view->recursionacl)); + } + if (view->recursiononacl == NULL) { ++ /* global default only */ + CHECK(configure_view_acl(NULL, NULL, named_g_config, + "allow-recursion-on", NULL, + actx, named_g_mctx, + &view->recursiononacl)); + } + if (view->cacheacl == NULL) { ++ /* global default only */ + CHECK(configure_view_acl(NULL, NULL, named_g_config, + "allow-query-cache", NULL, + actx, named_g_mctx, +@@ -4769,6 +4782,14 @@ configure_view(dns_view_t *view, dns_viewlist_t *viewlist, + CHECK(dns_acl_none(mctx, &view->cacheacl)); + } + ++ if (view->queryacl == NULL) { ++ /* global default only */ ++ CHECK(configure_view_acl(NULL, NULL, named_g_config, ++ "allow-query", NULL, ++ actx, named_g_mctx, ++ &view->queryacl)); ++ } ++ + /* + * Ignore case when compressing responses to the specified + * clients. This causes case not always to be preserved, diff --git a/gnu/packages/patches/binutils-aarch64-symbol-relocation.patch b/gnu/packages/patches/binutils-aarch64-symbol-relocation.patch new file mode 100644 index 0000000000..fbd596862b --- /dev/null +++ b/gnu/packages/patches/binutils-aarch64-symbol-relocation.patch @@ -0,0 +1,36 @@ +Fix a regression in Binutils 2.30 where some symbols are incorrectly assumed +to be addresses: + +https://sourceware.org/bugzilla/show_bug.cgi?id=22764 + +Patch taken from upstream (with ChangeLog entries and tests omitted): + +https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=279b2f94168ee91e02ccd070d27c983fc001fe12 + +diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c +index af448f9..2737773 100644 +--- a/bfd/elfnn-aarch64.c ++++ b/bfd/elfnn-aarch64.c +@@ -7189,10 +7189,19 @@ elfNN_aarch64_check_relocs (bfd *abfd, struct bfd_link_info *info, + #if ARCH_SIZE == 64 + case BFD_RELOC_AARCH64_32: + #endif +- if (bfd_link_pic (info) +- && (sec->flags & SEC_ALLOC) != 0 +- && (sec->flags & SEC_READONLY) != 0) ++ if (bfd_link_pic (info) && (sec->flags & SEC_ALLOC) != 0) + { ++ if (h != NULL ++ /* This is an absolute symbol. It represents a value instead ++ of an address. */ ++ && ((h->root.type == bfd_link_hash_defined ++ && bfd_is_abs_section (h->root.u.def.section)) ++ /* This is an undefined symbol. */ ++ || h->root.type == bfd_link_hash_undefined)) ++ break; ++ ++ /* For local symbols, defined global symbols in a non-ABS section, ++ it is assumed that the value is an address. */ + int howto_index = bfd_r_type - BFD_RELOC_AARCH64_RELOC_START; + _bfd_error_handler + /* xgettext:c-format */ diff --git a/gnu/packages/patches/dovecot-trees-support-dovecot-2.3.patch b/gnu/packages/patches/dovecot-trees-support-dovecot-2.3.patch new file mode 100644 index 0000000000..314f6b6de0 --- /dev/null +++ b/gnu/packages/patches/dovecot-trees-support-dovecot-2.3.patch @@ -0,0 +1,60 @@ +From: Tobias Geerinckx-Rice +Date: Mon, 25 Jun 2018 00:34:52 +0200 +Subject: dovecot-trees: Fix build with dovecot 2.3. + +The following patch was taken verbatim from the upstream repository[0] +and will be included in the next release. + +[0]: https://0xacab.org/riseuplabs/trees/commit/e136c32a044701d68b0235b8405357c5fca62a11 +--- +From e136c32a044701d68b0235b8405357c5fca62a11 Mon Sep 17 00:00:00 2001 +From: David Goulet +Date: Tue, 10 Apr 2018 13:48:01 -0400 +Subject: [PATCH] Support dovecot 2.3 + +Untested but it builds now properly. Thanks to "smorks" for the report! + +Fixes #16 + +Signed-off-by: David Goulet +--- + src/trees-istream.c | 4 ++++ + src/trees-ostream.c | 7 +++++++ + 2 files changed, 11 insertions(+) + +diff --git a/src/trees-istream.c b/src/trees-istream.c +index b08ff16..e94be7d 100644 +--- a/src/trees-istream.c ++++ b/src/trees-istream.c +@@ -431,5 +431,9 @@ trees_istream_create(struct istream *input, + sstream->out_byte_count = 0; + #endif + ++#if DOVECOT_PREREQ(2, 3) ++ return i_stream_create(&sstream->istream, input, i_stream_get_fd(input), 0); ++#else + return i_stream_create(&sstream->istream, input, i_stream_get_fd(input)); ++#endif /* DOVECOT_PREREQ */ + } +diff --git a/src/trees-ostream.c b/src/trees-ostream.c +index 1b25a91..0cb7867 100644 +--- a/src/trees-ostream.c ++++ b/src/trees-ostream.c +@@ -174,7 +174,14 @@ trees_ostream_sendv(struct ostream_private *stream, + static int + trees_ostream_flush(struct ostream_private *stream) + { ++ /* This is pretty ugly but unfortunately between 2.2 and 2.3, Dovecot changed ++ * the expected value to be non zero in 2.3+ . */ ++#if DOVECOT_PREREQ(2, 3) ++ ssize_t result = 1; ++#else + ssize_t result = 0; ++#endif /* DOVECOT_PREREQ */ ++ + struct trees_ostream *sstream = (struct trees_ostream *) stream; + + if (sstream->flushed) { +-- +2.17.1 + diff --git a/gnu/packages/patches/doxygen-gcc-ice.patch b/gnu/packages/patches/doxygen-gcc-ice.patch new file mode 100644 index 0000000000..fbfedcb7ab --- /dev/null +++ b/gnu/packages/patches/doxygen-gcc-ice.patch @@ -0,0 +1,25 @@ +Work around this GCC ICE: . It shows up +only when doing native compiles on armhf-linux. + +Yes it's a terrible patch, but it does the job. + +--- doxygen-1.8.13/qtools/qutfcodec.cpp 1970-01-01 01:00:00.000000000 +0100 ++++ doxygen-1.8.13/qtools/qutfcodec.cpp 2018-06-08 14:14:29.614009929 +0200 +@@ -189,7 +189,7 @@ int QUtf16Codec::heuristicContentMatch(c + } + + +- ++volatile const void *bomPointer = &QChar::byteOrderMark; + + class QUtf16Encoder : public QTextEncoder { + bool headerdone; +@@ -209,7 +209,7 @@ public: + headerdone = TRUE; + len_in_out = (1+uc.length())*(int)sizeof(QChar); + QCString d(len_in_out); +- memcpy(d.rawData(),&QChar::byteOrderMark,sizeof(QChar)); ++ memcpy(d.rawData(),(void *)bomPointer,sizeof(QChar)); + memcpy(d.rawData()+sizeof(QChar),uc.unicode(),uc.length()*sizeof(QChar)); + return d; + } diff --git a/gnu/packages/patches/elixir-disable-failing-tests.patch b/gnu/packages/patches/elixir-disable-failing-tests.patch deleted file mode 100644 index 547598b292..0000000000 --- a/gnu/packages/patches/elixir-disable-failing-tests.patch +++ /dev/null @@ -1,284 +0,0 @@ -Most of these tests fail for unknown reasons when run in the chroot -environment of a Guix build process. - -Common failures are: - - * Mix.Shell.cmd() fails with error 130 - * The git_repo fixture cannot be found - * Communication with spawned processes fails with EPIPE - * Failure to copy files - - -diff --git a/lib/elixir/test/elixir/kernel/cli_test.exs b/lib/elixir/test/elixir/kernel/cli_test.exs -index 3ffd56c..1232d19 100644 ---- a/lib/elixir/test/elixir/kernel/cli_test.exs -+++ b/lib/elixir/test/elixir/kernel/cli_test.exs -@@ -39,6 +39,7 @@ end - defmodule Kernel.CLI.OptionParsingTest do - use ExUnit.Case, async: true - -+ @tag :skip - test "properly parses paths" do - root = fixture_path("../../..") |> to_charlist - list = elixir('-pa "#{root}/*" -pz "#{root}/lib/*" -e "IO.inspect(:code.get_path, limit: :infinity)"') -@@ -57,6 +58,7 @@ end - defmodule Kernel.CLI.AtExitTest do - use ExUnit.Case, async: true - -+ @tag :skip - test "invokes at_exit callbacks" do - assert elixir(fixture_path("at_exit.exs") |> to_charlist) == - 'goodbye cruel world with status 1\n' -@@ -66,6 +68,7 @@ end - defmodule Kernel.CLI.ErrorTest do - use ExUnit.Case, async: true - -+ @tag :skip - test "properly format errors" do - assert :string.str('** (throw) 1', elixir('-e "throw 1"')) == 0 - assert :string.str('** (ErlangError) erlang error: 1', elixir('-e "error 1"')) == 0 -@@ -86,6 +89,7 @@ defmodule Kernel.CLI.CompileTest do - {:ok, [tmp_dir_path: tmp_dir_path, beam_file_path: beam_file_path, fixture: fixture]} - end - -+ @tag :skip - test "compiles code", context do - assert elixirc('#{context[:fixture]} -o #{context[:tmp_dir_path]}') == '' - assert File.regular?(context[:beam_file_path]) -@@ -96,6 +100,7 @@ defmodule Kernel.CLI.CompileTest do - Code.delete_path context[:tmp_dir_path] - end - -+ @tag :skip - test "fails on missing patterns", context do - output = elixirc('#{context[:fixture]} non_existing.ex -o #{context[:tmp_dir_path]}') - assert :string.str(output, 'non_existing.ex') > 0, "expected non_existing.ex to be mentioned" -@@ -103,6 +108,7 @@ defmodule Kernel.CLI.CompileTest do - refute File.exists?(context[:beam_file_path]), "expected the sample to not be compiled" - end - -+ @tag :skip - test "fails on missing write access to .beam file", context do - compilation_args = '#{context[:fixture]} -o #{context[:tmp_dir_path]}' - -diff --git a/lib/elixir/test/elixir/kernel/dialyzer_test.exs b/lib/elixir/test/elixir/kernel/dialyzer_test.exs -index 801d852..40fc5bc 100644 ---- a/lib/elixir/test/elixir/kernel/dialyzer_test.exs -+++ b/lib/elixir/test/elixir/kernel/dialyzer_test.exs -@@ -60,16 +60,19 @@ defmodule Kernel.DialyzerTest do - assert_dialyze_no_warnings! context - end - -+ @tag :skip - test "no warnings on rewrites", context do - copy_beam! context, Dialyzer.Rewrite - assert_dialyze_no_warnings! context - end - -+ @tag :skip - test "no warnings on raise", context do - copy_beam! context, Dialyzer.Raise - assert_dialyze_no_warnings! context - end - -+ @tag :skip - test "no warnings on macrocallback", context do - copy_beam! context, Dialyzer.Macrocallback - copy_beam! context, Dialyzer.Macrocallback.Impl -diff --git a/lib/elixir/test/elixir/system_test.exs b/lib/elixir/test/elixir/system_test.exs -index aafa559..0f9c178 100644 ---- a/lib/elixir/test/elixir/system_test.exs -+++ b/lib/elixir/test/elixir/system_test.exs -@@ -53,7 +53,8 @@ defmodule SystemTest do - assert System.endianness in [:little, :big] - assert System.endianness == System.compiled_endianness - end -- -+ -+ @tag :skip - test "argv/0" do - list = elixir('-e "IO.inspect System.argv" -- -o opt arg1 arg2 --long-opt 10') - {args, _} = Code.eval_string list, [] -diff --git a/lib/mix/test/mix/dep_test.exs b/lib/mix/test/mix/dep_test.exs -index fff3351..d6ed1b3 100644 ---- a/lib/mix/test/mix/dep_test.exs -+++ b/lib/mix/test/mix/dep_test.exs -@@ -244,6 +244,7 @@ defmodule Mix.DepTest do - end - end - -+ @tag :skip - test "remote converger" do - deps = [{:deps_repo, "0.1.0", path: "custom/deps_repo"}, - {:git_repo, "0.2.0", git: MixTest.Case.fixture_path("git_repo")}] -@@ -301,6 +302,7 @@ defmodule Mix.DepTest do - end - end - -+ @tag :skip - test "remote converger is not invoked if deps diverge" do - deps = [{:deps_repo, "0.1.0", path: "custom/deps_repo"}, - {:git_repo, "0.2.0", git: MixTest.Case.fixture_path("git_repo"), only: :test}] - -diff --git a/lib/mix/test/mix/shell/io_test.exs b/lib/mix/test/mix/shell/io_test.exs -index 9bfb6b4..d982ef3 100644 ---- a/lib/mix/test/mix/shell/io_test.exs -+++ b/lib/mix/test/mix/shell/io_test.exs -@@ -29,6 +29,7 @@ defmodule Mix.Shell.IOTest do - assert capture_io("", fn -> refute yes?("Ok?") end) - end - -+ @tag :skip - test "runs a given command" do - assert capture_io("", fn -> assert cmd("echo hello") == 0 end) == "hello\n" - -diff --git a/lib/mix/test/mix/shell/quiet_test.exs b/lib/mix/test/mix/shell/quiet_test.exs -index 626429b..99fab35 100644 ---- a/lib/mix/test/mix/shell/quiet_test.exs -+++ b/lib/mix/test/mix/shell/quiet_test.exs -@@ -29,6 +29,7 @@ defmodule Mix.Shell.QuietTest do - assert capture_io("", fn -> refute yes?("Ok?") end) - end - -+ @tag :skip - test "runs a given command" do - assert capture_io("", fn -> assert cmd("echo hello") == 0 end) == "" - -diff --git a/lib/mix/test/mix/tasks/cmd_test.exs b/lib/mix/test/mix/tasks/cmd_test.exs -index db4bf06..4d441f7 100644 ---- a/lib/mix/test/mix/tasks/cmd_test.exs -+++ b/lib/mix/test/mix/tasks/cmd_test.exs -@@ -3,6 +3,7 @@ Code.require_file "../../test_helper.exs", __DIR__ - defmodule Mix.Tasks.CmdTest do - use MixTest.Case - -+ @tag :skip - test "runs the command for each app" do - in_fixture "umbrella_dep/deps/umbrella", fn -> - Mix.Project.in_project(:umbrella, ".", fn _ -> -diff --git a/lib/mix/test/mix/tasks/deps.tree_test.exs b/lib/mix/test/mix/tasks/deps.tree_test.exs -index 4f09ff3..c371997 100644 ---- a/lib/mix/test/mix/tasks/deps.tree_test.exs -+++ b/lib/mix/test/mix/tasks/deps.tree_test.exs -@@ -29,6 +29,7 @@ defmodule Mix.Tasks.Deps.TreeTest do - end - end - -+ @tag :skip - test "shows the dependency tree", context do - Mix.Project.push ConvergedDepsApp - -@@ -109,6 +110,7 @@ defmodule Mix.Tasks.Deps.TreeTest do - end - end - -+ @tag :skip - test "shows the dependency tree in DOT graph format", context do - Mix.Project.push ConvergedDepsApp - -diff --git a/lib/mix/test/mix/tasks/deps_test.exs b/lib/mix/test/mix/tasks/deps_test.exs -index b061777..cc45cf8 100644 ---- a/lib/mix/test/mix/tasks/deps_test.exs -+++ b/lib/mix/test/mix/tasks/deps_test.exs -@@ -96,6 +96,7 @@ - end - end - -+ @tag :skip - test "prints list of dependencies and their lock status" do - Mix.Project.push DepsApp - -@@ -409,6 +409,7 @@ defmodule Mix.Tasks.DepsTest do - end - end - -+ @tag :skip - test "fails on diverged dependencies by requirement" do - Mix.Project.push ConvergedDepsApp - -@@ -440,6 +441,7 @@ defmodule Mix.Tasks.DepsTest do - end - end - -+ @tag :skip - test "fails on diverged dependencies even when optional" do - Mix.Project.push ConvergedDepsApp - -@@ -469,6 +471,7 @@ defmodule Mix.Tasks.DepsTest do - end - end - -+ @tag :skip - test "works with converged dependencies" do - Mix.Project.push ConvergedDepsApp - -@@ -491,6 +494,7 @@ defmodule Mix.Tasks.DepsTest do - purge [GitRepo, GitRepo.Mixfile] - end - -+ @tag :skip - test "works with overridden dependencies" do - Mix.Project.push OverriddenDepsApp - -diff --git a/lib/mix/test/mix/umbrella_test.exs b/lib/mix/test/mix/umbrella_test.exs -index 69f9428..406668a 100644 ---- a/lib/mix/test/mix/umbrella_test.exs -+++ b/lib/mix/test/mix/umbrella_test.exs -@@ -98,6 +98,7 @@ defmodule Mix.UmbrellaTest do - end - end - -+ @tag :skip - test "loads umbrella child dependencies in all environments" do - in_fixture "umbrella_dep/deps/umbrella", fn -> - Mix.Project.in_project :umbrella, ".", fn _ -> - -diff --git a/lib/elixir/test/elixir/kernel/dialyzer_test.exs b/lib/elixir/test/elixir/kernel/dialyzer_test.exs -index 792222c..e90beb9 100644 ---- a/lib/elixir/test/elixir/kernel/dialyzer_test.exs -+++ b/lib/elixir/test/elixir/kernel/dialyzer_test.exs -@@ -54,6 +54,7 @@ defmodule Kernel.DialyzerTest do - {:ok, [outdir: dir, dialyzer: dialyzer]} - end - -+ @tag :skip - test "no warnings on valid remote calls", context do - copy_beam! context, Dialyzer.RemoteCall - assert_dialyze_no_warnings! context -@@ -78,11 +79,13 @@ defmodule Kernel.DialyzerTest do - assert_dialyze_no_warnings! context - end - -+ @tag :skip - test "no warnings on struct update", context do - copy_beam! context, Dialyzer.StructUpdate - assert_dialyze_no_warnings! context - end - -+ @tag :skip - test "no warnings on protocol calls with opaque types", context do - copy_beam! context, Dialyzer.ProtocolOpaque - copy_beam! context, Dialyzer.ProtocolOpaque.Entity -@@ -90,6 +93,7 @@ defmodule Kernel.DialyzerTest do - assert_dialyze_no_warnings! context - end - -+ @tag :skip - test "no warnings on and/2 and or/2", context do - copy_beam! context, Dialyzer.BooleanCheck - assert_dialyze_no_warnings! context - -diff --git a/Makefile b/Makefile -index 2fc4f9a..aef8366 100644 ---- a/Makefile -+++ b/Makefile -@@ -201,7 +201,7 @@ $(TEST_EBIN)/%.beam: $(TEST_ERL)/%.erl - $(Q) mkdir -p $(TEST_EBIN) - $(Q) $(ERLC) -o $(TEST_EBIN) $< - --test_elixir: test_stdlib test_ex_unit test_logger test_mix test_eex test_iex -+test_elixir: test_stdlib test_ex_unit test_logger test_eex test_iex - - test_stdlib: compile - @ echo "==> elixir (exunit)" - diff --git a/gnu/packages/patches/flann-cmake-3.11.patch b/gnu/packages/patches/flann-cmake-3.11.patch new file mode 100644 index 0000000000..1fb76eca0a --- /dev/null +++ b/gnu/packages/patches/flann-cmake-3.11.patch @@ -0,0 +1,84 @@ +Fixes this issue: + . +Patch from Buildroot: + . + +From fa5ec96a94646492a3f908e12905b3e48a8e800b Mon Sep 17 00:00:00 2001 +From: Romain Naour +Date: Wed, 18 Apr 2018 20:24:13 +0200 +Subject: [PATCH] src/cpp: fix cmake >= 3.11 build + +CMake < 3.11 doesn't support add_library() without any source file +(i.e add_library(foo SHARED)). But flann CMake use a trick that use +an empty string "" as source list (i.e add_library(foo SHARED "")). +This look like a bug in CMake < 3.11. + +With CMake >= 3.11, the new behaviour of add_library() break the +existing flann CMake code. + +From CMake Changelog [1]: +"add_library() and add_executable() commands can now be called without + any sources and will not complain as long as sources are added later + via the target_sources() command." + +Note: flann CMake code doesn't use target_sources() since no source file +are provided intentionally since the flann shared library is created by +linking with the flann_cpp_s static library with this line: + +target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive) + +If you try to use "add_library(flann_cpp SHARED ${CPP_SOURCES})" (as it should +be normally done), the link fail due to already defined symbol. + +They are building the shared version using the static library "to speedup the +build time" [3] + +This issue is already reported upstream [2] with a proposed solution. + +Upstream status: Pending + +Fixes: +http://autobuild.buildroot.net/results/b2f/b2febfaf8c44ce477b3e4a5b9b976fd25e8d7454 + +[1] https://cmake.org/cmake/help/v3.11/release/3.11.html +[2] https://github.com/mariusmuja/flann/issues/369 +[3] https://github.com/mariusmuja/flann/commit/0fd62b43be2fbb0b8d791ee36290791224dc030c + +Signed-off-by: Romain Naour +--- + src/cpp/CMakeLists.txt | 4 ++-- + src/cpp/empty.cpp | 1 + + 2 files changed, 3 insertions(+), 2 deletions(-) + create mode 100644 src/cpp/empty.cpp + +diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt +index b44a735..a816863 100644 +--- a/src/cpp/CMakeLists.txt ++++ b/src/cpp/CMakeLists.txt +@@ -29,7 +29,7 @@ if (BUILD_CUDA_LIB) + endif() + + if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC) +- add_library(flann_cpp SHARED "") ++ add_library(flann_cpp SHARED "empty.cpp") + set_target_properties(flann_cpp PROPERTIES LINKER_LANGUAGE CXX) + target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive) + +@@ -85,7 +85,7 @@ if (BUILD_C_BINDINGS) + set_property(TARGET flann_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC) + + if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC) +- add_library(flann SHARED "") ++ add_library(flann SHARED "empty.cpp") + set_target_properties(flann PROPERTIES LINKER_LANGUAGE CXX) + target_link_libraries(flann -Wl,-whole-archive flann_s -Wl,-no-whole-archive) + else() +diff --git a/src/cpp/empty.cpp b/src/cpp/empty.cpp +new file mode 100644 +index 0000000..40a8c17 +--- /dev/null ++++ b/src/cpp/empty.cpp +@@ -0,0 +1 @@ ++/* empty */ +-- +2.14.3 diff --git a/gnu/packages/patches/gcc-8-strmov-store-file-names.patch b/gnu/packages/patches/gcc-8-strmov-store-file-names.patch new file mode 100644 index 0000000000..f8e6b951b2 --- /dev/null +++ b/gnu/packages/patches/gcc-8-strmov-store-file-names.patch @@ -0,0 +1,110 @@ +Make sure that statements such as: + + strcpy (dst, "/gnu/store/…"); + +or + + static const char str[] = "/gnu/store/…"; + … + strcpy (dst, str); + +do not result in chunked /gnu/store strings that are undetectable by +Guix's GC and its grafting code. See +and . + +--- gcc-5.3.0/gcc/builtins.c 2016-10-18 10:50:46.080616285 +0200 ++++ gcc-5.3.0/gcc/builtins.c 2016-11-09 15:26:43.693042737 +0100 +@@ -3012,6 +3012,58 @@ determine_block_size (tree len, rtx len_rtx, + GET_MODE_MASK (GET_MODE (len_rtx))); + } + ++extern void debug_tree (tree); ++ ++/* Return true if STR contains the string "/gnu/store". */ ++ ++bool ++store_reference_p (tree str) ++{ ++ if (getenv ("GUIX_GCC_DEBUG") != NULL) ++ debug_tree (str); ++ ++ if (TREE_CODE (str) == ADDR_EXPR) ++ str = TREE_OPERAND (str, 0); ++ ++ if (TREE_CODE (str) == VAR_DECL ++ && TREE_STATIC (str) ++ && TREE_READONLY (str)) ++ { ++ /* STR may be a 'static const' variable whose initial value ++ is a string constant. See . */ ++ str = DECL_INITIAL (str); ++ if (str == NULL_TREE) ++ return false; ++ } ++ ++ if (TREE_CODE (str) != STRING_CST) ++ return false; ++ ++ int len; ++ const char *store; ++ ++ store = getenv ("NIX_STORE") ? getenv ("NIX_STORE") : "/gnu/store"; ++ len = strlen (store); ++ ++ /* Size of the hash part of store file names, including leading slash and ++ trailing hyphen. */ ++ const int hash_len = 34; ++ ++ if (TREE_STRING_LENGTH (str) < len + hash_len) ++ return false; ++ ++ /* We cannot use 'strstr' because 'TREE_STRING_POINTER' returns a string ++ that is not necessarily NUL-terminated. */ ++ ++ for (int i = 0; i < TREE_STRING_LENGTH (str) - (len + hash_len); i++) ++ { ++ if (strncmp (TREE_STRING_POINTER (str) + i, store, len) == 0) ++ return true; ++ } ++ ++ return false; ++} ++ + /* Try to verify that the sizes and lengths of the arguments to a string + manipulation function given by EXP are within valid bounds and that + the operation does not lead to buffer overflow or read past the end. +@@ -3605,6 +3657,13 @@ expand_builtin_memory_copy_args (tree dest, tree src, tree len, + unsigned HOST_WIDE_INT max_size; + unsigned HOST_WIDE_INT probable_max_size; + ++ /* Do not emit block moves, which translate to the 'movabs' instruction on ++ x86_64, when SRC refers to store items. That way, store references ++ remain visible to the Guix GC and grafting code. See ++ . */ ++ if (store_reference_p (src)) ++ return NULL_RTX; ++ + /* If DEST is not a pointer type, call the normal function. */ + if (dest_align == 0) + return NULL_RTX; +--- gcc-5.5.0/gcc/gimple-fold.c 2018-03-20 11:36:16.709442004 +0100 ++++ gcc-5.5.0/gcc/gimple-fold.c 2018-03-20 11:46:43.838487065 +0100 +@@ -635,6 +635,8 @@ var_decl_component_p (tree var) + return SSA_VAR_P (inner); + } + ++extern bool store_reference_p (tree); ++ + /* If the SIZE argument representing the size of an object is in a range + of values of which exactly one is valid (and that is zero), return + true, otherwise false. */ +@@ -742,6 +744,9 @@ gimple_fold_builtin_memory_op (gimple_stmt_iterator *gsi, + off0 = build_int_cst (build_pointer_type_for_mode (char_type_node, + ptr_mode, true), 0); + ++ if (store_reference_p (src)) ++ return false; ++ + /* If we can perform the copy efficiently with first doing all loads + and then all stores inline it that way. Currently efficiently + means that we can load all the memory into a single integer diff --git a/gnu/packages/patches/heimdal-CVE-2017-11103.patch b/gnu/packages/patches/heimdal-CVE-2017-11103.patch deleted file mode 100644 index d76f0df369..0000000000 --- a/gnu/packages/patches/heimdal-CVE-2017-11103.patch +++ /dev/null @@ -1,45 +0,0 @@ -Fix CVE-2017-11103: - -https://orpheus-lyre.info/ -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11103 -https://security-tracker.debian.org/tracker/CVE-2017-11103 - -Patch lifted from upstream source repository: - -https://github.com/heimdal/heimdal/commit/6dd3eb836bbb80a00ffced4ad57077a1cdf227ea - -From 6dd3eb836bbb80a00ffced4ad57077a1cdf227ea Mon Sep 17 00:00:00 2001 -From: Jeffrey Altman -Date: Wed, 12 Apr 2017 15:40:42 -0400 -Subject: [PATCH] CVE-2017-11103: Orpheus' Lyre KDC-REP service name validation - -In _krb5_extract_ticket() the KDC-REP service name must be obtained from -encrypted version stored in 'enc_part' instead of the unencrypted version -stored in 'ticket'. Use of the unecrypted version provides an -opportunity for successful server impersonation and other attacks. - -Identified by Jeffrey Altman, Viktor Duchovni and Nico Williams. - -Change-Id: I45ef61e8a46e0f6588d64b5bd572a24c7432547c ---- - lib/krb5/ticket.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/lib/krb5/ticket.c b/lib/krb5/ticket.c -index d95d96d1b..b8d81c6ad 100644 ---- a/lib/krb5/ticket.c -+++ b/lib/krb5/ticket.c -@@ -705,8 +705,8 @@ _krb5_extract_ticket(krb5_context context, - /* check server referral and save principal */ - ret = _krb5_principalname2krb5_principal (context, - &tmp_principal, -- rep->kdc_rep.ticket.sname, -- rep->kdc_rep.ticket.realm); -+ rep->enc_part.sname, -+ rep->enc_part.srealm); - if (ret) - goto out; - if((flags & EXTRACT_TICKET_ALLOW_SERVER_MISMATCH) == 0){ --- -2.13.3 - diff --git a/gnu/packages/patches/heimdal-CVE-2017-6594.patch b/gnu/packages/patches/heimdal-CVE-2017-6594.patch deleted file mode 100644 index 714af60304..0000000000 --- a/gnu/packages/patches/heimdal-CVE-2017-6594.patch +++ /dev/null @@ -1,85 +0,0 @@ -Fix CVE-2017-6594: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-6594 -https://security-tracker.debian.org/tracker/CVE-2017-6594 - -Patch lifted from upstream source repository: - -https://github.com/heimdal/heimdal/commit/b1e699103f08d6a0ca46a122193c9da65f6cf837 - -To apply the patch to Heimdal 1.5.3 release tarball, the changes to 'NEWS' and -files in 'tests/' are removed, and hunk #4 of 'kdc/krb5tgs.c' is modified. - -From b1e699103f08d6a0ca46a122193c9da65f6cf837 Mon Sep 17 00:00:00 2001 -From: Viktor Dukhovni -Date: Wed, 10 Aug 2016 23:31:14 +0000 -Subject: [PATCH] Fix transit path validation CVE-2017-6594 - -Commit f469fc6 (2010-10-02) inadvertently caused the previous hop realm -to not be added to the transit path of issued tickets. This may, in -some cases, enable bypass of capath policy in Heimdal versions 1.5 -through 7.2. - -Note, this may break sites that rely on the bug. With the bug some -incomplete [capaths] worked, that should not have. These may now break -authentication in some cross-realm configurations. ---- - NEWS | 14 ++++++++++++++ - kdc/krb5tgs.c | 12 ++++++++++-- - tests/kdc/check-kdc.in | 17 +++++++++++++++++ - tests/kdc/krb5.conf.in | 4 ++++ - 4 files changed, 45 insertions(+), 2 deletions(-) - -diff --git a/kdc/krb5tgs.c b/kdc/krb5tgs.c -index 6048b9c55..98503812f 100644 ---- a/kdc/krb5tgs.c -+++ b/kdc/krb5tgs.c -@@ -655,8 +655,12 @@ fix_transited_encoding(krb5_context context, - "Decoding transited encoding"); - return ret; - } -+ -+ /* -+ * If the realm of the presented tgt is neither the client nor the server -+ * realm, it is a transit realm and must be added to transited set. -+ */ - if(strcmp(client_realm, tgt_realm) && strcmp(server_realm, tgt_realm)) { -- /* not us, so add the previous realm to transited set */ - if (num_realms + 1 > UINT_MAX/sizeof(*realms)) { - ret = ERANGE; - goto free_realms; -@@ -737,6 +741,7 @@ tgs_make_reply(krb5_context context, - const char *server_name, - hdb_entry_ex *client, - krb5_principal client_principal, -+ const char *tgt_realm, - hdb_entry_ex *krbtgt, - krb5_enctype krbtgt_etype, - krb5_principals spp, -@@ -798,7 +803,7 @@ tgs_make_reply(krb5_context context, - &tgt->transited, &et, - krb5_principal_get_realm(context, client_principal), - krb5_principal_get_realm(context, server->entry.principal), -- krb5_principal_get_realm(context, krbtgt->entry.principal)); -+ tgt_realm); - if(ret) - goto out; - -@@ -1519,4 +1524,6 @@ tgs_build_reply(krb5_context context, - krb5_keyblock sessionkey; - krb5_kvno kvno; - krb5_data rspac; -+ const char *tgt_realm = /* Realm of TGT issuer */ -+ krb5_principal_get_realm(context, krbtgt->entry.principal); - -@@ -2324,6 +2331,7 @@ server_lookup: - spn, - client, - cp, -+ tgt_realm, - krbtgt_out, - tkey_sign->key.keytype, - spp, --- -2.13.3 - diff --git a/gnu/packages/patches/icecat-bug-1413868-pt1.patch b/gnu/packages/patches/icecat-bug-1413868-pt1.patch new file mode 100644 index 0000000000..18382dc33a --- /dev/null +++ b/gnu/packages/patches/icecat-bug-1413868-pt1.patch @@ -0,0 +1,663 @@ +Based on +Adapted to apply cleanly to GNU IceCat. + +# HG changeset patch +# User Honza Bambas +# Date 1528830658 14400 +# Node ID 431fa5dd4016bdab7e4bb0d3c4df85468fe337b0 +# Parent e8e9e1ef79f2a18c61ec1b87cfb214c8d4960f8e +Bug 1413868. r=valentin, a=RyanVM + +diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp +--- a/toolkit/xre/nsAppRunner.cpp ++++ b/toolkit/xre/nsAppRunner.cpp +@@ -4,16 +4,17 @@ + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + + #include "mozilla/dom/ContentParent.h" + #include "mozilla/dom/ContentChild.h" + #include "mozilla/ipc/GeckoChildProcessHost.h" + + #include "mozilla/ArrayUtils.h" + #include "mozilla/Attributes.h" ++#include "mozilla/FilePreferences.h" + #include "mozilla/ChaosMode.h" + #include "mozilla/IOInterposer.h" + #include "mozilla/Likely.h" + #include "mozilla/MemoryChecking.h" + #include "mozilla/Poison.h" + #include "mozilla/Preferences.h" + #include "mozilla/ScopeExit.h" + #include "mozilla/Services.h" +@@ -4304,16 +4305,20 @@ XREMain::XRE_mainRun() + // Need to write out the fact that the profile has been removed and potentially + // that the selected/default profile changed. + mProfileSvc->Flush(); + } + } + + mDirProvider.DoStartup(); + ++ // As FilePreferences need the profile directory, we must initialize right here. ++ mozilla::FilePreferences::InitDirectoriesWhitelist(); ++ mozilla::FilePreferences::InitPrefs(); ++ + OverrideDefaultLocaleIfNeeded(); + + #ifdef MOZ_CRASHREPORTER + nsCString userAgentLocale; + // Try a localized string first. This pref is always a localized string in + // IceCatMobile, and might be elsewhere, too. + if (NS_SUCCEEDED(Preferences::GetLocalizedCString("general.useragent.locale", &userAgentLocale))) { + CrashReporter::AnnotateCrashReport(NS_LITERAL_CSTRING("useragent_locale"), userAgentLocale); +diff --git a/toolkit/xre/nsEmbedFunctions.cpp b/toolkit/xre/nsEmbedFunctions.cpp +--- a/toolkit/xre/nsEmbedFunctions.cpp ++++ b/toolkit/xre/nsEmbedFunctions.cpp +@@ -46,16 +46,17 @@ + #include "nsX11ErrorHandler.h" + #include "nsGDKErrorHandler.h" + #include "base/at_exit.h" + #include "base/command_line.h" + #include "base/message_loop.h" + #include "base/process_util.h" + #include "chrome/common/child_process.h" + ++#include "mozilla/FilePreferences.h" + #include "mozilla/ipc/BrowserProcessSubThread.h" + #include "mozilla/ipc/GeckoChildProcessHost.h" + #include "mozilla/ipc/IOThreadChild.h" + #include "mozilla/ipc/ProcessChild.h" + #include "ScopedXREEmbed.h" + + #include "mozilla/plugins/PluginProcessChild.h" + #include "mozilla/dom/ContentProcess.h" +@@ -680,16 +681,18 @@ XRE_InitChildProcess(int aArgc, + ::SetProcessShutdownParameters(0x280 - 1, SHUTDOWN_NORETRY); + #endif + + #if defined(MOZ_SANDBOX) && defined(XP_WIN) + // We need to do this after the process has been initialised, as + // InitLoggingIfRequired may need access to prefs. + mozilla::sandboxing::InitLoggingIfRequired(aChildData->ProvideLogFunction); + #endif ++ mozilla::FilePreferences::InitDirectoriesWhitelist(); ++ mozilla::FilePreferences::InitPrefs(); + + OverrideDefaultLocaleIfNeeded(); + + #if defined(MOZ_CRASHREPORTER) + #if defined(MOZ_CONTENT_SANDBOX) && !defined(MOZ_WIDGET_GONK) + AddContentSandboxLevelAnnotation(); + #endif + #endif +diff --git a/xpcom/io/FilePreferences.cpp b/xpcom/io/FilePreferences.cpp +new file mode 100644 +--- /dev/null ++++ b/xpcom/io/FilePreferences.cpp +@@ -0,0 +1,271 @@ ++/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ ++/* vim: set ts=8 sts=2 et sw=2 tw=80: */ ++/* This Source Code Form is subject to the terms of the Mozilla Public ++* License, v. 2.0. If a copy of the MPL was not distributed with this ++* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ ++ ++#include "FilePreferences.h" ++ ++#include "mozilla/Preferences.h" ++#include "nsAppDirectoryServiceDefs.h" ++#include "nsDirectoryServiceDefs.h" ++#include "nsDirectoryServiceUtils.h" ++ ++namespace mozilla { ++namespace FilePreferences { ++ ++static bool sBlockUNCPaths = false; ++typedef nsTArray Paths; ++ ++static Paths& PathArray() ++{ ++ static Paths sPaths; ++ return sPaths; ++} ++ ++static void AllowDirectory(char const* directory) ++{ ++ nsCOMPtr file; ++ NS_GetSpecialDirectory(directory, getter_AddRefs(file)); ++ if (!file) { ++ return; ++ } ++ ++ nsString path; ++ if (NS_FAILED(file->GetTarget(path))) { ++ return; ++ } ++ ++ // The whitelist makes sense only for UNC paths, because this code is used ++ // to block only UNC paths, hence, no need to add non-UNC directories here ++ // as those would never pass the check. ++ if (!StringBeginsWith(path, NS_LITERAL_STRING("\\\\"))) { ++ return; ++ } ++ ++ if (!PathArray().Contains(path)) { ++ PathArray().AppendElement(path); ++ } ++} ++ ++void InitPrefs() ++{ ++ sBlockUNCPaths = Preferences::GetBool("network.file.disable_unc_paths", false); ++} ++ ++void InitDirectoriesWhitelist() ++{ ++ // NS_GRE_DIR is the installation path where the binary resides. ++ AllowDirectory(NS_GRE_DIR); ++ // NS_APP_USER_PROFILE_50_DIR and NS_APP_USER_PROFILE_LOCAL_50_DIR are the two ++ // parts of the profile we store permanent and local-specific data. ++ AllowDirectory(NS_APP_USER_PROFILE_50_DIR); ++ AllowDirectory(NS_APP_USER_PROFILE_LOCAL_50_DIR); ++} ++ ++namespace { // anon ++ ++class Normalizer ++{ ++public: ++ Normalizer(const nsAString& aFilePath, const char16_t aSeparator); ++ bool Get(nsAString& aNormalizedFilePath); ++ ++private: ++ bool ConsumeItem(); ++ bool ConsumeSeparator(); ++ bool IsEOF() { return mFilePathCursor == mFilePathEnd; } ++ ++ bool ConsumeName(); ++ bool CheckParentDir(); ++ bool CheckCurrentDir(); ++ ++ nsString::const_char_iterator mFilePathCursor; ++ nsString::const_char_iterator mFilePathEnd; ++ ++ nsDependentSubstring mItem; ++ char16_t const mSeparator; ++ nsTArray mStack; ++}; ++ ++Normalizer::Normalizer(const nsAString& aFilePath, const char16_t aSeparator) ++ : mFilePathCursor(aFilePath.BeginReading()) ++ , mFilePathEnd(aFilePath.EndReading()) ++ , mSeparator(aSeparator) ++{ ++} ++ ++bool Normalizer::ConsumeItem() ++{ ++ if (IsEOF()) { ++ return false; ++ } ++ ++ nsString::const_char_iterator nameBegin = mFilePathCursor; ++ while (mFilePathCursor != mFilePathEnd) { ++ if (*mFilePathCursor == mSeparator) { ++ break; // don't include the separator ++ } ++ ++mFilePathCursor; ++ } ++ ++ mItem.Rebind(nameBegin, mFilePathCursor); ++ return true; ++} ++ ++bool Normalizer::ConsumeSeparator() ++{ ++ if (IsEOF()) { ++ return false; ++ } ++ ++ if (*mFilePathCursor != mSeparator) { ++ return false; ++ } ++ ++ ++mFilePathCursor; ++ return true; ++} ++ ++bool Normalizer::Get(nsAString& aNormalizedFilePath) ++{ ++ aNormalizedFilePath.Truncate(); ++ ++ if (IsEOF()) { ++ return true; ++ } ++ if (ConsumeSeparator()) { ++ aNormalizedFilePath.Append(mSeparator); ++ } ++ ++ if (IsEOF()) { ++ return true; ++ } ++ if (ConsumeSeparator()) { ++ aNormalizedFilePath.Append(mSeparator); ++ } ++ ++ while (!IsEOF()) { ++ if (!ConsumeName()) { ++ return false; ++ } ++ } ++ ++ for (auto const& name : mStack) { ++ aNormalizedFilePath.Append(name); ++ } ++ ++ return true; ++} ++ ++bool Normalizer::ConsumeName() ++{ ++ if (!ConsumeItem()) { ++ return true; ++ } ++ ++ if (CheckCurrentDir()) { ++ return true; ++ } ++ ++ if (CheckParentDir()) { ++ if (!mStack.Length()) { ++ // This means there are more \.. than valid names ++ return false; ++ } ++ ++ mStack.RemoveElementAt(mStack.Length() - 1); ++ return true; ++ } ++ ++ if (mItem.IsEmpty()) { ++ // this means an empty name (a lone slash), which is illegal ++ return false; ++ } ++ ++ if (ConsumeSeparator()) { ++ mItem.Rebind(mItem.BeginReading(), mFilePathCursor); ++ } ++ mStack.AppendElement(mItem); ++ ++ return true; ++} ++ ++bool Normalizer::CheckCurrentDir() ++{ ++ if (mItem == NS_LITERAL_STRING(".")) { ++ ConsumeSeparator(); ++ // EOF is acceptable ++ return true; ++ } ++ ++ return false; ++} ++ ++bool Normalizer::CheckParentDir() ++{ ++ if (mItem == NS_LITERAL_STRING("..")) { ++ ConsumeSeparator(); ++ // EOF is acceptable ++ return true; ++ } ++ ++ return false; ++} ++ ++} // anon ++ ++bool IsBlockedUNCPath(const nsAString& aFilePath) ++{ ++ if (!sBlockUNCPaths) { ++ return false; ++ } ++ ++ if (!StringBeginsWith(aFilePath, NS_LITERAL_STRING("\\\\"))) { ++ return false; ++ } ++ ++ nsAutoString normalized; ++ if (!Normalizer(aFilePath, L'\\').Get(normalized)) { ++ // Broken paths are considered invalid and thus inaccessible ++ return true; ++ } ++ ++ for (const auto& allowedPrefix : PathArray()) { ++ if (StringBeginsWith(normalized, allowedPrefix)) { ++ if (normalized.Length() == allowedPrefix.Length()) { ++ return false; ++ } ++ if (normalized[allowedPrefix.Length()] == L'\\') { ++ return false; ++ } ++ ++ // When we are here, the path has a form "\\path\prefixevil" ++ // while we have an allowed prefix of "\\path\prefix". ++ // Note that we don't want to add a slash to the end of a prefix ++ // so that opening the directory (no slash at the end) still works. ++ break; ++ } ++ } ++ ++ return true; ++} ++ ++void testing::SetBlockUNCPaths(bool aBlock) ++{ ++ sBlockUNCPaths = aBlock; ++} ++ ++void testing::AddDirectoryToWhitelist(nsAString const & aPath) ++{ ++ PathArray().AppendElement(aPath); ++} ++ ++bool testing::NormalizePath(nsAString const & aPath, nsAString & aNormalized) ++{ ++ Normalizer normalizer(aPath, L'\\'); ++ return normalizer.Get(aNormalized); ++} ++ ++} // ::FilePreferences ++} // ::mozilla +diff --git a/xpcom/io/FilePreferences.h b/xpcom/io/FilePreferences.h +new file mode 100644 +--- /dev/null ++++ b/xpcom/io/FilePreferences.h +@@ -0,0 +1,25 @@ ++/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ ++/* vim: set ts=8 sts=2 et sw=2 tw=80: */ ++/* This Source Code Form is subject to the terms of the Mozilla Public ++* License, v. 2.0. If a copy of the MPL was not distributed with this ++* file, You can obtain one at http://mozilla.org/MPL/2.0/. */ ++ ++#include "nsIObserver.h" ++ ++namespace mozilla { ++namespace FilePreferences { ++ ++void InitPrefs(); ++void InitDirectoriesWhitelist(); ++bool IsBlockedUNCPath(const nsAString& aFilePath); ++ ++namespace testing { ++ ++void SetBlockUNCPaths(bool aBlock); ++void AddDirectoryToWhitelist(nsAString const& aPath); ++bool NormalizePath(nsAString const & aPath, nsAString & aNormalized); ++ ++} ++ ++} // FilePreferences ++} // mozilla +diff --git a/xpcom/io/moz.build b/xpcom/io/moz.build +--- a/xpcom/io/moz.build ++++ b/xpcom/io/moz.build +@@ -79,24 +79,26 @@ EXPORTS += [ + 'nsUnicharInputStream.h', + 'nsWildCard.h', + 'SlicedInputStream.h', + 'SpecialSystemDirectory.h', + ] + + EXPORTS.mozilla += [ + 'Base64.h', ++ 'FilePreferences.h', + 'SnappyCompressOutputStream.h', + 'SnappyFrameUtils.h', + 'SnappyUncompressInputStream.h', + ] + + UNIFIED_SOURCES += [ + 'Base64.cpp', + 'crc32c.c', ++ 'FilePreferences.cpp', + 'nsAnonymousTemporaryFile.cpp', + 'nsAppFileLocationProvider.cpp', + 'nsBinaryStream.cpp', + 'nsDirectoryService.cpp', + 'nsEscape.cpp', + 'nsInputStreamTee.cpp', + 'nsIOUtil.cpp', + 'nsLinebreakConverter.cpp', +diff --git a/xpcom/io/nsLocalFileWin.cpp b/xpcom/io/nsLocalFileWin.cpp +--- a/xpcom/io/nsLocalFileWin.cpp ++++ b/xpcom/io/nsLocalFileWin.cpp +@@ -41,16 +41,17 @@ + #include + #include + #include + + #include "nsXPIDLString.h" + #include "prproces.h" + #include "prlink.h" + ++#include "mozilla/FilePreferences.h" + #include "mozilla/Mutex.h" + #include "SpecialSystemDirectory.h" + + #include "nsTraceRefcnt.h" + #include "nsXPCOMCIDInternal.h" + #include "nsThreadUtils.h" + #include "nsXULAppAPI.h" + +@@ -1162,16 +1163,20 @@ nsLocalFile::InitWithPath(const nsAStrin + char16_t secondChar = *(++begin); + + // just do a sanity check. if it has any forward slashes, it is not a Native path + // on windows. Also, it must have a colon at after the first char. + if (FindCharInReadable(L'/', begin, end)) { + return NS_ERROR_FILE_UNRECOGNIZED_PATH; + } + ++ if (FilePreferences::IsBlockedUNCPath(aFilePath)) { ++ return NS_ERROR_FILE_ACCESS_DENIED; ++ } ++ + if (secondChar != L':' && (secondChar != L'\\' || firstChar != L'\\')) { + return NS_ERROR_FILE_UNRECOGNIZED_PATH; + } + + if (secondChar == L':') { + // Make sure we have a valid drive, later code assumes the drive letter + // is a single char a-z or A-Z. + if (PathGetDriveNumberW(aFilePath.Data()) == -1) { +@@ -1974,16 +1979,20 @@ nsLocalFile::CopySingleFile(nsIFile* aSo + bool path1Remote, path2Remote; + if (!IsRemoteFilePath(filePath.get(), path1Remote) || + !IsRemoteFilePath(destPath.get(), path2Remote) || + path1Remote || path2Remote) { + dwCopyFlags |= COPY_FILE_NO_BUFFERING; + } + } + ++ if (FilePreferences::IsBlockedUNCPath(destPath)) { ++ return NS_ERROR_FILE_ACCESS_DENIED; ++ } ++ + if (!move) { + copyOK = ::CopyFileExW(filePath.get(), destPath.get(), nullptr, + nullptr, nullptr, dwCopyFlags); + } else { + copyOK = ::MoveFileExW(filePath.get(), destPath.get(), + MOVEFILE_REPLACE_EXISTING); + + // Check if copying the source file to a different volume, +diff --git a/xpcom/tests/gtest/TestFilePreferencesWin.cpp b/xpcom/tests/gtest/TestFilePreferencesWin.cpp +new file mode 100644 +--- /dev/null ++++ b/xpcom/tests/gtest/TestFilePreferencesWin.cpp +@@ -0,0 +1,141 @@ ++#include "gtest/gtest.h" ++ ++#include "mozilla/FilePreferences.h" ++#include "nsIFile.h" ++#include "nsXPCOMCID.h" ++ ++TEST(FilePreferencesWin, Normalization) ++{ ++ nsAutoString normalized; ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("foo"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("foo")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\foo"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\foo")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("foo\\some"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("foo\\some")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\.\\foo"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\."), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\.\\"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\.\\."), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo\\bar")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo\\bar\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\."), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo\\bar\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\.\\"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo\\bar\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\..\\"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\.."), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\foo\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\..\\bar\\..\\"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\..\\bar"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\bar")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\..\\..\\"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\")); ++ ++ mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\.\\..\\.\\..\\"), normalized); ++ ASSERT_TRUE(normalized == NS_LITERAL_STRING("\\\\")); ++ ++ bool result; ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\.."), normalized); ++ ASSERT_FALSE(result); ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\..\\"), normalized); ++ ASSERT_FALSE(result); ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\.\\..\\"), normalized); ++ ASSERT_FALSE(result); ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\\\bar"), normalized); ++ ASSERT_FALSE(result); ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\foo\\bar\\..\\..\\..\\..\\"), normalized); ++ ASSERT_FALSE(result); ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\\\"), normalized); ++ ASSERT_FALSE(result); ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\.\\\\"), normalized); ++ ASSERT_FALSE(result); ++ ++ result = mozilla::FilePreferences::testing::NormalizePath( ++ NS_LITERAL_STRING("\\\\..\\\\"), normalized); ++ ASSERT_FALSE(result); ++} ++ ++TEST(FilePreferencesWin, AccessUNC) ++{ ++ nsCOMPtr lf = do_CreateInstance(NS_LOCAL_FILE_CONTRACTID); ++ ++ nsresult rv; ++ ++ mozilla::FilePreferences::testing::SetBlockUNCPaths(false); ++ ++ rv = lf->InitWithPath(NS_LITERAL_STRING("\\\\nice\\..\\evil\\share")); ++ ASSERT_EQ(rv, NS_OK); ++ ++ mozilla::FilePreferences::testing::SetBlockUNCPaths(true); ++ ++ rv = lf->InitWithPath(NS_LITERAL_STRING("\\\\nice\\..\\evil\\share")); ++ ASSERT_EQ(rv, NS_ERROR_FILE_ACCESS_DENIED); ++ ++ mozilla::FilePreferences::testing::AddDirectoryToWhitelist(NS_LITERAL_STRING("\\\\nice")); ++ ++ rv = lf->InitWithPath(NS_LITERAL_STRING("\\\\nice\\share")); ++ ASSERT_EQ(rv, NS_OK); ++ ++ rv = lf->InitWithPath(NS_LITERAL_STRING("\\\\nice\\..\\evil\\share")); ++ ASSERT_EQ(rv, NS_ERROR_FILE_ACCESS_DENIED); ++} +diff --git a/xpcom/tests/gtest/moz.build b/xpcom/tests/gtest/moz.build +--- a/xpcom/tests/gtest/moz.build ++++ b/xpcom/tests/gtest/moz.build +@@ -51,16 +51,21 @@ UNIFIED_SOURCES += [ + if CONFIG['MOZ_DEBUG'] and CONFIG['OS_ARCH'] not in ('WINNT') and CONFIG['OS_TARGET'] != 'Android': + # FIXME bug 523392: TestDeadlockDetector doesn't like Windows + # Bug 1054249: Doesn't work on Android + UNIFIED_SOURCES += [ + 'TestDeadlockDetector.cpp', + 'TestDeadlockDetectorScalability.cpp', + ] + ++if CONFIG['OS_TARGET'] == 'WINNT': ++ UNIFIED_SOURCES += [ ++ 'TestFilePreferencesWin.cpp', ++ ] ++ + if CONFIG['WRAP_STL_INCLUDES'] and not CONFIG['CLANG_CL']: + UNIFIED_SOURCES += [ + 'TestSTLWrappers.cpp', + ] + + # Compile TestAllocReplacement separately so Windows headers don't pollute + # the global namespace for other files. + SOURCES += [ + diff --git a/gnu/packages/patches/java-commons-collections-fix-java8.patch b/gnu/packages/patches/java-commons-collections-fix-java8.patch new file mode 100644 index 0000000000..322fd7f699 --- /dev/null +++ b/gnu/packages/patches/java-commons-collections-fix-java8.patch @@ -0,0 +1,299 @@ +From e760d181abd20ecb98654af63faec7b2a4d61189 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= +Date: Mon, 25 Jun 2018 15:02:25 +0200 +Subject: [PATCH] Rename removes in maps to fix java8. + +* src/java/org/apache/commons/collections/MultiHashMap.java: +Rename "V MultiHashMap#remove(K, V)" +to "boolean MulitHashMap#removeMapping(K, V)". +* src/java/org/apache/commons/collections/MultiMap.java: +Rename "V MultiMap#remove(K, V)" +to "boolean MultiMap#removeMapping(K, V)". +* src/java/org/apache/commons/collections/map/MultiKeyMap.java: +Rename "V MultiKeyMap#remove(...)" +to "V MultiKeyMap#removeMultiKey(...)". +* src/java/org/apache/commons/collections/map/MultiValueMap.java: +Rename "V MultiValueMap#remove(K, V)" +to "boolean MultiValueMap#removeMapping(K, V)". +* src/test/org/apache/commons/collections/TestMultiHashMap.java: +Adjust accordingly. +* src/test/org/apache/commons/collections/map/TestMultiKeyMap.java: +Adjust accordingly. +* src/test/org/apache/commons/collections/map/TestMultiValueMap.java: +Adjust accordingly. +--- + .../commons/collections/MultiHashMap.java | 8 ++++---- + .../apache/commons/collections/MultiMap.java | 2 +- + .../commons/collections/map/MultiKeyMap.java | 8 ++++---- + .../commons/collections/map/MultiValueMap.java | 8 ++++---- + .../commons/collections/TestMultiHashMap.java | 16 ++++++++-------- + .../collections/map/TestMultiKeyMap.java | 16 ++++++++-------- + .../collections/map/TestMultiValueMap.java | 18 +++++++++--------- + 7 files changed, 38 insertions(+), 38 deletions(-) + +diff --git a/src/java/org/apache/commons/collections/MultiHashMap.java b/src/java/org/apache/commons/collections/MultiHashMap.java +index 7fec9af..482ecbd 100644 +--- a/src/java/org/apache/commons/collections/MultiHashMap.java ++++ b/src/java/org/apache/commons/collections/MultiHashMap.java +@@ -331,21 +331,21 @@ public class MultiHashMap extends HashMap implements MultiMap { + * @param item the value to remove + * @return the value removed (which was passed in), null if nothing removed + */ +- public Object remove(Object key, Object item) { ++ public boolean removeMapping(Object key, Object item) { + Collection valuesForKey = getCollection(key); + if (valuesForKey == null) { +- return null; ++ return false; + } + boolean removed = valuesForKey.remove(item); + if (removed == false) { +- return null; ++ return false; + } + // remove the list if it is now empty + // (saves space, and allows equals to work) + if (valuesForKey.isEmpty()){ + remove(key); + } +- return item; ++ return true; + } + + /** +diff --git a/src/java/org/apache/commons/collections/MultiMap.java b/src/java/org/apache/commons/collections/MultiMap.java +index be9455b..fe54234 100644 +--- a/src/java/org/apache/commons/collections/MultiMap.java ++++ b/src/java/org/apache/commons/collections/MultiMap.java +@@ -66,7 +66,7 @@ public interface MultiMap extends Map { + * @throws ClassCastException if the key or value is of an invalid type + * @throws NullPointerException if the key or value is null and null is invalid + */ +- public Object remove(Object key, Object item); ++ public boolean removeMapping(Object key, Object item); + + //----------------------------------------------------------------------- + /** +diff --git a/src/java/org/apache/commons/collections/map/MultiKeyMap.java b/src/java/org/apache/commons/collections/map/MultiKeyMap.java +index 9e3e02d..0b99b65 100644 +--- a/src/java/org/apache/commons/collections/map/MultiKeyMap.java ++++ b/src/java/org/apache/commons/collections/map/MultiKeyMap.java +@@ -197,7 +197,7 @@ public class MultiKeyMap + * @param key2 the second key + * @return the value mapped to the removed key, null if key not in map + */ +- public Object remove(Object key1, Object key2) { ++ public Object removeMultiKey(Object key1, Object key2) { + int hashCode = hash(key1, key2); + int index = map.hashIndex(hashCode, map.data.length); + AbstractHashedMap.HashEntry entry = map.data[index]; +@@ -327,7 +327,7 @@ public class MultiKeyMap + * @param key3 the third key + * @return the value mapped to the removed key, null if key not in map + */ +- public Object remove(Object key1, Object key2, Object key3) { ++ public Object removeMultiKey(Object key1, Object key2, Object key3) { + int hashCode = hash(key1, key2, key3); + int index = map.hashIndex(hashCode, map.data.length); + AbstractHashedMap.HashEntry entry = map.data[index]; +@@ -467,7 +467,7 @@ public class MultiKeyMap + * @param key4 the fourth key + * @return the value mapped to the removed key, null if key not in map + */ +- public Object remove(Object key1, Object key2, Object key3, Object key4) { ++ public Object removeMultiKey(Object key1, Object key2, Object key3, Object key4) { + int hashCode = hash(key1, key2, key3, key4); + int index = map.hashIndex(hashCode, map.data.length); + AbstractHashedMap.HashEntry entry = map.data[index]; +@@ -617,7 +617,7 @@ public class MultiKeyMap + * @param key5 the fifth key + * @return the value mapped to the removed key, null if key not in map + */ +- public Object remove(Object key1, Object key2, Object key3, Object key4, Object key5) { ++ public Object removeMultiKey(Object key1, Object key2, Object key3, Object key4, Object key5) { + int hashCode = hash(key1, key2, key3, key4, key5); + int index = map.hashIndex(hashCode, map.data.length); + AbstractHashedMap.HashEntry entry = map.data[index]; +diff --git a/src/java/org/apache/commons/collections/map/MultiValueMap.java b/src/java/org/apache/commons/collections/map/MultiValueMap.java +index f44999b..86eaeb0 100644 +--- a/src/java/org/apache/commons/collections/map/MultiValueMap.java ++++ b/src/java/org/apache/commons/collections/map/MultiValueMap.java +@@ -153,19 +153,19 @@ public class MultiValueMap extends AbstractMapDecorator implements MultiMap { + * @param value the value to remove + * @return the value removed (which was passed in), null if nothing removed + */ +- public Object remove(Object key, Object value) { ++ public boolean removeMapping(Object key, Object value) { + Collection valuesForKey = getCollection(key); + if (valuesForKey == null) { +- return null; ++ return false; + } + boolean removed = valuesForKey.remove(value); + if (removed == false) { +- return null; ++ return false; + } + if (valuesForKey.isEmpty()) { + remove(key); + } +- return value; ++ return true; + } + + /** +diff --git a/src/test/org/apache/commons/collections/TestMultiHashMap.java b/src/test/org/apache/commons/collections/TestMultiHashMap.java +index eca833a..a1de943 100644 +--- a/src/test/org/apache/commons/collections/TestMultiHashMap.java ++++ b/src/test/org/apache/commons/collections/TestMultiHashMap.java +@@ -217,7 +217,7 @@ public class TestMultiHashMap extends AbstractTestMap { + MultiHashMap one = new MultiHashMap(); + Integer value = new Integer(1); + one.put("One", value); +- one.remove("One", value); ++ one.removeMapping("One", value); + + MultiHashMap two = new MultiHashMap(); + assertEquals(two, one); +@@ -269,7 +269,7 @@ public class TestMultiHashMap extends AbstractTestMap { + assertEquals(4, map.totalSize()); + map.remove("A"); + assertEquals(3, map.totalSize()); +- map.remove("B", "BC"); ++ map.removeMapping("B", "BC"); + assertEquals(2, map.totalSize()); + } + +@@ -292,7 +292,7 @@ public class TestMultiHashMap extends AbstractTestMap { + map.remove("A"); + assertEquals(0, map.size("A")); + assertEquals(3, map.size("B")); +- map.remove("B", "BC"); ++ map.removeMapping("B", "BC"); + assertEquals(0, map.size("A")); + assertEquals(2, map.size("B")); + } +@@ -464,11 +464,11 @@ public class TestMultiHashMap extends AbstractTestMap { + map.put("A", "AA"); + map.put("A", "AB"); + map.put("A", "AC"); +- assertEquals(null, map.remove("C", "CA")); +- assertEquals(null, map.remove("A", "AD")); +- assertEquals("AC", map.remove("A", "AC")); +- assertEquals("AB", map.remove("A", "AB")); +- assertEquals("AA", map.remove("A", "AA")); ++ assertEquals(false, map.removeMapping("C", "CA")); ++ assertEquals(false, map.removeMapping("A", "AD")); ++ assertEquals(true, map.removeMapping("A", "AC")); ++ assertEquals(true, map.removeMapping("A", "AB")); ++ assertEquals(true, map.removeMapping("A", "AA")); + assertEquals(new MultiHashMap(), map); + } + +diff --git a/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java b/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java +index b1ee3d0..b18f480 100644 +--- a/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java ++++ b/src/test/org/apache/commons/collections/map/TestMultiKeyMap.java +@@ -315,34 +315,34 @@ public class TestMultiKeyMap extends AbstractTestIterableMap { + switch (key.size()) { + case 2: + assertEquals(true, multimap.containsKey(key.getKey(0), key.getKey(1))); +- assertEquals(value, multimap.remove(key.getKey(0), key.getKey(1))); ++ assertEquals(value, multimap.removeMultiKey(key.getKey(0), key.getKey(1))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1))); + assertEquals(size - 1, multimap.size()); +- assertEquals(null, multimap.remove(key.getKey(0), key.getKey(1))); ++ assertEquals(null, multimap.removeMultiKey(key.getKey(0), key.getKey(1))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1))); + break; + case 3: + assertEquals(true, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2))); +- assertEquals(value, multimap.remove(key.getKey(0), key.getKey(1), key.getKey(2))); ++ assertEquals(value, multimap.removeMultiKey(key.getKey(0), key.getKey(1), key.getKey(2))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2))); + assertEquals(size - 1, multimap.size()); +- assertEquals(null, multimap.remove(key.getKey(0), key.getKey(1), key.getKey(2))); ++ assertEquals(null, multimap.removeMultiKey(key.getKey(0), key.getKey(1), key.getKey(2))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2))); + break; + case 4: + assertEquals(true, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3))); +- assertEquals(value, multimap.remove(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3))); ++ assertEquals(value, multimap.removeMultiKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3))); + assertEquals(size - 1, multimap.size()); +- assertEquals(null, multimap.remove(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3))); ++ assertEquals(null, multimap.removeMultiKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3))); + break; + case 5: + assertEquals(true, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3), key.getKey(4))); +- assertEquals(value, multimap.remove(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3), key.getKey(4))); ++ assertEquals(value, multimap.removeMultiKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3), key.getKey(4))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3), key.getKey(4))); + assertEquals(size - 1, multimap.size()); +- assertEquals(null, multimap.remove(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3), key.getKey(4))); ++ assertEquals(null, multimap.removeMultiKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3), key.getKey(4))); + assertEquals(false, multimap.containsKey(key.getKey(0), key.getKey(1), key.getKey(2), key.getKey(3), key.getKey(4))); + break; + default: +diff --git a/src/test/org/apache/commons/collections/map/TestMultiValueMap.java b/src/test/org/apache/commons/collections/map/TestMultiValueMap.java +index b9a5ac8..9ecc269 100644 +--- a/src/test/org/apache/commons/collections/map/TestMultiValueMap.java ++++ b/src/test/org/apache/commons/collections/map/TestMultiValueMap.java +@@ -161,7 +161,7 @@ public class TestMultiValueMap extends TestCase { + MultiValueMap one = new MultiValueMap(); + Integer value = new Integer(1); + one.put("One", value); +- one.remove("One", value); ++ one.removeMapping("One", value); + + MultiValueMap two = new MultiValueMap(); + assertEquals(two, one); +@@ -187,7 +187,7 @@ public class TestMultiValueMap extends TestCase { + assertEquals(4, map.totalSize()); + map.remove("A"); + assertEquals(3, map.totalSize()); +- map.remove("B", "BC"); ++ map.removeMapping("B", "BC"); + assertEquals(2, map.totalSize()); + } + +@@ -204,7 +204,7 @@ public class TestMultiValueMap extends TestCase { + assertEquals(2, map.size()); + map.remove("A"); + assertEquals(2, map.size()); +- map.remove("B", "BC"); ++ map.removeMapping("B", "BC"); + assertEquals(2, map.size()); + } + +@@ -227,7 +227,7 @@ public class TestMultiValueMap extends TestCase { + map.remove("A"); + assertEquals(0, map.size("A")); + assertEquals(3, map.size("B")); +- map.remove("B", "BC"); ++ map.removeMapping("B", "BC"); + assertEquals(0, map.size("A")); + assertEquals(2, map.size("B")); + } +@@ -338,11 +338,11 @@ public class TestMultiValueMap extends TestCase { + map.put("A", "AA"); + map.put("A", "AB"); + map.put("A", "AC"); +- assertEquals(null, map.remove("C", "CA")); +- assertEquals(null, map.remove("A", "AD")); +- assertEquals("AC", map.remove("A", "AC")); +- assertEquals("AB", map.remove("A", "AB")); +- assertEquals("AA", map.remove("A", "AA")); ++ assertEquals(false, map.removeMapping("C", "CA")); ++ assertEquals(false, map.removeMapping("A", "AD")); ++ assertEquals(true, map.removeMapping("A", "AC")); ++ assertEquals(true, map.removeMapping("A", "AB")); ++ assertEquals(true, map.removeMapping("A", "AA")); + assertEquals(new MultiValueMap(), map); + } + +-- +2.18.0 + diff --git a/gnu/packages/patches/libreoffice-icu.patch b/gnu/packages/patches/libreoffice-icu.patch new file mode 100644 index 0000000000..2985d564aa --- /dev/null +++ b/gnu/packages/patches/libreoffice-icu.patch @@ -0,0 +1,126 @@ +This patch fixes the build of Libreoffice 6.0.5 with icu 61.1. +It was downloaded from https://bugs.gentoo.org/651702. + +--- a/forms/source/xforms/datatypes.hxx ++++ a/forms/source/xforms/datatypes.hxx +@@ -36,6 +36,8 @@ + + #include + ++using icu::RegexMatcher; ++ + + namespace xforms + { +--- a/i18npool/inc/collator_unicode.hxx ++++ a/i18npool/inc/collator_unicode.hxx +@@ -26,6 +26,8 @@ + + #include + ++using icu::RuleBasedCollator; ++ + // ---------------------------------------------------- + // class Collator_Unicode + // ---------------------------------------------------- +--- a/i18npool/source/breakiterator/breakiterator_unicode.cxx ++++ a/i18npool/source/breakiterator/breakiterator_unicode.cxx +@@ -30,6 +30,9 @@ + #include + #include + ++using icu::BreakIterator; ++using icu::RuleBasedBreakIterator; ++ + U_CDECL_BEGIN + extern const char OpenOffice_dat[]; + U_CDECL_END +--- a/i18npool/source/collator/collator_unicode.cxx ++++ a/i18npool/source/collator/collator_unicode.cxx +@@ -29,6 +29,8 @@ + #include + #include + ++using icu::Collator; ++ + using namespace ::com::sun::star; + using namespace ::com::sun::star::i18n; + using namespace ::com::sun::star::lang; +--- a/i18npool/source/collator/gencoll_rule.cxx ++++ a/i18npool/source/collator/gencoll_rule.cxx +@@ -31,6 +31,8 @@ + + #include + ++using icu::RuleBasedCollator; ++ + /* Main Procedure */ + + void data_write(char* file, char* name, sal_uInt8 *data, sal_Int32 len) +--- a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx ++++ a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx +@@ -29,6 +29,8 @@ + #include + #include + ++using icu::NumberFormat; ++ + using namespace ::com::sun::star::i18n; + using namespace ::com::sun::star::uno; + using namespace ::com::sun::star; +--- a/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx ++++ a/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx +@@ -12,6 +12,8 @@ + #include + #include + ++using icu::UnicodeString; ++ + namespace i18npool { + + ignoreDiacritics_CTL::ignoreDiacritics_CTL() +--- a/i18nutil/source/utility/unicode.cxx ++++ a/i18nutil/source/utility/unicode.cxx +@@ -34,6 +34,9 @@ + // which (obviously) breaks UnicodeType::CURRENCY_SYMBOL + #undef CURRENCY_SYMBOL + ++using icu::NumberFormat; ++using icu::UnicodeString; ++ + using namespace ::com::sun::star::i18n; + + template +--- a/lotuswordpro/source/filter/localtime.cxx ++++ a/lotuswordpro/source/filter/localtime.cxx +@@ -57,6 +57,8 @@ + #include + #include + ++using icu::TimeZone; ++ + const long DAY_SEC =24 * 60 * 60; + const long YEAR_SEC = 365 * DAY_SEC; + const long FOURYEAR_SEC = 4 * YEAR_SEC + DAY_SEC; +--- a/opencl/source/openclconfig.cxx ++++ a/opencl/source/openclconfig.cxx +@@ -17,6 +17,8 @@ + #include + #include + ++using icu::RegexMatcher; ++ + OpenCLConfig::OpenCLConfig() : + mbUseOpenCL(true) + { +--- a/vcl/inc/scrptrun.h ++++ a/vcl/inc/scrptrun.h +@@ -45,6 +45,8 @@ + #include + #include + ++using icu::UObject; ++ + namespace vcl { + + struct ParenStackEntry diff --git a/gnu/packages/patches/libtiff-CVE-2018-10963.patch b/gnu/packages/patches/libtiff-CVE-2018-10963.patch new file mode 100644 index 0000000000..d31c12399d --- /dev/null +++ b/gnu/packages/patches/libtiff-CVE-2018-10963.patch @@ -0,0 +1,40 @@ +Fix CVE-2018-10963: + +http://bugzilla.maptools.org/show_bug.cgi?id=2795 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-10963 + +Patch copied from upstream source repository: + +https://gitlab.com/libtiff/libtiff/commit/de144fd228e4be8aa484c3caf3d814b6fa88c6d9 + +From de144fd228e4be8aa484c3caf3d814b6fa88c6d9 Mon Sep 17 00:00:00 2001 +From: Even Rouault +Date: Sat, 12 May 2018 14:24:15 +0200 +Subject: [PATCH] TIFFWriteDirectorySec: avoid assertion. Fixes + http://bugzilla.maptools.org/show_bug.cgi?id=2795. CVE-2018-10963 + +--- + libtiff/tif_dirwrite.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/libtiff/tif_dirwrite.c b/libtiff/tif_dirwrite.c +index 2430de6d..c15a28db 100644 +--- a/libtiff/tif_dirwrite.c ++++ b/libtiff/tif_dirwrite.c +@@ -695,8 +695,11 @@ TIFFWriteDirectorySec(TIFF* tif, int isimage, int imagedone, uint64* pdiroff) + } + break; + default: +- assert(0); /* we should never get here */ +- break; ++ TIFFErrorExt(tif->tif_clientdata,module, ++ "Cannot write tag %d (%s)", ++ TIFFFieldTag(o), ++ o->field_name ? o->field_name : "unknown"); ++ goto bad; + } + } + } +-- +2.17.0 + diff --git a/gnu/packages/patches/libtiff-CVE-2018-8905.patch b/gnu/packages/patches/libtiff-CVE-2018-8905.patch new file mode 100644 index 0000000000..f49815789e --- /dev/null +++ b/gnu/packages/patches/libtiff-CVE-2018-8905.patch @@ -0,0 +1,61 @@ +Fix CVE-2018-8095: + +http://bugzilla.maptools.org/show_bug.cgi?id=2780 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-8905 + +Patch copied from upstream source repository: + +https://gitlab.com/libtiff/libtiff/commit/58a898cb4459055bb488ca815c23b880c242a27d + +From 58a898cb4459055bb488ca815c23b880c242a27d Mon Sep 17 00:00:00 2001 +From: Even Rouault +Date: Sat, 12 May 2018 15:32:31 +0200 +Subject: [PATCH] LZWDecodeCompat(): fix potential index-out-of-bounds write. + Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2780 / CVE-2018-8905 + +The fix consists in using the similar code LZWDecode() to validate we +don't write outside of the output buffer. +--- + libtiff/tif_lzw.c | 18 ++++++++++++------ + 1 file changed, 12 insertions(+), 6 deletions(-) + +diff --git a/libtiff/tif_lzw.c b/libtiff/tif_lzw.c +index 4ccb443c..94d85e38 100644 +--- a/libtiff/tif_lzw.c ++++ b/libtiff/tif_lzw.c +@@ -602,6 +602,7 @@ LZWDecodeCompat(TIFF* tif, uint8* op0, tmsize_t occ0, uint16 s) + char *tp; + unsigned char *bp; + int code, nbits; ++ int len; + long nextbits, nextdata, nbitsmask; + code_t *codep, *free_entp, *maxcodep, *oldcodep; + +@@ -753,13 +754,18 @@ LZWDecodeCompat(TIFF* tif, uint8* op0, tmsize_t occ0, uint16 s) + } while (--occ); + break; + } +- assert(occ >= codep->length); +- op += codep->length; +- occ -= codep->length; +- tp = op; ++ len = codep->length; ++ tp = op + len; + do { +- *--tp = codep->value; +- } while( (codep = codep->next) != NULL ); ++ int t; ++ --tp; ++ t = codep->value; ++ codep = codep->next; ++ *tp = (char)t; ++ } while (codep && tp > op); ++ assert(occ >= len); ++ op += len; ++ occ -= len; + } else { + *op++ = (char)code; + occ--; +-- +2.17.0 + diff --git a/gnu/packages/patches/libyaml-CVE-2014-9130.patch b/gnu/packages/patches/libyaml-CVE-2014-9130.patch deleted file mode 100644 index 800358c0d6..0000000000 --- a/gnu/packages/patches/libyaml-CVE-2014-9130.patch +++ /dev/null @@ -1,30 +0,0 @@ -Fixes CVE-2014-9130 -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-9130 - -Upstream source: -https://bitbucket.org/xi/libyaml/commits/2b9156756423e967cfd09a61d125d883fca6f4f2 - -# HG changeset patch -# User Kirill Simonov -# Date 1417197312 21600 -# Node ID 2b9156756423e967cfd09a61d125d883fca6f4f2 -# Parent 053f53a381ff6adbbc93a31ab7fdee06a16c8a33 -Removed invalid simple key assertion (thank to Jonathan Gray). - -diff --git a/src/scanner.c b/src/scanner.c ---- a/src/scanner.c -+++ b/src/scanner.c -@@ -1106,13 +1106,6 @@ - && parser->indent == (ptrdiff_t)parser->mark.column); - - /* -- * A simple key is required only when it is the first token in the current -- * line. Therefore it is always allowed. But we add a check anyway. -- */ -- -- assert(parser->simple_key_allowed || !required); /* Impossible. */ -- -- /* - * If the current position may start a simple key, save it. - */ - diff --git a/gnu/packages/patches/maven-generate-component-xml.patch b/gnu/packages/patches/maven-generate-component-xml.patch new file mode 100644 index 0000000000..6cb23c7858 --- /dev/null +++ b/gnu/packages/patches/maven-generate-component-xml.patch @@ -0,0 +1,171 @@ +From da9e282d834f0e2128501a8154128dc95b4c599d Mon Sep 17 00:00:00 2001 +From: Julien Lepiller +Date: Sat, 9 Sep 2017 20:34:38 +0200 +Subject: [PATCH] Add a script to generate component.xml files. + +plexus-component-metadata is normally used for this task, but it +depends on maven-core, which depends on maven-model-builder, which needs +plexus-component-metadata. This script is meant to break this dependency +cycle. +--- + components.sh | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 132 insertions(+) + create mode 100755 components.sh + +diff --git a/components.sh b/components.sh +new file mode 100755 +index 0000000..c6748bd +--- /dev/null ++++ b/components.sh +@@ -0,0 +1,148 @@ ++## This script generates a rough plexus/components.xml file. It is meant to ++## replace plexus-component-metadata as it eventually has a recursive dependency ++## on itself. ++## ++## This script must be run in the source directory (usually src/main/java). ++ ++# Finds the complete name from a class name. ++function find_role() { ++ role=$1 ++ # Find role ++ case $role in ++ "SettingsWriter" | "SettingsReader") ++ role=org.apache.maven.settings.io.$role ++ ;; ++ "SecDispatcher") ++ role=org.sonatype.plexus.components.sec.dispatcher.$role ++ ;; ++ "SettingsDecrypter") ++ role=org.apache.maven.settings.crypto.$role ++ ;; ++ "SettingsBuilder") ++ role=org.apache.maven.settings.building.$role ++ ;; ++ "SettingsValidator") ++ role=org.apache.maven.settings.validation.$role ++ ;; ++ "LoggerFactory") ++ role=org.eclipse.aether.spi.log.$role ++ ;; ++ "RemoteRepositoryManager" | "VersionResolver" | "VersionRangeResolver" \ ++ | "ArtifactResolver" | "RepositoryEventDispatcher" | "MetadataResolver" \ ++ | "SyncContextFactory" | "MetadataGeneratorFactory" | "MetadatResolver" \ ++ | "ArtifactDescriptorReader") ++ role=org.eclipse.aether.impl.$role ++ ;; ++ "ModelBuilder" | "ModelProcessor") ++ role=org.apache.maven.model.building.$role ++ ;; ++ "ModelValidator") ++ role=org.apache.maven.model.validation.$role ++ ;; ++ "ProfileInjector" | "ProfileSelector") ++ role=org.apache.maven.model.profile.$role ++ ;; ++ "ProfileActivator") ++ role=org.apache.maven.model.profile.activation.$role ++ ;; ++ "SuperPomProvider") ++ role=org.apache.maven.model.superpom.$role ++ ;; ++ "ReportConfigurationExpander" | "PluginConfigurationExpander" \ ++ | "ReportingConverter" | "LifecycleBindingsInjector") ++ role=org.apache.maven.model.plugin.$role ++ ;; ++ "ModelLocator") ++ role=org.apache.maven.model.locator.$role ++ ;; ++ "ModelPathTranslator" | "PathTranslator" | "UrlNormalizer" | "ModelUrlNormalizer") ++ role=org.apache.maven.model.path.$role ++ ;; ++ "DependencyManagementInjector" | "PluginManagementInjector") ++ role=org.apache.maven.model.management.$role ++ ;; ++ "ModelWriter" | "ModelReader") ++ role=org.apache.maven.model.io.$role ++ ;; ++ "DependencyManagementImporter") ++ role=org.apache.maven.model.composition.$role ++ ;; ++ "ModelNormalizer") ++ role=org.apache.maven.model.normalization.$role ++ ;; ++ "ModelInterpolator") ++ role=org.apache.maven.model.interpolation.$role ++ ;; ++ "InheritanceAssembler") ++ role=org.apache.maven.model.inheritance.$role ++ ;; ++ *) ++ role=$role ++ ;; ++ esac ++ echo $role ++} ++ ++function generate_xml() { ++echo "" ++echo "" ++echo "" ++ ++for file in `find -name '*.java'`; do ++ annot=`grep "@Component" $file` ++ if [ "$?" == "0" ]; then ++ # We have a component! ++ role=$(echo $annot | sed 's|.*role = \(.*\).class.*|\1|') ++ role_hint=$(echo $annot | sed 's|.*hint = "\(.*\)" .*|\1|') ++ if [ "$role_hint" = "$annot" ]; then ++ role_hint=default ++ fi ++ implem=$(echo $file | sed -e 's|^\./||' -e 's|\.java||' -e 's|/|.|g') ++ role=$(find_role $role) ++ ++ echo "" ++ echo " $role" ++ echo " $role_hint" ++ echo " $implem" ++ echo " " ++ echo " false" ++ echo " " ++ reqn=1 ++ cont=true ++ while [ "$cont" = "true" ]; do ++ requirement=$(grep "@Requirement" $file -A1 | head -n ${reqn} | tail -1) ++ ((reqn++)) ++ property=$(grep "@Requirement" $file -A1 | head -n ${reqn} | tail -1) ++ if (echo $requirement | grep "@Requirement" >/dev/null); then ++ ((reqn++)) ++ ((reqn++)) ++ optional=$(echo $requirement | sed 's|.*optional = \(.*\) .*|\1|') ++ req_role=$(echo $requirement | sed 's|.*role = \(.*\).class .*|\1|') ++ if (echo $req_role | grep "@Requirement" >/dev/null); then ++ req_role=$(echo $property | sed 's|.*private \(.*\) .*|\1|') ++ fi ++ req_role=$(find_role $req_role) ++ req_name=$(echo $property | sed 's|[^ ]* [^ ]* \([^ ;]*\).*|\1|') ++ echo " " ++ echo " $req_role" ++ echo " $req_name" ++ if (echo $optional | grep "@Requirement" >/dev/null); then ++ : ++ else ++ echo " $optional" ++ fi ++ echo " " ++ else ++ cont=false ++ fi ++ done ++ echo " " ++ echo "" ++ fi ++done ++ ++echo "" ++echo "" ++} ++ ++(cd $1; generate_xml) > $2 +-- +2.14.1 + diff --git a/gnu/packages/patches/maven-generate-javax-inject-named.patch b/gnu/packages/patches/maven-generate-javax-inject-named.patch new file mode 100644 index 0000000000..b8eba5ab90 --- /dev/null +++ b/gnu/packages/patches/maven-generate-javax-inject-named.patch @@ -0,0 +1,31 @@ +From 1d20c0e403f1a38d4aca830e0eb4db03ba43efd3 Mon Sep 17 00:00:00 2001 +From: Julien Lepiller +Date: Tue, 19 Sep 2017 22:21:29 +0200 +Subject: [PATCH] Add sisu-maven-plugin replacement + +--- + sisu.sh | 12 ++++++++++++ + 1 file changed, 12 insertions(+) + create mode 100755 sisu.sh + +diff --git a/sisu.sh b/sisu.sh +new file mode 100755 +index 0000000..979f373 +--- /dev/null ++++ b/sisu.sh +@@ -0,0 +1,12 @@ ++## This script generates a rough javax.inject.Named file. It is meant to ++## replace sisu-maven-plugin as it eventually has a recursive dependency ++## on maven. ++## ++## This script must be run in the source directory (usually src/main/java). ++ ++for file in `(cd $1; find -name '*.java')`; do ++ annot=`grep "^@Named" $1/$file` ++ if [ "$annot" != "" ]; then ++ echo $file | sed -e 's|^\./||' -e 's|\.java||' -e 's|/|.|g' ++ fi ++done > $2 +-- +2.14.1 + diff --git a/gnu/packages/patches/mrrescue-support-love-11.patch b/gnu/packages/patches/mrrescue-support-love-11.patch new file mode 100644 index 0000000000..2786a6b01b --- /dev/null +++ b/gnu/packages/patches/mrrescue-support-love-11.patch @@ -0,0 +1,213 @@ +From: Tobias Geerinckx-Rice +Date: Tue, 19 Jun 2018 04:37:46 +0200 +Subject: gnu: mrrescue: Support Love 11. + +The patch below was copied verbatim from an as-yet-unmerged PR[0] to +make Mr. Rescue run on a newer version of the Löve engine. + +[0]: https://github.com/SimonLarsen/mrrescue/pull/17 +--- +From ab23031e0c2faecb77fde1be8a41d6f8ea4e6eda Mon Sep 17 00:00:00 2001 +From: Mystro256 +Date: Sun, 10 Jun 2018 21:19:23 -0400 +Subject: [PATCH] Love 11 support + +--- + conf.lua | 2 +- + config.lua | 6 +++--- + highscore_entry.lua | 4 ++-- + highscore_list.lua | 4 ++-- + ingame.lua | 6 +++--- + ingame_menu.lua | 4 ++-- + joystick.lua | 4 ++-- + main.lua | 2 +- + resources.lua | 4 ++-- + util.lua | 4 ++-- + 10 files changed, 20 insertions(+), 20 deletions(-) + +diff --git a/conf.lua b/conf.lua +index 8776da4..f00b216 100644 +--- a/conf.lua ++++ b/conf.lua +@@ -1,6 +1,6 @@ + function love.conf(t) + t.identity = "mrrescue" +- t.version = "0.10.0" ++ t.version = "11.0" + t.console = false + t.accelerometerjoystick = true + t.gammacorrect = false +diff --git a/config.lua b/config.lua +index 63eeb04..71c2b66 100644 +--- a/config.lua ++++ b/config.lua +@@ -38,7 +38,7 @@ function loadConfig() + config[i] = v + end + end +- if love.filesystem.exists("settings") then ++ if love.filesystem.getInfo("settings")~= nil then + local data = love.filesystem.read("settings") + local file = TSerial.unpack(data) + for i,v in pairs(file) do +@@ -52,7 +52,7 @@ function loadConfig() + end + + function loadHighscores() +- if love.filesystem.exists("highscores") then ++ if love.filesystem.getInfo("highscores")~= nil then + local data = love.filesystem.read("highscores") + local file = TSerial.unpack(data) + for i=1,3 do +@@ -64,7 +64,7 @@ function loadHighscores() + end + + function loadStats() +- if love.filesystem.exists("stats") then ++ if love.filesystem.getInfo("stats")~= nil then + local data = love.filesystem.read("stats") + stats = TSerial.unpack(data) + end +diff --git a/highscore_entry.lua b/highscore_entry.lua +index 2f763af..3b3bb73 100644 +--- a/highscore_entry.lua ++++ b/highscore_entry.lua +@@ -45,9 +45,9 @@ function highscore_entry.draw() + for ix = 1,10 do + if highscore_entry.selection == char then + lg.rectangle("fill", 33+ix*16, 66+iy*16, 14, 14) +- lg.setColor(0,0,0,255) ++ lg.setColor(0,0,0,1) + lg.print(KEYBOARD:sub(char,char), 37+ix*16, 70+iy*16) +- lg.setColor(255,255,255,255) ++ lg.setColor(1,1,1,1) + else + lg.print(KEYBOARD:sub(char,char), 37+ix*16, 70+iy*16) + end +diff --git a/highscore_list.lua b/highscore_list.lua +index 6a17973..b66d0e2 100644 +--- a/highscore_list.lua ++++ b/highscore_list.lua +@@ -31,10 +31,10 @@ function highscore_list.draw() + if scores[i] then + if highscore_list.level == highscore_list.hllevel + and highscore_list.hlpos == i then +- lg.setColor(25,118,115,255) ++ lg.setColor(25/255,118/255,115/255,1) + lg.print(scores[i].name, 48, 14+i*16) + lg.print(scores[i].score, 105, 14+i*16) +- lg.setColor(255,255,255,255) ++ lg.setColor(1,1,1,1) + else + lg.print(scores[i].name, 48, 14+i*16) + lg.print(scores[i].score, 105, 14+i*16) +diff --git a/ingame.lua b/ingame.lua +index 52004f1..f5c6f7c 100644 +--- a/ingame.lua ++++ b/ingame.lua +@@ -189,16 +189,16 @@ function ingame.draw() + lg.pop() + + if map.type == MT_NORMAL then +- lg.setBlendMode("multiply") ++ lg.setBlendMode("multiply", "premultiplied") + lg.draw(canvas, 0,0) + lg.setBlendMode("alpha") + end + + -- Draw red screen if hit + if player.heat > 0 then +- lg.setColor(255,255,255,cap(player.heat*255, 16, 255)) ++ lg.setColor(1,1,1,cap(player.heat*255, 16, 255)/255) + lg.draw(img.red_screen, quad.red_screen, 0,0) +- lg.setColor(255,255,255,255) ++ lg.setColor(1,1,1,1) + end + + -- Draw hud +diff --git a/ingame_menu.lua b/ingame_menu.lua +index 9fcf768..82a8459 100644 +--- a/ingame_menu.lua ++++ b/ingame_menu.lua +@@ -18,10 +18,10 @@ function ingame_menu.draw() + lg.pop() + + lg.scale(config.scale) +- lg.setColor(0,0,0,238) ++ lg.setColor(0,0,0,238/255) + lg.rectangle("fill", 0, 0, WIDTH, HEIGHT) + +- lg.setColor(255,255,255,255) ++ lg.setColor(1,1,1,1) + lg.printf("PAUSED", 0, 46, WIDTH, "center") + lg.print("RESUME", 103, 92) + lg.print("QUIT", 103, 106) +diff --git a/joystick.lua b/joystick.lua +index 50ccadb..72d545e 100644 +--- a/joystick.lua ++++ b/joystick.lua +@@ -22,11 +22,11 @@ function joystick.draw() + lg.printf("SET JOYSTICK", 0, 39, WIDTH, "center") + for i=1,4 do + if joystick.waiting == true and joystick.selection == i then +- lg.setColor(195,52,41) ++ lg.setColor(195/255,52/255,41/255) + end + lg.print(string.upper(joykeynames[i]), 65, 53+i*13) + lg.print(config.joykeys[joykeynames[i]], 165, 53+i*13) +- lg.setColor(255,255,255) ++ lg.setColor(1,1,1) + end + lg.print("DEFAULT", 65, 118) + lg.print("BACK", 65, 131) +diff --git a/main.lua b/main.lua +index 9433e42..56096fa 100644 +--- a/main.lua ++++ b/main.lua +@@ -273,7 +273,7 @@ function love.releaseerrhand(msg) + local font = love.graphics.newFont(14) + love.graphics.setFont(font) + +- love.graphics.setColor(255, 255, 255, 255) ++ love.graphics.setColor(1, 1, 1, 1) + + love.graphics.clear() + +diff --git a/resources.lua b/resources.lua +index e5aa70d..1bab520 100644 +--- a/resources.lua ++++ b/resources.lua +@@ -7,7 +7,7 @@ local snd = {} -- sound Sources + + local IMAGE_FILES = { + "splash", "tangram", "lovesplashpixel", "howto", +- "tiles", "door", "boldfont", "captain_dialog", "captain_dialog_sad", ++ "tiles", "door", "captain_dialog", "captain_dialog_sad", + "boss_health", "highscore_panes", "exclamation", "stats_screen", + "awards", "hud", "hud2", "hud_people", "item_slots", "water_bar", + "reserve_bar", "overloaded_bar", "temperature_bar", "temperature_bar_blink", +@@ -147,7 +147,7 @@ function loadResources() + img.stream:setWrap("repeat", "clamp") + + -- Create fonts +- font.bold = lg.newImageFont(img.boldfont, " ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,!'-:*@<>+/_$&?", 2) ++ font.bold = lg.newImageFont("data/boldfont.png", " ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.,!'-:*@<>+/_$&?", 2) + lg.setFont(font.bold) + + -- Create quads +diff --git a/util.lua b/util.lua +index b9976da..656600a 100644 +--- a/util.lua ++++ b/util.lua +@@ -105,9 +105,9 @@ end + + + function drawBox(x,y,w,h) +- lg.setColor(30,23,18) ++ lg.setColor(30/255,23/255,18/255) + lg.rectangle("fill",x+1,y+1,w-2,h-2) +- lg.setColor(255,255,255) ++ lg.setColor(1,1,1) + -- Draw sides + lg.draw(img.menu_box, quad.box_left, x, y+1, 0, 1, (h-2)) + lg.draw(img.menu_box, quad.box_left, x+w, y+1, 0, -1, (h-2)) diff --git a/gnu/packages/patches/mumble-1.2.19-abs.patch b/gnu/packages/patches/mumble-1.2.19-abs.patch new file mode 100644 index 0000000000..683325f4bc --- /dev/null +++ b/gnu/packages/patches/mumble-1.2.19-abs.patch @@ -0,0 +1,31 @@ +From ea861fe86743c8402bbad77d8d1dd9de8dce447e Mon Sep 17 00:00:00 2001 +From: Mikkel Krautz +Date: Fri, 29 Dec 2017 14:47:25 +0100 +Subject: [PATCH] AudioOutput: do not use non-existant template version of + std::abs. + +This change fixes AudioOutput to use the float overload of std::abs: + + float std::abs(float); + +instead of a non-existant template version (for newer Boost 1.66). + +Fixes mumble-voip/mumble#3281 + +--- + src/mumble/AudioOutput.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/mumble/AudioOutput.cpp b/src/mumble/AudioOutput.cpp +index cbe0c0e2b..7a0a5e2ab 100644 +--- a/src/mumble/AudioOutput.cpp ++++ b/src/mumble/AudioOutput.cpp +@@ -437,7 +437,7 @@ bool AudioOutput::mix(void *outbuff, unsigned int nsamp) { + top[2] = 0.0f; + } + +- if (std::abs(front[0] * top[0] + front[1] * top[1] + front[2] * top[2]) > 0.01f) { ++ if (std::abs(front[0] * top[0] + front[1] * top[1] + front[2] * top[2]) > 0.01f) { + // Not perpendicular. Assume Y up and rotate 90 degrees. + + float azimuth = 0.0f; diff --git a/gnu/packages/patches/nyx-show-header-stats-with-python3.patch b/gnu/packages/patches/nyx-show-header-stats-with-python3.patch new file mode 100644 index 0000000000..5b20f180f7 --- /dev/null +++ b/gnu/packages/patches/nyx-show-header-stats-with-python3.patch @@ -0,0 +1,70 @@ +From: Tobias Geerinckx-Rice +Date: Fri, 22 Jun 2018 02:56:39 +0200 +Subject: nyx: Show header stats. + +The following patch was taken verbatim from the upstream repository and +will be included in the next release. +--- +commit 3494111cc81ad4985e81d0c1ea5e451d8f7a2bcc +Author: Damian Johnson +Date: Mon Feb 5 20:07:40 2018 -0800 + + Header stats missing with python3 + + Ick! took me a while to find this. Python3 changed division from providing ints + to floats. This in turn caused our header panel to call addstr with float x/y + coordinates, which made that funciton fail silently. End result is that when + the header panel showed two columns of stats the right column was missing. + + Caught thanks to Stijn. + +diff --git a/nyx/panel/header.py b/nyx/panel/header.py +index 09e3838..fb6f2f7 100644 +--- a/nyx/panel/header.py ++++ b/nyx/panel/header.py +@@ -155,7 +155,7 @@ class HeaderPanel(nyx.panel.DaemonPanel): + # space available for content + + interface = nyx_interface() +- left_width = max(subwindow.width / 2, 77) if is_wide else subwindow.width ++ left_width = max(subwindow.width // 2, 77) if is_wide else subwindow.width + right_width = subwindow.width - left_width + + _draw_platform_section(subwindow, 0, 0, left_width, vals) +diff --git a/web/changelog/index.html b/web/changelog/index.html +index 333fa84..196d82b 100644 +--- a/web/changelog/index.html ++++ b/web/changelog/index.html +@@ -74,6 +74,12 @@ + + + ++
  • Header ++
      ++
    • Right column of stats missing when using python 3.x
    • ++
    ++
  • ++ +
  • Connections +
      +
    • Geoip information unavailable for inbound connections
    • +diff --git a/web/changelog/legacy.html b/web/changelog/legacy.html +index a380806..02d405f 100644 +--- a/web/changelog/legacy.html ++++ b/web/changelog/legacy.html +@@ -137,13 +137,13 @@ +
    +
  • + +-
  • Startup ++
  • Graph +
      +
    • Crash when pausing if we showed accounting stats
    • +
    +
  • + +-
  • Startup ++
  • Logging +
      +
    • Skip reading from malformed tor log files
    • +
    • Unable to log GUARD events
    • diff --git a/gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch b/gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch new file mode 100644 index 0000000000..39fb7aa226 --- /dev/null +++ b/gnu/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch @@ -0,0 +1,149 @@ +From a87c3f20e846c00e53d695497dba7038edbd12f0 Mon Sep 17 00:00:00 2001 +From: Valentin Lorentz +Date: Thu, 13 Aug 2015 11:59:04 +0200 +Subject: [PATCH] Enable ocamldoc to build reproducible manpages + +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=794586 +Signed-off-by: Stephane Glondu +--- + ocamldoc/odoc_man.ml | 15 +++++---------- + ocamldoc/odoc_misc.ml | 12 ++++++++++-- + ocamldoc/odoc_misc.mli | 7 ++++++- + 3 files changed, 21 insertions(+), 13 deletions(-) + +diff --git a/ocamldoc/odoc_man.ml b/ocamldoc/odoc_man.ml +index 615c5e172..3c85aa32a 100644 +--- a/ocamldoc/odoc_man.ml ++++ b/ocamldoc/odoc_man.ml +@@ -864,14 +864,13 @@ class man = + (** Generate the man page for the given class.*) + method generate_for_class cl = + Odoc_info.reset_type_names () ; +- let date = Unix.time () in + let file = self#file_name cl.cl_name in + try + let chanout = self#open_out file in + let b = new_buf () in + bs b (".TH \""^cl.cl_name^"\" "); + bs b !man_section ; +- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); ++ bs b (" source: "^Odoc_misc.current_date^" "); + bs b "OCamldoc "; + bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); + +@@ -923,14 +922,13 @@ class man = + (** Generate the man page for the given class type.*) + method generate_for_class_type ct = + Odoc_info.reset_type_names () ; +- let date = Unix.time () in + let file = self#file_name ct.clt_name in + try + let chanout = self#open_out file in + let b = new_buf () in + bs b (".TH \""^ct.clt_name^"\" "); + bs b !man_section ; +- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); ++ bs b (" source: "^Odoc_misc.current_date^" "); + bs b "OCamldoc "; + bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); + +@@ -1016,14 +1014,13 @@ class man = + (** Generate the man file for the given module type. + @raise Failure if an error occurs.*) + method generate_for_module_type mt = +- let date = Unix.time () in + let file = self#file_name mt.mt_name in + try + let chanout = self#open_out file in + let b = new_buf () in + bs b (".TH \""^mt.mt_name^"\" "); + bs b !man_section ; +- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); ++ bs b (" source: "^Odoc_misc.current_date^" "); + bs b "OCamldoc "; + bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); + +@@ -1099,14 +1096,13 @@ class man = + (** Generate the man file for the given module. + @raise Failure if an error occurs.*) + method generate_for_module m = +- let date = Unix.time () in + let file = self#file_name m.m_name in + try + let chanout = self#open_out file in + let b = new_buf () in + bs b (".TH \""^m.m_name^"\" "); + bs b !man_section ; +- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); ++ bs b (" source: "^Odoc_misc.current_date^" "); + bs b "OCamldoc "; + bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); + +@@ -1206,14 +1202,13 @@ class man = + | Res_const (_,f) -> f.vc_name + ) + in +- let date = Unix.time () in + let file = self#file_name name in + try + let chanout = self#open_out file in + let b = new_buf () in + bs b (".TH \""^name^"\" "); + bs b !man_section ; +- bs b (" "^(Odoc_misc.string_of_date ~hour: false date)^" "); ++ bs b (" source: "^Odoc_misc.current_date^" "); + bs b "OCamldoc "; + bs b ("\""^(match !Global.title with Some t -> t | None -> "")^"\"\n"); + bs b ".SH NAME\n"; +diff --git a/ocamldoc/odoc_misc.ml b/ocamldoc/odoc_misc.ml +index 4c74476da..456225f62 100644 +--- a/ocamldoc/odoc_misc.ml ++++ b/ocamldoc/odoc_misc.ml +@@ -223,9 +223,9 @@ let apply_opt f v_opt = + None -> None + | Some v -> Some (f v) + +-let string_of_date ?(hour=true) d = ++let string_of_date ?(absolute=false) ?(hour=true) d = + let add_0 s = if String.length s < 2 then "0"^s else s in +- let t = Unix.localtime d in ++ let t = (if absolute then Unix.gmtime else Unix.localtime) d in + (string_of_int (t.Unix.tm_year + 1900))^"-"^ + (add_0 (string_of_int (t.Unix.tm_mon + 1)))^"-"^ + (add_0 (string_of_int t.Unix.tm_mday))^ +@@ -238,6 +238,14 @@ let string_of_date ?(hour=true) d = + "" + ) + ++let current_date = ++ let time = ++ try ++ float_of_string (Sys.getenv "SOURCE_DATE_EPOCH") ++ with ++ Not_found -> Unix.time () ++ in string_of_date ~absolute: true ~hour: false time ++ + + let rec text_list_concat sep l = + match l with +diff --git a/ocamldoc/odoc_misc.mli b/ocamldoc/odoc_misc.mli +index dd5a7fcb9..38ff0612b 100644 +--- a/ocamldoc/odoc_misc.mli ++++ b/ocamldoc/odoc_misc.mli +@@ -62,7 +62,12 @@ val apply_opt : ('a -> 'b) -> 'a option -> 'b option + + (** Return a string representing a date given as a number of seconds + since 1970. The hour is optionnaly displayed. *) +-val string_of_date : ?hour:bool -> float -> string ++val string_of_date : ?absolute:bool -> ?hour:bool -> float -> string ++ ++(* Value returned by string_of_date for current time. ++ * Uses environment variable SOURCE_DATE_EPOCH if set; falls back to ++ * current timestamp otherwise. *) ++val current_date : string + + (** Return the first sentence (until the first dot) of a text. + Don't stop in the middle of [Code], [Verbatim], [List], [Lnum], +-- +2.17.1 + diff --git a/gnu/packages/patches/opensmtpd-fix-crash.patch b/gnu/packages/patches/opensmtpd-fix-crash.patch new file mode 100644 index 0000000000..0030167533 --- /dev/null +++ b/gnu/packages/patches/opensmtpd-fix-crash.patch @@ -0,0 +1,44 @@ +From 9b5f70b93e038df5446bd37a4adac5a0380748e7 Mon Sep 17 00:00:00 2001 +From: johannes +Date: Wed, 21 Feb 2018 23:57:11 +0100 +Subject: [PATCH] crypt_checkpass: include HAVE_CRYPT_H definition, add NULL + check + +--- + openbsd-compat/crypt_checkpass.c | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/openbsd-compat/crypt_checkpass.c b/openbsd-compat/crypt_checkpass.c +index dafd2dae..d10b3a57 100644 +--- a/openbsd-compat/crypt_checkpass.c ++++ b/openbsd-compat/crypt_checkpass.c +@@ -1,5 +1,6 @@ + /* OPENBSD ORIGINAL: lib/libc/crypt/cryptutil.c */ + ++#include "includes.h" + #include + #ifdef HAVE_CRYPT_H + #include +@@ -10,6 +11,8 @@ + int + crypt_checkpass(const char *pass, const char *goodhash) + { ++ char *c; ++ + if (goodhash == NULL) + goto fail; + +@@ -17,7 +20,11 @@ crypt_checkpass(const char *pass, const char *goodhash) + if (strlen(goodhash) == 0 && strlen(pass) == 0) + return 0; + +- if (strcmp(crypt(pass, goodhash), goodhash) == 0) ++ c = crypt(pass, goodhash); ++ if (c == NULL) ++ goto fail; ++ ++ if (strcmp(c, goodhash) == 0) + return 0; + + fail: + diff --git a/gnu/packages/patches/openssl-1.0.2-CVE-2018-0495.patch b/gnu/packages/patches/openssl-1.0.2-CVE-2018-0495.patch new file mode 100644 index 0000000000..2d54ed03b9 --- /dev/null +++ b/gnu/packages/patches/openssl-1.0.2-CVE-2018-0495.patch @@ -0,0 +1,215 @@ +Fix CVE-2018-0495: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-0495 +https://www.nccgroup.trust/us/our-research/technical-advisory-return-of-the-hidden-number-problem/ + +Patch copied from upstream source repository: + +https://github.com/openssl/openssl/commit/949ff36623eafc3523a9f91784992965018ffb05 + +From 949ff36623eafc3523a9f91784992965018ffb05 Mon Sep 17 00:00:00 2001 +From: Matt Caswell +Date: Fri, 25 May 2018 12:10:13 +0100 +Subject: [PATCH] Add blinding to an ECDSA signature + +Keegan Ryan (NCC Group) has demonstrated a side channel attack on an +ECDSA signature operation. During signing the signer calculates: + +s:= k^-1 * (m + r * priv_key) mod order + +The addition operation above provides a sufficient signal for a +flush+reload attack to derive the private key given sufficient signature +operations. + +As a mitigation (based on a suggestion from Keegan) we add blinding to +the operation so that: + +s := k^-1 * blind^-1 (blind * m + blind * r * priv_key) mod order + +Since this attack is a localhost side channel only no CVE is assigned. + +Reviewed-by: Rich Salz +--- + CHANGES | 4 ++ + crypto/ecdsa/ecdsatest.c | 9 ++++- + crypto/ecdsa/ecs_ossl.c | 82 ++++++++++++++++++++++++++++++++-------- + 3 files changed, 79 insertions(+), 16 deletions(-) + +diff --git a/crypto/ecdsa/ecdsatest.c b/crypto/ecdsa/ecdsatest.c +index 0f301f86d9..a130fc9117 100644 +--- a/crypto/ecdsa/ecdsatest.c ++++ b/crypto/ecdsa/ecdsatest.c +@@ -137,7 +137,7 @@ int restore_rand(void) + return 1; + } + +-static int fbytes_counter = 0; ++static int fbytes_counter = 0, use_fake = 0; + static const char *numbers[8] = { + "651056770906015076056810763456358567190100156695615665659", + "6140507067065001063065065565667405560006161556565665656654", +@@ -158,6 +158,11 @@ int fbytes(unsigned char *buf, int num) + int ret; + BIGNUM *tmp = NULL; + ++ if (use_fake == 0) ++ return old_rand->bytes(buf, num); ++ ++ use_fake = 0; ++ + if (fbytes_counter >= 8) + return 0; + tmp = BN_new(); +@@ -199,11 +204,13 @@ int x9_62_test_internal(BIO *out, int nid, const char *r_in, const char *s_in) + /* create the key */ + if ((key = EC_KEY_new_by_curve_name(nid)) == NULL) + goto x962_int_err; ++ use_fake = 1; + if (!EC_KEY_generate_key(key)) + goto x962_int_err; + BIO_printf(out, "."); + (void)BIO_flush(out); + /* create the signature */ ++ use_fake = 1; + signature = ECDSA_do_sign(digest, 20, key); + if (signature == NULL) + goto x962_int_err; +diff --git a/crypto/ecdsa/ecs_ossl.c b/crypto/ecdsa/ecs_ossl.c +index 16d4f59b9b..1d37551803 100644 +--- a/crypto/ecdsa/ecs_ossl.c ++++ b/crypto/ecdsa/ecs_ossl.c +@@ -252,6 +252,7 @@ static ECDSA_SIG *ecdsa_do_sign(const unsigned char *dgst, int dgst_len, + { + int ok = 0, i; + BIGNUM *kinv = NULL, *s, *m = NULL, *tmp = NULL, *order = NULL; ++ BIGNUM *blind = NULL, *blindm = NULL; + const BIGNUM *ckinv; + BN_CTX *ctx = NULL; + const EC_GROUP *group; +@@ -269,14 +270,25 @@ static ECDSA_SIG *ecdsa_do_sign(const unsigned char *dgst, int dgst_len, + } + + ret = ECDSA_SIG_new(); +- if (!ret) { ++ if (ret == NULL) { + ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_MALLOC_FAILURE); + return NULL; + } + s = ret->s; + +- if ((ctx = BN_CTX_new()) == NULL || (order = BN_new()) == NULL || +- (tmp = BN_new()) == NULL || (m = BN_new()) == NULL) { ++ ctx = BN_CTX_new(); ++ if (ctx == NULL) { ++ ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_MALLOC_FAILURE); ++ goto err; ++ } ++ ++ BN_CTX_start(ctx); ++ order = BN_CTX_get(ctx); ++ tmp = BN_CTX_get(ctx); ++ m = BN_CTX_get(ctx); ++ blind = BN_CTX_get(ctx); ++ blindm = BN_CTX_get(ctx); ++ if (blindm == NULL) { + ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_MALLOC_FAILURE); + goto err; + } +@@ -315,26 +327,70 @@ static ECDSA_SIG *ecdsa_do_sign(const unsigned char *dgst, int dgst_len, + } + } + +- if (!BN_mod_mul(tmp, priv_key, ret->r, order, ctx)) { ++ /* ++ * The normal signature calculation is: ++ * ++ * s := k^-1 * (m + r * priv_key) mod order ++ * ++ * We will blind this to protect against side channel attacks ++ * ++ * s := k^-1 * blind^-1 * (blind * m + blind * r * priv_key) mod order ++ */ ++ ++ /* Generate a blinding value */ ++ do { ++ if (!BN_rand(blind, BN_num_bits(order) - 1, -1, 0)) ++ goto err; ++ } while (BN_is_zero(blind)); ++ BN_set_flags(blind, BN_FLG_CONSTTIME); ++ BN_set_flags(blindm, BN_FLG_CONSTTIME); ++ BN_set_flags(tmp, BN_FLG_CONSTTIME); ++ ++ /* tmp := blind * priv_key * r mod order */ ++ if (!BN_mod_mul(tmp, blind, priv_key, order, ctx)) { ++ ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_BN_LIB); ++ goto err; ++ } ++ if (!BN_mod_mul(tmp, tmp, ret->r, order, ctx)) { ++ ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_BN_LIB); ++ goto err; ++ } ++ ++ /* blindm := blind * m mod order */ ++ if (!BN_mod_mul(blindm, blind, m, order, ctx)) { ++ ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_BN_LIB); ++ goto err; ++ } ++ ++ /* s : = (blind * priv_key * r) + (blind * m) mod order */ ++ if (!BN_mod_add_quick(s, tmp, blindm, order)) { ++ ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_BN_LIB); ++ goto err; ++ } ++ ++ /* s:= s * blind^-1 mod order */ ++ if (BN_mod_inverse(blind, blind, order, ctx) == NULL) { + ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_BN_LIB); + goto err; + } +- if (!BN_mod_add_quick(s, tmp, m, order)) { ++ if (!BN_mod_mul(s, s, blind, order, ctx)) { + ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_BN_LIB); + goto err; + } ++ ++ /* s := s * k^-1 mod order */ + if (!BN_mod_mul(s, s, ckinv, order, ctx)) { + ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ERR_R_BN_LIB); + goto err; + } ++ + if (BN_is_zero(s)) { + /* + * if kinv and r have been supplied by the caller don't to + * generate new kinv and r values + */ + if (in_kinv != NULL && in_r != NULL) { +- ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, +- ECDSA_R_NEED_NEW_SETUP_VALUES); ++ ECDSAerr(ECDSA_F_ECDSA_DO_SIGN, ECDSA_R_NEED_NEW_SETUP_VALUES); + goto err; + } + } else +@@ -349,15 +405,11 @@ static ECDSA_SIG *ecdsa_do_sign(const unsigned char *dgst, int dgst_len, + ECDSA_SIG_free(ret); + ret = NULL; + } +- if (ctx) ++ if (ctx != NULL) { ++ BN_CTX_end(ctx); + BN_CTX_free(ctx); +- if (m) +- BN_clear_free(m); +- if (tmp) +- BN_clear_free(tmp); +- if (order) +- BN_free(order); +- if (kinv) ++ } ++ if (kinv != NULL) + BN_clear_free(kinv); + return ret; + } +-- +2.17.1 + diff --git a/gnu/packages/patches/openssl-1.0.2-CVE-2018-0732.patch b/gnu/packages/patches/openssl-1.0.2-CVE-2018-0732.patch new file mode 100644 index 0000000000..50b95306a5 --- /dev/null +++ b/gnu/packages/patches/openssl-1.0.2-CVE-2018-0732.patch @@ -0,0 +1,50 @@ +Fix CVE-2018-0732: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-0732 + +Patch copied from upstream source repository: + +https://github.com/openssl/openssl/commit/3984ef0b72831da8b3ece4745cac4f8575b19098 + +From 3984ef0b72831da8b3ece4745cac4f8575b19098 Mon Sep 17 00:00:00 2001 +From: Guido Vranken +Date: Mon, 11 Jun 2018 19:38:54 +0200 +Subject: [PATCH] Reject excessively large primes in DH key generation. + +CVE-2018-0732 + +Signed-off-by: Guido Vranken + +(cherry picked from commit 91f7361f47b082ae61ffe1a7b17bb2adf213c7fe) + +Reviewed-by: Tim Hudson +Reviewed-by: Matt Caswell +(Merged from https://github.com/openssl/openssl/pull/6457) +--- + crypto/dh/dh_key.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/crypto/dh/dh_key.c b/crypto/dh/dh_key.c +index 387558f146..f235e0d682 100644 +--- a/crypto/dh/dh_key.c ++++ b/crypto/dh/dh_key.c +@@ -130,10 +130,15 @@ static int generate_key(DH *dh) + int ok = 0; + int generate_new_key = 0; + unsigned l; +- BN_CTX *ctx; ++ BN_CTX *ctx = NULL; + BN_MONT_CTX *mont = NULL; + BIGNUM *pub_key = NULL, *priv_key = NULL; + ++ if (BN_num_bits(dh->p) > OPENSSL_DH_MAX_MODULUS_BITS) { ++ DHerr(DH_F_GENERATE_KEY, DH_R_MODULUS_TOO_LARGE); ++ return 0; ++ } ++ + ctx = BN_CTX_new(); + if (ctx == NULL) + goto err; +-- +2.17.1 + diff --git a/gnu/packages/patches/openssl-1.1.0-CVE-2018-0495.patch b/gnu/packages/patches/openssl-1.1.0-CVE-2018-0495.patch new file mode 100644 index 0000000000..15dedbcbd0 --- /dev/null +++ b/gnu/packages/patches/openssl-1.1.0-CVE-2018-0495.patch @@ -0,0 +1,152 @@ +Fix CVE-2018-0495: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-0495 +https://www.nccgroup.trust/us/our-research/technical-advisory-return-of-the-hidden-number-problem/ + +Patch copied from upstream source repository: + +https://github.com/openssl/openssl/commit/0c27d793745c7837b13646302b6890a556b7017a + +From 0c27d793745c7837b13646302b6890a556b7017a Mon Sep 17 00:00:00 2001 +From: Matt Caswell +Date: Fri, 25 May 2018 12:10:13 +0100 +Subject: [PATCH] Add blinding to an ECDSA signature + +Keegan Ryan (NCC Group) has demonstrated a side channel attack on an +ECDSA signature operation. During signing the signer calculates: + +s:= k^-1 * (m + r * priv_key) mod order + +The addition operation above provides a sufficient signal for a +flush+reload attack to derive the private key given sufficient signature +operations. + +As a mitigation (based on a suggestion from Keegan) we add blinding to +the operation so that: + +s := k^-1 * blind^-1 (blind * m + blind * r * priv_key) mod order + +Since this attack is a localhost side channel only no CVE is assigned. + +Reviewed-by: Rich Salz +--- + CHANGES | 4 +++ + crypto/ec/ecdsa_ossl.c | 70 +++++++++++++++++++++++++++++++++++++----- + 2 files changed, 67 insertions(+), 7 deletions(-) + +diff --git a/crypto/ec/ecdsa_ossl.c b/crypto/ec/ecdsa_ossl.c +index 72e2f0f28b..449be0e92a 100644 +--- a/crypto/ec/ecdsa_ossl.c ++++ b/crypto/ec/ecdsa_ossl.c +@@ -210,7 +210,8 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, + EC_KEY *eckey) + { + int ok = 0, i; +- BIGNUM *kinv = NULL, *s, *m = NULL, *tmp = NULL; ++ BIGNUM *kinv = NULL, *s, *m = NULL, *tmp = NULL, *blind = NULL; ++ BIGNUM *blindm = NULL; + const BIGNUM *order, *ckinv; + BN_CTX *ctx = NULL; + const EC_GROUP *group; +@@ -243,8 +244,18 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, + } + s = ret->s; + +- if ((ctx = BN_CTX_new()) == NULL || +- (tmp = BN_new()) == NULL || (m = BN_new()) == NULL) { ++ ctx = BN_CTX_secure_new(); ++ if (ctx == NULL) { ++ ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_MALLOC_FAILURE); ++ goto err; ++ } ++ ++ BN_CTX_start(ctx); ++ tmp = BN_CTX_get(ctx); ++ m = BN_CTX_get(ctx); ++ blind = BN_CTX_get(ctx); ++ blindm = BN_CTX_get(ctx); ++ if (blindm == NULL) { + ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_MALLOC_FAILURE); + goto err; + } +@@ -284,18 +295,64 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, + } + } + +- if (!BN_mod_mul(tmp, priv_key, ret->r, order, ctx)) { ++ /* ++ * The normal signature calculation is: ++ * ++ * s := k^-1 * (m + r * priv_key) mod order ++ * ++ * We will blind this to protect against side channel attacks ++ * ++ * s := k^-1 * blind^-1 * (blind * m + blind * r * priv_key) mod order ++ */ ++ ++ /* Generate a blinding value */ ++ do { ++ if (!BN_rand(blind, BN_num_bits(order) - 1, BN_RAND_TOP_ANY, ++ BN_RAND_BOTTOM_ANY)) ++ goto err; ++ } while (BN_is_zero(blind)); ++ BN_set_flags(blind, BN_FLG_CONSTTIME); ++ BN_set_flags(blindm, BN_FLG_CONSTTIME); ++ BN_set_flags(tmp, BN_FLG_CONSTTIME); ++ ++ /* tmp := blind * priv_key * r mod order */ ++ if (!BN_mod_mul(tmp, blind, priv_key, order, ctx)) { + ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); + goto err; + } +- if (!BN_mod_add_quick(s, tmp, m, order)) { ++ if (!BN_mod_mul(tmp, tmp, ret->r, order, ctx)) { + ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); + goto err; + } ++ ++ /* blindm := blind * m mod order */ ++ if (!BN_mod_mul(blindm, blind, m, order, ctx)) { ++ ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); ++ goto err; ++ } ++ ++ /* s : = (blind * priv_key * r) + (blind * m) mod order */ ++ if (!BN_mod_add_quick(s, tmp, blindm, order)) { ++ ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); ++ goto err; ++ } ++ ++ /* s:= s * blind^-1 mod order */ ++ if (BN_mod_inverse(blind, blind, order, ctx) == NULL) { ++ ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); ++ goto err; ++ } ++ if (!BN_mod_mul(s, s, blind, order, ctx)) { ++ ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); ++ goto err; ++ } ++ ++ /* s := s * k^-1 mod order */ + if (!BN_mod_mul(s, s, ckinv, order, ctx)) { + ECerr(EC_F_OSSL_ECDSA_SIGN_SIG, ERR_R_BN_LIB); + goto err; + } ++ + if (BN_is_zero(s)) { + /* + * if kinv and r have been supplied by the caller don't to +@@ -317,9 +374,8 @@ ECDSA_SIG *ossl_ecdsa_sign_sig(const unsigned char *dgst, int dgst_len, + ECDSA_SIG_free(ret); + ret = NULL; + } ++ BN_CTX_end(ctx); + BN_CTX_free(ctx); +- BN_clear_free(m); +- BN_clear_free(tmp); + BN_clear_free(kinv); + return ret; + } +-- +2.17.1 + diff --git a/gnu/packages/patches/openssl-1.1.0-CVE-2018-0732.patch b/gnu/packages/patches/openssl-1.1.0-CVE-2018-0732.patch new file mode 100644 index 0000000000..dfea6e7d06 --- /dev/null +++ b/gnu/packages/patches/openssl-1.1.0-CVE-2018-0732.patch @@ -0,0 +1,50 @@ +Fix CVE-2018-0732: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-0732 + +Patch copied from upstream source repository: + +https://github.com/openssl/openssl/commit/ea7abeeabf92b7aca160bdd0208636d4da69f4f4 + +From ea7abeeabf92b7aca160bdd0208636d4da69f4f4 Mon Sep 17 00:00:00 2001 +From: Guido Vranken +Date: Mon, 11 Jun 2018 19:38:54 +0200 +Subject: [PATCH] Reject excessively large primes in DH key generation. + +CVE-2018-0732 + +Signed-off-by: Guido Vranken + +(cherry picked from commit 91f7361f47b082ae61ffe1a7b17bb2adf213c7fe) + +Reviewed-by: Tim Hudson +Reviewed-by: Matt Caswell +(Merged from https://github.com/openssl/openssl/pull/6457) +--- + crypto/dh/dh_key.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/crypto/dh/dh_key.c b/crypto/dh/dh_key.c +index fce9ff47f3..58003d7087 100644 +--- a/crypto/dh/dh_key.c ++++ b/crypto/dh/dh_key.c +@@ -78,10 +78,15 @@ static int generate_key(DH *dh) + int ok = 0; + int generate_new_key = 0; + unsigned l; +- BN_CTX *ctx; ++ BN_CTX *ctx = NULL; + BN_MONT_CTX *mont = NULL; + BIGNUM *pub_key = NULL, *priv_key = NULL; + ++ if (BN_num_bits(dh->p) > OPENSSL_DH_MAX_MODULUS_BITS) { ++ DHerr(DH_F_GENERATE_KEY, DH_R_MODULUS_TOO_LARGE); ++ return 0; ++ } ++ + ctx = BN_CTX_new(); + if (ctx == NULL) + goto err; +-- +2.17.1 + diff --git a/gnu/packages/patches/password-store-gnupg-compat.patch b/gnu/packages/patches/password-store-gnupg-compat.patch deleted file mode 100644 index 75c6362021..0000000000 --- a/gnu/packages/patches/password-store-gnupg-compat.patch +++ /dev/null @@ -1,28 +0,0 @@ -Copied from upstream mailing list: -https://lists.zx2c4.com/pipermail/password-store/2018-February/003216.html. - -From 9b0c86159d754cc88dd3642564eed527153dfb7f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Cl=C3=A9ment=20Lassieur?= -Date: Sat, 24 Feb 2018 12:05:46 +0100 -Subject: [PATCH] tests: fix compatibility with GnuPG 2.2.5 - ---- - tests/t0300-reencryption.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/t0300-reencryption.sh b/tests/t0300-reencryption.sh -index 6d5811d..6d15364 100755 ---- a/tests/t0300-reencryption.sh -+++ b/tests/t0300-reencryption.sh -@@ -10,7 +10,7 @@ canonicalize_gpg_keys() { - $GPG --list-keys --with-colons "$@" | sed -n 's/sub:[^:]*:[^:]*:[^:]*:\([^:]*\):[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[a-zA-Z]*e[a-zA-Z]*:.*/\1/p' | LC_ALL=C sort -u - } - gpg_keys_from_encrypted_file() { -- $GPG -v --no-secmem-warning --no-permission-warning --decrypt --list-only --keyid-format long "$1" 2>&1 | cut -d ' ' -f 5 | LC_ALL=C sort -u -+ $GPG -v --no-secmem-warning --no-permission-warning --decrypt --list-only --keyid-format long "$1" 2>&1 | grep "public key is" | cut -d ' ' -f 5 | LC_ALL=C sort -u - } - gpg_keys_from_group() { - local output="$($GPG --list-config --with-colons | sed -n "s/^cfg:group:$1:\\(.*\\)/\\1/p" | head -n 1)" --- -2.16.2 - diff --git a/gnu/packages/patches/perl-archive-tar-CVE-2018-12015.patch b/gnu/packages/patches/perl-archive-tar-CVE-2018-12015.patch new file mode 100644 index 0000000000..6460cf5855 --- /dev/null +++ b/gnu/packages/patches/perl-archive-tar-CVE-2018-12015.patch @@ -0,0 +1,36 @@ +Fix CVE-2018-12015: + +https://security-tracker.debian.org/tracker/CVE-2018-12015 +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-12015 +https://rt.cpan.org/Ticket/Display.html?id=125523 + +Patch taken from this upstream commit and adapted to apply to +the bundled copy in the Perl distribution: + +https://github.com/jib/archive-tar-new/commit/ae65651eab053fc6dc4590dbb863a268215c1fc5 + +diff --git a/cpan/Archive-Tar/lib/Archive/Tar.pm b/cpan/Archive-Tar/lib/Archive/Tar.pm +index 6244369..a83975f 100644 +--- a/cpan/Archive-Tar/lib/Archive/Tar.pm ++++ b/cpan/Archive-Tar/lib/Archive/Tar.pm +@@ -845,6 +845,20 @@ sub _extract_file { + return; + } + ++ ### If a file system already contains a block device with the same name as ++ ### the being extracted regular file, we would write the file's content ++ ### to the block device. So remove the existing file (block device) now. ++ ### If an archive contains multiple same-named entries, the last one ++ ### should replace the previous ones. So remove the old file now. ++ ### If the old entry is a symlink to a file outside of the CWD, the new ++ ### entry would create a file there. This is CVE-2018-12015 ++ ### . ++ if (-l $full || -e _) { ++ if (!unlink $full) { ++ $self->_error( qq[Could not remove old file '$full': $!] ); ++ return; ++ } ++ } + if( length $entry->type && $entry->is_file ) { + my $fh = IO::File->new; + $fh->open( $full, '>' ) or ( diff --git a/gnu/packages/patches/python-nose-timer-drop-ordereddict.patch b/gnu/packages/patches/python-nose-timer-drop-ordereddict.patch deleted file mode 100644 index e1e71a332a..0000000000 --- a/gnu/packages/patches/python-nose-timer-drop-ordereddict.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 700076019b5aff72aac7651cc830aaef21ee9a47 Mon Sep 17 00:00:00 2001 -From: jakirkham -Date: Fri, 7 Jul 2017 05:57:56 -0400 -Subject: [PATCH] Drop ordereddict requirement (#84) - -* Drop ordereddict requirement - -As Python 2.7 is the minimum Python supported, every version of Python -should have `ordereddict` preincluded in the standard library one way or -another. So we can drop this dependency and just handle the differences -between Python 2 and Python 3. ---- - nosetimer/plugin.py | 5 +---- - setup.py | 1 - - 2 files changed, 1 insertion(+), 5 deletions(-) - -diff --git a/nosetimer/plugin.py b/nosetimer/plugin.py -index ef28e11..d093a51 100644 ---- a/nosetimer/plugin.py -+++ b/nosetimer/plugin.py -@@ -12,10 +12,7 @@ - except ImportError: - import queue as Queue - --try: -- from collections import OrderedDict --except ImportError: -- from ordereddict import OrderedDict -+from collections import OrderedDict - - - # define constants -diff --git a/setup.py b/setup.py -index 6a55b82..d249325 100755 ---- a/setup.py -+++ b/setup.py -@@ -27,7 +27,6 @@ - install_requires=[ - 'nose', - 'termcolor', -- 'ordereddict', - ], - license='MIT', - entry_points={ diff --git a/gnu/packages/patches/qemu-CVE-2018-11806.patch b/gnu/packages/patches/qemu-CVE-2018-11806.patch new file mode 100644 index 0000000000..f021dfa747 --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2018-11806.patch @@ -0,0 +1,105 @@ +Fix CVE-2018-11806: + +https://lists.gnu.org/archive/html/qemu-devel/2018-06/msg01012.html +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-11806 + +Patch copied from upstream source repository: + +https://git.qemu.org/?p=qemu.git;a=commitdiff;h=864036e251f54c99d31df124aad7f34f01f5344c + +From 864036e251f54c99d31df124aad7f34f01f5344c Mon Sep 17 00:00:00 2001 +From: Prasad J Pandit +Date: Tue, 5 Jun 2018 23:38:35 +0530 +Subject: [PATCH] slirp: correct size computation while concatenating mbuf + +While reassembling incoming fragmented datagrams, 'm_cat' routine +extends the 'mbuf' buffer, if it has insufficient room. It computes +a wrong buffer size, which leads to overwriting adjacent heap buffer +area. Correct this size computation in m_cat. + +Reported-by: ZDI Disclosures +Signed-off-by: Prasad J Pandit +Signed-off-by: Samuel Thibault +--- + slirp/mbuf.c | 11 +++++------ + slirp/mbuf.h | 8 +++----- + 2 files changed, 8 insertions(+), 11 deletions(-) + +diff --git a/slirp/mbuf.c b/slirp/mbuf.c +index 5ff24559fd..18cbf759a7 100644 +--- a/slirp/mbuf.c ++++ b/slirp/mbuf.c +@@ -138,7 +138,7 @@ m_cat(struct mbuf *m, struct mbuf *n) + * If there's no room, realloc + */ + if (M_FREEROOM(m) < n->m_len) +- m_inc(m,m->m_size+MINCSIZE); ++ m_inc(m, m->m_len + n->m_len); + + memcpy(m->m_data+m->m_len, n->m_data, n->m_len); + m->m_len += n->m_len; +@@ -147,7 +147,7 @@ m_cat(struct mbuf *m, struct mbuf *n) + } + + +-/* make m size bytes large */ ++/* make m 'size' bytes large from m_data */ + void + m_inc(struct mbuf *m, int size) + { +@@ -158,12 +158,12 @@ m_inc(struct mbuf *m, int size) + + if (m->m_flags & M_EXT) { + datasize = m->m_data - m->m_ext; +- m->m_ext = g_realloc(m->m_ext, size); ++ m->m_ext = g_realloc(m->m_ext, size + datasize); + m->m_data = m->m_ext + datasize; + } else { + char *dat; + datasize = m->m_data - m->m_dat; +- dat = g_malloc(size); ++ dat = g_malloc(size + datasize); + memcpy(dat, m->m_dat, m->m_size); + + m->m_ext = dat; +@@ -171,8 +171,7 @@ m_inc(struct mbuf *m, int size) + m->m_flags |= M_EXT; + } + +- m->m_size = size; +- ++ m->m_size = size + datasize; + } + + +diff --git a/slirp/mbuf.h b/slirp/mbuf.h +index 893601ff9d..33b84485d6 100644 +--- a/slirp/mbuf.h ++++ b/slirp/mbuf.h +@@ -33,8 +33,6 @@ + #ifndef MBUF_H + #define MBUF_H + +-#define MINCSIZE 4096 /* Amount to increase mbuf if too small */ +- + /* + * Macros for type conversion + * mtod(m,t) - convert mbuf pointer to data pointer of correct type +@@ -72,11 +70,11 @@ struct mbuf { + struct mbuf *m_prevpkt; /* Flags aren't used in the output queue */ + int m_flags; /* Misc flags */ + +- int m_size; /* Size of data */ ++ int m_size; /* Size of mbuf, from m_dat or m_ext */ + struct socket *m_so; + +- caddr_t m_data; /* Location of data */ +- int m_len; /* Amount of data in this mbuf */ ++ caddr_t m_data; /* Current location of data */ ++ int m_len; /* Amount of data in this mbuf, from m_data */ + + Slirp *slirp; + bool resolution_requested; +-- +2.17.1 + diff --git a/gnu/packages/patches/strace-kernel-4.16.patch b/gnu/packages/patches/strace-kernel-4.16.patch deleted file mode 100644 index e86d3be439..0000000000 --- a/gnu/packages/patches/strace-kernel-4.16.patch +++ /dev/null @@ -1,92 +0,0 @@ -Fix test failure when using Linux-Libre >= 4.16. - -Taken from upstream: -https://github.com/strace/strace/commit/bcff87c31c0f27c678a43d6b7f67dab363a974fa - -From bcff87c31c0f27c678a43d6b7f67dab363a974fa Mon Sep 17 00:00:00 2001 -From: Masatake YAMATO -Date: Wed, 2 May 2018 17:11:07 +0900 -Subject: [PATCH] tests/ioctl_kvm_run.c: handle cpuid at the end of vcpu dentry - -Since Linux 4.16, kernel appends the cpuid as suffix to the entry -for a kvm vcpu in /proc/$pid/fd like: - - anon_inode:kvm-vcpu:0 - -That was - - anon_inode:kvm-vcpu - -This kernel change causes the test case failure on newer kernels. -Update the test to deal with the new name as well as the old one. - -* tests/ioctl_kvm_run.c: Include unistd.h for using readlink(2). -(vcpu_dev_should_have_cpuid): New function for detecting whether -a proc entry for given fd has the cpuid suffix or not. -(main): Trim vcpu_dev to remove the cpuid suffix if needed. -(vcpu_dev): Remove const modifier. ---- - tests/ioctl_kvm_run.c | 29 ++++++++++++++++++++++++++++- - 1 file changed, 28 insertions(+), 1 deletion(-) - -diff --git a/tests/ioctl_kvm_run.c b/tests/ioctl_kvm_run.c -index 179461430..e1bef5796 100644 ---- a/tests/ioctl_kvm_run.c -+++ b/tests/ioctl_kvm_run.c -@@ -40,6 +40,7 @@ - # include - # include - # include -+# include - # include - - static int -@@ -56,7 +57,7 @@ kvm_ioctl(int fd, unsigned long cmd, const char *cmd_str, void *arg) - - static const char dev[] = "/dev/kvm"; - static const char vm_dev[] = "anon_inode:kvm-vm"; --static const char vcpu_dev[] = "anon_inode:kvm-vcpu"; -+static char vcpu_dev[] = "anon_inode:kvm-vcpu:0"; - static size_t page_size; - - extern const char code[]; -@@ -165,6 +166,23 @@ run_kvm(const int vcpu_fd, struct kvm_run *const run, const size_t mmap_size, - } - } - -+static int -+vcpu_dev_should_have_cpuid(int fd) -+{ -+ int r = 0; -+ char *filename = NULL; -+ char buf[sizeof(vcpu_dev)]; -+ -+ if (asprintf(&filename, "/proc/%d/fd/%d", getpid(), fd) < 0) -+ error_msg_and_fail("asprintf"); -+ -+ if (readlink(filename, buf, sizeof(buf)) == sizeof(buf) - 1 -+ && (memcmp(buf, vcpu_dev, sizeof(buf) - 1) == 0)) -+ r = 1; -+ free(filename); -+ return r; -+} -+ - int - main(void) - { -@@ -208,6 +226,15 @@ main(void) - (unsigned long) page_size, (unsigned long) page_size, mem); - - int vcpu_fd = KVM_IOCTL(vm_fd, KVM_CREATE_VCPU, NULL); -+ if (!vcpu_dev_should_have_cpuid(vcpu_fd)) -+ /* -+ * This is an older kernel that doesn't place a cpuid -+ * at the end of the dentry associated with vcpu_fd. -+ * Trim the cpuid part of vcpu_dev like: -+ * "anon_inode:kvm-vcpu:0" -> "anon_inode:kvm-vcpu" -+ */ -+ vcpu_dev[strlen (vcpu_dev) - 2] = '\0'; -+ - printf("ioctl(%d<%s>, KVM_CREATE_VCPU, 0) = %d<%s>\n", - vm_fd, vm_dev, vcpu_fd, vcpu_dev); - diff --git a/gnu/packages/patches/upx-fix-CVE-2017-15056.patch b/gnu/packages/patches/upx-fix-CVE-2017-15056.patch new file mode 100644 index 0000000000..525980e73e --- /dev/null +++ b/gnu/packages/patches/upx-fix-CVE-2017-15056.patch @@ -0,0 +1,96 @@ +From 3e0c2966dffb5dadb512a476ef4be3d0cc51c2be Mon Sep 17 00:00:00 2001 +From: Pierre Neidhardt +Date: Sat, 16 Jun 2018 16:35:00 +0200 +Subject: [PATCH] Protect against bad crafted input + +Also check for wrap-around when checking oversize involving e_shoff and e_shnum. + +raised by https://github.com/upx/upx/pull/190 + modified: p_lx_elf.cpp +--- + src/p_lx_elf.cpp | 30 ++++++++++++++++++++++++++++++ + 1 file changed, 30 insertions(+) + +diff --git a/src/p_lx_elf.cpp b/src/p_lx_elf.cpp +index 822a7652..41e805ee 100644 +--- a/src/p_lx_elf.cpp ++++ b/src/p_lx_elf.cpp +@@ -235,8 +235,17 @@ PackLinuxElf32::PackLinuxElf32help1(InputFile *f) + sz_phdrs = 0; + return; + } ++ if (0==e_phnum) throwCantUnpack("0==e_phnum"); + e_phoff = get_te32(&ehdri.e_phoff); ++ unsigned const last_Phdr = e_phoff + e_phnum * sizeof(Elf32_Phdr); ++ if (last_Phdr < e_phoff || (unsigned long)file_size < last_Phdr) { ++ throwCantUnpack("bad e_phoff"); ++ } + e_shoff = get_te32(&ehdri.e_shoff); ++ unsigned const last_Shdr = e_shoff + e_shnum * sizeof(Elf32_Shdr); ++ if (last_Shdr < e_shoff || (unsigned long)file_size < last_Shdr) { ++ throwCantUnpack("bad e_shoff"); ++ } + sz_phdrs = e_phnum * e_phentsize; + + if (f && Elf32_Ehdr::ET_DYN!=e_type) { +@@ -599,8 +608,17 @@ PackLinuxElf64::PackLinuxElf64help1(InputFile *f) + sz_phdrs = 0; + return; + } ++ if (0==e_phnum) throwCantUnpack("0==e_phnum"); + e_phoff = get_te64(&ehdri.e_phoff); ++ upx_uint64_t const last_Phdr = e_phoff + e_phnum * sizeof(Elf64_Phdr); ++ if (last_Phdr < e_phoff || (unsigned long)file_size < last_Phdr) { ++ throwCantUnpack("bad e_phoff"); ++ } + e_shoff = get_te64(&ehdri.e_shoff); ++ upx_uint64_t const last_Shdr = e_shoff + e_shnum * sizeof(Elf64_Shdr); ++ if (last_Shdr < e_shoff || (unsigned long)file_size < last_Shdr) { ++ throwCantUnpack("bad e_shoff"); ++ } + sz_phdrs = e_phnum * e_phentsize; + + if (f && Elf64_Ehdr::ET_DYN!=e_type) { +@@ -3763,6 +3781,9 @@ void PackLinuxElf64::pack4(OutputFile *fo, Filter &ft) + + void PackLinuxElf64::unpack(OutputFile *fo) + { ++ if (e_phoff != sizeof(Elf64_Ehdr)) {// Phdrs not contiguous with Ehdr ++ throwCantUnpack("bad e_phoff"); ++ } + unsigned const c_phnum = get_te16(&ehdri.e_phnum); + upx_uint64_t old_data_off = 0; + upx_uint64_t old_data_len = 0; +@@ -3828,6 +3849,9 @@ void PackLinuxElf64::unpack(OutputFile *fo) + unsigned total_out = 0; + unsigned c_adler = upx_adler32(NULL, 0); + unsigned u_adler = upx_adler32(NULL, 0); ++ if ((MAX_ELF_HDR - sizeof(Elf64_Ehdr))/sizeof(Elf64_Phdr) < u_phnum) { ++ throwCantUnpack("bad compressed e_phnum"); ++ } + + // Packed ET_EXE has no PT_DYNAMIC. + // Packed ET_DYN has original PT_DYNAMIC for info needed by rtld. +@@ -4383,6 +4407,9 @@ Elf64_Sym const *PackLinuxElf64::elf_lookup(char const *name) const + + void PackLinuxElf32::unpack(OutputFile *fo) + { ++ if (e_phoff != sizeof(Elf32_Ehdr)) {// Phdrs not contiguous with Ehdr ++ throwCantUnpack("bad e_phoff"); ++ } + unsigned const c_phnum = get_te16(&ehdri.e_phnum); + unsigned old_data_off = 0; + unsigned old_data_len = 0; +@@ -4449,6 +4476,9 @@ void PackLinuxElf32::unpack(OutputFile *fo) + unsigned total_out = 0; + unsigned c_adler = upx_adler32(NULL, 0); + unsigned u_adler = upx_adler32(NULL, 0); ++ if ((MAX_ELF_HDR - sizeof(Elf32_Ehdr))/sizeof(Elf32_Phdr) < u_phnum) { ++ throwCantUnpack("bad compressed e_phnum"); ++ } + + // Packed ET_EXE has no PT_DYNAMIC. + // Packed ET_DYN has original PT_DYNAMIC for info needed by rtld. +-- +2.17.0 + diff --git a/gnu/packages/patches/x265-fix-ppc64le-build.patch b/gnu/packages/patches/x265-fix-ppc64le-build.patch new file mode 100644 index 0000000000..f71d2436ab --- /dev/null +++ b/gnu/packages/patches/x265-fix-ppc64le-build.patch @@ -0,0 +1,25 @@ +https://sources.debian.org/data/main/x/x265/2.8-3/debian/patches/0003-Fix-build-error-on-on-ppc64le.patch + +This patch also fixes building on armhf-linux and aarch64-linux + +From: Jayashree +Date: Fri, 25 May 2018 10:26:05 +0530 +Subject: Fix build error on on ppc64le + +--- + source/common/param.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/source/common/param.cpp b/source/common/param.cpp +index 31bcbc7..4a6d0c8 100644 +--- a/source/common/param.cpp ++++ b/source/common/param.cpp +@@ -633,7 +633,7 @@ int x265_param_parse(x265_param* p, const char* name, const char* value) + if (bValueWasNull) + p->cpuid = atobool(value); + else +- p->cpuid = parseCpuName(value, bError); ++ p->cpuid = parseCpuName(value, bError, false); + #endif + } + OPT("fps") diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index a215fce034..1bd8e17167 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -276,7 +276,7 @@ Poppler PDF rendering library.") #:phases (modify-phases %standard-phases (add-after 'unpack 'autogen - (lambda _ (zero? (system* "autoreconf" "-vif"))))))) + (lambda _ (invoke "autoreconf" "-vif")))))) (inputs `(("zlib" ,zlib) ("libpng" ,libpng))) @@ -906,7 +906,7 @@ converter using the Poppler and Cairo libraries.") #t)) (replace 'check (lambda _ - (zero? (system* "python" "-m" "unittest" "Tests.tests"))))))) + (invoke "python" "-m" "unittest" "Tests.tests")))))) (home-page "http://mstamy2.github.com/PyPDF2") (synopsis "Pure Python PDF toolkit") (description "PyPDF2 is a pure Python PDF library capable of: diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm index a1be996e04..89a761f0a7 100644 --- a/gnu/packages/perl-check.scm +++ b/gnu/packages/perl-check.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Oleg Pykhalov ;;; Copyright © 2018 Pierre Neidhardt +;;; Copyright © 2018 Kei Kebreau ;;; ;;; This file is part of GNU Guix. ;;; @@ -364,6 +365,30 @@ modified or tested with this API, making it simple to test both individual files, as well as to verify that there are no missing or unknown files.") (license perl-license))) +(define-public perl-test-distmanifest + (package + (name "perl-test-distmanifest") + (version "1.014") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/E/ET/ETHER/Test-DistManifest-" + version ".tar.gz")) + (sha256 + (base32 "1ifpff5simjslabwy7ac6kdylv4c0b5b39fgpwf9ha16yh6w49ix")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build))) + (propagated-inputs + `(("perl-module-manifest" ,perl-module-manifest))) + (home-page "https://github.com/jawnsy/Test-DistManifest") + (synopsis "Author test that validates a package @file{MANIFEST}") + (description + "@code{Test::DistManifest} provides a simple method of testing that a +@file{MANIFEST} file matches its distribution.") + (license perl-license))) + (define-public perl-test-eol (package (name "perl-test-eol") @@ -1140,6 +1165,32 @@ a minimum of effort.") ;; "Under the same license as Perl itself" (license perl-license))) +(define-public perl-test-perltidy + (package + (name "perl-test-perltidy") + (version "20130104") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/L/LA/LARRYL/Test-PerlTidy-" + version ".tar.gz")) + (sha256 + (base32 + "1j5rsb4km9rzcbd1ljavj8vm42bmilji40v2jj2k87l1ykrxj59z")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-file-finder" ,perl-file-finder) + ("perl-file-slurp" ,perl-file-slurp) + ("perltidy" ,perltidy) + ("perl-text-diff" ,perl-text-diff))) + (home-page "http://search.cpan.org/dist/Test-PerlTidy/") + (synopsis "Check that all your Perl files are tidy") + (description + "Using @code{Test::PerlTidy}, any file ending in .pl, .pm, .t or .PL will +cause a test fail unless it is exactly as @code{perltidy} would like it to be.") + (license perl-license))) + (define-public perl-test-trap (package (name "perl-test-trap") diff --git a/gnu/packages/perl-web.scm b/gnu/packages/perl-web.scm index 7a398675b2..3c462aed03 100644 --- a/gnu/packages/perl-web.scm +++ b/gnu/packages/perl-web.scm @@ -51,7 +51,7 @@ endeavor to implement this idea using modern technologies.") (define-public perl-uri-escape (package (name "perl-uri-escape") - (version "1.73") + (version "1.74") (source (origin (method url-fetch) @@ -59,7 +59,7 @@ endeavor to implement this idea using modern technologies.") version ".tar.gz")) (sha256 (base32 - "04z4xwiryrbxxi48bwbkgq9q9pwfgqry3wp0ramcrwv3dx5ap9yc")))) + "0gfmrpyy075pn2mbshs5599h8m096gjdz2dn8vcivjw9bzs59hm9")))) (build-system perl-build-system) (native-inputs `(("perl-test-needs" ,perl-test-needs))) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index cfc73c5b3c..27b49e6652 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -20,6 +20,7 @@ ;;; Copyright © 2017 Christopher Allan Webber ;;; Copyright © 2018 Oleg Pykhalov ;;; Copyright © 2018 Pierre Neidhardt +;;; Copyright © 2018 Kei Kebreau ;;; ;;; This file is part of GNU Guix. ;;; @@ -71,6 +72,7 @@ (patches (search-patches "perl-file-path-CVE-2017-6512.patch" "perl-no-sys-dirs.patch" + "perl-archive-tar-CVE-2018-12015.patch" "perl-autosplit-default-time.patch" "perl-deterministic-ordering.patch" "perl-reproducible-build-date.patch")))) @@ -1487,6 +1489,27 @@ provides a means of converting those data streams back into into binary data.") (license perl-license))) +(define-public perl-cpan-changes + (package + (name "perl-cpan-changes") + (version "0.400002") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/H/HA/HAARG/CPAN-Changes-" + version ".tar.gz")) + (sha256 + (base32 + "13dy78amkhwg278sv5im0ylyskhxpfivyl2aissqqih71nlxxvh1")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/CPAN-Changes/") + (synopsis "Read and write @file{Changes} files") + (description + "@code{CPAN::Changes} helps users programmatically read and write +@file{Changes} files that conform to a common specification.") + (license perl-license))) + (define-public perl-cpan-meta-check (package (name "perl-cpan-meta-check") @@ -5178,6 +5201,36 @@ strictly correct manner with ExtUtils::MakeMaker, and will run on any Perl installation version 5.005 or newer.") (license (package-license perl)))) +(define-public perl-module-manifest + (package + (name "perl-module-manifest") + (version "1.09") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/E/ET/ETHER/Module-Manifest-" + version ".tar.gz")) + (sha256 + (base32 + "16skpm804a19gsgxzn1wba3lmvc7cx5q8ly4srpyd82yy47zi5d3")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-exception" ,perl-test-exception) + ("perl-test-warn" ,perl-test-warn))) + (propagated-inputs + `(("perl-params-util" ,perl-params-util))) + (home-page "http://search.cpan.org/dist/Module-Manifest/") + (synopsis "Parse and examine a Perl distribution @file{MANIFEST} file") + (description + "@code{Module::Manifest} is a simple utility module created originally for +use in @code{Module::Inspector}. + +It can load a @file{MANIFEST} file that comes in a Perl distribution tarball, +examine the contents, and perform some simple tasks. It can also load the +@file{MANIFEST.SKIP} file and check that.") + (license perl-license))) + (define-public perl-module-pluggable (package (name "perl-module-pluggable") @@ -8426,14 +8479,14 @@ as exceptions to standard program flow.") (define-public perltidy (package (name "perltidy") - (version "20160302") + (version "20180220") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/perltidy/" version "/Perl-Tidy-" version ".tar.gz")) (sha256 (base32 - "19yw63yh5s3pq7k3nkw6nsamg5b8vvwyhgbizslgxg0mqgc4xl3d")))) + "0w1k5ffcrpx0fm9jgprrwy0290k6cmy7dyk83s61063migi3r5z9")))) (build-system perl-build-system) (home-page "http://perltidy.sourceforge.net/") (synopsis "Perl script tidier") @@ -9441,6 +9494,38 @@ File::Find replacement in Perl.") interface to File::Find::Object.") (license (package-license perl)))) +(define-public perl-file-finder + (package + (name "perl-file-finder") + (version "0.53") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/M/ME/MERLYN/File-Finder-" + version ".tar.gz")) + (sha256 + (base32 + "0x3a2xgzrka73lcmmwalq2mmpzxa7s6pm01ahxf677ksqsdc3jrf")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-text-glob" ,perl-text-glob))) + (home-page "http://search.cpan.org/dist/File-Finder/") + (synopsis "Wrapper for @code{File::Find} ala @code{find(1)}") + (description + "@code{File::Find} is great, but constructing the wanted routine can +sometimes be a pain. @code{File::Finder} provides a wanted-writer, using +syntax that is directly mappable to the @code{find(1)} command's syntax. + +A @code{File::Finder} object contains a hash of @code{File::Find} options, and +a series of steps that mimic find's predicates. Initially, a +@code{File::Finder} object has no steps. Each step method clones the previous +object's options and steps, and then adds the new step, returning the new +object. In this manner, an object can be grown, step by step, by chaining +method calls. Furthermore, a partial sequence can be created and held, and +used as the head of many different sequences.") + (license perl-license))) + (define-public perl-font-ttf (package (name "perl-font-ttf") diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index f2d3d60ecd..b5b56b56de 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -69,14 +69,14 @@ (define-public libraw (package (name "libraw") - (version "0.18.11") + (version "0.18.12") (source (origin (method url-fetch) (uri (string-append "https://www.libraw.org/data/LibRaw-" version ".tar.gz")) (sha256 (base32 - "07a7k83hx7icahh6jaxfbd7pw5jjm5i11xcqjj31b28d1aj29xvw")))) + "1m2khr2cij8z6lawgbmdksjn14fpnjsy8ad4qahnpqapm1slsxap")))) (build-system gnu-build-system) (home-page "https://www.libraw.org") (synopsis "Raw image decoder") @@ -184,7 +184,7 @@ MTP, and much more.") (define-public perl-image-exiftool (package (name "perl-image-exiftool") - (version "10.80") + (version "11.01") (source (origin (method url-fetch) (uri (string-append @@ -192,7 +192,7 @@ MTP, and much more.") version ".tar.gz")) (sha256 (base32 - "14rwr5wk2snqv4yva6fax1gfsdv88941n237m0wyzn3n0xh9dy5w")))) + "175w34n73mypdpbaqj2vgqsfp59yvfrn8k7zmx4cawnp895bypvh")))) (build-system perl-build-system) (arguments '(#:phases diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index b7cd51e868..50e7d25c8b 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2017 Carlo Zancanaro ;;; Copyright © 2018 Tomáš Čech ;;; Copyright © 2018 Nicolas Goaziou +;;; Copyright © 2018 Vagrant Cascadian ;;; ;;; This file is part of GNU Guix. ;;; @@ -173,6 +174,32 @@ John the Ripper).") (define-public python2-py-bcrypt (package-with-python2 python-py-bcrypt)) +(define-public python-pyblake2 + (package + (name "python-pyblake2") + (version "1.1.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pyblake2" version)) + (sha256 + (base32 + "0gz9hgznv5zw4qjq43xa56y0yikimx30gffvibxzm0nv5sq7xk2w")))) + (build-system python-build-system) + (home-page "https://github.com/dchest/pyblake2") + (synopsis "BLAKE2 hash function for Python") + (description "BLAKE2 is a cryptographic hash function, which offers +stronger security while being as fast as MD5 or SHA-1, and comes in two +flavors: @code{BLAKE2b}, optimized for 64-bit platforms and produces digests +of any size between 1 and 64 bytes, and @code{BLAKE2s}, optimized for 8- to +32-bit platforms and produces digests of any size between 1 and 32 bytes. + +This package provides a Python interface for BLAKE2.") + ;; The COPYING file declares it as public domain, with the option to + ;; alternatively use and redistribute it under a variety of permissive + ;; licenses. cc0 is explicitly mentioned in setup.py and pyblake2module.c. + (license (list license:public-domain license:cc0)))) + (define-public python-paramiko (package (name "python-paramiko") @@ -403,14 +430,14 @@ message digests and key derivation functions.") (define-public python-pyopenssl (package (name "python-pyopenssl") - (version "17.5.0") + (version "18.0.0") (source (origin (method url-fetch) (uri (pypi-uri "pyOpenSSL" version)) (sha256 (base32 - "0wv78mwsdqbxqwdwllf4maqybhbj3vb8328ia04hnb558sxcy41c")))) + "1055rb456nvrjcij3sqj6c6l3kmh5cqqay0nsmx3pxq07d1g3234")))) (build-system python-build-system) (arguments '(#:phases @@ -607,18 +634,18 @@ PKCS#8, PKCS#12, PKCS#5, X.509 and TSP.") (define-public python-pynacl (package (name "python-pynacl") - (version "1.2.0") + (version "1.2.1") (source (origin (method url-fetch) (uri (pypi-uri "PyNaCl" version)) (modules '((guix build utils))) - ;; Remove bundled libsodium + ;; Remove bundled libsodium. (snippet '(begin (delete-file-recursively "src/libsodium") #t)) (sha256 (base32 - "01vjq0pxyw1mxaqy013hzs8nknmvg3kpzlzmh69jxznyipgvria5")))) + "1ada3qr83cliap6dk897vnvjkynij1kjqbwizdbgarazlyh8zlz0")))) (build-system python-build-system) (arguments `(#:phases diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 9523ff3734..2e98a95d4b 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -783,14 +783,14 @@ that have uses outside of the Zope framework.") (define-public python-zope-testing (package (name "python-zope-testing") - (version "4.6.1") + (version "4.6.2") (source (origin (method url-fetch) (uri (pypi-uri "zope.testing" version)) (sha256 (base32 - "1vvxhjmzl7vw2i1akfj1xbggwn36270ym7f2ic9xwbaswfw1ap56")) + "0iiq54hjhkk2gpvzfjac70vyn4r0kw0ngvicshxbdwrkgf2gjq3g")) (modules '((guix build utils))) (snippet '(begin @@ -798,10 +798,6 @@ that have uses outside of the Zope framework.") (for-each delete-file (find-files "." "(\\.pyc|~)$")) #t)))) (build-system python-build-system) - (native-inputs - `(("python-zope-exceptions" ,python-zope-exceptions))) - (propagated-inputs - `(("python-zope-interface" ,python-zope-interface))) (home-page "https://pypi.python.org/pypi/zope.testing") (synopsis "Zope testing helpers") (description "Zope.testing provides a number of testing utilities for HTML @@ -1417,14 +1413,14 @@ file.") (define-public python-webtest (package (name "python-webtest") - (version "2.0.29") + (version "2.0.30") (source (origin (method url-fetch) (uri (pypi-uri "WebTest" version)) (sha256 (base32 - "0bcj1ica5lnmj5zbvk46x28kgphcsgh7sfnwjmn0cr94mhawrg6v")))) + "1mb7m4ndklv84mh0pdkhv73yrflcnra61yczj5g3bvwbqlygfsaw")))) (build-system python-build-system) (arguments `(;; Unfortunately we have to disable tests! diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 753354426e..8b4b39d1af 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -52,6 +52,8 @@ ;;; Copyright © 2018 Adam Massmann ;;; Copyright © 2016, 2018 Tomáš Čech ;;; Copyright © 2018 Nicolas Goaziou +;;; Copyright © 2018 Oleg Pykhalov +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -340,6 +342,15 @@ data types.") ;; Current 2.x version. (define-public python-2 python-2.7) +(define-public python2-called-python + ;; Both 2.x and 3.x used to be called "python". In commit + ;; a7714d42de2c3082f3609d1e63c83d703fb39cf9 (March 2018), we renamed the + ;; Python 2.x package to "python2". + (package + (inherit python-2) + (name "python") + (properties `((superseded . ,python-2))))) + (define-public python-3.6 (package (inherit python-2) (name "python") @@ -1200,13 +1211,13 @@ human-friendly syntax.") (define-public python-pandas (package (name "python-pandas") - (version "0.22.0") + (version "0.23.1") (source (origin (method url-fetch) (uri (pypi-uri "pandas" version)) (sha256 - (base32 "0v0fi2i10kwnmlpsl6f1fgajcpx3q6766qf6xqi5kw3ivn8l1aa4")))) + (base32 "142nvwb01r2wv42y2cz40bx33hd8ffh6s6gynapg859fmzr2mdah")))) (build-system python-build-system) (arguments `(#:modules ((guix build utils) @@ -1226,7 +1237,8 @@ human-friendly syntax.") (for-each delete-file '("pandas/tests/io/conftest.py" "pandas/tests/io/json/test_compression.py" - "pandas/tests/io/test_excel.py")) + "pandas/tests/io/test_excel.py" + "pandas/tests/io/test_parquet.py")) (invoke "pytest" "-v" "pandas" "-k" (string-append "not network and not disabled" @@ -1238,7 +1250,9 @@ human-friendly syntax.") ("python-dateutil" ,python-dateutil))) (native-inputs `(("python-cython" ,python-cython) + ("python-beautifulsoup4" ,python-beautifulsoup4) ("python-lxml" ,python-lxml) + ("python-html5lib" ,python-html5lib) ("python-nose" ,python-nose) ("python-pytest" ,python-pytest))) (home-page "https://pandas.pydata.org") @@ -2900,7 +2914,7 @@ between language specification and implementation aspects.") (define-public python-numpy (package (name "python-numpy") - (version "1.14.3") + (version "1.14.5") (source (origin (method url-fetch) @@ -2909,7 +2923,7 @@ between language specification and implementation aspects.") version "/numpy-" version ".tar.gz")) (sha256 (base32 - "1yim2bxlycn4dhxmfxid6slplpmcb4ynhp411b37ahmsm2lwgkyg")))) + "0admjpkih63lm19zbbilq8ck4f6ny5kqi03dk3m6b2mnixsh4jhv")))) (build-system python-build-system) (inputs `(("openblas" ,openblas) @@ -4474,13 +4488,13 @@ them as the version argument or in a SCM managed file.") (define-public python-pathpy (package (name "python-pathpy") - (version "11.0") + (version "11.0.1") (source (origin (method url-fetch) (uri (pypi-uri "path.py" version)) (sha256 - (base32 "12s84maimiz61980q065rjgi8ang6xw2wwm64m0lmfks51dlw4qn")))) + (base32 "07x15v8c7ry9bvycw294c9yq6ky9v2b0dalvgi6rn38ilh69vsz7")))) ;; (outputs '("out" "doc")) (build-system python-build-system) (propagated-inputs @@ -4861,26 +4875,15 @@ computing.") (define-public python-urwid (package (name "python-urwid") - (version "1.3.1") + (version "2.0.1") (source (origin (method url-fetch) (uri (pypi-uri "urwid" version)) (sha256 (base32 - "18cnd1wdjcas08x5qwa5ayw6jsfcn33w4d9f7q3s29fy6qzc1kng")))) + "1g6cpicybvbananpjikmjk8npmjk4xvak1wjzji62wc600wkwkb4")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - ;; Disable failing test. Bug filed upstream: - ;; https://github.com/wardi/urwid/issues/164 - ;; TODO: check again for python-urwid > 1.3.1 or python > 3.4.3. - (add-after 'unpack 'disable-failing-test - (lambda _ - (substitute* "urwid/tests/test_event_loops.py" - (("test_remove_watch_file") - "disable_remove_watch_file"))))))) (home-page "http://urwid.org") (synopsis "Console user interface library for Python") (description @@ -4889,22 +4892,7 @@ features useful for text console applications.") (license license:lgpl2.1+))) (define-public python2-urwid - (let ((python2-urwid (package-with-python2 python-urwid))) - (package - (inherit python2-urwid) - (arguments - (append - `(;; Explicitly using Python 2 is necessary due the argument list being - ;; built from only the 'delete-test_vterm.py' phase and python-urwid's - ;; package arguments, which by default assumes the use of Python 3. - #:python ,python-2 - #:phases - (modify-phases %standard-phases - ;; Disable the vterm tests because of non-deterministic failures - ;; with Python 2. See https://github.com/urwid/urwid/issues/230. - (add-after 'unpack 'delete-test_vterm.py - (delete-file "urwid/tests/test_vterm.py")))) - (package-arguments python-urwid)))))) + (package-with-python2 python-urwid)) (define-public python-urwidtrees (package @@ -6023,13 +6011,13 @@ should be stored on various operating systems.") (define-public python-llfuse (package (name "python-llfuse") - (version "1.3.2") + (version "1.3.3") (source (origin (method url-fetch) (uri (pypi-uri "llfuse" version ".tar.bz2")) (sha256 (base32 - "0qxvnbz41bpvpc1vbi8qkhmpr9gj1qrrp5jdj085iqibd8l2l9cn")))) + "1rqww632y2zz71xmr6ch7yq80kvza9mhqr2z773k0d8l1lwzl575")))) (build-system python-build-system) (inputs `(("fuse" ,fuse) @@ -7275,13 +7263,13 @@ applications.") (define-public python-click-log (package (name "python-click-log") - (version "0.2.1") + (version "0.3.2") (source (origin (method url-fetch) (uri (pypi-uri "click-log" version)) (sha256 (base32 - "1r1x85023cslb2pwldd089jjk573mk3w78cnashs77wrx7yz8fj9")))) + "091i03bhxyzsdbc6kilxhivfda2f8ymz3b33xa6cj5kbzjiirz8n")))) (build-system python-build-system) (propagated-inputs `(("python-click" ,python-click))) @@ -12901,6 +12889,48 @@ and works only with Python 2 and NumPy < 1.9.") (define-public python2-phonenumbers (package-with-python2 python-phonenumbers)) +(define-public python-send2trash + (package + (name "python-send2trash") + (version "1.4.2") + (source + (origin (method url-fetch) + ;; Source tarball on PyPI doesn't include tests. + (uri (string-append "https://github.com/hsoft/send2trash/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ffyhwjyx61slkdy38iwjc4gmj7fj9gs2q58f075gwvq630pzm9z")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + (mkdir-p "/tmp/foo") + (setenv "HOME" "/tmp/foo") + #t))))) + (home-page "https://github.com/hsoft/send2trash") + (synopsis "Send files to the user's @file{~/Trash} directory") + (description "This package provides a Python library to send files to the +user's @file{~/Trash} directory.") + (license license:bsd-3))) + +(define-public python2-send2trash + (package + (inherit (package-with-python2 python-send2trash)) + (arguments + (substitute-keyword-arguments (package-arguments python-send2trash) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'check 'setenv + (lambda _ + (setenv "PYTHONPATH" + (string-append (getcwd) ":" (getenv "PYTHONPATH"))) + #t)))))) + (properties `((python2-variant . ,(delay python-send2trash)))))) + (define-public python-yapf (package (name "python-yapf") @@ -13615,3 +13645,152 @@ Boost.Python library by David Abrahams: to minimize boilerplate code in traditional extension modules by inferring type information using compile-time introspection.") (license license:expat))) + +(define-public python-fasteners + (package + (name "python-fasteners") + (version "0.14.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fasteners" version)) + (sha256 + (base32 + "063y20kx01ihbz2mziapmjxi2cd0dq48jzg587xdsdp07xvpcz22")))) + (build-system python-build-system) + (propagated-inputs + `(("python-monotonic" ,python-monotonic) + ("python-six" ,python-six) + ("python-testtools" ,python-testtools))) + (home-page "https://github.com/harlowja/fasteners") + (synopsis "Python package that provides useful locks") + (description + "This package provides a Python program that provides following locks: + +@itemize +@item Locking decorator +@item Reader-writer locks +@item Inter-process locks +@item Generic helpers +@end itemize\n") + (license license:asl2.0))) + +(define-public python2-fasteners + (package-with-python2 python-fasteners)) + +(define-public python-requests-file + (package + (name "python-requests-file") + (version "1.4.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "requests-file" version)) + (sha256 + (base32 + "1yp2jaxg3v86pia0q512dg3hz6s9y5vzdivsgrba1kds05ial14g")))) + (build-system python-build-system) + (propagated-inputs + `(("python-requests" ,python-requests) + ("python-six" ,python-six))) + (home-page + "https://github.com/dashea/requests-file") + (synopsis "File transport adapter for Requests") + (description + "Requests-File is a transport adapter for use with the Requests Python +library to allow local filesystem access via file:// URLs.") + (license license:asl2.0))) + +(define-public python2-requests-file + (package-with-python2 python-requests-file)) + +(define-public python-tldextract + (package + (name "python-tldextract") + (version "2.2.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "tldextract" version)) + (sha256 + (base32 + "1d5s8v6kpsgazyahflhji1cfdcf89rv7l7z55v774bhzvcjp2y99")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-responses" ,python-responses))) + (propagated-inputs + `(("python-idna" ,python-idna) + ("python-requests" ,python-requests) + ("python-requests-file" ,python-requests-file))) + (home-page + "https://github.com/john-kurkowski/tldextract") + (synopsis + "Separate the TLD from the registered domain and subdomains of a URL") + (description + "TLDExtract accurately separates the TLD from the registered domain and +subdomains of a URL, using the Public Suffix List. By default, this includes +the public ICANN TLDs and their exceptions. It can optionally support the +Public Suffix List's private domains as well.") + (license license:bsd-3))) + +(define-public python2-tldextract + (package-with-python2 python-tldextract)) + +(define-public python-pynamecheap + (package + (name "python-pynamecheap") + (version "0.0.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "PyNamecheap" version)) + (sha256 + (base32 + "0wkbwz208j8nfrsmzmclvxg22ymknn0mlz76wbdza9k2bx2zja6l")))) + (build-system python-build-system) + (propagated-inputs + `(("python-requests" ,python-requests))) + (home-page + "https://github.com/Bemmu/PyNamecheap") + (synopsis + "Namecheap API client in Python") + (description + "PyNamecheap is a Namecheap API client in Python.") + (license license:expat))) + +(define-public python2-pynamecheap + (package-with-python2 python-pynamecheap)) + +(define-public python-dns-lexicon + (package + (name "python-dns-lexicon") + (version "2.4.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "dns-lexicon" version)) + (sha256 + (base32 + "0jdn3ns71bsybr7njgsqr9xlxsqh7zh6phn4ld0liazqdn2l5f6m")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ;requires internet access + (propagated-inputs + `(("python-future" ,python-future) + ("python-pynamecheap" ,python-pynamecheap) + ("python-requests" ,python-requests) + ("python-tldextract" ,python-tldextract) + ("python-urllib3" ,python-urllib3))) + (home-page "https://github.com/AnalogJ/lexicon") + (synopsis + "Manipulate DNS records on various DNS providers") + (description + "Lexicon provides a way to manipulate DNS records on multiple DNS +providers in a standardized way. It has a CLI but it can also be used as a +Python library. It was designed to be used in automation, specifically with +Let's Encrypt.") + (license license:expat))) + +(define-public python2-dns-lexicon + (package-with-python2 python-dns-lexicon)) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 7d323cd2d5..a15d6453c9 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2017 Quiliro ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2018 Nicolas Goaziou +;;; Copyright © 2018 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -1069,6 +1070,55 @@ between the host (QML/C++ application) and the client (HTML/JavaScript application). The transport mechanism is supported out of the box by the two popular web engines, Qt WebKit 2 and Qt WebEngine."))) +(define-public qtwebglplugin + (package (inherit qtsvg) + (name "qtwebglplugin") + (version "5.11.0") + (source (origin + (method url-fetch) + (uri (string-append "https://download.qt.io/official_releases/qt/" + (version-major+minor version) "/" version + "/submodules/" name "-everywhere-src-" + version ".tar.xz")) + (sha256 + (base32 + "1al7dv7i9rg4z4p8vnipbjbbgc6113lbfjggxxap3sn6hqs986fm")))) + (native-inputs '()) + (inputs + `(("mesa" ,mesa) + ("qtbase" ,qtbase) + ("qtwebsockets" ,qtwebsockets))) + (synopsis "QPA plugin for running an application via a browser using +streamed WebGL commands") + (description "Qt back end that uses WebGL for rendering. It allows Qt +applications (with some limitations) to run in a web browser that supports +WebGL. WebGL is a JavaScript API for rendering 2D and 3D graphics within any +compatible web browser without the use of plug-ins. The API is similar to +OpenGL ES 2.0 and can be used in HTML5 canvas elements"))) + +(define-public qtwebview + (package (inherit qtsvg) + (name "qtwebview") + (version "5.11.0") + (source (origin + (method url-fetch) + (uri (string-append "https://download.qt.io/official_releases/qt/" + (version-major+minor version) "/" version + "/submodules/" name "-everywhere-src-" + version ".tar.xz")) + (sha256 + (base32 + "0a89v8mj5pb7a7whyhasf4ms0n34ghfmv2qp0pyxnq56f2bsjbl4")))) + (native-inputs + `(("perl" ,perl))) + (inputs + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative))) + (synopsis "Display web content in a QML application") + (description "Qt WebView provides a way to display web content in a QML +application without necessarily including a full web browser stack by using +native APIs where it makes sense."))) + (define-public qtlocation (package (inherit qtsvg) (name "qtlocation") diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm index 973fef72f0..1618b29b06 100644 --- a/gnu/packages/rdf.scm +++ b/gnu/packages/rdf.scm @@ -233,7 +233,7 @@ and triple stores.") (version "0.28.0") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/serd-" + (uri (string-append "https://download.drobilla.net/serd-" version ".tar.bz2")) (sha256 (base32 @@ -250,7 +250,7 @@ and triple stores.") (string-append "-Wl,-rpath=" (assoc-ref outputs "out") "/lib")) #t))))) - (home-page "http://drobilla.net/software/serd/") + (home-page "https://drobilla.net/software/serd/") (synopsis "Library for RDF syntax supporting Turtle and NTriples") (description "Serd is a lightweight C library for RDF syntax which supports reading @@ -267,7 +267,7 @@ ideal (e.g. in LV2 implementations or embedded applications).") (version "0.16.0") (source (origin (method url-fetch) - (uri (string-append "http://download.drobilla.net/sord-" + (uri (string-append "https://download.drobilla.net/sord-" version ".tar.bz2")) (sha256 (base32 @@ -288,7 +288,7 @@ ideal (e.g. in LV2 implementations or embedded applications).") `(("serd" ,serd))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://drobilla.net/software/sord/") + (home-page "https://drobilla.net/software/sord/") (synopsis "C library for storing RDF data in memory") (description "Sord is a lightweight C library for storing RDF data in memory.") diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 5c70f5e743..1602fd5d5e 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -697,7 +697,7 @@ line of code.") (synopsis "Converter from AsciiDoc content to other formats") (description "Asciidoctor is a text processor and publishing toolchain for converting -AsciiDoc content to HTML5, DocBook 5 (or 4.5) and other formats.") +AsciiDoc content to HTML5, DocBook 5 (or 4.5), PDF, and other formats.") (home-page "https://asciidoctor.org") (license license:expat))) @@ -3330,7 +3330,7 @@ differences (added or removed nodes) between two XML/HTML documents.") (define-public ruby-rack (package (name "ruby-rack") - (version "2.0.3") + (version "2.0.5") (source (origin (method url-fetch) @@ -3342,7 +3342,7 @@ differences (added or removed nodes) between two XML/HTML documents.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "12bnqrcg43x9hsswjqg31qqwk8cwj2fh0d2m179y20bjghhn54kx")) + "1k1k4wk10l6bxx46pw58j2p3nmyzjqnr65hbjjqydd6517fmxgib")) ;; Ignore test which fails inside the build environment but works ;; outside. (patches (search-patches "ruby-rack-ignore-failing-test.patch")))) @@ -3417,17 +3417,17 @@ testing libraries to build on.") (define-public ruby-rack-protection (package (name "ruby-rack-protection") - (version "2.0.1") + (version "2.0.3") (source (origin (method url-fetch) (uri (rubygems-uri "rack-protection" version)) (sha256 (base32 - "0ywmgh7x8ljf7jfnq5hmfzki3f803waji3fcvi107w7mlyflbng7")))) + "1z5598qipilmnf45428jnxi63ykrgvnyywa5ckpr52zv2vpd8jdp")))) (build-system ruby-build-system) (arguments - '(;; Tests missing from the gem + '(;; Tests missing from the gem. #:tests? #f)) (propagated-inputs `(("ruby-rack" ,ruby-rack))) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 37576ee9f6..0ce46056f5 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2016 Adonay "adfeno" Felipe Nogueira ;;; Copyright © 2017 Thomas Danckaert -;;; Copyright © 2017 Marius Bakke +;;; Copyright © 2017, 2018 Marius Bakke ;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. @@ -76,7 +76,7 @@ ;; The 6.7 tarball is missing ‘install.sh’. Create it. (add-after 'unpack 'autoreconf (lambda _ - (zero? (system* "autoreconf" "-i")))) + (invoke "autoreconf" "-i"))) (add-before 'configure 'set-root-sbin (lambda _ ; Don't try to install in "/sbin". (setenv "ROOTSBINDIR" @@ -150,14 +150,14 @@ anywhere.") (define-public samba (package (name "samba") - (version "4.8.2") + (version "4.8.3") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 (base32 - "08mz29jmjxqvyyhm6pa388paagw1i2i21lc7pd2aprj9dllm5rb2")))) + "1vc21c0m7wky70hpyjhw6ph6zlzljsvivlgxy54znpaxc259lmp0")))) (build-system gnu-build-system) (arguments `(#:phases @@ -178,8 +178,7 @@ anywhere.") (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (libdir (string-append out "/lib"))) - (zero? (system* - "./configure" + (invoke "./configure" "--enable-fhs" ;; XXX: heimdal not packaged. "--bundled-libraries=com_err" @@ -188,7 +187,7 @@ anywhere.") ;; Install public and private libraries into ;; a single directory to avoid RPATH issues. (string-append "--libdir=" libdir) - (string-append "--with-privatelibdir=" libdir)))))) + (string-append "--with-privatelibdir=" libdir))))) (add-before 'install 'disable-etc-samba-directory-creation (lambda _ (substitute* "dynconfig/wscript" @@ -342,17 +341,30 @@ many event types, including timers, signals, and the classic file descriptor eve (define-public ldb (package (name "ldb") - (version "1.3.3") + (version "1.4.0") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/ldb/ldb-" version ".tar.gz")) (sha256 (base32 - "14gsrm7dvyjpbpnc60z75j6fz2p187abm2h353lq95kx2bv70c1b")))) + "1d591ny4j4s409s2afjv4fn7inqlclr0zlyclw3619rkbaixlzm8")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each (lambda (file) + ;; Delete everything except the build tools. + (unless (or (string-prefix? "third_party/waf" file) + (string-suffix? "wscript" file)) + (delete-file file))) + (find-files "third_party")) + #t)))) (build-system gnu-build-system) (arguments - '(#:phases + '(;; LMDB is only supported on 64-bit systems, yet the test suite + ;; requires it. + #:tests? (assoc-ref %build-inputs "lmdb") + #:phases (modify-phases %standard-phases (replace 'configure ;; ldb use a custom configuration script that runs waf. @@ -372,7 +384,10 @@ many event types, including timers, signals, and the classic file descriptor eve `(("talloc" ,talloc) ("tdb" ,tdb))) (inputs - `(("popt" ,popt) + `(,@(if (target-64bit?) + `(("lmdb" ,lmdb)) + '()) + ("popt" ,popt) ("tevent" ,tevent))) (synopsis "LDAP-like embedded database") (home-page "https://ldb.samba.org/") diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index dba5067e9e..4178a45a89 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2017 John Darrington ;;; Copyright © 2017 Clément Lassieur ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Adam Massmann ;;; ;;; This file is part of GNU Guix. ;;; @@ -313,15 +314,14 @@ Scheme and C programs and between Scheme and Java programs.") (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (zero? - (system* "./configure" - (string-append "--prefix=" out) - (string-append "--blflags=" - ;; user flags completely override useful - ;; default flags, so repeat them here. - "-copt \\$(CPICFLAGS) " - "-L \\$(BUILDLIBDIR) " - "-ldopt -Wl,-rpath," out "/lib"))))))))) + (invoke "./configure" + (string-append "--prefix=" out) + (string-append "--blflags=" + ;; user flags completely override useful + ;; default flags, so repeat them here. + "-copt \\$(CPICFLAGS) " + "-L \\$(BUILDLIBDIR) " + "-ldopt -Wl,-rpath," out "/lib")))))))) (inputs `(("avahi" ,avahi) ("bigloo" ,bigloo) ("libgc" ,libgc) @@ -356,7 +356,7 @@ mashups, office (web agendas, mail clients, ...), etc.") `(#:modules ((guix build gnu-build-system) (guix build utils) (srfi srfi-1)) - + ;; No `configure' script; run "make check" after "make install" as ;; prescribed by README. #:phases @@ -660,7 +660,8 @@ threads.") "| mit-scheme"))) (with-directory-excursion "scmutils/scmutils" (and (zero? (system "mit-scheme < compile.scm")) - (zero? (system make-img))))))) + (zero? (system make-img)))) + #t))) (add-before 'install 'fix-directory-names ;; Correct directory names in the startup script. (lambda* (#:key inputs outputs #:allow-other-keys) @@ -684,8 +685,8 @@ threads.") ;; code. (lambda* (#:key inputs outputs #:allow-other-keys) (with-directory-excursion "scmutils/scmutils" - (zero? (apply system* "etags" - (find-files "." "\\.scm")))))) + (apply invoke "etags" (find-files "." "\\.scm"))) + #t)) (replace 'install ;; Copy files to the store. (lambda* (#:key outputs #:allow-other-keys) @@ -881,12 +882,13 @@ regular-expression notation.") (add-after 'install 'remove-bin-share (lambda* (#:key inputs outputs #:allow-other-keys) (delete-file-recursively - (string-append (assoc-ref outputs "out") "/bin")))) + (string-append (assoc-ref outputs "out") "/bin")) + #t)) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) - (zero? (system* "./configure" - (string-append "--prefix=" - (assoc-ref outputs "out"))))))))) + (invoke "./configure" + (string-append "--prefix=" + (assoc-ref outputs "out")))))))) (native-inputs `(("unzip" ,unzip) ("texinfo" ,texinfo))) (home-page "http://people.csail.mit.edu/jaffer/SLIB.html") @@ -915,39 +917,34 @@ utility functions for all standard Scheme implementations.") (modify-phases %standard-phases (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) - (zero? (system* "./configure" - (string-append "--prefix=" - (assoc-ref outputs "out")))))) + (invoke "./configure" + (string-append "--prefix=" + (assoc-ref outputs "out"))))) (add-before 'build 'pre-build (lambda* (#:key inputs #:allow-other-keys) (substitute* "Makefile" - (("ginstall-info") "install-info")))) + (("ginstall-info") "install-info")) + #t)) (replace 'build (lambda* (#:key inputs outputs #:allow-other-keys) (setenv "SCHEME_LIBRARY_PATH" (string-append (assoc-ref inputs "slib") "/lib/slib/")) - (and - (zero? (system* "make" "scmlit" "CC=gcc")) - (zero? (system* "make" "all"))))) + (invoke "make" "scmlit" "CC=gcc") + (invoke "make" "all"))) (add-after 'install 'post-install (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((req - (string-append (assoc-ref outputs "out") - "/lib/scm/require.scm"))) - (and - (delete-file req) - (format (open req (logior O_WRONLY O_CREAT)) - "(define (library-vicinity) ~s)\n" - (string-append (assoc-ref inputs "slib") - "/lib/slib/")) + (let* ((out (assoc-ref outputs "out")) + (req (string-append out "/lib/scm/require.scm"))) + (delete-file req) + (format (open req (logior O_WRONLY O_CREAT)) + "(define (library-vicinity) ~s)\n" + (string-append (assoc-ref inputs "slib") + "/lib/slib/")) - ;; We must generate the slibcat file - (zero? (system* - (string-append - (assoc-ref outputs "out") - "/bin/scm") - "-br" "new-catalog"))))))))) + ;; We must generate the slibcat file. + (invoke (string-append out "/bin/scm") + "-br" "new-catalog"))))))) (inputs `(("slib" ,slib))) (native-inputs `(("unzip" ,unzip) ("texinfo" ,texinfo))) @@ -1025,3 +1022,80 @@ the same program, without any interference between them. Foreign functions in C can be added and values can be defined in the Scheme environment. Being quite a small program, it is easy to comprehend, get to grips with, and use.") (license bsd-3))) ; there are no licence headers + +(define-public stalin + (let ((commit "ed1c9e339c352b7a6fee40bb2a47607c3466f0be")) + ;; FIXME: The Stalin "source" contains C code generated by itself: + ;; 'stalin-AMD64.c', etc. + (package + (name "stalin") + (version "0.11") + (source (origin + ;; Use Pearlmutter's upstream branch with AMD64 patches + ;; applied. Saves us from including those 20M! patches + ;; in Guix. For more info, see: + ;; + (method git-fetch) + (uri (git-reference + (url "https://github.com/barak/stalin.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "15a5gxj9v7jqlgkg0543gdflw0rbrir7fj5zgifnb33m074wiyhn")) + (modules '((guix build utils))) + (snippet + ;; remove gc libs from build, we have them as input + '(begin + (delete-file "gc6.8.tar.gz") + (delete-file-recursively "benchmarks") + (substitute* "build" + ((".*gc6.8.*") "") + ((" cd \\.\\.") "") + ((".*B include/libgc.a") "") + ((".*make.*") "")) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:make-flags (list "ARCH_OPTS=-freg-struct-return") + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (include-out (string-append out "/include"))) + (invoke "./build") + (for-each (lambda (fname) + (install-file fname include-out)) + (find-files "include")) + (substitute* "makefile" + (("\\./include") include-out)) + (substitute* "post-make" + (("`pwd`") out)) + #t))) + (delete 'check) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "stalin.1" + (string-append out "/share/man/man1")) + (install-file "stalin" + (string-append out "/bin")) + #t)))))) + (inputs + `(("libx11" ,libx11))) + (propagated-inputs + `(("libgc" ,libgc))) + (supported-systems '("x86_64-linux")) + (home-page "https://engineering.purdue.edu/~qobi/papers/fdlcc.pdf") + (synopsis "Brutally efficient Scheme compiler") + (description + "Stalin is an aggressively optimizing whole-program compiler +for Scheme that does polyvariant interprocedural flow analysis, +flow-directed interprocedural escape analysis, flow-directed +lightweight CPS conversion, flow-directed lightweight closure +conversion, flow-directed interprocedural lifetime analysis, automatic +in-lining, unboxing, and flow-directed program-specific and +program-point-specific low-level representation selection and code +generation.") + (license gpl2+)))) diff --git a/gnu/packages/scribus.scm b/gnu/packages/scribus.scm index 98bdf5d24e..dca1dc86e1 100644 --- a/gnu/packages/scribus.scm +++ b/gnu/packages/scribus.scm @@ -61,7 +61,19 @@ (arguments `(#:tests? #f ;no test target #:configure-flags - '("-DWANT_GRAPHICSMAGICK=1"))) + '("-DWANT_GRAPHICSMAGICK=1") + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Fix "ImportError: No module named _sysconfigdata_nd" where + ;; Scribus checks PATH and eventually runs system's Python + ;; instead of package's. + (let* ((out (assoc-ref outputs "out")) + (py2 (assoc-ref inputs "python"))) + (wrap-program (string-append out "/bin/scribus") + `("PATH" ":" prefix (,(string-append py2 "/bin"))))) + #t))))) (inputs `(("boost" ,boost) ("cairo" ,cairo) diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 43cf2795dd..3e21cde83c 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner ;;; Copyright © 2017 Rutger Helling ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -348,7 +349,7 @@ directory.") (define-public sdl2-image (package (inherit sdl-image) (name "sdl2-image") - (version "2.0.2") + (version "2.0.3") (source (origin (method url-fetch) (uri @@ -356,7 +357,7 @@ directory.") version ".tar.gz")) (sha256 (base32 - "1s3ciydixrgv34vlf45ak5syq5nlfaqf19wf162lbz4ixxd0gpvj")))) + "0s13dmakn21q6yw8avl67d4zkxzl1wap6l5nwf6cvzrmlxfw441m")))) (propagated-inputs (propagated-inputs-with-sdl2 sdl-image)))) @@ -503,7 +504,16 @@ sound and device input (keyboards, joysticks, mice, etc.).") (string-append "--with-libsdl2-ttf-prefix=" (assoc-ref %build-inputs "sdl2-ttf")) (string-append "--with-libsdl2-mixer-prefix=" - (assoc-ref %build-inputs "sdl2-mixer"))))) + (assoc-ref %build-inputs "sdl2-mixer"))) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'patch-makefile + (lambda _ + ;; Install compiled Guile files in the expected place. + (substitute* '("Makefile") + (("^godir = .*$") + "godir = $(moddir)\n")) + #t))))) (native-inputs `(("guile" ,guile-2.2) ("pkg-config" ,pkg-config))) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index e176fd1aa7..e9e74817f2 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -126,24 +126,24 @@ rich set of boolean query operators.") (inputs `(("unqlite" ,unqlite))) (arguments `(#:phases (modify-phases %standard-phases - (add-before - 'configure 'chdir-source - (lambda _ (chdir "libtocc/src"))) - (replace - 'check - (lambda _ - (with-directory-excursion "../tests" - (and (zero? (system* "./configure" - (string-append "CONFIG_SHELL=" - (which "sh")) - (string-append "SHELL=" - (which "sh")) - "CPPFLAGS=-I../src" - (string-append - "LDFLAGS=-L../src/.libs " - "-Wl,-rpath=../src/.libs"))) - (zero? (system* "make")) - (zero? (system* "./libtocctests"))))))))) + (add-before 'configure 'chdir-source + (lambda _ + (chdir "libtocc/src") + #t)) + (replace 'check + (lambda _ + (with-directory-excursion "../tests" + (invoke "./configure" + (string-append "CONFIG_SHELL=" + (which "sh")) + (string-append "SHELL=" + (which "sh")) + "CPPFLAGS=-I../src" + (string-append + "LDFLAGS=-L../src/.libs " + "-Wl,-rpath=../src/.libs")) + (invoke "make") + (invoke "./libtocctests"))))))) (home-page "https://t-o-c-c.com/") (synopsis "Tool for Obsessive Compulsive Classifiers") (description diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm index 9c8474dd02..7fdcaaf1ea 100644 --- a/gnu/packages/security-token.scm +++ b/gnu/packages/security-token.scm @@ -28,6 +28,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system glib-or-gtk) #:use-module (gnu packages autotools) @@ -91,16 +92,15 @@ readers and is needed to communicate with such devices through the (define-public eid-mw (package (name "eid-mw") - (version "4.3.4") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/Fedict/eid-mw/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1ay9znry9dkhhn783paqy8czvv3w5gdpmq8ag8znx9akza8c929z")))) + (version "4.4.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Fedict/eid-mw") + (commit (string-append "v" version)))) + (sha256 + (base32 "1h90iz4l85drchpkmhlsvg7f9abhw6890fdr9x5n5ir3kxikwcdm")))) (build-system glib-or-gtk-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -121,9 +121,14 @@ readers and is needed to communicate with such devices through the (arguments `(#:phases (modify-phases %standard-phases - ;; The github tarball doesn't contain a configure script. - (add-before 'configure 'autoreconf - (lambda _ (zero? (system* "autoreconf" "-i"))))))) + (add-after 'unpack 'bootstrap + (lambda _ + ;; configure.ac relies on ‘git --describe’ to get the version. + ;; Patch it to just return the real version number directly. + (substitute* "scripts/build-aux/genver.sh" + (("/bin/sh") (which "sh")) + (("\\$GITDESC") ,version)) + (invoke "sh" "./bootstrap.sh")))))) (synopsis "Belgian eID Middleware") (description "The Belgian eID Middleware is required to authenticate with online services using the Belgian electronic identity card.") diff --git a/gnu/packages/selinux.scm b/gnu/packages/selinux.scm index 9562123bda..c56a991d99 100644 --- a/gnu/packages/selinux.scm +++ b/gnu/packages/selinux.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -201,10 +202,10 @@ the core SELinux management utilities.") (lambda _ (chdir ,name) #t)) (add-after 'build 'pywrap (lambda* (#:key make-flags #:allow-other-keys) - (zero? (apply system* "make" "pywrap" make-flags)))) + (apply invoke "make" "pywrap" make-flags))) (add-after 'install 'install-pywrap (lambda* (#:key make-flags #:allow-other-keys) - (zero? (apply system* "make" "install-pywrap" make-flags)))))))) + (apply invoke "make" "install-pywrap" make-flags))))))) (inputs `(("libsepol" ,libsepol) ("libselinux" ,libselinux) diff --git a/gnu/packages/smalltalk.scm b/gnu/packages/smalltalk.scm index c0c53a5291..9b36d83a80 100644 --- a/gnu/packages/smalltalk.scm +++ b/gnu/packages/smalltalk.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Nicolas Goaziou ;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -132,14 +133,15 @@ such as ones for networking and GUI programming.") (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (with-directory-excursion "bld" - (zero? - (system* "../unix/cmake/configure" + (invoke "../unix/cmake/configure" (string-append "--prefix=" out) - "--without-quartz")))))) + "--without-quartz") + #t)))) (replace 'build (lambda _ (with-directory-excursion "bld" - (zero? (system* "make")))))))) + (invoke "make")) + #t))))) (synopsis "Smalltalk programming language and environment") (description "Squeak is a full-featured implementation of the Smalltalk programming language and environment based on (and largely compatible with) diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index 38d4a3a6bd..a648634646 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -128,7 +128,7 @@ system to use the host GPU to accelerate 3D rendering.") (define-public spice-protocol (package (name "spice-protocol") - (version "0.12.13") + (version "0.12.14") (source (origin (method url-fetch) (uri (string-append @@ -136,7 +136,7 @@ system to use the host GPU to accelerate 3D rendering.") "spice-protocol-" version ".tar.bz2")) (sha256 (base32 - "0cwrgkp558mblcf4vrhacb3iizz12khsrrl82w38w9nj0ar13vl9")))) + "170ckpgazvqv7hxy209myg67pqnd6c0gvr4ysbqgsfch6320nd90")))) (build-system gnu-build-system) (synopsis "Protocol headers for the SPICE protocol") (description "SPICE (the Simple Protocol for Independent Computing diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index dd8518002d..cd92c62f58 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -256,22 +256,22 @@ Additionally, various channel-specific options can be negotiated.") '(#:phases (modify-phases %standard-phases (add-after 'unpack 'autoreconf (lambda* (#:key inputs #:allow-other-keys) - (zero? (system* "autoreconf" "-vfi")))) + (invoke "autoreconf" "-vfi"))) (add-before 'build 'fix-libguile-ssh-file-name (lambda* (#:key outputs #:allow-other-keys) ;; Build and install libguile-ssh.so so that we can use ;; its absolute file name in .scm files, before we build ;; the .go files. - (and (zero? (system* "make" "install" - "-C" "libguile-ssh" - "-j" (number->string - (parallel-job-count)))) - (let* ((out (assoc-ref outputs "out")) - (libdir (string-append out "/lib"))) - (substitute* (find-files "." "\\.scm$") - (("\"libguile-ssh\"") - (string-append "\"" libdir "/libguile-ssh\""))) - #t)))) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib"))) + (invoke "make" "install" + "-C" "libguile-ssh" + "-j" (number->string + (parallel-job-count))) + (substitute* (find-files "." "\\.scm$") + (("\"libguile-ssh\"") + (string-append "\"" lib "/libguile-ssh\""))) + #t))) (add-after 'install 'remove-bin-directory (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -329,29 +329,25 @@ libssh library.") "1gmhas4va6gd70i2x2mpxpwpgww6413mji29mg282jms3jscn3qd")))) (build-system gnu-build-system) (arguments - ;; Replace configure phase as the ./configure script does not link - ;; CONFIG_SHELL and SHELL passed as parameters - '(#:phases + `(#:phases (modify-phases %standard-phases (replace 'configure - (lambda* (#:key outputs inputs system build target - #:allow-other-keys #:rest args) - (let* ((configure (assoc-ref %standard-phases 'configure)) - (prefix (assoc-ref outputs "out")) - (bash (which "bash")) + ;; Replace configure phase as the ./configure script does not like + ;; CONFIG_SHELL and SHELL passed as parameters + (lambda* (#:key outputs build target #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bash (which "bash")) ;; Set --build and --host flags as the provided config.guess ;; is not able to detect them - (flags `(,(string-append "--prefix=" prefix) + (flags `(,(string-append "--prefix=" out) ,(string-append "--build=" build) ,(string-append "--host=" (or target build))))) (setenv "CONFIG_SHELL" bash) - (zero? (apply system* bash - (string-append "." "/configure") - flags))))) + (apply invoke bash "./configure" flags)))) (add-after 'install 'install-documentation (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (doc (string-append out "/share/doc/corkscrew"))) + (doc (string-append out "/share/doc/" ,name "-" ,version))) (install-file "README" doc) #t)))))) (home-page "http://www.agroman.net/corkscrew") diff --git a/gnu/packages/sssd.scm b/gnu/packages/sssd.scm index 28a364ebd5..0ff94cdd24 100644 --- a/gnu/packages/sssd.scm +++ b/gnu/packages/sssd.scm @@ -81,14 +81,14 @@ fundamental object types for C.") (define-public sssd (package (name "sssd") - (version "1.16.1") + (version "1.16.2") (source (origin (method url-fetch) (uri (string-append "http://releases.pagure.org/SSSD/sssd/" "sssd-" version ".tar.gz")) (sha256 (base32 - "0vjh1c5960wh86zjsamdjhljls7bb5fz5jpcazgzrpmga5w6ggrd")))) + "032ppk57qs1lnvz7pb7lw9ldwm9i1yagh9fzgqgn6na3bg61ynzy")))) (build-system gnu-build-system) (arguments `(#:make-flags @@ -165,6 +165,7 @@ fundamental object types for C.") `(("check" ,check) ("docbook-xsl" ,docbook-xsl) ("docbook-xml" ,docbook-xml) + ("libxml2" ,libxml2) ; for xmllint ("libxslt" ,libxslt) ("pkg-config" ,pkg-config) ("util-linux" ,util-linux))) ; for uuid.h, reqired for KCM diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 3eba723a43..8be3ce1a80 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -532,14 +532,14 @@ nonlinear mixed-effects models.") (define-public r-mgcv (package (name "r-mgcv") - (version "1.8-23") + (version "1.8-24") (source (origin (method url-fetch) (uri (cran-uri "mgcv" version)) (sha256 (base32 - "1lsrhf1yzn25pfn3f5x8yxjqnfryim4jx3iqd7ah8aalh5asqwbp")))) + "15b76m1f0hz8dbmj9shqvslihdx5b7c48vck9grj5xs1z2y45r9c")))) (build-system r-build-system) (propagated-inputs `(("r-matrix" ,r-matrix) @@ -835,13 +835,13 @@ see package vignette. To quote Rene Magritte, \"Ceci n'est pas un pipe.\"") (define-public r-munsell (package (name "r-munsell") - (version "0.4.3") + (version "0.5.0") (source (origin (method url-fetch) (uri (cran-uri "munsell" version)) (sha256 - (base32 "0jdxlbjslkzaqgp058da1cgm85qvqi09wpcgpvp4hvwnmy83qz1r")))) + (base32 "16g1fzisbpqb15yh3pqf3iia4csppva5dnv1z88x9dg263xskwyh")))) (build-system r-build-system) (propagated-inputs `(("r-colorspace" ,r-colorspace))) @@ -960,14 +960,14 @@ solution for sending email, including attachments, from within R.") (define-public r-stringi (package (name "r-stringi") - (version "1.2.2") + (version "1.2.3") (source (origin (method url-fetch) (uri (cran-uri "stringi" version)) (sha256 (base32 - "1z8yqnh3alq0xriz77vifgl27msf3av6maz07fld78m90ajb6y8r")))) + "1sgg4krw03qkz1n4dwiya0djggk7giwd0w21qlp0pfjqi0rxq6qx")))) (build-system r-build-system) (inputs `(("icu4c" ,icu4c))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1289,13 +1289,13 @@ There is also a Shiny app as a user interface in this package.") (define-public r-highr (package (name "r-highr") - (version "0.6") + (version "0.7") (source (origin (method url-fetch) (uri (cran-uri "highr" version)) (sha256 (base32 - "0n9v44dxdy5fhkdmpbpa2p78whyd9z3rhhy42ipdz5m5vsr55qa3")))) + "1dzknqk4x7iiiq1jkh9bqm5qcvs7mbqxbkn5955050payavabfya")))) (build-system r-build-system) (home-page "https://github.com/yihui/highr") (synopsis "Syntax highlighting for R source code") @@ -1816,7 +1816,8 @@ and fast file reading.") (arguments `(#:phases (modify-phases %standard-phases - (replace 'check (lambda _ (zero? (system* "nosetests" "-v"))))))) + (replace 'check + (lambda _ (invoke "nosetests" "-v")))))) (propagated-inputs `(("python-numpy" ,python-numpy) ("python-scipy" ,python-scipy) @@ -2603,14 +2604,14 @@ certain criterion, e.g., it contains a certain regular file.") (define-public r-rmarkdown (package (name "r-rmarkdown") - (version "1.9") + (version "1.10") (source (origin (method url-fetch) (uri (cran-uri "rmarkdown" version)) (sha256 (base32 - "0wq6kbhrkv3fhcy4hg5yyv9gdvf8gr4nsjwdifs4ih8lnn0dmdyb")))) + "0mh2f3k98w7pgz0ri34149s4kx5y0kfm27nwq64k0qwxd16hwd9r")))) (properties `((upstream-name . "rmarkdown"))) (build-system r-build-system) (propagated-inputs @@ -2622,6 +2623,7 @@ certain criterion, e.g., it contains a certain regular file.") ("r-mime" ,r-mime) ("r-rprojroot" ,r-rprojroot) ("r-stringr" ,r-stringr) + ("r-tinytex" ,r-tinytex) ("r-yaml" ,r-yaml) ;; rmarkdown works with the 2.x release of Pandoc, but with degraded ;; functionality. For example, tabbed plots do not currently work with @@ -4038,14 +4040,14 @@ routines.") (define-public r-fastcluster (package (name "r-fastcluster") - (version "1.1.24") + (version "1.1.25") (source (origin (method url-fetch) (uri (cran-uri "fastcluster" version)) (sha256 (base32 - "15drhl22wm8whsy6b3vv754skfddiydb068zn1whrw5sknvkkjc2")))) + "01a2xnhhvv1swd4g8p4lzyn7ww7kg49jlnzc7kfz60jqjzpisrpk")))) (build-system r-build-system) (home-page "http://danifold.net/fastcluster.html") (synopsis "Fast hierarchical clustering routines") @@ -4222,13 +4224,13 @@ mechanism.") (define-public r-zoo (package (name "r-zoo") - (version "1.8-1") + (version "1.8-2") (source (origin (method url-fetch) (uri (cran-uri "zoo" version)) (sha256 (base32 - "16nc5jnpkf5j9vgq3pzssv7knj30mi055wj7q3sygz3l0d88hgfr")))) + "1lpwigxmi5sc23xrha4gcsccsm4yfsg0sa97y6vac3pg1lliblvx")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice))) diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index a343e3cb6e..dbfaa29127 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -100,9 +100,8 @@ a custom raw video format with a simple container.") (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (zero? - (system* "make" "install" - (string-append "DESTDIR=" out) "PREFIX="))))) + (invoke "make" "install" + (string-append "DESTDIR=" out) "PREFIX=")))) (add-after 'build 'install-xsession (lambda* (#:key outputs #:allow-other-keys) ;; Add a .desktop file to xsessions. diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index f43c51714a..14e83b5861 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -490,34 +490,6 @@ address of the default LAN gateway.") (home-page "https://github.com/jackpal/gateway") (license bsd-3)))) -(define-public go-github-com-kardianos-osext - (let ((commit "ae77be60afb1dcacde03767a8c37337fad28ac14") - (revision "1")) - (package - (name "go-github-com-kardianos-osext") - (version (git-version "0.0.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/kardianos/osext") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz")))) - (build-system go-build-system) - (arguments - `(#:import-path "github.com/kardianos/osext" - ;; The tests are flaky: - ;; - #:tests? #f)) - (synopsis "Find the running executable") - (description "Osext provides a method for finding the current executable -file that is running. This can be used for upgrading the current executable or -finding resources located relative to the executable file.") - (home-page "https://github.com/kardianos/osext") - (license bsd-3)))) - (define-public go-github-com-lib-pq (let ((commit "83612a56d3dd153a94a629cd64925371c9adad78") (revision "1")) diff --git a/gnu/packages/syndication.scm b/gnu/packages/syndication.scm index 27b49895e2..f37c0eaac5 100644 --- a/gnu/packages/syndication.scm +++ b/gnu/packages/syndication.scm @@ -32,7 +32,7 @@ (define-public newsboat (package (name "newsboat") - (version "2.11.1") + (version "2.12") (source (origin (method url-fetch) @@ -40,7 +40,7 @@ "/newsboat-" version ".tar.xz")) (sha256 (base32 - "1krpxl854h5dwmpr81m1s84cwk8zivdzvw0s5s0i4dba736pvdma")))) + "1x23zlgljaqf46v7sp8wnkyf6wighvirvn48ankpa34yr8mvrgcv")))) (build-system gnu-build-system) (native-inputs `(("gettext" ,gettext-minimal) @@ -60,7 +60,7 @@ (delete 'configure) ; no configure script (add-after 'build 'build-documentation (lambda _ - (zero? (system* "make" "doc"))))) + (invoke "make" "doc")))) #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) #:test-target "test")) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 6b625b5d3f..246d85901c 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -218,7 +218,7 @@ internet.") (define-public libsrtp (package (name "libsrtp") - (version "1.6.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/cisco/libsrtp/archive/v" @@ -226,31 +226,13 @@ internet.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1ppdqsrx5ni54vmd4kdzzmvgmf5ixb04w0jw7idy8mad6l27jghs")))) + "02x5l5h2nq6f9gq1bmgz5v9jmnqaab51p8aldglng1z7pjbp9za4")))) (native-inputs `(("psmisc" ,psmisc) ;some tests require 'killall' ("procps" ,procps))) (build-system gnu-build-system) (arguments - '(#:test-target "runtest" - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-mips-variable-in-testsuite - ;; This comes from https://github.com/cisco/libsrtp/pull/151 - (lambda _ - (substitute* "test/srtp_driver.c" - (("mips ") "mips_est ") - (("mips\\)") "mips_est)")) - #t)) - (add-after 'unpack 'patch-dictionary-location - ;; With the above changes, the rtpw_test.sh test finally runs, and fails. - (lambda _ - (substitute* "test/rtpw.c" - (("/usr/share/dict/words") - (string-append (assoc-ref %build-inputs "procps") - "/share/doc/procps-ng/FAQ")) - (("words.txt") "FAQ")) - #t))))) + '(#:test-target "runtest")) (synopsis "Secure RTP (SRTP) Reference Implementation") (description "This package provides an implementation of the Secure Real-time Transport @@ -387,6 +369,7 @@ address of one of the participants.") (sha256 (base32 "1s60vaici3v034jzzi20x23hsj6mkjlc0glipjq4hffrg9qgnizh")) + (patches (search-patches "mumble-1.2.19-abs.patch")) (modules '((guix build utils))) (snippet `(begin diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 1cd00f4621..5cdc081398 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2017 Petter ;;; Copyright © 2018 Hartmut Goebel +;;; Copyright © 2018 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -47,6 +48,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) + #:use-module (gnu packages libevent) #:use-module (gnu packages linux) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) @@ -55,6 +57,8 @@ #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages qt) + #:use-module (gnu packages serialization) + #:use-module (gnu packages ssh) #:use-module (gnu packages textutils) #:use-module (gnu packages wm) #:use-module (gnu packages xdisorg) @@ -845,3 +849,33 @@ per-line fullscreen terminal rendering, and keyboard input event reporting.") (define-public python2-curtsies (package-with-python2 python-curtsies)) + +(define-public tmate + (package + (name "tmate") + (version "2.2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/tmate-io/tmate/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "01f3hhm3x0sd6apyb1ajkjfdfvq5m2759w00yp2slr9fyicsrhnr")))) + (build-system gnu-build-system) + (inputs + `(("libevent" ,libevent) + ("libssh" ,libssh) + ("msgpack" ,msgpack) + ("ncurses" ,ncurses))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (home-page "https://tmate.io/") + (synopsis "Terminal sharing application") + (description "tmate is a terminal sharing application that allows you to +share your terminal with other users over the Internet. tmate is a fork of +tmux.") + (license license:isc))) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 6ce36f871d..98fc9f0921 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -175,6 +175,18 @@ (string-prefix? "mips64" s)))) #:phases (modify-phases %standard-phases + (add-after 'unpack 'configure-ghostscript-executable + ;; ps2eps.pl uses the "gswin32c" ghostscript executable on Windows, + ;; and the "gs" ghostscript executable on Unix. It detects Unix by + ;; checking for the existence of the /usr/bin directory. Since + ;; GuixSD does not have /usr/bin, it is also detected as Windows. + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "utils/ps2eps/ps2eps-src/bin/ps2eps.pl" + (("gswin32c") "gs")) + (substitute* "texk/texlive/linked_scripts/epstopdf/epstopdf.pl" + (("\"gs\"") + (string-append "\"" (assoc-ref inputs "ghostscript") "/bin/gs\""))) + #t)) (add-after 'unpack 'use-code-for-new-poppler (lambda _ (copy-file "texk/web2c/pdftexdir/pdftoepdf-newpoppler.cc" @@ -182,15 +194,6 @@ (copy-file "texk/web2c/pdftexdir/pdftosrc-newpoppler.cc" "texk/web2c/pdftexdir/pdftosrc.cc") #t)) - (add-after 'unpack 'fix-unix-detection - ;; ps2eps.pl uses the "gswin32c" ghostscript executable on Windows, - ;; and the "gs" ghostscript executable on Unix. It detects Unix by - ;; checking for the existence of the /usr/bin directory. Since - ;; GuixSD does not have /usr/bin, it is also detected as Windows. - (lambda _ - (substitute* "utils/ps2eps/ps2eps-src/bin/ps2eps.pl" - (("gswin32c") "gs")) - #t)) (add-after 'install 'postint (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) (let* ((out (assoc-ref outputs "out")) diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index a2f8a80704..fc831ab6cc 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -287,14 +287,14 @@ value (in fractional seconds) of a clock which never goes backwards.") (define-public python-pyrfc3339 (package (name "python-pyrfc3339") - (version "1.0") + (version "1.1") (source (origin (method url-fetch) (uri (pypi-uri "pyRFC3339" version)) (sha256 (base32 - "0dgm4l9y8jiax5cp6yxjd2i27cq8h33sh81n1wfbmnmqb32cdywd")))) + "06jv7ar7lpvvk0dixzwdr3wgm0g1lipxs429s2z7knwwa7hwpf41")))) (build-system python-build-system) (propagated-inputs `(("python-pytz" ,python-pytz))) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index a934a50878..e89dc85d18 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2017, 2018 Marius Bakke ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice ;;; Copyright © 2017 Rutger Helling +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,10 +39,14 @@ #:use-module (guix build-system python) #:use-module (guix build-system cmake) #:use-module (guix build-system haskell) + #:use-module (guix build-system trivial) #:use-module (gnu packages compression) #:use-module (gnu packages) + #:use-module (gnu packages bash) #:use-module (gnu packages check) + #:use-module (gnu packages curl) #:use-module (gnu packages dns) + #:use-module (gnu packages gawk) #:use-module (gnu packages guile) #:use-module (gnu packages haskell) #:use-module (gnu packages haskell-check) @@ -255,6 +260,7 @@ required structures.") (define-public openssl (package (name "openssl") + (replacement openssl/fixed) (version "1.0.2o") (source (origin (method url-fetch) @@ -391,6 +397,15 @@ required structures.") (license license:openssl) (home-page "https://www.openssl.org/"))) +(define openssl/fixed + (package + (inherit openssl) + (source (origin + (inherit (package-source openssl)) + (patches (append (origin-patches (package-source openssl)) + (search-patches "openssl-1.0.2-CVE-2018-0495.patch" + "openssl-1.0.2-CVE-2018-0732.patch"))))))) + (define-public openssl-next (package (inherit openssl) @@ -405,7 +420,9 @@ required structures.") (string-append "ftp://ftp.openssl.org/source/old/" (string-trim-right version char-set:letter) "/" name "-" version ".tar.gz"))) - (patches (search-patches "openssl-1.1.0-c-rehash-in.patch")) + (patches (search-patches "openssl-1.1.0-c-rehash-in.patch" + "openssl-1.1.0-CVE-2018-0495.patch" + "openssl-1.1.0-CVE-2018-0732.patch")) (sha256 (base32 "05x509lccqjscgyi935z809pwfm708islypwhmjnb6cyvrn64daq")))) @@ -459,14 +476,14 @@ required structures.") (define-public libressl (package (name "libressl") - (version "2.7.3") + (version "2.7.4") (source (origin (method url-fetch) (uri (string-append "mirror://openbsd/LibreSSL/" name "-" version ".tar.gz")) (sha256 (base32 - "1597kj9jy3jyw52ys19sd4blg2gkam5q0rqdxbnrnvnyw67hviqn")))) + "19kxa5i97q7p6rrps9qm0nd8zqhdjvzx02j72400c73cl2nryfhy")))) (build-system gnu-build-system) (arguments ;; Do as if 'getentropy' was missing since older Linux kernels lack it @@ -503,13 +520,13 @@ netcat implementation that supports TLS.") (package (name "python-acme") ;; Remember to update the hash of certbot when updating python-acme. - (version "0.24.0") + (version "0.25.1") (source (origin (method url-fetch) (uri (pypi-uri "acme" version)) (sha256 (base32 - "1jq1nlly5146k08dw31fc1pw78plya5jswznnd512c08giif0mfn")))) + "0d177dhy8a7472pz9v4blrlk02d8fp6s52li7z8v3dv97pvz7da7")))) (build-system python-build-system) (arguments `(#:phases @@ -528,6 +545,7 @@ netcat implementation that supports TLS.") ;; TODO: Add optional inputs for testing. (native-inputs `(("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) ;; For documentation ("python-sphinx" ,python-sphinx) ("python-sphinxcontrib-programoutput" ,python-sphinxcontrib-programoutput) @@ -537,6 +555,7 @@ netcat implementation that supports TLS.") `(("python-josepy" ,python-josepy) ("python-six" ,python-six) ("python-requests" ,python-requests) + ("python-requests-toolbelt" ,python-requests-toolbelt) ("python-pytz" ,python-pytz) ("python-pyrfc3339" ,python-pyrfc3339) ("python-pyasn1" ,python-pyasn1) @@ -558,7 +577,7 @@ netcat implementation that supports TLS.") (uri (pypi-uri name version)) (sha256 (base32 - "0w3dbz74rpabjnc3l3ybnzjdypbr65lsjqf9yn243b5kid9d8wm0")))) + "0kp56gwn1bnlrag9qidhm1i5ifdp5z6y1ravh3yimfrkc4cfa8sw")))) (build-system python-build-system) (arguments `(,@(substitute-keyword-arguments (package-arguments python-acme) @@ -805,7 +824,7 @@ then ported to the GNU / Linux environment.") (define-public mbedtls-apache (package (name "mbedtls-apache") - (version "2.7.3") + (version "2.7.4") (source (origin (method url-fetch) @@ -815,7 +834,7 @@ then ported to the GNU / Linux environment.") version "-apache.tgz")) (sha256 (base32 - "0rfpcc4i01qsl66iy1z9vaw00s34h4qgx3r41i1v5vazv7vjla05")))) + "1x9qia3rd77brz6qiv46w3ham2q78shn2rsz1jbpgqq0jpa69q9l")))) (build-system cmake-build-system) (arguments `(#:configure-flags @@ -873,3 +892,69 @@ implement the SSL3.0, TLS1.0, TLS1.1 and TLS1.2 protocol, and support RSA and Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many extensions.") (license license:bsd-3))) + +(define-public dehydrated + (package + (name "dehydrated") + (version "0.6.2") + (source (origin + (method url-fetch/tarbomb) + (uri (string-append + "https://github.com/lukas2511/dehydrated/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "03p80yj6bnzjc6dkp5hb9wpplmlrla8n5src71cnzw4rj53q8cqn")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((source (assoc-ref %build-inputs "source")) + (out (assoc-ref %outputs "out")) + (bin (string-append out "/bin")) + (bash (in-vicinity (assoc-ref %build-inputs "bash") "bin"))) + (mkdir-p bin) + (with-directory-excursion bin + (copy-file + (in-vicinity source (string-append "/dehydrated-" ,version + "/dehydrated")) + (in-vicinity bin "dehydrated")) + (patch-shebang "dehydrated" (list bash)) + + ;; Do not try to write in the store. + (substitute* "dehydrated" + (("SCRIPTDIR=\"\\$.*\"") "SCRIPTDIR=~/.dehydrated")) + + (setenv "PATH" bash) + (wrap-program "dehydrated" + `("PATH" ":" prefix + ,(map (lambda (dir) + (string-append dir "/bin")) + (map (lambda (input) + (assoc-ref %build-inputs input)) + '("coreutils" + "curl" + "diffutils" + "gawk" + "grep" + "openssl" + "sed")))))) + #t)))) + (inputs + `(("bash" ,bash) + ("coreutils" ,coreutils) + ("curl" ,curl) + ("diffutils" ,diffutils) + ("gawk" ,gawk) + ("grep" ,grep) + ("openssl" ,openssl) + ("sed" ,sed))) + (home-page "https://dehydrated.io/") + (synopsis "Let's Encrypt/ACME client implemented as a shell script") + (description "Dehydrated is a client for signing certificates with an +ACME-server (currently only provided by Let's Encrypt) implemented as a +relatively simple Bash script.") + (license license:expat))) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index b18673b81b..054d1e4029 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -47,14 +47,14 @@ (define-public tor (package (name "tor") - (version "0.3.3.6") + (version "0.3.3.7") (source (origin (method url-fetch) (uri (string-append "https://dist.torproject.org/tor-" version ".tar.gz")) (sha256 (base32 - "1drk2h8zd05xrfpx7xn77pcxz0hs4nrq6figw56qk5gkvgv5kg4r")))) + "036ybfvldj7yfci9ipjki8smpzyxdg8c5r12bghc9yxdqh9basza")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-gcc-hardening" @@ -256,51 +256,46 @@ from you.") license:bsd-3)))) ; onionshare/socks.py (define-public nyx - ;; The last ‘arm’ relase was 5 years ago. Meanwhile, python3 support has - ;; been added and the software was renamed to ‘nyx’. - (let ((commit "fea209127484d9b304b908a4711c9528b1d065bc") - (revision "1")) ; Guix package revision - (package - (name "nyx") - (version (string-append "1.9-" - revision "." (string-take commit 7))) - (source - (origin - (method git-fetch) - (file-name (string-append name "-" version "-checkout")) - (uri (git-reference - (url "https://git.torproject.org/nyx.git") - (commit commit))) - (sha256 - (base32 - "1g0l4988076xg5gs0x0nxzlg58rfx5g5agmklvyh4yp03vxncdb9")))) - (build-system python-build-system) - (native-inputs - `(("python-mock" ,python-mock) - ("python-pep8" ,python-pep8) - ("python-pyflakes" ,python-pyflakes))) - (inputs - `(("python-stem" ,python-stem))) - (arguments - `(#:configure-flags - (list (string-append "--man-page=" - (assoc-ref %outputs "out") - "/share/man/man1/nyx.1") - (string-append "--sample-path=" - (assoc-ref %outputs "out") - "/share/doc/nyx/nyxrc.sample")) - #:use-setuptools? #f ; setup.py still uses distutils - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (zero? (system* "./run_tests.py" "--unit"))))))) - ;; A Nyx home page is ‘being worked on’. Use Arm's for now, which at - ;; least mentions the new source repository: - (home-page "http://www.atagar.com/arm/") - (synopsis "Tor relay status monitor") - (description "Nyx (formerly Anonymizing Relay Monitor or \"arm\") -monitors the performance of relays participating in the + (package + (name "nyx") + (version "2.0.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri name version)) + (patches + (search-patches "nyx-show-header-stats-with-python3.patch")) + (sha256 + (base32 + "0pm7vfcqr02pzqz4b2f6sw5prxxmgqwr1912am42xmy2i53n7nrq")))) + (build-system python-build-system) + (inputs + `(("python-stem" ,python-stem))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-man-page + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (man (string-append out "/share/man"))) + (install-file "nyx.1" (string-append man "/man1")) + #t))) + (add-after 'install 'install-sample-configuration + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (string-append out "/share/doc/" ,name "-" ,version))) + (install-file "web/nyxrc.sample" doc) + #t)))) + ;; XXX The tests seem to require more of a real terminal than the build + ;; environment provides: + ;; _curses.error: setupterm: could not find terminal + ;; With TERM=linux, the tests try to move the cursor and still fail: + ;; _curses.error: cbreak() returned ERR + #:tests? #f)) + (home-page "https://nyx.torproject.org/") + (synopsis "Tor relay status monitor") + (description + "Nyx monitors the performance of relays participating in the @uref{https://www.torproject.org/, Tor anonymity network}. It displays this information visually and in real time, using a curses-based terminal interface. This makes Nyx well-suited for remote shell connections and servers without a @@ -316,4 +311,4 @@ statistics and status reports on: @end enumerate Potential client and exit connections are scrubbed of sensitive information.") - (license license:gpl3+)))) + (license license:gpl3+))) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 5487298929..86d6afef3e 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages documentation) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages check) @@ -144,14 +145,14 @@ as well as the classic centralized workflow.") (name "git") ;; XXX When updating Git, check if the special 'git:src' input to cgit needs ;; to be updated as well. - (version "2.17.1") + (version "2.18.0") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "0pm6bdnrrm165k3krnazxcxadifk2gqi30awlbcf9fism1x6w4vr")))) + "14hfwfkrci829a9316hnvkglnqqw1p03cw9k56p4fcb078wbwh4b")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -164,7 +165,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "0m7grrwsqaihdgcgaicxiy4rlqjpa75n5wl6hi2qhi33xa34gmc3")))))) + "15k04s9pcc5wkmlfa8x99nbgczjbx0c91767ciqmjy9kwsavxqws")))))) (inputs `(("curl" ,curl) ("expat" ,expat) @@ -173,6 +174,10 @@ as well as the classic centralized workflow.") ("python" ,python-2) ; CAVEAT: incompatible with python-3 according to INSTALL ("zlib" ,zlib) + ;; Note: we keep this in inputs rather than native-inputs to work around + ;; a problem in 'patch-shebangs'; see . + ("bash-for-tests" ,bash) + ;; For 'gitweb.cgi' ("perl-cgi" ,perl-cgi) @@ -191,14 +196,28 @@ as well as the classic centralized workflow.") (outputs '("out" ; the core "send-email" ; for git-send-email "svn" ; git-svn + "credential-netrc" ; git-credential-netrc "gui")) ; gitk, git gui (arguments `(#:make-flags `("V=1" ;more verbose compilation + ,(string-append "SHELL_PATH=" + (assoc-ref %build-inputs "bash") + "/bin/sh") + + ;; Tests require a bash with completion support. + ,(string-append "TEST_SHELL_PATH=" + (assoc-ref %build-inputs "bash-for-tests") + "/bin/bash") + ;; By default 'make install' creates hard links for ;; things in 'libexec/git-core', which leads to huge ;; nars; see . "NO_INSTALL_HARDLINKS=indeed") + + ;; Make sure the full bash does not end up in the final closure. + #:disallowed-references (,bash) + #:test-target "test" ;; Tests fail randomly when parallel: . @@ -211,13 +230,23 @@ as well as the classic centralized workflow.") "/bin/wish8.6")) ; XXX #:modules ((srfi srfi-1) + (srfi srfi-26) ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases + (add-after 'unpack 'modify-PATH + (lambda* (#:key inputs #:allow-other-keys) + (let ((path (string-split (getenv "PATH") #\:)) + (bash-full (assoc-ref inputs "bash-for-tests"))) + ;; Drop the test bash from PATH so that (which "sh") and + ;; similar does the right thing. + (setenv "PATH" (string-join + (remove (cut string-prefix? bash-full <>) path) + ":")) + #t))) (add-after 'configure 'patch-makefiles (lambda _ (substitute* "Makefile" - (("/bin/sh") (which "sh")) (("/usr/bin/perl") (which "perl")) (("/usr/bin/python") (which "python"))) #t)) @@ -274,6 +303,12 @@ as well as the classic centralized workflow.") (copy-file "contrib/completion/git-completion.bash" (string-append completions "/git")) #t))) + (add-after 'install 'install-credential-netrc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((netrc (assoc-ref outputs "credential-netrc"))) + (install-file "contrib/credential/netrc/git-credential-netrc" + (string-append netrc "/bin")) + #t))) (add-after 'install 'split (lambda* (#:key inputs outputs #:allow-other-keys) ;; Split the binaries to the various outputs. @@ -416,7 +451,7 @@ everything from small to very large projects with speed and efficiency.") #t)) ;; Run checks more verbosely. (replace 'check - (lambda _ (zero? (system* "./libgit2_clar" "-v" "-Q"))))))) + (lambda _ (invoke "./libgit2_clar" "-v" "-Q")))))) (inputs `(("libssh2" ,libssh2) ("http-parser" ,http-parser) @@ -459,12 +494,12 @@ write native speed custom Git applications in any language with bindings.") (delete 'configure) (replace 'build (lambda _ - (zero? (system* "make")))) + (invoke "make"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (zero? (system* "make" "install" - (string-append "PREFIX=" out))))))))) + (invoke "make" "install" + (string-append "PREFIX=" out)))))))) (home-page "https://www.agwa.name/projects/git-crypt") (synopsis "Transparent encryption of files in a git repository") (description "git-crypt enables transparent encryption and decryption of @@ -544,9 +579,8 @@ collaboration using typical untrusted file hosts or services.") (add-after 'unpack 'unpack-git (lambda* (#:key inputs #:allow-other-keys) ;; Unpack the source of git into the 'git' directory. - (zero? (system* - "tar" "--strip-components=1" "-C" "git" "-xf" - (assoc-ref inputs "git:src"))))) + (invoke "tar" "--strip-components=1" "-C" "git" "-xf" + (assoc-ref inputs "git:src")))) (add-after 'unpack 'patch-absolute-file-names (lambda* (#:key inputs #:allow-other-keys) (define (quoted-file-name input path) @@ -577,21 +611,20 @@ collaboration using typical untrusted file hosts or services.") (delete 'configure) ; no configure script (add-after 'build 'build-man (lambda* (#:key make-flags #:allow-other-keys) - (zero? (apply system* `("make" ,@make-flags "doc-man"))))) + (apply invoke "make" "doc-man" make-flags))) (replace 'install (lambda* (#:key make-flags outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (and (zero? (apply system* - `("make" ,@make-flags - ,(string-append "prefix=" out) - ,(string-append - "CGIT_SCRIPT_PATH=" out "/share/cgit") - "install" "install-man"))) - ;; Move the platform-dependent 'cgit.cgi' into lib - ;; to get it stripped. - (rename-file (string-append out "/share/cgit/cgit.cgi") - (string-append out "/lib/cgit/cgit.cgi")) - #t)))) + (apply invoke + "make" "install" "install-man" + (string-append "prefix=" out) + (string-append "CGIT_SCRIPT_PATH=" out "/share/cgit") + make-flags) + ;; Move the platform-dependent 'cgit.cgi' into lib to get it + ;; stripped. + (rename-file (string-append out "/share/cgit/cgit.cgi") + (string-append out "/lib/cgit/cgit.cgi")) + #t))) (add-after 'install 'wrap-python-scripts (lambda* (#:key outputs #:allow-other-keys) (for-each @@ -879,7 +912,7 @@ lot easier.") ;; two tests will fail -> disable them. TODO: fix the failing tests (delete-file "t/t3300-edit.sh") (delete-file "t/t7504-commit-msg-hook.sh") - (zero? (system* "make" "test"))))))) + (invoke "make" "test")))))) (home-page "http://procode.org/stgit/") (synopsis "Stacked Git") (description @@ -1432,7 +1465,8 @@ accessed and migrated on modern systems.") "libaegis/getpw_cache.cc") (find-files "test" "\\.sh")) (("/bin/sh") (which "sh"))) - (setenv "SH" (which "sh")))) + (setenv "SH" (which "sh")) + #t)) (replace 'check (lambda _ (let ((home (string-append (getcwd) "/my-new-home"))) @@ -1440,12 +1474,20 @@ accessed and migrated on modern systems.") (mkdir home) (setenv "HOME" home) - ;; This test assumes that flex has been symlinked to "lex". + ;; This test assumes that flex has been symlinked to "lex". (substitute* "test/00/t0011a.sh" (("type lex") "type flex")) + ;; XXX Disable tests that fail, for unknown reasons, ‘for now’. + (for-each + (lambda (test) (substitute* "Makefile" + (((string-append "test/" test "\\.ES ")) ""))) + (list "00/t0011a" + "00/t0049a" + "01/t0196a")) + ;; The author decided to call the check rule "sure". - (zero? (system* "make" "sure")))))))) + (invoke "make" "sure"))))))) (home-page "http://aegis.sourceforge.net") (synopsis "Project change supervisor") (description "Aegis is a project change supervisor, and performs some of @@ -1862,9 +1904,10 @@ unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}. (add-after 'build 'add-properties (lambda* (#:key jar-name #:allow-other-keys) (with-directory-excursion "src" - (zero? (apply system* "jar" "-uf" - (string-append "../build/jar/" jar-name) - (find-files "." "\\.properties$"))))))))) + (apply invoke "jar" "-uf" + (string-append "../build/jar/" jar-name) + (find-files "." "\\.properties$"))) + #t))))) (inputs `(("java-classpathx-servletapi" ,java-classpathx-servletapi) ("java-javaewah" ,java-javaewah) @@ -1911,7 +1954,7 @@ network protocols, and core version control algorithms.") (define-public gource (package (name "gource") - (version "0.48") + (version "0.49") (source (origin (method url-fetch) (uri (string-append @@ -1919,7 +1962,7 @@ network protocols, and core version control algorithms.") "/gource-" version "/gource-" version ".tar.gz")) (sha256 (base32 - "04qxcm05qiyr9rg2kv6abfy7kkzqr8ziw4iyp1d14lniv93m61dp")))) + "12hf5ipcsp9dxsqn84n4kr63xaiskrnf5a084wr29qk171lj7pd9")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -1999,7 +2042,7 @@ directory full of HOWTOs.") (define-public git-annex (package (name "git-annex") - (version "6.20170818") + (version "6.20180626") (source (origin (method url-fetch) @@ -2007,7 +2050,7 @@ directory full of HOWTOs.") "git-annex/git-annex-" version ".tar.gz")) (sha256 (base32 - "0ybxixbqvy4rx6mq9s02rh349rbr04hb17z4bfayin0qwa5kzpvx")))) + "0vq3x9p4h3m266pcm2r3m9p51pz5z9zskh7z5nk0adh33j30xf7q")))) (build-system haskell-build-system) (arguments `(#:configure-flags @@ -2101,6 +2144,7 @@ directory full of HOWTOs.") ("ghc-split" ,ghc-split) ("ghc-stm" ,ghc-stm) ("ghc-stm-chans" ,ghc-stm-chans) + ("ghc-tagsoup" ,ghc-tagsoup) ("ghc-text" ,ghc-text) ("ghc-unix-compat" ,ghc-unix-compat) ("ghc-unordered-containers" ,ghc-unordered-containers) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 51ca1c0ce5..2b8f3e18d2 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -25,6 +25,7 @@ ;;; Copyright © 2018 Roel Janssen ;;; Copyright © 2018 Marius Bakke ;;; Copyright © 2018 Pierre Neidhardt +;;; Copyright © 2018 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; @@ -44,6 +45,7 @@ (define-module (gnu packages video) #:use-module (ice-9 match) #:use-module (srfi srfi-1) + #:use-module (srfi srfi-26) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix utils) #:use-module (guix packages) @@ -122,6 +124,7 @@ #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) + #:use-module (gnu packages time) #:use-module (gnu packages upnp) #:use-module (gnu packages version-control) #:use-module (gnu packages vulkan) @@ -393,6 +396,7 @@ and creating Matroska files from other media files (@code{mkvmerge}).") (sha256 (base32 "0qx8mavwdzdpkkby7n29i9av7zsnklavacwfz537mf62q2pzjnbf")) + (patches (search-patches "x265-fix-ppc64le-build.patch")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "source/compat/getopt") @@ -401,7 +405,9 @@ and creating Matroska files from other media files (@code{mkvmerge}).") (arguments `(#:tests? #f ; tests are skipped if cpu-optimized code isn't built ;; Currently the source code doesn't check for aarch64. - ,@(if (string-prefix? "aarch64" (or (%current-target-system) (%current-system))) + ,@(if (any (cute string-prefix? <> (or (%current-system) + (%current-target-system))) + '("armhf" "aarch64")) '(#:configure-flags '("-DENABLE_PIC=TRUE")) '()) #:phases @@ -606,14 +612,14 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).") (define-public ffmpeg (package (name "ffmpeg") - (version "4.0") + (version "4.0.1") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "0gx4ngnhi5glmxh38603qy5n6vq8bl1cr4sqd1xff95i82pmv57d")))) + "1vn04n0n46zdxq14cma3w8ml2ckh5jxwlybsc4xmvcqdqq0mqpv0")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) @@ -1035,8 +1041,7 @@ treaming protocols.") (("#! /bin/sh") (string-append "#!" (which "sh")))) (setenv "SHELL" (which "bash")) (setenv "CONFIG_SHELL" (which "bash")) - (zero? (system* - "./configure" + (invoke "./configure" (string-append "--extra-cflags=-I" libx11 "/include") ; to detect libx11 "--disable-ffmpeg_a" ; disables bundled ffmpeg @@ -1058,7 +1063,7 @@ treaming protocols.") (or (%current-target-system) (nix-system->gnu-triplet (%current-system))))))) - "--disable-iwmmxt")))))))) + "--disable-iwmmxt"))))))) (home-page "https://www.mplayerhq.hu/design7/news.html") (synopsis "Audio and video player") (description "MPlayer is a movie player. It plays most MPEG/VOB, AVI, @@ -1218,7 +1223,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2018.05.09") + (version "2018.06.19") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1226,7 +1231,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "0sl4bi2jls3417rd62awbqdq1b6wskkjbfwpnyw4a61qarfxid1d")))) + "0ys2mc84r7mjpn7rykb57sn3ii1kp3divjdn2ivwqknj8jrzg3z6")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion @@ -1606,7 +1611,7 @@ device without having to bother about the decryption.") (synopsis "SubRip to WebVTT subtitle converter") (description "srt2vtt converts SubRip formatted subtitles to WebVTT format for use with HTML5 video.") - (home-page "http://dthompson.us/pages/software/srt2vtt") + (home-page "https://dthompson.us/projects/srt2vtt.html") (license license:gpl3+))) (define-public avidemux @@ -1761,10 +1766,9 @@ capabilities.") (arguments '(#:phases (modify-phases %standard-phases - (add-after - 'unpack 'autogen - (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (add-after 'unpack 'autogen + (lambda _ + (invoke "sh" "autogen.sh")))))) (home-page "http://www.vapoursynth.com/") (synopsis "Video processing framework") (description "VapourSynth is a C++ library and Python module for video @@ -1811,34 +1815,41 @@ and custom quantization matrices.") (license license:gpl2+))) (define-public streamlink - (package - (name "streamlink") - (version "0.11.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "streamlink" version)) - (sha256 - (base32 - "02h8b3k8l5zz4vjm0nhxvl1pm924jms8y7sjl40fbybrzvsa4mg2")))) - (build-system python-build-system) - (home-page "https://github.com/streamlink/streamlink") - (native-inputs - `(("python-pytest" ,python-pytest) - ("python-mock" ,python-mock) - ("python-requests-mock" ,python-requests-mock))) - (propagated-inputs - `(("python-pysocks" ,python-pysocks) - ("python-websocket-client" ,python-websocket-client) - ("python-iso3166" ,python-iso3166) - ("python-iso639" ,python-iso639) - ("python-pycryptodome" ,python-pycryptodome) - ("python-requests" ,python-requests) - ("python-urllib3" ,python-urllib3))) - (synopsis "Extract streams from various services") - (description "Streamlink is command-line utility that extracts streams + ;; Release tarball doesn't contain ‘tests/resources/dash/’ directory. + (let ((commit "2dca7930a938f60b48d8e23260963ea7c49d979f")) + (package + (name "streamlink") + (version (git-version "0.13.0" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/streamlink/streamlink.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0vq19aspshim63aj8yl2p64ykrbk2mwwlawdx427b3j2djlc5qhw")))) + (build-system python-build-system) + (home-page "https://github.com/streamlink/streamlink") + (native-inputs + `(("python-freezegun" ,python-freezegun) + ("python-pytest" ,python-pytest) + ("python-mock" ,python-mock) + ("python-requests-mock" ,python-requests-mock))) + (propagated-inputs + `(("python-pysocks" ,python-pysocks) + ("python-websocket-client" ,python-websocket-client) + ("python-iso3166" ,python-iso3166) + ("python-iso639" ,python-iso639) + ("python-isodate", python-isodate) + ("python-pycryptodome" ,python-pycryptodome) + ("python-requests" ,python-requests) + ("python-urllib3" ,python-urllib3))) + (synopsis "Extract streams from various services") + (description "Streamlink is command-line utility that extracts streams from sites like Twitch.tv and pipes them into a video player of choice.") - (license license:bsd-2))) + (license license:bsd-2)))) (define-public livestreamer (deprecated-package "livestreamer" streamlink)) @@ -1865,7 +1876,12 @@ from sites like Twitch.tv and pipes them into a video player of choice.") (add-before 'check 'check-setup (lambda _ (setenv "HOME" (getcwd)) ;Needs to write to ‘$HOME’. - #t))))) + #t)) + (add-after 'install 'install-rofi-plugin + (lambda* (#:key outputs #:allow-other-keys) + (install-file "plugins/rofi-twitchy" + (string-append (assoc-ref outputs "out") + "/bin"))))))) (inputs `(("python-requests" ,python-requests) ("streamlink" ,streamlink))) @@ -2187,10 +2203,11 @@ Other features include a live preview and live streaming.") "18yfkr70lr1x1hc8snn2ldnbzdcc7b64xmkqrfk8w59gpg7sl1xn")))) (build-system gnu-build-system) (arguments - `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autogen.sh - (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autogen.sh + (lambda _ + (invoke "sh" "autogen.sh")))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake))) @@ -2354,7 +2371,7 @@ supported players in addition to this package.") ;; Patch the Makefile so that it doesn't bootstrap again. (substitute* "gtk/module.rules" ((".*autogen\\.sh.*") "")) - (zero? (system* "sh" "./gtk/autogen.sh")))) + (invoke "sh" "./gtk/autogen.sh"))) (add-before 'configure 'disable-contrib (lambda _ (substitute* "make/include/main.defs" @@ -2376,9 +2393,9 @@ supported players in addition to this package.") ;; errors on unrecognized arguments, ;; e.g. --enable-fast-install (let ((out (assoc-ref outputs "out"))) - (zero? (apply system* "./configure" - (string-append "--prefix=" out) - (or configure-flags '())))))) + (apply invoke "./configure" + (string-append "--prefix=" out) + (or configure-flags '()))))) (add-after 'configure 'chdir-build (lambda _ (chdir "./build") #t))))) (home-page "https://handbrake.fr") @@ -2511,7 +2528,7 @@ practically any type of media.") #t)) (add-after 'change-to-build-dir 'autogen (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (home-page "https://mediaarea.net/en/MediaInfo") (synopsis "Library for retrieving media metadata") (description "MediaInfo is a library used for retrieving technical @@ -2570,7 +2587,7 @@ MPEG-2, MPEG-4, DVD (VOB)... #t)) (add-after 'change-to-build-dir 'autogen (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (home-page "https://mediaarea.net/en/MediaInfo") (synopsis "Utility for reading media metadata") (description "MediaInfo is a utility used for retrieving technical @@ -2612,8 +2629,8 @@ many codecs and formats supported by libmediainfo.") #t)) (replace 'configure (lambda _ - (zero? (system* "./genMakefiles" - "linux-with-shared-libraries"))))))) + (invoke "./genMakefiles" + "linux-with-shared-libraries")))))) (home-page "http://www.live555.com/liveMedia/") (synopsis "Set of C++ libraries for multimedia streaming") (description "This code forms a set of C++ libraries for multimedia @@ -2810,8 +2827,8 @@ alpha blending etc).") (modify-phases %standard-phases (add-after 'unpack 'autotools (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) - ;; TODO: opencv for additional face detection filters + (invoke "sh" "autogen.sh")))))) + ;; TODO: opencv for additional face detection filters. (inputs `(("gavl" ,gavl) ("cairo" ,cairo))) @@ -2958,3 +2975,27 @@ format and some of its derived file formats, including MP4. It operates as a multiplexer and demultiplexer, and can mux video and audio in several formats using standalone executable files.") (license license:isc))) + +(define-public qtfaststart + (package + (name "qtfaststart") + (version "1.8") + (source (origin + (method url-fetch) + (uri (pypi-uri "qtfaststart" version)) + (sha256 + (base32 + "0hcjfik8hhb1syqvyh5c6aillpvzal26nkjflcq1270z64aj6i5h")))) + (build-system python-build-system) + (arguments + '(#:tests? #f)) ; no test suite + (synopsis "Move QuickTime and MP4 metadata to the beginning of the file") + (description "qtfaststart enables streaming and pseudo-streaming of +QuickTime and MP4 files by moving metadata and offset information to the +beginning of the file. It can also print some useful information about the +structure of the file. This program is based on qt-faststart.c from the FFmpeg +project, which is released into the public domain, as well as ISO 14496-12:2005 +(the official spec for MP4), which can be obtained from the ISO or found +online.") + (home-page "https://github.com/danielgtaylor/qtfaststart") + (license license:expat))) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 76240d85f1..c6906b12cf 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -450,59 +450,57 @@ trouble using them, because you do not have to remember each snippet name.") (home-page "https://github.com/Shougo/context_filetype.vim") (license license:expat)))) ; ??? check again -;; The 2.2 release was in 2015, no new releases planned. (define-public vim-fugitive - (let ((commit "de6c05720cdf74c0218218d7207f700232a5b6dc") - (revision "1")) - (package - (name "vim-fugitive") - (version (string-append "2.2-" revision "." (string-take commit 7))) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/tpope/vim-fugitive.git") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "0zg9vv7hirnx45vc2mwgg0xijmwwz55bssyd6cpdz71wbhrcpxxb")))) - (build-system gnu-build-system) - (arguments - '(#:tests? #f - #:phases - (modify-phases %standard-phases - (delete 'configure) - (delete 'build) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (vimfiles (string-append out "/share/vim/vimfiles")) - (doc (string-append vimfiles "/doc")) - (plugin (string-append vimfiles "/plugin"))) - (copy-recursively "doc" doc) - (copy-recursively "plugin" plugin) - #t)))))) - (home-page "https://github.com/tpope/vim-fugitive") - (synopsis "Vim plugin to work with Git") - (description "Vim-fugitive is a wrapper for Vim that complements the + (package + (name "vim-fugitive") + (version "2.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tpope/vim-fugitive.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17s94a8g5z0lrs7yy4nyqyvp9ykys5ws2ar3m3c0bjsn0iazd7m3")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (vimfiles (string-append out "/share/vim/vimfiles")) + (doc (string-append vimfiles "/doc")) + (plugin (string-append vimfiles "/plugin"))) + (copy-recursively "doc" doc) + (copy-recursively "plugin" plugin) + #t)))))) + (home-page "https://github.com/tpope/vim-fugitive") + (synopsis "Vim plugin to work with Git") + (description "Vim-fugitive is a wrapper for Vim that complements the command window, where you can stage and review your changes before the next commit or run any Git arbitrary command.") - (license license:vim)))) ; distributed under the same license as vim + (license license:vim))) ; distributed under the same license as vim (define-public vim-airline (package (name "vim-airline") - (version "0.8") + (version "0.9") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/vim-airline/vim-airline/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/vim-airline/vim-airline") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "053sfq3jmgdc5y7zbg6jrk7r2hp0raj3y3mxa2h1c1bnkb6wvcaz")))) + "0hq3304rhakx7x1v7wll7gxinmfz6561bq97qpj8jrk19rhcab75")))) (build-system gnu-build-system) (arguments `(#:tests? #f @@ -575,16 +573,17 @@ and powerline symbols, etc.") (define-public vim-syntastic (package (name "vim-syntastic") - (version "3.8.0") + (version "3.9.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/vim-syntastic/syntastic/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/vim-syntastic/syntastic") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0wsnd9bsp5x6yiw96h1bnd1vyxdkh130hb82kyyxydgsplx92ima")))) + "121a1mxgfng2y5zmivyyk02mca8pyw72crivf4f1q9nhn0barf57")))) (build-system gnu-build-system) (arguments `(#:tests? #f diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 05d2ab0b87..ebc57dc369 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -45,13 +45,16 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnupg) #:use-module (gnu packages golang) #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) #:use-module (gnu packages ncurses) + #:use-module (gnu packages nettle) #:use-module (gnu packages networking) + #:use-module (gnu packages package-management) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages polkit) @@ -63,6 +66,7 @@ #:use-module (gnu packages sdl) #:use-module (gnu packages spice) #:use-module (gnu packages texinfo) + #:use-module (gnu packages textutils) #:use-module (gnu packages tls) #:use-module (gnu packages web) #:use-module (gnu packages xdisorg) @@ -71,6 +75,7 @@ #:use-module (guix build-system go) #:use-module (guix build-system python) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:select (gpl2 gpl2+ gpl3+ lgpl2.1 lgpl2.1+ asl2.0)) #:use-module (guix packages) @@ -95,6 +100,7 @@ (method url-fetch) (uri (string-append "https://download.qemu.org/qemu-" version ".tar.xz")) + (patches (search-patches "qemu-CVE-2018-11806.patch")) (sha256 (base32 "1z66spkm1prvhbq7h5mfnp0i6mmamsb938fqmdfvyrgzc7rh34z6")))) @@ -124,28 +130,27 @@ ;; The binaries need to be linked against -lrt. (setenv "LDFLAGS" "-lrt") - (zero? - (apply system* - `("./configure" - ,(string-append "--cc=" (which "gcc")) - ;; Some architectures insist on using HOST_CC - ,(string-append "--host-cc=" (which "gcc")) - "--disable-debug-info" ; save build space - "--enable-virtfs" ; just to be sure - ,(string-append "--prefix=" out) - ,(string-append "--sysconfdir=/etc") - ,@configure-flags)))))) + (apply invoke + `("./configure" + ,(string-append "--cc=" (which "gcc")) + ;; Some architectures insist on using HOST_CC + ,(string-append "--host-cc=" (which "gcc")) + "--disable-debug-info" ; save build space + "--enable-virtfs" ; just to be sure + ,(string-append "--prefix=" out) + ,(string-append "--sysconfdir=/etc") + ,@configure-flags))))) (add-after 'install 'install-info (lambda* (#:key inputs outputs #:allow-other-keys) ;; Install the Info manual, unless Texinfo is missing. - (or (not (assoc-ref inputs "texinfo")) - (let ((out (assoc-ref outputs "out"))) - (and (zero? (system* "make" "info")) - (let ((infodir (string-append out "/share/info"))) - (for-each (lambda (info) - (install-file info infodir)) - (find-files "." "\\.info")) - #t)))))) + (when (assoc-ref inputs "texinfo") + (let* ((out (assoc-ref outputs "out")) + (dir (string-append out "/share/info"))) + (invoke "make" "info") + (for-each (lambda (info) + (install-file info dir)) + (find-files "." "\\.info")))) + #t)) ;; Create a wrapper for Samba. This allows QEMU to use Samba without ;; pulling it in as an input. Note that you need to explicitly install ;; Samba in your Guix profile for Samba support. @@ -337,7 +342,7 @@ all common programming languages. Vala bindings are also provided.") (define-public lxc (package (name "lxc") - (version "2.1.1") + (version "3.0.1") (source (origin (method url-fetch) (uri (string-append @@ -345,7 +350,7 @@ all common programming languages. Vala bindings are also provided.") version ".tar.gz")) (sha256 (base32 - "1xpghrinxhm2072fwmn42pxhjwh7qx6cbsipw4s6g38a8mkklrk8")))) + "1nyml98k28sc5sda0260cmby4irkpnhpwgmx4yhqy10wpr4nr625")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -364,14 +369,13 @@ all common programming languages. Vala bindings are also provided.") (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bashcompdir (string-append out "/etc/bash_completion.d"))) - (zero? (system* - "make" "install" + (invoke "make" "install" (string-append "bashcompdir=" bashcompdir) ;; Don't install files into /var and /etc. "LXCPATH=/tmp/var/lib/lxc" "localstatedir=/tmp/var" "sysconfdir=/tmp/etc" - "sysconfigdir=/tmp/etc/default")))))))) + "sysconfigdir=/tmp/etc/default"))))))) (synopsis "Linux container tools") (home-page "https://linuxcontainers.org/") (description @@ -766,7 +770,7 @@ Machine Protocol.") (define-public lookingglass (package (name "lookingglass") - (version "a10") + (version "a11") (source (origin (method url-fetch) @@ -775,7 +779,7 @@ Machine Protocol.") (file-name (string-append name "-" version)) (sha256 (base32 - "0zlxg9ibzr0a598wr5nl1pb4l7mzsqn8ip72v4frph0vwsm5il6c")))) + "11qwyp332l66sqksqa0z9439yi4accmbq7wjc6kikc5fimdh9wk5")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) ("glu" ,glu) @@ -784,9 +788,12 @@ Machine Protocol.") ("sdl2" ,sdl2) ("sdl2-ttf" ,sdl2-ttf) ("spice-protocol" ,spice-protocol))) - (native-inputs `(("pkg-config" ,pkg-config))) + (native-inputs `(("libconfig" ,libconfig) + ("nettle" ,nettle) + ("pkg-config" ,pkg-config))) (arguments `(#:tests? #f ;; No tests are available. + #:make-flags '("CC=gcc") #:phases (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys) @@ -864,3 +871,110 @@ packaged according to the Container Initiative (OCI) format} and is a compliant implementation of the Open Container Initiative specification.") (license asl2.0))) + +(define-public umoci + (package + (name "umoci") + (version "0.4.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/openSUSE/umoci/releases/download/v" + version "/umoci.tar.xz")) + (file-name (string-append "umoci-" version ".tar.xz")) + (sha256 + (base32 + "0hg7hs4dagj2fgymm4b4s68k1v2k2093s3jg0d94j0ixhfmyg9nd")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/openSUSE/umoci" + #:install-source? #f + #:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source import-path #:allow-other-keys) + ;; Unpack the tarball into 'umoci' instead of "runc-${version}". + (let ((dest (string-append "src/" import-path))) + (mkdir-p dest) + (invoke "tar" "-C" (string-append "src/" import-path) + "--strip-components=1" + "-xvf" source)))) + (replace 'build + (lambda* (#:key import-path #:allow-other-keys) + (chdir (string-append "src/" import-path)) + ;; TODO: build manpages with 'go-md2man'. + (invoke "make" "SHELL=bash"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bindir (string-append out "/bin"))) + (install-file "umoci" bindir) + #t)))))) + (home-page "https://umo.ci/") + (synopsis "Tool for modifying Open Container images") + (description + "@command{umoci} is a tool that allows for high-level modification of an +Open Container Initiative (OCI) image layout and its tagged images.") + (license asl2.0))) + +(define-public skopeo + (package + (name "skopeo") + (version "0.1.28") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/projectatomic/skopeo") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "068nwrr3nr27alravcq1sxyhdd5jjr24213vdgn1dqva3885gbi0")))) + (build-system go-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("btrfs-progs" ,btrfs-progs) + ("eudev" ,eudev) + ("libassuan" ,libassuan) + ("libselinux" ,libselinux) + ("libostree" ,libostree) + ("lvm2" ,lvm2) + ("glib" ,glib) + ("gpgme" ,gpgme))) + (arguments + '(#:import-path "github.com/projectatomic/skopeo" + #:install-source? #f + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda* (#:key import-path #:allow-other-keys) + (chdir (string-append "src/" import-path)) + ;; TODO: build manpages with 'go-md2man'. + (invoke "make" "binary-local"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (invoke "make" "install-binary" "install-completions" + (string-append "PREFIX=" out)))))))) + (home-page "https://github.com/projectatomic/skopeo") + (synopsis "Interact with container images and container image registries") + (description + "@command{skopeo} is a command line utility providing various operations +with container images and container image registries. It can: +@enumerate + +@item Copy container images between various containers image stores, +converting them as necessary. + +@item Convert a Docker schema 2 or schema 1 container image to an OCI image. + +@item Inspect a repository on a container registry without needlessly pulling +the image. + +@item Sign and verify container images. + +@item Delete container images from a remote container registry. + +@end enumerate") + (license asl2.0))) diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index fb06196ec4..85bbe7e9c6 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -122,10 +122,10 @@ Only \"Universal TUN/TAP device driver support\" is needed in the kernel.") (home-page "http://www.unix-ag.uni-kl.de/~massar/vpnc/"))) (define-public vpnc-scripts - (let ((commit "6f87b0fe7b20d802a0747cc310217920047d58d3")) + (let ((commit "07c3518dd6b8dc424e9c3650a62bed994a4dcbe1")) (package (name "vpnc-scripts") - (version (string-append "20161214." (string-take commit 7))) + (version (string-append "20180226." (string-take commit 7))) (source (origin (method git-fetch) (uri @@ -135,7 +135,7 @@ Only \"Universal TUN/TAP device driver support\" is needed in the kernel.") (file-name (git-file-name name version)) (sha256 (base32 - "0pa36w4wlyyvfb66cayhans99wsr2j5si2fvfr7ldfm512ajwn8h")))) + "02d29nrmnj6kfa889cavqn1pkn9ssb5gyp4lz1v47spwx7abpdi7")))) (build-system gnu-build-system) (inputs `(("coreutils" ,coreutils) ("grep" ,grep) @@ -161,7 +161,7 @@ Only \"Universal TUN/TAP device driver support\" is needed in the kernel.") (delete 'configure) ; no configure script (replace 'build (lambda _ - (zero? (system* "gcc" "-o" "netunshare" "netunshare.c")))) + (invoke "gcc" "-o" "netunshare" "netunshare.c"))) (replace 'install ;; There is no Makefile; manually install the relevant files. (lambda* (#:key outputs #:allow-other-keys) @@ -193,7 +193,8 @@ Only \"Universal TUN/TAP device driver support\" is needed in the kernel.") "sed" "which"))))) (find-files (string-append out "/etc/vpnc/vpnc-script") - "^vpnc-script")))))) + "^vpnc-script")) + #t)))) #:tests? #f)) ; no tests (home-page "http://git.infradead.org/users/dwmw2/vpnc-scripts.git") (synopsis "Network configuration scripts for Cisco VPN clients") diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 62c5d500ff..c83bfdd0c9 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -24,21 +24,26 @@ #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages bison) + #:use-module (gnu packages check) #:use-module (gnu packages cmake) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) #:use-module (gnu packages gl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages wine) #:use-module (gnu packages xorg)) (define-public spirv-headers ;; Keep updated in accordance with ;; https://github.com/google/shaderc/blob/known-good/known_good.json - (let ((commit "061097878467b8e040fbf153a837d844ef9f9f96") - (revision "2")) + (let ((commit "3ce3e49d73b8abbf2ffe33f829f941fb2a40f552") + (revision "3")) (package (name "spirv-headers") (version (string-append "0.0-" revision "." (string-take commit 9))) @@ -50,7 +55,7 @@ (commit commit))) (sha256 (base32 - "0bf9h6xc5fkncxnadwmqvpsjh7sdgns6is8prv1gvlfzrkvpjj17")) + "0yk4bzqifdqpmdxkhvrxbdqhf5ngkga0ig1yyz7khr7rklqfz7wp")) (file-name (string-append name "-" version "-checkout")))) (build-system cmake-build-system) (arguments @@ -58,10 +63,10 @@ #:phases (modify-phases %standard-phases (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "cmake" "-E" "copy_directory" + (invoke "cmake" "-E" "copy_directory" "../source/include/spirv" (string-append (assoc-ref outputs "out") - "/include/spirv")))))))) + "/include/spirv"))))))) (home-page "https://github.com/KhronosGroup/SPIRV-Headers") (synopsis "Machine-readable files from the SPIR-V Registry") (description @@ -80,8 +85,8 @@ and for the GLSL.std.450 extended instruction set. (define-public spirv-tools ;; Keep updated in accordance with ;; https://github.com/google/shaderc/blob/known-good/known_good.json - (let ((commit "90862fe4b1c6763b32ce683d2d32c2f281f577cf") - (revision "1")) + (let ((commit "fe2fbee294a8ad4434f828a8b4d99eafe9aac88c") + (revision "2")) (package (name "spirv-tools") (version (string-append "0.0-" revision "." (string-take commit 9))) @@ -93,14 +98,12 @@ and for the GLSL.std.450 extended instruction set. (commit commit))) (sha256 (base32 - "1yq8ab6f52wcxm2azzmx70nqz8l35izd45830aikjkk1jfzmzabb")) + "03rq4ypwqnz34n8ip85n95a3b9rxb34j26azzm3b3invaqchv19x")) (file-name (string-append name "-" version "-checkout")))) (build-system cmake-build-system) (arguments - `(#:configure-flags (list (string-append "-DCMAKE_INSTALL_LIBDIR=" - (assoc-ref %outputs "out") - "/lib") - (string-append "-DSPIRV-Headers_SOURCE_DIR=" + `(#:tests? #f ; FIXME: Tests fail. + #:configure-flags (list (string-append "-DSPIRV-Headers_SOURCE_DIR=" (assoc-ref %build-inputs "spirv-headers"))))) (inputs `(("spirv-headers" ,spirv-headers))) @@ -117,8 +120,8 @@ disassembler, validator, and optimizer for SPIR-V.") (define-public glslang ;; Keep updated in accordance with ;; https://github.com/google/shaderc/blob/known-good/known_good.json - (let ((commit "b5b08462442239e6537315ea1405b6afcd53043e") - (revision "2")) + (let ((commit "32d3ec319909fcad0b2b308fe1635198773e8316") + (revision "3")) (package (name "glslang") (version (string-append "3.0-" revision "." (string-take commit 9))) @@ -130,7 +133,7 @@ disassembler, validator, and optimizer for SPIR-V.") (commit commit))) (sha256 (base32 - "08imby3hciisshzacrkx8s56lx4fxm7dad06xxaxxcapinmqrvwk")) + "1kmgjv5kbrjy6azpgwnjcn3cj8vg5i8hnyk3m969sc0gq2j1rbjj")) (file-name (string-append name "-" version "-checkout")))) (build-system cmake-build-system) (arguments @@ -209,9 +212,12 @@ and the ICD.") (license:x11-style "file://COPYRIGHT.txt") license:bsd-3)))) +(define-public vulkan-icd-loader + (deprecated-package "vulkan-icd-loader" vulkan-loader)) + (define-public shaderc - (let ((commit "773ec22d49f40b7161820f29d953be4a7e40190d") - (revision "1")) + (let ((commit "be8e0879750303a1de09385465d6b20ecb8b380d") + (revision "2")) (package (name "shaderc") (version (git-version "0.0.0" revision commit)) @@ -224,10 +230,10 @@ and the ICD.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0b41inb1czxv3mciip0lfdxv19ccx2ys31fivfywjn2q8va1gd1f")))) + "16p25ry2i4zrj00zihfpf210f8xd7g398ffbw25igvi9mbn4nbfd")))) (build-system meson-build-system) (arguments - `(#:tests? #f ; tests don't work yet. + `(#:tests? #f ; FIXME: Tests fail. #:phases (modify-phases %standard-phases (replace 'configure @@ -266,7 +272,8 @@ and the ICD.") (copy-recursively glslang-source "third_party/glslang") #t)))))) (inputs - `(("python" ,python))) + `(("googletest" ,googletest) + ("python" ,python))) (native-inputs `(("cmake" ,cmake) ("glslang-source" ,(package-source glslang)) @@ -278,3 +285,43 @@ and the ICD.") (description "Shaderc is a collection of tools, libraries, and tests for shader compilation.") (license license:asl2.0)))) + +(define-public vkd3d + (let ((commit "020c119e2da0786d8be0615cff961c190b00d62d") ; Release 1.0. + (revision "0")) + (package + (name "vkd3d") + (version "1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://source.winehq.org/git/vkd3d.git") + (commit commit))) + (sha256 + (base32 + "084svxhigs8r0725jv6gs7wwrxb9x4igyg5bgvgpcfw4aq0k69gn")) + (file-name (string-append name "-" version "-checkout")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags '("--with-spirv-tools"))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext" ,gnu-gettext) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (inputs + `(("libx11" ,libx11) + ("libxcb" ,libxcb) + ("spirv-headers" ,spirv-headers) + ("spirv-tools" ,spirv-tools) + ("vulkan-loader" ,vulkan-loader) + ("wine" ,wine) ; Needed for 'widl'. + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm))) + (home-page "https://source.winehq.org/git/vkd3d.git/") + (synopsis "Direct3D 12 to Vulkan translation library") + (description "vkd3d is a library for translating Direct3D 12 to Vulkan.") + (license license:lgpl2.1)))) diff --git a/gnu/packages/w3m.scm b/gnu/packages/w3m.scm index 4e3264a47e..a8761ec602 100644 --- a/gnu/packages/w3m.scm +++ b/gnu/packages/w3m.scm @@ -42,10 +42,9 @@ (version "0.5.3+git20180125") (source (origin (method git-fetch) - ;; Debian's fork of w3m is the only one that is still - ;; maintained. + ;; Debian's fork of w3m is the only one that is still maintained. (uri (git-reference - (url "https://anonscm.debian.org/cgit/collab-maint/w3m.git") + (url "https://salsa.debian.org/debian/w3m.git") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index fcfc9b0b90..5b22b895c6 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -26,6 +26,7 @@ ;;; Copyright © 2017 Rutger Helling ;;; Copyright © 2018 Julien Lepiller ;;; Copyright © 2018 Pierre-Antoine Rouby +;;; Copyright © 2018 Gábor Boskovits ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,6 +62,7 @@ #:use-module (guix build-system ant) #:use-module (guix build-system scons) #:use-module (gnu packages) + #:use-module (gnu packages admin) #:use-module (gnu packages adns) #:use-module (gnu packages apr) #:use-module (gnu packages check) @@ -93,6 +95,7 @@ #:use-module (gnu packages libevent) #:use-module (gnu packages libidn) #:use-module (gnu packages libunistring) + #:use-module (gnu packages linux) #:use-module (gnu packages lisp) #:use-module (gnu packages lua) #:use-module (gnu packages markup) @@ -1025,17 +1028,16 @@ hash/signatures.") (define-public libyaml (package (name "libyaml") - (version "0.1.6") + (version "0.1.7") (source (origin (method url-fetch) (uri (string-append "http://pyyaml.org/download/libyaml/yaml-" version ".tar.gz")) - (patches (search-patches "libyaml-CVE-2014-9130.patch")) (sha256 (base32 - "0j9731s5zjb8mjx7wzf6vh7bsqi38ay564x6s9nri2nh9cdrg9kx")))) + "0a87931cx5m14a1x8rbjix3nz7agrcgndf4h392vm62a4rby9240")))) (build-system gnu-build-system) (home-page "http://pyyaml.org/wiki/LibYAML") (synopsis "YAML 1.1 parser and emitter written in C") @@ -1846,31 +1848,27 @@ MIME type directly to the browser, without being processed through Catalyst.") (define-public perl-catalyst-runtime (package (name "perl-catalyst-runtime") - (version "5.90115") + (version "5.90118") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/" + (uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/" "Catalyst-Runtime-" version ".tar.gz")) (sha256 (base32 - "0kh3ng6pjpxmndq9vrn515f70x7h44ish5bsgjwj4pjvchcyivzm")))) + "0cws3szx3vvh0372qdx8fypgv6qphcc3v81rbq30sl1ghby7ksd3")))) (build-system perl-build-system) (native-inputs - `(("perl-module-install" ,perl-module-install) - ("perl-test-fatal" ,perl-test-fatal))) + `(("perl-test-fatal" ,perl-test-fatal))) (propagated-inputs `(("perl-cgi-simple" ,perl-cgi-simple) ("perl-cgi-struct" ,perl-cgi-struct) ("perl-class-c3-adopt-next" ,perl-class-c3-adopt-next) - ("perl-class-data-inheritable" ,perl-class-data-inheritable) ("perl-class-date" ,perl-class-date) ("perl-class-load" ,perl-class-load) ("perl-data-dump" ,perl-data-dump) ("perl-http-body" ,perl-http-body) ("perl-http-message" ,perl-http-message) - ("perl-http-request-ascgi" ,perl-http-request-ascgi) - ("perl-io-stringy" ,perl-io-stringy) ("perl-json-maybexs" ,perl-json-maybexs) ("perl-libwww" ,perl-libwww) ("perl-module-pluggable" ,perl-module-pluggable) @@ -1879,8 +1877,6 @@ MIME type directly to the browser, without being processed through Catalyst.") ,perl-moosex-emulate-class-accessor-fast) ("perl-moosex-getopt" ,perl-moosex-getopt) ("perl-moosex-methodattributes" ,perl-moosex-methodattributes) - ("perl-moosex-role-withoverloading" ,perl-moosex-role-withoverloading) - ("perl-namespace-autoclean" ,perl-namespace-autoclean) ("perl-namespace-clean" ,perl-namespace-clean) ("perl-path-class" ,perl-path-class) ("perl-plack" ,perl-plack) @@ -2080,7 +2076,7 @@ application classes.") (define-public perl-catalystx-script-server-starman (package (name "perl-catalystx-script-server-starman") - (version "0.02") + (version "0.03") (source (origin (method url-fetch) @@ -2089,7 +2085,7 @@ application classes.") version ".tar.gz")) (sha256 (base32 - "0h02mpkc4cmi3jpvcd7iw7xyzx55bqvvl1qkf967gqkvpklm0qx5")))) + "08jvibq4v8xjj0c3cr93h0w8w0c88ajwjn37xjy7ygxl9krlffp6")))) (build-system perl-build-system) (native-inputs `(("perl-module-install" ,perl-module-install) @@ -2108,7 +2104,7 @@ development server with Starman.") (define-public perl-cgi (package (name "perl-cgi") - (version "4.35") + (version "4.38") (source (origin (method url-fetch) @@ -2116,7 +2112,7 @@ development server with Starman.") "CGI-" version ".tar.gz")) (sha256 (base32 - "07gwnlc7vq58fjwmfsrv0hfyirqqdrpjhf89caq34rjrkz2wsd0b")))) + "1m779315rzj4mpgscw209a2wk18iwg2n8zibn8aak4mv56jz8n4c")))) (build-system perl-build-system) (native-inputs `(("perl-test-deep" ,perl-test-deep) @@ -2133,6 +2129,30 @@ string generation and manipulation, and processing and preparing HTTP headers.") (license l:perl-license))) +(define-public perl-cgi-formbuilder + (package + (name "perl-cgi-formbuilder") + (version "3.10") + (source + (origin + (method url-fetch) + (uri (string-append + "https://cpan.metacpan.org/authors/id/B/BI/BIGPRESH/" + "CGI-FormBuilder-" version ".tar.gz")) + (sha256 + (base32 + "163ixq9kninqq094z2rnkg9pv3bcmvjphlww4vksfrzhq3h9pjdf")))) + (build-system perl-build-system) + (inputs `(("perl-cgi" ,perl-cgi))) + (home-page + "https://metacpan.org/release/CGI-FormBuilder") + (synopsis + "Generate and process stateful forms") + (description + "@code{CGI::FormBuilder} provides an easy way to generate and process CGI +form-based applications.") + (license l:perl-license))) + (define-public perl-cgi-session (package (name "perl-cgi-session") @@ -2163,19 +2183,21 @@ HTTP requests.") (define-public perl-cgi-simple (package (name "perl-cgi-simple") - (version "1.115") + (version "1.15") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/S/SZ/SZABGAB/" + (uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/" "CGI-Simple-" version ".tar.gz")) (sha256 (base32 - "1nkyb1m1g5r47xykflf68dplanih5p15njv82frbgbsms34kp1sg")))) + "013dcy9k4sj9alkksk5aqz65ryxw0rxgg71c7w666y941gd8n46q")))) (build-system perl-build-system) (native-inputs - `(("perl-module-build" ,perl-module-build) - ("perl-io-stringy" ,perl-io-stringy))) ;for IO::Scalar + `(("perl-io-stringy" ,perl-io-stringy) ; for IO::Scalar + ("perl-module-build" ,perl-module-build) + ("perl-test-exception" ,perl-test-exception) + ("perl-test-nowarnings" ,perl-test-nowarnings))) (home-page "http://search.cpan.org/dist/CGI-Simple") (synopsis "CGI interface that is CGI.pm compliant") (description "CGI::Simple provides a relatively lightweight drop in @@ -3066,16 +3088,19 @@ exists it is used instead.") (define-public perl-lwp-protocol-https (package (name "perl-lwp-protocol-https") - (version "6.06") + (version "6.07") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/M/MS/MSCHILLI/" + (uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/" "LWP-Protocol-https-" version ".tar.gz")) (sha256 (base32 - "1vxdjqj4bwq56m9h1bqqwkk3c6jr76f2zqzvwa26yjng3p686v5q")))) + "1rxrpwylfw1afah0nk96kgkwjbl2p1a7lwx50iipg8c4rx3cjb2j")))) (build-system perl-build-system) + (native-inputs + ;; For tests. + `(("perl-test-requiresinternet" ,perl-test-requiresinternet))) (propagated-inputs `(("perl-io-socket-ssl" ,perl-io-socket-ssl) ("perl-libwww" ,perl-libwww) @@ -3157,15 +3182,15 @@ and retry a few times.") (define-public perl-net-http (package (name "perl-net-http") - (version "6.07") + (version "6.18") (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/M/MS/MSCHILLI/Net-HTTP-" - version ".tar.gz")) + "mirror://cpan/authors/id/O/OA/OALDERS/" + "Net-HTTP-" version ".tar.gz")) (sha256 (base32 - "0r034hhci0yqbrkrh1gv6vi5g3i0kpd1k84z62nk02asb8rf0ccz")))) + "074mp9s37q1j290xa3qj1wwgalzla328i2zpnh73xkmdnwnxyhky")))) (build-system perl-build-system) (propagated-inputs `(("perl-io-socket-ssl" ,perl-io-socket-ssl) @@ -3776,13 +3801,13 @@ CDF, Atom 0.3, and Atom 1.0 feeds.") (define-public r-httpuv (package (name "r-httpuv") - (version "1.4.3") + (version "1.4.4.1") (source (origin (method url-fetch) (uri (cran-uri "httpuv" version)) (sha256 (base32 - "15ghxcyg9h0za3qy077fnn3izbpihskvaqwsppm2s43a771imsf6")))) + "12kwq10xa8glrip7rai9xb4hnpysng00g2l0rw7swfzq5lk4z966")))) (build-system r-build-system) (native-inputs `(("r-rcpp" ,r-rcpp))) (propagated-inputs @@ -4000,14 +4025,14 @@ objects in HTML format.") (define-public r-rjson (package (name "r-rjson") - (version "0.2.19") + (version "0.2.20") (source (origin (method url-fetch) (uri (cran-uri "rjson" version)) (sha256 (base32 - "1g29vp3gfbh73a5br68jydsrigia4vnr5avc84avgwl6353749jw")))) + "0v1zvdd3svnavklh7y5xbwrrkbvx6053r4c5hgnk7hz7bqg7qa1s")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/rjson") (synopsis "JSON library for R") @@ -4378,16 +4403,17 @@ NetSurf project.") ("mercurial" ,mercurial))) (inputs `(("python" ,python-wrapper) + ("perl-cgi-formbuilder" ,perl-cgi-formbuilder) ("perl-cgi-session" ,perl-cgi-session) ("perl-cgi-simple" ,perl-cgi-simple) - ("perl-json" ,perl-json) - ("perl-image-magick" ,perl-image-magick) - ("perl-uri" ,perl-uri) + ("perl-db-file" ,perl-db-file) ("perl-html-parser" ,perl-html-parser) - ("perl-uri" ,perl-uri) - ("perl-text-markdown-discount" ,perl-text-markdown-discount) ("perl-html-scrubber" ,perl-html-scrubber) ("perl-html-template" ,perl-html-template) + ("perl-image-magick" ,perl-image-magick) + ("perl-json" ,perl-json) + ("perl-text-markdown-discount" ,perl-text-markdown-discount) + ("perl-uri" ,perl-uri) ("perl-yaml-libyaml" ,perl-yaml-libyaml))) (home-page "https://ikiwiki.info/") (synopsis "Wiki compiler, capable of generating HTML") @@ -4900,7 +4926,7 @@ tools like SSH (Secure Shell) to reach the outside world.") (define-public stunnel (package (name "stunnel") - (version "5.46") + (version "5.47") (source (origin (method url-fetch) @@ -4908,12 +4934,34 @@ tools like SSH (Secure Shell) to reach the outside world.") version ".tar.gz")) (sha256 (base32 - "1iw4gap9ysag8iww2ik029scmdllk7jdzcpnnbj7hgbl526b9akn")))) + "02qx0b0dd38rfcl9vfd6zq1pcg5gv0z2mxw5z3p2pfbfk7dpbrn4")))) (build-system gnu-build-system) + (native-inputs + ;; For tests. + `(("iproute" ,iproute) + ("netcat" ,netcat) + ("procps" ,procps))) (inputs `(("openssl" ,openssl))) (arguments `(#:configure-flags - (list (string-append "--with-ssl=" (assoc-ref %build-inputs "openssl"))))) + (list (string-append "--with-ssl=" (assoc-ref %build-inputs "openssl"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-output-directories + (lambda _ + ;; Some (not all) Makefiles have a hard-coded incorrect docdir. + (substitute* (list "Makefile.in" + "doc/Makefile.in" + "tools/Makefile.in") + (("/doc/stunnel") + (string-append "/doc/" ,name "-" ,version))) + #t)) + (add-before 'check 'patch-tests + (lambda _ + (substitute* "tests/make_test" + (("/bin/sh ") + (string-append (which "sh") " "))) + #t))))) (home-page "https://www.stunnel.org") (synopsis "TLS proxy for clients or servers") (description "Stunnel is a proxy designed to add TLS encryption @@ -6066,6 +6114,7 @@ artifact."))) `(#:jar-name "eclipse-jetty-security.jar" #:source-dir "src/main/java" #:jdk ,icedtea-8 + #:test-exclude (list "**/ConstraintTest.*") ; This test fails #:phases (modify-phases %standard-phases (add-before 'configure 'chdir @@ -6157,6 +6206,107 @@ container."))) ("server" ,java-eclipse-jetty-server-9.2) ,@(package-inputs java-eclipse-jetty-util-9.2))))) +(define-public java-eclipse-jetty-xml + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-xml") + (arguments + `(#:jar-name "eclipse-jetty-xml.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:tests? #f; most tests require network + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-xml") + #t))))) + (inputs + `(("java-eclipse-jetty-util" ,java-eclipse-jetty-util))) + (native-inputs + `(("java-eclipse-jetty-io" ,java-eclipse-jetty-io) + ,@(package-native-inputs java-eclipse-jetty-util))))) + +(define-public java-eclipse-jetty-xml-9.2 + (package + (inherit java-eclipse-jetty-xml) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (arguments + `(#:jar-name "eclipse-jetty-xml.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:tests? #f; most tests require network + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-xml") + #t))))) + (inputs + `(("java-eclipse-jetty-util-9.2" ,java-eclipse-jetty-util-9.2) + ,@(package-inputs java-eclipse-jetty-util-9.2))) + (native-inputs + `(("java-eclipse-jetty-io-9.2" ,java-eclipse-jetty-io-9.2) + ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) + +(define-public java-eclipse-jetty-webapp + (package + (inherit java-eclipse-jetty-util) + (name "java-eclipse-jetty-webapp") + (arguments + `(#:jar-name "eclipse-jetty-webapp.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + ;; One test fails + #:test-exclude (list "**/WebAppContextTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-webapp") + #t))))) + (inputs + `(("java-eclipse-jetty-util" ,java-eclipse-jetty-util) + ("java-eclipse-jetty-http" ,java-eclipse-jetty-http) + ("java-eclipse-jetty-server" ,java-eclipse-jetty-server) + ("java-eclipse-jetty-servlet" ,java-eclipse-jetty-servlet) + ("java-eclipse-jetty-security" ,java-eclipse-jetty-security) + ("java-eclipse-jetty-xml" ,java-eclipse-jetty-xml) + ("java-tomcat" ,java-tomcat))) + (native-inputs + `(("java-eclipse-jetty-io" ,java-eclipse-jetty-io) + ,@(package-native-inputs java-eclipse-jetty-util))))) + +(define-public java-eclipse-jetty-webapp-9.2 + (package + (inherit java-eclipse-jetty-webapp) + (version (package-version java-eclipse-jetty-util-9.2)) + (source (package-source java-eclipse-jetty-util-9.2)) + (arguments + `(#:jar-name "eclipse-jetty-webapp.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:test-exclude (list "**/WebAppContextTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "jetty-webapp") + #t))))) + (inputs + `(("java-eclipse-jetty-util-9.2" ,java-eclipse-jetty-util-9.2) + ("java-eclipse-jetty-http-9.2" ,java-eclipse-jetty-http-9.2) + ("java-eclipse-jetty-server-9.2" ,java-eclipse-jetty-server-9.2) + ("java-eclipse-jetty-servlet-9.2" ,java-eclipse-jetty-servlet-9.2) + ("java-eclipse-jetty-security-9.2" ,java-eclipse-jetty-security-9.2) + ("java-eclipse-jetty-xml-9.2" ,java-eclipse-jetty-xml-9.2) + ("java-tomcat" ,java-tomcat) + ,@(package-inputs java-eclipse-jetty-util-9.2))) + (native-inputs + `(("java-eclipse-jetty-io-9.2" ,java-eclipse-jetty-io-9.2) + ,@(package-native-inputs java-eclipse-jetty-util-9.2))))) + (define-public java-jsoup (package (name "java-jsoup") @@ -6420,10 +6570,10 @@ compressed JSON header blocks. (license l:expat))) (define-public hpcguix-web - (let ((commit "3e3b9a3a406ee2dcd10c96cbedcc16ea378e8e8f")) + (let ((commit "87cb51611c0f1fd3863b830614ab1364599cf1ca")) (package (name "hpcguix-web") - (version (git-version "0.0.1" "0" commit)) + (version (git-version "0.0.1" "1" commit)) (source (origin (method git-fetch) (uri (git-reference @@ -6432,7 +6582,7 @@ compressed JSON header blocks. (file-name (git-file-name name version)) (sha256 (base32 - "01888byi9mh7d3adcmwhmg44kg98g92r44ilc4wd7an66mjnxpry")))) + "0p66fl8r3v73v13fqg9rbqbzbdzvyznchxbq2s1jwq6qfsn2w3gr")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index d1abb0b687..10cd788af2 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -55,14 +55,14 @@ (define-public webkitgtk (package (name "webkitgtk") - (version "2.20.2") + (version "2.20.3") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "1qi6nnj4qidzija1am9xscwjxwfqwhiy7x39ndriqgzh86i97znz")))) + "1n0dy94bm7wvxln4jis1gp8plv8n4a01g41724zsf5psg1yk16sp")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no tests diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm index 369f64c547..91b37556a0 100644 --- a/gnu/packages/wine.scm +++ b/gnu/packages/wine.scm @@ -69,7 +69,7 @@ (define-public wine (package (name "wine") - (version "3.0.1") + (version "3.0.2") (source (origin (method url-fetch) (uri (string-append "https://dl.winehq.org/wine/source/" @@ -77,7 +77,7 @@ "/wine-" version ".tar.xz")) (sha256 (base32 - "1wr63n70pli83p3rmclr2j4lxzs4ll1cwlpdlaajfrf6v9yhvl5s")))) + "1zv3nk31s758ghp4795ym3w8l5868c2dllmjx9245qh9ahvp3mya")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("gettext" ,gettext-minimal) @@ -223,7 +223,7 @@ integrate Windows applications into your desktop.") (define-public wine-staging-patchset-data (package (name "wine-staging-patchset-data") - (version "3.9") + (version "3.11") (source (origin (method url-fetch) @@ -232,7 +232,7 @@ integrate Windows applications into your desktop.") (file-name (string-append name "-" version ".zip")) (sha256 (base32 - "0akccqrp1ymjrra2c99f6hxlaa77jyihfs3q8x93vkgb9c0lq5xx")))) + "1sd9chv919y0wfqcshasl82899isvq9rik4h8d44g2cf4m9zzhvi")))) (build-system trivial-build-system) (native-inputs `(("bash" ,bash) @@ -279,13 +279,14 @@ integrate Windows applications into your desktop.") (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "0ddphvlp9lsjyqc6zckinc36bggpkg925v0x2vqr8nkdjs0w5bfc")))) + "0zlhkz6aybkr9jg8za9x56fp92q10df0abadn9bsa8ryparr5d15")))) (inputs `(("autoconf" ,autoconf) ; for autoreconf ("gtk+" ,gtk+) ("libva" ,libva) ("python" ,python) ("sdl2" ,sdl2) ("util-linux" ,util-linux) ; for hexdump + ("vkd3d" ,vkd3d) ("vulkan-loader" ,vulkan-loader) ("wine-staging-patchset-data" ,wine-staging-patchset-data) ,@(package-inputs wine))) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index a3705c9d91..a076cbbb1d 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -103,7 +103,7 @@ nested include statements).") (define-public bspwm (package (name "bspwm") - (version "0.9.4") + (version "0.9.5") (source (origin (file-name (string-append name "-" version ".tar.gz")) @@ -113,7 +113,7 @@ nested include statements).") version ".tar.gz")) (sha256 (base32 - "0yjr0vzbj3ar8qfr6gvpvjd82ay8iy1sg2fkw2swghlqiy6ix4kw")))) + "10pph8wxqysgk7b2h0svs0nwacn1a4y44jnzzry32pd1ysx92d97")))) (build-system gnu-build-system) (inputs `(("libxcb" ,libxcb) @@ -123,10 +123,13 @@ nested include statements).") ("xcb-util-keysyms" ,xcb-util-keysyms) ("xcb-util-wm" ,xcb-util-wm))) (arguments - '(#:phases (modify-phases %standard-phases (delete 'configure)) - #:tests? #f ; no check target - #:make-flags (list "CC=gcc" - (string-append "PREFIX=" %output)))) + '(#:phases + (modify-phases %standard-phases + (delete 'configure)) ; no configure script + #:tests? #f ; no check target + #:make-flags + (list "CC=gcc" + (string-append "PREFIX=" %output)))) (home-page "https://github.com/baskerville/bspwm") (synopsis "Tiling window manager based on binary space partitioning") (description "bspwm is a tiling window manager that represents windows as @@ -988,7 +991,7 @@ project derived from the original Calm Window Manager.") ("glib" ,glib) ("glibmm" ,glibmm))) (native-inputs - `(("pkg-config", pkg-config))) + `(("pkg-config" ,pkg-config))) (arguments `(#:configure-flags (list (string-append "--prefix=" %output) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 1c6e23e264..e735bcf90a 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -264,25 +264,23 @@ between desktops, and change the number of desktops.") (define-public xeyes (package (name "xeyes") - (version "1.0.1") + (version "1.1.2") (source - (origin - (method url-fetch) - (uri (string-append - "http://xeyes.sourcearchive.com/downloads/1.0.1/xeyes_" - version - ".orig.tar.gz")) - (sha256 - (base32 - "04c3md570j67g55h3bix1qbngcslnq91skli51k3g1avki88zkm9")))) + (origin + (method url-fetch) + (uri (string-append "https://www.x.org/releases/individual/app/" + name "-" version ".tar.bz2")) + (sha256 + (base32 "0lq5j7fryx1wn998jq6h3icz1h6pqrsbs3adskjzjyhn5l6yrg2p")))) (build-system gnu-build-system) (inputs `(("libxext" ,libxext) ("libxmu" ,libxmu) + ("libxrender" ,libxrender) ("libxt" ,libxt))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://xeyes.sourcearchive.com/") + (home-page "https://www.x.org/") ; no dedicated Xeyes page exists (synopsis "Follow-the-mouse X demo") (description "Xeyes is a demo program for x.org. It shows eyes following the mouse.") @@ -530,7 +528,7 @@ selection's dimensions to stdout.") (define-public maim (package (name "maim") - (version "5.5.1") + (version "5.5.2") (source (origin (method url-fetch) (uri (string-append @@ -539,7 +537,7 @@ selection's dimensions to stdout.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1dvw0axnr9hhjg6zdcq9lwvaq0x7vrzlz00p8n3hj25qzsi4z5as")))) + "14zdhsx1cndg5m8wbv1rqmza7wgknwfj5h0knzxg3p2jkjw66i95")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target @@ -735,17 +733,16 @@ Guile will work for XBindKeys.") (define-public sxhkd (package (name "sxhkd") - (version "0.5.6") + (version "0.5.9") (source (origin - (file-name (string-append name "-" version ".tar.gz")) - (method url-fetch) - (uri (string-append - "https://github.com/baskerville/sxhkd/archive/" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/baskerville/sxhkd") + (commit version))) (sha256 (base32 - "15grmzpxz5fqlbfg2slj7gb7r6nzkvjmflmbkqx7mlby9pm6wdkj")))) + "0cw547x7vky55k3ksrmzmrra4zhslqcwq9xw0y4cmbvy4s1qf64v")))) (build-system gnu-build-system) (inputs `(("asciidoc" ,asciidoc) @@ -754,10 +751,14 @@ Guile will work for XBindKeys.") ("xcb-util-keysyms" ,xcb-util-keysyms) ("xcb-util-wm" ,xcb-util-wm))) (arguments - '(#:phases (modify-phases %standard-phases (delete 'configure)) + `(#:phases (modify-phases %standard-phases (delete 'configure)) #:tests? #f ; no check target - #:make-flags (list "CC=gcc" - (string-append "PREFIX=" %output)))) + #:make-flags + (list "CC=gcc" + (string-append "PREFIX=" %output) + ;; Keep the documentation where the build system installs LICENSE. + (string-append "DOCPREFIX=" %output + "/share/doc/" ,name "-" ,version)))) (home-page "https://github.com/baskerville/sxhkd") (synopsis "Simple X hotkey daemon") (description "sxhkd is a simple X hotkey daemon with a powerful and @@ -1286,41 +1287,41 @@ XCB util-xrm module provides the following libraries: (define-public xcalib (package (name "xcalib") - (version "0.8") + (version "0.10") + (home-page "https://github.com/OpenICC/xcalib") (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/xcalib/xcalib/" version - "/xcalib-source-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) (sha256 (base32 - "1rh6xb51c5xz926dnn82a2fn643g0sr4a8z66rn6yi7523kjw4ca")))) - (build-system gnu-build-system) + "05fzdjmhiafgi2jf0k41i3nm0837a78sb6yv59cwc23nla8g0bhr")) + (patches + (list + ;; Add missing documentation for the new --output option. + ;; This upstream patch can be removed on the next update. + (origin + (method url-fetch) + (uri (string-append + home-page "/commit/" + "ae03889b91fe984b18e925ad2b5e6f2f7354e058.patch")) + (file-name "xcalib-update-man-page.patch") + (sha256 + (base32 + "0f7b4d5484x4b9n1bwhqmar0kcaa029ffff7bp3xpr734n1qgqb6"))))))) + (build-system cmake-build-system) (arguments - '(#:make-flags '("CC=gcc") - #:tests? #f ; No test suite - #:phases (modify-phases %standard-phases - (delete 'configure) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) - (install-file "xcalib" bin)))) - (add-after 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) - (let ((doc (string-append(assoc-ref outputs "out") - "/share/doc/xcalib"))) - (install-file "README" doc) - ;; Avoid unspecified return value. - #t)))))) + '(#:tests? #f)) ; no test suite (inputs `(("libx11" ,libx11) ("libxext" ,libxext) + ("libxrandr" ,libxrandr) ("libxxf86vm" ,libxxf86vm))) (synopsis "Tiny monitor calibration loader for XFree86 (or X.org)") (description "xcalib is a tiny tool to load the content of vcgt-Tags in ICC profiles to the video card's gamma ramp. It does work with most video card drivers except the generic VESA driver. Alter brightness, contrast, RGB, and invert colors on a specific display/screen.") - (home-page "http://xcalib.sourceforge.net/") (license license:gpl2))) (define-public nxbelld diff --git a/gnu/packages/xfig.scm b/gnu/packages/xfig.scm index 86fbd9159b..9c1f28592f 100644 --- a/gnu/packages/xfig.scm +++ b/gnu/packages/xfig.scm @@ -119,7 +119,7 @@ selected in various ways. For text, 35 fonts are available.") (("/usr/local/lib/fig2dev") (string-append out "/lib"))) ;; The -a argument is required in order to pick up the correct paths ;; to several X header files. - (zero? (system* "xmkmf" "-a")) + (invoke "xmkmf" "-a") (substitute* '("Makefile" "fig2dev/Makefile" "transfig/Makefile") @@ -130,10 +130,11 @@ selected in various ways. For text, 35 fonts are available.") (("(MANPATH = )[[:graph:]]*" _ front) (string-append front out "/share/man")) (("(CONFDIR = )([[:graph:]]*)" _ front default) - (string-append front out default)))))) + (string-append front out default))) + #t))) (add-after 'install 'install/doc (lambda _ - (zero? (system* "make" "install.man"))))))) + (invoke "make" "install.man")))))) (home-page "http://mcj.sourceforge.net/") (synopsis "Create portable LaTeX figures") (description diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index d0184c45d1..9112d0273f 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -263,13 +263,11 @@ the @code{Graph} class and write it out in a specific file format.") (getenv "PERL5LIB"))) #t))))) (native-inputs - `(("perl-datetime" ,perl-datetime) - ;; TODO package: perl-datetime-format-atom - ("perl-html-tagset" ,perl-html-tagset) + ;; TODO package: perl-datetime-format-atom + `(("perl-html-tagset" ,perl-html-tagset) ("perl-module-build-tiny" ,perl-module-build-tiny) - ("perl-module-install" ,perl-module-install) - ("perl-xml-xpath" ,perl-xml-xpath))) - (inputs + ("perl-module-install" ,perl-module-install))) + (propagated-inputs `(("perl-class-data-inheritable" ,perl-class-data-inheritable) ("perl-datetime" ,perl-datetime) ("perl-datetime-timezone" ,perl-datetime-timezone) @@ -418,14 +416,14 @@ XML parser and the high performance DOM implementation.") (define-public perl-xml-libxml-simple (package (name "perl-xml-libxml-simple") - (version "0.97") + (version "0.99") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" "XML-LibXML-Simple-" version ".tar.gz")) (sha256 (base32 - "1g8nlk3zdz2cclxf7azvsb3jfxmvy6ml8wmj774k4qjqcsqmzk0w")))) + "0i4ybiqdnvnbfxqslw2y392kvy7i752dl8n99bqiqv5kzk4lbzhl")))) (build-system perl-build-system) (propagated-inputs `(("perl-file-slurp-tiny" ,perl-file-slurp-tiny) @@ -815,18 +813,18 @@ RSS 0.91, RSS 1.0, RSS 2.0, Atom") (define-public perl-xml-xpath (package (name "perl-xml-xpath") - (version "1.40") + (version "1.42") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/" "XML-XPath-" version ".tar.gz")) (sha256 (base32 - "07pa0bl42jka8mj7jshjynx8vpfh8b4cdyiv4zlkqvkqz98nzxib")))) + "04mm91kxav598ax7nlg81dhnvanwvg6bkf30l0cgkmga5iyccsly")))) (build-system perl-build-system) (native-inputs `(("perl-path-tiny" ,perl-path-tiny))) - (inputs + (propagated-inputs `(("perl-xml-parser" ,perl-xml-parser))) (home-page "http://search.cpan.org/dist/XML-XPath") (synopsis "Parse and evaluate XPath statements") @@ -926,14 +924,14 @@ XSL-T processor. It also performs any necessary post-processing.") (define-public xmlsec (package (name "xmlsec") - (version "1.2.25") + (version "1.2.26") (source (origin (method url-fetch) (uri (string-append "https://www.aleksey.com/xmlsec/download/" name "1-" version ".tar.gz")) (sha256 (base32 - "1lpwj8dxwhha54sby0v5axjk79h56jnhjjiwiasbbk15vwzahz4n")))) + "0l1dk344rn3j2vnj13daz72xd8j1msvzhg82n2il5ji0qz4pd0ld")))) (build-system gnu-build-system) (propagated-inputs ; according to xmlsec1.pc `(("libxml2" ,libxml2) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index f4bf2a503a..7ce543790f 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2017, 2018 Rutger Helling ;;; Copyright © 2017 Arun Isaac ;;; Copyright © 2018 Tobias Geerinckx-Rice +;;; Copyright © 2018 Kei Kebreau ;;; ;;; This file is part of GNU Guix. ;;; @@ -2411,7 +2412,7 @@ devices, thus making direct access unnecessary.") (define-public xf86-input-evdev (package (name "xf86-input-evdev") - (version "2.10.5") + (version "2.10.6") (source (origin (method url-fetch) @@ -2421,7 +2422,7 @@ devices, thus making direct access unnecessary.") ".tar.bz2")) (sha256 (base32 - "03dphgwjaxxyys8axc1kyysp6xvy9bjxicsdrhi2jvdgbchadnly")))) + "1h1y0fwnawlp4yc5llr1l7hwfcxxpln2fxhy6arcf6w6h4z0f9l7")))) (build-system gnu-build-system) (inputs `(("udev" ,eudev) @@ -2529,7 +2530,7 @@ It is used to cotrol the pointer with a joystick device.") (define-public xf86-input-mouse (package (name "xf86-input-mouse") - (version "1.9.2") + (version "1.9.3") (source (origin (method url-fetch) @@ -2539,7 +2540,7 @@ It is used to cotrol the pointer with a joystick device.") ".tar.bz2")) (sha256 (base32 - "0bsbgww9421792zan43j60mndqprhfxhc48agsi15d3abjqda9gl")))) + "1iawr1wyl2qch1mqszcs0s84i92mh4xxprflnycbw1adc18b7v4k")))) (build-system gnu-build-system) (inputs `(("xorg-server" ,xorg-server))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -2561,7 +2562,7 @@ as USB mice.") (define-public xf86-input-synaptics (package (name "xf86-input-synaptics") - (version "1.9.0") + (version "1.9.1") (source (origin (method url-fetch) @@ -2571,7 +2572,7 @@ as USB mice.") ".tar.bz2")) (sha256 (base32 - "0niv0w1czbxh4y3qkqbpdp5gjwhp3379inwhknhif0m4sy4k5fmg")))) + "0xhm03qywwfgkpfl904d08lx00y28m1b6lqmks5nxizixwk3by3s")))) (build-system gnu-build-system) (inputs `(("libx11" ,libx11) ("libxi" ,libxi) @@ -2730,7 +2731,7 @@ X server.") (define-public xf86-video-fbdev (package (name "xf86-video-fbdev") - (version "0.4.4") + (version "0.5.0") (source (origin (method url-fetch) @@ -2740,7 +2741,7 @@ X server.") ".tar.bz2")) (sha256 (base32 - "06ym7yy017lanj730hfkpfk4znx3dsj8jq3qvyzsn8w294kb7m4x")))) + "16a66zr0l1lmssa07i3rzy07djxnb45c17ks8c71h8l06xgxihyw")))) (build-system gnu-build-system) (inputs `(("xorg-server" ,xorg-server))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -3440,7 +3441,7 @@ X server.") (define-public xf86-video-vmware (package (name "xf86-video-vmware") - (version "13.2.1") + (version "13.3.0") (source (origin (method url-fetch) @@ -3450,7 +3451,7 @@ X server.") ".tar.bz2")) (sha256 (base32 - "0azn3g0vcki47n5jddagk2rmbwdvp845k8p7d2r56zxs3w8ggxz2")))) + "0v06qhm059klq40m2yx4wypzb7h53aaassbjfmm6clcyclj1k5s7")))) (build-system gnu-build-system) (inputs `(("libx11" ,libx11) @@ -5635,7 +5636,7 @@ user-friendly mechanism to start the X server.") (define-public libxaw3d (package (name "libxaw3d") - (version "1.6.2") + (version "1.6.3") (source (origin (method url-fetch) @@ -5645,7 +5646,7 @@ user-friendly mechanism to start the X server.") ".tar.bz2")) (sha256 (base32 - "0awplv1nf53ywv01yxphga3v6dcniwqnxgnb0cn4khb121l12kxp")))) + "0i653s8g25cc0mimkwid9366bqkbyhdyjhckx7bw77j20hzrkfid")))) (build-system gnu-build-system) (propagated-inputs `(("libxext" ,libxext) @@ -5855,6 +5856,34 @@ perl programs to display windows and graphics on X11 servers.") ;; for details)." (license license:perl-license))) +(define-public perl-x11-protocol-other + (package + (name "perl-x11-protocol-other") + (version "30") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/K/KR/KRYDE/X11-Protocol-Other-" + version ".tar.gz")) + (sha256 + (base32 + "1mambi57cdkj82wiw1l8y2f70a60qsamdas0165hlj10drryfgrj")))) + (build-system perl-build-system) + (native-inputs + `(("perl-encode-hanextra" ,perl-encode-hanextra) + ("perl-module-util" ,perl-module-util))) + (propagated-inputs + `(("perl-x11-protocol" ,perl-x11-protocol))) + (home-page "http://search.cpan.org/dist/X11-Protocol-Other/") + (synopsis "Miscellaneous helpers for @code{X11::Protocol} connections") + (description + "@code{X11::Protocol::Other} contains window manager related functions for +use by client programs, as per the @dfn{ICCCM} (Inter-Client Communication +Conventions Manual) and some of the @dfn{EWMH} +(Extended Window Manager Hints).") + (license license:gpl3+))) + (define-public xcompmgr (package (name "xcompmgr") @@ -5899,7 +5928,7 @@ basic eye-candy effects.") (define-public xpra (package (name "xpra") - (version "2.3.1") + (version "2.3.2") (source (origin (method url-fetch) @@ -5907,7 +5936,7 @@ basic eye-candy effects.") version ".tar.xz")) (sha256 (base32 - "0wghjmrw77pkh6agc5rz7ynr6s8yyc68qvj9rnp0vlwa3x1fl3ry")))) + "02wpnlx43dwacaahpm8db5kbnjw2msm3ycq71gib0n2zamd71ni6")))) (build-system python-build-system) (inputs `(("ffmpeg" ,ffmpeg) ("flac" ,flac) diff --git a/gnu/packages/zile.scm b/gnu/packages/zile.scm index 858117de28..eea0dba272 100644 --- a/gnu/packages/zile.scm +++ b/gnu/packages/zile.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2012, 2013, 2017, 2018 Ludovic Courtès ;;; Copyright © 2014 Eric Bavier ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -122,10 +123,10 @@ default Emacs configuration, but it carries a much lighter feature set.") (chmod file #o755)) (find-files ".")) (patch-shebang "gnulib/gnulib-tool") - (zero? (system* "sh" "./bootstrap" - "--gnulib-srcdir=gnulib" - "--skip-git" "--skip-po" - "--verbose")))) + (invoke "sh" "./bootstrap" + "--gnulib-srcdir=gnulib" + "--skip-git" "--skip-po" + "--verbose"))) (add-after 'install 'wrap-command (lambda* (#:key outputs #:allow-other-keys) ;; Add zile.scm to the search path. diff --git a/gnu/services.scm b/gnu/services.scm index 81af4df849..49cf01a4f8 100644 --- a/gnu/services.scm +++ b/gnu/services.scm @@ -331,13 +331,20 @@ containing the given entries." (service-type (name 'system) (extensions '()) (compose identity) - (extend system-derivation))) + (extend system-derivation) + (description + "Build the operating system top-level directory, which in +turn refers to everything the operating system needs: its kernel, initrd, +system profile, boot script, and so on."))) -(define (compute-boot-script _ mexps) - (mlet %store-monad ((gexps (sequence %store-monad mexps))) - (gexp->file "boot" - ;; Clean up and activate the system, then spawn shepherd. - #~(begin #$@gexps)))) +(define (compute-boot-script _ gexps) + ;; Reverse GEXPS so that extensions appear in the boot script in the right + ;; order. That is, user extensions would come first, and extensions added + ;; by 'essential-services' (e.g., running shepherd) are guaranteed to come + ;; last. + (gexp->file "boot" + ;; Clean up and activate the system, then spawn shepherd. + #~(begin #$@(reverse gexps)))) (define (boot-script-entry mboot) "Return, as a monadic value, an entry for the boot script in the system @@ -346,64 +353,74 @@ directory." (return `(("boot" ,boot))))) (define boot-service-type - ;; The service of this type is extended by being passed gexps as monadic - ;; values. It aggregates them in a single script, as a monadic value, which - ;; becomes its 'parameters'. It is the only service that extends nothing. + ;; The service of this type is extended by being passed gexps. It + ;; aggregates them in a single script, as a monadic value, which becomes its + ;; value. (service-type (name 'boot) (extensions (list (service-extension system-service-type boot-script-entry))) (compose identity) - (extend compute-boot-script))) + (extend compute-boot-script) + (description + "Produce the operating system's boot script, which is spawned +by the initrd once the root file system is mounted."))) (define %boot-service ;; The service that produces the boot script. (service boot-service-type #t)) (define (cleanup-gexp _) - "Return as a monadic value a gexp to clean up /tmp and similar places upon -boot." - (with-monad %store-monad - (with-imported-modules '((guix build utils)) - (return #~(begin - (use-modules (guix build utils)) + "Return a gexp to clean up /tmp and similar places upon boot." + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) - ;; Clean out /tmp and /var/run. - ;; - ;; XXX This needs to happen before service activations, so it - ;; has to be here, but this also implicitly assumes that /tmp - ;; and /var/run are on the root partition. - (letrec-syntax ((fail-safe (syntax-rules () - ((_ exp rest ...) - (begin - (catch 'system-error - (lambda () exp) - (const #f)) - (fail-safe rest ...))) - ((_) - #t)))) - ;; Ignore I/O errors so the system can boot. - (fail-safe - ;; Remove stale Shadow lock files as they would lead to - ;; failures of 'useradd' & co. - (delete-file "/etc/group.lock") - (delete-file "/etc/passwd.lock") - (delete-file "/etc/.pwd.lock") ;from 'lckpwdf' + ;; Clean out /tmp and /var/run. + ;; + ;; XXX This needs to happen before service activations, so it + ;; has to be here, but this also implicitly assumes that /tmp + ;; and /var/run are on the root partition. + (letrec-syntax ((fail-safe (syntax-rules () + ((_ exp rest ...) + (begin + (catch 'system-error + (lambda () exp) + (const #f)) + (fail-safe rest ...))) + ((_) + #t)))) + ;; Ignore I/O errors so the system can boot. + (fail-safe + ;; Remove stale Shadow lock files as they would lead to + ;; failures of 'useradd' & co. + (delete-file "/etc/group.lock") + (delete-file "/etc/passwd.lock") + (delete-file "/etc/.pwd.lock") ;from 'lckpwdf' - (delete-file-recursively "/tmp") - (delete-file-recursively "/var/run") - (mkdir "/tmp") - (chmod "/tmp" #o1777) - (mkdir "/var/run") - (chmod "/var/run" #o755) - (delete-file-recursively "/run/udev/watch.old")))))))) + ;; Force file names to be decoded as UTF-8. See + ;; . + (setenv "GUIX_LOCPATH" + #+(file-append glibc-utf8-locales "/lib/locale")) + (setlocale LC_CTYPE "en_US.utf8") + (delete-file-recursively "/tmp") + (delete-file-recursively "/var/run") + + (mkdir "/tmp") + (chmod "/tmp" #o1777) + (mkdir "/var/run") + (chmod "/var/run" #o755) + (delete-file-recursively "/run/udev/watch.old")))))) (define cleanup-service-type ;; Service that cleans things up in /tmp and similar. (service-type (name 'cleanup) (extensions (list (service-extension boot-service-type - cleanup-gexp))))) + cleanup-gexp))) + (description + "Delete files from @file{/tmp}, @file{/var/run}, and other +temporary locations at boot time."))) (define* (activation-service->script service) "Return as a monadic value the activation script for SERVICE, a service of @@ -412,44 +429,39 @@ ACTIVATION-SCRIPT-TYPE." (define (activation-script gexps) "Return the system's activation script, which evaluates GEXPS." - (define (service-activations) - ;; Return the activation scripts for SERVICES. - (mapm %store-monad - (cut gexp->file "activate-service" <>) - gexps)) + (define actions + (map (cut scheme-file "activate-service" <>) gexps)) - (mlet* %store-monad ((actions (service-activations))) - (gexp->file "activate" - (with-imported-modules (source-module-closure - '((gnu build activation) - (guix build utils))) - #~(begin - (use-modules (gnu build activation) - (guix build utils)) + (scheme-file "activate" + (with-imported-modules (source-module-closure + '((gnu build activation) + (guix build utils))) + #~(begin + (use-modules (gnu build activation) + (guix build utils)) - ;; Make sure the user accounting database exists. If it - ;; does not exist, 'setutxent' does not create it and - ;; thus there is no accounting at all. - (close-port (open-file "/var/run/utmpx" "a0")) + ;; Make sure the user accounting database exists. If it + ;; does not exist, 'setutxent' does not create it and + ;; thus there is no accounting at all. + (close-port (open-file "/var/run/utmpx" "a0")) - ;; Same for 'wtmp', which is populated by mingetty et - ;; al. - (mkdir-p "/var/log") - (close-port (open-file "/var/log/wtmp" "a0")) + ;; Same for 'wtmp', which is populated by mingetty et + ;; al. + (mkdir-p "/var/log") + (close-port (open-file "/var/log/wtmp" "a0")) - ;; Set up /run/current-system. Among other things this - ;; sets up locales, which the activation snippets - ;; executed below may expect. - (activate-current-system) + ;; Set up /run/current-system. Among other things this + ;; sets up locales, which the activation snippets + ;; executed below may expect. + (activate-current-system) - ;; Run the services' activation snippets. - ;; TODO: Use 'load-compiled'. - (for-each primitive-load '#$actions)))))) + ;; Run the services' activation snippets. + ;; TODO: Use 'load-compiled'. + (for-each primitive-load '#$actions))))) (define (gexps->activation-gexp gexps) "Return a gexp that runs the activation script containing GEXPS." - (mlet %store-monad ((script (activation-script gexps))) - (return #~(primitive-load #$script)))) + #~(primitive-load #$(activation-script gexps))) (define (second-argument a b) b) @@ -459,7 +471,10 @@ ACTIVATION-SCRIPT-TYPE." (list (service-extension boot-service-type gexps->activation-gexp))) (compose identity) - (extend second-argument))) + (extend second-argument) + (description + "Run @dfn{activation} code at boot time and upon +@command{guix system reconfigure} completion."))) (define %activation-service ;; The activation service produces the activation script from the gexps it @@ -507,7 +522,10 @@ ACTIVATION-SCRIPT-TYPE." (lambda (files) #~(activate-special-files '#$files))))) (compose concatenate) - (extend append))) + (extend append) + (description + "Add special files to the root file system---e.g., +@file{/usr/bin/env}."))) (define (extra-special-file file target) "Use TARGET as the \"special file\" FILE. For example, TARGET might be @@ -541,7 +559,8 @@ directory." #~(activate-etc #$etc)))) (service-extension system-service-type etc-entry))) (compose concatenate) - (extend append))) + (extend append) + (description "Populate the @file{/etc} directory."))) (define (etc-service files) "Return a new service of ETC-SERVICE-TYPE that populates /etc with FILES. @@ -556,7 +575,10 @@ FILES must be a list of name/file-like object pairs." #~(activate-setuid-programs (list #$@programs)))))) (compose concatenate) - (extend append))) + (extend append) + (description + "Populate @file{/run/setuid-programs} with the specified +executables, making them setuid-root."))) (define (packages->profile-entry packages) "Return a system entry for the profile containing PACKAGES." @@ -573,7 +595,11 @@ FILES must be a list of name/file-like object pairs." (list (service-extension system-service-type packages->profile-entry))) (compose concatenate) - (extend append))) + (extend append) + (description + "This is the @dfn{system profile}, available as +@file{/run/current-system/profile}. It contains packages that the sysadmin +wants to be globally available to all the system users."))) (define (firmware->activation-gexp firmware) "Return a gexp to make the packages listed in FIRMWARE loadable by the @@ -589,7 +615,11 @@ kernel." (list (service-extension activation-service-type firmware->activation-gexp))) (compose concatenate) - (extend append))) + (extend append) + (description + "Make ``firmware'' files loadable by the operating system +kernel. Firmware may then be uploaded to some of the machine's devices, such +as Wifi cards."))) (define (gc-roots->system-entry roots) "Return an entry in the system's output containing symlinks to ROOTS." @@ -616,7 +646,10 @@ kernel." (list (service-extension system-service-type gc-roots->system-entry))) (compose concatenate) - (extend append))) + (extend append) + (description + "Register garbage-collector roots---i.e., store items that +will not be reclaimed by the garbage collector."))) ;;; diff --git a/gnu/services/authentication.scm b/gnu/services/authentication.scm new file mode 100644 index 0000000000..1a2629d475 --- /dev/null +++ b/gnu/services/authentication.scm @@ -0,0 +1,41 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Danny Milosavljevic +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see . + +(define-module (gnu services authentication) + #:use-module (gnu services) + #:use-module (gnu services dbus) + #:use-module (gnu packages freedesktop) + #:use-module (guix gexp) + #:use-module (guix records) + #:export (fprintd-configuration + fprintd-configuration? + fprintd-service-type)) + +(define-record-type* + fprintd-configuration make-fprintd-configuration + fprintd-configuration? + (ntp fprintd-configuration-fprintd + (default fprintd))) + +(define fprintd-service-type + (service-type (name 'fprintd) + (extensions + (list (service-extension dbus-root-service-type + list))) + (description + "Run fprintd, a fingerprint management daemon."))) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index b34bb7132b..68411439db 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1592,8 +1592,9 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (call-with-output-file #$output (lambda (port) - (write (call-with-input-file "graph" - read-reference-graph) + (write (map store-info-item + (call-with-input-file "graph" + read-reference-graph)) port))))) #:options `(#:local-build? #f #:references-graphs (("graph" ,item)))) diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index c5e9fcbb22..4664a36dcf 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -3,10 +3,11 @@ ;;; Copyright © 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Mathieu Othacehe ;;; Copyright © 2017 Jan Nieuwenhuizen +;;; Copyright © 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; -;;; GNU Guix is free software: you can redistribute it and/or modify +;;; GNU Guix is free software; you can redistribute it and/or modify ;;; it under the terms of the GNU General Public License as published by ;;; the Free Software Foundation, either version 3 of the License, or ;;; (at your option) any later version. @@ -172,5 +173,7 @@ (service-extension rottlog-service-type cuirass-log-rotations) (service-extension activation-service-type cuirass-activation) (service-extension shepherd-root-service-type cuirass-shepherd-service) - (service-extension account-service-type cuirass-account))))) + (service-extension account-service-type cuirass-account))) + (description + "Run the Cuirass continuous integration service."))) diff --git a/gnu/services/cups.scm b/gnu/services/cups.scm index 4c62e6a6f7..715d333a71 100644 --- a/gnu/services/cups.scm +++ b/gnu/services/cups.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Andy Wingo ;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -1024,7 +1025,9 @@ extensions that it uses." (append (opaque-cups-configuration-extensions config) extensions))))))) - (default-value (cups-configuration)))) + (default-value (cups-configuration)) + (description + "Run the CUPS print server."))) ;; A little helper to make it easier to document all those fields. (define (generate-cups-documentation) diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm index d0913e90ed..2c57a36b84 100644 --- a/gnu/services/dns.scm +++ b/gnu/services/dns.scm @@ -622,8 +622,8 @@ (default '())) ;list of string (cache-size dnsmasq-configuration-cache-size (default 150)) ;integer - (no-negcache? dnsmasq-configuration-no-negcache? - (default #f))) ;boolean + (negative-cache? dnsmasq-configuration-negative-cache? + (default #t))) ;boolean (define dnsmasq-shepherd-service (match-lambda @@ -631,7 +631,7 @@ no-hosts? port local-service? listen-addresses resolv-file no-resolv? servers - cache-size no-negcache?) + cache-size negative-cache?) (shepherd-service (provision '(dnsmasq)) (requirement '(networking)) @@ -656,9 +656,9 @@ #$@(map (cut format #f "--server=~a" <>) servers) #$(format #f "--cache-size=~a" cache-size) - #$@(if no-negcache? - '("--no-negcache") - '())) + #$@(if negative-cache? + '() + '("--no-negcache"))) #:pid-file "/run/dnsmasq.pid")) (stop #~(make-kill-destructor)))))) @@ -667,4 +667,6 @@ (name 'dnsmasq) (extensions (list (service-extension shepherd-root-service-type - (compose list dnsmasq-shepherd-service)))))) + (compose list dnsmasq-shepherd-service)))) + (default-value (dnsmasq-configuration)) + (description "Run the dnsmasq DNS server."))) diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index e4441f6475..d5d0cf9d1d 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017 Clément Lassieur ;;; Copyright © 2017 Thomas Danckaert ;;; Copyright © 2017 Marius Bakke +;;; Copyright © 2018 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -608,7 +609,7 @@ demand."))) (call-with-output-file #$output (lambda (port) (display "\ -# The beginning was automatically added. +### These lines were generated from your system configuration: User tor DataDirectory /var/lib/tor Log notice syslog\n" port) @@ -628,6 +629,9 @@ HiddenServicePort ~a ~a~%" (cons name mapping))) services)) + (display "\ +### End of automatically generated lines.\n\n" port) + ;; Append the user's config file. (call-with-input-file #$config-file (lambda (input) diff --git a/gnu/services/pm.scm b/gnu/services/pm.scm index d40cb993e2..3817bd09de 100644 --- a/gnu/services/pm.scm +++ b/gnu/services/pm.scm @@ -3,7 +3,7 @@ ;;; ;;; This file is part of GNU Guix. ;;; -;;; GNU Guix is free software: you can redistribute it and/or modify +;;; GNU Guix is free software; you can redistribute it and/or modify ;;; it under the terms of the GNU General Public License as published by ;;; the Free Software Foundation, either version 3 of the License, or ;;; (at your option) any later version. diff --git a/gnu/services/shepherd.scm b/gnu/services/shepherd.scm index 000e85eb86..6ca53faa3d 100644 --- a/gnu/services/shepherd.scm +++ b/gnu/services/shepherd.scm @@ -22,7 +22,6 @@ #:use-module (guix sets) #:use-module (guix gexp) #:use-module (guix store) - #:use-module (guix monads) #:use-module (guix records) #:use-module (guix derivations) ;imported-modules, etc. #:use-module (gnu services) @@ -66,26 +65,25 @@ (define (shepherd-boot-gexp services) - (with-monad %store-monad - (return #~(begin - ;; Keep track of the booted system. - (false-if-exception (delete-file "/run/booted-system")) - (symlink (readlink "/run/current-system") - "/run/booted-system") + #~(begin + ;; Keep track of the booted system. + (false-if-exception (delete-file "/run/booted-system")) + (symlink (readlink "/run/current-system") + "/run/booted-system") - ;; Close any remaining open file descriptors to be on the safe - ;; side. This must be the very last thing we do, because - ;; Guile has internal FDs such as 'sleep_pipe' that need to be - ;; alive. - (let loop ((fd 3)) - (when (< fd 1024) - (false-if-exception (close-fdes fd)) - (loop (+ 1 fd)))) + ;; Close any remaining open file descriptors to be on the safe + ;; side. This must be the very last thing we do, because + ;; Guile has internal FDs such as 'sleep_pipe' that need to be + ;; alive. + (let loop ((fd 3)) + (when (< fd 1024) + (false-if-exception (close-fdes fd)) + (loop (+ 1 fd)))) - ;; Start shepherd. - (execl #$(file-append shepherd "/bin/shepherd") - "shepherd" "--config" - #$(shepherd-configuration-file services)))))) + ;; Start shepherd. + (execl #$(file-append shepherd "/bin/shepherd") + "shepherd" "--config" + #$(shepherd-configuration-file services)))) (define shepherd-root-service-type (service-type diff --git a/gnu/services/sound.scm b/gnu/services/sound.scm index 5fe555e8b6..f2dd24402f 100644 --- a/gnu/services/sound.scm +++ b/gnu/services/sound.scm @@ -26,6 +26,7 @@ #:use-module (guix packages) #:use-module (guix records) #:use-module (guix store) + #:use-module (gnu packages linux) #:use-module (gnu packages pulseaudio) #:use-module (ice-9 match) #:export (alsa-configuration @@ -44,17 +45,31 @@ (define-record-type* alsa-configuration make-alsa-configuration alsa-configuration? + (alsa-plugins alsa-configuration-alsa-plugins ; + (default alsa-plugins)) (pulseaudio? alsa-configuration-pulseaudio? ;boolean (default #t)) (extra-options alsa-configuration-extra-options ;string (default ""))) -(define (alsa-config-file config) - "Return the ALSA configuration file corresponding to CONFIG." - (plain-file "asound.conf" - (string-append "# Generated by 'alsa-service'.\n\n" - (if (alsa-configuration-pulseaudio? config) - "# Use PulseAudio by default +(define alsa-config-file + ;; Return the ALSA configuration file. + (match-lambda + (($ alsa-plugins pulseaudio? extra-options) + (apply mixed-text-file "asound.conf" + `("# Generated by 'alsa-service'.\n\n" + ,@(if pulseaudio? + `("# Use PulseAudio by default +pcm_type.pulse { + lib \"" ,#~(string-append #$alsa-plugins:pulseaudio + "/lib/alsa-lib/libasound_module_pcm_pulse.so") "\" +} + +ctl_type.pulse { + lib \"" ,#~(string-append #$alsa-plugins:pulseaudio + "/lib/alsa-lib/libasound_module_ctl_pulse.so") "\" +} + pcm.!default { type pulse fallback \"sysdefault\" @@ -67,10 +82,9 @@ pcm.!default { ctl.!default { type pulse fallback \"sysdefault\" -} -" - "") - (alsa-configuration-extra-options config)))) +}\n\n") + '()) + ,extra-options))))) (define (alsa-etc-service config) (list `("asound.conf" ,(alsa-config-file config)))) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index aae2f3db0d..9a58eff5ef 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -77,6 +77,7 @@ nginx-configuration-upstream-blocks nginx-configuration-server-names-hash-bucket-size nginx-configuration-server-names-hash-bucket-max-size + nginx-configuration-extra-content nginx-configuration-file @@ -431,6 +432,8 @@ (default #f)) (server-names-hash-bucket-max-size nginx-configuration-server-names-hash-bucket-max-size (default #f)) + (extra-content nginx-configuration-extra-content + (default "")) (file nginx-configuration-file ;#f | string | file-like (default #f))) @@ -521,7 +524,8 @@ of index files." (nginx log-directory run-directory server-blocks upstream-blocks server-names-hash-bucket-size - server-names-hash-bucket-max-size) + server-names-hash-bucket-max-size + extra-content) (apply mixed-text-file "nginx.conf" (flatten "user nginx nginx;\n" @@ -550,7 +554,8 @@ of index files." "\n" (map emit-nginx-upstream-config upstream-blocks) (map emit-nginx-server-config server-blocks) - "}\n" + extra-content + "\n}\n" "events {}\n")))) (define %nginx-accounts diff --git a/gnu/system.scm b/gnu/system.scm index f3dafd144b..e4a57475a9 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -359,6 +359,9 @@ marked as 'needed-for-boot'." (remove file-system-needed-for-boot? (operating-system-file-systems os))) + (define mapped-devices-for-boot + (operating-system-boot-mapped-devices os)) + (define (device-mappings fs) (let ((device (file-system-device fs))) (if (string? device) ;title is 'device @@ -374,21 +377,23 @@ marked as 'needed-for-boot'." (file-system (inherit fs) (dependencies - (delete-duplicates (append (device-mappings fs) - (file-system-dependencies fs)) - eq?)))) + (delete-duplicates + (remove (cut member <> mapped-devices-for-boot) + (append (device-mappings fs) + (file-system-dependencies fs))) + eq?)))) (service file-system-service-type (map add-dependencies file-systems))) -(define (mapped-device-user device file-systems) - "Return a file system among FILE-SYSTEMS that uses DEVICE, or #f." +(define (mapped-device-users device file-systems) + "Return the subset of FILE-SYSTEMS that use DEVICE." (let ((target (string-append "/dev/mapper/" (mapped-device-target device)))) - (find (lambda (fs) - (or (member device (file-system-dependencies fs)) - (and (string? (file-system-device fs)) - (string=? (file-system-device fs) target)))) - file-systems))) + (filter (lambda (fs) + (or (member device (file-system-dependencies fs)) + (and (string? (file-system-device fs)) + (string=? (file-system-device fs) target)))) + file-systems))) (define (operating-system-user-mapped-devices os) "Return the subset of mapped devices that can be installed in @@ -396,9 +401,8 @@ user-land--i.e., those not needed during boot." (let ((devices (operating-system-mapped-devices os)) (file-systems (operating-system-file-systems os))) (filter (lambda (md) - (let ((user (mapped-device-user md file-systems))) - (or (not user) - (not (file-system-needed-for-boot? user))))) + (let ((users (mapped-device-users md file-systems))) + (not (any file-system-needed-for-boot? users)))) devices))) (define (operating-system-boot-mapped-devices os) @@ -407,8 +411,8 @@ from the initrd." (let ((devices (operating-system-mapped-devices os)) (file-systems (operating-system-file-systems os))) (filter (lambda (md) - (let ((user (mapped-device-user md file-systems))) - (and user (file-system-needed-for-boot? user)))) + (let ((users (mapped-device-users md file-systems))) + (any file-system-needed-for-boot? users))) devices))) (define (device-mapping-services os) @@ -470,13 +474,13 @@ a container or that of a \"bare metal\" system." (cons* (service system-service-type entries) %boot-service - ;; %SHEPHERD-ROOT-SERVICE must come first so that the gexp that + ;; %SHEPHERD-ROOT-SERVICE must come last so that the gexp that ;; execs shepherd comes last in the boot script (XXX). Likewise, - ;; the cleanup service must come last so that its gexp runs before + ;; the cleanup service must come first so that its gexp runs before ;; activation code. - %shepherd-root-service - %activation-service (service cleanup-service-type #f) + %activation-service + %shepherd-root-service (pam-root-service (operating-system-pam-services os)) (account-service (append (operating-system-accounts os) @@ -616,9 +620,6 @@ unset PATH GUIX_PROFILE=/run/current-system/profile ; \\ . /run/current-system/profile/etc/profile -# Prepend setuid programs. -export PATH=/run/setuid-programs:$PATH - # Since 'lshd' does not use pam_env, /etc/environment must be explicitly # loaded when someone logs in via SSH. See . # We need 'PATH' to be defined here, for 'cat' and 'cut'. Do this before @@ -630,16 +631,26 @@ then export `cat /etc/environment | cut -d= -f1` fi -if [ -f \"$HOME/.guix-profile/etc/profile\" ] -then - # Load the user profile's settings. - GUIX_PROFILE=\"$HOME/.guix-profile\" ; \\ - . \"$HOME/.guix-profile/etc/profile\" -else - # At least define this one so that basic things just work - # when the user installs their first package. - export PATH=\"$HOME/.guix-profile/bin:$PATH\" -fi +# Arrange so that ~/.config/guix/current comes first. +for profile in \"$HOME/.guix-profile\" \"$HOME/.config/guix/current\" +do + if [ -f \"$profile/etc/profile\" ] + then + # Load the user profile's settings. + GUIX_PROFILE=\"$profile\" ; \\ + . \"$profile/etc/profile\" + else + # At least define this one so that basic things just work + # when the user installs their first package. + export PATH=\"$profile/bin:$PATH\" + fi +done + +# Prepend setuid programs. +export PATH=/run/setuid-programs:$PATH + +# Arrange so that ~/.config/guix/current/share/info comes first. +export INFOPATH=\"$HOME/.config/guix/current/share/info:$INFOPATH\" # Set the umask, notably for users logging in via 'lsh'. # See . @@ -812,7 +823,6 @@ we're running in the final root. When CONTAINER? is true, skip all hardware-related operations as necessary when booting a Linux container." (let* ((services (operating-system-services os #:container? container?)) (boot (fold-services services #:target-type boot-service-type))) - ;; BOOT is the script as a monadic value. (service-value boot))) (define (operating-system-user-accounts os) diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index 2b5948256a..393dd0df70 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -194,10 +194,15 @@ ;; differs from user to user. (define (%store-prefix) "Return the store prefix." - (cond ((resolve-module '(guix store) #:ensure #f) + ;; Note: If we have (guix store database) in the search path and we do *not* + ;; have (guix store) proper, 'resolve-module' returns an empty (guix store) + ;; with one sub-module. + (cond ((and=> (resolve-module '(guix store) #:ensure #f) + (lambda (store) + (module-variable store '%store-prefix))) => - (lambda (store) - ((module-ref store '%store-prefix)))) + (lambda (variable) + ((variable-ref variable)))) ((getenv "NIX_STORE") => identity) (else diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 35f4ba9c24..6a3ae1947b 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -54,7 +54,8 @@ novena-installation-os pine64-plus-installation-os rk3399-puma-installation-os - wandboard-installation-os)) + wandboard-installation-os + os-with-u-boot)) ;;; Commentary: ;;; @@ -386,6 +387,19 @@ You have been warned. Thanks for being so brave.\x1b[0m nvi ;:wq! %base-packages)))) +(define* (os-with-u-boot os board #:key (bootloader-target "/dev/mmcblk0") + (triplet "arm-linux-gnueabihf")) + "Given OS, amend it with the u-boot bootloader for BOARD, +installed to BOOTLOADER-TARGET (a drive), compiled for TRIPLET. + +If you want a serial console, make sure to specify one in your +operating-system's kernel-arguments (\"console=ttyS0\" or similar)." + (operating-system (inherit os) + (bootloader (bootloader-configuration + (bootloader (bootloader (inherit u-boot-bootloader) + (package (make-u-boot-package board triplet)))) + (target bootloader-target))))) + (define* (embedded-installation-os bootloader bootloader-target tty #:key (extra-modules '())) "Return an installation os for embedded systems. diff --git a/gnu/system/mapped-devices.scm b/gnu/system/mapped-devices.scm index a2cca0a93b..c452bdd894 100644 --- a/gnu/system/mapped-devices.scm +++ b/gnu/system/mapped-devices.scm @@ -32,7 +32,8 @@ #:use-module (gnu system uuid) #:autoload (gnu build file-systems) (find-partition-by-luks-uuid) #:autoload (gnu build linux-modules) - (device-module-aliases matching-modules known-module-aliases) + (device-module-aliases matching-modules known-module-aliases + normalize-module-name) #:autoload (gnu packages cryptsetup) (cryptsetup-static) #:autoload (gnu packages linux) (mdadm-static) #:use-module (srfi srfi-1) @@ -127,10 +128,15 @@ DEVICE must be a \"/dev\" file name." (const #f))) (when aliases - (let ((modules (delete-duplicates - (append-map (cut matching-modules <> aliases) - (device-module-aliases device))))) - (unless (every (cute member <> linux-modules) modules) + (let ((modules (delete-duplicates + (append-map (cut matching-modules <> aliases) + (device-module-aliases device)))) + + ;; Module names (not file names) are supposed to use underscores + ;; instead of hyphens. MODULES is a list of module names, whereas + ;; LINUX-MODULES is file names without '.ko', so normalize them. + (provided (map normalize-module-name linux-modules))) + (unless (every (cut member <> provided) modules) (raise (condition (&message (message (format #f (G_ "you may need these modules \ diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index ef5b8dab92..28d399f2b1 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -168,6 +168,9 @@ then return fi +# Source the system-wide file. +source /etc/bashrc + # Adjust the prompt depending on whether we're in 'guix environment'. if [ -n \"$GUIX_ENVIRONMENT\" ] then diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 8cfbda2264..b505b0cf6b 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -34,6 +34,7 @@ #:use-module (guix utils) #:use-module (guix hash) #:use-module (guix base32) + #:use-module ((guix self) #:select (make-config.scm)) #:use-module ((gnu build vm) #:select (qemu-command)) @@ -50,7 +51,6 @@ #:use-module (gnu packages disk) #:use-module (gnu packages zile) #:use-module (gnu packages linux) - #:use-module (gnu packages package-management) #:use-module ((gnu packages make-bootstrap) #:select (%guile-static-stripped)) #:use-module (gnu packages admin) @@ -116,6 +116,19 @@ (options "trans=virtio") (check? #f)))) +(define not-config? + ;; Select (guix …) and (gnu …) modules, except (guix config). + (match-lambda + (('guix 'config) #f) + (('guix rest ...) #t) + (('gnu rest ...) #t) + (rest #f))) + +(define guile-sqlite3&co + ;; Guile-SQLite3 and its propagated inputs. + (cons guile-sqlite3 + (package-transitive-propagated-inputs guile-sqlite3))) + (define* (expression->derivation-in-linux-vm name exp #:key (system (%current-system)) @@ -125,6 +138,8 @@ (env-vars '()) (guile-for-build (%guile-for-build)) + (file-systems + %linux-vm-file-systems) (single-file-output? #f) (make-disk-image? #f) @@ -134,8 +149,9 @@ (disk-image-size 'guess)) "Evaluate EXP in a QEMU virtual machine running LINUX with INITRD (a derivation). The virtual machine runs with MEMORY-SIZE MiB of memory. In the -virtual machine, EXP has access to all its inputs from the store; it should -put its output file(s) in the '/xchg' directory. +virtual machine, EXP has access to FILE-SYSTEMS, which, by default, includes a +9p share of the store, the '/xchg' where EXP should put its output file(s), +and a 9p share of /tmp. If SINGLE-FILE-OUTPUT? is true, copy a single file from '/xchg' to OUTPUT. Otherwise, copy the contents of /xchg to a new directory OUTPUT. @@ -148,14 +164,30 @@ based on the size of the closure of REFERENCES-GRAPHS. When REFERENCES-GRAPHS is true, it must be a list of file name/store path pairs, as for `derivation'. The files containing the reference graphs are made available under the /xchg CIFS share." + (define config + ;; (guix config) module for consumption by (guix gcrypt). + (make-config.scm #:libgcrypt libgcrypt)) + + (define user-builder + (program-file "builder-in-linux-vm" exp)) + + (define loader + ;; Invoke USER-BUILDER instead using 'primitive-load'. The reason for + ;; this is to allow USER-BUILDER to dlopen stuff by using a full-featured + ;; Guile, which it couldn't do using the statically-linked guile used in + ;; the initrd. See example at + ;; . + (program-file "linux-vm-loader" + ;; When USER-BUILDER succeeds, reboot (indicating a + ;; success), otherwise die, which causes a kernel panic + ;; ("Attempted to kill init!"). + #~(when (zero? (system* #$user-builder)) + (reboot)))) + (mlet* %store-monad - ((user-builder (gexp->file "builder-in-linux-vm" exp)) - (loader (gexp->file "linux-vm-loader" - #~(primitive-load #$user-builder))) - (coreutils -> (canonical-package coreutils)) - (initrd (if initrd ; use the default initrd? + ((initrd (if initrd ; use the default initrd? (return initrd) - (base-initrd %linux-vm-file-systems + (base-initrd file-systems #:on-error 'backtrace #:linux linux #:linux-modules %base-initrd-modules @@ -163,40 +195,44 @@ made available under the /xchg CIFS share." (define builder ;; Code that launches the VM that evaluates EXP. - (with-imported-modules (source-module-closure '((guix build utils) - (gnu build vm))) - #~(begin - (use-modules (guix build utils) - (gnu build vm)) + (with-extensions guile-sqlite3&co + (with-imported-modules `(,@(source-module-closure + '((guix build utils) + (gnu build vm)) + #:select? not-config?) + ((guix config) => ,config)) + #~(begin + (use-modules (guix build utils) + (gnu build vm)) - (let* ((inputs '#$(list qemu coreutils)) - (linux (string-append #$linux "/" - #$(system-linux-image-file-name))) - (initrd (string-append #$initrd "/initrd")) - (loader #$loader) - (graphs '#$(match references-graphs - (((graph-files . _) ...) graph-files) - (_ #f))) - (size #$(if (eq? 'guess disk-image-size) - #~(+ (* 70 (expt 2 20)) ;ESP - (estimated-partition-size graphs)) - disk-image-size))) + (let* ((inputs '#$(list qemu (canonical-package coreutils))) + (linux (string-append #$linux "/" + #$(system-linux-image-file-name))) + (initrd (string-append #$initrd "/initrd")) + (loader #$loader) + (graphs '#$(match references-graphs + (((graph-files . _) ...) graph-files) + (_ #f))) + (size #$(if (eq? 'guess disk-image-size) + #~(+ (* 70 (expt 2 20)) ;ESP + (estimated-partition-size graphs)) + disk-image-size))) - (set-path-environment-variable "PATH" '("bin") inputs) + (set-path-environment-variable "PATH" '("bin") inputs) - (load-in-linux-vm loader - #:output #$output - #:linux linux #:initrd initrd - #:memory-size #$memory-size - #:make-disk-image? #$make-disk-image? - #:single-file-output? #$single-file-output? - ;; FIXME: ‘target-arm32?’ may not operate on - ;; the right system/target values. Rewrite - ;; using ‘let-system’ when available. - #:target-arm32? #$(target-arm32?) - #:disk-image-format #$disk-image-format - #:disk-image-size size - #:references-graphs graphs))))) + (load-in-linux-vm loader + #:output #$output + #:linux linux #:initrd initrd + #:memory-size #$memory-size + #:make-disk-image? #$make-disk-image? + #:single-file-output? #$single-file-output? + ;; FIXME: ‘target-arm32?’ may not operate on + ;; the right system/target values. Rewrite + ;; using ‘let-system’ when available. + #:target-arm32? #$(target-arm32?) + #:disk-image-format #$disk-image-format + #:disk-image-size size + #:references-graphs graphs)))))) (gexp->derivation name builder ;; TODO: Require the "kvm" feature. @@ -219,44 +255,65 @@ made available under the /xchg CIFS share." "Return a bootable, stand-alone iso9660 image. INPUTS is a list of inputs (as for packages)." + (define config + (make-config.scm #:libgcrypt libgcrypt)) + + (define schema + (and register-closures? + (local-file (search-path %load-path + "guix/store/schema.sql")))) + (expression->derivation-in-linux-vm name - (with-imported-modules (source-module-closure '((gnu build vm) - (guix build utils))) - #~(begin - (use-modules (gnu build vm) - (guix build utils)) + (with-extensions guile-sqlite3&co + (with-imported-modules `(,@(source-module-closure '((gnu build vm) + (guix store database) + (guix build utils)) + #:select? not-config?) + ((guix config) => ,config)) + #~(begin + (use-modules (gnu build vm) + (guix store database) + (guix build utils)) - (let ((inputs - '#$(append (list qemu parted e2fsprogs dosfstools xorriso) - (map canonical-package - (list sed grep coreutils findutils gawk)) - (if register-closures? (list guix) '()))) + (sql-schema #$schema) + + (let ((inputs + '#$(append (list qemu parted e2fsprogs dosfstools xorriso) + (map canonical-package + (list sed grep coreutils findutils gawk)))) - (graphs '#$(match inputs - (((names . _) ...) - names))) - ;; This variable is unused but allows us to add INPUTS-TO-COPY - ;; as inputs. - (to-register - '#$(map (match-lambda - ((name thing) thing) - ((name thing output) `(,thing ,output))) - inputs))) + (graphs '#$(match inputs + (((names . _) ...) + names))) + ;; This variable is unused but allows us to add INPUTS-TO-COPY + ;; as inputs. + (to-register + '#$(map (match-lambda + ((name thing) thing) + ((name thing output) `(,thing ,output))) + inputs))) - (set-path-environment-variable "PATH" '("bin" "sbin") inputs) - (make-iso9660-image #$(bootloader-package bootloader) - #$bootcfg-drv - #$os-drv - "/xchg/guixsd.iso" - #:register-closures? #$register-closures? - #:closures graphs - #:volume-id #$file-system-label - #:volume-uuid #$(and=> file-system-uuid - uuid-bytevector)) - (reboot)))) + (set-path-environment-variable "PATH" '("bin" "sbin") inputs) + (make-iso9660-image #$(bootloader-package bootloader) + #$bootcfg-drv + #$os-drv + "/xchg/guixsd.iso" + #:register-closures? #$register-closures? + #:closures graphs + #:volume-id #$file-system-label + #:volume-uuid #$(and=> file-system-uuid + uuid-bytevector)))))) #:system system + + ;; Keep a local file system for /tmp so that we can populate it directly as + ;; root and have files owned by root. See . + #:file-systems (remove (lambda (file-system) + (string=? (file-system-mount-point file-system) + "/tmp")) + %linux-vm-file-systems) + #:make-disk-image? #f #:single-file-output? #t #:references-graphs inputs)) @@ -290,91 +347,104 @@ INPUTS is a list of inputs (as for packages). When COPY-INPUTS? is true, copy all of INPUTS into the image being built. When REGISTER-CLOSURES? is true, register INPUTS in the store database of the image so that Guix can be used in the image." + (define config + (make-config.scm #:libgcrypt libgcrypt)) + + (define schema + (and register-closures? + (local-file (search-path %load-path + "guix/store/schema.sql")))) + (expression->derivation-in-linux-vm name - (with-imported-modules (source-module-closure '((gnu build bootloader) - (gnu build vm) - (guix build utils))) - #~(begin - (use-modules (gnu build bootloader) - (gnu build vm) - (guix build utils) - (srfi srfi-26) - (ice-9 binary-ports)) + (with-extensions guile-sqlite3&co + (with-imported-modules `(,@(source-module-closure '((gnu build vm) + (gnu build bootloader) + (guix store database) + (guix build utils)) + #:select? not-config?) + ((guix config) => ,config)) + #~(begin + (use-modules (gnu build bootloader) + (gnu build vm) + (guix store database) + (guix build utils) + (srfi srfi-26) + (ice-9 binary-ports)) - (let ((inputs - '#$(append (list qemu parted e2fsprogs dosfstools) - (map canonical-package - (list sed grep coreutils findutils gawk)) - (if register-closures? (list guix) '()))) + (sql-schema #$schema) - ;; This variable is unused but allows us to add INPUTS-TO-COPY - ;; as inputs. - (to-register - '#$(map (match-lambda - ((name thing) thing) - ((name thing output) `(,thing ,output))) - inputs))) + (let ((inputs + '#$(append (list qemu parted e2fsprogs dosfstools) + (map canonical-package + (list sed grep coreutils findutils gawk)))) - (set-path-environment-variable "PATH" '("bin" "sbin") inputs) + ;; This variable is unused but allows us to add INPUTS-TO-COPY + ;; as inputs. + (to-register + '#$(map (match-lambda + ((name thing) thing) + ((name thing output) `(,thing ,output))) + inputs))) - (let* ((graphs '#$(match inputs - (((names . _) ...) - names))) - (initialize (root-partition-initializer - #:closures graphs - #:copy-closures? #$copy-inputs? - #:register-closures? #$register-closures? - #:system-directory #$os-drv)) - (root-size #$(if (eq? 'guess disk-image-size) - #~(max - ;; Minimum 20 MiB root size - (* 20 (expt 2 20)) - (estimated-partition-size - (map (cut string-append "/xchg/" <>) - graphs))) - (- disk-image-size - (* 50 (expt 2 20))))) - (partitions - (append - (list (partition - (size root-size) - (label #$file-system-label) - (uuid #$(and=> file-system-uuid - uuid-bytevector)) - (file-system #$file-system-type) - (flags '(boot)) - (initializer initialize))) - ;; Append a small EFI System Partition for use with UEFI - ;; bootloaders if we are not targeting ARM because UEFI - ;; support in U-Boot is experimental. - ;; - ;; FIXME: ‘target-arm32?’ may be not operate on the right - ;; system/target values. Rewrite using ‘let-system’ when - ;; available. - (if #$(target-arm32?) - '() - (list (partition - ;; The standalone grub image is about 10MiB, but - ;; leave some room for custom or multiple images. - (size (* 40 (expt 2 20))) - (label "GNU-ESP") ;cosmetic only - ;; Use "vfat" here since this property is used - ;; when mounting. The actual FAT-ness is based - ;; on file system size (16 in this case). - (file-system "vfat") - (flags '(esp)))))))) - (initialize-hard-disk "/dev/vda" - #:partitions partitions - #:grub-efi #$grub-efi - #:bootloader-package - #$(bootloader-package bootloader) - #:bootcfg #$bootcfg-drv - #:bootcfg-location - #$(bootloader-configuration-file bootloader) - #:bootloader-installer - #$(bootloader-installer bootloader)) - (reboot))))) + (set-path-environment-variable "PATH" '("bin" "sbin") inputs) + + (let* ((graphs '#$(match inputs + (((names . _) ...) + names))) + (initialize (root-partition-initializer + #:closures graphs + #:copy-closures? #$copy-inputs? + #:register-closures? #$register-closures? + #:system-directory #$os-drv)) + (root-size #$(if (eq? 'guess disk-image-size) + #~(max + ;; Minimum 20 MiB root size + (* 20 (expt 2 20)) + (estimated-partition-size + (map (cut string-append "/xchg/" <>) + graphs))) + (- disk-image-size + (* 50 (expt 2 20))))) + (partitions + (append + (list (partition + (size root-size) + (label #$file-system-label) + (uuid #$(and=> file-system-uuid + uuid-bytevector)) + (file-system #$file-system-type) + (flags '(boot)) + (initializer initialize))) + ;; Append a small EFI System Partition for use with UEFI + ;; bootloaders if we are not targeting ARM because UEFI + ;; support in U-Boot is experimental. + ;; + ;; FIXME: ‘target-arm32?’ may be not operate on the right + ;; system/target values. Rewrite using ‘let-system’ when + ;; available. + (if #$(target-arm32?) + '() + (list (partition + ;; The standalone grub image is about 10MiB, but + ;; leave some room for custom or multiple images. + (size (* 40 (expt 2 20))) + (label "GNU-ESP") ;cosmetic only + ;; Use "vfat" here since this property is used + ;; when mounting. The actual FAT-ness is based + ;; on file system size (16 in this case). + (file-system "vfat") + (flags '(esp)))))))) + (initialize-hard-disk "/dev/vda" + #:partitions partitions + #:grub-efi #$grub-efi + #:bootloader-package + #$(bootloader-package bootloader) + #:bootcfg #$bootcfg-drv + #:bootcfg-location + #$(bootloader-configuration-file bootloader) + #:bootloader-installer + #$(bootloader-installer bootloader))))))) #:system system #:make-disk-image? #t #:disk-image-size disk-image-size @@ -392,49 +462,41 @@ makes sense when you want to build a GuixSD Docker image that has Guix installed inside of it. If you don't need Guix (e.g., your GuixSD Docker image just contains a web server that is started by the Shepherd), then you should set REGISTER-CLOSURES? to #f." - (define not-config? - (match-lambda - (('guix 'config) #f) - (('guix rest ...) #t) - (('gnu rest ...) #t) - (rest #f))) - (define config ;; (guix config) module for consumption by (guix gcrypt). - (scheme-file "gcrypt-config.scm" - #~(begin - (define-module (guix config) - #:export (%libgcrypt)) + (make-config.scm #:libgcrypt libgcrypt)) - ;; XXX: Work around . - (eval-when (expand load eval) - (define %libgcrypt - #+(file-append libgcrypt "/lib/libgcrypt")))))) + (define schema + (and register-closures? + (local-file (search-path %load-path + "guix/store/schema.sql")))) (mlet %store-monad ((os-drv (operating-system-derivation os #:container? #t)) (name -> (string-append name ".tar.gz")) (graph -> "system-graph")) (define build - (with-extensions (list guile-json) ;for (guix docker) + (with-extensions (cons guile-json ;for (guix docker) + guile-sqlite3&co) ;for (guix store database) (with-imported-modules `(,@(source-module-closure '((guix docker) + (guix store database) (guix build utils) + (guix build store-copy) (gnu build vm)) #:select? not-config?) - (guix build store-copy) ((guix config) => ,config)) #~(begin (use-modules (guix docker) (guix build utils) (gnu build vm) (srfi srfi-19) - (guix build store-copy)) + (guix build store-copy) + (guix store database)) - (let* ((inputs '#$(append (list tar) - (if register-closures? - (list guix) - '()))) - ;; This initializer requires elevated privileges that are + ;; Set the SQL schema location. + (sql-schema #$schema) + + (let* (;; This initializer requires elevated privileges that are ;; not normally available in the build environment (e.g., ;; it needs to create device nodes). In order to obtain ;; such privileges, we run it as root in a VM. @@ -449,33 +511,22 @@ should set REGISTER-CLOSURES? to #f." ;; lack of privileges if we use a root-directory that is on ;; a file system that is shared with the host (e.g., /tmp). (root-directory "/guixsd-system-root")) - (set-path-environment-variable "PATH" '("bin" "sbin") inputs) + (set-path-environment-variable "PATH" '("bin" "sbin") '(#+tar)) (mkdir root-directory) (initialize root-directory) (build-docker-image (string-append "/xchg/" #$name) ;; The output file. (cons* root-directory - (call-with-input-file (string-append "/xchg/" #$graph) - read-reference-graph)) + (map store-info-item + (call-with-input-file + (string-append "/xchg/" #$graph) + read-reference-graph))) #$os-drv #:compressor '(#+(file-append gzip "/bin/gzip") "-9n") #:creation-time (make-time time-utc 0 1) #:transformations `((,root-directory -> "")))))))) (expression->derivation-in-linux-vm - name - ;; The VM's initrd Guile doesn't support dlopen, but our "build" gexp - ;; needs to be run by a Guile that can dlopen libgcrypt. The following - ;; hack works around that problem by putting the "build" gexp into an - ;; executable script (created by program-file) which, when executed, will - ;; run using a Guile that supports dlopen. That way, the VM's initrd - ;; Guile can just execute it via invoke, without using dlopen. See: - ;; https://lists.gnu.org/archive/html/guix-devel/2017-10/msg00233.html - (with-imported-modules `((guix build utils)) - #~(begin - (use-modules (guix build utils)) - ;; If we use execl instead of invoke here, the VM will crash with a - ;; kernel panic. - (invoke #$(program-file "build-docker-image" build)))) + name build #:make-disk-image? #f #:single-file-output? #t #:references-graphs `((,graph ,os-drv))))) diff --git a/gnu/tests/admin.scm b/gnu/tests/admin.scm index 3c7deb5426..a5abbe9ad4 100644 --- a/gnu/tests/admin.scm +++ b/gnu/tests/admin.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Christopher Baines +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -74,13 +75,11 @@ HTTP-PORT." (test-begin "tailon") - (test-eq "service running" - 'running! + (test-assert "service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'tailon) - 'running!) + (start-service 'tailon)) marionette)) (define* (retry-on-error f #:key times delay) diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 3faeddef6c..4c24cf57f6 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,8 @@ #:use-module (gnu services mcron) #:use-module (gnu services shepherd) #:use-module (gnu services networking) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages imagemagick) #:use-module (gnu packages ocr) #:use-module (gnu packages package-management) @@ -36,11 +39,13 @@ #:use-module (gnu packages tmux) #:use-module (guix gexp) #:use-module (guix store) + #:use-module (guix monads) #:use-module (guix packages) #:use-module (srfi srfi-1) #:export (run-basic-test %test-basic-os %test-halt + %test-cleanup %test-mcron %test-nss-mdns)) @@ -470,6 +475,72 @@ in a loop. See .") (guix combinators))))) (run-halt-test (virtual-machine os)))))) + +;;; +;;; Cleanup of /tmp, /var/run, etc. +;;; + +(define %cleanup-os + (simple-operating-system + (simple-service 'dirty-things + boot-service-type + (let ((script (plain-file + "create-utf8-file.sh" + (string-append + "echo $0: dirtying /tmp...\n" + "set -e; set -x\n" + "touch /witness\n" + "exec touch /tmp/λαμβδα")))) + (with-imported-modules '((guix build utils)) + #~(begin + (setenv "PATH" + #$(file-append coreutils "/bin")) + (invoke #$(file-append bash "/bin/sh") + #$script))))))) + +(define (run-cleanup-test name) + (define os + (marionette-operating-system %cleanup-os + #:imported-modules '((gnu services herd) + (guix combinators)))) + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-64) + (ice-9 match)) + + (define marionette + (make-marionette (list #$(virtual-machine os)))) + + (mkdir #$output) + (chdir #$output) + + (test-begin "cleanup") + + (test-assert "dirty service worked" + (marionette-eval '(file-exists? "/witness") marionette)) + + (test-equal "/tmp cleaned up" + '("." "..") + (marionette-eval '(begin + (use-modules (ice-9 ftw)) + (scandir "/tmp")) + marionette)) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation "cleanup" test)) + +(define %test-cleanup + ;; See . + (system-test + (name "cleanup") + (description "Make sure the 'cleanup' service can remove files with +non-ASCII names from /tmp.") + (value (run-cleanup-test name)))) + ;;; ;;; Mcron. @@ -517,13 +588,11 @@ in a loop. See .") (test-begin "mcron") - (test-eq "service running" - 'running! + (test-assert "service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'mcron) - 'running!) + (start-service 'mcron)) marionette)) ;; Make sure root's mcron job runs, has its cwd set to "/root", and @@ -619,32 +688,43 @@ in a loop. See .") (test-begin "avahi") - (test-assert "wait for services" + (test-assert "nscd PID file is created" (marionette-eval '(begin (use-modules (gnu services herd)) + (start-service 'nscd)) + marionette)) - (start-service 'nscd) + (test-assert "nscd is listening on its socket" + (marionette-eval + ;; XXX: Work around a race condition in nscd: nscd creates its + ;; PID file before it is listening on its socket. + '(let ((sock (socket PF_UNIX SOCK_STREAM 0))) + (let try () + (catch 'system-error + (lambda () + (connect sock AF_UNIX "/var/run/nscd/socket") + (close-port sock) + (format #t "nscd is ready~%") + #t) + (lambda args + (format #t "waiting for nscd...~%") + (usleep 500000) + (try))))) + marionette)) - ;; XXX: Work around a race condition in nscd: nscd creates its - ;; PID file before it is listening on its socket. - (let ((sock (socket PF_UNIX SOCK_STREAM 0))) - (let try () - (catch 'system-error - (lambda () - (connect sock AF_UNIX "/var/run/nscd/socket") - (close-port sock) - (format #t "nscd is ready~%")) - (lambda args - (format #t "waiting for nscd...~%") - (usleep 500000) - (try))))) + (test-assert "avahi is running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'avahi-daemon)) + marionette)) - ;; Wait for the other useful things. - (start-service 'avahi-daemon) - (start-service 'networking) - - #t) + (test-assert "network is up" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'networking)) marionette)) (test-equal "avahi-resolve-host-name" diff --git a/gnu/tests/dict.scm b/gnu/tests/dict.scm index 4431e37dc1..dd60ffd464 100644 --- a/gnu/tests/dict.scm +++ b/gnu/tests/dict.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2018 Ludovic Courtès +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -84,13 +85,11 @@ (test-begin "dicod") ;; Wait for the service to be started. - (test-eq "service is running" - 'running! + (test-assert "service is running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'dicod) - 'running!) + (start-service 'dicod)) marionette)) ;; Wait until dicod is actually listening. diff --git a/gnu/tests/mail.scm b/gnu/tests/mail.scm index 4de13b8684..5677969fac 100644 --- a/gnu/tests/mail.scm +++ b/gnu/tests/mail.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2017 Carlo Zancanaro ;;; Copyright © 2017 Ludovic Courtès ;;; Copyright © 2018 Oleg Pykhalov +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -84,8 +85,7 @@ accept from any for local deliver to mbox (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'smtpd) - #t) + (start-service 'smtpd)) marionette)) (test-assert "mbox is empty" @@ -224,8 +224,7 @@ acl_check_data: (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'exim) - #t) + (start-service 'exim)) marionette)) (sleep 1) ;; give the service time to start talking @@ -330,13 +329,11 @@ Subject: Hello Nice to meet you!") (test-begin "dovecot") ;; Wait for dovecot to be up and running. - (test-eq "dovecot running" - 'running! + (test-assert "dovecot running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'dovecot) - 'running!) + (start-service 'dovecot)) marionette)) ;; Check Dovecot service's PID. diff --git a/gnu/tests/messaging.scm b/gnu/tests/messaging.scm index f17dfe6265..f5f99b9f56 100644 --- a/gnu/tests/messaging.scm +++ b/gnu/tests/messaging.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017, 2018 Clément Lassieur ;;; Copyright © 2017, 2018 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. @@ -102,13 +102,11 @@ (test-begin "xmpp") ;; Wait for XMPP service to be up and running. - (test-eq "service running" - 'running! + (test-assert "service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'xmpp-daemon) - 'running!) + (start-service 'xmpp-daemon)) marionette)) ;; Check XMPP service's PID. @@ -196,13 +194,11 @@ (test-begin "bitlbee") - (test-eq "service started" - 'running! + (test-assert "service started" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'bitlbee) - 'running!) + (start-service 'bitlbee)) marionette)) (test-equal "valid PID" diff --git a/gnu/tests/nfs.scm b/gnu/tests/nfs.scm index d58cf7aefd..140f03779b 100644 --- a/gnu/tests/nfs.scm +++ b/gnu/tests/nfs.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 John Darrington ;;; Copyright © 2017 Mathieu Othacehe ;;; Copyright © 2017 Tobias Geerinckx-Rice +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -94,13 +95,11 @@ (test-begin "rpc-daemon") ;; Wait for the rpcbind daemon to be up and running. - (test-eq "RPC service running" - 'running! + (test-assert "RPC service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'rpcbind-daemon) - 'running!) + (start-service 'rpcbind-daemon)) marionette)) ;; Check the socket file and that the service is still running. diff --git a/gnu/tests/rsync.scm b/gnu/tests/rsync.scm index c97836788b..a6f8fa2bd1 100644 --- a/gnu/tests/rsync.scm +++ b/gnu/tests/rsync.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Christopher Baines +;;; Copyright © 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -59,13 +60,11 @@ PORT." (test-begin "rsync") ;; Wait for rsync to be up and running. - (test-eq "service running" - 'running! + (test-assert "service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'rsync) - 'running!) + (start-service 'rsync)) marionette)) ;; Make sure the PID file is created. diff --git a/gnu/tests/ssh.scm b/gnu/tests/ssh.scm index 9247a43e6d..2e40122add 100644 --- a/gnu/tests/ssh.scm +++ b/gnu/tests/ssh.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès -;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017, 2018 Clément Lassieur ;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. @@ -111,13 +111,11 @@ root with an empty password." (test-begin "ssh-daemon") ;; Wait for sshd to be up and running. - (test-eq "service running" - 'running! + (test-assert "service running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'ssh-daemon) - 'running!) + (start-service 'ssh-daemon)) marionette)) ;; Check sshd's PID file. diff --git a/gnu/tests/version-control.scm b/gnu/tests/version-control.scm index 8024739734..3b935a1b48 100644 --- a/gnu/tests/version-control.scm +++ b/gnu/tests/version-control.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2018 Oleg Pykhalov ;;; Copyright © 2017, 2018 Ludovic Courtès -;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017, 2018 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -147,23 +147,19 @@ HTTP-PORT." marionette)) ;; Wait for nginx to be up and running. - (test-eq "nginx running" - 'running! + (test-assert "nginx running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'nginx) - 'running!) + (start-service 'nginx)) marionette)) ;; Wait for fcgiwrap to be up and running. - (test-eq "fcgiwrap running" - 'running! + (test-assert "fcgiwrap running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'fcgiwrap) - 'running!) + (start-service 'fcgiwrap)) marionette)) ;; Make sure the PID file is created. @@ -272,13 +268,11 @@ HTTP-PORT." (test-begin "git-http") ;; Wait for nginx to be up and running. - (test-eq "nginx running" - 'running! + (test-assert "nginx running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'nginx) - 'running!) + (start-service 'nginx)) marionette)) ;; Make sure Git test repository is created. diff --git a/gnu/tests/web.scm b/gnu/tests/web.scm index a6bf6efcfe..73d502dd0e 100644 --- a/gnu/tests/web.scm +++ b/gnu/tests/web.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Ludovic Courtès ;;; Copyright © 2017 Christopher Baines -;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017, 2018 Clément Lassieur ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; ;;; This file is part of GNU Guix. @@ -245,13 +245,11 @@ HTTP-PORT, along with php-fpm." ((pid) (number? pid)))))) marionette)) - (test-eq "nginx running" - 'running! + (test-assert "nginx running" (marionette-eval '(begin (use-modules (gnu services herd)) - (start-service 'nginx) - 'running!) + (start-service 'nginx)) marionette)) (test-equal "http-get" diff --git a/guix/build-system/r.scm b/guix/build-system/r.scm index d20f66e1a9..d5f897932f 100644 --- a/guix/build-system/r.scm +++ b/guix/build-system/r.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2017 Ricardo Wurmus +;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -74,7 +74,7 @@ release corresponding to NAME and VERSION." #:rest arguments) "Return a bag for NAME." (define private-keywords - '(#:source #:target #:inputs #:native-inputs)) + '(#:source #:target #:r #:inputs #:native-inputs)) (and (not target) ;XXX: no cross-compilation (bag diff --git a/guix/build/compile.scm b/guix/build/compile.scm index 7b6e31107c..5a1363556a 100644 --- a/guix/build/compile.scm +++ b/guix/build/compile.scm @@ -196,6 +196,20 @@ files are for HOST, a GNU triplet such as \"x86_64-linux-gnu\"." (unless (zero? total) (report-compilation #f total total))))) +(eval-when (eval load) + (when (and (string=? "2" (major-version)) + (or (string=? "0" (minor-version)) + (and (string=? (minor-version) "2") + (< (string->number (micro-version)) 4)))) + ;; Work around on Guile < 2.2.4. + ;; Serialize 'try-module-autoload' calls. + (set! (@ (guile) try-module-autoload) + (let ((mutex (make-mutex 'recursive)) + (real (@ (guile) try-module-autoload))) + (lambda* (module #:optional version) + (with-mutex mutex + (real module version))))))) + ;;; Local Variables: ;;; eval: (put 'with-augmented-search-path 'scheme-indent-function 2) ;;; eval: (put 'with-target 'scheme-indent-function 1) diff --git a/guix/build/store-copy.scm b/guix/build/store-copy.scm index fe2eb6f69a..2d9590d16f 100644 --- a/guix/build/store-copy.scm +++ b/guix/build/store-copy.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2017 Ludovic Courtès +;;; Copyright © 2013, 2014, 2017, 2018 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,10 +18,22 @@ (define-module (guix build store-copy) #:use-module (guix build utils) + #:use-module (guix sets) #:use-module (srfi srfi-1) + #:use-module (srfi srfi-9) + #:use-module (srfi srfi-26) + #:use-module (ice-9 match) #:use-module (ice-9 rdelim) #:use-module (ice-9 ftw) - #:export (read-reference-graph + #:use-module (ice-9 vlist) + #:export (store-info? + store-info + store-info-item + store-info-deriver + store-info-references + + read-reference-graph + closure-size populate-store)) @@ -34,19 +46,94 @@ ;;; ;;; Code: +;; Information about a store item as produced by #:references-graphs. +(define-record-type + (store-info item deriver references) + store-info? + (item store-info-item) ;string + (deriver store-info-deriver) ;#f | string + (references store-info-references)) ;? + +;; TODO: Factorize with that in (guix store). +(define (topological-sort nodes edges) + "Return NODES in topological order according to EDGES. EDGES must be a +one-argument procedure that takes a node and returns the nodes it is connected +to." + (define (traverse) + ;; Do a simple depth-first traversal of all of PATHS. + (let loop ((nodes nodes) + (visited (setq)) + (result '())) + (match nodes + ((head tail ...) + (if (set-contains? visited head) + (loop tail visited result) + (call-with-values + (lambda () + (loop (edges head) + (set-insert head visited) + result)) + (lambda (visited result) + (loop tail visited (cons head result)))))) + (() + (values visited result))))) + + (call-with-values traverse + (lambda (_ result) + (reverse result)))) + (define (read-reference-graph port) - "Return a list of store paths from the reference graph at PORT. -The data at PORT is the format produced by #:references-graphs." - (let loop ((line (read-line port)) - (result '())) - (cond ((eof-object? line) - (delete-duplicates result)) - ((string-prefix? "/" line) - (loop (read-line port) - (cons line result))) - (else - (loop (read-line port) - result))))) + "Read the reference graph as produced by #:references-graphs from PORT and +return it as a list of records in topological order--i.e., leaves +come first. IOW, store items in the resulting list can be registered in the +order in which they appear. + +The reference graph format consists of sequences of lines like this: + + FILE + DERIVER + NUMBER-OF-REFERENCES + REF1 + ... + REFN + +It is meant as an internal format." + (let loop ((result '()) + (table vlist-null) + (referrers vlist-null)) + (match (read-line port) + ((? eof-object?) + ;; 'guix-daemon' gives us something that's in "reverse topological + ;; order"--i.e., leaves (items with zero references) come last. Here + ;; we compute the topological order that we want: leaves come first. + (let ((unreferenced? (lambda (item) + (let ((referrers (vhash-fold* cons '() + (store-info-item item) + referrers))) + (or (null? referrers) + (equal? (list item) referrers)))))) + (topological-sort (filter unreferenced? result) + (lambda (item) + (map (lambda (item) + (match (vhash-assoc item table) + ((_ . node) node))) + (store-info-references item)))))) + (item + (let* ((deriver (match (read-line port) + ("" #f) + (line line))) + (count (string->number (read-line port))) + (refs (unfold-right (cut >= <> count) + (lambda (n) + (read-line port)) + 1+ + 0)) + (item (store-info item deriver refs))) + (loop (cons item result) + (vhash-cons (store-info-item item) item table) + (fold (cut vhash-cons <> item <>) + referrers + refs))))))) (define (file-size file) "Return the size of bytes of FILE, entering it if FILE is a directory." @@ -72,7 +159,8 @@ The data at PORT is the format produced by #:references-graphs." "Return an estimate of the size of the closure described by REFERENCE-GRAPHS, a list of reference-graph files." (define (graph-from-file file) - (call-with-input-file file read-reference-graph)) + (map store-info-item + (call-with-input-file file read-reference-graph))) (define items (delete-duplicates (append-map graph-from-file reference-graphs))) @@ -88,7 +176,8 @@ REFERENCE-GRAPHS, a list of reference-graph files." (define (things-to-copy) ;; Return the list of store files to copy to the image. (define (graph-from-file file) - (call-with-input-file file read-reference-graph)) + (map store-info-item + (call-with-input-file file read-reference-graph))) (delete-duplicates (append-map graph-from-file reference-graphs))) diff --git a/guix/build/waf-build-system.scm b/guix/build/waf-build-system.scm index f0364e867d..56048e7685 100644 --- a/guix/build/waf-build-system.scm +++ b/guix/build/waf-build-system.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,7 +38,8 @@ (begin (format #t "running \"python waf\" with command ~s and parameters ~s~%" command params) - (zero? (apply system* "python" "waf" command params))) + (apply invoke "python" "waf" command params) + #t) (error "no waf found"))) (define* (configure #:key target native-inputs inputs outputs diff --git a/guix/config.scm.in b/guix/config.scm.in index dfe5fe0dbf..1a761b912e 100644 --- a/guix/config.scm.in +++ b/guix/config.scm.in @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018 Ludovic Courtès ;;; Copyright © 2017 Caleb Ristvedt ;;; ;;; This file is part of GNU Guix. @@ -26,18 +26,15 @@ %storedir %localstatedir %sysconfdir - %sbindir %store-directory %state-directory %store-database-directory %config-directory - %guix-register-program %system %libgcrypt %libz - %nix-instantiate %gzip %bzip2 %xz)) @@ -70,9 +67,6 @@ (define %sysconfdir "@guix_sysconfdir@") -(define %sbindir - "@guix_sbindir@") - (define %store-directory (or (and=> (getenv "NIX_STORE_DIR") canonicalize-path) %storedir)) @@ -83,7 +77,7 @@ (string-append %localstatedir "/guix"))) (define %store-database-directory - (or (and=> (getenv "NIX_DB_DIR") canonicalize-path) + (or (getenv "NIX_DB_DIR") (string-append %state-directory "/db"))) (define %config-directory @@ -91,11 +85,6 @@ (or (getenv "GUIX_CONFIGURATION_DIRECTORY") (string-append %sysconfdir "/guix"))) -(define %guix-register-program - ;; The 'guix-register' program. - (or (getenv "GUIX_REGISTER") - (string-append %sbindir "/guix-register"))) - (define %system "@guix_system@") @@ -105,9 +94,6 @@ (define %libz "@LIBZ@") -(define %nix-instantiate - "@NIX_INSTANTIATE@") - (define %gzip "@GZIP@") diff --git a/guix/import/cpan.scm b/guix/import/cpan.scm index 58c051e283..08bed8767c 100644 --- a/guix/import/cpan.scm +++ b/guix/import/cpan.scm @@ -88,9 +88,10 @@ "Return the base distribution module for a given module. E.g. the 'ok' module is distributed with 'Test::Simple', so (module->dist-name \"ok\") would return \"Test-Simple\"" - (assoc-ref (json-fetch (string-append "https://fastapi.metacpan.org/v1/module/" - module - "?fields=distribution")) + (assoc-ref (json-fetch-alist (string-append + "https://fastapi.metacpan.org/v1/module/" + module + "?fields=distribution")) "distribution")) (define (package->upstream-name package) @@ -113,7 +114,7 @@ return \"Test-Simple\"" "Return an alist representation of the CPAN metadata for the perl module MODULE, or #f on failure. MODULE should be e.g. \"Test::Script\"" ;; This API always returns the latest release of the module. - (json-fetch (string-append "https://fastapi.metacpan.org/v1/release/" name))) + (json-fetch-alist (string-append "https://fastapi.metacpan.org/v1/release/" name))) (define (cpan-home name) (string-append "http://search.cpan.org/dist/" name "/")) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 49e5d2d358..a5203fe78d 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -25,7 +25,6 @@ #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) - #:use-module (srfi srfi-41) #:use-module (ice-9 receive) #:use-module (web uri) #:use-module (guix memoization) @@ -43,7 +42,7 @@ #:use-module (gnu packages) #:export (cran->guix-package bioconductor->guix-package - recursive-import + cran-recursive-import %cran-updater %bioconductor-updater @@ -231,13 +230,7 @@ empty list when the FIELD cannot be found." "translations" "utils")) -(define (guix-name name) - "Return a Guix package name for a given R package name." - (string-append "r-" (string-map (match-lambda - (#\_ #\-) - (#\. #\-) - (chr (char-downcase chr))) - name))) +(define cran-guix-name (cut guix-name "r-" <>)) (define (needs-fortran? tarball) "Check if the TARBALL contains Fortran source files." @@ -318,7 +311,7 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (listify meta "Depends")))))) (values `(package - (name ,(guix-name name)) + (name ,(cran-guix-name name)) (version ,version) (source (origin (method url-fetch) @@ -327,12 +320,12 @@ from the alist META, which was derived from the R package's DESCRIPTION file." (base32 ,(bytevector->nix-base32-string (file-sha256 tarball)))))) ,@(if (not (equal? (string-append "r-" name) - (guix-name name))) + (cran-guix-name name))) `((properties ,`(,'quasiquote ((,'upstream-name . ,name))))) '()) (build-system r-build-system) ,@(maybe-inputs sysdepends) - ,@(maybe-inputs (map guix-name propagate) 'propagated-inputs) + ,@(maybe-inputs (map cran-guix-name propagate) 'propagated-inputs) ,@(maybe-inputs `(,@(if (needs-fortran? tarball) '("gfortran") '()) @@ -356,63 +349,10 @@ s-expression corresponding to that package, or #f on failure." (and=> (fetch-description repo package-name) (cut description->package repo <>))))) -(define* (recursive-import package-name #:optional (repo 'cran)) - "Generate a stream of package expressions for PACKAGE-NAME and all its -dependencies." - (receive (package . dependencies) - (cran->guix-package package-name repo) - (if (not package) - stream-null - - ;; Generate a lazy stream of package expressions for all unknown - ;; dependencies in the graph. - (let* ((make-state (lambda (queue done) - (cons queue done))) - (next (match-lambda - (((next . rest) . done) next))) - (imported (match-lambda - ((queue . done) done))) - (done? (match-lambda - ((queue . done) - (zero? (length queue))))) - (unknown? (lambda* (dependency #:optional (done '())) - (and (not (member dependency - done)) - (null? (find-packages-by-name - (guix-name dependency)))))) - (update (lambda (state new-queue) - (match state - (((head . tail) . done) - (make-state (lset-difference - equal? - (lset-union equal? new-queue tail) - done) - (cons head done))))))) - (stream-cons - package - (stream-unfold - ;; map: produce a stream element - (lambda (state) - (cran->guix-package (next state) repo)) - - ;; predicate - (negate done?) - - ;; generator: update the queue - (lambda (state) - (receive (package . dependencies) - (cran->guix-package (next state) repo) - (if package - (update state (filter (cut unknown? <> - (cons (next state) - (imported state))) - (car dependencies))) - ;; TODO: Try the other archives before giving up - (update state (imported state))))) - - ;; initial state - (make-state (filter unknown? (car dependencies)) - (list package-name)))))))) +(define* (cran-recursive-import package-name #:optional (repo 'gnu)) + (recursive-import package-name repo + #:repo->guix-package cran->guix-package + #:guix-name cran-guix-name)) ;;; diff --git a/guix/import/crate.scm b/guix/import/crate.scm index a7485bb4d0..3724a457a4 100644 --- a/guix/import/crate.scm +++ b/guix/import/crate.scm @@ -51,7 +51,7 @@ (define (crate-kind-predicate kind) (lambda (dep) (string=? (assoc-ref dep "kind") kind))) - (and-let* ((crate-json (json-fetch (string-append crate-url crate-name))) + (and-let* ((crate-json (json-fetch-alist (string-append crate-url crate-name))) (crate (assoc-ref crate-json "crate")) (name (assoc-ref crate "name")) (version (assoc-ref crate "max_version")) @@ -63,7 +63,7 @@ string->license) '())) ;missing license info (path (string-append "/" version "/dependencies")) - (deps-json (json-fetch (string-append crate-url name path))) + (deps-json (json-fetch-alist (string-append crate-url name path))) (deps (assoc-ref deps-json "dependencies")) (input-crates (filter (crate-kind-predicate "normal") deps)) (native-input-crates diff --git a/guix/import/elpa.scm b/guix/import/elpa.scm index 43e9eb60c9..65e0be45ab 100644 --- a/guix/import/elpa.scm +++ b/guix/import/elpa.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Federico Beffa ;;; Copyright © 2015, 2016, 2017, 2018 Ludovic Courtès +;;; Copyright © 2018 Oleg Pykhalov ;;; ;;; This file is part of GNU Guix. ;;; @@ -37,7 +38,8 @@ #:use-module (guix packages) #:use-module ((guix utils) #:select (call-with-temporary-output-file)) #:export (elpa->guix-package - %elpa-updater)) + %elpa-updater + elpa-recursive-import)) (define (elpa-dependencies->names deps) "Convert DEPS, a list of symbol/version pairs à la ELPA, to a list of @@ -200,13 +202,15 @@ type ''." (define source-url (elpa-package-source-url pkg)) + (define dependencies-names + (filter-dependencies (elpa-dependencies->names + (elpa-package-inputs pkg)))) + (define dependencies - (let* ((deps (elpa-package-inputs pkg)) - (names (filter-dependencies (elpa-dependencies->names deps)))) - (map (lambda (n) - (let ((new-n (elpa-name->package-name n))) - (list new-n (list 'unquote (string->symbol new-n))))) - names))) + (map (lambda (n) + (let ((new-n (elpa-name->package-name n))) + (list new-n (list 'unquote (string->symbol new-n))))) + dependencies-names)) (define (maybe-inputs input-type inputs) (match inputs @@ -218,23 +222,25 @@ type ''." (let ((tarball (with-store store (download-to-store store source-url)))) - `(package - (name ,(elpa-name->package-name name)) - (version ,version) - (source (origin - (method url-fetch) - (uri (string-append ,@(factorize-uri source-url version))) - (sha256 - (base32 - ,(if tarball - (bytevector->nix-base32-string (file-sha256 tarball)) - "failed to download package"))))) - (build-system emacs-build-system) - ,@(maybe-inputs 'propagated-inputs dependencies) - (home-page ,(elpa-package-home-page pkg)) - (synopsis ,(elpa-package-synopsis pkg)) - (description ,(elpa-package-description pkg)) - (license ,license)))) + (values + `(package + (name ,(elpa-name->package-name name)) + (version ,version) + (source (origin + (method url-fetch) + (uri (string-append ,@(factorize-uri source-url version))) + (sha256 + (base32 + ,(if tarball + (bytevector->nix-base32-string (file-sha256 tarball)) + "failed to download package"))))) + (build-system emacs-build-system) + ,@(maybe-inputs 'propagated-inputs dependencies) + (home-page ,(elpa-package-home-page pkg)) + (synopsis ,(elpa-package-synopsis pkg)) + (description ,(elpa-package-description pkg)) + (license ,license)) + dependencies-names))) (define* (elpa->guix-package name #:optional (repo 'gnu)) "Fetch the package NAME from REPO and produce a Guix package S-expression." @@ -289,4 +295,11 @@ type ''." (pred package-from-gnu.org?) (latest latest-release))) +(define elpa-guix-name (cut guix-name "emacs-" <>)) + +(define* (elpa-recursive-import package-name #:optional (repo 'gnu)) + (recursive-import package-name repo + #:repo->guix-package elpa->guix-package + #:guix-name elpa-guix-name)) + ;;; elpa.scm ends here diff --git a/guix/import/gem.scm b/guix/import/gem.scm index 6e914d6290..646163fb7b 100644 --- a/guix/import/gem.scm +++ b/guix/import/gem.scm @@ -38,7 +38,7 @@ (define (rubygems-fetch name) "Return an alist representation of the RubyGems metadata for the package NAME, or #f on failure." - (json-fetch + (json-fetch-alist (string-append "https://rubygems.org/api/v1/gems/" name ".json"))) (define (ruby-package-name name) diff --git a/guix/import/github.scm b/guix/import/github.scm index 4b7d53c704..ef226911b9 100644 --- a/guix/import/github.scm +++ b/guix/import/github.scm @@ -22,31 +22,16 @@ #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) - #:use-module (json) #:use-module (guix utils) #:use-module ((guix download) #:prefix download:) #:use-module (guix import utils) + #:use-module (guix import json) #:use-module (guix packages) #:use-module (guix upstream) #:use-module (guix http-client) #:use-module (web uri) #:export (%github-updater)) -(define (json-fetch* url) - "Return a representation of the JSON resource URL (a list or hash table), or -#f if URL returns 403 or 404." - (guard (c ((and (http-get-error? c) - (let ((error (http-get-error-code c))) - (or (= 403 error) - (= 404 error)))) - #f)) ;; "expected" if there is an authentification error (403), - ;; or if package is unknown (404). - ;; Note: github.com returns 403 if we omit a 'User-Agent' header. - (let* ((port (http-fetch url)) - (result (json->scm port))) - (close-port port) - result))) - (define (find-extension url) "Return the extension of the archive e.g. '.tar.gz' given a URL, or false if none is recognized" @@ -144,7 +129,7 @@ the package e.g. 'bedtools2'. Return #f if there is no releases" "https://api.github.com/repos/" (github-user-slash-repository url) "/releases")) - (json (json-fetch* + (json (json-fetch (if token (string-append api-url "?access_token=" token) api-url)))) diff --git a/guix/import/json.scm b/guix/import/json.scm index c76bc9313c..3f2ab1e3ea 100644 --- a/guix/import/json.scm +++ b/guix/import/json.scm @@ -22,15 +22,25 @@ #:use-module (guix http-client) #:use-module (guix import utils) #:use-module (srfi srfi-34) - #:export (json-fetch)) + #:export (json-fetch + json-fetch-alist)) (define (json-fetch url) - "Return an alist representation of the JSON resource URL, or #f on failure." + "Return a representation of the JSON resource URL (a list or hash table), or +#f if URL returns 403 or 404." (guard (c ((and (http-get-error? c) - (= 404 (http-get-error-code c))) - #f)) ;"expected" if package is unknown - (let* ((port (http-fetch url #:headers '((user-agent . "GNU Guile") - (Accept . "application/json")))) - (result (hash-table->alist (json->scm port)))) + (let ((error (http-get-error-code c))) + (or (= 403 error) + (= 404 error)))) + #f)) + ;; Note: many websites returns 403 if we omit a 'User-Agent' header. + (let* ((port (http-fetch url #:headers '((user-agent . "GNU Guile") + (Accept . "application/json")))) + (result (json->scm port))) (close-port port) result))) + +(define (json-fetch-alist url) + "Return an alist representation of the JSON resource URL, or #f if URL +returns 403 or 404." + (hash-table->alist (json-fetch url))) diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index bb0db1ba85..6beab6b010 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -51,8 +51,8 @@ (define (pypi-fetch name) "Return an alist representation of the PyPI metadata for the package NAME, or #f on failure." - (json-fetch (string-append "https://pypi.python.org/pypi/" - name "/json"))) + (json-fetch-alist (string-append "https://pypi.python.org/pypi/" + name "/json"))) ;; For packages found on PyPI that lack a source distribution. (define-condition-type &missing-source-error &error diff --git a/guix/import/snix.scm b/guix/import/snix.scm index 778768ff2d..56934e8cf9 100644 --- a/guix/import/snix.scm +++ b/guix/import/snix.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès +;;; Copyright © 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -283,7 +283,7 @@ ATTRIBUTE is true, only that attribute is considered." platform = (import ~a/pkgs/top-level/platforms.nix).sheevaplug; }" nixpkgs))) (apply open-pipe* OPEN_READ - %nix-instantiate "--strict" "--eval-only" "--xml" + "nix-instantiate" "--strict" "--eval-only" "--xml" ;; Pass a dummy `crossSystem' argument so that `buildInputs' and ;; `nativeBuildInputs' are not coalesced. diff --git a/guix/import/stackage.scm b/guix/import/stackage.scm index 5b25adc674..ec93fbced6 100644 --- a/guix/import/stackage.scm +++ b/guix/import/stackage.scm @@ -60,7 +60,7 @@ (let* ((url (if (string=? "" version) (string-append %stackage-url "/lts") (string-append %stackage-url "/lts-" version))) - (lts-info (json-fetch url))) + (lts-info (json-fetch-alist url))) (if lts-info (reverse lts-info) (leave-with-message "LTS release version not found: ~a" version)))))) diff --git a/guix/import/utils.scm b/guix/import/utils.scm index efc6169077..0dc8fd5857 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Jelle Licht ;;; Copyright © 2016 David Craven ;;; Copyright © 2017 Ricardo Wurmus +;;; Copyright © 2018 Oleg Pykhalov ;;; ;;; This file is part of GNU Guix. ;;; @@ -39,6 +40,8 @@ #:use-module (ice-9 regex) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) + #:use-module (srfi srfi-26) + #:use-module (srfi srfi-41) #:export (factorize-uri hash-table->alist @@ -61,7 +64,11 @@ alist->package read-lines - chunk-lines)) + chunk-lines + + guix-name + + recursive-import)) (define (factorize-uri uri version) "Factorize URI, a package tarball URI as a string, such that any occurrences @@ -357,3 +364,71 @@ separated by PRED." (if (null? after) (reverse res) (loop (cdr after) res)))))) + +(define (guix-name prefix name) + "Return a Guix package name for a given package name." + (string-append prefix (string-map (match-lambda + (#\_ #\-) + (#\. #\-) + (chr (char-downcase chr))) + name))) + +(define* (recursive-import package-name repo + #:key repo->guix-package guix-name + #:allow-other-keys) + "Generate a stream of package expressions for PACKAGE-NAME and all its +dependencies." + (receive (package . dependencies) + (repo->guix-package package-name repo) + (if (not package) + stream-null + + ;; Generate a lazy stream of package expressions for all unknown + ;; dependencies in the graph. + (let* ((make-state (lambda (queue done) + (cons queue done))) + (next (match-lambda + (((next . rest) . done) next))) + (imported (match-lambda + ((queue . done) done))) + (done? (match-lambda + ((queue . done) + (zero? (length queue))))) + (unknown? (lambda* (dependency #:optional (done '())) + (and (not (member dependency + done)) + (null? (find-packages-by-name + (guix-name dependency)))))) + (update (lambda (state new-queue) + (match state + (((head . tail) . done) + (make-state (lset-difference + equal? + (lset-union equal? new-queue tail) + done) + (cons head done))))))) + (stream-cons + package + (stream-unfold + ;; map: produce a stream element + (lambda (state) + (repo->guix-package (next state) repo)) + + ;; predicate + (negate done?) + + ;; generator: update the queue + (lambda (state) + (receive (package . dependencies) + (repo->guix-package (next state) repo) + (if package + (update state (filter (cut unknown? <> + (cons (next state) + (imported state))) + (car dependencies))) + ;; TODO: Try the other archives before giving up + (update state (imported state))))) + + ;; initial state + (make-state (filter unknown? (car dependencies)) + (list package-name)))))))) diff --git a/guix/nar.scm b/guix/nar.scm index 9b4c608238..3556de1379 100644 --- a/guix/nar.scm +++ b/guix/nar.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018 Ludovic Courtès ;;; Copyright © 2014 Mark H Weaver ;;; ;;; This file is part of GNU Guix. @@ -23,6 +23,7 @@ #:use-module ((guix build utils) #:select (delete-file-recursively with-directory-excursion)) #:use-module (guix store) + #:use-module (guix store database) #:use-module (guix ui) ; for '_' #:use-module (guix hash) #:use-module (guix pki) diff --git a/guix/packages.scm b/guix/packages.scm index a6f9936d63..c762fa7c39 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -35,6 +35,7 @@ #:use-module (guix sets) #:use-module (ice-9 match) #:use-module (ice-9 vlist) + #:use-module (ice-9 regex) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9 gnu) #:use-module (srfi srfi-11) @@ -106,6 +107,7 @@ package-cross-derivation package-output package-grafts + package-patched-vulnerabilities package/inherit transitive-input-references @@ -394,6 +396,32 @@ DELIMITER (a string), you can customize what will appear between the name and the version. By default, DELIMITER is \"@\"." (string-append (package-name package) delimiter (package-version package))) +(define (patch-file-name patch) + "Return the basename of PATCH's file name, or #f if the file name could not +be determined." + (match patch + ((? string?) + (basename patch)) + ((? origin?) + (and=> (origin-actual-file-name patch) basename)))) + +(define %vulnerability-regexp + ;; Regexp matching a CVE identifier in patch file names. + (make-regexp "CVE-[0-9]{4}-[0-9]+")) + +(define (package-patched-vulnerabilities package) + "Return the list of patched vulnerabilities of PACKAGE as a list of CVE +identifiers. The result is inferred from the file names of patches." + (define (patch-vulnerabilities patch) + (map (cut match:substring <> 0) + (list-matches %vulnerability-regexp patch))) + + (let ((patches (filter-map patch-file-name + (or (and=> (package-source package) + origin-patches) + '())))) + (append-map patch-vulnerabilities patches))) + (define (%standard-patch-inputs) (let* ((canonical (module-ref (resolve-interface '(gnu packages base)) 'canonical-package)) diff --git a/guix/profiles.scm b/guix/profiles.scm index 9bddf88162..ebd7da2a24 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -25,6 +25,7 @@ ;;; along with GNU Guix. If not, see . (define-module (guix profiles) + #:use-module ((guix config) #:select (%state-directory)) #:use-module ((guix utils) #:hide (package-name->name+version)) #:use-module ((guix build utils) #:select (package-name->name+version)) @@ -77,6 +78,7 @@ manifest-entry-dependencies manifest-entry-search-paths manifest-entry-parent + manifest-entry-properties manifest-pattern manifest-pattern? @@ -118,7 +120,13 @@ generation-file-name switch-to-generation roll-back - delete-generation)) + delete-generation + + %user-profile-directory + %profile-directory + %current-profile + canonicalize-profile + user-friendly-profile)) ;;; Commentary: ;;; @@ -174,7 +182,9 @@ (search-paths manifest-entry-search-paths ; search-path-specification* (default '())) (parent manifest-entry-parent ; promise (#f | ) - (default (delay #f)))) + (default (delay #f))) + (properties manifest-entry-properties ; list of symbol/value pairs + (default '()))) (define-record-type* manifest-pattern make-manifest-pattern @@ -313,18 +323,20 @@ denoting a specific output of a package." (define (entry->gexp entry) (match entry (($ name version output (? string? path) - (deps ...) (search-paths ...)) + (deps ...) (search-paths ...) _ (properties ...)) #~(#$name #$version #$output #$path (propagated-inputs #$(map entry->gexp deps)) (search-paths #$(map search-path-specification->sexp - search-paths)))) + search-paths)) + (properties . #$properties))) (($ name version output package - (deps ...) (search-paths ...)) + (deps ...) (search-paths ...) _ (properties ...)) #~(#$name #$version #$output (ungexp package (or output "out")) (propagated-inputs #$(map entry->gexp deps)) (search-paths #$(map search-path-specification->sexp - search-paths)))))) + search-paths)) + (properties . #$properties))))) (match manifest (($ (entries ...)) @@ -387,7 +399,9 @@ procedure is here for backward-compatibility and will eventually vanish." (dependencies deps*) (search-paths (map sexp->search-path-specification search-paths)) - (parent parent)))) + (parent parent) + (properties (or (assoc-ref extra-stuff 'properties) + '()))))) entry)))) (match sexp @@ -1515,4 +1529,44 @@ because the NUMBER is zero.)" (else (delete-and-return))))) +(define %user-profile-directory + (and=> (getenv "HOME") + (cut string-append <> "/.guix-profile"))) + +(define %profile-directory + (string-append %state-directory "/profiles/" + (or (and=> (or (getenv "USER") + (getenv "LOGNAME")) + (cut string-append "per-user/" <>)) + "default"))) + +(define %current-profile + ;; Call it `guix-profile', not `profile', to allow Guix profiles to + ;; coexist with Nix profiles. + (string-append %profile-directory "/guix-profile")) + +(define (canonicalize-profile profile) + "If PROFILE is %USER-PROFILE-DIRECTORY, return %CURRENT-PROFILE. Otherwise +return PROFILE unchanged. The goal is to treat '-p ~/.guix-profile' as if +'-p' was omitted." ; see + + ;; Trim trailing slashes so that the basename comparison below works as + ;; intended. + (let ((profile (string-trim-right profile #\/))) + (if (and %user-profile-directory + (string=? (canonicalize-path (dirname profile)) + (dirname %user-profile-directory)) + (string=? (basename profile) (basename %user-profile-directory))) + %current-profile + profile))) + +(define (user-friendly-profile profile) + "Return either ~/.guix-profile if that's what PROFILE refers to, directly or +indirectly, or PROFILE." + (if (and %user-profile-directory + (false-if-exception + (string=? (readlink %user-profile-directory) profile))) + %user-profile-directory + profile)) + ;;; profiles.scm ends here diff --git a/guix/scripts.scm b/guix/scripts.scm index 4a7ae7baa3..4cbbbeb96f 100644 --- a/guix/scripts.scm +++ b/guix/scripts.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2017 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2017, 2018 Ludovic Courtès ;;; Copyright © 2014 Deck Pickard ;;; Copyright © 2015, 2016 Alex Kost ;;; @@ -170,7 +170,7 @@ Show what and how will/would be built." (define age (match (false-if-not-found (lstat (string-append (config-directory #:ensure? #f) - "/latest"))) + "/current"))) (#f #f) (stat (- (time-second (current-time time-utc)) (stat:mtime stat))))) diff --git a/guix/scripts/gc.scm b/guix/scripts/gc.scm index e4ed7227ff..6f37b767ff 100644 --- a/guix/scripts/gc.scm +++ b/guix/scripts/gc.scm @@ -199,10 +199,10 @@ Invoke the garbage collector.\n")) ;; Attempt to have at least SPACE bytes available in STORE. (let ((free (free-disk-space (%store-prefix)))) (if (> free space) - (info (G_ "already ~h bytes available on ~a, nothing to do~%") - free (%store-prefix)) + (info (G_ "already ~h MiBs available on ~a, nothing to do~%") + (/ free 1024. 1024.) (%store-prefix)) (let ((to-free (- space free))) - (info (G_ "freeing ~h bytes~%") to-free) + (info (G_ "freeing ~h MiBs~%") (/ to-free 1024. 1024.)) (collect-garbage store to-free))))) (with-error-handling @@ -234,10 +234,10 @@ Invoke the garbage collector.\n")) (ensure-free-space store free-space)) (min-freed (let-values (((paths freed) (collect-garbage store min-freed))) - (info (G_ "freed ~h bytes~%") freed))) + (info (G_ "freed ~h MiBs~%") (/ freed 1024. 1024.)))) (else (let-values (((paths freed) (collect-garbage store))) - (info (G_ "freed ~h bytes~%") freed)))))) + (info (G_ "freed ~h MiBs~%") (/ freed 1024. 1024.))))))) ((delete) (delete-paths store (map direct-store-path paths))) ((list-references) diff --git a/guix/scripts/import/cran.scm b/guix/scripts/import/cran.scm index d65c644c05..30ae6d4342 100644 --- a/guix/scripts/import/cran.scm +++ b/guix/scripts/import/cran.scm @@ -99,8 +99,10 @@ Import and convert the CRAN package for PACKAGE-NAME.\n")) `(define-public ,(string->symbol name) ,pkg)) (_ #f)) - (reverse (stream->list (recursive-import package-name - (or (assoc-ref opts 'repo) 'cran))))) + (reverse + (stream->list + (cran-recursive-import package-name + (or (assoc-ref opts 'repo) 'cran))))) ;; Single import (let ((sexp (cran->guix-package package-name (or (assoc-ref opts 'repo) 'cran)))) diff --git a/guix/scripts/import/elpa.scm b/guix/scripts/import/elpa.scm index 34eb16485e..f1ed5016ba 100644 --- a/guix/scripts/import/elpa.scm +++ b/guix/scripts/import/elpa.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Federico Beffa +;;; Copyright © 2018 Oleg Pykhalov ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,10 +22,12 @@ #:use-module (guix utils) #:use-module (guix scripts) #:use-module (guix import elpa) + #:use-module (guix import utils) #:use-module (guix scripts import) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) #:use-module (srfi srfi-37) + #:use-module (srfi srfi-41) #:use-module (ice-9 match) #:use-module (ice-9 format) #:export (guix-import-elpa)) @@ -45,6 +48,8 @@ Import the latest package named PACKAGE-NAME from an ELPA repository.\n")) (display (G_ " -h, --help display this help and exit")) (display (G_ " + -r, --recursive generate package expressions for all Emacs packages that are not yet in Guix")) + (display (G_ " -V, --version display version information and exit")) (newline) (show-bug-report-information)) @@ -62,6 +67,9 @@ Import the latest package named PACKAGE-NAME from an ELPA repository.\n")) (lambda (opt name arg result) (alist-cons 'repo (string->symbol arg) (alist-delete 'repo result)))) + (option '(#\r "recursive") #f #f + (lambda (opt name arg result) + (alist-cons 'recursive #t result))) %standard-import-options)) @@ -87,10 +95,20 @@ Import the latest package named PACKAGE-NAME from an ELPA repository.\n")) (reverse opts)))) (match args ((package-name) - (let ((sexp (elpa->guix-package package-name (assoc-ref opts 'repo)))) - (unless sexp - (leave (G_ "failed to download package '~a'~%") package-name)) - sexp)) + (if (assoc-ref opts 'recursive) + (map (match-lambda + ((and ('package ('name name) . rest) pkg) + `(define-public ,(string->symbol name) + ,pkg)) + (_ #f)) + (reverse + (stream->list + (elpa-recursive-import package-name + (or (assoc-ref opts 'repo) 'gnu))))) + (let ((sexp (elpa->guix-package package-name (assoc-ref opts 'repo)))) + (unless sexp + (leave (G_ "failed to download package '~a'~%") package-name)) + sexp))) (() (leave (G_ "too few arguments~%"))) ((many ...) diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm index cd802985dc..e477bf0ddc 100644 --- a/guix/scripts/lint.scm +++ b/guix/scripts/lint.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Cyril Roelandt ;;; Copyright © 2014, 2015 Eric Bavier -;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès ;;; Copyright © 2015, 2016 Mathieu Lirzin ;;; Copyright © 2016 Danny Milosavljevic ;;; Copyright © 2016 Hartmut Goebel @@ -809,15 +809,6 @@ descriptions maintained upstream." (emit-warning package (G_ "invalid license field") 'license)))) -(define (patch-file-name patch) - "Return the basename of PATCH's file name, or #f if the file name could not -be determined." - (match patch - ((? string?) - (basename patch)) - ((? origin?) - (and=> (origin-actual-file-name patch) basename)))) - (define (call-with-networking-fail-safe message error-value proc) "Call PROC catching any network-related errors. Upon a networking error, display a message including MESSAGE and return ERROR-VALUE." @@ -878,20 +869,14 @@ the NIST server non-fatal." (() #t) ((vulnerabilities ...) - (let* ((patches (filter-map patch-file-name - (or (and=> (package-source package) - origin-patches) - '()))) + (let* ((patched (package-patched-vulnerabilities package)) (known-safe (or (assq-ref (package-properties package) 'lint-hidden-cve) '())) (unpatched (remove (lambda (vuln) (let ((id (vulnerability-id vuln))) - (or - (find (cute string-contains - <> id) - patches) - (member id known-safe)))) + (or (member id patched) + (member id known-safe)))) vulnerabilities))) (unless (null? unpatched) (emit-warning package diff --git a/guix/scripts/offload.scm b/guix/scripts/offload.scm index 56d6de6308..ee5857e16b 100644 --- a/guix/scripts/offload.scm +++ b/guix/scripts/offload.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès +;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès ;;; Copyright © 2017 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. @@ -124,7 +124,15 @@ determined." (save-module-excursion (lambda () (set-current-module %user-module) - (primitive-load file)))) + (match (primitive-load file) + (((? build-machine? machines) ...) + machines) + (_ + ;; Instead of crashing, assume the empty list. + (warning (G_ "'~a' did not return a list of build machines; \ +ignoring it~%") + file) + '()))))) (lambda args (match args (('system-error . rest) @@ -494,6 +502,30 @@ slot (which must later be released with 'release-build-slot'), or #f and #f." (() (values #f #f)))))) +(define (call-with-timeout timeout drv thunk) + "Call THUNK and leave after TIMEOUT seconds. If TIMEOUT is #f, simply call +THUNK. Use DRV as an indication of what we were building when the timeout +expired." + (if (number? timeout) + (dynamic-wind + (lambda () + (sigaction SIGALRM + (lambda _ + ;; The exit code here will be 1, which guix-daemon will + ;; interpret as a transient failure. + (leave (G_ "timeout expired while offloading '~a'~%") + (derivation-file-name drv)))) + (alarm timeout)) + thunk + (lambda () + (alarm 0))) + (thunk))) + +(define-syntax-rule (with-timeout timeout drv exp ...) + "Evaluate EXP... and leave after TIMEOUT seconds if EXP hasn't completed. +If TIMEOUT is #f, simply evaluate EXP..." + (call-with-timeout timeout drv (lambda () exp ...))) + (define* (process-request wants-local? system drv features #:key print-build-trace? (max-silent-time 3600) @@ -520,13 +552,18 @@ slot (which must later be released with 'release-build-slot'), or #f and #f." (display "# accept\n") (let ((inputs (string-tokenize (read-line))) (outputs (string-tokenize (read-line)))) - (transfer-and-offload drv machine - #:inputs inputs - #:outputs outputs - #:max-silent-time max-silent-time - #:build-timeout build-timeout - #:print-build-trace? - print-build-trace?))) + ;; Even if BUILD-TIMEOUT is honored by MACHINE, there can + ;; be issues with the connection or deadlocks that could + ;; lead the 'guix offload' process to remain stuck forever. + ;; To avoid that, install a timeout here as well. + (with-timeout build-timeout drv + (transfer-and-offload drv machine + #:inputs inputs + #:outputs outputs + #:max-silent-time max-silent-time + #:build-timeout build-timeout + #:print-build-trace? + print-build-trace?)))) (lambda () (release-build-slot slot))) @@ -576,8 +613,8 @@ slot (which must later be released with 'release-build-slot'), or #f and #f." (leave (G_ "failed to talk to guix-daemon on '~a' (test returned ~s)~%") name x)))) (lambda (key . args) - (leave (G_ "remove evaluation on '~a' failed:~{ ~s~}~%") - args)))) + (leave (G_ "remote evaluation on '~a' failed:~{ ~s~}~%") + name args)))) (define %random-state (delay @@ -755,6 +792,7 @@ This tool is meant to be used internally by 'guix-daemon'.\n")) ;;; eval: (put 'with-machine-lock 'scheme-indent-function 2) ;;; eval: (put 'with-file-lock 'scheme-indent-function 1) ;;; eval: (put 'with-error-to-port 'scheme-indent-function 1) +;;; eval: (put 'with-timeout 'scheme-indent-function 2) ;;; End: ;;; offload.scm ends here diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index 76729d8e10..7f087a3a3c 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -35,6 +35,7 @@ #:use-module (guix search-paths) #:use-module (guix build-system gnu) #:use-module (guix scripts build) + #:use-module ((guix self) #:select (make-config.scm)) #:use-module (gnu packages) #:use-module (gnu packages bootstrap) #:use-module (gnu packages compression) @@ -87,6 +88,19 @@ found." %compressors) (leave (G_ "~a: compressor not found~%") name))) +(define not-config? + ;; Select (guix …) and (gnu …) modules, except (guix config). + (match-lambda + (('guix 'config) #f) + (('guix _ ...) #t) + (('gnu _ ...) #t) + (_ #f))) + +(define guile-sqlite3&co + ;; Guile-SQLite3 and its propagated inputs. + (cons guile-sqlite3 + (package-transitive-propagated-inputs guile-sqlite3))) + (define* (self-contained-tarball name profile #:key target deduplicate? @@ -101,113 +115,124 @@ with a properly initialized store database. SYMLINKS must be a list of (SOURCE -> TARGET) tuples denoting symlinks to be added to the pack." + (define libgcrypt + (module-ref (resolve-interface '(gnu packages gnupg)) + 'libgcrypt)) + + (define schema + (and localstatedir? + (local-file (search-path %load-path + "guix/store/schema.sql")))) + (define build - (with-imported-modules (source-module-closure - '((guix build utils) - (guix build union) - (guix build store-copy) - (gnu build install))) - #~(begin - (use-modules (guix build utils) - ((guix build union) #:select (relative-file-name)) - (gnu build install) - (srfi srfi-1) - (srfi srfi-26) - (ice-9 match)) + (with-imported-modules `(((guix config) + => ,(make-config.scm + #:libgcrypt libgcrypt)) + ,@(source-module-closure + `((guix build utils) + (guix build union) + (guix build store-copy) + (gnu build install)) + #:select? not-config?)) + (with-extensions guile-sqlite3&co + #~(begin + (use-modules (guix build utils) + ((guix build union) #:select (relative-file-name)) + (gnu build install) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 match)) - (define %root "root") + (define %root "root") - (define symlink->directives - ;; Return "populate directives" to make the given symlink and its - ;; parent directories. - (match-lambda - ((source '-> target) - (let ((target (string-append #$profile "/" target)) - (parent (dirname source))) - ;; Never add a 'directory' directive for "/" so as to - ;; preserve its ownnership when extracting the archive (see - ;; below), and also because this would lead to adding the - ;; same entries twice in the tarball. - `(,@(if (string=? parent "/") - '() - `((directory ,parent))) - (,source - -> ,(relative-file-name parent target))))))) + (define symlink->directives + ;; Return "populate directives" to make the given symlink and its + ;; parent directories. + (match-lambda + ((source '-> target) + (let ((target (string-append #$profile "/" target)) + (parent (dirname source))) + ;; Never add a 'directory' directive for "/" so as to + ;; preserve its ownnership when extracting the archive (see + ;; below), and also because this would lead to adding the + ;; same entries twice in the tarball. + `(,@(if (string=? parent "/") + '() + `((directory ,parent))) + (,source + -> ,(relative-file-name parent target))))))) - (define directives - ;; Fully-qualified symlinks. - (append-map symlink->directives '#$symlinks)) + (define directives + ;; Fully-qualified symlinks. + (append-map symlink->directives '#$symlinks)) - ;; The --sort option was added to GNU tar in version 1.28, released - ;; 2014-07-28. For testing, we use the bootstrap tar, which is - ;; older and doesn't support it. - (define tar-supports-sort? - (zero? (system* (string-append #+archiver "/bin/tar") - "cf" "/dev/null" "--files-from=/dev/null" - "--sort=name"))) + ;; The --sort option was added to GNU tar in version 1.28, released + ;; 2014-07-28. For testing, we use the bootstrap tar, which is + ;; older and doesn't support it. + (define tar-supports-sort? + (zero? (system* (string-append #+archiver "/bin/tar") + "cf" "/dev/null" "--files-from=/dev/null" + "--sort=name"))) - ;; We need Guix here for 'guix-register'. - (setenv "PATH" - (string-append #$(if localstatedir? - (file-append guix "/sbin:") - "") - #$archiver "/bin")) + ;; Add 'tar' to the search path. + (setenv "PATH" #+(file-append archiver "/bin")) - ;; Note: there is not much to gain here with deduplication and there - ;; is the overhead of the '.links' directory, so turn it off. - ;; Furthermore GNU tar < 1.30 sometimes fails to extract tarballs - ;; with hard links: - ;; . - (populate-single-profile-directory %root - #:profile #$profile - #:closure "profile" - #:deduplicate? #f - #:register? #$localstatedir?) + ;; Note: there is not much to gain here with deduplication and there + ;; is the overhead of the '.links' directory, so turn it off. + ;; Furthermore GNU tar < 1.30 sometimes fails to extract tarballs + ;; with hard links: + ;; . + (populate-single-profile-directory %root + #:profile #$profile + #:closure "profile" + #:deduplicate? #f + #:register? #$localstatedir? + #:schema #$schema) - ;; Create SYMLINKS. - (for-each (cut evaluate-populate-directive <> %root) - directives) + ;; Create SYMLINKS. + (for-each (cut evaluate-populate-directive <> %root) + directives) - ;; Create the tarball. Use GNU format so there's no file name - ;; length limitation. - (with-directory-excursion %root - (exit - (zero? (apply system* "tar" - "-I" - (string-join '#+(compressor-command compressor)) - "--format=gnu" + ;; Create the tarball. Use GNU format so there's no file name + ;; length limitation. + (with-directory-excursion %root + (exit + (zero? (apply system* "tar" + "-I" + (string-join '#+(compressor-command compressor)) + "--format=gnu" - ;; Avoid non-determinism in the archive. Use - ;; mtime = 1, not zero, because that is what the - ;; daemon does for files in the store (see the - ;; 'mtimeStore' constant in local-store.cc.) - (if tar-supports-sort? "--sort=name" "--mtime=@1") - "--mtime=@1" ;for files in /var/guix - "--owner=root:0" - "--group=root:0" + ;; Avoid non-determinism in the archive. Use + ;; mtime = 1, not zero, because that is what the + ;; daemon does for files in the store (see the + ;; 'mtimeStore' constant in local-store.cc.) + (if tar-supports-sort? "--sort=name" "--mtime=@1") + "--mtime=@1" ;for files in /var/guix + "--owner=root:0" + "--group=root:0" - "--check-links" - "-cvf" #$output - ;; Avoid adding / and /var to the tarball, so - ;; that the ownership and permissions of those - ;; directories will not be overwritten when - ;; extracting the archive. Do not include /root - ;; because the root account might have a - ;; different home directory. - #$@(if localstatedir? - '("./var/guix") - '()) + "--check-links" + "-cvf" #$output + ;; Avoid adding / and /var to the tarball, so + ;; that the ownership and permissions of those + ;; directories will not be overwritten when + ;; extracting the archive. Do not include /root + ;; because the root account might have a + ;; different home directory. + #$@(if localstatedir? + '("./var/guix") + '()) - (string-append "." (%store-directory)) + (string-append "." (%store-directory)) - (delete-duplicates - (filter-map (match-lambda - (('directory directory) - (string-append "." directory)) - ((source '-> _) - (string-append "." source)) - (_ #f)) - directives))))))))) + (delete-duplicates + (filter-map (match-lambda + (('directory directory) + (string-append "." directory)) + ((source '-> _) + (string-append "." source)) + (_ #f)) + directives)))))))))) (gexp->derivation (string-append name ".tar" (compressor-extension compressor)) @@ -227,70 +252,83 @@ points for virtual file systems (like procfs), and optional symlinks. SYMLINKS must be a list of (SOURCE -> TARGET) tuples denoting symlinks to be added to the pack." + (define libgcrypt + ;; XXX: Not strictly needed, but pulled by (guix store database). + (module-ref (resolve-interface '(gnu packages gnupg)) + 'libgcrypt)) + + (define build - (with-imported-modules '((guix build utils) - (guix build store-copy) - (gnu build install)) - #~(begin - (use-modules (guix build utils) - (gnu build install) - (guix build store-copy) - (srfi srfi-1) - (srfi srfi-26) - (ice-9 match)) + (with-imported-modules `(((guix config) + => ,(make-config.scm + #:libgcrypt libgcrypt)) + ,@(source-module-closure + '((guix build utils) + (guix build store-copy) + (gnu build install)) + #:select? not-config?)) + (with-extensions guile-sqlite3&co + #~(begin + (use-modules (guix build utils) + (gnu build install) + (guix build store-copy) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 match)) - (setenv "PATH" (string-append #$archiver "/bin")) + (setenv "PATH" (string-append #$archiver "/bin")) - ;; We need an empty file in order to have a valid file argument when - ;; we reparent the root file system. Read on for why that's - ;; necessary. - (with-output-to-file ".empty" (lambda () (display ""))) + ;; We need an empty file in order to have a valid file argument when + ;; we reparent the root file system. Read on for why that's + ;; necessary. + (with-output-to-file ".empty" (lambda () (display ""))) - ;; Create the squashfs image in several steps. - ;; Add all store items. Unfortunately mksquashfs throws away all - ;; ancestor directories and only keeps the basename. We fix this - ;; in the following invocations of mksquashfs. - (apply invoke "mksquashfs" - `(,@(call-with-input-file "profile" - read-reference-graph) - ,#$output + ;; Create the squashfs image in several steps. + ;; Add all store items. Unfortunately mksquashfs throws away all + ;; ancestor directories and only keeps the basename. We fix this + ;; in the following invocations of mksquashfs. + (apply invoke "mksquashfs" + `(,@(map store-info-item + (call-with-input-file "profile" + read-reference-graph)) + ,#$output - ;; Do not perform duplicate checking because we - ;; don't have any dupes. - "-no-duplicates" - "-comp" - ,#+(compressor-name compressor))) + ;; Do not perform duplicate checking because we + ;; don't have any dupes. + "-no-duplicates" + "-comp" + ,#+(compressor-name compressor))) - ;; Here we reparent the store items. For each sub-directory of - ;; the store prefix we need one invocation of "mksquashfs". - (for-each (lambda (dir) - (apply invoke "mksquashfs" - `(".empty" - ,#$output - "-root-becomes" ,dir))) - (reverse (string-tokenize (%store-directory) - (char-set-complement (char-set #\/))))) + ;; Here we reparent the store items. For each sub-directory of + ;; the store prefix we need one invocation of "mksquashfs". + (for-each (lambda (dir) + (apply invoke "mksquashfs" + `(".empty" + ,#$output + "-root-becomes" ,dir))) + (reverse (string-tokenize (%store-directory) + (char-set-complement (char-set #\/))))) - ;; Add symlinks and mount points. - (apply invoke "mksquashfs" - `(".empty" - ,#$output - ;; Create SYMLINKS via pseudo file definitions. - ,@(append-map - (match-lambda - ((source '-> target) - (list "-p" - (string-join - ;; name s mode uid gid symlink - (list source - "s" "777" "0" "0" - (string-append #$profile "/" target)))))) - '#$symlinks) + ;; Add symlinks and mount points. + (apply invoke "mksquashfs" + `(".empty" + ,#$output + ;; Create SYMLINKS via pseudo file definitions. + ,@(append-map + (match-lambda + ((source '-> target) + (list "-p" + (string-join + ;; name s mode uid gid symlink + (list source + "s" "777" "0" "0" + (string-append #$profile "/" target)))))) + '#$symlinks) - ;; Create empty mount points. - "-p" "/proc d 555 0 0" - "-p" "/sys d 555 0 0" - "-p" "/dev d 555 0 0"))))) + ;; Create empty mount points. + "-p" "/proc d 555 0 0" + "-p" "/sys d 555 0 0" + "-p" "/dev d 555 0 0")))))) (gexp->derivation (string-append name (compressor-extension compressor) @@ -310,14 +348,6 @@ image is a tarball conforming to the Docker Image Specification, compressed with COMPRESSOR. It can be passed to 'docker load'. If TARGET is true, it must a be a GNU triplet and it is used to derive the architecture metadata in the image." - ;; FIXME: Honor LOCALSTATEDIR?. - (define not-config? - (match-lambda - (('guix 'config) #f) - (('guix rest ...) #t) - (('gnu rest ...) #t) - (rest #f))) - (define defmod 'define-module) ;trick Geiser (define config @@ -342,9 +372,9 @@ the image." (define build ;; Guile-JSON is required by (guix docker). (with-extensions (list json) - (with-imported-modules `(,@(source-module-closure '((guix docker)) + (with-imported-modules `(,@(source-module-closure '((guix docker) + (guix build store-copy)) #:select? not-config?) - (guix build store-copy) ((guix config) => ,config)) #~(begin (use-modules (guix docker) (srfi srfi-19) (guix build store-copy)) @@ -352,8 +382,9 @@ the image." (setenv "PATH" (string-append #$archiver "/bin")) (build-docker-image #$output - (call-with-input-file "profile" - read-reference-graph) + (map store-info-item + (call-with-input-file "profile" + read-reference-graph)) #$profile #:system (or #$target (utsname:machine (uname))) #:symlinks '#$symlinks diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 4f519e6f33..29829f52c8 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -64,46 +64,6 @@ ;;; Profiles. ;;; -(define %user-profile-directory - (and=> (getenv "HOME") - (cut string-append <> "/.guix-profile"))) - -(define %profile-directory - (string-append %state-directory "/profiles/" - (or (and=> (or (getenv "USER") - (getenv "LOGNAME")) - (cut string-append "per-user/" <>)) - "default"))) - -(define %current-profile - ;; Call it `guix-profile', not `profile', to allow Guix profiles to - ;; coexist with Nix profiles. - (string-append %profile-directory "/guix-profile")) - -(define (canonicalize-profile profile) - "If PROFILE is %USER-PROFILE-DIRECTORY, return %CURRENT-PROFILE. Otherwise -return PROFILE unchanged. The goal is to treat '-p ~/.guix-profile' as if -'-p' was omitted." ; see - - ;; Trim trailing slashes so that the basename comparison below works as - ;; intended. - (let ((profile (string-trim-right profile #\/))) - (if (and %user-profile-directory - (string=? (canonicalize-path (dirname profile)) - (dirname %user-profile-directory)) - (string=? (basename profile) (basename %user-profile-directory))) - %current-profile - profile))) - -(define (user-friendly-profile profile) - "Return either ~/.guix-profile if that's what PROFILE refers to, directly or -indirectly, or PROFILE." - (if (and %user-profile-directory - (false-if-exception - (string=? (readlink %user-profile-directory) profile))) - %user-profile-directory - profile)) - (define (ensure-default-profile) "Ensure the default profile symlink and directory exist and are writable." diff --git a/guix/scripts/pull.scm b/guix/scripts/pull.scm index 64c2196e03..7202e3cc16 100644 --- a/guix/scripts/pull.scm +++ b/guix/scripts/pull.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2017 Ludovic Courtès +;;; Copyright © 2013, 2014, 2015, 2017, 2018 Ludovic Courtès ;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. @@ -25,10 +25,15 @@ #:use-module (guix config) #:use-module (guix packages) #:use-module (guix derivations) + #:use-module (guix profiles) #:use-module (guix gexp) #:use-module (guix grafts) #:use-module (guix monads) #:use-module (guix scripts build) + #:autoload (guix self) (whole-package) + #:autoload (gnu packages ssh) (guile-ssh) + #:autoload (gnu packages tls) (gnutls) + #:use-module ((guix scripts package) #:select (build-and-use-profile)) #:use-module ((guix build utils) #:select (with-directory-excursion delete-file-recursively)) #:use-module ((guix build download) @@ -40,6 +45,7 @@ #:use-module ((gnu packages certs) #:select (le-certs)) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) + #:use-module (srfi srfi-35) #:use-module (srfi srfi-37) #:use-module (ice-9 match) #:export (guix-pull)) @@ -104,6 +110,9 @@ Download and deploy the latest version of Guix.\n")) --commit=COMMIT download the specified COMMIT")) (display (G_ " --branch=BRANCH download the tip of the specified BRANCH")) + (display (G_ " + -l, --list-generations[=PATTERN] + list generations matching PATTERN")) (display (G_ " --bootstrap use the bootstrap Guile to build the new Guix")) (newline) @@ -120,6 +129,10 @@ Download and deploy the latest version of Guix.\n")) (cons* (option '("verbose") #f #f (lambda (opt name arg result) (alist-cons 'verbose? #t result))) + (option '(#\l "list-generations") #f #t + (lambda (opt name arg result) + (cons `(query list-generations ,(or arg "")) + result))) (option '("url") #t #f (lambda (opt name arg result) (alist-cons 'repository-url arg @@ -158,6 +171,12 @@ Download and deploy the latest version of Guix.\n")) ;; a makefile, and, similarly, is intended to always keep this name. "build-aux/build-self.scm") +(define %pull-version + ;; This is the version of the 'guix pull' protocol. It specifies what's + ;; expected from %SELF-BUILD-FILE. The initial version ("0") was when we'd + ;; place a set of compiled Guile modules in ~/.config/guix/latest. + 1) + (define* (build-from-source source #:key verbose? commit) "Return a derivation to build Guix from SOURCE, using the self-build script @@ -170,35 +189,62 @@ contained therein. Use COMMIT as the version string." (build (primitive-load script))) ;; BUILD must be a monadic procedure of at least one argument: the source ;; tree. - (build source #:verbose? verbose? #:version commit))) + ;; + ;; Note: BUILD can return #f if it does not support %PULL-VERSION. In the + ;; future we'll fall back to a previous version of the protocol when that + ;; happens. + (build source #:verbose? verbose? #:version commit + #:pull-version %pull-version))) + +(define (whole-package-for-legacy name modules) + "Return a full-blown Guix package for MODULES, a derivation that builds Guix +modules in the old ~/.config/guix/latest style." + (whole-package name modules + + ;; In the "old style", %SELF-BUILD-FILE would simply return a + ;; derivation that builds modules. We have to infer what the + ;; dependencies of these modules were. + (list guile-json guile-git guile-bytestructures + guile-ssh gnutls))) + +(define* (derivation->manifest-entry drv + #:key url branch commit) + "Return a manifest entry for DRV, which represents Guix at COMMIT. Record +URL, BRANCH, and COMMIT as a property in the manifest entry." + (mbegin %store-monad + (what-to-build (list drv)) + (built-derivations (list drv)) + (let ((out (derivation->output-path drv))) + (return (manifest-entry + (name "guix") + (version (string-take commit 7)) + (item (if (file-exists? (string-append out "/bin/guix")) + drv + (whole-package-for-legacy (string-append name "-" + version) + drv))) + (properties + `((source (repository + (version 0) + (url ,url) + (branch ,branch) + (commit ,commit)))))))))) (define* (build-and-install source config-dir - #:key verbose? commit) + #:key verbose? url branch commit) "Build the tool from SOURCE, and install it in CONFIG-DIR." - (mlet* %store-monad ((source (build-from-source source - #:commit commit - #:verbose? verbose?)) - (source-dir -> (derivation->output-path source)) - (to-do? (what-to-build (list source))) - (built? (built-derivations (list source)))) - ;; Always update the 'latest' symlink, regardless of whether SOURCE was - ;; already built or not. - (if built? - (mlet* %store-monad - ((latest -> (string-append config-dir "/latest")) - (done (indirect-root-added latest))) - (if (and (file-exists? latest) - (string=? (readlink latest) source-dir)) - (begin - (display (G_ "Guix already up to date\n")) - (return #t)) - (begin - (switch-symlinks latest source-dir) - (format #t - (G_ "updated ~a successfully deployed under `~a'~%") - %guix-package-name latest) - (return #t)))) - (leave (G_ "failed to update Guix, check the build log~%"))))) + (define update-profile + (store-lift build-and-use-profile)) + + (mlet* %store-monad ((drv (build-from-source source + #:commit commit + #:verbose? verbose?)) + (entry (derivation->manifest-entry drv + #:url url + #:branch branch + #:commit commit))) + (update-profile (string-append config-dir "/current") + (manifest (list entry))))) (define (honor-lets-encrypt-certificates! store) "Tell Guile-Git to use the Let's Encrypt certificates." @@ -235,6 +281,66 @@ certificates~%")) (lambda (key err) (report-git-error err)))) + +;;; +;;; Queries. +;;; + +(define (display-profile-content profile number) + "Display the packages in PROFILE, generation NUMBER, in a human-readable +way and displaying details about the channel's source code." + (for-each (lambda (entry) + (format #t " ~a ~a~%" + (manifest-entry-name entry) + (manifest-entry-version entry)) + (match (assq 'source (manifest-entry-properties entry)) + (('source ('repository ('version 0) + ('url url) + ('branch branch) + ('commit commit) + _ ...)) + (format #t (G_ " repository URL: ~a~%") url) + (when branch + (format #t (G_ " branch: ~a~%") branch)) + (format #t (G_ " commit: ~a~%") commit)) + (_ #f))) + + ;; Show most recently installed packages last. + (reverse + (manifest-entries + (profile-manifest (generation-file-name profile number)))))) + +(define (process-query opts) + "Process any query specified by OPTS." + (define profile + (string-append (config-directory) "/current")) + + (match (assoc-ref opts 'query) + (('list-generations pattern) + (define (list-generation display-function number) + (unless (zero? number) + (display-generation profile number) + (display-function profile number) + (newline))) + + (leave-on-EPIPE + (cond ((not (file-exists? profile)) ; XXX: race condition + (raise (condition (&profile-not-found-error + (profile profile))))) + ((string-null? pattern) + (for-each (lambda (generation) + (list-generation display-profile-content generation)) + (profile-generations profile))) + ((matching-generations pattern profile) + => + (match-lambda + (() + (exit 1)) + ((numbers ...) + (for-each (lambda (generation) + (list-generation display-profile-content generation)) + numbers))))))))) + (define (guix-pull . args) (define (use-le-certs? url) @@ -249,38 +355,48 @@ certificates~%")) (cache (string-append (cache-directory) "/pull"))) (ensure-guile-git!) - (unless (assoc-ref opts 'dry-run?) ;XXX: not very useful - (with-store store - (parameterize ((%graft? (assoc-ref opts 'graft?))) - (set-build-options-from-command-line store opts) + (cond ((assoc-ref opts 'query) + (process-query opts)) + ((assoc-ref opts 'dry-run?) + #t) ;XXX: not very useful + (else + (with-store store + (parameterize ((%graft? (assoc-ref opts 'graft?))) + (set-build-options-from-command-line store opts) - ;; For reproducibility, always refer to the LE certificates when we - ;; know we're talking to Savannah. - (when (use-le-certs? url) - (honor-lets-encrypt-certificates! store)) + ;; For reproducibility, always refer to the LE certificates + ;; when we know we're talking to Savannah. + (when (use-le-certs? url) + (honor-lets-encrypt-certificates! store)) - (format (current-error-port) - (G_ "Updating from Git repository at '~a'...~%") - url) + (format (current-error-port) + (G_ "Updating from Git repository at '~a'...~%") + url) - (let-values (((checkout commit) - (latest-repository-commit store url - #:ref ref - #:cache-directory cache))) + (let-values (((checkout commit) + (latest-repository-commit store url + #:ref ref + #:cache-directory + cache))) - (format (current-error-port) - (G_ "Building from Git commit ~a...~%") - commit) - (parameterize ((%guile-for-build - (package-derivation - store - (if (assoc-ref opts 'bootstrap?) - %bootstrap-guile - (canonical-package guile-2.2))))) - (run-with-store store - (build-and-install checkout (config-directory) - #:commit commit - #:verbose? - (assoc-ref opts 'verbose?)))))))))))) + (format (current-error-port) + (G_ "Building from Git commit ~a...~%") + commit) + (parameterize ((%guile-for-build + (package-derivation + store + (if (assoc-ref opts 'bootstrap?) + %bootstrap-guile + (canonical-package guile-2.2))))) + (run-with-store store + (build-and-install checkout (config-directory) + #:url url + #:branch (match ref + (('branch . branch) + branch) + (_ #f)) + #:commit commit + #:verbose? + (assoc-ref opts 'verbose?))))))))))))) ;;; pull.scm ends here diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm index 8e1119fb49..d0beacc8ea 100755 --- a/guix/scripts/substitute.scm +++ b/guix/scripts/substitute.scm @@ -613,10 +613,10 @@ if file doesn't exist, and the narinfo otherwise." (let ((done 0) (total (length paths))) (lambda () - (display #\cr (current-error-port)) + (display "\r\x1b[K" (current-error-port)) ;erase current line (force-output (current-error-port)) (format (current-error-port) - (G_ "updating list of substitutes from '~a'... ~5,1f%") + (G_ "updating substitutes from '~a'... ~5,1f%") url (* 100. (/ done total))) (set! done (+ 1 done))))) diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 766cab1aad..14aedceac1 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Alex Kost ;;; Copyright © 2016, 2017, 2018 Chris Marusich ;;; Copyright © 2017 Mathieu Othacehe +;;; Copyright © 2018 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ #:use-module (guix config) #:use-module (guix ui) #:use-module (guix store) + #:autoload (guix store database) (register-path) #:use-module (guix grafts) #:use-module (guix gexp) #:use-module (guix derivations) @@ -197,7 +199,7 @@ TARGET, and register them." bootcfg bootcfg-file) "Copy the closure of BOOTCFG, which includes the output of OS-DRV, to directory TARGET. TARGET must be an absolute directory name since that's what -'guix-register' expects. +'register-path' expects. When INSTALL-BOOTLOADER? is true, install bootloader using BOOTCFG." (define (maybe-copy to-copy) @@ -351,8 +353,8 @@ bring the system down." #:optional (profile %system-profile)) "Make a new generation of PROFILE pointing to the directory of OS, switch to it atomically, and then run OS's activation script." - (mlet* %store-monad ((drv (operating-system-derivation os)) - (script (operating-system-activation-script os))) + (mlet* %store-monad ((drv (operating-system-derivation os)) + (script (lower-object (operating-system-activation-script os)))) (let* ((system (derivation->output-path drv)) (number (+ 1 (generation-number profile))) (generation (generation-file-name profile number))) @@ -550,10 +552,26 @@ list of services." ;; TRANSLATORS: Please preserve the two-space indentation. (format #t (G_ " label: ~a~%") label) (format #t (G_ " bootloader: ~a~%") bootloader-name) - (format #t (G_ " root device: ~a~%") - (if (uuid? root-device) - (uuid->string root-device) - root-device)) + + ;; TRANSLATORS: The '~[', '~;', and '~]' sequences in this string must + ;; be preserved. They denote conditionals, such that the result will + ;; look like: + ;; root device: UUID: 12345-678 + ;; or: + ;; root device: label: "my-root" + ;; or just: + ;; root device: /dev/sda3 + (format #t (G_ " root device: ~[UUID: ~a~;label: ~s~;~a~]~%") + (cond ((uuid? root-device) 0) + ((file-system-label? root-device) 1) + (else 2)) + (cond ((uuid? root-device) + (uuid->string root-device)) + ((file-system-label? root-device) + (file-system-label->string root-device)) + (else + root-device))) + (format #t (G_ " kernel: ~a~%") kernel)))) (define* (list-generations pattern #:optional (profile %system-profile)) @@ -740,7 +758,7 @@ checking this by themselves in their 'check' procedure." ;; for ;; a discussion. (define latest - (string-append (config-directory) "/latest")) + (string-append (config-directory) "/current")) (unless (file-exists? latest) (warning (G_ "~a not found: 'guix pull' was never run~%") latest) diff --git a/guix/self.scm b/guix/self.scm index 3acfac6f80..89c5428039 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -26,14 +26,14 @@ #:use-module (guix discovery) #:use-module (guix packages) #:use-module (guix sets) - #:use-module (guix utils) #:use-module (guix modules) - #:use-module (guix build utils) + #:use-module ((guix build utils) #:select (find-files)) #:use-module ((guix build compile) #:select (%lightweight-optimizations)) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) #:use-module (ice-9 match) #:export (make-config.scm + whole-package ;for internal use in 'guix pull' compiled-guix guix-derivation reload-guix)) @@ -83,17 +83,17 @@ GUILE-VERSION (\"2.0\" or \"2.2\"), or #f if none of the packages matches." ("guile-ssh" (ref '(gnu packages ssh) 'guile-ssh)) ("guile-git" (ref '(gnu packages guile) 'guile-git)) ("guile-sqlite3" (ref '(gnu packages guile) 'guile-sqlite3)) + ("gnutls" (ref '(gnu packages tls) 'gnutls)) ("libgcrypt" (ref '(gnu packages gnupg) 'libgcrypt)) ("zlib" (ref '(gnu packages compression) 'zlib)) ("gzip" (ref '(gnu packages compression) 'gzip)) ("bzip2" (ref '(gnu packages compression) 'bzip2)) ("xz" (ref '(gnu packages compression) 'xz)) - ("guix" (ref '(gnu packages package-management) - 'guix-register)) ("guile2.0-json" (ref '(gnu packages guile) 'guile2.0-json)) ("guile2.0-ssh" (ref '(gnu packages ssh) 'guile2.0-ssh)) ("guile2.0-git" (ref '(gnu packages guile) 'guile2.0-git)) ;; XXX: No "guile2.0-sqlite3". + ("guile2.0-gnutls" (ref '(gnu packages tls) 'gnutls/guile-2.0)) (_ #f)))) ;no such package @@ -192,7 +192,245 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (file-name->module-name (string-drop file prefix))) (scheme-files (string-append directory "/" sub-directory))))) +(define* (sub-directory item sub-directory) + "Return SUB-DIRECTORY within ITEM, which may be a file name or a file-like +object." + (match item + ((? string?) + ;; This is the optimal case: we return a new "source". Thus, a + ;; derivation that depends on this sub-directory does not depend on ITEM + ;; itself. + (local-file (string-append item "/" sub-directory) + #:recursive? #t)) + ;; TODO: Add 'local-file?' case. + (_ + ;; In this case, anything that refers to the result also depends on ITEM, + ;; which isn't great. + (file-append item "/" sub-directory)))) + +(define* (locale-data source domain + #:optional (directory domain)) + "Return the locale data from 'po/DIRECTORY' in SOURCE, corresponding to +DOMAIN, a gettext domain." + (define gettext + (module-ref (resolve-interface '(gnu packages gettext)) + 'gettext-minimal)) + + (define build + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils) + (srfi srfi-26) + (ice-9 match) (ice-9 ftw)) + + (define po-directory + #+(sub-directory source (string-append "po/" directory))) + + (define (compile language) + (let ((gmo (string-append #$output "/" language "/LC_MESSAGES/" + #$domain ".mo"))) + (mkdir-p (dirname gmo)) + (invoke #+(file-append gettext "/bin/msgfmt") + "-c" "--statistics" "--verbose" + "-o" gmo + (string-append po-directory "/" language ".po")))) + + (define (linguas) + ;; Return the list of languages. Note: don't read 'LINGUAS' + ;; because it contains things like 'en@boldquot' that do not have + ;; a corresponding .po file. + (map (cut basename <> ".po") + (scandir po-directory + (cut string-suffix? ".po" <>)))) + + (for-each compile (linguas))))) + + (computed-file (string-append "guix-locale-" domain) + build)) + +(define (info-manual source) + "Return the Info manual built from SOURCE." + (define texinfo + (module-ref (resolve-interface '(gnu packages texinfo)) + 'texinfo)) + + (define graphviz + (module-ref (resolve-interface '(gnu packages graphviz)) + 'graphviz)) + + (define documentation + (sub-directory source "doc")) + + (define examples + (sub-directory source "gnu/system/examples")) + + (define build + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + + (mkdir #$output) + + ;; Create 'version.texi'. + ;; XXX: Can we use a more meaningful version string yet one that + ;; doesn't change at each commit? + (call-with-output-file "version.texi" + (lambda (port) + (let ((version "0.0-git)")) + (format port " +@set UPDATED 1 January 1970 +@set UPDATED-MONTH January 1970 +@set EDITION ~a +@set VERSION ~a\n" version version)))) + + ;; Copy configuration templates that the manual includes. + (for-each (lambda (template) + (copy-file template + (string-append + "os-config-" + (basename template ".tmpl") + ".texi"))) + (find-files #$examples "\\.tmpl$")) + + ;; Build graphs. + (mkdir-p (string-append #$output "/images")) + (for-each (lambda (dot-file) + (invoke #+(file-append graphviz "/bin/dot") + "-Tpng" "-Gratio=.9" "-Gnodesep=.005" + "-Granksep=.00005" "-Nfontsize=9" + "-Nheight=.1" "-Nwidth=.1" + "-o" (string-append #$output "/images/" + (basename dot-file ".dot") + ".png") + dot-file)) + (find-files (string-append #$documentation "/images") + "\\.dot$")) + + ;; Copy other PNGs. + (for-each (lambda (png-file) + (install-file png-file + (string-append #$output "/images"))) + (find-files (string-append #$documentation "/images") + "\\.png$")) + + ;; Finally build the manual. Copy it the Texinfo files to $PWD and + ;; add a symlink to the 'images' directory so that 'makeinfo' can + ;; see those images and produce image references in the Info output. + (copy-recursively #$documentation "." + #:log (%make-void-port "w")) + (delete-file-recursively "images") + (symlink (string-append #$output "/images") "images") + + (for-each (lambda (texi) + (unless (string=? "guix.texi" texi) + ;; Create 'version-LL.texi'. + (let* ((base (basename texi ".texi")) + (dot (string-index base #\.)) + (tag (string-drop base (+ 1 dot)))) + (symlink "version.texi" + (string-append "version-" tag ".texi")))) + + (invoke #+(file-append texinfo "/bin/makeinfo") + texi "-I" #$documentation + "-I" "." + "-o" (string-append #$output "/" + (basename texi ".texi") + ".info"))) + (cons "guix.texi" + (find-files "." "^guix\\.[a-z]{2}\\.texi$")))))) + + (computed-file "guix-manual" build)) + +(define* (guix-command modules #:optional compiled-modules + #:key source (dependencies '()) + (guile-version (effective-version))) + "Return the 'guix' command such that it adds MODULES and DEPENDENCIES in its +load path." + (program-file "guix-command" + #~(begin + (set! %load-path + (append '#$(map (lambda (package) + (file-append package + "/share/guile/site/" + guile-version)) + dependencies) + %load-path)) + + (set! %load-compiled-path + (append '#$(map (lambda (package) + (file-append package "/lib/guile/" + guile-version + "/site-ccache")) + dependencies) + %load-compiled-path)) + + (set! %load-path (cons #$modules %load-path)) + (set! %load-compiled-path + (cons (or #$compiled-modules #$modules) + %load-compiled-path)) + + (let ((guix-main (module-ref (resolve-interface '(guix ui)) + 'guix-main))) + #$(if source + #~(begin + (bindtextdomain "guix" + #$(locale-data source "guix")) + (bindtextdomain "guix-packages" + #$(locale-data source + "guix-packages" + "packages"))) + #t) + + ;; XXX: It would be more convenient to change it to: + ;; (exit (apply guix-main (command-line))) + (apply guix-main (command-line)))))) + +(define* (whole-package name modules dependencies + #:key + (guile-version (effective-version)) + compiled-modules + info daemon + (command (guix-command modules + #:dependencies dependencies + #:guile-version guile-version))) + "Return the whole Guix package NAME that uses MODULES, a derivation of all +the modules, and DEPENDENCIES, a list of packages depended on. COMMAND is the +'guix' program to use; INFO is the Info manual. When COMPILED-MODULES is +true, it is linked as 'lib/guile/X.Y/site-ccache'; otherwise, .go files are +assumed to be part of MODULES." + (computed-file name + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + (mkdir-p (string-append #$output "/bin")) + (symlink #$command + (string-append #$output "/bin/guix")) + + (when #$daemon + (symlink (string-append #$daemon "/bin/guix-daemon") + (string-append #$output "/bin/guix-daemon"))) + + (let ((modules (string-append #$output + "/share/guile/site/" + (effective-version))) + (info #$info)) + (mkdir-p (dirname modules)) + (symlink #$modules modules) + (when info + (symlink #$info + (string-append #$output + "/share/info")))) + + ;; Object files. + (when #$compiled-modules + (let ((modules (string-append #$output "/lib/guile/" + (effective-version) + "/site-ccache"))) + (mkdir-p (dirname modules)) + (symlink #$compiled-modules modules))))))) + (define* (compiled-guix source #:key (version %guix-version) + (pull-version 1) (name (string-append "guix-" version)) (guile-version (effective-version)) (guile-for-build (guile-for-build guile-version)) @@ -223,11 +461,16 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." "guile-sqlite3" "guile2.0-sqlite3")) + (define gnutls + (package-for-guile guile-version + "gnutls" "guile2.0-gnutls")) + (define dependencies (match (append-map (lambda (package) (cons (list "x" package) (package-transitive-propagated-inputs package))) - (list guile-git guile-json guile-ssh guile-sqlite3)) + (list gnutls guile-git guile-json + guile-ssh guile-sqlite3)) (((labels packages _ ...) ...) packages))) @@ -259,7 +502,9 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." ;; but we don't need to compile it; not compiling it allows ;; us to avoid an extra dependency on guile-gdbm-ffi. #:extra-files - `(("guix/man-db.scm" ,(local-file "../guix/man-db.scm"))) + `(("guix/man-db.scm" ,(local-file "../guix/man-db.scm")) + ("guix/store/schema.sql" + ,(local-file "../guix/store/schema.sql"))) #:guile-for-build guile-for-build)) @@ -340,7 +585,6 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." #:gzip gzip #:bzip2 bzip2 #:xz xz - #:guix guix #:package-name %guix-package-name #:package-version @@ -351,32 +595,65 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." %guix-home-page-url))) #:guile-for-build guile-for-build)) - (directory-union name - (append-map (lambda (node) - (list (node-source node) - (node-compiled node))) + (define (built-modules node-subset) + (directory-union (string-append name "-modules") + (append-map node-subset - ;; Note: *CONFIG* comes first so that it - ;; overrides the (guix config) module that - ;; comes with *CORE-MODULES*. - (list *config* - *cli-modules* - *system-modules* - *package-modules* - *core-package-modules* - *extra-modules* - *core-modules*)) + ;; Note: *CONFIG* comes first so that it + ;; overrides the (guix config) module that + ;; comes with *CORE-MODULES*. + (list *config* + *cli-modules* + *system-modules* + *package-modules* + *core-package-modules* + *extra-modules* + *core-modules*)) - ;; Silently choose the first entry upon collision so that - ;; we choose *CONFIG*. - #:resolve-collision 'first + ;; Silently choose the first entry upon collision so that + ;; we choose *CONFIG*. + #:resolve-collision 'first - ;; When we do (add-to-store "utils.scm"), "utils.scm" must - ;; be a regular file, not a symlink. Thus, arrange so that - ;; regular files appear as regular files in the final - ;; output. - #:copy? #t - #:quiet? #t)) + ;; When we do (add-to-store "utils.scm"), "utils.scm" must + ;; be a regular file, not a symlink. Thus, arrange so that + ;; regular files appear as regular files in the final + ;; output. + #:copy? #t + #:quiet? #t)) + + ;; Version 0 of 'guix pull' meant we'd just return Scheme modules. + ;; Version 1 is when we return the full package. + (cond ((= 1 pull-version) + ;; The whole package, with a standard file hierarchy. + (let* ((modules (built-modules (compose list node-source))) + (compiled (built-modules (compose list node-compiled))) + (command (guix-command modules compiled + #:source source + #:dependencies dependencies + #:guile-version guile-version))) + (whole-package name modules dependencies + #:compiled-modules compiled + #:command command + + ;; Include 'guix-daemon'. XXX: Here we inject an + ;; older snapshot of guix-daemon, but that's a good + ;; enough approximation for now. + #:daemon (module-ref (resolve-interface + '(gnu packages + package-management)) + 'guix-daemon) + + #:info (info-manual source) + #:guile-version guile-version))) + ((= 0 pull-version) + ;; Legacy 'guix pull': return the .scm and .go files as one + ;; directory. + (built-modules (lambda (node) + (list (node-source node) + (node-compiled node))))) + (else + ;; Unsupported 'guix pull' version. + #f))) ;;; @@ -385,8 +662,7 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (define %dependency-variables ;; (guix config) variables corresponding to dependencies. - '(%libgcrypt %libz %xz %gzip %bzip2 %nix-instantiate - %sbindir %guix-register-program)) + '(%libgcrypt %libz %xz %gzip %bzip2)) (define %persona-variables ;; (guix config) variables that define Guix's persona. @@ -396,19 +672,16 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." %guix-home-page-url)) (define %config-variables - ;; (guix config) variables corresponding to Guix configuration (storedir, - ;; localstatedir, etc.) - (sort (filter pair? - (module-map (lambda (name var) - (and (not (memq name %dependency-variables)) - (not (memq name %persona-variables)) - (cons name (variable-ref var)))) - (resolve-interface '(guix config)))) - (lambda (name+value1 name+value2) - (stringstring (car name+value1)) - (symbol->string (car name+value2)))))) + ;; (guix config) variables corresponding to Guix configuration. + (letrec-syntax ((variables (syntax-rules () + ((_) + '()) + ((_ variable rest ...) + (cons `(variable . ,variable) + (variables rest ...)))))) + (variables %localstatedir %storedir %sysconfdir %system))) -(define* (make-config.scm #:key libgcrypt zlib gzip xz bzip2 guix +(define* (make-config.scm #:key libgcrypt zlib gzip xz bzip2 (package-name "GNU Guix") (package-version "0") (bug-report-address "bug-guix@gnu.org") @@ -424,36 +697,46 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." %guix-version %guix-bug-report-address %guix-home-page-url - %sbindir - %guix-register-program + %store-directory + %state-directory + %store-database-directory + %config-directory %libgcrypt %libz %gzip %bzip2 - %xz - %nix-instantiate)) + %xz)) #$@(map (match-lambda ((name . value) #~(define-public #$name #$value))) %config-variables) + (define %store-directory + (or (and=> (getenv "NIX_STORE_DIR") canonicalize-path) + %storedir)) + + (define %state-directory + ;; This must match `NIX_STATE_DIR' as defined in + ;; `nix/local.mk'. + (or (getenv "NIX_STATE_DIR") + (string-append %localstatedir "/guix"))) + + (define %store-database-directory + (or (getenv "NIX_DB_DIR") + (string-append %state-directory "/db"))) + + (define %config-directory + ;; This must match `GUIX_CONFIGURATION_DIRECTORY' as + ;; defined in `nix/local.mk'. + (or (getenv "GUIX_CONFIGURATION_DIRECTORY") + (string-append %sysconfdir "/guix"))) + (define %guix-package-name #$package-name) (define %guix-version #$package-version) (define %guix-bug-report-address #$bug-report-address) (define %guix-home-page-url #$home-page-url) - (define %sbindir - ;; This is used to define '%guix-register-program'. - ;; TODO: Use a derivation that builds nothing but the - ;; C++ part. - #+(and guix (file-append guix "/sbin"))) - - (define %guix-register-program - (or (getenv "GUIX_REGISTER") - (and %sbindir - (string-append %sbindir "/guix-register")))) - (define %gzip #+(and gzip (file-append gzip "/bin/gzip"))) (define %bzip2 @@ -466,13 +749,10 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (file-append libgcrypt "/lib/libgcrypt"))) (define %libz #+(and zlib - (file-append zlib "/lib/libz"))) - - (define %nix-instantiate ;for (guix import snix) - "nix-instantiate")) + (file-append zlib "/lib/libz")))) ;; Guile 2.0 *requires* the 'define-module' to be at the - ;; top-level or it 'toplevel-ref' in the resulting .go file are + ;; top-level or the 'toplevel-ref' in the resulting .go file are ;; made relative to a nonexistent anonymous module. #:splice? #t)) @@ -630,9 +910,12 @@ running Guile." 'guile-2.0)))) (define* (guix-derivation source version - #:optional (guile-version (effective-version))) + #:optional (guile-version (effective-version)) + #:key (pull-version 0)) "Return, as a monadic value, the derivation to build the Guix from SOURCE -for GUILE-VERSION. Use VERSION as the version string." +for GUILE-VERSION. Use VERSION as the version string. PULL-VERSION specifies +the version of the 'guix pull' protocol. Return #f if this PULL-VERSION value +is not supported." (define (shorten version) (if (and (string-every char-set:hex-digit version) (> (string-length version) 9)) @@ -644,11 +927,15 @@ for GUILE-VERSION. Use VERSION as the version string." (mbegin %store-monad (set-guile-for-build guile) - (lower-object (compiled-guix source - #:version version - #:name (string-append "guix-" - (shorten version)) - #:guile-version (match guile-version - ("2.2.2" "2.2") - (version version)) - #:guile-for-build guile)))) + (let ((guix (compiled-guix source + #:version version + #:name (string-append "guix-" + (shorten version)) + #:pull-version pull-version + #:guile-version (match guile-version + ("2.2.2" "2.2") + (version version)) + #:guile-for-build guile))) + (if guix + (lower-object guix) + (return #f))))) diff --git a/guix/store.scm b/guix/store.scm index 6742611c6f..3bf56573bf 100644 --- a/guix/store.scm +++ b/guix/store.scm @@ -65,6 +65,7 @@ build-mode open-connection + port->connection close-connection with-store set-build-options @@ -122,8 +123,6 @@ current-build-output-port - register-path - %store-monad store-bind store-return @@ -519,6 +518,23 @@ for this connection will be pinned. Return a server object." (or done? (process-stderr conn))) conn))))))))) +(define* (port->connection port + #:key (version %protocol-version)) + "Assimilate PORT, an input/output port, and return a connection to the +daemon, assuming the given protocol VERSION. + +Warning: this procedure assumes that the initial handshake with the daemon has +already taken place on PORT and that we're just continuing on this established +connection. Use with care." + (let-values (((output flush) + (buffering-output-port port (make-bytevector 8192)))) + (%make-nix-server port + (protocol-major version) + (protocol-minor version) + output flush + (make-hash-table 100) + (make-hash-table 100)))) + (define (write-buffered-output server) "Flush SERVER's output port." (force-output (nix-server-output-port server)) @@ -1301,33 +1317,6 @@ The result is always the empty list unless the daemon was started with This makes sense only when the daemon was started with '--cache-failures'." boolean) -(define* (register-path path - #:key (references '()) deriver prefix - state-directory) - "Register PATH as a valid store file, with REFERENCES as its list of -references, and DERIVER as its deriver (.drv that led to it.) If PREFIX is -not #f, it must be the name of the directory containing the new store to -initialize; if STATE-DIRECTORY is not #f, it must be a string containing the -absolute file name to the state directory of the store being initialized. -Return #t on success. - -Use with care as it directly modifies the store! This is primarily meant to -be used internally by the daemon's build hook." - ;; Currently this is implemented by calling out to the fine C++ blob. - (let ((pipe (apply open-pipe* OPEN_WRITE %guix-register-program - `(,@(if prefix - `("--prefix" ,prefix) - '()) - ,@(if state-directory - `("--state-directory" ,state-directory) - '()))))) - (and pipe - (begin - (format pipe "~a~%~a~%~a~%" - path (or deriver "") (length references)) - (for-each (cut format pipe "~a~%" <>) references) - (zero? (close-pipe pipe)))))) - ;;; ;;; Store monad. diff --git a/guix/store/database.scm b/guix/store/database.scm index 3623c0e7a0..05b2ba6c3f 100644 --- a/guix/store/database.scm +++ b/guix/store/database.scm @@ -24,30 +24,76 @@ #:use-module (guix store deduplication) #:use-module (guix base16) #:use-module (guix build syscalls) + #:use-module ((guix build utils) + #:select (mkdir-p executable-file?)) + #:use-module (guix build store-copy) + #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) #:use-module (srfi srfi-19) + #:use-module (srfi srfi-26) + #:use-module (rnrs io ports) #:use-module (ice-9 match) - #:export (sqlite-register + #:use-module (system foreign) + #:export (sql-schema + with-database + sqlite-register register-path + register-items + %epoch reset-timestamps)) ;;; Code for working with the store database directly. +(define sql-schema + ;; Name of the file containing the SQL scheme or #f. + (make-parameter #f)) -(define-syntax-rule (with-database file db exp ...) - "Open DB from FILE and close it when the dynamic extent of EXP... is left." - (let ((db (sqlite-open file))) +(define sqlite-exec + ;; XXX: This is was missing from guile-sqlite3 until + ;; . + (let ((exec (pointer->procedure + int + (dynamic-func "sqlite3_exec" (@@ (sqlite3) libsqlite3)) + '(* * * * *)))) + (lambda (db text) + (let ((ret (exec ((@@ (sqlite3) db-pointer) db) + (string->pointer text) + %null-pointer %null-pointer %null-pointer))) + (unless (zero? ret) + ((@@ (sqlite3) sqlite-error) db "sqlite-exec" ret)))))) + +(define (initialize-database db) + "Initializing DB, an empty database, by creating all the tables and indexes +as specified by SQL-SCHEMA." + (define schema + (or (sql-schema) + (search-path %load-path "guix/store/schema.sql"))) + + (sqlite-exec db (call-with-input-file schema get-string-all))) + +(define (call-with-database file proc) + "Pass PROC a database record corresponding to FILE. If FILE doesn't exist, +create it and initialize it as a new database." + (let ((new? (not (file-exists? file))) + (db (sqlite-open file))) (dynamic-wind noop (lambda () - exp ...) + (when new? + (initialize-database db)) + (proc db)) (lambda () (sqlite-close db))))) +(define-syntax-rule (with-database file db exp ...) + "Open DB from FILE and close it when the dynamic extent of EXP... is left. +If FILE doesn't exist, create it and initialize it as a new database." + (call-with-database file (lambda (db) exp ...))) + (define (last-insert-row-id db) ;; XXX: (sqlite3) currently lacks bindings for 'sqlite3_last_insert_rowid'. ;; Work around that. (let* ((stmt (sqlite-prepare db "SELECT last_insert_rowid();" - #:cache? #t)) + #:cache? #t)) (result (sqlite-fold cons '() stmt))) (sqlite-finalize stmt) (match result @@ -85,7 +131,7 @@ of course. Returns the row id of the row that was modified or inserted." (if id (let ((stmt (sqlite-prepare db update-sql #:cache? #t))) (sqlite-bind-arguments stmt #:id id - #:path path #:deriver deriver + #:deriver deriver #:hash hash #:size nar-size #:time time) (sqlite-fold cons '() stmt) (sqlite-finalize stmt) @@ -99,13 +145,11 @@ of course. Returns the row id of the row that was modified or inserted." (last-insert-row-id db))))) (define add-reference-sql - "INSERT OR IGNORE INTO Refs (referrer, reference) SELECT :referrer, id -FROM ValidPaths WHERE path = :reference") + "INSERT OR REPLACE INTO Refs (referrer, reference) VALUES (:referrer, :reference);") (define (add-references db referrer references) "REFERRER is the id of the referring store item, REFERENCES is a list -containing store items being referred to. Note that all of the store items in -REFERENCES must already be registered." +ids of items referred to." (let ((stmt (sqlite-prepare db add-reference-sql #:cache? #t))) (for-each (lambda (reference) (sqlite-reset stmt) @@ -116,37 +160,41 @@ REFERENCES must already be registered." (last-insert-row-id db)) references))) -;; XXX figure out caching of statement and database objects... later -(define* (sqlite-register #:key db-file path (references '()) - deriver hash nar-size) - "Registers this stuff in a database specified by DB-FILE. PATH is the string -path of some store item, REFERENCES is a list of string paths which the store -item PATH refers to (they need to be already registered!), DERIVER is a string -path of the derivation that created the store item PATH, HASH is the -base16-encoded sha256 hash of the store item denoted by PATH (prefixed with -\"sha256:\") after being converted to nar form, and nar-size is the size in -bytes of the store item denoted by PATH after being converted to nar form." - (with-database db-file db - (let ((id (update-or-insert db #:path path - #:deriver deriver - #:hash hash - #:nar-size nar-size - #:time (time-second (current-time time-utc))))) - (add-references db id references)))) +(define* (sqlite-register db #:key path (references '()) + deriver hash nar-size time) + "Registers this stuff in DB. PATH is the store item to register and +REFERENCES is the list of store items PATH refers to; DERIVER is the '.drv' +that produced PATH, HASH is the base16-encoded Nix sha256 hash of +PATH (prefixed with \"sha256:\"), and NAR-SIZE is the size in bytes PATH after +being converted to nar form. TIME is the registration time to be recorded in +the database or #f, meaning \"right now\". + +Every store item in REFERENCES must already be registered." + (let ((id (update-or-insert db #:path path + #:deriver deriver + #:hash hash + #:nar-size nar-size + #:time (time-second + (or time + (current-time time-utc)))))) + ;; Call 'path-id' on each of REFERENCES. This ensures we get a + ;; "non-NULL constraint" failure if one of REFERENCES is unregistered. + (add-references db id + (map (cut path-id db <>) references)))) ;;; ;;; High-level interface. ;;; -;; TODO: Factorize with that in (gnu build install). (define (reset-timestamps file) "Reset the modification time on FILE and on all the files it contains, if -it's a directory." +it's a directory. While at it, canonicalize file permissions." (let loop ((file file) (type (stat:type (lstat file)))) (case type ((directory) + (chmod file #o555) (utime file 0 0 0 0) (let ((parent file)) (for-each (match-lambda @@ -165,24 +213,14 @@ it's a directory." ;; symlinks. #f) (else + (chmod file (if (executable-file? file) #o555 #o444)) (utime file 0 0 0 0))))) -;; TODO: make this canonicalize store items that are registered. This involves -;; setting permissions and timestamps, I think. Also, run a "deduplication -;; pass", whatever that involves. Also, handle databases not existing yet -;; (what should the default behavior be? Figuring out how the C++ stuff -;; currently does it sounds like a lot of grepping for global -;; variables...). Also, return #t on success like the documentation says we -;; should. - (define* (register-path path #:key (references '()) deriver prefix - state-directory (deduplicate? #t)) - ;; Priority for options: first what is given, then environment variables, - ;; then defaults. %state-directory, %store-directory, and - ;; %store-database-directory already handle the "environment variables / - ;; defaults" question, so we only need to choose between what is given and - ;; those. + state-directory (deduplicate? #t) + (reset-timestamps? #t) + (schema (sql-schema))) "Register PATH as a valid store file, with REFERENCES as its list of references, and DERIVER as its deriver (.drv that led to it.) If PREFIX is given, it must be the name of the directory containing the new store to @@ -192,43 +230,76 @@ Return #t on success. Use with care as it directly modifies the store! This is primarily meant to be used internally by the daemon's build hook." - (let* ((db-dir (cond - (state-directory - (string-append state-directory "/db")) - (prefix - ;; If prefix is specified, the value of NIX_STATE_DIR - ;; (which affects %state-directory) isn't supposed to - ;; affect db-dir, only the compile-time-customized - ;; default should. - (string-append prefix %localstatedir "/guix/db")) - (else - %store-database-directory))) - (store-dir (if prefix - ;; same situation as above - (string-append prefix %storedir) - %store-directory)) - (to-register (if prefix - (string-append %storedir "/" (basename path)) - ;; note: we assume here that if path is, for - ;; example, /foo/bar/gnu/store/thing.txt and prefix - ;; isn't given, then an environment variable has - ;; been used to change the store directory to - ;; /foo/bar/gnu/store, since otherwise real-path - ;; would end up being /gnu/store/thing.txt, which is - ;; probably not the right file in this case. - path)) - (real-path (string-append store-dir "/" (basename path)))) - (let-values (((hash nar-size) - (nar-sha256 real-path))) - (reset-timestamps real-path) - (sqlite-register - #:db-file (string-append db-dir "/db.sqlite") - #:path to-register - #:references references - #:deriver deriver - #:hash (string-append "sha256:" - (bytevector->base16-string hash)) - #:nar-size nar-size) + (register-items (list (store-info path deriver references)) + #:prefix prefix #:state-directory state-directory + #:deduplicate? deduplicate? + #:reset-timestamps? reset-timestamps? + #:schema schema)) +(define %epoch + ;; When it all began. + (make-time time-utc 0 1)) + +(define* (register-items items + #:key prefix state-directory + (deduplicate? #t) + (reset-timestamps? #t) + registration-time + (schema (sql-schema))) + "Register all of ITEMS, a list of records as returned by +'read-reference-graph', in the database under PREFIX/STATE-DIRECTORY. ITEMS +must be in topological order (with leaves first.) If the database is +initially empty, apply SCHEMA to initialize it. REGISTRATION-TIME must be the +registration time to be recorded in the database; #f means \"now\"." + + ;; Priority for options: first what is given, then environment variables, + ;; then defaults. %state-directory, %store-directory, and + ;; %store-database-directory already handle the "environment variables / + ;; defaults" question, so we only need to choose between what is given and + ;; those. + + (define db-dir + (cond (state-directory + (string-append state-directory "/db")) + (prefix + (string-append prefix %localstatedir "/guix/db")) + (else + %store-database-directory))) + + (define store-dir + (if prefix + (string-append prefix %storedir) + %store-directory)) + + (define (register db item) + (define to-register + (if prefix + (string-append %storedir "/" (basename (store-info-item item))) + ;; note: we assume here that if path is, for example, + ;; /foo/bar/gnu/store/thing.txt and prefix isn't given, then an + ;; environment variable has been used to change the store directory + ;; to /foo/bar/gnu/store, since otherwise real-path would end up + ;; being /gnu/store/thing.txt, which is probably not the right file + ;; in this case. + (store-info-item item))) + + (define real-file-name + (string-append store-dir "/" (basename (store-info-item item)))) + + (let-values (((hash nar-size) (nar-sha256 real-file-name))) + (when reset-timestamps? + (reset-timestamps real-file-name)) + (sqlite-register db #:path to-register + #:references (store-info-references item) + #:deriver (store-info-deriver item) + #:hash (string-append "sha256:" + (bytevector->base16-string hash)) + #:nar-size nar-size + #:time registration-time) (when deduplicate? - (deduplicate real-path hash #:store store-dir))))) + (deduplicate real-file-name hash #:store store-dir)))) + + (mkdir-p db-dir) + (parameterize ((sql-schema schema)) + (with-database (string-append db-dir "/db.sqlite") db + (for-each (cut register db <>) items)))) diff --git a/guix/store/deduplication.scm b/guix/store/deduplication.scm index 4b4ac01f64..d3139eb904 100644 --- a/guix/store/deduplication.scm +++ b/guix/store/deduplication.scm @@ -85,7 +85,7 @@ LINK-PREFIX." (lambda () (link target tempname) tempname) - (lambda (args) + (lambda args (if (= (system-error-errno args) EEXIST) (try (tempname-in link-prefix)) (throw 'system-error args)))))) @@ -120,12 +120,15 @@ under STORE." (link-file (string-append links-directory "/" (bytevector->base16-string hash)))) (mkdir-p links-directory) - (if (file-is-directory? path) + (if (eq? 'directory (stat:type (lstat path))) ;; Can't hardlink directories, so hardlink their atoms. (for-each (lambda (file) - (unless (member file '("." "..")) - (deduplicate file (nar-sha256 file) - #:store store))) + (unless (or (member file '("." "..")) + (and (string=? path store) + (string=? file ".links"))) + (let ((file (string-append path "/" file))) + (deduplicate file (nar-sha256 file) + #:store store)))) (scandir path)) (if (file-exists? link-file) (false-if-system-error (EMLINK) diff --git a/nix/libstore/schema.sql b/guix/store/schema.sql similarity index 100% rename from nix/libstore/schema.sql rename to guix/store/schema.sql diff --git a/guix/ui.scm b/guix/ui.scm index 45f438fc45..ec709450d8 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -42,11 +42,12 @@ #:use-module ((guix build syscalls) #:select (free-disk-space terminal-columns)) #:use-module ((guix build utils) - #:select (invoke-error? invoke-error-program - invoke-error-arguments - invoke-error-exit-status - invoke-error-term-signal - invoke-error-stop-signal)) + ;; XXX: All we need are the bindings related to + ;; '&invoke-error'. However, to work around the bug described + ;; in 5d669883ecc104403c5d3ba7d172e9c02234577c, #:hide + ;; unwanted bindings instead of #:select'ing the needed + ;; bindings. + #:hide (package-name->name+version)) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) #:use-module (srfi srfi-19) @@ -420,8 +421,21 @@ report them in a user-friendly way." (lambda _ (setlocale LC_ALL "")) (lambda args - (warning (G_ "failed to install locale: ~a~%") - (strerror (system-error-errno args)))))) + (cond-expand + ;; Guile 2.2 already emits a warning, so let's not add a second one. + (guile-2.2 #t) + (else (warning (G_ "failed to install locale: ~a~%") + (strerror (system-error-errno args))))) + (display-hint (G_ "Consider installing the @code{glibc-utf8-locales} or +@code{glibc-locales} package and defining @code{GUIX_LOCPATH}, along these +lines: + +@example +guix package -i glibc-utf8-locales +export GUIX_LOCPATH=\"$HOME/.guix-profile/lib/locale\" +@end example + +See the \"Application Setup\" section in the manual, for more info.\n"))))) (define (initialize-guix) "Perform the usual initialization for stand-alone Guix commands." @@ -1390,7 +1404,12 @@ DURATION-RELATION with the current time." (date->string (time-utc->date (generation-time profile number)) - "~b ~d ~Y ~T"))) + ;; TRANSLATORS: This is a format-string for date->string. + ;; Please choose a format that corresponds to the + ;; usual way of presenting dates in your locale. + ;; See https://www.gnu.org/software/guile/manual/html_node/SRFI_002d19-Date-to-string.html + ;; for details. + (G_ "~b ~d ~Y ~T")))) (current (generation-number profile))) (if (= number current) ;; TRANSLATORS: The word "current" here is an adjective for diff --git a/guix/utils.scm b/guix/utils.scm index e9efea5866..a5de9605e7 100644 --- a/guix/utils.scm +++ b/guix/utils.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2015 David Thompson ;;; Copyright © 2017 Efraim Flashner ;;; Copyright © 2017 Mathieu Othacehe +;;; Copyright © 2018 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -77,6 +78,7 @@ package-name->name+version target-mingw? target-arm32? + target-64bit? version-compare version>? version>=? @@ -474,6 +476,10 @@ a character other than '@'." (define (target-arm32?) (string-prefix? "arm" (or (%current-target-system) (%current-system)))) +(define (target-64bit?) + (let ((system (or (%current-target-system) (%current-system)))) + (any (cut string-prefix? <> system) '("x86_64" "aarch64" "mips64" "ppc64")))) + (define version-compare (let ((strverscmp (let ((sym (or (dynamic-func "strverscmp" (dynamic-link)) diff --git a/nix/guix-register/guix-register.cc b/nix/guix-register/guix-register.cc deleted file mode 100644 index 16dae62b3d..0000000000 --- a/nix/guix-register/guix-register.cc +++ /dev/null @@ -1,254 +0,0 @@ -/* GNU Guix --- Functional package management for GNU - Copyright (C) 2013, 2014, 2015 Ludovic Courtès - Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, - 2013 Eelco Dolstra - - This file is part of GNU Guix. - - GNU Guix is free software; you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 3 of the License, or (at - your option) any later version. - - GNU Guix is distributed in the hope that it will be useful, but - WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with GNU Guix. If not, see . */ - -/* This file derives from the implementation of 'nix-store - --register-validity', by Eelco Dolstra, as found in the Nix package - manager's src/nix-store/nix-store.cc. */ - -#include - -#include -#include - -#include -#include -#include -#include - -#include -#include - -using namespace nix; - -/* Input stream where we read closure descriptions. */ -static std::istream *input = &std::cin; - - - -/* Command-line options. */ - -const char *argp_program_version = - "guix-register (" PACKAGE_NAME ") " PACKAGE_VERSION; -const char *argp_program_bug_address = PACKAGE_BUGREPORT; - -static char doc[] = -"guix-register -- register a closure as valid in a store\ -\v\ -This program is used internally when populating a store with data \ -from an existing store. It updates the new store's database with \ -information about which store files are valid, and what their \ -references are."; - -#define GUIX_OPT_STATE_DIRECTORY 1 -#define GUIX_OPT_DEDUPLICATE 2 - -static const struct argp_option options[] = - { - { "prefix", 'p', "DIRECTORY", 0, - "Open the store that lies under DIRECTORY" }, - { "state-directory", GUIX_OPT_STATE_DIRECTORY, "DIRECTORY", 0, - "Use DIRECTORY as the state directory of the target store" }, - { "no-deduplication", GUIX_OPT_DEDUPLICATE, 0, 0, - "Disable automatic deduplication of registered store items" }, - { 0, 0, 0, 0, 0 } - }; - - -/* Prefix of the store being populated. */ -static std::string prefix; - -/* Whether to deduplicate the registered store items. */ -static bool deduplication = true; - -/* Parse a single option. */ -static error_t -parse_opt (int key, char *arg, struct argp_state *state) -{ - switch (key) - { - case 'p': - { - prefix = canonPath (arg); - settings.nixStore = prefix + NIX_STORE_DIR; - settings.nixDataDir = prefix + NIX_DATA_DIR; - settings.nixLogDir = prefix + NIX_LOG_DIR; - settings.nixStateDir = prefix + NIX_STATE_DIR; - settings.nixDBPath = settings.nixStateDir + "/db"; - break; - } - - case GUIX_OPT_STATE_DIRECTORY: - { - string state_dir = canonPath (arg); - - settings.nixStateDir = state_dir; - settings.nixDBPath = state_dir + "/db"; - break; - } - - case GUIX_OPT_DEDUPLICATE: - deduplication = false; - break; - - case ARGP_KEY_ARG: - { - std::ifstream *file; - - if (state->arg_num >= 2) - /* Too many arguments. */ - argp_usage (state); - - file = new std::ifstream (); - file->open (arg); - - input = file; - } - break; - - default: - return (error_t) ARGP_ERR_UNKNOWN; - } - - return (error_t) 0; -} - -/* Argument parsing. */ -static struct argp argp = { options, parse_opt, 0, doc }; - - -/* Read from INPUT the description of a closure, and register it as valid in - STORE. The expected format on INPUT is that used by #:references-graphs: - - FILE - DERIVER - NUMBER-OF-REFERENCES - REF1 - ... - REFN - - This is really meant as an internal format. */ -static void -register_validity (LocalStore *store, std::istream &input, - bool optimize = true, - bool reregister = true, bool hashGiven = false, - bool canonicalise = true) -{ - ValidPathInfos infos; - - while (1) - { - ValidPathInfo info = decodeValidPathInfo (input, hashGiven); - if (info.path == "") - break; - - if (!prefix.empty ()) - { - /* Rewrite the input to refer to the final name, as if we were in a - chroot under PREFIX. */ - std::string final_prefix (NIX_STORE_DIR "/"); - info.path = final_prefix + baseNameOf (info.path); - } - - /* Keep its real path to canonicalize it and compute its hash. */ - std::string real_path; - real_path = prefix + "/" + settings.nixStore + "/" + baseNameOf (info.path); - - if (!store->isValidPath (info.path) || reregister) - { - /* !!! races */ - if (canonicalise) - canonicalisePathMetaData (real_path, -1); - - if (!hashGiven) - { - HashResult hash = hashPath (htSHA256, real_path); - info.hash = hash.first; - info.narSize = hash.second; - } - infos.push_back (info); - } - } - - store->registerValidPaths (infos); - - /* XXX: When PREFIX is non-empty, store->linksDir points to the original - store's '.links' directory, which means 'optimisePath' would try to link - to that instead of linking to the target store. Thus, disable - deduplication in this case. */ - if (optimize) - { - /* Make sure deduplication is enabled. */ - settings.autoOptimiseStore = true; - - std::string store_dir = settings.nixStore; - - /* 'optimisePath' creates temporary links under 'settings.nixStore' and - this must be the real target store, under PREFIX, to avoid - cross-device links. Thus, temporarily switch the value of - 'settings.nixStore'. */ - settings.nixStore = prefix + store_dir; - for (auto&& i: infos) - store->optimisePath (prefix + i.path); - settings.nixStore = store_dir; - } -} - - -int -main (int argc, char *argv[]) -{ - /* Initialize libgcrypt, which is indirectly used. */ - if (!gcry_check_version (GCRYPT_VERSION)) - { - fprintf (stderr, "error: libgcrypt version mismatch\n"); - exit (EXIT_FAILURE); - } - - /* Tell Libgcrypt that initialization has completed, as per the Libgcrypt - 1.6.0 manual (although this does not appear to be strictly needed.) */ - gcry_control (GCRYCTL_INITIALIZATION_FINISHED, 0); - - /* Honor the environment variables, and initialize the settings. */ - settings.processEnvironment (); - - try - { - argp_parse (&argp, argc, argv, 0, 0, 0); - - /* Instantiate the store. This creates any missing directories among - 'settings.nixStore', 'settings.nixDBPath', etc. */ - LocalStore store; - - if (!prefix.empty ()) - /* Under the --prefix tree, the final name of the store will be - NIX_STORE_DIR. Set it here so that the database uses file names - prefixed by NIX_STORE_DIR and not PREFIX + NIX_STORE_DIR. */ - settings.nixStore = NIX_STORE_DIR; - - register_validity (&store, *input, deduplication); - } - catch (std::exception &e) - { - fprintf (stderr, "error: %s\n", e.what ()); - return EXIT_FAILURE; - } - - return EXIT_SUCCESS; -} diff --git a/nix/libstore/store-api.cc b/nix/libstore/store-api.cc index 6742d2ed49..9e07c67e97 100644 --- a/nix/libstore/store-api.cc +++ b/nix/libstore/store-api.cc @@ -226,32 +226,6 @@ string StoreAPI::makeValidityRegistration(const PathSet & paths, return s; } - -ValidPathInfo decodeValidPathInfo(std::istream & str, bool hashGiven) -{ - ValidPathInfo info; - getline(str, info.path); - if (str.eof()) { info.path = ""; return info; } - if (hashGiven) { - string s; - getline(str, s); - info.hash = parseHash(htSHA256, s); - getline(str, s); - if (!string2Int(s, info.narSize)) throw Error("number expected"); - } - getline(str, info.deriver); - string s; int n; - getline(str, s); - if (!string2Int(s, n)) throw Error("number expected"); - while (n--) { - getline(str, s); - info.references.insert(s); - } - if (!str || str.eof()) throw Error("missing input"); - return info; -} - - string showPaths(const PathSet & paths) { string s; diff --git a/nix/libstore/store-api.hh b/nix/libstore/store-api.hh index e957cedebc..2d9dcbd573 100644 --- a/nix/libstore/store-api.hh +++ b/nix/libstore/store-api.hh @@ -371,10 +371,6 @@ std::shared_ptr openStore(bool reserveSpace = true); string showPaths(const PathSet & paths); -ValidPathInfo decodeValidPathInfo(std::istream & str, - bool hashGiven = false); - - /* Export multiple paths in the format expected by ‘nix-store --import’. */ void exportPaths(StoreAPI & store, const Paths & paths, diff --git a/nix/local.mk b/nix/local.mk index 4452301c63..7d45f200b8 100644 --- a/nix/local.mk +++ b/nix/local.mk @@ -22,7 +22,7 @@ # BUILT_SOURCES += %D%/libstore/schema.sql.hh -CLEANFILES += $(BUILT_SOURCES) +CLEANFILES += %D%/libstore/schema.sql.hh noinst_LIBRARIES = libformat.a libutil.a libstore.a @@ -120,7 +120,6 @@ libstore_a_CXXFLAGS = $(AM_CXXFLAGS) \ $(SQLITE3_CFLAGS) $(LIBGCRYPT_CFLAGS) bin_PROGRAMS = guix-daemon -sbin_PROGRAMS = guix-register guix_daemon_SOURCES = \ %D%/nix-daemon/nix-daemon.cc \ @@ -138,24 +137,9 @@ guix_daemon_LDADD = \ guix_daemon_headers = \ %D%/nix-daemon/shared.hh - -guix_register_SOURCES = \ - %D%/guix-register/guix-register.cc - -guix_register_CPPFLAGS = \ - $(libutil_a_CPPFLAGS) \ - $(libstore_a_CPPFLAGS) \ - -I$(top_srcdir)/%D%/libstore - -# XXX: Should we start using shared libs? -guix_register_LDADD = \ - libstore.a libutil.a libformat.a -lz \ - $(SQLITE3_LIBS) $(LIBGCRYPT_LIBS) - if HAVE_LIBBZ2 guix_daemon_LDADD += -lbz2 -guix_register_LDADD += -lbz2 endif HAVE_LIBBZ2 @@ -163,7 +147,7 @@ noinst_HEADERS = \ $(libformat_headers) $(libutil_headers) $(libstore_headers) \ $(guix_daemon_headers) -%D%/libstore/schema.sql.hh: %D%/libstore/schema.sql +%D%/libstore/schema.sql.hh: guix/store/schema.sql $(AM_V_GEN)$(GUILE) --no-auto-compile -c \ "(use-modules (rnrs io ports)) \ (call-with-output-file \"$@\" \ @@ -216,7 +200,6 @@ CLEANFILES += \ $(nodist_upstartjob_DATA) EXTRA_DIST += \ - %D%/libstore/schema.sql \ %D%/AUTHORS \ %D%/COPYING \ etc/guix-daemon.service.in \ diff --git a/po/doc/guix-manual.fr.po b/po/doc/guix-manual.fr.po index 409bb66809..e1df54e9ef 100644 --- a/po/doc/guix-manual.fr.po +++ b/po/doc/guix-manual.fr.po @@ -1,51 +1,38 @@ -# SOME DESCRIPTIVE TITLE -# Copyright (C) YEAR Free Software Foundation, Inc. -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. +# French translation of guix. +# Copyright (C) 2013-2018 the authors of Guix (msgids) +# This file is distributed under the same license as the guix package. +# Julien Lepiller , 2018. # -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: \n" +"Project-Id-Version: guix-manual 0.15.0\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" -"POT-Creation-Date: 2018-04-29 20:48+0200\n" -"PO-Revision-Date: 2018-04-13 22:46+0200\n" +"POT-Creation-Date: 2018-06-22 14:12+0200\n" +"PO-Revision-Date: 2018-06-23 14:21+0200\n" "Last-Translator: Julien Lepiller \n" -"Language-Team: \n" +"Language-Team: French \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"#-#-#-#-# contributing.fr.po #-#-#-#-#\n" -"X-Generator: Poedit 2.0.6\n" -"#-#-#-#-# guix.fr.po #-#-#-#-#\n" -"X-Generator: Poedit 2.0.6\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" +"X-Generator: Offlate 0.1\n" -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: chapter -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:1 doc/contributing.texi:2 doc/guix.texi:106 -#: doc/guix.texi:276 +#: doc/contributing.texi:1 doc/contributing.texi:2 doc/guix.texi:107 +#: doc/guix.texi:278 #, no-wrap msgid "Contributing" msgstr "Contribuer" #. type: Plain text #: doc/contributing.texi:9 -msgid "" -"This project is a cooperative effort, and we need your help to make it grow! " -"Please get in touch with us on @email{guix-devel@@gnu.org} and @code{#guix} " -"on the Freenode IRC network. We welcome ideas, bug reports, patches, and " -"anything that may be helpful to the project. We particularly welcome help " -"on packaging (@pxref{Packaging Guidelines})." -msgstr "" -"Ce projet est un effort coopératif et nous avons besoin de votre aide pour " -"le faire grandir ! Contactez-nous sur @email{guix-devel@@gnu.org} et " -"@code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les " -"rapports de bogues, les correctifs et tout ce qui pourrait aider le projet. " -"Nous apprécions particulièrement toute aide sur la création de paquets " -"(@pxref{Consignes d'empaquetage})." +msgid "This project is a cooperative effort, and we need your help to make it grow! Please get in touch with us on @email{guix-devel@@gnu.org} and @code{#guix} on the Freenode IRC network. We welcome ideas, bug reports, patches, and anything that may be helpful to the project. We particularly welcome help on packaging (@pxref{Packaging Guidelines})." +msgstr "Ce projet est un effort coopératif et nous avons besoin de votre aide pour le faire grandir ! Contactez-nous sur @email{guix-devel@@gnu.org} et @code{#guix} sur le réseau IRC Freenode. Nous accueillons les idées, les rapports de bogues, les correctifs et tout ce qui pourrait aider le projet. Nous apprécions particulièrement toute aide sur la création de paquets (@pxref{Consignes d'empaquetage})." #. type: cindex #: doc/contributing.texi:10 @@ -61,113 +48,93 @@ msgstr "convention de contribution" #. type: Plain text #: doc/contributing.texi:17 -msgid "" -"We want to provide a warm, friendly, and harassment-free environment, so " -"that anyone can contribute to the best of their abilities. To this end our " -"project uses a ``Contributor Covenant'', which was adapted from @url{http://" -"contributor-covenant.org/}. You can find a local version in the @file{CODE-" -"OF-CONDUCT} file in the source tree." -msgstr "" -"Nous souhaitons fournir un environnement chaleureux, amical et sans " -"harcèlement pour que tout le monde puisse contribuer au mieux de ses " -"capacités. Pour cela notre projet a une « Convention de contribution » " -"adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une " -"version locale dans le fichier @file{CODE-OF-CONDUCT} dans l'arborescence " -"des sources." +msgid "We want to provide a warm, friendly, and harassment-free environment, so that anyone can contribute to the best of their abilities. To this end our project uses a ``Contributor Covenant'', which was adapted from @url{http://contributor-covenant.org/}. You can find a local version in the @file{CODE-OF-CONDUCT} file in the source tree." +msgstr "Nous souhaitons fournir un environnement chaleureux, amical et sans harcèlement pour que tout le monde puisse contribuer au mieux de ses capacités. Pour cela notre projet a une « Convention de contribution » adaptée de @url{http://contributor-covenant.org/}. Vous pouvez trouver une version locale dans le fichier @file{CODE-OF-CONDUCT} dans l'arborescence des sources." #. type: Plain text #: doc/contributing.texi:21 -msgid "" -"Contributors are not required to use their legal name in patches and on-line " -"communication; they can use any name or pseudonym of their choice." -msgstr "" -"Les contributeurs n'ont pas besoin d'utiliser leur nom légal dans leurs " -"correctifs et leurs communications en ligne ; ils peuvent utiliser n'importe " -"quel nom ou pseudonyme de leur choix." +msgid "Contributors are not required to use their legal name in patches and on-line communication; they can use any name or pseudonym of their choice." +msgstr "Les contributeurs n'ont pas besoin d'utiliser leur nom légal dans leurs correctifs et leurs communications en ligne ; ils peuvent utiliser n'importe quel nom ou pseudonyme de leur choix." -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: section -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry #: doc/contributing.texi:28 doc/contributing.texi:30 doc/contributing.texi:31 -#: doc/guix.texi:282 +#: doc/guix.texi:284 #, no-wrap msgid "Building from Git" msgstr "Construire depuis Git" #. type: menuentry -#: doc/contributing.texi:28 doc/guix.texi:282 +#: doc/contributing.texi:28 doc/guix.texi:284 msgid "The latest and greatest." -msgstr "" +msgstr "toujours le plus récent." -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: section -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:28 doc/contributing.texi:102 doc/contributing.texi:103 -#: doc/guix.texi:282 +#: doc/contributing.texi:28 doc/contributing.texi:102 +#: doc/contributing.texi:103 doc/guix.texi:284 #, no-wrap msgid "Running Guix Before It Is Installed" msgstr "Lancer Guix avant qu'il ne soit installé" #. type: menuentry -#: doc/contributing.texi:28 doc/guix.texi:282 +#: doc/contributing.texi:28 doc/guix.texi:284 msgid "Hacker tricks." msgstr "Astuces pour les hackers." -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: section -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:28 doc/contributing.texi:169 doc/contributing.texi:170 -#: doc/guix.texi:282 +#: doc/contributing.texi:28 doc/contributing.texi:163 +#: doc/contributing.texi:164 doc/guix.texi:284 #, no-wrap msgid "The Perfect Setup" msgstr "La configuration parfaite" #. type: menuentry -#: doc/contributing.texi:28 doc/guix.texi:282 +#: doc/contributing.texi:28 doc/guix.texi:284 msgid "The right tools." msgstr "Les bons outils." -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: section -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:28 doc/contributing.texi:228 doc/contributing.texi:229 -#: doc/guix.texi:282 doc/guix.texi:284 +#: doc/contributing.texi:28 doc/contributing.texi:222 +#: doc/contributing.texi:223 doc/guix.texi:284 doc/guix.texi:286 #, no-wrap msgid "Coding Style" msgstr "Style de code" #. type: menuentry -#: doc/contributing.texi:28 doc/guix.texi:282 +#: doc/contributing.texi:28 doc/guix.texi:284 msgid "Hygiene of the contributor." msgstr "Hygiène du contributeur." -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: section -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:28 doc/contributing.texi:326 doc/contributing.texi:327 -#: doc/guix.texi:282 +#: doc/contributing.texi:28 doc/contributing.texi:320 +#: doc/contributing.texi:321 doc/guix.texi:284 #, no-wrap msgid "Submitting Patches" msgstr "Envoyer des correctifs" #. type: menuentry -#: doc/contributing.texi:28 doc/guix.texi:282 +#: doc/contributing.texi:28 doc/guix.texi:284 msgid "Share your work." msgstr "Partager votre travail." #. type: Plain text #: doc/contributing.texi:35 -msgid "" -"If you want to hack Guix itself, it is recommended to use the latest version " -"from the Git repository:" -msgstr "" -"Si vous souhaitez travailler sur Guix lui-même, il est recommandé d'utiliser " -"la dernière version du dépôt Git :" +msgid "If you want to hack Guix itself, it is recommended to use the latest version from the Git repository:" +msgstr "Si vous souhaitez travailler sur Guix lui-même, il est recommandé d'utiliser la dernière version du dépôt Git :" #. type: example #: doc/contributing.texi:38 @@ -177,14 +144,8 @@ msgstr "git clone https://git.savannah.gnu.org/git/guix.git\n" #. type: Plain text #: doc/contributing.texi:43 -msgid "" -"When building Guix from a checkout, the following packages are required in " -"addition to those mentioned in the installation instructions " -"(@pxref{Requirements})." -msgstr "" -"Lors de la construction de Guix depuis un extrait, les paquets suivants sont " -"requis en plus de ceux mentionnés dans les instructions d'installation " -"(@pxref{Prérequis})." +msgid "When building Guix from a checkout, the following packages are required in addition to those mentioned in the installation instructions (@pxref{Requirements})." +msgstr "Lors de la construction de Guix depuis un extrait, les paquets suivants sont requis en plus de ceux mentionnés dans les instructions d'installation (@pxref{Prérequis})." #. type: item #: doc/contributing.texi:45 @@ -224,16 +185,8 @@ msgstr "@url{http://www.gnu.org/software/help2man/, GNU Help2man (facultatif)}." #. type: Plain text #: doc/contributing.texi:57 -msgid "" -"The easiest way to set up a development environment for Guix is, of course, " -"by using Guix! The following command starts a new shell where all the " -"dependencies and appropriate environment variables are set up to hack on " -"Guix:" -msgstr "" -"La manière la plus simple de configurer un environnement de développement " -"pour Guix est, bien sûr, d'utiliser Guix ! La commande suivante démarre un " -"nouveau shell où toutes les dépendances et les variables d'environnements " -"appropriées sont configurés pour travailler sur Guix :" +msgid "The easiest way to set up a development environment for Guix is, of course, by using Guix! The following command starts a new shell where all the dependencies and appropriate environment variables are set up to hack on Guix:" +msgstr "La manière la plus simple de configurer un environnement de développement pour Guix est, bien sûr, d'utiliser Guix ! La commande suivante démarre un nouveau shell où toutes les dépendances et les variables d'environnements appropriées sont configurés pour travailler sur Guix :" #. type: example #: doc/contributing.texi:60 @@ -243,13 +196,8 @@ msgstr "guix environment guix\n" #. type: Plain text #: doc/contributing.texi:64 -msgid "" -"@xref{Invoking guix environment}, for more information on that command. " -"Extra dependencies can be added with @option{--ad-hoc}:" -msgstr "" -"@xref{Invoquer guix environment}, pour plus d'information sur cette " -"commande. On peut ajouter des dépendances supplémentaires avec @option{--ad-" -"hoc} :" +msgid "@xref{Invoking guix environment}, for more information on that command. Extra dependencies can be added with @option{--ad-hoc}:" +msgstr "@xref{Invoquer guix environment}, pour plus d'information sur cette commande. On peut ajouter des dépendances supplémentaires avec @option{--ad-hoc} :" #. type: example #: doc/contributing.texi:67 @@ -259,12 +207,8 @@ msgstr "guix environment guix --ad-hoc help2man git strace\n" #. type: Plain text #: doc/contributing.texi:71 -msgid "" -"Run @command{./bootstrap} to generate the build system infrastructure using " -"Autoconf and Automake. If you get an error like this one:" -msgstr "" -"Lancez @command{./bootstrap} pour générer l'infrastructure du système de " -"construction avec Autoconf et Automake. Si vous avez une erreur comme :" +msgid "Run @command{./bootstrap} to generate the build system infrastructure using Autoconf and Automake. If you get an error like this one:" +msgstr "Lancez @command{./bootstrap} pour générer l'infrastructure du système de construction avec Autoconf et Automake. Si vous avez une erreur comme :" #. type: example #: doc/contributing.texi:74 @@ -274,20 +218,8 @@ msgstr "configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES\n" #. type: Plain text #: doc/contributing.texi:83 -msgid "" -"it probably means that Autoconf couldn’t find @file{pkg.m4}, which is " -"provided by pkg-config. Make sure that @file{pkg.m4} is available. The " -"same holds for the @file{guile.m4} set of macros provided by Guile. For " -"instance, if you installed Automake in @file{/usr/local}, it wouldn’t look " -"for @file{.m4} files in @file{/usr/share}. In that case, you have to invoke " -"the following command:" -msgstr "" -"cela signifie probablement qu'Autoconf n'a pas pu trouver @file{pkg.m4} qui " -"est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est disponible. " -"C'est aussi vrai pour l'ensemble de macros de @file{guile.m4} fournies par " -"Guile. Par exemple, si vous avez installé Automake dans @file{/usr/local}, " -"il ne cherchera pas les fichiers @file{.m4} dans @file{/usr/share}. Dans ce " -"case vous devez invoquer la commande suivante :" +msgid "it probably means that Autoconf couldn’t find @file{pkg.m4}, which is provided by pkg-config. Make sure that @file{pkg.m4} is available. The same holds for the @file{guile.m4} set of macros provided by Guile. For instance, if you installed Automake in @file{/usr/local}, it wouldn’t look for @file{.m4} files in @file{/usr/share}. In that case, you have to invoke the following command:" +msgstr "cela signifie probablement qu'Autoconf n'a pas pu trouver @file{pkg.m4} qui est fournit par pkg-config. Assurez-vous que @file{pkg.m4} est disponible. C'est aussi vrai pour l'ensemble de macros de @file{guile.m4} fournies par Guile. Par exemple, si vous avez installé Automake dans @file{/usr/local}, il ne cherchera pas les fichiers @file{.m4} dans @file{/usr/share}. Dans ce case vous devez invoquer la commande suivante :" #. type: example #: doc/contributing.texi:86 @@ -297,70 +229,28 @@ msgstr "export ACLOCAL_PATH=/usr/share/aclocal\n" #. type: Plain text #: doc/contributing.texi:90 -msgid "" -"@xref{Macro Search Path,,, automake, The GNU Automake Manual}, for more " -"information." -msgstr "" -"@xref{Macro Search Path,,, automake, The GNU Automake Manual}, pour plus " -"d'information." +msgid "@xref{Macro Search Path,,, automake, The GNU Automake Manual}, for more information." +msgstr "@xref{Macro Search Path,,, automake, The GNU Automake Manual}, pour plus d'information." #. type: Plain text #: doc/contributing.texi:95 -msgid "" -"Then, run @command{./configure} as usual. Make sure to pass @code{--" -"localstatedir=@var{directory}} where @var{directory} is the " -"@code{localstatedir} value used by your current installation (@pxref{The " -"Store}, for information about this)." -msgstr "" -"Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de " -"passer @code{--localstatedir=@var{directory}} où @var{directory} est la " -"valeur @code{localstatedir} utilisée par votre installation actuelle " -"(@pxref{Le dépôt} pour plus d'informations à ce propos)." +msgid "Then, run @command{./configure} as usual. Make sure to pass @code{--localstatedir=@var{directory}} where @var{directory} is the @code{localstatedir} value used by your current installation (@pxref{The Store}, for information about this)." +msgstr "Ensuite, lancez @command{./configure} comme d'habitude. Assurez-vous de passer @code{--localstatedir=@var{directory}} où @var{directory} est la valeur @code{localstatedir} utilisée par votre installation actuelle (@pxref{Le dépôt} pour plus d'informations à ce propos)." #. type: Plain text #: doc/contributing.texi:100 -msgid "" -"Finally, you have to invoke @code{make check} to run tests (@pxref{Running " -"the Test Suite}). If anything fails, take a look at installation " -"instructions (@pxref{Installation}) or send a message to the @email{guix-" -"devel@@gnu.org, mailing list}." -msgstr "" -"Finalement, vous devez invoquer @code{make check} pour lancer les tests " -"(@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil " -"aux instructions d'installation (@pxref{Installation}) ou envoyez un message " -"à la list @email{guix-devel@@gnu.org}." +msgid "Finally, you have to invoke @code{make check} to run tests (@pxref{Running the Test Suite}). If anything fails, take a look at installation instructions (@pxref{Installation}) or send a message to the @email{guix-devel@@gnu.org, mailing list}." +msgstr "Finalement, vous devez invoquer @code{make check} pour lancer les tests (@pxref{Lancer la suite de tests}). Si quelque chose échoue, jetez un œil aux instructions d'installation (@pxref{Installation}) ou envoyez un message à la list @email{guix-devel@@gnu.org}." #. type: Plain text #: doc/contributing.texi:109 -msgid "" -"In order to keep a sane working environment, you will find it useful to test " -"the changes made in your local source tree checkout without actually " -"installing them. So that you can distinguish between your ``end-user'' hat " -"and your ``motley'' costume." -msgstr "" -"Pour garder un environnement de travail sain, il est utile de tester les " -"changement localement sans les installer pour de vrai. Pour pouvoir " -"distinguer votre rôle « d'utilisateur final » de celui parfois haut en " -"couleur de « développeur »." +msgid "In order to keep a sane working environment, you will find it useful to test the changes made in your local source tree checkout without actually installing them. So that you can distinguish between your ``end-user'' hat and your ``motley'' costume." +msgstr "Pour garder un environnement de travail sain, il est utile de tester les changement localement sans les installer pour de vrai. Pour pouvoir distinguer votre rôle « d'utilisateur final » de celui parfois haut en couleur de « développeur »." #. type: Plain text #: doc/contributing.texi:117 -msgid "" -"To that end, all the command-line tools can be used even if you have not run " -"@code{make install}. To do that, prefix each command with @command{./pre-" -"inst-env} (the @file{pre-inst-env} script lives in the top build tree of " -"Guix), as in@footnote{The @option{-E} flag to @command{sudo} guarantees that " -"@code{GUILE_LOAD_PATH} is correctly set such that @command{guix-daemon} and " -"the tools it uses can find the Guile modules they need.}:" -msgstr "" -"Pour cela, tous les outils en ligne de commande sont utilisables même sans " -"avoir lancé @code{make install}. Vous devez pour cela préfixer chaque " -"commande par @command{./pre-inst-env} (le script @file{pre-inst-env} se " -"trouve dans le répertoire de plus haut niveau de l'arborescence des sources " -"de Guix) comme cela@footnote{L'option @option{-E} de @command{sudo} garantie " -"que @code{GUILE_LOAD_PATH} est bien paramétré pour @command{guix-daemon} et " -"les outils qu'il utilise puissent trouver les modules Guile dont ils ont " -"besoin.} :" +msgid "To that end, all the command-line tools can be used even if you have not run @code{make install}. To do that, prefix each command with @command{./pre-inst-env} (the @file{pre-inst-env} script lives in the top build tree of Guix), as in@footnote{The @option{-E} flag to @command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set such that @command{guix-daemon} and the tools it uses can find the Guile modules they need.}:" +msgstr "Pour cela, tous les outils en ligne de commande sont utilisables même sans avoir lancé @code{make install}. Vous devez pour cela préfixer chaque commande par @command{./pre-inst-env} (le script @file{pre-inst-env} se trouve dans le répertoire de plus haut niveau de l'arborescence des sources de Guix) comme cela@footnote{L'option @option{-E} de @command{sudo} garantie que @code{GUILE_LOAD_PATH} est bien paramétré pour @command{guix-daemon} et les outils qu'il utilise puissent trouver les modules Guile dont ils ont besoin.} :" #. type: example #: doc/contributing.texi:121 @@ -407,12 +297,8 @@ msgstr "read-eval-print loop" #. type: Plain text #: doc/contributing.texi:137 -msgid "" -"@dots{} and for a REPL (@pxref{Using Guile Interactively,,, guile, Guile " -"Reference Manual}):" -msgstr "" -"@dots{} et pour un REPL (@pxref{Using Guile Interactively,,, guile, Guile " -"Reference Manual})" +msgid "@dots{} and for a REPL (@pxref{Using Guile Interactively,,, guile, Guile Reference Manual}):" +msgstr "@dots{} et pour un REPL (@pxref{Using Guile Interactively,,, guile, Guile Reference Manual})" #. type: example #: doc/contributing.texi:152 @@ -448,75 +334,26 @@ msgstr "" #. type: Plain text #: doc/contributing.texi:156 -msgid "" -"The @command{pre-inst-env} script sets up all the environment variables " -"necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}." -msgstr "" -"Le script @command{pre-inst-env} paramètre toutes les variables " -"d'environnement nécessaires, dont @env{PATH} et @env{GUILE_LOAD_PATH}." +msgid "The @command{pre-inst-env} script sets up all the environment variables necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}." +msgstr "Le script @command{pre-inst-env} paramètre toutes les variables d'environnement nécessaires, dont @env{PATH} et @env{GUILE_LOAD_PATH}." #. type: Plain text -#: doc/contributing.texi:167 -msgid "" -"Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the " -"local source tree; it simply updates the @file{~/.config/guix/latest} " -"symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if you " -"want to upgrade your local source tree.@footnote{If you would like to set up " -"@command{guix} to use your Git checkout, you can point the @file{~/.config/" -"guix/latest} symlink to your Git checkout directory. If you are the sole " -"user of your system, you may also consider pointing the @file{/root/.config/" -"guix/latest} symlink to point to @file{~/.config/guix/latest}; this way it " -"will always use the same @command{guix} as your user does.}" -msgstr "" -"Remarquez que @command{./pre-inst-env guix pull} ne met @emph{pas} à jour " -"l'arborescence des sources locale ; il met seulement à jour le lien " -"symbolique @file{~/.config/guix/latest} (@pxref{Invoquer guix pull}). Lancez " -"@command{git pull} à la place si vous voulez mettre à jour votre " -"arborescence des sources locale@footnote{Si vous voulez paramétrer " -"@command{guix} pour qu'il utilise votre dépôt Git, vous pouvez faire pointer " -"le lien symbolique @file{~/.config/guix/latest} vers le répertoire contenant " -"ce dépôt. Si vous le seul utilisateur du système, vous pouvez aussi " -"considérer faire pointer le lien symbolique @file{/root/.config/guix/latest} " -"vers @file{~/.config/guix/latest} ; comme ça root aura toujours la même " -"commande @command{guix} que votre utilisateur}." +#: doc/contributing.texi:161 +msgid "Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the local source tree; it simply updates the @file{~/.config/guix/current} symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if you want to upgrade your local source tree." +msgstr "Remarquez que @command{./pre-inst-env guix pull} ne met @emph{pas} à jour l'arborescence des sources locale ; cela met seulement à jour le lien symbolique de @file{~/.config/guix/current} (@pxref{Invoking guix pull}). Lancez @command{git pull} à la place si vous voulez mettre à jour votre arborescence des source locale." #. type: Plain text -#: doc/contributing.texi:177 -msgid "" -"The Perfect Setup to hack on Guix is basically the perfect setup used for " -"Guile hacking (@pxref{Using Guile in Emacs,,, guile, Guile Reference " -"Manual}). First, you need more than an editor, you need @url{http://www.gnu." -"org/software/emacs, Emacs}, empowered by the wonderful @url{http://nongnu." -"org/geiser/, Geiser}." -msgstr "" -"La configuration parfaite pour travailler sur Guix est simplement la " -"configuration parfaite pour travailler en Guile (@pxref{Using Guile in " -"Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de " -"mieux qu'un éditeur de texte, vous avez besoin de @url{http://www.gnu.org/" -"software/emacs, Emacs}, amélioré par le superbe @url{http://nongnu.org/" -"geiser/, Geiser}." +#: doc/contributing.texi:171 +msgid "The Perfect Setup to hack on Guix is basically the perfect setup used for Guile hacking (@pxref{Using Guile in Emacs,,, guile, Guile Reference Manual}). First, you need more than an editor, you need @url{http://www.gnu.org/software/emacs, Emacs}, empowered by the wonderful @url{http://nongnu.org/geiser/, Geiser}." +msgstr "La configuration parfaite pour travailler sur Guix est simplement la configuration parfaite pour travailler en Guile (@pxref{Using Guile in Emacs,,, guile, Guile Reference Manual}). Tout d'abord, vous avez besoin de mieux qu'un éditeur de texte, vous avez besoin de @url{http://www.gnu.org/software/emacs, Emacs}, amélioré par le superbe @url{http://nongnu.org/geiser/, Geiser}." #. type: Plain text -#: doc/contributing.texi:185 -msgid "" -"Geiser allows for interactive and incremental development from within Emacs: " -"code compilation and evaluation from within buffers, access to on-line " -"documentation (docstrings), context-sensitive completion, @kbd{M-.} to jump " -"to an object definition, a REPL to try out your code, and more " -"(@pxref{Introduction,,, geiser, Geiser User Manual}). For convenient Guix " -"development, make sure to augment Guile’s load path so that it finds source " -"files from your checkout:" -msgstr "" -"Geiser permet le développement interactif et incrémental depuis Emacs : la " -"compilation du code et son évaluation depuis les buffers, l'accès à la " -"documentation en ligne (docstrings), la complétion sensible au contexte, " -"@kbd{M-.} pour sauter à la définition d'un objet, un REPL pour tester votre " -"code, et bien plus (@pxref{Introduction,,, geiser, Geiser User Manual}). " -"Pour travailler confortablement sur Guix, assurez-vous de modifier le chemin " -"de chargement de Guile pour qu'il trouve les fichiers source de votre dépôt :" +#: doc/contributing.texi:179 +msgid "Geiser allows for interactive and incremental development from within Emacs: code compilation and evaluation from within buffers, access to on-line documentation (docstrings), context-sensitive completion, @kbd{M-.} to jump to an object definition, a REPL to try out your code, and more (@pxref{Introduction,,, geiser, Geiser User Manual}). For convenient Guix development, make sure to augment Guile’s load path so that it finds source files from your checkout:" +msgstr "Geiser permet le développement interactif et incrémental depuis Emacs : la compilation du code et son évaluation depuis les buffers, l'accès à la documentation en ligne (docstrings), la complétion sensible au contexte, @kbd{M-.} pour sauter à la définition d'un objet, un REPL pour tester votre code, et bien plus (@pxref{Introduction,,, geiser, Geiser User Manual}). Pour travailler confortablement sur Guix, assurez-vous de modifier le chemin de chargement de Guile pour qu'il trouve les fichiers source de votre dépôt :" #. type: lisp -#: doc/contributing.texi:190 +#: doc/contributing.texi:184 #, no-wrap msgid "" ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" @@ -528,51 +365,35 @@ msgstr "" " (add-to-list 'geiser-guile-load-path \"~/src/guix\"))\n" #. type: Plain text -#: doc/contributing.texi:198 -msgid "" -"To actually edit the code, Emacs already has a neat Scheme mode. But in " -"addition to that, you must not miss @url{http://www.emacswiki.org/emacs/" -"ParEdit, Paredit}. It provides facilities to directly operate on the syntax " -"tree, such as raising an s-expression or wrapping it, swallowing or " -"rejecting the following s-expression, etc." -msgstr "" +#: doc/contributing.texi:192 +msgid "To actually edit the code, Emacs already has a neat Scheme mode. But in addition to that, you must not miss @url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides facilities to directly operate on the syntax tree, such as raising an s-expression or wrapping it, swallowing or rejecting the following s-expression, etc." +msgstr "Pour effectivement éditer le code, Emacs a déjà un très bon mode Scheme. Mais en plus de ça, vous ne devez pas rater @url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. Il fournit des fonctionnalités pour opérer directement sur l'arbre de syntaxe, comme relever une s-expression ou l'envelopper, absorber ou rejeter la s-expression suivante, etc." #. type: cindex -#: doc/contributing.texi:199 +#: doc/contributing.texi:193 #, no-wrap msgid "code snippets" msgstr "extraits de code" #. type: cindex -#: doc/contributing.texi:200 +#: doc/contributing.texi:194 #, no-wrap msgid "templates" msgstr "modèles" #. type: cindex -#: doc/contributing.texi:201 +#: doc/contributing.texi:195 #, no-wrap msgid "reducing boilerplate" msgstr "réduire la quantité de code commun" #. type: Plain text -#: doc/contributing.texi:208 -msgid "" -"We also provide templates for common git commit messages and package " -"definitions in the @file{etc/snippets} directory. These templates can be " -"used with @url{http://joaotavora.github.io/yasnippet/, YASnippet} to expand " -"short trigger strings to interactive text snippets. You may want to add the " -"snippets directory to the @var{yas-snippet-dirs} variable in Emacs." -msgstr "" -"Nous fournissons aussi des modèles pour les messages de commit git communs " -"et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces " -"modèles s'utilisent avec @url{http://joaotavora.github.io/yasnippet/, " -"YASnippet} pour développer des chaînes courtes de déclenchement en extraits " -"de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la " -"variables @var{yas-snippet-dirs} d'Emacs." +#: doc/contributing.texi:202 +msgid "We also provide templates for common git commit messages and package definitions in the @file{etc/snippets} directory. These templates can be used with @url{http://joaotavora.github.io/yasnippet/, YASnippet} to expand short trigger strings to interactive text snippets. You may want to add the snippets directory to the @var{yas-snippet-dirs} variable in Emacs." +msgstr "Nous fournissons aussi des modèles pour les messages de commit git communs et les définitions de paquets dans le répertoire @file{etc/snippets}. Ces modèles s'utilisent avec @url{http://joaotavora.github.io/yasnippet/, YASnippet} pour développer des chaînes courtes de déclenchement en extraits de texte interactifs. Vous pouvez ajouter le répertoire des modèles dans la variables @var{yas-snippet-dirs} d'Emacs." #. type: lisp -#: doc/contributing.texi:213 +#: doc/contributing.texi:207 #, no-wrap msgid "" ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" @@ -583,722 +404,416 @@ msgstr "" "(with-eval-after-load 'yasnippet\n" " (add-to-list 'yas-snippet-dirs \"~/src/guix/etc/snippets\"))\n" +#. type: Plain text +#: doc/contributing.texi:214 +msgid "The commit message snippets depend on @url{https://magit.vc/, Magit} to display staged files. When editing a commit message type @code{add} followed by @kbd{TAB} to insert a commit message template for adding a package; type @code{update} followed by @kbd{TAB} to insert a template for updating a package." +msgstr "Les extraits de messages de commit dépendent de @url{https://magit.vc/, Magit} pour afficher les fichiers sélectionnés. Lors de la modification d'un message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un modèle de message de commit pour ajouter un paquet ; tapez @code{update} suivi de @kbd{TAB} pour insérer un modèle pour la mise à jour d'un paquet." + #. type: Plain text #: doc/contributing.texi:220 -msgid "" -"The commit message snippets depend on @url{https://magit.vc/, Magit} to " -"display staged files. When editing a commit message type @code{add} " -"followed by @kbd{TAB} to insert a commit message template for adding a " -"package; type @code{update} followed by @kbd{TAB} to insert a template for " -"updating a package." -msgstr "" -"Les extraits de messages de commit dépendent de @url{https://magit.vc/, " -"Magit} pour afficher les fichiers sélectionnés. Lors de la modification d'un " -"message de commit, tapez @code{add} suivi de @kbd{TAB} pour insérer un " -"modèle de message de commit pour ajouter un paquet ; tapez @code{update} " -"suivi de @kbd{TAB} pour insérer un modèle pour la mise à jour d'un paquet." +msgid "The main snippet for @code{scheme-mode} is triggered by typing @code{package...} followed by @kbd{TAB}. This snippet also inserts the trigger string @code{origin...}, which can be expanded further. The @code{origin} snippet in turn may insert other trigger strings ending on @code{...}, which also can be expanded further." +msgstr "L'extrait principal pour @code{scheme-mode} est lancé en tapant @code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait @code{origin} lui-même peut aussi insérer des chaînes de déclenchement qui finissent sur @code{…}, qui peuvent aussi être étendues." #. type: Plain text -#: doc/contributing.texi:226 -msgid "" -"The main snippet for @code{scheme-mode} is triggered by typing " -"@code{package...} followed by @kbd{TAB}. This snippet also inserts the " -"trigger string @code{origin...}, which can be expanded further. The " -"@code{origin} snippet in turn may insert other trigger strings ending on " -"@code{...}, which also can be expanded further." -msgstr "" -"L'extrait principal pour @code{scheme-mode} est lancé en tapant " -"@code{package…} suivi par @kbd{TAB}. Cet extrait insère aussi la chaîne de " -"déclenchement @code{origin…}, qui peut aussi être étendue. L'extrait " -"@code{origin} lui-même peut aussi insérer des chaînes de déclenchement qui " -"finissent sur @code{…}, qui peuvent aussi être étendues." +#: doc/contributing.texi:228 +msgid "In general our code follows the GNU Coding Standards (@pxref{Top,,, standards, GNU Coding Standards}). However, they do not say much about Scheme, so here are some additional rules." +msgstr "En général notre code suit le Standard de Code GNU (@pxref{Top,,, standards, GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc voici quelques règles supplémentaires." -#. type: Plain text -#: doc/contributing.texi:234 -msgid "" -"In general our code follows the GNU Coding Standards (@pxref{Top,,, " -"standards, GNU Coding Standards}). However, they do not say much about " -"Scheme, so here are some additional rules." -msgstr "" -"En général notre code suit le Standard de Code GNU (@pxref{Top,,, standards, " -"GNU Coding Standards}). Cependant, il ne parle pas beaucoup de Scheme, donc " -"voici quelques règles supplémentaires." - -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: subsection -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:240 doc/contributing.texi:242 -#: doc/contributing.texi:243 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/contributing.texi:236 +#: doc/contributing.texi:237 doc/guix.texi:291 #, no-wrap msgid "Programming Paradigm" msgstr "Paradigme de programmation" #. type: menuentry -#: doc/contributing.texi:240 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/guix.texi:291 msgid "How to compose your elements." msgstr "Comment composer vos éléments." -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: subsection -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:240 doc/contributing.texi:249 -#: doc/contributing.texi:250 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/contributing.texi:243 +#: doc/contributing.texi:244 doc/guix.texi:291 #, no-wrap msgid "Modules" msgstr "Modules" #. type: menuentry -#: doc/contributing.texi:240 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/guix.texi:291 msgid "Where to store your code?" msgstr "Où stocker votre code ?" -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: subsection -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:240 doc/contributing.texi:260 -#: doc/contributing.texi:261 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/contributing.texi:254 +#: doc/contributing.texi:255 doc/guix.texi:291 #, no-wrap msgid "Data Types and Pattern Matching" msgstr "Types de données et reconnaissance de motif" #. type: menuentry -#: doc/contributing.texi:240 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/guix.texi:291 msgid "Implementing data structures." msgstr "Implémenter des structures de données." -#. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# contributing.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: subsection -#. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# +#. #-#-#-#-# guix.pot (guix 0.14.0.6706-c6386-dirty) #-#-#-#-# #. type: menuentry -#: doc/contributing.texi:240 doc/contributing.texi:274 -#: doc/contributing.texi:275 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/contributing.texi:268 +#: doc/contributing.texi:269 doc/guix.texi:291 #, no-wrap msgid "Formatting Code" msgstr "Formatage du code" #. type: menuentry -#: doc/contributing.texi:240 doc/guix.texi:289 +#: doc/contributing.texi:234 doc/guix.texi:291 msgid "Writing conventions." msgstr "Conventions d'écriture." #. type: Plain text -#: doc/contributing.texi:248 -msgid "" -"Scheme code in Guix is written in a purely functional style. One exception " -"is code that involves input/output, and procedures that implement low-level " -"concepts, such as the @code{memoize} procedure." -msgstr "" -"Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le " -"code qui s'occupe des entrées-sorties est une exception ainsi que les " -"procédures qui implémentent des concepts bas-niveau comme la procédure " -"@code{memoize}." +#: doc/contributing.texi:242 +msgid "Scheme code in Guix is written in a purely functional style. One exception is code that involves input/output, and procedures that implement low-level concepts, such as the @code{memoize} procedure." +msgstr "Le code Scheme dans Guix est écrit dans un style purement fonctionnel. Le code qui s'occupe des entrées-sorties est une exception ainsi que les procédures qui implémentent des concepts bas-niveau comme la procédure @code{memoize}." #. type: Plain text -#: doc/contributing.texi:256 -msgid "" -"Guile modules that are meant to be used on the builder side must live in the " -"@code{(guix build @dots{})} name space. They must not refer to other Guix " -"or GNU modules. However, it is OK for a ``host-side'' module to use a build-" -"side module." -msgstr "" -"Les modules Guile qui sont sensés être utilisés du côté de la construction " -"doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne " -"doivent pas se référer à d'autres modules Guix ou GNU. Cependant il est " -"correct pour un module « côté hôte » de dépendre d'un module coté " -"construction." +#: doc/contributing.texi:250 +msgid "Guile modules that are meant to be used on the builder side must live in the @code{(guix build @dots{})} name space. They must not refer to other Guix or GNU modules. However, it is OK for a ``host-side'' module to use a build-side module." +msgstr "Les modules Guile qui sont sensés être utilisés du côté de la construction doivent se trouver dans l'espace de nom @code{(guix build @dots{})}. Ils ne doivent pas se référer à d'autres modules Guix ou GNU@. Cependant il est correct pour un module « côté hôte » de dépendre d'un module coté construction." #. type: Plain text -#: doc/contributing.texi:259 -msgid "" -"Modules that deal with the broader GNU system should be in the @code{(gnu " -"@dots{})} name space rather than @code{(guix @dots{})}." -msgstr "" -"Les modules qui s'occupent du système GNU général devraient se trouver dans " -"l'espace de nom @code{(gnu @dots{})} plutôt que @code{(guix @dots{})}." +#: doc/contributing.texi:253 +msgid "Modules that deal with the broader GNU system should be in the @code{(gnu @dots{})} name space rather than @code{(guix @dots{})}." +msgstr "Les modules qui s'occupent du système GNU général devraient se trouver dans l'espace de nom @code{(gnu @dots{})} plutôt que @code{(guix @dots{})}." #. type: Plain text -#: doc/contributing.texi:268 -msgid "" -"The tendency in classical Lisp is to use lists to represent everything, and " -"then to browse them ``by hand'' using @code{car}, @code{cdr}, @code{cadr}, " -"and co. There are several problems with that style, notably the fact that " -"it is hard to read, error-prone, and a hindrance to proper type error " -"reports." -msgstr "" -"La tendance en Lisp classique est d'utiliser des listes pour tout " -"représenter et de naviguer dedans « à la main ( avec @code{car}, @code{cdr}, " -"@code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style, " -"notamment le fait qu'il soit dur à lire, source d'erreur et un obstacle aux " -"rapports d'erreur bien typés." +#: doc/contributing.texi:262 +msgid "The tendency in classical Lisp is to use lists to represent everything, and then to browse them ``by hand'' using @code{car}, @code{cdr}, @code{cadr}, and co. There are several problems with that style, notably the fact that it is hard to read, error-prone, and a hindrance to proper type error reports." +msgstr "La tendance en Lisp classique est d'utiliser des listes pour tout représenter et de naviguer dedans « à la main ( avec @code{car}, @code{cdr}, @code{cadr} et compagnie. Il y a plusieurs problèmes avec ce style, notamment le fait qu'il soit dur à lire, source d'erreur et un obstacle aux rapports d'erreur bien typés." #. type: Plain text -#: doc/contributing.texi:273 -msgid "" -"Guix code should define appropriate data types (for instance, using " -"@code{define-record-type*}) rather than abuse lists. In addition, it should " -"use pattern matching, via Guile’s @code{(ice-9 match)} module, especially " -"when matching lists." -msgstr "" -"Le code de Guix devrait définir des types de données appropriées (par " -"exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes. En " -"plus, il devrait utiliser la recherche de motifs, via le module Guile " -"@code{(ice-9 match)}, surtout pour rechercher dans des listes." +#: doc/contributing.texi:267 +msgid "Guix code should define appropriate data types (for instance, using @code{define-record-type*}) rather than abuse lists. In addition, it should use pattern matching, via Guile’s @code{(ice-9 match)} module, especially when matching lists." +msgstr "Le code de Guix devrait définir des types de données appropriées (par exemple, avec @code{define-record-type*}) plutôt que d'abuser des listes. En plus, il devrait utiliser la recherche de motifs, via le module Guile @code{(ice-9 match)}, surtout pour rechercher dans des listes." #. type: cindex -#: doc/contributing.texi:277 +#: doc/contributing.texi:271 #, no-wrap msgid "formatting code" msgstr "formater le code" #. type: cindex -#: doc/contributing.texi:278 +#: doc/contributing.texi:272 #, no-wrap msgid "coding style" msgstr "style de code" #. type: Plain text -#: doc/contributing.texi:285 -msgid "" -"When writing Scheme code, we follow common wisdom among Scheme programmers. " -"In general, we follow the @url{http://mumble.net/~campbell/scheme/style.txt, " -"Riastradh's Lisp Style Rules}. This document happens to describe the " -"conventions mostly used in Guile’s code too. It is very thoughtful and well " -"written, so please do read it." -msgstr "" -"Lorsque nous écrivons du code Scheme, nous suivons la sagesse commune aux " -"programmeurs Scheme. En général, nous suivons les @url{http://mumble.net/" -"~campbell/scheme/style.txt, règles de style de Riastradh}. Ce document " -"décrit aussi les conventions utilisées dans le code de Guile. Il est bien " -"pensé et bien écrit, alors n'hésitez pas à le lire." +#: doc/contributing.texi:279 +msgid "When writing Scheme code, we follow common wisdom among Scheme programmers. In general, we follow the @url{http://mumble.net/~campbell/scheme/style.txt, Riastradh's Lisp Style Rules}. This document happens to describe the conventions mostly used in Guile’s code too. It is very thoughtful and well written, so please do read it." +msgstr "Lorsque nous écrivons du code Scheme, nous suivons la sagesse commune aux programmeurs Scheme. En général, nous suivons les @url{http://mumble.net/~campbell/scheme/style.txt, règles de style de Riastradh}. Ce document décrit aussi les conventions utilisées dans le code de Guile. Il est bien pensé et bien écrit, alors n'hésitez pas à le lire." #. type: Plain text -#: doc/contributing.texi:292 -msgid "" -"Some special forms introduced in Guix, such as the @code{substitute*} macro, " -"have special indentation rules. These are defined in the @file{.dir-locals." -"el} file, which Emacs automatically uses. Also note that Emacs-Guix " -"provides @code{guix-devel-mode} mode that indents and highlights Guix code " -"properly (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference " -"Manual})." -msgstr "" -"Certaines formes spéciales introduites dans Guix comme la macro " -"@code{substitute*} ont des règles d'indentation spécifiques. Elles sont " -"définies dans le fichier @file{.dir-locals.el} qu'Emacs utilise " -"automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode @code{guix-" -"devel-mode} qui indente et colore le code Guix correctement " -"(@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual})." +#: doc/contributing.texi:286 +msgid "Some special forms introduced in Guix, such as the @code{substitute*} macro, have special indentation rules. These are defined in the @file{.dir-locals.el} file, which Emacs automatically uses. Also note that Emacs-Guix provides @code{guix-devel-mode} mode that indents and highlights Guix code properly (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual})." +msgstr "Certaines formes spéciales introduites dans Guix comme la macro @code{substitute*} ont des règles d'indentation spécifiques. Elles sont définies dans le fichier @file{.dir-locals.el} qu'Emacs utilise automatiquement. Remarquez aussi qu'Emacs-Guix fournit le mode @code{guix-devel-mode} qui indente et colore le code Guix correctement (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual})." #. type: cindex -#: doc/contributing.texi:293 +#: doc/contributing.texi:287 #, no-wrap msgid "indentation, of code" msgstr "indentation, du code" #. type: cindex -#: doc/contributing.texi:294 +#: doc/contributing.texi:288 #, no-wrap msgid "formatting, of code" msgstr "formatage, du code" #. type: Plain text -#: doc/contributing.texi:297 -msgid "" -"If you do not use Emacs, please make sure to let your editor knows these " -"rules. To automatically indent a package definition, you can also run:" -msgstr "" -"Si vous n'utilisez pas Emacs, assurez-vous que votre éditeur connaisse ces " -"règles. Pour indenter automatiquement une définition de paquet, vous pouvez " -"aussi lancer :" +#: doc/contributing.texi:291 +msgid "If you do not use Emacs, please make sure to let your editor knows these rules. To automatically indent a package definition, you can also run:" +msgstr "Si vous n'utilisez pas Emacs, assurez-vous que votre éditeur connaisse ces règles. Pour indenter automatiquement une définition de paquet, vous pouvez aussi lancer :" #. type: example -#: doc/contributing.texi:300 +#: doc/contributing.texi:294 #, no-wrap msgid "./etc/indent-code.el gnu/packages/@var{file}.scm @var{package}\n" msgstr "./etc/indent-code.el gnu/packages/@var{file}.scm @var{package}\n" #. type: Plain text -#: doc/contributing.texi:306 -msgid "" -"This automatically indents the definition of @var{package} in @file{gnu/" -"packages/@var{file}.scm} by running Emacs in batch mode. To indent a whole " -"file, omit the second argument:" -msgstr "" -"Cela indente automatiquement la définition de @var{package} dans @file{gnu/" -"packages/@var{file}.scm} en lançant Emacs en mode commande. Pour indenter un " -"fichier complet, n'indiquez pas de second argument :" +#: doc/contributing.texi:300 +msgid "This automatically indents the definition of @var{package} in @file{gnu/packages/@var{file}.scm} by running Emacs in batch mode. To indent a whole file, omit the second argument:" +msgstr "Cela indente automatiquement la définition de @var{package} dans @file{gnu/packages/@var{file}.scm} en lançant Emacs en mode commande. Pour indenter un fichier complet, n'indiquez pas de second argument :" #. type: example -#: doc/contributing.texi:309 +#: doc/contributing.texi:303 #, no-wrap msgid "./etc/indent-code.el gnu/services/@var{file}.scm\n" msgstr "./etc/indent-code.el gnu/services/@var{file}.scm\n" #. type: cindex -#: doc/contributing.texi:311 +#: doc/contributing.texi:305 #, no-wrap msgid "Vim, Scheme code editing" -msgstr "" +msgstr "Vim, édition de code Scheme" #. type: Plain text -#: doc/contributing.texi:317 -msgid "" -"If you are editing code with Vim, we recommend that you run @code{:set " -"autoindent} so that your code is automatically indented as you type. " -"Additionally, @uref{https://www.vim.org/scripts/script.php?script_id=3998, " -"@code{paredit.vim}} may help you deal with all these parentheses." -msgstr "" +#: doc/contributing.texi:311 +msgid "If you are editing code with Vim, we recommend that you run @code{:set autoindent} so that your code is automatically indented as you type. Additionally, @uref{https://www.vim.org/scripts/script.php?script_id=3998, @code{paredit.vim}} may help you deal with all these parentheses." +msgstr "Si vous éditez du code avec Vim, nous recommandons de lancer @code{:set autoindent} pour que votre code soit automatiquement indenté au moment où vous l'entrez. En plus, @uref{https://www.vim.org/scripts/script.php?script_id=3998, @code{paredit.vim}} peut vous aider à gérer toutes ces parenthèses." #. type: Plain text -#: doc/contributing.texi:321 -msgid "" -"We require all top-level procedures to carry a docstring. This requirement " -"can be relaxed for simple private procedures in the @code{(guix build " -"@dots{})} name space, though." -msgstr "" -"Nous demandons que toutes les procédure de premier niveau contiennent une " -"chaîne de documentation. Ce pré-requis peut être relâché pour les procédures " -"privées simples dans l'espace de nom @code{(guix build @dots{})} cependant." +#: doc/contributing.texi:315 +msgid "We require all top-level procedures to carry a docstring. This requirement can be relaxed for simple private procedures in the @code{(guix build @dots{})} name space, though." +msgstr "Nous demandons que toutes les procédure de premier niveau contiennent une chaîne de documentation. Ce pré-requis peut être relâché pour les procédures privées simples dans l'espace de nom @code{(guix build @dots{})} cependant." #. type: Plain text -#: doc/contributing.texi:324 -msgid "" -"Procedures should not have more than four positional parameters. Use " -"keyword parameters for procedures that take more than four parameters." -msgstr "" -"Les procédures ne devraient pas avoir plus de quatre paramètres positionnés. " -"Utilisez des paramètres par mot-clefs pour les procédures qui prennent plus " -"de quatre paramètres." +#: doc/contributing.texi:318 +msgid "Procedures should not have more than four positional parameters. Use keyword parameters for procedures that take more than four parameters." +msgstr "Les procédures ne devraient pas avoir plus de quatre paramètres positionnés. Utilisez des paramètres par mot-clefs pour les procédures qui prennent plus de quatre paramètres." #. type: Plain text -#: doc/contributing.texi:333 -msgid "" -"Development is done using the Git distributed version control system. Thus, " -"access to the repository is not strictly necessary. We welcome " -"contributions in the form of patches as produced by @code{git format-patch} " -"sent to the @email{guix-patches@@gnu.org} mailing list." -msgstr "" -"Le développement se fait avec le système de contrôle de version Git. Ainsi, " -"l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les " -"contributions sous forme de correctifs produits par @code{git format-patch} " -"envoyés sur la liste de diffusion @email{guix-patches@@gnu.org}." +#: doc/contributing.texi:327 +msgid "Development is done using the Git distributed version control system. Thus, access to the repository is not strictly necessary. We welcome contributions in the form of patches as produced by @code{git format-patch} sent to the @email{guix-patches@@gnu.org} mailing list." +msgstr "Le développement se fait avec le système de contrôle de version Git. Ainsi, l'accès au dépôt n'est pas strictement nécessaire. Nous accueillons les contributions sous forme de correctifs produits par @code{git format-patch} envoyés sur la liste de diffusion @email{guix-patches@@gnu.org}." #. type: Plain text -#: doc/contributing.texi:340 -msgid "" -"This mailing list is backed by a Debbugs instance accessible at " -"@uref{https://bugs.gnu.org/guix-patches}, which allows us to keep track of " -"submissions. Each message sent to that mailing list gets a new tracking " -"number assigned; people can then follow up on the submission by sending " -"email to @code{@var{NNN}@@debbugs.gnu.org}, where @var{NNN} is the tracking " -"number (@pxref{Sending a Patch Series})." -msgstr "" -"Cette liste de diffusion est gérée par une instance Debbugs accessible à " -"l'adresse @uref{https://bugs.gnu.org/guix-patches}, qui nous permet de " -"suivre les soumissions. Chaque message envoyé à cette liste se voit " -"attribuer un numéro de suivi ; les gens peuvent ensuite répondre à cette " -"soumission en envoyant un courriel à @code{@var{NNN}@@debbugs.gnu.org}, où " -"@var{NNN} est le numéro de suivi (@pxref{Envoyer une série de correctifs})." +#: doc/contributing.texi:334 +msgid "This mailing list is backed by a Debbugs instance accessible at @uref{https://bugs.gnu.org/guix-patches}, which allows us to keep track of submissions. Each message sent to that mailing list gets a new tracking number assigned; people can then follow up on the submission by sending email to @code{@var{NNN}@@debbugs.gnu.org}, where @var{NNN} is the tracking number (@pxref{Sending a Patch Series})." +msgstr "Cette liste de diffusion est gérée par une instance Debbugs accessible à l'adresse @uref{https://bugs.gnu.org/guix-patches}, qui nous permet de suivre les soumissions. Chaque message envoyé à cette liste se voit attribuer un numéro de suivi ; les gens peuvent ensuite répondre à cette soumission en envoyant un courriel à @code{@var{NNN}@@debbugs.gnu.org}, où @var{NNN} est le numéro de suivi (@pxref{Envoyer une série de correctifs})." #. type: Plain text -#: doc/contributing.texi:344 -msgid "" -"Please write commit logs in the ChangeLog format (@pxref{Change Logs,,, " -"standards, GNU Coding Standards}); you can check the commit history for " -"examples." -msgstr "" -"Veuillez écrire les messages de commit dans le format ChangeLog " -"(@pxref{Change Logs,,, standards, GNU Coding Standards}) ; vous pouvez " -"regarder l'historique des commits pour trouver des exemples." +#: doc/contributing.texi:338 +msgid "Please write commit logs in the ChangeLog format (@pxref{Change Logs,,, standards, GNU Coding Standards}); you can check the commit history for examples." +msgstr "Veuillez écrire les messages de commit dans le format ChangeLog (@pxref{Change Logs,,, standards, GNU Coding Standards}) ; vous pouvez regarder l'historique des commits pour trouver des exemples." #. type: Plain text -#: doc/contributing.texi:347 -msgid "" -"Before submitting a patch that adds or modifies a package definition, please " -"run through this check list:" -msgstr "" -"Avant de soumettre un correctif qui ajoute ou modifie la définition d'un " -"paquet, veuillez vérifier cette check-list :" +#: doc/contributing.texi:341 +msgid "Before submitting a patch that adds or modifies a package definition, please run through this check list:" +msgstr "Avant de soumettre un correctif qui ajoute ou modifie la définition d'un paquet, veuillez vérifier cette check-list :" #. type: enumerate -#: doc/contributing.texi:354 -msgid "" -"If the authors of the packaged software provide a cryptographic signature " -"for the release tarball, make an effort to verify the authenticity of the " -"archive. For a detached GPG signature file this would be done with the " -"@code{gpg --verify} command." -msgstr "" -"Si les auteurs du paquet logiciel fournissent une signature cryptographique " -"pour l'archive, faîtes un effort pour vérifier l'authenticité de l'archive. " -"Pour un fichier de signature GPG détaché, cela se fait avec la commande " -"@code{gpg --verify}." +#: doc/contributing.texi:348 +msgid "If the authors of the packaged software provide a cryptographic signature for the release tarball, make an effort to verify the authenticity of the archive. For a detached GPG signature file this would be done with the @code{gpg --verify} command." +msgstr "Si les auteurs du paquet logiciel fournissent une signature cryptographique pour l'archive, faîtes un effort pour vérifier l'authenticité de l'archive. Pour un fichier de signature GPG détaché, cela se fait avec la commande @code{gpg --verify}." #. type: enumerate -#: doc/contributing.texi:358 -msgid "" -"Take some time to provide an adequate synopsis and description for the " -"package. @xref{Synopses and Descriptions}, for some guidelines." -msgstr "" -"Prenez un peu de temps pour fournir un synopsis et une description adéquats " -"pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes " -"directrices." +#: doc/contributing.texi:352 +msgid "Take some time to provide an adequate synopsis and description for the package. @xref{Synopses and Descriptions}, for some guidelines." +msgstr "Prenez un peu de temps pour fournir un synopsis et une description adéquats pour le paquet. Voir @xref{Synopsis et descriptions} pour quelques lignes directrices." #. type: enumerate -#: doc/contributing.texi:363 -msgid "" -"Run @code{guix lint @var{package}}, where @var{package} is the name of the " -"new or modified package, and fix any errors it reports (@pxref{Invoking guix " -"lint})." -msgstr "" -"Lancez @code{guix lint @var{paquet}}, où @var{paquet} est le nom du nouveau " -"paquet ou du paquet modifié, et corrigez les erreurs qu'il rapporte " -"(@pxref{Invoquer guix lint})." +#: doc/contributing.texi:357 +msgid "Run @code{guix lint @var{package}}, where @var{package} is the name of the new or modified package, and fix any errors it reports (@pxref{Invoking guix lint})." +msgstr "Lancez @code{guix lint @var{paquet}}, où @var{paquet} est le nom du nouveau paquet ou du paquet modifié, et corrigez les erreurs qu'il rapporte (@pxref{Invoquer guix lint})." #. type: enumerate -#: doc/contributing.texi:367 -msgid "" -"Make sure the package builds on your platform, using @code{guix build " -"@var{package}}." -msgstr "" -"Assurez-vous que le paquet se construise sur votre plate-forme avec " -"@code{guix build @var{paquet}}." +#: doc/contributing.texi:361 +msgid "Make sure the package builds on your platform, using @code{guix build @var{package}}." +msgstr "Assurez-vous que le paquet se construise sur votre plate-forme avec @code{guix build @var{paquet}}." #. type: cindex -#: doc/contributing.texi:369 +#: doc/contributing.texi:363 #, no-wrap msgid "bundling" msgstr "construction groupée" #. type: enumerate -#: doc/contributing.texi:372 -msgid "" -"Make sure the package does not use bundled copies of software already " -"available as separate packages." -msgstr "" -"Assurez-vous que le paquet n'utilise pas de copie groupée d'un logiciel déjà " -"disponible dans un paquet séparé." +#: doc/contributing.texi:366 +msgid "Make sure the package does not use bundled copies of software already available as separate packages." +msgstr "Assurez-vous que le paquet n'utilise pas de copie groupée d'un logiciel déjà disponible dans un paquet séparé." #. type: enumerate -#: doc/contributing.texi:381 -msgid "" -"Sometimes, packages include copies of the source code of their dependencies " -"as a convenience for users. However, as a distribution, we want to make " -"sure that such packages end up using the copy we already have in the " -"distribution, if there is one. This improves resource usage (the dependency " -"is built and stored only once), and allows the distribution to make " -"transverse changes such as applying security updates for a given software " -"package in a single place and have them affect the whole system---something " -"that bundled copies prevent." -msgstr "" -"Parfois, les paquets incluent des copie du code source de leurs dépendances " -"pour le confort de leurs utilisateurs. Cependant, en tant que distribution, " -"nous voulons nous assurer que ces paquets utilisent bien les copient que " -"nous avons déjà dans la distribution si elles existent. Cela améliore " -"l'utilisation des ressources (la dépendance n'est construite et stockée " -"qu'une seule fois) et permet à la distribution de faire des changements " -"transversaux comme appliquer des correctifs de sécurité pour un paquet donné " -"depuis un unique emplacement et qu'ils affectent tout le système, ce " -"qu'empêchent les copies groupées." +#: doc/contributing.texi:375 +msgid "Sometimes, packages include copies of the source code of their dependencies as a convenience for users. However, as a distribution, we want to make sure that such packages end up using the copy we already have in the distribution, if there is one. This improves resource usage (the dependency is built and stored only once), and allows the distribution to make transverse changes such as applying security updates for a given software package in a single place and have them affect the whole system---something that bundled copies prevent." +msgstr "Parfois, les paquets incluent des copie du code source de leurs dépendances pour le confort de leurs utilisateurs. Cependant, en tant que distribution, nous voulons nous assurer que ces paquets utilisent bien les copient que nous avons déjà dans la distribution si elles existent. Cela améliore l'utilisation des ressources (la dépendance n'est construite et stockée qu'une seule fois) et permet à la distribution de faire des changements transversaux comme appliquer des correctifs de sécurité pour un paquet donné depuis un unique emplacement et qu'ils affectent tout le système, ce qu'empêchent les copies groupées." #. type: enumerate -#: doc/contributing.texi:388 -msgid "" -"Take a look at the profile reported by @command{guix size} (@pxref{Invoking " -"guix size}). This will allow you to notice references to other packages " -"unwillingly retained. It may also help determine whether to split the " -"package (@pxref{Packages with Multiple Outputs}), and which optional " -"dependencies should be used." -msgstr "" -"Regardez le profile rapporté par @command{guix size} (@pxref{Invoking guix " -"size}). Cela vous permettra de remarquer des références à d'autres paquets " -"qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le " -"paquet (@pxref{Des paquets avec plusieurs résultats}) et quelle dépendance " -"facultative utiliser." +#: doc/contributing.texi:382 +msgid "Take a look at the profile reported by @command{guix size} (@pxref{Invoking guix size}). This will allow you to notice references to other packages unwillingly retained. It may also help determine whether to split the package (@pxref{Packages with Multiple Outputs}), and which optional dependencies should be used." +msgstr "Regardez le profile rapporté par @command{guix size} (@pxref{Invoking guix size}). Cela vous permettra de remarquer des références à d'autres paquets qui ont été retenus. Il peut aussi aider à déterminer s'il faut découper le paquet (@pxref{Des paquets avec plusieurs résultats}) et quelle dépendance facultative utiliser." #. type: enumerate -#: doc/contributing.texi:393 -msgid "" -"For important changes, check that dependent package (if applicable) are not " -"affected by the change; @code{guix refresh --list-dependent @var{package}} " -"will help you do that (@pxref{Invoking guix refresh})." -msgstr "" -"Pour les changements important, vérifiez que les paquets qui en dépendent " -"(s'ils existent) ne sont pas affectés par le changement ; @code{guix refresh " -"--list-dependant @var{paquet}} vous aidera (@pxref{Invoquer guix refresh})." +#: doc/contributing.texi:387 +msgid "For important changes, check that dependent package (if applicable) are not affected by the change; @code{guix refresh --list-dependent @var{package}} will help you do that (@pxref{Invoking guix refresh})." +msgstr "Pour les changements important, vérifiez que les paquets qui en dépendent (s'ils existent) ne sont pas affectés par le changement ; @code{guix refresh --list-dependant @var{paquet}} vous aidera (@pxref{Invoquer guix refresh})." #. type: cindex -#: doc/contributing.texi:395 +#: doc/contributing.texi:389 #, no-wrap msgid "branching strategy" msgstr "stratégie de branche" #. type: cindex -#: doc/contributing.texi:396 +#: doc/contributing.texi:390 #, no-wrap msgid "rebuild scheduling strategy" msgstr "stratégie de planification des reconstructions" #. type: enumerate -#: doc/contributing.texi:399 -msgid "" -"Depending on the number of dependent packages and thus the amount of " -"rebuilding induced, commits go to different branches, along these lines:" -msgstr "" -"Suivant le nombre de paquets dépendants et donc le nombre de reconstruction " -"induites, les commits vont vers des branches différentes, suivant ces " -"principes :" +#: doc/contributing.texi:393 +msgid "Depending on the number of dependent packages and thus the amount of rebuilding induced, commits go to different branches, along these lines:" +msgstr "Suivant le nombre de paquets dépendants et donc le nombre de reconstruction induites, les commits vont vers des branches différentes, suivant ces principes :" #. type: item -#: doc/contributing.texi:401 +#: doc/contributing.texi:395 #, no-wrap msgid "300 dependent packages or less" msgstr "300 paquets dépendants ou moins" #. type: table -#: doc/contributing.texi:403 +#: doc/contributing.texi:397 msgid "@code{master} branch (non-disruptive changes)." msgstr "branche @code{master} (changements non-disruptifs)." #. type: item -#: doc/contributing.texi:404 +#: doc/contributing.texi:398 #, no-wrap msgid "between 300 and 1,200 dependent packages" msgstr "entre 300 et 1 200 paquets dépendants" #. type: table -#: doc/contributing.texi:409 -msgid "" -"@code{staging} branch (non-disruptive changes). This branch is intended to " -"be merged in @code{master} every 3 weeks or so. Topical changes (e.g., an " -"update of the GNOME stack) can instead go to a specific branch (say, " -"@code{gnome-updates})." -msgstr "" -"branche @code{staging} (changemets non-disruptifs). Cette branche devrait " -"être fusionnées dans @code{master} tous les 3 semaines. Les changements par " -"thèmes (par exemple une mise à jour de la pile GNOME) peuvent aller dans une " -"branche spécifique (disons, @code{gnome-updates})." +#: doc/contributing.texi:403 +msgid "@code{staging} branch (non-disruptive changes). This branch is intended to be merged in @code{master} every 3 weeks or so. Topical changes (e.g., an update of the GNOME stack) can instead go to a specific branch (say, @code{gnome-updates})." +msgstr "branche @code{staging} (changemets non-disruptifs). Cette branche devrait être fusionnées dans @code{master} tous les 3 semaines. Les changements par thèmes (par exemple une mise à jour de la pile GNOME) peuvent aller dans une branche spécifique (disons, @code{gnome-updates})." #. type: item -#: doc/contributing.texi:410 +#: doc/contributing.texi:404 #, no-wrap msgid "more than 1,200 dependent packages" msgstr "plus de 1 200 paquets dépendants" #. type: table -#: doc/contributing.texi:414 -msgid "" -"@code{core-updates} branch (may include major and potentially disruptive " -"changes). This branch is intended to be merged in @code{master} every 2.5 " -"months or so." -msgstr "" -"branche @code{core-updates} (peut inclure des changements majeurs et " -"potentiellement disruptifs). Cette branche devrait être fusionnée dans " -"@code{master} tous les 2,5 mois environ." +#: doc/contributing.texi:408 +msgid "@code{core-updates} branch (may include major and potentially disruptive changes). This branch is intended to be merged in @code{master} every 2.5 months or so." +msgstr "branche @code{core-updates} (peut inclure des changements majeurs et potentiellement disruptifs). Cette branche devrait être fusionnée dans @code{master} tous les 2,5 mois environ." #. type: enumerate -#: doc/contributing.texi:421 -msgid "" -"All these branches are tracked by our build farm and merged into " -"@code{master} once everything has been successfully built. This allows us " -"to fix issues before they hit users, and to reduce the window during which " -"pre-built binaries are not available." -msgstr "" -"Toutes ces branches sont gérées par notre ferme de construction et " -"fusionnées dans @code{master} une fois que tout a été construit " -"correctement. Cela nous permet de corriger des problèmes avant qu'ils " -"n'atteignent les utilisateurs et réduit la fenêtre pendant laquelle les " -"binaires pré-construits ne sont pas disponibles." +#: doc/contributing.texi:415 +msgid "All these branches are @uref{https://hydra.gnu.org/project/gnu, tracked by our build farm} and merged into @code{master} once everything has been successfully built. This allows us to fix issues before they hit users, and to reduce the window during which pre-built binaries are not available." +msgstr "Toutes ces branches sont @uref{https://hydra.gnu.org/project/gnu, gérées par notre ferme de construction} et fusionnées dans @code{master} une fois que tout a été construit correctement. Cela nous permet de corriger des problèmes avant qu'ils n'atteignent les utilisateurs et réduit la fenêtre pendant laquelle les binaires pré-construits ne sont pas disponibles." + +#. type: enumerate +#: doc/contributing.texi:422 +msgid "Generally, branches other than @code{master} are considered @emph{frozen} if there has been a recent evaluation, or there is a corresponding @code{-next} branch. Please ask on the mailing list or IRC if unsure where to place a patch." +msgstr "Généralement les autres branches que @code{master} sont considérées comme @emph{gelées} s'il y a eu une évaluation récente ou qu'il y a une branche @code{-next} correspondante. Demandez sur la liste de diffusion ou sur IRC si vous n'êtes pas sûr de savoir où pousser votre correctif." #. type: cindex -#: doc/contributing.texi:423 +#: doc/contributing.texi:424 #, no-wrap msgid "determinism, of build processes" msgstr "déterminisme, du processus de construction" #. type: cindex -#: doc/contributing.texi:424 +#: doc/contributing.texi:425 #, no-wrap msgid "reproducible builds, checking" msgstr "construction reproductibles, vérification" #. type: enumerate -#: doc/contributing.texi:428 -msgid "" -"Check whether the package's build process is deterministic. This typically " -"means checking whether an independent build of the package yields the exact " -"same result that you obtained, bit for bit." -msgstr "" -"Vérifiez si le processus de construction du paquet est déterministe. Cela " -"signifie typiquement vérifier qu'une construction indépendante du paquet " -"renvoie exactement le même résultat que vous avez obtenu, bit à bit." +#: doc/contributing.texi:429 +msgid "Check whether the package's build process is deterministic. This typically means checking whether an independent build of the package yields the exact same result that you obtained, bit for bit." +msgstr "Vérifiez si le processus de construction du paquet est déterministe. Cela signifie typiquement vérifier qu'une construction indépendante du paquet renvoie exactement le même résultat que vous avez obtenu, bit à bit." #. type: enumerate -#: doc/contributing.texi:431 -msgid "" -"A simple way to do that is by building the same package several times in a " -"row on your machine (@pxref{Invoking guix build}):" -msgstr "" -"Une manière simple de le faire est de reconstruire le paquet plusieurs fois " -"à la suite sur votre machine (@pxref{Invoquer guix build}) :" +#: doc/contributing.texi:432 +msgid "A simple way to do that is by building the same package several times in a row on your machine (@pxref{Invoking guix build}):" +msgstr "Une manière simple de le faire est de reconstruire le paquet plusieurs fois à la suite sur votre machine (@pxref{Invoquer guix build}) :" #. type: example -#: doc/contributing.texi:434 +#: doc/contributing.texi:435 #, no-wrap msgid "guix build --rounds=2 my-package\n" msgstr "guix build --rounds=2 mon-paquet\n" #. type: enumerate -#: doc/contributing.texi:438 -msgid "" -"This is enough to catch a class of common non-determinism issues, such as " -"timestamps or randomly-generated output in the build result." -msgstr "" -"Cela est suffisant pour trouver une classe de non-déterminisme commune, " -"comme l'horodatage ou des sorties générées aléatoirement dans le résultat de " -"la construction." +#: doc/contributing.texi:439 +msgid "This is enough to catch a class of common non-determinism issues, such as timestamps or randomly-generated output in the build result." +msgstr "Cela est suffisant pour trouver une classe de non-déterminisme commune, comme l'horodatage ou des sorties générées aléatoirement dans le résultat de la construction." #. type: enumerate -#: doc/contributing.texi:448 -msgid "" -"Another option is to use @command{guix challenge} (@pxref{Invoking guix " -"challenge}). You may run it once the package has been committed and built " -"by @code{hydra.gnu.org} to check whether it obtains the same result as you " -"did. Better yet: Find another machine that can build it and run " -"@command{guix publish}. Since the remote build machine is likely different " -"from yours, this can catch non-determinism issues related to the hardware---" -"e.g., use of different instruction set extensions---or to the operating " -"system kernel---e.g., reliance on @code{uname} or @file{/proc} files." -msgstr "" -"Une autre option consiste à utiliser @command{guix challenge} " -"(@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois " -"que les paquets ont été commités et construits par @code{hydra.gnu.org} pour " -"vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une " -"autre machine qui peut le construire et lancez @command{guix publish}. Puis " -"la machine distante est sûrement différente de la vôtre, cela peut trouver " -"des problèmes de non-déterminisme liés au matériel — par exemple utiliser " -"une extension du jeu d'instruction — ou du noyau du système d'exploitation — " -"par exemple se reposer sur @code{uname} ou les fichiers de @file{/proc}." +#: doc/contributing.texi:449 +msgid "Another option is to use @command{guix challenge} (@pxref{Invoking guix challenge}). You may run it once the package has been committed and built by @code{hydra.gnu.org} to check whether it obtains the same result as you did. Better yet: Find another machine that can build it and run @command{guix publish}. Since the remote build machine is likely different from yours, this can catch non-determinism issues related to the hardware---e.g., use of different instruction set extensions---or to the operating system kernel---e.g., reliance on @code{uname} or @file{/proc} files." +msgstr "Une autre option consiste à utiliser @command{guix challenge} (@pxref{Invoquer guix challenge}). Vous pouvez lancer la commande une fois que les paquets ont été commités et construits par @code{hydra.gnu.org} pour vérifier s'il obtient le même résultat que vous. Mieux encore : trouvez une autre machine qui peut le construire et lancez @command{guix publish}. Puis la machine distante est sûrement différente de la vôtre, cela peut trouver des problèmes de non-déterminisme liés au matériel — par exemple utiliser une extension du jeu d'instruction — ou du noyau du système d'exploitation — par exemple se reposer sur @code{uname} ou les fichiers de @file{/proc}." #. type: enumerate -#: doc/contributing.texi:454 -msgid "" -"When writing documentation, please use gender-neutral wording when referring " -"to people, such as @uref{https://en.wikipedia.org/wiki/Singular_they, " -"singular ``they''@comma{} ``their''@comma{} ``them''}, and so forth." -msgstr "" -"Lorsque vous écrivez de la documentation, utilisez une formulation au genre " -"neutre lorsque vous vous référez à des personnes, comme le @uref{https://fr." -"wikipedia.org/wiki/They_singulier, ``they''@comma{} ``their''@comma{} " -"``them'' singulier} (en anglais)." +#: doc/contributing.texi:455 +msgid "When writing documentation, please use gender-neutral wording when referring to people, such as @uref{https://en.wikipedia.org/wiki/Singular_they, singular ``they''@comma{} ``their''@comma{} ``them''}, and so forth." +msgstr "Lorsque vous écrivez de la documentation, utilisez une formulation au genre neutre lorsque vous vous référez à des personnes, comme le @uref{https://fr.wikipedia.org/wiki/They_singulier, ``they''@comma{} ``their''@comma{} ``them'' singulier} (en anglais)." #. type: enumerate -#: doc/contributing.texi:458 -msgid "" -"Verify that your patch contains only one set of related changes. Bundling " -"unrelated changes together makes reviewing harder and slower." -msgstr "" -"Vérifiez que votre correctif contienne seulement un ensemble de changements " -"liés. Grouper des changements non liés ensemble rend la revue plus difficile " -"et plus lente." +#: doc/contributing.texi:459 +msgid "Verify that your patch contains only one set of related changes. Bundling unrelated changes together makes reviewing harder and slower." +msgstr "Vérifiez que votre correctif contienne seulement un ensemble de changements liés. Grouper des changements non liés ensemble rend la revue plus difficile et plus lente." #. type: enumerate -#: doc/contributing.texi:461 -msgid "" -"Examples of unrelated changes include the addition of several packages, or a " -"package update along with fixes to that package." -msgstr "" -"Ajouter plusieurs paquet ou une mise à jour d'un paquet avec des corrections " -"dans ce paquet sont des exemples de changements sans rapport." +#: doc/contributing.texi:462 +msgid "Examples of unrelated changes include the addition of several packages, or a package update along with fixes to that package." +msgstr "Ajouter plusieurs paquet ou une mise à jour d'un paquet avec des corrections dans ce paquet sont des exemples de changements sans rapport." #. type: enumerate -#: doc/contributing.texi:466 -msgid "" -"Please follow our code formatting rules, possibly running the @command{etc/" -"indent-code.el} script to do that automatically for you (@pxref{Formatting " -"Code})." -msgstr "" -"Suivez nos règles de formatage de code, éventuellement en lançant le script " -"@command{et/indent-code.el} pour le faire automatiquement (@pxref{Formatage " -"du code})." +#: doc/contributing.texi:467 +msgid "Please follow our code formatting rules, possibly running the @command{etc/indent-code.el} script to do that automatically for you (@pxref{Formatting Code})." +msgstr "Suivez nos règles de formatage de code, éventuellement en lançant le script @command{et/indent-code.el} pour le faire automatiquement (@pxref{Formatage du code})." #. type: Plain text -#: doc/contributing.texi:476 -msgid "" -"When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as a " -"subject. You may use your email client or the @command{git send-email} " -"command (@pxref{Sending a Patch Series}). We prefer to get patches in plain " -"text messages, either inline or as MIME attachments. You are advised to pay " -"attention if your email client changes anything like line breaks or " -"indentation which could potentially break the patches." -msgstr "" -"Lorsque vous envoyez un correctif à la liste de diffusion, utilisez " -"@samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de " -"courriel ou la commande @command{git send-email} (@pxref{Envoyer une série " -"de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit " -"en ligne, soit en pièce-jointe MIME. Nous vous conseillons de faire " -"attention si votre client de courriel change par exemple les retours à la " -"ligne ou l'indentation, ce qui peut casser les correctifs." +#: doc/contributing.texi:477 +msgid "When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as a subject. You may use your email client or the @command{git send-email} command (@pxref{Sending a Patch Series}). We prefer to get patches in plain text messages, either inline or as MIME attachments. You are advised to pay attention if your email client changes anything like line breaks or indentation which could potentially break the patches." +msgstr "Lorsque vous envoyez un correctif à la liste de diffusion, utilisez @samp{[PATCH] @dots{}} comme sujet. Vous pouvez utiliser votre client de courriel ou la commande @command{git send-email} (@pxref{Envoyer une série de correctifs}). Nous préférons recevoir des correctifs en texte brut, soit en ligne, soit en pièce-jointe MIME@. Nous vous conseillons de faire attention si votre client de courriel change par exemple les retours à la ligne ou l'indentation, ce qui peut casser les correctifs." #. type: Plain text -#: doc/contributing.texi:479 -msgid "" -"When a bug is resolved, please close the thread by sending an email to " -"@email{@var{NNN}-done@@debbugs.gnu.org}." -msgstr "" -"Lorsqu'un bogue est résolu, veuillez fermer le fil en envoyant un courriel à " -"@email{@var{NNN}-done@@debbugs.gnu.org}." +#: doc/contributing.texi:480 +msgid "When a bug is resolved, please close the thread by sending an email to @email{@var{NNN}-done@@debbugs.gnu.org}." +msgstr "Lorsqu'un bogue est résolu, veuillez fermer le fil en envoyant un courriel à @email{@var{NNN}-done@@debbugs.gnu.org}." #. type: anchor{#1} -#: doc/contributing.texi:480 doc/contributing.texi:482 +#: doc/contributing.texi:481 doc/contributing.texi:483 #, no-wrap msgid "Sending a Patch Series" msgstr "Envoyer une série de correctifs" #. type: cindex -#: doc/contributing.texi:482 +#: doc/contributing.texi:483 #, no-wrap msgid "patch series" msgstr "série de correctifs" #. type: code{#1} -#: doc/contributing.texi:483 +#: doc/contributing.texi:484 #, no-wrap msgid "git send-email" msgstr "git send-email" #. type: code{#1} -#: doc/contributing.texi:484 +#: doc/contributing.texi:485 #, no-wrap msgid "git-send-email" msgstr "git-send-email" #. type: Plain text -#: doc/contributing.texi:492 -msgid "" -"When sending a patch series (e.g., using @code{git send-email}), please " -"first send one message to @email{guix-patches@@gnu.org}, and then send " -"subsequent patches to @email{@var{NNN}@@debbugs.gnu.org} to make sure they " -"are kept together. See @uref{https://debbugs.gnu.org/Advanced.html, the " -"Debbugs documentation} for more information." -msgstr "" -"Lorsque vous envoyez une série de correctifs (p.e. avec @code{git send-" -"email}), envoyez d'abord une premier message à @email{guix-patches@@gnu.org} " -"puis envoyez le reste des correctifs à @email{@var{NNN}@@debbugs.gnu.org} " -"pour vous assurer qu'ils seront groupés ensemble. Voyez @uref{https://" -"debbugs.gnu.org/Advanced.html, la documentation de Debbugs} pour plus " -"d'informations." +#: doc/contributing.texi:493 +msgid "When sending a patch series (e.g., using @code{git send-email}), please first send one message to @email{guix-patches@@gnu.org}, and then send subsequent patches to @email{@var{NNN}@@debbugs.gnu.org} to make sure they are kept together. See @uref{https://debbugs.gnu.org/Advanced.html, the Debbugs documentation} for more information." +msgstr "Lorsque vous envoyez une série de correctifs (p.@@:: ex.@: avec @code{git send-email}), envoyez d'abord une premier message à @email{guix-patches@@gnu.org} puis envoyez le reste des correctifs à @email{@var{NNN}@@debbugs.gnu.org} pour vous assurer qu'ils seront groupés ensemble. Voyez @uref{https://debbugs.gnu.org/Advanced.html, la documentation de Debbugs} pour plus d'informations." #. type: Plain text #: doc/guix.texi:7 msgid "@documentencoding UTF-8" msgstr "" "@documentencoding UTF-8\n" -"@documentlanguage fr" +"@documentlanguage fr\n" +"@frenchspacing on" #. type: title -#: doc/guix.texi:7 doc/guix.texi:77 +#: doc/guix.texi:7 doc/guix.texi:78 #, no-wrap msgid "GNU Guix Reference Manual" msgstr "Manuel de référence de GNU Guix" @@ -1310,2005 +825,1828 @@ msgid "version.texi" msgstr "version-fr.texi" #. type: copying -#: doc/guix.texi:51 -msgid "" -"Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic " -"Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright " -"@copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, " -"2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* " -"Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} " -"2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017 " -"Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018 Ricardo " -"Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} " -"2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018 " -"Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright " -"@copyright{} 2016, 2017 Nils Gillmann@* Copyright @copyright{} 2016, 2017 " -"Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright " -"@copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2017, 2018 Clément " -"Lassieur@* Copyright @copyright{} 2017 Mathieu Othacehe@* Copyright " -"@copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017 Carlo " -"Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright " -"@copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher " -"Allan Webber@* Copyright @copyright{} 2017 Marius Bakke@* Copyright " -"@copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim " -"Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* " -"Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 " -"Andy Wingo@* Copyright @copyright{} 2017, 2018 Arun Isaac@* Copyright " -"@copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* " -"Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike " -"Gerwitz" -msgstr "" -"Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic " -"Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright " -"@copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, " -"2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* " -"Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} " -"2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017 " -"Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018 Ricardo " -"Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} " -"2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018 " -"Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright " -"@copyright{} 2016, 2017 Nils Gillmann@* Copyright @copyright{} 2016, 2017 " -"Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright " -"@copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2017, 2018 Clément " -"Lassieur@* Copyright @copyright{} 2017 Mathieu Othacehe@* Copyright " -"@copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017 Carlo " -"Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright " -"@copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher " -"Allan Webber@* Copyright @copyright{} 2017 Marius Bakke@* Copyright " -"@copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim " -"Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* " -"Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 " -"Andy Wingo@* Copyright @copyright{} 2017, 2018 Arun Isaac@* Copyright " -"@copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* " -"Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike " -"Gerwitz" +#: doc/guix.texi:52 +msgid "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 Nils Gillmann@* Copyright @copyright{} 2016, 2017 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2017, 2018 Clément Lassieur@* Copyright @copyright{} 2017 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018 Marius Bakke@* Copyright @copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby" +msgstr "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 Nils Gillmann@* Copyright @copyright{} 2016, 2017 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2017, 2018 Clément Lassieur@* Copyright @copyright{} 2017 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018 Marius Bakke@* Copyright @copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby" #. type: copying -#: doc/guix.texi:58 -msgid "" -"Permission is granted to copy, distribute and/or modify this document under " -"the terms of the GNU Free Documentation License, Version 1.3 or any later " -"version published by the Free Software Foundation; with no Invariant " -"Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the " -"license is included in the section entitled ``GNU Free Documentation " -"License''." -msgstr "" -"Vous avez la permission de copier, distribuer ou modifier ce document sous " -"les termes de la Licence GNU Free Documentation, version 1.3 ou toute " -"version ultérieure publiée par la Free Software Foundation ; sans section " -"invariante, texte de couverture et sans texte de quatrième de couverture. " -"Une copie de la licence est incluse dans la section intitulée « GNU Free " -"Documentation License »." +#: doc/guix.texi:59 +msgid "Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''." +msgstr "Vous avez la permission de copier, distribuer ou modifier ce document sous les termes de la Licence GNU Free Documentation, version 1.3 ou toute version ultérieure publiée par la Free Software Foundation ; sans section invariante, texte de couverture et sans texte de quatrième de couverture. Une copie de la licence est incluse dans la section intitulée « GNU Free Documentation License »." #. type: dircategory -#: doc/guix.texi:60 +#: doc/guix.texi:61 #, no-wrap msgid "System administration" msgstr "Administration système" #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "Guix: (guix)" -msgstr "Guix: (guix)" +msgstr "Guix: (guix.fr)" #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "Manage installed software and system configuration." msgstr "Gérer les logiciels installés et la configuration du système." #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "guix package: (guix)Invoking guix package" -msgstr "guix package : (guix)Invoquer guix package" +msgstr "guix package : (guix.fr)Invoquer guix package" #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "Installing, removing, and upgrading packages." msgstr "Intaller, supprimer et mettre à jour des paquets." #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "guix gc: (guix)Invoking guix gc" -msgstr "guix gc : (guix)Invoquer guix gc" +msgstr "guix gc : (guix.fr)Invoquer guix gc" #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "Reclaiming unused disk space." msgstr "Récupérer de l'espace disque inutilisé." #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "guix pull: (guix)Invoking guix pull" -msgstr "guix pull : (guix)Invoquer guix pull" +msgstr "guix pull : (guix.fr)Invoquer guix pull" #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "Update the list of available packages." msgstr "Mettre à jour la liste des paquets disponibles." #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "guix system: (guix)Invoking guix system" -msgstr "guix system : (guix)Invoquer guix system" +msgstr "guix system : (guix.fr)Invoquer guix system" #. type: menuentry -#: doc/guix.texi:67 +#: doc/guix.texi:68 msgid "Manage the operating system configuration." msgstr "Gérer la configuration du système d'exploitation." #. type: dircategory -#: doc/guix.texi:69 +#: doc/guix.texi:70 #, no-wrap msgid "Software development" msgstr "Développement logiciel" #. type: menuentry -#: doc/guix.texi:74 +#: doc/guix.texi:75 msgid "guix environment: (guix)Invoking guix environment" -msgstr "guix environment : (guix)Invoquer guix environment" +msgstr "guix environment : (guix.fr)Invoquer guix environment" #. type: menuentry -#: doc/guix.texi:74 +#: doc/guix.texi:75 msgid "Building development environments with Guix." msgstr "Construire des environnements de construction avec Guix." #. type: menuentry -#: doc/guix.texi:74 +#: doc/guix.texi:75 msgid "guix build: (guix)Invoking guix build" -msgstr "guix build : (guix)Invoquer guix build" +msgstr "guix build : (guix.fr)Invoquer guix build" #. type: menuentry -#: doc/guix.texi:74 +#: doc/guix.texi:75 msgid "Building packages." msgstr "Construire des paquets." #. type: menuentry -#: doc/guix.texi:74 +#: doc/guix.texi:75 msgid "guix pack: (guix)Invoking guix pack" -msgstr "guix pack : (guix) Invoquer guix pack" +msgstr "guix pack : (guix.fr) Invoquer guix pack" #. type: menuentry -#: doc/guix.texi:74 +#: doc/guix.texi:75 msgid "Creating binary bundles." msgstr "Créer des lots binaires." #. type: subtitle -#: doc/guix.texi:78 +#: doc/guix.texi:79 #, no-wrap msgid "Using the GNU Guix Functional Package Manager" msgstr "Utiliser le gestionnaire de paquet fonctionnel GNU Guix" #. type: author -#: doc/guix.texi:79 +#: doc/guix.texi:80 #, no-wrap msgid "The GNU Guix Developers" msgstr "Les développeurs de GNU Guix" #. type: titlepage -#: doc/guix.texi:85 +#: doc/guix.texi:86 msgid "Edition @value{EDITION} @* @value{UPDATED} @*" msgstr "Édition @value{EDITION} @* @value{UPDATED} @*" #. type: node -#: doc/guix.texi:92 +#: doc/guix.texi:93 #, no-wrap msgid "Top" msgstr "Top" #. type: top -#: doc/guix.texi:93 +#: doc/guix.texi:94 #, no-wrap msgid "GNU Guix" msgstr "GNU Guix" #. type: Plain text -#: doc/guix.texi:97 -msgid "" -"This document describes GNU Guix version @value{VERSION}, a functional " -"package management tool written for the GNU system." -msgstr "" -"Cette documentation décrit GNU Guix version @value{VERSION}, un outils de " -"gestion de paquets fonctionnel écrit pour le système GNU." +#: doc/guix.texi:98 +msgid "This document describes GNU Guix version @value{VERSION}, a functional package management tool written for the GNU system." +msgstr "Cette documentation décrit GNU Guix version @value{VERSION}, un outil de gestion de paquets fonctionnel écrit pour le système GNU@." #. type: chapter -#: doc/guix.texi:106 doc/guix.texi:294 doc/guix.texi:295 +#: doc/guix.texi:107 doc/guix.texi:296 doc/guix.texi:297 #, no-wrap msgid "Introduction" msgstr "Introduction" #. type: menuentry -#: doc/guix.texi:106 +#: doc/guix.texi:107 msgid "What is Guix about?" msgstr "Qu'est-ce que Guix ?" #. type: chapter -#: doc/guix.texi:106 doc/guix.texi:116 doc/guix.texi:367 doc/guix.texi:368 +#: doc/guix.texi:107 doc/guix.texi:117 doc/guix.texi:369 doc/guix.texi:370 #, no-wrap msgid "Installation" msgstr "Installation" #. type: menuentry -#: doc/guix.texi:106 +#: doc/guix.texi:107 msgid "Installing Guix." msgstr "Installer Guix." #. type: chapter -#: doc/guix.texi:106 doc/guix.texi:131 doc/guix.texi:1652 doc/guix.texi:1653 +#: doc/guix.texi:107 doc/guix.texi:132 doc/guix.texi:1657 doc/guix.texi:1658 #, no-wrap msgid "Package Management" msgstr "Gestion de paquets" #. type: menuentry -#: doc/guix.texi:106 +#: doc/guix.texi:107 msgid "Package installation, upgrade, etc." msgstr "Installation des paquets, mises à jour, etc." #. type: chapter -#: doc/guix.texi:106 doc/guix.texi:151 doc/guix.texi:3106 doc/guix.texi:3107 +#: doc/guix.texi:107 doc/guix.texi:152 doc/guix.texi:3225 doc/guix.texi:3226 #, no-wrap msgid "Programming Interface" msgstr "Interface de programmation" #. type: menuentry -#: doc/guix.texi:106 +#: doc/guix.texi:107 msgid "Using Guix in Scheme." msgstr "Utiliser Guix en Scheme." #. type: chapter -#: doc/guix.texi:106 doc/guix.texi:165 doc/guix.texi:5362 doc/guix.texi:5363 +#: doc/guix.texi:107 doc/guix.texi:166 doc/guix.texi:5533 doc/guix.texi:5534 #, no-wrap msgid "Utilities" msgstr "Utilitaires" #. type: menuentry -#: doc/guix.texi:106 +#: doc/guix.texi:107 msgid "Package management commands." msgstr "Commandes de gestion de paquets." #. type: chapter -#: doc/guix.texi:106 doc/guix.texi:190 doc/guix.texi:7981 doc/guix.texi:7982 +#: doc/guix.texi:107 doc/guix.texi:191 doc/guix.texi:8191 doc/guix.texi:8192 #, no-wrap msgid "GNU Distribution" msgstr "Distribution GNU" #. type: menuentry -#: doc/guix.texi:106 +#: doc/guix.texi:107 msgid "Software for your friendly GNU system." msgstr "Des logiciels pour un système GNU convivial." #. type: menuentry -#: doc/guix.texi:106 +#: doc/guix.texi:107 msgid "Your help needed!" msgstr "Nous avons besoin de votre aide !" #. type: chapter -#: doc/guix.texi:111 doc/guix.texi:22338 doc/guix.texi:22339 +#: doc/guix.texi:112 doc/guix.texi:22822 doc/guix.texi:22823 #, no-wrap msgid "Acknowledgments" msgstr "Remerciements" #. type: menuentry -#: doc/guix.texi:111 +#: doc/guix.texi:112 msgid "Thanks!" msgstr "Merci !" #. type: appendix -#: doc/guix.texi:111 doc/guix.texi:22360 doc/guix.texi:22361 +#: doc/guix.texi:112 doc/guix.texi:22844 doc/guix.texi:22845 #, no-wrap msgid "GNU Free Documentation License" msgstr "La licence GNU Free Documentation" #. type: menuentry -#: doc/guix.texi:111 +#: doc/guix.texi:112 msgid "The license of this manual." msgstr "La licence de ce manuel." #. type: unnumbered -#: doc/guix.texi:111 doc/guix.texi:22366 doc/guix.texi:22367 +#: doc/guix.texi:112 doc/guix.texi:22850 doc/guix.texi:22851 #, no-wrap msgid "Concept Index" msgstr "Index des concepts" #. type: menuentry -#: doc/guix.texi:111 +#: doc/guix.texi:112 msgid "Concepts." msgstr "Les concepts." #. type: unnumbered -#: doc/guix.texi:111 doc/guix.texi:22370 doc/guix.texi:22371 +#: doc/guix.texi:112 doc/guix.texi:22854 doc/guix.texi:22855 #, no-wrap msgid "Programming Index" msgstr "Index de programmation" #. type: menuentry -#: doc/guix.texi:111 +#: doc/guix.texi:112 msgid "Data types, functions, and variables." msgstr "Types de données, fonctions et variables." #. type: menuentry -#: doc/guix.texi:114 +#: doc/guix.texi:115 msgid "--- The Detailed Node Listing ---" msgstr "--- Liste détaillée des nœuds ---" #. type: section -#: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:400 doc/guix.texi:401 +#: doc/guix.texi:124 doc/guix.texi:400 doc/guix.texi:402 doc/guix.texi:403 #, no-wrap msgid "Binary Installation" msgstr "Installation binaire" #. type: menuentry -#: doc/guix.texi:123 doc/guix.texi:398 +#: doc/guix.texi:124 doc/guix.texi:400 msgid "Getting Guix running in no time!" msgstr "Commencer à utiliser Guix en un rien de temps !" #. type: section -#: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:596 doc/guix.texi:597 +#: doc/guix.texi:124 doc/guix.texi:400 doc/guix.texi:598 doc/guix.texi:599 #, no-wrap msgid "Requirements" msgstr "Prérequis" #. type: menuentry -#: doc/guix.texi:123 doc/guix.texi:398 +#: doc/guix.texi:124 doc/guix.texi:400 msgid "Software needed to build and run Guix." msgstr "Logiciels requis pour construire et lancer Guix." #. type: section -#: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:678 doc/guix.texi:679 +#: doc/guix.texi:124 doc/guix.texi:400 doc/guix.texi:683 doc/guix.texi:684 #, no-wrap msgid "Running the Test Suite" msgstr "Lancer la suite de tests" #. type: menuentry -#: doc/guix.texi:123 doc/guix.texi:398 +#: doc/guix.texi:124 doc/guix.texi:400 msgid "Testing Guix." msgstr "Tester Guix." #. type: section -#: doc/guix.texi:123 doc/guix.texi:125 doc/guix.texi:398 doc/guix.texi:743 -#: doc/guix.texi:744 +#: doc/guix.texi:124 doc/guix.texi:126 doc/guix.texi:400 doc/guix.texi:748 +#: doc/guix.texi:749 #, no-wrap msgid "Setting Up the Daemon" msgstr "Paramétrer le démon" #. type: menuentry -#: doc/guix.texi:123 doc/guix.texi:398 +#: doc/guix.texi:124 doc/guix.texi:400 msgid "Preparing the build daemon's environment." msgstr "Préparer l'environnement du démon de construction." #. type: node -#: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:1176 +#: doc/guix.texi:124 doc/guix.texi:400 doc/guix.texi:1181 #, no-wrap msgid "Invoking guix-daemon" msgstr "Invoquer guix-daemon" #. type: menuentry -#: doc/guix.texi:123 doc/guix.texi:398 +#: doc/guix.texi:124 doc/guix.texi:400 msgid "Running the build daemon." msgstr "Lancer le démon de construction." #. type: section -#: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:1441 doc/guix.texi:1442 +#: doc/guix.texi:124 doc/guix.texi:400 doc/guix.texi:1446 doc/guix.texi:1447 #, no-wrap msgid "Application Setup" msgstr "Réglages applicatifs" #. type: menuentry -#: doc/guix.texi:123 doc/guix.texi:398 +#: doc/guix.texi:124 doc/guix.texi:400 msgid "Application-specific setup." msgstr "Réglages spécifiques pour les application." #. type: subsection -#: doc/guix.texi:129 doc/guix.texi:763 doc/guix.texi:765 doc/guix.texi:766 +#: doc/guix.texi:130 doc/guix.texi:768 doc/guix.texi:770 doc/guix.texi:771 #, no-wrap msgid "Build Environment Setup" msgstr "Réglages de l'environnement de construction" #. type: menuentry -#: doc/guix.texi:129 doc/guix.texi:763 +#: doc/guix.texi:130 doc/guix.texi:768 msgid "Preparing the isolated build environment." msgstr "Préparer l'environnement de construction isolé." #. type: node -#: doc/guix.texi:129 doc/guix.texi:763 doc/guix.texi:882 +#: doc/guix.texi:130 doc/guix.texi:768 doc/guix.texi:887 #, no-wrap msgid "Daemon Offload Setup" msgstr "Réglages du délestage du démon" #. type: menuentry -#: doc/guix.texi:129 doc/guix.texi:763 +#: doc/guix.texi:130 doc/guix.texi:768 msgid "Offloading builds to remote machines." msgstr "Envoyer des constructions à des machines distantes." #. type: subsection -#: doc/guix.texi:129 doc/guix.texi:763 doc/guix.texi:1090 doc/guix.texi:1091 +#: doc/guix.texi:130 doc/guix.texi:768 doc/guix.texi:1095 doc/guix.texi:1096 #, no-wrap msgid "SELinux Support" msgstr "Support de SELinux" #. type: menuentry -#: doc/guix.texi:129 doc/guix.texi:763 +#: doc/guix.texi:130 doc/guix.texi:768 msgid "Using an SELinux policy for the daemon." msgstr "Utiliser une politique SELinux pour le démon." #. type: section -#: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:1684 doc/guix.texi:1685 +#: doc/guix.texi:141 doc/guix.texi:1687 doc/guix.texi:1689 doc/guix.texi:1690 #, no-wrap msgid "Features" msgstr "Fonctionnalités" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "How Guix will make your life brighter." msgstr "Comment Guix va rendre votre vie plus heureuse." #. type: node -#: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:1761 +#: doc/guix.texi:141 doc/guix.texi:1687 doc/guix.texi:1766 #, no-wrap msgid "Invoking guix package" msgstr "Invoquer guix package" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "Package installation, removal, etc." -msgstr "Installation, suppression, etc. de paquets." +msgstr "Installation, suppression, etc.@: de paquets." #. type: section -#: doc/guix.texi:140 doc/guix.texi:142 doc/guix.texi:1682 doc/guix.texi:2245 -#: doc/guix.texi:2246 +#: doc/guix.texi:141 doc/guix.texi:143 doc/guix.texi:1687 doc/guix.texi:2250 +#: doc/guix.texi:2251 #, no-wrap msgid "Substitutes" msgstr "Substituts" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "Downloading pre-built binaries." msgstr "Télécharger des binaire déjà construits." #. type: section -#: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2478 doc/guix.texi:2479 +#: doc/guix.texi:141 doc/guix.texi:1687 doc/guix.texi:2483 doc/guix.texi:2484 #, no-wrap msgid "Packages with Multiple Outputs" msgstr "Des paquets avec plusieurs résultats" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "Single source package, multiple outputs." msgstr "Un seul paquet source, plusieurs résultats." #. type: node -#: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2532 +#: doc/guix.texi:141 doc/guix.texi:1687 doc/guix.texi:2537 #, no-wrap msgid "Invoking guix gc" msgstr "Invoquer guix gc" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "Running the garbage collector." msgstr "Lancer le ramasse-miettes." #. type: node -#: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2720 +#: doc/guix.texi:141 doc/guix.texi:1687 doc/guix.texi:2725 #, no-wrap msgid "Invoking guix pull" msgstr "Invoquer guix pull" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "Fetching the latest Guix and distribution." msgstr "Récupérer la dernière version de Guix et de la distribution." #. type: node -#: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2781 +#: doc/guix.texi:141 doc/guix.texi:1687 doc/guix.texi:2836 #, no-wrap msgid "Invoking guix pack" msgstr "Invoquer guix pack" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "Creating software bundles." msgstr "Créer des lots de logiciels." #. type: node -#: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2941 +#: doc/guix.texi:141 doc/guix.texi:1687 doc/guix.texi:3060 #, no-wrap msgid "Invoking guix archive" msgstr "Invoquer guix archive" #. type: menuentry -#: doc/guix.texi:140 doc/guix.texi:1682 +#: doc/guix.texi:141 doc/guix.texi:1687 msgid "Exporting and importing store files." msgstr "Exporter et importer des fichiers du dépôt." #. type: subsection -#: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2270 doc/guix.texi:2271 +#: doc/guix.texi:150 doc/guix.texi:2273 doc/guix.texi:2275 doc/guix.texi:2276 #, no-wrap msgid "Official Substitute Server" msgstr "Serveur de substituts officiel" #. type: menuentry -#: doc/guix.texi:149 doc/guix.texi:2268 +#: doc/guix.texi:150 doc/guix.texi:2273 msgid "One particular source of substitutes." msgstr "Une source particulière de substituts." #. type: subsection -#: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2300 doc/guix.texi:2301 +#: doc/guix.texi:150 doc/guix.texi:2273 doc/guix.texi:2305 doc/guix.texi:2306 #, no-wrap msgid "Substitute Server Authorization" msgstr "Autoriser un serveur de substituts" #. type: menuentry -#: doc/guix.texi:149 doc/guix.texi:2268 +#: doc/guix.texi:150 doc/guix.texi:2273 msgid "How to enable or disable substitutes." msgstr "Comment activer ou désactiver les substituts." #. type: subsection -#: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2373 doc/guix.texi:2374 +#: doc/guix.texi:150 doc/guix.texi:2273 doc/guix.texi:2378 doc/guix.texi:2379 #, no-wrap msgid "Substitute Authentication" msgstr "Authentification des substituts" #. type: menuentry -#: doc/guix.texi:149 doc/guix.texi:2268 +#: doc/guix.texi:150 doc/guix.texi:2273 msgid "How Guix verifies substitutes." msgstr "Coment Guix vérifie les substituts." #. type: subsection -#: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2408 doc/guix.texi:2409 +#: doc/guix.texi:150 doc/guix.texi:2273 doc/guix.texi:2413 doc/guix.texi:2414 #, no-wrap msgid "Proxy Settings" msgstr "Paramètres de serveur mandataire" #. type: menuentry -#: doc/guix.texi:149 doc/guix.texi:2268 +#: doc/guix.texi:150 doc/guix.texi:2273 msgid "How to get substitutes via proxy." msgstr "Comment récupérer des substituts à travers un serveur mandataire." #. type: subsection -#: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2420 doc/guix.texi:2421 +#: doc/guix.texi:150 doc/guix.texi:2273 doc/guix.texi:2425 doc/guix.texi:2426 #, no-wrap msgid "Substitution Failure" msgstr "Échec de substitution" #. type: menuentry -#: doc/guix.texi:149 doc/guix.texi:2268 +#: doc/guix.texi:150 doc/guix.texi:2273 msgid "What happens when substitution fails." msgstr "Qu'arrive-t-il quand la substitution échoue." #. type: subsection -#: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2448 doc/guix.texi:2449 +#: doc/guix.texi:150 doc/guix.texi:2273 doc/guix.texi:2453 doc/guix.texi:2454 #, no-wrap msgid "On Trusting Binaries" msgstr "De la confiance en des binaires" #. type: menuentry -#: doc/guix.texi:149 doc/guix.texi:2268 +#: doc/guix.texi:150 doc/guix.texi:2273 msgid "How can you trust that binary blob?" msgstr "Comment pouvez-vous avoir confiance en un paquet binaire ?" #. type: section -#: doc/guix.texi:158 doc/guix.texi:160 doc/guix.texi:3141 doc/guix.texi:3143 -#: doc/guix.texi:3144 +#: doc/guix.texi:159 doc/guix.texi:161 doc/guix.texi:3260 doc/guix.texi:3262 +#: doc/guix.texi:3263 #, no-wrap msgid "Defining Packages" msgstr "Définition des paquets" #. type: menuentry -#: doc/guix.texi:158 doc/guix.texi:3141 +#: doc/guix.texi:159 doc/guix.texi:3260 msgid "Defining new packages." msgstr "Définir de nouveaux paquets." #. type: section -#: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:3607 doc/guix.texi:3608 +#: doc/guix.texi:159 doc/guix.texi:3260 doc/guix.texi:3726 doc/guix.texi:3727 #, no-wrap msgid "Build Systems" msgstr "Systèmes de construction" #. type: menuentry -#: doc/guix.texi:158 doc/guix.texi:3141 +#: doc/guix.texi:159 doc/guix.texi:3260 msgid "Specifying how packages are built." msgstr "Spécifier comment construire les paquets." #. type: section -#: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4183 doc/guix.texi:4184 +#: doc/guix.texi:159 doc/guix.texi:3260 doc/guix.texi:4321 doc/guix.texi:4322 #, no-wrap msgid "The Store" msgstr "Le dépôt" #. type: menuentry -#: doc/guix.texi:158 doc/guix.texi:3141 +#: doc/guix.texi:159 doc/guix.texi:3260 msgid "Manipulating the package store." msgstr "Manipuler le dépôt de paquets." #. type: section -#: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4333 doc/guix.texi:4334 +#: doc/guix.texi:159 doc/guix.texi:3260 doc/guix.texi:4471 doc/guix.texi:4472 #, no-wrap msgid "Derivations" msgstr "Dérivations" #. type: menuentry -#: doc/guix.texi:158 doc/guix.texi:3141 +#: doc/guix.texi:159 doc/guix.texi:3260 msgid "Low-level interface to package derivations." msgstr "Interface de bas-niveau avec les dérivations de paquets." #. type: section -#: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4511 doc/guix.texi:4512 +#: doc/guix.texi:159 doc/guix.texi:3260 doc/guix.texi:4649 doc/guix.texi:4650 #, no-wrap msgid "The Store Monad" msgstr "La monad du dépôt" #. type: menuentry -#: doc/guix.texi:158 doc/guix.texi:3141 +#: doc/guix.texi:159 doc/guix.texi:3260 msgid "Purely functional interface to the store." msgstr "Interface purement fonctionnelle avec le dépôt." #. type: section -#: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4820 doc/guix.texi:4821 +#: doc/guix.texi:159 doc/guix.texi:3260 doc/guix.texi:4958 doc/guix.texi:4959 #, no-wrap msgid "G-Expressions" msgstr "G-Expressions" #. type: menuentry -#: doc/guix.texi:158 doc/guix.texi:3141 +#: doc/guix.texi:159 doc/guix.texi:3260 msgid "Manipulating build expressions." msgstr "Manipuler les expressions de construction." #. type: node -#: doc/guix.texi:163 doc/guix.texi:3389 doc/guix.texi:3392 +#: doc/guix.texi:164 doc/guix.texi:3508 doc/guix.texi:3511 #, no-wrap msgid "package Reference" msgstr "Référence de paquet" #. type: menuentry -#: doc/guix.texi:163 doc/guix.texi:3389 +#: doc/guix.texi:164 doc/guix.texi:3508 msgid "The package data type." msgstr "Le type de donnée des paquets." #. type: node -#: doc/guix.texi:163 doc/guix.texi:3389 doc/guix.texi:3519 +#: doc/guix.texi:164 doc/guix.texi:3508 doc/guix.texi:3638 #, no-wrap msgid "origin Reference" msgstr "Référence d'origine" #. type: menuentry -#: doc/guix.texi:163 doc/guix.texi:3389 +#: doc/guix.texi:164 doc/guix.texi:3508 msgid "The origin data type." msgstr "Le type de données d'origine." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:5388 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:5559 #, no-wrap msgid "Invoking guix build" msgstr "Invoquer guix build" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Building packages from the command line." msgstr "Construire des paquets depuis la ligne de commande." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:5968 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:6146 #, no-wrap msgid "Invoking guix edit" msgstr "Invoquer guix edit" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Editing package definitions." msgstr "Modifier les définitions de paquets." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:5994 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:6172 #, no-wrap msgid "Invoking guix download" msgstr "Invoquer guix download" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Downloading a file and printing its hash." msgstr "Télécharger un fichier et afficher son hash." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6047 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:6225 #, no-wrap msgid "Invoking guix hash" msgstr "Invoquer guix hash" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Computing the cryptographic hash of a file." msgstr "Calculer le hash cryptographique d'un fichier." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6109 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:6287 #, no-wrap msgid "Invoking guix import" msgstr "Invoquer guix import" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Importing package definitions." msgstr "Importer des définitions de paquets." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6476 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:6660 #, no-wrap msgid "Invoking guix refresh" msgstr "Invoquer guix refresh" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Updating package definitions." msgstr "Mettre à jour les définitions de paquets." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6723 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:6907 #, no-wrap msgid "Invoking guix lint" msgstr "Invoquer guix lint" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Finding errors in package definitions." msgstr "Trouver des erreurs dans les définitions de paquets." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6814 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:7016 #, no-wrap msgid "Invoking guix size" msgstr "Invoquer guix size" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Profiling disk usage." msgstr "Profiler l'utilisation du disque." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6930 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:7140 #, no-wrap msgid "Invoking guix graph" msgstr "Invoquer guix graph" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Visualizing the graph of packages." msgstr "Visualiser le graphe des paquets." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7109 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:7319 #, no-wrap msgid "Invoking guix environment" msgstr "Invoquer guix environment" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Setting up development environments." msgstr "Mettre en place des environnements de développement." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7428 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:7638 #, no-wrap msgid "Invoking guix publish" msgstr "Invoquer guix publish" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Sharing substitutes." msgstr "Partager des substituts." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7645 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:7855 #, no-wrap msgid "Invoking guix challenge" msgstr "Invoquer guix challenge" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Challenging substitute servers." msgstr "Défier les serveurs de substituts." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7784 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:7994 #, no-wrap msgid "Invoking guix copy" msgstr "Invoquer guix copy" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Copying to and from a remote store." msgstr "Copier vers et depuis un dépôt distant." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7847 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:8057 #, no-wrap msgid "Invoking guix container" msgstr "Invoquer guix container" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Process isolation." msgstr "Isolation de processus." #. type: node -#: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7901 +#: doc/guix.texi:182 doc/guix.texi:5557 doc/guix.texi:8111 #, no-wrap msgid "Invoking guix weather" msgstr "Invoquer guix weather" #. type: menuentry -#: doc/guix.texi:181 doc/guix.texi:5386 +#: doc/guix.texi:182 doc/guix.texi:5557 msgid "Assessing substitute availability." msgstr "Mesurer la disponibilité des substituts." #. type: section -#: doc/guix.texi:183 doc/guix.texi:5389 +#: doc/guix.texi:184 doc/guix.texi:5560 #, no-wrap msgid "Invoking @command{guix build}" msgstr "Invoquer @command{guix build}" #. type: subsection -#: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5442 doc/guix.texi:5443 +#: doc/guix.texi:189 doc/guix.texi:5611 doc/guix.texi:5613 doc/guix.texi:5614 #, no-wrap msgid "Common Build Options" msgstr "Options de construction communes" #. type: menuentry -#: doc/guix.texi:188 doc/guix.texi:5440 +#: doc/guix.texi:189 doc/guix.texi:5611 msgid "Build options for most commands." msgstr "Options de construction pour la plupart des commandes." #. type: subsection -#: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5584 doc/guix.texi:5585 +#: doc/guix.texi:189 doc/guix.texi:5611 doc/guix.texi:5755 doc/guix.texi:5756 #, no-wrap msgid "Package Transformation Options" msgstr "Options de transformation de paquets" #. type: menuentry -#: doc/guix.texi:188 doc/guix.texi:5440 +#: doc/guix.texi:189 doc/guix.texi:5611 msgid "Creating variants of packages." msgstr "Créer des variantes de paquets." #. type: subsection -#: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5684 doc/guix.texi:5685 +#: doc/guix.texi:189 doc/guix.texi:5611 doc/guix.texi:5855 doc/guix.texi:5856 #, no-wrap msgid "Additional Build Options" msgstr "Options de construction supplémentaires" #. type: menuentry -#: doc/guix.texi:188 doc/guix.texi:5440 +#: doc/guix.texi:189 doc/guix.texi:5611 msgid "Options specific to 'guix build'." msgstr "Options spécifiques à « guix build »." #. type: subsection -#: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5888 doc/guix.texi:5889 +#: doc/guix.texi:189 doc/guix.texi:5611 doc/guix.texi:6066 doc/guix.texi:6067 #, no-wrap msgid "Debugging Build Failures" msgstr "Débogage des échecs de construction" #. type: menuentry -#: doc/guix.texi:188 doc/guix.texi:5440 +#: doc/guix.texi:189 doc/guix.texi:5611 msgid "Real life packaging experience." msgstr "La vie d'un empaqueteur." #. type: section -#: doc/guix.texi:200 doc/guix.texi:202 doc/guix.texi:8053 doc/guix.texi:8058 -#: doc/guix.texi:8059 +#: doc/guix.texi:201 doc/guix.texi:203 doc/guix.texi:8263 doc/guix.texi:8268 +#: doc/guix.texi:8269 #, no-wrap msgid "System Installation" msgstr "Installation du système" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Installing the whole operating system." msgstr "Installer le système d'exploitation complet." #. type: section -#: doc/guix.texi:200 doc/guix.texi:212 doc/guix.texi:8053 doc/guix.texi:8674 -#: doc/guix.texi:8675 +#: doc/guix.texi:201 doc/guix.texi:213 doc/guix.texi:8263 doc/guix.texi:8900 +#: doc/guix.texi:8901 #, no-wrap msgid "System Configuration" msgstr "Configuration système" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Configuring the operating system." msgstr "Configurer le système d'exploitation." #. type: section -#: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21351 doc/guix.texi:21352 +#: doc/guix.texi:201 doc/guix.texi:8263 doc/guix.texi:21835 +#: doc/guix.texi:21836 #, no-wrap msgid "Documentation" msgstr "Documentation" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Browsing software user manuals." msgstr "Visualiser les manuels d'utilisateur des logiciels." #. type: section -#: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21415 doc/guix.texi:21416 +#: doc/guix.texi:201 doc/guix.texi:8263 doc/guix.texi:21899 +#: doc/guix.texi:21900 #, no-wrap msgid "Installing Debugging Files" msgstr "Installer les fichiers de débogage" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Feeding the debugger." msgstr "Nourrir le débogueur." #. type: section -#: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21481 doc/guix.texi:21482 +#: doc/guix.texi:201 doc/guix.texi:8263 doc/guix.texi:21965 +#: doc/guix.texi:21966 #, no-wrap msgid "Security Updates" msgstr "Mises à jour de sécurité" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Deploying security fixes quickly." msgstr "Déployer des correctifs de sécurité rapidement." #. type: section -#: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21601 doc/guix.texi:21602 +#: doc/guix.texi:201 doc/guix.texi:8263 doc/guix.texi:22085 +#: doc/guix.texi:22086 #, no-wrap msgid "Package Modules" msgstr "Modules de paquets" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Packages from the programmer's viewpoint." msgstr "Les paquets du point de vu du programmeur." #. type: section -#: doc/guix.texi:200 doc/guix.texi:265 doc/guix.texi:8053 doc/guix.texi:21655 -#: doc/guix.texi:21656 +#: doc/guix.texi:201 doc/guix.texi:267 doc/guix.texi:8263 doc/guix.texi:22139 +#: doc/guix.texi:22140 #, no-wrap msgid "Packaging Guidelines" msgstr "Consignes d'empaquetage" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Growing the distribution." msgstr "Faire grandir la distribution." #. type: section -#: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:22106 doc/guix.texi:22107 +#: doc/guix.texi:201 doc/guix.texi:8263 doc/guix.texi:22590 +#: doc/guix.texi:22591 #, no-wrap msgid "Bootstrapping" msgstr "Bootstrapping" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "GNU/Linux built from scratch." msgstr "GNU/Linux depuis zéro." #. type: node -#: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:22290 +#: doc/guix.texi:201 doc/guix.texi:8263 doc/guix.texi:22774 #, no-wrap msgid "Porting" msgstr "Porter" #. type: menuentry -#: doc/guix.texi:200 doc/guix.texi:8053 +#: doc/guix.texi:201 doc/guix.texi:8263 msgid "Targeting another platform or kernel." msgstr "Cibler une autre plateforme ou un autre noyau." #. type: subsection -#: doc/guix.texi:210 doc/guix.texi:1126 doc/guix.texi:8090 doc/guix.texi:8092 -#: doc/guix.texi:8093 +#: doc/guix.texi:211 doc/guix.texi:1131 doc/guix.texi:8300 doc/guix.texi:8302 +#: doc/guix.texi:8303 #, no-wrap msgid "Limitations" msgstr "Limitations" #. type: menuentry -#: doc/guix.texi:210 doc/guix.texi:8090 +#: doc/guix.texi:211 doc/guix.texi:8300 msgid "What you can expect." msgstr "Ce à quoi vous attendre." #. type: subsection -#: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8136 doc/guix.texi:8137 +#: doc/guix.texi:211 doc/guix.texi:8300 doc/guix.texi:8346 doc/guix.texi:8347 #, no-wrap msgid "Hardware Considerations" msgstr "Considérations matérielles" #. type: menuentry -#: doc/guix.texi:210 doc/guix.texi:8090 +#: doc/guix.texi:211 doc/guix.texi:8300 msgid "Supported hardware." msgstr "Matériel supporté." #. type: subsection -#: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8171 doc/guix.texi:8172 +#: doc/guix.texi:211 doc/guix.texi:8300 doc/guix.texi:8381 doc/guix.texi:8382 #, no-wrap msgid "USB Stick and DVD Installation" msgstr "Installation depuis une clef USB ou un DVD" #. type: menuentry -#: doc/guix.texi:210 doc/guix.texi:8090 +#: doc/guix.texi:211 doc/guix.texi:8300 msgid "Preparing the installation medium." msgstr "Préparer le média d'installation." #. type: subsection -#: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8269 doc/guix.texi:8270 +#: doc/guix.texi:211 doc/guix.texi:8300 doc/guix.texi:8479 doc/guix.texi:8480 #, no-wrap msgid "Preparing for Installation" msgstr "Préparer l'installation" #. type: menuentry -#: doc/guix.texi:210 doc/guix.texi:8090 +#: doc/guix.texi:211 doc/guix.texi:8300 msgid "Networking, partitioning, etc." msgstr "Réseau, partitionnement, etc." #. type: subsection -#: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8508 doc/guix.texi:8509 +#: doc/guix.texi:211 doc/guix.texi:8300 doc/guix.texi:8718 doc/guix.texi:8719 #, no-wrap msgid "Proceeding with the Installation" msgstr "Effectuer l'installation" #. type: menuentry -#: doc/guix.texi:210 doc/guix.texi:8090 +#: doc/guix.texi:211 doc/guix.texi:8300 msgid "The real thing." msgstr "Pour de vrai." #. type: node -#: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8605 +#: doc/guix.texi:211 doc/guix.texi:8300 doc/guix.texi:8815 #, no-wrap msgid "Installing GuixSD in a VM" msgstr "Installer GuixSD dans une VM" #. type: menuentry -#: doc/guix.texi:210 doc/guix.texi:8090 +#: doc/guix.texi:211 doc/guix.texi:8300 msgid "GuixSD playground." -msgstr "Jouer avec GuixSD." +msgstr "Jouer avec GuixSD@." #. type: subsection -#: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8659 doc/guix.texi:8660 +#: doc/guix.texi:211 doc/guix.texi:8300 doc/guix.texi:8869 doc/guix.texi:8870 #, no-wrap msgid "Building the Installation Image" msgstr "Construire l'image d'installation" #. type: menuentry -#: doc/guix.texi:210 doc/guix.texi:8090 +#: doc/guix.texi:211 doc/guix.texi:8300 msgid "How this comes to be." msgstr "D'où vient tout cela." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:8717 doc/guix.texi:8718 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:8943 doc/guix.texi:8944 #, no-wrap msgid "Using the Configuration System" msgstr "Utiliser le système de configuration" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Customizing your GNU system." -msgstr "Personnaliser votre système GNU." +msgstr "Personnaliser votre système GNU@." #. type: node -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:8933 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:9159 #, no-wrap msgid "operating-system Reference" msgstr "Référence de système d'exploitation" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Detail of operating-system declarations." msgstr "Détail sur la déclaration de système d'exploitation." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:9087 doc/guix.texi:9088 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:9313 doc/guix.texi:9314 #, no-wrap msgid "File Systems" msgstr "Systèmes de fichiers" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Configuring file system mounts." msgstr "Configurer les montages de systèmes de fichiers." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:9250 doc/guix.texi:9251 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:9478 doc/guix.texi:9479 #, no-wrap msgid "Mapped Devices" msgstr "Périphériques mappés" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Block device extra processing." msgstr "Gestion des périphériques de bloc." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:9371 doc/guix.texi:9372 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:9599 doc/guix.texi:9600 #, no-wrap msgid "User Accounts" msgstr "Comptes utilisateurs" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Specifying user accounts." msgstr "Spécifier des comptes utilisateurs." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:1449 doc/guix.texi:8715 doc/guix.texi:9506 -#: doc/guix.texi:9507 +#: doc/guix.texi:229 doc/guix.texi:1454 doc/guix.texi:8941 doc/guix.texi:9734 +#: doc/guix.texi:9735 #, no-wrap msgid "Locales" msgstr "Régionalisation" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Language and cultural convention settings." msgstr "Paramétrer la langue et les conventions culturelles." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:230 doc/guix.texi:8715 doc/guix.texi:9646 -#: doc/guix.texi:9647 +#: doc/guix.texi:229 doc/guix.texi:231 doc/guix.texi:8941 doc/guix.texi:9874 +#: doc/guix.texi:9875 #, no-wrap msgid "Services" msgstr "Services" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Specifying system services." msgstr "Spécifier les services du système." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:19720 doc/guix.texi:19721 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:20204 +#: doc/guix.texi:20205 #, no-wrap msgid "Setuid Programs" msgstr "Programmes setuid" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Programs running with root privileges." msgstr "Programmes tournant avec les privilèges root." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:1594 doc/guix.texi:8715 doc/guix.texi:19766 -#: doc/guix.texi:19767 +#: doc/guix.texi:229 doc/guix.texi:1599 doc/guix.texi:8941 doc/guix.texi:20250 +#: doc/guix.texi:20251 #, no-wrap msgid "X.509 Certificates" msgstr "Certificats X.509" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Authenticating HTTPS servers." -msgstr "Authentifier les serveurs HTTPS." +msgstr "Authentifier les serveurs HTTPS@." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:1492 doc/guix.texi:8715 doc/guix.texi:19829 -#: doc/guix.texi:19830 +#: doc/guix.texi:229 doc/guix.texi:1497 doc/guix.texi:8941 doc/guix.texi:20313 +#: doc/guix.texi:20314 #, no-wrap msgid "Name Service Switch" msgstr "Name Service Switch" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Configuring libc's name service switch." msgstr "Configurer le « name service switch » de la libc." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:19967 doc/guix.texi:19968 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:20451 +#: doc/guix.texi:20452 #, no-wrap msgid "Initial RAM Disk" msgstr "Disque de RAM initial" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Linux-Libre bootstrapping." msgstr "Démarrage de Linux-Libre." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:20127 doc/guix.texi:20128 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:20611 +#: doc/guix.texi:20612 #, no-wrap msgid "Bootloader Configuration" msgstr "Configuration du chargeur d'amorçage" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Configuring the boot loader." msgstr "Configurer le chargeur d'amorçage." #. type: node -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:20298 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:20782 #, no-wrap msgid "Invoking guix system" msgstr "Invoquer guix system" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Instantiating a system configuration." msgstr "Instantier une configuration du système." #. type: node -#: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:20723 +#: doc/guix.texi:229 doc/guix.texi:8941 doc/guix.texi:21207 #, no-wrap msgid "Running GuixSD in a VM" msgstr "Lancer GuixSD dans une VM" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "How to run GuixSD in a virtual machine." msgstr "Comment lancer GuixSD dans une machine virtuelle." #. type: subsection -#: doc/guix.texi:228 doc/guix.texi:258 doc/guix.texi:8715 doc/guix.texi:20834 -#: doc/guix.texi:20835 +#: doc/guix.texi:229 doc/guix.texi:260 doc/guix.texi:8941 doc/guix.texi:21318 +#: doc/guix.texi:21319 #, no-wrap msgid "Defining Services" msgstr "Définir des services" #. type: menuentry -#: doc/guix.texi:228 doc/guix.texi:8715 +#: doc/guix.texi:229 doc/guix.texi:8941 msgid "Adding new service definitions." msgstr "Ajouter de nouvelles définitions de services." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:9720 doc/guix.texi:9721 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:9949 doc/guix.texi:9950 #, no-wrap msgid "Base Services" msgstr "Services de base" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Essential system services." msgstr "Services systèmes essentiels." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:10488 doc/guix.texi:10489 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:10733 +#: doc/guix.texi:10734 #, no-wrap msgid "Scheduled Job Execution" -msgstr "" +msgstr "Exécution de tâches planifiées" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "The mcron service." -msgstr "" +msgstr "Le service mcron." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:10583 doc/guix.texi:10584 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:10828 +#: doc/guix.texi:10829 #, no-wrap msgid "Log Rotation" -msgstr "" +msgstr "Rotation des journaux" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "The rottlog service." -msgstr "" +msgstr "Le service rottlog." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:10685 doc/guix.texi:10686 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:10930 +#: doc/guix.texi:10931 #, no-wrap msgid "Networking Services" -msgstr "" +msgstr "Services réseau" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Network setup, SSH daemon, etc." -msgstr "" +msgstr "Paramétres réseau, démon SSH, etc." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:11431 doc/guix.texi:11432 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:11698 +#: doc/guix.texi:11699 #, no-wrap msgid "X Window" -msgstr "" +msgstr "Système de fenêtrage X" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Graphical display." -msgstr "" +msgstr "Affichage graphique." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:11677 doc/guix.texi:11678 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:11982 +#: doc/guix.texi:11983 #, no-wrap msgid "Printing Services" -msgstr "" +msgstr "Services d'impression" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Local and remote printer support." -msgstr "" +msgstr "Support pour les imprimantes locales et distantes." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:12514 doc/guix.texi:12515 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:12819 +#: doc/guix.texi:12820 #, no-wrap msgid "Desktop Services" -msgstr "" +msgstr "Services de bureaux" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "D-Bus and desktop services." -msgstr "" +msgstr "D-Bus et les services de bureaux." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:12807 doc/guix.texi:12808 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:13127 +#: doc/guix.texi:13128 +#, no-wrap +msgid "Sound Services" +msgstr "Services de son" + +#. type: menuentry +#: doc/guix.texi:258 doc/guix.texi:9947 +msgid "ALSA and Pulseaudio services." +msgstr "Services ALSA et Pulseaudio." + +#. type: subsubsection +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:13169 +#: doc/guix.texi:13170 #, no-wrap msgid "Database Services" -msgstr "" +msgstr "Services de bases de données" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "SQL databases, key-value stores, etc." -msgstr "" +msgstr "Bases SQL, clefs-valeurs, etc." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:12931 doc/guix.texi:12932 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:13293 +#: doc/guix.texi:13294 #, no-wrap msgid "Mail Services" -msgstr "" +msgstr "Services de courriels" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "IMAP, POP3, SMTP, and all that." -msgstr "" +msgstr "IMAP, POP3, SMTP, et tout ça." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:14383 doc/guix.texi:14384 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:14745 +#: doc/guix.texi:14746 #, no-wrap msgid "Messaging Services" -msgstr "" +msgstr "Services de messagerie" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Messaging services." -msgstr "" +msgstr "Services de messagerie." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:14851 doc/guix.texi:14852 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:15216 +#: doc/guix.texi:15217 #, no-wrap msgid "Telephony Services" -msgstr "" +msgstr "Services de téléphonie" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Telephony services." -msgstr "" +msgstr "Services de téléphonie." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15056 doc/guix.texi:15057 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:15421 +#: doc/guix.texi:15422 #, no-wrap msgid "Monitoring Services" -msgstr "" +msgstr "Services de surveillance" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Monitoring services." -msgstr "" +msgstr "Services de surveillance." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15209 doc/guix.texi:15210 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:15574 +#: doc/guix.texi:15575 #, no-wrap msgid "Kerberos Services" -msgstr "" +msgstr "Services Kerberos" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Kerberos services." -msgstr "" +msgstr "Services Kerberos." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15335 doc/guix.texi:15336 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:15700 +#: doc/guix.texi:15701 #, no-wrap msgid "Web Services" -msgstr "" +msgstr "Services web" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Web servers." -msgstr "" +msgstr "Services web." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15944 doc/guix.texi:15945 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:16371 +#: doc/guix.texi:16372 #, no-wrap msgid "Certificate Services" -msgstr "" +msgstr "Services de certificats" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "TLS certificates via Let's Encrypt." -msgstr "" +msgstr "Certificats TLS via Let's Encrypt." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16090 doc/guix.texi:16091 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:16517 +#: doc/guix.texi:16518 #, no-wrap msgid "DNS Services" -msgstr "" +msgstr "Services DNS" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "DNS daemons." -msgstr "" +msgstr "Démons DNS@." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16494 doc/guix.texi:16495 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:16978 +#: doc/guix.texi:16979 #, no-wrap msgid "VPN Services" -msgstr "" +msgstr "Services VPN" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "VPN daemons." -msgstr "" +msgstr "Démons VPN" #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16852 doc/guix.texi:16853 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:17336 +#: doc/guix.texi:17337 #, no-wrap msgid "Network File System" -msgstr "" +msgstr "Système de fichiers en réseau" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "NFS related services." -msgstr "" +msgstr "Services liés à NFS@." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16967 doc/guix.texi:16968 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:17451 +#: doc/guix.texi:17452 #, no-wrap msgid "Continuous Integration" -msgstr "" +msgstr "Intégration continue" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "The Cuirass service." -msgstr "" +msgstr "Le service Cuirass." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:17063 doc/guix.texi:17064 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:17547 +#: doc/guix.texi:17548 #, no-wrap msgid "Power management Services" -msgstr "" +msgstr "Services de gestion de l'énergie" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "The TLP tool." -msgstr "" +msgstr "L'outil TLP@." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:17591 doc/guix.texi:17592 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:18075 +#: doc/guix.texi:18076 #, no-wrap msgid "Audio Services" -msgstr "" +msgstr "Services audio" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "The MPD." -msgstr "" +msgstr "MPD@." #. type: node -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:17641 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:18125 #, no-wrap msgid "Virtualization Services" -msgstr "" +msgstr "Services de virtualisation" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Virtualization services." -msgstr "" +msgstr "Services de virtualisation." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:18434 doc/guix.texi:18435 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:18918 +#: doc/guix.texi:18919 #, no-wrap msgid "Version Control Services" -msgstr "" +msgstr "Services de contrôle de version" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Providing remote access to Git repositories." -msgstr "" +msgstr "Fournit des accès distants à des dépôts Git." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:19528 doc/guix.texi:19529 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:20012 +#: doc/guix.texi:20013 #, no-wrap msgid "Game Services" -msgstr "" +msgstr "Services de jeu" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Game servers." -msgstr "" +msgstr "Serveurs de jeu." #. type: subsubsection -#: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:19559 doc/guix.texi:19560 +#: doc/guix.texi:258 doc/guix.texi:9947 doc/guix.texi:20043 +#: doc/guix.texi:20044 #, no-wrap msgid "Miscellaneous Services" -msgstr "" +msgstr "Services divers" #. type: menuentry -#: doc/guix.texi:256 doc/guix.texi:9718 +#: doc/guix.texi:258 doc/guix.texi:9947 msgid "Other services." -msgstr "" +msgstr "D'autres services." #. type: subsubsection -#: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:20848 -#: doc/guix.texi:20849 +#: doc/guix.texi:265 doc/guix.texi:21330 doc/guix.texi:21332 +#: doc/guix.texi:21333 #, no-wrap msgid "Service Composition" msgstr "Composition de services" #. type: menuentry -#: doc/guix.texi:263 doc/guix.texi:20846 +#: doc/guix.texi:265 doc/guix.texi:21330 msgid "The model for composing services." msgstr "Le modèle de composition des services." #. type: subsubsection -#: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:20904 -#: doc/guix.texi:20905 +#: doc/guix.texi:265 doc/guix.texi:21330 doc/guix.texi:21388 +#: doc/guix.texi:21389 #, no-wrap msgid "Service Types and Services" msgstr "Types service et services" #. type: menuentry -#: doc/guix.texi:263 doc/guix.texi:20846 +#: doc/guix.texi:265 doc/guix.texi:21330 msgid "Types and services." msgstr "Types et services." #. type: subsubsection -#: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:21041 -#: doc/guix.texi:21042 +#: doc/guix.texi:265 doc/guix.texi:21330 doc/guix.texi:21525 +#: doc/guix.texi:21526 #, no-wrap msgid "Service Reference" msgstr "Référence de service" #. type: menuentry -#: doc/guix.texi:263 doc/guix.texi:20846 +#: doc/guix.texi:265 doc/guix.texi:21330 msgid "API reference." -msgstr "Référence de l'API." +msgstr "Référence de l'API@." #. type: subsubsection -#: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:21266 -#: doc/guix.texi:21267 +#: doc/guix.texi:265 doc/guix.texi:21330 doc/guix.texi:21750 +#: doc/guix.texi:21751 #, no-wrap msgid "Shepherd Services" msgstr "Services Shepherd" #. type: menuentry -#: doc/guix.texi:263 doc/guix.texi:20846 +#: doc/guix.texi:265 doc/guix.texi:21330 msgid "A particular type of service." msgstr "Un type de service particulier." #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21732 -#: doc/guix.texi:21733 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22216 +#: doc/guix.texi:22217 #, no-wrap msgid "Software Freedom" msgstr "Liberté logiciel" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "What may go into the distribution." msgstr "Ce que la distribution peut contenir." #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21760 -#: doc/guix.texi:21761 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22244 +#: doc/guix.texi:22245 #, no-wrap msgid "Package Naming" msgstr "Conventions de nommage" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "What's in a name?" msgstr "Qu'est-ce qu'un bon nom ?" #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21785 -#: doc/guix.texi:21786 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22269 +#: doc/guix.texi:22270 #, no-wrap msgid "Version Numbers" msgstr "Numéros de version" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "When the name is not enough." msgstr "Lorsque le nom n'est pas suffisant." #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21876 -#: doc/guix.texi:21877 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22360 +#: doc/guix.texi:22361 #, no-wrap msgid "Synopses and Descriptions" msgstr "Synopsis et descriptions" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "Helping users find the right package." msgstr "Aider les utilisateurs à trouver le bon paquet." #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21956 -#: doc/guix.texi:21957 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22440 +#: doc/guix.texi:22441 #, no-wrap msgid "Python Modules" msgstr "Modules python" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "A touch of British comedy." msgstr "Un peu de comédie anglaise." #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:22031 -#: doc/guix.texi:22032 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22515 +#: doc/guix.texi:22516 #, no-wrap msgid "Perl Modules" msgstr "Modules perl" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "Little pearls." msgstr "Petites perles." #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:22047 -#: doc/guix.texi:22048 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22531 +#: doc/guix.texi:22532 #, no-wrap msgid "Java Packages" msgstr "Paquets java" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "Coffee break." msgstr "Pause café." #. type: subsection -#: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:22067 -#: doc/guix.texi:22068 +#: doc/guix.texi:276 doc/guix.texi:22214 doc/guix.texi:22551 +#: doc/guix.texi:22552 #, no-wrap msgid "Fonts" msgstr "Polices de caractères" #. type: menuentry -#: doc/guix.texi:274 doc/guix.texi:21730 +#: doc/guix.texi:276 doc/guix.texi:22214 msgid "Fond of fonts." -msgstr "" +msgstr "À fond les fontes." #. type: cindex -#: doc/guix.texi:297 +#: doc/guix.texi:299 #, no-wrap msgid "purpose" msgstr "but" #. type: Plain text -#: doc/guix.texi:304 -msgid "" -"GNU Guix@footnote{``Guix'' is pronounced like ``geeks'', or ``ɡiːks'' using " -"the international phonetic alphabet (IPA).} is a package management tool for " -"the GNU system. Guix makes it easy for unprivileged users to install, " -"upgrade, or remove packages, to roll back to a previous package set, to " -"build packages from source, and generally assists with the creation and " -"maintenance of software environments." -msgstr "" -"GNU Guix@footnote{« Guix » se prononce comme « geeks » (en prononçant le " -"« s »), ou « ɡiːks » dans l'alphabet phonétique international (API).} est un " -"outil de gestion de paquets pour le système GNU. Guix facilite pour les " -"utilisateurs non privilégiés l'installation, la mise à jour et la " -"suppression de paquets, la restauration à un ensemble de paquets précédent, " -"la construction de paquets depuis les sources et plus généralement aide à la " -"création et à la maintenance d'environnements logiciels." +#: doc/guix.texi:306 +msgid "GNU Guix@footnote{``Guix'' is pronounced like ``geeks'', or ``ɡiːks'' using the international phonetic alphabet (IPA).} is a package management tool for the GNU system. Guix makes it easy for unprivileged users to install, upgrade, or remove packages, to roll back to a previous package set, to build packages from source, and generally assists with the creation and maintenance of software environments." +msgstr "GNU Guix@footnote{« Guix » se prononce comme « geeks » (en prononçant le « s »), ou « ɡiːks » dans l'alphabet phonétique international (API).} est un outil de gestion de paquets pour le système GNU@. Guix facilite pour les utilisateurs non privilégiés l'installation, la mise à jour et la suppression de paquets, la restauration à un ensemble de paquets précédent, la construction de paquets depuis les sources et plus généralement aide à la création et à la maintenance d'environnements logiciels." #. type: cindex -#: doc/guix.texi:305 +#: doc/guix.texi:307 #, no-wrap msgid "user interfaces" msgstr "interfaces utilisateurs" #. type: Plain text -#: doc/guix.texi:310 -msgid "" -"Guix provides a command-line package management interface (@pxref{Invoking " -"guix package}), a set of command-line utilities (@pxref{Utilities}), as well " -"as Scheme programming interfaces (@pxref{Programming Interface})." -msgstr "" -"Guix fournit une interface de gestion des paquets par la ligne de commande " -"(@pxref{Invoquer guix package}), un ensemble d'utilitaires en ligne de " -"commande (@pxref{Utilitaires}) ainsi que des interfaces de programmation " -"Scheme (@pxref{Interface de programmation})." +#: doc/guix.texi:312 +msgid "Guix provides a command-line package management interface (@pxref{Invoking guix package}), a set of command-line utilities (@pxref{Utilities}), as well as Scheme programming interfaces (@pxref{Programming Interface})." +msgstr "Guix fournit une interface de gestion des paquets par la ligne de commande (@pxref{Invoquer guix package}), un ensemble d'utilitaires en ligne de commande (@pxref{Utilitaires}) ainsi que des interfaces de programmation Scheme (@pxref{Interface de programmation})." #. type: cindex -#: doc/guix.texi:310 +#: doc/guix.texi:312 #, no-wrap msgid "build daemon" msgstr "démon de construction" #. type: Plain text -#: doc/guix.texi:314 -msgid "" -"Its @dfn{build daemon} is responsible for building packages on behalf of " -"users (@pxref{Setting Up the Daemon}) and for downloading pre-built binaries " -"from authorized sources (@pxref{Substitutes})." -msgstr "" -"Son @dfn{démon de construction} est responsable de la construction des " -"paquets pour les utilisateurs (@pxref{Paramétrer le démon}) et du " -"téléchargement des binaires pré-construits depuis les sources autorisées " -"(@pxref{Substituts})." +#: doc/guix.texi:316 +msgid "Its @dfn{build daemon} is responsible for building packages on behalf of users (@pxref{Setting Up the Daemon}) and for downloading pre-built binaries from authorized sources (@pxref{Substitutes})." +msgstr "Son @dfn{démon de construction} est responsable de la construction des paquets pour les utilisateurs (@pxref{Paramétrer le démon}) et du téléchargement des binaires pré-construits depuis les sources autorisées (@pxref{Substituts})." #. type: cindex -#: doc/guix.texi:315 +#: doc/guix.texi:317 #, no-wrap msgid "extensibility of the distribution" msgstr "extensibilité de la distribution" #. type: cindex -#: doc/guix.texi:316 doc/guix.texi:21623 +#: doc/guix.texi:318 doc/guix.texi:22107 #, no-wrap msgid "customization, of packages" msgstr "personnalisation, des paquets" #. type: Plain text -#: doc/guix.texi:325 -msgid "" -"Guix includes package definitions for many GNU and non-GNU packages, all of " -"which @uref{https://www.gnu.org/philosophy/free-sw.html, respect the user's " -"computing freedom}. It is @emph{extensible}: users can write their own " -"package definitions (@pxref{Defining Packages}) and make them available as " -"independent package modules (@pxref{Package Modules}). It is also " -"@emph{customizable}: users can @emph{derive} specialized package definitions " -"from existing ones, including from the command line (@pxref{Package " -"Transformation Options})." -msgstr "" -"Guix contient de nombreuses définitions de paquet GNU et non-GNU qui " -"respectent tous les @uref{https://www.gnu.org/philosophy/free-sw.fr.html, " -"libertés de l'utilisateur}. Il est @emph{extensible} : les utilisateurs " -"peuvent écrire leurs propres définitions de paquets (@pxref{Defining " -"Packages}) et les rendre disponibles dans des modules de paquets " -"indépendants (@pxref{Package Modules}). Il est aussi " -"@emph{personnalisable} : les utilisateurs peuvent @emph{dériver} des " -"définitions de paquets spécialisées à partir de définitions existantes, même " -"depuis la ligne de commande (@pxref{Package Transformation Options})." +#: doc/guix.texi:327 +msgid "Guix includes package definitions for many GNU and non-GNU packages, all of which @uref{https://www.gnu.org/philosophy/free-sw.html, respect the user's computing freedom}. It is @emph{extensible}: users can write their own package definitions (@pxref{Defining Packages}) and make them available as independent package modules (@pxref{Package Modules}). It is also @emph{customizable}: users can @emph{derive} specialized package definitions from existing ones, including from the command line (@pxref{Package Transformation Options})." +msgstr "Guix contient de nombreuses définitions de paquet GNU et non-GNU qui respectent tous les @uref{https://www.gnu.org/philosophy/free-sw.fr.html, libertés de l'utilisateur}. Il est @emph{extensible} : les utilisateurs peuvent écrire leurs propres définitions de paquets (@pxref{Defining Packages}) et les rendre disponibles dans des modules de paquets indépendants (@pxref{Package Modules}). Il est aussi @emph{personnalisable} : les utilisateurs peuvent @emph{dériver} des définitions de paquets spécialisées à partir de définitions existantes, même depuis la ligne de commande (@pxref{Package Transformation Options})." #. type: cindex -#: doc/guix.texi:326 doc/guix.texi:7984 doc/guix.texi:8062 +#: doc/guix.texi:328 doc/guix.texi:8194 doc/guix.texi:8272 #, no-wrap msgid "Guix System Distribution" msgstr "Distribution Système Guix" #. type: cindex -#: doc/guix.texi:327 doc/guix.texi:7985 +#: doc/guix.texi:329 doc/guix.texi:8195 #, no-wrap msgid "GuixSD" msgstr "GuixSD" #. type: Plain text -#: doc/guix.texi:336 -msgid "" -"You can install GNU@tie{}Guix on top of an existing GNU/Linux system where " -"it complements the available tools without interference " -"(@pxref{Installation}), or you can use it as part of the standalone " -"@dfn{Guix System Distribution} or GuixSD (@pxref{GNU Distribution}). With " -"GNU@tie{}GuixSD, you @emph{declare} all aspects of the operating system " -"configuration and Guix takes care of instantiating the configuration in a " -"transactional, reproducible, and stateless fashion (@pxref{System " -"Configuration})." -msgstr "" -"Vous pouvez installer GNU@tie{}Guix sur un système GNU/Linux existant pour " -"compléter les outils disponibles sans interférence (@pxref{Installation}) ou " -"vous pouvez l'utiliser à travers la @dfn{Distribution Système Guix} ou " -"GuixSD (@pxref{Distribution GNU}) distincte. Avec GNU@tie{}GuixSD, vous " -"@emph{déclarez} tous les aspects de la configuration du système " -"d'exploitation et Guix s'occupe de créer la configuration d'une manière " -"transactionnelle, reproductible et sans état (@pxref{Configuration système})." +#: doc/guix.texi:338 +msgid "You can install GNU@tie{}Guix on top of an existing GNU/Linux system where it complements the available tools without interference (@pxref{Installation}), or you can use it as part of the standalone @dfn{Guix System Distribution} or GuixSD (@pxref{GNU Distribution}). With GNU@tie{}GuixSD, you @emph{declare} all aspects of the operating system configuration and Guix takes care of instantiating the configuration in a transactional, reproducible, and stateless fashion (@pxref{System Configuration})." +msgstr "Vous pouvez installer GNU@tie{}Guix sur un système GNU/Linux existant pour compléter les outils disponibles sans interférence (@pxref{Installation}) ou vous pouvez l'utiliser à travers la @dfn{Distribution Système Guix} ou GuixSD (@pxref{Distribution GNU}) distincte. Avec GNU@tie{}GuixSD, vous @emph{déclarez} tous les aspects de la configuration du système d'exploitation et Guix s'occupe de créer la configuration d'une manière transactionnelle, reproductible et sans état (@pxref{Configuration système})." #. type: cindex -#: doc/guix.texi:337 +#: doc/guix.texi:339 #, no-wrap msgid "functional package management" msgstr "gestion de paquet fonctionnelle" #. type: Plain text -#: doc/guix.texi:352 -msgid "" -"Under the hood, Guix implements the @dfn{functional package management} " -"discipline pioneered by Nix (@pxref{Acknowledgments}). In Guix, the package " -"build and installation process is seen as a @emph{function}, in the " -"mathematical sense. That function takes inputs, such as build scripts, a " -"compiler, and libraries, and returns an installed package. As a pure " -"function, its result depends solely on its inputs---for instance, it cannot " -"refer to software or scripts that were not explicitly passed as inputs. A " -"build function always produces the same result when passed a given set of " -"inputs. It cannot alter the environment of the running system in any way; " -"for instance, it cannot create, modify, or delete files outside of its build " -"and installation directories. This is achieved by running build processes " -"in isolated environments (or @dfn{containers}), where only their explicit " -"inputs are visible." -msgstr "" -"Sous le capot, Guix implémente la discipline de @dfn{gestion de paquet " -"fonctionnel} inventé par Nix (@pxref{Remerciements}). Dans Guix le processus " -"de construction et d'installation des paquets est vu comme une " -"@emph{fonction} dans le sens mathématique du terme. Cette fonction a des " -"entrées (comme des scripts de construction, un compilateur et des " -"bibliothèques) et renvoie un paquet installé. En tant que fonction pure, son " -"résultat ne dépend que de ses entrées. Par exemple, il ne peut pas faire " -"référence à des logiciels ou des scripts qui n'ont pas été explicitement " -"passés en entrée. Une fonction de construction produit toujours le même " -"résultat quand on lui donne le même ensemble d'entrée. Elle ne peut pas " -"modifier l'environnement du système en cours d'exécution d'aucune manière ; " -"par exemple elle ne peut pas créer, modifier ou supprimer des fichiers en " -"dehors de ses répertoires de construction et d'installation. Ce résultat " -"s'obtient en lançant les processus de construction dans des environnements " -"isolés (ou des @dfn{conteneurs}) où seules les entrées explicites sont " -"visibles." +#: doc/guix.texi:354 +msgid "Under the hood, Guix implements the @dfn{functional package management} discipline pioneered by Nix (@pxref{Acknowledgments}). In Guix, the package build and installation process is seen as a @emph{function}, in the mathematical sense. That function takes inputs, such as build scripts, a compiler, and libraries, and returns an installed package. As a pure function, its result depends solely on its inputs---for instance, it cannot refer to software or scripts that were not explicitly passed as inputs. A build function always produces the same result when passed a given set of inputs. It cannot alter the environment of the running system in any way; for instance, it cannot create, modify, or delete files outside of its build and installation directories. This is achieved by running build processes in isolated environments (or @dfn{containers}), where only their explicit inputs are visible." +msgstr "Sous le capot, Guix implémente la discipline de @dfn{gestion de paquet fonctionnel} inventé par Nix (@pxref{Remerciements}). Dans Guix le processus de construction et d'installation des paquets est vu comme une @emph{fonction} dans le sens mathématique du terme. Cette fonction a des entrées (comme des scripts de construction, un compilateur et des bibliothèques) et renvoie un paquet installé. En tant que fonction pure, son résultat ne dépend que de ses entrées. Par exemple, il ne peut pas faire référence à des logiciels ou des scripts qui n'ont pas été explicitement passés en entrée. Une fonction de construction produit toujours le même résultat quand on lui donne le même ensemble d'entrée. Elle ne peut pas modifier l'environnement du système en cours d'exécution d'aucune manière ; par exemple elle ne peut pas créer, modifier ou supprimer des fichiers en dehors de ses répertoires de construction et d'installation. Ce résultat s'obtient en lançant les processus de construction dans des environnements isolés (ou des @dfn{conteneurs}) où seules les entrées explicites sont visibles." #. type: cindex -#: doc/guix.texi:353 doc/guix.texi:4186 +#: doc/guix.texi:355 doc/guix.texi:4324 #, no-wrap msgid "store" msgstr "dépôt" #. type: Plain text -#: doc/guix.texi:360 -msgid "" -"The result of package build functions is @dfn{cached} in the file system, in " -"a special directory called @dfn{the store} (@pxref{The Store}). Each " -"package is installed in a directory of its own in the store---by default " -"under @file{/gnu/store}. The directory name contains a hash of all the " -"inputs used to build that package; thus, changing an input yields a " -"different directory name." -msgstr "" -"Le résultat des fonctions de construction de paquets est mis en @dfn{cache} " -"dans le système de fichier, dans répertoire spécial appelé le @dfn{dépôt} " -"(@pxref{The Store}). Chaque paquet est installé dans son répertoire propre " -"dans le dépôt — par défaut dans @file{/gnu/store}. Le nom du répertoire " -"contient un hash de toutes les entrées utilisées pour construire le paquet ; " -"ainsi, changer une entrée donnera un nom de répertoire différent." +#: doc/guix.texi:362 +msgid "The result of package build functions is @dfn{cached} in the file system, in a special directory called @dfn{the store} (@pxref{The Store}). Each package is installed in a directory of its own in the store---by default under @file{/gnu/store}. The directory name contains a hash of all the inputs used to build that package; thus, changing an input yields a different directory name." +msgstr "Le résultat des fonctions de construction de paquets est mis en @dfn{cache} dans le système de fichier, dans répertoire spécial appelé le @dfn{dépôt} (@pxref{The Store}). Chaque paquet est installé dans son répertoire propre dans le dépôt — par défaut dans @file{/gnu/store}. Le nom du répertoire contient un hash de toutes les entrées utilisées pour construire le paquet ; ainsi, changer une entrée donnera un nom de répertoire différent." #. type: Plain text -#: doc/guix.texi:364 -msgid "" -"This approach is the foundation for the salient features of Guix: support " -"for transactional package upgrade and rollback, per-user installation, and " -"garbage collection of packages (@pxref{Features})." -msgstr "" -"Cette approche est le fondement des fonctionnalités les plus importante de " -"Guix : le support des mises à jour des paquets et des retours en arrière " -"transactionnels, l'installation différenciée par utilisateur et le ramassage " -"de miettes pour les paquets (@pxref{Fonctionnalités})." +#: doc/guix.texi:366 +msgid "This approach is the foundation for the salient features of Guix: support for transactional package upgrade and rollback, per-user installation, and garbage collection of packages (@pxref{Features})." +msgstr "Cette approche est le fondement des fonctionnalités les plus importante de Guix : le support des mises à jour des paquets et des retours en arrière transactionnels, l'installation différenciée par utilisateur et le ramassage de miettes pour les paquets (@pxref{Fonctionnalités})." #. type: cindex -#: doc/guix.texi:370 +#: doc/guix.texi:372 #, no-wrap msgid "installing Guix" msgstr "installer Guix" #. type: Plain text -#: doc/guix.texi:375 -msgid "" -"GNU Guix is available for download from its website at @url{http://www.gnu." -"org/software/guix/}. This section describes the software requirements of " -"Guix, as well as how to install it and get ready to use it." -msgstr "" -"GNU Guix est disponible au téléchargement depuis son site web sur " -"@url{http://www.gnu.org/software/guix/}. Cette section décrit les pré-requis " -"logiciels de Guix ainsi que la manière de l'installer et de se préparer à " -"l'utiliser." +#: doc/guix.texi:377 +msgid "GNU Guix is available for download from its website at @url{http://www.gnu.org/software/guix/}. This section describes the software requirements of Guix, as well as how to install it and get ready to use it." +msgstr "GNU Guix est disponible au téléchargement depuis son site web sur @url{http://www.gnu.org/software/guix/}. Cette section décrit les pré-requis logiciels de Guix ainsi que la manière de l'installer et de se préparer à l'utiliser." #. type: Plain text -#: doc/guix.texi:380 -msgid "" -"Note that this section is concerned with the installation of the package " -"manager, which can be done on top of a running GNU/Linux system. If, " -"instead, you want to install the complete GNU operating system, " -"@pxref{System Installation}." -msgstr "" -"Remarquez que cette section concerne l'installation du gestionnaire de " -"paquet, ce qui se fait sur un système GNU/Linux en cours d'exécution. Si " -"vous souhaitez plutôt installer le système d'exploitation GNU complet, " -"@pxref{System Installation}." +#: doc/guix.texi:382 +msgid "Note that this section is concerned with the installation of the package manager, which can be done on top of a running GNU/Linux system. If, instead, you want to install the complete GNU operating system, @pxref{System Installation}." +msgstr "Remarquez que cette section concerne l'installation du gestionnaire de paquet, ce qui se fait sur un système GNU/Linux en cours d'exécution. Si vous souhaitez plutôt installer le système d'exploitation GNU complet, @pxref{System Installation}." #. type: cindex -#: doc/guix.texi:381 doc/guix.texi:1444 +#: doc/guix.texi:383 doc/guix.texi:1449 #, no-wrap msgid "foreign distro" msgstr "distro extérieure" #. type: Plain text -#: doc/guix.texi:387 -msgid "" -"When installed on a running GNU/Linux system---thereafter called a " -"@dfn{foreign distro}---GNU@tie{}Guix complements the available tools without " -"interference. Its data lives exclusively in two directories, usually @file{/" -"gnu/store} and @file{/var/guix}; other files on your system, such as @file{/" -"etc}, are left untouched." -msgstr "" -"Lorsqu'il est installé sur an système GNU/Linux existant — ci-après nommé " -"@dfn{distro extérieure} — GNU@tie{}Guix complète les outils disponibles sans " -"interférence. Ses données se trouvent exclusivement dans deux répertoires, " -"typiquement @file{/gnu/store} et @file{/var/guix} ; les autres fichiers de " -"votre système comme @file{/etc} sont laissés intacts." +#: doc/guix.texi:389 +msgid "When installed on a running GNU/Linux system---thereafter called a @dfn{foreign distro}---GNU@tie{}Guix complements the available tools without interference. Its data lives exclusively in two directories, usually @file{/gnu/store} and @file{/var/guix}; other files on your system, such as @file{/etc}, are left untouched." +msgstr "Lorsqu'il est installé sur an système GNU/Linux existant — ci-après nommé @dfn{distro extérieure} — GNU@tie{}Guix complète les outils disponibles sans interférence. Ses données se trouvent exclusivement dans deux répertoires, typiquement @file{/gnu/store} et @file{/var/guix} ; les autres fichiers de votre système comme @file{/etc} sont laissés intacts." #. type: Plain text -#: doc/guix.texi:390 -msgid "" -"Once installed, Guix can be updated by running @command{guix pull} " -"(@pxref{Invoking guix pull})." -msgstr "" -"Une fois installé, Guix peut être mis à jour en lançant @command{guix pull} " -"(@pxref{Invoking guix pull})." +#: doc/guix.texi:392 +msgid "Once installed, Guix can be updated by running @command{guix pull} (@pxref{Invoking guix pull})." +msgstr "Une fois installé, Guix peut être mis à jour en lançant @command{guix pull} (@pxref{Invoking guix pull})." #. type: cindex -#: doc/guix.texi:403 +#: doc/guix.texi:405 #, no-wrap msgid "installing Guix from binaries" -msgstr "" +msgstr "installer Guix depuis les binaires" #. type: Plain text -#: doc/guix.texi:409 -msgid "" -"This section describes how to install Guix on an arbitrary system from a " -"self-contained tarball providing binaries for Guix and for all its " -"dependencies. This is often quicker than installing from source, which is " -"described in the next sections. The only requirement is to have GNU@tie{}" -"tar and Xz." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:414 -msgid "" -"We provide a @uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-" -"install.sh, shell installer script}, which automates the download, " -"installation, and initial configuration of Guix. It should be run as the " -"root user." -msgstr "" +#: doc/guix.texi:411 +msgid "This section describes how to install Guix on an arbitrary system from a self-contained tarball providing binaries for Guix and for all its dependencies. This is often quicker than installing from source, which is described in the next sections. The only requirement is to have GNU@tie{}tar and Xz." +msgstr "Cette section décrit comment intaller Guix sur un système quelconque depuis un archive autonome qui fournit les binaires pour Guix et toutes ses dépendances. C'est souvent plus rapide que d'installer depuis les sources, ce qui est décrit dans les sections suivantes. Le seul pré-requis est d'avoir GNU@tie{}tar et Xz." #. type: Plain text #: doc/guix.texi:416 +msgid "We provide a @uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh, shell installer script}, which automates the download, installation, and initial configuration of Guix. It should be run as the root user." +msgstr "Nous fournissons un script @uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh, script d'intallation shell} qui automatise le téléchargement, l'installation et la configuration initiale de Guix. Il devrait être lancé en tant qu'utilisateur root." + +#. type: Plain text +#: doc/guix.texi:418 msgid "Installing goes along these lines:" -msgstr "" +msgstr "L'installation se comme ceci :" #. type: cindex -#: doc/guix.texi:419 +#: doc/guix.texi:421 #, no-wrap msgid "downloading Guix binary" -msgstr "" +msgstr "téléchargement du Guix binaire" #. type: enumerate -#: doc/guix.texi:424 -msgid "" -"Download the binary tarball from @indicateurl{ftp://alpha.gnu.org/gnu/guix/" -"guix-binary-@value{VERSION}.@var{system}.tar.xz}, where @var{system} is " -"@code{x86_64-linux} for an @code{x86_64} machine already running the kernel " -"Linux, and so on." -msgstr "" +#: doc/guix.texi:426 +msgid "Download the binary tarball from @indicateurl{ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{system}.tar.xz}, where @var{system} is @code{x86_64-linux} for an @code{x86_64} machine already running the kernel Linux, and so on." +msgstr "Téléchargez l'archive binaire depuis @indicateurl{ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{système}.tar.xz}, où @var{système} est @code{x86_64-linux} pour une machine @code{x86_64} sur laquelle tourne déjà le noyau Linux, etc." #. type: enumerate -#: doc/guix.texi:428 -msgid "" -"Make sure to download the associated @file{.sig} file and to verify the " -"authenticity of the tarball against it, along these lines:" -msgstr "" +#: doc/guix.texi:430 +msgid "Make sure to download the associated @file{.sig} file and to verify the authenticity of the tarball against it, along these lines:" +msgstr "Assurez-vous de télécharger le fichier @file{.sig} associé et de vérifier l'authenticité de l'archive avec, comme ceci :" #. type: example -#: doc/guix.texi:432 +#: doc/guix.texi:434 #, no-wrap msgid "" "$ wget ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{system}.tar.xz.sig\n" "$ gpg --verify guix-binary-@value{VERSION}.@var{system}.tar.xz.sig\n" msgstr "" +"$ wget ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{système}.tar.xz.sig\n" +"$ gpg --verify guix-binary-@value{VERSION}.@var{système}.tar.xz.sig\n" #. type: Plain text -#: doc/guix.texi:436 doc/guix.texi:8198 -msgid "" -"If that command fails because you do not have the required public key, then " -"run this command to import it:" -msgstr "" +#: doc/guix.texi:438 doc/guix.texi:8408 +msgid "If that command fails because you do not have the required public key, then run this command to import it:" +msgstr "Si cette commande échoue parce que vous n'avez pas la clef publique requise, lancez cette commande pour l'importer :" #. type: example -#: doc/guix.texi:439 doc/guix.texi:8201 +#: doc/guix.texi:441 doc/guix.texi:8411 #, no-wrap msgid "$ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID}\n" -msgstr "" +msgstr "$ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID}\n" #. type: Plain text -#: doc/guix.texi:444 doc/guix.texi:8206 +#: doc/guix.texi:446 doc/guix.texi:8416 msgid "and rerun the @code{gpg --verify} command." -msgstr "" +msgstr "et relancez la commande @code{gpg --verify}." #. type: enumerate -#: doc/guix.texi:448 -msgid "" -"Now, you need to become the @code{root} user. Depending on your " -"distribution, you may have to run @code{su -} or @code{sudo -i}. As " -"@code{root}, run:" -msgstr "" +#: doc/guix.texi:450 +msgid "Now, you need to become the @code{root} user. Depending on your distribution, you may have to run @code{su -} or @code{sudo -i}. As @code{root}, run:" +msgstr "Maintenant, vous devez devenir l'utilisateur @code{root}. En fonction de votre distribution, vous devrez lancer @code{su -} ou @code{sudo -i}. En tant que @code{root}, lancez :" #. type: example -#: doc/guix.texi:454 +#: doc/guix.texi:456 #, no-wrap msgid "" "# cd /tmp\n" @@ -3316,139 +2654,135 @@ msgid "" " guix-binary-@value{VERSION}.@var{system}.tar.xz\n" "# mv var/guix /var/ && mv gnu /\n" msgstr "" +"# cd /tmp\n" +"# tar --warning=no-timestamp -xf \\\n" +" guix-binary-@value{VERSION}.@var{système}.tar.xz\n" +"# mv var/guix /var/ && mv gnu /\n" #. type: enumerate -#: doc/guix.texi:459 -msgid "" -"This creates @file{/gnu/store} (@pxref{The Store}) and @file{/var/guix}. " -"The latter contains a ready-to-use profile for @code{root} (see next step.)" -msgstr "" +#: doc/guix.texi:461 +msgid "This creates @file{/gnu/store} (@pxref{The Store}) and @file{/var/guix}. The latter contains a ready-to-use profile for @code{root} (see next step.)" +msgstr "Cela crée @file{/gnu/store} (@pxref{The Store}) and @file{/var/guix}. Ce deuxième dossier contient un profil pret à être utilisé pour @code{root} (voir les étapes suivantes)." #. type: enumerate -#: doc/guix.texi:462 -msgid "" -"Do @emph{not} unpack the tarball on a working Guix system since that would " -"overwrite its own essential files." -msgstr "" +#: doc/guix.texi:464 +msgid "Do @emph{not} unpack the tarball on a working Guix system since that would overwrite its own essential files." +msgstr "Ne décompressez @emph{pas} l'archive sur un système Guix lancé car cela écraserait ses propres fichiers essentiels." #. type: enumerate -#: doc/guix.texi:472 -msgid "" -"The @code{--warning=no-timestamp} option makes sure GNU@tie{}tar does not " -"emit warnings about ``implausibly old time stamps'' (such warnings were " -"triggered by GNU@tie{}tar 1.26 and older; recent versions are fine.) They " -"stem from the fact that all the files in the archive have their modification " -"time set to zero (which means January 1st, 1970.) This is done on purpose " -"to make sure the archive content is independent of its creation time, thus " -"making it reproducible." -msgstr "" +#: doc/guix.texi:474 +msgid "The @code{--warning=no-timestamp} option makes sure GNU@tie{}tar does not emit warnings about ``implausibly old time stamps'' (such warnings were triggered by GNU@tie{}tar 1.26 and older; recent versions are fine.) They stem from the fact that all the files in the archive have their modification time set to zero (which means January 1st, 1970.) This is done on purpose to make sure the archive content is independent of its creation time, thus making it reproducible." +msgstr "L'option @code{--warning=no-timestamp} s'assure que GNU@tie{}tar ne produise pas d'avertissement disant que « l'horodatage est trop vieux pour être plausible » (ces avertissements étaient produits par GNU@tie{}tar 1.26 et précédents ; les versions récentes n'ont pas ce problème). Cela vient du fait que les fichiers de l'archive ont pour date de modification zéro (ce qui signifie le 1er janvier 1970). C'est fait exprès pour s'assurer que le contenu de l'archive ne dépende pas de la date de création, ce qui la rend reproductible." #. type: enumerate -#: doc/guix.texi:475 +#: doc/guix.texi:477 msgid "Make @code{root}'s profile available under @file{~root/.guix-profile}:" -msgstr "" +msgstr "Rendez le profil de @code{root} disponible sous @file{~root/.guix-profile} :" #. type: example -#: doc/guix.texi:479 +#: doc/guix.texi:481 #, no-wrap msgid "" "# ln -sf /var/guix/profiles/per-user/root/guix-profile \\\n" " ~root/.guix-profile\n" msgstr "" +"# ln -sf /var/guix/profiles/per-user/root/guix-profile \\\n" +" ~root/.guix-profile\n" #. type: enumerate -#: doc/guix.texi:483 -msgid "" -"Source @file{etc/profile} to augment @code{PATH} and other relevant " -"environment variables:" -msgstr "" +#: doc/guix.texi:485 +msgid "Source @file{etc/profile} to augment @code{PATH} and other relevant environment variables:" +msgstr "Sourcez @file{etc/profile} pour augmenter @code{PATH} et les autres variables d'environnement nécessaires :" #. type: example -#: doc/guix.texi:487 +#: doc/guix.texi:489 #, no-wrap msgid "" "# GUIX_PROFILE=\"`echo ~root`/.guix-profile\" ; \\\n" " source $GUIX_PROFILE/etc/profile\n" msgstr "" +"# GUIX_PROFILE=\"`echo ~root`/.guix-profile\" ; \\\n" +" source $GUIX_PROFILE/etc/profile\n" #. type: enumerate -#: doc/guix.texi:492 -msgid "" -"Create the group and user accounts for build users as explained below " -"(@pxref{Build Environment Setup})." -msgstr "" +#: doc/guix.texi:494 +msgid "Create the group and user accounts for build users as explained below (@pxref{Build Environment Setup})." +msgstr "Créez le groupe et les comptes utilisateurs pour les utilisateurs de construction comme expliqué plus loin (@pxref{Build Environment Setup})." #. type: enumerate -#: doc/guix.texi:495 +#: doc/guix.texi:497 msgid "Run the daemon, and set it to automatically start on boot." -msgstr "" +msgstr "Lancez le démon et paramétrez-le pour démarrer automatiquement au démarrage." #. type: enumerate -#: doc/guix.texi:498 -msgid "" -"If your host distro uses the systemd init system, this can be achieved with " -"these commands:" -msgstr "" +#: doc/guix.texi:500 +msgid "If your host distro uses the systemd init system, this can be achieved with these commands:" +msgstr "Si votre distribution hôte utilise le système d'initialisation systemd, cela peut se faire avec ces commandes :" #. type: example -#: doc/guix.texi:510 +#: doc/guix.texi:512 #, no-wrap msgid "" "# cp ~root/.guix-profile/lib/systemd/system/guix-daemon.service \\\n" " /etc/systemd/system/\n" "# systemctl start guix-daemon && systemctl enable guix-daemon\n" msgstr "" +"# cp ~root/.guix-profile/lib/systemd/system/guix-daemon.service \\\n" +" /etc/systemd/system/\n" +"# systemctl start guix-daemon && systemctl enable guix-daemon\n" #. type: itemize -#: doc/guix.texi:513 doc/guix.texi:7635 +#: doc/guix.texi:515 doc/guix.texi:7845 msgid "If your host distro uses the Upstart init system:" -msgstr "" +msgstr "Si votre distribution hôte utilise le système d'initialisation Upstart :" #. type: example -#: doc/guix.texi:518 +#: doc/guix.texi:520 #, no-wrap msgid "" "# initctl reload-configuration\n" "# cp ~root/.guix-profile/lib/upstart/system/guix-daemon.conf /etc/init/\n" "# start guix-daemon\n" msgstr "" +"# initctl reload-configuration\n" +"# cp ~root/.guix-profile/lib/upstart/system/guix-daemon.conf /etc/init/\n" +"# start guix-daemon\n" #. type: enumerate -#: doc/guix.texi:521 +#: doc/guix.texi:523 msgid "Otherwise, you can still start the daemon manually with:" -msgstr "" +msgstr "Sinon, vous pouvez toujours démarrer le démon manuellement avec :" #. type: example -#: doc/guix.texi:524 +#: doc/guix.texi:526 #, no-wrap msgid "# ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild\n" -msgstr "" +msgstr "# ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild\n" #. type: enumerate -#: doc/guix.texi:529 -msgid "" -"Make the @command{guix} command available to other users on the machine, for " -"instance with:" -msgstr "" +#: doc/guix.texi:531 +msgid "Make the @command{guix} command available to other users on the machine, for instance with:" +msgstr "Rendez la commande @command{guix} disponible pour les autres utilisateurs sur la machine, par exemple avec :" #. type: example -#: doc/guix.texi:534 +#: doc/guix.texi:536 #, no-wrap msgid "" "# mkdir -p /usr/local/bin\n" "# cd /usr/local/bin\n" "# ln -s /var/guix/profiles/per-user/root/guix-profile/bin/guix\n" msgstr "" +"# mkdir -p /usr/local/bin\n" +"# cd /usr/local/bin\n" +"# ln -s /var/guix/profiles/per-user/root/guix-profile/bin/guix\n" #. type: enumerate -#: doc/guix.texi:538 -msgid "" -"It is also a good idea to make the Info version of this manual available " -"there:" -msgstr "" +#: doc/guix.texi:540 +msgid "It is also a good idea to make the Info version of this manual available there:" +msgstr "C'est aussi une bonne idée de rendre la version Info de ce manuel disponible ici :" #. type: example -#: doc/guix.texi:544 +#: doc/guix.texi:546 #, no-wrap msgid "" "# mkdir -p /usr/local/share/info\n" @@ -3456,449 +2790,335 @@ msgid "" "# for i in /var/guix/profiles/per-user/root/guix-profile/share/info/* ;\n" " do ln -s $i ; done\n" msgstr "" +"# mkdir -p /usr/local/share/info\n" +"# cd /usr/local/share/info\n" +"# for i in /var/guix/profiles/per-user/root/guix-profile/share/info/* ;\n" +" do ln -s $i ; done\n" #. type: enumerate -#: doc/guix.texi:550 -msgid "" -"That way, assuming @file{/usr/local/share/info} is in the search path, " -"running @command{info guix} will open this manual (@pxref{Other Info " -"Directories,,, texinfo, GNU Texinfo}, for more details on changing the Info " -"search path.)" -msgstr "" +#: doc/guix.texi:552 +msgid "That way, assuming @file{/usr/local/share/info} is in the search path, running @command{info guix} will open this manual (@pxref{Other Info Directories,,, texinfo, GNU Texinfo}, for more details on changing the Info search path.)" +msgstr "Comme cela, en supposant que @file{/usr/local/share/info} est dans le chemin de recherche, lancer @command{info guix} ouvrira ce manuel (@pxref{Other Info Directories,,, texinfo, GNU Texinfo}, pour plus de détails sur comment changer le chemin de recherche de Info)." #. type: cindex -#: doc/guix.texi:552 doc/guix.texi:2304 doc/guix.texi:10194 +#: doc/guix.texi:554 doc/guix.texi:2309 doc/guix.texi:10423 #, no-wrap msgid "substitutes, authorization thereof" -msgstr "" +msgstr "substituts, autorisations" #. type: enumerate -#: doc/guix.texi:555 -msgid "" -"To use substitutes from @code{hydra.gnu.org} or one of its mirrors " -"(@pxref{Substitutes}), authorize them:" -msgstr "" -"Pour utiliser les substituts de @code{hydra.gnu.org} ou l'un de ses mirroirs " -"(@pxref{Substituts}), autorisez-les :" +#: doc/guix.texi:557 +msgid "To use substitutes from @code{hydra.gnu.org} or one of its mirrors (@pxref{Substitutes}), authorize them:" +msgstr "Pour utiliser les substituts de @code{hydra.gnu.org} ou l'un de ses mirroirs (@pxref{Substituts}), autorisez-les :" #. type: example -#: doc/guix.texi:558 +#: doc/guix.texi:560 #, no-wrap msgid "# guix archive --authorize < ~root/.guix-profile/share/guix/hydra.gnu.org.pub\n" -msgstr "" +msgstr "# guix archive --authorize < ~root/.guix-profile/share/guix/hydra.gnu.org.pub\n" #. type: enumerate -#: doc/guix.texi:563 -msgid "" -"Each user may need to perform a few additional steps to make their Guix " -"environment ready for use, @pxref{Application Setup}." -msgstr "" +#: doc/guix.texi:565 +msgid "Each user may need to perform a few additional steps to make their Guix environment ready for use, @pxref{Application Setup}." +msgstr "Chaque utilisateur peut avoir besoin d'effectuer des étapes supplémentaires pour que leur environnement Guix soit prêt à être utilisé, @pxref{Application Setup}." #. type: Plain text -#: doc/guix.texi:566 +#: doc/guix.texi:568 msgid "Voilà, the installation is complete!" -msgstr "" +msgstr "Voilà, l'installation est terminée !" #. type: Plain text -#: doc/guix.texi:569 -msgid "" -"You can confirm that Guix is working by installing a sample package into the " -"root profile:" -msgstr "" +#: doc/guix.texi:571 +msgid "You can confirm that Guix is working by installing a sample package into the root profile:" +msgstr "Vous pouvez confirmer que Guix fonctionne en installant un paquet d'exemple dans le profil de root :" #. type: example -#: doc/guix.texi:572 +#: doc/guix.texi:574 #, no-wrap msgid "# guix package -i hello\n" -msgstr "" +msgstr "# guix package -i hello\n" #. type: Plain text -#: doc/guix.texi:579 -msgid "" -"The @code{guix} package must remain available in @code{root}'s profile, or " -"it would become subject to garbage collection---in which case you would find " -"yourself badly handicapped by the lack of the @command{guix} command. In " -"other words, do not remove @code{guix} by running @code{guix package -r " -"guix}." -msgstr "" +#: doc/guix.texi:581 +msgid "The @code{guix} package must remain available in @code{root}'s profile, or it would become subject to garbage collection---in which case you would find yourself badly handicapped by the lack of the @command{guix} command. In other words, do not remove @code{guix} by running @code{guix package -r guix}." +msgstr "Le paquet @code{guix} doit rester disponible dans le profil de @code{root} ou il pourrait être sujet au ramassage de miettes — dans ce cas vous vous retrouveriez gravement handicapé par l'absence de la commande @command{guix}. En d'autres termes, ne supprimez pas @code{guix} en lançant @code{guix package -r guix}." #. type: Plain text -#: doc/guix.texi:582 -msgid "" -"The binary installation tarball can be (re)produced and verified simply by " -"running the following command in the Guix source tree:" -msgstr "" +#: doc/guix.texi:584 +msgid "The binary installation tarball can be (re)produced and verified simply by running the following command in the Guix source tree:" +msgstr "L'archive d'installation binaire peut être (re)produite et vérifiée simplement en lançaint la commande suivante dans l'arborescence des sources de Guix :" #. type: example -#: doc/guix.texi:585 +#: doc/guix.texi:587 #, no-wrap msgid "make guix-binary.@var{system}.tar.xz\n" -msgstr "" +msgstr "make guix-binary.@var{system}.tar.xz\n" #. type: Plain text -#: doc/guix.texi:589 +#: doc/guix.texi:591 msgid "... which, in turn, runs:" -msgstr "" +msgstr "… ce qui à son tour lance :" #. type: example -#: doc/guix.texi:592 +#: doc/guix.texi:594 #, no-wrap msgid "guix pack -s @var{system} --localstatedir guix\n" -msgstr "" +msgstr "guix pack -s @var{system} --localstatedir guix\n" #. type: Plain text -#: doc/guix.texi:595 +#: doc/guix.texi:597 msgid "@xref{Invoking guix pack}, for more info on this handy tool." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:603 -msgid "" -"This section lists requirements when building Guix from source. The build " -"procedure for Guix is the same as for other GNU software, and is not covered " -"here. Please see the files @file{README} and @file{INSTALL} in the Guix " -"source tree for additional details." -msgstr "" +msgstr "@xref{Invoking guix pack}, pour plus d'info sur cet outil pratique." #. type: Plain text #: doc/guix.texi:605 +msgid "This section lists requirements when building Guix from source. The build procedure for Guix is the same as for other GNU software, and is not covered here. Please see the files @file{README} and @file{INSTALL} in the Guix source tree for additional details." +msgstr "Cette section dresse la liste des pré-requis pour la construction de Guix depuis les sources. La procédure de construction pour Guix est la même que pour les autres logiciels GNU, et n'est pas expliquée ici. Regardez les fichiers @file{README} et @file{INSTALL} dans l'arborescence des sources de Guix pour plus de détails." + +#. type: Plain text +#: doc/guix.texi:607 msgid "GNU Guix depends on the following packages:" -msgstr "" +msgstr "GNU Guix dépend des paquets suivants :" #. type: item -#: doc/guix.texi:607 +#: doc/guix.texi:609 #, no-wrap msgid "@url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.13 or" -msgstr "" +msgstr "@url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.13 ou" #. type: itemize -#: doc/guix.texi:609 +#: doc/guix.texi:611 msgid "later, including 2.2.x;" -msgstr "" +msgstr "ultérieure, dont 2.2.x," #. type: item -#: doc/guix.texi:609 +#: doc/guix.texi:611 #, no-wrap msgid "@url{http://gnupg.org/, GNU libgcrypt};" -msgstr "" +msgstr "@url{http://gnupg.org/, GNU libgcrypt}," #. type: itemize -#: doc/guix.texi:614 -msgid "" -"@uref{http://gnutls.org/, GnuTLS}, specifically its Guile bindings " -"(@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, " -"gnutls-guile, GnuTLS-Guile});" -msgstr "" +#: doc/guix.texi:616 +msgid "@uref{http://gnutls.org/, GnuTLS}, specifically its Guile bindings (@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile});" +msgstr "@uref{http://gnutls.org/, GnuTLS}, en particulier ses liaisons Guile (@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile})," #. type: itemize -#: doc/guix.texi:618 -msgid "" -"@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August 2017 " -"or later;" -msgstr "" +#: doc/guix.texi:619 +msgid "@uref{https://notabug.org/civodul/guile-sqlite3, Guile-SQLite3};" +msgstr "@uref{https://notabug.org/civodul/guile-sqlite3, Guile-SQLite3} ;" + +#. type: itemize +#: doc/guix.texi:623 +msgid "@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August 2017 or later;" +msgstr "@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, d'août 2017 ou ultérieur," #. type: item -#: doc/guix.texi:618 +#: doc/guix.texi:623 #, no-wrap msgid "@url{http://zlib.net, zlib};" -msgstr "" +msgstr "@url{http://zlib.net, zlib}," #. type: item -#: doc/guix.texi:619 +#: doc/guix.texi:624 #, no-wrap msgid "@url{http://www.gnu.org/software/make/, GNU Make}." -msgstr "" +msgstr "@url{http://www.gnu.org/software/make/, GNU Make}." #. type: Plain text -#: doc/guix.texi:623 +#: doc/guix.texi:628 msgid "The following dependencies are optional:" -msgstr "" +msgstr "Les dépendances suivantes sont facultatives :" #. type: itemize -#: doc/guix.texi:631 -msgid "" -"Installing @url{http://savannah.nongnu.org/projects/guile-json/, Guile-JSON} " -"will allow you to use the @command{guix import pypi} command " -"(@pxref{Invoking guix import}). It is of interest primarily for developers " -"and not for casual users." -msgstr "" +#: doc/guix.texi:636 +msgid "Installing @url{http://savannah.nongnu.org/projects/guile-json/, Guile-JSON} will allow you to use the @command{guix import pypi} command (@pxref{Invoking guix import}). It is of interest primarily for developers and not for casual users." +msgstr "Installer @url{http://savannah.nongnu.org/projects/guile-json/, Guile-JSON} vous permettra d'utiliser la commande @command{guix import pypi} (@pxref{Invoking guix import}). Il est surtout utile pour les développeurs et pas pour les utilisateurs occasionnels." #. type: itemize -#: doc/guix.texi:638 -msgid "" -"Support for build offloading (@pxref{Daemon Offload Setup}) and " -"@command{guix copy} (@pxref{Invoking guix copy}) depends on @uref{https://" -"github.com/artyom-poptsov/guile-ssh, Guile-SSH}, version 0.10.2 or later." -msgstr "" +#: doc/guix.texi:643 +msgid "Support for build offloading (@pxref{Daemon Offload Setup}) and @command{guix copy} (@pxref{Invoking guix copy}) depends on @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH}, version 0.10.2 or later." +msgstr "Le support pour la décharge de construction (@pxref{Daemon Offload Setup}) et @command{guix copy} (@pxref{Invoking guix copy}) dépend de @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH}, version 0.10.2 ou ulltérieure." #. type: itemize -#: doc/guix.texi:642 -msgid "" -"When @url{http://www.bzip.org, libbz2} is available, @command{guix-daemon} " -"can use it to compress build logs." -msgstr "" +#: doc/guix.texi:647 +msgid "When @url{http://www.bzip.org, libbz2} is available, @command{guix-daemon} can use it to compress build logs." +msgstr "Lorsque @url{http://www.bzip.org, libbz2} est disponible, @command{guix-daemon} peut l'utiliser pour compresser les journaux de construction." #. type: Plain text -#: doc/guix.texi:646 -msgid "" -"Unless @code{--disable-daemon} was passed to @command{configure}, the " -"following packages are also needed:" -msgstr "" - -#. type: item -#: doc/guix.texi:648 -#, no-wrap -msgid "@url{http://sqlite.org, SQLite 3};" -msgstr "" - -#. type: item -#: doc/guix.texi:649 -#, no-wrap -msgid "@url{http://gcc.gnu.org, GCC's g++}, with support for the" -msgstr "" - -#. type: itemize #: doc/guix.texi:651 -msgid "C++11 standard." -msgstr "" +msgid "Unless @code{--disable-daemon} was passed to @command{configure}, the following packages are also needed:" +msgstr "À moins que @code{--disable-daemon} ne soit passé à @command{configure}, les paquets suivants sont aussi requis :" -#. type: cindex +#. type: item #: doc/guix.texi:653 #, no-wrap -msgid "state directory" -msgstr "" +msgid "@url{http://sqlite.org, SQLite 3};" +msgstr "@url{http://sqlite.org, SQLite 3}," -#. type: Plain text -#: doc/guix.texi:661 -msgid "" -"When configuring Guix on a system that already has a Guix installation, be " -"sure to specify the same state directory as the existing installation using " -"the @code{--localstatedir} option of the @command{configure} script " -"(@pxref{Directory Variables, @code{localstatedir},, standards, GNU Coding " -"Standards}). The @command{configure} script protects against unintended " -"misconfiguration of @var{localstatedir} so you do not inadvertently corrupt " -"your store (@pxref{The Store})." -msgstr "" +#. type: item +#: doc/guix.texi:654 +#, no-wrap +msgid "@url{http://gcc.gnu.org, GCC's g++}, with support for the" +msgstr "@url{http://gcc.gnu.org, GCC's g++}, avec le support pour le" + +#. type: itemize +#: doc/guix.texi:656 +msgid "C++11 standard." +msgstr "standard C++11." #. type: cindex -#: doc/guix.texi:662 +#: doc/guix.texi:658 +#, no-wrap +msgid "state directory" +msgstr "répertoire d'état" + +#. type: Plain text +#: doc/guix.texi:666 +msgid "When configuring Guix on a system that already has a Guix installation, be sure to specify the same state directory as the existing installation using the @code{--localstatedir} option of the @command{configure} script (@pxref{Directory Variables, @code{localstatedir},, standards, GNU Coding Standards}). The @command{configure} script protects against unintended misconfiguration of @var{localstatedir} so you do not inadvertently corrupt your store (@pxref{The Store})." +msgstr "Lorsque vous configurez Guix sur un système qui a déjà une installation de Guix, assurez-vous de spécifier le même répertoire d'état que l'installation existante avec l'option @code{--localstatedir} du script @command{configure} (@pxref{Directory Variables, @code{localstatedir},, standards, GNU Coding Standards}). Le script @command{configure} vous protège des mauvaises configurations involontaires de @var{localstatedir} pour éviter que vous ne corrompiez votre dépôt (@pxref{The Store})." + +#. type: cindex +#: doc/guix.texi:667 #, no-wrap msgid "Nix, compatibility" -msgstr "" +msgstr "Nix, compatibilité" #. type: Plain text -#: doc/guix.texi:667 -msgid "" -"When a working installation of @url{http://nixos.org/nix/, the Nix package " -"manager} is available, you can instead configure Guix with @code{--disable-" -"daemon}. In that case, Nix replaces the three dependencies above." -msgstr "" +#: doc/guix.texi:672 +msgid "When a working installation of @url{http://nixos.org/nix/, the Nix package manager} is available, you can instead configure Guix with @code{--disable-daemon}. In that case, Nix replaces the three dependencies above." +msgstr "Lorsque vous avez une installation fonctionnelle du @url{http://nixos.org/nix/, gestionnaire de paquets Nix}, vous pouvez configurer Guix avec @code{--disable-daemon}. Dan ce cas, Nix remplace les trois dépendances au dessus." #. type: Plain text -#: doc/guix.texi:677 -msgid "" -"Guix is compatible with Nix, so it is possible to share the same store " -"between both. To do so, you must pass @command{configure} not only the same " -"@code{--with-store-dir} value, but also the same @code{--localstatedir} " -"value. The latter is essential because it specifies where the database that " -"stores metadata about the store is located, among other things. The default " -"values for Nix are @code{--with-store-dir=/nix/store} and @code{--" -"localstatedir=/nix/var}. Note that @code{--disable-daemon} is not required " -"if your goal is to share the store with Nix." -msgstr "" +#: doc/guix.texi:682 +msgid "Guix is compatible with Nix, so it is possible to share the same store between both. To do so, you must pass @command{configure} not only the same @code{--with-store-dir} value, but also the same @code{--localstatedir} value. The latter is essential because it specifies where the database that stores metadata about the store is located, among other things. The default values for Nix are @code{--with-store-dir=/nix/store} and @code{--localstatedir=/nix/var}. Note that @code{--disable-daemon} is not required if your goal is to share the store with Nix." +msgstr "Guix est compatible avec Nix, donc il est possible de partager le même dépôt entre les deux. Pour cela, vous devez passer à @command{configure} non seulement la même valeur de @code{--with-store-dir} mais aussi la même valeur de @code{--localstatedir}. Cette dernière est nécessaires car elle spécifie l'emplacement de la base de données qui stocke les métadonnées sur le dépôt, entre autres choses. Les valeurs par défaut pour Nix sont @code{--with-store-dir=/nix/store} et @code{--localstatedir=/nix/var}. Remarquez que @code{--disable-daemon} n'est pas requis si votre but est de partager le dépôt avec Nix." #. type: cindex -#: doc/guix.texi:681 +#: doc/guix.texi:686 #, no-wrap msgid "test suite" -msgstr "" +msgstr "suite de tests" #. type: Plain text -#: doc/guix.texi:687 -msgid "" -"After a successful @command{configure} and @code{make} run, it is a good " -"idea to run the test suite. It can help catch issues with the setup or " -"environment, or bugs in Guix itself---and really, reporting test failures is " -"a good way to help improve the software. To run the test suite, type:" -msgstr "" +#: doc/guix.texi:692 +msgid "After a successful @command{configure} and @code{make} run, it is a good idea to run the test suite. It can help catch issues with the setup or environment, or bugs in Guix itself---and really, reporting test failures is a good way to help improve the software. To run the test suite, type:" +msgstr "Après avoir lancé @command{configure} et @code{make} correctement, c'est une bonne idée de lancer la suite de tests. Elle peut aider à trouver des erreurs avec la configuration ou l'environnement, ou des bogues dans Guix lui-même — et vraiment, rapporter des échecs de tests est une bonne manière d'aider à améliorer le logiciel. Pour lancer la suite de tests, tapez :" #. type: example -#: doc/guix.texi:690 +#: doc/guix.texi:695 #, no-wrap msgid "make check\n" -msgstr "" +msgstr "make check\n" #. type: Plain text -#: doc/guix.texi:697 -msgid "" -"Test cases can run in parallel: you can use the @code{-j} option of GNU@tie{}" -"make to speed things up. The first run may take a few minutes on a recent " -"machine; subsequent runs will be faster because the store that is created " -"for test purposes will already have various things in cache." -msgstr "" +#: doc/guix.texi:702 +msgid "Test cases can run in parallel: you can use the @code{-j} option of GNU@tie{}make to speed things up. The first run may take a few minutes on a recent machine; subsequent runs will be faster because the store that is created for test purposes will already have various things in cache." +msgstr "Les cas de tests peuvent être lancés en parallèle : vous pouvez utiliser l'option @code{-j} de GNU@tie{}make pour accélérer les choses. Le premier lancement peut prendre plusieurs minutes sur une machine récente ; les lancements suivants seront plus rapides car le dépôt créé pour les tests aura déjà plusieurs choses en cache." #. type: Plain text -#: doc/guix.texi:700 -msgid "" -"It is also possible to run a subset of the tests by defining the " -"@code{TESTS} makefile variable as in this example:" -msgstr "" +#: doc/guix.texi:705 +msgid "It is also possible to run a subset of the tests by defining the @code{TESTS} makefile variable as in this example:" +msgstr "Il est aussi possible de lancer un sous-ensemble des tests en définissant la variable makefile @code{TESTS} comme dans cet exemple :" #. type: example -#: doc/guix.texi:703 +#: doc/guix.texi:708 #, no-wrap msgid "make check TESTS=\"tests/store.scm tests/cpio.scm\"\n" -msgstr "" +msgstr "make check TESTS=\"tests/store.scm tests/cpio.scm\"\n" #. type: Plain text -#: doc/guix.texi:708 -msgid "" -"By default, tests results are displayed at a file level. In order to see " -"the details of every individual test cases, it is possible to define the " -"@code{SCM_LOG_DRIVER_FLAGS} makefile variable as in this example:" -msgstr "" +#: doc/guix.texi:713 +msgid "By default, tests results are displayed at a file level. In order to see the details of every individual test cases, it is possible to define the @code{SCM_LOG_DRIVER_FLAGS} makefile variable as in this example:" +msgstr "Par défaut, les résultats des tests sont affichés au niveau du fichier. Pour voir les détails de chaque cas de test individuel, il est possible de définire la variable makefile @code{SCM_LOG_DRIVER_FLAGS} comme dans cet exemple :" #. type: example -#: doc/guix.texi:711 +#: doc/guix.texi:716 #, no-wrap msgid "make check TESTS=\"tests/base64.scm\" SCM_LOG_DRIVER_FLAGS=\"--brief=no\"\n" -msgstr "" +msgstr "make check TESTS=\"tests/base64.scm\" SCM_LOG_DRIVER_FLAGS=\"--brief=no\"\n" #. type: Plain text -#: doc/guix.texi:717 -msgid "" -"Upon failure, please email @email{bug-guix@@gnu.org} and attach the " -"@file{test-suite.log} file. Please specify the Guix version being used as " -"well as version numbers of the dependencies (@pxref{Requirements}) in your " -"message." -msgstr "" +#: doc/guix.texi:722 +msgid "Upon failure, please email @email{bug-guix@@gnu.org} and attach the @file{test-suite.log} file. Please specify the Guix version being used as well as version numbers of the dependencies (@pxref{Requirements}) in your message." +msgstr "Après un échec, envoyez un courriel à @email{bug-guix@@gnu.org} et attachez le fichier @file{test-suite.log}. Précisez la version de Guix utilisée ainsi que les numéros de version de ses dépendances (@pxref{Requirements}) dans votre message." #. type: Plain text -#: doc/guix.texi:721 -msgid "" -"Guix also comes with a whole-system test suite that tests complete GuixSD " -"operating system instances. It can only run on systems where Guix is " -"already installed, using:" -msgstr "" +#: doc/guix.texi:726 +msgid "Guix also comes with a whole-system test suite that tests complete GuixSD operating system instances. It can only run on systems where Guix is already installed, using:" +msgstr "Guix possède aussi une suite de tests de systèmes complets qui test des instances complètes du système d'exploitation GuixSD@. Elle ne peut être lancée qui sur un système où Guix est déjà installé, avec :" #. type: example -#: doc/guix.texi:724 +#: doc/guix.texi:729 #, no-wrap msgid "make check-system\n" -msgstr "" +msgstr "make check-system\n" #. type: Plain text -#: doc/guix.texi:728 +#: doc/guix.texi:733 msgid "or, again, by defining @code{TESTS} to select a subset of tests to run:" -msgstr "" +msgstr "Ou, de nouveau, en définissant @code{TESTS} pour choisir un sous-ensemble des tests à lancer :" #. type: example -#: doc/guix.texi:731 +#: doc/guix.texi:736 #, no-wrap msgid "make check-system TESTS=\"basic mcron\"\n" -msgstr "" +msgstr "make check-system TESTS=\"basic mcron\"\n" #. type: Plain text -#: doc/guix.texi:739 -msgid "" -"These system tests are defined in the @code{(gnu tests @dots{})} modules. " -"They work by running the operating systems under test with lightweight " -"instrumentation in a virtual machine (VM). They can be computationally " -"intensive or rather cheap, depending on whether substitutes are available " -"for their dependencies (@pxref{Substitutes}). Some of them require a lot of " -"storage space to hold VM images." -msgstr "" -"Ces tests systèmes sont définis dans les modules @code{(gnu tests @dots{})}. " -"Ils fonctionnent en lançant les systèmes d'exploitation sous test avec une " -"instrumentation légère dans une machine virtuelle (VM). Ils peuvent être " -"intenses en terme de calculs ou plutôt rapides en fonction de la " -"disponibilité des substituts de leurs dépendances (@pxref{Substituts}). " -"Certains requièrent beaucoup d'espace disque pour contenir les images des VM." +#: doc/guix.texi:744 +msgid "These system tests are defined in the @code{(gnu tests @dots{})} modules. They work by running the operating systems under test with lightweight instrumentation in a virtual machine (VM). They can be computationally intensive or rather cheap, depending on whether substitutes are available for their dependencies (@pxref{Substitutes}). Some of them require a lot of storage space to hold VM images." +msgstr "Ces tests systèmes sont définis dans les modules @code{(gnu tests @dots{})}. Ils fonctionnent en lançant les systèmes d'exploitation sous test avec une instrumentation légère dans une machine virtuelle (VM). Ils peuvent être intenses en terme de calculs ou plutôt rapides en fonction de la disponibilité des substituts de leurs dépendances (@pxref{Substituts}). Certains requièrent beaucoup d'espace disque pour contenir les images des VM@." #. type: Plain text -#: doc/guix.texi:742 -msgid "" -"Again in case of test failures, please send @email{bug-guix@@gnu.org} all " -"the details." -msgstr "" +#: doc/guix.texi:747 +msgid "Again in case of test failures, please send @email{bug-guix@@gnu.org} all the details." +msgstr "De nouveau, en cas d'échec, envoyez tous les détails à @email{bug-guix@@gnu.org}." #. type: cindex -#: doc/guix.texi:746 +#: doc/guix.texi:751 #, no-wrap msgid "daemon" -msgstr "" +msgstr "démon" #. type: Plain text -#: doc/guix.texi:754 -msgid "" -"Operations such as building a package or running the garbage collector are " -"all performed by a specialized process, the @dfn{build daemon}, on behalf of " -"clients. Only the daemon may access the store and its associated database. " -"Thus, any operation that manipulates the store goes through the daemon. For " -"instance, command-line tools such as @command{guix package} and " -"@command{guix build} communicate with the daemon (@i{via} remote procedure " -"calls) to instruct it what to do." -msgstr "" +#: doc/guix.texi:759 +msgid "Operations such as building a package or running the garbage collector are all performed by a specialized process, the @dfn{build daemon}, on behalf of clients. Only the daemon may access the store and its associated database. Thus, any operation that manipulates the store goes through the daemon. For instance, command-line tools such as @command{guix package} and @command{guix build} communicate with the daemon (@i{via} remote procedure calls) to instruct it what to do." +msgstr "Les opérations comme la construction d'un paquet ou le lancement du ramasse-miettes sont toutes effectuées par un processus spécialisé, le @dfn{démon de construction}, pour le compte des clients. Seul le démon peut accéder au dépôt et à sa base de données associée. Ainsi, toute opération manipulant le dépôt passe par le démon. Par exemple, les outils en ligne de commande comme @command{guix package} et @command{guix build} communiquent avec le démon (@i{via} des appels de procédures distantes) pour lui dire quoi faire." #. type: Plain text -#: doc/guix.texi:758 -msgid "" -"The following sections explain how to prepare the build daemon's " -"environment. See also @ref{Substitutes}, for information on how to allow " -"the daemon to download pre-built binaries." -msgstr "" -"Les sections suivantes expliquent comment préparer l'environnement du démon " -"de construction. Voir aussi @ref{Substituts} pour apprendre comment " -"permettre le téléchargement de binaires pré-construits." +#: doc/guix.texi:763 +msgid "The following sections explain how to prepare the build daemon's environment. See also @ref{Substitutes}, for information on how to allow the daemon to download pre-built binaries." +msgstr "Les sections suivantes expliquent comment préparer l'environnement du démon de construction. Voir aussi @ref{Substituts} pour apprendre comment permettre le téléchargement de binaires pré-construits." #. type: cindex -#: doc/guix.texi:768 doc/guix.texi:1193 +#: doc/guix.texi:773 doc/guix.texi:1198 #, no-wrap msgid "build environment" -msgstr "" +msgstr "environnement de construction" #. type: Plain text -#: doc/guix.texi:776 -msgid "" -"In a standard multi-user setup, Guix and its daemon---the @command{guix-" -"daemon} program---are installed by the system administrator; @file{/gnu/" -"store} is owned by @code{root} and @command{guix-daemon} runs as " -"@code{root}. Unprivileged users may use Guix tools to build packages or " -"otherwise access the store, and the daemon will do it on their behalf, " -"ensuring that the store is kept in a consistent state, and allowing built " -"packages to be shared among users." -msgstr "" +#: doc/guix.texi:781 +msgid "In a standard multi-user setup, Guix and its daemon---the @command{guix-daemon} program---are installed by the system administrator; @file{/gnu/store} is owned by @code{root} and @command{guix-daemon} runs as @code{root}. Unprivileged users may use Guix tools to build packages or otherwise access the store, and the daemon will do it on their behalf, ensuring that the store is kept in a consistent state, and allowing built packages to be shared among users." +msgstr "Dans une installation standard multi-utilisateurs, Guix et son démon — le programme @command{guix-daemon} — sont installé par l'administrateur système ; @file{/gnu/store} appartient à @code{root} et @command{guix-daemon} est lancé en @code{root}. Les utilisateurs non-privilégiés peuvent utiliser les outils Guix pour construire des paquets ou accéder au dépôt et le démon le fera pour leur compte en s'assurant que le dépôt garde un état cohérent et permet le partage des paquets déjà construits entre les utilisateurs." #. type: cindex -#: doc/guix.texi:777 +#: doc/guix.texi:782 #, no-wrap msgid "build users" -msgstr "" +msgstr "utilisateurs de construction" #. type: Plain text -#: doc/guix.texi:788 -msgid "" -"When @command{guix-daemon} runs as @code{root}, you may not want package " -"build processes themselves to run as @code{root} too, for obvious security " -"reasons. To avoid that, a special pool of @dfn{build users} should be " -"created for use by build processes started by the daemon. These build users " -"need not have a shell and a home directory: they will just be used when the " -"daemon drops @code{root} privileges in build processes. Having several such " -"users allows the daemon to launch distinct build processes under separate " -"UIDs, which guarantees that they do not interfere with each other---an " -"essential feature since builds are regarded as pure functions " -"(@pxref{Introduction})." -msgstr "" +#: doc/guix.texi:793 +msgid "When @command{guix-daemon} runs as @code{root}, you may not want package build processes themselves to run as @code{root} too, for obvious security reasons. To avoid that, a special pool of @dfn{build users} should be created for use by build processes started by the daemon. These build users need not have a shell and a home directory: they will just be used when the daemon drops @code{root} privileges in build processes. Having several such users allows the daemon to launch distinct build processes under separate UIDs, which guarantees that they do not interfere with each other---an essential feature since builds are regarded as pure functions (@pxref{Introduction})." +msgstr "Alors que @command{guix-daemon} tourne en @code{root}, vous n'avez pas forcément envie que les processus de construction de paquets tournent aussi en @code{root}, pour des raisons de sécurité évidentes. Pour éviter cela, vous devriez créer une réserve spéciale d'@dfn{utilisateurs de construction} que les processus de construction démarrés par le démon utiliseront. Ces utilisateurs de construction n'ont pas besoin d'un shell ou d'un répertoire personnel ; ils seront seulement utilisés quand le démon délaissera ses privilèges @code{root} dans les processus de construction. En ayant plusieurs de ces utilisateurs, vous permettez au démon de lancer des processus de construction distincts sous des UID différent, ce qui garanti qu'aucune interférence n'ait lieu entre les uns et les autres — une fonctionnalité essentielle puisque les constructions sont supposées être des fonctions pures (@pxref{Introduction})." #. type: Plain text -#: doc/guix.texi:791 -msgid "" -"On a GNU/Linux system, a build user pool may be created like this (using " -"Bash syntax and the @code{shadow} commands):" -msgstr "" +#: doc/guix.texi:796 +msgid "On a GNU/Linux system, a build user pool may be created like this (using Bash syntax and the @code{shadow} commands):" +msgstr "Sur un système GNU/Linux, on peut créer une réserve d'utilisateurs de construction comme ceci (avec la syntaxe Bash et les commandes @code{shadow}) :" #. type: example -#: doc/guix.texi:803 +#: doc/guix.texi:808 #, no-wrap msgid "" "# groupadd --system guixbuild\n" @@ -3910,172 +3130,123 @@ msgid "" " guixbuilder$i;\n" " done\n" msgstr "" +"# groupadd --system guixbuild\n" +"# for i in `seq -w 1 10`;\n" +" do\n" +" useradd -g guixbuild -G guixbuild \\\n" +" -d /var/empty -s `which nologin` \\\n" +" -c \"Utilisateur de construction Guix $i\" --system \\\n" +" guixbuilder$i;\n" +" done\n" #. type: Plain text -#: doc/guix.texi:813 -msgid "" -"The number of build users determines how many build jobs may run in " -"parallel, as specified by the @option{--max-jobs} option (@pxref{Invoking " -"guix-daemon, @option{--max-jobs}}). To use @command{guix system vm} and " -"related commands, you may need to add the build users to the @code{kvm} " -"group so they can access @file{/dev/kvm}, using @code{-G guixbuild,kvm} " -"instead of @code{-G guixbuild} (@pxref{Invoking guix system})." -msgstr "" +#: doc/guix.texi:818 +msgid "The number of build users determines how many build jobs may run in parallel, as specified by the @option{--max-jobs} option (@pxref{Invoking guix-daemon, @option{--max-jobs}}). To use @command{guix system vm} and related commands, you may need to add the build users to the @code{kvm} group so they can access @file{/dev/kvm}, using @code{-G guixbuild,kvm} instead of @code{-G guixbuild} (@pxref{Invoking guix system})." +msgstr "Le nombre d'utilisateurs de construction détermine le nombre de tâches de constructions qui peuvent tourner en parallèle, tel que spécifié par l'option @option{--max-jobs} (@pxref{Invoking guix-daemon, @option{--max-jobs}}). Pour utiliser @command{guix system vm} et les commandes liées, vous devrez ajouter les utilisateurs de construction au groupe @code{kvm} pour qu'ils puissent accéder à @file{/dev/kvm} avec @code{-G guixbuild,kvm} plutôt que @code{-G guixbuild} (@pxref{Invoking guix system})." #. type: Plain text -#: doc/guix.texi:822 -msgid "" -"The @code{guix-daemon} program may then be run as @code{root} with the " -"following command@footnote{If your machine uses the systemd init system, " -"dropping the @file{@var{prefix}/lib/systemd/system/guix-daemon.service} file " -"in @file{/etc/systemd/system} will ensure that @command{guix-daemon} is " -"automatically started. Similarly, if your machine uses the Upstart init " -"system, drop the @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} " -"file in @file{/etc/init}.}:" -msgstr "" +#: doc/guix.texi:827 +msgid "The @code{guix-daemon} program may then be run as @code{root} with the following command@footnote{If your machine uses the systemd init system, dropping the @file{@var{prefix}/lib/systemd/system/guix-daemon.service} file in @file{/etc/systemd/system} will ensure that @command{guix-daemon} is automatically started. Similarly, if your machine uses the Upstart init system, drop the @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} file in @file{/etc/init}.}:" +msgstr "Le programme @code{guix-daemon} peut ensuite être lancé en @code{root} avec la commande suivante@footnote{Si votre machine utilise le système d'initialisation systemd, copiez le fichier @file{@var{prefix}/lib/systemd/system/guix-daemon.service} dans @file{/etc/systemd/system} pour vous assurer que @command{guix-daemon} est démarré automatiquement. De même, si votre machine utilise le système d'initialisation Upstart, copiez le fichier @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} dans @file{/etc/init}.} :" #. type: example -#: doc/guix.texi:825 doc/guix.texi:1186 +#: doc/guix.texi:830 doc/guix.texi:1191 #, no-wrap msgid "# guix-daemon --build-users-group=guixbuild\n" -msgstr "" +msgstr "# guix-daemon --build-users-group=guixbuild\n" #. type: cindex -#: doc/guix.texi:827 doc/guix.texi:1191 +#: doc/guix.texi:832 doc/guix.texi:1196 #, no-wrap msgid "chroot" -msgstr "" +msgstr "chroot" #. type: Plain text -#: doc/guix.texi:832 -msgid "" -"This way, the daemon starts build processes in a chroot, under one of the " -"@code{guixbuilder} users. On GNU/Linux, by default, the chroot environment " -"contains nothing but:" -msgstr "" +#: doc/guix.texi:837 +msgid "This way, the daemon starts build processes in a chroot, under one of the @code{guixbuilder} users. On GNU/Linux, by default, the chroot environment contains nothing but:" +msgstr "De cette façon, le démon démarre les processus de construction dans un chroot, sous un des utilisateurs @code{guixbuilder}. Sur GNU/Linux par défaut, l'environnement chroot ne contient rien d'autre que :" #. type: itemize -#: doc/guix.texi:840 -msgid "" -"a minimal @code{/dev} directory, created mostly independently from the host " -"@code{/dev}@footnote{``Mostly'', because while the set of files that appear " -"in the chroot's @code{/dev} is fixed, most of these files can only be " -"created if the host has them.};" -msgstr "" +#: doc/guix.texi:845 +msgid "a minimal @code{/dev} directory, created mostly independently from the host @code{/dev}@footnote{``Mostly'', because while the set of files that appear in the chroot's @code{/dev} is fixed, most of these files can only be created if the host has them.};" +msgstr "un répertoire @code{/dev} minimal, créé presque indépendamment du @code{/dev} de l'hôte@footnote{« presque », parce que même si l'ensemble des fichiers qui apparaissent dans le @code{/dev} du chroot sont déterminés à l'avance, la plupart de ces fichiers ne peut pas être créée si l'hôte ne les a pas.} ;" #. type: itemize -#: doc/guix.texi:844 -msgid "" -"the @code{/proc} directory; it only shows the processes of the container " -"since a separate PID name space is used;" -msgstr "" +#: doc/guix.texi:849 +msgid "the @code{/proc} directory; it only shows the processes of the container since a separate PID name space is used;" +msgstr "le répertoire @code{/proc} ; il ne montre que les processus du conteneur car on utilise une espace de nom séparé pour les PID ;" #. type: itemize -#: doc/guix.texi:848 -msgid "" -"@file{/etc/passwd} with an entry for the current user and an entry for user " -"@file{nobody};" -msgstr "" +#: doc/guix.texi:853 +msgid "@file{/etc/passwd} with an entry for the current user and an entry for user @file{nobody};" +msgstr "@file{/etc/passwd} avec une entrée pour l'utilisateur actuel et une entrée pour l'utilisateur @file{nobody} ;" #. type: itemize -#: doc/guix.texi:851 +#: doc/guix.texi:856 msgid "@file{/etc/group} with an entry for the user's group;" -msgstr "" +msgstr "@file{/etc/group} avec une entrée pour le groupe de l'utilisateur ;" #. type: itemize -#: doc/guix.texi:855 -msgid "" -"@file{/etc/hosts} with an entry that maps @code{localhost} to " -"@code{127.0.0.1};" -msgstr "" +#: doc/guix.texi:860 +msgid "@file{/etc/hosts} with an entry that maps @code{localhost} to @code{127.0.0.1};" +msgstr "@file{/etc/hosts} avec une entrée qui fait correspondre @code{localhost} à @code{127.0.0.1} ;" #. type: itemize -#: doc/guix.texi:858 +#: doc/guix.texi:863 msgid "a writable @file{/tmp} directory." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:867 -msgid "" -"You can influence the directory where the daemon stores build trees @i{via} " -"the @code{TMPDIR} environment variable. However, the build tree within the " -"chroot is always called @file{/tmp/guix-build-@var{name}.drv-0}, where " -"@var{name} is the derivation name---e.g., @code{coreutils-8.24}. This way, " -"the value of @code{TMPDIR} does not leak inside build environments, which " -"avoids discrepancies in cases where build processes capture the name of " -"their build tree." -msgstr "" - -#. type: vindex -#: doc/guix.texi:868 doc/guix.texi:2411 -#, no-wrap -msgid "http_proxy" -msgstr "" +msgstr "un répertoire @file{/tmp} inscriptible." #. type: Plain text #: doc/guix.texi:872 -msgid "" -"The daemon also honors the @code{http_proxy} environment variable for HTTP " -"downloads it performs, be it for fixed-output derivations " -"(@pxref{Derivations}) or for substitutes (@pxref{Substitutes})." -msgstr "" -"Le démon tient aussi compte de la variable d'environnement @code{http_proxy} " -"pour ses téléchargements HTTP, que ce soit pour les dérivations à sortie " -"fixes (@pxref{Derivations}) ou pour les substituts (@pxref{Substituts})." +msgid "You can influence the directory where the daemon stores build trees @i{via} the @code{TMPDIR} environment variable. However, the build tree within the chroot is always called @file{/tmp/guix-build-@var{name}.drv-0}, where @var{name} is the derivation name---e.g., @code{coreutils-8.24}. This way, the value of @code{TMPDIR} does not leak inside build environments, which avoids discrepancies in cases where build processes capture the name of their build tree." +msgstr "Vous pouvez influencer le répertoire où le démon stocke les arbres de construction @i{via} la variable d'environnement @code{TMPDIR}. Cependant, l'arbre de construction dans le chroot sera toujours appelé @file{/tmp/guix-build-@var{nom}.drv-0}, où @var{nom} est le nom de la dérivation — p.@: ex.@: @code{coreutils-8.24}. De cette façon, la valeur de @code{TMPDIR} ne fuite pas à l'intérieur des environnements de construction, ce qui évite des différences lorsque le processus de construction retient le nom de leur répertoire de construction." + +#. type: vindex +#: doc/guix.texi:873 doc/guix.texi:2416 +#, no-wrap +msgid "http_proxy" +msgstr "http_proxy" #. type: Plain text -#: doc/guix.texi:880 -msgid "" -"If you are installing Guix as an unprivileged user, it is still possible to " -"run @command{guix-daemon} provided you pass @code{--disable-chroot}. " -"However, build processes will not be isolated from one another, and not from " -"the rest of the system. Thus, build processes may interfere with each " -"other, and may access programs, libraries, and other files available on the " -"system---making it much harder to view them as @emph{pure} functions." -msgstr "" +#: doc/guix.texi:877 +msgid "The daemon also honors the @code{http_proxy} environment variable for HTTP downloads it performs, be it for fixed-output derivations (@pxref{Derivations}) or for substitutes (@pxref{Substitutes})." +msgstr "Le démon tient aussi compte de la variable d'environnement @code{http_proxy} pour ses téléchargements HTTP, que ce soit pour les dérivations à sortie fixes (@pxref{Derivations}) ou pour les substituts (@pxref{Substituts})." + +#. type: Plain text +#: doc/guix.texi:885 +msgid "If you are installing Guix as an unprivileged user, it is still possible to run @command{guix-daemon} provided you pass @code{--disable-chroot}. However, build processes will not be isolated from one another, and not from the rest of the system. Thus, build processes may interfere with each other, and may access programs, libraries, and other files available on the system---making it much harder to view them as @emph{pure} functions." +msgstr "Si vous installez Guix en tant qu'utilisateur non-privilégié, il est toujours possible de lancer @command{guix-daemon} si vous passez @code{--disable-chroot}. Cependant, les processus de construction ne seront pas isolés les uns des autres ni du reste du système. Ainsi les processus de construction peuvent interférer les uns avec les autres, et peuvent accéder à des programmes, des bibliothèques et d'autres fichiers présents sur le système — ce qui rend plus difficile de les voir comme des fonctions @emph{pures}." #. type: subsection -#: doc/guix.texi:883 +#: doc/guix.texi:888 #, no-wrap msgid "Using the Offload Facility" -msgstr "" +msgstr "Utiliser le dispositif de déchargement" #. type: cindex -#: doc/guix.texi:885 +#: doc/guix.texi:890 #, no-wrap msgid "offloading" -msgstr "" +msgstr "déchargement" #. type: cindex -#: doc/guix.texi:886 doc/guix.texi:1247 +#: doc/guix.texi:891 doc/guix.texi:1252 #, no-wrap msgid "build hook" -msgstr "" +msgstr "crochet de construction" #. type: Plain text -#: doc/guix.texi:900 -msgid "" -"When desired, the build daemon can @dfn{offload} derivation builds to other " -"machines running Guix, using the @code{offload} @dfn{build hook}" -"@footnote{This feature is available only when @uref{https://github.com/" -"artyom-poptsov/guile-ssh, Guile-SSH} is present.}. When that feature is " -"enabled, a list of user-specified build machines is read from @file{/etc/" -"guix/machines.scm}; every time a build is requested, for instance via " -"@code{guix build}, the daemon attempts to offload it to one of the machines " -"that satisfy the constraints of the derivation, in particular its system " -"type---e.g., @file{x86_64-linux}. Missing prerequisites for the build are " -"copied over SSH to the target machine, which then proceeds with the build; " -"upon success the output(s) of the build are copied back to the initial " -"machine." -msgstr "" +#: doc/guix.texi:905 +msgid "When desired, the build daemon can @dfn{offload} derivation builds to other machines running Guix, using the @code{offload} @dfn{build hook}@footnote{This feature is available only when @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} is present.}. When that feature is enabled, a list of user-specified build machines is read from @file{/etc/guix/machines.scm}; every time a build is requested, for instance via @code{guix build}, the daemon attempts to offload it to one of the machines that satisfy the constraints of the derivation, in particular its system type---e.g., @file{x86_64-linux}. Missing prerequisites for the build are copied over SSH to the target machine, which then proceeds with the build; upon success the output(s) of the build are copied back to the initial machine." +msgstr "Si vous le souhaitez, le démon de construction peut @dfn{décharger} des constructions de dérivations sur d'autres machines Guix avec le @dfn{crochet de construction} @code{offload}@footnote{Cette fonctionnalité n'est disponible que si @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} est présent.}. Lorsque cette fonctionnalité est activée, Guix lit une liste de machines de constructions spécifiée par l'utilisateur dans @file{/etc/guix/machines.scm} ; à chaque fois qu'une construction est demandée, par exemple par @code{guix build}, le démon essaie de la décharger sur une des machines qui satisfont les contraintes de la dérivation, en particulier le type de système, p.@: ex.@: @file{x86_64-linux}. Les prérequis manquants pour la construction sont copiés par SSH sur la machine de construction qui procède ensuite à la construction ; si elle réussi, les sorties de la construction sont copiés vers la machine de départ." #. type: Plain text -#: doc/guix.texi:902 +#: doc/guix.texi:907 msgid "The @file{/etc/guix/machines.scm} file typically looks like this:" -msgstr "" +msgstr "Le fichier @file{/etc/guix/machines.scm} ressemble typiquement à cela :" #. type: example -#: doc/guix.texi:910 +#: doc/guix.texi:915 #, no-wrap msgid "" "(list (build-machine\n" @@ -4086,9 +3257,16 @@ msgid "" " (speed 2.)) ;incredibly fast!\n" "\n" msgstr "" +"(list (build-machine\n" +" (name \"eightysix.example.org\")\n" +" (system \"x86_64-linux\")\n" +" (host-key \"ssh-ed25519 AAAAC3Nza@dots{}\")\n" +" (user \"bob\")\n" +" (speed 2.)) ;très rapide !\n" +"\n" #. type: example -#: doc/guix.texi:919 +#: doc/guix.texi:924 #, no-wrap msgid "" " (build-machine\n" @@ -4100,2189 +3278,1643 @@ msgid "" " (string-append (getenv \"HOME\")\n" " \"/.ssh/identity-for-guix\"))))\n" msgstr "" +" (build-machine\n" +" (name \"meeps.example.org\")\n" +" (system \"mips64el-linux\")\n" +" (host-key \"ssh-rsa AAAAB3Nza@dots{}\")\n" +" (user \"alice\")\n" +" (private-key\n" +" (string-append (getenv \"HOME\")\n" +" \"/.ssh/identity-for-guix\"))))\n" #. type: Plain text -#: doc/guix.texi:925 -msgid "" -"In the example above we specify a list of two build machines, one for the " -"@code{x86_64} architecture and one for the @code{mips64el} architecture." -msgstr "" +#: doc/guix.texi:930 +msgid "In the example above we specify a list of two build machines, one for the @code{x86_64} architecture and one for the @code{mips64el} architecture." +msgstr "Dans l'exemple ci-dessus nous spécifions une liste de deux machines de construction, une pour l'architecture @code{x86_64} et une pour l'architecture @code{mips64el}." #. type: Plain text -#: doc/guix.texi:934 -msgid "" -"In fact, this file is---not surprisingly!---a Scheme file that is evaluated " -"when the @code{offload} hook is started. Its return value must be a list of " -"@code{build-machine} objects. While this example shows a fixed list of " -"build machines, one could imagine, say, using DNS-SD to return a list of " -"potential build machines discovered in the local network " -"(@pxref{Introduction, Guile-Avahi,, guile-avahi, Using Avahi in Guile Scheme " -"Programs}). The @code{build-machine} data type is detailed below." -msgstr "" +#: doc/guix.texi:939 +msgid "In fact, this file is---not surprisingly!---a Scheme file that is evaluated when the @code{offload} hook is started. Its return value must be a list of @code{build-machine} objects. While this example shows a fixed list of build machines, one could imagine, say, using DNS-SD to return a list of potential build machines discovered in the local network (@pxref{Introduction, Guile-Avahi,, guile-avahi, Using Avahi in Guile Scheme Programs}). The @code{build-machine} data type is detailed below." +msgstr "En fait, ce fichier est — et ça ne devrait pas vous surprendre ! — un fichier Scheme qui est évalué au démarrage du crochet @code{offload}. Sa valeur de retour doit être une liste d'objets @code{build-machine}. Même si cet exemple montre une liste fixée de machines de construction, on pourrait imaginer par exemple utiliser DNS-SD pour renvoyer une liste de machines de constructions potentielles découvertes sur le réseau local (@pxref{Introduction, Guile-Avahi,, guile-avahi, Using Avahi in Guile Scheme Programs}). Le type de données @code{build-machine} est détaillé plus bas." #. type: deftp -#: doc/guix.texi:935 +#: doc/guix.texi:940 #, no-wrap msgid "{Data Type} build-machine" -msgstr "" +msgstr "{Type de données} build-machine" #. type: deftp -#: doc/guix.texi:938 -msgid "" -"This data type represents build machines to which the daemon may offload " -"builds. The important fields are:" -msgstr "" +#: doc/guix.texi:943 +msgid "This data type represents build machines to which the daemon may offload builds. The important fields are:" +msgstr "Ce type de données représente les machines de construction sur lesquelles le démon peut décharger des constructions. Les champs importants sont :" #. type: code{#1} -#: doc/guix.texi:941 doc/guix.texi:3402 doc/guix.texi:9406 doc/guix.texi:9470 -#: doc/guix.texi:9565 doc/guix.texi:11000 doc/guix.texi:15037 -#: doc/guix.texi:15270 doc/guix.texi:15403 doc/guix.texi:15677 -#: doc/guix.texi:15718 doc/guix.texi:19663 doc/guix.texi:19680 -#: doc/guix.texi:19946 doc/guix.texi:21154 +#: doc/guix.texi:946 doc/guix.texi:3521 doc/guix.texi:9634 doc/guix.texi:9698 +#: doc/guix.texi:9793 doc/guix.texi:11267 doc/guix.texi:15402 +#: doc/guix.texi:15635 doc/guix.texi:15768 doc/guix.texi:16046 +#: doc/guix.texi:16087 doc/guix.texi:20147 doc/guix.texi:20164 +#: doc/guix.texi:20430 doc/guix.texi:21638 #, no-wrap msgid "name" -msgstr "" +msgstr "name" #. type: table -#: doc/guix.texi:943 +#: doc/guix.texi:948 msgid "The host name of the remote machine." -msgstr "" +msgstr "Le nom d'hôte de la machine distante." #. type: item -#: doc/guix.texi:944 +#: doc/guix.texi:949 #, no-wrap msgid "system" -msgstr "" - -#. type: table -#: doc/guix.texi:946 -msgid "The system type of the remote machine---e.g., @code{\"x86_64-linux\"}." -msgstr "" - -#. type: code{#1} -#: doc/guix.texi:947 doc/guix.texi:11010 -#, no-wrap -msgid "user" -msgstr "" +msgstr "system" #. type: table #: doc/guix.texi:951 -msgid "" -"The user account to use when connecting to the remote machine over SSH. " -"Note that the SSH key pair must @emph{not} be passphrase-protected, to allow " -"non-interactive logins." -msgstr "" +msgid "The system type of the remote machine---e.g., @code{\"x86_64-linux\"}." +msgstr "Le type de système de la machine distante, p.@: ex.@: @code{\"x86_64-linux\"}." -#. type: item -#: doc/guix.texi:952 +#. type: code{#1} +#: doc/guix.texi:952 doc/guix.texi:11277 #, no-wrap -msgid "host-key" -msgstr "" +msgid "user" +msgstr "user" #. type: table #: doc/guix.texi:956 -msgid "" -"This must be the machine's SSH @dfn{public host key} in OpenSSH format. " -"This is used to authenticate the machine when we connect to it. It is a " -"long string that looks like this:" -msgstr "" +msgid "The user account to use when connecting to the remote machine over SSH. Note that the SSH key pair must @emph{not} be passphrase-protected, to allow non-interactive logins." +msgstr "Le compte utilisateur à utiliser lors de la connexion à la machine distante par SSH@. Remarquez que la paire de clef SSH ne doit @emph{pas} être protégée par mot de passe pour permettre des connexions non-interactives." -#. type: example -#: doc/guix.texi:959 +#. type: item +#: doc/guix.texi:957 #, no-wrap -msgid "ssh-ed25519 AAAAC3NzaC@dots{}mde+UhL hint@@example.org\n" -msgstr "" +msgid "host-key" +msgstr "host-key" #. type: table +#: doc/guix.texi:961 +msgid "This must be the machine's SSH @dfn{public host key} in OpenSSH format. This is used to authenticate the machine when we connect to it. It is a long string that looks like this:" +msgstr "Cela doit être la @dfn{clef d'hôte SSH publique} de la machine au format OpenSSH@. Elle est utilisée pour authentifier la machine lors de la connexion. C'est une longue chaîne qui ressemble à cela :" + +#. type: example #: doc/guix.texi:964 -msgid "" -"If the machine is running the OpenSSH daemon, @command{sshd}, the host key " -"can be found in a file such as @file{/etc/ssh/ssh_host_ed25519_key.pub}." -msgstr "" +#, no-wrap +msgid "ssh-ed25519 AAAAC3NzaC@dots{}mde+UhL hint@@example.org\n" +msgstr "ssh-ed25519 AAAAC3NzaC@dots{}mde+UhL hint@@example.org\n" #. type: table #: doc/guix.texi:969 -msgid "" -"If the machine is running the SSH daemon of GNU@tie{}lsh, @command{lshd}, " -"the host key is in @file{/etc/lsh/host-key.pub} or a similar file. It can " -"be converted to the OpenSSH format using @command{lsh-export-key} " -"(@pxref{Converting keys,,, lsh, LSH Manual}):" -msgstr "" +msgid "If the machine is running the OpenSSH daemon, @command{sshd}, the host key can be found in a file such as @file{/etc/ssh/ssh_host_ed25519_key.pub}." +msgstr "Si la machine utilise le démon OpenSSH, @command{sshd}, la clef d'hôte se trouve dans un fichier comme @file{/etc/ssh/ssh_host_ed25519_key.pub}." + +#. type: table +#: doc/guix.texi:974 +msgid "If the machine is running the SSH daemon of GNU@tie{}lsh, @command{lshd}, the host key is in @file{/etc/lsh/host-key.pub} or a similar file. It can be converted to the OpenSSH format using @command{lsh-export-key} (@pxref{Converting keys,,, lsh, LSH Manual}):" +msgstr "Si la machine utilise le démon SSH de GNU@tie{}lsh, la clef d'hôte est dans @file{/etc/lsh/host-key.pub} ou un fichier similaire. Elle peut être convertie au format OpenSSH avec @command{lsh-export-key} (@pxref{Converting keys,,, lsh, LSH Manual}) :" #. type: example -#: doc/guix.texi:973 +#: doc/guix.texi:978 #, no-wrap msgid "" "$ lsh-export-key --openssh < /etc/lsh/host-key.pub \n" "ssh-rsa AAAAB3NzaC1yc2EAAAAEOp8FoQAAAQEAs1eB46LV@dots{}\n" msgstr "" +"$ lsh-export-key --openssh < /etc/lsh/host-key.pub \n" +"ssh-rsa AAAAB3NzaC1yc2EAAAAEOp8FoQAAAQEAs1eB46LV@dots{}\n" #. type: deftp -#: doc/guix.texi:978 +#: doc/guix.texi:983 msgid "A number of optional fields may be specified:" -msgstr "" +msgstr "Il y a un certain nombre de champs facultatifs que vous pouvez remplir :" #. type: item -#: doc/guix.texi:981 +#: doc/guix.texi:986 #, no-wrap msgid "@code{port} (default: @code{22})" -msgstr "" +msgstr "@code{port} (par défaut : @code{22})" #. type: table -#: doc/guix.texi:983 +#: doc/guix.texi:988 msgid "Port number of SSH server on the machine." -msgstr "" +msgstr "Numéro de port du serveur SSH sur la machine." #. type: item -#: doc/guix.texi:984 +#: doc/guix.texi:989 #, no-wrap msgid "@code{private-key} (default: @file{~root/.ssh/id_rsa})" -msgstr "" +msgstr "@code{private-key} (par défaut : @file{~root/.ssh/id_rsa})" #. type: table -#: doc/guix.texi:987 -msgid "" -"The SSH private key file to use when connecting to the machine, in OpenSSH " -"format." -msgstr "" +#: doc/guix.texi:992 +msgid "The SSH private key file to use when connecting to the machine, in OpenSSH format." +msgstr "Le fichier de clef privée à utiliser lors de la connexion à la machine, au format OpenSSH@." #. type: table -#: doc/guix.texi:990 -msgid "" -"Note that the default value is the private key @emph{of the root account}. " -"Make sure it exists if you use the default." -msgstr "" +#: doc/guix.texi:995 +msgid "Note that the default value is the private key @emph{of the root account}. Make sure it exists if you use the default." +msgstr "Remarquez que la valeur par défaut est la clef privée @emph{du compte root}. Assurez-vous qu'elle existe si vous utilisez la valeur par défaut." #. type: item -#: doc/guix.texi:991 +#: doc/guix.texi:996 #, no-wrap msgid "@code{compression} (default: @code{\"zlib@@openssh.com,zlib\"})" -msgstr "" +msgstr "@code{compression} (par défaut : @code{\"zlib@@openssh.com,zlib\"})" #. type: item -#: doc/guix.texi:992 doc/guix.texi:10422 +#: doc/guix.texi:997 doc/guix.texi:10667 #, no-wrap msgid "@code{compression-level} (default: @code{3})" -msgstr "" +msgstr "@code{compression-level} (par défaut : @code{3})" #. type: table -#: doc/guix.texi:994 +#: doc/guix.texi:999 msgid "The SSH-level compression methods and compression level requested." -msgstr "" +msgstr "Les méthodes de compression au niveau SSH et le niveau de compression demandé." #. type: table -#: doc/guix.texi:997 -msgid "" -"Note that offloading relies on SSH compression to reduce bandwidth usage " -"when transferring files to and from build machines." -msgstr "" +#: doc/guix.texi:1002 +msgid "Note that offloading relies on SSH compression to reduce bandwidth usage when transferring files to and from build machines." +msgstr "Remarquez que le déchargement utilise la compression SSH pour réduire la bande passante utilisée lors du transfert vers et depuis les machines de construction." #. type: item -#: doc/guix.texi:998 +#: doc/guix.texi:1003 #, no-wrap msgid "@code{daemon-socket} (default: @code{\"/var/guix/daemon-socket/socket\"})" -msgstr "" +msgstr "@code{daemon-socket} (par défaut : @code{\"/var/guix/daemon-socket/socket\"})" #. type: table -#: doc/guix.texi:1001 -msgid "" -"File name of the Unix-domain socket @command{guix-daemon} is listening to on " -"that machine." -msgstr "" +#: doc/guix.texi:1006 +msgid "File name of the Unix-domain socket @command{guix-daemon} is listening to on that machine." +msgstr "Le nom de fichier du socket Unix-domain sur lequel @command{guix-daemon} écoute sur cette machine." #. type: item -#: doc/guix.texi:1002 +#: doc/guix.texi:1007 #, no-wrap msgid "@code{parallel-builds} (default: @code{1})" -msgstr "" +msgstr "@code{parallel-builds} (par défaut : @code{1})" #. type: table -#: doc/guix.texi:1004 +#: doc/guix.texi:1009 msgid "The number of builds that may run in parallel on the machine." -msgstr "" +msgstr "Le nombre de constructions qui peuvent tourner simultanément sur la machine." #. type: item -#: doc/guix.texi:1005 +#: doc/guix.texi:1010 #, no-wrap msgid "@code{speed} (default: @code{1.0})" -msgstr "" +msgstr "@code{speed} (par défaut : @code{1.0})" #. type: table -#: doc/guix.texi:1008 -msgid "" -"A ``relative speed factor''. The offload scheduler will tend to prefer " -"machines with a higher speed factor." -msgstr "" +#: doc/guix.texi:1013 +msgid "A ``relative speed factor''. The offload scheduler will tend to prefer machines with a higher speed factor." +msgstr "Un « facteur de vitesse relatif ». L'ordonnanceur des constructions tendra à préférer les machines avec un plus grand facteur de vitesse." #. type: item -#: doc/guix.texi:1009 +#: doc/guix.texi:1014 #, no-wrap msgid "@code{features} (default: @code{'()})" -msgstr "" +msgstr "@code{features} (par défaut : @code{'()})" #. type: table -#: doc/guix.texi:1014 -msgid "" -"A list of strings denoting specific features supported by the machine. An " -"example is @code{\"kvm\"} for machines that have the KVM Linux modules and " -"corresponding hardware support. Derivations can request features by name, " -"and they will be scheduled on matching build machines." -msgstr "" +#: doc/guix.texi:1019 +msgid "A list of strings denoting specific features supported by the machine. An example is @code{\"kvm\"} for machines that have the KVM Linux modules and corresponding hardware support. Derivations can request features by name, and they will be scheduled on matching build machines." +msgstr "Une liste de chaînes qui contient les fonctionnalités spécifiques supportées par la machine. Un exemple est @code{\"kvm\"} pour les machines qui ont le module Linux KVM et le support matériel correspondant. Les dérivations peuvent demander des fonctionnalités par leur nom et seront orchestrées sur les machines de construction correspondantes." #. type: Plain text -#: doc/guix.texi:1022 -msgid "" -"The @code{guile} command must be in the search path on the build machines. " -"In addition, the Guix modules must be in @code{$GUILE_LOAD_PATH} on the " -"build machine---you can check whether this is the case by running:" -msgstr "" +#: doc/guix.texi:1027 +msgid "The @code{guile} command must be in the search path on the build machines. In addition, the Guix modules must be in @code{$GUILE_LOAD_PATH} on the build machine---you can check whether this is the case by running:" +msgstr "La commande @code{guile} doit être dans le chemin de recherche des machines de construction. En plus, les modules Guix doivent se trouver dans @code{$GUILE_LOAD_PATH} sur la machine de construction. Vous pouvez vérifier si c'est le cas en lançant :" #. type: example -#: doc/guix.texi:1025 +#: doc/guix.texi:1030 #, no-wrap msgid "ssh build-machine guile -c \"'(use-modules (guix config))'\"\n" -msgstr "" +msgstr "ssh build-machine guile -c \"'(use-modules (guix config))'\"\n" #. type: Plain text -#: doc/guix.texi:1032 -msgid "" -"There is one last thing to do once @file{machines.scm} is in place. As " -"explained above, when offloading, files are transferred back and forth " -"between the machine stores. For this to work, you first need to generate a " -"key pair on each machine to allow the daemon to export signed archives of " -"files from the store (@pxref{Invoking guix archive}):" -msgstr "" +#: doc/guix.texi:1037 +msgid "There is one last thing to do once @file{machines.scm} is in place. As explained above, when offloading, files are transferred back and forth between the machine stores. For this to work, you first need to generate a key pair on each machine to allow the daemon to export signed archives of files from the store (@pxref{Invoking guix archive}):" +msgstr "Il reste une dernière chose à faire maintenant que @file{machines.scm} est en place. Comme expliqué ci-dessus, lors du déchargement les fichiers sont transférés entre les dépôts des machines. Pour que cela fonctionne, vous devez d'abord générer une paire de clef sur chaque machine pour permettre au démon d'exporter des archives signées des fichiers de son dépôt (@pxref{Invoking guix archive}) :" #. type: example -#: doc/guix.texi:1035 +#: doc/guix.texi:1040 #, no-wrap msgid "# guix archive --generate-key\n" -msgstr "" +msgstr "# guix archive --generate-key\n" #. type: Plain text -#: doc/guix.texi:1040 -msgid "" -"Each build machine must authorize the key of the master machine so that it " -"accepts store items it receives from the master:" -msgstr "" +#: doc/guix.texi:1045 +msgid "Each build machine must authorize the key of the master machine so that it accepts store items it receives from the master:" +msgstr "Chaque machine de construction doit autoriser la clef de la machine maîtresse pour qu'ils acceptent les éléments de dépôt de celle-ci :" #. type: example -#: doc/guix.texi:1043 +#: doc/guix.texi:1048 #, no-wrap msgid "# guix archive --authorize < master-public-key.txt\n" -msgstr "" +msgstr "# guix archive --authorize < master-public-key.txt\n" #. type: Plain text -#: doc/guix.texi:1047 -msgid "" -"Likewise, the master machine must authorize the key of each build machine." -msgstr "" +#: doc/guix.texi:1052 +msgid "Likewise, the master machine must authorize the key of each build machine." +msgstr "De même, la machine maîtresse doit autoriser les clefs de chaque machine de construction." #. type: Plain text -#: doc/guix.texi:1053 -msgid "" -"All the fuss with keys is here to express pairwise mutual trust relations " -"between the master and the build machines. Concretely, when the master " -"receives files from a build machine (and @i{vice versa}), its build daemon " -"can make sure they are genuine, have not been tampered with, and that they " -"are signed by an authorized key." -msgstr "" +#: doc/guix.texi:1058 +msgid "All the fuss with keys is here to express pairwise mutual trust relations between the master and the build machines. Concretely, when the master receives files from a build machine (and @i{vice versa}), its build daemon can make sure they are genuine, have not been tampered with, and that they are signed by an authorized key." +msgstr "Toute cette histoire de clefs permet d'exprimer la confiance mutuelle deux-à-deux entre le maître et les machines de construction. Concrètement, lorsque le maître reçoit des fichiers d'une machine de construction (et vice-versa), son démon de construction s'assure qu'ils sont authentiques, n'ont pas été modifiés par un tiers et qu'il sont signés par un clef autorisée." #. type: cindex -#: doc/guix.texi:1054 +#: doc/guix.texi:1059 #, no-wrap msgid "offload test" -msgstr "" +msgstr "test du déchargement" #. type: Plain text -#: doc/guix.texi:1057 -msgid "" -"To test whether your setup is operational, run this command on the master " -"node:" -msgstr "" +#: doc/guix.texi:1062 +msgid "To test whether your setup is operational, run this command on the master node:" +msgstr "Pour tester que votre paramétrage fonctionne, lancez cette commande sur le nœud maître :" #. type: example -#: doc/guix.texi:1060 +#: doc/guix.texi:1065 #, no-wrap msgid "# guix offload test\n" -msgstr "" +msgstr "# guix offload test\n" #. type: Plain text -#: doc/guix.texi:1066 -msgid "" -"This will attempt to connect to each of the build machines specified in " -"@file{/etc/guix/machines.scm}, make sure Guile and the Guix modules are " -"available on each machine, attempt to export to the machine and import from " -"it, and report any error in the process." -msgstr "" +#: doc/guix.texi:1071 +msgid "This will attempt to connect to each of the build machines specified in @file{/etc/guix/machines.scm}, make sure Guile and the Guix modules are available on each machine, attempt to export to the machine and import from it, and report any error in the process." +msgstr "Cela essaiera de se connecter à toutes les machines de construction spécifiées dans @file{/etc/guix/machines.scm}, s'assurera que Guile et les modules Guix sont disponibles sur toutes les machines et tentera d'exporter vers la machine et d'importer depuis elle, et rapportera toute erreur survenu pendant le processus." #. type: Plain text -#: doc/guix.texi:1069 -msgid "" -"If you want to test a different machine file, just specify it on the command " -"line:" -msgstr "" +#: doc/guix.texi:1074 +msgid "If you want to test a different machine file, just specify it on the command line:" +msgstr "Si vous souhaitez tester un fichier de machines différent, spécifiez-le sur la ligne de commande :" #. type: example -#: doc/guix.texi:1072 +#: doc/guix.texi:1077 #, no-wrap msgid "# guix offload test machines-qualif.scm\n" -msgstr "" +msgstr "# guix offload test machines-qualif.scm\n" #. type: Plain text -#: doc/guix.texi:1076 -msgid "" -"Last, you can test the subset of the machines whose name matches a regular " -"expression like this:" -msgstr "" +#: doc/guix.texi:1081 +msgid "Last, you can test the subset of the machines whose name matches a regular expression like this:" +msgstr "Enfin, vous pouvez tester un sous-ensemble de machines dont le nom correspond à une expression rationnelle comme ceci :" #. type: example -#: doc/guix.texi:1079 +#: doc/guix.texi:1084 #, no-wrap msgid "# guix offload test machines.scm '\\.gnu\\.org$'\n" -msgstr "" +msgstr "# guix offload test machines.scm '\\.gnu\\.org$'\n" #. type: cindex -#: doc/guix.texi:1081 +#: doc/guix.texi:1086 #, no-wrap msgid "offload status" -msgstr "" +msgstr "statut du déchargement" #. type: Plain text -#: doc/guix.texi:1084 -msgid "" -"To display the current load of all build hosts, run this command on the main " -"node:" -msgstr "" +#: doc/guix.texi:1089 +msgid "To display the current load of all build hosts, run this command on the main node:" +msgstr "Pour afficher la charge actuelle de tous les hôtes de construction, lancez cette commande sur le nœud principal :" #. type: example -#: doc/guix.texi:1087 +#: doc/guix.texi:1092 #, no-wrap msgid "# guix offload status\n" -msgstr "" +msgstr "# guix offload status\n" #. type: cindex -#: doc/guix.texi:1093 +#: doc/guix.texi:1098 #, no-wrap msgid "SELinux, daemon policy" -msgstr "" +msgstr "SELinux, politique du démon" #. type: cindex -#: doc/guix.texi:1094 +#: doc/guix.texi:1099 #, no-wrap msgid "mandatory access control, SELinux" -msgstr "" +msgstr "contrôle d'accès obligatoire, SELinux" #. type: cindex -#: doc/guix.texi:1095 +#: doc/guix.texi:1100 #, no-wrap msgid "security, guix-daemon" -msgstr "" +msgstr "sécurité, guix-daemon" #. type: Plain text -#: doc/guix.texi:1101 -msgid "" -"Guix includes an SELinux policy file at @file{etc/guix-daemon.cil} that can " -"be installed on a system where SELinux is enabled, in order to label Guix " -"files and to specify the expected behavior of the daemon. Since GuixSD does " -"not provide an SELinux base policy, the daemon policy cannot be used on " -"GuixSD." -msgstr "" +#: doc/guix.texi:1106 +msgid "Guix includes an SELinux policy file at @file{etc/guix-daemon.cil} that can be installed on a system where SELinux is enabled, in order to label Guix files and to specify the expected behavior of the daemon. Since GuixSD does not provide an SELinux base policy, the daemon policy cannot be used on GuixSD." +msgstr "Guix inclus un fichier de politique SELniux dans @file{etc/guix-daemon.cil} qui peut être installé sur un système où SELinux est activé pour que les fichiers Guix soient étiquetés et pour spécifier le comportement attendu du démon. Comme GuixSD ne fournit pas de politique SELniux de base, la politique du démon ne peut pas être utilisée sur GuixSD@." #. type: subsubsection -#: doc/guix.texi:1102 +#: doc/guix.texi:1107 #, no-wrap msgid "Installing the SELinux policy" -msgstr "" +msgstr "Installer la politique SELinux" #. type: cindex -#: doc/guix.texi:1103 -#, no-wrap -msgid "SELinux, policy installation" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:1105 -msgid "To install the policy run this command as root:" -msgstr "" - -#. type: example #: doc/guix.texi:1108 #, no-wrap -msgid "semodule -i etc/guix-daemon.cil\n" -msgstr "" +msgid "SELinux, policy installation" +msgstr "SELinux, installation de la politique" #. type: Plain text -#: doc/guix.texi:1112 -msgid "" -"Then relabel the file system with @code{restorecon} or by a different " -"mechanism provided by your system." -msgstr "" +#: doc/guix.texi:1110 +msgid "To install the policy run this command as root:" +msgstr "Pour installer la politique, lancez cette commande en root :" + +#. type: example +#: doc/guix.texi:1113 +#, no-wrap +msgid "semodule -i etc/guix-daemon.cil\n" +msgstr "semodule -i etc/guix-daemon.cil\n" #. type: Plain text #: doc/guix.texi:1117 -msgid "" -"Once the policy is installed, the file system has been relabeled, and the " -"daemon has been restarted, it should be running in the @code{guix_daemon_t} " -"context. You can confirm this with the following command:" -msgstr "" +msgid "Then relabel the file system with @code{restorecon} or by a different mechanism provided by your system." +msgstr "Puis ré-étiquetez le système de fichier avec @code{restorecon} ou par un mécanisme différent fournit par votre système." + +#. type: Plain text +#: doc/guix.texi:1122 +msgid "Once the policy is installed, the file system has been relabeled, and the daemon has been restarted, it should be running in the @code{guix_daemon_t} context. You can confirm this with the following command:" +msgstr "Une fois la politique installée, le système de fichier ré-étiqueté et le démon redémarré, il devrait être lancé dans le contexte @code{guix_daemon_t}. Vous pouvez le confirmer avec la commande suivante :" #. type: example -#: doc/guix.texi:1120 +#: doc/guix.texi:1125 #, no-wrap msgid "ps -Zax | grep guix-daemon\n" -msgstr "" +msgstr "ps -Zax | grep guix-daemon\n" #. type: Plain text -#: doc/guix.texi:1125 -msgid "" -"Monitor the SELinux log files as you run a command like @code{guix build " -"hello} to convince yourself that SELinux permits all necessary operations." -msgstr "" +#: doc/guix.texi:1130 +msgid "Monitor the SELinux log files as you run a command like @code{guix build hello} to convince yourself that SELinux permits all necessary operations." +msgstr "Surveillez les fichiers journaux de SELinux pendant que vous lancez une commande comme @code{guix build hello} pour vous convaincre que SELniux permet toutes les opérations nécessaires." #. type: cindex -#: doc/guix.texi:1127 +#: doc/guix.texi:1132 #, no-wrap msgid "SELinux, limitations" -msgstr "" +msgstr "SELinux, limites" #. type: Plain text -#: doc/guix.texi:1132 -msgid "" -"This policy is not perfect. Here is a list of limitations or quirks that " -"should be considered when deploying the provided SELinux policy for the Guix " -"daemon." -msgstr "" +#: doc/guix.texi:1137 +msgid "This policy is not perfect. Here is a list of limitations or quirks that should be considered when deploying the provided SELinux policy for the Guix daemon." +msgstr "La politique n'et pas parfaite. Voici une liste de limitations et de bizarreries qui vous devriez prendre en compte avant de déployer la politique SELinux fournie pour le démon Guix." #. type: enumerate -#: doc/guix.texi:1139 -msgid "" -"@code{guix_daemon_socket_t} isn’t actually used. None of the socket " -"operations involve contexts that have anything to do with " -"@code{guix_daemon_socket_t}. It doesn’t hurt to have this unused label, but " -"it would be preferrable to define socket rules for only this label." -msgstr "" - -#. type: enumerate -#: doc/guix.texi:1150 -msgid "" -"@code{guix gc} cannot access arbitrary links to profiles. By design, the " -"file label of the destination of a symlink is independent of the file label " -"of the link itself. Although all profiles under $localstatedir are " -"labelled, the links to these profiles inherit the label of the directory " -"they are in. For links in the user’s home directory this will be " -"@code{user_home_t}. But for links from the root user’s home directory, or " -"@file{/tmp}, or the HTTP server’s working directory, etc, this won’t work. " -"@code{guix gc} would be prevented from reading and following these links." -msgstr "" +#: doc/guix.texi:1144 +msgid "@code{guix_daemon_socket_t} isn’t actually used. None of the socket operations involve contexts that have anything to do with @code{guix_daemon_socket_t}. It doesn’t hurt to have this unused label, but it would be preferrable to define socket rules for only this label." +msgstr "@code{guix_daemon_socket_t} n'est pas vraiment utilisé. Aucune des opérations sur les sockets n'impliquent de contextes qui ont quoi que ce soit à voir avec @code{guix_daemon_socket_t}. Ça ne fait pas de mal d'avoir une étiquette inutilisée, mais il serait préférable de définir des règles sur les sockets uniquement pour cette étiquette." #. type: enumerate #: doc/guix.texi:1155 -msgid "" -"The daemon’s feature to listen for TCP connections might no longer work. " -"This might require extra rules, because SELinux treats network sockets " -"differently from files." -msgstr "" +msgid "@code{guix gc} cannot access arbitrary links to profiles. By design, the file label of the destination of a symlink is independent of the file label of the link itself. Although all profiles under $localstatedir are labelled, the links to these profiles inherit the label of the directory they are in. For links in the user’s home directory this will be @code{user_home_t}. But for links from the root user’s home directory, or @file{/tmp}, or the HTTP server’s working directory, etc, this won’t work. @code{guix gc} would be prevented from reading and following these links." +msgstr "@code{guix gc} ne peut pas accéder à n'importe quel lien vers les profils. Par conception, l'étiquette de fichier de la destination d'un lien symbolique est indépendant de l'étiquette du lien lui-même. Bien que tous les profils sous $localstatedir aient une étiquette, les liens vers ces profils héritent de l'étiquette du répertoire dans lequel ils se trouvent. Pour les liens dans le répertoire personnel cela sera @code{user_home_t}. Mais pour les liens du répertoire personnel de l'utilisateur root, ou @file{/tmp}, ou du répertoire de travail du serveur HTTP, etc, cela ne fonctionnera pas. SELinux empêcherait @code{guix gc} de lire et de suivre ces liens." #. type: enumerate -#: doc/guix.texi:1166 -msgid "" -"Currently all files with a name matching the regular expression @code{/gnu/" -"store/.+-(guix-.+|profile)/bin/guix-daemon} are assigned the label " -"@code{guix_daemon_exec_t}; this means that @emph{any} file with that name in " -"any profile would be permitted to run in the @code{guix_daemon_t} domain. " -"This is not ideal. An attacker could build a package that provides this " -"executable and convince a user to install and run it, which lifts it into " -"the @code{guix_daemon_t} domain. At that point SELinux could not prevent it " -"from accessing files that are allowed for processes in that domain." -msgstr "" +#: doc/guix.texi:1160 +msgid "The daemon’s feature to listen for TCP connections might no longer work. This might require extra rules, because SELinux treats network sockets differently from files." +msgstr "La fonctionnalité du démon d'écouter des connexions TCP pourrait ne plus fonctionner. Cela demande des règles supplémentaires car SELinux traite les sockets réseau différemment des fichiers." #. type: enumerate -#: doc/guix.texi:1174 -msgid "" -"We could generate a much more restrictive policy at installation time, so " -"that only the @emph{exact} file name of the currently installed @code{guix-" -"daemon} executable would be labelled with @code{guix_daemon_exec_t}, instead " -"of using a broad regular expression. The downside is that root would have " -"to install or upgrade the policy at installation time whenever the Guix " -"package that provides the effectively running @code{guix-daemon} executable " -"is upgraded." -msgstr "" +#: doc/guix.texi:1171 +msgid "Currently all files with a name matching the regular expression @code{/gnu/store/.+-(guix-.+|profile)/bin/guix-daemon} are assigned the label @code{guix_daemon_exec_t}; this means that @emph{any} file with that name in any profile would be permitted to run in the @code{guix_daemon_t} domain. This is not ideal. An attacker could build a package that provides this executable and convince a user to install and run it, which lifts it into the @code{guix_daemon_t} domain. At that point SELinux could not prevent it from accessing files that are allowed for processes in that domain." +msgstr "Actuellement tous les fichiers qui correspondent à l'expression rationnelle @code{/gnu/store/.+-(guix-.+|profile)/bin/guix-daemon} reçoivent l'étiquette @code{guix_daemon_exec_t} ; cela signifie que @emph{tout} fichier avec ce nom dans n'importe quel profil serait autorisé à se lancer dans le domaine @code{guix_daemon_t}. Ce n'est pas idéal. Un attaquant pourrait construire un paquet qui fournit cet exécutable et convaincre un utilisateur de l'installer et de le lancer, ce qui l'élève dans le domaine @code{guix_daemon_t}. À ce moment SELinux ne pourrait pas l'empêcher d'accéder à des fichiers autorisés pour les processus de ce domaine." + +#. type: enumerate +#: doc/guix.texi:1179 +msgid "We could generate a much more restrictive policy at installation time, so that only the @emph{exact} file name of the currently installed @code{guix-daemon} executable would be labelled with @code{guix_daemon_exec_t}, instead of using a broad regular expression. The downside is that root would have to install or upgrade the policy at installation time whenever the Guix package that provides the effectively running @code{guix-daemon} executable is upgraded." +msgstr "Nous pourrions générer une politique bien plus restrictive à l'installation, pour que seuls les noms de fichiers @emph{exacts} de l'exécutable @code{guix-daemon} actuellement installé soit étiqueté avec @code{guix_daemon_exec_t}, plutôt que d'utiliser une expression rationnelle plus large. L'inconvénient c'est que root devrait installer ou mettre à jour la politique à l'installation à chaque fois que le paquet Guix qui fournit l'exécutable @code{guix-daemon} effectivement exécuté est mis à jour." #. type: section -#: doc/guix.texi:1177 +#: doc/guix.texi:1182 #, no-wrap msgid "Invoking @command{guix-daemon}" -msgstr "" +msgstr "Invoquer @command{guix-daemon}" #. type: Plain text -#: doc/guix.texi:1183 -msgid "" -"The @command{guix-daemon} program implements all the functionality to access " -"the store. This includes launching build processes, running the garbage " -"collector, querying the availability of a build result, etc. It is normally " -"run as @code{root} like this:" -msgstr "" +#: doc/guix.texi:1188 +msgid "The @command{guix-daemon} program implements all the functionality to access the store. This includes launching build processes, running the garbage collector, querying the availability of a build result, etc. It is normally run as @code{root} like this:" +msgstr "Le programme @command{guix-daemon} implémente toutes les fonctionnalités d'accès au dépôt. Cela inclus le lancement des processus de construction, le lancement du ramasse-miettes, la demande de disponibilité des résultats de construction, etc. Il tourne normalement en @code{root} comme ceci :" #. type: Plain text -#: doc/guix.texi:1190 +#: doc/guix.texi:1195 msgid "For details on how to set it up, @pxref{Setting Up the Daemon}." msgstr "Pour des détails sur son paramétrage, @pxref{Paramétrer le démon}." #. type: cindex -#: doc/guix.texi:1192 +#: doc/guix.texi:1197 #, no-wrap msgid "container, build environment" -msgstr "" +msgstr "conteneur, environnement de construction" #. type: cindex -#: doc/guix.texi:1194 doc/guix.texi:1732 doc/guix.texi:2392 doc/guix.texi:7648 +#: doc/guix.texi:1199 doc/guix.texi:1737 doc/guix.texi:2397 doc/guix.texi:7858 #, no-wrap msgid "reproducible builds" -msgstr "" +msgstr "constructions reproductibles" #. type: Plain text -#: doc/guix.texi:1206 -msgid "" -"By default, @command{guix-daemon} launches build processes under different " -"UIDs, taken from the build group specified with @code{--build-users-group}. " -"In addition, each build process is run in a chroot environment that only " -"contains the subset of the store that the build process depends on, as " -"specified by its derivation (@pxref{Programming Interface, derivation}), " -"plus a set of specific system directories. By default, the latter contains " -"@file{/dev} and @file{/dev/pts}. Furthermore, on GNU/Linux, the build " -"environment is a @dfn{container}: in addition to having its own file system " -"tree, it has a separate mount name space, its own PID name space, network " -"name space, etc. This helps achieve reproducible builds (@pxref{Features})." -msgstr "" -"Par défaut, @command{guix-daemon} lance les processus de construction sous " -"différents UID récupérés depuis le groupe de construction spécifié avec " -"@code{--build-users-group}. En plus, chaque processus de construction est " -"lancé dans un environnement chroot qui ne contient que le sous-ensemble du " -"dépôt dont le processus de construction dépend, tel que spécifié par sa " -"dérivation (@pxref{Interface de programmation, dérivation}), plus un " -"ensemble de répertoires systèmes spécifiques. Par défaut ce dernier contient " -"@file{/dev} et @file{/dev/pts}. De plus, sous GNU/Linux, l'environnement de " -"construction est un @dfn{conteneur} : en plus d'avoir sa propre arborescence " -"du système de fichier, elle a un espace de montage séparé, son propre espace " -"de PID, son espace de réseau, etc. Cela aide à obtenir des constructions " -"reproductibles (@pxref{Fonctionnalités})." +#: doc/guix.texi:1211 +msgid "By default, @command{guix-daemon} launches build processes under different UIDs, taken from the build group specified with @code{--build-users-group}. In addition, each build process is run in a chroot environment that only contains the subset of the store that the build process depends on, as specified by its derivation (@pxref{Programming Interface, derivation}), plus a set of specific system directories. By default, the latter contains @file{/dev} and @file{/dev/pts}. Furthermore, on GNU/Linux, the build environment is a @dfn{container}: in addition to having its own file system tree, it has a separate mount name space, its own PID name space, network name space, etc. This helps achieve reproducible builds (@pxref{Features})." +msgstr "Par défaut, @command{guix-daemon} lance les processus de construction sous différents UID récupérés depuis le groupe de construction spécifié avec @code{--build-users-group}. En plus, chaque processus de construction est lancé dans un environnement chroot qui ne contient que le sous-ensemble du dépôt dont le processus de construction dépend, tel que spécifié par sa dérivation (@pxref{Interface de programmation, dérivation}), plus un ensemble de répertoires systèmes spécifiques. Par défaut ce dernier contient @file{/dev} et @file{/dev/pts}. De plus, sous GNU/Linux, l'environnement de construction est un @dfn{conteneur} : en plus d'avoir sa propre arborescence du système de fichier, elle a un espace de montage séparé, son propre espace de PID, son espace de réseau, etc. Cela aide à obtenir des constructions reproductibles (@pxref{Fonctionnalités})." #. type: Plain text -#: doc/guix.texi:1215 -msgid "" -"When the daemon performs a build on behalf of the user, it creates a build " -"directory under @file{/tmp} or under the directory specified by its " -"@code{TMPDIR} environment variable; this directory is shared with the " -"container for the duration of the build. Be aware that using a directory " -"other than @file{/tmp} can affect build results---for example, with a longer " -"directory name, a build process that uses Unix-domain sockets might hit the " -"name length limitation for @code{sun_path}, which it would otherwise not hit." -msgstr "" +#: doc/guix.texi:1220 +msgid "When the daemon performs a build on behalf of the user, it creates a build directory under @file{/tmp} or under the directory specified by its @code{TMPDIR} environment variable; this directory is shared with the container for the duration of the build. Be aware that using a directory other than @file{/tmp} can affect build results---for example, with a longer directory name, a build process that uses Unix-domain sockets might hit the name length limitation for @code{sun_path}, which it would otherwise not hit." +msgstr "Lorsque le démon effectue une construction pour le compte de l'utilisateur, il crée un répertoire sous @file{/tmp} ou sous le répertoire spécifié par sa variable d'environnement @code{TMPDIR}. Ce répertoire est partagé avec le conteneur pendant la durée de la construction. Soyez conscient qu'utiliser un répertoire différent de @file{/tmp} peut affecter les résultats de la construction — par exemple avec un nom de répertoire plus long, un processus de construction qui utiliserait des socket Unix-domain pourrait atteindre la limite de longueur de nom de fichier pour @code{sun_path}, qu'il n'aurait sinon pas atteinte." #. type: Plain text -#: doc/guix.texi:1219 -msgid "" -"The build directory is automatically deleted upon completion, unless the " -"build failed and the client specified @option{--keep-failed} " -"(@pxref{Invoking guix build, @option{--keep-failed}})." -msgstr "" +#: doc/guix.texi:1224 +msgid "The build directory is automatically deleted upon completion, unless the build failed and the client specified @option{--keep-failed} (@pxref{Invoking guix build, @option{--keep-failed}})." +msgstr "Le répertoire de construction est automatiquement supprimé à la fin, à moins que la construction n'ait échoué et que le client ait spécifié @option{--keep-failed} (@pxref{Invoking guix build, @option{--keep-failed}})." #. type: Plain text -#: doc/guix.texi:1221 +#: doc/guix.texi:1226 msgid "The following command-line options are supported:" -msgstr "" +msgstr "Les options en ligne de commande suivantes sont disponibles :" #. type: item -#: doc/guix.texi:1223 +#: doc/guix.texi:1228 #, no-wrap msgid "--build-users-group=@var{group}" -msgstr "" +msgstr "--build-users-group=@var{groupe}" #. type: table -#: doc/guix.texi:1226 -msgid "" -"Take users from @var{group} to run build processes (@pxref{Setting Up the " -"Daemon, build users})." -msgstr "" -"Prend les utilisateurs de @var{group} pour lancer les processus de " -"construction (@pxref{Paramétrer le démon, utilisateurs de construction})." +#: doc/guix.texi:1231 +msgid "Take users from @var{group} to run build processes (@pxref{Setting Up the Daemon, build users})." +msgstr "Prendre les utilisateurs de @var{group} pour lancer les processus de construction (@pxref{Paramétrer le démon, utilisateurs de construction})." #. type: item -#: doc/guix.texi:1227 doc/guix.texi:5498 +#: doc/guix.texi:1232 doc/guix.texi:5669 #, no-wrap msgid "--no-substitutes" -msgstr "" +msgstr "--no-substitutes" #. type: cindex -#: doc/guix.texi:1228 doc/guix.texi:1744 doc/guix.texi:2248 +#: doc/guix.texi:1233 doc/guix.texi:1749 doc/guix.texi:2253 #, no-wrap msgid "substitutes" -msgstr "" +msgstr "substituts" #. type: table -#: doc/guix.texi:1232 doc/guix.texi:5502 -msgid "" -"Do not use substitutes for build products. That is, always build things " -"locally instead of allowing downloads of pre-built binaries " -"(@pxref{Substitutes})." -msgstr "" -"Ne pas utiliser de substitut pour les résultats de la construction. C'est-à-" -"dire, toujours construire localement plutôt que de permettre le " -"téléchargement de binaires pré-construits (@pxref{Substituts})." +#: doc/guix.texi:1237 doc/guix.texi:5673 +msgid "Do not use substitutes for build products. That is, always build things locally instead of allowing downloads of pre-built binaries (@pxref{Substitutes})." +msgstr "Ne pas utiliser de substitut pour les résultats de la construction. C'est-à-dire, toujours construire localement plutôt que de permettre le téléchargement de binaires pré-construits (@pxref{Substituts})." #. type: table -#: doc/guix.texi:1236 -msgid "" -"When the daemon runs with @code{--no-substitutes}, clients can still " -"explicitly enable substitution @i{via} the @code{set-build-options} remote " -"procedure call (@pxref{The Store})." -msgstr "" +#: doc/guix.texi:1241 +msgid "When the daemon runs with @code{--no-substitutes}, clients can still explicitly enable substitution @i{via} the @code{set-build-options} remote procedure call (@pxref{The Store})." +msgstr "Lorsque le démon tourne avec @code{--no-substitutes}, les clients peuvent toujours activer explicitement la substitution @i{via} l'appel de procédure distante @code{set-build-options} (@pxref{The Store})." #. type: item -#: doc/guix.texi:1237 doc/guix.texi:5485 doc/guix.texi:6897 doc/guix.texi:7773 -#: doc/guix.texi:7961 +#: doc/guix.texi:1242 doc/guix.texi:5656 doc/guix.texi:7107 doc/guix.texi:7983 +#: doc/guix.texi:8171 #, no-wrap msgid "--substitute-urls=@var{urls}" -msgstr "" +msgstr "--substitute-urls=@var{urls}" #. type: anchor{#1} -#: doc/guix.texi:1243 +#: doc/guix.texi:1248 msgid "daemon-substitute-urls" -msgstr "" +msgstr "daemon-substitute-urls" #. type: table -#: doc/guix.texi:1243 -msgid "" -"Consider @var{urls} the default whitespace-separated list of substitute " -"source URLs. When this option is omitted, @indicateurl{https://mirror.hydra." -"gnu.org https://hydra.gnu.org} is used (@code{mirror.hydra.gnu.org} is a " -"mirror of @code{hydra.gnu.org})." -msgstr "" +#: doc/guix.texi:1248 +msgid "Consider @var{urls} the default whitespace-separated list of substitute source URLs. When this option is omitted, @indicateurl{https://mirror.hydra.gnu.org https://hydra.gnu.org} is used (@code{mirror.hydra.gnu.org} is a mirror of @code{hydra.gnu.org})." +msgstr "Considèrer @var{urls} comme la liste séparée par des espaces des URL des sources de substituts par défaut. Lorsque cette option est omise, @indicateurl{https://mirror.hydra.gnu.org https://hydra.gnu.org} est utilisé (@code{mirror.hydra.gnu.org} est un mirroire de @code{hydra.gnu.org})." #. type: table -#: doc/guix.texi:1246 -msgid "" -"This means that substitutes may be downloaded from @var{urls}, as long as " -"they are signed by a trusted signature (@pxref{Substitutes})." -msgstr "" -"Cela signifie que les substituts sont téléchargés depuis les @var{urls}, " -"tant qu'ils sont signés par une signature de confiance (@pxref{Substituts})." +#: doc/guix.texi:1251 +msgid "This means that substitutes may be downloaded from @var{urls}, as long as they are signed by a trusted signature (@pxref{Substitutes})." +msgstr "Cela signifie que les substituts sont téléchargés depuis les @var{urls}, tant qu'ils sont signés par une signature de confiance (@pxref{Substituts})." #. type: item -#: doc/guix.texi:1248 doc/guix.texi:5523 +#: doc/guix.texi:1253 doc/guix.texi:5694 #, no-wrap msgid "--no-build-hook" -msgstr "" +msgstr "--no-build-hook" #. type: table -#: doc/guix.texi:1250 +#: doc/guix.texi:1255 msgid "Do not use the @dfn{build hook}." -msgstr "" +msgstr "Ne pas utiliser le @dfn{crochet de construction}." #. type: table -#: doc/guix.texi:1254 -msgid "" -"The build hook is a helper program that the daemon can start and to which it " -"submits build requests. This mechanism is used to offload builds to other " -"machines (@pxref{Daemon Offload Setup})." -msgstr "" +#: doc/guix.texi:1259 +msgid "The build hook is a helper program that the daemon can start and to which it submits build requests. This mechanism is used to offload builds to other machines (@pxref{Daemon Offload Setup})." +msgstr "Le crochet de construction est un programme d'aide qui le démon peut démarrer et auquel soumettre les requêtes de construction. Ce mécanisme est utilisé pour décharger les constructions à d'autres machines (@pxref{Daemon Offload Setup})." #. type: item -#: doc/guix.texi:1255 +#: doc/guix.texi:1260 #, no-wrap msgid "--cache-failures" -msgstr "" - -#. type: table -#: doc/guix.texi:1257 -msgid "Cache build failures. By default, only successful builds are cached." -msgstr "" +msgstr "--cache-failures" #. type: table #: doc/guix.texi:1262 -msgid "" -"When this option is used, @command{guix gc --list-failures} can be used to " -"query the set of store items marked as failed; @command{guix gc --clear-" -"failures} removes store items from the set of cached failures. " -"@xref{Invoking guix gc}." -msgstr "" - -#. type: item -#: doc/guix.texi:1263 doc/guix.texi:5547 -#, no-wrap -msgid "--cores=@var{n}" -msgstr "" - -#. type: itemx -#: doc/guix.texi:1264 doc/guix.texi:5548 -#, no-wrap -msgid "-c @var{n}" -msgstr "" +msgid "Cache build failures. By default, only successful builds are cached." +msgstr "Mettre les échecs de construction en cache. Par défaut, seules les constructions réussies sont mises en cache." #. type: table #: doc/guix.texi:1267 -msgid "" -"Use @var{n} CPU cores to build each derivation; @code{0} means as many as " -"available." -msgstr "" - -#. type: table -#: doc/guix.texi:1271 -msgid "" -"The default value is @code{0}, but it may be overridden by clients, such as " -"the @code{--cores} option of @command{guix build} (@pxref{Invoking guix " -"build})." -msgstr "" - -#. type: table -#: doc/guix.texi:1275 -msgid "" -"The effect is to define the @code{NIX_BUILD_CORES} environment variable in " -"the build process, which can then use it to exploit internal parallelism---" -"for instance, by running @code{make -j$NIX_BUILD_CORES}." -msgstr "" +msgid "When this option is used, @command{guix gc --list-failures} can be used to query the set of store items marked as failed; @command{guix gc --clear-failures} removes store items from the set of cached failures. @xref{Invoking guix gc}." +msgstr "Lorsque cette option est utilisée, @command{guix gc --list-failures} peut être utilisé pour demander l'ensemble des éléments du dépôt marqués comme échoués ; @command{guix gc --clear-failures} vide la liste des éléments aillant échoué. @xref{Invoking guix gc}." #. type: item -#: doc/guix.texi:1276 doc/guix.texi:5552 +#: doc/guix.texi:1268 doc/guix.texi:5718 #, no-wrap -msgid "--max-jobs=@var{n}" -msgstr "" +msgid "--cores=@var{n}" +msgstr "--cores=@var{n}" #. type: itemx -#: doc/guix.texi:1277 doc/guix.texi:5553 +#: doc/guix.texi:1269 doc/guix.texi:5719 +#, no-wrap +msgid "-c @var{n}" +msgstr "-c @var{n}" + +#. type: table +#: doc/guix.texi:1272 +msgid "Use @var{n} CPU cores to build each derivation; @code{0} means as many as available." +msgstr "Utiliser @var{n} cœurs CPU pour construire chaque dérivation ; @code{0} signifie autant que possible." + +#. type: table +#: doc/guix.texi:1276 +msgid "The default value is @code{0}, but it may be overridden by clients, such as the @code{--cores} option of @command{guix build} (@pxref{Invoking guix build})." +msgstr "La valeur par défaut est @code{0}, mais elle peut être modifiée par les clients comme avec l'option @code{--cores} de @command{guix build} (@pxref{Invoking guix build})." + +#. type: table +#: doc/guix.texi:1280 +msgid "The effect is to define the @code{NIX_BUILD_CORES} environment variable in the build process, which can then use it to exploit internal parallelism---for instance, by running @code{make -j$NIX_BUILD_CORES}." +msgstr "L'effet est de définir la variable d'environnement @code{NIX_BUILD_CORES} dans le processus de construction, qui peut ensuite l'utiliser pour exploiter le parallélisme en interne — par exemple en lançant @code{make -j$NIX_BUILD_CORES}." + +#. type: item +#: doc/guix.texi:1281 doc/guix.texi:5723 +#, no-wrap +msgid "--max-jobs=@var{n}" +msgstr "--max-jobs=@var{n}" + +#. type: itemx +#: doc/guix.texi:1282 doc/guix.texi:5724 #, no-wrap msgid "-M @var{n}" -msgstr "" +msgstr "-M @var{n}" #. type: table -#: doc/guix.texi:1282 -msgid "" -"Allow at most @var{n} build jobs in parallel. The default value is " -"@code{1}. Setting it to @code{0} means that no builds will be performed " -"locally; instead, the daemon will offload builds (@pxref{Daemon Offload " -"Setup}), or simply fail." -msgstr "" +#: doc/guix.texi:1287 +msgid "Allow at most @var{n} build jobs in parallel. The default value is @code{1}. Setting it to @code{0} means that no builds will be performed locally; instead, the daemon will offload builds (@pxref{Daemon Offload Setup}), or simply fail." +msgstr "Permettre au plus @var{n} travaux de construction en parallèle. La valeur par défaut est @code{1}. La mettre à @code{0} signifie qu'aucune construction ne sera effectuée localement ; à la place, le démon déchargera les constructions (@pxref{Daemon Offload Setup}) ou échouera." #. type: item -#: doc/guix.texi:1283 doc/guix.texi:5528 +#: doc/guix.texi:1288 doc/guix.texi:5699 #, no-wrap msgid "--max-silent-time=@var{seconds}" -msgstr "" +msgstr "--max-silent-time=@var{secondes}" #. type: table -#: doc/guix.texi:1286 doc/guix.texi:5531 -msgid "" -"When the build or substitution process remains silent for more than " -"@var{seconds}, terminate it and report a build failure." -msgstr "" +#: doc/guix.texi:1291 doc/guix.texi:5702 +msgid "When the build or substitution process remains silent for more than @var{seconds}, terminate it and report a build failure." +msgstr "Lorsque le processus de construction ou de substitution restent silencieux pendant plus de @var{secondes}, le terminer et rapporter une erreur de construction." #. type: table -#: doc/guix.texi:1288 doc/guix.texi:1297 +#: doc/guix.texi:1293 doc/guix.texi:1302 msgid "The default value is @code{0}, which disables the timeout." -msgstr "" +msgstr "La valeur par défaut est @code{0}, ce qui désactive le délai." #. type: table -#: doc/guix.texi:1291 -msgid "" -"The value specified here can be overridden by clients (@pxref{Common Build " -"Options, @code{--max-silent-time}})." -msgstr "" +#: doc/guix.texi:1296 +msgid "The value specified here can be overridden by clients (@pxref{Common Build Options, @code{--max-silent-time}})." +msgstr "La valeur spécifiée ici peut être modifiée par les clients (@pxref{Common Build Options, @code{--max-silent-time}})." #. type: item -#: doc/guix.texi:1292 doc/guix.texi:5535 +#: doc/guix.texi:1297 doc/guix.texi:5706 #, no-wrap msgid "--timeout=@var{seconds}" -msgstr "" +msgstr "--timeout=@var{secondes}" #. type: table -#: doc/guix.texi:1295 doc/guix.texi:5538 -msgid "" -"Likewise, when the build or substitution process lasts for more than " -"@var{seconds}, terminate it and report a build failure." -msgstr "" +#: doc/guix.texi:1300 doc/guix.texi:5709 +msgid "Likewise, when the build or substitution process lasts for more than @var{seconds}, terminate it and report a build failure." +msgstr "De même, lorsque le processus de construction ou de substitution dure plus de @var{secondes}, le terminer et rapporter une erreur de construction." #. type: table -#: doc/guix.texi:1300 -msgid "" -"The value specified here can be overridden by clients (@pxref{Common Build " -"Options, @code{--timeout}})." -msgstr "" +#: doc/guix.texi:1305 +msgid "The value specified here can be overridden by clients (@pxref{Common Build Options, @code{--timeout}})." +msgstr "La valeur spécifiée ici peut être modifiée par les clients (@pxref{Common Build Options, @code{--timeout}})." #. type: item -#: doc/guix.texi:1301 +#: doc/guix.texi:1306 #, no-wrap msgid "--rounds=@var{N}" -msgstr "" +msgstr "--rounds=@var{N}" #. type: table -#: doc/guix.texi:1306 -msgid "" -"Build each derivation @var{n} times in a row, and raise an error if " -"consecutive build results are not bit-for-bit identical. Note that this " -"setting can be overridden by clients such as @command{guix build} " -"(@pxref{Invoking guix build})." -msgstr "" +#: doc/guix.texi:1311 +msgid "Build each derivation @var{n} times in a row, and raise an error if consecutive build results are not bit-for-bit identical. Note that this setting can be overridden by clients such as @command{guix build} (@pxref{Invoking guix build})." +msgstr "Construire chaque dérivations @var{N} fois à la suite, et lever une erreur si les résultats de construction consécutifs ne sont pas identiques bit-à-bit. Remarquez que ce paramètre peut être modifié par les clients comme @command{guix build} (@pxref{Invoking guix build})." #. type: table -#: doc/guix.texi:1310 doc/guix.texi:5830 -msgid "" -"When used in conjunction with @option{--keep-failed}, the differing output " -"is kept in the store, under @file{/gnu/store/@dots{}-check}. This makes it " -"easy to look for differences between the two results." -msgstr "" +#: doc/guix.texi:1315 doc/guix.texi:6008 +msgid "When used in conjunction with @option{--keep-failed}, the differing output is kept in the store, under @file{/gnu/store/@dots{}-check}. This makes it easy to look for differences between the two results." +msgstr "Lorsqu'utilisé avec @option{--keep-failed}, la sourtie différente est gardée dans le dépôt sous @file{/gnu/store/@dots{}-check}. Cela rend plus facile l'étude des différences entre les deux résultats." #. type: item -#: doc/guix.texi:1311 +#: doc/guix.texi:1316 #, no-wrap msgid "--debug" -msgstr "" +msgstr "--debug" #. type: table -#: doc/guix.texi:1313 +#: doc/guix.texi:1318 msgid "Produce debugging output." -msgstr "" +msgstr "Produire une sortie de débogage." #. type: table -#: doc/guix.texi:1317 -msgid "" -"This is useful to debug daemon start-up issues, but then it may be " -"overridden by clients, for example the @code{--verbosity} option of " -"@command{guix build} (@pxref{Invoking guix build})." -msgstr "" +#: doc/guix.texi:1322 +msgid "This is useful to debug daemon start-up issues, but then it may be overridden by clients, for example the @code{--verbosity} option of @command{guix build} (@pxref{Invoking guix build})." +msgstr "Cela est utile pour déboguer des problèmes de démarrage du démon, mais ensuite elle peut être modifiée par les clients, par exemple par l'option @code{--verbosity} de @command{guix build} (@pxref{Invoking guix build})." #. type: item -#: doc/guix.texi:1318 +#: doc/guix.texi:1323 #, no-wrap msgid "--chroot-directory=@var{dir}" -msgstr "" +msgstr "--chroot-directory=@var{rép}" #. type: table -#: doc/guix.texi:1320 +#: doc/guix.texi:1325 msgid "Add @var{dir} to the build chroot." -msgstr "" +msgstr "Ajouter @var{rép} au chroot de construction" #. type: table -#: doc/guix.texi:1326 -msgid "" -"Doing this may change the result of build processes---for instance if they " -"use optional dependencies found in @var{dir} when it is available, and not " -"otherwise. For that reason, it is not recommended to do so. Instead, make " -"sure that each derivation declares all the inputs that it needs." -msgstr "" +#: doc/guix.texi:1331 +msgid "Doing this may change the result of build processes---for instance if they use optional dependencies found in @var{dir} when it is available, and not otherwise. For that reason, it is not recommended to do so. Instead, make sure that each derivation declares all the inputs that it needs." +msgstr "Cela peut changer le résultat d'un processus de construction — par exemple s'il utilise une dépendance facultative trouvée dans @var{rép} lorsqu'elle est disponible ou pas sinon. Pour cette raison, il n'est pas recommandé d'utiliser cette option. À la place, assurez-vous que chaque dérivation déclare toutes les entrées dont elle a besoin." #. type: item -#: doc/guix.texi:1327 +#: doc/guix.texi:1332 #, no-wrap msgid "--disable-chroot" -msgstr "" - -#. type: table -#: doc/guix.texi:1329 -msgid "Disable chroot builds." -msgstr "" +msgstr "--disable-chroot" #. type: table #: doc/guix.texi:1334 -msgid "" -"Using this option is not recommended since, again, it would allow build " -"processes to gain access to undeclared dependencies. It is necessary, " -"though, when @command{guix-daemon} is running under an unprivileged user " -"account." -msgstr "" +msgid "Disable chroot builds." +msgstr "Désactive les constructions dans un chroot." + +#. type: table +#: doc/guix.texi:1339 +msgid "Using this option is not recommended since, again, it would allow build processes to gain access to undeclared dependencies. It is necessary, though, when @command{guix-daemon} is running under an unprivileged user account." +msgstr "Utiliser cette option n'est pas recommandé car, de nouveau, elle permet aux processus de construction d'accéder à des dépendances non déclarées. Elle est nécessaire cependant lorsque @command{guix-daemon} tourne en tant qu'utilisateur non privilégié." #. type: item -#: doc/guix.texi:1335 +#: doc/guix.texi:1340 #, no-wrap msgid "--log-compression=@var{type}" -msgstr "" +msgstr "--log-compression=@var{type}" #. type: table -#: doc/guix.texi:1338 -msgid "" -"Compress build logs according to @var{type}, one of @code{gzip}, " -"@code{bzip2}, or @code{none}." -msgstr "" +#: doc/guix.texi:1343 +msgid "Compress build logs according to @var{type}, one of @code{gzip}, @code{bzip2}, or @code{none}." +msgstr "Compresser les journaux de construction suivant le @var{type}, parmi @code{gzip}, @code{bzip2} ou @code{none}." #. type: table -#: doc/guix.texi:1342 -msgid "" -"Unless @code{--lose-logs} is used, all the build logs are kept in the " -"@var{localstatedir}. To save space, the daemon automatically compresses " -"them with bzip2 by default." -msgstr "" +#: doc/guix.texi:1347 +msgid "Unless @code{--lose-logs} is used, all the build logs are kept in the @var{localstatedir}. To save space, the daemon automatically compresses them with bzip2 by default." +msgstr "À moins que @code{--lose-logs} ne soit utilisé, tous les journaux de construction sont gardés dans @var{localstatedir}. Pour gagner de la place, le démon les compresse automatiquement avec bzip2 par défaut." #. type: item -#: doc/guix.texi:1343 +#: doc/guix.texi:1348 #, no-wrap msgid "--disable-deduplication" -msgstr "" +msgstr "--disable-deduplication" #. type: cindex -#: doc/guix.texi:1344 doc/guix.texi:2708 +#: doc/guix.texi:1349 doc/guix.texi:2713 #, no-wrap msgid "deduplication" -msgstr "" +msgstr "déduplication" #. type: table -#: doc/guix.texi:1346 +#: doc/guix.texi:1351 msgid "Disable automatic file ``deduplication'' in the store." -msgstr "" +msgstr "Désactiver la « déduplication » automatique des fichiers dans le dépôt." #. type: table -#: doc/guix.texi:1353 -msgid "" -"By default, files added to the store are automatically ``deduplicated'': if " -"a newly added file is identical to another one found in the store, the " -"daemon makes the new file a hard link to the other file. This can " -"noticeably reduce disk usage, at the expense of slightly increased input/" -"output load at the end of a build process. This option disables this " -"optimization." -msgstr "" +#: doc/guix.texi:1358 +msgid "By default, files added to the store are automatically ``deduplicated'': if a newly added file is identical to another one found in the store, the daemon makes the new file a hard link to the other file. This can noticeably reduce disk usage, at the expense of slightly increased input/output load at the end of a build process. This option disables this optimization." +msgstr "Par défaut, les fichiers ajoutés au dépôt sont automatiquement « dédupliqués » : si un nouveau fichier est identique à un autre fichier trouvé dans le dépôt, le démon en fait un lien en dur vers l'autre fichier. Cela réduit considérablement l'utilisation de l'espace disque au prix d'une charge en entrée/sortie plus grande à la fin d'un processus de construction. Cette option désactive cette optimisation." #. type: item -#: doc/guix.texi:1354 +#: doc/guix.texi:1359 #, no-wrap msgid "--gc-keep-outputs[=yes|no]" -msgstr "" +msgstr "--gc-keep-outputs[=yes|no]" #. type: table -#: doc/guix.texi:1357 -msgid "" -"Tell whether the garbage collector (GC) must keep outputs of live " -"derivations." -msgstr "" +#: doc/guix.texi:1362 +msgid "Tell whether the garbage collector (GC) must keep outputs of live derivations." +msgstr "Dire si le ramasse-miettes (GC) doit garder les sorties des dérivations utilisées." #. type: cindex -#: doc/guix.texi:1358 doc/guix.texi:2543 +#: doc/guix.texi:1363 doc/guix.texi:2548 #, no-wrap msgid "GC roots" -msgstr "" +msgstr "racines du GC" #. type: cindex -#: doc/guix.texi:1359 doc/guix.texi:2544 +#: doc/guix.texi:1364 doc/guix.texi:2549 #, no-wrap msgid "garbage collector roots" -msgstr "" +msgstr "racines du ramasse-miettes" #. type: table -#: doc/guix.texi:1364 -msgid "" -"When set to ``yes'', the GC will keep the outputs of any live derivation " -"available in the store---the @code{.drv} files. The default is ``no'', " -"meaning that derivation outputs are kept only if they are GC roots. " -"@xref{Invoking guix gc}, for more on GC roots." -msgstr "" +#: doc/guix.texi:1369 +msgid "When set to ``yes'', the GC will keep the outputs of any live derivation available in the store---the @code{.drv} files. The default is ``no'', meaning that derivation outputs are kept only if they are GC roots. @xref{Invoking guix gc}, for more on GC roots." +msgstr "Lorsqu'elle est à « yes », le GC gardera les sorties de toutes les dérivations — les fichiers @code{.drv} — utilisées dans le dépôt. La valeur par défaut est « no », ce qui signifie que les sorties des dérivations ne sont gardées que s'il s'agit de racines du GC@. @xref{Invoking guix gc} pour plus d'informations sur les racines du GC@." #. type: item -#: doc/guix.texi:1365 +#: doc/guix.texi:1370 #, no-wrap msgid "--gc-keep-derivations[=yes|no]" -msgstr "" - -#. type: table -#: doc/guix.texi:1368 -msgid "" -"Tell whether the garbage collector (GC) must keep derivations corresponding " -"to live outputs." -msgstr "" +msgstr "--gc-keep-derivations[=yes|no]" #. type: table #: doc/guix.texi:1373 -msgid "" -"When set to ``yes'', as is the case by default, the GC keeps derivations---i." -"e., @code{.drv} files---as long as at least one of their outputs is live. " -"This allows users to keep track of the origins of items in their store. " -"Setting it to ``no'' saves a bit of disk space." -msgstr "" +msgid "Tell whether the garbage collector (GC) must keep derivations corresponding to live outputs." +msgstr "Dire si le ramasse-miettes (GC) doit garder les dérivations correspondant à des sorties utilisées." #. type: table -#: doc/guix.texi:1380 -msgid "" -"Note that when both @code{--gc-keep-derivations} and @code{--gc-keep-" -"outputs} are used, the effect is to keep all the build prerequisites (the " -"sources, compiler, libraries, and other build-time tools) of live objects in " -"the store, regardless of whether these prerequisites are live. This is " -"convenient for developers since it saves rebuilds or downloads." -msgstr "" +#: doc/guix.texi:1378 +msgid "When set to ``yes'', as is the case by default, the GC keeps derivations---i.e., @code{.drv} files---as long as at least one of their outputs is live. This allows users to keep track of the origins of items in their store. Setting it to ``no'' saves a bit of disk space." +msgstr "Lorsqu'elle est à « yes », comme c'est le cas par défaut, le GC garde les dérivations — c.-à-d.@: les fichiers @file{.drv} — tant qu'au moins une de leurs sorties est utilisée. Cela permet aux utilisateurs de garder une trace de l'origine des éléments du dépôt. Le mettre à « no » préserve un peu d'espace disque." + +#. type: table +#: doc/guix.texi:1385 +msgid "Note that when both @code{--gc-keep-derivations} and @code{--gc-keep-outputs} are used, the effect is to keep all the build prerequisites (the sources, compiler, libraries, and other build-time tools) of live objects in the store, regardless of whether these prerequisites are live. This is convenient for developers since it saves rebuilds or downloads." +msgstr "Remarquez qu'avec @code{--gc-keep-derivations} et @code{--gc-keep-outputs}, le GC gardera tous les prérequis de construction (les sources, le compilateur, les bibliothèques, et les autres outils de construction) des objets utilisés dans le dépôt, indépendamment du fait qu'ils soient ou non utilisés. Cela est pratique pour les développeurs car ça leur fait gagner du temps de reconstruction et de téléchargement." #. type: item -#: doc/guix.texi:1381 +#: doc/guix.texi:1386 #, no-wrap msgid "--impersonate-linux-2.6" -msgstr "" +msgstr "--impersonate-linux-2.6" #. type: table -#: doc/guix.texi:1384 -msgid "" -"On Linux-based systems, impersonate Linux 2.6. This means that the kernel's " -"@code{uname} system call will report 2.6 as the release number." -msgstr "" +#: doc/guix.texi:1389 +msgid "On Linux-based systems, impersonate Linux 2.6. This means that the kernel's @code{uname} system call will report 2.6 as the release number." +msgstr "Sur les système basés sur Linux, se faire passer pour Linux 2.6. Cela signifie que l'appel système du noyau @code{uname} rapportera 2.6 comme numéro de version." #. type: table -#: doc/guix.texi:1387 -msgid "" -"This might be helpful to build programs that (usually wrongfully) depend on " -"the kernel version number." -msgstr "" +#: doc/guix.texi:1392 +msgid "This might be helpful to build programs that (usually wrongfully) depend on the kernel version number." +msgstr "Cela peut être utile pour construire des programmes qui dépendent (généralement sans fondement) du numéro de version du noyau." #. type: item -#: doc/guix.texi:1388 +#: doc/guix.texi:1393 #, no-wrap msgid "--lose-logs" -msgstr "" - -#. type: table -#: doc/guix.texi:1391 -msgid "" -"Do not keep build logs. By default they are kept under " -"@code{@var{localstatedir}/guix/log}." -msgstr "" - -#. type: item -#: doc/guix.texi:1392 doc/guix.texi:2890 doc/guix.texi:5783 doc/guix.texi:6924 -#: doc/guix.texi:7332 doc/guix.texi:7966 doc/guix.texi:20048 -#: doc/guix.texi:20592 -#, no-wrap -msgid "--system=@var{system}" -msgstr "" +msgstr "--lose-logs" #. type: table #: doc/guix.texi:1396 -msgid "" -"Assume @var{system} as the current system type. By default it is the " -"architecture/kernel pair found at configure time, such as @code{x86_64-" -"linux}." -msgstr "" +msgid "Do not keep build logs. By default they are kept under @code{@var{localstatedir}/guix/log}." +msgstr "Ne pas garder les journaux de construction. Par défaut ils sont gardés dans @code{@var{localstatedir}/guix/log}." #. type: item -#: doc/guix.texi:1397 +#: doc/guix.texi:1397 doc/guix.texi:3009 doc/guix.texi:5954 doc/guix.texi:7134 +#: doc/guix.texi:7542 doc/guix.texi:8176 doc/guix.texi:20532 +#: doc/guix.texi:21076 #, no-wrap -msgid "--listen=@var{endpoint}" -msgstr "" +msgid "--system=@var{system}" +msgstr "--system=@var{système}" #. type: table -#: doc/guix.texi:1402 -msgid "" -"Listen for connections on @var{endpoint}. @var{endpoint} is interpreted as " -"the file name of a Unix-domain socket if it starts with @code{/} (slash " -"sign). Otherwise, @var{endpoint} is interpreted as a host name or host name " -"and port to listen to. Here are a few examples:" -msgstr "" +#: doc/guix.texi:1401 +msgid "Assume @var{system} as the current system type. By default it is the architecture/kernel pair found at configure time, such as @code{x86_64-linux}." +msgstr "Supposer que @var{système} est le type de système actuel. Par défaut c'est la paire architecture-noyau trouvée à la configuration, comme @code{x86_64-linux}." #. type: item -#: doc/guix.texi:1404 +#: doc/guix.texi:1402 #, no-wrap -msgid "--listen=/gnu/var/daemon" -msgstr "" +msgid "--listen=@var{endpoint}" +msgstr "--listen=@var{extrémité}" #. type: table #: doc/guix.texi:1407 -msgid "" -"Listen for connections on the @file{/gnu/var/daemon} Unix-domain socket, " -"creating it if needed." -msgstr "" +msgid "Listen for connections on @var{endpoint}. @var{endpoint} is interpreted as the file name of a Unix-domain socket if it starts with @code{/} (slash sign). Otherwise, @var{endpoint} is interpreted as a host name or host name and port to listen to. Here are a few examples:" +msgstr "Écouter les connexions sur @var{extrémité}. @var{extrémité} est interprété comme un nom de fichier d'un socket Unix-domain s'il commence par @code{/} (barre oblique). Sinon, @var{extrémité} est interprété comme un nom de domaine ou d'hôte et un port sur lequel écouter. Voici quelques exemples :" #. type: item -#: doc/guix.texi:1408 +#: doc/guix.texi:1409 +#, no-wrap +msgid "--listen=/gnu/var/daemon" +msgstr "--listen=/gnu/var/daemon" + +#. type: table +#: doc/guix.texi:1412 +msgid "Listen for connections on the @file{/gnu/var/daemon} Unix-domain socket, creating it if needed." +msgstr "Écouter les connexions sur le socket Unix-domain @file{/gnu/var/daemon} en le créant si besoin." + +#. type: item +#: doc/guix.texi:1413 #, no-wrap msgid "--listen=localhost" -msgstr "" +msgstr "--listen=localhost" #. type: cindex -#: doc/guix.texi:1409 doc/guix.texi:4235 +#: doc/guix.texi:1414 doc/guix.texi:4373 #, no-wrap msgid "daemon, remote access" -msgstr "" +msgstr "démon, accès distant" #. type: cindex -#: doc/guix.texi:1410 doc/guix.texi:4236 +#: doc/guix.texi:1415 doc/guix.texi:4374 #, no-wrap msgid "remote access to the daemon" -msgstr "" +msgstr "accès distant au démon" #. type: cindex -#: doc/guix.texi:1411 doc/guix.texi:4237 +#: doc/guix.texi:1416 doc/guix.texi:4375 #, no-wrap msgid "daemon, cluster setup" -msgstr "" +msgstr "démon, paramètres de grappes" #. type: cindex -#: doc/guix.texi:1412 doc/guix.texi:4238 +#: doc/guix.texi:1417 doc/guix.texi:4376 #, no-wrap msgid "clusters, daemon setup" -msgstr "" +msgstr "grappes, paramètres du démon" #. type: table -#: doc/guix.texi:1415 -msgid "" -"Listen for TCP connections on the network interface corresponding to " -"@code{localhost}, on port 44146." -msgstr "" +#: doc/guix.texi:1420 +msgid "Listen for TCP connections on the network interface corresponding to @code{localhost}, on port 44146." +msgstr "Écouter les connexions TCP sur l'interface réseau correspondant à @code{localhost} sur le port 44146." #. type: item -#: doc/guix.texi:1416 +#: doc/guix.texi:1421 #, no-wrap msgid "--listen=128.0.0.42:1234" -msgstr "" +msgstr "--listen=128.0.0.42:1234" #. type: table -#: doc/guix.texi:1419 -msgid "" -"Listen for TCP connections on the network interface corresponding to " -"@code{128.0.0.42}, on port 1234." -msgstr "" +#: doc/guix.texi:1424 +msgid "Listen for TCP connections on the network interface corresponding to @code{128.0.0.42}, on port 1234." +msgstr "Écouter les connexions TCP sur l'interface réseau correspondant à @code{128.0.0.42} sur le port 1234." #. type: table -#: doc/guix.texi:1426 -msgid "" -"This option can be repeated multiple times, in which case @command{guix-" -"daemon} accepts connections on all the specified endpoints. Users can tell " -"client commands what endpoint to connect to by setting the " -"@code{GUIX_DAEMON_SOCKET} environment variable (@pxref{The Store, " -"@code{GUIX_DAEMON_SOCKET}})." -msgstr "" +#: doc/guix.texi:1431 +msgid "This option can be repeated multiple times, in which case @command{guix-daemon} accepts connections on all the specified endpoints. Users can tell client commands what endpoint to connect to by setting the @code{GUIX_DAEMON_SOCKET} environment variable (@pxref{The Store, @code{GUIX_DAEMON_SOCKET}})." +msgstr "Cette option peut être répétée plusieurs fois, auquel cas @command{guix-daemon} accepte des connexions sur toutes les extrémités spécifiées. Les utilisateurs peuvent dire aux commandes clientes à quelle extrémité se connecter en paramétrant la variable d'environnement @code{GUIX_DAEMON_SOCKET} (@pxref{The Store, @code{GUIX_DAEMON_SOCKET}})." #. type: quotation -#: doc/guix.texi:1427 doc/guix.texi:2325 doc/guix.texi:2789 doc/guix.texi:2952 -#: doc/guix.texi:4205 doc/guix.texi:4273 doc/guix.texi:5788 doc/guix.texi:7224 -#: doc/guix.texi:7851 doc/guix.texi:8069 doc/guix.texi:8280 doc/guix.texi:11491 -#: doc/guix.texi:20375 doc/guix.texi:20573 doc/guix.texi:20660 -#: doc/guix.texi:21504 +#: doc/guix.texi:1432 doc/guix.texi:2330 doc/guix.texi:2844 doc/guix.texi:3071 +#: doc/guix.texi:4343 doc/guix.texi:4411 doc/guix.texi:5959 doc/guix.texi:5971 +#: doc/guix.texi:7434 doc/guix.texi:8061 doc/guix.texi:8279 doc/guix.texi:8490 +#: doc/guix.texi:11758 doc/guix.texi:20859 doc/guix.texi:21057 +#: doc/guix.texi:21144 doc/guix.texi:21988 #, no-wrap msgid "Note" -msgstr "" +msgstr "Remarque" #. type: quotation -#: doc/guix.texi:1433 -msgid "" -"The daemon protocol is @emph{unauthenticated and unencrypted}. Using " -"@code{--listen=@var{host}} is suitable on local networks, such as clusters, " -"where only trusted nodes may connect to the build daemon. In other cases " -"where remote access to the daemon is needed, we recommend using Unix-domain " -"sockets along with SSH." -msgstr "" +#: doc/guix.texi:1438 +msgid "The daemon protocol is @emph{unauthenticated and unencrypted}. Using @code{--listen=@var{host}} is suitable on local networks, such as clusters, where only trusted nodes may connect to the build daemon. In other cases where remote access to the daemon is needed, we recommend using Unix-domain sockets along with SSH." +msgstr "Le protocole du démon est @emph{non authentifié et non chiffré}. Utiliser @code{--listen=@var{host}} est adapté sur des réseaux locaux, comme pour des grappes de serveurs, où seuls des nœuds de confiance peuvent se connecter au démon de construction. Dans les autres cas où l'accès à distance au démon est requis, nous conseillons d'utiliser un socket Unix-domain avec SSH@." #. type: table -#: doc/guix.texi:1438 -msgid "" -"When @code{--listen} is omitted, @command{guix-daemon} listens for " -"connections on the Unix-domain socket located at @file{@var{localstatedir}/" -"guix/daemon-socket/socket}." -msgstr "" +#: doc/guix.texi:1443 +msgid "When @code{--listen} is omitted, @command{guix-daemon} listens for connections on the Unix-domain socket located at @file{@var{localstatedir}/guix/daemon-socket/socket}." +msgstr "Lorsque @code{--listen} est omis, @command{guix-daemon} écoute les connexions sur le socket Unix-domain situé à @file{@var{localstatedir}/guix/daemon-socket/socket}." #. type: Plain text -#: doc/guix.texi:1448 -msgid "" -"When using Guix on top of GNU/Linux distribution other than GuixSD---a so-" -"called @dfn{foreign distro}---a few additional steps are needed to get " -"everything in place. Here are some of them." -msgstr "" +#: doc/guix.texi:1453 +msgid "When using Guix on top of GNU/Linux distribution other than GuixSD---a so-called @dfn{foreign distro}---a few additional steps are needed to get everything in place. Here are some of them." +msgstr "Lorsque vous utilisez Guix par dessus une distribution GNU/Linux différente de GuixSD — ce qu'on appelle une @dfn{distro externe} — quelques étapes supplémentaires sont requises pour que tout soit en place. En voici certaines." #. type: anchor{#1} -#: doc/guix.texi:1452 +#: doc/guix.texi:1457 msgid "locales-and-locpath" -msgstr "" +msgstr "locales-and-locpath" #. type: cindex -#: doc/guix.texi:1452 +#: doc/guix.texi:1457 #, no-wrap msgid "locales, when not on GuixSD" -msgstr "" +msgstr "régionalisation, en dehors de GuixSD" #. type: vindex -#: doc/guix.texi:1453 doc/guix.texi:9549 +#: doc/guix.texi:1458 doc/guix.texi:9777 #, no-wrap msgid "LOCPATH" -msgstr "" +msgstr "LOCPATH" #. type: vindex -#: doc/guix.texi:1454 +#: doc/guix.texi:1459 #, no-wrap msgid "GUIX_LOCPATH" -msgstr "" +msgstr "GUIX_LOCPATH" #. type: Plain text -#: doc/guix.texi:1459 -msgid "" -"Packages installed @i{via} Guix will not use the locale data of the host " -"system. Instead, you must first install one of the locale packages " -"available with Guix and then define the @code{GUIX_LOCPATH} environment " -"variable:" -msgstr "" +#: doc/guix.texi:1464 +msgid "Packages installed @i{via} Guix will not use the locale data of the host system. Instead, you must first install one of the locale packages available with Guix and then define the @code{GUIX_LOCPATH} environment variable:" +msgstr "Les paquets installés @i{via} Guix n'utiliseront pas les données de régionalisation du système hôte. À la place, vous devrez d'abord installer l'un des paquets linguistiques disponibles dans Guix puis définir la variable d'environnement @code{GUIX_LOCPATH} :" #. type: example -#: doc/guix.texi:1463 +#: doc/guix.texi:1468 #, no-wrap msgid "" "$ guix package -i glibc-locales\n" "$ export GUIX_LOCPATH=$HOME/.guix-profile/lib/locale\n" msgstr "" +"$ guix package -i glibc-locales\n" +"$ export GUIX_LOCPATH=$HOME/.guix-profile/lib/locale\n" #. type: Plain text -#: doc/guix.texi:1469 -msgid "" -"Note that the @code{glibc-locales} package contains data for all the locales " -"supported by the GNU@tie{}libc and weighs in at around 110@tie{}MiB. " -"Alternatively, the @code{glibc-utf8-locales} is smaller but limited to a few " -"UTF-8 locales." -msgstr "" +#: doc/guix.texi:1474 +msgid "Note that the @code{glibc-locales} package contains data for all the locales supported by the GNU@tie{}libc and weighs in at around 110@tie{}MiB. Alternatively, the @code{glibc-utf8-locales} is smaller but limited to a few UTF-8 locales." +msgstr "Remarquez que le paquet @code{glibc-locales} contient les données pour tous les environnement linguistiques supportés par la GNU@tie{}libc et pèse environ 110@tie{}Mo. Autrement, les @code{glibc-utf8-locales} est plus petit mais limité à quelques environnements UTF-8." #. type: Plain text -#: doc/guix.texi:1473 -msgid "" -"The @code{GUIX_LOCPATH} variable plays a role similar to @code{LOCPATH} " -"(@pxref{Locale Names, @code{LOCPATH},, libc, The GNU C Library Reference " -"Manual}). There are two important differences though:" -msgstr "" +#: doc/guix.texi:1478 +msgid "The @code{GUIX_LOCPATH} variable plays a role similar to @code{LOCPATH} (@pxref{Locale Names, @code{LOCPATH},, libc, The GNU C Library Reference Manual}). There are two important differences though:" +msgstr "La variable @code{GUIX_LOCPATH} joue un rôle similaire à @code{LOCPATH} (@pxref{Locale Names, @code{LOCPATH},, libc, The GNU C Library Reference Manual}). Il y a deux différences importantes cependant :" #. type: enumerate -#: doc/guix.texi:1480 -msgid "" -"@code{GUIX_LOCPATH} is honored only by the libc in Guix, and not by the libc " -"provided by foreign distros. Thus, using @code{GUIX_LOCPATH} allows you to " -"make sure the programs of the foreign distro will not end up loading " -"incompatible locale data." -msgstr "" +#: doc/guix.texi:1485 +msgid "@code{GUIX_LOCPATH} is honored only by the libc in Guix, and not by the libc provided by foreign distros. Thus, using @code{GUIX_LOCPATH} allows you to make sure the programs of the foreign distro will not end up loading incompatible locale data." +msgstr "@code{GUIX_LOCPATH} n'est compris que par la libc dans Guix et pas par la libc fournie par les distros externes. Ainsi, utiliser @code{GUIX_LOCPATH} vous permet de vous assurer que les programmes de la distro externe ne chargeront pas de données linguistiques incompatibles." #. type: enumerate -#: doc/guix.texi:1487 -msgid "" -"libc suffixes each entry of @code{GUIX_LOCPATH} with @code{/X.Y}, where " -"@code{X.Y} is the libc version---e.g., @code{2.22}. This means that, should " -"your Guix profile contain a mixture of programs linked against different " -"libc version, each libc version will only try to load locale data in the " -"right format." -msgstr "" +#: doc/guix.texi:1492 +msgid "libc suffixes each entry of @code{GUIX_LOCPATH} with @code{/X.Y}, where @code{X.Y} is the libc version---e.g., @code{2.22}. This means that, should your Guix profile contain a mixture of programs linked against different libc version, each libc version will only try to load locale data in the right format." +msgstr "La libc ajoute un suffixe @code{/X.Y} à chaque entrée de @code{GUIX_LOCPATH}, où @code{X.Y} est la version de la libc — p.@: ex.@: @code{2.22}. Cela signifie que, si votre profile Guix contient un mélange de programmes liés avec des versions différentes de la libc, chaque version de la libc essaiera de charger les environnements linguistiques dans le bon format." #. type: Plain text -#: doc/guix.texi:1491 -msgid "" -"This is important because the locale data format used by different libc " -"versions may be incompatible." -msgstr "" +#: doc/guix.texi:1496 +msgid "This is important because the locale data format used by different libc versions may be incompatible." +msgstr "Cela est important car le format des données linguistiques utilisés par différentes version de la libc peuvent être incompatibles." #. type: cindex -#: doc/guix.texi:1494 +#: doc/guix.texi:1499 #, no-wrap msgid "name service switch, glibc" -msgstr "" +msgstr "name service switch, glibc" #. type: cindex -#: doc/guix.texi:1495 +#: doc/guix.texi:1500 #, no-wrap msgid "NSS (name service switch), glibc" -msgstr "" +msgstr "NSS (name service switch), glibc" #. type: cindex -#: doc/guix.texi:1496 +#: doc/guix.texi:1501 #, no-wrap msgid "nscd (name service caching daemon)" -msgstr "" +msgstr "nscd (name service caching daemon)" #. type: cindex -#: doc/guix.texi:1497 +#: doc/guix.texi:1502 #, no-wrap msgid "name service caching daemon (nscd)" -msgstr "" +msgstr "name service caching daemon (nscd)" #. type: Plain text -#: doc/guix.texi:1504 -msgid "" -"When using Guix on a foreign distro, we @emph{strongly recommend} that the " -"system run the GNU C library's @dfn{name service cache daemon}, " -"@command{nscd}, which should be listening on the @file{/var/run/nscd/socket} " -"socket. Failing to do that, applications installed with Guix may fail to " -"look up host names or user accounts, or may even crash. The next paragraphs " -"explain why." -msgstr "" +#: doc/guix.texi:1509 +msgid "When using Guix on a foreign distro, we @emph{strongly recommend} that the system run the GNU C library's @dfn{name service cache daemon}, @command{nscd}, which should be listening on the @file{/var/run/nscd/socket} socket. Failing to do that, applications installed with Guix may fail to look up host names or user accounts, or may even crash. The next paragraphs explain why." +msgstr "Lorsque vous utilisez Guix sur une distro externe, nous @emph{recommandons fortement} que ce système fasse tourner le @dfn{démon de cache de service de noms} de la bibliothèque C de GNU, @command{nscd}, qui devrait écouter sur le socket @file{/var/run/nscd/socket}. Sans cela, les applications installées avec Guix peuvent échouer à résoudre des noms d'hôtes ou d'utilisateurs, ou même planter. Les paragraphes suivants expliquent pourquoi." #. type: file{#1} -#: doc/guix.texi:1505 +#: doc/guix.texi:1510 #, no-wrap msgid "nsswitch.conf" -msgstr "" +msgstr "nsswitch.conf" #. type: Plain text -#: doc/guix.texi:1510 -msgid "" -"The GNU C library implements a @dfn{name service switch} (NSS), which is an " -"extensible mechanism for ``name lookups'' in general: host name resolution, " -"user accounts, and more (@pxref{Name Service Switch,,, libc, The GNU C " -"Library Reference Manual})." -msgstr "" +#: doc/guix.texi:1515 +msgid "The GNU C library implements a @dfn{name service switch} (NSS), which is an extensible mechanism for ``name lookups'' in general: host name resolution, user accounts, and more (@pxref{Name Service Switch,,, libc, The GNU C Library Reference Manual})." +msgstr "La bibliothèque C de GNU implémente un @dfn{name service switch} (NSS), qui est un mécanisme d'extension pour les « résolutions de noms » en général : résolution de nom d'hôte, de compte utilisateur et plus (@pxref{Name Service Switch,,, libc, The GNU C Library Reference Manual})." #. type: cindex -#: doc/guix.texi:1511 +#: doc/guix.texi:1516 #, no-wrap msgid "Network information service (NIS)" -msgstr "" +msgstr "Network information service (NIS)" #. type: cindex -#: doc/guix.texi:1512 +#: doc/guix.texi:1517 #, no-wrap msgid "NIS (Network information service)" -msgstr "" +msgstr "NIS (Network information service)" #. type: Plain text -#: doc/guix.texi:1521 -msgid "" -"Being extensible, the NSS supports @dfn{plugins}, which provide new name " -"lookup implementations: for example, the @code{nss-mdns} plugin allow " -"resolution of @code{.local} host names, the @code{nis} plugin allows user " -"account lookup using the Network information service (NIS), and so on. " -"These extra ``lookup services'' are configured system-wide in @file{/etc/" -"nsswitch.conf}, and all the programs running on the system honor those " -"settings (@pxref{NSS Configuration File,,, libc, The GNU C Reference " -"Manual})." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:1531 -msgid "" -"When they perform a name lookup---for instance by calling the " -"@code{getaddrinfo} function in C---applications first try to connect to the " -"nscd; on success, nscd performs name lookups on their behalf. If the nscd " -"is not running, then they perform the name lookup by themselves, by loading " -"the name lookup services into their own address space and running it. These " -"name lookup services---the @file{libnss_*.so} files---are @code{dlopen}'d, " -"but they may come from the host system's C library, rather than from the C " -"library the application is linked against (the C library coming from Guix)." -msgstr "" +#: doc/guix.texi:1526 +msgid "Being extensible, the NSS supports @dfn{plugins}, which provide new name lookup implementations: for example, the @code{nss-mdns} plugin allow resolution of @code{.local} host names, the @code{nis} plugin allows user account lookup using the Network information service (NIS), and so on. These extra ``lookup services'' are configured system-wide in @file{/etc/nsswitch.conf}, and all the programs running on the system honor those settings (@pxref{NSS Configuration File,,, libc, The GNU C Reference Manual})." +msgstr "Comme il est extensible, NSS supporte des @dfn{greffons} qui fournissent une nouvelle implémentation de résolution de nom : par exemple le greffon @code{nss-mdns} permet la résolution de noms d'hôtes en @code{.local}, le greffon @code{nis} permet la résolution de comptes utilisateurs avec le Network Information Service (NIS), etc. Ces « services de recherches » supplémentaires sont configurés au niveau du système dans @file{/etc/nsswitch.conf}, et tous les programmes qui tournent sur ce système honorent ces paramètres (@pxref{NSS Configuration File,,, libc, The GNU C Reference Manual})" #. type: Plain text #: doc/guix.texi:1536 -msgid "" -"And this is where the problem is: if your application is linked against " -"Guix's C library (say, glibc 2.24) and tries to load NSS plugins from " -"another C library (say, @code{libnss_mdns.so} for glibc 2.22), it will " -"likely crash or have its name lookups fail unexpectedly." -msgstr "" +msgid "When they perform a name lookup---for instance by calling the @code{getaddrinfo} function in C---applications first try to connect to the nscd; on success, nscd performs name lookups on their behalf. If the nscd is not running, then they perform the name lookup by themselves, by loading the name lookup services into their own address space and running it. These name lookup services---the @file{libnss_*.so} files---are @code{dlopen}'d, but they may come from the host system's C library, rather than from the C library the application is linked against (the C library coming from Guix)." +msgstr "Lorsqu'ils essayent d'effectuer une résolution de nom — par exemple en appelant la fonction @code{getaddrinfo} en C — les applications essayent d'abord de se connecter au nscd ; en cas de réussite, nscd effectue la résolution de nom pour eux. Si le nscd ne tourne pas, alors ils effectue la résolution eux-même, en changeant les service de résolution dans leur propre espace d'adressage et en le lançant. Ce services de résolution de noms — les fichiers @file{libnns_*.so} — sont @code{dlopen}és mais ils peuvent provenir de la bibliothèque C du système, plutôt que de la bibliothèque C à laquelle l'application est liée (la bibliothèque C de Guix)." #. type: Plain text #: doc/guix.texi:1541 -msgid "" -"Running @command{nscd} on the system, among other advantages, eliminates " -"this binary incompatibility problem because those @code{libnss_*.so} files " -"are loaded in the @command{nscd} process, not in applications themselves." -msgstr "" +msgid "And this is where the problem is: if your application is linked against Guix's C library (say, glibc 2.24) and tries to load NSS plugins from another C library (say, @code{libnss_mdns.so} for glibc 2.22), it will likely crash or have its name lookups fail unexpectedly." +msgstr "Et c'est là que se trouve le problème : si votre application est liée à la bibliothèque C de Guix (disons, glibc-2.24) et essaye de charger les greffons NSS d'une autre bibliothèque C (disons, @code{libnss_mdns.so} pour glibc-2.22), il est très probable qu'elle plante ou que sa résolution de nom échoue de manière inattendue." + +#. type: Plain text +#: doc/guix.texi:1546 +msgid "Running @command{nscd} on the system, among other advantages, eliminates this binary incompatibility problem because those @code{libnss_*.so} files are loaded in the @command{nscd} process, not in applications themselves." +msgstr "Lancer @command{nscd} sur le système, entre autres avantages, élimine ce problème d'incompatibilité binaire car ces fichiers @code{libnss_*.so} sont chargés par le processus @command{nscd}, pas par l'application elle-même." #. type: subsection -#: doc/guix.texi:1542 +#: doc/guix.texi:1547 #, no-wrap msgid "X11 Fonts" -msgstr "" +msgstr "Polices X11" #. type: cindex -#: doc/guix.texi:1544 doc/guix.texi:22070 +#: doc/guix.texi:1549 doc/guix.texi:22554 #, no-wrap msgid "fonts" -msgstr "" +msgstr "polices" #. type: Plain text -#: doc/guix.texi:1552 -msgid "" -"The majority of graphical applications use Fontconfig to locate and load " -"fonts and perform X11-client-side rendering. The @code{fontconfig} package " -"in Guix looks for fonts in @file{$HOME/.guix-profile} by default. Thus, to " -"allow graphical applications installed with Guix to display fonts, you have " -"to install fonts with Guix as well. Essential font packages include " -"@code{gs-fonts}, @code{font-dejavu}, and @code{font-gnu-freefont-ttf}." -msgstr "" +#: doc/guix.texi:1557 +msgid "The majority of graphical applications use Fontconfig to locate and load fonts and perform X11-client-side rendering. The @code{fontconfig} package in Guix looks for fonts in @file{$HOME/.guix-profile} by default. Thus, to allow graphical applications installed with Guix to display fonts, you have to install fonts with Guix as well. Essential font packages include @code{gs-fonts}, @code{font-dejavu}, and @code{font-gnu-freefont-ttf}." +msgstr "La majorité des applications graphiques utilisent fontconfig pour trouver et charger les police et effectuer le rendu côté client X11. Le paquet @code{fontconfig} dans Guix cherche les polices dans @file{$HOME/.guix-profile} par défaut. Ainsi, pour permettre aux applications graphiques installées avec Guix d'afficher des polices, vous devez aussi installer des polices avec Guix. Les paquets de polices essentiels sont @code{gs-fonts}, @code{font-dejavu} et @code{font-gnu-freefont-ttf}." #. type: Plain text -#: doc/guix.texi:1559 -msgid "" -"To display text written in Chinese languages, Japanese, or Korean in " -"graphical applications, consider installing @code{font-adobe-source-han-" -"sans} or @code{font-wqy-zenhei}. The former has multiple outputs, one per " -"language family (@pxref{Packages with Multiple Outputs}). For instance, the " -"following command installs fonts for Chinese languages:" -msgstr "" +#: doc/guix.texi:1564 +msgid "To display text written in Chinese languages, Japanese, or Korean in graphical applications, consider installing @code{font-adobe-source-han-sans} or @code{font-wqy-zenhei}. The former has multiple outputs, one per language family (@pxref{Packages with Multiple Outputs}). For instance, the following command installs fonts for Chinese languages:" +msgstr "Pour afficher des textes écrits en chinois, en japonais ou en coréen dans les applications graphiques, installez @code{font-adobe-source-han-sans} ou @code{font-wqy-zenhei}. Le premier a plusieurs sorties, une par famille de langue (@pxref{Packages with Multiple Outputs}). Par exemple, la commande suivante installe les polices pour le chinois :" #. type: example -#: doc/guix.texi:1562 +#: doc/guix.texi:1567 #, no-wrap msgid "guix package -i font-adobe-source-han-sans:cn\n" -msgstr "" +msgstr "guix package -i font-adobe-source-han-sans:cn\n" #. type: code{#1} -#: doc/guix.texi:1564 +#: doc/guix.texi:1569 #, no-wrap msgid "xterm" -msgstr "" +msgstr "xterm" #. type: Plain text -#: doc/guix.texi:1568 -msgid "" -"Older programs such as @command{xterm} do not use Fontconfig and instead " -"rely on server-side font rendering. Such programs require to specify a full " -"name of a font using XLFD (X Logical Font Description), like this:" -msgstr "" +#: doc/guix.texi:1573 +msgid "Older programs such as @command{xterm} do not use Fontconfig and instead rely on server-side font rendering. Such programs require to specify a full name of a font using XLFD (X Logical Font Description), like this:" +msgstr "Les vieux programmes comme @command{xterm} n'utilisent pas fontconfig et s'appuient sur le rendu du côté du serveur. Ces programmes ont besoin de spécifier le nom complet de la police en utlisant XLFD (X Logical Font Description), comme ceci :" #. type: example -#: doc/guix.texi:1571 +#: doc/guix.texi:1576 #, no-wrap msgid "-*-dejavu sans-medium-r-normal-*-*-100-*-*-*-*-*-1\n" -msgstr "" +msgstr "-*-dejavu sans-medium-r-normal-*-*-100-*-*-*-*-*-1\n" #. type: Plain text -#: doc/guix.texi:1575 -msgid "" -"To be able to use such full names for the TrueType fonts installed in your " -"Guix profile, you need to extend the font path of the X server:" -msgstr "" +#: doc/guix.texi:1580 +msgid "To be able to use such full names for the TrueType fonts installed in your Guix profile, you need to extend the font path of the X server:" +msgstr "Pour pouvoir utiliser ces noms complets avec les polices TrueType installées dans votre profil Guix, vous devez étendre le chemin des polices du serveur X :" #. type: example -#: doc/guix.texi:1580 +#: doc/guix.texi:1585 #, no-wrap msgid "xset +fp $(dirname $(readlink -f ~/.guix-profile/share/fonts/truetype/fonts.dir))\n" -msgstr "" +msgstr "xset +fp $(dirname $(readlink -f ~/.guix-profile/share/fonts/truetype/fonts.dir))\n" #. type: code{#1} -#: doc/guix.texi:1582 -#, no-wrap -msgid "xlsfonts" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:1585 -msgid "" -"After that, you can run @code{xlsfonts} (from @code{xlsfonts} package) to " -"make sure your TrueType fonts are listed there." -msgstr "" - -#. type: code{#1} -#: doc/guix.texi:1586 -#, no-wrap -msgid "fc-cache" -msgstr "" - -#. type: cindex #: doc/guix.texi:1587 #, no-wrap -msgid "font cache" -msgstr "" +msgid "xlsfonts" +msgstr "xlsfonts" #. type: Plain text -#: doc/guix.texi:1593 -msgid "" -"After installing fonts you may have to refresh the font cache to use them in " -"applications. The same applies when applications installed via Guix do not " -"seem to find fonts. To force rebuilding of the font cache run @code{fc-" -"cache -f}. The @code{fc-cache} command is provided by the @code{fontconfig} " -"package." -msgstr "" +#: doc/guix.texi:1590 +msgid "After that, you can run @code{xlsfonts} (from @code{xlsfonts} package) to make sure your TrueType fonts are listed there." +msgstr "Ensuite, vous pouvez lancer @code{xlsfonts} (du paquet @code{xlsfonts}) pour vous assurer que vos polices TrueType y sont listées." #. type: code{#1} -#: doc/guix.texi:1596 doc/guix.texi:19787 +#: doc/guix.texi:1591 #, no-wrap -msgid "nss-certs" -msgstr "" +msgid "fc-cache" +msgstr "fc-cache" + +#. type: cindex +#: doc/guix.texi:1592 +#, no-wrap +msgid "font cache" +msgstr "cache de polices" #. type: Plain text -#: doc/guix.texi:1599 -msgid "" -"The @code{nss-certs} package provides X.509 certificates, which allow " -"programs to authenticate Web servers accessed over HTTPS." -msgstr "" +#: doc/guix.texi:1598 +msgid "After installing fonts you may have to refresh the font cache to use them in applications. The same applies when applications installed via Guix do not seem to find fonts. To force rebuilding of the font cache run @code{fc-cache -f}. The @code{fc-cache} command is provided by the @code{fontconfig} package." +msgstr "Après l'installation des polices vous devrez peut-être rafraîchir le cache des polices pour pouvoir les utiliser dans les applications. Ça s'applique aussi lorsque les applications installées avec Guix n'ont pas l'air de trouver les polices. Pour forcer la reconstruction du cache de polices lancez @code{fc-cache -f}. La commande @code{fc-cache} est fournie par le paquet @code{fontconfig}." + +#. type: code{#1} +#: doc/guix.texi:1601 doc/guix.texi:20271 +#, no-wrap +msgid "nss-certs" +msgstr "nss-certs" #. type: Plain text #: doc/guix.texi:1604 -msgid "" -"When using Guix on a foreign distro, you can install this package and define " -"the relevant environment variables so that packages know where to look for " -"certificates. @xref{X.509 Certificates}, for detailed information." -msgstr "" +msgid "The @code{nss-certs} package provides X.509 certificates, which allow programs to authenticate Web servers accessed over HTTPS." +msgstr "Le paquet @code{nss-certs} fournit les certificats X.509 qui permettent aux programmes d'authentifier les serveurs web par HTTPS@." + +#. type: Plain text +#: doc/guix.texi:1609 +msgid "When using Guix on a foreign distro, you can install this package and define the relevant environment variables so that packages know where to look for certificates. @xref{X.509 Certificates}, for detailed information." +msgstr "Lorsque vous utilisez Guix sur une distribution externe, vous pouvez installer ce paquet et définir les variables d'environnement adéquates pour que les paquets sachent où trouver les certificats. @xref{X.509 Certificates}, pour des informations détaillées." #. type: subsection -#: doc/guix.texi:1605 +#: doc/guix.texi:1610 #, no-wrap msgid "Emacs Packages" -msgstr "" +msgstr "Paquets emacs" #. type: code{#1} -#: doc/guix.texi:1607 +#: doc/guix.texi:1612 #, no-wrap msgid "emacs" -msgstr "" +msgstr "emacs" #. type: Plain text -#: doc/guix.texi:1618 -msgid "" -"When you install Emacs packages with Guix, the elisp files may be placed " -"either in @file{$HOME/.guix-profile/share/emacs/site-lisp/} or in sub-" -"directories of @file{$HOME/.guix-profile/share/emacs/site-lisp/guix.d/}. " -"The latter directory exists because potentially there may exist thousands of " -"Emacs packages and storing all their files in a single directory may not be " -"reliable (because of name conflicts). So we think using a separate " -"directory for each package is a good idea. It is very similar to how the " -"Emacs package system organizes the file structure (@pxref{Package Files,,, " -"emacs, The GNU Emacs Manual})." -msgstr "" +#: doc/guix.texi:1623 +msgid "When you install Emacs packages with Guix, the elisp files may be placed either in @file{$HOME/.guix-profile/share/emacs/site-lisp/} or in sub-directories of @file{$HOME/.guix-profile/share/emacs/site-lisp/guix.d/}. The latter directory exists because potentially there may exist thousands of Emacs packages and storing all their files in a single directory may not be reliable (because of name conflicts). So we think using a separate directory for each package is a good idea. It is very similar to how the Emacs package system organizes the file structure (@pxref{Package Files,,, emacs, The GNU Emacs Manual})." +msgstr "Lorsque vous installez les paquets Emacs avec Guix, les fichiers elisp peuvent être placés soit dans @file{$HOME/.guix-profile/share/emacs/site-lisp/} soit dans des sous-répertoires de @file{$HOME/.guix-profile/share/emacs/site-lisp/guix.d/}. Ce dernier existe car il existe potentiellement des milliers de paquets Emacs et stocker leurs fichiers dans un seul répertoire peut ne pas être fiable (à cause de conflits de noms). Donc on pense qu'utiliser un répertoire séparé est une bonne idée. C'est très similaire à la manière dont le système de paquet d'Emacs organise la structure de fichiers (@pxref{Package Files,,, emacs, The GNU Emacs Manual})." #. type: Plain text -#: doc/guix.texi:1624 -msgid "" -"By default, Emacs (installed with Guix) ``knows'' where these packages are " -"placed, so you do not need to perform any configuration. If, for some " -"reason, you want to avoid auto-loading Emacs packages installed with Guix, " -"you can do so by running Emacs with @code{--no-site-file} option " -"(@pxref{Init File,,, emacs, The GNU Emacs Manual})." -msgstr "" +#: doc/guix.texi:1629 +msgid "By default, Emacs (installed with Guix) ``knows'' where these packages are placed, so you do not need to perform any configuration. If, for some reason, you want to avoid auto-loading Emacs packages installed with Guix, you can do so by running Emacs with @code{--no-site-file} option (@pxref{Init File,,, emacs, The GNU Emacs Manual})." +msgstr "Par défaut, Emacs (installé avec Guix) « sait » où ces paquets ce trouvent, donc vous n'avez pas besoin de le configurer. Si, pour quelque raison que ce soit, vous souhaitez éviter de charger automatiquement les paquets Emacs installés avec Guix, vous pouvez le faire en lançaint Emacs avec l'option @code{--no-site-file} (@pxref{Init File,,, emacs, The GNU Emacs Manual})." #. type: subsection -#: doc/guix.texi:1625 +#: doc/guix.texi:1630 #, no-wrap msgid "The GCC toolchain" -msgstr "" +msgstr "La chaîne d'outils GCC" #. type: cindex -#: doc/guix.texi:1627 +#: doc/guix.texi:1632 #, no-wrap msgid "GCC" -msgstr "" +msgstr "GCC" #. type: cindex -#: doc/guix.texi:1628 +#: doc/guix.texi:1633 #, no-wrap msgid "ld-wrapper" -msgstr "" +msgstr "ld-wrapper" #. type: Plain text -#: doc/guix.texi:1637 -msgid "" -"Guix offers individual compiler packages such as @code{gcc} but if you are " -"in need of a complete toolchain for compiling and linking source code what " -"you really want is the @code{gcc-toolchain} package. This package provides " -"a complete GCC toolchain for C/C++ development, including GCC itself, the " -"GNU C Library (headers and binaries, plus debugging symbols in the " -"@code{debug} output), Binutils, and a linker wrapper." -msgstr "" +#: doc/guix.texi:1642 +msgid "Guix offers individual compiler packages such as @code{gcc} but if you are in need of a complete toolchain for compiling and linking source code what you really want is the @code{gcc-toolchain} package. This package provides a complete GCC toolchain for C/C++ development, including GCC itself, the GNU C Library (headers and binaries, plus debugging symbols in the @code{debug} output), Binutils, and a linker wrapper." +msgstr "Guix offre des paquets de compilateurs individuels comme @code{gcc} mais si vous avez besoin d'une chaîne de compilation complète pour compiler et lier du code source, vous avez en fait besoin du paquet @code{gcc-toolchain}. Ce paquet fournit une chaîne d'outils GCC pour le développement C/C++, dont GCC lui-même, la bibliothèque C de GNU (les en-têtes et les binaires, plus les symboles de débogage dans la sortie @code{debug}), Binutils et une enveloppe pour l'éditeur de liens." #. type: cindex -#: doc/guix.texi:1638 +#: doc/guix.texi:1643 #, no-wrap msgid "attempt to use impure library, error message" -msgstr "" +msgstr "tentative d'utiliser une bibliothèque impure, message d'erreur" #. type: Plain text -#: doc/guix.texi:1648 -msgid "" -"The wrapper's purpose is to inspect the @code{-L} and @code{-l} switches " -"passed to the linker, add corresponding @code{-rpath} arguments, and invoke " -"the actual linker with this new set of arguments. By default, the linker " -"wrapper refuses to link to libraries outside the store to ensure " -"``purity''. This can be annoying when using the toolchain to link with " -"local libraries. To allow references to libraries outside the store you " -"need to define the environment variable " -"@code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES}." -msgstr "" +#: doc/guix.texi:1653 +msgid "The wrapper's purpose is to inspect the @code{-L} and @code{-l} switches passed to the linker, add corresponding @code{-rpath} arguments, and invoke the actual linker with this new set of arguments. By default, the linker wrapper refuses to link to libraries outside the store to ensure ``purity''. This can be annoying when using the toolchain to link with local libraries. To allow references to libraries outside the store you need to define the environment variable @code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES}." +msgstr "Le rôle de l'enveloppe est d'inspecter les paramètres @code{-L} et @code{-l} passés à l'éditeur de liens, d'ajouter des arguments @code{-rpath} correspondants et d'invoquer le véritable éditeur de liens avec ce nouvel ensemble d'arguments. Par défaut, l'enveloppe refuse de lier des bibliothèques en dehors du dépôt pour assure la « pureté ». Cela peut être embêtant lorsque vous utilisez la chaîne d'outils pour lier des bibliothèques locales. Pour permettre des références à des bibliothèques en dehors du dépôt, vous devrez définir la variable d'environnement @code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES}." #. type: cindex -#: doc/guix.texi:1655 +#: doc/guix.texi:1660 #, no-wrap msgid "packages" -msgstr "" +msgstr "paquets" #. type: Plain text -#: doc/guix.texi:1660 -msgid "" -"The purpose of GNU Guix is to allow users to easily install, upgrade, and " -"remove software packages, without having to know about their build " -"procedures or dependencies. Guix also goes beyond this obvious set of " -"features." -msgstr "" +#: doc/guix.texi:1665 +msgid "The purpose of GNU Guix is to allow users to easily install, upgrade, and remove software packages, without having to know about their build procedures or dependencies. Guix also goes beyond this obvious set of features." +msgstr "Le but de GNU Guix est de permettre à ses utilisateurs d'installer, mettre à jour et supprimer facilement des paquets logiciels sans devoir connaître leur procédure de construction ou leurs dépendances. Guix va aussi plus loin que ces fonctionnalités évidentes." #. type: Plain text -#: doc/guix.texi:1668 -msgid "" -"This chapter describes the main features of Guix, as well as the package " -"management tools it provides. Along with the command-line interface " -"described below (@pxref{Invoking guix package, @code{guix package}}), you " -"may also use the Emacs-Guix interface (@pxref{Top,,, emacs-guix, The Emacs-" -"Guix Reference Manual}), after installing @code{emacs-guix} package (run " -"@kbd{M-x guix-help} command to start with it):" -msgstr "" -"Ce chapitre décrit les principales fonctionnalités de Guix, ainsi que des " -"outils de gestion des paquets qu'il fournit. En plus de l'interface en ligne " -"de commande décrite en dessous de (@pxref{Invoquer guix package, @code{guix " -"package}}), vous pouvez aussi utiliser l'interface Emacs-Guix (@pxref{Top,,, " -"emacs-guix, Le manuel de référence de emacs-guix}), après avoir installé le " -"paquet @code{emacs-guix} (lancez la commande @kbd{M-x guix-help} pour le " -"démarrer) :" +#: doc/guix.texi:1673 +msgid "This chapter describes the main features of Guix, as well as the package management tools it provides. Along with the command-line interface described below (@pxref{Invoking guix package, @code{guix package}}), you may also use the Emacs-Guix interface (@pxref{Top,,, emacs-guix, The Emacs-Guix Reference Manual}), after installing @code{emacs-guix} package (run @kbd{M-x guix-help} command to start with it):" +msgstr "Ce chapitre décrit les principales fonctionnalités de Guix, ainsi que des outils de gestion des paquets qu'il fournit. En plus de l'interface en ligne de commande décrite en dessous de (@pxref{Invoquer guix package, @code{guix package}}), vous pouvez aussi utiliser l'interface Emacs-Guix (@pxref{Top,,, emacs-guix, Le manuel de référence de emacs-guix}), après avoir installé le paquet @code{emacs-guix} (lancez la commande @kbd{M-x guix-help} pour le démarrer) :" #. type: example -#: doc/guix.texi:1671 +#: doc/guix.texi:1676 #, no-wrap msgid "guix package -i emacs-guix\n" msgstr "guix package -i emacs-guix\n" -#. type: Plain text -#: doc/guix.texi:1690 -msgid "" -"When using Guix, each package ends up in the @dfn{package store}, in its own " -"directory---something that resembles @file{/gnu/store/xxx-package-1.2}, " -"where @code{xxx} is a base32 string." -msgstr "" - #. type: Plain text #: doc/guix.texi:1695 -msgid "" -"Instead of referring to these directories, users have their own " -"@dfn{profile}, which points to the packages that they actually want to use. " -"These profiles are stored within each user's home directory, at @code{$HOME/." -"guix-profile}." -msgstr "" +msgid "When using Guix, each package ends up in the @dfn{package store}, in its own directory---something that resembles @file{/gnu/store/xxx-package-1.2}, where @code{xxx} is a base32 string." +msgstr "Lorsque vous utilisez Guix, chaque paquet arrive dans @dfn{dépôt des paquets}, dans son propre répertoire — quelque chose comme @file{/gnu/store/xxx-paquet-1.2}, où @code{xxx} est une chaîne en base32." #. type: Plain text -#: doc/guix.texi:1703 -msgid "" -"For example, @code{alice} installs GCC 4.7.2. As a result, @file{/home/" -"alice/.guix-profile/bin/gcc} points to @file{/gnu/store/@dots{}-gcc-4.7.2/" -"bin/gcc}. Now, on the same machine, @code{bob} had already installed GCC " -"4.8.0. The profile of @code{bob} simply continues to point to @file{/gnu/" -"store/@dots{}-gcc-4.8.0/bin/gcc}---i.e., both versions of GCC coexist on the " -"same system without any interference." -msgstr "" +#: doc/guix.texi:1700 +msgid "Instead of referring to these directories, users have their own @dfn{profile}, which points to the packages that they actually want to use. These profiles are stored within each user's home directory, at @code{$HOME/.guix-profile}." +msgstr "Plutôt que de se rapporter à ces répertoires, les utilisateurs ont leur propre @dfn{profil} qui pointe vers les paquets qu'ils veulent vraiment utiliser. Ces profils sont stockés dans le répertoire personnel de chaque utilisateur dans @code{$HOME/.guix-profile}." #. type: Plain text -#: doc/guix.texi:1707 -msgid "" -"The @command{guix package} command is the central tool to manage packages " -"(@pxref{Invoking guix package}). It operates on the per-user profiles, and " -"can be used @emph{with normal user privileges}." -msgstr "" +#: doc/guix.texi:1708 +msgid "For example, @code{alice} installs GCC 4.7.2. As a result, @file{/home/alice/.guix-profile/bin/gcc} points to @file{/gnu/store/@dots{}-gcc-4.7.2/bin/gcc}. Now, on the same machine, @code{bob} had already installed GCC 4.8.0. The profile of @code{bob} simply continues to point to @file{/gnu/store/@dots{}-gcc-4.8.0/bin/gcc}---i.e., both versions of GCC coexist on the same system without any interference." +msgstr "Par exemple, @code{alice} installe GCC 4.7.2. Il en résulte que @file{/home/alice/.guix-profile/bin/gcc} pointe vers @file{/gnu/store/@dots{}-gcc-4.7.2/bin/gcc}. Maintenant, sur la même machine, @code{bob} a déjà intallé GCC 4.8.0. Le profil de @code{bob} continue simplement de pointer vers @file{/gnu/store/@dots{}-gcc-4.8.0/bin/gcc} — c.-à-d.@: les deux versions de GCC coexistent surs le même système sans aucune interférence." + +#. type: Plain text +#: doc/guix.texi:1712 +msgid "The @command{guix package} command is the central tool to manage packages (@pxref{Invoking guix package}). It operates on the per-user profiles, and can be used @emph{with normal user privileges}." +msgstr "La commande @command{guix package} est l'outil central pour gérer les paquets (@pxref{Invoking guix package}). Il opère sur les profils utilisateurs et peut être utilisé avec les @emph{privilèges utilisateurs normaux}." #. type: cindex -#: doc/guix.texi:1708 doc/guix.texi:1777 +#: doc/guix.texi:1713 doc/guix.texi:1782 #, no-wrap msgid "transactions" -msgstr "" +msgstr "transactions" #. type: Plain text -#: doc/guix.texi:1715 -msgid "" -"The command provides the obvious install, remove, and upgrade operations. " -"Each invocation is actually a @emph{transaction}: either the specified " -"operation succeeds, or nothing happens. Thus, if the @command{guix package} " -"process is terminated during the transaction, or if a power outage occurs " -"during the transaction, then the user's profile remains in its previous " -"state, and remains usable." -msgstr "" +#: doc/guix.texi:1720 +msgid "The command provides the obvious install, remove, and upgrade operations. Each invocation is actually a @emph{transaction}: either the specified operation succeeds, or nothing happens. Thus, if the @command{guix package} process is terminated during the transaction, or if a power outage occurs during the transaction, then the user's profile remains in its previous state, and remains usable." +msgstr "La commande fournit les opérations évidentes d'installation, de suppression et de mise à jour. Chaque invocation est en fait une @emph{transaction} : soit l'opération demandée réussi, soit rien ne se passe. Ainsi, si le processus @command{guix package} est terminé pendant la transaction ou si une panne de courant arrive pendant la transaction, le profil de l'utilisateur reste dans son état précédent et reste utilisable." #. type: Plain text -#: doc/guix.texi:1723 -msgid "" -"In addition, any package transaction may be @emph{rolled back}. So, if, for " -"example, an upgrade installs a new version of a package that turns out to " -"have a serious bug, users may roll back to the previous instance of their " -"profile, which was known to work well. Similarly, the global system " -"configuration on GuixSD is subject to transactional upgrades and roll-back " -"(@pxref{Using the Configuration System})." -msgstr "" +#: doc/guix.texi:1728 +msgid "In addition, any package transaction may be @emph{rolled back}. So, if, for example, an upgrade installs a new version of a package that turns out to have a serious bug, users may roll back to the previous instance of their profile, which was known to work well. Similarly, the global system configuration on GuixSD is subject to transactional upgrades and roll-back (@pxref{Using the Configuration System})." +msgstr "En plus, il est possible @emph{d'annuler} toute transaction sur les paquets. Donc si par exemple un mise à jour installe une nouvelle version d'un paquet qui révèle un bogue sérieux, les utilisateurs peuvent revenir en arrière à l'instance précédente de leur profil qui est connu pour bien fonctionner. De manière similaire, la configuration globale du système dans GuixSD est sujette aux mises à jour transactionnelles et aux annulations (@pxref{Using the Configuration System})." #. type: Plain text -#: doc/guix.texi:1730 -msgid "" -"All packages in the package store may be @emph{garbage-collected}. Guix can " -"determine which packages are still referenced by user profiles, and remove " -"those that are provably no longer referenced (@pxref{Invoking guix gc}). " -"Users may also explicitly remove old generations of their profile so that " -"the packages they refer to can be collected." -msgstr "" +#: doc/guix.texi:1735 +msgid "All packages in the package store may be @emph{garbage-collected}. Guix can determine which packages are still referenced by user profiles, and remove those that are provably no longer referenced (@pxref{Invoking guix gc}). Users may also explicitly remove old generations of their profile so that the packages they refer to can be collected." +msgstr "Tous les paquets du dépôt des paquets peut être @emph{glané}. Guix peut déterminer quels paquets sont toujours référencés par les profils des utilisateurs et supprimer ceux qui ne sont plus référencés de manière prouvable (@pxref{Invoking guix gc}). Les utilisateurs peuvent toujours explicitement supprimer les anciennes générations de leur profil pour que les paquets auxquels elles faisaient référence puissent être glanés." #. type: cindex -#: doc/guix.texi:1731 +#: doc/guix.texi:1736 #, no-wrap msgid "reproducibility" -msgstr "" +msgstr "reproductibilité" #. type: Plain text -#: doc/guix.texi:1743 -msgid "" -"Finally, Guix takes a @dfn{purely functional} approach to package " -"management, as described in the introduction (@pxref{Introduction}). Each " -"@file{/gnu/store} package directory name contains a hash of all the inputs " -"that were used to build that package---compiler, libraries, build scripts, " -"etc. This direct correspondence allows users to make sure a given package " -"installation matches the current state of their distribution. It also helps " -"maximize @dfn{build reproducibility}: thanks to the isolated build " -"environments that are used, a given build is likely to yield bit-identical " -"files when performed on different machines (@pxref{Invoking guix-daemon, " -"container})." -msgstr "" +#: doc/guix.texi:1748 +msgid "Finally, Guix takes a @dfn{purely functional} approach to package management, as described in the introduction (@pxref{Introduction}). Each @file{/gnu/store} package directory name contains a hash of all the inputs that were used to build that package---compiler, libraries, build scripts, etc. This direct correspondence allows users to make sure a given package installation matches the current state of their distribution. It also helps maximize @dfn{build reproducibility}: thanks to the isolated build environments that are used, a given build is likely to yield bit-identical files when performed on different machines (@pxref{Invoking guix-daemon, container})." +msgstr "Finalement, Guix prend une approche @dfn{purement fonctionnelle} de la gestion de paquets, telle que décrite dans l'introduction (@pxref{Introduction}). Chaque nom de répertoire de paquet dans @file{/gnu/store} contient un hash de toutes les entrées qui ont été utilisées pendant la construction de ce paquet — le compilateur, les bibliothèques, les scripts de construction, etc. Cette correspondance directe permet aux utilisateurs de s'assurer que l'installation d'un paquet donné correspond à l'état actuel de leur distribution. Elle aide aussi à maximiser la @dfn{reproductibilité} : grâce aux environnements de construction utilisés, une construction donnée à de forte chances de donner des fichiers identiques bit-à-bit lorsqu'elle est effectuée sur des machines différents (@pxref{Invoking guix-daemon, container})." #. type: Plain text -#: doc/guix.texi:1754 -msgid "" -"This foundation allows Guix to support @dfn{transparent binary/source " -"deployment}. When a pre-built binary for a @file{/gnu/store} item is " -"available from an external source---a @dfn{substitute}, Guix just downloads " -"it and unpacks it; otherwise, it builds the package from source, locally " -"(@pxref{Substitutes}). Because build results are usually bit-for-bit " -"reproducible, users do not have to trust servers that provide substitutes: " -"they can force a local build and @emph{challenge} providers (@pxref{Invoking " -"guix challenge})." -msgstr "" -"Ce fondement permet à Guix de supporter le @dfn{déploiement transparent de " -"binaire ou source}. Lorsqu'une binaire pré-construit pour une entrée de " -"@file{/gnu/store} est disponible depuis une source externe (un " -"@dfn{substitut}), Guix le télécharge simplement et le décompresse ; sinon, " -"il construit le paquet depuis les sources localement (@pxref{Substituts}). " -"Comme les résultats des constructions sont généralement reproductibles au " -"bit près, si vous n'avez pas besoin de faire confiance aux serveurs qui " -"fournissent les substituts : vous pouvez forcer une construction locale et " -"@emph{défier} les fournisseurs (@pxref{Invoking guix challenge})." +#: doc/guix.texi:1759 +msgid "This foundation allows Guix to support @dfn{transparent binary/source deployment}. When a pre-built binary for a @file{/gnu/store} item is available from an external source---a @dfn{substitute}, Guix just downloads it and unpacks it; otherwise, it builds the package from source, locally (@pxref{Substitutes}). Because build results are usually bit-for-bit reproducible, users do not have to trust servers that provide substitutes: they can force a local build and @emph{challenge} providers (@pxref{Invoking guix challenge})." +msgstr "Ce fondement permet à Guix de supporter le @dfn{déploiement transparent de binaire ou source}. Lorsqu'une binaire pré-construit pour une entrée de @file{/gnu/store} est disponible depuis une source externe (un @dfn{substitut}), Guix le télécharge simplement et le décompresse ; sinon, il construit le paquet depuis les sources localement (@pxref{Substituts}). Comme les résultats des constructions sont généralement reproductibles au bit près, si vous n'avez pas besoin de faire confiance aux serveurs qui fournissent les substituts : vous pouvez forcer une construction locale et @emph{défier} les fournisseurs (@pxref{Invoking guix challenge})." #. type: Plain text -#: doc/guix.texi:1760 -msgid "" -"Control over the build environment is a feature that is also useful for " -"developers. The @command{guix environment} command allows developers of a " -"package to quickly set up the right development environment for their " -"package, without having to manually install the dependencies of the package " -"into their profile (@pxref{Invoking guix environment})." -msgstr "" +#: doc/guix.texi:1765 +msgid "Control over the build environment is a feature that is also useful for developers. The @command{guix environment} command allows developers of a package to quickly set up the right development environment for their package, without having to manually install the dependencies of the package into their profile (@pxref{Invoking guix environment})." +msgstr "Le contrôle de l'environnement de construction est aussi une fonctionnalité utile pour les développeurs. La commande @command{guix environment} permet aux développeurs d'un paquet de mettre en place rapidement le bon environnement de développement pour leur paquet, sans avoir à installer manuellement les dépendances du paquet dans leur profil (@pxref{Invoking guix environment})." #. type: section -#: doc/guix.texi:1762 -#, no-wrap -msgid "Invoking @command{guix package}" -msgstr "" - -#. type: cindex -#: doc/guix.texi:1764 -#, no-wrap -msgid "installing packages" -msgstr "" - -#. type: cindex -#: doc/guix.texi:1765 -#, no-wrap -msgid "removing packages" -msgstr "" - -#. type: cindex -#: doc/guix.texi:1766 -#, no-wrap -msgid "package installation" -msgstr "" - -#. type: cindex #: doc/guix.texi:1767 #, no-wrap +msgid "Invoking @command{guix package}" +msgstr "Invoquer @command{guix package}" + +#. type: cindex +#: doc/guix.texi:1769 +#, no-wrap +msgid "installing packages" +msgstr "installer des paquets" + +#. type: cindex +#: doc/guix.texi:1770 +#, no-wrap +msgid "removing packages" +msgstr "supprimer des paquets" + +#. type: cindex +#: doc/guix.texi:1771 +#, no-wrap +msgid "package installation" +msgstr "installation de paquets" + +#. type: cindex +#: doc/guix.texi:1772 +#, no-wrap msgid "package removal" -msgstr "" +msgstr "suppression de paquets" #. type: Plain text -#: doc/guix.texi:1773 -msgid "" -"The @command{guix package} command is the tool that allows users to install, " -"upgrade, and remove packages, as well as rolling back to previous " -"configurations. It operates only on the user's own profile, and works with " -"normal user privileges (@pxref{Features}). Its syntax is:" -msgstr "" -"La commande @command{guix package} est l'outil qui permet d'installer, " -"mettre à jour et supprimer les paquets ainsi que de revenir à une " -"configuration précédente. Elle n'opère que dans le profil de l'utilisateur " -"et fonctionne avec les privilèges utilisateurs normaux " -"(@pxref{Fonctionnalités}). Sa syntaxe est :" +#: doc/guix.texi:1778 +msgid "The @command{guix package} command is the tool that allows users to install, upgrade, and remove packages, as well as rolling back to previous configurations. It operates only on the user's own profile, and works with normal user privileges (@pxref{Features}). Its syntax is:" +msgstr "La commande @command{guix package} est l'outil qui permet d'installer, mettre à jour et supprimer les paquets ainsi que de revenir à une configuration précédente. Elle n'opère que dans le profil de l'utilisateur et fonctionne avec les privilèges utilisateurs normaux (@pxref{Fonctionnalités}). Sa syntaxe est :" #. type: example -#: doc/guix.texi:1776 +#: doc/guix.texi:1781 #, no-wrap msgid "guix package @var{options}\n" -msgstr "" +msgstr "guix package @var{options}\n" #. type: Plain text -#: doc/guix.texi:1782 -msgid "" -"Primarily, @var{options} specifies the operations to be performed during the " -"transaction. Upon completion, a new profile is created, but previous " -"@dfn{generations} of the profile remain available, should the user want to " -"roll back." -msgstr "" +#: doc/guix.texi:1787 +msgid "Primarily, @var{options} specifies the operations to be performed during the transaction. Upon completion, a new profile is created, but previous @dfn{generations} of the profile remain available, should the user want to roll back." +msgstr "@var{options} spécifie d'abord les opérations à effectuer pendant la transaction. À la fin, une nouvelle génération du profil est créée mais les @dfn{générations} précédentes du profil restent disponibles si l'utilisateur souhaite y revenir." #. type: Plain text -#: doc/guix.texi:1785 -msgid "" -"For example, to remove @code{lua} and install @code{guile} and @code{guile-" -"cairo} in a single transaction:" -msgstr "" +#: doc/guix.texi:1790 +msgid "For example, to remove @code{lua} and install @code{guile} and @code{guile-cairo} in a single transaction:" +msgstr "Par exemple, pour supprimer @code{lua} et installer @code{guile} et @code{guile-cairo} en une seule transaction :" #. type: example -#: doc/guix.texi:1788 +#: doc/guix.texi:1793 #, no-wrap msgid "guix package -r lua -i guile guile-cairo\n" -msgstr "" +msgstr "guix package -r lua -i guile guile-cairo\n" #. type: Plain text -#: doc/guix.texi:1794 -msgid "" -"@command{guix package} also supports a @dfn{declarative approach} whereby " -"the user specifies the exact set of packages to be available and passes it " -"@i{via} the @option{--manifest} option (@pxref{profile-manifest, @option{--" -"manifest}})." -msgstr "" +#: doc/guix.texi:1799 +msgid "@command{guix package} also supports a @dfn{declarative approach} whereby the user specifies the exact set of packages to be available and passes it @i{via} the @option{--manifest} option (@pxref{profile-manifest, @option{--manifest}})." +msgstr "@command{guix package} supporte aussi une @dfn{approche déclarative} où l'utilisateur spécifie l'ensemble exact des paquets qui doivent être disponibles le passe @i{via} l'option @option{--manifest} (@pxref{profile-manifest, @option{--manifest}})." #. type: cindex -#: doc/guix.texi:1795 +#: doc/guix.texi:1800 #, no-wrap msgid "profile" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:1801 -msgid "" -"For each user, a symlink to the user's default profile is automatically " -"created in @file{$HOME/.guix-profile}. This symlink always points to the " -"current generation of the user's default profile. Thus, users can add " -"@file{$HOME/.guix-profile/bin} to their @code{PATH} environment variable, " -"and so on." -msgstr "" - -#. type: cindex -#: doc/guix.texi:1801 doc/guix.texi:1998 -#, no-wrap -msgid "search paths" -msgstr "" +msgstr "profil" #. type: Plain text #: doc/guix.texi:1806 -msgid "" -"If you are not using the Guix System Distribution, consider adding the " -"following lines to your @file{~/.bash_profile} (@pxref{Bash Startup Files,,, " -"bash, The GNU Bash Reference Manual}) so that newly-spawned shells get all " -"the right environment variable definitions:" -msgstr "" +msgid "For each user, a symlink to the user's default profile is automatically created in @file{$HOME/.guix-profile}. This symlink always points to the current generation of the user's default profile. Thus, users can add @file{$HOME/.guix-profile/bin} to their @code{PATH} environment variable, and so on." +msgstr "Pour chaque utilisateur, un lien symbolique vers le profil par défaut de cet utilisateur est automatiquement créé dans @file{$HOME/.guix-profile}. Ce lien symbolique pointe toujours vers la génération actuelle du profil par défaut de l'utilisateur. Ainsi, les utilisateurs peuvent ajouter @file{$HOME/.guix-profile/bin} à leur variable d'environnement @code{PATH} etc." + +#. type: cindex +#: doc/guix.texi:1806 doc/guix.texi:2003 +#, no-wrap +msgid "search paths" +msgstr "chemins de recherche" + +#. type: Plain text +#: doc/guix.texi:1811 +msgid "If you are not using the Guix System Distribution, consider adding the following lines to your @file{~/.bash_profile} (@pxref{Bash Startup Files,,, bash, The GNU Bash Reference Manual}) so that newly-spawned shells get all the right environment variable definitions:" +msgstr "Si vous n'utilisez pas la distribution système Guix, vous devriez ajouter les lignes suivantes à votre @file{~/.bash_profile} (@pxref{Bash Startup Files,,, bash, The GNU Bash Reference Manual}) pour que les shells créés ensuite aient les bonnes définitions des variables d'environnement :" #. type: example -#: doc/guix.texi:1810 +#: doc/guix.texi:1815 #, no-wrap msgid "" "GUIX_PROFILE=\"$HOME/.guix-profile\" ; \\\n" "source \"$HOME/.guix-profile/etc/profile\"\n" msgstr "" +"GUIX_PROFILE=\"$HOME/.guix-profile\" ; \\\n" +"source \"$HOME/.guix-profile/etc/profile\"\n" #. type: Plain text -#: doc/guix.texi:1821 -msgid "" -"In a multi-user setup, user profiles are stored in a place registered as a " -"@dfn{garbage-collector root}, which @file{$HOME/.guix-profile} points to " -"(@pxref{Invoking guix gc}). That directory is normally " -"@code{@var{localstatedir}/guix/profiles/per-user/@var{user}}, where " -"@var{localstatedir} is the value passed to @code{configure} as @code{--" -"localstatedir}, and @var{user} is the user name. The @file{per-user} " -"directory is created when @command{guix-daemon} is started, and the " -"@var{user} sub-directory is created by @command{guix package}." -msgstr "" +#: doc/guix.texi:1826 +msgid "In a multi-user setup, user profiles are stored in a place registered as a @dfn{garbage-collector root}, which @file{$HOME/.guix-profile} points to (@pxref{Invoking guix gc}). That directory is normally @code{@var{localstatedir}/guix/profiles/per-user/@var{user}}, where @var{localstatedir} is the value passed to @code{configure} as @code{--localstatedir}, and @var{user} is the user name. The @file{per-user} directory is created when @command{guix-daemon} is started, and the @var{user} sub-directory is created by @command{guix package}." +msgstr "Dans un environnement multi-utilisateur, les profils utilisateurs sont stockés comme une @dfn{racine du ramasse-miettes}, vers laquelle pointe @file{$HOME/.guix-profile} (@pxref{Invoking guix gc}). Ce répertoire est normalement @code{@var{localstatedir}/guix/profiles/per-user/@var{utilisateur}}, où @var{localstatedir} est la valeur passée à @code{configure} avec @code{--localstatedir} et @var{utilisateur} le nom d'utilisateur. Le répertoire @file{per-user} est créé lorsque @command{guix-daemon} est démarré et sous-répertoire @var{utilisateur} est créé par @command{guix package}." #. type: Plain text -#: doc/guix.texi:1823 +#: doc/guix.texi:1828 msgid "The @var{options} can be among the following:" -msgstr "" +msgstr "Les @var{options} peuvent être les suivante :" #. type: item -#: doc/guix.texi:1826 +#: doc/guix.texi:1831 #, no-wrap msgid "--install=@var{package} @dots{}" -msgstr "" +msgstr "--install=@var{paquet} @dots{}" #. type: itemx -#: doc/guix.texi:1827 +#: doc/guix.texi:1832 #, no-wrap msgid "-i @var{package} @dots{}" -msgstr "" - -#. type: table -#: doc/guix.texi:1829 -msgid "Install the specified @var{package}s." -msgstr "" +msgstr "-i @var{paquet} @dots{}" #. type: table #: doc/guix.texi:1834 -msgid "" -"Each @var{package} may specify either a simple package name, such as " -"@code{guile}, or a package name followed by an at-sign and version number, " -"such as @code{guile@@1.8.8} or simply @code{guile@@1.8} (in the latter case, " -"the newest version prefixed by @code{1.8} is selected.)" -msgstr "" +msgid "Install the specified @var{package}s." +msgstr "Installer les @var{paquet}s spécifiés." #. type: table -#: doc/guix.texi:1842 -msgid "" -"If no version number is specified, the newest available version will be " -"selected. In addition, @var{package} may contain a colon, followed by the " -"name of one of the outputs of the package, as in @code{gcc:doc} or " -"@code{binutils@@2.22:lib} (@pxref{Packages with Multiple Outputs}). " -"Packages with a corresponding name (and optionally version) are searched for " -"among the GNU distribution modules (@pxref{Package Modules})." -msgstr "" +#: doc/guix.texi:1839 +msgid "Each @var{package} may specify either a simple package name, such as @code{guile}, or a package name followed by an at-sign and version number, such as @code{guile@@1.8.8} or simply @code{guile@@1.8} (in the latter case, the newest version prefixed by @code{1.8} is selected.)" +msgstr "Chaque @var{paquet} peut spécifier soit un simple nom de paquet, comme @code{guile} ou un nom de paquet suivi d'un arobase et d'un numéro de version, comme @code{guile@@1.8.8} ou simplement @code{guile@@1.8} (dans ce dernier cas, la version la plus récente commençant par @code{1.8} est utilisée)." + +#. type: table +#: doc/guix.texi:1847 +msgid "If no version number is specified, the newest available version will be selected. In addition, @var{package} may contain a colon, followed by the name of one of the outputs of the package, as in @code{gcc:doc} or @code{binutils@@2.22:lib} (@pxref{Packages with Multiple Outputs}). Packages with a corresponding name (and optionally version) are searched for among the GNU distribution modules (@pxref{Package Modules})." +msgstr "Si aucun numéro de version n'est spécifié, la version la plus récente disponible est choisie. En plus, @var{paquet} peut contenir un deux-points, suivi du nom d'une des sorties du paquet, comme dans @code{gcc:doc} ou @code{binutils@@2.22:lib} (@pxref{Packages with Multiple Outputs}). Des paquets avec un nom correspondant et (éventuellement une version) sont recherchés dans les modules de la distribution GNU (@pxref{Package Modules})." #. type: cindex -#: doc/guix.texi:1843 +#: doc/guix.texi:1848 #, no-wrap msgid "propagated inputs" -msgstr "" +msgstr "entrées propagées" #. type: table -#: doc/guix.texi:1849 -msgid "" -"Sometimes packages have @dfn{propagated inputs}: these are dependencies that " -"automatically get installed along with the required package (@pxref{package-" -"propagated-inputs, @code{propagated-inputs} in @code{package} objects}, for " -"information about propagated inputs in package definitions)." -msgstr "" +#: doc/guix.texi:1854 +msgid "Sometimes packages have @dfn{propagated inputs}: these are dependencies that automatically get installed along with the required package (@pxref{package-propagated-inputs, @code{propagated-inputs} in @code{package} objects}, for information about propagated inputs in package definitions)." +msgstr "Parfois les paquets ont des @dfn{entrées propagées} : ce sont des dépendances qui sont installées automatiquement avec le paquet demandé (@pxref{package-propagated-inputs, @code{propagated-inputs} in @code{package} objects} pour plus d'informations sur les entrées propagées dans les définitions des paquets)." #. type: anchor{#1} -#: doc/guix.texi:1856 +#: doc/guix.texi:1861 msgid "package-cmd-propagated-inputs" -msgstr "" - -#. type: table -#: doc/guix.texi:1856 -msgid "" -"An example is the GNU MPC library: its C header files refer to those of the " -"GNU MPFR library, which in turn refer to those of the GMP library. Thus, " -"when installing MPC, the MPFR and GMP libraries also get installed in the " -"profile; removing MPC also removes MPFR and GMP---unless they had also been " -"explicitly installed by the user." -msgstr "" +msgstr "package-cmd-propagated-inputs" #. type: table #: doc/guix.texi:1861 -msgid "" -"Besides, packages sometimes rely on the definition of environment variables " -"for their search paths (see explanation of @code{--search-paths} below). " -"Any missing or possibly incorrect environment variable definitions are " -"reported here." -msgstr "" - -#. type: item -#: doc/guix.texi:1862 -#, no-wrap -msgid "--install-from-expression=@var{exp}" -msgstr "" - -#. type: itemx -#: doc/guix.texi:1863 -#, no-wrap -msgid "-e @var{exp}" -msgstr "" +msgid "An example is the GNU MPC library: its C header files refer to those of the GNU MPFR library, which in turn refer to those of the GMP library. Thus, when installing MPC, the MPFR and GMP libraries also get installed in the profile; removing MPC also removes MPFR and GMP---unless they had also been explicitly installed by the user." +msgstr "Un exemple est la bibliothèque MPC de GNU : ses fichiers d'en-tête C se réfèrent à ceux de la bibliothèque MPFR de GNU, qui se réfèrent en retour à ceux de la bibliothèque GMP. Ainsi, lorsqu'on installe MPC, les bibliothèques MPFR et GMP sont aussi installées dans le profil ; supprimer MPC supprimera aussi MPFR et GMP — à moins qu'ils n'aient été aussi installés explicitement par l'utilisateur." #. type: table -#: doc/guix.texi:1865 -msgid "Install the package @var{exp} evaluates to." -msgstr "" +#: doc/guix.texi:1866 +msgid "Besides, packages sometimes rely on the definition of environment variables for their search paths (see explanation of @code{--search-paths} below). Any missing or possibly incorrect environment variable definitions are reported here." +msgstr "D'autre part, les paquets dépendent parfois de la définition de variables d'environnement pour leur chemin de recherche (voir les explications sur @code{--search-paths} plus bas). Toute définition de variable d'environnement manquante ou possiblement incorrecte est rapportée ici." + +#. type: item +#: doc/guix.texi:1867 +#, no-wrap +msgid "--install-from-expression=@var{exp}" +msgstr "--install-from-expression=@var{exp}" + +#. type: itemx +#: doc/guix.texi:1868 +#, no-wrap +msgid "-e @var{exp}" +msgstr "-e @var{exp}" #. type: table #: doc/guix.texi:1870 -msgid "" -"@var{exp} must be a Scheme expression that evaluates to a @code{} " -"object. This option is notably useful to disambiguate between same-named " -"variants of a package, with expressions such as @code{(@@ (gnu packages " -"base) guile-final)}." -msgstr "" +msgid "Install the package @var{exp} evaluates to." +msgstr "Installer le paquet évalué par @var{exp}" #. type: table -#: doc/guix.texi:1874 -msgid "" -"Note that this option installs the first output of the specified package, " -"which may be insufficient when needing a specific output of a multiple-" -"output package." -msgstr "" +#: doc/guix.texi:1875 +msgid "@var{exp} must be a Scheme expression that evaluates to a @code{} object. This option is notably useful to disambiguate between same-named variants of a package, with expressions such as @code{(@@ (gnu packages base) guile-final)}." +msgstr "@var{exp} doit être une expression Scheme qui s'évalue en un objet @code{}. Cette option est notamment utile pour distinguer les variantes d'un paquet avec le même nom, avec des expressions comme @code{(@@ (gnu packages base) guile-final)}." + +#. type: table +#: doc/guix.texi:1879 +msgid "Note that this option installs the first output of the specified package, which may be insufficient when needing a specific output of a multiple-output package." +msgstr "Remarquez que cette option installe la première sortie du paquet, ce qui peut être insuffisant lorsque vous avez besoin d'une sortie spécifique d'un paquet à plusieurs sorties." #. type: item -#: doc/guix.texi:1875 +#: doc/guix.texi:1880 #, no-wrap msgid "--install-from-file=@var{file}" -msgstr "" +msgstr "--install-from-file=@var{fichier}" #. type: itemx -#: doc/guix.texi:1876 doc/guix.texi:5699 +#: doc/guix.texi:1881 doc/guix.texi:5870 #, no-wrap msgid "-f @var{file}" -msgstr "" +msgstr "-f @var{fichier}" #. type: table -#: doc/guix.texi:1878 +#: doc/guix.texi:1883 msgid "Install the package that the code within @var{file} evaluates to." -msgstr "" +msgstr "Installer le paquet évalué par le code dans le @var{fichier}." #. type: table -#: doc/guix.texi:1881 doc/guix.texi:7283 -msgid "" -"As an example, @var{file} might contain a definition like this " -"(@pxref{Defining Packages}):" -msgstr "" +#: doc/guix.texi:1886 doc/guix.texi:7493 +msgid "As an example, @var{file} might contain a definition like this (@pxref{Defining Packages}):" +msgstr "Par exemple, @var{fichier} peut contenir une définition comme celle-ci (@pxref{Defining Packages}) :" #. type: example -#: doc/guix.texi:1884 doc/guix.texi:5709 +#: doc/guix.texi:1889 doc/guix.texi:5880 #, no-wrap msgid "@verbatiminclude package-hello.scm\n" -msgstr "" +msgstr "@verbatiminclude package-hello.scm\n" #. type: table -#: doc/guix.texi:1890 -msgid "" -"Developers may find it useful to include such a @file{guix.scm} file in the " -"root of their project source tree that can be used to test development " -"snapshots and create reproducible development environments (@pxref{Invoking " -"guix environment})." -msgstr "" +#: doc/guix.texi:1895 +msgid "Developers may find it useful to include such a @file{guix.scm} file in the root of their project source tree that can be used to test development snapshots and create reproducible development environments (@pxref{Invoking guix environment})." +msgstr "Les développeurs peuvent trouver utile d'inclure un tel fichier @file{guix.scm} à la racine de l'arborescence des sources de leur projet qui pourrait être utilisé pour tester des versions de développement et créer des environnements de développement reproductibles (@pxref{Invoking guix environment})." #. type: item -#: doc/guix.texi:1891 +#: doc/guix.texi:1896 #, no-wrap msgid "--remove=@var{package} @dots{}" -msgstr "" +msgstr "--remove=@var{paquet} @dots{}" #. type: itemx -#: doc/guix.texi:1892 +#: doc/guix.texi:1897 #, no-wrap msgid "-r @var{package} @dots{}" -msgstr "" - -#. type: table -#: doc/guix.texi:1894 -msgid "Remove the specified @var{package}s." -msgstr "" +msgstr "-r @var{paquet} @dots{}" #. type: table #: doc/guix.texi:1899 -msgid "" -"As for @code{--install}, each @var{package} may specify a version number and/" -"or output name in addition to the package name. For instance, @code{-r " -"glibc:debug} would remove the @code{debug} output of @code{glibc}." -msgstr "" - -#. type: item -#: doc/guix.texi:1900 -#, no-wrap -msgid "--upgrade[=@var{regexp} @dots{}]" -msgstr "" - -#. type: itemx -#: doc/guix.texi:1901 -#, no-wrap -msgid "-u [@var{regexp} @dots{}]" -msgstr "" - -#. type: cindex -#: doc/guix.texi:1902 -#, no-wrap -msgid "upgrading packages" -msgstr "" +msgid "Remove the specified @var{package}s." +msgstr "Supprimer les @var{paquet}s spécifiés." #. type: table +#: doc/guix.texi:1904 +msgid "As for @code{--install}, each @var{package} may specify a version number and/or output name in addition to the package name. For instance, @code{-r glibc:debug} would remove the @code{debug} output of @code{glibc}." +msgstr "Comme pour @code{--install}, chaque @var{paquet} peut spécifier un numéro de version ou un nom de sortie en plus du nom du paquet. Par exemple, @code{-r glibc:debug} supprimerait la sortie @code{debug} de @code{glibc}." + +#. type: item +#: doc/guix.texi:1905 +#, no-wrap +msgid "--upgrade[=@var{regexp} @dots{}]" +msgstr "--upgrade[=@var{regexp} @dots{}]" + +#. type: itemx #: doc/guix.texi:1906 -msgid "" -"Upgrade all the installed packages. If one or more @var{regexp}s are " -"specified, upgrade only installed packages whose name matches a " -"@var{regexp}. Also see the @code{--do-not-upgrade} option below." -msgstr "" +#, no-wrap +msgid "-u [@var{regexp} @dots{}]" +msgstr "-u [@var{regexp} @dots{}]" + +#. type: cindex +#: doc/guix.texi:1907 +#, no-wrap +msgid "upgrading packages" +msgstr "mettre à jour des paquets" #. type: table #: doc/guix.texi:1911 -msgid "" -"Note that this upgrades package to the latest version of packages found in " -"the distribution currently installed. To update your distribution, you " -"should regularly run @command{guix pull} (@pxref{Invoking guix pull})." -msgstr "" +msgid "Upgrade all the installed packages. If one or more @var{regexp}s are specified, upgrade only installed packages whose name matches a @var{regexp}. Also see the @code{--do-not-upgrade} option below." +msgstr "Mettre à jour tous les paquets installés. Si une @var{regexp} ou plus est spécifiée, la mise à jour n'installera que les paquets dont le nom correspond à @var{regexp}. Voyez aussi l'option @code{--do-not-upgrade} en dessous." + +#. type: table +#: doc/guix.texi:1916 +msgid "Note that this upgrades package to the latest version of packages found in the distribution currently installed. To update your distribution, you should regularly run @command{guix pull} (@pxref{Invoking guix pull})." +msgstr "Remarquez que cela met à jour vers la dernière version des paquets trouvée dans la distribution actuellement installée. Pour mettre à jour votre distribution, vous devriez lancer régulièrement @command{guix pull} (@pxref{Invoking guix pull})." #. type: item -#: doc/guix.texi:1912 +#: doc/guix.texi:1917 #, no-wrap msgid "--do-not-upgrade[=@var{regexp} @dots{}]" -msgstr "" +msgstr "--do-not-upgrade[=@var{regexp} @dots{}]" #. type: table -#: doc/guix.texi:1917 -msgid "" -"When used together with the @code{--upgrade} option, do @emph{not} upgrade " -"any packages whose name matches a @var{regexp}. For example, to upgrade all " -"packages in the current profile except those containing the substring " -"``emacs'':" -msgstr "" +#: doc/guix.texi:1922 +msgid "When used together with the @code{--upgrade} option, do @emph{not} upgrade any packages whose name matches a @var{regexp}. For example, to upgrade all packages in the current profile except those containing the substring ``emacs'':" +msgstr "Lorsqu'elle est utilisée avec l'option @code{--upgrade}, ne @emph{pas} mettre à jour les paquets dont le nom correspond à @var{regexp}. Par exemple, pour mettre à jour tous les paquets du profil actuel à l'exception de ceux qui contiennent la chaîne « emacs » :" #. type: example -#: doc/guix.texi:1920 -#, no-wrap -msgid "$ guix package --upgrade . --do-not-upgrade emacs\n" -msgstr "" - -#. type: anchor{#1} -#: doc/guix.texi:1922 -#, no-wrap -msgid "profile-manifest" -msgstr "" - -#. type: item -#: doc/guix.texi:1922 doc/guix.texi:2877 doc/guix.texi:6577 doc/guix.texi:7288 -#: doc/guix.texi:7972 -#, no-wrap -msgid "--manifest=@var{file}" -msgstr "" - -#. type: itemx -#: doc/guix.texi:1923 doc/guix.texi:2878 doc/guix.texi:6578 doc/guix.texi:7289 -#, no-wrap -msgid "-m @var{file}" -msgstr "" - -#. type: cindex -#: doc/guix.texi:1924 -#, no-wrap -msgid "profile declaration" -msgstr "" - -#. type: cindex #: doc/guix.texi:1925 #, no-wrap +msgid "$ guix package --upgrade . --do-not-upgrade emacs\n" +msgstr "$ guix package --upgrade . --do-not-upgrade emacs\n" + +#. type: anchor{#1} +#: doc/guix.texi:1927 +#, no-wrap +msgid "profile-manifest" +msgstr "profile-manifest" + +#. type: item +#: doc/guix.texi:1927 doc/guix.texi:2996 doc/guix.texi:6761 doc/guix.texi:7498 +#: doc/guix.texi:8182 +#, no-wrap +msgid "--manifest=@var{file}" +msgstr "--manifest=@var{fichier}" + +#. type: itemx +#: doc/guix.texi:1928 doc/guix.texi:2997 doc/guix.texi:6762 doc/guix.texi:7499 +#, no-wrap +msgid "-m @var{file}" +msgstr "-m @var{fichier}" + +#. type: cindex +#: doc/guix.texi:1929 +#, no-wrap +msgid "profile declaration" +msgstr "déclaration de profil" + +#. type: cindex +#: doc/guix.texi:1930 +#, no-wrap msgid "profile manifest" -msgstr "" +msgstr "manifest de profil" #. type: table -#: doc/guix.texi:1928 -msgid "" -"Create a new generation of the profile from the manifest object returned by " -"the Scheme code in @var{file}." -msgstr "" +#: doc/guix.texi:1933 +msgid "Create a new generation of the profile from the manifest object returned by the Scheme code in @var{file}." +msgstr "Créer une nouvelle génération du profil depuis l'objet manifeste renvoyé par le code Scheme dans @var{fichier}." #. type: table -#: doc/guix.texi:1934 -msgid "" -"This allows you to @emph{declare} the profile's contents rather than " -"constructing it through a sequence of @code{--install} and similar " -"commands. The advantage is that @var{file} can be put under version " -"control, copied to different machines to reproduce the same profile, and so " -"on." -msgstr "" +#: doc/guix.texi:1939 +msgid "This allows you to @emph{declare} the profile's contents rather than constructing it through a sequence of @code{--install} and similar commands. The advantage is that @var{file} can be put under version control, copied to different machines to reproduce the same profile, and so on." +msgstr "Cela vous permet de @emph{déclarer} le contenu du profil plutôt que de le construire avec une série de @code{--install} et de commandes similaires. L'avantage étant que le @var{fichier} peut être placé sous contrôle de version, copié vers d'autres machines pour reproduire le même profil, etc." #. type: table -#: doc/guix.texi:1938 -msgid "" -"@var{file} must return a @dfn{manifest} object, which is roughly a list of " -"packages:" -msgstr "" +#: doc/guix.texi:1943 +msgid "@var{file} must return a @dfn{manifest} object, which is roughly a list of packages:" +msgstr "@var{fichier} doit retourner un objet @dfn{manifest} qui est en gros une liste de paquets :" #. type: findex -#: doc/guix.texi:1939 +#: doc/guix.texi:1944 #, no-wrap msgid "packages->manifest" -msgstr "" +msgstr "packages->manifest" #. type: example -#: doc/guix.texi:1942 +#: doc/guix.texi:1947 #, no-wrap msgid "" "(use-package-modules guile emacs)\n" "\n" msgstr "" +"(use-package-modules guile emacs)\n" +"\n" #. type: example -#: doc/guix.texi:1948 +#: doc/guix.texi:1953 #, no-wrap msgid "" "(packages->manifest\n" @@ -6291,321 +4923,272 @@ msgid "" " ;; Use a specific package output.\n" " (list guile-2.0 \"debug\")))\n" msgstr "" +"(packages->manifest\n" +" (list emacs\n" +" guile-2.0\n" +" ;; Utiliser une sortie spécifique d'un paquet.\n" +" (list guile-2.0 \"debug\")))\n" #. type: findex -#: doc/guix.texi:1950 +#: doc/guix.texi:1955 #, no-wrap msgid "specifications->manifest" -msgstr "" +msgstr "specifications->manifest" #. type: table -#: doc/guix.texi:1957 -msgid "" -"In this example we have to know which modules define the @code{emacs} and " -"@code{guile-2.0} variables to provide the right @code{use-package-modules} " -"line, which can be cumbersome. We can instead provide regular package " -"specifications and let @code{specifications->manifest} look up the " -"corresponding package objects, like this:" -msgstr "" +#: doc/guix.texi:1962 +msgid "In this example we have to know which modules define the @code{emacs} and @code{guile-2.0} variables to provide the right @code{use-package-modules} line, which can be cumbersome. We can instead provide regular package specifications and let @code{specifications->manifest} look up the corresponding package objects, like this:" +msgstr "Dans cet exemple on doit savoir quels modules définissent les variables @code{emacs} et @code{guile-2.0} pour fournir la bonne ligne @code{use-package-modules} ce qui peut être embêtant. On peut à la place fournir des spécifications de paquets normales et laisser @code{specifications->manifest} rechercher les objets de paquets correspondants, comme ceci :" #. type: example -#: doc/guix.texi:1961 +#: doc/guix.texi:1966 #, no-wrap msgid "" "(specifications->manifest\n" " '(\"emacs\" \"guile@@2.2\" \"guile@@2.2:debug\"))\n" msgstr "" +"(specifications->manifest\n" +" '(\"emacs\" \"guile@@2.2\" \"guile@@2.2:debug\"))\n" #. type: item -#: doc/guix.texi:1963 +#: doc/guix.texi:1968 #, no-wrap msgid "--roll-back" -msgstr "" +msgstr "--roll-back" #. type: cindex -#: doc/guix.texi:1964 doc/guix.texi:20427 +#: doc/guix.texi:1969 doc/guix.texi:20911 #, no-wrap msgid "rolling back" -msgstr "" +msgstr "revenir en arrière" #. type: cindex -#: doc/guix.texi:1965 +#: doc/guix.texi:1970 #, no-wrap msgid "undoing transactions" -msgstr "" +msgstr "défaire des transactions" #. type: cindex -#: doc/guix.texi:1966 +#: doc/guix.texi:1971 #, no-wrap msgid "transactions, undoing" -msgstr "" +msgstr "transactions, défaire" #. type: table -#: doc/guix.texi:1969 -msgid "" -"Roll back to the previous @dfn{generation} of the profile---i.e., undo the " -"last transaction." -msgstr "" +#: doc/guix.texi:1974 +msgid "Roll back to the previous @dfn{generation} of the profile---i.e., undo the last transaction." +msgstr "Revenir à la @dfn{génération} précédente du profil c.-à-d.@: défaire la dernière transaction." #. type: table -#: doc/guix.texi:1972 -msgid "" -"When combined with options such as @code{--install}, roll back occurs before " -"any other actions." -msgstr "" +#: doc/guix.texi:1977 +msgid "When combined with options such as @code{--install}, roll back occurs before any other actions." +msgstr "Lorsqu'elle est combinée avec des options comme @code{--install}, cette option revient en arrière avant toute autre action." #. type: table -#: doc/guix.texi:1976 -msgid "" -"When rolling back from the first generation that actually contains installed " -"packages, the profile is made to point to the @dfn{zeroth generation}, which " -"contains no files apart from its own metadata." -msgstr "" - -#. type: table -#: doc/guix.texi:1980 -msgid "" -"After having rolled back, installing, removing, or upgrading packages " -"overwrites previous future generations. Thus, the history of the " -"generations in a profile is always linear." -msgstr "" - -#. type: item #: doc/guix.texi:1981 -#, no-wrap -msgid "--switch-generation=@var{pattern}" -msgstr "" - -#. type: itemx -#: doc/guix.texi:1982 -#, no-wrap -msgid "-S @var{pattern}" -msgstr "" - -#. type: cindex -#: doc/guix.texi:1983 doc/guix.texi:2181 doc/guix.texi:20385 -#, no-wrap -msgid "generations" -msgstr "" +msgid "When rolling back from the first generation that actually contains installed packages, the profile is made to point to the @dfn{zeroth generation}, which contains no files apart from its own metadata." +msgstr "Lorsque vous revenez de la première génération qui contient des fichiers, le profil pointera vers la @dfn{zéroième génération} qui ne contient aucun fichier en dehors de ses propres métadonnées." #. type: table #: doc/guix.texi:1985 -msgid "Switch to a particular generation defined by @var{pattern}." -msgstr "" +msgid "After having rolled back, installing, removing, or upgrading packages overwrites previous future generations. Thus, the history of the generations in a profile is always linear." +msgstr "Après être revenu en arrière, l'installation, la suppression et la mise à jour de paquets réécrit les futures générations précédentes. Ainsi, l'historique des générations dans un profil est toujours linéaire." + +#. type: item +#: doc/guix.texi:1986 +#, no-wrap +msgid "--switch-generation=@var{pattern}" +msgstr "--switch-generation=@var{motif}" + +#. type: itemx +#: doc/guix.texi:1987 +#, no-wrap +msgid "-S @var{pattern}" +msgstr "-S @var{motif}" + +#. type: cindex +#: doc/guix.texi:1988 doc/guix.texi:2186 doc/guix.texi:20869 +#, no-wrap +msgid "generations" +msgstr "générations" #. type: table -#: doc/guix.texi:1991 -msgid "" -"@var{pattern} may be either a generation number or a number prefixed with ``" -"+'' or ``-''. The latter means: move forward/backward by a specified number " -"of generations. For example, if you want to return to the latest generation " -"after @code{--roll-back}, use @code{--switch-generation=+1}." -msgstr "" +#: doc/guix.texi:1990 +msgid "Switch to a particular generation defined by @var{pattern}." +msgstr "Basculer vers une génération particulière définie par le @var{motif}." #. type: table #: doc/guix.texi:1996 -msgid "" -"The difference between @code{--roll-back} and @code{--switch-generation=-1} " -"is that @code{--switch-generation} will not make a zeroth generation, so if " -"a specified generation does not exist, the current generation will not be " -"changed." -msgstr "" +msgid "@var{pattern} may be either a generation number or a number prefixed with ``+'' or ``-''. The latter means: move forward/backward by a specified number of generations. For example, if you want to return to the latest generation after @code{--roll-back}, use @code{--switch-generation=+1}." +msgstr "Le @var{motif} peut être soit un numéro de génération soit un nombre précédé de « + » ou « - ». Ce dernier signifie : se déplacer en avant ou en arrière d'un nombre donné de générations. Par exemple, si vous voulez retourner à la dernière génération après @code{--roll-back}, utilisez @code{--switch-generation=+1}." + +#. type: table +#: doc/guix.texi:2001 +msgid "The difference between @code{--roll-back} and @code{--switch-generation=-1} is that @code{--switch-generation} will not make a zeroth generation, so if a specified generation does not exist, the current generation will not be changed." +msgstr "La différence entre @code{--roll-back} et @code{--switch-generation=-1} est que @code{--switch-generation} ne vous amènera pas à la zéroième génération, donc si la génération demandée n'existe pas la génération actuelle ne changera pas." #. type: item -#: doc/guix.texi:1997 +#: doc/guix.texi:2002 #, no-wrap msgid "--search-paths[=@var{kind}]" -msgstr "" +msgstr "--search-paths[=@var{genre}]" #. type: table -#: doc/guix.texi:2003 -msgid "" -"Report environment variable definitions, in Bash syntax, that may be needed " -"in order to use the set of installed packages. These environment variables " -"are used to specify @dfn{search paths} for files used by some of the " -"installed packages." -msgstr "" +#: doc/guix.texi:2008 +msgid "Report environment variable definitions, in Bash syntax, that may be needed in order to use the set of installed packages. These environment variables are used to specify @dfn{search paths} for files used by some of the installed packages." +msgstr "Rapporter les définitions des variables d'environnement dans la syntaxe Bash qui peuvent être requises pour utiliser l'ensemble des paquets installés. Ces variables d'environnement sont utilisées pour spécifier les @dfn{chemins de recherche} de fichiers utilisés par les paquets installés." #. type: table -#: doc/guix.texi:2011 -msgid "" -"For example, GCC needs the @code{CPATH} and @code{LIBRARY_PATH} environment " -"variables to be defined so it can look for headers and libraries in the " -"user's profile (@pxref{Environment Variables,,, gcc, Using the GNU Compiler " -"Collection (GCC)}). If GCC and, say, the C library are installed in the " -"profile, then @code{--search-paths} will suggest setting these variables to " -"@code{@var{profile}/include} and @code{@var{profile}/lib}, respectively." -msgstr "" +#: doc/guix.texi:2016 +msgid "For example, GCC needs the @code{CPATH} and @code{LIBRARY_PATH} environment variables to be defined so it can look for headers and libraries in the user's profile (@pxref{Environment Variables,,, gcc, Using the GNU Compiler Collection (GCC)}). If GCC and, say, the C library are installed in the profile, then @code{--search-paths} will suggest setting these variables to @code{@var{profile}/include} and @code{@var{profile}/lib}, respectively." +msgstr "Par exemple, GCC a besoin des variables d'environnement @code{CPATH} et @code{LIBRARY_PATH} pour trouver les en-têtes et les bibliothèques dans le profil de l'utilisateur (@pxref{Environment Variables,,, gcc, Using the GNU Compiler Collection (GCC)}). Si GCC et, disons, la bibliothèque C sont installés dans le profil, alors @code{--search-paths} suggérera d'initialiser ces variables à @code{@var{profil}/include} et @code{@var{profil}/lib}, respectivement." #. type: table -#: doc/guix.texi:2014 -msgid "" -"The typical use case is to define these environment variables in the shell:" -msgstr "" +#: doc/guix.texi:2019 +msgid "The typical use case is to define these environment variables in the shell:" +msgstr "Le cas d'utilisation typique est de définir ces variables d'environnement dans le shell :" #. type: example -#: doc/guix.texi:2017 +#: doc/guix.texi:2022 #, no-wrap msgid "$ eval `guix package --search-paths`\n" -msgstr "" +msgstr "$ eval `guix package --search-paths`\n" #. type: table -#: doc/guix.texi:2023 -msgid "" -"@var{kind} may be one of @code{exact}, @code{prefix}, or @code{suffix}, " -"meaning that the returned environment variable definitions will either be " -"exact settings, or prefixes or suffixes of the current value of these " -"variables. When omitted, @var{kind} defaults to @code{exact}." -msgstr "" +#: doc/guix.texi:2028 +msgid "@var{kind} may be one of @code{exact}, @code{prefix}, or @code{suffix}, meaning that the returned environment variable definitions will either be exact settings, or prefixes or suffixes of the current value of these variables. When omitted, @var{kind} defaults to @code{exact}." +msgstr "@var{genre} peut être l'une des valeurs @code{exact}, @code{prefix} ou @code{suffix}, ce qui signifie que les définitions des variables d'environnement retournées seront soit les paramètres exactes, ou placés avant ou après la valeur actuelle de ces paramètres. Lorsqu'il est omis, @var{genre} a pour valeur par défaut @code{exact}." #. type: table -#: doc/guix.texi:2026 -msgid "" -"This option can also be used to compute the @emph{combined} search paths of " -"several profiles. Consider this example:" -msgstr "" +#: doc/guix.texi:2031 +msgid "This option can also be used to compute the @emph{combined} search paths of several profiles. Consider this example:" +msgstr "Cette option peut aussi être utilisé pour calculer les chemins de recherche @emph{combinés} de plusieurs profils. Regardez cet exemple :" #. type: example -#: doc/guix.texi:2031 +#: doc/guix.texi:2036 #, no-wrap msgid "" "$ guix package -p foo -i guile\n" "$ guix package -p bar -i guile-json\n" "$ guix package -p foo -p bar --search-paths\n" msgstr "" - -#. type: table -#: doc/guix.texi:2036 -msgid "" -"The last command above reports about the @code{GUILE_LOAD_PATH} variable, " -"even though, taken individually, neither @file{foo} nor @file{bar} would " -"lead to that recommendation." -msgstr "" - -#. type: item -#: doc/guix.texi:2038 -#, no-wrap -msgid "--profile=@var{profile}" -msgstr "" - -#. type: itemx -#: doc/guix.texi:2039 -#, no-wrap -msgid "-p @var{profile}" -msgstr "" +"$ guix package -p foo -i guile\n" +"$ guix package -p bar -i guile-json\n" +"$ guix package -p foo -p bar --search-paths\n" #. type: table #: doc/guix.texi:2041 -msgid "Use @var{profile} instead of the user's default profile." -msgstr "" +msgid "The last command above reports about the @code{GUILE_LOAD_PATH} variable, even though, taken individually, neither @file{foo} nor @file{bar} would lead to that recommendation." +msgstr "La dernière commande ci-dessus montre la variable @code{GUILE_LOAD_PATH} bien que, pris individuellement, ni @file{foo} ni @file{bar} n'auraient donné cette recommendation." -#. type: cindex -#: doc/guix.texi:2042 -#, no-wrap -msgid "collisions, in a profile" -msgstr "" - -#. type: cindex +#. type: item #: doc/guix.texi:2043 #, no-wrap -msgid "colliding packages in profiles" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2044 -#, no-wrap -msgid "profile collisions" -msgstr "" - -#. type: item -#: doc/guix.texi:2045 -#, no-wrap -msgid "--allow-collisions" -msgstr "" - -#. type: table -#: doc/guix.texi:2047 -msgid "Allow colliding packages in the new profile. Use at your own risk!" -msgstr "" - -#. type: table -#: doc/guix.texi:2051 -msgid "" -"By default, @command{guix package} reports as an error @dfn{collisions} in " -"the profile. Collisions happen when two or more different versions or " -"variants of a given package end up in the profile." -msgstr "" - -#. type: item -#: doc/guix.texi:2052 doc/guix.texi:2754 doc/guix.texi:7777 -#, no-wrap -msgid "--verbose" -msgstr "" - -#. type: table -#: doc/guix.texi:2055 -msgid "" -"Produce verbose output. In particular, emit the build log of the " -"environment on the standard error port." -msgstr "" - -#. type: item -#: doc/guix.texi:2056 doc/guix.texi:2773 doc/guix.texi:2931 -#, no-wrap -msgid "--bootstrap" -msgstr "" - -#. type: table -#: doc/guix.texi:2059 -msgid "" -"Use the bootstrap Guile to build the profile. This option is only useful to " -"distribution developers." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2065 -msgid "" -"In addition to these actions, @command{guix package} supports the following " -"options to query the current state of a profile, or the availability of " -"packages:" -msgstr "" - -#. type: item -#: doc/guix.texi:2068 -#, no-wrap -msgid "--search=@var{regexp}" -msgstr "" +msgid "--profile=@var{profile}" +msgstr "--profile=@var{profil}" #. type: itemx -#: doc/guix.texi:2069 +#: doc/guix.texi:2044 #, no-wrap -msgid "-s @var{regexp}" -msgstr "" +msgid "-p @var{profile}" +msgstr "-p @var{profil}" + +#. type: table +#: doc/guix.texi:2046 +msgid "Use @var{profile} instead of the user's default profile." +msgstr "Utiliser le @var{profil} à la place du profil par défaut de l'utilisateur." #. type: cindex +#: doc/guix.texi:2047 +#, no-wrap +msgid "collisions, in a profile" +msgstr "collisions, dans un profil" + +#. type: cindex +#: doc/guix.texi:2048 +#, no-wrap +msgid "colliding packages in profiles" +msgstr "faire des collisions de paquets dans des profils" + +#. type: cindex +#: doc/guix.texi:2049 +#, no-wrap +msgid "profile collisions" +msgstr "profil, collisions" + +#. type: item +#: doc/guix.texi:2050 +#, no-wrap +msgid "--allow-collisions" +msgstr "--allow-collisions" + +#. type: table +#: doc/guix.texi:2052 +msgid "Allow colliding packages in the new profile. Use at your own risk!" +msgstr "Permettre des collisions de paquets dans le nouveau profil. À utiliser à vos risques et périls !" + +#. type: table +#: doc/guix.texi:2056 +msgid "By default, @command{guix package} reports as an error @dfn{collisions} in the profile. Collisions happen when two or more different versions or variants of a given package end up in the profile." +msgstr "Par défaut, @command{guix package} rapporte les @dfn{collisions} dans le profil comme des erreurs. Les collisions ont lieu quand deux version ou variantes d'un paquet donné se retrouvent dans le profil." + +#. type: item +#: doc/guix.texi:2057 doc/guix.texi:2802 doc/guix.texi:7987 +#, no-wrap +msgid "--verbose" +msgstr "--verbose" + +#. type: table +#: doc/guix.texi:2060 +msgid "Produce verbose output. In particular, emit the build log of the environment on the standard error port." +msgstr "Produire une sortie verbeuse. En particulier, fournir les journaux de construction de l'environnement sur le port d'erreur standard." + +#. type: item +#: doc/guix.texi:2061 doc/guix.texi:2828 doc/guix.texi:3050 +#, no-wrap +msgid "--bootstrap" +msgstr "--bootstrap" + +#. type: table +#: doc/guix.texi:2064 +msgid "Use the bootstrap Guile to build the profile. This option is only useful to distribution developers." +msgstr "Utiliser le programme d'amorçage Guile pour compiler le profil. Cette option n'est utile que pour les développeurs de la distriibution." + +#. type: Plain text #: doc/guix.texi:2070 +msgid "In addition to these actions, @command{guix package} supports the following options to query the current state of a profile, or the availability of packages:" +msgstr "En plus de ces actions, @command{guix package} supporte les options suivantes pour demander l'état actuel d'un profil ou la disponibilité des paquets :" + +#. type: item +#: doc/guix.texi:2073 +#, no-wrap +msgid "--search=@var{regexp}" +msgstr "--search=@var{regexp}" + +#. type: itemx +#: doc/guix.texi:2074 +#, no-wrap +msgid "-s @var{regexp}" +msgstr "-s @var{regexp}" + +#. type: cindex +#: doc/guix.texi:2075 #, no-wrap msgid "searching for packages" -msgstr "" +msgstr "chercher des paquets" #. type: table -#: doc/guix.texi:2075 -msgid "" -"List the available packages whose name, synopsis, or description matches " -"@var{regexp}, sorted by relevance. Print all the metadata of matching " -"packages in @code{recutils} format (@pxref{Top, GNU recutils databases,, " -"recutils, GNU recutils manual})." -msgstr "" +#: doc/guix.texi:2080 +msgid "List the available packages whose name, synopsis, or description matches @var{regexp}, sorted by relevance. Print all the metadata of matching packages in @code{recutils} format (@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual})." +msgstr "Lister les paquets disponibles dont le nom, le synopsis ou la description correspondent à la @var{regexp}, triés par pertinence. Afficher toutes les métadonnées des paquets correspondants au format @code{recutils} (@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual})." #. type: table -#: doc/guix.texi:2078 -msgid "" -"This allows specific fields to be extracted using the @command{recsel} " -"command, for instance:" -msgstr "" +#: doc/guix.texi:2083 +msgid "This allows specific fields to be extracted using the @command{recsel} command, for instance:" +msgstr "Cela permet à des champs spécifiques d'être extraits avec la commande @command{recsel}, par exemple :" #. type: example -#: doc/guix.texi:2084 +#: doc/guix.texi:2089 #, no-wrap msgid "" "$ guix package -s malloc | recsel -p name,version,relevance\n" @@ -6614,9 +5197,14 @@ msgid "" "relevance: 6\n" "\n" msgstr "" +"$ guix package -s malloc | recsel -p name,version,relevance\n" +"name: jemalloc\n" +"version: 4.5.0\n" +"relevance: 6\n" +"\n" #. type: example -#: doc/guix.texi:2088 +#: doc/guix.texi:2093 #, no-wrap msgid "" "name: glibc\n" @@ -6624,103 +5212,105 @@ msgid "" "relevance: 1\n" "\n" msgstr "" +"name: glibc\n" +"version: 2.25\n" +"relevance: 1\n" +"\n" #. type: example -#: doc/guix.texi:2092 +#: doc/guix.texi:2097 #, no-wrap msgid "" "name: libgc\n" "version: 7.6.0\n" "relevance: 1\n" msgstr "" +"name: libgc\n" +"version: 7.6.0\n" +"relevance: 1\n" #. type: table -#: doc/guix.texi:2096 -msgid "" -"Similarly, to show the name of all the packages available under the terms of " -"the GNU@tie{}LGPL version 3:" -msgstr "" +#: doc/guix.texi:2101 +msgid "Similarly, to show the name of all the packages available under the terms of the GNU@tie{}LGPL version 3:" +msgstr "De manière similaire, pour montrer le nom de tous les paquets disponibles sous license GNU@tie{}LGPL version 3 :" #. type: example -#: doc/guix.texi:2100 +#: doc/guix.texi:2105 #, no-wrap msgid "" "$ guix package -s \"\" | recsel -p name -e 'license ~ \"LGPL 3\"'\n" "name: elfutils\n" "\n" msgstr "" +"$ guix package -s \"\" | recsel -p name -e 'license ~ \"LGPL 3\"'\n" +"name: elfutils\n" +"\n" #. type: example -#: doc/guix.texi:2103 +#: doc/guix.texi:2108 #, no-wrap msgid "" "name: gmp\n" "@dots{}\n" msgstr "" +"name: gmp\n" +"@dots{}\n" #. type: table -#: doc/guix.texi:2108 -msgid "" -"It is also possible to refine search results using several @code{-s} flags. " -"For example, the following command returns a list of board games:" -msgstr "" +#: doc/guix.texi:2113 +msgid "It is also possible to refine search results using several @code{-s} flags. For example, the following command returns a list of board games:" +msgstr "Il est aussi possible de raffiner les résultats de la recherche avec plusieurs options @code{-s}. Par exemple, la commande suivante renvoie la liste des jeux de plateau :" #. type: example -#: doc/guix.texi:2113 +#: doc/guix.texi:2118 #, no-wrap msgid "" "$ guix package -s '\\' -s game | recsel -p name\n" "name: gnubg\n" "@dots{}\n" msgstr "" +"$ guix package -s '\\' -s game | recsel -p name\n" +"name: gnubg\n" +"@dots{}\n" #. type: table -#: doc/guix.texi:2119 -msgid "" -"If we were to omit @code{-s game}, we would also get software packages that " -"deal with printed circuit boards; removing the angle brackets around " -"@code{board} would further add packages that have to do with keyboards." -msgstr "" +#: doc/guix.texi:2124 +msgid "If we were to omit @code{-s game}, we would also get software packages that deal with printed circuit boards; removing the angle brackets around @code{board} would further add packages that have to do with keyboards." +msgstr "Si on avait oublié @code{-s game}, on aurait aussi eu les paquets logiciels qui s'occupent de circuits imprimés (en anglais : circuit board) ; supprimer les chevrons autour de @code{board} aurait aussi ajouté les paquets qui parlent de clavier (en anglais : key@emph{board})." #. type: table -#: doc/guix.texi:2123 -msgid "" -"And now for a more elaborate example. The following command searches for " -"cryptographic libraries, filters out Haskell, Perl, Python, and Ruby " -"libraries, and prints the name and synopsis of the matching packages:" -msgstr "" +#: doc/guix.texi:2128 +msgid "And now for a more elaborate example. The following command searches for cryptographic libraries, filters out Haskell, Perl, Python, and Ruby libraries, and prints the name and synopsis of the matching packages:" +msgstr "Et maintenant un exemple plus élaboré. La commande suivante recherche les bibliothèques cryptographiques, retire les bibliothèques Haskell, Perl, Python et Ruby et affiche le nom et le synopsis des paquets correspondants :" #. type: example -#: doc/guix.texi:2127 +#: doc/guix.texi:2132 #, no-wrap msgid "" "$ guix package -s crypto -s library | \\\n" " recsel -e '! (name ~ \"^(ghc|perl|python|ruby)\")' -p name,synopsis\n" msgstr "" - -#. type: table -#: doc/guix.texi:2132 -msgid "" -"@xref{Selection Expressions,,, recutils, GNU recutils manual}, for more " -"information on @dfn{selection expressions} for @code{recsel -e}." -msgstr "" - -#. type: item -#: doc/guix.texi:2133 -#, no-wrap -msgid "--show=@var{package}" -msgstr "" +"$ guix package -s crypto -s library | \\\n" +" recsel -e '! (name ~ \"^(ghc|perl|python|ruby)\")' -p name,synopsis\n" #. type: table #: doc/guix.texi:2137 -msgid "" -"Show details about @var{package}, taken from the list of available packages, " -"in @code{recutils} format (@pxref{Top, GNU recutils databases,, recutils, " -"GNU recutils manual})." -msgstr "" +msgid "@xref{Selection Expressions,,, recutils, GNU recutils manual}, for more information on @dfn{selection expressions} for @code{recsel -e}." +msgstr "@xref{Selection Expressions,,, recutils, GNU recutils manual} pour plus d'information sur les @dfn{expressions de sélection} pour @code{recsel -e}." + +#. type: item +#: doc/guix.texi:2138 +#, no-wrap +msgid "--show=@var{package}" +msgstr "--show=@var{paquet}" + +#. type: table +#: doc/guix.texi:2142 +msgid "Show details about @var{package}, taken from the list of available packages, in @code{recutils} format (@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual})." +msgstr "Afficher les détails du @var{paquet} dans la liste des paquets disponibles, au format @code{recutils} (@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual})." #. type: example -#: doc/guix.texi:2142 +#: doc/guix.texi:2147 #, no-wrap msgid "" "$ guix package --show=python | recsel -p name,version\n" @@ -6728,377 +5318,283 @@ msgid "" "version: 2.7.6\n" "\n" msgstr "" +"$ guix package --show=python | recsel -p name,version\n" +"name: python\n" +"version: 2.7.6\n" +"\n" #. type: example -#: doc/guix.texi:2145 +#: doc/guix.texi:2150 #, no-wrap msgid "" "name: python\n" "version: 3.3.5\n" msgstr "" +"name: python\n" +"version: 3.3.5\n" #. type: table -#: doc/guix.texi:2149 -msgid "" -"You may also specify the full name of a package to only get details about a " -"specific version of it:" -msgstr "" +#: doc/guix.texi:2154 +msgid "You may also specify the full name of a package to only get details about a specific version of it:" +msgstr "Vous pouvez aussi spécifier le nom complet d'un paquet pour n'avoir que les détails concernant une version spécifique :" #. type: example -#: doc/guix.texi:2153 +#: doc/guix.texi:2158 #, no-wrap msgid "" "$ guix package --show=python@@3.4 | recsel -p name,version\n" "name: python\n" "version: 3.4.3\n" msgstr "" +"$ guix package --show=python@@3.4 | recsel -p name,version\n" +"name: python\n" +"version: 3.4.3\n" #. type: item -#: doc/guix.texi:2157 +#: doc/guix.texi:2162 #, no-wrap msgid "--list-installed[=@var{regexp}]" -msgstr "" +msgstr "--list-installed[=@var{regexp}]" #. type: itemx -#: doc/guix.texi:2158 +#: doc/guix.texi:2163 #, no-wrap msgid "-I [@var{regexp}]" -msgstr "" +msgstr "-I [@var{regexp}]" #. type: table -#: doc/guix.texi:2162 -msgid "" -"List the currently installed packages in the specified profile, with the " -"most recently installed packages shown last. When @var{regexp} is " -"specified, list only installed packages whose name matches @var{regexp}." -msgstr "" +#: doc/guix.texi:2167 +msgid "List the currently installed packages in the specified profile, with the most recently installed packages shown last. When @var{regexp} is specified, list only installed packages whose name matches @var{regexp}." +msgstr "Liste les paquets actuellement installés dans le profil spécifié, avec les paquets les plus récemment installés en dernier. Lorsque @var{regexp} est spécifié, liste uniquement les paquets installés dont le nom correspond à @var{regexp}." #. type: table -#: doc/guix.texi:2168 -msgid "" -"For each installed package, print the following items, separated by tabs: " -"the package name, its version string, the part of the package that is " -"installed (for instance, @code{out} for the default output, @code{include} " -"for its headers, etc.), and the path of this package in the store." -msgstr "" +#: doc/guix.texi:2173 +msgid "For each installed package, print the following items, separated by tabs: the package name, its version string, the part of the package that is installed (for instance, @code{out} for the default output, @code{include} for its headers, etc.), and the path of this package in the store." +msgstr "Pour chaque paquet installé, affiche les éléments suivants, séparés par des tabulations : le nom du paquet, sa version, la partie du paquet qui est installé (par exemple, @code{out} pour la sortie par défaut, @code{include} pour ses en-têtes, etc) et le chemin du paquet dans le dépôt." #. type: item -#: doc/guix.texi:2169 +#: doc/guix.texi:2174 #, no-wrap msgid "--list-available[=@var{regexp}]" -msgstr "" +msgstr "--list-available[=@var{regexp}]" #. type: itemx -#: doc/guix.texi:2170 +#: doc/guix.texi:2175 #, no-wrap msgid "-A [@var{regexp}]" -msgstr "" +msgstr "-A [@var{regexp}]" #. type: table -#: doc/guix.texi:2174 -msgid "" -"List packages currently available in the distribution for this system " -"(@pxref{GNU Distribution}). When @var{regexp} is specified, list only " -"installed packages whose name matches @var{regexp}." -msgstr "" -"Liste les paquets actuellement disponibles dans la distribution pour ce " -"système (@pxref{Distribution GNU}). Lorsque @var{regexp} est spécifié, liste " -"uniquement les paquets dont le nom correspond à @var{regexp}." +#: doc/guix.texi:2179 +msgid "List packages currently available in the distribution for this system (@pxref{GNU Distribution}). When @var{regexp} is specified, list only installed packages whose name matches @var{regexp}." +msgstr "Lister les paquets actuellement disponibles dans la distribution pour ce système (@pxref{Distribution GNU}). Lorsque @var{regexp} est spécifié, liste uniquement les paquets dont le nom correspond à @var{regexp}." #. type: table -#: doc/guix.texi:2178 -msgid "" -"For each package, print the following items separated by tabs: its name, its " -"version string, the parts of the package (@pxref{Packages with Multiple " -"Outputs}), and the source location of its definition." -msgstr "" +#: doc/guix.texi:2183 +msgid "For each package, print the following items separated by tabs: its name, its version string, the parts of the package (@pxref{Packages with Multiple Outputs}), and the source location of its definition." +msgstr "Pour chaque paquet, affiche les éléments suivants séparés par des tabulations : son nom, sa version, les parties du paquet (@pxref{Packages with Multiple Outputs}), et l'emplacement de sa définition." #. type: item -#: doc/guix.texi:2179 +#: doc/guix.texi:2184 doc/guix.texi:2821 #, no-wrap msgid "--list-generations[=@var{pattern}]" -msgstr "" +msgstr "--list-generations[=@var{motif}]" #. type: itemx -#: doc/guix.texi:2180 +#: doc/guix.texi:2185 doc/guix.texi:2822 #, no-wrap msgid "-l [@var{pattern}]" -msgstr "" - -#. type: table -#: doc/guix.texi:2186 -msgid "" -"Return a list of generations along with their creation dates; for each " -"generation, show the installed packages, with the most recently installed " -"packages shown last. Note that the zeroth generation is never shown." -msgstr "" +msgstr "-l [@var{motif}]" #. type: table #: doc/guix.texi:2191 -msgid "" -"For each installed package, print the following items, separated by tabs: " -"the name of a package, its version string, the part of the package that is " -"installed (@pxref{Packages with Multiple Outputs}), and the location of this " -"package in the store." -msgstr "" +msgid "Return a list of generations along with their creation dates; for each generation, show the installed packages, with the most recently installed packages shown last. Note that the zeroth generation is never shown." +msgstr "Renvoyer la liste des générations avec leur date de création ; pour chaque génération, montre les paquets installés avec les paquets installés les plus récemment en dernier. Remarquez que la zéroième génération n'est jamais montrée." #. type: table -#: doc/guix.texi:2194 -msgid "" -"When @var{pattern} is used, the command returns only matching generations. " -"Valid patterns include:" -msgstr "" +#: doc/guix.texi:2196 +msgid "For each installed package, print the following items, separated by tabs: the name of a package, its version string, the part of the package that is installed (@pxref{Packages with Multiple Outputs}), and the location of this package in the store." +msgstr "Pour chaque paquet installé, afficher les éléments suivants, séparés par des tabulations : le nom du paquet, sa version, la partie du paquet qui a été installée (@pxref{Packages with Multiple Outputs}), et l'emplacement du paquet dans le dépôt." + +#. type: table +#: doc/guix.texi:2199 +msgid "When @var{pattern} is used, the command returns only matching generations. Valid patterns include:" +msgstr "Lorsque @var{motif} est utilisé, la commande ne renvoie que les générations correspondantes. Les motifs valides sont :" #. type: item -#: doc/guix.texi:2196 +#: doc/guix.texi:2201 #, no-wrap msgid "@emph{Integers and comma-separated integers}. Both patterns denote" -msgstr "" +msgstr "@emph{Des entiers et des entiers séparés par des virgules}. Les deux motifs correspondent" #. type: itemize -#: doc/guix.texi:2199 -msgid "" -"generation numbers. For instance, @code{--list-generations=1} returns the " -"first one." -msgstr "" +#: doc/guix.texi:2204 +msgid "generation numbers. For instance, @code{--list-generations=1} returns the first one." +msgstr "à des numéros de version. Par exemple, @code{--list-generations=1} renvoie la première." #. type: itemize -#: doc/guix.texi:2202 -msgid "" -"And @code{--list-generations=1,8,2} outputs three generations in the " -"specified order. Neither spaces nor trailing commas are allowed." -msgstr "" +#: doc/guix.texi:2207 +msgid "And @code{--list-generations=1,8,2} outputs three generations in the specified order. Neither spaces nor trailing commas are allowed." +msgstr "Et @code{--list-generations=1,8,2} renvoie les trois générations dans l'ordre spécifié. Aucune espace ni virgule surnuméraire n'est permise." #. type: item -#: doc/guix.texi:2203 +#: doc/guix.texi:2208 #, no-wrap msgid "@emph{Ranges}. @code{--list-generations=2..9} prints the" -msgstr "" +msgstr "@emph{Des interval}. @code{--list-generations=2..9} affiche les" #. type: itemize -#: doc/guix.texi:2206 -msgid "" -"specified generations and everything in between. Note that the start of a " -"range must be smaller than its end." -msgstr "" - -#. type: itemize -#: doc/guix.texi:2210 -msgid "" -"It is also possible to omit the endpoint. For example, @code{--list-" -"generations=2..}, returns all generations starting from the second one." -msgstr "" - -#. type: item #: doc/guix.texi:2211 -#, no-wrap -msgid "@emph{Durations}. You can also get the last @emph{N}@tie{}days, weeks," -msgstr "" +msgid "specified generations and everything in between. Note that the start of a range must be smaller than its end." +msgstr "générations demandées et tout ce qui se trouvent entre elles. Remarquez que le début d'un interval doit être plus petit que sa fin." #. type: itemize #: doc/guix.texi:2215 -msgid "" -"or months by passing an integer along with the first letter of the " -"duration. For example, @code{--list-generations=20d} lists generations that " -"are up to 20 days old." -msgstr "" +msgid "It is also possible to omit the endpoint. For example, @code{--list-generations=2..}, returns all generations starting from the second one." +msgstr "Il est aussi possible d'omettre le numéro final. Par exemple, @code{--list-generations=2..} renvoie toutes les générations à partir de la deuxième." #. type: item -#: doc/guix.texi:2217 +#: doc/guix.texi:2216 +#, no-wrap +msgid "@emph{Durations}. You can also get the last @emph{N}@tie{}days, weeks," +msgstr "@emph{Des durées}. Vous pouvez aussi récupérer les derniers @emph{N}@tie{}jours, semaines," + +#. type: itemize +#: doc/guix.texi:2220 +msgid "or months by passing an integer along with the first letter of the duration. For example, @code{--list-generations=20d} lists generations that are up to 20 days old." +msgstr "ou moins en passant un entier avec la première lettre de la durée (en anglais : d, w ou m). Par exemple @code{--list-generations=20d} liste les générations qui sont agées d'au plus 20 jours." + +#. type: item +#: doc/guix.texi:2222 #, no-wrap msgid "--delete-generations[=@var{pattern}]" -msgstr "" +msgstr "--delete-generations[=@var{motif}]" #. type: itemx -#: doc/guix.texi:2218 +#: doc/guix.texi:2223 #, no-wrap msgid "-d [@var{pattern}]" -msgstr "" +msgstr "-d [@var{motif}]" #. type: table -#: doc/guix.texi:2221 -msgid "" -"When @var{pattern} is omitted, delete all generations except the current one." -msgstr "" +#: doc/guix.texi:2226 +msgid "When @var{pattern} is omitted, delete all generations except the current one." +msgstr "Lorsque @var{motif} est omis, supprimer toutes les générations en dehors de l'actuelle." #. type: table -#: doc/guix.texi:2227 -msgid "" -"This command accepts the same patterns as @option{--list-generations}. When " -"@var{pattern} is specified, delete the matching generations. When " -"@var{pattern} specifies a duration, generations @emph{older} than the " -"specified duration match. For instance, @code{--delete-generations=1m} " -"deletes generations that are more than one month old." -msgstr "" +#: doc/guix.texi:2232 +msgid "This command accepts the same patterns as @option{--list-generations}. When @var{pattern} is specified, delete the matching generations. When @var{pattern} specifies a duration, generations @emph{older} than the specified duration match. For instance, @code{--delete-generations=1m} deletes generations that are more than one month old." +msgstr "Cette commande accepte les même motifs que @option{--list-generations}. Lorsque @var{motif} est spécifié, supprimer les générations correspondante. Lorsque @var{motif} spécifie une durée, les générations @emph{plus vieilles} que la durée spécifiée correspondent. Par exemple @code{--delete-generations=1m} supprime les générations vieilles de plus d'un mois." #. type: table -#: doc/guix.texi:2230 -msgid "" -"If the current generation matches, it is @emph{not} deleted. Also, the " -"zeroth generation is never deleted." -msgstr "" +#: doc/guix.texi:2235 +msgid "If the current generation matches, it is @emph{not} deleted. Also, the zeroth generation is never deleted." +msgstr "Si la génération actuelle correspond, elle n'est @emph{pas} supprimée. La zéroième génération n'est elle non plus jamais supprimée." #. type: table -#: doc/guix.texi:2233 -msgid "" -"Note that deleting generations prevents rolling back to them. Consequently, " -"this command must be used with care." -msgstr "" +#: doc/guix.texi:2238 +msgid "Note that deleting generations prevents rolling back to them. Consequently, this command must be used with care." +msgstr "Remarquez que supprimer des générations empêche de revenir en arrière vers elles. Ainsi, cette commande doit être utilisée avec précaution." #. type: Plain text -#: doc/guix.texi:2244 -msgid "" -"Finally, since @command{guix package} may actually start build processes, it " -"supports all the common build options (@pxref{Common Build Options}). It " -"also supports package transformation options, such as @option{--with-source} " -"(@pxref{Package Transformation Options}). However, note that package " -"transformations are lost when upgrading; to preserve transformations across " -"upgrades, you should define your own package variant in a Guile module and " -"add it to @code{GUIX_PACKAGE_PATH} (@pxref{Defining Packages})." -msgstr "" +#: doc/guix.texi:2249 +msgid "Finally, since @command{guix package} may actually start build processes, it supports all the common build options (@pxref{Common Build Options}). It also supports package transformation options, such as @option{--with-source} (@pxref{Package Transformation Options}). However, note that package transformations are lost when upgrading; to preserve transformations across upgrades, you should define your own package variant in a Guile module and add it to @code{GUIX_PACKAGE_PATH} (@pxref{Defining Packages})." +msgstr "Enfin, comme @command{guix package} peut démarrer des processus de construction, elle supporte les options de construction communes (@pxref{Common Build Options}). Elle supporte aussi les options de transformation de paquets comme @option{--with-source} (@pxref{Package Transformation Options}). Cependant, remarquez que les transformations de paquets sont perdues à la mise à jour ; pour les préserver à travers les mises à jours, vous devriez définir vos propres variantes des paquets dans une module Guile et l'ajouter à @code{GUIX_PACKAGE_PATH} (@pxref{Defining Packages})." #. type: cindex -#: doc/guix.texi:2249 +#: doc/guix.texi:2254 #, no-wrap msgid "pre-built binaries" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2255 -msgid "" -"Guix supports transparent source/binary deployment, which means that it can " -"either build things locally, or download pre-built items from a server, or " -"both. We call these pre-built items @dfn{substitutes}---they are " -"substitutes for local build results. In many cases, downloading a " -"substitute is much faster than building things locally." -msgstr "" +msgstr "binaires pré-construits" #. type: Plain text #: doc/guix.texi:2260 -msgid "" -"Substitutes can be anything resulting from a derivation build " -"(@pxref{Derivations}). Of course, in the common case, they are pre-built " -"package binaries, but source tarballs, for instance, which also result from " -"derivation builds, can be available as substitutes." -msgstr "" +msgid "Guix supports transparent source/binary deployment, which means that it can either build things locally, or download pre-built items from a server, or both. We call these pre-built items @dfn{substitutes}---they are substitutes for local build results. In many cases, downloading a substitute is much faster than building things locally." +msgstr "Guix gère le déploiement depuis des binaires ou des sources de manière transparente ce qui signifie qu'il peut aussi bien construire localement que télécharger des éléments pré-construits depuis un serveur ou les deux. Nous appelons ces éléments pré-construits des @dfn{substituts} — ils se substituent aux résultats des constructions locales. Dans la plupart des cas, télécharger un substitut est bien plus rapide que de construire les choses localement." + +#. type: Plain text +#: doc/guix.texi:2265 +msgid "Substitutes can be anything resulting from a derivation build (@pxref{Derivations}). Of course, in the common case, they are pre-built package binaries, but source tarballs, for instance, which also result from derivation builds, can be available as substitutes." +msgstr "Les substituts peuvent être tout ce qui résulte d'une construction de dérivation (@pxref{Derivations}). Bien sûr dans le cas général, il s'agit de paquets binaires pré-construits, mais les archives des sources par exemple résultent aussi de la construction d'une dérivation qui peut aussi être disponible en tant que substitut." #. type: cindex -#: doc/guix.texi:2273 +#: doc/guix.texi:2278 #, no-wrap msgid "hydra" -msgstr "" +msgstr "hydra" #. type: cindex -#: doc/guix.texi:2274 +#: doc/guix.texi:2279 #, no-wrap msgid "build farm" -msgstr "" +msgstr "ferme de construction" #. type: Plain text -#: doc/guix.texi:2284 -msgid "" -"The @code{mirror.hydra.gnu.org} server is a front-end to an official build " -"farm that builds packages from Guix continuously for some architectures, and " -"makes them available as substitutes. This is the default source of " -"substitutes; it can be overridden by passing the @option{--substitute-urls} " -"option either to @command{guix-daemon} (@pxref{daemon-substitute-urls,, " -"@code{guix-daemon --substitute-urls}}) or to client tools such as " -"@command{guix package} (@pxref{client-substitute-urls,, client @option{--" -"substitute-urls} option})." -msgstr "" +#: doc/guix.texi:2289 +msgid "The @code{mirror.hydra.gnu.org} server is a front-end to an official build farm that builds packages from Guix continuously for some architectures, and makes them available as substitutes. This is the default source of substitutes; it can be overridden by passing the @option{--substitute-urls} option either to @command{guix-daemon} (@pxref{daemon-substitute-urls,, @code{guix-daemon --substitute-urls}}) or to client tools such as @command{guix package} (@pxref{client-substitute-urls,, client @option{--substitute-urls} option})." +msgstr "Le serveur @code{mirror.hydra.gnu.org} est une interface à la ferme de construction officielle qui construit des paquets pour Guix continuellement pour certaines architectures et les rend disponibles en tant que substituts. C'est la source par défaut des substituts ; elle peut être modifiée en passant l'option @option{--substitute-urls} soit à @command{guix-daemon} (@pxref{daemon-substitute-urls,, @code{guix-daemon --substitute-urls}}) soit aux outils clients comme @command{guix package} (@pxref{client-substitute-urls,, client @option{--substitute-urls} option})." #. type: Plain text -#: doc/guix.texi:2290 -msgid "" -"Substitute URLs can be either HTTP or HTTPS. HTTPS is recommended because " -"communications are encrypted; conversely, using HTTP makes all " -"communications visible to an eavesdropper, who could use the information " -"gathered to determine, for instance, whether your system has unpatched " -"security vulnerabilities." -msgstr "" +#: doc/guix.texi:2295 +msgid "Substitute URLs can be either HTTP or HTTPS. HTTPS is recommended because communications are encrypted; conversely, using HTTP makes all communications visible to an eavesdropper, who could use the information gathered to determine, for instance, whether your system has unpatched security vulnerabilities." +msgstr "Les URL des substituts peuvent être soit en HTTP soit en HTTPS. Le HTTPS est recommandé parce que les communications sont chiffrées ; à l'inverse HTTP rend les communications visibles pour un espion qui peut utiliser les informations accumulées sur vous pour déterminer par exemple si votre système a des vulnérabilités de sécurités non corrigées." #. type: Plain text -#: doc/guix.texi:2299 -msgid "" -"Substitutes from the official build farm are enabled by default when using " -"the Guix System Distribution (@pxref{GNU Distribution}). However, they are " -"disabled by default when using Guix on a foreign distribution, unless you " -"have explicitly enabled them via one of the recommended installation steps " -"(@pxref{Installation}). The following paragraphs describe how to enable or " -"disable substitutes for the official build farm; the same procedure can also " -"be used to enable substitutes for any other substitute server." -msgstr "" +#: doc/guix.texi:2304 +msgid "Substitutes from the official build farm are enabled by default when using the Guix System Distribution (@pxref{GNU Distribution}). However, they are disabled by default when using Guix on a foreign distribution, unless you have explicitly enabled them via one of the recommended installation steps (@pxref{Installation}). The following paragraphs describe how to enable or disable substitutes for the official build farm; the same procedure can also be used to enable substitutes for any other substitute server." +msgstr "Les substituts de la ferme de construction officielle sont activés par défaut dans la distribution système Guix (@pxref{GNU Distribution}). Cependant, ils sont désactivés par défaut lorsque vous utilisez Guix sur une distribution externe, à moins que vous ne les ayez explicitement activés via l'une des étapes d'installation recommandées (@pxref{Installation}). Les paragraphes suivants décrivent comment activer ou désactiver les substituts de la ferme de construction ; la même procédure peut être utilisée pour activer les substituts de n'importe quel autre serveur de substituts." #. type: cindex -#: doc/guix.texi:2303 +#: doc/guix.texi:2308 #, no-wrap msgid "security" -msgstr "" +msgstr "sécurité" #. type: cindex -#: doc/guix.texi:2305 +#: doc/guix.texi:2310 #, no-wrap msgid "access control list (ACL), for substitutes" -msgstr "" +msgstr "liste de contrôle d'accès (ACL), pour les substituts" #. type: cindex -#: doc/guix.texi:2306 +#: doc/guix.texi:2311 #, no-wrap msgid "ACL (access control list), for substitutes" -msgstr "" +msgstr "ACL (liste de contrôle d'accès), pour les substituts" #. type: Plain text -#: doc/guix.texi:2313 -msgid "" -"To allow Guix to download substitutes from @code{hydra.gnu.org} or a mirror " -"thereof, you must add its public key to the access control list (ACL) of " -"archive imports, using the @command{guix archive} command (@pxref{Invoking " -"guix archive}). Doing so implies that you trust @code{hydra.gnu.org} to not " -"be compromised and to serve genuine substitutes." -msgstr "" +#: doc/guix.texi:2318 +msgid "To allow Guix to download substitutes from @code{hydra.gnu.org} or a mirror thereof, you must add its public key to the access control list (ACL) of archive imports, using the @command{guix archive} command (@pxref{Invoking guix archive}). Doing so implies that you trust @code{hydra.gnu.org} to not be compromised and to serve genuine substitutes." +msgstr "Pour permettre à Guix de télécharger les substituts depuis @code{hydra.gnu.org} ou un mirroir, vous devez ajouter sa clef publique à la liste de contrôle d'accès (ACL) des imports d'archives, avec la commande @command{guix archive} (@pxref{Invoking guix archive}). Cela implique que vous faîtes confiance à @code{hydra.gnu.org} pour ne pas être compromis et vous servir des substituts authentiques." #. type: Plain text -#: doc/guix.texi:2320 -msgid "" -"The public key for @code{hydra.gnu.org} is installed along with Guix, in " -"@code{@var{prefix}/share/guix/hydra.gnu.org.pub}, where @var{prefix} is the " -"installation prefix of Guix. If you installed Guix from source, make sure " -"you checked the GPG signature of @file{guix-@value{VERSION}.tar.gz}, which " -"contains this public key file. Then, you can run something like this:" -msgstr "" +#: doc/guix.texi:2325 +msgid "The public key for @code{hydra.gnu.org} is installed along with Guix, in @code{@var{prefix}/share/guix/hydra.gnu.org.pub}, where @var{prefix} is the installation prefix of Guix. If you installed Guix from source, make sure you checked the GPG signature of @file{guix-@value{VERSION}.tar.gz}, which contains this public key file. Then, you can run something like this:" +msgstr "La clef publique pour @code{hydra.gnu.org} est installée avec Guix, dans @code{@var{préfixe}/share/guix/hydra.gnu.org.pub}, où @var{préfixe} est le préfixe d'installation de Guix. Si vous avez installé Guix depuis les sources, assurez-vous d'avoir vérifié la signature GPG de @file{guix-@value{VERSION}.tar.gz} qui contient ce fichier de clef publique. Ensuite vous pouvez lancer quelque chose comme ceci :" #. type: example -#: doc/guix.texi:2323 +#: doc/guix.texi:2328 #, no-wrap msgid "# guix archive --authorize < @var{prefix}/share/guix/hydra.gnu.org.pub\n" -msgstr "" - -#. type: quotation -#: doc/guix.texi:2329 -msgid "" -"Similarly, the @file{berlin.guixsd.org.pub} file contains the public key for " -"the project's new build farm, reachable at @indicateurl{https://berlin." -"guixsd.org}." -msgstr "" +msgstr "# guix archive --authorize < @var{préfixe}/share/guix/hydra.gnu.org.pub\n" #. type: quotation #: doc/guix.texi:2334 -msgid "" -"As of this writing @code{berlin.guixsd.org} is being upgraded so it can " -"better scale up, but you might want to give it a try. It is backed by 20 " -"x86_64/i686 build nodes and may be able to provide substitutes more quickly " -"than @code{mirror.hydra.gnu.org}." -msgstr "" +msgid "Similarly, the @file{berlin.guixsd.org.pub} file contains the public key for the project's new build farm, reachable at @indicateurl{https://berlin.guixsd.org}." +msgstr "De même, le fichier @file{berlin.guixsd.org.pub} contient la clef publique de la nouvelle ferme de construction du projet, disponible depuis @indicateurl{https://berlin.guixsd.org}." + +#. type: quotation +#: doc/guix.texi:2339 +msgid "As of this writing @code{berlin.guixsd.org} is being upgraded so it can better scale up, but you might want to give it a try. It is backed by 20 x86_64/i686 build nodes and may be able to provide substitutes more quickly than @code{mirror.hydra.gnu.org}." +msgstr "Au moment où ces lignes sont écrites, @code{berlin.guixsd.org} est mis à niveau pour mieux passer à l'échelle, mais vous pourriez vouloir le tester. Il est associé à 20 nœuds de construction x86_64/i686 et pourrait fournir des substituts plus rapidement que @code{mirror.hydra.gnu.org}" #. type: Plain text -#: doc/guix.texi:2338 -msgid "" -"Once this is in place, the output of a command like @code{guix build} should " -"change from something like:" -msgstr "" +#: doc/guix.texi:2343 +msgid "Once this is in place, the output of a command like @code{guix build} should change from something like:" +msgstr "Une fois que cela est en place, la sortie d'une commande comme @code{guix build} devrait changer de quelque chose comme :" #. type: example -#: doc/guix.texi:2347 +#: doc/guix.texi:2352 #, no-wrap msgid "" "$ guix build emacs --dry-run\n" @@ -7109,14 +5605,21 @@ msgid "" " /gnu/store/nlma1pw0p603fpfiqy7kn4zm105r5dmw-util-linux-2.21.drv\n" "@dots{}\n" msgstr "" +"$ guix build emacs --dry-run\n" +"Les dérivations suivantes seraient construites :\n" +" /gnu/store/yr7bnx8xwcayd6j95r2clmkdl1qh688w-emacs-24.3.drv\n" +" /gnu/store/x8qsh1hlhgjx6cwsjyvybnfv2i37z23w-dbus-1.6.4.tar.gz.drv\n" +" /gnu/store/1ixwp12fl950d15h2cj11c73733jay0z-alsa-lib-1.0.27.1.tar.bz2.drv\n" +" /gnu/store/nlma1pw0p603fpfiqy7kn4zm105r5dmw-util-linux-2.21.drv\n" +"@dots{}\n" #. type: Plain text -#: doc/guix.texi:2351 +#: doc/guix.texi:2356 msgid "to something like:" -msgstr "" +msgstr "à quelque chose comme :" #. type: example -#: doc/guix.texi:2360 +#: doc/guix.texi:2365 #, no-wrap msgid "" "$ guix build emacs --dry-run\n" @@ -7127,1594 +5630,1388 @@ msgid "" " /gnu/store/7zdhgp0n1518lvfn8mb96sxqfmvqrl7v-libxrender-0.9.7\n" "@dots{}\n" msgstr "" +"$ guix build emacs --dry-run\n" +"112.3 Mo seraient téléchargés :\n" +" /gnu/store/pk3n22lbq6ydamyymqkkz7i69wiwjiwi-emacs-24.3\n" +" /gnu/store/2ygn4ncnhrpr61rssa6z0d9x22si0va3-libjpeg-8d\n" +" /gnu/store/71yz6lgx4dazma9dwn2mcjxaah9w77jq-cairo-1.12.16\n" +" /gnu/store/7zdhgp0n1518lvfn8mb96sxqfmvqrl7v-libxrender-0.9.7\n" +"@dots{}\n" #. type: Plain text -#: doc/guix.texi:2365 -msgid "" -"This indicates that substitutes from @code{hydra.gnu.org} are usable and " -"will be downloaded, when possible, for future builds." -msgstr "" +#: doc/guix.texi:2370 +msgid "This indicates that substitutes from @code{hydra.gnu.org} are usable and will be downloaded, when possible, for future builds." +msgstr "Cela indique que les substituts de @code{hydra.gnu.org} sont utilisables et seront téléchargés, si possible, pour les futures constructions." #. type: cindex -#: doc/guix.texi:2366 +#: doc/guix.texi:2371 #, no-wrap msgid "substitutes, how to disable" -msgstr "" +msgstr "substituts, comment les désactiver" #. type: Plain text -#: doc/guix.texi:2372 -msgid "" -"The substitute mechanism can be disabled globally by running @code{guix-" -"daemon} with @code{--no-substitutes} (@pxref{Invoking guix-daemon}). It can " -"also be disabled temporarily by passing the @code{--no-substitutes} option " -"to @command{guix package}, @command{guix build}, and other command-line " -"tools." -msgstr "" +#: doc/guix.texi:2377 +msgid "The substitute mechanism can be disabled globally by running @code{guix-daemon} with @code{--no-substitutes} (@pxref{Invoking guix-daemon}). It can also be disabled temporarily by passing the @code{--no-substitutes} option to @command{guix package}, @command{guix build}, and other command-line tools." +msgstr "Le mécanisme de substitution peut être désactivé globalement en lançant @code{guix-daemon} avec @code{--no-substitutes} (@pxref{Invoking guix-daemon}). Il peut aussi être désactivé temporairement en passant l'option @code{--no-substitutes} à @command{guix package}, @command{guix build} et aux autres outils en ligne de commande." #. type: cindex -#: doc/guix.texi:2376 +#: doc/guix.texi:2381 #, no-wrap msgid "digital signatures" -msgstr "" +msgstr "signatures numériques" #. type: Plain text -#: doc/guix.texi:2380 -msgid "" -"Guix detects and raises an error when attempting to use a substitute that " -"has been tampered with. Likewise, it ignores substitutes that are not " -"signed, or that are not signed by one of the keys listed in the ACL." -msgstr "" +#: doc/guix.texi:2385 +msgid "Guix detects and raises an error when attempting to use a substitute that has been tampered with. Likewise, it ignores substitutes that are not signed, or that are not signed by one of the keys listed in the ACL." +msgstr "Guix détecte et lève une erreur lorsqu'il essaye d'utiliser un substituts qui a été modifié. De même, il ignore les substituts qui ne sont pas signés ou qui ne sont pas signés par l'une des clefs listés dans l'ACL." #. type: Plain text -#: doc/guix.texi:2386 -msgid "" -"There is one exception though: if an unauthorized server provides " -"substitutes that are @emph{bit-for-bit identical} to those provided by an " -"authorized server, then the unauthorized server becomes eligible for " -"downloads. For example, assume we have chosen two substitute servers with " -"this option:" -msgstr "" +#: doc/guix.texi:2391 +msgid "There is one exception though: if an unauthorized server provides substitutes that are @emph{bit-for-bit identical} to those provided by an authorized server, then the unauthorized server becomes eligible for downloads. For example, assume we have chosen two substitute servers with this option:" +msgstr "Il y a une exception cependant : si un serveur non autorisé fournit des substituts qui sont @emph{identiques bit-à-bit} à ceux fournis par un serveur autorisé, alors le serveur non autorisé devient disponible pour les téléchargements. Par exemple en supposant qu'on a choisi deux serveurs de substituts avec cette option :" #. type: example -#: doc/guix.texi:2389 +#: doc/guix.texi:2394 #, no-wrap msgid "--substitute-urls=\"https://a.example.org https://b.example.org\"\n" -msgstr "" +msgstr "--substitute-urls=\"https://a.example.org https://b.example.org\"\n" #. type: Plain text -#: doc/guix.texi:2400 -msgid "" -"If the ACL contains only the key for @code{b.example.org}, and if @code{a." -"example.org} happens to serve the @emph{exact same} substitutes, then Guix " -"will download substitutes from @code{a.example.org} because it comes first " -"in the list and can be considered a mirror of @code{b.example.org}. In " -"practice, independent build machines usually produce the same binaries, " -"thanks to bit-reproducible builds (see below)." -msgstr "" +#: doc/guix.texi:2405 +msgid "If the ACL contains only the key for @code{b.example.org}, and if @code{a.example.org} happens to serve the @emph{exact same} substitutes, then Guix will download substitutes from @code{a.example.org} because it comes first in the list and can be considered a mirror of @code{b.example.org}. In practice, independent build machines usually produce the same binaries, thanks to bit-reproducible builds (see below)." +msgstr "Si l'ACL contient uniquement la clef de @code{b.example.org}, et si @code{a.example.org} sert @emph{exactement les mêmes} substituts, alors Guix téléchargera les substituts de @code{a.example.org} parce qu'il vient en premier dans la liste et peut être considéré comme un mirroir de @code{b.example.org}. En pratique, des machines de constructions produisent souvent les mêmes binaires grâce à des construction reproductibles au bit près (voir plus bas)." #. type: Plain text -#: doc/guix.texi:2407 -msgid "" -"When using HTTPS, the server's X.509 certificate is @emph{not} validated (in " -"other words, the server is not authenticated), contrary to what HTTPS " -"clients such as Web browsers usually do. This is because Guix authenticates " -"substitute information itself, as explained above, which is what we care " -"about (whereas X.509 certificates are about authenticating bindings between " -"domain names and public keys.)" -msgstr "" +#: doc/guix.texi:2412 +msgid "When using HTTPS, the server's X.509 certificate is @emph{not} validated (in other words, the server is not authenticated), contrary to what HTTPS clients such as Web browsers usually do. This is because Guix authenticates substitute information itself, as explained above, which is what we care about (whereas X.509 certificates are about authenticating bindings between domain names and public keys.)" +msgstr "Lorsque vous utilisez HTTPS, le certificat X.509 du serveur n'est @emph{pas} validé (en d'autre termes, le serveur n'est pas authentifié), contrairement à ce que des clients HTTPS comme des navigateurs web font habituellement. Cela est dû au fait que Guix authentifie les informations sur les substituts eux-même, comme expliqué plus haut, ce dont on se soucie réellement (alors que les certificats X.509 authentifie la relation entre nom de domaine et clef publique)." #. type: Plain text -#: doc/guix.texi:2419 -msgid "" -"Substitutes are downloaded over HTTP or HTTPS. The @code{http_proxy} " -"environment variable can be set in the environment of @command{guix-daemon} " -"and is honored for downloads of substitutes. Note that the value of " -"@code{http_proxy} in the environment where @command{guix build}, " -"@command{guix package}, and other client commands are run has " -"@emph{absolutely no effect}." -msgstr "" +#: doc/guix.texi:2424 +msgid "Substitutes are downloaded over HTTP or HTTPS. The @code{http_proxy} environment variable can be set in the environment of @command{guix-daemon} and is honored for downloads of substitutes. Note that the value of @code{http_proxy} in the environment where @command{guix build}, @command{guix package}, and other client commands are run has @emph{absolutely no effect}." +msgstr "Les substituts sont téléchargés par HTTP ou HTTPS. La variable d'environnement @code{http_proxy} peut être initialisée dans l'environnement de @command{guix-daemon} et est respectée pour le téléchargement des substituts. Remarquez que la valeur de @code{http_proxy} dans l'environnement où tournent @command{guix build}, @command{guix package} et les autres clients n'a @emph{absolument aucun effet}." #. type: Plain text -#: doc/guix.texi:2428 -msgid "" -"Even when a substitute for a derivation is available, sometimes the " -"substitution attempt will fail. This can happen for a variety of reasons: " -"the substitute server might be offline, the substitute may recently have " -"been deleted, the connection might have been interrupted, etc." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2442 -msgid "" -"When substitutes are enabled and a substitute for a derivation is available, " -"but the substitution attempt fails, Guix will attempt to build the " -"derivation locally depending on whether or not @code{--fallback} was given " -"(@pxref{fallback-option,, common build option @code{--fallback}}). " -"Specifically, if @code{--fallback} was omitted, then no local build will be " -"performed, and the derivation is considered to have failed. However, if " -"@code{--fallback} was given, then Guix will attempt to build the derivation " -"locally, and the success or failure of the derivation depends on the success " -"or failure of the local build. Note that when substitutes are disabled or " -"no substitute is available for the derivation in question, a local build " -"will @emph{always} be performed, regardless of whether or not @code{--" -"fallback} was given." -msgstr "" +#: doc/guix.texi:2433 +msgid "Even when a substitute for a derivation is available, sometimes the substitution attempt will fail. This can happen for a variety of reasons: the substitute server might be offline, the substitute may recently have been deleted, the connection might have been interrupted, etc." +msgstr "Même lorsqu'un substitut pour une dérivation est disponible, la substitution échoue parfois. Cela peut arriver pour plusieurs raisons : le serveur de substitut peut être hors ligne, le substitut a récemment été supprimé du serveur, la connexion peut avoir été interrompue, etc." #. type: Plain text #: doc/guix.texi:2447 -msgid "" -"To get an idea of how many substitutes are available right now, you can try " -"running the @command{guix weather} command (@pxref{Invoking guix weather}). " -"This command provides statistics on the substitutes provided by a server." -msgstr "" +msgid "When substitutes are enabled and a substitute for a derivation is available, but the substitution attempt fails, Guix will attempt to build the derivation locally depending on whether or not @code{--fallback} was given (@pxref{fallback-option,, common build option @code{--fallback}}). Specifically, if @code{--fallback} was omitted, then no local build will be performed, and the derivation is considered to have failed. However, if @code{--fallback} was given, then Guix will attempt to build the derivation locally, and the success or failure of the derivation depends on the success or failure of the local build. Note that when substitutes are disabled or no substitute is available for the derivation in question, a local build will @emph{always} be performed, regardless of whether or not @code{--fallback} was given." +msgstr "Lorsque les substituts sont activés et qu'un substitut pour une dérivation est disponible, mais que la tentative de substitution échoue, Guix essaiera de construire la dérivation localement si @code{--fallback} a été passé en argument (@pxref{fallback-option,, common build option @code{--fallback}}). Plus spécifiquement, si cet option n'a pas été passée en argument, alors aucune construction locale n'est effectuée et la dérivation est considérée comme étant en échec. Cependant, si @code{--fallback} est passé en argument, alors Guix essaiera de construire la dérivation localement et l'échec ou le succès de la dérivation dépend de l'échec ou du succès de la construction locale. Remarquez que lorsque les substituts sont désactivés ou qu'aucun substitut n'est disponible pour la dérivation en question, une construction locale sera @emph{toujours} effectuée, indépendamment du fait que l'argument @code{--fallback} ait été ou non passé." + +#. type: Plain text +#: doc/guix.texi:2452 +msgid "To get an idea of how many substitutes are available right now, you can try running the @command{guix weather} command (@pxref{Invoking guix weather}). This command provides statistics on the substitutes provided by a server." +msgstr "Pour se donner une idée du nombre de substituts disponibles maintenant, vous pouvez essayer de lancer la commande @command{guix weather} (@pxref{Invoking guix weather}). Cette command fournit des statistiques sur les substituts fournis par un serveur." #. type: cindex -#: doc/guix.texi:2451 +#: doc/guix.texi:2456 #, no-wrap msgid "trust, of pre-built binaries" -msgstr "" +msgstr "confiance, en des binaires pré-construits" #. type: Plain text -#: doc/guix.texi:2461 -msgid "" -"Today, each individual's control over their own computing is at the mercy of " -"institutions, corporations, and groups with enough power and determination " -"to subvert the computing infrastructure and exploit its weaknesses. While " -"using @code{hydra.gnu.org} substitutes can be convenient, we encourage users " -"to also build on their own, or even run their own build farm, such that " -"@code{hydra.gnu.org} is less of an interesting target. One way to help is " -"by publishing the software you build using @command{guix publish} so that " -"others have one more choice of server to download substitutes from " -"(@pxref{Invoking guix publish})." -msgstr "" +#: doc/guix.texi:2466 +msgid "Today, each individual's control over their own computing is at the mercy of institutions, corporations, and groups with enough power and determination to subvert the computing infrastructure and exploit its weaknesses. While using @code{hydra.gnu.org} substitutes can be convenient, we encourage users to also build on their own, or even run their own build farm, such that @code{hydra.gnu.org} is less of an interesting target. One way to help is by publishing the software you build using @command{guix publish} so that others have one more choice of server to download substitutes from (@pxref{Invoking guix publish})." +msgstr "De nos jours, le contrôle individuel sur son utilisation propre de l'informatique est à la merci d'institutions, de sociétés et de groupes avec assez de pouvoir et de détermination pour contourner les infrastructures informatiques et exploiter leurs faiblesses. Bien qu'utiliser les substituts de @code{hydra.gnu.org} soit pratique, nous encourageons les utilisateurs à construire aussi par eux-même, voir à faire tourner leur propre ferme de construction, pour que @code{hydra.gnu.org} devienne une cible moins intéressante. Une façon d'aider est de publier les logiciels que vous construisez avec @command{guix publish} pour que les autres aient plus de choix de serveurs où télécharger les substituts (@pxref{Invoking guix publish})." #. type: Plain text -#: doc/guix.texi:2473 -msgid "" -"Guix has the foundations to maximize build reproducibility " -"(@pxref{Features}). In most cases, independent builds of a given package or " -"derivation should yield bit-identical results. Thus, through a diverse set " -"of independent package builds, we can strengthen the integrity of our " -"systems. The @command{guix challenge} command aims to help users assess " -"substitute servers, and to assist developers in finding out about non-" -"deterministic package builds (@pxref{Invoking guix challenge}). Similarly, " -"the @option{--check} option of @command{guix build} allows users to check " -"whether previously-installed substitutes are genuine by rebuilding them " -"locally (@pxref{build-check, @command{guix build --check}})." -msgstr "" +#: doc/guix.texi:2478 +msgid "Guix has the foundations to maximize build reproducibility (@pxref{Features}). In most cases, independent builds of a given package or derivation should yield bit-identical results. Thus, through a diverse set of independent package builds, we can strengthen the integrity of our systems. The @command{guix challenge} command aims to help users assess substitute servers, and to assist developers in finding out about non-deterministic package builds (@pxref{Invoking guix challenge}). Similarly, the @option{--check} option of @command{guix build} allows users to check whether previously-installed substitutes are genuine by rebuilding them locally (@pxref{build-check, @command{guix build --check}})." +msgstr "Guix possède les fondations pour maximiser la reproductibilité logicielle (@pxref{Features}). Dans la plupart des cas, des constructions indépendantes d'un paquet donnée ou d'une dérivation devrait donner des résultats identiques au bit près. Ainsi, à travers un ensemble de constructions de paquets indépendantes il est possible de renforcer l'intégrité du système. La commande @command{guix challenge} a pour but d'aider les utilisateurs à tester les serveurs de substituts et à aider les développeurs à trouver les constructions de paquets non-déterministes (@pxref{Invoking guix challenge}). De même, l'option @option{--check} de @command{guix build} permet aux utilisateurs de vérifier si les substituts précédemment installés sont authentiques en les reconstruisant localement (@pxref{build-check, @command{guix build --check}})." #. type: Plain text -#: doc/guix.texi:2477 -msgid "" -"In the future, we want Guix to have support to publish and retrieve binaries " -"to/from other users, in a peer-to-peer fashion. If you would like to " -"discuss this project, join us on @email{guix-devel@@gnu.org}." -msgstr "" +#: doc/guix.texi:2482 +msgid "In the future, we want Guix to have support to publish and retrieve binaries to/from other users, in a peer-to-peer fashion. If you would like to discuss this project, join us on @email{guix-devel@@gnu.org}." +msgstr "Dans le futur, nous aimerions que Guix puisse publier et recevoir des binaires d'autres utilisateurs, d'une manière pair-à-pair. Si vous voulez discuter de ce projet, rejoignez-nous sur @email{guix-devel@@gnu.org}." #. type: cindex -#: doc/guix.texi:2481 +#: doc/guix.texi:2486 #, no-wrap msgid "multiple-output packages" -msgstr "" +msgstr "paquets avec plusieurs résultats" #. type: cindex -#: doc/guix.texi:2482 +#: doc/guix.texi:2487 #, no-wrap msgid "package outputs" -msgstr "" +msgstr "sorties de paquets" #. type: cindex -#: doc/guix.texi:2483 +#: doc/guix.texi:2488 #, no-wrap msgid "outputs" -msgstr "" +msgstr "sorties" #. type: Plain text -#: doc/guix.texi:2493 -msgid "" -"Often, packages defined in Guix have a single @dfn{output}---i.e., the " -"source package leads to exactly one directory in the store. When running " -"@command{guix package -i glibc}, one installs the default output of the GNU " -"libc package; the default output is called @code{out}, but its name can be " -"omitted as shown in this command. In this particular case, the default " -"output of @code{glibc} contains all the C header files, shared libraries, " -"static libraries, Info documentation, and other supporting files." -msgstr "" +#: doc/guix.texi:2498 +msgid "Often, packages defined in Guix have a single @dfn{output}---i.e., the source package leads to exactly one directory in the store. When running @command{guix package -i glibc}, one installs the default output of the GNU libc package; the default output is called @code{out}, but its name can be omitted as shown in this command. In this particular case, the default output of @code{glibc} contains all the C header files, shared libraries, static libraries, Info documentation, and other supporting files." +msgstr "Souvent, les paquets définis dans Guix ont une seule @dfn{sortie} — c.-à-d.@: que le paquet source conduit à exactement un répertoire dans le dépôt. Lorsque vous lancez @command{guix package -i glibc}, vous installez la sortie par défaut du paquet GNU libc ; la sortie par défaut est appelée @code{out} mais son nom peut être omis comme le montre cette commande. Dans ce cas particuliers, la sortie par défaut de @code{glibc} contient tous les fichiers d'en-tête C, les bibliothèques partagées, les bibliothèques statiques, la documentation Info et les autres fichiers de support." #. type: Plain text -#: doc/guix.texi:2501 -msgid "" -"Sometimes it is more appropriate to separate the various types of files " -"produced from a single source package into separate outputs. For instance, " -"the GLib C library (used by GTK+ and related packages) installs more than " -"20 MiB of reference documentation as HTML pages. To save space for users " -"who do not need it, the documentation goes to a separate output, called " -"@code{doc}. To install the main GLib output, which contains everything but " -"the documentation, one would run:" -msgstr "" +#: doc/guix.texi:2506 +msgid "Sometimes it is more appropriate to separate the various types of files produced from a single source package into separate outputs. For instance, the GLib C library (used by GTK+ and related packages) installs more than 20 MiB of reference documentation as HTML pages. To save space for users who do not need it, the documentation goes to a separate output, called @code{doc}. To install the main GLib output, which contains everything but the documentation, one would run:" +msgstr "Parfois il est plus approprié de séparer les divers types de fichiers produits par un même paquet source en plusieurs sorties. Par exemple, la bibliothèque C GLib (utilisée par GTK+ et des paquets associés) installe plus de 20 Mo de documentation de référence dans des pages HTML. Pour préserver l'espace disque des utilisateurs qui n'en ont pas besoin, la documentation va dans une sortie séparée nommée @code{doc}. Pour installer la sortie principale de GLib, qui contient tout sauf la documentation, on devrait lancer :" #. type: example -#: doc/guix.texi:2504 +#: doc/guix.texi:2509 #, no-wrap msgid "guix package -i glib\n" -msgstr "" +msgstr "guix package -i glib\n" #. type: code{#1} -#: doc/guix.texi:2506 doc/guix.texi:21321 +#: doc/guix.texi:2511 doc/guix.texi:21805 #, no-wrap msgid "documentation" -msgstr "" +msgstr "documentation" #. type: Plain text -#: doc/guix.texi:2508 +#: doc/guix.texi:2513 msgid "The command to install its documentation is:" -msgstr "" +msgstr "La commande pour installer la documentation est :" #. type: example -#: doc/guix.texi:2511 +#: doc/guix.texi:2516 #, no-wrap msgid "guix package -i glib:doc\n" -msgstr "" +msgstr "guix package -i glib:doc\n" #. type: Plain text -#: doc/guix.texi:2522 -msgid "" -"Some packages install programs with different ``dependency footprints''. " -"For instance, the WordNet package installs both command-line tools and " -"graphical user interfaces (GUIs). The former depend solely on the C " -"library, whereas the latter depend on Tcl/Tk and the underlying X " -"libraries. In this case, we leave the command-line tools in the default " -"output, whereas the GUIs are in a separate output. This allows users who do " -"not need the GUIs to save space. The @command{guix size} command can help " -"find out about such situations (@pxref{Invoking guix size}). @command{guix " -"graph} can also be helpful (@pxref{Invoking guix graph})." -msgstr "" +#: doc/guix.texi:2527 +msgid "Some packages install programs with different ``dependency footprints''. For instance, the WordNet package installs both command-line tools and graphical user interfaces (GUIs). The former depend solely on the C library, whereas the latter depend on Tcl/Tk and the underlying X libraries. In this case, we leave the command-line tools in the default output, whereas the GUIs are in a separate output. This allows users who do not need the GUIs to save space. The @command{guix size} command can help find out about such situations (@pxref{Invoking guix size}). @command{guix graph} can also be helpful (@pxref{Invoking guix graph})." +msgstr "Certains paquets installent des programmes avec des « empreintes dépendances » différentes. Par exemple le paquet WordNet installe à la fois les outils en ligne de commande et les interfaces graphiques (GUI). La première ne dépend que de la bibliothèque C, alors que cette dernière dépend de Tcl/Tk et des bibliothèques X sous-jacentes. Dans ce cas, nous laissons les outils en ligne de commande dans la sortie par défaut et l'interface graphique dans une sortie séparée. Cela permet aux utilisateurs qui n'ont pas besoin d'interface graphique de gagner de la place. La commande @command{guix size} peut aider à trouver ces situations (@pxref{Invoking guix size}). @command{guix graph} peut aussi être utile (@pxref{Invoking guix graph})." #. type: Plain text -#: doc/guix.texi:2530 -msgid "" -"There are several such multiple-output packages in the GNU distribution. " -"Other conventional output names include @code{lib} for libraries and " -"possibly header files, @code{bin} for stand-alone programs, and @code{debug} " -"for debugging information (@pxref{Installing Debugging Files}). The outputs " -"of a packages are listed in the third column of the output of @command{guix " -"package --list-available} (@pxref{Invoking guix package})." -msgstr "" +#: doc/guix.texi:2535 +msgid "There are several such multiple-output packages in the GNU distribution. Other conventional output names include @code{lib} for libraries and possibly header files, @code{bin} for stand-alone programs, and @code{debug} for debugging information (@pxref{Installing Debugging Files}). The outputs of a packages are listed in the third column of the output of @command{guix package --list-available} (@pxref{Invoking guix package})." +msgstr "Il y a plusieurs paquets à sorties multiples dans la distribution GNU. D'autres noms de sorties conventionnels sont @code{lib} pour les bibliothèques et éventuellement les fichiers d'en-tête, @code{bin} pour les programmes indépendants et @code{debug} pour les informations de débogage (@pxref{Installing Debugging Files}). Les sorties d'un paquet sont listés dans la troisième colonne de la sortie de @command{guix package --list-available} (@pxref{Invoking guix package})." #. type: section -#: doc/guix.texi:2533 +#: doc/guix.texi:2538 #, no-wrap msgid "Invoking @command{guix gc}" -msgstr "" +msgstr "Invoquer @command{guix gc}" #. type: cindex -#: doc/guix.texi:2535 +#: doc/guix.texi:2540 #, no-wrap msgid "garbage collector" -msgstr "" +msgstr "ramasse-miettes" #. type: cindex -#: doc/guix.texi:2536 +#: doc/guix.texi:2541 #, no-wrap msgid "disk space" -msgstr "" +msgstr "espace disque" #. type: Plain text -#: doc/guix.texi:2542 -msgid "" -"Packages that are installed, but not used, may be @dfn{garbage-collected}. " -"The @command{guix gc} command allows users to explicitly run the garbage " -"collector to reclaim space from the @file{/gnu/store} directory. It is the " -"@emph{only} way to remove files from @file{/gnu/store}---removing files or " -"directories manually may break it beyond repair!" -msgstr "" +#: doc/guix.texi:2547 +msgid "Packages that are installed, but not used, may be @dfn{garbage-collected}. The @command{guix gc} command allows users to explicitly run the garbage collector to reclaim space from the @file{/gnu/store} directory. It is the @emph{only} way to remove files from @file{/gnu/store}---removing files or directories manually may break it beyond repair!" +msgstr "Les paquets qui sont installés mais pas utilisés peuvent être @dfn{glanés}. La commande @command{guix gc} permet aux utilisateurs de lancer explicitement le ramasse-miettes pour récupérer de l'espace dans le répertoire @file{/gnu/store}. C'est la @emph{seule} manière de supprimer des fichiers de @file{/gnu/store} — supprimer des fichiers ou des répertoires à la main peut le casser de manière impossible à réparer !" #. type: Plain text -#: doc/guix.texi:2553 -msgid "" -"The garbage collector has a set of known @dfn{roots}: any file under @file{/" -"gnu/store} reachable from a root is considered @dfn{live} and cannot be " -"deleted; any other file is considered @dfn{dead} and may be deleted. The " -"set of garbage collector roots (``GC roots'' for short) includes default " -"user profiles; by default, the symlinks under @file{/var/guix/gcroots} " -"represent these GC roots. New GC roots can be added with @command{guix " -"build --root}, for example (@pxref{Invoking guix build})." -msgstr "" +#: doc/guix.texi:2558 +msgid "The garbage collector has a set of known @dfn{roots}: any file under @file{/gnu/store} reachable from a root is considered @dfn{live} and cannot be deleted; any other file is considered @dfn{dead} and may be deleted. The set of garbage collector roots (``GC roots'' for short) includes default user profiles; by default, the symlinks under @file{/var/guix/gcroots} represent these GC roots. New GC roots can be added with @command{guix build --root}, for example (@pxref{Invoking guix build})." +msgstr "Le ramasse-miettes a un ensemble de @dfn{racines} connues : tout fichier dans @file{/gnu/store} atteignable depuis une racine est considéré comme @dfn{utilisé} et ne peut pas être supprimé ; tous les autres fichiers sont considérés comme @dfn{inutilisés} et peuvent être supprimés. L'ensemble des racines du ramasse-miettes (ou « racines du GC » pour faire court) inclue les profils par défaut des utilisateurs ; par défaut les liens symboliques sous @file{/var/guix/gcroots} représentent ces racines du GC. De nouvelles racines du GC peuvent être ajoutées avec la @command{guix build -- root} par exemple (@pxref{Invoking guix build})." #. type: Plain text -#: doc/guix.texi:2559 -msgid "" -"Prior to running @code{guix gc --collect-garbage} to make space, it is often " -"useful to remove old generations from user profiles; that way, old package " -"builds referenced by those generations can be reclaimed. This is achieved " -"by running @code{guix package --delete-generations} (@pxref{Invoking guix " -"package})." -msgstr "" +#: doc/guix.texi:2564 +msgid "Prior to running @code{guix gc --collect-garbage} to make space, it is often useful to remove old generations from user profiles; that way, old package builds referenced by those generations can be reclaimed. This is achieved by running @code{guix package --delete-generations} (@pxref{Invoking guix package})." +msgstr "Avant de lancer @code{guix gc --collect-garbage} pour faire de la place, c'est souvent utile de supprimer les anciennes génération des profils utilisateurs ; de cette façon les anciennes constructions de paquets référencées par ces générations peuvent être glanées. Cela se fait en lançaint @code{guix package --delete-generations} (@pxref{Invoking guix package})." #. type: Plain text -#: doc/guix.texi:2563 -msgid "" -"Our recommendation is to run a garbage collection periodically, or when you " -"are short on disk space. For instance, to guarantee that at least 5@tie{}GB " -"are available on your disk, simply run:" -msgstr "" +#: doc/guix.texi:2568 +msgid "Our recommendation is to run a garbage collection periodically, or when you are short on disk space. For instance, to guarantee that at least 5@tie{}GB are available on your disk, simply run:" +msgstr "Nous recommandons de lancer le ramasse-miettes régulièrement ou lorsque vous avez besoin d'espace disque. Par exemple pour garantir qu'au moins 5@tie{}Go d'espace reste libre sur votre disque, lancez simplement :" #. type: example -#: doc/guix.texi:2566 +#: doc/guix.texi:2571 #, no-wrap msgid "guix gc -F 5G\n" -msgstr "" +msgstr "guix gc -F 5G\n" #. type: Plain text -#: doc/guix.texi:2575 -msgid "" -"It is perfectly safe to run as a non-interactive periodic job " -"(@pxref{Scheduled Job Execution}, for how to set up such a job on GuixSD). " -"Running @command{guix gc} with no arguments will collect as much garbage as " -"it can, but that is often inconvenient: you may find yourself having to " -"rebuild or re-download software that is ``dead'' from the GC viewpoint but " -"that is necessary to build other pieces of software---e.g., the compiler " -"tool chain." -msgstr "" +#: doc/guix.texi:2580 +msgid "It is perfectly safe to run as a non-interactive periodic job (@pxref{Scheduled Job Execution}, for how to set up such a job on GuixSD). Running @command{guix gc} with no arguments will collect as much garbage as it can, but that is often inconvenient: you may find yourself having to rebuild or re-download software that is ``dead'' from the GC viewpoint but that is necessary to build other pieces of software---e.g., the compiler tool chain." +msgstr "Il est parfaitement possible de le lancer comme une tâche périodique non-interactive (@pxref{Scheduled Job Execution} pour apprendre comment paramétrer une telle tâche sur GuixSD). Lancer @command{guix gc} sans argument ramassera autant de miettes que possible mais ça n'est pas le plus pratique : vous pourriez vous retrouver à reconstruire ou re-télécharger des logiciels « inutilisés » du point de vu du GC mais qui sont nécessaires pour construire d'autres logiciels — p.@: ex.@: la chaîne de compilation." #. type: Plain text -#: doc/guix.texi:2581 -msgid "" -"The @command{guix gc} command has three modes of operation: it can be used " -"to garbage-collect any dead files (the default), to delete specific files " -"(the @code{--delete} option), to print garbage-collector information, or for " -"more advanced queries. The garbage collection options are as follows:" -msgstr "" +#: doc/guix.texi:2586 +msgid "The @command{guix gc} command has three modes of operation: it can be used to garbage-collect any dead files (the default), to delete specific files (the @code{--delete} option), to print garbage-collector information, or for more advanced queries. The garbage collection options are as follows:" +msgstr "La command @command{guix gc} a trois modes d'opération : il peut être utilisé pour glaner des fichiers inutilisés (par défaut), pour supprimer des fichiers spécifiques (l'option @code{--delete}), pour afficher des informations sur le ramasse-miettes ou pour des requêtes plus avancées. Les options du ramasse-miettes sont :" #. type: item -#: doc/guix.texi:2583 +#: doc/guix.texi:2588 #, no-wrap msgid "--collect-garbage[=@var{min}]" -msgstr "" +msgstr "--collect-garbage[=@var{min}]" #. type: itemx -#: doc/guix.texi:2584 +#: doc/guix.texi:2589 #, no-wrap msgid "-C [@var{min}]" -msgstr "" - -#. type: table -#: doc/guix.texi:2588 -msgid "" -"Collect garbage---i.e., unreachable @file{/gnu/store} files and sub-" -"directories. This is the default operation when no option is specified." -msgstr "" +msgstr "-C [@var{min}]" #. type: table #: doc/guix.texi:2593 -msgid "" -"When @var{min} is given, stop once @var{min} bytes have been collected. " -"@var{min} may be a number of bytes, or it may include a unit as a suffix, " -"such as @code{MiB} for mebibytes and @code{GB} for gigabytes (@pxref{Block " -"size, size specifications,, coreutils, GNU Coreutils})." -msgstr "" +msgid "Collect garbage---i.e., unreachable @file{/gnu/store} files and sub-directories. This is the default operation when no option is specified." +msgstr "Ramasse les miettes — c.-à-d.@: les fichiers inaccessibles de @file{/gnu/store} et ses sous-répertoires. C'est l'opération par défaut lorsqu'aucune option n'est spécifiée." #. type: table -#: doc/guix.texi:2595 +#: doc/guix.texi:2598 +msgid "When @var{min} is given, stop once @var{min} bytes have been collected. @var{min} may be a number of bytes, or it may include a unit as a suffix, such as @code{MiB} for mebibytes and @code{GB} for gigabytes (@pxref{Block size, size specifications,, coreutils, GNU Coreutils})." +msgstr "Lorsque @var{min} est donné, s'arrêter une fois que @var{min} octets ont été collectés. @var{min} pour être un nombre d'octets ou inclure un suffixe d'unité, comme @code{MiB} pour mébioctet et @code{GB} pour gigaoctet (@pxref{Block size, size specifications,, coreutils, GNU Coreutils})." + +#. type: table +#: doc/guix.texi:2600 msgid "When @var{min} is omitted, collect all the garbage." -msgstr "" +msgstr "Lorsque @var{min} est omis, tout glaner." #. type: item -#: doc/guix.texi:2596 +#: doc/guix.texi:2601 #, no-wrap msgid "--free-space=@var{free}" -msgstr "" +msgstr "--free-space=@var{libre}" #. type: itemx -#: doc/guix.texi:2597 +#: doc/guix.texi:2602 #, no-wrap msgid "-F @var{free}" -msgstr "" +msgstr "-F @var{libre}" #. type: table -#: doc/guix.texi:2601 -msgid "" -"Collect garbage until @var{free} space is available under @file{/gnu/store}, " -"if possible; @var{free} denotes storage space, such as @code{500MiB}, as " -"described above." -msgstr "" +#: doc/guix.texi:2606 +msgid "Collect garbage until @var{free} space is available under @file{/gnu/store}, if possible; @var{free} denotes storage space, such as @code{500MiB}, as described above." +msgstr "Glaner jusqu'à ce que @var{libre} espace soit disponible dans @file{/gnu/store} si possible ; @var{libre} est une quantité de stockage comme @code{500MiB} comme décrit ci-dessus." #. type: table -#: doc/guix.texi:2604 -msgid "" -"When @var{free} or more is already available in @file{/gnu/store}, do " -"nothing and exit immediately." -msgstr "" +#: doc/guix.texi:2609 +msgid "When @var{free} or more is already available in @file{/gnu/store}, do nothing and exit immediately." +msgstr "Lorsque @var{libre} ou plus est disponible dans @file{/gnu/store} ne rien faire et s'arrêter immédiatement." #. type: item -#: doc/guix.texi:2605 +#: doc/guix.texi:2610 #, no-wrap msgid "--delete" -msgstr "" +msgstr "--delete" #. type: itemx -#: doc/guix.texi:2606 doc/guix.texi:5840 doc/guix.texi:20598 +#: doc/guix.texi:2611 doc/guix.texi:6018 doc/guix.texi:21082 #, no-wrap msgid "-d" -msgstr "" +msgstr "-d" #. type: table -#: doc/guix.texi:2610 -msgid "" -"Attempt to delete all the store files and directories specified as " -"arguments. This fails if some of the files are not in the store, or if they " -"are still live." -msgstr "" +#: doc/guix.texi:2615 +msgid "Attempt to delete all the store files and directories specified as arguments. This fails if some of the files are not in the store, or if they are still live." +msgstr "Essayer de supprimer tous les fichiers et les répertoires du dépôt spécifiés en argument. Cela échoue si certains des fichiers ne sont pas dans le dépôt ou s'ils sont toujours utilisés." #. type: item -#: doc/guix.texi:2611 +#: doc/guix.texi:2616 #, no-wrap msgid "--list-failures" -msgstr "" +msgstr "--list-failures" #. type: table -#: doc/guix.texi:2613 +#: doc/guix.texi:2618 msgid "List store items corresponding to cached build failures." -msgstr "" +msgstr "Lister les éléments du dépôt qui correspondent à des échecs de construction" #. type: table -#: doc/guix.texi:2617 -msgid "" -"This prints nothing unless the daemon was started with @option{--cache-" -"failures} (@pxref{Invoking guix-daemon, @option{--cache-failures}})." -msgstr "" +#: doc/guix.texi:2622 +msgid "This prints nothing unless the daemon was started with @option{--cache-failures} (@pxref{Invoking guix-daemon, @option{--cache-failures}})." +msgstr "Cela n'affiche rien à moins que le démon n'ait été démarré avec @option{--cache-failures} (@pxref{Invoking guix-daemon, @option{--cache-failures}})." #. type: item -#: doc/guix.texi:2618 +#: doc/guix.texi:2623 #, no-wrap msgid "--clear-failures" -msgstr "" +msgstr "--clear-failures" #. type: table -#: doc/guix.texi:2620 +#: doc/guix.texi:2625 msgid "Remove the specified store items from the failed-build cache." -msgstr "" +msgstr "Supprimer les éléments du dépôt spécifiés du cache des constructions échouées." #. type: table -#: doc/guix.texi:2623 -msgid "" -"Again, this option only makes sense when the daemon is started with " -"@option{--cache-failures}. Otherwise, it does nothing." -msgstr "" +#: doc/guix.texi:2628 +msgid "Again, this option only makes sense when the daemon is started with @option{--cache-failures}. Otherwise, it does nothing." +msgstr "De nouveau, cette option ne fait de sens que lorsque le démon est démarré avec @option{--cache-failures}. Autrement elle ne fait rien." #. type: item -#: doc/guix.texi:2624 +#: doc/guix.texi:2629 #, no-wrap msgid "--list-dead" -msgstr "" +msgstr "--list-dead" #. type: table -#: doc/guix.texi:2627 -msgid "" -"Show the list of dead files and directories still present in the store---i." -"e., files and directories no longer reachable from any root." -msgstr "" +#: doc/guix.texi:2632 +msgid "Show the list of dead files and directories still present in the store---i.e., files and directories no longer reachable from any root." +msgstr "Montrer la liste des fichiers et des répertoires inutilisés encore présents dans le dépôt — c.-à-d.@: les fichiers et les répertoires qui ne sont plus atteignables par aucune racine." #. type: item -#: doc/guix.texi:2628 +#: doc/guix.texi:2633 #, no-wrap msgid "--list-live" -msgstr "" +msgstr "--list-live" #. type: table -#: doc/guix.texi:2630 +#: doc/guix.texi:2635 msgid "Show the list of live store files and directories." -msgstr "" +msgstr "Montrer la liste des fichiers et des répertoires du dépôt utilisés." #. type: Plain text -#: doc/guix.texi:2634 +#: doc/guix.texi:2639 msgid "In addition, the references among existing store files can be queried:" -msgstr "" +msgstr "En plus, les références entre les fichiers existants du dépôt peuvent être demandés :" #. type: item -#: doc/guix.texi:2637 +#: doc/guix.texi:2642 #, no-wrap msgid "--references" -msgstr "" +msgstr "--references" #. type: itemx -#: doc/guix.texi:2638 -#, no-wrap -msgid "--referrers" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2639 doc/guix.texi:6935 -#, no-wrap -msgid "package dependencies" -msgstr "" - -#. type: table -#: doc/guix.texi:2642 -msgid "" -"List the references (respectively, the referrers) of store files given as " -"arguments." -msgstr "" - -#. type: item #: doc/guix.texi:2643 #, no-wrap +msgid "--referrers" +msgstr "--referrers" + +#. type: cindex +#: doc/guix.texi:2644 doc/guix.texi:7145 +#, no-wrap +msgid "package dependencies" +msgstr "dépendances des paquets" + +#. type: table +#: doc/guix.texi:2647 +msgid "List the references (respectively, the referrers) of store files given as arguments." +msgstr "Lister les références (respectivement les référents) des fichiers du dépôt en argument." + +#. type: item +#: doc/guix.texi:2648 +#, no-wrap msgid "--requisites" -msgstr "" +msgstr "--requisites" #. type: itemx -#: doc/guix.texi:2644 +#: doc/guix.texi:2649 doc/guix.texi:2956 #, no-wrap msgid "-R" -msgstr "" +msgstr "-R" #. type: item -#: doc/guix.texi:2645 doc/guix.texi:6819 doc/guix.texi:6843 doc/guix.texi:6907 +#: doc/guix.texi:2650 doc/guix.texi:7021 doc/guix.texi:7049 doc/guix.texi:7117 #, no-wrap msgid "closure" -msgstr "" +msgstr "closure" #. type: table -#: doc/guix.texi:2650 -msgid "" -"List the requisites of the store files passed as arguments. Requisites " -"include the store files themselves, their references, and the references of " -"these, recursively. In other words, the returned list is the " -"@dfn{transitive closure} of the store files." -msgstr "" - -#. type: table -#: doc/guix.texi:2654 -msgid "" -"@xref{Invoking guix size}, for a tool to profile the size of the closure of " -"an element. @xref{Invoking guix graph}, for a tool to visualize the graph " -"of references." -msgstr "" - -#. type: item #: doc/guix.texi:2655 -#, no-wrap -msgid "--derivers" -msgstr "" - -#. type: item -#: doc/guix.texi:2656 doc/guix.texi:3122 doc/guix.texi:7020 -#, no-wrap -msgid "derivation" -msgstr "" +msgid "List the requisites of the store files passed as arguments. Requisites include the store files themselves, their references, and the references of these, recursively. In other words, the returned list is the @dfn{transitive closure} of the store files." +msgstr "Lister les prérequis des fichiers du dépôt passés en argument. Les prérequis sont le fichier du dépôt lui-même, leur références et les références de ces références, récursivement. En d'autre termes, la liste retournée est la @dfn{closure transitive} des fichiers du dépôt." #. type: table #: doc/guix.texi:2659 -msgid "" -"Return the derivation(s) leading to the given store items " -"(@pxref{Derivations})." -msgstr "" +msgid "@xref{Invoking guix size}, for a tool to profile the size of the closure of an element. @xref{Invoking guix graph}, for a tool to visualize the graph of references." +msgstr "@xref{Invoking guix size} pour un outil pour surveiller la taille de la closure d'un élément. @xref{Invoking guix graph} pour un outil pour visualiser le graphe des références." + +#. type: item +#: doc/guix.texi:2660 +#, no-wrap +msgid "--derivers" +msgstr "--derivers" + +#. type: item +#: doc/guix.texi:2661 doc/guix.texi:3241 doc/guix.texi:7230 +#, no-wrap +msgid "derivation" +msgstr "dérivation" #. type: table -#: doc/guix.texi:2661 +#: doc/guix.texi:2664 +msgid "Return the derivation(s) leading to the given store items (@pxref{Derivations})." +msgstr "Renvoie les dérivations menant aux éléments du dépôt donnés (@pxref{Derivations})." + +#. type: table +#: doc/guix.texi:2666 msgid "For example, this command:" -msgstr "" +msgstr "Par exemple cette commande :" #. type: example -#: doc/guix.texi:2664 +#: doc/guix.texi:2669 #, no-wrap msgid "guix gc --derivers `guix package -I ^emacs$ | cut -f4`\n" -msgstr "" +msgstr "guix gc --derivers `guix package -I ^emacs$ | cut -f4`\n" #. type: table -#: doc/guix.texi:2669 -msgid "" -"returns the @file{.drv} file(s) leading to the @code{emacs} package " -"installed in your profile." -msgstr "" +#: doc/guix.texi:2674 +msgid "returns the @file{.drv} file(s) leading to the @code{emacs} package installed in your profile." +msgstr "renvoie les fichiers @file{.drv} menant au paquet @code{emacs} installé dans votre profil." #. type: table -#: doc/guix.texi:2673 -msgid "" -"Note that there may be zero matching @file{.drv} files, for instance because " -"these files have been garbage-collected. There can also be more than one " -"matching @file{.drv} due to fixed-output derivations." -msgstr "" +#: doc/guix.texi:2678 +msgid "Note that there may be zero matching @file{.drv} files, for instance because these files have been garbage-collected. There can also be more than one matching @file{.drv} due to fixed-output derivations." +msgstr "Remarquez qu'il peut n'y avoir aucun fichier @file{.drv} par exemple quand ces fichiers ont été glanés. Il peut aussi y avoir plus d'un fichier @file{.drv} correspondant à cause de dérivations à sortie fixées." #. type: Plain text -#: doc/guix.texi:2677 -msgid "" -"Lastly, the following options allow you to check the integrity of the store " -"and to control disk usage." -msgstr "" +#: doc/guix.texi:2682 +msgid "Lastly, the following options allow you to check the integrity of the store and to control disk usage." +msgstr "Enfin, les options suivantes vous permettent de vérifier l'intégrité du dépôt et de contrôler l'utilisation du disque." #. type: item -#: doc/guix.texi:2680 +#: doc/guix.texi:2685 #, no-wrap msgid "--verify[=@var{options}]" -msgstr "" +msgstr "--verify[=@var{options}]" #. type: cindex -#: doc/guix.texi:2681 +#: doc/guix.texi:2686 #, no-wrap msgid "integrity, of the store" -msgstr "" +msgstr "intégrité, du dépôt" #. type: cindex -#: doc/guix.texi:2682 +#: doc/guix.texi:2687 #, no-wrap msgid "integrity checking" -msgstr "" +msgstr "vérification d'intégrité" #. type: table -#: doc/guix.texi:2684 +#: doc/guix.texi:2689 msgid "Verify the integrity of the store." -msgstr "" +msgstr "Vérifier l'intégrité du dépôt." #. type: table -#: doc/guix.texi:2687 -msgid "" -"By default, make sure that all the store items marked as valid in the " -"database of the daemon actually exist in @file{/gnu/store}." -msgstr "" +#: doc/guix.texi:2692 +msgid "By default, make sure that all the store items marked as valid in the database of the daemon actually exist in @file{/gnu/store}." +msgstr "Par défaut, s'assurer que tous les éléments du dépôt marqués comme valides dans la base de données du démon existent bien dans @file{/gnu/store}." #. type: table -#: doc/guix.texi:2690 -msgid "" -"When provided, @var{options} must be a comma-separated list containing one " -"or more of @code{contents} and @code{repair}." -msgstr "" +#: doc/guix.texi:2695 +msgid "When provided, @var{options} must be a comma-separated list containing one or more of @code{contents} and @code{repair}." +msgstr "Lorsqu'elle est fournie, l'@var{option} doit être une liste séparée par des virgule de l'un ou plus parmi @code{contents} et @code{repair}." #. type: table -#: doc/guix.texi:2696 -msgid "" -"When passing @option{--verify=contents}, the daemon computes the content " -"hash of each store item and compares it against its hash in the database. " -"Hash mismatches are reported as data corruptions. Because it traverses " -"@emph{all the files in the store}, this command can take a long time, " -"especially on systems with a slow disk drive." -msgstr "" +#: doc/guix.texi:2701 +msgid "When passing @option{--verify=contents}, the daemon computes the content hash of each store item and compares it against its hash in the database. Hash mismatches are reported as data corruptions. Because it traverses @emph{all the files in the store}, this command can take a long time, especially on systems with a slow disk drive." +msgstr "Lorsque vous passez @option{--verify=contents}, le démon calcul le hash du contenu de chaque élément du dépôt et le compare au hash de sa base de données. Les différences de hash sont rapportées comme des corruptions de données. Comme elle traverse @emph{tous les fichiers du dépôt}, cette commande peut prendre très longtemps pour terminer, surtout sur un système avec un disque lent." #. type: cindex -#: doc/guix.texi:2697 +#: doc/guix.texi:2702 #, no-wrap msgid "repairing the store" -msgstr "" +msgstr "réparer le dépôt" #. type: cindex -#: doc/guix.texi:2698 doc/guix.texi:5833 +#: doc/guix.texi:2703 doc/guix.texi:6011 #, no-wrap msgid "corruption, recovering from" -msgstr "" - -#. type: table -#: doc/guix.texi:2706 -msgid "" -"Using @option{--verify=repair} or @option{--verify=contents,repair} causes " -"the daemon to try to repair corrupt store items by fetching substitutes for " -"them (@pxref{Substitutes}). Because repairing is not atomic, and thus " -"potentially dangerous, it is available only to the system administrator. A " -"lightweight alternative, when you know exactly which items in the store are " -"corrupt, is @command{guix build --repair} (@pxref{Invoking guix build})." -msgstr "" -"Utiliser @option{--verify=repair} ou @option{--verify=contents,repair} fait " -"que le démon essaie de réparer les objets du dépôt corrompus en récupérant " -"leurs substituts (@pxref{Substituts}). Comme la réparation n'est pas " -"atomique et donc potentiellement dangereuse, elle n'est disponible que pour " -"l'administrateur système. Une alternative plus légère lorsque vous " -"connaissez exactement quelle entrée est corrompue consiste à lancer " -"@command{guix build --repair} (@pxref{Invoking guix build})." - -#. type: item -#: doc/guix.texi:2707 -#, no-wrap -msgid "--optimize" -msgstr "" +msgstr "corruption, récupérer de" #. type: table #: doc/guix.texi:2711 -msgid "" -"Optimize the store by hard-linking identical files---this is " -"@dfn{deduplication}." -msgstr "" +msgid "Using @option{--verify=repair} or @option{--verify=contents,repair} causes the daemon to try to repair corrupt store items by fetching substitutes for them (@pxref{Substitutes}). Because repairing is not atomic, and thus potentially dangerous, it is available only to the system administrator. A lightweight alternative, when you know exactly which items in the store are corrupt, is @command{guix build --repair} (@pxref{Invoking guix build})." +msgstr "Utiliser @option{--verify=repair} ou @option{--verify=contents,repair} fait que le démon essaie de réparer les objets du dépôt corrompus en récupérant leurs substituts (@pxref{Substituts}). Comme la réparation n'est pas atomique et donc potentiellement dangereuse, elle n'est disponible que pour l'administrateur système. Une alternative plus légère lorsque vous connaissez exactement quelle entrée est corrompue consiste à lancer @command{guix build --repair} (@pxref{Invoking guix build})." + +#. type: item +#: doc/guix.texi:2712 +#, no-wrap +msgid "--optimize" +msgstr "--optimize" #. type: table -#: doc/guix.texi:2717 -msgid "" -"The daemon performs deduplication after each successful build or archive " -"import, unless it was started with @code{--disable-deduplication} " -"(@pxref{Invoking guix-daemon, @code{--disable-deduplication}}). Thus, this " -"option is primarily useful when the daemon was running with @code{--disable-" -"deduplication}." -msgstr "" +#: doc/guix.texi:2716 +msgid "Optimize the store by hard-linking identical files---this is @dfn{deduplication}." +msgstr "Optimiser le dépôt en liant en dur les fichiers identiques — c'est la @dfn{déduplication}." + +#. type: table +#: doc/guix.texi:2722 +msgid "The daemon performs deduplication after each successful build or archive import, unless it was started with @code{--disable-deduplication} (@pxref{Invoking guix-daemon, @code{--disable-deduplication}}). Thus, this option is primarily useful when the daemon was running with @code{--disable-deduplication}." +msgstr "Le démon effectue une déduplication à chaque construction réussie ou import d'archive à moins qu'il n'ait été démarré avec @code{--disable-deduplication} (@pxref{Invoking guix-daemon, @code{--disable-deduplication}}). Ainsi, cette option est surtout utile lorsque le démon tourne avec @code{--disable-deduplication}." #. type: section -#: doc/guix.texi:2721 -#, no-wrap -msgid "Invoking @command{guix pull}" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2723 -#, no-wrap -msgid "upgrading Guix" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2724 -#, no-wrap -msgid "updating Guix" -msgstr "" - -#. type: command{#1} -#: doc/guix.texi:2725 -#, no-wrap -msgid "guix pull" -msgstr "" - -#. type: cindex #: doc/guix.texi:2726 #, no-wrap +msgid "Invoking @command{guix pull}" +msgstr "Invoquer @command{guix pull}" + +#. type: cindex +#: doc/guix.texi:2728 +#, no-wrap +msgid "upgrading Guix" +msgstr "mettre à niveau Guix" + +#. type: cindex +#: doc/guix.texi:2729 +#, no-wrap +msgid "updating Guix" +msgstr "mettre à jour Guix" + +#. type: command{#1} +#: doc/guix.texi:2730 +#, no-wrap +msgid "guix pull" +msgstr "guix pull" + +#. type: cindex +#: doc/guix.texi:2731 +#, no-wrap msgid "pull" -msgstr "" +msgstr "pull" #. type: Plain text -#: doc/guix.texi:2733 -msgid "" -"Packages are installed or upgraded to the latest version available in the " -"distribution currently available on your local machine. To update that " -"distribution, along with the Guix tools, you must run @command{guix pull}: " -"the command downloads the latest Guix source code and package descriptions, " -"and deploys it. Source code is downloaded from a @uref{https://git-scm.com, " -"Git} repository." -msgstr "" +#: doc/guix.texi:2738 +msgid "Packages are installed or upgraded to the latest version available in the distribution currently available on your local machine. To update that distribution, along with the Guix tools, you must run @command{guix pull}: the command downloads the latest Guix source code and package descriptions, and deploys it. Source code is downloaded from a @uref{https://git-scm.com, Git} repository." +msgstr "Les paquets sont installés ou mis à jour vers la dernière version disponible dans la distribution actuellement disponible sur votre machine locale. Pour mettre à jour cette distribution, en même temps que les outils Guix, vous devez lancer @command{guix pull} ; la commande télécharge le dernier code source de Guix et des descriptions de paquets et le déploie. Le code source est téléchargé depuis un dépôt @uref{https://git-scm.com, Git}." #. type: Plain text -#: doc/guix.texi:2739 -msgid "" -"On completion, @command{guix package} will use packages and package versions " -"from this just-retrieved copy of Guix. Not only that, but all the Guix " -"commands and Scheme modules will also be taken from that latest version. " -"New @command{guix} sub-commands added by the update also become available." -msgstr "" +#: doc/guix.texi:2744 +msgid "On completion, @command{guix package} will use packages and package versions from this just-retrieved copy of Guix. Not only that, but all the Guix commands and Scheme modules will also be taken from that latest version. New @command{guix} sub-commands added by the update also become available." +msgstr "À la fin, @command{guix package} utilisera les paquets et les versions des paquets de la copie de Guix tout juste récupérée. Non seulement ça, mais toutes les commandes Guix et les modules Scheme seront aussi récupérés depuis la dernière version. Les nouvelles sous-commandes de @command{guix} ajoutés par la mise à jour sont aussi maintenant disponibles." #. type: Plain text -#: doc/guix.texi:2749 -msgid "" -"Any user can update their Guix copy using @command{guix pull}, and the " -"effect is limited to the user who run @command{guix pull}. For instance, " -"when user @code{root} runs @command{guix pull}, this has no effect on the " -"version of Guix that user @code{alice} sees, and vice versa@footnote{Under " -"the hood, @command{guix pull} updates the @file{~/.config/guix/latest} " -"symbolic link to point to the latest Guix, and the @command{guix} command " -"loads code from there. Currently, the only way to roll back an invocation " -"of @command{guix pull} is to manually update this symlink to point to the " -"previous Guix.}." -msgstr "" +#: doc/guix.texi:2750 +msgid "Any user can update their Guix copy using @command{guix pull}, and the effect is limited to the user who run @command{guix pull}. For instance, when user @code{root} runs @command{guix pull}, this has no effect on the version of Guix that user @code{alice} sees, and vice versa." +msgstr "Chaque utilisateur peut mettre à jour sa copie de Guix avec @command{guix pull} et l'effet est limité à l'utilisateur qui a lancé @command{guix pull}. Par exemple, lorsque l'utilisateur @code{root} lance @command{guix pull}, cela n'a pas d'effet sur la version de Guix que vois @code{alice} et vice-versa" #. type: Plain text -#: doc/guix.texi:2752 -msgid "" -"The @command{guix pull} command is usually invoked with no arguments, but it " -"supports the following options:" -msgstr "" - -#. type: table #: doc/guix.texi:2756 -msgid "" -"Produce verbose output, writing build logs to the standard error output." -msgstr "" - -#. type: item -#: doc/guix.texi:2757 -#, no-wrap -msgid "--url=@var{url}" -msgstr "" - -#. type: table -#: doc/guix.texi:2759 -msgid "Download Guix from the Git repository at @var{url}." -msgstr "" - -#. type: vindex -#: doc/guix.texi:2760 -#, no-wrap -msgid "GUIX_PULL_URL" -msgstr "" - -#. type: table -#: doc/guix.texi:2764 -msgid "" -"By default, the source is taken from its canonical Git repository at " -"@code{gnu.org}, for the stable branch of Guix. To use a different source, " -"set the @code{GUIX_PULL_URL} environment variable." -msgstr "" - -#. type: item -#: doc/guix.texi:2765 -#, no-wrap -msgid "--commit=@var{commit}" -msgstr "" - -#. type: table -#: doc/guix.texi:2768 -msgid "" -"Deploy @var{commit}, a valid Git commit ID represented as a hexadecimal " -"string." -msgstr "" - -#. type: item -#: doc/guix.texi:2769 -#, no-wrap -msgid "--branch=@var{branch}" -msgstr "" - -#. type: table -#: doc/guix.texi:2772 -msgid "" -"Deploy the tip of @var{branch}, the name of a Git branch available on the " -"repository at @var{url}." -msgstr "" - -#. type: table -#: doc/guix.texi:2776 -msgid "" -"Use the bootstrap Guile to build the latest Guix. This option is only " -"useful to Guix developers." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2780 -msgid "" -"In addition, @command{guix pull} supports all the common build options " -"(@pxref{Common Build Options})." -msgstr "" - -#. type: section -#: doc/guix.texi:2782 -#, no-wrap -msgid "Invoking @command{guix pack}" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2788 -msgid "" -"Occasionally you want to pass software to people who are not (yet!) lucky " -"enough to be using Guix. You'd tell them to run @command{guix package -i " -"@var{something}}, but that's not possible in this case. This is where " -"@command{guix pack} comes in." -msgstr "" - -#. type: quotation -#: doc/guix.texi:2793 -msgid "" -"If you are looking for ways to exchange binaries among machines that already " -"run Guix, @pxref{Invoking guix copy}, @ref{Invoking guix publish}, and " -"@ref{Invoking guix archive}." -msgstr "" - -#. type: cindex -#: doc/guix.texi:2795 -#, no-wrap -msgid "pack" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2796 -#, no-wrap -msgid "bundle" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2797 -#, no-wrap -msgid "application bundle" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2798 -#, no-wrap -msgid "software bundle" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2807 -msgid "" -"The @command{guix pack} command creates a shrink-wrapped @dfn{pack} or " -"@dfn{software bundle}: it creates a tarball or some other archive containing " -"the binaries of the software you're interested in, and all its " -"dependencies. The resulting archive can be used on any machine that does " -"not have Guix, and people can run the exact same binaries as those you have " -"with Guix. The pack itself is created in a bit-reproducible fashion, so " -"anyone can verify that it really contains the build results that you pretend " -"to be shipping." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2810 -msgid "" -"For example, to create a bundle containing Guile, Emacs, Geiser, and all " -"their dependencies, you can run:" -msgstr "" +msgid "The result of running @command{guix pull} is a @dfn{profile} available under @file{~/.config/guix/current} containing the latest Guix. Thus, make sure to add it to the beginning of your search path so that you use the latest version, and similarly for the Info manual (@pxref{Documentation}):" +msgstr "Le résultat après avoir lancé @command{guix pull} est un @dfn{profil} disponible sous @file{~/.config/guix/current} contenant la dernière version de Guix. Ainsi, assurez-vous de l'ajouter au début de votre chemin de recherche pour que vous utilisiez la dernière version. Le même conseil s'applique au manuel Info (@pxref{Documentation}) :" #. type: example -#: doc/guix.texi:2815 +#: doc/guix.texi:2760 +#, no-wrap +msgid "" +"export PATH=\"$HOME/.config/guix/current/bin:$PATH\"\n" +"export INFOPATH=\"$HOME/.config/guix/current/share/info:$INFOPATH\"\n" +msgstr "" +"export PATH=\"$HOME/.config/guix/current/bin:$PATH\"\n" +"export INFOPATH=\"$HOME/.config/guix/current/share/info:$INFOPATH\"\n" + +#. type: Plain text +#: doc/guix.texi:2764 +msgid "The @code{--list-generations} or @code{-l} option lists past generations produced by @command{guix pull}, along with details about their provenance:" +msgstr "L'option @code{--list-generations} ou @code{-l} liste les anciennes générations produites par @command{guix pull}, avec des détails sur leur origine :" + +#. type: example +#: doc/guix.texi:2772 +#, no-wrap +msgid "" +"$ guix pull -l\n" +"Generation 1\tJun 10 2018 00:18:18\n" +" guix 65956ad\n" +" repository URL: https://git.savannah.gnu.org/git/guix.git\n" +" branch: origin/master\n" +" commit: 65956ad3526ba09e1f7a40722c96c6ef7c0936fe\n" +"\n" +msgstr "" +"$ guix pull -l\n" +"Génération 1\t10 juin 2018 00:18:18\n" +" guix 65956ad\n" +" URL du dépôt : https://git.savannah.gnu.org/git/guix.git\n" +" branche : origin/master\n" +" commit : 65956ad3526ba09e1f7a40722c96c6ef7c0936fe\n" +"\n" + +#. type: example +#: doc/guix.texi:2778 +#, no-wrap +msgid "" +"Generation 2\tJun 11 2018 11:02:49\n" +" guix e0cc7f6\n" +" repository URL: https://git.savannah.gnu.org/git/guix.git\n" +" branch: origin/master\n" +" commit: e0cc7f669bec22c37481dd03a7941c7d11a64f1d\n" +"\n" +msgstr "" +"Génération 2\t11 juin 2018 11:02:49\n" +" guix e0cc7f6\n" +" URL du dépôt : https://git.savannah.gnu.org/git/guix.git\n" +" branche : origin/master\n" +" commit : e0cc7f669bec22c37481dd03a7941c7d11a64f1d\n" +"\n" + +#. type: example +#: doc/guix.texi:2784 +#, no-wrap +msgid "" +"Generation 3\tJun 13 2018 23:31:07\t(current)\n" +" guix 844cc1c\n" +" repository URL: https://git.savannah.gnu.org/git/guix.git\n" +" branch: origin/master\n" +" commit: 844cc1c8f394f03b404c5bb3aee086922373490c\n" +msgstr "" +"Génération 3\t13 juin 2018 23:31:07\t(actuelle)\n" +" guix 844cc1c\n" +" URL du dépôt : https://git.savannah.gnu.org/git/guix.git\n" +" branche : origin/master\n" +" commit : 844cc1c8f394f03b404c5bb3aee086922373490c\n" + +#. type: Plain text +#: doc/guix.texi:2790 +msgid "This @code{~/.config/guix/current} profile works like any other profile created by @command{guix package} (@pxref{Invoking guix package}). That is, you can list generations, roll back to the previous generation---i.e., the previous Guix---and so on:" +msgstr "Ce profil @code{~/.config/guix/current} fonctionne comme les autres profils créés par @command{guix package} (@pxref{Invoking guix package}). C'est-à-dire que vous pouvez lister les générations, revenir en arrière à une génération précédente — c.-à-d.@: la version de Guix précédente — etc :" + +#. type: example +#: doc/guix.texi:2796 +#, no-wrap +msgid "" +"$ guix package -p ~/.config/guix/current --roll-back\n" +"switched from generation 3 to 2\n" +"$ guix package -p ~/.config/guix/current --delete-generations=1\n" +"deleting /home/charlie/.config/guix/current-1-link\n" +msgstr "" +"$ guix package -p ~/.config/guix/current --roll-back\n" +"passé de la génération 3 à 2\n" +"$ guix package -p ~/.config/guix/current --delete-generations=1\n" +"suppression de /home/charlie/.config/guix/current-1-link\n" + +#. type: Plain text +#: doc/guix.texi:2800 +msgid "The @command{guix pull} command is usually invoked with no arguments, but it supports the following options:" +msgstr "La commande @command{guix pull} est typiquement invoquée sans arguments mais il supporte les options suivantes :" + +#. type: table +#: doc/guix.texi:2804 +msgid "Produce verbose output, writing build logs to the standard error output." +msgstr "Produire une sortie verbeuse, en écrivant les journaux de construction sur la sortie d'erreur standard." + +#. type: item +#: doc/guix.texi:2805 +#, no-wrap +msgid "--url=@var{url}" +msgstr "--url=@var{url}" + +#. type: table +#: doc/guix.texi:2807 +msgid "Download Guix from the Git repository at @var{url}." +msgstr "Télécharger Guix depuis le dépôt Git à @var{url}." + +#. type: vindex +#: doc/guix.texi:2808 +#, no-wrap +msgid "GUIX_PULL_URL" +msgstr "GUIX_PULL_URL" + +#. type: table +#: doc/guix.texi:2812 +msgid "By default, the source is taken from its canonical Git repository at @code{gnu.org}, for the stable branch of Guix. To use a different source, set the @code{GUIX_PULL_URL} environment variable." +msgstr "Par défaut, la source est récupérée depuis le dépôt Git canonique sur @code{gnu.org}, pour la branche stable de Guix. Pour utiliser une autre source, paramétrez la variable d'environnement @code{GUIX_PULL_URL}." + +#. type: item +#: doc/guix.texi:2813 +#, no-wrap +msgid "--commit=@var{commit}" +msgstr "--commit=@var{commit}" + +#. type: table +#: doc/guix.texi:2816 +msgid "Deploy @var{commit}, a valid Git commit ID represented as a hexadecimal string." +msgstr "Déployer de @var{commit}, un ID de commit Git valide représenté par une chaîne hexadécimale." + +#. type: item +#: doc/guix.texi:2817 +#, no-wrap +msgid "--branch=@var{branch}" +msgstr "--branch=@var{branche}" + +#. type: table +#: doc/guix.texi:2820 +msgid "Deploy the tip of @var{branch}, the name of a Git branch available on the repository at @var{url}." +msgstr "Déployer le haut de la @var{branche}, le nom d'une branche Git disponible sur le répertoire à @var{url}." + +#. type: table +#: doc/guix.texi:2827 +msgid "List all the generations of @file{~/.config/guix/current} or, if @var{pattern} is provided, the subset of generations that match @var{pattern}. The syntax of @var{pattern} is the same as with @code{guix package --list-generations} (@pxref{Invoking guix package})." +msgstr "Liste toutes les générations de @file{~/.config/guix/current} ou, si @var{motif} est fournit, le sous-ensemble des générations qui correspondent à @var{motif}. La syntaxe de @var{motif} est la même qu'avec @code{guix package --list-generations} (@pxref{Invoking guix package})." + +#. type: table +#: doc/guix.texi:2831 +msgid "Use the bootstrap Guile to build the latest Guix. This option is only useful to Guix developers." +msgstr "Utiliser le programme d'amorçage Guile pour construire la dernière version de Guix. Cette option n'est utile que pour les développeurs de Guix." + +#. type: Plain text +#: doc/guix.texi:2835 +msgid "In addition, @command{guix pull} supports all the common build options (@pxref{Common Build Options})." +msgstr "En plus, @command{guix pull} supporte toutes les options de construction communes (@pxref{Common Build Options})." + +#. type: section +#: doc/guix.texi:2837 +#, no-wrap +msgid "Invoking @command{guix pack}" +msgstr "Invoquer @command{guix pack}" + +#. type: Plain text +#: doc/guix.texi:2843 +msgid "Occasionally you want to pass software to people who are not (yet!) lucky enough to be using Guix. You'd tell them to run @command{guix package -i @var{something}}, but that's not possible in this case. This is where @command{guix pack} comes in." +msgstr "Parfois vous voulez passer un logiciel à des gens qui n'ont pas (encore !) la chance d'utiliser Guix. Vous leur diriez bien de lancer @command{guix package -i @var{quelque chose}} mais ce n'est pas possible dans ce cas. C'est là que @command{guix pack} entre en jeu." + +#. type: quotation +#: doc/guix.texi:2848 +msgid "If you are looking for ways to exchange binaries among machines that already run Guix, @pxref{Invoking guix copy}, @ref{Invoking guix publish}, and @ref{Invoking guix archive}." +msgstr "Si vous cherchez comment échanger des binaires entre des machines où Guix est déjà installé, @pxref{Invoking guix copy}, @ref{Invoking guix publish}, et @ref{Invoking guix archive}." + +#. type: cindex +#: doc/guix.texi:2850 +#, no-wrap +msgid "pack" +msgstr "pack" + +#. type: cindex +#: doc/guix.texi:2851 +#, no-wrap +msgid "bundle" +msgstr "lot" + +#. type: cindex +#: doc/guix.texi:2852 +#, no-wrap +msgid "application bundle" +msgstr "lot d'applications" + +#. type: cindex +#: doc/guix.texi:2853 +#, no-wrap +msgid "software bundle" +msgstr "lot de logiciels" + +#. type: Plain text +#: doc/guix.texi:2862 +msgid "The @command{guix pack} command creates a shrink-wrapped @dfn{pack} or @dfn{software bundle}: it creates a tarball or some other archive containing the binaries of the software you're interested in, and all its dependencies. The resulting archive can be used on any machine that does not have Guix, and people can run the exact same binaries as those you have with Guix. The pack itself is created in a bit-reproducible fashion, so anyone can verify that it really contains the build results that you pretend to be shipping." +msgstr "La commande @command{guix pack} crée un @dfn{pack} ou @dfn{lot de logiciels} : elle crée une archive tar ou un autre type d'archive contenunt les binaires pour le logiciel qui vous intéresse ainsi que ses dépendances. L'archive qui en résulte peut être utilisée sur toutes les machines qui n'ont pas Guix et les gens peuvent lancer exactement les mêmes binaires que ceux que vous avez avec Guix. Le pack lui-même est créé d'une manière reproductible au bit près, pour que n'importe qui puisse vérifier qu'il contient bien les résultats que vous prétendez proposer." + +#. type: Plain text +#: doc/guix.texi:2865 +msgid "For example, to create a bundle containing Guile, Emacs, Geiser, and all their dependencies, you can run:" +msgstr "Par exemple, pour créer un lot contenant Guile, Emacs, Geiser et toutes leurs dépendances, vous pouvez lancer :" + +#. type: example +#: doc/guix.texi:2870 #, no-wrap msgid "" "$ guix pack guile emacs geiser\n" "@dots{}\n" "/gnu/store/@dots{}-pack.tar.gz\n" msgstr "" +"$ guix pack guile emacs geiser\n" +"@dots{}\n" +"/gnu/store/@dots{}-pack.tar.gz\n" #. type: Plain text -#: doc/guix.texi:2823 -msgid "" -"The result here is a tarball containing a @file{/gnu/store} directory with " -"all the relevant packages. The resulting tarball contains a @dfn{profile} " -"with the three packages of interest; the profile is the same as would be " -"created by @command{guix package -i}. It is this mechanism that is used to " -"create Guix's own standalone binary tarball (@pxref{Binary Installation})." -msgstr "" +#: doc/guix.texi:2878 +msgid "The result here is a tarball containing a @file{/gnu/store} directory with all the relevant packages. The resulting tarball contains a @dfn{profile} with the three packages of interest; the profile is the same as would be created by @command{guix package -i}. It is this mechanism that is used to create Guix's own standalone binary tarball (@pxref{Binary Installation})." +msgstr "Le résultat ici est une archive tar contenant un répertoire @file{/gnu/store} avec tous les paquets nécessaires. L'archive qui en résulte contient un @dfn{profil} avec les trois paquets qui vous intéressent ; le profil est le même qui celui qui aurait été créé avec @command{guix package -i}. C'est ce mécanisme qui est utilisé pour créer les archives tar binaires indépendantes de Guix (@pxref{Binary Installation})." #. type: Plain text -#: doc/guix.texi:2828 -msgid "" -"Users of this pack would have to run @file{/gnu/store/@dots{}-profile/bin/" -"guile} to run Guile, which you may find inconvenient. To work around it, " -"you can create, say, a @file{/opt/gnu/bin} symlink to the profile:" -msgstr "" +#: doc/guix.texi:2883 +msgid "Users of this pack would have to run @file{/gnu/store/@dots{}-profile/bin/guile} to run Guile, which you may find inconvenient. To work around it, you can create, say, a @file{/opt/gnu/bin} symlink to the profile:" +msgstr "Les utilisateurs de ce pack devraient lancer @file{/gnu/store/@dots{}-profile/bin/guile} pour lancer Guile, ce qui n'est pas très pratique. Pour éviter cela, vous pouvez créer, disons, un lien symbolique @file{/opt/gnu/bin} vers le profil :" #. type: example -#: doc/guix.texi:2831 +#: doc/guix.texi:2886 #, no-wrap msgid "guix pack -S /opt/gnu/bin=bin guile emacs geiser\n" -msgstr "" +msgstr "guix pack -S /opt/gnu/bin=bin guile emacs geiser\n" #. type: Plain text -#: doc/guix.texi:2835 +#: doc/guix.texi:2890 msgid "That way, users can happily type @file{/opt/gnu/bin/guile} and enjoy." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2838 -msgid "" -"Alternatively, you can produce a pack in the Docker image format using the " -"following command:" -msgstr "" - -#. type: example -#: doc/guix.texi:2841 -#, no-wrap -msgid "guix pack -f docker guile emacs geiser\n" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2848 -msgid "" -"The result is a tarball that can be passed to the @command{docker load} " -"command. See the @uref{https://docs.docker.com/engine/reference/commandline/" -"load/, Docker documentation} for more information." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2850 -msgid "Several command-line options allow you to customize your pack:" -msgstr "" - -#. type: item -#: doc/guix.texi:2852 -#, no-wrap -msgid "--format=@var{format}" -msgstr "" - -#. type: itemx -#: doc/guix.texi:2853 -#, no-wrap -msgid "-f @var{format}" -msgstr "" - -#. type: table -#: doc/guix.texi:2855 -msgid "Produce a pack in the given @var{format}." -msgstr "" - -#. type: table -#: doc/guix.texi:2857 -msgid "The available formats are:" -msgstr "" - -#. type: item -#: doc/guix.texi:2859 -#, no-wrap -msgid "tarball" -msgstr "" - -#. type: table -#: doc/guix.texi:2862 -msgid "" -"This is the default format. It produces a tarball containing all the " -"specified binaries and symlinks." -msgstr "" - -#. type: item -#: doc/guix.texi:2863 -#, no-wrap -msgid "docker" -msgstr "" - -#. type: table -#: doc/guix.texi:2867 -msgid "" -"This produces a tarball that follows the @uref{https://github.com/docker/" -"docker/blob/master/image/spec/v1.2.md, Docker Image Specification}." -msgstr "" - -#. type: item -#: doc/guix.texi:2869 doc/guix.texi:5711 doc/guix.texi:6536 doc/guix.texi:7097 -#: doc/guix.texi:7247 doc/guix.texi:20584 -#, no-wrap -msgid "--expression=@var{expr}" -msgstr "" - -#. type: itemx -#: doc/guix.texi:2870 doc/guix.texi:5712 doc/guix.texi:6537 doc/guix.texi:7098 -#: doc/guix.texi:7248 doc/guix.texi:20585 -#, no-wrap -msgid "-e @var{expr}" -msgstr "" - -#. type: table -#: doc/guix.texi:2872 doc/guix.texi:6539 doc/guix.texi:7100 -msgid "Consider the package @var{expr} evaluates to." -msgstr "" - -#. type: table -#: doc/guix.texi:2876 -msgid "" -"This has the same purpose as the same-named option in @command{guix build} " -"(@pxref{Additional Build Options, @code{--expression} in @command{guix " -"build}})." -msgstr "" - -#. type: table -#: doc/guix.texi:2881 -msgid "" -"Use the packages contained in the manifest object returned by the Scheme " -"code in @var{file}." -msgstr "" - -#. type: table -#: doc/guix.texi:2889 -msgid "" -"This has a similar purpose as the same-named option in @command{guix " -"package} (@pxref{profile-manifest, @option{--manifest}}) and uses the same " -"manifest files. It allows you to define a collection of packages once and " -"use it both for creating profiles and for creating archives for use on " -"machines that do not have Guix installed. Note that you can specify " -"@emph{either} a manifest file @emph{or} a list of packages, but not both." -msgstr "" - -#. type: itemx -#: doc/guix.texi:2891 doc/guix.texi:5784 doc/guix.texi:6925 doc/guix.texi:7333 -#: doc/guix.texi:7967 doc/guix.texi:20593 -#, no-wrap -msgid "-s @var{system}" -msgstr "" - -#. type: table -#: doc/guix.texi:2894 doc/guix.texi:5787 -msgid "" -"Attempt to build for @var{system}---e.g., @code{i686-linux}---instead of the " -"system type of the build host." -msgstr "" - -#. type: item -#: doc/guix.texi:2895 doc/guix.texi:5808 -#, no-wrap -msgid "--target=@var{triplet}" -msgstr "" +msgstr "De cette façon, les utilisateurs peuvent joyeusement taper @file{/opt/gnu/bin/guile} et profiter." #. type: cindex -#: doc/guix.texi:2896 doc/guix.texi:3322 doc/guix.texi:5809 +#: doc/guix.texi:2891 #, no-wrap -msgid "cross-compilation" -msgstr "" +msgid "relocatable binaries, with @command{guix pack}" +msgstr "binaires repositionnables, avec @command{guix pack}" -#. type: table -#: doc/guix.texi:2900 doc/guix.texi:5813 -msgid "" -"Cross-build for @var{triplet}, which must be a valid GNU triplet, such as " -"@code{\"mips64el-linux-gnu\"} (@pxref{Specifying target triplets, GNU " -"configuration triplets,, autoconf, Autoconf})." -msgstr "" +#. type: Plain text +#: doc/guix.texi:2899 +msgid "What if the recipient of your pack does not have root privileges on their machine, and thus cannot unpack it in the root file system? In that case, you will want to use the @code{--relocatable} option (see below). This option produces @dfn{relocatable binaries}, meaning they they can be placed anywhere in the file system hierarchy: in the example above, users can unpack your tarball in their home directory and directly run @file{./opt/gnu/bin/guile}." +msgstr "Et si le destinataire de votre pack n'a pas les privilèges root sur sa machine, et ne peut donc pas le décompresser dans le système de fichiers racine ? Dans ce cas, vous pourriez utiliser l'option @code{--relocatable} (voir plus bas). Cette option produite des @dfn{binaire repositionnables}, ce qui signifie qu'ils peuvent être placés n'importe où dans l'arborescence du système de fichiers : dans l'exemple au-dessus, les utilisateurs peuvent décompresser votre archive dans leur répertoire personnel et lancer directement @file{./opt/gnu/bin/guile}." -#. type: item -#: doc/guix.texi:2901 +#. type: cindex +#: doc/guix.texi:2900 #, no-wrap -msgid "--compression=@var{tool}" -msgstr "" +msgid "Docker, build an image with guix pack" +msgstr "Docker, construire une image avec guix pack" -#. type: itemx -#: doc/guix.texi:2902 -#, no-wrap -msgid "-C @var{tool}" -msgstr "" +#. type: Plain text +#: doc/guix.texi:2903 +msgid "Alternatively, you can produce a pack in the Docker image format using the following command:" +msgstr "Autrement, vous pouvez produire un pack au format d'image Docker avec la commande suivante :" -#. type: table -#: doc/guix.texi:2905 -msgid "" -"Compress the resulting tarball using @var{tool}---one of @code{gzip}, " -"@code{bzip2}, @code{xz}, @code{lzip}, or @code{none} for no compression." -msgstr "" - -#. type: item +#. type: example #: doc/guix.texi:2906 #, no-wrap -msgid "--symlink=@var{spec}" -msgstr "" +msgid "guix pack -f docker guile emacs geiser\n" +msgstr "guix pack -f docker guile emacs geiser\n" -#. type: itemx -#: doc/guix.texi:2907 -#, no-wrap -msgid "-S @var{spec}" -msgstr "" +#. type: Plain text +#: doc/guix.texi:2913 +msgid "The result is a tarball that can be passed to the @command{docker load} command. See the @uref{https://docs.docker.com/engine/reference/commandline/load/, Docker documentation} for more information." +msgstr "Le résultat est une archive tar qui peut être passée à la commande @command{docker load}. Voir la @uref{https://docs.docker.com/engine/reference/commandline/load/, documentation de Docker} pour plus d'informations." -#. type: table -#: doc/guix.texi:2910 -msgid "" -"Add the symlinks specified by @var{spec} to the pack. This option can " -"appear several times." -msgstr "" - -#. type: table +#. type: cindex #: doc/guix.texi:2914 -msgid "" -"@var{spec} has the form @code{@var{source}=@var{target}}, where @var{source} " -"is the symlink that will be created and @var{target} is the symlink target." -msgstr "" +#, no-wrap +msgid "Singularity, build an image with guix pack" +msgstr "Singularity, construire une image avec guix pack" -#. type: table -#: doc/guix.texi:2917 -msgid "" -"For instance, @code{-S /opt/gnu/bin=bin} creates a @file{/opt/gnu/bin} " -"symlink pointing to the @file{bin} sub-directory of the profile." -msgstr "" +#. type: cindex +#: doc/guix.texi:2915 +#, no-wrap +msgid "SquashFS, build an image with guix pack" +msgstr "SquashFS, construire une image avec guix pack" -#. type: item +#. type: Plain text #: doc/guix.texi:2918 -#, no-wrap -msgid "--localstatedir" -msgstr "" - -#. type: table -#: doc/guix.texi:2921 -msgid "" -"Include the ``local state directory'', @file{/var/guix}, in the resulting " -"pack." -msgstr "" - -#. type: table -#: doc/guix.texi:2927 -msgid "" -"@file{/var/guix} contains the store database (@pxref{The Store}) as well as " -"garbage-collector roots (@pxref{Invoking guix gc}). Providing it in the " -"pack means that the store is ``complete'' and manageable by Guix; not " -"providing it pack means that the store is ``dead'': items cannot be added to " -"it or removed from it after extraction of the pack." -msgstr "" - -#. type: table -#: doc/guix.texi:2930 -msgid "" -"One use case for this is the Guix self-contained binary tarball " -"(@pxref{Binary Installation})." -msgstr "" - -#. type: table -#: doc/guix.texi:2934 -msgid "" -"Use the bootstrap binaries to build the pack. This option is only useful to " -"Guix developers." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2939 -msgid "" -"In addition, @command{guix pack} supports all the common build options " -"(@pxref{Common Build Options}) and all the package transformation options " -"(@pxref{Package Transformation Options})." -msgstr "" - -#. type: section -#: doc/guix.texi:2942 -#, no-wrap -msgid "Invoking @command{guix archive}" -msgstr "" - -#. type: command{#1} -#: doc/guix.texi:2944 -#, no-wrap -msgid "guix archive" -msgstr "" - -#. type: cindex -#: doc/guix.texi:2945 -#, no-wrap -msgid "archive" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2951 -msgid "" -"The @command{guix archive} command allows users to @dfn{export} files from " -"the store into a single archive, and to later @dfn{import} them on a machine " -"that runs Guix. In particular, it allows store files to be transferred from " -"one machine to the store on another machine." -msgstr "" - -#. type: quotation -#: doc/guix.texi:2955 -msgid "" -"If you're looking for a way to produce archives in a format suitable for " -"tools other than Guix, @pxref{Invoking guix pack}." -msgstr "" - -#. type: cindex -#: doc/guix.texi:2957 -#, no-wrap -msgid "exporting store items" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2959 -msgid "To export store files as an archive to standard output, run:" -msgstr "" +msgid "Yet another option is to produce a SquashFS image with the following command:" +msgstr "Autrement, vous pouvez produire une image SquashFS avec la commande suivante :" #. type: example -#: doc/guix.texi:2962 +#: doc/guix.texi:2921 #, no-wrap -msgid "guix archive --export @var{options} @var{specifications}...\n" -msgstr "" +msgid "guix pack -f squashfs guile emacs geiser\n" +msgstr "guix pack -f squashfs guile emacs geiser\n" #. type: Plain text -#: doc/guix.texi:2969 -msgid "" -"@var{specifications} may be either store file names or package " -"specifications, as for @command{guix package} (@pxref{Invoking guix " -"package}). For instance, the following command creates an archive " -"containing the @code{gui} output of the @code{git} package and the main " -"output of @code{emacs}:" -msgstr "" +#: doc/guix.texi:2929 +msgid "The result is a SquashFS file system image that can either be mounted or directly be used as a file system container image with the @uref{http://singularity.lbl.gov, Singularity container execution environment}, using commands like @command{singularity shell} or @command{singularity exec}." +msgstr "Le résultat est une image de système de fichiers SquashFS qui peut soit être montée directement soit être utilisée comme image de conteneur de système de fichiers avec l'@uref{http://singularity.lbl.gov, environnement d'exécution conteneurisé Singularity}, avec des commandes comme @command{singularity shell} ou @command{singularity exec}." + +#. type: Plain text +#: doc/guix.texi:2931 +msgid "Several command-line options allow you to customize your pack:" +msgstr "Diverses options en ligne de commande vous permettent de personnaliser votre pack :" + +#. type: item +#: doc/guix.texi:2933 +#, no-wrap +msgid "--format=@var{format}" +msgstr "--format=@var{format}" + +#. type: itemx +#: doc/guix.texi:2934 +#, no-wrap +msgid "-f @var{format}" +msgstr "-f @var{format}" + +#. type: table +#: doc/guix.texi:2936 +msgid "Produce a pack in the given @var{format}." +msgstr "Produire un pack dans le @var{format} donné." + +#. type: table +#: doc/guix.texi:2938 +msgid "The available formats are:" +msgstr "Les formats disponibles sont :" + +#. type: item +#: doc/guix.texi:2940 +#, no-wrap +msgid "tarball" +msgstr "tarball" + +#. type: table +#: doc/guix.texi:2943 +msgid "This is the default format. It produces a tarball containing all the specified binaries and symlinks." +msgstr "C'est le format par défaut. Il produit une archive tar contenant tous les binaires et les liens symboliques spécifiés." + +#. type: item +#: doc/guix.texi:2944 +#, no-wrap +msgid "docker" +msgstr "docker" + +#. type: table +#: doc/guix.texi:2948 +msgid "This produces a tarball that follows the @uref{https://github.com/docker/docker/blob/master/image/spec/v1.2.md, Docker Image Specification}." +msgstr "Cela produit une archive tar qui suit la @uref{https://github.com/docker/docker/blob/master/image/spec/v1.2.md, spécification des images Docker}." + +#. type: item +#: doc/guix.texi:2949 +#, no-wrap +msgid "squashfs" +msgstr "squashfs" + +#. type: table +#: doc/guix.texi:2953 +msgid "This produces a SquashFS image containing all the specified binaries and symlinks, as well as empty mount points for virtual file systems like procfs." +msgstr "Cela produit une image SquashFS contenant tous les binaires et liens symboliques spécifiés, ainsi que des points de montages vides pour les systèmes de fichiers virtuels comme procfs." + +#. type: item +#: doc/guix.texi:2955 +#, no-wrap +msgid "--relocatable" +msgstr "--relocatable" + +#. type: table +#: doc/guix.texi:2960 +msgid "Produce @dfn{relocatable binaries}---i.e., binaries that can be placed anywhere in the file system hierarchy and run from there. For example, if you create a pack containing Bash with:" +msgstr "Produit des @dfn{binaires repositionnables} — c.-à-d.@: des binaires que vous pouvez placer n'importe où dans l'arborescence du système de fichiers et les lancer à partir de là. Par exemple, si vous créez un pack contenant Bash avec :" + +#. type: example +#: doc/guix.texi:2963 +#, no-wrap +msgid "guix pack -R -S /mybin=bin bash\n" +msgstr "guix pack -R -S /mybin=bin bash\n" + +#. type: table +#: doc/guix.texi:2968 +msgid "... you can copy that pack to a machine that lacks Guix, and from your home directory as a normal user, run:" +msgstr "… vous pouvez copier ce pack sur une machine qui n'a pas Guix et depuis votre répertoire personnel en tant qu'utilisateur non-privilégié, lancer :" #. type: example #: doc/guix.texi:2972 #, no-wrap -msgid "guix archive --export git:gui /gnu/store/...-emacs-24.3 > great.nar\n" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:2977 msgid "" -"If the specified packages are not built yet, @command{guix archive} " -"automatically builds them. The build process may be controlled with the " -"common build options (@pxref{Common Build Options})." +"tar xf pack.tar.gz\n" +"./mybin/sh\n" msgstr "" +"tar xf pack.tar.gz\n" +"./mybin/sh\n" -#. type: Plain text +#. type: table #: doc/guix.texi:2980 -msgid "" -"To transfer the @code{emacs} package to a machine connected over SSH, one " -"would run:" -msgstr "" +msgid "In that shell, if you type @code{ls /gnu/store}, you'll notice that @file{/gnu/store} shows up and contains all the dependencies of @code{bash}, even though the machine actually lacks @file{/gnu/store} altogether! That is probably the simplest way to deploy Guix-built software on a non-Guix machine." +msgstr "Dans ce shell, si vous tapez @code{ls /gnu/store}, vous remarquerez que @file{/gnu/store} apparaît et contient toutes les dépendances de @code{bash}, même si la machine n'a pas du tout de @file{/gnu/store} ! C'est sans doute la manière la plus simple de déployer du logiciel construit avec Guix sur une machine sans Guix." + +#. type: table +#: doc/guix.texi:2987 +msgid "There's a gotcha though: this technique relies on the @dfn{user namespace} feature of the kernel Linux, which allows unprivileged users to mount or change root. Old versions of Linux did not support it, and some GNU/Linux distributions turn it off; on these systems, programs from the pack @emph{will fail to run}, unless they are unpacked in the root file system." +msgstr "Il y a un inconvénient cependant : cette technique repose sur les @dfn{espaces de noms} du noyau Linux qui permettent à des utilisateurs non-privilégiés de monter des systèmes de fichiers ou de changer de racine. Les anciennes versions de Linux ne le supportaient pas et certaines distributions GNU/Linux les désactivent ; sur ces système, les programme du pack @emph{ne fonctionneront pas} à moins qu'ils ne soient décompressés à la racine du système de fichiers." + +#. type: item +#: doc/guix.texi:2988 doc/guix.texi:5882 doc/guix.texi:6720 doc/guix.texi:7307 +#: doc/guix.texi:7457 doc/guix.texi:21068 +#, no-wrap +msgid "--expression=@var{expr}" +msgstr "--expression=@var{expr}" + +#. type: itemx +#: doc/guix.texi:2989 doc/guix.texi:5883 doc/guix.texi:6721 doc/guix.texi:7308 +#: doc/guix.texi:7458 doc/guix.texi:21069 +#, no-wrap +msgid "-e @var{expr}" +msgstr "-e @var{expr}" + +#. type: table +#: doc/guix.texi:2991 doc/guix.texi:6723 doc/guix.texi:7310 +msgid "Consider the package @var{expr} evaluates to." +msgstr "Considérer le paquet évalué par @var{expr}." + +#. type: table +#: doc/guix.texi:2995 +msgid "This has the same purpose as the same-named option in @command{guix build} (@pxref{Additional Build Options, @code{--expression} in @command{guix build}})." +msgstr "Cela a le même but que l'option de même nom de @command{guix build} (@pxref{Additional Build Options, @code{--expression} dans @command{guix build}})." + +#. type: table +#: doc/guix.texi:3000 +msgid "Use the packages contained in the manifest object returned by the Scheme code in @var{file}." +msgstr "Utiliser les paquets contenus dans l'objet manifeste renvoyé par le code Scheme dans @var{fichier}" + +#. type: table +#: doc/guix.texi:3008 +msgid "This has a similar purpose as the same-named option in @command{guix package} (@pxref{profile-manifest, @option{--manifest}}) and uses the same manifest files. It allows you to define a collection of packages once and use it both for creating profiles and for creating archives for use on machines that do not have Guix installed. Note that you can specify @emph{either} a manifest file @emph{or} a list of packages, but not both." +msgstr "Elle a un but similaire à l'option de même nom dans @command{guix package} (@pxref{profile-manifest, @option{--manifest}}) et utilise les mêmes fichiers manifeste. Ils vous permettent de définir une collection de paquets une fois et de l'utiliser aussi bien pour créer des profils que pour créer des archives pour des machines qui n'ont pas Guix d'installé. Remarquez que vous pouvez spécifier @emph{soit} un fichier manifeste, @emph{soit} une liste de paquet, mais pas les deux." + +#. type: itemx +#: doc/guix.texi:3010 doc/guix.texi:5955 doc/guix.texi:7135 doc/guix.texi:7543 +#: doc/guix.texi:8177 doc/guix.texi:21077 +#, no-wrap +msgid "-s @var{system}" +msgstr "-s @var{système}" + +#. type: table +#: doc/guix.texi:3013 doc/guix.texi:5958 +msgid "Attempt to build for @var{system}---e.g., @code{i686-linux}---instead of the system type of the build host." +msgstr "Tenter de construire pour le @var{système} — p.@: ex.@: @code{i686-linux} — plutôt que pour le type de système de l'hôte de construction." + +#. type: item +#: doc/guix.texi:3014 doc/guix.texi:5986 +#, no-wrap +msgid "--target=@var{triplet}" +msgstr "--target=@var{triplet}" + +#. type: cindex +#: doc/guix.texi:3015 doc/guix.texi:3441 doc/guix.texi:5987 +#, no-wrap +msgid "cross-compilation" +msgstr "compilation croisée" + +#. type: table +#: doc/guix.texi:3019 doc/guix.texi:5991 +msgid "Cross-build for @var{triplet}, which must be a valid GNU triplet, such as @code{\"mips64el-linux-gnu\"} (@pxref{Specifying target triplets, GNU configuration triplets,, autoconf, Autoconf})." +msgstr "Effectuer une compilation croisée pour @var{triplet} qui doit être un triplet GNU valide, comme @code{\"mips64el-linux-gnu\"} (@pxref{Specifying target triplets, GNU configuration triplets,, autoconf, Autoconf})." + +#. type: item +#: doc/guix.texi:3020 +#, no-wrap +msgid "--compression=@var{tool}" +msgstr "--compression=@var{outil}" + +#. type: itemx +#: doc/guix.texi:3021 +#, no-wrap +msgid "-C @var{tool}" +msgstr "-C @var{outil}" + +#. type: table +#: doc/guix.texi:3024 +msgid "Compress the resulting tarball using @var{tool}---one of @code{gzip}, @code{bzip2}, @code{xz}, @code{lzip}, or @code{none} for no compression." +msgstr "Compresser l'archive résultante avec @var{outil} — l'un des outils parmi @code{bzip2}, @code{xz}, @code{lzip} ou @code{none} pour aucune compression." + +#. type: item +#: doc/guix.texi:3025 +#, no-wrap +msgid "--symlink=@var{spec}" +msgstr "--symlink=@var{spec}" + +#. type: itemx +#: doc/guix.texi:3026 +#, no-wrap +msgid "-S @var{spec}" +msgstr "-S @var{spec}" + +#. type: table +#: doc/guix.texi:3029 +msgid "Add the symlinks specified by @var{spec} to the pack. This option can appear several times." +msgstr "Ajouter les liens symboliques spécifiés par @var{spec} dans le pack. Cette option peut apparaître plusieurs fois." + +#. type: table +#: doc/guix.texi:3033 +msgid "@var{spec} has the form @code{@var{source}=@var{target}}, where @var{source} is the symlink that will be created and @var{target} is the symlink target." +msgstr "@var{spec} a la forme @code{@var{source}=@var{cible}}, où @var{source} est le lien symbolique qui sera créé et @var{cible} est la cible du lien." + +#. type: table +#: doc/guix.texi:3036 +msgid "For instance, @code{-S /opt/gnu/bin=bin} creates a @file{/opt/gnu/bin} symlink pointing to the @file{bin} sub-directory of the profile." +msgstr "Par exemple, @code{-S /opt/gnu/bin=bin} crée un lien symbolique @file{/opt/gnu/bin} qui pointe vers le sous-répertoire @file{bin} du profil." + +#. type: item +#: doc/guix.texi:3037 +#, no-wrap +msgid "--localstatedir" +msgstr "--localstatedir" + +#. type: table +#: doc/guix.texi:3040 +msgid "Include the ``local state directory'', @file{/var/guix}, in the resulting pack." +msgstr "Inclure le « répertoire d'état local », @file{/var/guix} dans le paquet résultant." + +#. type: table +#: doc/guix.texi:3046 +msgid "@file{/var/guix} contains the store database (@pxref{The Store}) as well as garbage-collector roots (@pxref{Invoking guix gc}). Providing it in the pack means that the store is ``complete'' and manageable by Guix; not providing it pack means that the store is ``dead'': items cannot be added to it or removed from it after extraction of the pack." +msgstr "@file{/var/guix} contient la base de données du dépôt (@pxref{The Store}) ainsi que les racines du ramasse-miettes (@pxref{Invoking guix gc}). Le fournir dans le pack signifie que le dépôt et « complet » et gérable par Guix ; ne pas le fournir dans le pack signifie que le dépôt est « mort » : aucun élément ne peut être ajouté ni enlevé après l'extraction du pack." + +#. type: table +#: doc/guix.texi:3049 +msgid "One use case for this is the Guix self-contained binary tarball (@pxref{Binary Installation})." +msgstr "Un cas d'utilisation est l'archive binaire indépendante de Guix (@pxref{Binary Installation})." + +#. type: table +#: doc/guix.texi:3053 +msgid "Use the bootstrap binaries to build the pack. This option is only useful to Guix developers." +msgstr "Utiliser les programmes d'amorçage pour construire le pack. Cette option n'est utile que pour les développeurs de Guix." + +#. type: Plain text +#: doc/guix.texi:3058 +msgid "In addition, @command{guix pack} supports all the common build options (@pxref{Common Build Options}) and all the package transformation options (@pxref{Package Transformation Options})." +msgstr "En plus, @command{guix pack} supporte toutes les options de construction communes (@pxref{Common Build Options}) et toutes les options de transformation de paquets (@pxref{Package Transformation Options})." + +#. type: section +#: doc/guix.texi:3061 +#, no-wrap +msgid "Invoking @command{guix archive}" +msgstr "Invoquer @command{guix archive}" + +#. type: command{#1} +#: doc/guix.texi:3063 +#, no-wrap +msgid "guix archive" +msgstr "guix archive" + +#. type: cindex +#: doc/guix.texi:3064 +#, no-wrap +msgid "archive" +msgstr "archive" + +#. type: Plain text +#: doc/guix.texi:3070 +msgid "The @command{guix archive} command allows users to @dfn{export} files from the store into a single archive, and to later @dfn{import} them on a machine that runs Guix. In particular, it allows store files to be transferred from one machine to the store on another machine." +msgstr "La commande @command{guix archive} permet aux utilisateurs d'@dfn{exporter} des fichiers du dépôt dans une simple archive puis ensuite de les @dfn{importer} sur une machine qui fait tourner Guix. En particulier, elle permet de transférer des fichiers du dépôt d'une machine vers le dépôt d'une autre machine." + +#. type: quotation +#: doc/guix.texi:3074 +msgid "If you're looking for a way to produce archives in a format suitable for tools other than Guix, @pxref{Invoking guix pack}." +msgstr "Si vous chercher une manière de produire des archives dans un format adapté pour des outils autres que Guix, @pxref{Invoking guix pack}." + +#. type: cindex +#: doc/guix.texi:3076 +#, no-wrap +msgid "exporting store items" +msgstr "exporter des éléments du dépôt" + +#. type: Plain text +#: doc/guix.texi:3078 +msgid "To export store files as an archive to standard output, run:" +msgstr "Pour exporter des fichiers du dépôt comme une archive sur la sortie standard, lancez :" #. type: example -#: doc/guix.texi:2983 +#: doc/guix.texi:3081 +#, no-wrap +msgid "guix archive --export @var{options} @var{specifications}...\n" +msgstr "guix archive --export @var{options} @var{spécifications}...\n" + +#. type: Plain text +#: doc/guix.texi:3088 +msgid "@var{specifications} may be either store file names or package specifications, as for @command{guix package} (@pxref{Invoking guix package}). For instance, the following command creates an archive containing the @code{gui} output of the @code{git} package and the main output of @code{emacs}:" +msgstr "@var{spécifications} peut être soit des noms de fichiers soit des spécifications de paquets, comme pour @command{guix package} (@pxref{Invoking guix package}). Par exemple, la commande suivante crée une archive contenant la sortie @code{gui} du paquet @code{git} et la sortie principale de @code{emacs} :" + +#. type: example +#: doc/guix.texi:3091 +#, no-wrap +msgid "guix archive --export git:gui /gnu/store/...-emacs-24.3 > great.nar\n" +msgstr "guix archive --export git:gui /gnu/store/...-emacs-24.3 > great.nar\n" + +#. type: Plain text +#: doc/guix.texi:3096 +msgid "If the specified packages are not built yet, @command{guix archive} automatically builds them. The build process may be controlled with the common build options (@pxref{Common Build Options})." +msgstr "Si les paquets spécifiés ne sont pas déjà construits, @command{guix archive} les construit automatiquement. Le processus de construction peut être contrôlé avec les options de construction communes (@pxref{Common Build Options})." + +#. type: Plain text +#: doc/guix.texi:3099 +msgid "To transfer the @code{emacs} package to a machine connected over SSH, one would run:" +msgstr "Pour transférer le paquet @code{emacs} vers une machine connectée en SSH, on pourrait lancer :" + +#. type: example +#: doc/guix.texi:3102 #, no-wrap msgid "guix archive --export -r emacs | ssh the-machine guix archive --import\n" -msgstr "" +msgstr "guix archive --export -r emacs | ssh la-machine guix archive --import\n" #. type: Plain text -#: doc/guix.texi:2988 -msgid "" -"Similarly, a complete user profile may be transferred from one machine to " -"another like this:" -msgstr "" +#: doc/guix.texi:3107 +msgid "Similarly, a complete user profile may be transferred from one machine to another like this:" +msgstr "De même, on peut transférer un profil utilisateur complet d'une machine à une autre comme cela :" #. type: example -#: doc/guix.texi:2992 +#: doc/guix.texi:3111 #, no-wrap msgid "" "guix archive --export -r $(readlink -f ~/.guix-profile) | \\\n" " ssh the-machine guix-archive --import\n" msgstr "" +"guix archive --export -r $(readlink -f ~/.guix-profile) | \\\n" +" ssh la-machine guix-archive --import\n" #. type: Plain text -#: doc/guix.texi:3002 -msgid "" -"However, note that, in both examples, all of @code{emacs} and the profile as " -"well as all of their dependencies are transferred (due to @code{-r}), " -"regardless of what is already available in the store on the target machine. " -"The @code{--missing} option can help figure out which items are missing from " -"the target store. The @command{guix copy} command simplifies and optimizes " -"this whole process, so this is probably what you should use in this case " -"(@pxref{Invoking guix copy})." -msgstr "" +#: doc/guix.texi:3121 +msgid "However, note that, in both examples, all of @code{emacs} and the profile as well as all of their dependencies are transferred (due to @code{-r}), regardless of what is already available in the store on the target machine. The @code{--missing} option can help figure out which items are missing from the target store. The @command{guix copy} command simplifies and optimizes this whole process, so this is probably what you should use in this case (@pxref{Invoking guix copy})." +msgstr "Cependant, remarquez que, dans les deux exemples, le paquet @code{emacs}, le profil ainsi que toutes leurs dépendances sont transférées (à cause de @code{-r}), indépendamment du fait qu'ils soient disponibles dans le dépôt de la machine cible. L'option @code{--missing} peut vous aider à comprendre les éléments qui manquent dans le dépôt de la machine cible. La commande @command{guix copy} simplifie et optimise ce processus, c'est donc ce que vous devriez utiliser dans ce cas (@pxref{Invoking guix copy})." #. type: cindex -#: doc/guix.texi:3003 +#: doc/guix.texi:3122 #, no-wrap msgid "nar, archive format" -msgstr "" +msgstr "nar, format d'archive" #. type: cindex -#: doc/guix.texi:3004 +#: doc/guix.texi:3123 #, no-wrap msgid "normalized archive (nar)" -msgstr "" +msgstr "archive normalisée (nar)" #. type: Plain text -#: doc/guix.texi:3014 -msgid "" -"Archives are stored in the ``normalized archive'' or ``nar'' format, which " -"is comparable in spirit to `tar', but with differences that make it more " -"appropriate for our purposes. First, rather than recording all Unix " -"metadata for each file, the nar format only mentions the file type (regular, " -"directory, or symbolic link); Unix permissions and owner/group are " -"dismissed. Second, the order in which directory entries are stored always " -"follows the order of file names according to the C locale collation order. " -"This makes archive production fully deterministic." -msgstr "" +#: doc/guix.texi:3133 +msgid "Archives are stored in the ``normalized archive'' or ``nar'' format, which is comparable in spirit to `tar', but with differences that make it more appropriate for our purposes. First, rather than recording all Unix metadata for each file, the nar format only mentions the file type (regular, directory, or symbolic link); Unix permissions and owner/group are dismissed. Second, the order in which directory entries are stored always follows the order of file names according to the C locale collation order. This makes archive production fully deterministic." +msgstr "Les archives sont stockées au format « archive normalisé » ou « nar », qui est comparable dans l'esprit à « tar » mais avec des différences qui le rendent utilisable pour ce qu'on veut faire. Tout d'abord, au lieu de stocker toutes les métadonnées Unix de chaque fichier, le format nar ne mentionne que le type de fichier (normal, répertoire ou lien symbolique) ; les permissions Unix, le groupe et l'utilisateur ne sont pas mentionnés. Ensuite, l'ordre dans lequel les entrées de répertoires sont stockés suit toujours l'ordre des noms de fichier dans l'environnement linguistique C. Cela rend la production des archives entièrement déterministe." #. type: Plain text -#: doc/guix.texi:3020 -msgid "" -"When exporting, the daemon digitally signs the contents of the archive, and " -"that digital signature is appended. When importing, the daemon verifies the " -"signature and rejects the import in case of an invalid signature or if the " -"signing key is not authorized." -msgstr "" +#: doc/guix.texi:3139 +msgid "When exporting, the daemon digitally signs the contents of the archive, and that digital signature is appended. When importing, the daemon verifies the signature and rejects the import in case of an invalid signature or if the signing key is not authorized." +msgstr "Lors de l'export, le démon signe numériquement le contenu de l'archive et cette signature est ajoutée à la fin du fichier. Lors de l'import, le démon vérifie la signature et rejette l'import en cas de signature invalide ou si la clef de signature n'est pas autorisée." #. type: Plain text -#: doc/guix.texi:3022 +#: doc/guix.texi:3141 msgid "The main options are:" -msgstr "" +msgstr "Les principales options sont :" #. type: item -#: doc/guix.texi:3024 +#: doc/guix.texi:3143 #, no-wrap msgid "--export" -msgstr "" +msgstr "--export" #. type: table -#: doc/guix.texi:3027 -msgid "" -"Export the specified store files or packages (see below.) Write the " -"resulting archive to the standard output." -msgstr "" +#: doc/guix.texi:3146 +msgid "Export the specified store files or packages (see below.) Write the resulting archive to the standard output." +msgstr "Exporter les fichiers ou les paquets du dépôt (voir plus bas). Écrire l'archive résultante sur la sortie standard." #. type: table -#: doc/guix.texi:3030 -msgid "" -"Dependencies are @emph{not} included in the output, unless @code{--" -"recursive} is passed." -msgstr "" +#: doc/guix.texi:3149 +msgid "Dependencies are @emph{not} included in the output, unless @code{--recursive} is passed." +msgstr "Les dépendances ne sont @emph{pas} incluses dans la sortie à moins que @code{--recursive} ne soit passé." #. type: itemx -#: doc/guix.texi:3031 doc/guix.texi:6080 +#: doc/guix.texi:3150 doc/guix.texi:6258 doc/guix.texi:6644 #, no-wrap msgid "-r" -msgstr "" +msgstr "-r" #. type: item -#: doc/guix.texi:3032 doc/guix.texi:6079 +#: doc/guix.texi:3151 doc/guix.texi:6257 doc/guix.texi:6643 #, no-wrap msgid "--recursive" -msgstr "" +msgstr "--recursive" #. type: table -#: doc/guix.texi:3037 -msgid "" -"When combined with @code{--export}, this instructs @command{guix archive} to " -"include dependencies of the given items in the archive. Thus, the resulting " -"archive is self-contained: it contains the closure of the exported store " -"items." -msgstr "" +#: doc/guix.texi:3156 +msgid "When combined with @code{--export}, this instructs @command{guix archive} to include dependencies of the given items in the archive. Thus, the resulting archive is self-contained: it contains the closure of the exported store items." +msgstr "En combinaison avec @code{--export}, cette option demande à @command{guix archive} d'inclure les dépendances des éléments donnés dans l'archive. Ainsi, l'archive résultante est autonome : elle contient la closure des éléments du dépôt exportés." #. type: item -#: doc/guix.texi:3038 +#: doc/guix.texi:3157 #, no-wrap msgid "--import" -msgstr "" +msgstr "--import" #. type: table -#: doc/guix.texi:3043 -msgid "" -"Read an archive from the standard input, and import the files listed therein " -"into the store. Abort if the archive has an invalid digital signature, or " -"if it is signed by a public key not among the authorized keys (see @code{--" -"authorize} below.)" -msgstr "" +#: doc/guix.texi:3162 +msgid "Read an archive from the standard input, and import the files listed therein into the store. Abort if the archive has an invalid digital signature, or if it is signed by a public key not among the authorized keys (see @code{--authorize} below.)" +msgstr "Lire une archive depuis l'entrée standard et importer les fichiers inclus dans le dépôt. Annuler si l'archive a une signature invalide ou si elle est signée par une clef publique qui ne se trouve pas dans le clefs autorisées (voir @code{--authorize} plus bas.)" #. type: item -#: doc/guix.texi:3044 +#: doc/guix.texi:3163 #, no-wrap msgid "--missing" -msgstr "" +msgstr "--missing" #. type: table -#: doc/guix.texi:3048 -msgid "" -"Read a list of store file names from the standard input, one per line, and " -"write on the standard output the subset of these files missing from the " -"store." -msgstr "" +#: doc/guix.texi:3167 +msgid "Read a list of store file names from the standard input, one per line, and write on the standard output the subset of these files missing from the store." +msgstr "Liste une liste de noms de fichiers du dépôt sur l'entrée standard, un par ligne, et écrit sur l'entrée standard le sous-ensemble de ces fichiers qui manquent dans le dépôt." #. type: item -#: doc/guix.texi:3049 +#: doc/guix.texi:3168 #, no-wrap msgid "--generate-key[=@var{parameters}]" -msgstr "" +msgstr "--generate-key[=@var{paramètres}]" #. type: cindex -#: doc/guix.texi:3050 +#: doc/guix.texi:3169 #, no-wrap msgid "signing, archives" -msgstr "" +msgstr "signature, archives" #. type: table -#: doc/guix.texi:3055 -msgid "" -"Generate a new key pair for the daemon. This is a prerequisite before " -"archives can be exported with @code{--export}. Note that this operation " -"usually takes time, because it needs to gather enough entropy to generate " -"the key pair." -msgstr "" +#: doc/guix.texi:3174 +msgid "Generate a new key pair for the daemon. This is a prerequisite before archives can be exported with @code{--export}. Note that this operation usually takes time, because it needs to gather enough entropy to generate the key pair." +msgstr "Générer une nouvelle paire de clefs pour le démon. Cela est un prérequis avant que les archives ne puissent être exportées avec @code{--export}. Remarquez que cette opération prend généralement du temps parce qu'elle doit récupère suffisamment d'entropie pour générer la paire de clefs." #. type: table -#: doc/guix.texi:3065 -msgid "" -"The generated key pair is typically stored under @file{/etc/guix}, in " -"@file{signing-key.pub} (public key) and @file{signing-key.sec} (private key, " -"which must be kept secret.) When @var{parameters} is omitted, an ECDSA key " -"using the Ed25519 curve is generated, or, for Libgcrypt versions before " -"1.6.0, it is a 4096-bit RSA key. Alternatively, @var{parameters} can " -"specify @code{genkey} parameters suitable for Libgcrypt (@pxref{General " -"public-key related Functions, @code{gcry_pk_genkey},, gcrypt, The Libgcrypt " -"Reference Manual})." -msgstr "" +#: doc/guix.texi:3184 +msgid "The generated key pair is typically stored under @file{/etc/guix}, in @file{signing-key.pub} (public key) and @file{signing-key.sec} (private key, which must be kept secret.) When @var{parameters} is omitted, an ECDSA key using the Ed25519 curve is generated, or, for Libgcrypt versions before 1.6.0, it is a 4096-bit RSA key. Alternatively, @var{parameters} can specify @code{genkey} parameters suitable for Libgcrypt (@pxref{General public-key related Functions, @code{gcry_pk_genkey},, gcrypt, The Libgcrypt Reference Manual})." +msgstr "La paire de clefs générée est typiquement stockée dans @file{/etc/guix}, dans @file{signing-key.pub} (clef publique) et @file{signing-key.sec} (clef privée, qui doit rester secrète). Lorsque @var{paramètres} est omis, une clef ECDSA utilisant la courbe Ed25519 est générée ou pour les version de libgcrypt avant 1.6.0, une clef RSA de 4096 bits. Autrement, @var{paramètres} peut spécifier les paramètres @code{genkey} adaptés pour libgcrypt (@pxref{General public-key related Functions, @code{gcry_pk_genkey},, gcrypt, The Libgcrypt Reference Manual})." #. type: item -#: doc/guix.texi:3066 +#: doc/guix.texi:3185 #, no-wrap msgid "--authorize" -msgstr "" +msgstr "--authorize" #. type: cindex -#: doc/guix.texi:3067 +#: doc/guix.texi:3186 #, no-wrap msgid "authorizing, archives" -msgstr "" +msgstr "autorisation, archives" #. type: table -#: doc/guix.texi:3071 -msgid "" -"Authorize imports signed by the public key passed on standard input. The " -"public key must be in ``s-expression advanced format''---i.e., the same " -"format as the @file{signing-key.pub} file." -msgstr "" +#: doc/guix.texi:3190 +msgid "Authorize imports signed by the public key passed on standard input. The public key must be in ``s-expression advanced format''---i.e., the same format as the @file{signing-key.pub} file." +msgstr "Autoriser les imports signés par la clef publique passée sur l'entrée standard. La clef publique doit être au « format avancé s-expression » — c.-à-d.@: le même format que le fichier @file{signing-key.pub}." #. type: table -#: doc/guix.texi:3078 -msgid "" -"The list of authorized keys is kept in the human-editable file @file{/etc/" -"guix/acl}. The file contains @url{http://people.csail.mit.edu/rivest/Sexp." -"txt, ``advanced-format s-expressions''} and is structured as an access-" -"control list in the @url{http://theworld.com/~cme/spki.txt, Simple Public-" -"Key Infrastructure (SPKI)}." -msgstr "" +#: doc/guix.texi:3197 +msgid "The list of authorized keys is kept in the human-editable file @file{/etc/guix/acl}. The file contains @url{http://people.csail.mit.edu/rivest/Sexp.txt, ``advanced-format s-expressions''} and is structured as an access-control list in the @url{http://theworld.com/~cme/spki.txt, Simple Public-Key Infrastructure (SPKI)}." +msgstr "La liste des clefs autorisées est gardée dans un fichier modifiable par des humains dans @file{/etc/guix/acl}. Le fichier contient des @url{http://people.csail.mit.edu/rivest/Sexp.txt, « s-expressions au format avancé »} et est structuré comme une liste de contrôle d'accès dans l'@url{http://theworld.com/~cme/spki.txt, infrastructure à clefs publiques simple (SPKI)}." #. type: item -#: doc/guix.texi:3079 +#: doc/guix.texi:3198 #, no-wrap msgid "--extract=@var{directory}" -msgstr "" +msgstr "--extract=@var{répertoire}" #. type: itemx -#: doc/guix.texi:3080 +#: doc/guix.texi:3199 #, no-wrap msgid "-x @var{directory}" -msgstr "" +msgstr "-x @var{répertoire}" #. type: table -#: doc/guix.texi:3084 -msgid "" -"Read a single-item archive as served by substitute servers " -"(@pxref{Substitutes}) and extract it to @var{directory}. This is a low-" -"level operation needed in only very narrow use cases; see below." -msgstr "" -"Lit une archive à un seul élément telle que servie par un serveur de " -"substituts (@pxref{Substituts}) et l'extrait dans @var{directory}. C'est une " -"opération de bas niveau requise seulement dans de rares cas d'usage ; voir " -"plus loin." +#: doc/guix.texi:3203 +msgid "Read a single-item archive as served by substitute servers (@pxref{Substitutes}) and extract it to @var{directory}. This is a low-level operation needed in only very narrow use cases; see below." +msgstr "Lit une archive à un seul élément telle que servie par un serveur de substituts (@pxref{Substituts}) et l'extrait dans @var{répertoire}. C'est une opération de bas niveau requise seulement dans de rares cas d'usage ; voir plus loin." #. type: table -#: doc/guix.texi:3087 -msgid "" -"For example, the following command extracts the substitute for Emacs served " -"by @code{hydra.gnu.org} to @file{/tmp/emacs}:" -msgstr "" +#: doc/guix.texi:3206 +msgid "For example, the following command extracts the substitute for Emacs served by @code{hydra.gnu.org} to @file{/tmp/emacs}:" +msgstr "Par exemple, la commande suivante extrait le substitut pour Emacs servi par @code{hydra.gnu.org} dans @file{/tmp/emacs} :" #. type: example -#: doc/guix.texi:3092 +#: doc/guix.texi:3211 #, no-wrap msgid "" "$ wget -O - \\\n" " https://hydra.gnu.org/nar/@dots{}-emacs-24.5 \\\n" " | bunzip2 | guix archive -x /tmp/emacs\n" msgstr "" +"$ wget -O - \\\n" +" https://hydra.gnu.org/nar/@dots{}-emacs-24.5 \\\n" +" | bunzip2 | guix archive -x /tmp/emacs\n" #. type: table -#: doc/guix.texi:3099 -msgid "" -"Single-item archives are different from multiple-item archives produced by " -"@command{guix archive --export}; they contain a single store item, and they " -"do @emph{not} embed a signature. Thus this operation does @emph{no} " -"signature verification and its output should be considered unsafe." -msgstr "" +#: doc/guix.texi:3218 +msgid "Single-item archives are different from multiple-item archives produced by @command{guix archive --export}; they contain a single store item, and they do @emph{not} embed a signature. Thus this operation does @emph{no} signature verification and its output should be considered unsafe." +msgstr "Les archives à un seul élément sont différentes des archives à plusieurs éléments produites par @command{guix archive --export} ; elles contiennent un seul élément du dépôt et elles n'embarquent @emph{pas} de signature. Ainsi cette opération ne vérifie @emph{pas} de signature et sa sortie devrait être considérée comme non sûre." #. type: table -#: doc/guix.texi:3102 -msgid "" -"The primary purpose of this operation is to facilitate inspection of archive " -"contents coming from possibly untrusted substitute servers." -msgstr "" +#: doc/guix.texi:3221 +msgid "The primary purpose of this operation is to facilitate inspection of archive contents coming from possibly untrusted substitute servers." +msgstr "Le but principal de cette opération est de faciliter l'inspection du contenu des archives venant de serveurs auxquels on ne fait potentiellement pas confiance." #. type: Plain text -#: doc/guix.texi:3115 -msgid "" -"GNU Guix provides several Scheme programming interfaces (APIs) to define, " -"build, and query packages. The first interface allows users to write high-" -"level package definitions. These definitions refer to familiar packaging " -"concepts, such as the name and version of a package, its build system, and " -"its dependencies. These definitions can then be turned into concrete build " -"actions." -msgstr "" +#: doc/guix.texi:3234 +msgid "GNU Guix provides several Scheme programming interfaces (APIs) to define, build, and query packages. The first interface allows users to write high-level package definitions. These definitions refer to familiar packaging concepts, such as the name and version of a package, its build system, and its dependencies. These definitions can then be turned into concrete build actions." +msgstr "GNU Guix fournit diverses interface de programmation Scheme (API) qui pour définir, construire et faire des requêtes sur des paquets. La première interface permet aux utilisateurs d'écrire des définitions de paquets de haut-niveau. Ces définitions se réfèrent à des concepts de création de paquets familiers, comme le nom et la version du paquet, son système de construction et ses dépendances. Ces définitions peuvent ensuite être transformées en actions concrètes lors de la construction." #. type: Plain text -#: doc/guix.texi:3121 -msgid "" -"Build actions are performed by the Guix daemon, on behalf of users. In a " -"standard setup, the daemon has write access to the store---the @file{/gnu/" -"store} directory---whereas users do not. The recommended setup also has the " -"daemon perform builds in chroots, under a specific build users, to minimize " -"interference with the rest of the system." -msgstr "" +#: doc/guix.texi:3240 +msgid "Build actions are performed by the Guix daemon, on behalf of users. In a standard setup, the daemon has write access to the store---the @file{/gnu/store} directory---whereas users do not. The recommended setup also has the daemon perform builds in chroots, under a specific build users, to minimize interference with the rest of the system." +msgstr "Les actions de construction sont effectuées par le démon Guix, pour le compte des utilisateurs. Dans un environnement standard, le démon possède les droits en écriture sur le dépôt — le répertoire @file{/gnu/store} — mais pas les utilisateurs. La configuration recommandée permet aussi au démon d'effectuer la construction dans des chroots, avec un utilisateur de construction spécifique pour minimiser les interférences avec le reste du système." #. type: Plain text -#: doc/guix.texi:3130 -msgid "" -"Lower-level APIs are available to interact with the daemon and the store. " -"To instruct the daemon to perform a build action, users actually provide it " -"with a @dfn{derivation}. A derivation is a low-level representation of the " -"build actions to be taken, and the environment in which they should occur---" -"derivations are to package definitions what assembly is to C programs. The " -"term ``derivation'' comes from the fact that build results @emph{derive} " -"from them." -msgstr "" +#: doc/guix.texi:3249 +msgid "Lower-level APIs are available to interact with the daemon and the store. To instruct the daemon to perform a build action, users actually provide it with a @dfn{derivation}. A derivation is a low-level representation of the build actions to be taken, and the environment in which they should occur---derivations are to package definitions what assembly is to C programs. The term ``derivation'' comes from the fact that build results @emph{derive} from them." +msgstr "Il y a des API de plus bas niveau pour interagir avec le démon et le dépôt. Pour demander au démon d'effectuer une action de construction, les utilisateurs lui donnent en fait une @dfn{dérivation}. Une dérivation est une représentation à bas-niveau des actions de construction à entreprendre et l'environnement dans lequel elles devraient avoir lieu — les dérivations sont aux définitions de paquets ce que l'assembleur est aux programmes C. Le terme de « dérivation » vient du fait que les résultats de la construction en @emph{dérivent}." #. type: Plain text -#: doc/guix.texi:3133 -msgid "" -"This chapter describes all these APIs in turn, starting from high-level " -"package definitions." -msgstr "" +#: doc/guix.texi:3252 +msgid "This chapter describes all these APIs in turn, starting from high-level package definitions." +msgstr "Ce chapitre décrit toutes ces API tour à tour, à partir des définitions de paquets à haut-niveau." #. type: Plain text -#: doc/guix.texi:3150 -msgid "" -"The high-level interface to package definitions is implemented in the " -"@code{(guix packages)} and @code{(guix build-system)} modules. As an " -"example, the package definition, or @dfn{recipe}, for the GNU Hello package " -"looks like this:" -msgstr "" +#: doc/guix.texi:3269 +msgid "The high-level interface to package definitions is implemented in the @code{(guix packages)} and @code{(guix build-system)} modules. As an example, the package definition, or @dfn{recipe}, for the GNU Hello package looks like this:" +msgstr "L'interface de haut-niveau pour les définitions de paquets est implémentée dans les modules @code{(guix packages)} et @code{(guix build-system)}. Par exemple, la définition du paquet, ou la @dfn{recette}, du paquet GNU Hello ressemble à cela :" #. type: example -#: doc/guix.texi:3158 +#: doc/guix.texi:3277 #, no-wrap msgid "" "(define-module (gnu packages hello)\n" @@ -8725,9 +7022,16 @@ msgid "" " #:use-module (gnu packages gawk))\n" "\n" msgstr "" +"(define-module (gnu packages hello)\n" +" #:use-module (guix packages)\n" +" #:use-module (guix download)\n" +" #:use-module (guix build-system gnu)\n" +" #:use-module (guix licenses)\n" +" #:use-module (gnu packages gawk))\n" +"\n" #. type: example -#: doc/guix.texi:3177 +#: doc/guix.texi:3296 #, no-wrap msgid "" "(define-public hello\n" @@ -8749,385 +7053,297 @@ msgid "" " (home-page \"http://www.gnu.org/software/hello/\")\n" " (license gpl3+)))\n" msgstr "" +"(define-public hello\n" +" (package\n" +" (name \"hello\")\n" +" (version \"2.10\")\n" +" (source (origin\n" +" (method url-fetch)\n" +" (uri (string-append \"mirror://gnu/hello/hello-\" version\n" +" \".tar.gz\"))\n" +" (sha256\n" +" (base32\n" +" \"0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i\"))))\n" +" (build-system gnu-build-system)\n" +" (arguments '(#:configure-flags '(\"--enable-silent-rules\")))\n" +" (inputs `((\"gawk\" ,gawk)))\n" +" (synopsis \"Hello, GNU world: An example GNU package\")\n" +" (description \"Guess what GNU Hello prints!\")\n" +" (home-page \"http://www.gnu.org/software/hello/\")\n" +" (license gpl3+)))\n" #. type: Plain text -#: doc/guix.texi:3187 -msgid "" -"Without being a Scheme expert, the reader may have guessed the meaning of " -"the various fields here. This expression binds the variable @code{hello} to " -"a @code{} object, which is essentially a record (@pxref{SRFI-9, " -"Scheme records,, guile, GNU Guile Reference Manual}). This package object " -"can be inspected using procedures found in the @code{(guix packages)} " -"module; for instance, @code{(package-name hello)} returns---surprise!---" -"@code{\"hello\"}." -msgstr "" +#: doc/guix.texi:3306 +msgid "Without being a Scheme expert, the reader may have guessed the meaning of the various fields here. This expression binds the variable @code{hello} to a @code{} object, which is essentially a record (@pxref{SRFI-9, Scheme records,, guile, GNU Guile Reference Manual}). This package object can be inspected using procedures found in the @code{(guix packages)} module; for instance, @code{(package-name hello)} returns---surprise!---@code{\"hello\"}." +msgstr "Sans être un expert Scheme, le lecteur peut comprendre la signification des différents champs présents. Cette expression lie la variable @code{hello} à un objet @code{}, qui est essentiellement un enregistrement (@pxref{SRFI-9, Scheme records,, guile, GNU Guile Reference Manual}). On peut inspecter cet objet de paquet avec les procédures qui se trouvent dans le module @code{(guix packages)} ; par exemple, @code{(package-name hello)} renvoie — oh surprise ! — @code{\"hello\"}." #. type: Plain text -#: doc/guix.texi:3191 -msgid "" -"With luck, you may be able to import part or all of the definition of the " -"package you are interested in from another repository, using the @code{guix " -"import} command (@pxref{Invoking guix import})." -msgstr "" +#: doc/guix.texi:3310 +msgid "With luck, you may be able to import part or all of the definition of the package you are interested in from another repository, using the @code{guix import} command (@pxref{Invoking guix import})." +msgstr "Avec un peu de chance, vous pourrez importer tout ou partie de la définition du paquet qui vous intéresse depuis un autre répertoire avec la commande @code{guix import} (@pxref{Invoking guix import})." #. type: Plain text -#: doc/guix.texi:3197 -msgid "" -"In the example above, @var{hello} is defined in a module of its own, " -"@code{(gnu packages hello)}. Technically, this is not strictly necessary, " -"but it is convenient to do so: all the packages defined in modules under " -"@code{(gnu packages @dots{})} are automatically known to the command-line " -"tools (@pxref{Package Modules})." -msgstr "" +#: doc/guix.texi:3316 +msgid "In the example above, @var{hello} is defined in a module of its own, @code{(gnu packages hello)}. Technically, this is not strictly necessary, but it is convenient to do so: all the packages defined in modules under @code{(gnu packages @dots{})} are automatically known to the command-line tools (@pxref{Package Modules})." +msgstr "Dans l'exemple précédent, @var{hello} est défini dans un module à part, @code{(gnu packages hello)}. Techniquement, cela n'est pas strictement nécessaire, mais c'est pratique : tous les paquets définis dans des modules sous @code{(gnu packages @dots{})} sont automatiquement connus des outils en ligne de commande (@pxref{Package Modules})." #. type: Plain text -#: doc/guix.texi:3199 +#: doc/guix.texi:3318 msgid "There are a few points worth noting in the above package definition:" -msgstr "" +msgstr "Il y a quelques points à remarquer dans la définition de paquet précédente :" #. type: itemize -#: doc/guix.texi:3206 -msgid "" -"The @code{source} field of the package is an @code{} object " -"(@pxref{origin Reference}, for the complete reference). Here, the @code{url-" -"fetch} method from @code{(guix download)} is used, meaning that the source " -"is a file to be downloaded over FTP or HTTP." -msgstr "" +#: doc/guix.texi:3325 +msgid "The @code{source} field of the package is an @code{} object (@pxref{origin Reference}, for the complete reference). Here, the @code{url-fetch} method from @code{(guix download)} is used, meaning that the source is a file to be downloaded over FTP or HTTP." +msgstr "Le champ @code{source} du paquet est un objet @code{} (@pxref{origin Reference}, pour la référence complète). Ici, on utilise la méthode @code{url-fetch} de @code{(guix download)}, ce qui signifie que la source est un fichier à télécharger par FTP ou HTTP." #. type: itemize -#: doc/guix.texi:3209 -msgid "" -"The @code{mirror://gnu} prefix instructs @code{url-fetch} to use one of the " -"GNU mirrors defined in @code{(guix download)}." -msgstr "" +#: doc/guix.texi:3328 +msgid "The @code{mirror://gnu} prefix instructs @code{url-fetch} to use one of the GNU mirrors defined in @code{(guix download)}." +msgstr "Le préfixe @code{mirror://gnu} demande à @code{url-fetch} d'utiliser l'un des miroirs GNU définis dans @code{(guix download)}." #. type: itemize -#: doc/guix.texi:3216 -msgid "" -"The @code{sha256} field specifies the expected SHA256 hash of the file being " -"downloaded. It is mandatory, and allows Guix to check the integrity of the " -"file. The @code{(base32 @dots{})} form introduces the base32 representation " -"of the hash. You can obtain this information with @code{guix download} " -"(@pxref{Invoking guix download}) and @code{guix hash} (@pxref{Invoking guix " -"hash})." -msgstr "" +#: doc/guix.texi:3335 +msgid "The @code{sha256} field specifies the expected SHA256 hash of the file being downloaded. It is mandatory, and allows Guix to check the integrity of the file. The @code{(base32 @dots{})} form introduces the base32 representation of the hash. You can obtain this information with @code{guix download} (@pxref{Invoking guix download}) and @code{guix hash} (@pxref{Invoking guix hash})." +msgstr "Le champ @code{sha256} spécifie le hash SHA256 attendu pour le fichier téléchargé. Il est requis et permet à Guix de vérifier l'intégrité du fichier. La forme @code{(base32 @dots{})} introduit a représentation en base32 du hash. Vous pouvez obtenir cette information avec @code{guix download} (@pxref{Invoking guix download}) et @code{guix hash} (@pxref{Invoking guix hash})." #. type: cindex -#: doc/guix.texi:3217 +#: doc/guix.texi:3336 #, no-wrap msgid "patches" -msgstr "" +msgstr "correctifs" #. type: itemize -#: doc/guix.texi:3221 -msgid "" -"When needed, the @code{origin} form can also have a @code{patches} field " -"listing patches to be applied, and a @code{snippet} field giving a Scheme " -"expression to modify the source code." -msgstr "" +#: doc/guix.texi:3340 +msgid "When needed, the @code{origin} form can also have a @code{patches} field listing patches to be applied, and a @code{snippet} field giving a Scheme expression to modify the source code." +msgstr "Lorsque cela est requis, la forme @code{origin} peut aussi avec un champ @code{patches} qui liste les correctifs à appliquer et un champ @code{snippet} qui donne une expression Scheme pour modifier le code source." #. type: cindex -#: doc/guix.texi:3223 +#: doc/guix.texi:3342 #, no-wrap msgid "GNU Build System" -msgstr "" +msgstr "Système de construction GNU" #. type: itemize -#: doc/guix.texi:3229 -msgid "" -"The @code{build-system} field specifies the procedure to build the package " -"(@pxref{Build Systems}). Here, @var{gnu-build-system} represents the " -"familiar GNU Build System, where packages may be configured, built, and " -"installed with the usual @code{./configure && make && make check && make " -"install} command sequence." -msgstr "" +#: doc/guix.texi:3348 +msgid "The @code{build-system} field specifies the procedure to build the package (@pxref{Build Systems}). Here, @var{gnu-build-system} represents the familiar GNU Build System, where packages may be configured, built, and installed with the usual @code{./configure && make && make check && make install} command sequence." +msgstr "Le champ @code{build-system} spécifie la procédure pour construire le paquet (@pxref{Build Systems}). Ici, @var{gnu-build-system} représente le système de construction GNU familier, où les paquets peuvent être configurés, construits et installés avec la séquence @code{./configure && make && make check && make install} habituelle." #. type: itemize -#: doc/guix.texi:3235 -msgid "" -"The @code{arguments} field specifies options for the build system " -"(@pxref{Build Systems}). Here it is interpreted by @var{gnu-build-system} " -"as a request run @file{configure} with the @code{--enable-silent-rules} flag." -msgstr "" +#: doc/guix.texi:3354 +msgid "The @code{arguments} field specifies options for the build system (@pxref{Build Systems}). Here it is interpreted by @var{gnu-build-system} as a request run @file{configure} with the @code{--enable-silent-rules} flag." +msgstr "Le champ @code{arguments} spécifie des options pour le système de construction (@pxref{Build Systems}). Ici il est interprété par @var{gnu-build-system} comme une demande de lancer @file{configure} avec le drapeau @code{--enable-silent-rules}." #. type: findex -#: doc/guix.texi:3236 doc/guix.texi:3239 +#: doc/guix.texi:3355 doc/guix.texi:3358 #, no-wrap msgid "quote" -msgstr "" +msgstr "quote" #. type: cindex -#: doc/guix.texi:3237 +#: doc/guix.texi:3356 #, no-wrap msgid "quoting" -msgstr "" +msgstr "quoting" #. type: findex -#: doc/guix.texi:3238 +#: doc/guix.texi:3357 #, no-wrap msgid "'" -msgstr "" +msgstr "'" #. type: itemize -#: doc/guix.texi:3247 -msgid "" -"What about these quote (@code{'}) characters? They are Scheme syntax to " -"introduce a literal list; @code{'} is synonymous with @code{quote}. " -"@xref{Expression Syntax, quoting,, guile, GNU Guile Reference Manual}, for " -"details. Here the value of the @code{arguments} field is a list of " -"arguments passed to the build system down the road, as with @code{apply} " -"(@pxref{Fly Evaluation, @code{apply},, guile, GNU Guile Reference Manual})." -msgstr "" +#: doc/guix.texi:3366 +msgid "What about these quote (@code{'}) characters? They are Scheme syntax to introduce a literal list; @code{'} is synonymous with @code{quote}. @xref{Expression Syntax, quoting,, guile, GNU Guile Reference Manual}, for details. Here the value of the @code{arguments} field is a list of arguments passed to the build system down the road, as with @code{apply} (@pxref{Fly Evaluation, @code{apply},, guile, GNU Guile Reference Manual})." +msgstr "Que sont ces apostrophes (@code{'}) ? C'est de la syntaxe Scheme pour introduire une liste ; @code{'} est synonyme de la fonction @code{quote}. @xref{Expression Syntax, quoting,, guile, GNU Guile Reference Manual}, pour des détails. Ice la valeur du champ @code{arguments} est une liste d'arguments passés au système de construction plus tard, comme avec @code{apply} (@pxref{Fly Evaluation, @code{apply},, guile, GNU Guile Reference Manual})." #. type: itemize -#: doc/guix.texi:3253 -msgid "" -"The hash-colon (@code{#:}) sequence defines a Scheme @dfn{keyword} " -"(@pxref{Keywords,,, guile, GNU Guile Reference Manual}), and @code{#:" -"configure-flags} is a keyword used to pass a keyword argument to the build " -"system (@pxref{Coding With Keywords,,, guile, GNU Guile Reference Manual})." -msgstr "" +#: doc/guix.texi:3372 +msgid "The hash-colon (@code{#:}) sequence defines a Scheme @dfn{keyword} (@pxref{Keywords,,, guile, GNU Guile Reference Manual}), and @code{#:configure-flags} is a keyword used to pass a keyword argument to the build system (@pxref{Coding With Keywords,,, guile, GNU Guile Reference Manual})." +msgstr "La séquence dièse-deux-points (@code{#:}) définie un @dfn{mot-clef} Scheme (@pxref{Keywords,,, guile, GNU Guile Reference Manual}), et @code{#:configure-flags} est un mot-clef utilisé pour passer un argument au système de construction (@pxref{Coding With Keywords,,, guile, GNU Guile Reference Manual})." #. type: itemize -#: doc/guix.texi:3259 -msgid "" -"The @code{inputs} field specifies inputs to the build process---i.e., build-" -"time or run-time dependencies of the package. Here, we define an input " -"called @code{\"gawk\"} whose value is that of the @var{gawk} variable; " -"@var{gawk} is itself bound to a @code{} object." -msgstr "" +#: doc/guix.texi:3378 +msgid "The @code{inputs} field specifies inputs to the build process---i.e., build-time or run-time dependencies of the package. Here, we define an input called @code{\"gawk\"} whose value is that of the @var{gawk} variable; @var{gawk} is itself bound to a @code{} object." +msgstr "Le champ @code{inputs} spécifie les entrées du processus de construction — c.-à-d.@: les dépendances à la construction ou à l'exécution du paquet. Ici on définie une entrée nommée @code{\"gawk\"} dont la valeur est la variable @var{gawk} ; @var{gawk} est elle-même liée à un objet @code{}." #. type: cindex -#: doc/guix.texi:3260 +#: doc/guix.texi:3379 #, no-wrap msgid "backquote (quasiquote)" -msgstr "" +msgstr "accent grave (quasiquote)" #. type: findex -#: doc/guix.texi:3261 +#: doc/guix.texi:3380 #, no-wrap msgid "`" -msgstr "" +msgstr "`" #. type: findex -#: doc/guix.texi:3262 +#: doc/guix.texi:3381 #, no-wrap msgid "quasiquote" -msgstr "" +msgstr "quasiquote" #. type: cindex -#: doc/guix.texi:3263 +#: doc/guix.texi:3382 #, no-wrap msgid "comma (unquote)" -msgstr "" +msgstr "virgule (unquote)" #. type: findex -#: doc/guix.texi:3264 +#: doc/guix.texi:3383 #, no-wrap msgid "," -msgstr "" +msgstr "," #. type: findex -#: doc/guix.texi:3265 +#: doc/guix.texi:3384 #, no-wrap msgid "unquote" -msgstr "" +msgstr "unquote" #. type: findex -#: doc/guix.texi:3266 +#: doc/guix.texi:3385 #, no-wrap msgid ",@@" -msgstr "" +msgstr ",@@" #. type: findex -#: doc/guix.texi:3267 +#: doc/guix.texi:3386 #, no-wrap msgid "unquote-splicing" -msgstr "" +msgstr "unquote-splicing" #. type: itemize -#: doc/guix.texi:3273 -msgid "" -"Again, @code{`} (a backquote, synonymous with @code{quasiquote}) allows us " -"to introduce a literal list in the @code{inputs} field, while @code{,} (a " -"comma, synonymous with @code{unquote}) allows us to insert a value in that " -"list (@pxref{Expression Syntax, unquote,, guile, GNU Guile Reference " -"Manual})." -msgstr "" +#: doc/guix.texi:3392 +msgid "Again, @code{`} (a backquote, synonymous with @code{quasiquote}) allows us to introduce a literal list in the @code{inputs} field, while @code{,} (a comma, synonymous with @code{unquote}) allows us to insert a value in that list (@pxref{Expression Syntax, unquote,, guile, GNU Guile Reference Manual})." +msgstr "De nouveau, @code{`} (un accent grave, synonyme de la fonction @code{quasiquote}) nous permet d'introduire une liste litérale dans le champ @code{inputs}, tandis que @code{,} (une virgule, synonyme de la fonction @code{unquote}) nous permet d'insérer une valeur dans cette liste (@pxref{Expression Syntax, unquote,, guile, GNU Guile Reference Manual})." #. type: itemize -#: doc/guix.texi:3277 -msgid "" -"Note that GCC, Coreutils, Bash, and other essential tools do not need to be " -"specified as inputs here. Instead, @var{gnu-build-system} takes care of " -"ensuring that they are present (@pxref{Build Systems})." -msgstr "" +#: doc/guix.texi:3396 +msgid "Note that GCC, Coreutils, Bash, and other essential tools do not need to be specified as inputs here. Instead, @var{gnu-build-system} takes care of ensuring that they are present (@pxref{Build Systems})." +msgstr "Remarquez que GCC, Coreutils, Bash et les autres outils essentiels n'ont pas besoin d'être spécifiés en tant qu'entrées ici. À la place, le @var{gnu-build-system} est en charge de s'assurer qu'ils sont présents (@pxref{Build Systems})." #. type: itemize -#: doc/guix.texi:3281 -msgid "" -"However, any other dependencies need to be specified in the @code{inputs} " -"field. Any dependency not specified here will simply be unavailable to the " -"build process, possibly leading to a build failure." -msgstr "" +#: doc/guix.texi:3400 +msgid "However, any other dependencies need to be specified in the @code{inputs} field. Any dependency not specified here will simply be unavailable to the build process, possibly leading to a build failure." +msgstr "Cependant, toutes les autres dépendances doivent être spécifiées dans le champ @code{inputs}. Toute dépendance qui ne serait pas spécifiée ici sera simplement indisponible pour le processus de construction, ce qui peut mener à un échec de la construction." #. type: Plain text -#: doc/guix.texi:3284 +#: doc/guix.texi:3403 msgid "@xref{package Reference}, for a full description of possible fields." -msgstr "" +msgstr "@xref{package Reference}, pour une description complète des champs possibles." #. type: Plain text -#: doc/guix.texi:3295 -msgid "" -"Once a package definition is in place, the package may actually be built " -"using the @code{guix build} command-line tool (@pxref{Invoking guix build}), " -"troubleshooting any build failures you encounter (@pxref{Debugging Build " -"Failures}). You can easily jump back to the package definition using the " -"@command{guix edit} command (@pxref{Invoking guix edit}). @xref{Packaging " -"Guidelines}, for more information on how to test package definitions, and " -"@ref{Invoking guix lint}, for information on how to check a definition for " -"style conformance." -msgstr "" +#: doc/guix.texi:3414 +msgid "Once a package definition is in place, the package may actually be built using the @code{guix build} command-line tool (@pxref{Invoking guix build}), troubleshooting any build failures you encounter (@pxref{Debugging Build Failures}). You can easily jump back to the package definition using the @command{guix edit} command (@pxref{Invoking guix edit}). @xref{Packaging Guidelines}, for more information on how to test package definitions, and @ref{Invoking guix lint}, for information on how to check a definition for style conformance." +msgstr "Lorsqu'une définition de paquet est en place, le paquet peut enfin être construit avec l'outil en ligne de commande @code{guix build} (@pxref{Invoking guix build}), pour résoudre les échecs de construction que vous pourriez rencontrer (@pxref{Debugging Build Failures}). Vous pouvez aisément revenir à la définition du paquet avec la commande @command{guix edit} (@pxref{Invoking guix edit}). @xref{Packaging Guidelines}, pour plus d'inforamtions sur la manière de tester des définitions de paquets et @ref{Invoking guix lint}, pour des informations sur la manière de vérifier que la définition réspecte les conventions de style." #. type: vindex -#: doc/guix.texi:3295 +#: doc/guix.texi:3414 #, no-wrap msgid "GUIX_PACKAGE_PATH" -msgstr "" +msgstr "GUIX_PACKAGE_PATH" #. type: Plain text -#: doc/guix.texi:3299 -msgid "" -"Lastly, @pxref{Package Modules}, for information on how to extend the " -"distribution by adding your own package definitions to " -"@code{GUIX_PACKAGE_PATH}." -msgstr "" +#: doc/guix.texi:3418 +msgid "Lastly, @pxref{Package Modules}, for information on how to extend the distribution by adding your own package definitions to @code{GUIX_PACKAGE_PATH}." +msgstr "Enfin, @pxref{Package Modules} pour des informations sur la manière d'étendre la distribution en ajoutant vos propres définitions de paquets dans @code{GUIX_PACKAGE_PATH}." #. type: Plain text -#: doc/guix.texi:3303 -msgid "" -"Finally, updating the package definition to a new upstream version can be " -"partly automated by the @command{guix refresh} command (@pxref{Invoking guix " -"refresh})." -msgstr "" +#: doc/guix.texi:3422 +msgid "Finally, updating the package definition to a new upstream version can be partly automated by the @command{guix refresh} command (@pxref{Invoking guix refresh})." +msgstr "Finalement, la mise à jour de la définition du paquet à une nouvelle version amont peut en partie s'automatiser avec la commande @command{guix refresh} (@pxref{Invoking guix refresh})." #. type: Plain text -#: doc/guix.texi:3309 -msgid "" -"Behind the scenes, a derivation corresponding to the @code{} object " -"is first computed by the @code{package-derivation} procedure. That " -"derivation is stored in a @code{.drv} file under @file{/gnu/store}. The " -"build actions it prescribes may then be realized by using the @code{build-" -"derivations} procedure (@pxref{The Store})." -msgstr "" +#: doc/guix.texi:3428 +msgid "Behind the scenes, a derivation corresponding to the @code{} object is first computed by the @code{package-derivation} procedure. That derivation is stored in a @code{.drv} file under @file{/gnu/store}. The build actions it prescribes may then be realized by using the @code{build-derivations} procedure (@pxref{The Store})." +msgstr "Sous le capot, une dérivation qui correspond à un objet @code{} est d'abord calculé par la procédure @code{package-derivation}. Cette dérivation est stockée dans un fichier @code{.drv} dans @file{/gnu/store}. Les actions de construction qu'il prescrit peuvent ensuite être réalisées par la procédure @code{build-derivation} (@pxref{The Store})." #. type: deffn -#: doc/guix.texi:3310 +#: doc/guix.texi:3429 #, no-wrap msgid "{Scheme Procedure} package-derivation @var{store} @var{package} [@var{system}]" -msgstr "" +msgstr "{Procédure Scheme} package-derivation @var{dépôt} @var{paquet} [@var{système}]" #. type: deffn -#: doc/guix.texi:3313 -msgid "" -"Return the @code{} object of @var{package} for @var{system} " -"(@pxref{Derivations})." -msgstr "" +#: doc/guix.texi:3432 +msgid "Return the @code{} object of @var{package} for @var{system} (@pxref{Derivations})." +msgstr "Renvoie l'objet @code{} du @var{paquet} pour le @var{système} (@pxref{Derivations})." #. type: deffn -#: doc/guix.texi:3319 -msgid "" -"@var{package} must be a valid @code{} object, and @var{system} must " -"be a string denoting the target system type---e.g., @code{\"x86_64-linux\"} " -"for an x86_64 Linux-based GNU system. @var{store} must be a connection to " -"the daemon, which operates on the store (@pxref{The Store})." -msgstr "" +#: doc/guix.texi:3438 +msgid "@var{package} must be a valid @code{} object, and @var{system} must be a string denoting the target system type---e.g., @code{\"x86_64-linux\"} for an x86_64 Linux-based GNU system. @var{store} must be a connection to the daemon, which operates on the store (@pxref{The Store})." +msgstr "@var{paquet} doit être un objet @code{} valide et @var{système} une chaîne indiquant le type de système cible — p.ex.@: @code{\"x86_64-linux\"} pour un système GNU x86_64 basé sur Linux. @var{dépôt} doit être une connexion au démon, qui opère sur les dépôt (@pxref{The Store})." #. type: Plain text -#: doc/guix.texi:3325 -msgid "" -"Similarly, it is possible to compute a derivation that cross-builds a " -"package for some other system:" -msgstr "" +#: doc/guix.texi:3444 +msgid "Similarly, it is possible to compute a derivation that cross-builds a package for some other system:" +msgstr "De manière identique, il est possible de calculer une dérivation qui effectue une compilation croisée d'un paquet pour un autre système :" #. type: deffn -#: doc/guix.texi:3326 +#: doc/guix.texi:3445 #, no-wrap msgid "{Scheme Procedure} package-cross-derivation @var{store} @" -msgstr "" +msgstr "{Procédure Scheme} package-cross-derivation @var{dépôt} @" #. type: deffn -#: doc/guix.texi:3330 -msgid "" -"@var{package} @var{target} [@var{system}] Return the @code{} " -"object of @var{package} cross-built from @var{system} to @var{target}." -msgstr "" +#: doc/guix.texi:3449 +msgid "@var{package} @var{target} [@var{system}] Return the @code{} object of @var{package} cross-built from @var{system} to @var{target}." +msgstr "@var{paquet} @var{cible} [@var{système}] renvoie l'objet @code{} duof @var{paquet} construit depuis @var{système} pour @var{cible}." #. type: deffn -#: doc/guix.texi:3335 -msgid "" -"@var{target} must be a valid GNU triplet denoting the target hardware and " -"operating system, such as @code{\"mips64el-linux-gnu\"} " -"(@pxref{Configuration Names, GNU configuration triplets,, configure, GNU " -"Configure and Build System})." -msgstr "" +#: doc/guix.texi:3454 +msgid "@var{target} must be a valid GNU triplet denoting the target hardware and operating system, such as @code{\"mips64el-linux-gnu\"} (@pxref{Configuration Names, GNU configuration triplets,, configure, GNU Configure and Build System})." +msgstr "@var{cible} doit être un triplet GNU valide indiquant le matériel cible et le système d'exploitation, comme @code{\"mips64el-linux-gnu\"} (@pxref{Configuration Names, GNU configuration triplets,, configure, GNU Configure and Build System})." #. type: cindex -#: doc/guix.texi:3337 +#: doc/guix.texi:3456 #, no-wrap msgid "package transformations" -msgstr "" +msgstr "transformations de paquets" #. type: cindex -#: doc/guix.texi:3338 +#: doc/guix.texi:3457 #, no-wrap msgid "input rewriting" -msgstr "" +msgstr "réécriture d'entrées" #. type: cindex -#: doc/guix.texi:3339 +#: doc/guix.texi:3458 #, no-wrap msgid "dependency tree rewriting" -msgstr "" +msgstr "réécriture de l'arbre des dépendances" #. type: Plain text -#: doc/guix.texi:3343 -msgid "" -"Packages can be manipulated in arbitrary ways. An example of a useful " -"transformation is @dfn{input rewriting}, whereby the dependency tree of a " -"package is rewritten by replacing specific inputs by others:" -msgstr "" +#: doc/guix.texi:3462 +msgid "Packages can be manipulated in arbitrary ways. An example of a useful transformation is @dfn{input rewriting}, whereby the dependency tree of a package is rewritten by replacing specific inputs by others:" +msgstr "On peut manipuler les paquets de manière arbitraire. Une transformation utile est par exemple la @dfn{réécriture d'entrées} où l'arbre des dépendances d'un paquet est réécrit en replaçant des entrées spécifiques par d'autres :" #. type: deffn -#: doc/guix.texi:3344 +#: doc/guix.texi:3463 #, no-wrap msgid "{Scheme Procedure} package-input-rewriting @var{replacements} @" -msgstr "" +msgstr "{Procédure Scheme} package-input-rewriting @var{remplacements} @" #. type: deffn -#: doc/guix.texi:3351 -msgid "" -"[@var{rewrite-name}] Return a procedure that, when passed a package, " -"replaces its direct and indirect dependencies (but not its implicit inputs) " -"according to @var{replacements}. @var{replacements} is a list of package " -"pairs; the first element of each pair is the package to replace, and the " -"second one is the replacement." -msgstr "" +#: doc/guix.texi:3470 +msgid "[@var{rewrite-name}] Return a procedure that, when passed a package, replaces its direct and indirect dependencies (but not its implicit inputs) according to @var{replacements}. @var{replacements} is a list of package pairs; the first element of each pair is the package to replace, and the second one is the replacement." +msgstr "[@var{nom-réécrit}] Renvoie une procédure qui, lorsqu'on lui donne un paquet, remplace des dépendances directes et indirectes (mais pas ses entrées implicites) en fonction de @var{remplacements}. @var{remplacements} est une liste de paires de paquets ; le premier élément de chaque pair est le paquet à remplacer, le second son remplaçant." #. type: deffn -#: doc/guix.texi:3354 -msgid "" -"Optionally, @var{rewrite-name} is a one-argument procedure that takes the " -"name of a package and returns its new name after rewrite." -msgstr "" +#: doc/guix.texi:3473 +msgid "Optionally, @var{rewrite-name} is a one-argument procedure that takes the name of a package and returns its new name after rewrite." +msgstr "De manière facultative, @var{nom-réécrit} est une procédure à un argument qui prend le nom d'un paquet et renvoie son nouveau nom après l'avoir réécrit." #. type: Plain text -#: doc/guix.texi:3358 +#: doc/guix.texi:3477 msgid "Consider this example:" -msgstr "" +msgstr "Regardez cet exemple :" #. type: example -#: doc/guix.texi:3364 +#: doc/guix.texi:3483 #, no-wrap msgid "" "(define libressl-instead-of-openssl\n" @@ -9136,2170 +7352,1616 @@ msgid "" " (package-input-rewriting `((,openssl . ,libressl))))\n" "\n" msgstr "" +"(define libressl-instead-of-openssl\n" +" ;; Cette procédure remplace OPENSSL par LIBRESSL,\n" +" ;; récursivement.\n" +" (package-input-rewriting `((,openssl . ,libressl))))\n" +"\n" #. type: example -#: doc/guix.texi:3367 +#: doc/guix.texi:3486 #, no-wrap msgid "" "(define git-with-libressl\n" " (libressl-instead-of-openssl git))\n" msgstr "" +"(define git-with-libressl\n" +" (libressl-instead-of-openssl git))\n" #. type: Plain text -#: doc/guix.texi:3375 -msgid "" -"Here we first define a rewriting procedure that replaces @var{openssl} with " -"@var{libressl}. Then we use it to define a @dfn{variant} of the @var{git} " -"package that uses @var{libressl} instead of @var{openssl}. This is exactly " -"what the @option{--with-input} command-line option does (@pxref{Package " -"Transformation Options, @option{--with-input}})." -msgstr "" +#: doc/guix.texi:3494 +msgid "Here we first define a rewriting procedure that replaces @var{openssl} with @var{libressl}. Then we use it to define a @dfn{variant} of the @var{git} package that uses @var{libressl} instead of @var{openssl}. This is exactly what the @option{--with-input} command-line option does (@pxref{Package Transformation Options, @option{--with-input}})." +msgstr "Ici nous définissons d'abord une procédure de réécriture qui remplace @var{openssl} par @var{libressl}. Ensuite nous l'utilisons pour définir une @dfn{variante} du paquet @var{git} qui utilise @var{libressl} plutôt que @var{openssl}. cela est exactement ce que l'option en ligne de commande @option{--with-input} fait (@pxref{Package Transformation Options, @option{--with-input}})." #. type: Plain text -#: doc/guix.texi:3379 -msgid "" -"A more generic procedure to rewrite a package dependency graph is " -"@code{package-mapping}: it supports arbitrary changes to nodes in the graph." -msgstr "" +#: doc/guix.texi:3498 +msgid "A more generic procedure to rewrite a package dependency graph is @code{package-mapping}: it supports arbitrary changes to nodes in the graph." +msgstr "Une procédure plus générique pour réécrire un graphe de dépendance d'un paquet est @code{package-mapping} : elle supporte n'importe quel changement dans les nœuds du graphe." #. type: deffn -#: doc/guix.texi:3380 +#: doc/guix.texi:3499 #, no-wrap msgid "{Scheme Procedure} package-mapping @var{proc} [@var{cut?}]" -msgstr "" +msgstr "{Procédure Scheme} package-mapping @var{proc} [@var{cut?}]" #. type: deffn -#: doc/guix.texi:3384 -msgid "" -"Return a procedure that, given a package, applies @var{proc} to all the " -"packages depended on and returns the resulting package. The procedure stops " -"recursion when @var{cut?} returns true for a given package." -msgstr "" +#: doc/guix.texi:3503 +msgid "Return a procedure that, given a package, applies @var{proc} to all the packages depended on and returns the resulting package. The procedure stops recursion when @var{cut?} returns true for a given package." +msgstr "Renvoie une procédure qui, avec un paquet, applique @var{proc} sur tous les paquets dont il dépend et renvoie le paquet qui en résulte. La procédure arrête la récursion là où @var{cut?} renvoie vrai pour un paquet donné." #. type: subsection -#: doc/guix.texi:3393 +#: doc/guix.texi:3512 #, no-wrap msgid "@code{package} Reference" -msgstr "" +msgstr "Référence de @code{package}" #. type: Plain text -#: doc/guix.texi:3397 -msgid "" -"This section summarizes all the options available in @code{package} " -"declarations (@pxref{Defining Packages})." -msgstr "" +#: doc/guix.texi:3516 +msgid "This section summarizes all the options available in @code{package} declarations (@pxref{Defining Packages})." +msgstr "Cette section résume toutes les options disponibles dans les déclarations @code{package} (@pxref{Defining Packages})." #. type: deftp -#: doc/guix.texi:3398 +#: doc/guix.texi:3517 #, no-wrap msgid "{Data Type} package" -msgstr "" +msgstr "{Type de donnée} package" #. type: deftp -#: doc/guix.texi:3400 +#: doc/guix.texi:3519 msgid "This is the data type representing a package recipe." -msgstr "" +msgstr "C'est le type de donnée représentant une recette de paquets" #. type: table -#: doc/guix.texi:3404 +#: doc/guix.texi:3523 msgid "The name of the package, as a string." -msgstr "" +msgstr "Le nom du paquet, comme une chaîne de caractères." #. type: code{#1} -#: doc/guix.texi:3405 +#: doc/guix.texi:3524 #, no-wrap msgid "version" -msgstr "" +msgstr "version" #. type: table -#: doc/guix.texi:3407 +#: doc/guix.texi:3526 msgid "The version of the package, as a string." -msgstr "" +msgstr "La version du paquet, comme une chaîne de caractères." #. type: code{#1} -#: doc/guix.texi:3408 doc/guix.texi:6743 doc/guix.texi:9281 doc/guix.texi:9569 +#: doc/guix.texi:3527 doc/guix.texi:6927 doc/guix.texi:9509 doc/guix.texi:9797 #, no-wrap msgid "source" -msgstr "" +msgstr "source" #. type: table -#: doc/guix.texi:3415 -msgid "" -"An object telling how the source code for the package should be acquired. " -"Most of the time, this is an @code{origin} object, which denotes a file " -"fetched from the Internet (@pxref{origin Reference}). It can also be any " -"other ``file-like'' object such as a @code{local-file}, which denotes a file " -"from the local file system (@pxref{G-Expressions, @code{local-file}})." -msgstr "" +#: doc/guix.texi:3534 +msgid "An object telling how the source code for the package should be acquired. Most of the time, this is an @code{origin} object, which denotes a file fetched from the Internet (@pxref{origin Reference}). It can also be any other ``file-like'' object such as a @code{local-file}, which denotes a file from the local file system (@pxref{G-Expressions, @code{local-file}})." +msgstr "Un objet qui indique comment le code source du paquet devrait être récupéré. La plupart du temps, c'est un objet @code{origin} qui indique un fichier récupéré depuis internet (@pxref{origin Reference}). Il peut aussi s'agir de tout autre objet ``simili-fichier'' comme un @code{local-file} qui indique un fichier du système de fichier local (@pxref{G-Expressions, @code{local-file}})." #. type: code{#1} -#: doc/guix.texi:3416 +#: doc/guix.texi:3535 #, no-wrap msgid "build-system" -msgstr "" +msgstr "build-system" #. type: table -#: doc/guix.texi:3419 -msgid "" -"The build system that should be used to build the package (@pxref{Build " -"Systems})." -msgstr "" +#: doc/guix.texi:3538 +msgid "The build system that should be used to build the package (@pxref{Build Systems})." +msgstr "Le système de construction qui devrait être utilisé pour construire le paquet (@pxref{Build Systems})." #. type: item -#: doc/guix.texi:3420 doc/guix.texi:11018 +#: doc/guix.texi:3539 doc/guix.texi:11285 #, no-wrap msgid "@code{arguments} (default: @code{'()})" -msgstr "" +msgstr "@code{arguments} (par défaut : @code{'()})" #. type: table -#: doc/guix.texi:3423 -msgid "" -"The arguments that should be passed to the build system. This is a list, " -"typically containing sequential keyword-value pairs." -msgstr "" +#: doc/guix.texi:3542 +msgid "The arguments that should be passed to the build system. This is a list, typically containing sequential keyword-value pairs." +msgstr "Les arguments à passer au système de construction. C'est une liste qui contient typiquement une séquence de paires de clefs-valeurs." #. type: item -#: doc/guix.texi:3424 +#: doc/guix.texi:3543 #, no-wrap msgid "@code{inputs} (default: @code{'()})" -msgstr "" +msgstr "@code{inputs} (par défaut : @code{'()})" #. type: itemx -#: doc/guix.texi:3425 +#: doc/guix.texi:3544 #, no-wrap msgid "@code{native-inputs} (default: @code{'()})" -msgstr "" +msgstr "@code{native-inputs} (par défaut : @code{'()})" #. type: itemx -#: doc/guix.texi:3426 +#: doc/guix.texi:3545 #, no-wrap msgid "@code{propagated-inputs} (default: @code{'()})" -msgstr "" +msgstr "@code{propagated-inputs} (par défaut : @code{'()})" #. type: cindex -#: doc/guix.texi:3427 +#: doc/guix.texi:3546 #, no-wrap msgid "inputs, of packages" -msgstr "" +msgstr "entrées, des paquets" #. type: table -#: doc/guix.texi:3435 -msgid "" -"These fields list dependencies of the package. Each one is a list of " -"tuples, where each tuple has a label for the input (a string) as its first " -"element, a package, origin, or derivation as its second element, and " -"optionally the name of the output thereof that should be used, which " -"defaults to @code{\"out\"} (@pxref{Packages with Multiple Outputs}, for more " -"on package outputs). For example, the list below specifies three inputs:" -msgstr "" +#: doc/guix.texi:3554 +msgid "These fields list dependencies of the package. Each one is a list of tuples, where each tuple has a label for the input (a string) as its first element, a package, origin, or derivation as its second element, and optionally the name of the output thereof that should be used, which defaults to @code{\"out\"} (@pxref{Packages with Multiple Outputs}, for more on package outputs). For example, the list below specifies three inputs:" +msgstr "Ces champs listent les dépendances du paquet. Chacune est une liste de tuples, où chaque tuple a une étiquette pour une entrée (une chaîne de caractères) comme premier élément, un paquet, une origine ou une dérivation comme deuxième élément et éventuellement le nom d'une sortie à utiliser qui est @code{\"out\"} par défaut (@pxref{Packages with Multiple Outputs}, pour plus d'informations sur les sorties des paquets). Par exemple, la liste suivante spécifie trois entrées :" #. type: example -#: doc/guix.texi:3440 +#: doc/guix.texi:3559 #, no-wrap msgid "" "`((\"libffi\" ,libffi)\n" " (\"libunistring\" ,libunistring)\n" " (\"glib:bin\" ,glib \"bin\")) ;the \"bin\" output of Glib\n" msgstr "" +"`((\"libffi\" ,libffi)\n" +" (\"libunistring\" ,libunistring)\n" +" (\"glib:bin\" ,glib \"bin\")) ;la sortie \"bin\" de Glib\n" #. type: cindex -#: doc/guix.texi:3442 +#: doc/guix.texi:3561 #, no-wrap msgid "cross compilation, package dependencies" -msgstr "" +msgstr "compilation croisée, dépendances des paquets" #. type: table -#: doc/guix.texi:3448 -msgid "" -"The distinction between @code{native-inputs} and @code{inputs} is necessary " -"when considering cross-compilation. When cross-compiling, dependencies " -"listed in @code{inputs} are built for the @emph{target} architecture; " -"conversely, dependencies listed in @code{native-inputs} are built for the " -"architecture of the @emph{build} machine." -msgstr "" +#: doc/guix.texi:3567 +msgid "The distinction between @code{native-inputs} and @code{inputs} is necessary when considering cross-compilation. When cross-compiling, dependencies listed in @code{inputs} are built for the @emph{target} architecture; conversely, dependencies listed in @code{native-inputs} are built for the architecture of the @emph{build} machine." +msgstr "La distinction entre @code{native-inputs} et @code{inputs} est nécessaire lorsqu'on considère la compilation croisée. Lors d'une compilation croisée, les dépendances listées dans @code{inputs} sont construites pour l'architecture @emph{cible} ; inversement, les dépendances listées dans @code{native-inputs} sont construites pour l'architecture de la machine de @emph{construction}." #. type: table -#: doc/guix.texi:3453 -msgid "" -"@code{native-inputs} is typically used to list tools needed at build time, " -"but not at run time, such as Autoconf, Automake, pkg-config, Gettext, or " -"Bison. @command{guix lint} can report likely mistakes in this area " -"(@pxref{Invoking guix lint})." -msgstr "" +#: doc/guix.texi:3572 +msgid "@code{native-inputs} is typically used to list tools needed at build time, but not at run time, such as Autoconf, Automake, pkg-config, Gettext, or Bison. @command{guix lint} can report likely mistakes in this area (@pxref{Invoking guix lint})." +msgstr "@code{native-inputs} est typiquement utilisé pour lister les outils requis à la construction mais pas à l'exécution, comme Autoconf, Automake, pkg-config, Gettext ou Bison. @command{guix lint} peut rapporter des erreurs de ce type (@pxref{Invoking guix lint})." #. type: anchor{#1} -#: doc/guix.texi:3460 +#: doc/guix.texi:3579 msgid "package-propagated-inputs" -msgstr "" +msgstr "package-propagated-inputs" #. type: table -#: doc/guix.texi:3460 -msgid "" -"Lastly, @code{propagated-inputs} is similar to @code{inputs}, but the " -"specified packages will be automatically installed alongside the package " -"they belong to (@pxref{package-cmd-propagated-inputs, @command{guix " -"package}}, for information on how @command{guix package} deals with " -"propagated inputs.)" -msgstr "" +#: doc/guix.texi:3579 +msgid "Lastly, @code{propagated-inputs} is similar to @code{inputs}, but the specified packages will be automatically installed alongside the package they belong to (@pxref{package-cmd-propagated-inputs, @command{guix package}}, for information on how @command{guix package} deals with propagated inputs.)" +msgstr "Enfin, @code{propagated-inputs} est similaire à @code{inputs}, mais les paquets spécifiés seront automatiquement installés avec le paquet auquel ils appartiennent (@pxref{package-cmd-propagated-inputs, @command{guix package}}, pour des informations sur la manière dont @command{guix package} traite les entrées propagées)." #. type: table -#: doc/guix.texi:3464 -msgid "" -"For example this is necessary when a C/C++ library needs headers of another " -"library to compile, or when a pkg-config file refers to another one @i{via} " -"its @code{Requires} field." -msgstr "" +#: doc/guix.texi:3583 +msgid "For example this is necessary when a C/C++ library needs headers of another library to compile, or when a pkg-config file refers to another one @i{via} its @code{Requires} field." +msgstr "Par exemple cela est nécessaire lorsque des bibliothèques C/C++ ont besoin d'en-têtes d'une autre bibliothèque pour être compilé ou lorsqu'un fichier pkg-config se rapporte à un autre @i{via} son champ @code{Requires}." #. type: table -#: doc/guix.texi:3471 -msgid "" -"Another example where @code{propagated-inputs} is useful is for languages " -"that lack a facility to record the run-time search path akin to the " -"@code{RUNPATH} of ELF files; this includes Guile, Python, Perl, and more. " -"To ensure that libraries written in those languages can find library code " -"they depend on at run time, run-time dependencies must be listed in " -"@code{propagated-inputs} rather than @code{inputs}." -msgstr "" +#: doc/guix.texi:3590 +msgid "Another example where @code{propagated-inputs} is useful is for languages that lack a facility to record the run-time search path akin to the @code{RUNPATH} of ELF files; this includes Guile, Python, Perl, and more. To ensure that libraries written in those languages can find library code they depend on at run time, run-time dependencies must be listed in @code{propagated-inputs} rather than @code{inputs}." +msgstr "Un autre exemple où @code{propagated-inputs} est utile est pour les langages auxquels il manque un moyen de retenir le chemin de recherche comme c'est le cas du @code{RUNPATH} des fichiers ELF ; cela comprend Guile, Python, Perl et plus. Pour s'assurer que les bibliothèques écrites dans ces langages peuvent trouver le code des bibliothèques dont elles dépendent à l'exécution, les dépendances à l'exécution doivent être listées dans @code{propagated-inputs} plutôt que @code{inputs}." #. type: item -#: doc/guix.texi:3472 +#: doc/guix.texi:3591 #, no-wrap msgid "@code{self-native-input?} (default: @code{#f})" -msgstr "" +msgstr "@code{self-native-input?} (par défaut : @code{#f})" #. type: table -#: doc/guix.texi:3475 -msgid "" -"This is a Boolean field telling whether the package should use itself as a " -"native input when cross-compiling." -msgstr "" +#: doc/guix.texi:3594 +msgid "This is a Boolean field telling whether the package should use itself as a native input when cross-compiling." +msgstr "C'est un champ booléen qui indique si le paquet devrait s'utiliser lui-même comme entrée native lors de la compilation croisée." #. type: item -#: doc/guix.texi:3476 +#: doc/guix.texi:3595 #, no-wrap msgid "@code{outputs} (default: @code{'(\"out\")})" -msgstr "" +msgstr "@code{outputs} (par défaut : @code{'(\"out\")})" #. type: table -#: doc/guix.texi:3479 -msgid "" -"The list of output names of the package. @xref{Packages with Multiple " -"Outputs}, for typical uses of additional outputs." -msgstr "" +#: doc/guix.texi:3598 +msgid "The list of output names of the package. @xref{Packages with Multiple Outputs}, for typical uses of additional outputs." +msgstr "La liste des noms de sorties du paquet. @xref{Packages with Multiple Outputs}, pour des exemples typiques d'utilisation de sorties supplémentaires." #. type: item -#: doc/guix.texi:3480 +#: doc/guix.texi:3599 #, no-wrap msgid "@code{native-search-paths} (default: @code{'()})" -msgstr "" +msgstr "@code{native-search-paths} (par défaut : @code{'()})" #. type: itemx -#: doc/guix.texi:3481 +#: doc/guix.texi:3600 #, no-wrap msgid "@code{search-paths} (default: @code{'()})" -msgstr "" +msgstr "@code{search-paths} (par défaut : @code{'()})" #. type: table -#: doc/guix.texi:3484 -msgid "" -"A list of @code{search-path-specification} objects describing search-path " -"environment variables honored by the package." -msgstr "" +#: doc/guix.texi:3603 +msgid "A list of @code{search-path-specification} objects describing search-path environment variables honored by the package." +msgstr "Une liste d'objets @code{search-path-specification} décrivant les variables d'environnement de recherche de chemins que ce paquet utilise." #. type: item -#: doc/guix.texi:3485 +#: doc/guix.texi:3604 #, no-wrap msgid "@code{replacement} (default: @code{#f})" -msgstr "" +msgstr "@code{replacement} (par défaut : @code{#f})" #. type: table -#: doc/guix.texi:3489 -msgid "" -"This must be either @code{#f} or a package object that will be used as a " -"@dfn{replacement} for this package. @xref{Security Updates, grafts}, for " -"details." -msgstr "" +#: doc/guix.texi:3608 +msgid "This must be either @code{#f} or a package object that will be used as a @dfn{replacement} for this package. @xref{Security Updates, grafts}, for details." +msgstr "Ce champ doit être soit @code{#f} soit un objet de paquet qui sera utilisé comme @dfn{remplaçant} de ce paquet. @xref{Security Updates, grafts}, pour plus de détails." #. type: item -#: doc/guix.texi:3490 doc/guix.texi:6735 +#: doc/guix.texi:3609 doc/guix.texi:6919 #, no-wrap msgid "synopsis" -msgstr "" +msgstr "synopsis" #. type: table -#: doc/guix.texi:3492 +#: doc/guix.texi:3611 msgid "A one-line description of the package." -msgstr "" +msgstr "Une description sur une ligne du paquet." #. type: item -#: doc/guix.texi:3493 doc/guix.texi:6736 doc/guix.texi:21027 +#: doc/guix.texi:3612 doc/guix.texi:6920 doc/guix.texi:21511 #, no-wrap msgid "description" -msgstr "" +msgstr "description" #. type: table -#: doc/guix.texi:3495 +#: doc/guix.texi:3614 msgid "A more elaborate description of the package." -msgstr "" +msgstr "Une description plus détaillée du paquet." #. type: code{#1} -#: doc/guix.texi:3496 +#: doc/guix.texi:3615 #, no-wrap msgid "license" -msgstr "" +msgstr "license" #. type: cindex -#: doc/guix.texi:3497 +#: doc/guix.texi:3616 #, no-wrap msgid "license, of packages" -msgstr "" +msgstr "licence, des paquets" #. type: table -#: doc/guix.texi:3500 -msgid "" -"The license of the package; a value from @code{(guix licenses)}, or a list " -"of such values." -msgstr "" +#: doc/guix.texi:3619 +msgid "The license of the package; a value from @code{(guix licenses)}, or a list of such values." +msgstr "La licence du paquet ; une valeur tirée de @code{(guix licenses)} ou une liste de ces valeurs." #. type: itemx -#: doc/guix.texi:3501 doc/guix.texi:6744 +#: doc/guix.texi:3620 doc/guix.texi:6928 #, no-wrap msgid "home-page" -msgstr "" +msgstr "home-page" #. type: table -#: doc/guix.texi:3503 +#: doc/guix.texi:3622 msgid "The URL to the home-page of the package, as a string." -msgstr "" +msgstr "L'URL de la page d'accueil du paquet, en tant que chaîne de caractères." #. type: item -#: doc/guix.texi:3504 +#: doc/guix.texi:3623 #, no-wrap msgid "@code{supported-systems} (default: @var{%supported-systems})" -msgstr "" +msgstr "@code{supported-systems} (par défaut : @var{%supported-systems})" #. type: table -#: doc/guix.texi:3507 -msgid "" -"The list of systems supported by the package, as strings of the form " -"@code{architecture-kernel}, for example @code{\"x86_64-linux\"}." -msgstr "" +#: doc/guix.texi:3626 +msgid "The list of systems supported by the package, as strings of the form @code{architecture-kernel}, for example @code{\"x86_64-linux\"}." +msgstr "La liste des systèmes supportés par le paquet, comme des chaînes de caractères de la forme @code{architecture-noyau}, par exemple @code{\"x86_64-linux\"}." #. type: item -#: doc/guix.texi:3508 +#: doc/guix.texi:3627 #, no-wrap msgid "@code{maintainers} (default: @code{'()})" -msgstr "" +msgstr "@code{maintainers} (par défaut : @code{'()})" #. type: table -#: doc/guix.texi:3510 +#: doc/guix.texi:3629 msgid "The list of maintainers of the package, as @code{maintainer} objects." -msgstr "" +msgstr "La liste des mainteneurs du paquet, comme des objets @code{maintainer}." #. type: item -#: doc/guix.texi:3511 +#: doc/guix.texi:3630 #, no-wrap msgid "@code{location} (default: source location of the @code{package} form)" -msgstr "" +msgstr "@code{location} (par défaut : emplacement de la source de la forme @code{package})" #. type: table -#: doc/guix.texi:3515 -msgid "" -"The source location of the package. It is useful to override this when " -"inheriting from another package, in which case this field is not " -"automatically corrected." -msgstr "" +#: doc/guix.texi:3634 +msgid "The source location of the package. It is useful to override this when inheriting from another package, in which case this field is not automatically corrected." +msgstr "L'emplacement de la source du paquet. C'est utile de le remplacer lorsqu'on hérite d'un autre paquet, auquel cas ce champ n'est pas automatiquement corrigé." #. type: subsection -#: doc/guix.texi:3520 +#: doc/guix.texi:3639 #, no-wrap msgid "@code{origin} Reference" -msgstr "" +msgstr "Référence de @code{origin}" #. type: Plain text -#: doc/guix.texi:3524 -msgid "" -"This section summarizes all the options available in @code{origin} " -"declarations (@pxref{Defining Packages})." -msgstr "" +#: doc/guix.texi:3643 +msgid "This section summarizes all the options available in @code{origin} declarations (@pxref{Defining Packages})." +msgstr "Cette section résume toutes les options disponibles dans le déclarations @code{origin} (@pxref{Defining Packages})." #. type: deftp -#: doc/guix.texi:3525 +#: doc/guix.texi:3644 #, no-wrap msgid "{Data Type} origin" -msgstr "" +msgstr "{Type de donnée} origin" #. type: deftp -#: doc/guix.texi:3527 +#: doc/guix.texi:3646 msgid "This is the data type representing a source code origin." -msgstr "" +msgstr "C'est le type de donnée qui représente l'origine d'un code source." #. type: code{#1} -#: doc/guix.texi:3529 doc/guix.texi:15696 +#: doc/guix.texi:3648 doc/guix.texi:16065 #, no-wrap msgid "uri" -msgstr "" +msgstr "uri" #. type: table -#: doc/guix.texi:3534 -msgid "" -"An object containing the URI of the source. The object type depends on the " -"@code{method} (see below). For example, when using the @var{url-fetch} " -"method of @code{(guix download)}, the valid @code{uri} values are: a URL " -"represented as a string, or a list thereof." -msgstr "" +#: doc/guix.texi:3653 +msgid "An object containing the URI of the source. The object type depends on the @code{method} (see below). For example, when using the @var{url-fetch} method of @code{(guix download)}, the valid @code{uri} values are: a URL represented as a string, or a list thereof." +msgstr "Un objet contenant l'URI de la source. Le type d'objet dépend de la @code{method} (voir plus bas). Par exemple, avec la méthode @var{url-fetch} de @code{(guix download)}, les valeurs valide d'@code{uri} sont : une URL représentée par une chaîne de caractères, ou une liste de chaînes de caractères." #. type: code{#1} -#: doc/guix.texi:3535 +#: doc/guix.texi:3654 #, no-wrap msgid "method" -msgstr "" +msgstr "method" #. type: table -#: doc/guix.texi:3537 +#: doc/guix.texi:3656 msgid "A procedure that handles the URI." -msgstr "" +msgstr "Un procédure qui gère l'URI." #. type: table -#: doc/guix.texi:3539 +#: doc/guix.texi:3658 msgid "Examples include:" -msgstr "" +msgstr "Quelques exemples :" #. type: item -#: doc/guix.texi:3541 +#: doc/guix.texi:3660 #, no-wrap msgid "@var{url-fetch} from @code{(guix download)}" -msgstr "" +msgstr "@var{url-fetch} de @code{(guix download)}" #. type: table -#: doc/guix.texi:3544 -msgid "" -"download a file from the HTTP, HTTPS, or FTP URL specified in the @code{uri} " -"field;" -msgstr "" +#: doc/guix.texi:3663 +msgid "download a file from the HTTP, HTTPS, or FTP URL specified in the @code{uri} field;" +msgstr "télécharge un fichier depuis l'URL HTTP, HTTPS ou FTP spécifiée dans le champ @code{uri} ;" #. type: vindex -#: doc/guix.texi:3545 doc/guix.texi:6097 +#: doc/guix.texi:3664 doc/guix.texi:6275 #, no-wrap msgid "git-fetch" -msgstr "" +msgstr "git-fetch" #. type: item -#: doc/guix.texi:3546 +#: doc/guix.texi:3665 #, no-wrap msgid "@var{git-fetch} from @code{(guix git-download)}" -msgstr "" +msgstr "@var{git-fetch} de @code{(guix git-download)}" #. type: table -#: doc/guix.texi:3550 -msgid "" -"clone the Git version control repository, and check out the revision " -"specified in the @code{uri} field as a @code{git-reference} object; a " -"@code{git-reference} looks like this:" -msgstr "" +#: doc/guix.texi:3669 +msgid "clone the Git version control repository, and check out the revision specified in the @code{uri} field as a @code{git-reference} object; a @code{git-reference} looks like this:" +msgstr "clone le dépôt sous contrôle de version Git et récupère la révision spécifiée dans le champ @code{uri} en tant qu'objet @code{git-reference} ; un objet @code{git-reference} ressemble à cela :" #. type: example -#: doc/guix.texi:3555 +#: doc/guix.texi:3674 #, no-wrap msgid "" "(git-reference\n" " (url \"git://git.debian.org/git/pkg-shadow/shadow\")\n" " (commit \"v4.1.5.1\"))\n" msgstr "" +"(git-reference\n" +" (url \"git://git.debian.org/git/pkg-shadow/shadow\")\n" +" (commit \"v4.1.5.1\"))\n" #. type: code{#1} -#: doc/guix.texi:3558 +#: doc/guix.texi:3677 #, no-wrap msgid "sha256" -msgstr "" +msgstr "sha256" #. type: table -#: doc/guix.texi:3562 -msgid "" -"A bytevector containing the SHA-256 hash of the source. Typically the " -"@code{base32} form is used here to generate the bytevector from a base-32 " -"string." -msgstr "" - -#. type: table -#: doc/guix.texi:3566 -msgid "" -"You can obtain this information using @code{guix download} (@pxref{Invoking " -"guix download}) or @code{guix hash} (@pxref{Invoking guix hash})." -msgstr "" - -#. type: item -#: doc/guix.texi:3567 -#, no-wrap -msgid "@code{file-name} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:3573 -msgid "" -"The file name under which the source code should be saved. When this is " -"@code{#f}, a sensible default value will be used in most cases. In case the " -"source is fetched from a URL, the file name from the URL will be used. For " -"version control checkouts, it is recommended to provide the file name " -"explicitly because the default is not very descriptive." -msgstr "" - -#. type: item -#: doc/guix.texi:3574 -#, no-wrap -msgid "@code{patches} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:3577 -msgid "" -"A list of file names, origins, or file-like objects (@pxref{G-Expressions, " -"file-like objects}) pointing to patches to be applied to the source." -msgstr "" - -#. type: table -#: doc/guix.texi:3581 -msgid "" -"This list of patches must be unconditional. In particular, it cannot depend " -"on the value of @code{%current-system} or @code{%current-target-system}." -msgstr "" - -#. type: item -#: doc/guix.texi:3582 -#, no-wrap -msgid "@code{snippet} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:3586 -msgid "" -"A G-expression (@pxref{G-Expressions}) or S-expression that will be run in " -"the source directory. This is a convenient way to modify the source, " -"sometimes more convenient than a patch." -msgstr "" - -#. type: item -#: doc/guix.texi:3587 -#, no-wrap -msgid "@code{patch-flags} (default: @code{'(\"-p1\")})" -msgstr "" - -#. type: table -#: doc/guix.texi:3590 -msgid "" -"A list of command-line flags that should be passed to the @code{patch} " -"command." -msgstr "" - -#. type: item -#: doc/guix.texi:3591 -#, no-wrap -msgid "@code{patch-inputs} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:3595 -msgid "" -"Input packages or derivations to the patching process. When this is " -"@code{#f}, the usual set of inputs necessary for patching are provided, such " -"as GNU@tie{}Patch." -msgstr "" - -#. type: item -#: doc/guix.texi:3596 -#, no-wrap -msgid "@code{modules} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:3599 -msgid "" -"A list of Guile modules that should be loaded during the patching process " -"and while running the code in the @code{snippet} field." -msgstr "" - -#. type: item -#: doc/guix.texi:3600 -#, no-wrap -msgid "@code{patch-guile} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:3603 -msgid "" -"The Guile package that should be used in the patching process. When this is " -"@code{#f}, a sensible default is used." -msgstr "" - -#. type: cindex -#: doc/guix.texi:3610 -#, no-wrap -msgid "build system" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:3615 -msgid "" -"Each package definition specifies a @dfn{build system} and arguments for " -"that build system (@pxref{Defining Packages}). This @code{build-system} " -"field represents the build procedure of the package, as well as implicit " -"dependencies of that build procedure." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:3619 -msgid "" -"Build systems are @code{} objects. The interface to create " -"and manipulate them is provided by the @code{(guix build-system)} module, " -"and actual build systems are exported by specific modules." -msgstr "" - -#. type: cindex -#: doc/guix.texi:3620 -#, no-wrap -msgid "bag (low-level package representation)" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:3627 -msgid "" -"Under the hood, build systems first compile package objects to @dfn{bags}. " -"A @dfn{bag} is like a package, but with less ornamentation---in other words, " -"a bag is a lower-level representation of a package, which includes all the " -"inputs of that package, including some that were implicitly added by the " -"build system. This intermediate representation is then compiled to a " -"derivation (@pxref{Derivations})." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:3635 -msgid "" -"Build systems accept an optional list of @dfn{arguments}. In package " -"definitions, these are passed @i{via} the @code{arguments} field " -"(@pxref{Defining Packages}). They are typically keyword arguments " -"(@pxref{Optional Arguments, keyword arguments in Guile,, guile, GNU Guile " -"Reference Manual}). The value of these arguments is usually evaluated in " -"the @dfn{build stratum}---i.e., by a Guile process launched by the daemon " -"(@pxref{Derivations})." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:3639 -msgid "" -"The main build system is @var{gnu-build-system}, which implements the " -"standard build procedure for GNU and many other packages. It is provided by " -"the @code{(guix build-system gnu)} module." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3640 -#, no-wrap -msgid "{Scheme Variable} gnu-build-system" -msgstr "" - -#. type: defvr -#: doc/guix.texi:3644 -msgid "" -"@var{gnu-build-system} represents the GNU Build System, and variants thereof " -"(@pxref{Configuration, configuration and makefile conventions,, standards, " -"GNU Coding Standards})." -msgstr "" - -#. type: cindex -#: doc/guix.texi:3645 -#, no-wrap -msgid "build phases" -msgstr "" - -#. type: defvr -#: doc/guix.texi:3652 -msgid "" -"In a nutshell, packages using it are configured, built, and installed with " -"the usual @code{./configure && make && make check && make install} command " -"sequence. In practice, a few additional steps are often needed. All these " -"steps are split up in separate @dfn{phases}, notably@footnote{Please see the " -"@code{(guix build gnu-build-system)} modules for more details about the " -"build phases.}:" -msgstr "" - -#. type: item -#: doc/guix.texi:3654 -#, no-wrap -msgid "unpack" -msgstr "" - -#. type: table -#: doc/guix.texi:3658 -msgid "" -"Unpack the source tarball, and change the current directory to the extracted " -"source tree. If the source is actually a directory, copy it to the build " -"tree, and enter that directory." -msgstr "" - -#. type: item -#: doc/guix.texi:3659 -#, no-wrap -msgid "patch-source-shebangs" -msgstr "" - -#. type: table -#: doc/guix.texi:3663 -msgid "" -"Patch shebangs encountered in source files so they refer to the right store " -"file names. For instance, this changes @code{#!/bin/sh} to @code{#!/gnu/" -"store/@dots{}-bash-4.3/bin/sh}." -msgstr "" - -#. type: item -#: doc/guix.texi:3664 doc/guix.texi:4130 -#, no-wrap -msgid "configure" -msgstr "" - -#. type: table -#: doc/guix.texi:3668 -msgid "" -"Run the @file{configure} script with a number of default options, such as " -"@code{--prefix=/gnu/store/@dots{}}, as well as the options specified by the " -"@code{#:configure-flags} argument." -msgstr "" - -#. type: item -#: doc/guix.texi:3669 doc/guix.texi:4135 doc/guix.texi:20437 -#, no-wrap -msgid "build" -msgstr "" - -#. type: table -#: doc/guix.texi:3673 -msgid "" -"Run @code{make} with the list of flags specified with @code{#:make-flags}. " -"If the @code{#:parallel-build?} argument is true (the default), build with " -"@code{make -j}." -msgstr "" - -#. type: item -#: doc/guix.texi:3674 doc/guix.texi:4139 -#, no-wrap -msgid "check" -msgstr "" - -#. type: table -#: doc/guix.texi:3679 -msgid "" -"Run @code{make check}, or some other target specified with @code{#:test-" -"target}, unless @code{#:tests? #f} is passed. If the @code{#:parallel-" -"tests?} argument is true (the default), run @code{make check -j}." -msgstr "" - -#. type: item -#: doc/guix.texi:3680 doc/guix.texi:4143 -#, no-wrap -msgid "install" -msgstr "" - -#. type: table -#: doc/guix.texi:3682 -msgid "Run @code{make install} with the flags listed in @code{#:make-flags}." -msgstr "" - -#. type: item -#: doc/guix.texi:3683 -#, no-wrap -msgid "patch-shebangs" -msgstr "" +#: doc/guix.texi:3681 +msgid "A bytevector containing the SHA-256 hash of the source. Typically the @code{base32} form is used here to generate the bytevector from a base-32 string." +msgstr "Un bytevector contenant le hash SHA-256 de la source. Typiquement la forme @code{base32} est utilisée ici pour générer le bytevector depuis une chaîne de caractères en base-32." #. type: table #: doc/guix.texi:3685 -msgid "Patch shebangs on the installed executable files." -msgstr "" +msgid "You can obtain this information using @code{guix download} (@pxref{Invoking guix download}) or @code{guix hash} (@pxref{Invoking guix hash})." +msgstr "Vous pouvez obtenir cette information avec @code{guix download} (@pxref{Invoking guix download}) ou @code{guix hash} (@pxref{Invoking guix hash})." #. type: item #: doc/guix.texi:3686 #, no-wrap -msgid "strip" -msgstr "" +msgid "@code{file-name} (default: @code{#f})" +msgstr "@code{file-name} (par défaut : @code{#f})" #. type: table -#: doc/guix.texi:3690 -msgid "" -"Strip debugging symbols from ELF files (unless @code{#:strip-binaries?} is " -"false), copying them to the @code{debug} output when available " -"(@pxref{Installing Debugging Files})." -msgstr "" - -#. type: vindex #: doc/guix.texi:3692 +msgid "The file name under which the source code should be saved. When this is @code{#f}, a sensible default value will be used in most cases. In case the source is fetched from a URL, the file name from the URL will be used. For version control checkouts, it is recommended to provide the file name explicitly because the default is not very descriptive." +msgstr "Le nom de fichier à utiliser pour sauvegarder le fichier. Lorsqu'elle est à @code{#f}, une valeur par défaut raisonnable est utilisée dans la plupart des cas. Dans le cas où la source est récupérée depuis une URL, le nom de fichier est celui de l'URL. Pour les sources récupérées depuis un outil de contrôle de version, il est recommandé de fournir un nom de fichier explicitement parce que le nom par défaut n'est pas très descriptif." + +#. type: item +#: doc/guix.texi:3693 #, no-wrap -msgid "%standard-phases" -msgstr "" +msgid "@code{patches} (default: @code{'()})" +msgstr "@code{patches} (par défaut : @code{'()})" -#. type: defvr -#: doc/guix.texi:3697 -msgid "" -"The build-side module @code{(guix build gnu-build-system)} defines " -"@var{%standard-phases} as the default list of build phases. @var{%standard-" -"phases} is a list of symbol/procedure pairs, where the procedure implements " -"the actual phase." -msgstr "" +#. type: table +#: doc/guix.texi:3696 +msgid "A list of file names, origins, or file-like objects (@pxref{G-Expressions, file-like objects}) pointing to patches to be applied to the source." +msgstr "Une liste de noms de fichiers, d'origines ou d'objets simili-fichiers (@pxref{G-Expressions, file-like objects}) qui pointent vers des correctifs à appliquer sur la source." -#. type: defvr +#. type: table #: doc/guix.texi:3700 -msgid "" -"The list of phases used for a particular package can be changed with the " -"@code{#:phases} parameter. For instance, passing:" -msgstr "" +msgid "This list of patches must be unconditional. In particular, it cannot depend on the value of @code{%current-system} or @code{%current-target-system}." +msgstr "Cette liste de correctifs doit être inconditionnelle. En particulier, elle ne peut pas dépendre des valeurs de @code{%current-system} ou @code{%current-target-system}." -#. type: example -#: doc/guix.texi:3703 +#. type: item +#: doc/guix.texi:3701 #, no-wrap -msgid "#:phases (modify-phases %standard-phases (delete 'configure))\n" -msgstr "" +msgid "@code{snippet} (default: @code{#f})" +msgstr "@code{snippet} (par défaut : @code{#f})" -#. type: defvr -#: doc/guix.texi:3707 -msgid "" -"means that all the phases described above will be used, except the " -"@code{configure} phase." -msgstr "" +#. type: table +#: doc/guix.texi:3705 +msgid "A G-expression (@pxref{G-Expressions}) or S-expression that will be run in the source directory. This is a convenient way to modify the source, sometimes more convenient than a patch." +msgstr "Une G-expression (@pxref{G-Expressions}) ou une S-expression qui sera lancée dans le répertoire des sources. C'est une manière pratique de modifier la source, parfois plus qu'un correctif." -#. type: defvr +#. type: item +#: doc/guix.texi:3706 +#, no-wrap +msgid "@code{patch-flags} (default: @code{'(\"-p1\")})" +msgstr "@code{patch-flags} (par défaut : @code{'(\"-p1\")})" + +#. type: table +#: doc/guix.texi:3709 +msgid "A list of command-line flags that should be passed to the @code{patch} command." +msgstr "Une liste de drapeaux à passer à la commande @code{patch}." + +#. type: item +#: doc/guix.texi:3710 +#, no-wrap +msgid "@code{patch-inputs} (default: @code{#f})" +msgstr "@code{patch-inputs} (par défaut : @code{#f})" + +#. type: table #: doc/guix.texi:3714 -msgid "" -"In addition, this build system ensures that the ``standard'' environment for " -"GNU packages is available. This includes tools such as GCC, libc, " -"Coreutils, Bash, Make, Diffutils, grep, and sed (see the @code{(guix build-" -"system gnu)} module for a complete list). We call these the @dfn{implicit " -"inputs} of a package, because package definitions do not have to mention " -"them." -msgstr "" +msgid "Input packages or derivations to the patching process. When this is @code{#f}, the usual set of inputs necessary for patching are provided, such as GNU@tie{}Patch." +msgstr "Paquets d'entrées ou dérivations pour le processus de correction. Lorsqu'elle est à @code{#f}, l'ensemble d'entrées habituellement nécessaire pour appliquer des correctifs est fournit, comme GNU@tie{}Patch." + +#. type: item +#: doc/guix.texi:3715 +#, no-wrap +msgid "@code{modules} (default: @code{'()})" +msgstr "@code{modules} (par défaut : @code{'()})" + +#. type: table +#: doc/guix.texi:3718 +msgid "A list of Guile modules that should be loaded during the patching process and while running the code in the @code{snippet} field." +msgstr "Une liste de modules Guile qui devraient être chargés pendant le processus de correction et pendant que le lancement du code du champ @code{snippet}." + +#. type: item +#: doc/guix.texi:3719 +#, no-wrap +msgid "@code{patch-guile} (default: @code{#f})" +msgstr "@code{patch-guile} (par défaut : @code{#f})" + +#. type: table +#: doc/guix.texi:3722 +msgid "The Guile package that should be used in the patching process. When this is @code{#f}, a sensible default is used." +msgstr "Le paquet Guile à utiliser dans le processus de correction. Lorsqu'elle est à @code{#f}, une valeur par défaut raisonnable est utilisée." + +#. type: cindex +#: doc/guix.texi:3729 +#, no-wrap +msgid "build system" +msgstr "système de construction" #. type: Plain text -#: doc/guix.texi:3721 -msgid "" -"Other @code{} objects are defined to support other conventions " -"and tools used by free software packages. They inherit most of @var{gnu-" -"build-system}, and differ mainly in the set of inputs implicitly added to " -"the build process, and in the list of phases executed. Some of these build " -"systems are listed below." -msgstr "" +#: doc/guix.texi:3734 +msgid "Each package definition specifies a @dfn{build system} and arguments for that build system (@pxref{Defining Packages}). This @code{build-system} field represents the build procedure of the package, as well as implicit dependencies of that build procedure." +msgstr "Chaque définition de paquet définie un @dfn{système de construction} et des arguments pour ce système de construction (@pxref{Defining Packages}). Ce champ @code{build-system} représente la procédure de construction du paquet, ainsi que des dépendances implicites pour cette procédure de construction." -#. type: defvr -#: doc/guix.texi:3722 +#. type: Plain text +#: doc/guix.texi:3738 +msgid "Build systems are @code{} objects. The interface to create and manipulate them is provided by the @code{(guix build-system)} module, and actual build systems are exported by specific modules." +msgstr "Les systèmes de construction sont des objets @code{}. L'interface pour les créer et les manipuler est fournie par le module @code{(guix build-system)} et les systèmes de construction eux-mêmes sont exportés par des modules spécifiques." + +#. type: cindex +#: doc/guix.texi:3739 #, no-wrap -msgid "{Scheme Variable} ant-build-system" -msgstr "" +msgid "bag (low-level package representation)" +msgstr "sac (représentation à bas-niveau des paquets)" -#. type: defvr -#: doc/guix.texi:3726 -msgid "" -"This variable is exported by @code{(guix build-system ant)}. It implements " -"the build procedure for Java packages that can be built with @url{http://ant." -"apache.org/, Ant build tool}." -msgstr "" +#. type: Plain text +#: doc/guix.texi:3746 +msgid "Under the hood, build systems first compile package objects to @dfn{bags}. A @dfn{bag} is like a package, but with less ornamentation---in other words, a bag is a lower-level representation of a package, which includes all the inputs of that package, including some that were implicitly added by the build system. This intermediate representation is then compiled to a derivation (@pxref{Derivations})." +msgstr "Sous le capot, les systèmes de construction compilent d'abord des objets paquets en @dfn{sacs}. Un @dfn{sac} est comme un paquet, mais avec moins de décoration — en d'autres mots, un sac est une représentation à bas-niveau d'un paquet, qui inclus toutes les entrées de ce paquet, dont certaines ont été implicitement ajoutées par le système de construction. Cette représentation intermédiaire est ensuite compilée en une dérivation (@pxref{Derivations})." -#. type: defvr -#: doc/guix.texi:3731 -msgid "" -"It adds both @code{ant} and the @dfn{Java Development Kit} (JDK) as provided " -"by the @code{icedtea} package to the set of inputs. Different packages can " -"be specified with the @code{#:ant} and @code{#:jdk} parameters, respectively." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3737 -msgid "" -"When the original package does not provide a suitable Ant build file, the " -"parameter @code{#:jar-name} can be used to generate a minimal Ant build file " -"@file{build.xml} with tasks to build the specified jar archive. In this " -"case the parameter @code{#:source-dir} can be used to specify the source sub-" -"directory, defaulting to ``src''." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3745 -msgid "" -"The @code{#:main-class} parameter can be used with the minimal ant buildfile " -"to specify the main class of the resulting jar. This makes the jar file " -"executable. The @code{#:test-include} parameter can be used to specify the " -"list of junit tests to run. It defaults to @code{(list \"**/*Test.java\")}. " -"The @code{#:test-exclude} can be used to disable some tests. It defaults to " -"@code{(list \"**/Abstract*.java\")}, because abstract classes cannot be run " -"as tests." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3749 -msgid "" -"The parameter @code{#:build-target} can be used to specify the Ant task that " -"should be run during the @code{build} phase. By default the ``jar'' task " -"will be run." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3752 -#, no-wrap -msgid "{Scheme Variable} asdf-build-system/source" -msgstr "" - -#. type: defvrx -#: doc/guix.texi:3753 -#, no-wrap -msgid "{Scheme Variable} asdf-build-system/sbcl" -msgstr "" - -#. type: defvrx +#. type: Plain text #: doc/guix.texi:3754 +msgid "Build systems accept an optional list of @dfn{arguments}. In package definitions, these are passed @i{via} the @code{arguments} field (@pxref{Defining Packages}). They are typically keyword arguments (@pxref{Optional Arguments, keyword arguments in Guile,, guile, GNU Guile Reference Manual}). The value of these arguments is usually evaluated in the @dfn{build stratum}---i.e., by a Guile process launched by the daemon (@pxref{Derivations})." +msgstr "Les systèmes de construction acceptent une liste d'@dfn{arguments} facultatifs. Dans les définitions de paquets, ils sont passés @i{via} le champ @code{arguments} (@pxref{Defining Packages}). Ce sont typiquement des arguments par mot-clef (@pxref{Optional Arguments, keyword arguments in Guile,, guile, GNU Guile Reference Manual}). La valeur de ces arguments est habituellement évaluée dans la @dfn{strate de construction} — c.-à-d.@: par un processus Guile lancé par le démon (@pxref{Derivations})." + +#. type: Plain text +#: doc/guix.texi:3758 +msgid "The main build system is @var{gnu-build-system}, which implements the standard build procedure for GNU and many other packages. It is provided by the @code{(guix build-system gnu)} module." +msgstr "Le système de construction principal est le @var{gnu-build-system} qui implémente les procédures de construction standard pour les paquets GNU et de nombreux autres. Il est fournit par le module @code{(guix build-system gnu)}." + +#. type: defvr +#: doc/guix.texi:3759 #, no-wrap -msgid "{Scheme Variable} asdf-build-system/ecl" -msgstr "" +msgid "{Scheme Variable} gnu-build-system" +msgstr "{Variable Scheme} gnu-build-system" #. type: defvr -#: doc/guix.texi:3760 -msgid "" -"These variables, exported by @code{(guix build-system asdf)}, implement " -"build procedures for Common Lisp packages using @url{https://common-lisp.net/" -"project/asdf/, ``ASDF''}. ASDF is a system definition facility for Common " -"Lisp programs and libraries." -msgstr "" +#: doc/guix.texi:3763 +msgid "@var{gnu-build-system} represents the GNU Build System, and variants thereof (@pxref{Configuration, configuration and makefile conventions,, standards, GNU Coding Standards})." +msgstr "@var{gnu-build-system} représente le système de construction GNU et ses variantes (@pxref{Configuration, configuration and makefile conventions,, standards, GNU Coding Standards})." -#. type: defvr -#: doc/guix.texi:3767 -msgid "" -"The @code{asdf-build-system/source} system installs the packages in source " -"form, and can be loaded using any common lisp implementation, via ASDF. The " -"others, such as @code{asdf-build-system/sbcl}, install binary systems in the " -"format which a particular implementation understands. These build systems " -"can also be used to produce executable programs, or lisp images which " -"contain a set of packages pre-loaded." -msgstr "" +#. type: cindex +#: doc/guix.texi:3764 +#, no-wrap +msgid "build phases" +msgstr "phases de construction" #. type: defvr #: doc/guix.texi:3771 -msgid "" -"The build system uses naming conventions. For binary packages, the package " -"name should be prefixed with the lisp implementation, such as @code{sbcl-} " -"for @code{asdf-build-system/sbcl}." -msgstr "" +msgid "In a nutshell, packages using it are configured, built, and installed with the usual @code{./configure && make && make check && make install} command sequence. In practice, a few additional steps are often needed. All these steps are split up in separate @dfn{phases}, notably@footnote{Please see the @code{(guix build gnu-build-system)} modules for more details about the build phases.}:" +msgstr "En résumé, les paquets qui l'utilisent sont configurés, construits et installés avec la séquence @code{./configure && make && make check && make install} habituelle. En pratique, des étapes supplémentaires sont souvent requises. Toutes ces étapes sont séparées dans des @dfn{phases} différentes, notamment@footnote{Regardez les modules @code{(guix build gnu-build-system)} pour plus de détails sur les phases de construction.}:" -#. type: defvr -#: doc/guix.texi:3775 -msgid "" -"Additionally, the corresponding source package should be labeled using the " -"same convention as python packages (see @ref{Python Modules}), using the " -"@code{cl-} prefix." -msgstr "" +#. type: item +#: doc/guix.texi:3773 +#, no-wrap +msgid "unpack" +msgstr "unpack" -#. type: defvr -#: doc/guix.texi:3780 -msgid "" -"For binary packages, each system should be defined as a Guix package. If " -"one package @code{origin} contains several systems, package variants can be " -"created in order to build all the systems. Source packages, which use " -"@code{asdf-build-system/source}, may contain several systems." -msgstr "" +#. type: table +#: doc/guix.texi:3777 +msgid "Unpack the source tarball, and change the current directory to the extracted source tree. If the source is actually a directory, copy it to the build tree, and enter that directory." +msgstr "Décompresse l'archive des sources et se déplace dans l'arborescence des sources fraîchement extraites. Si la source est en fait un répertoire, le copie dans l'arborescence de construction et entre dans ce répertoire." -#. type: defvr +#. type: item +#: doc/guix.texi:3778 +#, no-wrap +msgid "patch-source-shebangs" +msgstr "patch-source-shebangs" + +#. type: table +#: doc/guix.texi:3782 +msgid "Patch shebangs encountered in source files so they refer to the right store file names. For instance, this changes @code{#!/bin/sh} to @code{#!/gnu/store/@dots{}-bash-4.3/bin/sh}." +msgstr "Corrige les shebangs (@code{#!}) rencontrés dans les fichiers pour qu'ils se réfèrent aux bons noms de fichiers. Par exemple, elle change @code{#!/bin/sh} en @code{#!/gnu/store/@dots{}-bash-4.3/bin/sh}." + +#. type: item +#: doc/guix.texi:3783 doc/guix.texi:4268 +#, no-wrap +msgid "configure" +msgstr "configure" + +#. type: table #: doc/guix.texi:3787 -msgid "" -"In order to create executable programs and images, the build-side procedures " -"@code{build-program} and @code{build-image} can be used. They should be " -"called in a build phase after the @code{create-symlinks} phase, so that the " -"system which was just built can be used within the resulting image. " -"@code{build-program} requires a list of Common Lisp expressions to be passed " -"as the @code{#:entry-program} argument." -msgstr "" +msgid "Run the @file{configure} script with a number of default options, such as @code{--prefix=/gnu/store/@dots{}}, as well as the options specified by the @code{#:configure-flags} argument." +msgstr "Lance le script @code{configure} avec un certain nombre d'options par défaut, comme @code{--prefix=/gnu/store/@dots{}}, ainsi que les options spécifiées par l'argument @code{#:configure-flags}." -#. type: defvr -#: doc/guix.texi:3796 -msgid "" -"If the system is not defined within its own @code{.asd} file of the same " -"name, then the @code{#:asd-file} parameter should be used to specify which " -"file the system is defined in. Furthermore, if the package defines a system " -"for its tests in a separate file, it will be loaded before the tests are run " -"if it is specified by the @code{#:test-asd-file} parameter. If it is not " -"set, the files @code{-tests.asd}, @code{-test.asd}, " -"@code{tests.asd}, and @code{test.asd} will be tried if they exist." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3800 -msgid "" -"If for some reason the package must be named in a different way than the " -"naming conventions suggest, the @code{#:asd-system-name} parameter can be " -"used to specify the name of the system." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3803 +#. type: item +#: doc/guix.texi:3788 doc/guix.texi:4273 doc/guix.texi:20921 #, no-wrap -msgid "{Scheme Variable} cargo-build-system" -msgstr "" +msgid "build" +msgstr "build" -#. type: cindex +#. type: table +#: doc/guix.texi:3792 +msgid "Run @code{make} with the list of flags specified with @code{#:make-flags}. If the @code{#:parallel-build?} argument is true (the default), build with @code{make -j}." +msgstr "Lance @code{make} avec la liste des drapeaux spécifiés avec @code{#:make-flags}. Si l'argument @code{#:parallel-build?} est vrai (par défaut), construit avec @code{make -j}." + +#. type: item +#: doc/guix.texi:3793 doc/guix.texi:4277 +#, no-wrap +msgid "check" +msgstr "check" + +#. type: table +#: doc/guix.texi:3798 +msgid "Run @code{make check}, or some other target specified with @code{#:test-target}, unless @code{#:tests? #f} is passed. If the @code{#:parallel-tests?} argument is true (the default), run @code{make check -j}." +msgstr "Lance @code{make check}, ou une autre cible spécifiée par @code{#:test-target}, à moins que @code{#:tests? #f} ne soit passé. Si l'argument @code{#:parallel-tests?} est vrai (par défaut), lance @code{make check -j}." + +#. type: item +#: doc/guix.texi:3799 doc/guix.texi:4281 +#, no-wrap +msgid "install" +msgstr "install" + +#. type: table +#: doc/guix.texi:3801 +msgid "Run @code{make install} with the flags listed in @code{#:make-flags}." +msgstr "Lance @code{make install} avec les drapeaux listés dans @code{#:make-flags}." + +#. type: item +#: doc/guix.texi:3802 +#, no-wrap +msgid "patch-shebangs" +msgstr "patch-shebangs" + +#. type: table #: doc/guix.texi:3804 -#, no-wrap -msgid "Rust programming language" -msgstr "" +msgid "Patch shebangs on the installed executable files." +msgstr "Corrige les shebangs des fichiers exécutables installés." -#. type: cindex +#. type: item #: doc/guix.texi:3805 #, no-wrap -msgid "Cargo (Rust build system)" -msgstr "" +msgid "strip" +msgstr "strip" -#. type: defvr +#. type: table #: doc/guix.texi:3809 -msgid "" -"This variable is exported by @code{(guix build-system cargo)}. It supports " -"builds of packages using Cargo, the build tool of the @uref{https://www.rust-" -"lang.org, Rust programming language}." -msgstr "" +msgid "Strip debugging symbols from ELF files (unless @code{#:strip-binaries?} is false), copying them to the @code{debug} output when available (@pxref{Installing Debugging Files})." +msgstr "Nettoie les symboles de débogage dans les fichiers ELF (à moins que @code{#:strip-binaries?} ne soit faux), les copie dans la sortie @code{debug} lorsqu'elle est disponible (@pxref{Installing Debugging Files})." -#. type: defvr -#: doc/guix.texi:3814 -msgid "" -"In its @code{configure} phase, this build system replaces dependencies " -"specified in the @file{Carto.toml} file with inputs to the Guix package. " -"The @code{install} phase installs the binaries, and it also installs the " -"source code and @file{Cargo.toml} file." -msgstr "" +#. type: vindex +#: doc/guix.texi:3811 +#, no-wrap +msgid "%standard-phases" +msgstr "%standard-phases" #. type: defvr #: doc/guix.texi:3816 +msgid "The build-side module @code{(guix build gnu-build-system)} defines @var{%standard-phases} as the default list of build phases. @var{%standard-phases} is a list of symbol/procedure pairs, where the procedure implements the actual phase." +msgstr "Le module du côté du constructeur @code{(guix build gnu-build-system)} définie @var{%standard-phases} comme la liste par défaut des phases de construction. @var{%standard-phases} est une liste de paires de symboles et de procédures, où la procédure implémente la phase en question." + +#. type: defvr +#: doc/guix.texi:3819 +msgid "The list of phases used for a particular package can be changed with the @code{#:phases} parameter. For instance, passing:" +msgstr "La liste des phases utilisées par un paquet particulier peut être modifiée avec le paramètre @code{#:phases}. Par exemple, en passant :" + +#. type: example +#: doc/guix.texi:3822 #, no-wrap -msgid "{Scheme Variable} cmake-build-system" -msgstr "" +msgid "#:phases (modify-phases %standard-phases (delete 'configure))\n" +msgstr "#:phases (modify-phases %standard-phases (delete 'configure))\n" #. type: defvr -#: doc/guix.texi:3820 -msgid "" -"This variable is exported by @code{(guix build-system cmake)}. It " -"implements the build procedure for packages using the @url{http://www.cmake." -"org, CMake build tool}." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3824 -msgid "" -"It automatically adds the @code{cmake} package to the set of inputs. Which " -"package is used can be specified with the @code{#:cmake} parameter." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3831 -msgid "" -"The @code{#:configure-flags} parameter is taken as a list of flags passed to " -"the @command{cmake} command. The @code{#:build-type} parameter specifies in " -"abstract terms the flags passed to the compiler; it defaults to " -"@code{\"RelWithDebInfo\"} (short for ``release mode with debugging " -"information''), which roughly means that code is compiled with @code{-O2 -" -"g}, as is the case for Autoconf-based packages by default." -msgstr "" +#: doc/guix.texi:3826 +msgid "means that all the phases described above will be used, except the @code{configure} phase." +msgstr "signifie que toutes les procédures décrites plus haut seront utilisées, sauf la phase @code{configure}." #. type: defvr #: doc/guix.texi:3833 +msgid "In addition, this build system ensures that the ``standard'' environment for GNU packages is available. This includes tools such as GCC, libc, Coreutils, Bash, Make, Diffutils, grep, and sed (see the @code{(guix build-system gnu)} module for a complete list). We call these the @dfn{implicit inputs} of a package, because package definitions do not have to mention them." +msgstr "En plus, ce système de construction s'assure que l'environnement « standard » pour les paquets GNU est disponible. Cela inclus des outils comme GCC, libc, Coreutils, Bash, Make, Diffutils, grep et sed (voir le module @code{(guix build-system gnu)} pour une liste complète). Nous les appelons les @dfn{entrées implicites} d'un paquet parce que la définition du paquet ne les mentionne pas." + +#. type: Plain text +#: doc/guix.texi:3840 +msgid "Other @code{} objects are defined to support other conventions and tools used by free software packages. They inherit most of @var{gnu-build-system}, and differ mainly in the set of inputs implicitly added to the build process, and in the list of phases executed. Some of these build systems are listed below." +msgstr "D'autres objets @code{} sont définis pour supporter d'autres conventions et outils utilisés par les paquets de logiciels libres. Ils héritent de la plupart de @var{gnu-build-system} et diffèrent surtout dans l'ensemble des entrées implicites ajoutées au processus de construction et dans la liste des phases exécutées. Certains de ces systèmes de construction sont listés ci-dessous." + +#. type: defvr +#: doc/guix.texi:3841 #, no-wrap -msgid "{Scheme Variable} go-build-system" -msgstr "" +msgid "{Scheme Variable} ant-build-system" +msgstr "{Variable Scheme} ant-build-system" #. type: defvr -#: doc/guix.texi:3838 -msgid "" -"This variable is exported by @code{(guix build-system go)}. It implements a " -"build procedure for Go packages using the standard @url{https://golang.org/" -"cmd/go/#hdr-Compile_packages_and_dependencies, Go build mechanisms}." -msgstr "" +#: doc/guix.texi:3845 +msgid "This variable is exported by @code{(guix build-system ant)}. It implements the build procedure for Java packages that can be built with @url{http://ant.apache.org/, Ant build tool}." +msgstr "Cette variable est exportée par @code{(guix build-system ant)}. Elle implémente la procédure de construction pour les paquets Java qui peuvent être construits avec @url{http://ant.apache.org/, l'outil de construction Ant}." #. type: defvr -#: doc/guix.texi:3849 -msgid "" -"The user is expected to provide a value for the key @code{#:import-path} " -"and, in some cases, @code{#:unpack-path}. The @url{https://golang.org/doc/" -"code.html#ImportPaths, import path} corresponds to the file system path " -"expected by the package's build scripts and any referring packages, and " -"provides a unique way to refer to a Go package. It is typically based on a " -"combination of the package source code's remote URI and file system " -"hierarchy structure. In some cases, you will need to unpack the package's " -"source code to a different directory structure than the one indicated by the " -"import path, and @code{#:unpack-path} should be used in such cases." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3854 -msgid "" -"Packages that provide Go libraries should be installed along with their " -"source code. The key @code{#:install-source?}, which defaults to @code{#t}, " -"controls whether or not the source code is installed. It can be set to " -"@code{#f} for packages that only provide executable files." -msgstr "" +#: doc/guix.texi:3850 +msgid "It adds both @code{ant} and the @dfn{Java Development Kit} (JDK) as provided by the @code{icedtea} package to the set of inputs. Different packages can be specified with the @code{#:ant} and @code{#:jdk} parameters, respectively." +msgstr "Elle ajoute à la fois @code{ant} et the @dfn{kit de développement Java} (JDK) fournit par le paquet @code{icedtea} à l'ensemble des entrées. Des paquets différents peuvent être spécifiés avec les paramètres @code{#:ant} et @code{#:jdk} respectivement." #. type: defvr #: doc/guix.texi:3856 -#, no-wrap -msgid "{Scheme Variable} glib-or-gtk-build-system" -msgstr "" +msgid "When the original package does not provide a suitable Ant build file, the parameter @code{#:jar-name} can be used to generate a minimal Ant build file @file{build.xml} with tasks to build the specified jar archive. In this case the parameter @code{#:source-dir} can be used to specify the source sub-directory, defaulting to ``src''." +msgstr "Lorsque le paquet d'origine ne fournit pas de fichier de construction Ant acceptable, le paramètre @code{#:jar-name} peut être utilisé pour générer un fichier de construction Ant @file{build.xml} minimal, avec des tâches pour construire l'archive jar spécifiée. Dans ce cas, le paramètre @code{#:source-dir} peut être utilisé pour spécifier le sous-répertoire des sources, par défaut « src »." #. type: defvr -#: doc/guix.texi:3859 -msgid "" -"This variable is exported by @code{(guix build-system glib-or-gtk)}. It is " -"intended for use with packages making use of GLib or GTK+." -msgstr "" +#: doc/guix.texi:3864 +msgid "The @code{#:main-class} parameter can be used with the minimal ant buildfile to specify the main class of the resulting jar. This makes the jar file executable. The @code{#:test-include} parameter can be used to specify the list of junit tests to run. It defaults to @code{(list \"**/*Test.java\")}. The @code{#:test-exclude} can be used to disable some tests. It defaults to @code{(list \"**/Abstract*.java\")}, because abstract classes cannot be run as tests." +msgstr "Le paramètre @code{#:main-class} peut être utilisé avec le fichier de construction minimal pour spécifier la classe principale du jar. Cela rend le fichier jar exécutable. Le paramètre @code{#:test-include} peut être utilisé pour spécifier la liste des tests junit à lancer. Il vaut par défaut @code{(list \"**/*Test.java\")}. Le paramètre @code{#:test-exclude} peut être utilisé pour désactiver certains tests. Sa valeur par défaut est @code{(list \"**/Abstract*.java\")}, parce que les classes abstraites ne peuvent pas être utilisées comme des tests." #. type: defvr -#: doc/guix.texi:3862 -msgid "" -"This build system adds the following two phases to the ones defined by " -"@var{gnu-build-system}:" -msgstr "" +#: doc/guix.texi:3868 +msgid "The parameter @code{#:build-target} can be used to specify the Ant task that should be run during the @code{build} phase. By default the ``jar'' task will be run." +msgstr "Le paramètre @code{#:build-target} peut être utilisé pour spécifier la tâche Ant qui devrait être lancée pendant la phase @code{build}. Par défaut la tâche « jar » sera lancée." -#. type: item -#: doc/guix.texi:3864 doc/guix.texi:4159 -#, no-wrap -msgid "glib-or-gtk-wrap" -msgstr "" - -#. type: table +#. type: defvr #: doc/guix.texi:3871 -msgid "" -"The phase @code{glib-or-gtk-wrap} ensures that programs in @file{bin/} are " -"able to find GLib ``schemas'' and @uref{https://developer.gnome.org/gtk3/" -"stable/gtk-running.html, GTK+ modules}. This is achieved by wrapping the " -"programs in launch scripts that appropriately set the @code{XDG_DATA_DIRS} " -"and @code{GTK_PATH} environment variables." -msgstr "" - -#. type: table -#: doc/guix.texi:3878 -msgid "" -"It is possible to exclude specific package outputs from that wrapping " -"process by listing their names in the @code{#:glib-or-gtk-wrap-excluded-" -"outputs} parameter. This is useful when an output is known not to contain " -"any GLib or GTK+ binaries, and where wrapping would gratuitously add a " -"dependency of that output on GLib and GTK+." -msgstr "" - -#. type: item -#: doc/guix.texi:3879 doc/guix.texi:4163 #, no-wrap -msgid "glib-or-gtk-compile-schemas" -msgstr "" +msgid "{Scheme Variable} android-ndk-build-system" +msgstr "{Variable Scheme} android-ndk-build-system" -#. type: table +#. type: cindex +#: doc/guix.texi:3872 +#, no-wrap +msgid "Android distribution" +msgstr "Distribution android" + +#. type: cindex +#: doc/guix.texi:3873 +#, no-wrap +msgid "Android NDK build system" +msgstr "système de construction Android NDK" + +#. type: defvr +#: doc/guix.texi:3877 +msgid "This variable is exported by @code{(guix build-system android-ndk)}. It implements a build procedure for Android NDK (native development kit) packages using a Guix-specific build process." +msgstr "Cette variable est exportée par @code{(guix build-system android-ndk)}. Elle implémente une procédure de construction pour les paquets du NDK Android (@i{native development kit}) avec des processus de construction spécifiques à Guix." + +#. type: defvr +#: doc/guix.texi:3881 +msgid "The build system assumes that packages install their public interface (header) files to the subdirectory \"include\" of the \"out\" output and their libraries to the subdirectory \"lib\" of the \"out\" output." +msgstr "Le système de construction suppose que les paquets installent leur interface publique (les en-têtes) dans un sous-répertoire de « include » de la sortie « out » et leurs bibliothèques dans le sous-répertoire « lib » de la sortie « out »." + +#. type: defvr +#: doc/guix.texi:3884 +msgid "It's also assumed that the union of all the dependencies of a package has no conflicting files." +msgstr "Il est aussi supposé que l'union de toutes les dépendances d'un paquet n'a pas de fichiers en conflit." + +#. type: defvr #: doc/guix.texi:3887 -msgid "" -"The phase @code{glib-or-gtk-compile-schemas} makes sure that all " -"@uref{https://developer.gnome.org/gio/stable/glib-compile-schemas.html, " -"GSettings schemas} of GLib are compiled. Compilation is performed by the " -"@command{glib-compile-schemas} program. It is provided by the package " -"@code{glib:bin} which is automatically imported by the build system. The " -"@code{glib} package providing @command{glib-compile-schemas} can be " -"specified with the @code{#:glib} parameter." -msgstr "" +msgid "For the time being, cross-compilation is not supported - so right now the libraries and header files are assumed to be host tools." +msgstr "Pour l'instant, la compilation croisée n'est pas supportées — donc pour l'instant les bibliothèques et les fichiers d'en-têtes sont supposés être des outils de l'hôte." #. type: defvr #: doc/guix.texi:3890 -msgid "Both phases are executed after the @code{install} phase." -msgstr "" +#, no-wrap +msgid "{Scheme Variable} asdf-build-system/source" +msgstr "{Variable Scheme} asdf-build-system/source" -#. type: defvr +#. type: defvrx +#: doc/guix.texi:3891 +#, no-wrap +msgid "{Scheme Variable} asdf-build-system/sbcl" +msgstr "{Variable Scheme} asdf-build-system/sbcl" + +#. type: defvrx #: doc/guix.texi:3892 #, no-wrap -msgid "{Scheme Variable} minify-build-system" -msgstr "" +msgid "{Scheme Variable} asdf-build-system/ecl" +msgstr "{Variable Scheme} asdf-build-system/ecl" #. type: defvr -#: doc/guix.texi:3895 -msgid "" -"This variable is exported by @code{(guix build-system minify)}. It " -"implements a minification procedure for simple JavaScript packages." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3901 -msgid "" -"It adds @code{uglify-js} to the set of inputs and uses it to compress all " -"JavaScript files in the @file{src} directory. A different minifier package " -"can be specified with the @code{#:uglify-js} parameter, but it is expected " -"that the package writes the minified code to the standard output." -msgstr "" +#: doc/guix.texi:3898 +msgid "These variables, exported by @code{(guix build-system asdf)}, implement build procedures for Common Lisp packages using @url{https://common-lisp.net/project/asdf/, ``ASDF''}. ASDF is a system definition facility for Common Lisp programs and libraries." +msgstr "Ces variables, exportées par @code{(guix build-system asdf)}, implémentent les procédures de constructions pour les paquets en Common Lisp qui utilisent @url{https://common-lisp.net/project/asdf/, ``ASDF''}. ASDF est un dispositif de définition de systèmes pour les programmes et les bibliothèques en Common Lisp." #. type: defvr #: doc/guix.texi:3905 -msgid "" -"When the input JavaScript files are not all located in the @file{src} " -"directory, the parameter @code{#:javascript-files} can be used to specify a " -"list of file names to feed to the minifier." -msgstr "" +msgid "The @code{asdf-build-system/source} system installs the packages in source form, and can be loaded using any common lisp implementation, via ASDF. The others, such as @code{asdf-build-system/sbcl}, install binary systems in the format which a particular implementation understands. These build systems can also be used to produce executable programs, or lisp images which contain a set of packages pre-loaded." +msgstr "Le système @code{asdf-build-system/source} installe les paquets au format source qui peuvent être chargés avec n'importe quelle implémentation de common lisp, via ASDF. Les autres, comme @code{asdf-build-system/sbcl}, installent des binaires au format qu'un implémentation particulière comprend. Ces systèmes de constructions peuvent aussi être utilisés pour produire des programmes exécutables ou des images lisp qui contiennent un ensemble de paquets pré-chargés." #. type: defvr -#: doc/guix.texi:3907 -#, no-wrap -msgid "{Scheme Variable} ocaml-build-system" -msgstr "" +#: doc/guix.texi:3909 +msgid "The build system uses naming conventions. For binary packages, the package name should be prefixed with the lisp implementation, such as @code{sbcl-} for @code{asdf-build-system/sbcl}." +msgstr "Le système de construction utilise des conventions de nommage. Pour les paquets binaires, le nom du paquet devrait être préfixé par l'implémentation lisp, comme @code{sbcl-} pour @code{asdf-build-system/sbcl}." #. type: defvr #: doc/guix.texi:3913 -msgid "" -"This variable is exported by @code{(guix build-system ocaml)}. It " -"implements a build procedure for @uref{https://ocaml.org, OCaml} packages, " -"which consists of choosing the correct set of commands to run for each " -"package. OCaml packages can expect many different commands to be run. This " -"build system will try some of them." -msgstr "" +msgid "Additionally, the corresponding source package should be labeled using the same convention as python packages (see @ref{Python Modules}), using the @code{cl-} prefix." +msgstr "En plus, le paquet source correspondant devrait étiquetté avec la même convention que les paquets python (voir @ref{Python Modules}), avec le préfixe @code{cl-}." #. type: defvr -#: doc/guix.texi:3923 -msgid "" -"When the package has a @file{setup.ml} file present at the top-level, it " -"will run @code{ocaml setup.ml -configure}, @code{ocaml setup.ml -build} and " -"@code{ocaml setup.ml -install}. The build system will assume that this file " -"was generated by @uref{http://oasis.forge.ocamlcore.org/, OASIS} and will " -"take care of setting the prefix and enabling tests if they are not " -"disabled. You can pass configure and build flags with the @code{#:configure-" -"flags} and @code{#:build-flags}. The @code{#:test-flags} key can be passed " -"to change the set of flags used to enable tests. The @code{#:use-make?} key " -"can be used to bypass this system in the build and install phases." -msgstr "" +#: doc/guix.texi:3918 +msgid "For binary packages, each system should be defined as a Guix package. If one package @code{origin} contains several systems, package variants can be created in order to build all the systems. Source packages, which use @code{asdf-build-system/source}, may contain several systems." +msgstr "Pour les paquets binaires, chaque système devrait être défini comme un paquet Guix. Si un paquet @code{origine} contient plusieurs systèmes, on peut créer des variantes du paquet pour construire tous les systèmes. Les paquets sources, qui utilisent @code{asdf-build-system/source}, peuvent contenir plusieurs systèmes." #. type: defvr -#: doc/guix.texi:3928 -msgid "" -"When the package has a @file{configure} file, it is assumed that it is a " -"hand-made configure script that requires a different argument format than in " -"the @code{gnu-build-system}. You can add more flags with the @code{#:" -"configure-flags} key." -msgstr "" +#: doc/guix.texi:3925 +msgid "In order to create executable programs and images, the build-side procedures @code{build-program} and @code{build-image} can be used. They should be called in a build phase after the @code{create-symlinks} phase, so that the system which was just built can be used within the resulting image. @code{build-program} requires a list of Common Lisp expressions to be passed as the @code{#:entry-program} argument." +msgstr "Pour créer des programmes exécutables et des images, les procédures côté construction @code{build-program} et @code{build-image} peuvent être utilisées. Elles devraient être appelées dans une phase de construction après la phase @code{create-symlinks} pour que le système qui vient d'être construit puisse être utilisé dans l'image créée. @code{build-program} requiert une liste d'expressions Common Lisp dans l'argument @code{#:entry-program}." #. type: defvr -#: doc/guix.texi:3932 -msgid "" -"When the package has a @file{Makefile} file (or @code{#:use-make?} is " -"@code{#t}), it will be used and more flags can be passed to the build and " -"install phases with the @code{#:make-flags} key." -msgstr "" +#: doc/guix.texi:3934 +msgid "If the system is not defined within its own @code{.asd} file of the same name, then the @code{#:asd-file} parameter should be used to specify which file the system is defined in. Furthermore, if the package defines a system for its tests in a separate file, it will be loaded before the tests are run if it is specified by the @code{#:test-asd-file} parameter. If it is not set, the files @code{-tests.asd}, @code{-test.asd}, @code{tests.asd}, and @code{test.asd} will be tried if they exist." +msgstr "Si le système n'est pas défini dans son propre fichier @code{.asd} du même nom, alors le paramètre @code{#:asd-file} devrait être utilisé pour spécifier dans quel fichier le système est défini. De plus, si le paquet défini un système pour ses tests dans un fichier séparé, il sera chargé avant que les tests ne soient lancés s'il est spécifié par le paramètre @code{#:test-asd-file}. S'il n'est pas spécifié, les fichiers @code{-tests.asd}, @code{-test.asd}, @code{tests.asd} et @code{test.asd} seront testés." #. type: defvr -#: doc/guix.texi:3940 -msgid "" -"Finally, some packages do not have these files and use a somewhat standard " -"location for its build system. In that case, the build system will run " -"@code{ocaml pkg/pkg.ml} or @code{ocaml pkg/build.ml} and take care of " -"providing the path to the required findlib module. Additional flags can be " -"passed via the @code{#:build-flags} key. Install is taken care of by " -"@command{opam-installer}. In this case, the @code{opam} package must be " -"added to the @code{native-inputs} field of the package definition." -msgstr "" +#: doc/guix.texi:3938 +msgid "If for some reason the package must be named in a different way than the naming conventions suggest, the @code{#:asd-system-name} parameter can be used to specify the name of the system." +msgstr "Si pour quelque raison que ce soit le paquet doit être nommé d'une manière différente de ce que la convention de nommage suggère, le paramètre @code{#:asd-system-name} peut être utilisé pour spécifier le nom du système." #. type: defvr -#: doc/guix.texi:3948 -msgid "" -"Note that most OCaml packages assume they will be installed in the same " -"directory as OCaml, which is not what we want in guix. In particular, they " -"will install @file{.so} files in their module's directory, which is usually " -"fine because it is in the OCaml compiler directory. In guix though, these " -"libraries cannot be found and we use @code{CAML_LD_LIBRARY_PATH}. This " -"variable points to @file{lib/ocaml/site-lib/stubslibs} and this is where " -"@file{.so} libraries should be installed." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3950 +#: doc/guix.texi:3941 #, no-wrap -msgid "{Scheme Variable} python-build-system" -msgstr "" +msgid "{Scheme Variable} cargo-build-system" +msgstr "{Variable Scheme} cargo-build-system" -#. type: defvr -#: doc/guix.texi:3955 -msgid "" -"This variable is exported by @code{(guix build-system python)}. It " -"implements the more or less standard build procedure used by Python " -"packages, which consists in running @code{python setup.py build} and then " -"@code{python setup.py install --prefix=/gnu/store/@dots{}}." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3959 -msgid "" -"For packages that install stand-alone Python programs under @code{bin/}, it " -"takes care of wrapping these programs so that their @code{PYTHONPATH} " -"environment variable points to all the Python libraries they depend on." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3965 -msgid "" -"Which Python package is used to perform the build can be specified with the " -"@code{#:python} parameter. This is a useful way to force a package to be " -"built for a specific version of the Python interpreter, which might be " -"necessary if the package is only compatible with a single interpreter " -"version." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3970 -msgid "" -"By default guix calls @code{setup.py} under control of @code{setuptools}, " -"much like @command{pip} does. Some packages are not compatible with " -"setuptools (and pip), thus you can disable this by setting the @code{#:use-" -"setuptools} parameter to @code{#f}." -msgstr "" - -#. type: defvr -#: doc/guix.texi:3972 +#. type: cindex +#: doc/guix.texi:3942 #, no-wrap -msgid "{Scheme Variable} perl-build-system" -msgstr "" +msgid "Rust programming language" +msgstr "Langage de programmation Rust" + +#. type: cindex +#: doc/guix.texi:3943 +#, no-wrap +msgid "Cargo (Rust build system)" +msgstr "Cargo (système de construction Rust)" #. type: defvr -#: doc/guix.texi:3984 -msgid "" -"This variable is exported by @code{(guix build-system perl)}. It implements " -"the standard build procedure for Perl packages, which either consists in " -"running @code{perl Build.PL --prefix=/gnu/store/@dots{}}, followed by " -"@code{Build} and @code{Build install}; or in running @code{perl Makefile.PL " -"PREFIX=/gnu/store/@dots{}}, followed by @code{make} and @code{make install}, " -"depending on which of @code{Build.PL} or @code{Makefile.PL} is present in " -"the package distribution. Preference is given to the former if both " -"@code{Build.PL} and @code{Makefile.PL} exist in the package distribution. " -"This preference can be reversed by specifying @code{#t} for the @code{#:make-" -"maker?} parameter." -msgstr "" +#: doc/guix.texi:3947 +msgid "This variable is exported by @code{(guix build-system cargo)}. It supports builds of packages using Cargo, the build tool of the @uref{https://www.rust-lang.org, Rust programming language}." +msgstr "Cette variable est exportée par @code{(guix build-system cargo)}. Elle supporte les construction de paquets avec Cargo, le système de construction du @uref{https://www.rust-lang.org, langage de programmation Rust}." #. type: defvr -#: doc/guix.texi:3988 -msgid "" -"The initial @code{perl Makefile.PL} or @code{perl Build.PL} invocation " -"passes flags specified by the @code{#:make-maker-flags} or @code{#:module-" -"build-flags} parameter, respectively." -msgstr "" +#: doc/guix.texi:3952 +msgid "In its @code{configure} phase, this build system replaces dependencies specified in the @file{Carto.toml} file with inputs to the Guix package. The @code{install} phase installs the binaries, and it also installs the source code and @file{Cargo.toml} file." +msgstr "Dans sa phase @code{configure}, ce système de construction remplace les dépendances spécifiées dans le fichier @file{Cargo.toml} par des paquets Guix. La phase @code{install} installe les binaires et installe aussi le code source et le fichier @file{Cargo.toml}." #. type: defvr -#: doc/guix.texi:3990 -msgid "Which Perl package is used can be specified with @code{#:perl}." -msgstr "" +#: doc/guix.texi:3954 +#, no-wrap +msgid "{Scheme Variable} cmake-build-system" +msgstr "{Variable Scheme} cmake-build-system" + +#. type: defvr +#: doc/guix.texi:3958 +msgid "This variable is exported by @code{(guix build-system cmake)}. It implements the build procedure for packages using the @url{http://www.cmake.org, CMake build tool}." +msgstr "Cette variable est exportée par @code{(guix build-system cmake)}. Elle implémente la procédure de construction des paquets qui utilisent l'@url{http://www.cmake.org, outils de construction CMake}." + +#. type: defvr +#: doc/guix.texi:3962 +msgid "It automatically adds the @code{cmake} package to the set of inputs. Which package is used can be specified with the @code{#:cmake} parameter." +msgstr "Elle ajoute automatiquement le paquet @code{cmake} à l'ensemble des entrées. Le paquet utilisé peut être spécifié par le paramètre @code{#:cmake}." + +#. type: defvr +#: doc/guix.texi:3969 +msgid "The @code{#:configure-flags} parameter is taken as a list of flags passed to the @command{cmake} command. The @code{#:build-type} parameter specifies in abstract terms the flags passed to the compiler; it defaults to @code{\"RelWithDebInfo\"} (short for ``release mode with debugging information''), which roughly means that code is compiled with @code{-O2 -g}, as is the case for Autoconf-based packages by default." +msgstr "Le paramètre @code{#:configure-flags} est pris comme une liste de drapeaux à passer à la commande @command{cmake}. Le paramètre @code{#:build-type} spécifie en termes abstrait les drapeaux passés au compilateur ; sa valeur par défaut est @code{\"RelWithDebInfo\"} (ce qui veut dire « mode public avec les informations de débogage » en plus court), ce qui signifie en gros que le code sera compilé avec @code{-O2 -g} comme pour les paquets autoconf par défaut." + +#. type: defvr +#: doc/guix.texi:3971 +#, no-wrap +msgid "{Scheme Variable} go-build-system" +msgstr "{Variable Scheme} go-build-system" + +#. type: defvr +#: doc/guix.texi:3976 +msgid "This variable is exported by @code{(guix build-system go)}. It implements a build procedure for Go packages using the standard @url{https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies, Go build mechanisms}." +msgstr "Cette variable est exportée par @code{(guix build-system go)}. Elle implémente la procédure pour les paquets Go utilisant les @url{https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies, mécanismes de construction Go} standard." + +#. type: defvr +#: doc/guix.texi:3987 +msgid "The user is expected to provide a value for the key @code{#:import-path} and, in some cases, @code{#:unpack-path}. The @url{https://golang.org/doc/code.html#ImportPaths, import path} corresponds to the file system path expected by the package's build scripts and any referring packages, and provides a unique way to refer to a Go package. It is typically based on a combination of the package source code's remote URI and file system hierarchy structure. In some cases, you will need to unpack the package's source code to a different directory structure than the one indicated by the import path, and @code{#:unpack-path} should be used in such cases." +msgstr "L'utilisateur doit fournir une valeur à la clef @code{#:import-path} et, dans certains cas, @code{#:unpack-path}. Le @url{https://golang.org/doc/code.html#ImportPaths, chemin d'import} correspond au chemin dans le système de fichiers attendu par le script de construction du paquet et les paquets qui s'y réfèrent et fournit une manière unique de se référer à un paquet Go. Il est typiquement basé sur une combinaison de l'URI du code source du paquet et d'une structure hiérarchique du système de fichier. Dans certains cas, vous devrez extraire le code source du paquet dans une structure de répertoires différente que celle indiquée par le chemin d'import et @code{#:unpack-path} devrait être utilisé dans ces cas-là." #. type: defvr #: doc/guix.texi:3992 +msgid "Packages that provide Go libraries should be installed along with their source code. The key @code{#:install-source?}, which defaults to @code{#t}, controls whether or not the source code is installed. It can be set to @code{#f} for packages that only provide executable files." +msgstr "Les paquets qui fournissent des bibliothèques Go devraient être installées avec leur code source. La clef @code{#:install-soruce?}, qui vaut @code{#t} par défaut, contrôle l'installation du code source. Elle peut être mise à @code{#f} pour les paquets qui ne fournissent que des fichiers exécutables." + +#. type: defvr +#: doc/guix.texi:3994 #, no-wrap -msgid "{Scheme Variable} r-build-system" -msgstr "" +msgid "{Scheme Variable} glib-or-gtk-build-system" +msgstr "{Variable Scheme} glib-or-gtk-build-system" + +#. type: defvr +#: doc/guix.texi:3997 +msgid "This variable is exported by @code{(guix build-system glib-or-gtk)}. It is intended for use with packages making use of GLib or GTK+." +msgstr "Cette variable est exportée par @code{(guix build-system glib-or-gtk)}. Elle est conçue pour être utilisée par des paquets qui utilisent GLib ou GTK+." #. type: defvr #: doc/guix.texi:4000 -msgid "" -"This variable is exported by @code{(guix build-system r)}. It implements " -"the build procedure used by @uref{http://r-project.org, R} packages, which " -"essentially is little more than running @code{R CMD INSTALL --library=/gnu/" -"store/@dots{}} in an environment where @code{R_LIBS_SITE} contains the paths " -"to all R package inputs. Tests are run after installation using the R " -"function @code{tools::testInstalledPackage}." -msgstr "" +msgid "This build system adds the following two phases to the ones defined by @var{gnu-build-system}:" +msgstr "Ce système de construction ajoute les deux phases suivantes à celles définies par @var{gnu-build-system} :" -#. type: defvr -#: doc/guix.texi:4002 +#. type: item +#: doc/guix.texi:4002 doc/guix.texi:4297 #, no-wrap -msgid "{Scheme Variable} texlive-build-system" -msgstr "" +msgid "glib-or-gtk-wrap" +msgstr "glib-or-gtk-wrap" -#. type: defvr -#: doc/guix.texi:4007 -msgid "" -"This variable is exported by @code{(guix build-system texlive)}. It is used " -"to build TeX packages in batch mode with a specified engine. The build " -"system sets the @code{TEXINPUTS} variable to find all TeX source files in " -"the inputs." -msgstr "" +#. type: table +#: doc/guix.texi:4009 +msgid "The phase @code{glib-or-gtk-wrap} ensures that programs in @file{bin/} are able to find GLib ``schemas'' and @uref{https://developer.gnome.org/gtk3/stable/gtk-running.html, GTK+ modules}. This is achieved by wrapping the programs in launch scripts that appropriately set the @code{XDG_DATA_DIRS} and @code{GTK_PATH} environment variables." +msgstr "La phase @code{glib-or-gtk-wrap} s'assure que les programmes dans @file{bin/} sont capable de trouver les « schemas » GLib et les @uref{https://developer.gnome.org/gtk3/stable/gtk-running.html, modules GTK+}. Ceci est fait en enveloppant les programmes dans des scripts de lancement qui initialisent correctement les variables d'environnement @code{XDG_DATA_DIRS} et @code{GTK_PATH}." -#. type: defvr +#. type: table #: doc/guix.texi:4016 -msgid "" -"By default it runs @code{luatex} on all files ending on @code{ins}. A " -"different engine and format can be specified with the @code{#:tex-format} " -"argument. Different build targets can be specified with the @code{#:build-" -"targets} argument, which expects a list of file names. The build system " -"adds only @code{texlive-bin} and @code{texlive-latex-base} (both from " -"@code{(gnu packages tex}) to the inputs. Both can be overridden with the " -"arguments @code{#:texlive-bin} and @code{#:texlive-latex-base}, respectively." -msgstr "" +msgid "It is possible to exclude specific package outputs from that wrapping process by listing their names in the @code{#:glib-or-gtk-wrap-excluded-outputs} parameter. This is useful when an output is known not to contain any GLib or GTK+ binaries, and where wrapping would gratuitously add a dependency of that output on GLib and GTK+." +msgstr "Il est possible d'exclure des sorties spécifiques de ce processus d'enveloppage en listant leur nom dans le paramètre @code{#:glib-or-gtk-wrap-excluded-outputs}. C'est utile lorsqu'une sortie est connue pour ne pas contenir de binaires GLib ou GTK+, et où l'enveloppe ajouterait une dépendance inutile vers GLib et GTK+." -#. type: defvr -#: doc/guix.texi:4019 -msgid "" -"The @code{#:tex-directory} parameter tells the build system where to install " -"the built files under the texmf tree." -msgstr "" - -#. type: defvr -#: doc/guix.texi:4021 +#. type: item +#: doc/guix.texi:4017 doc/guix.texi:4301 #, no-wrap -msgid "{Scheme Variable} ruby-build-system" -msgstr "" +msgid "glib-or-gtk-compile-schemas" +msgstr "glib-or-gtk-compile-schemas" + +#. type: table +#: doc/guix.texi:4025 +msgid "The phase @code{glib-or-gtk-compile-schemas} makes sure that all @uref{https://developer.gnome.org/gio/stable/glib-compile-schemas.html, GSettings schemas} of GLib are compiled. Compilation is performed by the @command{glib-compile-schemas} program. It is provided by the package @code{glib:bin} which is automatically imported by the build system. The @code{glib} package providing @command{glib-compile-schemas} can be specified with the @code{#:glib} parameter." +msgstr "La phase @code{glib-or-gtk-compile-schemas} s'assure que tous les @uref{https://developer.gnome.org/gio/stable/glib-compile-schemas.html, schémas GSettings} de GLib sont compilés. La compilation est effectuée par le programme @command{glib-compile-schemas}. Il est fournit par le paquet @code{glib:bin} qui est automatiquement importé par le système de construction. Le paquet @code{glib} qui fournit @command{glib-compile-schemas} peut être spécifié avec le paramètre @code{#:glib}." #. type: defvr -#: doc/guix.texi:4025 -msgid "" -"This variable is exported by @code{(guix build-system ruby)}. It implements " -"the RubyGems build procedure used by Ruby packages, which involves running " -"@code{gem build} followed by @code{gem install}." -msgstr "" +#: doc/guix.texi:4028 +msgid "Both phases are executed after the @code{install} phase." +msgstr "Ces deux phases sont exécutées après la phase @code{install}." + +#. type: defvr +#: doc/guix.texi:4030 +#, no-wrap +msgid "{Scheme Variable} minify-build-system" +msgstr "{Variable Scheme} minify-build-system" #. type: defvr #: doc/guix.texi:4033 -msgid "" -"The @code{source} field of a package that uses this build system typically " -"references a gem archive, since this is the format that Ruby developers use " -"when releasing their software. The build system unpacks the gem archive, " -"potentially patches the source, runs the test suite, repackages the gem, and " -"installs it. Additionally, directories and tarballs may be referenced to " -"allow building unreleased gems from Git or a traditional source release " -"tarball." -msgstr "" - -#. type: defvr -#: doc/guix.texi:4037 -msgid "" -"Which Ruby package is used can be specified with the @code{#:ruby} " -"parameter. A list of additional flags to be passed to the @command{gem} " -"command can be specified with the @code{#:gem-flags} parameter." -msgstr "" +msgid "This variable is exported by @code{(guix build-system minify)}. It implements a minification procedure for simple JavaScript packages." +msgstr "Cette variable est exportée par @code{(guix build-system minify)}. Elle implémente une procédure de minification pour des paquets JavaScript simples." #. type: defvr #: doc/guix.texi:4039 -#, no-wrap -msgid "{Scheme Variable} waf-build-system" -msgstr "" +msgid "It adds @code{uglify-js} to the set of inputs and uses it to compress all JavaScript files in the @file{src} directory. A different minifier package can be specified with the @code{#:uglify-js} parameter, but it is expected that the package writes the minified code to the standard output." +msgstr "Elle ajoute @code{uglify-js} à l'ensemble des entrées et l'utilise pour compresser tous les fichiers JavaScript du répertoire @file{src}. Un minifieur différent peut être spécifié avec le paramètre @code{#:uglify-js} mais il est attendu que ce paquet écrive le code minifié sur la sortie standard." + +#. type: defvr +#: doc/guix.texi:4043 +msgid "When the input JavaScript files are not all located in the @file{src} directory, the parameter @code{#:javascript-files} can be used to specify a list of file names to feed to the minifier." +msgstr "Lorsque les fichiers JavaScript d'entrée ne sont pas situés dans le répertoire @file{src}, le paramètre @code{#:javascript-files} peut être utilisé pour spécifier une liste de noms de fichiers à donner au minifieur." #. type: defvr #: doc/guix.texi:4045 -msgid "" -"This variable is exported by @code{(guix build-system waf)}. It implements " -"a build procedure around the @code{waf} script. The common phases---" -"@code{configure}, @code{build}, and @code{install}---are implemented by " -"passing their names as arguments to the @code{waf} script." -msgstr "" - -#. type: defvr -#: doc/guix.texi:4049 -msgid "" -"The @code{waf} script is executed by the Python interpreter. Which Python " -"package is used to run the script can be specified with the @code{#:python} " -"parameter." -msgstr "" +#, no-wrap +msgid "{Scheme Variable} ocaml-build-system" +msgstr "{Variable Scheme} ocaml-build-system" #. type: defvr #: doc/guix.texi:4051 -#, no-wrap -msgid "{Scheme Variable} scons-build-system" -msgstr "" +msgid "This variable is exported by @code{(guix build-system ocaml)}. It implements a build procedure for @uref{https://ocaml.org, OCaml} packages, which consists of choosing the correct set of commands to run for each package. OCaml packages can expect many different commands to be run. This build system will try some of them." +msgstr "Cette variable est exportée par @code{(guix build-system ocaml)}. Elle implémente une procédure de construction pour les paquets @uref{https://ocaml.org, OCaml} qui consiste à choisir le bon ensemble de commande à lancer pour chaque paquet. Les paquets OCaml peuvent demander des commandes diverses pour être construit. Ce système de construction en essaye certaines." #. type: defvr -#: doc/guix.texi:4057 -msgid "" -"This variable is exported by @code{(guix build-system scons)}. It " -"implements the build procedure used by the SCons software construction " -"tool. This build system runs @code{scons} to build the package, @code{scons " -"test} to run tests, and then @code{scons install} to install the package." -msgstr "" +#: doc/guix.texi:4061 +msgid "When the package has a @file{setup.ml} file present at the top-level, it will run @code{ocaml setup.ml -configure}, @code{ocaml setup.ml -build} and @code{ocaml setup.ml -install}. The build system will assume that this file was generated by @uref{http://oasis.forge.ocamlcore.org/, OASIS} and will take care of setting the prefix and enabling tests if they are not disabled. You can pass configure and build flags with the @code{#:configure-flags} and @code{#:build-flags}. The @code{#:test-flags} key can be passed to change the set of flags used to enable tests. The @code{#:use-make?} key can be used to bypass this system in the build and install phases." +msgstr "Lorsqu'un fichier @file{setup.ml} est présent dans le répertoire de plus haut niveau, elle lancera @code{ocaml setup.ml -configure}, @code{ocaml setup.ml -build} et @code{ocaml setup.ml -install}. Le système de construction supposera que ces fichiers ont été générés par @uref{http://oasis.forge.ocamlcore.org/, OASIS} et prendra soin d'initialiser le préfixe et d'activer les tests s'ils ne sont pas désactivés. Vous pouvez passer des drapeaux de configuration et de consturction avec @code{#:configure-flags} et @code{#:build-flags}. La clef @code{#:test-flags} peut être passée pour changer l'ensemble des drapeaux utilisés pour activer les tests. La clef @code{#:use-make?} peut être utilisée pour outrepasser ce système dans les phases de construction et d'installation." #. type: defvr -#: doc/guix.texi:4062 -msgid "" -"Additional flags to be passed to @code{scons} can be specified with the " -"@code{#:scons-flags} parameter. The version of Python used to run SCons can " -"be specified by selecting the appropriate SCons package with the @code{#:" -"scons} parameter." -msgstr "" +#: doc/guix.texi:4066 +msgid "When the package has a @file{configure} file, it is assumed that it is a hand-made configure script that requires a different argument format than in the @code{gnu-build-system}. You can add more flags with the @code{#:configure-flags} key." +msgstr "Lorsque le paquet a un fichier @file{configure}, il est supposé qu'il s'agit d'un script configure écrit à la main qui demande un format différent de celui de @code{gnu-build-system}. Vous pouvez ajouter plus de drapeaux avec la clef @code{#:configure-flags}." #. type: defvr -#: doc/guix.texi:4064 -#, no-wrap -msgid "{Scheme Variable} haskell-build-system" -msgstr "" +#: doc/guix.texi:4070 +msgid "When the package has a @file{Makefile} file (or @code{#:use-make?} is @code{#t}), it will be used and more flags can be passed to the build and install phases with the @code{#:make-flags} key." +msgstr "Lorsque le paquet a un fichier @file{Makefile} (ou @code{#:use-make?} vaut @code{#t}), il sera utilisé et plus de drapeaux peuvent être passés à la construction et l'installation avec la clef @code{#:make-flags}." #. type: defvr #: doc/guix.texi:4078 -msgid "" -"This variable is exported by @code{(guix build-system haskell)}. It " -"implements the Cabal build procedure used by Haskell packages, which " -"involves running @code{runhaskell Setup.hs configure --prefix=/gnu/store/" -"@dots{}} and @code{runhaskell Setup.hs build}. Instead of installing the " -"package by running @code{runhaskell Setup.hs install}, to avoid trying to " -"register libraries in the read-only compiler store directory, the build " -"system uses @code{runhaskell Setup.hs copy}, followed by @code{runhaskell " -"Setup.hs register}. In addition, the build system generates the package " -"documentation by running @code{runhaskell Setup.hs haddock}, unless @code{#:" -"haddock? #f} is passed. Optional Haddock parameters can be passed with the " -"help of the @code{#:haddock-flags} parameter. If the file @code{Setup.hs} " -"is not found, the build system looks for @code{Setup.lhs} instead." -msgstr "" +msgid "Finally, some packages do not have these files and use a somewhat standard location for its build system. In that case, the build system will run @code{ocaml pkg/pkg.ml} or @code{ocaml pkg/build.ml} and take care of providing the path to the required findlib module. Additional flags can be passed via the @code{#:build-flags} key. Install is taken care of by @command{opam-installer}. In this case, the @code{opam} package must be added to the @code{native-inputs} field of the package definition." +msgstr "Enfin, certains paquets n'ont pas ces fichiers mais utilisent un emplacement plus ou moins standard pour leur système de construction. Dans ce cas, le système de construction lancera @code{ocaml pkg/pkg.ml} ou @code{pkg/build.ml} et prendra soin de fournir le chemin du module findlib requis. Des drapeaux supplémentaires peuvent être passés via la clef @code{#:bulid-flags}. L'installation se fait avec @command{opam-installer}. Dans ce cas, le paquet @code{opam} doit être ajouté au champ @code{native-inputs} de la définition du paquet." #. type: defvr -#: doc/guix.texi:4081 -msgid "" -"Which Haskell compiler is used can be specified with the @code{#:haskell} " -"parameter which defaults to @code{ghc}." -msgstr "" - -#. type: defvr -#: doc/guix.texi:4083 -#, no-wrap -msgid "{Scheme Variable} dub-build-system" -msgstr "" +#: doc/guix.texi:4086 +msgid "Note that most OCaml packages assume they will be installed in the same directory as OCaml, which is not what we want in guix. In particular, they will install @file{.so} files in their module's directory, which is usually fine because it is in the OCaml compiler directory. In guix though, these libraries cannot be found and we use @code{CAML_LD_LIBRARY_PATH}. This variable points to @file{lib/ocaml/site-lib/stubslibs} and this is where @file{.so} libraries should be installed." +msgstr "Remarquez que la plupart des paquets OCaml supposent qu'ils seront installés dans le même répertoire qu'OCaml, ce qui n'est pas ce que nous voulons faire dans Guix. En particulier, ils installeront leurs fichiers @file{.so} dans leur propre répertoire de module, ce qui est normalement correct puisqu'il s'agit du répertoire du compilateur OCaml. Dans Guix en revanche, le bibliothèques ne peuvent pas y être trouvées et on utilise @code{CAML_LD_LIBRARY_PATH} à la place. Cette variable pointe vers @file{lib/ocaml/site-lib/stubslibs} et c'est là où les bibliothèques @file{.so} devraient être installées." #. type: defvr #: doc/guix.texi:4088 -msgid "" -"This variable is exported by @code{(guix build-system dub)}. It implements " -"the Dub build procedure used by D packages, which involves running @code{dub " -"build} and @code{dub run}. Installation is done by copying the files " -"manually." -msgstr "" - -#. type: defvr -#: doc/guix.texi:4091 -msgid "" -"Which D compiler is used can be specified with the @code{#:ldc} parameter " -"which defaults to @code{ldc}." -msgstr "" +#, no-wrap +msgid "{Scheme Variable} python-build-system" +msgstr "{Variable Scheme} python-build-system" #. type: defvr #: doc/guix.texi:4093 -#, no-wrap -msgid "{Scheme Variable} emacs-build-system" -msgstr "" +msgid "This variable is exported by @code{(guix build-system python)}. It implements the more or less standard build procedure used by Python packages, which consists in running @code{python setup.py build} and then @code{python setup.py install --prefix=/gnu/store/@dots{}}." +msgstr "Cette variable est exportée par @code{(guix build-system python)}. Elle implémente la procédure de construction plus ou moins standarde utilisée pour les paquets Python, qui consiste à lancer @code{python setup.py build} puis @code{python setup.py install --prefix=/gnu/store/@dots{}}." #. type: defvr #: doc/guix.texi:4097 -msgid "" -"This variable is exported by @code{(guix build-system emacs)}. It " -"implements an installation procedure similar to the packaging system of " -"Emacs itself (@pxref{Packages,,, emacs, The GNU Emacs Manual})." -msgstr "" +msgid "For packages that install stand-alone Python programs under @code{bin/}, it takes care of wrapping these programs so that their @code{PYTHONPATH} environment variable points to all the Python libraries they depend on." +msgstr "Pour les paquets qui installent des programmes autonomes dans @code{bin/}, elle prend soin d'envelopper ces binaires pour que leur variable d'environnement @code{PYTHONPATH} pointe vers toutes les bibliothèques Python dont ils dépendent." #. type: defvr -#: doc/guix.texi:4104 -msgid "" -"It first creates the @code{@var{package}-autoloads.el} file, then it byte " -"compiles all Emacs Lisp files. Differently from the Emacs packaging system, " -"the Info documentation files are moved to the standard documentation " -"directory and the @file{dir} file is deleted. Each package is installed in " -"its own directory under @file{share/emacs/site-lisp/guix.d}." -msgstr "" +#: doc/guix.texi:4103 +msgid "Which Python package is used to perform the build can be specified with the @code{#:python} parameter. This is a useful way to force a package to be built for a specific version of the Python interpreter, which might be necessary if the package is only compatible with a single interpreter version." +msgstr "Le paquet Python utilisé pour effectuer la construction peut être spécifié avec le paramètre @code{#:python}. C'est une manière utile de forcer un paquet à être construit avec une version particulière de l'interpréteur python, ce qui peut être nécessaire si le paquet n'est compatible qu'avec une version de l'interpréteur." #. type: defvr -#: doc/guix.texi:4106 +#: doc/guix.texi:4108 +msgid "By default guix calls @code{setup.py} under control of @code{setuptools}, much like @command{pip} does. Some packages are not compatible with setuptools (and pip), thus you can disable this by setting the @code{#:use-setuptools} parameter to @code{#f}." +msgstr "Par défaut Guix appelle @code{setup.py} sous le contrôle de @code{setuptools}, comme le fait @command{pip}. Certains paquets ne sont pas compatibles avec setuptools (et pip), ainsi vous pouvez désactiver cela en mettant le paramètre @code{#:use-setuptools} à @code{#f}." + +#. type: defvr +#: doc/guix.texi:4110 #, no-wrap -msgid "{Scheme Variable} font-build-system" -msgstr "" +msgid "{Scheme Variable} perl-build-system" +msgstr "{Variable Scheme} perl-build-system" #. type: defvr -#: doc/guix.texi:4112 -msgid "" -"This variable is exported by @code{(guix build-system font)}. It implements " -"an installation procedure for font packages where upstream provides pre-" -"compiled TrueType, OpenType, etc. font files that merely need to be copied " -"into place. It copies font files to standard locations in the output " -"directory." -msgstr "" +#: doc/guix.texi:4122 +msgid "This variable is exported by @code{(guix build-system perl)}. It implements the standard build procedure for Perl packages, which either consists in running @code{perl Build.PL --prefix=/gnu/store/@dots{}}, followed by @code{Build} and @code{Build install}; or in running @code{perl Makefile.PL PREFIX=/gnu/store/@dots{}}, followed by @code{make} and @code{make install}, depending on which of @code{Build.PL} or @code{Makefile.PL} is present in the package distribution. Preference is given to the former if both @code{Build.PL} and @code{Makefile.PL} exist in the package distribution. This preference can be reversed by specifying @code{#t} for the @code{#:make-maker?} parameter." +msgstr "Cette variable est exportée par @code{(guix build-system perl)}. Elle implémente la procédure de construction standarde des paquets Perl, qui consiste soit à lancer @code{perl Build.PL --prefix=/gnu/store/@dots{}}, suivi de @code{Build} et @code{Build install} ; ou à lancer @code{perl Makefile.PL PREFIX=/gnu/store/@dots{}}, suivi de @code{make} et @code{make install}, en fonction de la présence de @code{Build.PL} ou @code{Makefile.PL} dans la distribution du paquet. Le premier a la préférence si @code{Build.PL} et @code{Makefile.PL} existent tous deux dans la distribution du paquet. Cette préférence peut être inversée en spécifiant @code{#t} pour le paramètre @code{#:make-maker?}." #. type: defvr -#: doc/guix.texi:4114 +#: doc/guix.texi:4126 +msgid "The initial @code{perl Makefile.PL} or @code{perl Build.PL} invocation passes flags specified by the @code{#:make-maker-flags} or @code{#:module-build-flags} parameter, respectively." +msgstr "L'invocation initiale de @code{perl Makefile.PL} ou @code{perl Build.PL} passe les drapeaux spécifiés par le paramètre @code{#:make-maker-flags} ou @code{#:module-build-flags}, respectivement." + +#. type: defvr +#: doc/guix.texi:4128 +msgid "Which Perl package is used can be specified with @code{#:perl}." +msgstr "Le paquet Perl utilisé peut être spécifié avec @code{#:perl}." + +#. type: defvr +#: doc/guix.texi:4130 #, no-wrap -msgid "{Scheme Variable} meson-build-system" -msgstr "" +msgid "{Scheme Variable} r-build-system" +msgstr "{Variable Scheme} r-build-system" #. type: defvr -#: doc/guix.texi:4118 -msgid "" -"This variable is exported by @code{(guix build-system meson)}. It " -"implements the build procedure for packages that use @url{http://mesonbuild." -"com, Meson} as their build system." -msgstr "" - -#. type: defvr -#: doc/guix.texi:4124 -msgid "" -"It adds both Meson and @uref{https://ninja-build.org/, Ninja} to the set of " -"inputs, and they can be changed with the parameters @code{#:meson} and " -"@code{#:ninja} if needed. The default Meson is @code{meson-for-build}, " -"which is special because it doesn't clear the @code{RUNPATH} of binaries and " -"libraries when they are installed." -msgstr "" - -#. type: defvr -#: doc/guix.texi:4127 -msgid "" -"This build system is an extension of @var{gnu-build-system}, but with the " -"following phases changed to some specific for Meson:" -msgstr "" - -#. type: table -#: doc/guix.texi:4134 -msgid "" -"The phase runs @code{meson} with the flags specified in @code{#:configure-" -"flags}. The flag @code{--build-type} is always set to @code{plain} unless " -"something else is specified in @code{#:build-type}." -msgstr "" - -#. type: table #: doc/guix.texi:4138 -msgid "" -"The phase runs @code{ninja} to build the package in parallel by default, but " -"this can be changed with @code{#:parallel-build?}." -msgstr "" +msgid "This variable is exported by @code{(guix build-system r)}. It implements the build procedure used by @uref{http://r-project.org, R} packages, which essentially is little more than running @code{R CMD INSTALL --library=/gnu/store/@dots{}} in an environment where @code{R_LIBS_SITE} contains the paths to all R package inputs. Tests are run after installation using the R function @code{tools::testInstalledPackage}." +msgstr "Cette variable est exportée par @code{(guix build-system r)}. Elle implémente la procédure de construction utilisée par les paquets @uref{http://r-project.org, R} qui consiste à lancer à peine plus que @code{R CMD INSTALL --library=/gnu/store/@dots{}} dans un environnement où @code{R_LIBS_SITE} contient les chemins de toutes les entrées R. Les tests sont lancés après l'installation avec la fonction R @code{tools::testInstalledPackage}." -#. type: table -#: doc/guix.texi:4142 -msgid "" -"The phase runs @code{ninja} with the target specified in @code{#:test-" -"target}, which is @code{\"test\"} by default." -msgstr "" +#. type: defvr +#: doc/guix.texi:4140 +#, no-wrap +msgid "{Scheme Variable} texlive-build-system" +msgstr "{Variable Scheme} texlive-build-system" -#. type: table +#. type: defvr #: doc/guix.texi:4145 -msgid "The phase runs @code{ninja install} and can not be changed." -msgstr "" +msgid "This variable is exported by @code{(guix build-system texlive)}. It is used to build TeX packages in batch mode with a specified engine. The build system sets the @code{TEXINPUTS} variable to find all TeX source files in the inputs." +msgstr "Cette variable est exportée par @code{(guix build-system texlive)}. Elle est utilisée pour construire des paquets TeX en mode batch avec le moteur spécifié. Le système de construction initialise la variable @code{TEXINPUTS} pour trouver tous les fichiers source TeX dans ses entrées." #. type: defvr -#: doc/guix.texi:4148 -msgid "Apart from that, the build system also adds the following phases:" -msgstr "" +#: doc/guix.texi:4154 +msgid "By default it runs @code{luatex} on all files ending on @code{ins}. A different engine and format can be specified with the @code{#:tex-format} argument. Different build targets can be specified with the @code{#:build-targets} argument, which expects a list of file names. The build system adds only @code{texlive-bin} and @code{texlive-latex-base} (both from @code{(gnu packages tex}) to the inputs. Both can be overridden with the arguments @code{#:texlive-bin} and @code{#:texlive-latex-base}, respectively." +msgstr "Par défaut, elle lance @code{luatex} sur tous les fichiers qui se terminent par @code{ins}. Un moteur et un format différent peuvent être spécifiés avec l'argument @code{#:tex-format}. Plusieurs cibles de constructions peuvent être indiquées avec l'argument @code{#:build-targets} qui attend une liste de noms de fichiers. Le système de construction ajoute uniquement @code{texlive-bin} et @code{texlive-latex-base} (de @code{(gnu packages tex)} à la liste des entrées. Les deux peuvent être remplacés avec les arguments @code{#:texlive-bin} et @code{#:texlive-latex-base}, respectivement." -#. type: item -#: doc/guix.texi:4151 +#. type: defvr +#: doc/guix.texi:4157 +msgid "The @code{#:tex-directory} parameter tells the build system where to install the built files under the texmf tree." +msgstr "Le paramètre @code{#:tex-directory} dit au système de construction où installer les fichiers construit dans l'arbre texmf." + +#. type: defvr +#: doc/guix.texi:4159 #, no-wrap -msgid "fix-runpath" -msgstr "" - -#. type: table -#: doc/guix.texi:4158 -msgid "" -"This phase ensures that all binaries can find the libraries they need. It " -"searches for required libraries in subdirectories of the package being " -"built, and adds those to @code{RUNPATH} where needed. It also removes " -"references to libraries left over from the build phase by @code{meson-for-" -"build}, such as test dependencies, that aren't actually required for the " -"program to run." -msgstr "" - -#. type: table -#: doc/guix.texi:4162 doc/guix.texi:4166 -msgid "" -"This phase is the phase provided by @code{glib-or-gtk-build-system}, and it " -"is not enabled by default. It can be enabled with @code{#:glib-or-gtk?}." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:4173 -msgid "" -"Lastly, for packages that do not need anything as sophisticated, a " -"``trivial'' build system is provided. It is trivial in the sense that it " -"provides basically no support: it does not pull any implicit inputs, and " -"does not have a notion of build phases." -msgstr "" +msgid "{Scheme Variable} ruby-build-system" +msgstr "{Variable Scheme} ruby-build-system" #. type: defvr -#: doc/guix.texi:4174 +#: doc/guix.texi:4163 +msgid "This variable is exported by @code{(guix build-system ruby)}. It implements the RubyGems build procedure used by Ruby packages, which involves running @code{gem build} followed by @code{gem install}." +msgstr "Cette variable est exportée par @code{(guix build-system ruby)}. Elle implémenter la procédure de construction RubyGems utilisée par les paquets Ruby qui consiste à lancer @code{gem build} suivi de @code{gem install}." + +#. type: defvr +#: doc/guix.texi:4171 +msgid "The @code{source} field of a package that uses this build system typically references a gem archive, since this is the format that Ruby developers use when releasing their software. The build system unpacks the gem archive, potentially patches the source, runs the test suite, repackages the gem, and installs it. Additionally, directories and tarballs may be referenced to allow building unreleased gems from Git or a traditional source release tarball." +msgstr "Le champ @code{source} d'un paquet qui utilise ce système de construction référence le plus souvent une archive gem, puisque c'est le format utilisé par les développeurs Ruby quand ils publient leur logiciel. Le système de construction décompresse l'archive gem, éventuellement en corrigeant les sources, lance la suite de tests, recompresse la gemme et l'installe. En plus, des répertoires et des archives peuvent être référencés pour permettre de construire des gemmes qui n'ont pas été publiées depuis Git ou une archive de sources traditionnelle." + +#. type: defvr +#: doc/guix.texi:4175 +msgid "Which Ruby package is used can be specified with the @code{#:ruby} parameter. A list of additional flags to be passed to the @command{gem} command can be specified with the @code{#:gem-flags} parameter." +msgstr "Le paquet Ruby utilisé peut être spécifié avec le paramètre @code{#:ruby}. Une liste de drapeaux supplémentaires à passer à la commande @command{gem} peut être spécifiée avec le paramètre @code{#:gem-flags}." + +#. type: defvr +#: doc/guix.texi:4177 #, no-wrap -msgid "{Scheme Variable} trivial-build-system" -msgstr "" +msgid "{Scheme Variable} waf-build-system" +msgstr "{Variable Scheme} waf-build-system" #. type: defvr -#: doc/guix.texi:4176 -msgid "This variable is exported by @code{(guix build-system trivial)}." -msgstr "" +#: doc/guix.texi:4183 +msgid "This variable is exported by @code{(guix build-system waf)}. It implements a build procedure around the @code{waf} script. The common phases---@code{configure}, @code{build}, and @code{install}---are implemented by passing their names as arguments to the @code{waf} script." +msgstr "Cette variable est exportée par @code{(guix build-system waf)}. Elle implémente une procédure de construction autour du script @code{waf}. Les phases usuelles — @code{configure}, @code{build} et @code{install} — sont implémentée en passant leur nom en argument au script @code{waf}." #. type: defvr -#: doc/guix.texi:4181 -msgid "" -"This build system requires a @code{#:builder} argument. This argument must " -"be a Scheme expression that builds the package output(s)---as with " -"@code{build-expression->derivation} (@pxref{Derivations, @code{build-" -"expression->derivation}})." -msgstr "" - -#. type: cindex #: doc/guix.texi:4187 +msgid "The @code{waf} script is executed by the Python interpreter. Which Python package is used to run the script can be specified with the @code{#:python} parameter." +msgstr "Le script @code{waf} est exécuté par l'interpréteur Python. Le paquet Python utilisé pour lancer le script peut être spécifié avec le paramètre @code{#:python}." + +#. type: defvr +#: doc/guix.texi:4189 #, no-wrap -msgid "store items" -msgstr "" +msgid "{Scheme Variable} scons-build-system" +msgstr "{Variable Scheme} scons-build-system" -#. type: cindex -#: doc/guix.texi:4188 +#. type: defvr +#: doc/guix.texi:4195 +msgid "This variable is exported by @code{(guix build-system scons)}. It implements the build procedure used by the SCons software construction tool. This build system runs @code{scons} to build the package, @code{scons test} to run tests, and then @code{scons install} to install the package." +msgstr "Cette variable est exportée par @code{(guix build-system scons)}. Elle implémente la procédure de construction utilisée par l'outil de construction SCons. Ce système de construction lance @code{scons} pour construire le paquet, @code{scons test} pour lancer les tests puis @code{scons install} pour installer le paquet." + +#. type: defvr +#: doc/guix.texi:4200 +msgid "Additional flags to be passed to @code{scons} can be specified with the @code{#:scons-flags} parameter. The version of Python used to run SCons can be specified by selecting the appropriate SCons package with the @code{#:scons} parameter." +msgstr "On peut passer des drapeaux supplémentaires à @code{scons} en les spécifiant avec le paramètre @code{#:scons-flags}. La version de python utilisée pour lancer SCons peut être spécifiée en sélectionnant le paquet SCons approprié avec le paramètre @code{#:scons}." + +#. type: defvr +#: doc/guix.texi:4202 #, no-wrap -msgid "store paths" -msgstr "" +msgid "{Scheme Variable} haskell-build-system" +msgstr "{Variable Scheme} haskell-build-system" -#. type: Plain text -#: doc/guix.texi:4199 -msgid "" -"Conceptually, the @dfn{store} is the place where derivations that have been " -"built successfully are stored---by default, @file{/gnu/store}. Sub-" -"directories in the store are referred to as @dfn{store items} or sometimes " -"@dfn{store paths}. The store has an associated database that contains " -"information such as the store paths referred to by each store path, and the " -"list of @emph{valid} store items---results of successful builds. This " -"database resides in @file{@var{localstatedir}/guix/db}, where " -"@var{localstatedir} is the state directory specified @i{via} @option{--" -"localstatedir} at configure time, usually @file{/var}." -msgstr "" +#. type: defvr +#: doc/guix.texi:4216 +msgid "This variable is exported by @code{(guix build-system haskell)}. It implements the Cabal build procedure used by Haskell packages, which involves running @code{runhaskell Setup.hs configure --prefix=/gnu/store/@dots{}} and @code{runhaskell Setup.hs build}. Instead of installing the package by running @code{runhaskell Setup.hs install}, to avoid trying to register libraries in the read-only compiler store directory, the build system uses @code{runhaskell Setup.hs copy}, followed by @code{runhaskell Setup.hs register}. In addition, the build system generates the package documentation by running @code{runhaskell Setup.hs haddock}, unless @code{#:haddock? #f} is passed. Optional Haddock parameters can be passed with the help of the @code{#:haddock-flags} parameter. If the file @code{Setup.hs} is not found, the build system looks for @code{Setup.lhs} instead." +msgstr "Cette variable est exportée par @code{(guix build-system haskell)}. Elle implémente la procédure de construction Cabal utilisée par les paquets Haskell, qui consiste à lancer @code{runhaskell Setup.hs configure --prefix=/gnu/store/@dots{}} et @code{runhaskell Setup.hs build}. Plutôt que d'installer le paquets en lançant @code{runhaskell Setup.hs install}, pour éviter d'essayer d'enregistrer les bibliothèques dans le répertoire du dépôt en lecture-seule du compilateur, le système de construction utilise @code{runhaskell Setup.hs copy}, suivi de @code{runhaskell Setup.hs register}. En plus, le système de construction génère la documentation du paquet en lançant @code{runhaskell Setup.hs haddock}, à moins que @code{#:haddock? #f} ne soit passé. Des paramètres facultatifs pour Haddock peuvent être passés à l'aide du paramètre @code{#:haddock-flags}. Si le fichier @code{Setup.hs} n'est pas trouvé, le système de construction cherchera @code{Setup.lhs} à la place." -#. type: Plain text -#: doc/guix.texi:4204 -msgid "" -"The store is @emph{always} accessed by the daemon on behalf of its clients " -"(@pxref{Invoking guix-daemon}). To manipulate the store, clients connect to " -"the daemon over a Unix-domain socket, send requests to it, and read the " -"result---these are remote procedure calls, or RPCs." -msgstr "" - -#. type: quotation -#: doc/guix.texi:4209 -msgid "" -"Users must @emph{never} modify files under @file{/gnu/store} directly. This " -"would lead to inconsistencies and break the immutability assumptions of " -"Guix's functional model (@pxref{Introduction})." -msgstr "" - -#. type: quotation -#: doc/guix.texi:4213 -msgid "" -"@xref{Invoking guix gc, @command{guix gc --verify}}, for information on how " -"to check the integrity of the store and attempt recovery from accidental " -"modifications." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:4220 -msgid "" -"The @code{(guix store)} module provides procedures to connect to the daemon, " -"and to perform RPCs. These are described below. By default, @code{open-" -"connection}, and thus all the @command{guix} commands, connect to the local " -"daemon or to the URI specified by the @code{GUIX_DAEMON_SOCKET} environment " -"variable." -msgstr "" +#. type: defvr +#: doc/guix.texi:4219 +msgid "Which Haskell compiler is used can be specified with the @code{#:haskell} parameter which defaults to @code{ghc}." +msgstr "Le compilateur Haskell utilisé peut être spécifié avec le paramètre @code{#:haskell} qui a pour valeur par défaut @code{ghc}." #. type: defvr #: doc/guix.texi:4221 #, no-wrap -msgid "{Environment Variable} GUIX_DAEMON_SOCKET" -msgstr "" +msgid "{Scheme Variable} dub-build-system" +msgstr "{Variable Scheme} dub-build-system" #. type: defvr #: doc/guix.texi:4226 -msgid "" -"When set, the value of this variable should be a file name or a URI " -"designating the daemon endpoint. When it is a file name, it denotes a Unix-" -"domain socket to connect to. In addition to file names, the supported URI " -"schemes are:" -msgstr "" - -#. type: code{#1} -#: doc/guix.texi:4228 doc/guix.texi:15406 -#, no-wrap -msgid "file" -msgstr "" - -#. type: itemx -#: doc/guix.texi:4229 -#, no-wrap -msgid "unix" -msgstr "" - -#. type: table -#: doc/guix.texi:4233 -msgid "" -"These are for Unix-domain sockets. @code{file:///var/guix/daemon-socket/" -"socket} is equivalent to @file{/var/guix/daemon-socket/socket}." -msgstr "" - -#. type: item -#: doc/guix.texi:4234 -#, no-wrap -msgid "guix" -msgstr "" - -#. type: table -#: doc/guix.texi:4242 -msgid "" -"These URIs denote connections over TCP/IP, without encryption nor " -"authentication of the remote host. The URI must specify the host name and " -"optionally a port number (by default port 44146 is used):" -msgstr "" - -#. type: example -#: doc/guix.texi:4245 -#, no-wrap -msgid "guix://master.guix.example.org:1234\n" -msgstr "" - -#. type: table -#: doc/guix.texi:4250 -msgid "" -"This setup is suitable on local networks, such as clusters, where only " -"trusted nodes may connect to the build daemon at @code{master.guix.example." -"org}." -msgstr "" - -#. type: table -#: doc/guix.texi:4254 -msgid "" -"The @code{--listen} option of @command{guix-daemon} can be used to instruct " -"it to listen for TCP connections (@pxref{Invoking guix-daemon, @code{--" -"listen}})." -msgstr "" - -#. type: item -#: doc/guix.texi:4255 -#, no-wrap -msgid "ssh" -msgstr "" - -#. type: cindex -#: doc/guix.texi:4256 -#, no-wrap -msgid "SSH access to build daemons" -msgstr "" - -#. type: table -#: doc/guix.texi:4260 -msgid "" -"These URIs allow you to connect to a remote daemon over SSH@footnote{This " -"feature requires Guile-SSH (@pxref{Requirements}).}. A typical URL might " -"look like this:" -msgstr "" - -#. type: example -#: doc/guix.texi:4263 -#, no-wrap -msgid "ssh://charlie@@guix.example.org:22\n" -msgstr "" - -#. type: table -#: doc/guix.texi:4267 -msgid "" -"As for @command{guix copy}, the usual OpenSSH client configuration files are " -"honored (@pxref{Invoking guix copy})." -msgstr "" +msgid "This variable is exported by @code{(guix build-system dub)}. It implements the Dub build procedure used by D packages, which involves running @code{dub build} and @code{dub run}. Installation is done by copying the files manually." +msgstr "Cette variable est exportée par @code{(guix build-system dub)}. Elle implémente la procédure de construction Dub utilisée par les paquets D qui consiste à lancer @code{dub build} et @code{dub run}. L'installation est effectuée en copiant les fichiers manuellement." #. type: defvr -#: doc/guix.texi:4270 -msgid "Additional URI schemes may be supported in the future." -msgstr "" +#: doc/guix.texi:4229 +msgid "Which D compiler is used can be specified with the @code{#:ldc} parameter which defaults to @code{ldc}." +msgstr "Le compilateur D utilisé peut être spécifié avec le paramètre @code{#:ldc} qui vaut par défaut @code{ldc}." + +#. type: defvr +#: doc/guix.texi:4231 +#, no-wrap +msgid "{Scheme Variable} emacs-build-system" +msgstr "{Variable Scheme} emacs-build-system" + +#. type: defvr +#: doc/guix.texi:4235 +msgid "This variable is exported by @code{(guix build-system emacs)}. It implements an installation procedure similar to the packaging system of Emacs itself (@pxref{Packages,,, emacs, The GNU Emacs Manual})." +msgstr "Cette variable est exportée par @code{(guix build-system emacs)}. Elle implémente une procédure d'installation similaire au système de gestion de paquet d'Emacs lui-même (@pxref{Packages,,, emacs, The GNU Emacs Manual})." + +#. type: defvr +#: doc/guix.texi:4242 +msgid "It first creates the @code{@var{package}-autoloads.el} file, then it byte compiles all Emacs Lisp files. Differently from the Emacs packaging system, the Info documentation files are moved to the standard documentation directory and the @file{dir} file is deleted. Each package is installed in its own directory under @file{share/emacs/site-lisp/guix.d}." +msgstr "Elle crée d'abord le fichier @code{@var{package}-autoloads.el}, puis compile tous les fichiers Emacs Lisp en bytecode. Contrairement au système de gestion de paquets d'Emacs, les fichiers de documentation info sont déplacés dans le répertoire standard et le fichier @file{dir} est supprimé. Chaque paquet est installé dans son propre répertoire dans @file{share/emacs/site-lisp/guix.d}." + +#. type: defvr +#: doc/guix.texi:4244 +#, no-wrap +msgid "{Scheme Variable} font-build-system" +msgstr "{Variable Scheme} font-build-system" + +#. type: defvr +#: doc/guix.texi:4250 +msgid "This variable is exported by @code{(guix build-system font)}. It implements an installation procedure for font packages where upstream provides pre-compiled TrueType, OpenType, etc. font files that merely need to be copied into place. It copies font files to standard locations in the output directory." +msgstr "Cette variable est exportée par @code{(guix build-system font)}. Elle implémente une procédure d'installation pour les paquets de polices où des fichiers de polices TrueType, OpenType, etc sont fournis en amont et n'ont qu'à être copiés à leur emplacement final. Elle copie les fichiers de polices à l'emplacement standard dans le répertoire de sortie." + +#. type: defvr +#: doc/guix.texi:4252 +#, no-wrap +msgid "{Scheme Variable} meson-build-system" +msgstr "{Variable Scheme} meson-build-system" + +#. type: defvr +#: doc/guix.texi:4256 +msgid "This variable is exported by @code{(guix build-system meson)}. It implements the build procedure for packages that use @url{http://mesonbuild.com, Meson} as their build system." +msgstr "Cette variable est exportée par @code{(guix build-system meson)}. Elle implémente la procédure de construction des paquets qui utilisent @url{http://mesonbuild.com, Meson} comme système de construction." + +#. type: defvr +#: doc/guix.texi:4262 +msgid "It adds both Meson and @uref{https://ninja-build.org/, Ninja} to the set of inputs, and they can be changed with the parameters @code{#:meson} and @code{#:ninja} if needed. The default Meson is @code{meson-for-build}, which is special because it doesn't clear the @code{RUNPATH} of binaries and libraries when they are installed." +msgstr "Elle ajoute à la fois Meson et @uref{https://ninja-build.org/, Ninja} à l'ensemble des entrées, et ils peuvent être modifiés avec les paramètres @code{#:meson} et @code{#:ninja} si requis. Le Meson par défaut est @code{meson-for-build}, qui est spécial parce qu'il ne nettoie pas le @code{RUNPATH} des binaires et les bibliothèques qu'il installe." + +#. type: defvr +#: doc/guix.texi:4265 +msgid "This build system is an extension of @var{gnu-build-system}, but with the following phases changed to some specific for Meson:" +msgstr "Ce système de construction est une extension de @var{gnu-build-system}, mais avec les phases suivantes modifiées pour Meson :" + +#. type: table +#: doc/guix.texi:4272 +msgid "The phase runs @code{meson} with the flags specified in @code{#:configure-flags}. The flag @code{--build-type} is always set to @code{plain} unless something else is specified in @code{#:build-type}." +msgstr "La phase lance @code{meson} avec les drapeaux spécifiés dans @code{#:configure-flags}. Le drapeau @code{--build-type} est toujours initialisé à @code{plain} à moins que quelque chose d'autre ne soit spécifié dans @code{#:build-type}." + +#. type: table +#: doc/guix.texi:4276 +msgid "The phase runs @code{ninja} to build the package in parallel by default, but this can be changed with @code{#:parallel-build?}." +msgstr "La phase lance @code{ninja} pour construire le paquet en parallèle par défaut, mais cela peut être changé avec @code{#:parallel-build?}." + +#. type: table +#: doc/guix.texi:4280 +msgid "The phase runs @code{ninja} with the target specified in @code{#:test-target}, which is @code{\"test\"} by default." +msgstr "La phase lance @code{ninja} avec la cible spécifiée dans @code{#:test-target}, qui est @code{\"test\"} par défaut." + +#. type: table +#: doc/guix.texi:4283 +msgid "The phase runs @code{ninja install} and can not be changed." +msgstr "La phase lance @code{ninja install} et ne peut pas être changée." + +#. type: defvr +#: doc/guix.texi:4286 +msgid "Apart from that, the build system also adds the following phases:" +msgstr "En dehors de cela, le système de construction ajoute aussi la phase suivante :" + +#. type: item +#: doc/guix.texi:4289 +#, no-wrap +msgid "fix-runpath" +msgstr "fix-runpath" + +#. type: table +#: doc/guix.texi:4296 +msgid "This phase ensures that all binaries can find the libraries they need. It searches for required libraries in subdirectories of the package being built, and adds those to @code{RUNPATH} where needed. It also removes references to libraries left over from the build phase by @code{meson-for-build}, such as test dependencies, that aren't actually required for the program to run." +msgstr "Cette phase s'assure que tous les binaire peuvent trouver les bibliothèques dont ils ont besoin. Elle cherche les bibliothèques requises dans les sous-répertoires du paquet en construction et les ajoute au @code{RUNPATH} là où c'est nécessaire. Elle supprime aussi les références aux bibliothèques laissées là par la phase de construction par @code{meson-for-build} comme les dépendances des tests, qui ne sont pas vraiment requises pour le programme." + +#. type: table +#: doc/guix.texi:4300 doc/guix.texi:4304 +msgid "This phase is the phase provided by @code{glib-or-gtk-build-system}, and it is not enabled by default. It can be enabled with @code{#:glib-or-gtk?}." +msgstr "Cette phase est la phase fournie par @code{glib-or-gtk-build-system} et n'est pas activée par défaut. Elle peut l'être avec @code{#:glib-or-gtk?}." + +#. type: Plain text +#: doc/guix.texi:4311 +msgid "Lastly, for packages that do not need anything as sophisticated, a ``trivial'' build system is provided. It is trivial in the sense that it provides basically no support: it does not pull any implicit inputs, and does not have a notion of build phases." +msgstr "Enfin, pour les paquets qui n'ont pas besoin de choses sophistiquées, un système de construction « trivial » est disponible. Il est trivial dans le sens où il ne fournit en gros aucun support : il n'apporte pas de dépendance implicite, et n'a pas de notion de phase de construction." + +#. type: defvr +#: doc/guix.texi:4312 +#, no-wrap +msgid "{Scheme Variable} trivial-build-system" +msgstr "{Variable Scheme} trivial-build-system" + +#. type: defvr +#: doc/guix.texi:4314 +msgid "This variable is exported by @code{(guix build-system trivial)}." +msgstr "Cette variable est exportée par @code{(guix build-system trivial)}." + +#. type: defvr +#: doc/guix.texi:4319 +msgid "This build system requires a @code{#:builder} argument. This argument must be a Scheme expression that builds the package output(s)---as with @code{build-expression->derivation} (@pxref{Derivations, @code{build-expression->derivation}})." +msgstr "Ce système de construction requiert un argument @code{#:builder}. Cet argument doit être une expression Scheme qui construit la sortie du paquet — comme avec @code{build-expression->derivation} (@pxref{Derivations, @code{build-expression->derivation}})." + +#. type: cindex +#: doc/guix.texi:4325 +#, no-wrap +msgid "store items" +msgstr "éléments du dépôt" + +#. type: cindex +#: doc/guix.texi:4326 +#, no-wrap +msgid "store paths" +msgstr "chemins dans le dépôt" + +#. type: Plain text +#: doc/guix.texi:4337 +msgid "Conceptually, the @dfn{store} is the place where derivations that have been built successfully are stored---by default, @file{/gnu/store}. Sub-directories in the store are referred to as @dfn{store items} or sometimes @dfn{store paths}. The store has an associated database that contains information such as the store paths referred to by each store path, and the list of @emph{valid} store items---results of successful builds. This database resides in @file{@var{localstatedir}/guix/db}, where @var{localstatedir} is the state directory specified @i{via} @option{--localstatedir} at configure time, usually @file{/var}." +msgstr "Conceptuellement, le @dfn{dépôt} est l'endroit où les dérivations qui ont bien été construites sont stockées — par défaut, @file{/gnu/store}. Les sous-répertoires dans le dépôt s'appellent des @dfn{éléments du dépôt} ou parfois des @dfn{chemins du dépôt}. Le dépôt a une base de données associée qui contient des informations comme les chemins du dépôt auxquels se réfèrent chaque chemin du dépôt et la liste des éléments du dépôt @emph{valides} — les résultats d'une construction réussie. Cette base de données se trouve dans @file{@var{localstatedir}/guix/db} où @var{localstatedir} est le répertoire d'états spécifié @i{via} @option {--localstatedir} à la configuration, typiquement @file{/var}." + +#. type: Plain text +#: doc/guix.texi:4342 +msgid "The store is @emph{always} accessed by the daemon on behalf of its clients (@pxref{Invoking guix-daemon}). To manipulate the store, clients connect to the daemon over a Unix-domain socket, send requests to it, and read the result---these are remote procedure calls, or RPCs." +msgstr "C'est @emph{toujours} le démon qui accède au dépôt pour le compte de ses clients (@pxref{Invoking guix-daemon}). Pour manipuler le dépôt, les clients se connectent au démon par un socket Unix-domain, envoient une requête dessus et lisent le résultat — ce sont des appels de procédures distantes, ou RPC." #. type: quotation -#: doc/guix.texi:4277 -msgid "" -"The ability to connect to remote build daemons is considered experimental as " -"of @value{VERSION}. Please get in touch with us to share any problems or " -"suggestions you may have (@pxref{Contributing})." -msgstr "" +#: doc/guix.texi:4347 +msgid "Users must @emph{never} modify files under @file{/gnu/store} directly. This would lead to inconsistencies and break the immutability assumptions of Guix's functional model (@pxref{Introduction})." +msgstr "Les utilisateurs ne doivent @emph{jamais} modifier les fichiers dans @file{/gnu/store} directement. Cela entraînerait des incohérences et casserait l'hypothèse d'immutabilité du modèle fonctionnel de Guix (@pxref{Introduction})." + +#. type: quotation +#: doc/guix.texi:4351 +msgid "@xref{Invoking guix gc, @command{guix gc --verify}}, for information on how to check the integrity of the store and attempt recovery from accidental modifications." +msgstr "@xref{Invoking guix gc, @command{guix gc --verify}}, pour des informations sur la manière de vérifier l'intégrité du dépôt et d'essayer de réparer des modifications accidentelles." + +#. type: Plain text +#: doc/guix.texi:4358 +msgid "The @code{(guix store)} module provides procedures to connect to the daemon, and to perform RPCs. These are described below. By default, @code{open-connection}, and thus all the @command{guix} commands, connect to the local daemon or to the URI specified by the @code{GUIX_DAEMON_SOCKET} environment variable." +msgstr "Le module @code{(guix store)} fournit des procédures pour se connecter au démon et pour effectuer des RPC. Elles sont décrites plus bas. Par défaut, @code{open-connection}, et donc toutes les commandes @command{guix} se connectent au démon local ou à l'URI spécifiée par la variable d'environnement @code{GUIX_DAEMON_SOCKET}." + +#. type: defvr +#: doc/guix.texi:4359 +#, no-wrap +msgid "{Environment Variable} GUIX_DAEMON_SOCKET" +msgstr "{Variable d'environnement} GUIX_DAEMON_SOCKET" + +#. type: defvr +#: doc/guix.texi:4364 +msgid "When set, the value of this variable should be a file name or a URI designating the daemon endpoint. When it is a file name, it denotes a Unix-domain socket to connect to. In addition to file names, the supported URI schemes are:" +msgstr "Lorsqu'elle est initialisée, la valeur de cette variable devrait être un nom de fichier ou une URI qui désigne l'extrémité du démon. Lorsque c'est un nom de fichier, il dénote un socket Unix-domain où se connecter. En plus des noms de fichiers, les schémas d'URI supportés sont :" + +#. type: code{#1} +#: doc/guix.texi:4366 doc/guix.texi:15771 +#, no-wrap +msgid "file" +msgstr "file" + +#. type: itemx +#: doc/guix.texi:4367 +#, no-wrap +msgid "unix" +msgstr "unix" + +#. type: table +#: doc/guix.texi:4371 +msgid "These are for Unix-domain sockets. @code{file:///var/guix/daemon-socket/socket} is equivalent to @file{/var/guix/daemon-socket/socket}." +msgstr "Pour les sockets Unix-domain. @code{file:///var/guix/daemon-socket/socket} est équivalent à @file{/var/guix/daemon-socket/socket}." + +#. type: item +#: doc/guix.texi:4372 +#, no-wrap +msgid "guix" +msgstr "guix" + +#. type: table +#: doc/guix.texi:4380 +msgid "These URIs denote connections over TCP/IP, without encryption nor authentication of the remote host. The URI must specify the host name and optionally a port number (by default port 44146 is used):" +msgstr "Ces URI dénotent des connexions par TCP/IP, sans chiffrement ni authentification de l'hôte distant. L'URI doit spécifier le nom d'hôte et éventuellement un numéro de port (par défaut 44146) :" + +#. type: example +#: doc/guix.texi:4383 +#, no-wrap +msgid "guix://master.guix.example.org:1234\n" +msgstr "guix://master.guix.example.org:1234\n" + +#. type: table +#: doc/guix.texi:4388 +msgid "This setup is suitable on local networks, such as clusters, where only trusted nodes may connect to the build daemon at @code{master.guix.example.org}." +msgstr "Ce paramétrage est adapté aux réseaux locaux, comme dans le cas de grappes de serveurs, où seuls des noms de confiance peuvent se connecter au démon de construction sur @code{master.guix.example.org}." + +#. type: table +#: doc/guix.texi:4392 +msgid "The @code{--listen} option of @command{guix-daemon} can be used to instruct it to listen for TCP connections (@pxref{Invoking guix-daemon, @code{--listen}})." +msgstr "L'option @code{--listen} de @command{guix-daemon} peut être utilisé pour lui dire d'écouter des connexions TCP (@pxref{Invoking guix-daemon, @code{--listen}})." + +#. type: item +#: doc/guix.texi:4393 +#, no-wrap +msgid "ssh" +msgstr "ssh" + +#. type: cindex +#: doc/guix.texi:4394 +#, no-wrap +msgid "SSH access to build daemons" +msgstr "accès SSH au démon de construction" + +#. type: table +#: doc/guix.texi:4398 +msgid "These URIs allow you to connect to a remote daemon over SSH@footnote{This feature requires Guile-SSH (@pxref{Requirements}).}. A typical URL might look like this:" +msgstr "Ces URI vous permettent de vous connecter au démon à distance à travers SSH@footnote{Cette fonctionnalité requiert Guile-SSH (@pxref{Requirements}).}." + +#. type: example +#: doc/guix.texi:4401 +#, no-wrap +msgid "ssh://charlie@@guix.example.org:22\n" +msgstr "ssh://charlie@@guix.example.org:22\n" + +#. type: table +#: doc/guix.texi:4405 +msgid "As for @command{guix copy}, the usual OpenSSH client configuration files are honored (@pxref{Invoking guix copy})." +msgstr "Comme pour @command{guix copy}, les fichiers de configuration du client OpenSSH sont respectés (@pxref{Invoking guix copy})." + +#. type: defvr +#: doc/guix.texi:4408 +msgid "Additional URI schemes may be supported in the future." +msgstr "Des schémas d'URI supplémentaires pourraient être supportés dans le futur." + +#. type: quotation +#: doc/guix.texi:4415 +msgid "The ability to connect to remote build daemons is considered experimental as of @value{VERSION}. Please get in touch with us to share any problems or suggestions you may have (@pxref{Contributing})." +msgstr "La capacité de se connecter à un démon de construction distant est considéré comme expérimental à la version @value{VERSION}. Contactez-nous pour partager vos problèmes ou des suggestions que vous pourriez avoir (@pxref{Contributing})." #. type: deffn -#: doc/guix.texi:4280 +#: doc/guix.texi:4418 #, no-wrap msgid "{Scheme Procedure} open-connection [@var{uri}] [#:reserve-space? #t]" -msgstr "" +msgstr "{Procédure Scheme} open-connection [@var{uri}] [#:reserve-space? #t]" #. type: deffn -#: doc/guix.texi:4285 -msgid "" -"Connect to the daemon over the Unix-domain socket at @var{uri} (a string). " -"When @var{reserve-space?} is true, instruct it to reserve a little bit of " -"extra space on the file system so that the garbage collector can still " -"operate should the disk become full. Return a server object." -msgstr "" +#: doc/guix.texi:4423 +msgid "Connect to the daemon over the Unix-domain socket at @var{uri} (a string). When @var{reserve-space?} is true, instruct it to reserve a little bit of extra space on the file system so that the garbage collector can still operate should the disk become full. Return a server object." +msgstr "Se connecte au démon à travers le socket Unix-domain à @var{uri} (une chaîne de caractères). Lorsque @var{reserve-space?} est vrai, cela demande de réserver un peu de place supplémentaire sur le système de fichiers pour que le ramasse-miette puisse opérer au cas où le disque serait plein. Renvoie un objet serveur." #. type: deffn -#: doc/guix.texi:4288 -msgid "" -"@var{file} defaults to @var{%default-socket-path}, which is the normal " -"location given the options that were passed to @command{configure}." -msgstr "" +#: doc/guix.texi:4426 +msgid "@var{file} defaults to @var{%default-socket-path}, which is the normal location given the options that were passed to @command{configure}." +msgstr "@var{file} a pour valeur par défaut @var{%default-socket-path}, qui est l'emplacement normal en fonction des options données à @command{configure}." #. type: deffn -#: doc/guix.texi:4290 +#: doc/guix.texi:4428 #, no-wrap msgid "{Scheme Procedure} close-connection @var{server}" -msgstr "" +msgstr "{Procédure Scheme} close-connection @var{serveur}" #. type: deffn -#: doc/guix.texi:4292 +#: doc/guix.texi:4430 msgid "Close the connection to @var{server}." -msgstr "" +msgstr "Ferme la connexion au @var{serveur}." #. type: defvr -#: doc/guix.texi:4294 +#: doc/guix.texi:4432 #, no-wrap msgid "{Scheme Variable} current-build-output-port" -msgstr "" +msgstr "{Variable Scheme} current-build-output-port" #. type: defvr -#: doc/guix.texi:4297 -msgid "" -"This variable is bound to a SRFI-39 parameter, which refers to the port " -"where build and error logs sent by the daemon should be written." -msgstr "" +#: doc/guix.texi:4435 +msgid "This variable is bound to a SRFI-39 parameter, which refers to the port where build and error logs sent by the daemon should be written." +msgstr "Cette variable est liée à un paramètre SRFI-39, qui se réfère au port où les journaux de construction et d'erreur envoyés par le démon devraient être écrits." #. type: Plain text -#: doc/guix.texi:4301 -msgid "" -"Procedures that make RPCs all take a server object as their first argument." -msgstr "" +#: doc/guix.texi:4439 +msgid "Procedures that make RPCs all take a server object as their first argument." +msgstr "Les procédures qui font des RPC prennent toutes un objet serveur comme premier argument." #. type: deffn -#: doc/guix.texi:4302 +#: doc/guix.texi:4440 #, no-wrap msgid "{Scheme Procedure} valid-path? @var{server} @var{path}" -msgstr "" +msgstr "{Scheme Procedure} valid-path? @var{server} @var{path}" #. type: cindex -#: doc/guix.texi:4303 +#: doc/guix.texi:4441 #, no-wrap msgid "invalid store items" -msgstr "" +msgstr "éléments du dépôt invalides" #. type: deffn -#: doc/guix.texi:4308 -msgid "" -"Return @code{#t} when @var{path} designates a valid store item and @code{#f} " -"otherwise (an invalid item may exist on disk but still be invalid, for " -"instance because it is the result of an aborted or failed build.)" -msgstr "" +#: doc/guix.texi:4446 +msgid "Return @code{#t} when @var{path} designates a valid store item and @code{#f} otherwise (an invalid item may exist on disk but still be invalid, for instance because it is the result of an aborted or failed build.)" +msgstr "Renvoie @code{#t} lorsque @var{path} désigne un élément du dépôt valide et @code{#f} sinon (un élément invalide peut exister sur le disque mais rester invalide, par exemple parce que c'est le résultat d'une construction annulée ou échouée)." #. type: deffn -#: doc/guix.texi:4311 -msgid "" -"A @code{&nix-protocol-error} condition is raised if @var{path} is not " -"prefixed by the store directory (@file{/gnu/store})." -msgstr "" +#: doc/guix.texi:4449 +msgid "A @code{&nix-protocol-error} condition is raised if @var{path} is not prefixed by the store directory (@file{/gnu/store})." +msgstr "Une condition @code{&nix-protocol-error} est levée si @var{path} n'est pas préfixée par le répertoire du dépôt (@file{/gnu/store})." #. type: deffn -#: doc/guix.texi:4313 +#: doc/guix.texi:4451 #, no-wrap msgid "{Scheme Procedure} add-text-to-store @var{server} @var{name} @var{text} [@var{references}]" -msgstr "" +msgstr "{Procédure Scheme} add-text-to-store @var{server} @var{name} @var{text} [@var{references}]" #. type: deffn -#: doc/guix.texi:4317 -msgid "" -"Add @var{text} under file @var{name} in the store, and return its store " -"path. @var{references} is the list of store paths referred to by the " -"resulting store path." -msgstr "" +#: doc/guix.texi:4455 +msgid "Add @var{text} under file @var{name} in the store, and return its store path. @var{references} is the list of store paths referred to by the resulting store path." +msgstr "Ajoute @var{text} dans le fichier @var{name} dans le dépôt et renvoie son chemin. @var{references} est la liste des chemins du dépôt référencés par le chemin du dépôt qui en résulte." #. type: deffn -#: doc/guix.texi:4319 +#: doc/guix.texi:4457 #, no-wrap msgid "{Scheme Procedure} build-derivations @var{server} @var{derivations}" -msgstr "" +msgstr "{Procédure Scheme} build-derivations @var{server} @var{derivations}" #. type: deffn -#: doc/guix.texi:4323 -msgid "" -"Build @var{derivations} (a list of @code{} objects or derivation " -"paths), and return when the worker is done building them. Return @code{#t} " -"on success." -msgstr "" +#: doc/guix.texi:4461 +msgid "Build @var{derivations} (a list of @code{} objects or derivation paths), and return when the worker is done building them. Return @code{#t} on success." +msgstr "Construit @var{derivaton} (ne liste d'objets @code{} ou de chemins de dérivations) et retourne quand le travailleur a fini de les construire. Renvoie @code{#t} en cas de réussite." #. type: Plain text -#: doc/guix.texi:4329 -msgid "" -"Note that the @code{(guix monads)} module provides a monad as well as " -"monadic versions of the above procedures, with the goal of making it more " -"convenient to work with code that accesses the store (@pxref{The Store " -"Monad})." -msgstr "" +#: doc/guix.texi:4467 +msgid "Note that the @code{(guix monads)} module provides a monad as well as monadic versions of the above procedures, with the goal of making it more convenient to work with code that accesses the store (@pxref{The Store Monad})." +msgstr "Remarque que le module @code{(guix monads)} fournit une monad ainsi que des version monadiques des procédures précédentes, avec le but de rendre plus facile de travailler avec le code qui accède au dépôt (@pxref{The Store Monad})." #. type: i{#1} -#: doc/guix.texi:4332 +#: doc/guix.texi:4470 msgid "This section is currently incomplete." -msgstr "" +msgstr "Cette section est actuellement incomplète." #. type: cindex -#: doc/guix.texi:4336 +#: doc/guix.texi:4474 #, no-wrap msgid "derivations" -msgstr "" +msgstr "dérivations" #. type: Plain text -#: doc/guix.texi:4340 -msgid "" -"Low-level build actions and the environment in which they are performed are " -"represented by @dfn{derivations}. A derivation contains the following " -"pieces of information:" -msgstr "" +#: doc/guix.texi:4478 +msgid "Low-level build actions and the environment in which they are performed are represented by @dfn{derivations}. A derivation contains the following pieces of information:" +msgstr "Les actions de construction à bas-niveau et l'environnement dans lequel elles sont effectuées sont représentés par des @dfn{dérivations}. Une dérivation contient cet ensemble d'informations :" #. type: itemize -#: doc/guix.texi:4345 -msgid "" -"The outputs of the derivation---derivations produce at least one file or " -"directory in the store, but may produce more." -msgstr "" +#: doc/guix.texi:4483 +msgid "The outputs of the derivation---derivations produce at least one file or directory in the store, but may produce more." +msgstr "Les sorties de la dérivation — les dérivations produisent au moins un fichier ou répertoire dans le dépôt, mais peuvent en produire plus." #. type: itemize -#: doc/guix.texi:4349 -msgid "" -"The inputs of the derivations, which may be other derivations or plain files " -"in the store (patches, build scripts, etc.)" -msgstr "" +#: doc/guix.texi:4487 +msgid "The inputs of the derivations, which may be other derivations or plain files in the store (patches, build scripts, etc.)" +msgstr "Les entrées de la dérivation, qui peuvent être d'autres dérivations ou des fichiers dans le dépôt (correctifs, scripts de construction, etc)." #. type: itemize -#: doc/guix.texi:4352 +#: doc/guix.texi:4490 msgid "The system type targeted by the derivation---e.g., @code{x86_64-linux}." -msgstr "" +msgstr "Le type de système ciblé par la dérivation — p.ex.@: @code{x86_64-linux}." #. type: itemize -#: doc/guix.texi:4356 -msgid "" -"The file name of a build script in the store, along with the arguments to be " -"passed." -msgstr "" +#: doc/guix.texi:4494 +msgid "The file name of a build script in the store, along with the arguments to be passed." +msgstr "Le nom de fichier d'un script de construction dans le dépôt avec les arguments à lui passer." #. type: itemize -#: doc/guix.texi:4359 +#: doc/guix.texi:4497 msgid "A list of environment variables to be defined." -msgstr "" +msgstr "Une liste de variables d'environnement à définir." #. type: cindex -#: doc/guix.texi:4362 +#: doc/guix.texi:4500 #, no-wrap msgid "derivation path" -msgstr "" +msgstr "chemin de dérivation" #. type: Plain text -#: doc/guix.texi:4370 -msgid "" -"Derivations allow clients of the daemon to communicate build actions to the " -"store. They exist in two forms: as an in-memory representation, both on the " -"client- and daemon-side, and as files in the store whose name end in @code{." -"drv}---these files are referred to as @dfn{derivation paths}. Derivations " -"paths can be passed to the @code{build-derivations} procedure to perform the " -"build actions they prescribe (@pxref{The Store})." -msgstr "" +#: doc/guix.texi:4508 +msgid "Derivations allow clients of the daemon to communicate build actions to the store. They exist in two forms: as an in-memory representation, both on the client- and daemon-side, and as files in the store whose name end in @code{.drv}---these files are referred to as @dfn{derivation paths}. Derivations paths can be passed to the @code{build-derivations} procedure to perform the build actions they prescribe (@pxref{The Store})." +msgstr "Les dérivations permettent aux client du démon de communiquer des actions de construction dans le dépôt. Elles existent sous deux formes : en tant que représentation en mémoire, à la fois côté client et démon, et en tant que fichiers dans le dépôt dont le nom fini par @code{.drv} — on dit que ce sont des @dfn{chemins de dérivations}. Les chemins de dérivations peuvent être passés à la procédure @code{build-derivations} pour effectuer les actions de construction qu'ils prescrivent (@pxref{The Store})." #. type: cindex -#: doc/guix.texi:4371 +#: doc/guix.texi:4509 #, no-wrap msgid "fixed-output derivations" -msgstr "" +msgstr "dérivations à sortie fixe" #. type: Plain text -#: doc/guix.texi:4378 -msgid "" -"Operations such as file downloads and version-control checkouts for which " -"the expected content hash is known in advance are modeled as @dfn{fixed-" -"output derivations}. Unlike regular derivations, the outputs of a fixed-" -"output derivation are independent of its inputs---e.g., a source code " -"download produces the same result regardless of the download method and " -"tools being used." -msgstr "" +#: doc/guix.texi:4516 +msgid "Operations such as file downloads and version-control checkouts for which the expected content hash is known in advance are modeled as @dfn{fixed-output derivations}. Unlike regular derivations, the outputs of a fixed-output derivation are independent of its inputs---e.g., a source code download produces the same result regardless of the download method and tools being used." +msgstr "Des opérations comme le téléchargement de fichiers et la récupération de sources gérés par un logiciel de contrôle de version pour lesquels le hash du contenu est connu à l'avance sont modélisés par des @dfn{dérivations à sortie fixe}. Contrairement aux dérivation habituelles, les sorties d'une dérivation à sortie fixe sont indépendantes de ses entrées — p.ex.@: un code source téléchargé produit le même résultat quelque soit la méthode de téléchargement utilisée." #. type: Plain text -#: doc/guix.texi:4383 -msgid "" -"The @code{(guix derivations)} module provides a representation of " -"derivations as Scheme objects, along with procedures to create and otherwise " -"manipulate derivations. The lowest-level primitive to create a derivation " -"is the @code{derivation} procedure:" -msgstr "" +#: doc/guix.texi:4521 +msgid "The @code{(guix derivations)} module provides a representation of derivations as Scheme objects, along with procedures to create and otherwise manipulate derivations. The lowest-level primitive to create a derivation is the @code{derivation} procedure:" +msgstr "Le module @code{(guix derivations)} fournit une représentation des dérivations comme des objets Scheme, avec des procédures pour créer et manipuler des dérivations. La primitive de plus bas-niveau pour créer une dérivation est la procédure @code{derivation} :" #. type: deffn -#: doc/guix.texi:4384 +#: doc/guix.texi:4522 #, no-wrap msgid "{Scheme Procedure} derivation @var{store} @var{name} @var{builder} @" -msgstr "{Scheme Procedure} derivation @var{store} @var{name} @var{builder} @" +msgstr "{Procédure Scheme} derivation @var{store} @var{name} @var{builder} @" #. type: deffn -#: doc/guix.texi:4393 -msgid "" -"@var{args} [#:outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @ [#:" -"recursive? #f] [#:inputs '()] [#:env-vars '()] @ [#:system (%current-" -"system)] [#:references-graphs #f] @ [#:allowed-references #f] [#:disallowed-" -"references #f] @ [#:leaked-env-vars #f] [#:local-build? #f] @ [#:" -"substitutable? #t] Build a derivation with the given arguments, and return " -"the resulting @code{} object." +#: doc/guix.texi:4531 +msgid "@var{args} [#:outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @ [#:recursive? #f] [#:inputs '()] [#:env-vars '()] @ [#:system (%current-system)] [#:references-graphs #f] @ [#:allowed-references #f] [#:disallowed-references #f] @ [#:leaked-env-vars #f] [#:local-build? #f] @ [#:substitutable? #t] Build a derivation with the given arguments, and return the resulting @code{} object." msgstr "" -"@var{args} [#:outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @ [#:" -"recursive? #f] [#:inputs '()] [#:env-vars '()] @ [#:system (%current-" -"system)] [#:references-graphs #f] @ [#:allowed-references #f] [#:disallowed-" -"references #f] @ [#:leaked-env-vars #f] [#:local-build? #f] @ [#:" -"substitutable? #t] Construit une dérivation avec les arguments donnés et " -"renvie l'objet @code{} obtenu." +"@var{args} [#:outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @\n" +"[#:recursive? #f] [#:inputs '()] [#:env-vars '()] @ [#:system (%current-system)] [#:references-graphs #f] @\n" +"[#:allowed-references #f] [#:disallowed-references #f] @\n" +"[#:leaked-env-vars #f] [#:local-build? #f] @\n" +"[#:substitutable? #t]\n" +"\n" +"Construit une dérivation avec les arguments donnés et renvie l'objet @code{} obtenu." #. type: deffn -#: doc/guix.texi:4400 -msgid "" -"When @var{hash} and @var{hash-algo} are given, a @dfn{fixed-output " -"derivation} is created---i.e., one whose result is known in advance, such as " -"a file download. If, in addition, @var{recursive?} is true, then that fixed " -"output may be an executable file or a directory and @var{hash} must be the " -"hash of an archive containing this output." -msgstr "" +#: doc/guix.texi:4538 +msgid "When @var{hash} and @var{hash-algo} are given, a @dfn{fixed-output derivation} is created---i.e., one whose result is known in advance, such as a file download. If, in addition, @var{recursive?} is true, then that fixed output may be an executable file or a directory and @var{hash} must be the hash of an archive containing this output." +msgstr "Lorsque @var{hash} et @var{hash-algo} sont donnés, une @dfn{dérivation à sortie fixe} est créée — c.-à-d.@: une dérivation dont le résultat est connu à l'avance, comme dans le cas du téléchargement d'un fichier. Si, en plus, @var{recursive?} est vrai, alors la sortie fixe peut être un fichier exécutable ou un répertoire et @var{hash} doit être le hash d'une archive contenant la sortie." #. type: deffn -#: doc/guix.texi:4405 -msgid "" -"When @var{references-graphs} is true, it must be a list of file name/store " -"path pairs. In that case, the reference graph of each store path is " -"exported in the build environment in the corresponding file, in a simple " -"text format." -msgstr "" +#: doc/guix.texi:4543 +msgid "When @var{references-graphs} is true, it must be a list of file name/store path pairs. In that case, the reference graph of each store path is exported in the build environment in the corresponding file, in a simple text format." +msgstr "Lorsque @var{references-graphs} est vrai, il doit s'agir d'une liste de paires de noms de fichiers et de chemins du dépôt. Dans ce cas, le graphe des références de chaque chemin du dépôt est exporté dans l'environnement de construction dans le fichier correspondant, dans un simple format texte." #. type: deffn -#: doc/guix.texi:4410 -msgid "" -"When @var{allowed-references} is true, it must be a list of store items or " -"outputs that the derivation's output may refer to. Likewise, " -"@var{disallowed-references}, if true, must be a list of things the outputs " -"may @emph{not} refer to." -msgstr "" +#: doc/guix.texi:4548 +msgid "When @var{allowed-references} is true, it must be a list of store items or outputs that the derivation's output may refer to. Likewise, @var{disallowed-references}, if true, must be a list of things the outputs may @emph{not} refer to." +msgstr "Lorsque @var{allowed-references} est vrai, il doit s'agir d'une liste d'éléments du dépôt ou de sorties auxquelles la sortie de la dérivations peut faire référence. De même, @var{disallowed-references}, si vrai, doit être une liste de choses que la sortie ne doit @emph{pas} référencer." #. type: deffn -#: doc/guix.texi:4417 -msgid "" -"When @var{leaked-env-vars} is true, it must be a list of strings denoting " -"environment variables that are allowed to ``leak'' from the daemon's " -"environment to the build environment. This is only applicable to fixed-" -"output derivations---i.e., when @var{hash} is true. The main use is to " -"allow variables such as @code{http_proxy} to be passed to derivations that " -"download files." -msgstr "" +#: doc/guix.texi:4555 +msgid "When @var{leaked-env-vars} is true, it must be a list of strings denoting environment variables that are allowed to ``leak'' from the daemon's environment to the build environment. This is only applicable to fixed-output derivations---i.e., when @var{hash} is true. The main use is to allow variables such as @code{http_proxy} to be passed to derivations that download files." +msgstr "Lorsque @var{leaked-env-vars} est vrai, il doit s'agir d'une liste de chaînes de caractères qui désignent les variables d'environnements qui peuvent « fuiter » de l'environnement du démon dans l'environnement de construction. Ce n'est possible que pour les dérivations à sortie fixe — c.-à-d.@: lorsque @var{hash} est vrai. L'utilisation principale est de permettre à des variables comme @code{http_proxy} d'être passées aux dérivations qui téléchargent des fichiers." #. type: deffn -#: doc/guix.texi:4422 -msgid "" -"When @var{local-build?} is true, declare that the derivation is not a good " -"candidate for offloading and should rather be built locally (@pxref{Daemon " -"Offload Setup}). This is the case for small derivations where the costs of " -"data transfers would outweigh the benefits." -msgstr "" +#: doc/guix.texi:4560 +msgid "When @var{local-build?} is true, declare that the derivation is not a good candidate for offloading and should rather be built locally (@pxref{Daemon Offload Setup}). This is the case for small derivations where the costs of data transfers would outweigh the benefits." +msgstr "Lorsque @var{local-build?} est vrai, déclare que la dérivation n'est pas un bon candidat pour le déchargement et devrait plutôt être construit localement (@pxref{Daemon Offload Setup}). C'est le cas des petites dérivations où le coût du transfert de données est plus important que les bénéfices." #. type: deffn -#: doc/guix.texi:4427 -msgid "" -"When @var{substitutable?} is false, declare that substitutes of the " -"derivation's output should not be used (@pxref{Substitutes}). This is " -"useful, for instance, when building packages that capture details of the " -"host CPU instruction set." -msgstr "" -"Lorsque que @var{substitutable?} est faux, déclare que les substituts de la " -"sortie de la dérivation ne devraient pas être utilisés (@pxref{Substituts}). " -"Cela est utile par exemple pour construire des paquets qui utilisent des " -"détails du jeu d'instruction du CPU hôte." +#: doc/guix.texi:4565 +msgid "When @var{substitutable?} is false, declare that substitutes of the derivation's output should not be used (@pxref{Substitutes}). This is useful, for instance, when building packages that capture details of the host CPU instruction set." +msgstr "Lorsque que @var{substitutable?} est faux, déclare que les substituts de la sortie de la dérivation ne devraient pas être utilisés (@pxref{Substituts}). Cela est utile par exemple pour construire des paquets qui utilisent des détails du jeu d'instruction du CPU hôte." #. type: Plain text -#: doc/guix.texi:4433 -msgid "" -"Here's an example with a shell script as its builder, assuming @var{store} " -"is an open connection to the daemon, and @var{bash} points to a Bash " -"executable in the store:" -msgstr "" +#: doc/guix.texi:4571 +msgid "Here's an example with a shell script as its builder, assuming @var{store} is an open connection to the daemon, and @var{bash} points to a Bash executable in the store:" +msgstr "Voici un exemple avec un script shell comme constructeur, en supposant que @var{store} est une connexion ouverte au démon et @var{bash} pointe vers un exécutable Bash dans le dépôt :" #. type: lisp -#: doc/guix.texi:4438 +#: doc/guix.texi:4576 #, no-wrap msgid "" "(use-modules (guix utils)\n" @@ -11307,9 +8969,13 @@ msgid "" " (guix derivations))\n" "\n" msgstr "" +"(use-modules (guix utils)\n" +" (guix store)\n" +" (guix derivations))\n" +"\n" #. type: lisp -#: doc/guix.texi:4447 +#: doc/guix.texi:4585 #, no-wrap msgid "" "(let ((builder ; add the Bash script to the store\n" @@ -11321,85 +8987,58 @@ msgid "" " #:env-vars '((\"HOME\" . \"/homeless\"))))\n" "@result{} # /gnu/store/@dots{}-foo>\n" msgstr "" +"(let ((builder ; ajoute le script Bash au dépôt\n" +" (add-text-to-store store \"my-builder.sh\"\n" +" \"echo hello world > $out\\n\" '())))\n" +" (derivation store \"foo\"\n" +" bash `(\"-e\" ,builder)\n" +" #:inputs `((,bash) (,builder))\n" +" #:env-vars '((\"HOME\" . \"/homeless\"))))\n" +"@result{} # /gnu/store/@dots{}-foo>\n" #. type: Plain text -#: doc/guix.texi:4454 -msgid "" -"As can be guessed, this primitive is cumbersome to use directly. A better " -"approach is to write build scripts in Scheme, of course! The best course of " -"action for that is to write the build code as a ``G-expression'', and to " -"pass it to @code{gexp->derivation}. For more information, @pxref{G-" -"Expressions}." -msgstr "" +#: doc/guix.texi:4592 +msgid "As can be guessed, this primitive is cumbersome to use directly. A better approach is to write build scripts in Scheme, of course! The best course of action for that is to write the build code as a ``G-expression'', and to pass it to @code{gexp->derivation}. For more information, @pxref{G-Expressions}." +msgstr "Comme on pourrait s'en douter, cette primitive est difficile à utiliser directement. Une meilleure approche est d'écrire les scripts de construction en Scheme, bien sur ! Le mieux à faire pour cela est d'écrire le code de construction comme une « G-expression » et de la passer à @code{gexp->derivation}. Pour plus d'informations, @pxref{G-Expressions}." #. type: Plain text -#: doc/guix.texi:4459 -msgid "" -"Once upon a time, @code{gexp->derivation} did not exist and constructing " -"derivations with build code written in Scheme was achieved with @code{build-" -"expression->derivation}, documented below. This procedure is now deprecated " -"in favor of the much nicer @code{gexp->derivation}." +#: doc/guix.texi:4597 +msgid "Once upon a time, @code{gexp->derivation} did not exist and constructing derivations with build code written in Scheme was achieved with @code{build-expression->derivation}, documented below. This procedure is now deprecated in favor of the much nicer @code{gexp->derivation}." msgstr "" #. type: deffn -#: doc/guix.texi:4460 +#: doc/guix.texi:4598 #, no-wrap msgid "{Scheme Procedure} build-expression->derivation @var{store} @" msgstr "" #. type: deffn -#: doc/guix.texi:4476 -msgid "" -"@var{name} @var{exp} @ [#:system (%current-system)] [#:inputs '()] @ [#:" -"outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @ [#:recursive? #f] [#:env-" -"vars '()] [#:modules '()] @ [#:references-graphs #f] [#:allowed-references " -"#f] @ [#:disallowed-references #f] @ [#:local-build? #f] [#:substitutable? " -"#t] [#:guile-for-build #f] Return a derivation that executes Scheme " -"expression @var{exp} as a builder for derivation @var{name}. @var{inputs} " -"must be a list of @code{(name drv-path sub-drv)} tuples; when @var{sub-drv} " -"is omitted, @code{\"out\"} is assumed. @var{modules} is a list of names of " -"Guile modules from the current search path to be copied in the store, " -"compiled, and made available in the load path during the execution of " -"@var{exp}---e.g., @code{((guix build utils) (guix build gnu-build-system))}." +#: doc/guix.texi:4614 +msgid "@var{name} @var{exp} @ [#:system (%current-system)] [#:inputs '()] @ [#:outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @ [#:recursive? #f] [#:env-vars '()] [#:modules '()] @ [#:references-graphs #f] [#:allowed-references #f] @ [#:disallowed-references #f] @ [#:local-build? #f] [#:substitutable? #t] [#:guile-for-build #f] Return a derivation that executes Scheme expression @var{exp} as a builder for derivation @var{name}. @var{inputs} must be a list of @code{(name drv-path sub-drv)} tuples; when @var{sub-drv} is omitted, @code{\"out\"} is assumed. @var{modules} is a list of names of Guile modules from the current search path to be copied in the store, compiled, and made available in the load path during the execution of @var{exp}---e.g., @code{((guix build utils) (guix build gnu-build-system))}." msgstr "" #. type: deffn -#: doc/guix.texi:4484 -msgid "" -"@var{exp} is evaluated in an environment where @code{%outputs} is bound to a " -"list of output/path pairs, and where @code{%build-inputs} is bound to a list " -"of string/output-path pairs made from @var{inputs}. Optionally, @var{env-" -"vars} is a list of string pairs specifying the name and value of environment " -"variables visible to the builder. The builder terminates by passing the " -"result of @var{exp} to @code{exit}; thus, when @var{exp} returns @code{#f}, " -"the build is considered to have failed." +#: doc/guix.texi:4622 +msgid "@var{exp} is evaluated in an environment where @code{%outputs} is bound to a list of output/path pairs, and where @code{%build-inputs} is bound to a list of string/output-path pairs made from @var{inputs}. Optionally, @var{env-vars} is a list of string pairs specifying the name and value of environment variables visible to the builder. The builder terminates by passing the result of @var{exp} to @code{exit}; thus, when @var{exp} returns @code{#f}, the build is considered to have failed." msgstr "" #. type: deffn -#: doc/guix.texi:4488 -msgid "" -"@var{exp} is built using @var{guile-for-build} (a derivation). When " -"@var{guile-for-build} is omitted or is @code{#f}, the value of the " -"@code{%guile-for-build} fluid is used instead." +#: doc/guix.texi:4626 +msgid "@var{exp} is built using @var{guile-for-build} (a derivation). When @var{guile-for-build} is omitted or is @code{#f}, the value of the @code{%guile-for-build} fluid is used instead." msgstr "" #. type: deffn -#: doc/guix.texi:4493 -msgid "" -"See the @code{derivation} procedure for the meaning of @var{references-" -"graphs}, @var{allowed-references}, @var{disallowed-references}, @var{local-" -"build?}, and @var{substitutable?}." +#: doc/guix.texi:4631 +msgid "See the @code{derivation} procedure for the meaning of @var{references-graphs}, @var{allowed-references}, @var{disallowed-references}, @var{local-build?}, and @var{substitutable?}." msgstr "" #. type: Plain text -#: doc/guix.texi:4498 -msgid "" -"Here's an example of a single-output derivation that creates a directory " -"containing one file:" +#: doc/guix.texi:4636 +msgid "Here's an example of a single-output derivation that creates a directory containing one file:" msgstr "" #. type: lisp -#: doc/guix.texi:4506 +#: doc/guix.texi:4644 #, no-wrap msgid "" "(let ((builder '(let ((out (assoc-ref %outputs \"out\")))\n" @@ -11412,68 +9051,51 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:4508 +#: doc/guix.texi:4646 #, no-wrap msgid "@result{} # @dots{}>\n" msgstr "" #. type: cindex -#: doc/guix.texi:4514 +#: doc/guix.texi:4652 #, no-wrap msgid "monad" msgstr "" #. type: Plain text -#: doc/guix.texi:4520 -msgid "" -"The procedures that operate on the store described in the previous sections " -"all take an open connection to the build daemon as their first argument. " -"Although the underlying model is functional, they either have side effects " -"or depend on the current state of the store." +#: doc/guix.texi:4658 +msgid "The procedures that operate on the store described in the previous sections all take an open connection to the build daemon as their first argument. Although the underlying model is functional, they either have side effects or depend on the current state of the store." msgstr "" #. type: Plain text -#: doc/guix.texi:4526 -msgid "" -"The former is inconvenient: the connection to the build daemon has to be " -"carried around in all those functions, making it impossible to compose " -"functions that do not take that parameter with functions that do. The " -"latter can be problematic: since store operations have side effects and/or " -"depend on external state, they have to be properly sequenced." +#: doc/guix.texi:4664 +msgid "The former is inconvenient: the connection to the build daemon has to be carried around in all those functions, making it impossible to compose functions that do not take that parameter with functions that do. The latter can be problematic: since store operations have side effects and/or depend on external state, they have to be properly sequenced." msgstr "" #. type: cindex -#: doc/guix.texi:4527 +#: doc/guix.texi:4665 #, no-wrap msgid "monadic values" msgstr "" #. type: cindex -#: doc/guix.texi:4528 +#: doc/guix.texi:4666 #, no-wrap msgid "monadic functions" msgstr "" #. type: Plain text -#: doc/guix.texi:4538 -msgid "" -"This is where the @code{(guix monads)} module comes in. This module " -"provides a framework for working with @dfn{monads}, and a particularly " -"useful monad for our uses, the @dfn{store monad}. Monads are a construct " -"that allows two things: associating ``context'' with values (in our case, " -"the context is the store), and building sequences of computations (here " -"computations include accesses to the store). Values in a monad---values " -"that carry this additional context---are called @dfn{monadic values}; " -"procedures that return such values are called @dfn{monadic procedures}." +#: doc/guix.texi:4676 +msgid "This is where the @code{(guix monads)} module comes in. This module provides a framework for working with @dfn{monads}, and a particularly useful monad for our uses, the @dfn{store monad}. Monads are a construct that allows two things: associating ``context'' with values (in our case, the context is the store), and building sequences of computations (here computations include accesses to the store). Values in a monad---values that carry this additional context---are called @dfn{monadic values}; procedures that return such values are called @dfn{monadic procedures}." msgstr "" #. type: Plain text -#: doc/guix.texi:4540 +#: doc/guix.texi:4678 msgid "Consider this ``normal'' procedure:" msgstr "" #. type: example -#: doc/guix.texi:4549 +#: doc/guix.texi:4687 #, no-wrap msgid "" "(define (sh-symlink store)\n" @@ -11486,14 +9108,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4553 -msgid "" -"Using @code{(guix monads)} and @code{(guix gexp)}, it may be rewritten as a " -"monadic function:" +#: doc/guix.texi:4691 +msgid "Using @code{(guix monads)} and @code{(guix gexp)}, it may be rewritten as a monadic function:" msgstr "" #. type: example -#: doc/guix.texi:4561 +#: doc/guix.texi:4699 #, no-wrap msgid "" "(define (sh-symlink)\n" @@ -11505,25 +9125,17 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4568 -msgid "" -"There are several things to note in the second version: the @code{store} " -"parameter is now implicit and is ``threaded'' in the calls to the " -"@code{package->derivation} and @code{gexp->derivation} monadic procedures, " -"and the monadic value returned by @code{package->derivation} is @dfn{bound} " -"using @code{mlet} instead of plain @code{let}." +#: doc/guix.texi:4706 +msgid "There are several things to note in the second version: the @code{store} parameter is now implicit and is ``threaded'' in the calls to the @code{package->derivation} and @code{gexp->derivation} monadic procedures, and the monadic value returned by @code{package->derivation} is @dfn{bound} using @code{mlet} instead of plain @code{let}." msgstr "" #. type: Plain text -#: doc/guix.texi:4572 -msgid "" -"As it turns out, the call to @code{package->derivation} can even be omitted " -"since it will take place implicitly, as we will see later (@pxref{G-" -"Expressions}):" +#: doc/guix.texi:4710 +msgid "As it turns out, the call to @code{package->derivation} can even be omitted since it will take place implicitly, as we will see later (@pxref{G-Expressions}):" msgstr "" #. type: example -#: doc/guix.texi:4578 +#: doc/guix.texi:4716 #, no-wrap msgid "" "(define (sh-symlink)\n" @@ -11533,16 +9145,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4587 -msgid "" -"Calling the monadic @code{sh-symlink} has no effect. As someone once said, " -"``you exit a monad like you exit a building on fire: by running''. So, to " -"exit the monad and get the desired effect, one must use @code{run-with-" -"store}:" +#: doc/guix.texi:4725 +msgid "Calling the monadic @code{sh-symlink} has no effect. As someone once said, ``you exit a monad like you exit a building on fire: by running''. So, to exit the monad and get the desired effect, one must use @code{run-with-store}:" msgstr "" #. type: example -#: doc/guix.texi:4591 +#: doc/guix.texi:4729 #, no-wrap msgid "" "(run-with-store (open-connection) (sh-symlink))\n" @@ -11550,16 +9158,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4597 -msgid "" -"Note that the @code{(guix monad-repl)} module extends the Guile REPL with " -"new ``meta-commands'' to make it easier to deal with monadic procedures: " -"@code{run-in-store}, and @code{enter-store-monad}. The former is used to " -"``run'' a single monadic value through the store:" +#: doc/guix.texi:4735 +msgid "Note that the @code{(guix monad-repl)} module extends the Guile REPL with new ``meta-commands'' to make it easier to deal with monadic procedures: @code{run-in-store}, and @code{enter-store-monad}. The former is used to ``run'' a single monadic value through the store:" msgstr "" #. type: example -#: doc/guix.texi:4601 +#: doc/guix.texi:4739 #, no-wrap msgid "" "scheme@@(guile-user)> ,run-in-store (package->derivation hello)\n" @@ -11567,14 +9171,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4605 -msgid "" -"The latter enters a recursive REPL, where all the return values are " -"automatically run through the store:" +#: doc/guix.texi:4743 +msgid "The latter enters a recursive REPL, where all the return values are automatically run through the store:" msgstr "" #. type: example -#: doc/guix.texi:4614 +#: doc/guix.texi:4752 #, no-wrap msgid "" "scheme@@(guile-user)> ,enter-store-monad\n" @@ -11587,61 +9189,50 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4619 -msgid "" -"Note that non-monadic values cannot be returned in the @code{store-monad} " -"REPL." +#: doc/guix.texi:4757 +msgid "Note that non-monadic values cannot be returned in the @code{store-monad} REPL." msgstr "" #. type: Plain text -#: doc/guix.texi:4622 -msgid "" -"The main syntactic forms to deal with monads in general are provided by the " -"@code{(guix monads)} module and are described below." +#: doc/guix.texi:4760 +msgid "The main syntactic forms to deal with monads in general are provided by the @code{(guix monads)} module and are described below." msgstr "" #. type: deffn -#: doc/guix.texi:4623 +#: doc/guix.texi:4761 #, no-wrap msgid "{Scheme Syntax} with-monad @var{monad} @var{body} ..." msgstr "" #. type: deffn -#: doc/guix.texi:4626 -msgid "" -"Evaluate any @code{>>=} or @code{return} forms in @var{body} as being in " -"@var{monad}." +#: doc/guix.texi:4764 +msgid "Evaluate any @code{>>=} or @code{return} forms in @var{body} as being in @var{monad}." msgstr "" #. type: deffn -#: doc/guix.texi:4628 +#: doc/guix.texi:4766 #, no-wrap msgid "{Scheme Syntax} return @var{val}" msgstr "" #. type: deffn -#: doc/guix.texi:4630 +#: doc/guix.texi:4768 msgid "Return a monadic value that encapsulates @var{val}." msgstr "" #. type: deffn -#: doc/guix.texi:4632 +#: doc/guix.texi:4770 #, no-wrap msgid "{Scheme Syntax} >>= @var{mval} @var{mproc} ..." msgstr "" #. type: deffn -#: doc/guix.texi:4639 -msgid "" -"@dfn{Bind} monadic value @var{mval}, passing its ``contents'' to monadic " -"procedures @var{mproc}@dots{}@footnote{This operation is commonly referred " -"to as ``bind'', but that name denotes an unrelated procedure in Guile. Thus " -"we use this somewhat cryptic symbol inherited from the Haskell language.}. " -"There can be one @var{mproc} or several of them, as in this example:" +#: doc/guix.texi:4777 +msgid "@dfn{Bind} monadic value @var{mval}, passing its ``contents'' to monadic procedures @var{mproc}@dots{}@footnote{This operation is commonly referred to as ``bind'', but that name denotes an unrelated procedure in Guile. Thus we use this somewhat cryptic symbol inherited from the Haskell language.}. There can be one @var{mproc} or several of them, as in this example:" msgstr "" #. type: example -#: doc/guix.texi:4647 +#: doc/guix.texi:4785 #, no-wrap msgid "" "(run-with-state\n" @@ -11654,7 +9245,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:4650 +#: doc/guix.texi:4788 #, no-wrap msgid "" "@result{} 4\n" @@ -11662,133 +9253,99 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:4653 +#: doc/guix.texi:4791 #, no-wrap msgid "{Scheme Syntax} mlet @var{monad} ((@var{var} @var{mval}) ...) @" msgstr "" #. type: deffn -#: doc/guix.texi:4655 +#: doc/guix.texi:4793 msgid "@var{body} ..." msgstr "" #. type: deffnx -#: doc/guix.texi:4655 +#: doc/guix.texi:4793 #, no-wrap msgid "{Scheme Syntax} mlet* @var{monad} ((@var{var} @var{mval}) ...) @" msgstr "" #. type: deffn -#: doc/guix.texi:4667 -msgid "" -"@var{body} ... Bind the variables @var{var} to the monadic values " -"@var{mval} in @var{body}, which is a sequence of expressions. As with the " -"bind operator, this can be thought of as ``unpacking'' the raw, non-monadic " -"value ``contained'' in @var{mval} and making @var{var} refer to that raw, " -"non-monadic value within the scope of the @var{body}. The form (@var{var} -" -"> @var{val}) binds @var{var} to the ``normal'' value @var{val}, as per " -"@code{let}. The binding operations occur in sequence from left to right. " -"The last expression of @var{body} must be a monadic expression, and its " -"result will become the result of the @code{mlet} or @code{mlet*} when run in " -"the @var{monad}." +#: doc/guix.texi:4805 +msgid "@var{body} ... Bind the variables @var{var} to the monadic values @var{mval} in @var{body}, which is a sequence of expressions. As with the bind operator, this can be thought of as ``unpacking'' the raw, non-monadic value ``contained'' in @var{mval} and making @var{var} refer to that raw, non-monadic value within the scope of the @var{body}. The form (@var{var} -> @var{val}) binds @var{var} to the ``normal'' value @var{val}, as per @code{let}. The binding operations occur in sequence from left to right. The last expression of @var{body} must be a monadic expression, and its result will become the result of the @code{mlet} or @code{mlet*} when run in the @var{monad}." msgstr "" #. type: deffn -#: doc/guix.texi:4670 -msgid "" -"@code{mlet*} is to @code{mlet} what @code{let*} is to @code{let} " -"(@pxref{Local Bindings,,, guile, GNU Guile Reference Manual})." +#: doc/guix.texi:4808 +msgid "@code{mlet*} is to @code{mlet} what @code{let*} is to @code{let} (@pxref{Local Bindings,,, guile, GNU Guile Reference Manual})." msgstr "" #. type: deffn -#: doc/guix.texi:4672 +#: doc/guix.texi:4810 #, no-wrap msgid "{Scheme System} mbegin @var{monad} @var{mexp} ..." msgstr "" #. type: deffn -#: doc/guix.texi:4676 -msgid "" -"Bind @var{mexp} and the following monadic expressions in sequence, returning " -"the result of the last expression. Every expression in the sequence must be " -"a monadic expression." +#: doc/guix.texi:4814 +msgid "Bind @var{mexp} and the following monadic expressions in sequence, returning the result of the last expression. Every expression in the sequence must be a monadic expression." msgstr "" #. type: deffn -#: doc/guix.texi:4680 -msgid "" -"This is akin to @code{mlet}, except that the return values of the monadic " -"expressions are ignored. In that sense, it is analogous to @code{begin}, " -"but applied to monadic expressions." +#: doc/guix.texi:4818 +msgid "This is akin to @code{mlet}, except that the return values of the monadic expressions are ignored. In that sense, it is analogous to @code{begin}, but applied to monadic expressions." msgstr "" #. type: deffn -#: doc/guix.texi:4682 +#: doc/guix.texi:4820 #, no-wrap msgid "{Scheme System} mwhen @var{condition} @var{mexp0} @var{mexp*} ..." msgstr "" #. type: deffn -#: doc/guix.texi:4687 -msgid "" -"When @var{condition} is true, evaluate the sequence of monadic expressions " -"@var{mexp0}..@var{mexp*} as in an @code{mbegin}. When @var{condition} is " -"false, return @code{*unspecified*} in the current monad. Every expression " -"in the sequence must be a monadic expression." +#: doc/guix.texi:4825 +msgid "When @var{condition} is true, evaluate the sequence of monadic expressions @var{mexp0}..@var{mexp*} as in an @code{mbegin}. When @var{condition} is false, return @code{*unspecified*} in the current monad. Every expression in the sequence must be a monadic expression." msgstr "" #. type: deffn -#: doc/guix.texi:4689 +#: doc/guix.texi:4827 #, no-wrap msgid "{Scheme System} munless @var{condition} @var{mexp0} @var{mexp*} ..." msgstr "" #. type: deffn -#: doc/guix.texi:4694 -msgid "" -"When @var{condition} is false, evaluate the sequence of monadic expressions " -"@var{mexp0}..@var{mexp*} as in an @code{mbegin}. When @var{condition} is " -"true, return @code{*unspecified*} in the current monad. Every expression in " -"the sequence must be a monadic expression." +#: doc/guix.texi:4832 +msgid "When @var{condition} is false, evaluate the sequence of monadic expressions @var{mexp0}..@var{mexp*} as in an @code{mbegin}. When @var{condition} is true, return @code{*unspecified*} in the current monad. Every expression in the sequence must be a monadic expression." msgstr "" #. type: cindex -#: doc/guix.texi:4696 +#: doc/guix.texi:4834 #, no-wrap msgid "state monad" msgstr "" #. type: Plain text -#: doc/guix.texi:4700 -msgid "" -"The @code{(guix monads)} module provides the @dfn{state monad}, which allows " -"an additional value---the state---to be @emph{threaded} through monadic " -"procedure calls." +#: doc/guix.texi:4838 +msgid "The @code{(guix monads)} module provides the @dfn{state monad}, which allows an additional value---the state---to be @emph{threaded} through monadic procedure calls." msgstr "" #. type: defvr -#: doc/guix.texi:4701 +#: doc/guix.texi:4839 #, no-wrap msgid "{Scheme Variable} %state-monad" msgstr "" #. type: defvr -#: doc/guix.texi:4704 -msgid "" -"The state monad. Procedures in the state monad can access and change the " -"state that is threaded." +#: doc/guix.texi:4842 +msgid "The state monad. Procedures in the state monad can access and change the state that is threaded." msgstr "" #. type: defvr -#: doc/guix.texi:4708 -msgid "" -"Consider the example below. The @code{square} procedure returns a value in " -"the state monad. It returns the square of its argument, but also increments " -"the current state value:" +#: doc/guix.texi:4846 +msgid "Consider the example below. The @code{square} procedure returns a value in the state monad. It returns the square of its argument, but also increments the current state value:" msgstr "" #. type: example -#: doc/guix.texi:4715 +#: doc/guix.texi:4853 #, no-wrap msgid "" "(define (square x)\n" @@ -11800,7 +9357,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:4719 +#: doc/guix.texi:4857 #, no-wrap msgid "" "(run-with-state (sequence %state-monad (map square (iota 3))) 0)\n" @@ -11809,166 +9366,136 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:4723 -msgid "" -"When ``run'' through @var{%state-monad}, we obtain that additional state " -"value, which is the number of @code{square} calls." +#: doc/guix.texi:4861 +msgid "When ``run'' through @var{%state-monad}, we obtain that additional state value, which is the number of @code{square} calls." msgstr "" #. type: deffn -#: doc/guix.texi:4725 +#: doc/guix.texi:4863 #, no-wrap msgid "{Monadic Procedure} current-state" msgstr "" #. type: deffn -#: doc/guix.texi:4727 +#: doc/guix.texi:4865 msgid "Return the current state as a monadic value." msgstr "" #. type: deffn -#: doc/guix.texi:4729 +#: doc/guix.texi:4867 #, no-wrap msgid "{Monadic Procedure} set-current-state @var{value}" msgstr "" #. type: deffn -#: doc/guix.texi:4732 -msgid "" -"Set the current state to @var{value} and return the previous state as a " -"monadic value." +#: doc/guix.texi:4870 +msgid "Set the current state to @var{value} and return the previous state as a monadic value." msgstr "" #. type: deffn -#: doc/guix.texi:4734 +#: doc/guix.texi:4872 #, no-wrap msgid "{Monadic Procedure} state-push @var{value}" msgstr "" #. type: deffn -#: doc/guix.texi:4737 -msgid "" -"Push @var{value} to the current state, which is assumed to be a list, and " -"return the previous state as a monadic value." +#: doc/guix.texi:4875 +msgid "Push @var{value} to the current state, which is assumed to be a list, and return the previous state as a monadic value." msgstr "" #. type: deffn -#: doc/guix.texi:4739 +#: doc/guix.texi:4877 #, no-wrap msgid "{Monadic Procedure} state-pop" msgstr "" #. type: deffn -#: doc/guix.texi:4742 -msgid "" -"Pop a value from the current state and return it as a monadic value. The " -"state is assumed to be a list." +#: doc/guix.texi:4880 +msgid "Pop a value from the current state and return it as a monadic value. The state is assumed to be a list." msgstr "" #. type: deffn -#: doc/guix.texi:4744 +#: doc/guix.texi:4882 #, no-wrap msgid "{Scheme Procedure} run-with-state @var{mval} [@var{state}]" msgstr "" #. type: deffn -#: doc/guix.texi:4747 -msgid "" -"Run monadic value @var{mval} starting with @var{state} as the initial " -"state. Return two values: the resulting value, and the resulting state." +#: doc/guix.texi:4885 +msgid "Run monadic value @var{mval} starting with @var{state} as the initial state. Return two values: the resulting value, and the resulting state." msgstr "" #. type: Plain text -#: doc/guix.texi:4751 -msgid "" -"The main interface to the store monad, provided by the @code{(guix store)} " -"module, is as follows." +#: doc/guix.texi:4889 +msgid "The main interface to the store monad, provided by the @code{(guix store)} module, is as follows." msgstr "" #. type: defvr -#: doc/guix.texi:4752 +#: doc/guix.texi:4890 #, no-wrap msgid "{Scheme Variable} %store-monad" msgstr "" #. type: defvr -#: doc/guix.texi:4754 +#: doc/guix.texi:4892 msgid "The store monad---an alias for @var{%state-monad}." msgstr "" #. type: defvr -#: doc/guix.texi:4758 -msgid "" -"Values in the store monad encapsulate accesses to the store. When its " -"effect is needed, a value of the store monad must be ``evaluated'' by " -"passing it to the @code{run-with-store} procedure (see below.)" +#: doc/guix.texi:4896 +msgid "Values in the store monad encapsulate accesses to the store. When its effect is needed, a value of the store monad must be ``evaluated'' by passing it to the @code{run-with-store} procedure (see below.)" msgstr "" #. type: deffn -#: doc/guix.texi:4760 +#: doc/guix.texi:4898 #, no-wrap msgid "{Scheme Procedure} run-with-store @var{store} @var{mval} [#:guile-for-build] [#:system (%current-system)]" msgstr "" #. type: deffn -#: doc/guix.texi:4763 -msgid "" -"Run @var{mval}, a monadic value in the store monad, in @var{store}, an open " -"store connection." +#: doc/guix.texi:4901 +msgid "Run @var{mval}, a monadic value in the store monad, in @var{store}, an open store connection." msgstr "" #. type: deffn -#: doc/guix.texi:4765 +#: doc/guix.texi:4903 #, no-wrap msgid "{Monadic Procedure} text-file @var{name} @var{text} [@var{references}]" msgstr "" #. type: deffn -#: doc/guix.texi:4769 -msgid "" -"Return as a monadic value the absolute file name in the store of the file " -"containing @var{text}, a string. @var{references} is a list of store items " -"that the resulting text file refers to; it defaults to the empty list." +#: doc/guix.texi:4907 +msgid "Return as a monadic value the absolute file name in the store of the file containing @var{text}, a string. @var{references} is a list of store items that the resulting text file refers to; it defaults to the empty list." msgstr "" #. type: deffn -#: doc/guix.texi:4771 +#: doc/guix.texi:4909 #, no-wrap msgid "{Monadic Procedure} interned-file @var{file} [@var{name}] @" msgstr "" #. type: deffn -#: doc/guix.texi:4776 -msgid "" -"[#:recursive? #t] [#:select? (const #t)] Return the name of @var{file} once " -"interned in the store. Use @var{name} as its store name, or the basename of " -"@var{file} if @var{name} is omitted." +#: doc/guix.texi:4914 +msgid "[#:recursive? #t] [#:select? (const #t)] Return the name of @var{file} once interned in the store. Use @var{name} as its store name, or the basename of @var{file} if @var{name} is omitted." msgstr "" #. type: deffn -#: doc/guix.texi:4780 doc/guix.texi:5159 -msgid "" -"When @var{recursive?} is true, the contents of @var{file} are added " -"recursively; if @var{file} designates a flat file and @var{recursive?} is " -"true, its contents are added, and its permission bits are kept." +#: doc/guix.texi:4918 doc/guix.texi:5330 +msgid "When @var{recursive?} is true, the contents of @var{file} are added recursively; if @var{file} designates a flat file and @var{recursive?} is true, its contents are added, and its permission bits are kept." msgstr "" #. type: deffn -#: doc/guix.texi:4785 doc/guix.texi:5164 -msgid "" -"When @var{recursive?} is true, call @code{(@var{select?} @var{file} " -"@var{stat})} for each directory entry, where @var{file} is the entry's " -"absolute file name and @var{stat} is the result of @code{lstat}; exclude " -"entries for which @var{select?} does not return true." +#: doc/guix.texi:4923 doc/guix.texi:5335 +msgid "When @var{recursive?} is true, call @code{(@var{select?} @var{file} @var{stat})} for each directory entry, where @var{file} is the entry's absolute file name and @var{stat} is the result of @code{lstat}; exclude entries for which @var{select?} does not return true." msgstr "" #. type: deffn -#: doc/guix.texi:4787 +#: doc/guix.texi:4925 msgid "The example below adds a file to the store, under two different names:" msgstr "" #. type: example -#: doc/guix.texi:4793 +#: doc/guix.texi:4931 #, no-wrap msgid "" "(run-with-store (open-connection)\n" @@ -11979,166 +9506,115 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:4795 +#: doc/guix.texi:4933 #, no-wrap msgid "@result{} (\"/gnu/store/rwm@dots{}-README\" \"/gnu/store/44i@dots{}-LEGU-MIN\")\n" msgstr "" #. type: Plain text -#: doc/guix.texi:4801 -msgid "" -"The @code{(guix packages)} module exports the following package-related " -"monadic procedures:" +#: doc/guix.texi:4939 +msgid "The @code{(guix packages)} module exports the following package-related monadic procedures:" msgstr "" #. type: deffn -#: doc/guix.texi:4802 +#: doc/guix.texi:4940 #, no-wrap msgid "{Monadic Procedure} package-file @var{package} [@var{file}] @" msgstr "" #. type: deffn -#: doc/guix.texi:4810 -msgid "" -"[#:system (%current-system)] [#:target #f] @ [#:output \"out\"] Return as a " -"monadic value in the absolute file name of @var{file} within the " -"@var{output} directory of @var{package}. When @var{file} is omitted, return " -"the name of the @var{output} directory of @var{package}. When @var{target} " -"is true, use it as a cross-compilation target triplet." +#: doc/guix.texi:4948 +msgid "[#:system (%current-system)] [#:target #f] @ [#:output \"out\"] Return as a monadic value in the absolute file name of @var{file} within the @var{output} directory of @var{package}. When @var{file} is omitted, return the name of the @var{output} directory of @var{package}. When @var{target} is true, use it as a cross-compilation target triplet." msgstr "" #. type: deffn -#: doc/guix.texi:4812 +#: doc/guix.texi:4950 #, no-wrap msgid "{Monadic Procedure} package->derivation @var{package} [@var{system}]" msgstr "" #. type: deffnx -#: doc/guix.texi:4813 +#: doc/guix.texi:4951 #, no-wrap msgid "{Monadic Procedure} package->cross-derivation @var{package} @" msgstr "" #. type: deffn -#: doc/guix.texi:4817 -msgid "" -"@var{target} [@var{system}] Monadic version of @code{package-derivation} and " -"@code{package-cross-derivation} (@pxref{Defining Packages})." +#: doc/guix.texi:4955 +msgid "@var{target} [@var{system}] Monadic version of @code{package-derivation} and @code{package-cross-derivation} (@pxref{Defining Packages})." msgstr "" #. type: cindex -#: doc/guix.texi:4823 +#: doc/guix.texi:4961 #, no-wrap msgid "G-expression" msgstr "" #. type: cindex -#: doc/guix.texi:4824 +#: doc/guix.texi:4962 #, no-wrap msgid "build code quoting" msgstr "" #. type: Plain text -#: doc/guix.texi:4830 -msgid "" -"So we have ``derivations'', which represent a sequence of build actions to " -"be performed to produce an item in the store (@pxref{Derivations}). These " -"build actions are performed when asking the daemon to actually build the " -"derivations; they are run by the daemon in a container (@pxref{Invoking guix-" -"daemon})." +#: doc/guix.texi:4968 +msgid "So we have ``derivations'', which represent a sequence of build actions to be performed to produce an item in the store (@pxref{Derivations}). These build actions are performed when asking the daemon to actually build the derivations; they are run by the daemon in a container (@pxref{Invoking guix-daemon})." msgstr "" #. type: cindex -#: doc/guix.texi:4831 +#: doc/guix.texi:4969 #, no-wrap msgid "strata of code" msgstr "" #. type: Plain text -#: doc/guix.texi:4843 -msgid "" -"It should come as no surprise that we like to write these build actions in " -"Scheme. When we do that, we end up with two @dfn{strata} of Scheme " -"code@footnote{The term @dfn{stratum} in this context was coined by Manuel " -"Serrano et al.@: in the context of their work on Hop. Oleg Kiselyov, who " -"has written insightful @url{http://okmij.org/ftp/meta-programming/#meta-" -"scheme, essays and code on this topic}, refers to this kind of code " -"generation as @dfn{staging}.}: the ``host code''---code that defines " -"packages, talks to the daemon, etc.---and the ``build code''---code that " -"actually performs build actions, such as making directories, invoking " -"@command{make}, etc." +#: doc/guix.texi:4981 +msgid "It should come as no surprise that we like to write these build actions in Scheme. When we do that, we end up with two @dfn{strata} of Scheme code@footnote{The term @dfn{stratum} in this context was coined by Manuel Serrano et al.@: in the context of their work on Hop. Oleg Kiselyov, who has written insightful @url{http://okmij.org/ftp/meta-programming/#meta-scheme, essays and code on this topic}, refers to this kind of code generation as @dfn{staging}.}: the ``host code''---code that defines packages, talks to the daemon, etc.---and the ``build code''---code that actually performs build actions, such as making directories, invoking @command{make}, etc." msgstr "" #. type: Plain text -#: doc/guix.texi:4850 -msgid "" -"To describe a derivation and its build actions, one typically needs to embed " -"build code inside host code. It boils down to manipulating build code as " -"data, and the homoiconicity of Scheme---code has a direct representation as " -"data---comes in handy for that. But we need more than the normal " -"@code{quasiquote} mechanism in Scheme to construct build expressions." +#: doc/guix.texi:4988 +msgid "To describe a derivation and its build actions, one typically needs to embed build code inside host code. It boils down to manipulating build code as data, and the homoiconicity of Scheme---code has a direct representation as data---comes in handy for that. But we need more than the normal @code{quasiquote} mechanism in Scheme to construct build expressions." msgstr "" #. type: Plain text -#: doc/guix.texi:4859 -msgid "" -"The @code{(guix gexp)} module implements @dfn{G-expressions}, a form of S-" -"expressions adapted to build expressions. G-expressions, or @dfn{gexps}, " -"consist essentially of three syntactic forms: @code{gexp}, @code{ungexp}, " -"and @code{ungexp-splicing} (or simply: @code{#~}, @code{#$}, and @code{#" -"$@@}), which are comparable to @code{quasiquote}, @code{unquote}, and " -"@code{unquote-splicing}, respectively (@pxref{Expression Syntax, " -"@code{quasiquote},, guile, GNU Guile Reference Manual}). However, there are " -"major differences:" +#: doc/guix.texi:4997 +msgid "The @code{(guix gexp)} module implements @dfn{G-expressions}, a form of S-expressions adapted to build expressions. G-expressions, or @dfn{gexps}, consist essentially of three syntactic forms: @code{gexp}, @code{ungexp}, and @code{ungexp-splicing} (or simply: @code{#~}, @code{#$}, and @code{#$@@}), which are comparable to @code{quasiquote}, @code{unquote}, and @code{unquote-splicing}, respectively (@pxref{Expression Syntax, @code{quasiquote},, guile, GNU Guile Reference Manual}). However, there are major differences:" msgstr "" #. type: itemize -#: doc/guix.texi:4864 -msgid "" -"Gexps are meant to be written to a file and run or manipulated by other " -"processes." +#: doc/guix.texi:5002 +msgid "Gexps are meant to be written to a file and run or manipulated by other processes." msgstr "" #. type: itemize -#: doc/guix.texi:4869 -msgid "" -"When a high-level object such as a package or derivation is unquoted inside " -"a gexp, the result is as if its output file name had been introduced." +#: doc/guix.texi:5007 +msgid "When a high-level object such as a package or derivation is unquoted inside a gexp, the result is as if its output file name had been introduced." msgstr "" #. type: itemize -#: doc/guix.texi:4874 -msgid "" -"Gexps carry information about the packages or derivations they refer to, and " -"these dependencies are automatically added as inputs to the build processes " -"that use them." +#: doc/guix.texi:5012 +msgid "Gexps carry information about the packages or derivations they refer to, and these dependencies are automatically added as inputs to the build processes that use them." msgstr "" #. type: cindex -#: doc/guix.texi:4876 doc/guix.texi:5346 +#: doc/guix.texi:5014 doc/guix.texi:5517 #, no-wrap msgid "lowering, of high-level objects in gexps" msgstr "" #. type: Plain text -#: doc/guix.texi:4886 -msgid "" -"This mechanism is not limited to package and derivation objects: " -"@dfn{compilers} able to ``lower'' other high-level objects to derivations or " -"files in the store can be defined, such that these objects can also be " -"inserted into gexps. For example, a useful type of high-level objects that " -"can be inserted in a gexp is ``file-like objects'', which make it easy to " -"add files to the store and to refer to them in derivations and such (see " -"@code{local-file} and @code{plain-file} below.)" +#: doc/guix.texi:5024 +msgid "This mechanism is not limited to package and derivation objects: @dfn{compilers} able to ``lower'' other high-level objects to derivations or files in the store can be defined, such that these objects can also be inserted into gexps. For example, a useful type of high-level objects that can be inserted in a gexp is ``file-like objects'', which make it easy to add files to the store and to refer to them in derivations and such (see @code{local-file} and @code{plain-file} below.)" msgstr "" #. type: Plain text -#: doc/guix.texi:4888 +#: doc/guix.texi:5026 msgid "To illustrate the idea, here is an example of a gexp:" msgstr "" #. type: example -#: doc/guix.texi:4896 +#: doc/guix.texi:5034 #, no-wrap msgid "" "(define build-exp\n" @@ -12150,48 +9626,34 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4901 -msgid "" -"This gexp can be passed to @code{gexp->derivation}; we obtain a derivation " -"that builds a directory containing exactly one symlink to @file{/gnu/store/" -"@dots{}-coreutils-8.22/bin/ls}:" +#: doc/guix.texi:5039 +msgid "This gexp can be passed to @code{gexp->derivation}; we obtain a derivation that builds a directory containing exactly one symlink to @file{/gnu/store/@dots{}-coreutils-8.22/bin/ls}:" msgstr "" #. type: example -#: doc/guix.texi:4904 +#: doc/guix.texi:5042 #, no-wrap msgid "(gexp->derivation \"the-thing\" build-exp)\n" msgstr "" #. type: Plain text -#: doc/guix.texi:4912 -msgid "" -"As one would expect, the @code{\"/gnu/store/@dots{}-coreutils-8.22\"} string " -"is substituted to the reference to the @var{coreutils} package in the actual " -"build code, and @var{coreutils} is automatically made an input to the " -"derivation. Likewise, @code{#$output} (equivalent to @code{(ungexp " -"output)}) is replaced by a string containing the directory name of the " -"output of the derivation." +#: doc/guix.texi:5050 +msgid "As one would expect, the @code{\"/gnu/store/@dots{}-coreutils-8.22\"} string is substituted to the reference to the @var{coreutils} package in the actual build code, and @var{coreutils} is automatically made an input to the derivation. Likewise, @code{#$output} (equivalent to @code{(ungexp output)}) is replaced by a string containing the directory name of the output of the derivation." msgstr "" #. type: cindex -#: doc/guix.texi:4913 +#: doc/guix.texi:5051 #, no-wrap msgid "cross compilation" msgstr "" #. type: Plain text -#: doc/guix.texi:4919 -msgid "" -"In a cross-compilation context, it is useful to distinguish between " -"references to the @emph{native} build of a package---that can run on the " -"host---versus references to cross builds of a package. To that end, the " -"@code{#+} plays the same role as @code{#$}, but is a reference to a native " -"package build:" +#: doc/guix.texi:5057 +msgid "In a cross-compilation context, it is useful to distinguish between references to the @emph{native} build of a package---that can run on the host---versus references to cross builds of a package. To that end, the @code{#+} plays the same role as @code{#$}, but is a reference to a native package build:" msgstr "" #. type: example -#: doc/guix.texi:4929 +#: doc/guix.texi:5067 #, no-wrap msgid "" "(gexp->derivation \"vi\"\n" @@ -12205,36 +9667,29 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4935 -msgid "" -"In the example above, the native build of @var{coreutils} is used, so that " -"@command{ln} can actually run on the host; but then the cross-compiled build " -"of @var{emacs} is referenced." +#: doc/guix.texi:5073 +msgid "In the example above, the native build of @var{coreutils} is used, so that @command{ln} can actually run on the host; but then the cross-compiled build of @var{emacs} is referenced." msgstr "" #. type: cindex -#: doc/guix.texi:4936 +#: doc/guix.texi:5074 #, no-wrap msgid "imported modules, for gexps" msgstr "" #. type: findex -#: doc/guix.texi:4937 +#: doc/guix.texi:5075 #, no-wrap msgid "with-imported-modules" msgstr "" #. type: Plain text -#: doc/guix.texi:4942 -msgid "" -"Another gexp feature is @dfn{imported modules}: sometimes you want to be " -"able to use certain Guile modules from the ``host environment'' in the gexp, " -"so those modules should be imported in the ``build environment''. The " -"@code{with-imported-modules} form allows you to express that:" +#: doc/guix.texi:5080 +msgid "Another gexp feature is @dfn{imported modules}: sometimes you want to be able to use certain Guile modules from the ``host environment'' in the gexp, so those modules should be imported in the ``build environment''. The @code{with-imported-modules} form allows you to express that:" msgstr "" #. type: example -#: doc/guix.texi:4953 +#: doc/guix.texi:5091 #, no-wrap msgid "" "(let ((build (with-imported-modules '((guix build utils))\n" @@ -12249,38 +9704,29 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:4959 -msgid "" -"In this example, the @code{(guix build utils)} module is automatically " -"pulled into the isolated build environment of our gexp, such that @code{(use-" -"modules (guix build utils))} works as expected." +#: doc/guix.texi:5097 +msgid "In this example, the @code{(guix build utils)} module is automatically pulled into the isolated build environment of our gexp, such that @code{(use-modules (guix build utils))} works as expected." msgstr "" #. type: cindex -#: doc/guix.texi:4960 +#: doc/guix.texi:5098 #, no-wrap msgid "module closure" msgstr "" #. type: findex -#: doc/guix.texi:4961 +#: doc/guix.texi:5099 #, no-wrap msgid "source-module-closure" msgstr "" #. type: Plain text -#: doc/guix.texi:4968 -msgid "" -"Usually you want the @emph{closure} of the module to be imported---i.e., the " -"module itself and all the modules it depends on---rather than just the " -"module; failing to do that, attempts to use the module will fail because of " -"missing dependent modules. The @code{source-module-closure} procedure " -"computes the closure of a module by looking at its source file headers, " -"which comes in handy in this case:" +#: doc/guix.texi:5106 +msgid "Usually you want the @emph{closure} of the module to be imported---i.e., the module itself and all the modules it depends on---rather than just the module; failing to do that, attempts to use the module will fail because of missing dependent modules. The @code{source-module-closure} procedure computes the closure of a module by looking at its source file headers, which comes in handy in this case:" msgstr "" #. type: example -#: doc/guix.texi:4971 +#: doc/guix.texi:5109 #, no-wrap msgid "" "(use-modules (guix modules)) ;for 'source-module-closure'\n" @@ -12288,7 +9734,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:4980 +#: doc/guix.texi:5118 #, no-wrap msgid "" "(with-imported-modules (source-module-closure\n" @@ -12301,213 +9747,221 @@ msgid "" " @dots{})))\n" msgstr "" +#. type: cindex +#: doc/guix.texi:5120 +#, no-wrap +msgid "extensions, for gexps" +msgstr "" + +#. type: findex +#: doc/guix.texi:5121 +#, no-wrap +msgid "with-extensions" +msgstr "" + #. type: Plain text -#: doc/guix.texi:4983 +#: doc/guix.texi:5126 +msgid "In the same vein, sometimes you want to import not just pure-Scheme modules, but also ``extensions'' such as Guile bindings to C libraries or other ``full-blown'' packages. Say you need the @code{guile-json} package available on the build side, here's how you would do it:" +msgstr "" + +#. type: example +#: doc/guix.texi:5129 +#, no-wrap +msgid "" +"(use-modules (gnu packages guile)) ;for 'guile-json'\n" +"\n" +msgstr "" + +#. type: example +#: doc/guix.texi:5135 +#, no-wrap +msgid "" +"(with-extensions (list guile-json)\n" +" (gexp->derivation \"something-with-json\"\n" +" #~(begin\n" +" (use-modules (json))\n" +" @dots{})))\n" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:5138 msgid "The syntactic form to construct gexps is summarized below." msgstr "" #. type: deffn -#: doc/guix.texi:4984 +#: doc/guix.texi:5139 #, no-wrap msgid "{Scheme Syntax} #~@var{exp}" msgstr "" #. type: deffnx -#: doc/guix.texi:4985 +#: doc/guix.texi:5140 #, no-wrap msgid "{Scheme Syntax} (gexp @var{exp})" msgstr "" #. type: deffn -#: doc/guix.texi:4988 -msgid "" -"Return a G-expression containing @var{exp}. @var{exp} may contain one or " -"more of the following forms:" +#: doc/guix.texi:5143 +msgid "Return a G-expression containing @var{exp}. @var{exp} may contain one or more of the following forms:" msgstr "" #. type: item -#: doc/guix.texi:4990 +#: doc/guix.texi:5145 #, no-wrap msgid "#$@var{obj}" msgstr "" #. type: itemx -#: doc/guix.texi:4991 +#: doc/guix.texi:5146 #, no-wrap msgid "(ungexp @var{obj})" msgstr "" #. type: table -#: doc/guix.texi:4996 -msgid "" -"Introduce a reference to @var{obj}. @var{obj} may have one of the supported " -"types, for example a package or a derivation, in which case the " -"@code{ungexp} form is replaced by its output file name---e.g., @code{\"/gnu/" -"store/@dots{}-coreutils-8.22}." +#: doc/guix.texi:5151 +msgid "Introduce a reference to @var{obj}. @var{obj} may have one of the supported types, for example a package or a derivation, in which case the @code{ungexp} form is replaced by its output file name---e.g., @code{\"/gnu/store/@dots{}-coreutils-8.22}." msgstr "" #. type: table -#: doc/guix.texi:4999 -msgid "" -"If @var{obj} is a list, it is traversed and references to supported objects " -"are substituted similarly." +#: doc/guix.texi:5154 +msgid "If @var{obj} is a list, it is traversed and references to supported objects are substituted similarly." msgstr "" #. type: table -#: doc/guix.texi:5002 -msgid "" -"If @var{obj} is another gexp, its contents are inserted and its dependencies " -"are added to those of the containing gexp." +#: doc/guix.texi:5157 +msgid "If @var{obj} is another gexp, its contents are inserted and its dependencies are added to those of the containing gexp." msgstr "" #. type: table -#: doc/guix.texi:5004 +#: doc/guix.texi:5159 msgid "If @var{obj} is another kind of object, it is inserted as is." msgstr "" #. type: item -#: doc/guix.texi:5005 +#: doc/guix.texi:5160 #, no-wrap msgid "#$@var{obj}:@var{output}" msgstr "" #. type: itemx -#: doc/guix.texi:5006 +#: doc/guix.texi:5161 #, no-wrap msgid "(ungexp @var{obj} @var{output})" msgstr "" #. type: table -#: doc/guix.texi:5010 -msgid "" -"This is like the form above, but referring explicitly to the @var{output} of " -"@var{obj}---this is useful when @var{obj} produces multiple outputs " -"(@pxref{Packages with Multiple Outputs})." +#: doc/guix.texi:5165 +msgid "This is like the form above, but referring explicitly to the @var{output} of @var{obj}---this is useful when @var{obj} produces multiple outputs (@pxref{Packages with Multiple Outputs})." msgstr "" #. type: item -#: doc/guix.texi:5011 +#: doc/guix.texi:5166 #, no-wrap msgid "#+@var{obj}" msgstr "" #. type: itemx -#: doc/guix.texi:5012 +#: doc/guix.texi:5167 #, no-wrap msgid "#+@var{obj}:output" msgstr "" #. type: itemx -#: doc/guix.texi:5013 +#: doc/guix.texi:5168 #, no-wrap msgid "(ungexp-native @var{obj})" msgstr "" #. type: itemx -#: doc/guix.texi:5014 +#: doc/guix.texi:5169 #, no-wrap msgid "(ungexp-native @var{obj} @var{output})" msgstr "" #. type: table -#: doc/guix.texi:5017 -msgid "" -"Same as @code{ungexp}, but produces a reference to the @emph{native} build " -"of @var{obj} when used in a cross compilation context." +#: doc/guix.texi:5172 +msgid "Same as @code{ungexp}, but produces a reference to the @emph{native} build of @var{obj} when used in a cross compilation context." msgstr "" #. type: item -#: doc/guix.texi:5018 +#: doc/guix.texi:5173 #, no-wrap msgid "#$output[:@var{output}]" msgstr "" #. type: itemx -#: doc/guix.texi:5019 +#: doc/guix.texi:5174 #, no-wrap msgid "(ungexp output [@var{output}])" msgstr "" #. type: table -#: doc/guix.texi:5022 -msgid "" -"Insert a reference to derivation output @var{output}, or to the main output " -"when @var{output} is omitted." +#: doc/guix.texi:5177 +msgid "Insert a reference to derivation output @var{output}, or to the main output when @var{output} is omitted." msgstr "" #. type: table -#: doc/guix.texi:5024 +#: doc/guix.texi:5179 msgid "This only makes sense for gexps passed to @code{gexp->derivation}." msgstr "" #. type: item -#: doc/guix.texi:5025 +#: doc/guix.texi:5180 #, no-wrap msgid "#$@@@var{lst}" msgstr "" #. type: itemx -#: doc/guix.texi:5026 +#: doc/guix.texi:5181 #, no-wrap msgid "(ungexp-splicing @var{lst})" msgstr "" #. type: table -#: doc/guix.texi:5029 -msgid "" -"Like the above, but splices the contents of @var{lst} inside the containing " -"list." +#: doc/guix.texi:5184 +msgid "Like the above, but splices the contents of @var{lst} inside the containing list." msgstr "" #. type: item -#: doc/guix.texi:5030 +#: doc/guix.texi:5185 #, no-wrap msgid "#+@@@var{lst}" msgstr "" #. type: itemx -#: doc/guix.texi:5031 +#: doc/guix.texi:5186 #, no-wrap msgid "(ungexp-native-splicing @var{lst})" msgstr "" #. type: table -#: doc/guix.texi:5034 -msgid "" -"Like the above, but refers to native builds of the objects listed in " -"@var{lst}." +#: doc/guix.texi:5189 +msgid "Like the above, but refers to native builds of the objects listed in @var{lst}." msgstr "" #. type: deffn -#: doc/guix.texi:5039 -msgid "" -"G-expressions created by @code{gexp} or @code{#~} are run-time objects of " -"the @code{gexp?} type (see below.)" +#: doc/guix.texi:5194 +msgid "G-expressions created by @code{gexp} or @code{#~} are run-time objects of the @code{gexp?} type (see below.)" msgstr "" #. type: deffn -#: doc/guix.texi:5041 +#: doc/guix.texi:5196 #, no-wrap msgid "{Scheme Syntax} with-imported-modules @var{modules} @var{body}@dots{}" msgstr "" #. type: deffn -#: doc/guix.texi:5044 -msgid "" -"Mark the gexps defined in @var{body}@dots{} as requiring @var{modules} in " -"their execution environment." +#: doc/guix.texi:5199 +msgid "Mark the gexps defined in @var{body}@dots{} as requiring @var{modules} in their execution environment." msgstr "" #. type: deffn -#: doc/guix.texi:5048 -msgid "" -"Each item in @var{modules} can be the name of a module, such as @code{(guix " -"build utils)}, or it can be a module name, followed by an arrow, followed by " -"a file-like object:" +#: doc/guix.texi:5203 +msgid "Each item in @var{modules} can be the name of a module, such as @code{(guix build utils)}, or it can be a module name, followed by an arrow, followed by a file-like object:" msgstr "" #. type: example -#: doc/guix.texi:5054 +#: doc/guix.texi:5209 #, no-wrap msgid "" "`((guix build utils)\n" @@ -12517,88 +9971,80 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5059 -msgid "" -"In the example above, the first two modules are taken from the search path, " -"and the last one is created from the given file-like object." +#: doc/guix.texi:5214 +msgid "In the example above, the first two modules are taken from the search path, and the last one is created from the given file-like object." msgstr "" #. type: deffn -#: doc/guix.texi:5063 -msgid "" -"This form has @emph{lexical} scope: it has an effect on the gexps directly " -"defined in @var{body}@dots{}, but not on those defined, say, in procedures " -"called from @var{body}@dots{}." +#: doc/guix.texi:5218 +msgid "This form has @emph{lexical} scope: it has an effect on the gexps directly defined in @var{body}@dots{}, but not on those defined, say, in procedures called from @var{body}@dots{}." msgstr "" #. type: deffn -#: doc/guix.texi:5065 +#: doc/guix.texi:5220 +#, no-wrap +msgid "{Scheme Syntax} with-extensions @var{extensions} @var{body}@dots{}" +msgstr "" + +#. type: deffn +#: doc/guix.texi:5225 +msgid "Mark the gexps defined in @var{body}@dots{} as requiring @var{extensions} in their build and execution environment. @var{extensions} is typically a list of package objects such as those defined in the @code{(gnu packages guile)} module." +msgstr "" + +#. type: deffn +#: doc/guix.texi:5230 +msgid "Concretely, the packages listed in @var{extensions} are added to the load path while compiling imported modules in @var{body}@dots{}; they are also added to the load path of the gexp returned by @var{body}@dots{}." +msgstr "" + +#. type: deffn +#: doc/guix.texi:5232 #, no-wrap msgid "{Scheme Procedure} gexp? @var{obj}" msgstr "" #. type: deffn -#: doc/guix.texi:5067 +#: doc/guix.texi:5234 msgid "Return @code{#t} if @var{obj} is a G-expression." msgstr "" #. type: Plain text -#: doc/guix.texi:5073 -msgid "" -"G-expressions are meant to be written to disk, either as code building some " -"derivation, or as plain files in the store. The monadic procedures below " -"allow you to do that (@pxref{The Store Monad}, for more information about " -"monads.)" +#: doc/guix.texi:5240 +msgid "G-expressions are meant to be written to disk, either as code building some derivation, or as plain files in the store. The monadic procedures below allow you to do that (@pxref{The Store Monad}, for more information about monads.)" msgstr "" #. type: deffn -#: doc/guix.texi:5074 +#: doc/guix.texi:5241 #, no-wrap msgid "{Monadic Procedure} gexp->derivation @var{name} @var{exp} @" msgstr "" #. type: deffn -#: doc/guix.texi:5090 -msgid "" -"[#:system (%current-system)] [#:target #f] [#:graft? #t] @ [#:hash #f] [#:" -"hash-algo #f] @ [#:recursive? #f] [#:env-vars '()] [#:modules '()] @ [#:" -"module-path @var{%load-path}] @ [#:references-graphs #f] [#:allowed-" -"references #f] @ [#:disallowed-references #f] @ [#:leaked-env-vars #f] @ [#:" -"script-name (string-append @var{name} \"-builder\")] @ [#:deprecation-" -"warnings #f] @ [#:local-build? #f] [#:substitutable? #t] [#:guile-for-build " -"#f] Return a derivation @var{name} that runs @var{exp} (a gexp) with " -"@var{guile-for-build} (a derivation) on @var{system}; @var{exp} is stored in " -"a file called @var{script-name}. When @var{target} is true, it is used as " -"the cross-compilation target triplet for packages referred to by @var{exp}." +#: doc/guix.texi:5258 +msgid "[#:system (%current-system)] [#:target #f] [#:graft? #t] @ [#:hash #f] [#:hash-algo #f] @ [#:recursive? #f] [#:env-vars '()] [#:modules '()] @ [#:module-path @var{%load-path}] @ [#:effective-version \"2.2\"] @ [#:references-graphs #f] [#:allowed-references #f] @ [#:disallowed-references #f] @ [#:leaked-env-vars #f] @ [#:script-name (string-append @var{name} \"-builder\")] @ [#:deprecation-warnings #f] @ [#:local-build? #f] [#:substitutable? #t] [#:guile-for-build #f] Return a derivation @var{name} that runs @var{exp} (a gexp) with @var{guile-for-build} (a derivation) on @var{system}; @var{exp} is stored in a file called @var{script-name}. When @var{target} is true, it is used as the cross-compilation target triplet for packages referred to by @var{exp}." msgstr "" #. type: deffn -#: doc/guix.texi:5098 -msgid "" -"@var{modules} is deprecated in favor of @code{with-imported-modules}. Its " -"meaning is to make @var{modules} available in the evaluation context of " -"@var{exp}; @var{modules} is a list of names of Guile modules searched in " -"@var{module-path} to be copied in the store, compiled, and made available in " -"the load path during the execution of @var{exp}---e.g., @code{((guix build " -"utils) (guix build gnu-build-system))}." +#: doc/guix.texi:5266 +msgid "@var{modules} is deprecated in favor of @code{with-imported-modules}. Its meaning is to make @var{modules} available in the evaluation context of @var{exp}; @var{modules} is a list of names of Guile modules searched in @var{module-path} to be copied in the store, compiled, and made available in the load path during the execution of @var{exp}---e.g., @code{((guix build utils) (guix build gnu-build-system))}." msgstr "" #. type: deffn -#: doc/guix.texi:5101 -msgid "" -"@var{graft?} determines whether packages referred to by @var{exp} should be " -"grafted when applicable." +#: doc/guix.texi:5269 +msgid "@var{effective-version} determines the string to use when adding extensions of @var{exp} (see @code{with-extensions}) to the search path---e.g., @code{\"2.2\"}." msgstr "" #. type: deffn -#: doc/guix.texi:5104 -msgid "" -"When @var{references-graphs} is true, it must be a list of tuples of one of " -"the following forms:" +#: doc/guix.texi:5272 +msgid "@var{graft?} determines whether packages referred to by @var{exp} should be grafted when applicable." +msgstr "" + +#. type: deffn +#: doc/guix.texi:5275 +msgid "When @var{references-graphs} is true, it must be a list of tuples of one of the following forms:" msgstr "" #. type: example -#: doc/guix.texi:5111 +#: doc/guix.texi:5282 #, no-wrap msgid "" "(@var{file-name} @var{package})\n" @@ -12609,54 +10055,38 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5117 -msgid "" -"The right-hand-side of each element of @var{references-graphs} is " -"automatically made an input of the build process of @var{exp}. In the build " -"environment, each @var{file-name} contains the reference graph of the " -"corresponding item, in a simple text format." +#: doc/guix.texi:5288 +msgid "The right-hand-side of each element of @var{references-graphs} is automatically made an input of the build process of @var{exp}. In the build environment, each @var{file-name} contains the reference graph of the corresponding item, in a simple text format." msgstr "" #. type: deffn -#: doc/guix.texi:5123 -msgid "" -"@var{allowed-references} must be either @code{#f} or a list of output names " -"and packages. In the latter case, the list denotes store items that the " -"result is allowed to refer to. Any reference to another store item will " -"lead to a build error. Similarly for @var{disallowed-references}, which can " -"list items that must not be referenced by the outputs." +#: doc/guix.texi:5294 +msgid "@var{allowed-references} must be either @code{#f} or a list of output names and packages. In the latter case, the list denotes store items that the result is allowed to refer to. Any reference to another store item will lead to a build error. Similarly for @var{disallowed-references}, which can list items that must not be referenced by the outputs." msgstr "" #. type: deffn -#: doc/guix.texi:5126 -msgid "" -"@var{deprecation-warnings} determines whether to show deprecation warnings " -"while compiling modules. It can be @code{#f}, @code{#t}, or " -"@code{'detailed}." +#: doc/guix.texi:5297 +msgid "@var{deprecation-warnings} determines whether to show deprecation warnings while compiling modules. It can be @code{#f}, @code{#t}, or @code{'detailed}." msgstr "" #. type: deffn -#: doc/guix.texi:5128 +#: doc/guix.texi:5299 msgid "The other arguments are as for @code{derivation} (@pxref{Derivations})." msgstr "" #. type: cindex -#: doc/guix.texi:5130 +#: doc/guix.texi:5301 #, no-wrap msgid "file-like objects" msgstr "" #. type: Plain text -#: doc/guix.texi:5135 -msgid "" -"The @code{local-file}, @code{plain-file}, @code{computed-file}, " -"@code{program-file}, and @code{scheme-file} procedures below return " -"@dfn{file-like objects}. That is, when unquoted in a G-expression, these " -"objects lead to a file in the store. Consider this G-expression:" +#: doc/guix.texi:5306 +msgid "The @code{local-file}, @code{plain-file}, @code{computed-file}, @code{program-file}, and @code{scheme-file} procedures below return @dfn{file-like objects}. That is, when unquoted in a G-expression, these objects lead to a file in the store. Consider this G-expression:" msgstr "" #. type: example -#: doc/guix.texi:5139 +#: doc/guix.texi:5310 #, no-wrap msgid "" "#~(system* #$(file-append glibc \"/sbin/nscd\") \"-f\"\n" @@ -12664,100 +10094,76 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:5148 -msgid "" -"The effect here is to ``intern'' @file{/tmp/my-nscd.conf} by copying it to " -"the store. Once expanded, for instance @i{via} @code{gexp->derivation}, the " -"G-expression refers to that copy under @file{/gnu/store}; thus, modifying or " -"removing the file in @file{/tmp} does not have any effect on what the G-" -"expression does. @code{plain-file} can be used similarly; it differs in " -"that the file content is directly passed as a string." +#: doc/guix.texi:5319 +msgid "The effect here is to ``intern'' @file{/tmp/my-nscd.conf} by copying it to the store. Once expanded, for instance @i{via} @code{gexp->derivation}, the G-expression refers to that copy under @file{/gnu/store}; thus, modifying or removing the file in @file{/tmp} does not have any effect on what the G-expression does. @code{plain-file} can be used similarly; it differs in that the file content is directly passed as a string." msgstr "" #. type: deffn -#: doc/guix.texi:5149 +#: doc/guix.texi:5320 #, no-wrap msgid "{Scheme Procedure} local-file @var{file} [@var{name}] @" msgstr "" #. type: deffn -#: doc/guix.texi:5155 -msgid "" -"[#:recursive? #f] [#:select? (const #t)] Return an object representing local " -"file @var{file} to add to the store; this object can be used in a gexp. If " -"@var{file} is a relative file name, it is looked up relative to the source " -"file where this form appears. @var{file} will be added to the store under " -"@var{name}--by default the base name of @var{file}." +#: doc/guix.texi:5326 +msgid "[#:recursive? #f] [#:select? (const #t)] Return an object representing local file @var{file} to add to the store; this object can be used in a gexp. If @var{file} is a relative file name, it is looked up relative to the source file where this form appears. @var{file} will be added to the store under @var{name}--by default the base name of @var{file}." msgstr "" #. type: deffn -#: doc/guix.texi:5167 -msgid "" -"This is the declarative counterpart of the @code{interned-file} monadic " -"procedure (@pxref{The Store Monad, @code{interned-file}})." +#: doc/guix.texi:5338 +msgid "This is the declarative counterpart of the @code{interned-file} monadic procedure (@pxref{The Store Monad, @code{interned-file}})." msgstr "" #. type: deffn -#: doc/guix.texi:5169 +#: doc/guix.texi:5340 #, no-wrap msgid "{Scheme Procedure} plain-file @var{name} @var{content}" msgstr "" #. type: deffn -#: doc/guix.texi:5172 -msgid "" -"Return an object representing a text file called @var{name} with the given " -"@var{content} (a string) to be added to the store." +#: doc/guix.texi:5343 +msgid "Return an object representing a text file called @var{name} with the given @var{content} (a string) to be added to the store." msgstr "" #. type: deffn -#: doc/guix.texi:5174 +#: doc/guix.texi:5345 msgid "This is the declarative counterpart of @code{text-file}." msgstr "" #. type: deffn -#: doc/guix.texi:5176 +#: doc/guix.texi:5347 #, no-wrap msgid "{Scheme Procedure} computed-file @var{name} @var{gexp} @" msgstr "" #. type: deffn -#: doc/guix.texi:5181 -msgid "" -"[#:options '(#:local-build? #t)] Return an object representing the store " -"item @var{name}, a file or directory computed by @var{gexp}. @var{options} " -"is a list of additional arguments to pass to @code{gexp->derivation}." +#: doc/guix.texi:5352 +msgid "[#:options '(#:local-build? #t)] Return an object representing the store item @var{name}, a file or directory computed by @var{gexp}. @var{options} is a list of additional arguments to pass to @code{gexp->derivation}." msgstr "" #. type: deffn -#: doc/guix.texi:5183 +#: doc/guix.texi:5354 msgid "This is the declarative counterpart of @code{gexp->derivation}." msgstr "" #. type: deffn -#: doc/guix.texi:5185 +#: doc/guix.texi:5356 #, no-wrap msgid "{Monadic Procedure} gexp->script @var{name} @var{exp} @" msgstr "" #. type: deffn -#: doc/guix.texi:5190 -msgid "" -"[#:guile (default-guile)] [#:module-path %load-path] Return an executable " -"script @var{name} that runs @var{exp} using @var{guile}, with @var{exp}'s " -"imported modules in its search path. Look up @var{exp}'s modules in " -"@var{module-path}." +#: doc/guix.texi:5361 +msgid "[#:guile (default-guile)] [#:module-path %load-path] Return an executable script @var{name} that runs @var{exp} using @var{guile}, with @var{exp}'s imported modules in its search path. Look up @var{exp}'s modules in @var{module-path}." msgstr "" #. type: deffn -#: doc/guix.texi:5193 -msgid "" -"The example below builds a script that simply invokes the @command{ls} " -"command:" +#: doc/guix.texi:5364 +msgid "The example below builds a script that simply invokes the @command{ls} command:" msgstr "" #. type: example -#: doc/guix.texi:5196 +#: doc/guix.texi:5367 #, no-wrap msgid "" "(use-modules (guix gexp) (gnu packages base))\n" @@ -12765,7 +10171,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:5200 +#: doc/guix.texi:5371 #, no-wrap msgid "" "(gexp->script \"list-files\"\n" @@ -12774,15 +10180,12 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5205 -msgid "" -"When ``running'' it through the store (@pxref{The Store Monad, @code{run-" -"with-store}}), we obtain a derivation that produces an executable file " -"@file{/gnu/store/@dots{}-list-files} along these lines:" +#: doc/guix.texi:5376 +msgid "When ``running'' it through the store (@pxref{The Store Monad, @code{run-with-store}}), we obtain a derivation that produces an executable file @file{/gnu/store/@dots{}-list-files} along these lines:" msgstr "" #. type: example -#: doc/guix.texi:5210 +#: doc/guix.texi:5381 #, no-wrap msgid "" "#!/gnu/store/@dots{}-guile-2.0.11/bin/guile -ds\n" @@ -12791,98 +10194,76 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5213 +#: doc/guix.texi:5384 #, no-wrap msgid "{Scheme Procedure} program-file @var{name} @var{exp} @" msgstr "" #. type: deffn -#: doc/guix.texi:5218 -msgid "" -"[#:guile #f] [#:module-path %load-path] Return an object representing the " -"executable store item @var{name} that runs @var{gexp}. @var{guile} is the " -"Guile package used to execute that script. Imported modules of @var{gexp} " -"are looked up in @var{module-path}." +#: doc/guix.texi:5389 +msgid "[#:guile #f] [#:module-path %load-path] Return an object representing the executable store item @var{name} that runs @var{gexp}. @var{guile} is the Guile package used to execute that script. Imported modules of @var{gexp} are looked up in @var{module-path}." msgstr "" #. type: deffn -#: doc/guix.texi:5220 +#: doc/guix.texi:5391 msgid "This is the declarative counterpart of @code{gexp->script}." msgstr "" #. type: deffn -#: doc/guix.texi:5222 +#: doc/guix.texi:5393 #, no-wrap msgid "{Monadic Procedure} gexp->file @var{name} @var{exp} @" msgstr "" #. type: deffn -#: doc/guix.texi:5229 -msgid "" -"[#:set-load-path? #t] [#:module-path %load-path] @ [#:splice? #f] @ [#:guile " -"(default-guile)] Return a derivation that builds a file @var{name} " -"containing @var{exp}. When @var{splice?} is true, @var{exp} is considered " -"to be a list of expressions that will be spliced in the resulting file." +#: doc/guix.texi:5400 +msgid "[#:set-load-path? #t] [#:module-path %load-path] @ [#:splice? #f] @ [#:guile (default-guile)] Return a derivation that builds a file @var{name} containing @var{exp}. When @var{splice?} is true, @var{exp} is considered to be a list of expressions that will be spliced in the resulting file." msgstr "" #. type: deffn -#: doc/guix.texi:5234 -msgid "" -"When @var{set-load-path?} is true, emit code in the resulting file to set " -"@code{%load-path} and @code{%load-compiled-path} to honor @var{exp}'s " -"imported modules. Look up @var{exp}'s modules in @var{module-path}." +#: doc/guix.texi:5405 +msgid "When @var{set-load-path?} is true, emit code in the resulting file to set @code{%load-path} and @code{%load-compiled-path} to honor @var{exp}'s imported modules. Look up @var{exp}'s modules in @var{module-path}." msgstr "" #. type: deffn -#: doc/guix.texi:5237 -msgid "" -"The resulting file holds references to all the dependencies of @var{exp} or " -"a subset thereof." +#: doc/guix.texi:5408 +msgid "The resulting file holds references to all the dependencies of @var{exp} or a subset thereof." msgstr "" #. type: deffn -#: doc/guix.texi:5239 -#, fuzzy, no-wrap +#: doc/guix.texi:5410 +#, no-wrap msgid "{Scheme Procedure} scheme-file @var{name} @var{exp} [#:splice? #f]" msgstr "{Scheme Procedure} derivation @var{store} @var{name} @var{builder} @" #. type: deffn -#: doc/guix.texi:5242 -msgid "" -"Return an object representing the Scheme file @var{name} that contains " -"@var{exp}." +#: doc/guix.texi:5413 +msgid "Return an object representing the Scheme file @var{name} that contains @var{exp}." msgstr "" #. type: deffn -#: doc/guix.texi:5244 +#: doc/guix.texi:5415 msgid "This is the declarative counterpart of @code{gexp->file}." msgstr "" #. type: deffn -#: doc/guix.texi:5246 +#: doc/guix.texi:5417 #, no-wrap msgid "{Monadic Procedure} text-file* @var{name} @var{text} @dots{}" msgstr "" #. type: deffn -#: doc/guix.texi:5252 -msgid "" -"Return as a monadic value a derivation that builds a text file containing " -"all of @var{text}. @var{text} may list, in addition to strings, objects of " -"any type that can be used in a gexp: packages, derivations, local file " -"objects, etc. The resulting store file holds references to all these." +#: doc/guix.texi:5423 +msgid "Return as a monadic value a derivation that builds a text file containing all of @var{text}. @var{text} may list, in addition to strings, objects of any type that can be used in a gexp: packages, derivations, local file objects, etc. The resulting store file holds references to all these." msgstr "" #. type: deffn -#: doc/guix.texi:5257 -msgid "" -"This variant should be preferred over @code{text-file} anytime the file to " -"create will reference items from the store. This is typically the case when " -"building a configuration file that embeds store file names, like this:" +#: doc/guix.texi:5428 +msgid "This variant should be preferred over @code{text-file} anytime the file to create will reference items from the store. This is typically the case when building a configuration file that embeds store file names, like this:" msgstr "" #. type: example -#: doc/guix.texi:5265 +#: doc/guix.texi:5436 #, no-wrap msgid "" "(define (profile.sh)\n" @@ -12894,28 +10275,23 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5270 -msgid "" -"In this example, the resulting @file{/gnu/store/@dots{}-profile.sh} file " -"will reference @var{coreutils}, @var{grep}, and @var{sed}, thereby " -"preventing them from being garbage-collected during its lifetime." +#: doc/guix.texi:5441 +msgid "In this example, the resulting @file{/gnu/store/@dots{}-profile.sh} file will reference @var{coreutils}, @var{grep}, and @var{sed}, thereby preventing them from being garbage-collected during its lifetime." msgstr "" #. type: deffn -#: doc/guix.texi:5272 +#: doc/guix.texi:5443 #, no-wrap msgid "{Scheme Procedure} mixed-text-file @var{name} @var{text} @dots{}" msgstr "" #. type: deffn -#: doc/guix.texi:5276 -msgid "" -"Return an object representing store file @var{name} containing @var{text}. " -"@var{text} is a sequence of strings and file-like objects, as in:" +#: doc/guix.texi:5447 +msgid "Return an object representing store file @var{name} containing @var{text}. @var{text} is a sequence of strings and file-like objects, as in:" msgstr "" #. type: example -#: doc/guix.texi:5280 +#: doc/guix.texi:5451 #, no-wrap msgid "" "(mixed-text-file \"profile\"\n" @@ -12923,27 +10299,23 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5283 +#: doc/guix.texi:5454 msgid "This is the declarative counterpart of @code{text-file*}." msgstr "" #. type: deffn -#: doc/guix.texi:5285 +#: doc/guix.texi:5456 #, no-wrap msgid "{Scheme Procedure} file-union @var{name} @var{files}" msgstr "" #. type: deffn -#: doc/guix.texi:5290 -msgid "" -"Return a @code{} that builds a directory containing all of " -"@var{files}. Each item in @var{files} must be a two-element list where the " -"first element is the file name to use in the new directory, and the second " -"element is a gexp denoting the target file. Here's an example:" +#: doc/guix.texi:5461 +msgid "Return a @code{} that builds a directory containing all of @var{files}. Each item in @var{files} must be a two-element list where the first element is the file name to use in the new directory, and the second element is a gexp denoting the target file. Here's an example:" msgstr "" #. type: example -#: doc/guix.texi:5297 +#: doc/guix.texi:5468 #, no-wrap msgid "" "(file-union \"etc\"\n" @@ -12954,57 +10326,50 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5300 +#: doc/guix.texi:5471 msgid "This yields an @code{etc} directory containing these two files." msgstr "" #. type: deffn -#: doc/guix.texi:5302 +#: doc/guix.texi:5473 #, no-wrap msgid "{Scheme Procedure} directory-union @var{name} @var{things}" msgstr "" #. type: deffn -#: doc/guix.texi:5305 -msgid "" -"Return a directory that is the union of @var{things}, where @var{things} is " -"a list of file-like objects denoting directories. For example:" +#: doc/guix.texi:5476 +msgid "Return a directory that is the union of @var{things}, where @var{things} is a list of file-like objects denoting directories. For example:" msgstr "" #. type: example -#: doc/guix.texi:5308 +#: doc/guix.texi:5479 #, no-wrap msgid "(directory-union \"guile+emacs\" (list guile emacs))\n" msgstr "" #. type: deffn -#: doc/guix.texi:5311 -msgid "" -"yields a directory that is the union of the @code{guile} and @code{emacs} " -"packages." +#: doc/guix.texi:5482 +msgid "yields a directory that is the union of the @code{guile} and @code{emacs} packages." msgstr "" #. type: deffn -#: doc/guix.texi:5313 +#: doc/guix.texi:5484 #, no-wrap msgid "{Scheme Procedure} file-append @var{obj} @var{suffix} @dots{}" msgstr "" #. type: deffn -#: doc/guix.texi:5317 -msgid "" -"Return a file-like object that expands to the concatenation of @var{obj} and " -"@var{suffix}, where @var{obj} is a lowerable object and each @var{suffix} is " -"a string." +#: doc/guix.texi:5488 +msgid "Return a file-like object that expands to the concatenation of @var{obj} and @var{suffix}, where @var{obj} is a lowerable object and each @var{suffix} is a string." msgstr "" #. type: deffn -#: doc/guix.texi:5319 +#: doc/guix.texi:5490 msgid "As an example, consider this gexp:" msgstr "" #. type: example -#: doc/guix.texi:5324 +#: doc/guix.texi:5495 #, no-wrap msgid "" "(gexp->script \"run-uname\"\n" @@ -13013,12 +10378,12 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5327 +#: doc/guix.texi:5498 msgid "The same effect could be achieved with:" msgstr "" #. type: example -#: doc/guix.texi:5332 +#: doc/guix.texi:5503 #, no-wrap msgid "" "(gexp->script \"run-uname\"\n" @@ -13027,112 +10392,84 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:5338 -msgid "" -"There is one difference though: in the @code{file-append} case, the " -"resulting script contains the absolute file name as a string, whereas in the " -"second case, the resulting script contains a @code{(string-append @dots{})} " -"expression to construct the file name @emph{at run time}." +#: doc/guix.texi:5509 +msgid "There is one difference though: in the @code{file-append} case, the resulting script contains the absolute file name as a string, whereas in the second case, the resulting script contains a @code{(string-append @dots{})} expression to construct the file name @emph{at run time}." msgstr "" #. type: Plain text -#: doc/guix.texi:5345 -msgid "" -"Of course, in addition to gexps embedded in ``host'' code, there are also " -"modules containing build tools. To make it clear that they are meant to be " -"used in the build stratum, these modules are kept in the @code{(guix build " -"@dots{})} name space." +#: doc/guix.texi:5516 +msgid "Of course, in addition to gexps embedded in ``host'' code, there are also modules containing build tools. To make it clear that they are meant to be used in the build stratum, these modules are kept in the @code{(guix build @dots{})} name space." msgstr "" #. type: Plain text -#: doc/guix.texi:5351 -msgid "" -"Internally, high-level objects are @dfn{lowered}, using their compiler, to " -"either derivations or store items. For instance, lowering a package yields " -"a derivation, and lowering a @code{plain-file} yields a store item. This is " -"achieved using the @code{lower-object} monadic procedure." +#: doc/guix.texi:5522 +msgid "Internally, high-level objects are @dfn{lowered}, using their compiler, to either derivations or store items. For instance, lowering a package yields a derivation, and lowering a @code{plain-file} yields a store item. This is achieved using the @code{lower-object} monadic procedure." msgstr "" #. type: deffn -#: doc/guix.texi:5352 +#: doc/guix.texi:5523 #, no-wrap msgid "{Monadic Procedure} lower-object @var{obj} [@var{system}] @" msgstr "" #. type: deffn -#: doc/guix.texi:5358 -msgid "" -"[#:target #f] Return as a value in @var{%store-monad} the derivation or " -"store item corresponding to @var{obj} for @var{system}, cross-compiling for " -"@var{target} if @var{target} is true. @var{obj} must be an object that has " -"an associated gexp compiler, such as a @code{}." +#: doc/guix.texi:5529 +msgid "[#:target #f] Return as a value in @var{%store-monad} the derivation or store item corresponding to @var{obj} for @var{system}, cross-compiling for @var{target} if @var{target} is true. @var{obj} must be an object that has an associated gexp compiler, such as a @code{}." msgstr "" #. type: Plain text -#: doc/guix.texi:5369 -msgid "" -"This section describes Guix command-line utilities. Some of them are " -"primarily targeted at developers and users who write new package " -"definitions, while others are more generally useful. They complement the " -"Scheme programming interface of Guix in a convenient way." -msgstr "" +#: doc/guix.texi:5540 +msgid "This section describes Guix command-line utilities. Some of them are primarily targeted at developers and users who write new package definitions, while others are more generally useful. They complement the Scheme programming interface of Guix in a convenient way." +msgstr "cette section décrit les utilitaires en ligne de commande de Guix. certains sont surtout faits pour les développeurs qui écrivent de nouvelles définitions de paquets tandis que d'autres sont plus utiles pour une utilisation générale. Ils complètent l'interface de programmation Scheme de Guix d'une manière pratique." #. type: cindex -#: doc/guix.texi:5391 +#: doc/guix.texi:5562 #, no-wrap msgid "package building" -msgstr "" +msgstr "construction de paquets" #. type: command{#1} -#: doc/guix.texi:5392 +#: doc/guix.texi:5563 #, no-wrap msgid "guix build" +msgstr "guix build" + +#. type: Plain text +#: doc/guix.texi:5569 +msgid "The @command{guix build} command builds packages or derivations and their dependencies, and prints the resulting store paths. Note that it does not modify the user's profile---this is the job of the @command{guix package} command (@pxref{Invoking guix package}). Thus, it is mainly useful for distribution developers." msgstr "" #. type: Plain text -#: doc/guix.texi:5398 -msgid "" -"The @command{guix build} command builds packages or derivations and their " -"dependencies, and prints the resulting store paths. Note that it does not " -"modify the user's profile---this is the job of the @command{guix package} " -"command (@pxref{Invoking guix package}). Thus, it is mainly useful for " -"distribution developers." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:5400 doc/guix.texi:6057 doc/guix.texi:6124 doc/guix.texi:6793 -#: doc/guix.texi:7123 doc/guix.texi:7453 doc/guix.texi:7758 doc/guix.texi:7824 -#: doc/guix.texi:7863 +#: doc/guix.texi:5571 doc/guix.texi:6235 doc/guix.texi:6302 doc/guix.texi:6995 +#: doc/guix.texi:7333 doc/guix.texi:7663 doc/guix.texi:7968 doc/guix.texi:8034 +#: doc/guix.texi:8073 msgid "The general syntax is:" -msgstr "" +msgstr "La syntaxe générale est :" #. type: example -#: doc/guix.texi:5403 +#: doc/guix.texi:5574 #, no-wrap msgid "guix build @var{options} @var{package-or-derivation}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:5408 -msgid "" -"As an example, the following command builds the latest versions of Emacs and " -"of Guile, displays their build logs, and finally displays the resulting " -"directories:" +#: doc/guix.texi:5579 +msgid "As an example, the following command builds the latest versions of Emacs and of Guile, displays their build logs, and finally displays the resulting directories:" msgstr "" #. type: example -#: doc/guix.texi:5411 +#: doc/guix.texi:5582 #, no-wrap msgid "guix build emacs guile\n" msgstr "" #. type: Plain text -#: doc/guix.texi:5414 +#: doc/guix.texi:5585 msgid "Similarly, the following command builds all the available packages:" msgstr "" #. type: example -#: doc/guix.texi:5418 +#: doc/guix.texi:5589 #, no-wrap msgid "" "guix build --quiet --keep-going \\\n" @@ -13140,412 +10477,312 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:5426 -msgid "" -"@var{package-or-derivation} may be either the name of a package found in the " -"software distribution such as @code{coreutils} or @code{coreutils@@8.20}, or " -"a derivation such as @file{/gnu/store/@dots{}-coreutils-8.19.drv}. In the " -"former case, a package with the corresponding name (and optionally version) " -"is searched for among the GNU distribution modules (@pxref{Package Modules})." +#: doc/guix.texi:5597 +msgid "@var{package-or-derivation} may be either the name of a package found in the software distribution such as @code{coreutils} or @code{coreutils@@8.20}, or a derivation such as @file{/gnu/store/@dots{}-coreutils-8.19.drv}. In the former case, a package with the corresponding name (and optionally version) is searched for among the GNU distribution modules (@pxref{Package Modules})." msgstr "" #. type: Plain text -#: doc/guix.texi:5431 -msgid "" -"Alternatively, the @code{--expression} option may be used to specify a " -"Scheme expression that evaluates to a package; this is useful when " -"disambiguating among several same-named packages or package variants is " -"needed." +#: doc/guix.texi:5602 +msgid "Alternatively, the @code{--expression} option may be used to specify a Scheme expression that evaluates to a package; this is useful when disambiguating among several same-named packages or package variants is needed." msgstr "" #. type: Plain text -#: doc/guix.texi:5434 -msgid "" -"There may be zero or more @var{options}. The available options are " -"described in the subsections below." +#: doc/guix.texi:5605 +msgid "There may be zero or more @var{options}. The available options are described in the subsections below." msgstr "" #. type: Plain text -#: doc/guix.texi:5449 -msgid "" -"A number of options that control the build process are common to " -"@command{guix build} and other commands that can spawn builds, such as " -"@command{guix package} or @command{guix archive}. These are the following:" +#: doc/guix.texi:5620 +msgid "A number of options that control the build process are common to @command{guix build} and other commands that can spawn builds, such as @command{guix package} or @command{guix archive}. These are the following:" msgstr "" #. type: item -#: doc/guix.texi:5452 +#: doc/guix.texi:5623 #, no-wrap msgid "--load-path=@var{directory}" msgstr "" #. type: itemx -#: doc/guix.texi:5453 +#: doc/guix.texi:5624 #, no-wrap msgid "-L @var{directory}" msgstr "" #. type: table -#: doc/guix.texi:5456 -msgid "" -"Add @var{directory} to the front of the package module search path " -"(@pxref{Package Modules})." +#: doc/guix.texi:5627 +msgid "Add @var{directory} to the front of the package module search path (@pxref{Package Modules})." msgstr "" #. type: table -#: doc/guix.texi:5459 -msgid "" -"This allows users to define their own packages and make them visible to the " -"command-line tools." +#: doc/guix.texi:5630 +msgid "This allows users to define their own packages and make them visible to the command-line tools." msgstr "" #. type: item -#: doc/guix.texi:5460 +#: doc/guix.texi:5631 #, no-wrap msgid "--keep-failed" msgstr "" #. type: itemx -#: doc/guix.texi:5461 +#: doc/guix.texi:5632 #, no-wrap msgid "-K" msgstr "" #. type: table -#: doc/guix.texi:5467 -msgid "" -"Keep the build tree of failed builds. Thus, if a build fails, its build " -"tree is kept under @file{/tmp}, in a directory whose name is shown at the " -"end of the build log. This is useful when debugging build issues. " -"@xref{Debugging Build Failures}, for tips and tricks on how to debug build " -"issues." +#: doc/guix.texi:5638 +msgid "Keep the build tree of failed builds. Thus, if a build fails, its build tree is kept under @file{/tmp}, in a directory whose name is shown at the end of the build log. This is useful when debugging build issues. @xref{Debugging Build Failures}, for tips and tricks on how to debug build issues." msgstr "" #. type: item -#: doc/guix.texi:5468 +#: doc/guix.texi:5639 #, no-wrap msgid "--keep-going" msgstr "" #. type: itemx -#: doc/guix.texi:5469 +#: doc/guix.texi:5640 #, no-wrap msgid "-k" msgstr "" #. type: table -#: doc/guix.texi:5472 -msgid "" -"Keep going when some of the derivations fail to build; return only once all " -"the builds have either completed or failed." +#: doc/guix.texi:5643 +msgid "Keep going when some of the derivations fail to build; return only once all the builds have either completed or failed." msgstr "" #. type: table -#: doc/guix.texi:5475 -msgid "" -"The default behavior is to stop as soon as one of the specified derivations " -"has failed." +#: doc/guix.texi:5646 +msgid "The default behavior is to stop as soon as one of the specified derivations has failed." msgstr "" #. type: item -#: doc/guix.texi:5476 +#: doc/guix.texi:5647 #, no-wrap msgid "--dry-run" msgstr "" #. type: itemx -#: doc/guix.texi:5477 +#: doc/guix.texi:5648 #, no-wrap msgid "-n" msgstr "" #. type: table -#: doc/guix.texi:5479 +#: doc/guix.texi:5650 msgid "Do not build the derivations." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:5481 +#: doc/guix.texi:5652 msgid "fallback-option" msgstr "" #. type: item -#: doc/guix.texi:5481 +#: doc/guix.texi:5652 #, no-wrap msgid "--fallback" msgstr "" #. type: table -#: doc/guix.texi:5484 -msgid "" -"When substituting a pre-built binary fails, fall back to building packages " -"locally (@pxref{Substitution Failure})." +#: doc/guix.texi:5655 +msgid "When substituting a pre-built binary fails, fall back to building packages locally (@pxref{Substitution Failure})." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:5490 +#: doc/guix.texi:5661 msgid "client-substitute-urls" msgstr "" #. type: table -#: doc/guix.texi:5490 -msgid "" -"Consider @var{urls} the whitespace-separated list of substitute source URLs, " -"overriding the default list of URLs of @command{guix-daemon} (@pxref{daemon-" -"substitute-urls,, @command{guix-daemon} URLs})." +#: doc/guix.texi:5661 +msgid "Consider @var{urls} the whitespace-separated list of substitute source URLs, overriding the default list of URLs of @command{guix-daemon} (@pxref{daemon-substitute-urls,, @command{guix-daemon} URLs})." msgstr "" #. type: table -#: doc/guix.texi:5494 -msgid "" -"This means that substitutes may be downloaded from @var{urls}, provided they " -"are signed by a key authorized by the system administrator " -"(@pxref{Substitutes})." -msgstr "" -"Cela signifie que les substituts peuvent être téléchargés depuis @var{urls}, " -"tant qu'ils sont signés par une clef autorisée par l'administrateur système " -"(@pxref{Substituts})." +#: doc/guix.texi:5665 +msgid "This means that substitutes may be downloaded from @var{urls}, provided they are signed by a key authorized by the system administrator (@pxref{Substitutes})." +msgstr "Cela signifie que les substituts peuvent être téléchargés depuis @var{urls}, tant qu'ils sont signés par une clef autorisée par l'administrateur système (@pxref{Substituts})." #. type: table -#: doc/guix.texi:5497 -msgid "" -"When @var{urls} is the empty string, substitutes are effectively disabled." +#: doc/guix.texi:5668 +msgid "When @var{urls} is the empty string, substitutes are effectively disabled." msgstr "" #. type: item -#: doc/guix.texi:5503 +#: doc/guix.texi:5674 #, no-wrap msgid "--no-grafts" msgstr "" #. type: table -#: doc/guix.texi:5507 -msgid "" -"Do not ``graft'' packages. In practice, this means that package updates " -"available as grafts are not applied. @xref{Security Updates}, for more " -"information on grafts." +#: doc/guix.texi:5678 +msgid "Do not ``graft'' packages. In practice, this means that package updates available as grafts are not applied. @xref{Security Updates}, for more information on grafts." msgstr "" #. type: item -#: doc/guix.texi:5508 +#: doc/guix.texi:5679 #, no-wrap msgid "--rounds=@var{n}" msgstr "" #. type: table -#: doc/guix.texi:5511 -msgid "" -"Build each derivation @var{n} times in a row, and raise an error if " -"consecutive build results are not bit-for-bit identical." +#: doc/guix.texi:5682 +msgid "Build each derivation @var{n} times in a row, and raise an error if consecutive build results are not bit-for-bit identical." msgstr "" #. type: table -#: doc/guix.texi:5516 -msgid "" -"This is a useful way to detect non-deterministic builds processes. Non-" -"deterministic build processes are a problem because they make it practically " -"impossible for users to @emph{verify} whether third-party binaries are " -"genuine. @xref{Invoking guix challenge}, for more." +#: doc/guix.texi:5687 +msgid "This is a useful way to detect non-deterministic builds processes. Non-deterministic build processes are a problem because they make it practically impossible for users to @emph{verify} whether third-party binaries are genuine. @xref{Invoking guix challenge}, for more." msgstr "" #. type: table -#: doc/guix.texi:5522 -msgid "" -"Note that, currently, the differing build results are not kept around, so " -"you will have to manually investigate in case of an error---e.g., by " -"stashing one of the build results with @code{guix archive --export} " -"(@pxref{Invoking guix archive}), then rebuilding, and finally comparing the " -"two results." +#: doc/guix.texi:5693 +msgid "Note that, currently, the differing build results are not kept around, so you will have to manually investigate in case of an error---e.g., by stashing one of the build results with @code{guix archive --export} (@pxref{Invoking guix archive}), then rebuilding, and finally comparing the two results." msgstr "" #. type: table -#: doc/guix.texi:5527 -msgid "" -"Do not attempt to offload builds @i{via} the ``build hook'' of the daemon " -"(@pxref{Daemon Offload Setup}). That is, always build things locally " -"instead of offloading builds to remote machines." +#: doc/guix.texi:5698 +msgid "Do not attempt to offload builds @i{via} the ``build hook'' of the daemon (@pxref{Daemon Offload Setup}). That is, always build things locally instead of offloading builds to remote machines." msgstr "" #. type: table -#: doc/guix.texi:5534 -msgid "" -"By default, the daemon's setting is honored (@pxref{Invoking guix-daemon, " -"@code{--max-silent-time}})." +#: doc/guix.texi:5705 +msgid "By default, the daemon's setting is honored (@pxref{Invoking guix-daemon, @code{--max-silent-time}})." msgstr "" #. type: table -#: doc/guix.texi:5541 -msgid "" -"By default, the daemon's setting is honored (@pxref{Invoking guix-daemon, " -"@code{--timeout}})." +#: doc/guix.texi:5712 +msgid "By default, the daemon's setting is honored (@pxref{Invoking guix-daemon, @code{--timeout}})." msgstr "" #. type: item -#: doc/guix.texi:5542 +#: doc/guix.texi:5713 #, no-wrap msgid "--verbosity=@var{level}" msgstr "" #. type: table -#: doc/guix.texi:5546 -msgid "" -"Use the given verbosity level. @var{level} must be an integer between 0 and " -"5; higher means more verbose output. Setting a level of 4 or more may be " -"helpful when debugging setup issues with the build daemon." +#: doc/guix.texi:5717 +msgid "Use the given verbosity level. @var{level} must be an integer between 0 and 5; higher means more verbose output. Setting a level of 4 or more may be helpful when debugging setup issues with the build daemon." msgstr "" #. type: table -#: doc/guix.texi:5551 -msgid "" -"Allow the use of up to @var{n} CPU cores for the build. The special value " -"@code{0} means to use as many CPU cores as available." +#: doc/guix.texi:5722 +msgid "Allow the use of up to @var{n} CPU cores for the build. The special value @code{0} means to use as many CPU cores as available." msgstr "" #. type: table -#: doc/guix.texi:5557 -msgid "" -"Allow at most @var{n} build jobs in parallel. @xref{Invoking guix-daemon, " -"@code{--max-jobs}}, for details about this option and the equivalent " -"@command{guix-daemon} option." +#: doc/guix.texi:5728 +msgid "Allow at most @var{n} build jobs in parallel. @xref{Invoking guix-daemon, @code{--max-jobs}}, for details about this option and the equivalent @command{guix-daemon} option." msgstr "" #. type: Plain text -#: doc/guix.texi:5564 -msgid "" -"Behind the scenes, @command{guix build} is essentially an interface to the " -"@code{package-derivation} procedure of the @code{(guix packages)} module, " -"and to the @code{build-derivations} procedure of the @code{(guix " -"derivations)} module." +#: doc/guix.texi:5735 +msgid "Behind the scenes, @command{guix build} is essentially an interface to the @code{package-derivation} procedure of the @code{(guix packages)} module, and to the @code{build-derivations} procedure of the @code{(guix derivations)} module." msgstr "" #. type: Plain text -#: doc/guix.texi:5568 -msgid "" -"In addition to options explicitly passed on the command line, @command{guix " -"build} and other @command{guix} commands that support building honor the " -"@code{GUIX_BUILD_OPTIONS} environment variable." +#: doc/guix.texi:5739 +msgid "In addition to options explicitly passed on the command line, @command{guix build} and other @command{guix} commands that support building honor the @code{GUIX_BUILD_OPTIONS} environment variable." msgstr "" #. type: defvr -#: doc/guix.texi:5569 +#: doc/guix.texi:5740 #, no-wrap msgid "{Environment Variable} GUIX_BUILD_OPTIONS" msgstr "" #. type: defvr -#: doc/guix.texi:5574 -msgid "" -"Users can define this variable to a list of command line options that will " -"automatically be used by @command{guix build} and other @command{guix} " -"commands that can perform builds, as in the example below:" +#: doc/guix.texi:5745 +msgid "Users can define this variable to a list of command line options that will automatically be used by @command{guix build} and other @command{guix} commands that can perform builds, as in the example below:" msgstr "" #. type: example -#: doc/guix.texi:5577 +#: doc/guix.texi:5748 #, no-wrap msgid "$ export GUIX_BUILD_OPTIONS=\"--no-substitutes -c 2 -L /foo/bar\"\n" msgstr "" #. type: defvr -#: doc/guix.texi:5581 -msgid "" -"These options are parsed independently, and the result is appended to the " -"parsed command-line options." +#: doc/guix.texi:5752 +msgid "These options are parsed independently, and the result is appended to the parsed command-line options." msgstr "" #. type: cindex -#: doc/guix.texi:5587 +#: doc/guix.texi:5758 #, no-wrap msgid "package variants" msgstr "" #. type: Plain text -#: doc/guix.texi:5595 -msgid "" -"Another set of command-line options supported by @command{guix build} and " -"also @command{guix package} are @dfn{package transformation options}. These " -"are options that make it possible to define @dfn{package variants}---for " -"instance, packages built from different source code. This is a convenient " -"way to create customized packages on the fly without having to type in the " -"definitions of package variants (@pxref{Defining Packages})." +#: doc/guix.texi:5766 +msgid "Another set of command-line options supported by @command{guix build} and also @command{guix package} are @dfn{package transformation options}. These are options that make it possible to define @dfn{package variants}---for instance, packages built from different source code. This is a convenient way to create customized packages on the fly without having to type in the definitions of package variants (@pxref{Defining Packages})." msgstr "" #. type: item -#: doc/guix.texi:5598 +#: doc/guix.texi:5769 #, no-wrap msgid "--with-source=@var{source}" msgstr "" #. type: itemx -#: doc/guix.texi:5599 +#: doc/guix.texi:5770 #, no-wrap msgid "--with-source=@var{package}=@var{source}" msgstr "" #. type: itemx -#: doc/guix.texi:5600 +#: doc/guix.texi:5771 #, no-wrap msgid "--with-source=@var{package}@@@var{version}=@var{source}" msgstr "" #. type: table -#: doc/guix.texi:5605 -msgid "" -"Use @var{source} as the source of @var{package}, and @var{version} as its " -"version number. @var{source} must be a file name or a URL, as for " -"@command{guix download} (@pxref{Invoking guix download})." +#: doc/guix.texi:5776 +msgid "Use @var{source} as the source of @var{package}, and @var{version} as its version number. @var{source} must be a file name or a URL, as for @command{guix download} (@pxref{Invoking guix download})." msgstr "" #. type: table -#: doc/guix.texi:5611 -msgid "" -"When @var{package} is omitted, it is taken to be the package name specified " -"on the command line that matches the base of @var{source}---e.g., if " -"@var{source} is @code{/src/guile-2.0.10.tar.gz}, the corresponding package " -"is @code{guile}." +#: doc/guix.texi:5782 +msgid "When @var{package} is omitted, it is taken to be the package name specified on the command line that matches the base of @var{source}---e.g., if @var{source} is @code{/src/guile-2.0.10.tar.gz}, the corresponding package is @code{guile}." msgstr "" #. type: table -#: doc/guix.texi:5614 -msgid "" -"Likewise, when @var{version} is omitted, the version string is inferred from " -"@var{source}; in the previous example, it is @code{2.0.10}." +#: doc/guix.texi:5785 +msgid "Likewise, when @var{version} is omitted, the version string is inferred from @var{source}; in the previous example, it is @code{2.0.10}." msgstr "" #. type: table -#: doc/guix.texi:5619 -msgid "" -"This option allows users to try out versions of packages other than the one " -"provided by the distribution. The example below downloads @file{ed-1.7.tar." -"gz} from a GNU mirror and uses that as the source for the @code{ed} package:" +#: doc/guix.texi:5790 +msgid "This option allows users to try out versions of packages other than the one provided by the distribution. The example below downloads @file{ed-1.7.tar.gz} from a GNU mirror and uses that as the source for the @code{ed} package:" msgstr "" #. type: example -#: doc/guix.texi:5622 +#: doc/guix.texi:5793 #, no-wrap msgid "guix build ed --with-source=mirror://gnu/ed/ed-1.7.tar.gz\n" msgstr "" #. type: table -#: doc/guix.texi:5626 -msgid "" -"As a developer, @code{--with-source} makes it easy to test release " -"candidates:" +#: doc/guix.texi:5797 +msgid "As a developer, @code{--with-source} makes it easy to test release candidates:" msgstr "" #. type: example -#: doc/guix.texi:5629 +#: doc/guix.texi:5800 #, no-wrap msgid "guix build guile --with-source=../guile-2.0.9.219-e1bb7.tar.xz\n" msgstr "" #. type: table -#: doc/guix.texi:5632 +#: doc/guix.texi:5803 msgid "@dots{} or to build from a checkout in a pristine environment:" msgstr "" #. type: example -#: doc/guix.texi:5636 +#: doc/guix.texi:5807 #, no-wrap msgid "" "$ git clone git://git.sv.gnu.org/guix.git\n" @@ -13553,239 +10790,184 @@ msgid "" msgstr "" #. type: item -#: doc/guix.texi:5638 +#: doc/guix.texi:5809 #, no-wrap msgid "--with-input=@var{package}=@var{replacement}" msgstr "" #. type: table -#: doc/guix.texi:5643 -msgid "" -"Replace dependency on @var{package} by a dependency on @var{replacement}. " -"@var{package} must be a package name, and @var{replacement} must be a " -"package specification such as @code{guile} or @code{guile@@1.8}." +#: doc/guix.texi:5814 +msgid "Replace dependency on @var{package} by a dependency on @var{replacement}. @var{package} must be a package name, and @var{replacement} must be a package specification such as @code{guile} or @code{guile@@1.8}." msgstr "" #. type: table -#: doc/guix.texi:5647 -msgid "" -"For instance, the following command builds Guix, but replaces its dependency " -"on the current stable version of Guile with a dependency on the legacy " -"version of Guile, @code{guile@@2.0}:" +#: doc/guix.texi:5818 +msgid "For instance, the following command builds Guix, but replaces its dependency on the current stable version of Guile with a dependency on the legacy version of Guile, @code{guile@@2.0}:" msgstr "" #. type: example -#: doc/guix.texi:5650 +#: doc/guix.texi:5821 #, no-wrap msgid "guix build --with-input=guile=guile@@2.0 guix\n" msgstr "" #. type: table -#: doc/guix.texi:5655 -msgid "" -"This is a recursive, deep replacement. So in this example, both @code{guix} " -"and its dependency @code{guile-json} (which also depends on @code{guile}) " -"get rebuilt against @code{guile@@2.0}." +#: doc/guix.texi:5826 +msgid "This is a recursive, deep replacement. So in this example, both @code{guix} and its dependency @code{guile-json} (which also depends on @code{guile}) get rebuilt against @code{guile@@2.0}." msgstr "" #. type: table -#: doc/guix.texi:5658 -msgid "" -"This is implemented using the @code{package-input-rewriting} Scheme " -"procedure (@pxref{Defining Packages, @code{package-input-rewriting}})." +#: doc/guix.texi:5829 +msgid "This is implemented using the @code{package-input-rewriting} Scheme procedure (@pxref{Defining Packages, @code{package-input-rewriting}})." msgstr "" #. type: item -#: doc/guix.texi:5659 +#: doc/guix.texi:5830 #, no-wrap msgid "--with-graft=@var{package}=@var{replacement}" msgstr "" #. type: table -#: doc/guix.texi:5665 -msgid "" -"This is similar to @code{--with-input} but with an important difference: " -"instead of rebuilding the whole dependency chain, @var{replacement} is built " -"and then @dfn{grafted} onto the binaries that were initially referring to " -"@var{package}. @xref{Security Updates}, for more information on grafts." +#: doc/guix.texi:5836 +msgid "This is similar to @code{--with-input} but with an important difference: instead of rebuilding the whole dependency chain, @var{replacement} is built and then @dfn{grafted} onto the binaries that were initially referring to @var{package}. @xref{Security Updates}, for more information on grafts." msgstr "" #. type: table -#: doc/guix.texi:5669 -msgid "" -"For example, the command below grafts version 3.5.4 of GnuTLS onto Wget and " -"all its dependencies, replacing references to the version of GnuTLS they " -"currently refer to:" +#: doc/guix.texi:5840 +msgid "For example, the command below grafts version 3.5.4 of GnuTLS onto Wget and all its dependencies, replacing references to the version of GnuTLS they currently refer to:" msgstr "" #. type: example -#: doc/guix.texi:5672 +#: doc/guix.texi:5843 #, no-wrap msgid "guix build --with-graft=gnutls=gnutls@@3.5.4 wget\n" msgstr "" #. type: table -#: doc/guix.texi:5681 -msgid "" -"This has the advantage of being much faster than rebuilding everything. But " -"there is a caveat: it works if and only if @var{package} and " -"@var{replacement} are strictly compatible---for example, if they provide a " -"library, the application binary interface (ABI) of those libraries must be " -"compatible. If @var{replacement} is somehow incompatible with " -"@var{package}, then the resulting package may be unusable. Use with care!" +#: doc/guix.texi:5852 +msgid "This has the advantage of being much faster than rebuilding everything. But there is a caveat: it works if and only if @var{package} and @var{replacement} are strictly compatible---for example, if they provide a library, the application binary interface (ABI) of those libraries must be compatible. If @var{replacement} is somehow incompatible with @var{package}, then the resulting package may be unusable. Use with care!" msgstr "" #. type: Plain text -#: doc/guix.texi:5689 -msgid "" -"The command-line options presented below are specific to @command{guix " -"build}." +#: doc/guix.texi:5860 +msgid "The command-line options presented below are specific to @command{guix build}." msgstr "" #. type: item -#: doc/guix.texi:5692 +#: doc/guix.texi:5863 #, no-wrap msgid "--quiet" msgstr "" #. type: itemx -#: doc/guix.texi:5693 +#: doc/guix.texi:5864 #, no-wrap msgid "-q" msgstr "" #. type: table -#: doc/guix.texi:5697 -msgid "" -"Build quietly, without displaying the build log. Upon completion, the build " -"log is kept in @file{/var} (or similar) and can always be retrieved using " -"the @option{--log-file} option." +#: doc/guix.texi:5868 +msgid "Build quietly, without displaying the build log. Upon completion, the build log is kept in @file{/var} (or similar) and can always be retrieved using the @option{--log-file} option." msgstr "" #. type: item -#: doc/guix.texi:5698 +#: doc/guix.texi:5869 #, no-wrap msgid "--file=@var{file}" msgstr "" #. type: table -#: doc/guix.texi:5703 -msgid "" -"Build the package or derivation that the code within @var{file} evaluates to." +#: doc/guix.texi:5874 +msgid "Build the package or derivation that the code within @var{file} evaluates to." msgstr "" #. type: table -#: doc/guix.texi:5706 -msgid "" -"As an example, @var{file} might contain a package definition like this " -"(@pxref{Defining Packages}):" +#: doc/guix.texi:5877 +msgid "As an example, @var{file} might contain a package definition like this (@pxref{Defining Packages}):" msgstr "" #. type: table -#: doc/guix.texi:5714 +#: doc/guix.texi:5885 msgid "Build the package or derivation @var{expr} evaluates to." msgstr "" #. type: table -#: doc/guix.texi:5718 -msgid "" -"For example, @var{expr} may be @code{(@@ (gnu packages guile) guile-1.8)}, " -"which unambiguously designates this specific variant of version 1.8 of Guile." +#: doc/guix.texi:5889 +msgid "For example, @var{expr} may be @code{(@@ (gnu packages guile) guile-1.8)}, which unambiguously designates this specific variant of version 1.8 of Guile." msgstr "" #. type: table -#: doc/guix.texi:5722 -msgid "" -"Alternatively, @var{expr} may be a G-expression, in which case it is used as " -"a build program passed to @code{gexp->derivation} (@pxref{G-Expressions})." +#: doc/guix.texi:5893 +msgid "Alternatively, @var{expr} may be a G-expression, in which case it is used as a build program passed to @code{gexp->derivation} (@pxref{G-Expressions})." msgstr "" #. type: table -#: doc/guix.texi:5726 -msgid "" -"Lastly, @var{expr} may refer to a zero-argument monadic procedure " -"(@pxref{The Store Monad}). The procedure must return a derivation as a " -"monadic value, which is then passed through @code{run-with-store}." +#: doc/guix.texi:5897 +msgid "Lastly, @var{expr} may refer to a zero-argument monadic procedure (@pxref{The Store Monad}). The procedure must return a derivation as a monadic value, which is then passed through @code{run-with-store}." msgstr "" #. type: item -#: doc/guix.texi:5727 +#: doc/guix.texi:5898 #, no-wrap msgid "--source" msgstr "" #. type: itemx -#: doc/guix.texi:5728 +#: doc/guix.texi:5899 #, no-wrap msgid "-S" msgstr "" #. type: table -#: doc/guix.texi:5731 -msgid "" -"Build the source derivations of the packages, rather than the packages " -"themselves." +#: doc/guix.texi:5902 +msgid "Build the source derivations of the packages, rather than the packages themselves." msgstr "" #. type: table -#: doc/guix.texi:5735 -msgid "" -"For instance, @code{guix build -S gcc} returns something like @file{/gnu/" -"store/@dots{}-gcc-4.7.2.tar.bz2}, which is the GCC source tarball." +#: doc/guix.texi:5906 +msgid "For instance, @code{guix build -S gcc} returns something like @file{/gnu/store/@dots{}-gcc-4.7.2.tar.bz2}, which is the GCC source tarball." msgstr "" #. type: table -#: doc/guix.texi:5739 -msgid "" -"The returned source tarball is the result of applying any patches and code " -"snippets specified in the package @code{origin} (@pxref{Defining Packages})." +#: doc/guix.texi:5910 +msgid "The returned source tarball is the result of applying any patches and code snippets specified in the package @code{origin} (@pxref{Defining Packages})." msgstr "" #. type: item -#: doc/guix.texi:5740 +#: doc/guix.texi:5911 #, no-wrap msgid "--sources" msgstr "" #. type: table -#: doc/guix.texi:5747 -msgid "" -"Fetch and return the source of @var{package-or-derivation} and all their " -"dependencies, recursively. This is a handy way to obtain a local copy of " -"all the source code needed to build @var{packages}, allowing you to " -"eventually build them even without network access. It is an extension of " -"the @code{--source} option and can accept one of the following optional " -"argument values:" +#: doc/guix.texi:5918 +msgid "Fetch and return the source of @var{package-or-derivation} and all their dependencies, recursively. This is a handy way to obtain a local copy of all the source code needed to build @var{packages}, allowing you to eventually build them even without network access. It is an extension of the @code{--source} option and can accept one of the following optional argument values:" msgstr "" #. type: item -#: doc/guix.texi:5749 doc/guix.texi:6974 +#: doc/guix.texi:5920 doc/guix.texi:7184 #, no-wrap msgid "package" msgstr "" #. type: table -#: doc/guix.texi:5752 -msgid "" -"This value causes the @code{--sources} option to behave in the same way as " -"the @code{--source} option." +#: doc/guix.texi:5923 +msgid "This value causes the @code{--sources} option to behave in the same way as the @code{--source} option." msgstr "" #. type: item -#: doc/guix.texi:5753 doc/guix.texi:11798 +#: doc/guix.texi:5924 doc/guix.texi:12103 #, no-wrap msgid "all" msgstr "" #. type: table -#: doc/guix.texi:5756 -msgid "" -"Build the source derivations of all packages, including any source that " -"might be listed as @code{inputs}. This is the default value." +#: doc/guix.texi:5927 +msgid "Build the source derivations of all packages, including any source that might be listed as @code{inputs}. This is the default value." msgstr "" #. type: example -#: doc/guix.texi:5762 +#: doc/guix.texi:5933 #, no-wrap msgid "" "$ guix build --sources tzdata\n" @@ -13795,21 +10977,18 @@ msgid "" msgstr "" #. type: item -#: doc/guix.texi:5764 +#: doc/guix.texi:5935 #, no-wrap msgid "transitive" msgstr "" #. type: table -#: doc/guix.texi:5768 -msgid "" -"Build the source derivations of all packages, as well of all transitive " -"inputs to the packages. This can be used e.g. to prefetch package source " -"for later offline building." +#: doc/guix.texi:5939 +msgid "Build the source derivations of all packages, as well of all transitive inputs to the packages. This can be used e.g. to prefetch package source for later offline building." msgstr "" #. type: example -#: doc/guix.texi:5779 +#: doc/guix.texi:5950 #, no-wrap msgid "" "$ guix build --sources=transitive tzdata\n" @@ -13824,186 +11003,154 @@ msgid "" msgstr "" #. type: quotation -#: doc/guix.texi:5792 -msgid "" -"The @code{--system} flag is for @emph{native} compilation and must not be " -"confused with cross-compilation. See @code{--target} below for information " -"on cross-compilation." +#: doc/guix.texi:5963 +msgid "The @code{--system} flag is for @emph{native} compilation and must not be confused with cross-compilation. See @code{--target} below for information on cross-compilation." msgstr "" #. type: table -#: doc/guix.texi:5798 -msgid "" -"An example use of this is on Linux-based systems, which can emulate " -"different personalities. For instance, passing @code{--system=i686-linux} " -"on an @code{x86_64-linux} system allows you to build packages in a complete " -"32-bit environment." +#: doc/guix.texi:5970 +msgid "An example use of this is on Linux-based systems, which can emulate different personalities. For instance, passing @code{--system=i686-linux} on an @code{x86_64-linux} system or @code{--system=armhf-linux} on an @code{aarch64-linux} system allows you to build packages in a complete 32-bit environment." +msgstr "" + +#. type: quotation +#: doc/guix.texi:5975 +msgid "Building for an @code{armhf-linux} system is unconditionally enabled on @code{aarch64-linux} machines, although certain aarch64 chipsets do not allow for this functionality, notably the ThunderX." msgstr "" #. type: table -#: doc/guix.texi:5803 -msgid "" -"Similarly, when transparent emulation with QEMU and @code{binfmt_misc} is " -"enabled (@pxref{Virtualization Services, @code{qemu-binfmt-service-type}}), " -"you can build for any system for which a QEMU @code{binfmt_misc} handler is " -"installed." +#: doc/guix.texi:5981 +msgid "Similarly, when transparent emulation with QEMU and @code{binfmt_misc} is enabled (@pxref{Virtualization Services, @code{qemu-binfmt-service-type}}), you can build for any system for which a QEMU @code{binfmt_misc} handler is installed." msgstr "" #. type: table -#: doc/guix.texi:5807 -msgid "" -"Builds for a system other than that of the machine you are using can also be " -"offloaded to a remote machine of the right architecture. @xref{Daemon " -"Offload Setup}, for more information on offloading." +#: doc/guix.texi:5985 +msgid "Builds for a system other than that of the machine you are using can also be offloaded to a remote machine of the right architecture. @xref{Daemon Offload Setup}, for more information on offloading." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:5815 +#: doc/guix.texi:5993 msgid "build-check" msgstr "" #. type: item -#: doc/guix.texi:5815 +#: doc/guix.texi:5993 #, no-wrap msgid "--check" msgstr "--check" #. type: cindex -#: doc/guix.texi:5816 +#: doc/guix.texi:5994 #, no-wrap msgid "determinism, checking" msgstr "déterminisme, vérification" #. type: cindex -#: doc/guix.texi:5817 +#: doc/guix.texi:5995 #, no-wrap msgid "reproducibility, checking" msgstr "reproductibilité, vérification" #. type: table -#: doc/guix.texi:5821 -msgid "" -"Rebuild @var{package-or-derivation}, which are already available in the " -"store, and raise an error if the build results are not bit-for-bit identical." +#: doc/guix.texi:5999 +msgid "Rebuild @var{package-or-derivation}, which are already available in the store, and raise an error if the build results are not bit-for-bit identical." msgstr "" #. type: table -#: doc/guix.texi:5826 -msgid "" -"This mechanism allows you to check whether previously installed substitutes " -"are genuine (@pxref{Substitutes}), or whether the build result of a package " -"is deterministic. @xref{Invoking guix challenge}, for more background " -"information and tools." -msgstr "" -"Ce mécanisme vous permet de vérifier si les substituts précédemment " -"installés sont authentiques (@pxref{Substituts}) ou si le résultat de la " -"construction d'un paquet est déterministe. @xref{Invoking guix challenge} " -"pour plus d'informations et pour les outils." +#: doc/guix.texi:6004 +msgid "This mechanism allows you to check whether previously installed substitutes are genuine (@pxref{Substitutes}), or whether the build result of a package is deterministic. @xref{Invoking guix challenge}, for more background information and tools." +msgstr "Ce mécanisme vous permet de vérifier si les substituts précédemment installés sont authentiques (@pxref{Substituts}) ou si le résultat de la construction d'un paquet est déterministe. @xref{Invoking guix challenge} pour plus d'informations et pour les outils." #. type: item -#: doc/guix.texi:5831 +#: doc/guix.texi:6009 #, no-wrap msgid "--repair" msgstr "--repair" #. type: cindex -#: doc/guix.texi:5832 +#: doc/guix.texi:6010 #, no-wrap msgid "repairing store items" msgstr "" #. type: table -#: doc/guix.texi:5836 -msgid "" -"Attempt to repair the specified store items, if they are corrupt, by re-" -"downloading or rebuilding them." +#: doc/guix.texi:6014 +msgid "Attempt to repair the specified store items, if they are corrupt, by re-downloading or rebuilding them." msgstr "" #. type: table -#: doc/guix.texi:5838 +#: doc/guix.texi:6016 msgid "This operation is not atomic and thus restricted to @code{root}." msgstr "" #. type: item -#: doc/guix.texi:5839 +#: doc/guix.texi:6017 #, no-wrap msgid "--derivations" msgstr "" #. type: table -#: doc/guix.texi:5843 -msgid "" -"Return the derivation paths, not the output paths, of the given packages." +#: doc/guix.texi:6021 +msgid "Return the derivation paths, not the output paths, of the given packages." msgstr "" #. type: item -#: doc/guix.texi:5844 doc/guix.texi:7231 doc/guix.texi:20625 +#: doc/guix.texi:6022 doc/guix.texi:7441 doc/guix.texi:21109 #, no-wrap msgid "--root=@var{file}" msgstr "" #. type: itemx -#: doc/guix.texi:5845 doc/guix.texi:7232 doc/guix.texi:20626 +#: doc/guix.texi:6023 doc/guix.texi:7442 doc/guix.texi:21110 #, no-wrap msgid "-r @var{file}" msgstr "" #. type: cindex -#: doc/guix.texi:5846 +#: doc/guix.texi:6024 #, no-wrap msgid "GC roots, adding" msgstr "" #. type: cindex -#: doc/guix.texi:5847 +#: doc/guix.texi:6025 #, no-wrap msgid "garbage collector roots, adding" msgstr "" #. type: table -#: doc/guix.texi:5850 doc/guix.texi:20629 -msgid "" -"Make @var{file} a symlink to the result, and register it as a garbage " -"collector root." +#: doc/guix.texi:6028 doc/guix.texi:21113 +msgid "Make @var{file} a symlink to the result, and register it as a garbage collector root." msgstr "" #. type: table -#: doc/guix.texi:5856 -msgid "" -"Consequently, the results of this @command{guix build} invocation are " -"protected from garbage collection until @var{file} is removed. When that " -"option is omitted, build results are eligible for garbage collection as soon " -"as the build completes. @xref{Invoking guix gc}, for more on GC roots." +#: doc/guix.texi:6034 +msgid "Consequently, the results of this @command{guix build} invocation are protected from garbage collection until @var{file} is removed. When that option is omitted, build results are eligible for garbage collection as soon as the build completes. @xref{Invoking guix gc}, for more on GC roots." msgstr "" #. type: item -#: doc/guix.texi:5857 +#: doc/guix.texi:6035 #, no-wrap msgid "--log-file" msgstr "" #. type: cindex -#: doc/guix.texi:5858 +#: doc/guix.texi:6036 #, no-wrap msgid "build logs, access" msgstr "" #. type: table -#: doc/guix.texi:5862 -msgid "" -"Return the build log file names or URLs for the given @var{package-or-" -"derivation}, or raise an error if build logs are missing." +#: doc/guix.texi:6040 +msgid "Return the build log file names or URLs for the given @var{package-or-derivation}, or raise an error if build logs are missing." msgstr "" #. type: table -#: doc/guix.texi:5865 -msgid "" -"This works regardless of how packages or derivations are specified. For " -"instance, the following invocations are equivalent:" +#: doc/guix.texi:6043 +msgid "This works regardless of how packages or derivations are specified. For instance, the following invocations are equivalent:" msgstr "" #. type: example -#: doc/guix.texi:5871 +#: doc/guix.texi:6049 #, no-wrap msgid "" "guix build --log-file `guix build -d guile`\n" @@ -14013,22 +11160,17 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:5876 -msgid "" -"If a log is unavailable locally, and unless @code{--no-substitutes} is " -"passed, the command looks for a corresponding log on one of the substitute " -"servers (as specified with @code{--substitute-urls}.)" +#: doc/guix.texi:6054 +msgid "If a log is unavailable locally, and unless @code{--no-substitutes} is passed, the command looks for a corresponding log on one of the substitute servers (as specified with @code{--substitute-urls}.)" msgstr "" #. type: table -#: doc/guix.texi:5879 -msgid "" -"So for instance, imagine you want to see the build log of GDB on MIPS, but " -"you are actually on an @code{x86_64} machine:" +#: doc/guix.texi:6057 +msgid "So for instance, imagine you want to see the build log of GDB on MIPS, but you are actually on an @code{x86_64} machine:" msgstr "" #. type: example -#: doc/guix.texi:5883 +#: doc/guix.texi:6061 #, no-wrap msgid "" "$ guix build --log-file gdb -s mips64el-linux\n" @@ -14036,46 +11178,33 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:5886 +#: doc/guix.texi:6064 msgid "You can freely access a huge library of build logs!" msgstr "" #. type: cindex -#: doc/guix.texi:5891 +#: doc/guix.texi:6069 #, no-wrap msgid "build failures, debugging" msgstr "" #. type: Plain text -#: doc/guix.texi:5897 -msgid "" -"When defining a new package (@pxref{Defining Packages}), you will probably " -"find yourself spending some time debugging and tweaking the build until it " -"succeeds. To do that, you need to operate the build commands yourself in an " -"environment as close as possible to the one the build daemon uses." +#: doc/guix.texi:6075 +msgid "When defining a new package (@pxref{Defining Packages}), you will probably find yourself spending some time debugging and tweaking the build until it succeeds. To do that, you need to operate the build commands yourself in an environment as close as possible to the one the build daemon uses." msgstr "" #. type: Plain text -#: doc/guix.texi:5902 -msgid "" -"To that end, the first thing to do is to use the @option{--keep-failed} or " -"@option{-K} option of @command{guix build}, which will keep the failed build " -"tree in @file{/tmp} or whatever directory you specified as @code{TMPDIR} " -"(@pxref{Invoking guix build, @code{--keep-failed}})." +#: doc/guix.texi:6080 +msgid "To that end, the first thing to do is to use the @option{--keep-failed} or @option{-K} option of @command{guix build}, which will keep the failed build tree in @file{/tmp} or whatever directory you specified as @code{TMPDIR} (@pxref{Invoking guix build, @code{--keep-failed}})." msgstr "" #. type: Plain text -#: doc/guix.texi:5908 -msgid "" -"From there on, you can @command{cd} to the failed build tree and source the " -"@file{environment-variables} file, which contains all the environment " -"variable definitions that were in place when the build failed. So let's say " -"you're debugging a build failure in package @code{foo}; a typical session " -"would look like this:" +#: doc/guix.texi:6086 +msgid "From there on, you can @command{cd} to the failed build tree and source the @file{environment-variables} file, which contains all the environment variable definitions that were in place when the build failed. So let's say you're debugging a build failure in package @code{foo}; a typical session would look like this:" msgstr "" #. type: example -#: doc/guix.texi:5915 +#: doc/guix.texi:6093 #, no-wrap msgid "" "$ guix build foo -K\n" @@ -14086,31 +11215,22 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:5919 -msgid "" -"Now, you can invoke commands as if you were the daemon (almost) and " -"troubleshoot your build process." +#: doc/guix.texi:6097 +msgid "Now, you can invoke commands as if you were the daemon (almost) and troubleshoot your build process." msgstr "" #. type: Plain text -#: doc/guix.texi:5925 -msgid "" -"Sometimes it happens that, for example, a package's tests pass when you run " -"them manually but they fail when the daemon runs them. This can happen " -"because the daemon runs builds in containers where, unlike in our " -"environment above, network access is missing, @file{/bin/sh} does not exist, " -"etc. (@pxref{Build Environment Setup})." +#: doc/guix.texi:6103 +msgid "Sometimes it happens that, for example, a package's tests pass when you run them manually but they fail when the daemon runs them. This can happen because the daemon runs builds in containers where, unlike in our environment above, network access is missing, @file{/bin/sh} does not exist, etc. (@pxref{Build Environment Setup})." msgstr "" #. type: Plain text -#: doc/guix.texi:5928 -msgid "" -"In such cases, you may need to run inspect the build process from within a " -"container similar to the one the build daemon creates:" +#: doc/guix.texi:6106 +msgid "In such cases, you may need to run inspect the build process from within a container similar to the one the build daemon creates:" msgstr "" #. type: example -#: doc/guix.texi:5936 +#: doc/guix.texi:6114 #, no-wrap msgid "" "$ guix build -K foo\n" @@ -14122,328 +11242,251 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:5945 -msgid "" -"Here, @command{guix environment -C} creates a container and spawns a new " -"shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc " -"strace gdb} part adds the @command{strace} and @command{gdb} commands to the " -"container, which would may find handy while debugging. The @option{--no-" -"grafts} option makes sure we get the exact same environment, with ungrafted " -"packages (@pxref{Security Updates}, for more info on grafts)." +#: doc/guix.texi:6123 +msgid "Here, @command{guix environment -C} creates a container and spawns a new shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc strace gdb} part adds the @command{strace} and @command{gdb} commands to the container, which would may find handy while debugging. The @option{--no-grafts} option makes sure we get the exact same environment, with ungrafted packages (@pxref{Security Updates}, for more info on grafts)." msgstr "" #. type: Plain text -#: doc/guix.texi:5948 -msgid "" -"To get closer to a container like that used by the build daemon, we can " -"remove @file{/bin/sh}:" +#: doc/guix.texi:6126 +msgid "To get closer to a container like that used by the build daemon, we can remove @file{/bin/sh}:" msgstr "" #. type: example -#: doc/guix.texi:5951 +#: doc/guix.texi:6129 #, no-wrap msgid "[env]# rm /bin/sh\n" msgstr "" #. type: Plain text -#: doc/guix.texi:5955 -msgid "" -"(Don't worry, this is harmless: this is all happening in the throw-away " -"container created by @command{guix environment}.)" +#: doc/guix.texi:6133 +msgid "(Don't worry, this is harmless: this is all happening in the throw-away container created by @command{guix environment}.)" msgstr "" #. type: Plain text -#: doc/guix.texi:5958 -msgid "" -"The @command{strace} command is probably not in the search path, but we can " -"run:" +#: doc/guix.texi:6136 +msgid "The @command{strace} command is probably not in the search path, but we can run:" msgstr "" #. type: example -#: doc/guix.texi:5961 +#: doc/guix.texi:6139 #, no-wrap msgid "[env]# $GUIX_ENVIRONMENT/bin/strace -f -o log make check\n" msgstr "" #. type: Plain text -#: doc/guix.texi:5966 -msgid "" -"In this way, not only you will have reproduced the environment variables the " -"daemon uses, you will also be running the build process in a container " -"similar to the one the daemon uses." +#: doc/guix.texi:6144 +msgid "In this way, not only you will have reproduced the environment variables the daemon uses, you will also be running the build process in a container similar to the one the daemon uses." msgstr "" #. type: section -#: doc/guix.texi:5969 +#: doc/guix.texi:6147 #, no-wrap msgid "Invoking @command{guix edit}" msgstr "" #. type: command{#1} -#: doc/guix.texi:5971 +#: doc/guix.texi:6149 #, no-wrap msgid "guix edit" msgstr "" #. type: cindex -#: doc/guix.texi:5972 +#: doc/guix.texi:6150 #, no-wrap msgid "package definition, editing" msgstr "" #. type: Plain text -#: doc/guix.texi:5977 -msgid "" -"So many packages, so many source files! The @command{guix edit} command " -"facilitates the life of users and packagers by pointing their editor at the " -"source file containing the definition of the specified packages. For " -"instance:" +#: doc/guix.texi:6155 +msgid "So many packages, so many source files! The @command{guix edit} command facilitates the life of users and packagers by pointing their editor at the source file containing the definition of the specified packages. For instance:" msgstr "" #. type: example -#: doc/guix.texi:5980 +#: doc/guix.texi:6158 #, no-wrap msgid "guix edit gcc@@4.9 vim\n" msgstr "" #. type: Plain text -#: doc/guix.texi:5986 -msgid "" -"launches the program specified in the @code{VISUAL} or in the @code{EDITOR} " -"environment variable to view the recipe of GCC@tie{}4.9.3 and that of Vim." +#: doc/guix.texi:6164 +msgid "launches the program specified in the @code{VISUAL} or in the @code{EDITOR} environment variable to view the recipe of GCC@tie{}4.9.3 and that of Vim." msgstr "" #. type: Plain text -#: doc/guix.texi:5992 -msgid "" -"If you are using a Guix Git checkout (@pxref{Building from Git}), or have " -"created your own packages on @code{GUIX_PACKAGE_PATH} (@pxref{Defining " -"Packages}), you will be able to edit the package recipes. Otherwise, you " -"will be able to examine the read-only recipes for packages currently in the " -"store." +#: doc/guix.texi:6170 +msgid "If you are using a Guix Git checkout (@pxref{Building from Git}), or have created your own packages on @code{GUIX_PACKAGE_PATH} (@pxref{Defining Packages}), you will be able to edit the package recipes. Otherwise, you will be able to examine the read-only recipes for packages currently in the store." msgstr "" #. type: section -#: doc/guix.texi:5995 +#: doc/guix.texi:6173 #, no-wrap msgid "Invoking @command{guix download}" msgstr "" #. type: command{#1} -#: doc/guix.texi:5997 +#: doc/guix.texi:6175 #, no-wrap msgid "guix download" msgstr "" #. type: cindex -#: doc/guix.texi:5998 +#: doc/guix.texi:6176 #, no-wrap msgid "downloading package sources" msgstr "" #. type: Plain text -#: doc/guix.texi:6005 -msgid "" -"When writing a package definition, developers typically need to download a " -"source tarball, compute its SHA256 hash, and write that hash in the package " -"definition (@pxref{Defining Packages}). The @command{guix download} tool " -"helps with this task: it downloads a file from the given URI, adds it to the " -"store, and prints both its file name in the store and its SHA256 hash." +#: doc/guix.texi:6183 +msgid "When writing a package definition, developers typically need to download a source tarball, compute its SHA256 hash, and write that hash in the package definition (@pxref{Defining Packages}). The @command{guix download} tool helps with this task: it downloads a file from the given URI, adds it to the store, and prints both its file name in the store and its SHA256 hash." msgstr "" #. type: Plain text -#: doc/guix.texi:6012 -msgid "" -"The fact that the downloaded file is added to the store saves bandwidth: " -"when the developer eventually tries to build the newly defined package with " -"@command{guix build}, the source tarball will not have to be downloaded " -"again because it is already in the store. It is also a convenient way to " -"temporarily stash files, which may be deleted eventually (@pxref{Invoking " -"guix gc})." +#: doc/guix.texi:6190 +msgid "The fact that the downloaded file is added to the store saves bandwidth: when the developer eventually tries to build the newly defined package with @command{guix build}, the source tarball will not have to be downloaded again because it is already in the store. It is also a convenient way to temporarily stash files, which may be deleted eventually (@pxref{Invoking guix gc})." msgstr "" #. type: Plain text -#: doc/guix.texi:6020 -msgid "" -"The @command{guix download} command supports the same URIs as used in " -"package definitions. In particular, it supports @code{mirror://} URIs. " -"@code{https} URIs (HTTP over TLS) are supported @emph{provided} the Guile " -"bindings for GnuTLS are available in the user's environment; when they are " -"not available, an error is raised. @xref{Guile Preparations, how to install " -"the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile}, for more " -"information." +#: doc/guix.texi:6198 +msgid "The @command{guix download} command supports the same URIs as used in package definitions. In particular, it supports @code{mirror://} URIs. @code{https} URIs (HTTP over TLS) are supported @emph{provided} the Guile bindings for GnuTLS are available in the user's environment; when they are not available, an error is raised. @xref{Guile Preparations, how to install the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile}, for more information." msgstr "" #. type: Plain text -#: doc/guix.texi:6025 -msgid "" -"@command{guix download} verifies HTTPS server certificates by loading the " -"certificates of X.509 authorities from the directory pointed to by the " -"@code{SSL_CERT_DIR} environment variable (@pxref{X.509 Certificates}), " -"unless @option{--no-check-certificate} is used." +#: doc/guix.texi:6203 +msgid "@command{guix download} verifies HTTPS server certificates by loading the certificates of X.509 authorities from the directory pointed to by the @code{SSL_CERT_DIR} environment variable (@pxref{X.509 Certificates}), unless @option{--no-check-certificate} is used." msgstr "" #. type: Plain text -#: doc/guix.texi:6027 doc/guix.texi:7511 +#: doc/guix.texi:6205 doc/guix.texi:7721 msgid "The following options are available:" msgstr "" #. type: item -#: doc/guix.texi:6029 doc/guix.texi:6068 +#: doc/guix.texi:6207 doc/guix.texi:6246 #, no-wrap msgid "--format=@var{fmt}" msgstr "" #. type: itemx -#: doc/guix.texi:6030 doc/guix.texi:6069 +#: doc/guix.texi:6208 doc/guix.texi:6247 #, no-wrap msgid "-f @var{fmt}" msgstr "" #. type: table -#: doc/guix.texi:6033 -msgid "" -"Write the hash in the format specified by @var{fmt}. For more information " -"on the valid values for @var{fmt}, @pxref{Invoking guix hash}." +#: doc/guix.texi:6211 +msgid "Write the hash in the format specified by @var{fmt}. For more information on the valid values for @var{fmt}, @pxref{Invoking guix hash}." msgstr "" #. type: item -#: doc/guix.texi:6034 +#: doc/guix.texi:6212 #, no-wrap msgid "--no-check-certificate" msgstr "" #. type: table -#: doc/guix.texi:6036 +#: doc/guix.texi:6214 msgid "Do not validate the X.509 certificates of HTTPS servers." msgstr "" #. type: table -#: doc/guix.texi:6040 -msgid "" -"When using this option, you have @emph{absolutely no guarantee} that you are " -"communicating with the authentic server responsible for the given URL, which " -"makes you vulnerable to ``man-in-the-middle'' attacks." +#: doc/guix.texi:6218 +msgid "When using this option, you have @emph{absolutely no guarantee} that you are communicating with the authentic server responsible for the given URL, which makes you vulnerable to ``man-in-the-middle'' attacks." msgstr "" #. type: item -#: doc/guix.texi:6041 +#: doc/guix.texi:6219 #, no-wrap msgid "--output=@var{file}" msgstr "" #. type: itemx -#: doc/guix.texi:6042 +#: doc/guix.texi:6220 #, no-wrap msgid "-o @var{file}" msgstr "" #. type: table -#: doc/guix.texi:6045 -msgid "" -"Save the downloaded file to @var{file} instead of adding it to the store." +#: doc/guix.texi:6223 +msgid "Save the downloaded file to @var{file} instead of adding it to the store." msgstr "" #. type: section -#: doc/guix.texi:6048 +#: doc/guix.texi:6226 #, no-wrap msgid "Invoking @command{guix hash}" msgstr "" #. type: command{#1} -#: doc/guix.texi:6050 +#: doc/guix.texi:6228 #, no-wrap msgid "guix hash" msgstr "" #. type: Plain text -#: doc/guix.texi:6055 -msgid "" -"The @command{guix hash} command computes the SHA256 hash of a file. It is " -"primarily a convenience tool for anyone contributing to the distribution: it " -"computes the cryptographic hash of a file, which can be used in the " -"definition of a package (@pxref{Defining Packages})." +#: doc/guix.texi:6233 +msgid "The @command{guix hash} command computes the SHA256 hash of a file. It is primarily a convenience tool for anyone contributing to the distribution: it computes the cryptographic hash of a file, which can be used in the definition of a package (@pxref{Defining Packages})." msgstr "" #. type: example -#: doc/guix.texi:6060 +#: doc/guix.texi:6238 #, no-wrap msgid "guix hash @var{option} @var{file}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6065 -msgid "" -"When @var{file} is @code{-} (a hyphen), @command{guix hash} computes the " -"hash of data read from standard input. @command{guix hash} has the " -"following options:" +#: doc/guix.texi:6243 +msgid "When @var{file} is @code{-} (a hyphen), @command{guix hash} computes the hash of data read from standard input. @command{guix hash} has the following options:" msgstr "" #. type: table -#: doc/guix.texi:6071 +#: doc/guix.texi:6249 msgid "Write the hash in the format specified by @var{fmt}." msgstr "" #. type: table -#: doc/guix.texi:6074 -msgid "" -"Supported formats: @code{nix-base32}, @code{base32}, @code{base16} " -"(@code{hex} and @code{hexadecimal} can be used as well)." +#: doc/guix.texi:6252 +msgid "Supported formats: @code{nix-base32}, @code{base32}, @code{base16} (@code{hex} and @code{hexadecimal} can be used as well)." msgstr "" #. type: table -#: doc/guix.texi:6078 -msgid "" -"If the @option{--format} option is not specified, @command{guix hash} will " -"output the hash in @code{nix-base32}. This representation is used in the " -"definitions of packages." +#: doc/guix.texi:6256 +msgid "If the @option{--format} option is not specified, @command{guix hash} will output the hash in @code{nix-base32}. This representation is used in the definitions of packages." msgstr "" #. type: table -#: doc/guix.texi:6082 +#: doc/guix.texi:6260 msgid "Compute the hash on @var{file} recursively." msgstr "" #. type: table -#: doc/guix.texi:6091 -msgid "" -"In this case, the hash is computed on an archive containing @var{file}, " -"including its children if it is a directory. Some of the metadata of " -"@var{file} is part of the archive; for instance, when @var{file} is a " -"regular file, the hash is different depending on whether @var{file} is " -"executable or not. Metadata such as time stamps has no impact on the hash " -"(@pxref{Invoking guix archive})." +#: doc/guix.texi:6269 +msgid "In this case, the hash is computed on an archive containing @var{file}, including its children if it is a directory. Some of the metadata of @var{file} is part of the archive; for instance, when @var{file} is a regular file, the hash is different depending on whether @var{file} is executable or not. Metadata such as time stamps has no impact on the hash (@pxref{Invoking guix archive})." msgstr "" #. type: item -#: doc/guix.texi:6092 +#: doc/guix.texi:6270 #, no-wrap msgid "--exclude-vcs" msgstr "" #. type: itemx -#: doc/guix.texi:6093 +#: doc/guix.texi:6271 #, no-wrap msgid "-x" msgstr "" #. type: table -#: doc/guix.texi:6096 -msgid "" -"When combined with @option{--recursive}, exclude version control system " -"directories (@file{.bzr}, @file{.git}, @file{.hg}, etc.)" +#: doc/guix.texi:6274 +msgid "When combined with @option{--recursive}, exclude version control system directories (@file{.bzr}, @file{.git}, @file{.hg}, etc.)" msgstr "" #. type: table -#: doc/guix.texi:6101 -msgid "" -"As an example, here is how you would compute the hash of a Git checkout, " -"which is useful when using the @code{git-fetch} method (@pxref{origin " -"Reference}):" +#: doc/guix.texi:6279 +msgid "As an example, here is how you would compute the hash of a Git checkout, which is useful when using the @code{git-fetch} method (@pxref{origin Reference}):" msgstr "" #. type: example -#: doc/guix.texi:6106 +#: doc/guix.texi:6284 #, no-wrap msgid "" "$ git clone http://example.org/foo.git\n" @@ -14452,378 +11495,299 @@ msgid "" msgstr "" #. type: cindex -#: doc/guix.texi:6110 doc/guix.texi:6115 +#: doc/guix.texi:6288 doc/guix.texi:6293 #, no-wrap msgid "Invoking @command{guix import}" msgstr "" #. type: cindex -#: doc/guix.texi:6112 +#: doc/guix.texi:6290 #, no-wrap msgid "importing packages" msgstr "" #. type: cindex -#: doc/guix.texi:6113 +#: doc/guix.texi:6291 #, no-wrap msgid "package import" msgstr "" #. type: cindex -#: doc/guix.texi:6114 +#: doc/guix.texi:6292 #, no-wrap msgid "package conversion" msgstr "" #. type: Plain text -#: doc/guix.texi:6122 -msgid "" -"The @command{guix import} command is useful for people who would like to add " -"a package to the distribution with as little work as possible---a legitimate " -"demand. The command knows of a few repositories from which it can " -"``import'' package metadata. The result is a package definition, or a " -"template thereof, in the format we know (@pxref{Defining Packages})." +#: doc/guix.texi:6300 +msgid "The @command{guix import} command is useful for people who would like to add a package to the distribution with as little work as possible---a legitimate demand. The command knows of a few repositories from which it can ``import'' package metadata. The result is a package definition, or a template thereof, in the format we know (@pxref{Defining Packages})." msgstr "" #. type: example -#: doc/guix.texi:6127 +#: doc/guix.texi:6305 #, no-wrap msgid "guix import @var{importer} @var{options}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6133 -msgid "" -"@var{importer} specifies the source from which to import package metadata, " -"and @var{options} specifies a package identifier and other options specific " -"to @var{importer}. Currently, the available ``importers'' are:" +#: doc/guix.texi:6311 +msgid "@var{importer} specifies the source from which to import package metadata, and @var{options} specifies a package identifier and other options specific to @var{importer}. Currently, the available ``importers'' are:" msgstr "" #. type: item -#: doc/guix.texi:6135 doc/guix.texi:6588 +#: doc/guix.texi:6313 doc/guix.texi:6772 #, no-wrap msgid "gnu" msgstr "" #. type: table -#: doc/guix.texi:6139 -msgid "" -"Import metadata for the given GNU package. This provides a template for the " -"latest version of that GNU package, including the hash of its source " -"tarball, and its canonical synopsis and description." +#: doc/guix.texi:6317 +msgid "Import metadata for the given GNU package. This provides a template for the latest version of that GNU package, including the hash of its source tarball, and its canonical synopsis and description." msgstr "" #. type: table -#: doc/guix.texi:6142 -msgid "" -"Additional information such as the package dependencies and its license " -"needs to be figured out manually." +#: doc/guix.texi:6320 +msgid "Additional information such as the package dependencies and its license needs to be figured out manually." msgstr "" #. type: table -#: doc/guix.texi:6145 -msgid "" -"For example, the following command returns a package definition for GNU@tie{}" -"Hello:" +#: doc/guix.texi:6323 +msgid "For example, the following command returns a package definition for GNU@tie{}Hello:" msgstr "" #. type: example -#: doc/guix.texi:6148 +#: doc/guix.texi:6326 #, no-wrap msgid "guix import gnu hello\n" msgstr "" #. type: table -#: doc/guix.texi:6151 doc/guix.texi:6369 doc/guix.texi:6414 doc/guix.texi:6438 +#: doc/guix.texi:6329 doc/guix.texi:6547 doc/guix.texi:6592 doc/guix.texi:6616 msgid "Specific command-line options are:" msgstr "" #. type: item -#: doc/guix.texi:6153 doc/guix.texi:6689 +#: doc/guix.texi:6331 doc/guix.texi:6873 #, no-wrap msgid "--key-download=@var{policy}" msgstr "" #. type: table -#: doc/guix.texi:6157 -msgid "" -"As for @code{guix refresh}, specify the policy to handle missing OpenPGP " -"keys when verifying the package signature. @xref{Invoking guix refresh, " -"@code{--key-download}}." +#: doc/guix.texi:6335 +msgid "As for @code{guix refresh}, specify the policy to handle missing OpenPGP keys when verifying the package signature. @xref{Invoking guix refresh, @code{--key-download}}." msgstr "" #. type: item -#: doc/guix.texi:6159 doc/guix.texi:6160 doc/guix.texi:6606 +#: doc/guix.texi:6337 doc/guix.texi:6338 doc/guix.texi:6790 #, no-wrap msgid "pypi" msgstr "" #. type: table -#: doc/guix.texi:6168 -msgid "" -"Import metadata from the @uref{https://pypi.python.org/, Python Package " -"Index}@footnote{This functionality requires Guile-JSON to be installed. " -"@xref{Requirements}.}. Information is taken from the JSON-formatted " -"description available at @code{pypi.python.org} and usually includes all the " -"relevant information, including package dependencies. For maximum " -"efficiency, it is recommended to install the @command{unzip} utility, so " -"that the importer can unzip Python wheels and gather data from them." +#: doc/guix.texi:6346 +msgid "Import metadata from the @uref{https://pypi.python.org/, Python Package Index}@footnote{This functionality requires Guile-JSON to be installed. @xref{Requirements}.}. Information is taken from the JSON-formatted description available at @code{pypi.python.org} and usually includes all the relevant information, including package dependencies. For maximum efficiency, it is recommended to install the @command{unzip} utility, so that the importer can unzip Python wheels and gather data from them." msgstr "" #. type: table -#: doc/guix.texi:6171 -msgid "" -"The command below imports metadata for the @code{itsdangerous} Python " -"package:" +#: doc/guix.texi:6349 +msgid "The command below imports metadata for the @code{itsdangerous} Python package:" msgstr "" #. type: example -#: doc/guix.texi:6174 +#: doc/guix.texi:6352 #, no-wrap msgid "guix import pypi itsdangerous\n" msgstr "" #. type: item -#: doc/guix.texi:6176 doc/guix.texi:6177 doc/guix.texi:6608 +#: doc/guix.texi:6354 doc/guix.texi:6355 doc/guix.texi:6792 #, no-wrap msgid "gem" msgstr "" #. type: table -#: doc/guix.texi:6188 -msgid "" -"Import metadata from @uref{https://rubygems.org/, RubyGems}@footnote{This " -"functionality requires Guile-JSON to be installed. @xref{Requirements}.}. " -"Information is taken from the JSON-formatted description available at " -"@code{rubygems.org} and includes most relevant information, including " -"runtime dependencies. There are some caveats, however. The metadata " -"doesn't distinguish between synopses and descriptions, so the same string is " -"used for both fields. Additionally, the details of non-Ruby dependencies " -"required to build native extensions is unavailable and left as an exercise " -"to the packager." +#: doc/guix.texi:6366 +msgid "Import metadata from @uref{https://rubygems.org/, RubyGems}@footnote{This functionality requires Guile-JSON to be installed. @xref{Requirements}.}. Information is taken from the JSON-formatted description available at @code{rubygems.org} and includes most relevant information, including runtime dependencies. There are some caveats, however. The metadata doesn't distinguish between synopses and descriptions, so the same string is used for both fields. Additionally, the details of non-Ruby dependencies required to build native extensions is unavailable and left as an exercise to the packager." msgstr "" #. type: table -#: doc/guix.texi:6190 +#: doc/guix.texi:6368 msgid "The command below imports metadata for the @code{rails} Ruby package:" msgstr "" #. type: example -#: doc/guix.texi:6193 +#: doc/guix.texi:6371 #, no-wrap msgid "guix import gem rails\n" msgstr "" #. type: item -#: doc/guix.texi:6195 doc/guix.texi:6604 +#: doc/guix.texi:6373 doc/guix.texi:6788 #, no-wrap msgid "cpan" msgstr "" #. type: cindex -#: doc/guix.texi:6196 +#: doc/guix.texi:6374 #, no-wrap msgid "CPAN" msgstr "" #. type: table -#: doc/guix.texi:6206 -msgid "" -"Import metadata from @uref{https://www.metacpan.org/, MetaCPAN}" -"@footnote{This functionality requires Guile-JSON to be installed. " -"@xref{Requirements}.}. Information is taken from the JSON-formatted " -"metadata provided through @uref{https://fastapi.metacpan.org/, MetaCPAN's " -"API} and includes most relevant information, such as module dependencies. " -"License information should be checked closely. If Perl is available in the " -"store, then the @code{corelist} utility will be used to filter core modules " -"out of the list of dependencies." +#: doc/guix.texi:6384 +msgid "Import metadata from @uref{https://www.metacpan.org/, MetaCPAN}@footnote{This functionality requires Guile-JSON to be installed. @xref{Requirements}.}. Information is taken from the JSON-formatted metadata provided through @uref{https://fastapi.metacpan.org/, MetaCPAN's API} and includes most relevant information, such as module dependencies. License information should be checked closely. If Perl is available in the store, then the @code{corelist} utility will be used to filter core modules out of the list of dependencies." msgstr "" #. type: table -#: doc/guix.texi:6209 -msgid "" -"The command command below imports metadata for the @code{Acme::Boolean} Perl " -"module:" +#: doc/guix.texi:6387 +msgid "The command command below imports metadata for the @code{Acme::Boolean} Perl module:" msgstr "" #. type: example -#: doc/guix.texi:6212 +#: doc/guix.texi:6390 #, no-wrap msgid "guix import cpan Acme::Boolean\n" msgstr "" #. type: item -#: doc/guix.texi:6214 doc/guix.texi:6600 +#: doc/guix.texi:6392 doc/guix.texi:6784 #, no-wrap msgid "cran" msgstr "" #. type: cindex -#: doc/guix.texi:6215 +#: doc/guix.texi:6393 #, no-wrap msgid "CRAN" msgstr "" #. type: cindex -#: doc/guix.texi:6216 +#: doc/guix.texi:6394 #, no-wrap msgid "Bioconductor" msgstr "" #. type: table -#: doc/guix.texi:6220 -msgid "" -"Import metadata from @uref{https://cran.r-project.org/, CRAN}, the central " -"repository for the @uref{http://r-project.org, GNU@tie{}R statistical and " -"graphical environment}." +#: doc/guix.texi:6398 +msgid "Import metadata from @uref{https://cran.r-project.org/, CRAN}, the central repository for the @uref{http://r-project.org, GNU@tie{}R statistical and graphical environment}." msgstr "" #. type: table -#: doc/guix.texi:6222 -msgid "" -"Information is extracted from the @code{DESCRIPTION} file of the package." +#: doc/guix.texi:6400 +msgid "Information is extracted from the @code{DESCRIPTION} file of the package." msgstr "" #. type: table -#: doc/guix.texi:6225 -msgid "" -"The command command below imports metadata for the @code{Cairo} R package:" +#: doc/guix.texi:6403 +msgid "The command command below imports metadata for the @code{Cairo} R package:" msgstr "" #. type: example -#: doc/guix.texi:6228 +#: doc/guix.texi:6406 #, no-wrap msgid "guix import cran Cairo\n" msgstr "" #. type: table -#: doc/guix.texi:6233 -msgid "" -"When @code{--recursive} is added, the importer will traverse the dependency " -"graph of the given upstream package recursively and generate package " -"expressions for all those packages that are not yet in Guix." +#: doc/guix.texi:6411 +msgid "When @code{--recursive} is added, the importer will traverse the dependency graph of the given upstream package recursively and generate package expressions for all those packages that are not yet in Guix." msgstr "" #. type: table -#: doc/guix.texi:6238 -msgid "" -"When @code{--archive=bioconductor} is added, metadata is imported from " -"@uref{https://www.bioconductor.org/, Bioconductor}, a repository of R " -"packages for for the analysis and comprehension of high-throughput genomic " -"data in bioinformatics." +#: doc/guix.texi:6416 +msgid "When @code{--archive=bioconductor} is added, metadata is imported from @uref{https://www.bioconductor.org/, Bioconductor}, a repository of R packages for for the analysis and comprehension of high-throughput genomic data in bioinformatics." msgstr "" #. type: table -#: doc/guix.texi:6241 -msgid "" -"Information is extracted from the @code{DESCRIPTION} file of a package " -"published on the web interface of the Bioconductor SVN repository." +#: doc/guix.texi:6419 +msgid "Information is extracted from the @code{DESCRIPTION} file of a package published on the web interface of the Bioconductor SVN repository." msgstr "" #. type: table -#: doc/guix.texi:6244 -msgid "" -"The command below imports metadata for the @code{GenomicRanges} R package:" +#: doc/guix.texi:6422 +msgid "The command below imports metadata for the @code{GenomicRanges} R package:" msgstr "" #. type: example -#: doc/guix.texi:6247 +#: doc/guix.texi:6425 #, no-wrap msgid "guix import cran --archive=bioconductor GenomicRanges\n" msgstr "" #. type: item -#: doc/guix.texi:6249 +#: doc/guix.texi:6427 #, no-wrap msgid "texlive" msgstr "" #. type: cindex -#: doc/guix.texi:6250 +#: doc/guix.texi:6428 #, no-wrap msgid "TeX Live" msgstr "" #. type: cindex -#: doc/guix.texi:6251 +#: doc/guix.texi:6429 #, no-wrap msgid "CTAN" msgstr "" #. type: table -#: doc/guix.texi:6255 -msgid "" -"Import metadata from @uref{http://www.ctan.org/, CTAN}, the comprehensive " -"TeX archive network for TeX packages that are part of the @uref{https://www." -"tug.org/texlive/, TeX Live distribution}." +#: doc/guix.texi:6433 +msgid "Import metadata from @uref{http://www.ctan.org/, CTAN}, the comprehensive TeX archive network for TeX packages that are part of the @uref{https://www.tug.org/texlive/, TeX Live distribution}." msgstr "" #. type: table -#: doc/guix.texi:6260 -msgid "" -"Information about the package is obtained through the XML API provided by " -"CTAN, while the source code is downloaded from the SVN repository of the Tex " -"Live project. This is done because the CTAN does not keep versioned " -"archives." +#: doc/guix.texi:6438 +msgid "Information about the package is obtained through the XML API provided by CTAN, while the source code is downloaded from the SVN repository of the Tex Live project. This is done because the CTAN does not keep versioned archives." msgstr "" #. type: table -#: doc/guix.texi:6263 -msgid "" -"The command command below imports metadata for the @code{fontspec} TeX " -"package:" +#: doc/guix.texi:6441 +msgid "The command command below imports metadata for the @code{fontspec} TeX package:" msgstr "" #. type: example -#: doc/guix.texi:6266 +#: doc/guix.texi:6444 #, no-wrap msgid "guix import texlive fontspec\n" msgstr "" #. type: table -#: doc/guix.texi:6272 -msgid "" -"When @code{--archive=DIRECTORY} is added, the source code is downloaded not " -"from the @file{latex} sub-directory of the @file{texmf-dist/source} tree in " -"the TeX Live SVN repository, but from the specified sibling directory under " -"the same root." +#: doc/guix.texi:6450 +msgid "When @code{--archive=DIRECTORY} is added, the source code is downloaded not from the @file{latex} sub-directory of the @file{texmf-dist/source} tree in the TeX Live SVN repository, but from the specified sibling directory under the same root." msgstr "" #. type: table -#: doc/guix.texi:6276 -msgid "" -"The command below imports metadata for the @code{ifxetex} package from CTAN " -"while fetching the sources from the directory @file{texmf/source/generic}:" +#: doc/guix.texi:6454 +msgid "The command below imports metadata for the @code{ifxetex} package from CTAN while fetching the sources from the directory @file{texmf/source/generic}:" msgstr "" #. type: example -#: doc/guix.texi:6279 +#: doc/guix.texi:6457 #, no-wrap msgid "guix import texlive --archive=generic ifxetex\n" msgstr "" #. type: item -#: doc/guix.texi:6281 +#: doc/guix.texi:6459 #, no-wrap msgid "json" msgstr "" #. type: cindex -#: doc/guix.texi:6282 +#: doc/guix.texi:6460 #, no-wrap msgid "JSON, import" msgstr "" #. type: table -#: doc/guix.texi:6287 -msgid "" -"Import package metadata from a local JSON file@footnote{This functionality " -"requires Guile-JSON to be installed. @xref{Requirements}.}. Consider the " -"following example package definition in JSON format:" +#: doc/guix.texi:6465 +msgid "Import package metadata from a local JSON file@footnote{This functionality requires Guile-JSON to be installed. @xref{Requirements}.}. Consider the following example package definition in JSON format:" msgstr "" #. type: example -#: doc/guix.texi:6300 +#: doc/guix.texi:6478 #, no-wrap msgid "" "@{\n" @@ -14840,23 +11804,17 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:6306 -msgid "" -"The field names are the same as for the @code{} record " -"(@xref{Defining Packages}). References to other packages are provided as " -"JSON lists of quoted package specification strings such as @code{guile} or " -"@code{guile@@2.0}." +#: doc/guix.texi:6484 +msgid "The field names are the same as for the @code{} record (@xref{Defining Packages}). References to other packages are provided as JSON lists of quoted package specification strings such as @code{guile} or @code{guile@@2.0}." msgstr "" #. type: table -#: doc/guix.texi:6309 -msgid "" -"The importer also supports a more explicit source definition using the " -"common fields for @code{} records:" +#: doc/guix.texi:6487 +msgid "The importer also supports a more explicit source definition using the common fields for @code{} records:" msgstr "" #. type: example -#: doc/guix.texi:6322 +#: doc/guix.texi:6500 #, no-wrap msgid "" "@{\n" @@ -14873,329 +11831,270 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:6326 -msgid "" -"The command below reads metadata from the JSON file @code{hello.json} and " -"outputs a package expression:" +#: doc/guix.texi:6504 +msgid "The command below reads metadata from the JSON file @code{hello.json} and outputs a package expression:" msgstr "" #. type: example -#: doc/guix.texi:6329 +#: doc/guix.texi:6507 #, no-wrap msgid "guix import json hello.json\n" msgstr "" #. type: item -#: doc/guix.texi:6331 +#: doc/guix.texi:6509 #, no-wrap msgid "nix" msgstr "" #. type: table -#: doc/guix.texi:6340 -msgid "" -"Import metadata from a local copy of the source of the @uref{http://nixos." -"org/nixpkgs/, Nixpkgs distribution}@footnote{This relies on the @command{nix-" -"instantiate} command of @uref{http://nixos.org/nix/, Nix}.}. Package " -"definitions in Nixpkgs are typically written in a mixture of Nix-language " -"and Bash code. This command only imports the high-level package structure " -"that is written in the Nix language. It normally includes all the basic " -"fields of a package definition." +#: doc/guix.texi:6518 +msgid "Import metadata from a local copy of the source of the @uref{http://nixos.org/nixpkgs/, Nixpkgs distribution}@footnote{This relies on the @command{nix-instantiate} command of @uref{http://nixos.org/nix/, Nix}.}. Package definitions in Nixpkgs are typically written in a mixture of Nix-language and Bash code. This command only imports the high-level package structure that is written in the Nix language. It normally includes all the basic fields of a package definition." msgstr "" #. type: table -#: doc/guix.texi:6343 -msgid "" -"When importing a GNU package, the synopsis and descriptions are replaced by " -"their canonical upstream variant." +#: doc/guix.texi:6521 +msgid "When importing a GNU package, the synopsis and descriptions are replaced by their canonical upstream variant." msgstr "" #. type: table -#: doc/guix.texi:6345 +#: doc/guix.texi:6523 msgid "Usually, you will first need to do:" msgstr "" #. type: example -#: doc/guix.texi:6348 +#: doc/guix.texi:6526 #, no-wrap msgid "export NIX_REMOTE=daemon\n" msgstr "" #. type: table -#: doc/guix.texi:6352 -msgid "" -"so that @command{nix-instantiate} does not try to open the Nix database." +#: doc/guix.texi:6530 +msgid "so that @command{nix-instantiate} does not try to open the Nix database." msgstr "" #. type: table -#: doc/guix.texi:6356 -msgid "" -"As an example, the command below imports the package definition of " -"LibreOffice (more precisely, it imports the definition of the package bound " -"to the @code{libreoffice} top-level attribute):" +#: doc/guix.texi:6534 +msgid "As an example, the command below imports the package definition of LibreOffice (more precisely, it imports the definition of the package bound to the @code{libreoffice} top-level attribute):" msgstr "" #. type: example -#: doc/guix.texi:6359 +#: doc/guix.texi:6537 #, no-wrap msgid "guix import nix ~/path/to/nixpkgs libreoffice\n" msgstr "" #. type: item -#: doc/guix.texi:6361 doc/guix.texi:6362 doc/guix.texi:6612 +#: doc/guix.texi:6539 doc/guix.texi:6540 doc/guix.texi:6796 #, no-wrap msgid "hackage" msgstr "" #. type: table -#: doc/guix.texi:6367 -msgid "" -"Import metadata from the Haskell community's central package archive " -"@uref{https://hackage.haskell.org/, Hackage}. Information is taken from " -"Cabal files and includes all the relevant information, including package " -"dependencies." +#: doc/guix.texi:6545 +msgid "Import metadata from the Haskell community's central package archive @uref{https://hackage.haskell.org/, Hackage}. Information is taken from Cabal files and includes all the relevant information, including package dependencies." msgstr "" #. type: item -#: doc/guix.texi:6371 +#: doc/guix.texi:6549 #, no-wrap msgid "--stdin" msgstr "" #. type: itemx -#: doc/guix.texi:6372 +#: doc/guix.texi:6550 #, no-wrap msgid "-s" msgstr "" #. type: table -#: doc/guix.texi:6374 +#: doc/guix.texi:6552 msgid "Read a Cabal file from standard input." msgstr "" #. type: item -#: doc/guix.texi:6374 doc/guix.texi:6416 +#: doc/guix.texi:6552 doc/guix.texi:6594 #, no-wrap msgid "--no-test-dependencies" msgstr "" #. type: itemx -#: doc/guix.texi:6375 doc/guix.texi:6417 +#: doc/guix.texi:6553 doc/guix.texi:6595 #, no-wrap msgid "-t" msgstr "" #. type: table -#: doc/guix.texi:6377 doc/guix.texi:6419 +#: doc/guix.texi:6555 doc/guix.texi:6597 msgid "Do not include dependencies required only by the test suites." msgstr "" #. type: item -#: doc/guix.texi:6377 +#: doc/guix.texi:6555 #, no-wrap msgid "--cabal-environment=@var{alist}" msgstr "" #. type: itemx -#: doc/guix.texi:6378 +#: doc/guix.texi:6556 #, no-wrap msgid "-e @var{alist}" msgstr "" #. type: table -#: doc/guix.texi:6387 -msgid "" -"@var{alist} is a Scheme alist defining the environment in which the Cabal " -"conditionals are evaluated. The accepted keys are: @code{os}, @code{arch}, " -"@code{impl} and a string representing the name of a flag. The value " -"associated with a flag has to be either the symbol @code{true} or " -"@code{false}. The value associated with other keys has to conform to the " -"Cabal file format definition. The default value associated with the keys " -"@code{os}, @code{arch} and @code{impl} is @samp{linux}, @samp{x86_64} and " -"@samp{ghc}, respectively." +#: doc/guix.texi:6565 +msgid "@var{alist} is a Scheme alist defining the environment in which the Cabal conditionals are evaluated. The accepted keys are: @code{os}, @code{arch}, @code{impl} and a string representing the name of a flag. The value associated with a flag has to be either the symbol @code{true} or @code{false}. The value associated with other keys has to conform to the Cabal file format definition. The default value associated with the keys @code{os}, @code{arch} and @code{impl} is @samp{linux}, @samp{x86_64} and @samp{ghc}, respectively." msgstr "" #. type: table -#: doc/guix.texi:6392 -msgid "" -"The command below imports metadata for the latest version of the @code{HTTP} " -"Haskell package without including test dependencies and specifying the value " -"of the flag @samp{network-uri} as @code{false}:" +#: doc/guix.texi:6570 +msgid "The command below imports metadata for the latest version of the @code{HTTP} Haskell package without including test dependencies and specifying the value of the flag @samp{network-uri} as @code{false}:" msgstr "" #. type: example -#: doc/guix.texi:6395 +#: doc/guix.texi:6573 #, no-wrap msgid "guix import hackage -t -e \"'((\\\"network-uri\\\" . false))\" HTTP\n" msgstr "" #. type: table -#: doc/guix.texi:6399 -msgid "" -"A specific package version may optionally be specified by following the " -"package name by an at-sign and a version number as in the following example:" +#: doc/guix.texi:6577 +msgid "A specific package version may optionally be specified by following the package name by an at-sign and a version number as in the following example:" msgstr "" #. type: example -#: doc/guix.texi:6402 +#: doc/guix.texi:6580 #, no-wrap msgid "guix import hackage mtl@@2.1.3.1\n" msgstr "" #. type: item -#: doc/guix.texi:6404 doc/guix.texi:6405 doc/guix.texi:6614 +#: doc/guix.texi:6582 doc/guix.texi:6583 doc/guix.texi:6798 #, no-wrap msgid "stackage" msgstr "" #. type: table -#: doc/guix.texi:6412 -msgid "" -"The @code{stackage} importer is a wrapper around the @code{hackage} one. It " -"takes a package name, looks up the package version included in a long-term " -"support (LTS) @uref{https://www.stackage.org, Stackage} release and uses the " -"@code{hackage} importer to retrieve its metadata. Note that it is up to you " -"to select an LTS release compatible with the GHC compiler used by Guix." +#: doc/guix.texi:6590 +msgid "The @code{stackage} importer is a wrapper around the @code{hackage} one. It takes a package name, looks up the package version included in a long-term support (LTS) @uref{https://www.stackage.org, Stackage} release and uses the @code{hackage} importer to retrieve its metadata. Note that it is up to you to select an LTS release compatible with the GHC compiler used by Guix." msgstr "" #. type: item -#: doc/guix.texi:6419 +#: doc/guix.texi:6597 #, no-wrap msgid "--lts-version=@var{version}" msgstr "" #. type: itemx -#: doc/guix.texi:6420 +#: doc/guix.texi:6598 #, no-wrap msgid "-r @var{version}" msgstr "" #. type: table -#: doc/guix.texi:6423 -msgid "" -"@var{version} is the desired LTS release version. If omitted the latest " -"release is used." +#: doc/guix.texi:6601 +msgid "@var{version} is the desired LTS release version. If omitted the latest release is used." msgstr "" #. type: table -#: doc/guix.texi:6427 -msgid "" -"The command below imports metadata for the @code{HTTP} Haskell package " -"included in the LTS Stackage release version 7.18:" +#: doc/guix.texi:6605 +msgid "The command below imports metadata for the @code{HTTP} Haskell package included in the LTS Stackage release version 7.18:" msgstr "" #. type: example -#: doc/guix.texi:6430 +#: doc/guix.texi:6608 #, no-wrap msgid "guix import stackage --lts-version=7.18 HTTP\n" msgstr "" #. type: item -#: doc/guix.texi:6432 doc/guix.texi:6433 doc/guix.texi:6598 +#: doc/guix.texi:6610 doc/guix.texi:6611 doc/guix.texi:6782 #, no-wrap msgid "elpa" msgstr "" #. type: table -#: doc/guix.texi:6436 -msgid "" -"Import metadata from an Emacs Lisp Package Archive (ELPA) package repository " -"(@pxref{Packages,,, emacs, The GNU Emacs Manual})." +#: doc/guix.texi:6614 +msgid "Import metadata from an Emacs Lisp Package Archive (ELPA) package repository (@pxref{Packages,,, emacs, The GNU Emacs Manual})." msgstr "" #. type: item -#: doc/guix.texi:6440 +#: doc/guix.texi:6618 #, no-wrap msgid "--archive=@var{repo}" msgstr "" #. type: itemx -#: doc/guix.texi:6441 +#: doc/guix.texi:6619 #, no-wrap msgid "-a @var{repo}" msgstr "" #. type: table -#: doc/guix.texi:6445 -msgid "" -"@var{repo} identifies the archive repository from which to retrieve the " -"information. Currently the supported repositories and their identifiers are:" +#: doc/guix.texi:6623 +msgid "@var{repo} identifies the archive repository from which to retrieve the information. Currently the supported repositories and their identifiers are:" msgstr "" #. type: itemize -#: doc/guix.texi:6449 -msgid "" -"@uref{http://elpa.gnu.org/packages, GNU}, selected by the @code{gnu} " -"identifier. This is the default." +#: doc/guix.texi:6627 +msgid "@uref{http://elpa.gnu.org/packages, GNU}, selected by the @code{gnu} identifier. This is the default." msgstr "" #. type: itemize -#: doc/guix.texi:6455 -msgid "" -"Packages from @code{elpa.gnu.org} are signed with one of the keys contained " -"in the GnuPG keyring at @file{share/emacs/25.1/etc/package-keyring.gpg} (or " -"similar) in the @code{emacs} package (@pxref{Package Installation, ELPA " -"package signatures,, emacs, The GNU Emacs Manual})." +#: doc/guix.texi:6633 +msgid "Packages from @code{elpa.gnu.org} are signed with one of the keys contained in the GnuPG keyring at @file{share/emacs/25.1/etc/package-keyring.gpg} (or similar) in the @code{emacs} package (@pxref{Package Installation, ELPA package signatures,, emacs, The GNU Emacs Manual})." msgstr "" #. type: itemize -#: doc/guix.texi:6459 -msgid "" -"@uref{http://stable.melpa.org/packages, MELPA-Stable}, selected by the " -"@code{melpa-stable} identifier." +#: doc/guix.texi:6637 +msgid "@uref{http://stable.melpa.org/packages, MELPA-Stable}, selected by the @code{melpa-stable} identifier." msgstr "" #. type: itemize -#: doc/guix.texi:6463 -msgid "" -"@uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa} " -"identifier." +#: doc/guix.texi:6641 +msgid "@uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa} identifier." +msgstr "" + +#. type: table +#: doc/guix.texi:6648 +msgid "Traverse the dependency graph of the given upstream package recursively and generate package expressions for all those packages that are not yet in Guix." msgstr "" #. type: item -#: doc/guix.texi:6466 doc/guix.texi:6467 doc/guix.texi:6616 +#: doc/guix.texi:6650 doc/guix.texi:6651 doc/guix.texi:6800 #, no-wrap msgid "crate" msgstr "" #. type: table -#: doc/guix.texi:6470 -msgid "" -"Import metadata from the crates.io Rust package repository @uref{https://" -"crates.io, crates.io}." +#: doc/guix.texi:6654 +msgid "Import metadata from the crates.io Rust package repository @uref{https://crates.io, crates.io}." msgstr "" #. type: Plain text -#: doc/guix.texi:6475 -msgid "" -"The structure of the @command{guix import} code is modular. It would be " -"useful to have more importers for other package formats, and your help is " -"welcome here (@pxref{Contributing})." +#: doc/guix.texi:6659 +msgid "The structure of the @command{guix import} code is modular. It would be useful to have more importers for other package formats, and your help is welcome here (@pxref{Contributing})." msgstr "" #. type: section -#: doc/guix.texi:6477 +#: doc/guix.texi:6661 #, no-wrap msgid "Invoking @command{guix refresh}" msgstr "" #. type: command{#1} -#: doc/guix.texi:6479 +#: doc/guix.texi:6663 #, no-wrap msgid "guix refresh" msgstr "" #. type: Plain text -#: doc/guix.texi:6484 -msgid "" -"The primary audience of the @command{guix refresh} command is developers of " -"the GNU software distribution. By default, it reports any packages provided " -"by the distribution that are outdated compared to the latest upstream " -"version, like this:" +#: doc/guix.texi:6668 +msgid "The primary audience of the @command{guix refresh} command is developers of the GNU software distribution. By default, it reports any packages provided by the distribution that are outdated compared to the latest upstream version, like this:" msgstr "" #. type: example -#: doc/guix.texi:6489 +#: doc/guix.texi:6673 #, no-wrap msgid "" "$ guix refresh\n" @@ -15204,14 +12103,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:6493 -msgid "" -"Alternately, one can specify packages to consider, in which case a warning " -"is emitted for packages that lack an updater:" +#: doc/guix.texi:6677 +msgid "Alternately, one can specify packages to consider, in which case a warning is emitted for packages that lack an updater:" msgstr "" #. type: example -#: doc/guix.texi:6498 +#: doc/guix.texi:6682 #, no-wrap msgid "" "$ guix refresh coreutils guile guile-ssh\n" @@ -15220,28 +12117,17 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:6507 -msgid "" -"@command{guix refresh} browses the upstream repository of each package and " -"determines the highest version number of the releases therein. The command " -"knows how to update specific types of packages: GNU packages, ELPA packages, " -"etc.---see the documentation for @option{--type} below. There are many " -"packages, though, for which it lacks a method to determine whether a new " -"upstream release is available. However, the mechanism is extensible, so " -"feel free to get in touch with us to add a new method!" +#: doc/guix.texi:6691 +msgid "@command{guix refresh} browses the upstream repository of each package and determines the highest version number of the releases therein. The command knows how to update specific types of packages: GNU packages, ELPA packages, etc.---see the documentation for @option{--type} below. There are many packages, though, for which it lacks a method to determine whether a new upstream release is available. However, the mechanism is extensible, so feel free to get in touch with us to add a new method!" msgstr "" #. type: Plain text -#: doc/guix.texi:6512 -msgid "" -"Sometimes the upstream name differs from the package name used in Guix, and " -"@command{guix refresh} needs a little help. Most updaters honor the " -"@code{upstream-name} property in package definitions, which can be used to " -"that effect:" +#: doc/guix.texi:6696 +msgid "Sometimes the upstream name differs from the package name used in Guix, and @command{guix refresh} needs a little help. Most updaters honor the @code{upstream-name} property in package definitions, which can be used to that effect:" msgstr "" #. type: example -#: doc/guix.texi:6519 +#: doc/guix.texi:6703 #, no-wrap msgid "" "(define-public network-manager\n" @@ -15252,260 +12138,226 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:6531 -msgid "" -"When passed @code{--update}, it modifies distribution source files to update " -"the version numbers and source tarball hashes of those package recipes " -"(@pxref{Defining Packages}). This is achieved by downloading each package's " -"latest source tarball and its associated OpenPGP signature, authenticating " -"the downloaded tarball against its signature using @command{gpg}, and " -"finally computing its hash. When the public key used to sign the tarball is " -"missing from the user's keyring, an attempt is made to automatically " -"retrieve it from a public key server; when this is successful, the key is " -"added to the user's keyring; otherwise, @command{guix refresh} reports an " -"error." +#: doc/guix.texi:6715 +msgid "When passed @code{--update}, it modifies distribution source files to update the version numbers and source tarball hashes of those package recipes (@pxref{Defining Packages}). This is achieved by downloading each package's latest source tarball and its associated OpenPGP signature, authenticating the downloaded tarball against its signature using @command{gpg}, and finally computing its hash. When the public key used to sign the tarball is missing from the user's keyring, an attempt is made to automatically retrieve it from a public key server; when this is successful, the key is added to the user's keyring; otherwise, @command{guix refresh} reports an error." msgstr "" #. type: Plain text -#: doc/guix.texi:6533 +#: doc/guix.texi:6717 msgid "The following options are supported:" msgstr "" #. type: table -#: doc/guix.texi:6541 doc/guix.texi:7102 +#: doc/guix.texi:6725 doc/guix.texi:7312 msgid "This is useful to precisely refer to a package, as in this example:" msgstr "" #. type: example -#: doc/guix.texi:6544 +#: doc/guix.texi:6728 #, no-wrap msgid "guix refresh -l -e '(@@@@ (gnu packages commencement) glibc-final)'\n" msgstr "" #. type: table -#: doc/guix.texi:6548 -msgid "" -"This command lists the dependents of the ``final'' libc (essentially all the " -"packages.)" +#: doc/guix.texi:6732 +msgid "This command lists the dependents of the ``final'' libc (essentially all the packages.)" msgstr "" #. type: item -#: doc/guix.texi:6549 +#: doc/guix.texi:6733 #, no-wrap msgid "--update" msgstr "" #. type: itemx -#: doc/guix.texi:6550 +#: doc/guix.texi:6734 #, no-wrap msgid "-u" msgstr "" #. type: table -#: doc/guix.texi:6554 -msgid "" -"Update distribution source files (package recipes) in place. This is " -"usually run from a checkout of the Guix source tree (@pxref{Running Guix " -"Before It Is Installed}):" +#: doc/guix.texi:6738 +msgid "Update distribution source files (package recipes) in place. This is usually run from a checkout of the Guix source tree (@pxref{Running Guix Before It Is Installed}):" msgstr "" #. type: example -#: doc/guix.texi:6557 +#: doc/guix.texi:6741 #, no-wrap msgid "$ ./pre-inst-env guix refresh -s non-core -u\n" msgstr "" #. type: table -#: doc/guix.texi:6560 +#: doc/guix.texi:6744 msgid "@xref{Defining Packages}, for more information on package definitions." msgstr "" #. type: item -#: doc/guix.texi:6561 +#: doc/guix.texi:6745 #, no-wrap msgid "--select=[@var{subset}]" msgstr "" #. type: itemx -#: doc/guix.texi:6562 +#: doc/guix.texi:6746 #, no-wrap msgid "-s @var{subset}" msgstr "" #. type: table -#: doc/guix.texi:6565 -msgid "" -"Select all the packages in @var{subset}, one of @code{core} or @code{non-" -"core}." +#: doc/guix.texi:6749 +msgid "Select all the packages in @var{subset}, one of @code{core} or @code{non-core}." msgstr "" #. type: table -#: doc/guix.texi:6572 -msgid "" -"The @code{core} subset refers to all the packages at the core of the " -"distribution---i.e., packages that are used to build ``everything else''. " -"This includes GCC, libc, Binutils, Bash, etc. Usually, changing one of " -"these packages in the distribution entails a rebuild of all the others. " -"Thus, such updates are an inconvenience to users in terms of build time or " -"bandwidth used to achieve the upgrade." +#: doc/guix.texi:6756 +msgid "The @code{core} subset refers to all the packages at the core of the distribution---i.e., packages that are used to build ``everything else''. This includes GCC, libc, Binutils, Bash, etc. Usually, changing one of these packages in the distribution entails a rebuild of all the others. Thus, such updates are an inconvenience to users in terms of build time or bandwidth used to achieve the upgrade." msgstr "" #. type: table -#: doc/guix.texi:6576 -msgid "" -"The @code{non-core} subset refers to the remaining packages. It is " -"typically useful in cases where an update of the core packages would be " -"inconvenient." +#: doc/guix.texi:6760 +msgid "The @code{non-core} subset refers to the remaining packages. It is typically useful in cases where an update of the core packages would be inconvenient." msgstr "" #. type: table -#: doc/guix.texi:6581 -msgid "" -"Select all the packages from the manifest in @var{file}. This is useful to " -"check if any packages of the user manifest can be updated." +#: doc/guix.texi:6765 +msgid "Select all the packages from the manifest in @var{file}. This is useful to check if any packages of the user manifest can be updated." msgstr "" #. type: item -#: doc/guix.texi:6582 +#: doc/guix.texi:6766 #, no-wrap msgid "--type=@var{updater}" msgstr "" #. type: itemx -#: doc/guix.texi:6583 +#: doc/guix.texi:6767 #, no-wrap msgid "-t @var{updater}" msgstr "" #. type: table -#: doc/guix.texi:6586 -msgid "" -"Select only packages handled by @var{updater} (may be a comma-separated list " -"of updaters). Currently, @var{updater} may be one of:" +#: doc/guix.texi:6770 +msgid "Select only packages handled by @var{updater} (may be a comma-separated list of updaters). Currently, @var{updater} may be one of:" msgstr "" #. type: table -#: doc/guix.texi:6590 +#: doc/guix.texi:6774 msgid "the updater for GNU packages;" msgstr "" #. type: item -#: doc/guix.texi:6590 +#: doc/guix.texi:6774 #, no-wrap msgid "gnome" msgstr "" #. type: table -#: doc/guix.texi:6592 +#: doc/guix.texi:6776 msgid "the updater for GNOME packages;" msgstr "" #. type: item -#: doc/guix.texi:6592 +#: doc/guix.texi:6776 #, no-wrap msgid "kde" msgstr "" #. type: table -#: doc/guix.texi:6594 +#: doc/guix.texi:6778 msgid "the updater for KDE packages;" msgstr "" #. type: item -#: doc/guix.texi:6594 +#: doc/guix.texi:6778 #, no-wrap msgid "xorg" msgstr "" #. type: table -#: doc/guix.texi:6596 +#: doc/guix.texi:6780 msgid "the updater for X.org packages;" msgstr "" #. type: item -#: doc/guix.texi:6596 +#: doc/guix.texi:6780 #, no-wrap msgid "kernel.org" msgstr "" #. type: table -#: doc/guix.texi:6598 +#: doc/guix.texi:6782 msgid "the updater for packages hosted on kernel.org;" msgstr "" #. type: table -#: doc/guix.texi:6600 +#: doc/guix.texi:6784 msgid "the updater for @uref{http://elpa.gnu.org/, ELPA} packages;" msgstr "" #. type: table -#: doc/guix.texi:6602 +#: doc/guix.texi:6786 msgid "the updater for @uref{https://cran.r-project.org/, CRAN} packages;" msgstr "" #. type: item -#: doc/guix.texi:6602 +#: doc/guix.texi:6786 #, no-wrap msgid "bioconductor" msgstr "" #. type: table -#: doc/guix.texi:6604 -msgid "" -"the updater for @uref{https://www.bioconductor.org/, Bioconductor} R " -"packages;" +#: doc/guix.texi:6788 +msgid "the updater for @uref{https://www.bioconductor.org/, Bioconductor} R packages;" msgstr "" #. type: table -#: doc/guix.texi:6606 +#: doc/guix.texi:6790 msgid "the updater for @uref{http://www.cpan.org/, CPAN} packages;" msgstr "" #. type: table -#: doc/guix.texi:6608 +#: doc/guix.texi:6792 msgid "the updater for @uref{https://pypi.python.org, PyPI} packages." msgstr "" #. type: table -#: doc/guix.texi:6610 +#: doc/guix.texi:6794 msgid "the updater for @uref{https://rubygems.org, RubyGems} packages." msgstr "" #. type: item -#: doc/guix.texi:6610 +#: doc/guix.texi:6794 #, no-wrap msgid "github" msgstr "" #. type: table -#: doc/guix.texi:6612 +#: doc/guix.texi:6796 msgid "the updater for @uref{https://github.com, GitHub} packages." msgstr "" #. type: table -#: doc/guix.texi:6614 +#: doc/guix.texi:6798 msgid "the updater for @uref{https://hackage.haskell.org, Hackage} packages." msgstr "" #. type: table -#: doc/guix.texi:6616 +#: doc/guix.texi:6800 msgid "the updater for @uref{https://www.stackage.org, Stackage} packages." msgstr "" #. type: table -#: doc/guix.texi:6618 +#: doc/guix.texi:6802 msgid "the updater for @uref{https://crates.io, Crates} packages." msgstr "" #. type: table -#: doc/guix.texi:6622 -msgid "" -"For instance, the following command only checks for updates of Emacs " -"packages hosted at @code{elpa.gnu.org} and for updates of CRAN packages:" +#: doc/guix.texi:6806 +msgid "For instance, the following command only checks for updates of Emacs packages hosted at @code{elpa.gnu.org} and for updates of CRAN packages:" msgstr "" #. type: example -#: doc/guix.texi:6627 +#: doc/guix.texi:6811 #, no-wrap msgid "" "$ guix refresh --type=elpa,cran\n" @@ -15514,95 +12366,77 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:6633 -msgid "" -"In addition, @command{guix refresh} can be passed one or more package names, " -"as in this example:" +#: doc/guix.texi:6817 +msgid "In addition, @command{guix refresh} can be passed one or more package names, as in this example:" msgstr "" #. type: example -#: doc/guix.texi:6636 +#: doc/guix.texi:6820 #, no-wrap msgid "$ ./pre-inst-env guix refresh -u emacs idutils gcc@@4.8\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6642 -msgid "" -"The command above specifically updates the @code{emacs} and @code{idutils} " -"packages. The @code{--select} option would have no effect in this case." +#: doc/guix.texi:6826 +msgid "The command above specifically updates the @code{emacs} and @code{idutils} packages. The @code{--select} option would have no effect in this case." msgstr "" #. type: Plain text -#: doc/guix.texi:6647 -msgid "" -"When considering whether to upgrade a package, it is sometimes convenient to " -"know which packages would be affected by the upgrade and should be checked " -"for compatibility. For this the following option may be used when passing " -"@command{guix refresh} one or more package names:" +#: doc/guix.texi:6831 +msgid "When considering whether to upgrade a package, it is sometimes convenient to know which packages would be affected by the upgrade and should be checked for compatibility. For this the following option may be used when passing @command{guix refresh} one or more package names:" msgstr "" #. type: item -#: doc/guix.texi:6650 +#: doc/guix.texi:6834 #, no-wrap msgid "--list-updaters" msgstr "" #. type: itemx -#: doc/guix.texi:6651 +#: doc/guix.texi:6835 #, no-wrap msgid "-L" msgstr "" #. type: table -#: doc/guix.texi:6653 +#: doc/guix.texi:6837 msgid "List available updaters and exit (see @option{--type} above.)" msgstr "" #. type: table -#: doc/guix.texi:6656 -msgid "" -"For each updater, display the fraction of packages it covers; at the end, " -"display the fraction of packages covered by all these updaters." +#: doc/guix.texi:6840 +msgid "For each updater, display the fraction of packages it covers; at the end, display the fraction of packages covered by all these updaters." msgstr "" #. type: item -#: doc/guix.texi:6657 +#: doc/guix.texi:6841 #, no-wrap msgid "--list-dependent" msgstr "" #. type: itemx -#: doc/guix.texi:6658 doc/guix.texi:6803 +#: doc/guix.texi:6842 doc/guix.texi:7005 #, no-wrap msgid "-l" msgstr "" #. type: table -#: doc/guix.texi:6661 -msgid "" -"List top-level dependent packages that would need to be rebuilt as a result " -"of upgrading one or more packages." +#: doc/guix.texi:6845 +msgid "List top-level dependent packages that would need to be rebuilt as a result of upgrading one or more packages." msgstr "" #. type: table -#: doc/guix.texi:6665 -msgid "" -"@xref{Invoking guix graph, the @code{reverse-package} type of @command{guix " -"graph}}, for information on how to visualize the list of dependents of a " -"package." +#: doc/guix.texi:6849 +msgid "@xref{Invoking guix graph, the @code{reverse-package} type of @command{guix graph}}, for information on how to visualize the list of dependents of a package." msgstr "" #. type: Plain text -#: doc/guix.texi:6671 -msgid "" -"Be aware that the @code{--list-dependent} option only @emph{approximates} " -"the rebuilds that would be required as a result of an upgrade. More " -"rebuilds might be required under some circumstances." +#: doc/guix.texi:6855 +msgid "Be aware that the @code{--list-dependent} option only @emph{approximates} the rebuilds that would be required as a result of an upgrade. More rebuilds might be required under some circumstances." msgstr "" #. type: example -#: doc/guix.texi:6676 +#: doc/guix.texi:6860 #, no-wrap msgid "" "$ guix refresh --list-dependent flex\n" @@ -15611,411 +12445,354 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:6680 -msgid "" -"The command above lists a set of packages that could be built to check for " -"compatibility with an upgraded @code{flex} package." +#: doc/guix.texi:6864 +msgid "The command above lists a set of packages that could be built to check for compatibility with an upgraded @code{flex} package." msgstr "" #. type: Plain text -#: doc/guix.texi:6682 +#: doc/guix.texi:6866 msgid "The following options can be used to customize GnuPG operation:" msgstr "" #. type: item -#: doc/guix.texi:6685 +#: doc/guix.texi:6869 #, no-wrap msgid "--gpg=@var{command}" msgstr "" #. type: table -#: doc/guix.texi:6688 -msgid "" -"Use @var{command} as the GnuPG 2.x command. @var{command} is searched for " -"in @code{$PATH}." +#: doc/guix.texi:6872 +msgid "Use @var{command} as the GnuPG 2.x command. @var{command} is searched for in @code{$PATH}." msgstr "" #. type: table -#: doc/guix.texi:6692 -msgid "" -"Handle missing OpenPGP keys according to @var{policy}, which may be one of:" +#: doc/guix.texi:6876 +msgid "Handle missing OpenPGP keys according to @var{policy}, which may be one of:" msgstr "" #. type: item -#: doc/guix.texi:6694 doc/guix.texi:13715 +#: doc/guix.texi:6878 doc/guix.texi:14077 #, no-wrap msgid "always" msgstr "" #. type: table -#: doc/guix.texi:6697 -msgid "" -"Always download missing OpenPGP keys from the key server, and add them to " -"the user's GnuPG keyring." +#: doc/guix.texi:6881 +msgid "Always download missing OpenPGP keys from the key server, and add them to the user's GnuPG keyring." msgstr "" #. type: item -#: doc/guix.texi:6698 doc/guix.texi:13717 +#: doc/guix.texi:6882 doc/guix.texi:14079 #, no-wrap msgid "never" msgstr "" #. type: table -#: doc/guix.texi:6700 +#: doc/guix.texi:6884 msgid "Never try to download missing OpenPGP keys. Instead just bail out." msgstr "" #. type: item -#: doc/guix.texi:6701 +#: doc/guix.texi:6885 #, no-wrap msgid "interactive" msgstr "" #. type: table -#: doc/guix.texi:6704 -msgid "" -"When a package signed with an unknown OpenPGP key is encountered, ask the " -"user whether to download it or not. This is the default behavior." +#: doc/guix.texi:6888 +msgid "When a package signed with an unknown OpenPGP key is encountered, ask the user whether to download it or not. This is the default behavior." msgstr "" #. type: item -#: doc/guix.texi:6706 +#: doc/guix.texi:6890 #, no-wrap msgid "--key-server=@var{host}" msgstr "" #. type: table -#: doc/guix.texi:6708 +#: doc/guix.texi:6892 msgid "Use @var{host} as the OpenPGP key server when importing a public key." msgstr "" #. type: Plain text -#: doc/guix.texi:6721 -msgid "" -"The @code{github} updater uses the @uref{https://developer.github.com/v3/, " -"GitHub API} to query for new releases. When used repeatedly e.g. when " -"refreshing all packages, GitHub will eventually refuse to answer any further " -"API requests. By default 60 API requests per hour are allowed, and a full " -"refresh on all GitHub packages in Guix requires more than this. " -"Authentication with GitHub through the use of an API token alleviates these " -"limits. To use an API token, set the environment variable " -"@code{GUIX_GITHUB_TOKEN} to a token procured from @uref{https://github.com/" -"settings/tokens} or otherwise." +#: doc/guix.texi:6905 +msgid "The @code{github} updater uses the @uref{https://developer.github.com/v3/, GitHub API} to query for new releases. When used repeatedly e.g. when refreshing all packages, GitHub will eventually refuse to answer any further API requests. By default 60 API requests per hour are allowed, and a full refresh on all GitHub packages in Guix requires more than this. Authentication with GitHub through the use of an API token alleviates these limits. To use an API token, set the environment variable @code{GUIX_GITHUB_TOKEN} to a token procured from @uref{https://github.com/settings/tokens} or otherwise." msgstr "" #. type: section -#: doc/guix.texi:6724 +#: doc/guix.texi:6908 #, no-wrap msgid "Invoking @command{guix lint}" msgstr "" #. type: command{#1} -#: doc/guix.texi:6726 +#: doc/guix.texi:6910 #, no-wrap msgid "guix lint" msgstr "" #. type: cindex -#: doc/guix.texi:6727 +#: doc/guix.texi:6911 #, no-wrap msgid "package, checking for errors" msgstr "" #. type: Plain text -#: doc/guix.texi:6733 -msgid "" -"The @command{guix lint} command is meant to help package developers avoid " -"common errors and use a consistent style. It runs a number of checks on a " -"given set of packages in order to find common mistakes in their " -"definitions. Available @dfn{checkers} include (see @code{--list-checkers} " -"for a complete list):" +#: doc/guix.texi:6917 +msgid "The @command{guix lint} command is meant to help package developers avoid common errors and use a consistent style. It runs a number of checks on a given set of packages in order to find common mistakes in their definitions. Available @dfn{checkers} include (see @code{--list-checkers} for a complete list):" msgstr "" #. type: table -#: doc/guix.texi:6739 -msgid "" -"Validate certain typographical and stylistic rules about package " -"descriptions and synopses." +#: doc/guix.texi:6923 +msgid "Validate certain typographical and stylistic rules about package descriptions and synopses." msgstr "" #. type: item -#: doc/guix.texi:6740 +#: doc/guix.texi:6924 #, no-wrap msgid "inputs-should-be-native" msgstr "" #. type: table -#: doc/guix.texi:6742 +#: doc/guix.texi:6926 msgid "Identify inputs that should most likely be native inputs." msgstr "" #. type: itemx -#: doc/guix.texi:6745 +#: doc/guix.texi:6929 #, no-wrap msgid "mirror-url" msgstr "" #. type: itemx -#: doc/guix.texi:6746 +#: doc/guix.texi:6930 #, no-wrap msgid "source-file-name" msgstr "" #. type: table -#: doc/guix.texi:6752 -msgid "" -"Probe @code{home-page} and @code{source} URLs and report those that are " -"invalid. Suggest a @code{mirror://} URL when applicable. Check that the " -"source file name is meaningful, e.g. is not just a version number or ``git-" -"checkout'', without a declared @code{file-name} (@pxref{origin Reference})." +#: doc/guix.texi:6936 +msgid "Probe @code{home-page} and @code{source} URLs and report those that are invalid. Suggest a @code{mirror://} URL when applicable. Check that the source file name is meaningful, e.g. is not just a version number or ``git-checkout'', without a declared @code{file-name} (@pxref{origin Reference})." msgstr "" #. type: item -#: doc/guix.texi:6753 +#: doc/guix.texi:6937 #, no-wrap msgid "cve" msgstr "" #. type: cindex -#: doc/guix.texi:6754 doc/guix.texi:21485 +#: doc/guix.texi:6938 doc/guix.texi:21969 #, no-wrap msgid "security vulnerabilities" msgstr "" #. type: cindex -#: doc/guix.texi:6755 +#: doc/guix.texi:6939 #, no-wrap msgid "CVE, Common Vulnerabilities and Exposures" msgstr "" #. type: table -#: doc/guix.texi:6760 -msgid "" -"Report known vulnerabilities found in the Common Vulnerabilities and " -"Exposures (CVE) databases of the current and past year @uref{https://nvd." -"nist.gov/download.cfm#CVE_FEED, published by the US NIST}." +#: doc/guix.texi:6944 +msgid "Report known vulnerabilities found in the Common Vulnerabilities and Exposures (CVE) databases of the current and past year @uref{https://nvd.nist.gov/download.cfm#CVE_FEED, published by the US NIST}." msgstr "" #. type: table -#: doc/guix.texi:6762 -msgid "" -"To view information about a particular vulnerability, visit pages such as:" +#: doc/guix.texi:6946 +msgid "To view information about a particular vulnerability, visit pages such as:" msgstr "" #. type: indicateurl{#1} -#: doc/guix.texi:6766 +#: doc/guix.texi:6950 msgid "https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-YYYY-ABCD" msgstr "" #. type: indicateurl{#1} -#: doc/guix.texi:6768 +#: doc/guix.texi:6952 msgid "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-YYYY-ABCD" msgstr "" #. type: table -#: doc/guix.texi:6773 -msgid "" -"where @code{CVE-YYYY-ABCD} is the CVE identifier---e.g., " -"@code{CVE-2015-7554}." +#: doc/guix.texi:6957 +msgid "where @code{CVE-YYYY-ABCD} is the CVE identifier---e.g., @code{CVE-2015-7554}." msgstr "" #. type: table -#: doc/guix.texi:6778 -msgid "" -"Package developers can specify in package recipes the @uref{https://nvd.nist." -"gov/cpe.cfm,Common Platform Enumeration (CPE)} name and version of the " -"package when they differ from the name that Guix uses, as in this example:" +#: doc/guix.texi:6962 +msgid "Package developers can specify in package recipes the @uref{https://nvd.nist.gov/cpe.cfm,Common Platform Enumeration (CPE)} name and version of the package when they differ from the name or version that Guix uses, as in this example:" msgstr "" #. type: example -#: doc/guix.texi:6785 +#: doc/guix.texi:6970 #, no-wrap msgid "" "(package\n" " (name \"grub\")\n" " ;; @dots{}\n" " ;; CPE calls this package \"grub2\".\n" -" (properties '((cpe-name . \"grub2\"))))\n" +" (properties '((cpe-name . \"grub2\")\n" +" (cpe-version . \"2.3\")))\n" +msgstr "" + +#. type: table +#: doc/guix.texi:6977 +msgid "Some entries in the CVE database do not specify which version of a package they apply to, and would thus ``stick around'' forever. Package developers who found CVE alerts and verified they can be ignored can declare them as in this example:" +msgstr "" + +#. type: example +#: doc/guix.texi:6987 +#, no-wrap +msgid "" +"(package\n" +" (name \"t1lib\")\n" +" ;; @dots{}\n" +" ;; These CVEs no longer apply and can be safely ignored.\n" +" (properties `((lint-hidden-cve . (\"CVE-2011-0433\"\n" +" \"CVE-2011-1553\"\n" +" \"CVE-2011-1554\"\n" +" \"CVE-2011-5244\")))))\n" msgstr "" #. type: item -#: doc/guix.texi:6787 +#: doc/guix.texi:6989 #, no-wrap msgid "formatting" msgstr "" #. type: table -#: doc/guix.texi:6790 -msgid "" -"Warn about obvious source code formatting issues: trailing white space, use " -"of tabulations, etc." +#: doc/guix.texi:6992 +msgid "Warn about obvious source code formatting issues: trailing white space, use of tabulations, etc." msgstr "" #. type: example -#: doc/guix.texi:6796 +#: doc/guix.texi:6998 #, no-wrap msgid "guix lint @var{options} @var{package}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6800 -msgid "" -"If no package is given on the command line, then all packages are checked. " -"The @var{options} may be zero or more of the following:" +#: doc/guix.texi:7002 +msgid "If no package is given on the command line, then all packages are checked. The @var{options} may be zero or more of the following:" msgstr "" #. type: item -#: doc/guix.texi:6802 +#: doc/guix.texi:7004 #, no-wrap msgid "--list-checkers" msgstr "" #. type: table -#: doc/guix.texi:6806 -msgid "" -"List and describe all the available checkers that will be run on packages " -"and exit." +#: doc/guix.texi:7008 +msgid "List and describe all the available checkers that will be run on packages and exit." msgstr "" #. type: item -#: doc/guix.texi:6807 +#: doc/guix.texi:7009 #, no-wrap msgid "--checkers" msgstr "" #. type: itemx -#: doc/guix.texi:6808 +#: doc/guix.texi:7010 #, no-wrap msgid "-c" msgstr "" #. type: table -#: doc/guix.texi:6811 -msgid "" -"Only enable the checkers specified in a comma-separated list using the names " -"returned by @code{--list-checkers}." +#: doc/guix.texi:7013 +msgid "Only enable the checkers specified in a comma-separated list using the names returned by @code{--list-checkers}." msgstr "" #. type: section -#: doc/guix.texi:6815 +#: doc/guix.texi:7017 #, no-wrap msgid "Invoking @command{guix size}" msgstr "" #. type: cindex -#: doc/guix.texi:6817 +#: doc/guix.texi:7019 #, no-wrap msgid "size" msgstr "" #. type: cindex -#: doc/guix.texi:6818 +#: doc/guix.texi:7020 #, no-wrap msgid "package size" msgstr "" #. type: command{#1} -#: doc/guix.texi:6820 +#: doc/guix.texi:7022 #, no-wrap msgid "guix size" msgstr "" #. type: Plain text -#: doc/guix.texi:6827 -msgid "" -"The @command{guix size} command helps package developers profile the disk " -"usage of packages. It is easy to overlook the impact of an additional " -"dependency added to a package, or the impact of using a single output for a " -"package that could easily be split (@pxref{Packages with Multiple " -"Outputs}). Such are the typical issues that @command{guix size} can " -"highlight." +#: doc/guix.texi:7029 +msgid "The @command{guix size} command helps package developers profile the disk usage of packages. It is easy to overlook the impact of an additional dependency added to a package, or the impact of using a single output for a package that could easily be split (@pxref{Packages with Multiple Outputs}). Such are the typical issues that @command{guix size} can highlight." msgstr "" #. type: Plain text -#: doc/guix.texi:6831 -msgid "" -"The command can be passed a package specification such as @code{gcc@@4.8} or " -"@code{guile:debug}, or a file name in the store. Consider this example:" +#: doc/guix.texi:7034 +msgid "The command can be passed one or more package specifications such as @code{gcc@@4.8} or @code{guile:debug}, or a file name in the store. Consider this example:" msgstr "" #. type: example -#: doc/guix.texi:6841 +#: doc/guix.texi:7047 #, no-wrap msgid "" "$ guix size coreutils\n" "store item total self\n" -"/gnu/store/@dots{}-coreutils-8.23 70.0 13.9 19.8%\n" -"/gnu/store/@dots{}-gmp-6.0.0a 55.3 2.5 3.6%\n" -"/gnu/store/@dots{}-acl-2.2.52 53.7 0.5 0.7%\n" -"/gnu/store/@dots{}-attr-2.4.46 53.2 0.3 0.5%\n" -"/gnu/store/@dots{}-gcc-4.8.4-lib 52.9 15.7 22.4%\n" -"/gnu/store/@dots{}-glibc-2.21 37.2 37.2 53.1%\n" +"/gnu/store/@dots{}-gcc-5.5.0-lib 60.4 30.1 38.1%\n" +"/gnu/store/@dots{}-glibc-2.27 30.3 28.8 36.6%\n" +"/gnu/store/@dots{}-coreutils-8.28 78.9 15.0 19.0%\n" +"/gnu/store/@dots{}-gmp-6.1.2 63.1 2.7 3.4%\n" +"/gnu/store/@dots{}-bash-static-4.4.12 1.5 1.5 1.9%\n" +"/gnu/store/@dots{}-acl-2.2.52 61.1 0.4 0.5%\n" +"/gnu/store/@dots{}-attr-2.4.47 60.6 0.2 0.3%\n" +"/gnu/store/@dots{}-libcap-2.25 60.5 0.2 0.2%\n" +"total: 78.9 MiB\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6847 -msgid "" -"The store items listed here constitute the @dfn{transitive closure} of " -"Coreutils---i.e., Coreutils and all its dependencies, recursively---as would " -"be returned by:" +#: doc/guix.texi:7053 +msgid "The store items listed here constitute the @dfn{transitive closure} of Coreutils---i.e., Coreutils and all its dependencies, recursively---as would be returned by:" msgstr "" #. type: example -#: doc/guix.texi:6850 +#: doc/guix.texi:7056 #, no-wrap msgid "$ guix gc -R /gnu/store/@dots{}-coreutils-8.23\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6858 -msgid "" -"Here the output shows three columns next to store items. The first column, " -"labeled ``total'', shows the size in mebibytes (MiB) of the closure of the " -"store item---that is, its own size plus the size of all its dependencies. " -"The next column, labeled ``self'', shows the size of the item itself. The " -"last column shows the ratio of the size of the item itself to the space " -"occupied by all the items listed here." +#: doc/guix.texi:7064 +msgid "Here the output shows three columns next to store items. The first column, labeled ``total'', shows the size in mebibytes (MiB) of the closure of the store item---that is, its own size plus the size of all its dependencies. The next column, labeled ``self'', shows the size of the item itself. The last column shows the ratio of the size of the item itself to the space occupied by all the items listed here." msgstr "" #. type: Plain text -#: doc/guix.texi:6863 -msgid "" -"In this example, we see that the closure of Coreutils weighs in at 70@tie{}" -"MiB, half of which is taken by libc. (That libc represents a large fraction " -"of the closure is not a problem @i{per se} because it is always available on " -"the system anyway.)" +#: doc/guix.texi:7070 +msgid "In this example, we see that the closure of Coreutils weighs in at 79@tie{}MiB, most of which is taken by libc and GCC's run-time support libraries. (That libc and GCC's libraries represent a large fraction of the closure is not a problem @i{per se} because they are always available on the system anyway.)" msgstr "" #. type: Plain text -#: doc/guix.texi:6869 -msgid "" -"When the package passed to @command{guix size} is available in the store, " -"@command{guix size} queries the daemon to determine its dependencies, and " -"measures its size in the store, similar to @command{du -ms --apparent-size} " -"(@pxref{du invocation,,, coreutils, GNU Coreutils})." +#: doc/guix.texi:7079 +msgid "When the package(s) passed to @command{guix size} are available in the store@footnote{More precisely, @command{guix size} looks for the @emph{ungrafted} variant of the given package(s), as returned by @code{guix build @var{package} --no-grafts}. @xref{Security Updates}, for information on grafts.}, @command{guix size} queries the daemon to determine its dependencies, and measures its size in the store, similar to @command{du -ms --apparent-size} (@pxref{du invocation,,, coreutils, GNU Coreutils})." msgstr "" #. type: Plain text -#: doc/guix.texi:6874 -msgid "" -"When the given package is @emph{not} in the store, @command{guix size} " -"reports information based on the available substitutes " -"(@pxref{Substitutes}). This makes it possible it to profile disk usage of " -"store items that are not even on disk, only available remotely." -msgstr "" -"Lorsque le paquet donné n'est @emph{pas} dans le dépôt, @command{guix size} " -"rapporte les informations en se basant sur les substituts disponibles " -"(@pxref{Substituts}). Cela permet de profiler l'utilisation du disque des " -"éléments du dépôt qui ne sont pas sur le disque, mais seulement disponibles " -"à distance." +#: doc/guix.texi:7084 +msgid "When the given packages are @emph{not} in the store, @command{guix size} reports information based on the available substitutes (@pxref{Substitutes}). This makes it possible it to profile disk usage of store items that are not even on disk, only available remotely." +msgstr "Lorsque les paquets donnés ne sont @emph{pas} dans le dépôt, @command{guix size} rapporte les informations en se basant sur les substituts disponibles (@pxref{Substituts}). Cela permet de profiler l'utilisation du disque des éléments du dépôt même s'ils ne sont pas sur le disque, mais disponibles à distance." #. type: Plain text -#: doc/guix.texi:6876 +#: doc/guix.texi:7086 msgid "You can also specify several package names:" msgstr "" #. type: example -#: doc/guix.texi:6886 +#: doc/guix.texi:7096 #, no-wrap msgid "" "$ guix size coreutils grep sed bash\n" @@ -16029,562 +12806,462 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:6892 -msgid "" -"In this example we see that the combination of the four packages takes " -"102.3@tie{}MiB in total, which is much less than the sum of each closure " -"since they have a lot of dependencies in common." +#: doc/guix.texi:7102 +msgid "In this example we see that the combination of the four packages takes 102.3@tie{}MiB in total, which is much less than the sum of each closure since they have a lot of dependencies in common." msgstr "" #. type: Plain text -#: doc/guix.texi:6894 +#: doc/guix.texi:7104 msgid "The available options are:" msgstr "" #. type: table -#: doc/guix.texi:6900 -msgid "" -"Use substitute information from @var{urls}. @xref{client-substitute-urls, " -"the same option for @code{guix build}}." +#: doc/guix.texi:7110 +msgid "Use substitute information from @var{urls}. @xref{client-substitute-urls, the same option for @code{guix build}}." msgstr "" #. type: item -#: doc/guix.texi:6901 +#: doc/guix.texi:7111 #, no-wrap msgid "--sort=@var{key}" msgstr "" #. type: table -#: doc/guix.texi:6903 +#: doc/guix.texi:7113 msgid "Sort lines according to @var{key}, one of the following options:" msgstr "" #. type: item -#: doc/guix.texi:6905 +#: doc/guix.texi:7115 #, no-wrap msgid "self" msgstr "" #. type: table -#: doc/guix.texi:6907 +#: doc/guix.texi:7117 msgid "the size of each item (the default);" msgstr "" #. type: table -#: doc/guix.texi:6909 +#: doc/guix.texi:7119 msgid "the total size of the item's closure." msgstr "" #. type: item -#: doc/guix.texi:6911 +#: doc/guix.texi:7121 #, no-wrap msgid "--map-file=@var{file}" msgstr "" #. type: table -#: doc/guix.texi:6913 +#: doc/guix.texi:7123 msgid "Write a graphical map of disk usage in PNG format to @var{file}." msgstr "" #. type: table -#: doc/guix.texi:6915 +#: doc/guix.texi:7125 msgid "For the example above, the map looks like this:" msgstr "" #. type: table -#: doc/guix.texi:6918 -msgid "" -"@image{images/coreutils-size-map,5in,, map of Coreutils disk usage produced " -"by @command{guix size}}" +#: doc/guix.texi:7128 +msgid "@image{images/coreutils-size-map,5in,, map of Coreutils disk usage produced by @command{guix size}}" msgstr "" #. type: table -#: doc/guix.texi:6923 -msgid "" -"This option requires that @uref{http://wingolog.org/software/guile-" -"charting/, Guile-Charting} be installed and visible in Guile's module search " -"path. When that is not the case, @command{guix size} fails as it tries to " -"load it." +#: doc/guix.texi:7133 +msgid "This option requires that @uref{http://wingolog.org/software/guile-charting/, Guile-Charting} be installed and visible in Guile's module search path. When that is not the case, @command{guix size} fails as it tries to load it." msgstr "" #. type: table -#: doc/guix.texi:6927 +#: doc/guix.texi:7137 msgid "Consider packages for @var{system}---e.g., @code{x86_64-linux}." msgstr "" #. type: section -#: doc/guix.texi:6931 +#: doc/guix.texi:7141 #, no-wrap msgid "Invoking @command{guix graph}" msgstr "" #. type: cindex -#: doc/guix.texi:6933 +#: doc/guix.texi:7143 #, no-wrap msgid "DAG" msgstr "" #. type: command{#1} -#: doc/guix.texi:6934 +#: doc/guix.texi:7144 #, no-wrap msgid "guix graph" msgstr "" #. type: Plain text -#: doc/guix.texi:6948 -msgid "" -"Packages and their dependencies form a @dfn{graph}, specifically a directed " -"acyclic graph (DAG). It can quickly become difficult to have a mental model " -"of the package DAG, so the @command{guix graph} command provides a visual " -"representation of the DAG. By default, @command{guix graph} emits a DAG " -"representation in the input format of @uref{http://www.graphviz.org/, " -"Graphviz}, so its output can be passed directly to the @command{dot} command " -"of Graphviz. It can also emit an HTML page with embedded JavaScript code to " -"display a ``chord diagram'' in a Web browser, using the @uref{https://d3js." -"org/, d3.js} library, or emit Cypher queries to construct a graph in a graph " -"database supporting the @uref{http://www.opencypher.org/, openCypher} query " -"language. The general syntax is:" +#: doc/guix.texi:7158 +msgid "Packages and their dependencies form a @dfn{graph}, specifically a directed acyclic graph (DAG). It can quickly become difficult to have a mental model of the package DAG, so the @command{guix graph} command provides a visual representation of the DAG. By default, @command{guix graph} emits a DAG representation in the input format of @uref{http://www.graphviz.org/, Graphviz}, so its output can be passed directly to the @command{dot} command of Graphviz. It can also emit an HTML page with embedded JavaScript code to display a ``chord diagram'' in a Web browser, using the @uref{https://d3js.org/, d3.js} library, or emit Cypher queries to construct a graph in a graph database supporting the @uref{http://www.opencypher.org/, openCypher} query language. The general syntax is:" msgstr "" #. type: example -#: doc/guix.texi:6951 +#: doc/guix.texi:7161 #, no-wrap msgid "guix graph @var{options} @var{package}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6956 -msgid "" -"For example, the following command generates a PDF file representing the " -"package DAG for the GNU@tie{}Core Utilities, showing its build-time " -"dependencies:" +#: doc/guix.texi:7166 +msgid "For example, the following command generates a PDF file representing the package DAG for the GNU@tie{}Core Utilities, showing its build-time dependencies:" msgstr "" #. type: example -#: doc/guix.texi:6959 +#: doc/guix.texi:7169 #, no-wrap msgid "guix graph coreutils | dot -Tpdf > dag.pdf\n" msgstr "" #. type: Plain text -#: doc/guix.texi:6962 +#: doc/guix.texi:7172 msgid "The output looks like this:" msgstr "" #. type: Plain text -#: doc/guix.texi:6964 -msgid "" -"@image{images/coreutils-graph,2in,,Dependency graph of the GNU Coreutils}" +#: doc/guix.texi:7174 +msgid "@image{images/coreutils-graph,2in,,Dependency graph of the GNU Coreutils}" msgstr "" #. type: Plain text -#: doc/guix.texi:6966 +#: doc/guix.texi:7176 msgid "Nice little graph, no?" msgstr "" #. type: Plain text -#: doc/guix.texi:6972 -msgid "" -"But there is more than one graph! The one above is concise: it is the graph " -"of package objects, omitting implicit inputs such as GCC, libc, grep, etc. " -"It is often useful to have such a concise graph, but sometimes one may want " -"to see more details. @command{guix graph} supports several types of graphs, " -"allowing you to choose the level of detail:" +#: doc/guix.texi:7182 +msgid "But there is more than one graph! The one above is concise: it is the graph of package objects, omitting implicit inputs such as GCC, libc, grep, etc. It is often useful to have such a concise graph, but sometimes one may want to see more details. @command{guix graph} supports several types of graphs, allowing you to choose the level of detail:" msgstr "" #. type: table -#: doc/guix.texi:6978 -msgid "" -"This is the default type used in the example above. It shows the DAG of " -"package objects, excluding implicit dependencies. It is concise, but " -"filters out many details." +#: doc/guix.texi:7188 +msgid "This is the default type used in the example above. It shows the DAG of package objects, excluding implicit dependencies. It is concise, but filters out many details." msgstr "" #. type: item -#: doc/guix.texi:6979 +#: doc/guix.texi:7189 #, no-wrap msgid "reverse-package" msgstr "" #. type: table -#: doc/guix.texi:6981 +#: doc/guix.texi:7191 msgid "This shows the @emph{reverse} DAG of packages. For example:" msgstr "" #. type: example -#: doc/guix.texi:6984 +#: doc/guix.texi:7194 #, no-wrap msgid "guix graph --type=reverse-package ocaml\n" msgstr "" #. type: table -#: doc/guix.texi:6987 +#: doc/guix.texi:7197 msgid "... yields the graph of packages that depend on OCaml." msgstr "" #. type: table -#: doc/guix.texi:6992 -msgid "" -"Note that for core packages this can yield huge graphs. If all you want is " -"to know the number of packages that depend on a given package, use " -"@command{guix refresh --list-dependent} (@pxref{Invoking guix refresh, " -"@option{--list-dependent}})." +#: doc/guix.texi:7202 +msgid "Note that for core packages this can yield huge graphs. If all you want is to know the number of packages that depend on a given package, use @command{guix refresh --list-dependent} (@pxref{Invoking guix refresh, @option{--list-dependent}})." msgstr "" #. type: item -#: doc/guix.texi:6993 +#: doc/guix.texi:7203 #, no-wrap msgid "bag-emerged" msgstr "" #. type: table -#: doc/guix.texi:6995 +#: doc/guix.texi:7205 msgid "This is the package DAG, @emph{including} implicit inputs." msgstr "" #. type: table -#: doc/guix.texi:6997 +#: doc/guix.texi:7207 msgid "For instance, the following command:" msgstr "" #. type: example -#: doc/guix.texi:7000 +#: doc/guix.texi:7210 #, no-wrap msgid "guix graph --type=bag-emerged coreutils | dot -Tpdf > dag.pdf\n" msgstr "" #. type: table -#: doc/guix.texi:7003 +#: doc/guix.texi:7213 msgid "... yields this bigger graph:" msgstr "" #. type: table -#: doc/guix.texi:7005 -msgid "" -"@image{images/coreutils-bag-graph,,5in,Detailed dependency graph of the GNU " -"Coreutils}" +#: doc/guix.texi:7215 +msgid "@image{images/coreutils-bag-graph,,5in,Detailed dependency graph of the GNU Coreutils}" msgstr "" #. type: table -#: doc/guix.texi:7008 -msgid "" -"At the bottom of the graph, we see all the implicit inputs of @var{gnu-build-" -"system} (@pxref{Build Systems, @code{gnu-build-system}})." +#: doc/guix.texi:7218 +msgid "At the bottom of the graph, we see all the implicit inputs of @var{gnu-build-system} (@pxref{Build Systems, @code{gnu-build-system}})." msgstr "" #. type: table -#: doc/guix.texi:7012 -msgid "" -"Now, note that the dependencies of these implicit inputs---that is, the " -"@dfn{bootstrap dependencies} (@pxref{Bootstrapping})---are not shown here, " -"for conciseness." +#: doc/guix.texi:7222 +msgid "Now, note that the dependencies of these implicit inputs---that is, the @dfn{bootstrap dependencies} (@pxref{Bootstrapping})---are not shown here, for conciseness." msgstr "" #. type: item -#: doc/guix.texi:7013 +#: doc/guix.texi:7223 #, no-wrap msgid "bag" msgstr "" #. type: table -#: doc/guix.texi:7016 -msgid "" -"Similar to @code{bag-emerged}, but this time including all the bootstrap " -"dependencies." +#: doc/guix.texi:7226 +msgid "Similar to @code{bag-emerged}, but this time including all the bootstrap dependencies." msgstr "" #. type: item -#: doc/guix.texi:7017 +#: doc/guix.texi:7227 #, no-wrap msgid "bag-with-origins" msgstr "" #. type: table -#: doc/guix.texi:7019 +#: doc/guix.texi:7229 msgid "Similar to @code{bag}, but also showing origins and their dependencies." msgstr "" #. type: table -#: doc/guix.texi:7025 -msgid "" -"This is the most detailed representation: It shows the DAG of derivations " -"(@pxref{Derivations}) and plain store items. Compared to the above " -"representation, many additional nodes are visible, including build scripts, " -"patches, Guile modules, etc." +#: doc/guix.texi:7235 +msgid "This is the most detailed representation: It shows the DAG of derivations (@pxref{Derivations}) and plain store items. Compared to the above representation, many additional nodes are visible, including build scripts, patches, Guile modules, etc." msgstr "" #. type: table -#: doc/guix.texi:7028 -msgid "" -"For this type of graph, it is also possible to pass a @file{.drv} file name " -"instead of a package name, as in:" +#: doc/guix.texi:7238 +msgid "For this type of graph, it is also possible to pass a @file{.drv} file name instead of a package name, as in:" msgstr "" #. type: example -#: doc/guix.texi:7031 +#: doc/guix.texi:7241 #, no-wrap msgid "guix graph -t derivation `guix system build -d my-config.scm`\n" msgstr "" #. type: item -#: doc/guix.texi:7033 +#: doc/guix.texi:7243 #, no-wrap msgid "module" msgstr "module" #. type: table -#: doc/guix.texi:7037 -msgid "" -"This is the graph of @dfn{package modules} (@pxref{Package Modules}). For " -"example, the following command shows the graph for the package module that " -"defines the @code{guile} package:" +#: doc/guix.texi:7247 +msgid "This is the graph of @dfn{package modules} (@pxref{Package Modules}). For example, the following command shows the graph for the package module that defines the @code{guile} package:" msgstr "" #. type: example -#: doc/guix.texi:7040 +#: doc/guix.texi:7250 #, no-wrap msgid "guix graph -t module guile | dot -Tpdf > module-graph.pdf\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7045 -msgid "" -"All the types above correspond to @emph{build-time dependencies}. The " -"following graph type represents the @emph{run-time dependencies}:" +#: doc/guix.texi:7255 +msgid "All the types above correspond to @emph{build-time dependencies}. The following graph type represents the @emph{run-time dependencies}:" msgstr "" #. type: item -#: doc/guix.texi:7047 +#: doc/guix.texi:7257 #, no-wrap msgid "references" msgstr "" #. type: table -#: doc/guix.texi:7050 -msgid "" -"This is the graph of @dfn{references} of a package output, as returned by " -"@command{guix gc --references} (@pxref{Invoking guix gc})." +#: doc/guix.texi:7260 +msgid "This is the graph of @dfn{references} of a package output, as returned by @command{guix gc --references} (@pxref{Invoking guix gc})." msgstr "" #. type: table -#: doc/guix.texi:7053 -msgid "" -"If the given package output is not available in the store, @command{guix " -"graph} attempts to obtain dependency information from substitutes." +#: doc/guix.texi:7263 +msgid "If the given package output is not available in the store, @command{guix graph} attempts to obtain dependency information from substitutes." msgstr "" #. type: table -#: doc/guix.texi:7057 -msgid "" -"Here you can also pass a store file name instead of a package name. For " -"example, the command below produces the reference graph of your profile " -"(which can be big!):" +#: doc/guix.texi:7267 +msgid "Here you can also pass a store file name instead of a package name. For example, the command below produces the reference graph of your profile (which can be big!):" msgstr "" #. type: example -#: doc/guix.texi:7060 +#: doc/guix.texi:7270 #, no-wrap msgid "guix graph -t references `readlink -f ~/.guix-profile`\n" msgstr "" #. type: item -#: doc/guix.texi:7062 +#: doc/guix.texi:7272 #, no-wrap msgid "referrers" msgstr "" #. type: table -#: doc/guix.texi:7065 -msgid "" -"This is the graph of the @dfn{referrers} of a store item, as returned by " -"@command{guix gc --referrers} (@pxref{Invoking guix gc})." +#: doc/guix.texi:7275 +msgid "This is the graph of the @dfn{referrers} of a store item, as returned by @command{guix gc --referrers} (@pxref{Invoking guix gc})." msgstr "" #. type: table -#: doc/guix.texi:7071 -msgid "" -"This relies exclusively on local information from your store. For instance, " -"let us suppose that the current Inkscape is available in 10 profiles on your " -"machine; @command{guix graph -t referrers inkscape} will show a graph rooted " -"at Inkscape and with those 10 profiles linked to it." +#: doc/guix.texi:7281 +msgid "This relies exclusively on local information from your store. For instance, let us suppose that the current Inkscape is available in 10 profiles on your machine; @command{guix graph -t referrers inkscape} will show a graph rooted at Inkscape and with those 10 profiles linked to it." msgstr "" #. type: table -#: doc/guix.texi:7074 -msgid "" -"It can help determine what is preventing a store item from being garbage " -"collected." +#: doc/guix.texi:7284 +msgid "It can help determine what is preventing a store item from being garbage collected." msgstr "" #. type: Plain text -#: doc/guix.texi:7078 +#: doc/guix.texi:7288 msgid "The available options are the following:" msgstr "" #. type: item -#: doc/guix.texi:7080 +#: doc/guix.texi:7290 #, no-wrap msgid "--type=@var{type}" msgstr "" #. type: itemx -#: doc/guix.texi:7081 doc/guix.texi:20603 +#: doc/guix.texi:7291 doc/guix.texi:21087 #, no-wrap msgid "-t @var{type}" msgstr "" #. type: table -#: doc/guix.texi:7084 -msgid "" -"Produce a graph output of @var{type}, where @var{type} must be one of the " -"values listed above." +#: doc/guix.texi:7294 +msgid "Produce a graph output of @var{type}, where @var{type} must be one of the values listed above." msgstr "" #. type: item -#: doc/guix.texi:7085 +#: doc/guix.texi:7295 #, no-wrap msgid "--list-types" msgstr "" #. type: table -#: doc/guix.texi:7087 +#: doc/guix.texi:7297 msgid "List the supported graph types." msgstr "" #. type: item -#: doc/guix.texi:7088 +#: doc/guix.texi:7298 #, no-wrap msgid "--backend=@var{backend}" msgstr "" #. type: itemx -#: doc/guix.texi:7089 +#: doc/guix.texi:7299 #, no-wrap msgid "-b @var{backend}" msgstr "" #. type: table -#: doc/guix.texi:7091 +#: doc/guix.texi:7301 msgid "Produce a graph using the selected @var{backend}." msgstr "" #. type: item -#: doc/guix.texi:7092 +#: doc/guix.texi:7302 #, no-wrap msgid "--list-backends" msgstr "" #. type: table -#: doc/guix.texi:7094 +#: doc/guix.texi:7304 msgid "List the supported graph backends." msgstr "" #. type: table -#: doc/guix.texi:7096 +#: doc/guix.texi:7306 msgid "Currently, the available backends are Graphviz and d3.js." msgstr "" #. type: example -#: doc/guix.texi:7105 +#: doc/guix.texi:7315 #, no-wrap msgid "guix graph -e '(@@@@ (gnu packages commencement) gnu-make-final)'\n" msgstr "" #. type: section -#: doc/guix.texi:7110 +#: doc/guix.texi:7320 #, no-wrap msgid "Invoking @command{guix environment}" msgstr "" #. type: cindex -#: doc/guix.texi:7112 +#: doc/guix.texi:7322 #, no-wrap msgid "reproducible build environments" msgstr "" #. type: cindex -#: doc/guix.texi:7113 +#: doc/guix.texi:7323 #, no-wrap msgid "development environments" msgstr "" #. type: command{#1} -#: doc/guix.texi:7114 +#: doc/guix.texi:7324 #, no-wrap msgid "guix environment" msgstr "" #. type: cindex -#: doc/guix.texi:7115 +#: doc/guix.texi:7325 #, no-wrap msgid "environment, package build environment" msgstr "" #. type: Plain text -#: doc/guix.texi:7121 -msgid "" -"The purpose of @command{guix environment} is to assist hackers in creating " -"reproducible development environments without polluting their package " -"profile. The @command{guix environment} tool takes one or more packages, " -"builds all of their inputs, and creates a shell environment to use them." +#: doc/guix.texi:7331 +msgid "The purpose of @command{guix environment} is to assist hackers in creating reproducible development environments without polluting their package profile. The @command{guix environment} tool takes one or more packages, builds all of their inputs, and creates a shell environment to use them." msgstr "" #. type: example -#: doc/guix.texi:7126 +#: doc/guix.texi:7336 #, no-wrap msgid "guix environment @var{options} @var{package}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7130 -msgid "" -"The following example spawns a new shell set up for the development of " -"GNU@tie{}Guile:" +#: doc/guix.texi:7340 +msgid "The following example spawns a new shell set up for the development of GNU@tie{}Guile:" msgstr "" #. type: example -#: doc/guix.texi:7133 +#: doc/guix.texi:7343 #, no-wrap msgid "guix environment guile\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7150 -msgid "" -"If the needed dependencies are not built yet, @command{guix environment} " -"automatically builds them. The environment of the new shell is an augmented " -"version of the environment that @command{guix environment} was run in. It " -"contains the necessary search paths for building the given package added to " -"the existing environment variables. To create a ``pure'' environment, in " -"which the original environment variables have been unset, use the @code{--" -"pure} option@footnote{Users sometimes wrongfully augment environment " -"variables such as @code{PATH} in their @file{~/.bashrc} file. As a " -"consequence, when @code{guix environment} launches it, Bash may read " -"@file{~/.bashrc}, thereby introducing ``impurities'' in these environment " -"variables. It is an error to define such environment variables in @file{." -"bashrc}; instead, they should be defined in @file{.bash_profile}, which is " -"sourced only by log-in shells. @xref{Bash Startup Files,,, bash, The GNU " -"Bash Reference Manual}, for details on Bash start-up files.}." +#: doc/guix.texi:7360 +msgid "If the needed dependencies are not built yet, @command{guix environment} automatically builds them. The environment of the new shell is an augmented version of the environment that @command{guix environment} was run in. It contains the necessary search paths for building the given package added to the existing environment variables. To create a ``pure'' environment, in which the original environment variables have been unset, use the @code{--pure} option@footnote{Users sometimes wrongfully augment environment variables such as @code{PATH} in their @file{~/.bashrc} file. As a consequence, when @code{guix environment} launches it, Bash may read @file{~/.bashrc}, thereby introducing ``impurities'' in these environment variables. It is an error to define such environment variables in @file{.bashrc}; instead, they should be defined in @file{.bash_profile}, which is sourced only by log-in shells. @xref{Bash Startup Files,,, bash, The GNU Bash Reference Manual}, for details on Bash start-up files.}." msgstr "" #. type: vindex -#: doc/guix.texi:7151 +#: doc/guix.texi:7361 #, no-wrap msgid "GUIX_ENVIRONMENT" msgstr "" #. type: Plain text -#: doc/guix.texi:7157 -msgid "" -"@command{guix environment} defines the @code{GUIX_ENVIRONMENT} variable in " -"the shell it spawns; its value is the file name of the profile of this " -"environment. This allows users to, say, define a specific prompt for " -"development environments in their @file{.bashrc} (@pxref{Bash Startup " -"Files,,, bash, The GNU Bash Reference Manual}):" +#: doc/guix.texi:7367 +msgid "@command{guix environment} defines the @code{GUIX_ENVIRONMENT} variable in the shell it spawns; its value is the file name of the profile of this environment. This allows users to, say, define a specific prompt for development environments in their @file{.bashrc} (@pxref{Bash Startup Files,,, bash, The GNU Bash Reference Manual}):" msgstr "" #. type: example -#: doc/guix.texi:7163 +#: doc/guix.texi:7373 #, no-wrap msgid "" "if [ -n \"$GUIX_ENVIRONMENT\" ]\n" @@ -16594,433 +13271,339 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:7167 +#: doc/guix.texi:7377 msgid "... or to browse the profile:" msgstr "" #. type: example -#: doc/guix.texi:7170 +#: doc/guix.texi:7380 #, no-wrap msgid "$ ls \"$GUIX_ENVIRONMENT/bin\"\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7176 -msgid "" -"Additionally, more than one package may be specified, in which case the " -"union of the inputs for the given packages are used. For example, the " -"command below spawns a shell where all of the dependencies of both Guile and " -"Emacs are available:" +#: doc/guix.texi:7386 +msgid "Additionally, more than one package may be specified, in which case the union of the inputs for the given packages are used. For example, the command below spawns a shell where all of the dependencies of both Guile and Emacs are available:" msgstr "" #. type: example -#: doc/guix.texi:7179 +#: doc/guix.texi:7389 #, no-wrap msgid "guix environment guile emacs\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7184 -msgid "" -"Sometimes an interactive shell session is not desired. An arbitrary command " -"may be invoked by placing the @code{--} token to separate the command from " -"the rest of the arguments:" +#: doc/guix.texi:7394 +msgid "Sometimes an interactive shell session is not desired. An arbitrary command may be invoked by placing the @code{--} token to separate the command from the rest of the arguments:" msgstr "" #. type: example -#: doc/guix.texi:7187 +#: doc/guix.texi:7397 #, no-wrap msgid "guix environment guile -- make -j4\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7193 -msgid "" -"In other situations, it is more convenient to specify the list of packages " -"needed in the environment. For example, the following command runs " -"@command{python} from an environment containing Python@tie{}2.7 and NumPy:" +#: doc/guix.texi:7403 +msgid "In other situations, it is more convenient to specify the list of packages needed in the environment. For example, the following command runs @command{python} from an environment containing Python@tie{}2.7 and NumPy:" msgstr "" #. type: example -#: doc/guix.texi:7196 +#: doc/guix.texi:7406 #, no-wrap msgid "guix environment --ad-hoc python2-numpy python-2.7 -- python\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7207 -msgid "" -"Furthermore, one might want the dependencies of a package and also some " -"additional packages that are not build-time or runtime dependencies, but are " -"useful when developing nonetheless. Because of this, the @code{--ad-hoc} " -"flag is positional. Packages appearing before @code{--ad-hoc} are " -"interpreted as packages whose dependencies will be added to the " -"environment. Packages appearing after are interpreted as packages that will " -"be added to the environment directly. For example, the following command " -"creates a Guix development environment that additionally includes Git and " -"strace:" +#: doc/guix.texi:7417 +msgid "Furthermore, one might want the dependencies of a package and also some additional packages that are not build-time or runtime dependencies, but are useful when developing nonetheless. Because of this, the @code{--ad-hoc} flag is positional. Packages appearing before @code{--ad-hoc} are interpreted as packages whose dependencies will be added to the environment. Packages appearing after are interpreted as packages that will be added to the environment directly. For example, the following command creates a Guix development environment that additionally includes Git and strace:" msgstr "" #. type: example -#: doc/guix.texi:7210 +#: doc/guix.texi:7420 #, no-wrap msgid "guix environment guix --ad-hoc git strace\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7219 -msgid "" -"Sometimes it is desirable to isolate the environment as much as possible, " -"for maximal purity and reproducibility. In particular, when using Guix on a " -"host distro that is not GuixSD, it is desirable to prevent access to @file{/" -"usr/bin} and other system-wide resources from the development environment. " -"For example, the following command spawns a Guile REPL in a ``container'' " -"where only the store and the current working directory are mounted:" +#: doc/guix.texi:7429 +msgid "Sometimes it is desirable to isolate the environment as much as possible, for maximal purity and reproducibility. In particular, when using Guix on a host distro that is not GuixSD, it is desirable to prevent access to @file{/usr/bin} and other system-wide resources from the development environment. For example, the following command spawns a Guile REPL in a ``container'' where only the store and the current working directory are mounted:" msgstr "" #. type: example -#: doc/guix.texi:7222 +#: doc/guix.texi:7432 #, no-wrap msgid "guix environment --ad-hoc --container guile -- guile\n" msgstr "" #. type: quotation -#: doc/guix.texi:7226 +#: doc/guix.texi:7436 msgid "The @code{--container} option requires Linux-libre 3.19 or newer." msgstr "" #. type: Plain text -#: doc/guix.texi:7229 +#: doc/guix.texi:7439 msgid "The available options are summarized below." msgstr "" #. type: cindex -#: doc/guix.texi:7233 +#: doc/guix.texi:7443 #, no-wrap msgid "persistent environment" msgstr "" #. type: cindex -#: doc/guix.texi:7234 +#: doc/guix.texi:7444 #, no-wrap msgid "garbage collector root, for environments" msgstr "" #. type: table -#: doc/guix.texi:7237 -msgid "" -"Make @var{file} a symlink to the profile for this environment, and register " -"it as a garbage collector root." +#: doc/guix.texi:7447 +msgid "Make @var{file} a symlink to the profile for this environment, and register it as a garbage collector root." msgstr "" #. type: table -#: doc/guix.texi:7240 -msgid "" -"This is useful if you want to protect your environment from garbage " -"collection, to make it ``persistent''." +#: doc/guix.texi:7450 +msgid "This is useful if you want to protect your environment from garbage collection, to make it ``persistent''." msgstr "" #. type: table -#: doc/guix.texi:7246 -msgid "" -"When this option is omitted, the environment is protected from garbage " -"collection only for the duration of the @command{guix environment} session. " -"This means that next time you recreate the same environment, you could have " -"to rebuild or re-download packages. @xref{Invoking guix gc}, for more on GC " -"roots." +#: doc/guix.texi:7456 +msgid "When this option is omitted, the environment is protected from garbage collection only for the duration of the @command{guix environment} session. This means that next time you recreate the same environment, you could have to rebuild or re-download packages. @xref{Invoking guix gc}, for more on GC roots." msgstr "" #. type: table -#: doc/guix.texi:7251 -msgid "" -"Create an environment for the package or list of packages that @var{expr} " -"evaluates to." +#: doc/guix.texi:7461 +msgid "Create an environment for the package or list of packages that @var{expr} evaluates to." msgstr "" #. type: table -#: doc/guix.texi:7253 +#: doc/guix.texi:7463 msgid "For example, running:" msgstr "" #. type: example -#: doc/guix.texi:7256 +#: doc/guix.texi:7466 #, no-wrap msgid "guix environment -e '(@@ (gnu packages maths) petsc-openmpi)'\n" msgstr "" #. type: table -#: doc/guix.texi:7260 -msgid "" -"starts a shell with the environment for this specific variant of the PETSc " -"package." +#: doc/guix.texi:7470 +msgid "starts a shell with the environment for this specific variant of the PETSc package." msgstr "" #. type: table -#: doc/guix.texi:7262 +#: doc/guix.texi:7472 msgid "Running:" msgstr "" #. type: example -#: doc/guix.texi:7265 +#: doc/guix.texi:7475 #, no-wrap msgid "guix environment --ad-hoc -e '(@@ (gnu) %base-packages)'\n" msgstr "" #. type: table -#: doc/guix.texi:7268 +#: doc/guix.texi:7478 msgid "starts a shell with all the GuixSD base packages available." msgstr "" #. type: table -#: doc/guix.texi:7271 -msgid "" -"The above commands only use the default output of the given packages. To " -"select other outputs, two element tuples can be specified:" +#: doc/guix.texi:7481 +msgid "The above commands only use the default output of the given packages. To select other outputs, two element tuples can be specified:" msgstr "" #. type: example -#: doc/guix.texi:7274 +#: doc/guix.texi:7484 #, no-wrap msgid "guix environment --ad-hoc -e '(list (@@ (gnu packages bash) bash) \"include\")'\n" msgstr "" #. type: item -#: doc/guix.texi:7276 +#: doc/guix.texi:7486 #, no-wrap msgid "--load=@var{file}" msgstr "" #. type: itemx -#: doc/guix.texi:7277 +#: doc/guix.texi:7487 #, no-wrap msgid "-l @var{file}" msgstr "" #. type: table -#: doc/guix.texi:7280 -msgid "" -"Create an environment for the package or list of packages that the code " -"within @var{file} evaluates to." +#: doc/guix.texi:7490 +msgid "Create an environment for the package or list of packages that the code within @var{file} evaluates to." msgstr "" #. type: example -#: doc/guix.texi:7286 +#: doc/guix.texi:7496 #, no-wrap msgid "@verbatiminclude environment-gdb.scm\n" msgstr "" #. type: table -#: doc/guix.texi:7292 -msgid "" -"Create an environment for the packages contained in the manifest object " -"returned by the Scheme code in @var{file}." +#: doc/guix.texi:7502 +msgid "Create an environment for the packages contained in the manifest object returned by the Scheme code in @var{file}." msgstr "" #. type: table -#: doc/guix.texi:7296 -msgid "" -"This is similar to the same-named option in @command{guix package} " -"(@pxref{profile-manifest, @option{--manifest}}) and uses the same manifest " -"files." +#: doc/guix.texi:7506 +msgid "This is similar to the same-named option in @command{guix package} (@pxref{profile-manifest, @option{--manifest}}) and uses the same manifest files." msgstr "" #. type: item -#: doc/guix.texi:7297 +#: doc/guix.texi:7507 #, no-wrap msgid "--ad-hoc" msgstr "" #. type: table -#: doc/guix.texi:7302 -msgid "" -"Include all specified packages in the resulting environment, as if an @i{ad " -"hoc} package were defined with them as inputs. This option is useful for " -"quickly creating an environment without having to write a package expression " -"to contain the desired inputs." +#: doc/guix.texi:7512 +msgid "Include all specified packages in the resulting environment, as if an @i{ad hoc} package were defined with them as inputs. This option is useful for quickly creating an environment without having to write a package expression to contain the desired inputs." msgstr "" #. type: table -#: doc/guix.texi:7304 +#: doc/guix.texi:7514 msgid "For instance, the command:" msgstr "" #. type: example -#: doc/guix.texi:7307 +#: doc/guix.texi:7517 #, no-wrap msgid "guix environment --ad-hoc guile guile-sdl -- guile\n" msgstr "" #. type: table -#: doc/guix.texi:7311 -msgid "" -"runs @command{guile} in an environment where Guile and Guile-SDL are " -"available." +#: doc/guix.texi:7521 +msgid "runs @command{guile} in an environment where Guile and Guile-SDL are available." msgstr "" #. type: table -#: doc/guix.texi:7316 -msgid "" -"Note that this example implicitly asks for the default output of " -"@code{guile} and @code{guile-sdl}, but it is possible to ask for a specific " -"output---e.g., @code{glib:bin} asks for the @code{bin} output of @code{glib} " -"(@pxref{Packages with Multiple Outputs})." +#: doc/guix.texi:7526 +msgid "Note that this example implicitly asks for the default output of @code{guile} and @code{guile-sdl}, but it is possible to ask for a specific output---e.g., @code{glib:bin} asks for the @code{bin} output of @code{glib} (@pxref{Packages with Multiple Outputs})." msgstr "" #. type: table -#: doc/guix.texi:7322 -msgid "" -"This option may be composed with the default behavior of @command{guix " -"environment}. Packages appearing before @code{--ad-hoc} are interpreted as " -"packages whose dependencies will be added to the environment, the default " -"behavior. Packages appearing after are interpreted as packages that will be " -"added to the environment directly." +#: doc/guix.texi:7532 +msgid "This option may be composed with the default behavior of @command{guix environment}. Packages appearing before @code{--ad-hoc} are interpreted as packages whose dependencies will be added to the environment, the default behavior. Packages appearing after are interpreted as packages that will be added to the environment directly." msgstr "" #. type: item -#: doc/guix.texi:7323 +#: doc/guix.texi:7533 #, no-wrap msgid "--pure" msgstr "" #. type: table -#: doc/guix.texi:7327 -msgid "" -"Unset existing environment variables when building the new environment. " -"This has the effect of creating an environment in which search paths only " -"contain package inputs." +#: doc/guix.texi:7537 +msgid "Unset existing environment variables when building the new environment. This has the effect of creating an environment in which search paths only contain package inputs." msgstr "" #. type: item -#: doc/guix.texi:7328 +#: doc/guix.texi:7538 #, no-wrap msgid "--search-paths" msgstr "" #. type: table -#: doc/guix.texi:7331 -msgid "" -"Display the environment variable definitions that make up the environment." +#: doc/guix.texi:7541 +msgid "Display the environment variable definitions that make up the environment." msgstr "" #. type: table -#: doc/guix.texi:7335 +#: doc/guix.texi:7545 msgid "Attempt to build for @var{system}---e.g., @code{i686-linux}." msgstr "" #. type: item -#: doc/guix.texi:7336 +#: doc/guix.texi:7546 #, no-wrap msgid "--container" msgstr "" #. type: itemx -#: doc/guix.texi:7337 +#: doc/guix.texi:7547 #, no-wrap msgid "-C" msgstr "" #. type: item -#: doc/guix.texi:7338 doc/guix.texi:7849 doc/guix.texi:20552 +#: doc/guix.texi:7548 doc/guix.texi:8059 doc/guix.texi:21036 #, no-wrap msgid "container" msgstr "" #. type: table -#: doc/guix.texi:7346 -msgid "" -"Run @var{command} within an isolated container. The current working " -"directory outside the container is mapped inside the container. " -"Additionally, unless overridden with @code{--user}, a dummy home directory " -"is created that matches the current user's home directory, and @file{/etc/" -"passwd} is configured accordingly. The spawned process runs as the current " -"user outside the container, but has root privileges in the context of the " -"container." +#: doc/guix.texi:7556 +msgid "Run @var{command} within an isolated container. The current working directory outside the container is mapped inside the container. Additionally, unless overridden with @code{--user}, a dummy home directory is created that matches the current user's home directory, and @file{/etc/passwd} is configured accordingly. The spawned process runs as the current user outside the container, but has root privileges in the context of the container." msgstr "" #. type: item -#: doc/guix.texi:7347 +#: doc/guix.texi:7557 #, no-wrap msgid "--network" msgstr "" #. type: itemx -#: doc/guix.texi:7348 +#: doc/guix.texi:7558 #, no-wrap msgid "-N" msgstr "" #. type: table -#: doc/guix.texi:7352 -msgid "" -"For containers, share the network namespace with the host system. " -"Containers created without this flag only have access to the loopback device." +#: doc/guix.texi:7562 +msgid "For containers, share the network namespace with the host system. Containers created without this flag only have access to the loopback device." msgstr "" #. type: item -#: doc/guix.texi:7353 +#: doc/guix.texi:7563 #, no-wrap msgid "--link-profile" msgstr "" #. type: itemx -#: doc/guix.texi:7354 +#: doc/guix.texi:7564 #, no-wrap msgid "-P" msgstr "" #. type: table -#: doc/guix.texi:7361 -msgid "" -"For containers, link the environment profile to @file{~/.guix-profile} " -"within the container. This is equivalent to running the command @command{ln " -"-s $GUIX_ENVIRONMENT ~/.guix-profile} within the container. Linking will " -"fail and abort the environment if the directory already exists, which will " -"certainly be the case if @command{guix environment} was invoked in the " -"user's home directory." +#: doc/guix.texi:7571 +msgid "For containers, link the environment profile to @file{~/.guix-profile} within the container. This is equivalent to running the command @command{ln -s $GUIX_ENVIRONMENT ~/.guix-profile} within the container. Linking will fail and abort the environment if the directory already exists, which will certainly be the case if @command{guix environment} was invoked in the user's home directory." msgstr "" #. type: table -#: doc/guix.texi:7368 -msgid "" -"Certain packages are configured to look in @code{~/.guix-profile} for " -"configuration files and data;@footnote{For example, the @code{fontconfig} " -"package inspects @file{~/.guix-profile/share/fonts} for additional fonts.} " -"@code{--link-profile} allows these programs to behave as expected within the " -"environment." +#: doc/guix.texi:7578 +msgid "Certain packages are configured to look in @code{~/.guix-profile} for configuration files and data;@footnote{For example, the @code{fontconfig} package inspects @file{~/.guix-profile/share/fonts} for additional fonts.} @code{--link-profile} allows these programs to behave as expected within the environment." msgstr "" #. type: item -#: doc/guix.texi:7369 doc/guix.texi:7521 +#: doc/guix.texi:7579 doc/guix.texi:7731 #, no-wrap msgid "--user=@var{user}" msgstr "" #. type: itemx -#: doc/guix.texi:7370 doc/guix.texi:7522 +#: doc/guix.texi:7580 doc/guix.texi:7732 #, no-wrap msgid "-u @var{user}" msgstr "" #. type: table -#: doc/guix.texi:7376 -msgid "" -"For containers, use the username @var{user} in place of the current user. " -"The generated @file{/etc/passwd} entry within the container will contain the " -"name @var{user}; the home directory will be @file{/home/USER}; and no user " -"GECOS data will be copied. @var{user} need not exist on the system." +#: doc/guix.texi:7586 +msgid "For containers, use the username @var{user} in place of the current user. The generated @file{/etc/passwd} entry within the container will contain the name @var{user}; the home directory will be @file{/home/USER}; and no user GECOS data will be copied. @var{user} need not exist on the system." msgstr "" #. type: table -#: doc/guix.texi:7381 -msgid "" -"Additionally, any shared or exposed path (see @code{--share} and @code{--" -"expose} respectively) whose target is within the current user's home " -"directory will be remapped relative to @file{/home/USER}; this includes the " -"automatic mapping of the current working directory." +#: doc/guix.texi:7591 +msgid "Additionally, any shared or exposed path (see @code{--share} and @code{--expose} respectively) whose target is within the current user's home directory will be remapped relative to @file{/home/USER}; this includes the automatic mapping of the current working directory." msgstr "" #. type: example -#: doc/guix.texi:7388 +#: doc/guix.texi:7598 #, no-wrap msgid "" "# will expose paths as /home/foo/wd, /home/foo/test, and /home/foo/target\n" @@ -17031,495 +13614,358 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:7393 -msgid "" -"While this will limit the leaking of user identity through home paths and " -"each of the user fields, this is only one useful component of a broader " -"privacy/anonymity solution---not one in and of itself." +#: doc/guix.texi:7603 +msgid "While this will limit the leaking of user identity through home paths and each of the user fields, this is only one useful component of a broader privacy/anonymity solution---not one in and of itself." msgstr "" #. type: item -#: doc/guix.texi:7394 +#: doc/guix.texi:7604 #, no-wrap msgid "--expose=@var{source}[=@var{target}]" msgstr "" #. type: table -#: doc/guix.texi:7399 -msgid "" -"For containers, expose the file system @var{source} from the host system as " -"the read-only file system @var{target} within the container. If " -"@var{target} is not specified, @var{source} is used as the target mount " -"point in the container." +#: doc/guix.texi:7609 +msgid "For containers, expose the file system @var{source} from the host system as the read-only file system @var{target} within the container. If @var{target} is not specified, @var{source} is used as the target mount point in the container." msgstr "" #. type: table -#: doc/guix.texi:7403 -msgid "" -"The example below spawns a Guile REPL in a container in which the user's " -"home directory is accessible read-only via the @file{/exchange} directory:" +#: doc/guix.texi:7613 +msgid "The example below spawns a Guile REPL in a container in which the user's home directory is accessible read-only via the @file{/exchange} directory:" msgstr "" #. type: example -#: doc/guix.texi:7406 +#: doc/guix.texi:7616 #, no-wrap msgid "guix environment --container --expose=$HOME=/exchange --ad-hoc guile -- guile\n" msgstr "" #. type: item -#: doc/guix.texi:7408 +#: doc/guix.texi:7618 #, no-wrap msgid "--share=@var{source}[=@var{target}]" msgstr "" #. type: table -#: doc/guix.texi:7413 -msgid "" -"For containers, share the file system @var{source} from the host system as " -"the writable file system @var{target} within the container. If @var{target} " -"is not specified, @var{source} is used as the target mount point in the " -"container." +#: doc/guix.texi:7623 +msgid "For containers, share the file system @var{source} from the host system as the writable file system @var{target} within the container. If @var{target} is not specified, @var{source} is used as the target mount point in the container." msgstr "" #. type: table -#: doc/guix.texi:7417 -msgid "" -"The example below spawns a Guile REPL in a container in which the user's " -"home directory is accessible for both reading and writing via the @file{/" -"exchange} directory:" +#: doc/guix.texi:7627 +msgid "The example below spawns a Guile REPL in a container in which the user's home directory is accessible for both reading and writing via the @file{/exchange} directory:" msgstr "" #. type: example -#: doc/guix.texi:7420 +#: doc/guix.texi:7630 #, no-wrap msgid "guix environment --container --share=$HOME=/exchange --ad-hoc guile -- guile\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7426 -msgid "" -"@command{guix environment} also supports all of the common build options " -"that @command{guix build} supports (@pxref{Common Build Options})." +#: doc/guix.texi:7636 +msgid "@command{guix environment} also supports all of the common build options that @command{guix build} supports (@pxref{Common Build Options})." msgstr "" #. type: section -#: doc/guix.texi:7429 +#: doc/guix.texi:7639 #, no-wrap msgid "Invoking @command{guix publish}" msgstr "" #. type: command{#1} -#: doc/guix.texi:7431 +#: doc/guix.texi:7641 #, no-wrap msgid "guix publish" msgstr "" #. type: Plain text -#: doc/guix.texi:7435 -msgid "" -"The purpose of @command{guix publish} is to enable users to easily share " -"their store with others, who can then use it as a substitute server " -"(@pxref{Substitutes})." -msgstr "" -"Le but de @command{guix publish} est de vous permettre de partager " -"facilement votre dépôt avec d'autres personnes qui peuvent ensuite " -"l'utiliser comme serveur de substituts (@pxref{Substituts})." +#: doc/guix.texi:7645 +msgid "The purpose of @command{guix publish} is to enable users to easily share their store with others, who can then use it as a substitute server (@pxref{Substitutes})." +msgstr "Le but de @command{guix publish} est de vous permettre de partager facilement votre dépôt avec d'autres personnes qui peuvent ensuite l'utiliser comme serveur de substituts (@pxref{Substituts})." #. type: Plain text -#: doc/guix.texi:7441 -msgid "" -"When @command{guix publish} runs, it spawns an HTTP server which allows " -"anyone with network access to obtain substitutes from it. This means that " -"any machine running Guix can also act as if it were a build farm, since the " -"HTTP interface is compatible with Hydra, the software behind the @code{hydra." -"gnu.org} build farm." +#: doc/guix.texi:7651 +msgid "When @command{guix publish} runs, it spawns an HTTP server which allows anyone with network access to obtain substitutes from it. This means that any machine running Guix can also act as if it were a build farm, since the HTTP interface is compatible with Hydra, the software behind the @code{hydra.gnu.org} build farm." msgstr "" #. type: Plain text -#: doc/guix.texi:7447 -msgid "" -"For security, each substitute is signed, allowing recipients to check their " -"authenticity and integrity (@pxref{Substitutes}). Because @command{guix " -"publish} uses the signing key of the system, which is only readable by the " -"system administrator, it must be started as root; the @code{--user} option " -"makes it drop root privileges early on." -msgstr "" -"Pour des raisons de sécurité, chaque substitut est signé, ce qui permet aux " -"destinataires de vérifier leur authenticité et leur intégrité " -"(@pxref{Substituts}). Comme @command{guix publish} utilise la clef de " -"signature du système, qui n'est lisible que par l'administrateur système, il " -"doit être lancé en root ; l'option @code{--user} lui fait baisser ses " -"privilèges le plus tôt possible." +#: doc/guix.texi:7657 +msgid "For security, each substitute is signed, allowing recipients to check their authenticity and integrity (@pxref{Substitutes}). Because @command{guix publish} uses the signing key of the system, which is only readable by the system administrator, it must be started as root; the @code{--user} option makes it drop root privileges early on." +msgstr "Pour des raisons de sécurité, chaque substitut est signé, ce qui permet aux destinataires de vérifier leur authenticité et leur intégrité (@pxref{Substituts}). Comme @command{guix publish} utilise la clef de signature du système, qui n'est lisible que par l'administrateur système, il doit être lancé en root ; l'option @code{--user} lui fait baisser ses privilèges le plus tôt possible." #. type: Plain text -#: doc/guix.texi:7451 -msgid "" -"The signing key pair must be generated before @command{guix publish} is " -"launched, using @command{guix archive --generate-key} (@pxref{Invoking guix " -"archive})." +#: doc/guix.texi:7661 +msgid "The signing key pair must be generated before @command{guix publish} is launched, using @command{guix archive --generate-key} (@pxref{Invoking guix archive})." msgstr "" #. type: example -#: doc/guix.texi:7456 +#: doc/guix.texi:7666 #, no-wrap msgid "guix publish @var{options}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7460 -msgid "" -"Running @command{guix publish} without any additional arguments will spawn " -"an HTTP server on port 8080:" +#: doc/guix.texi:7670 +msgid "Running @command{guix publish} without any additional arguments will spawn an HTTP server on port 8080:" msgstr "" #. type: example -#: doc/guix.texi:7463 +#: doc/guix.texi:7673 #, no-wrap msgid "guix publish\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7467 -msgid "" -"Once a publishing server has been authorized (@pxref{Invoking guix " -"archive}), the daemon may download substitutes from it:" +#: doc/guix.texi:7677 +msgid "Once a publishing server has been authorized (@pxref{Invoking guix archive}), the daemon may download substitutes from it:" msgstr "" #. type: example -#: doc/guix.texi:7470 +#: doc/guix.texi:7680 #, no-wrap msgid "guix-daemon --substitute-urls=http://example.org:8080\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7479 -msgid "" -"By default, @command{guix publish} compresses archives on the fly as it " -"serves them. This ``on-the-fly'' mode is convenient in that it requires no " -"setup and is immediately available. However, when serving lots of clients, " -"we recommend using the @option{--cache} option, which enables caching of the " -"archives before they are sent to clients---see below for details. The " -"@command{guix weather} command provides a handy way to check what a server " -"provides (@pxref{Invoking guix weather})." +#: doc/guix.texi:7689 +msgid "By default, @command{guix publish} compresses archives on the fly as it serves them. This ``on-the-fly'' mode is convenient in that it requires no setup and is immediately available. However, when serving lots of clients, we recommend using the @option{--cache} option, which enables caching of the archives before they are sent to clients---see below for details. The @command{guix weather} command provides a handy way to check what a server provides (@pxref{Invoking guix weather})." msgstr "" #. type: Plain text -#: doc/guix.texi:7486 -msgid "" -"As a bonus, @command{guix publish} also serves as a content-addressed mirror " -"for source files referenced in @code{origin} records (@pxref{origin " -"Reference}). For instance, assuming @command{guix publish} is running on " -"@code{example.org}, the following URL returns the raw @file{hello-2.10.tar." -"gz} file with the given SHA256 hash (represented in @code{nix-base32} " -"format, @pxref{Invoking guix hash}):" +#: doc/guix.texi:7696 +msgid "As a bonus, @command{guix publish} also serves as a content-addressed mirror for source files referenced in @code{origin} records (@pxref{origin Reference}). For instance, assuming @command{guix publish} is running on @code{example.org}, the following URL returns the raw @file{hello-2.10.tar.gz} file with the given SHA256 hash (represented in @code{nix-base32} format, @pxref{Invoking guix hash}):" msgstr "" #. type: example -#: doc/guix.texi:7489 +#: doc/guix.texi:7699 #, no-wrap msgid "http://example.org/file/hello-2.10.tar.gz/sha256/0ssi1@dots{}ndq1i\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7493 -msgid "" -"Obviously, these URLs only work for files that are in the store; in other " -"cases, they return 404 (``Not Found'')." +#: doc/guix.texi:7703 +msgid "Obviously, these URLs only work for files that are in the store; in other cases, they return 404 (``Not Found'')." msgstr "" #. type: cindex -#: doc/guix.texi:7494 +#: doc/guix.texi:7704 #, no-wrap msgid "build logs, publication" msgstr "" #. type: Plain text -#: doc/guix.texi:7496 +#: doc/guix.texi:7706 msgid "Build logs are available from @code{/log} URLs like:" msgstr "" #. type: example -#: doc/guix.texi:7499 +#: doc/guix.texi:7709 #, no-wrap msgid "http://example.org/log/gwspk@dots{}-guile-2.2.3\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7509 -msgid "" -"When @command{guix-daemon} is configured to save compressed build logs, as " -"is the case by default (@pxref{Invoking guix-daemon}), @code{/log} URLs " -"return the compressed log as-is, with an appropriate @code{Content-Type} and/" -"or @code{Content-Encoding} header. We recommend running @command{guix-" -"daemon} with @code{--log-compression=gzip} since Web browsers can " -"automatically decompress it, which is not the case with bzip2 compression." +#: doc/guix.texi:7719 +msgid "When @command{guix-daemon} is configured to save compressed build logs, as is the case by default (@pxref{Invoking guix-daemon}), @code{/log} URLs return the compressed log as-is, with an appropriate @code{Content-Type} and/or @code{Content-Encoding} header. We recommend running @command{guix-daemon} with @code{--log-compression=gzip} since Web browsers can automatically decompress it, which is not the case with bzip2 compression." msgstr "" #. type: item -#: doc/guix.texi:7513 +#: doc/guix.texi:7723 #, no-wrap msgid "--port=@var{port}" msgstr "" #. type: itemx -#: doc/guix.texi:7514 +#: doc/guix.texi:7724 #, no-wrap msgid "-p @var{port}" msgstr "" #. type: table -#: doc/guix.texi:7516 +#: doc/guix.texi:7726 msgid "Listen for HTTP requests on @var{port}." msgstr "" #. type: item -#: doc/guix.texi:7517 doc/guix.texi:17032 +#: doc/guix.texi:7727 doc/guix.texi:17516 #, no-wrap msgid "--listen=@var{host}" msgstr "" #. type: table -#: doc/guix.texi:7520 -msgid "" -"Listen on the network interface for @var{host}. The default is to accept " -"connections from any interface." +#: doc/guix.texi:7730 +msgid "Listen on the network interface for @var{host}. The default is to accept connections from any interface." msgstr "" #. type: table -#: doc/guix.texi:7525 -msgid "" -"Change privileges to @var{user} as soon as possible---i.e., once the server " -"socket is open and the signing key has been read." +#: doc/guix.texi:7735 +msgid "Change privileges to @var{user} as soon as possible---i.e., once the server socket is open and the signing key has been read." msgstr "" #. type: item -#: doc/guix.texi:7526 +#: doc/guix.texi:7736 #, no-wrap msgid "--compression[=@var{level}]" msgstr "" #. type: itemx -#: doc/guix.texi:7527 +#: doc/guix.texi:7737 #, no-wrap msgid "-C [@var{level}]" msgstr "" #. type: table -#: doc/guix.texi:7532 -msgid "" -"Compress data using the given @var{level}. When @var{level} is zero, " -"disable compression. The range 1 to 9 corresponds to different gzip " -"compression levels: 1 is the fastest, and 9 is the best (CPU-intensive). " -"The default is 3." +#: doc/guix.texi:7742 +msgid "Compress data using the given @var{level}. When @var{level} is zero, disable compression. The range 1 to 9 corresponds to different gzip compression levels: 1 is the fastest, and 9 is the best (CPU-intensive). The default is 3." msgstr "" #. type: table -#: doc/guix.texi:7541 -msgid "" -"Unless @option{--cache} is used, compression occurs on the fly and the " -"compressed streams are not cached. Thus, to reduce load on the machine that " -"runs @command{guix publish}, it may be a good idea to choose a low " -"compression level, to run @command{guix publish} behind a caching proxy, or " -"to use @option{--cache}. Using @option{--cache} has the advantage that it " -"allows @command{guix publish} to add @code{Content-Length} HTTP header to " -"its responses." +#: doc/guix.texi:7751 +msgid "Unless @option{--cache} is used, compression occurs on the fly and the compressed streams are not cached. Thus, to reduce load on the machine that runs @command{guix publish}, it may be a good idea to choose a low compression level, to run @command{guix publish} behind a caching proxy, or to use @option{--cache}. Using @option{--cache} has the advantage that it allows @command{guix publish} to add @code{Content-Length} HTTP header to its responses." msgstr "" #. type: item -#: doc/guix.texi:7542 +#: doc/guix.texi:7752 #, no-wrap msgid "--cache=@var{directory}" msgstr "" #. type: itemx -#: doc/guix.texi:7543 +#: doc/guix.texi:7753 #, no-wrap msgid "-c @var{directory}" msgstr "" #. type: table -#: doc/guix.texi:7546 -msgid "" -"Cache archives and meta-data (@code{.narinfo} URLs) to @var{directory} and " -"only serve archives that are in cache." +#: doc/guix.texi:7756 +msgid "Cache archives and meta-data (@code{.narinfo} URLs) to @var{directory} and only serve archives that are in cache." msgstr "" #. type: table -#: doc/guix.texi:7554 -msgid "" -"When this option is omitted, archives and meta-data are created on-the-fly. " -"This can reduce the available bandwidth, especially when compression is " -"enabled, since this may become CPU-bound. Another drawback of the default " -"mode is that the length of archives is not known in advance, so " -"@command{guix publish} does not add a @code{Content-Length} HTTP header to " -"its responses, which in turn prevents clients from knowing the amount of " -"data being downloaded." +#: doc/guix.texi:7764 +msgid "When this option is omitted, archives and meta-data are created on-the-fly. This can reduce the available bandwidth, especially when compression is enabled, since this may become CPU-bound. Another drawback of the default mode is that the length of archives is not known in advance, so @command{guix publish} does not add a @code{Content-Length} HTTP header to its responses, which in turn prevents clients from knowing the amount of data being downloaded." msgstr "" #. type: table -#: doc/guix.texi:7562 -msgid "" -"Conversely, when @option{--cache} is used, the first request for a store " -"item (@i{via} a @code{.narinfo} URL) returns 404 and triggers a background " -"process to @dfn{bake} the archive---computing its @code{.narinfo} and " -"compressing the archive, if needed. Once the archive is cached in " -"@var{directory}, subsequent requests succeed and are served directly from " -"the cache, which guarantees that clients get the best possible bandwidth." +#: doc/guix.texi:7772 +msgid "Conversely, when @option{--cache} is used, the first request for a store item (@i{via} a @code{.narinfo} URL) returns 404 and triggers a background process to @dfn{bake} the archive---computing its @code{.narinfo} and compressing the archive, if needed. Once the archive is cached in @var{directory}, subsequent requests succeed and are served directly from the cache, which guarantees that clients get the best possible bandwidth." msgstr "" #. type: table -#: doc/guix.texi:7566 -msgid "" -"The ``baking'' process is performed by worker threads. By default, one " -"thread per CPU core is created, but this can be customized. See @option{--" -"workers} below." +#: doc/guix.texi:7776 +msgid "The ``baking'' process is performed by worker threads. By default, one thread per CPU core is created, but this can be customized. See @option{--workers} below." msgstr "" #. type: table -#: doc/guix.texi:7569 -msgid "" -"When @option{--ttl} is used, cached entries are automatically deleted when " -"they have expired." +#: doc/guix.texi:7779 +msgid "When @option{--ttl} is used, cached entries are automatically deleted when they have expired." msgstr "" #. type: item -#: doc/guix.texi:7570 +#: doc/guix.texi:7780 #, no-wrap msgid "--workers=@var{N}" msgstr "" #. type: table -#: doc/guix.texi:7573 -msgid "" -"When @option{--cache} is used, request the allocation of @var{N} worker " -"threads to ``bake'' archives." +#: doc/guix.texi:7783 +msgid "When @option{--cache} is used, request the allocation of @var{N} worker threads to ``bake'' archives." msgstr "" #. type: item -#: doc/guix.texi:7574 +#: doc/guix.texi:7784 #, no-wrap msgid "--ttl=@var{ttl}" msgstr "" #. type: table -#: doc/guix.texi:7578 -msgid "" -"Produce @code{Cache-Control} HTTP headers that advertise a time-to-live " -"(TTL) of @var{ttl}. @var{ttl} must denote a duration: @code{5d} means 5 " -"days, @code{1m} means 1 month, and so on." +#: doc/guix.texi:7788 +msgid "Produce @code{Cache-Control} HTTP headers that advertise a time-to-live (TTL) of @var{ttl}. @var{ttl} must denote a duration: @code{5d} means 5 days, @code{1m} means 1 month, and so on." msgstr "" #. type: table -#: doc/guix.texi:7583 -msgid "" -"This allows the user's Guix to keep substitute information in cache for " -"@var{ttl}. However, note that @code{guix publish} does not itself guarantee " -"that the store items it provides will indeed remain available for as long as " -"@var{ttl}." +#: doc/guix.texi:7793 +msgid "This allows the user's Guix to keep substitute information in cache for @var{ttl}. However, note that @code{guix publish} does not itself guarantee that the store items it provides will indeed remain available for as long as @var{ttl}." msgstr "" #. type: table -#: doc/guix.texi:7587 -msgid "" -"Additionally, when @option{--cache} is used, cached entries that have not " -"been accessed for @var{ttl} and that no longer have a corresponding item in " -"the store, may be deleted." +#: doc/guix.texi:7797 +msgid "Additionally, when @option{--cache} is used, cached entries that have not been accessed for @var{ttl} and that no longer have a corresponding item in the store, may be deleted." msgstr "" #. type: item -#: doc/guix.texi:7588 +#: doc/guix.texi:7798 #, no-wrap msgid "--nar-path=@var{path}" msgstr "" #. type: table -#: doc/guix.texi:7591 -msgid "" -"Use @var{path} as the prefix for the URLs of ``nar'' files (@pxref{Invoking " -"guix archive, normalized archives})." +#: doc/guix.texi:7801 +msgid "Use @var{path} as the prefix for the URLs of ``nar'' files (@pxref{Invoking guix archive, normalized archives})." msgstr "" #. type: table -#: doc/guix.texi:7595 -msgid "" -"By default, nars are served at a URL such as @code{/nar/gzip/@dots{}-" -"coreutils-8.25}. This option allows you to change the @code{/nar} part to " -"@var{path}." +#: doc/guix.texi:7805 +msgid "By default, nars are served at a URL such as @code{/nar/gzip/@dots{}-coreutils-8.25}. This option allows you to change the @code{/nar} part to @var{path}." msgstr "" #. type: item -#: doc/guix.texi:7596 +#: doc/guix.texi:7806 #, no-wrap msgid "--public-key=@var{file}" msgstr "" #. type: itemx -#: doc/guix.texi:7597 +#: doc/guix.texi:7807 #, no-wrap msgid "--private-key=@var{file}" msgstr "" #. type: table -#: doc/guix.texi:7600 -msgid "" -"Use the specific @var{file}s as the public/private key pair used to sign the " -"store items being published." +#: doc/guix.texi:7810 +msgid "Use the specific @var{file}s as the public/private key pair used to sign the store items being published." msgstr "" #. type: table -#: doc/guix.texi:7607 -msgid "" -"The files must correspond to the same key pair (the private key is used for " -"signing and the public key is merely advertised in the signature metadata). " -"They must contain keys in the canonical s-expression format as produced by " -"@command{guix archive --generate-key} (@pxref{Invoking guix archive}). By " -"default, @file{/etc/guix/signing-key.pub} and @file{/etc/guix/signing-key." -"sec} are used." +#: doc/guix.texi:7817 +msgid "The files must correspond to the same key pair (the private key is used for signing and the public key is merely advertised in the signature metadata). They must contain keys in the canonical s-expression format as produced by @command{guix archive --generate-key} (@pxref{Invoking guix archive}). By default, @file{/etc/guix/signing-key.pub} and @file{/etc/guix/signing-key.sec} are used." msgstr "" #. type: item -#: doc/guix.texi:7608 +#: doc/guix.texi:7818 #, no-wrap msgid "--repl[=@var{port}]" msgstr "" #. type: itemx -#: doc/guix.texi:7609 +#: doc/guix.texi:7819 #, no-wrap msgid "-r [@var{port}]" msgstr "" #. type: table -#: doc/guix.texi:7613 -msgid "" -"Spawn a Guile REPL server (@pxref{REPL Servers,,, guile, GNU Guile Reference " -"Manual}) on @var{port} (37146 by default). This is used primarily for " -"debugging a running @command{guix publish} server." +#: doc/guix.texi:7823 +msgid "Spawn a Guile REPL server (@pxref{REPL Servers,,, guile, GNU Guile Reference Manual}) on @var{port} (37146 by default). This is used primarily for debugging a running @command{guix publish} server." msgstr "" #. type: Plain text -#: doc/guix.texi:7619 -msgid "" -"Enabling @command{guix publish} on a GuixSD system is a one-liner: just " -"instantiate a @code{guix-publish-service-type} service in the " -"@code{services} field of the @code{operating-system} declaration " -"(@pxref{guix-publish-service-type, @code{guix-publish-service-type}})." +#: doc/guix.texi:7829 +msgid "Enabling @command{guix publish} on a GuixSD system is a one-liner: just instantiate a @code{guix-publish-service-type} service in the @code{services} field of the @code{operating-system} declaration (@pxref{guix-publish-service-type, @code{guix-publish-service-type}})." msgstr "" #. type: Plain text -#: doc/guix.texi:7622 -msgid "" -"If you are instead running Guix on a ``foreign distro'', follow these " -"instructions:”" +#: doc/guix.texi:7832 +msgid "If you are instead running Guix on a ``foreign distro'', follow these instructions:”" msgstr "" #. type: itemize -#: doc/guix.texi:7626 +#: doc/guix.texi:7836 msgid "If your host distro uses the systemd init system:" msgstr "" #. type: example -#: doc/guix.texi:7631 +#: doc/guix.texi:7841 #, no-wrap msgid "" "# ln -s ~root/.guix-profile/lib/systemd/system/guix-publish.service \\\n" @@ -17528,7 +13974,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:7639 +#: doc/guix.texi:7849 #, no-wrap msgid "" "# ln -s ~root/.guix-profile/lib/upstart/system/guix-publish.conf /etc/init/\n" @@ -17536,80 +13982,56 @@ msgid "" msgstr "" #. type: itemize -#: doc/guix.texi:7643 +#: doc/guix.texi:7853 msgid "Otherwise, proceed similarly with your distro's init system." msgstr "" #. type: section -#: doc/guix.texi:7646 +#: doc/guix.texi:7856 #, no-wrap msgid "Invoking @command{guix challenge}" msgstr "" #. type: cindex -#: doc/guix.texi:7649 +#: doc/guix.texi:7859 #, no-wrap msgid "verifiable builds" msgstr "" #. type: command{#1} -#: doc/guix.texi:7650 +#: doc/guix.texi:7860 #, no-wrap msgid "guix challenge" msgstr "" #. type: cindex -#: doc/guix.texi:7651 +#: doc/guix.texi:7861 #, no-wrap msgid "challenge" msgstr "" #. type: Plain text -#: doc/guix.texi:7656 -msgid "" -"Do the binaries provided by this server really correspond to the source code " -"it claims to build? Is a package build process deterministic? These are the " -"questions the @command{guix challenge} command attempts to answer." +#: doc/guix.texi:7866 +msgid "Do the binaries provided by this server really correspond to the source code it claims to build? Is a package build process deterministic? These are the questions the @command{guix challenge} command attempts to answer." msgstr "" #. type: Plain text -#: doc/guix.texi:7664 -msgid "" -"The former is obviously an important question: Before using a substitute " -"server (@pxref{Substitutes}), one had better @emph{verify} that it provides " -"the right binaries, and thus @emph{challenge} it. The latter is what " -"enables the former: If package builds are deterministic, then independent " -"builds of the package should yield the exact same result, bit for bit; if a " -"server provides a binary different from the one obtained locally, it may be " -"either corrupt or malicious." -msgstr "" -"La première question est évidemment importante : avant d'utiliser un serveur " -"de substituts (@pxref{Substituts}), il vaut mieux @emph{vérifier} qu'il " -"fournit les bons binaires et donc le @emph{défier}. La deuxième est ce qui " -"permet la première : si les constructions des paquets sont déterministes " -"alors des constructions indépendantes du paquet devraient donner le même " -"résultat, bit à bit ; si un serveur fournit un binaire différent de celui " -"obtenu localement, il peut être soit corrompu, soit malveillant." +#: doc/guix.texi:7874 +msgid "The former is obviously an important question: Before using a substitute server (@pxref{Substitutes}), one had better @emph{verify} that it provides the right binaries, and thus @emph{challenge} it. The latter is what enables the former: If package builds are deterministic, then independent builds of the package should yield the exact same result, bit for bit; if a server provides a binary different from the one obtained locally, it may be either corrupt or malicious." +msgstr "La première question est évidemment importante : avant d'utiliser un serveur de substituts (@pxref{Substituts}), il vaut mieux @emph{vérifier} qu'il fournit les bons binaires et donc le @emph{défier}. La deuxième est ce qui permet la première : si les constructions des paquets sont déterministes alors des constructions indépendantes du paquet devraient donner le même résultat, bit à bit ; si un serveur fournit un binaire différent de celui obtenu localement, il peut être soit corrompu, soit malveillant." #. type: Plain text -#: doc/guix.texi:7673 -msgid "" -"We know that the hash that shows up in @file{/gnu/store} file names is the " -"hash of all the inputs of the process that built the file or directory---" -"compilers, libraries, build scripts, etc. (@pxref{Introduction}). Assuming " -"deterministic build processes, one store file name should map to exactly one " -"build output. @command{guix challenge} checks whether there is, indeed, a " -"single mapping by comparing the build outputs of several independent builds " -"of any given store item." +#: doc/guix.texi:7883 +msgid "We know that the hash that shows up in @file{/gnu/store} file names is the hash of all the inputs of the process that built the file or directory---compilers, libraries, build scripts, etc. (@pxref{Introduction}). Assuming deterministic build processes, one store file name should map to exactly one build output. @command{guix challenge} checks whether there is, indeed, a single mapping by comparing the build outputs of several independent builds of any given store item." msgstr "" #. type: Plain text -#: doc/guix.texi:7675 +#: doc/guix.texi:7885 msgid "The command output looks like this:" msgstr "" #. type: smallexample -#: doc/guix.texi:7692 +#: doc/guix.texi:7902 #, no-wrap msgid "" "$ guix challenge --substitute-urls=\"https://hydra.gnu.org https://guix.example.org\"\n" @@ -17631,7 +14053,7 @@ msgid "" msgstr "" #. type: smallexample -#: doc/guix.texi:7694 +#: doc/guix.texi:7904 #, no-wrap msgid "" "@dots{}\n" @@ -17639,7 +14061,7 @@ msgid "" msgstr "" #. type: smallexample -#: doc/guix.texi:7699 +#: doc/guix.texi:7909 #, no-wrap msgid "" "6,406 store items were analyzed:\n" @@ -17649,44 +14071,28 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:7707 -msgid "" -"In this example, @command{guix challenge} first scans the store to determine " -"the set of locally-built derivations---as opposed to store items that were " -"downloaded from a substitute server---and then queries all the substitute " -"servers. It then reports those store items for which the servers obtained a " -"result different from the local build." +#: doc/guix.texi:7917 +msgid "In this example, @command{guix challenge} first scans the store to determine the set of locally-built derivations---as opposed to store items that were downloaded from a substitute server---and then queries all the substitute servers. It then reports those store items for which the servers obtained a result different from the local build." msgstr "" #. type: cindex -#: doc/guix.texi:7708 +#: doc/guix.texi:7918 #, no-wrap msgid "non-determinism, in package builds" msgstr "" #. type: Plain text -#: doc/guix.texi:7719 -msgid "" -"As an example, @code{guix.example.org} always gets a different answer. " -"Conversely, @code{hydra.gnu.org} agrees with local builds, except in the " -"case of Git. This might indicate that the build process of Git is non-" -"deterministic, meaning that its output varies as a function of various " -"things that Guix does not fully control, in spite of building packages in " -"isolated environments (@pxref{Features}). Most common sources of non-" -"determinism include the addition of timestamps in build results, the " -"inclusion of random numbers, and directory listings sorted by inode number. " -"See @uref{https://reproducible-builds.org/docs/}, for more information." +#: doc/guix.texi:7929 +msgid "As an example, @code{guix.example.org} always gets a different answer. Conversely, @code{hydra.gnu.org} agrees with local builds, except in the case of Git. This might indicate that the build process of Git is non-deterministic, meaning that its output varies as a function of various things that Guix does not fully control, in spite of building packages in isolated environments (@pxref{Features}). Most common sources of non-determinism include the addition of timestamps in build results, the inclusion of random numbers, and directory listings sorted by inode number. See @uref{https://reproducible-builds.org/docs/}, for more information." msgstr "" #. type: Plain text -#: doc/guix.texi:7722 -msgid "" -"To find out what is wrong with this Git binary, we can do something along " -"these lines (@pxref{Invoking guix archive}):" +#: doc/guix.texi:7932 +msgid "To find out what is wrong with this Git binary, we can do something along these lines (@pxref{Invoking guix archive}):" msgstr "" #. type: example -#: doc/guix.texi:7727 +#: doc/guix.texi:7937 #, no-wrap msgid "" "$ wget -q -O - https://hydra.gnu.org/nar/@dots{}-git-2.5.0 \\\n" @@ -17695,131 +14101,100 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:7736 -msgid "" -"This command shows the difference between the files resulting from the local " -"build, and the files resulting from the build on @code{hydra.gnu.org} " -"(@pxref{Overview, Comparing and Merging Files,, diffutils, Comparing and " -"Merging Files}). The @command{diff} command works great for text files. " -"When binary files differ, a better option is @uref{https://diffoscope.org/, " -"Diffoscope}, a tool that helps visualize differences for all kinds of files." +#: doc/guix.texi:7946 +msgid "This command shows the difference between the files resulting from the local build, and the files resulting from the build on @code{hydra.gnu.org} (@pxref{Overview, Comparing and Merging Files,, diffutils, Comparing and Merging Files}). The @command{diff} command works great for text files. When binary files differ, a better option is @uref{https://diffoscope.org/, Diffoscope}, a tool that helps visualize differences for all kinds of files." msgstr "" #. type: Plain text -#: doc/guix.texi:7744 -msgid "" -"Once you have done that work, you can tell whether the differences are due " -"to a non-deterministic build process or to a malicious server. We try hard " -"to remove sources of non-determinism in packages to make it easier to verify " -"substitutes, but of course, this is a process that involves not just Guix, " -"but a large part of the free software community. In the meantime, " -"@command{guix challenge} is one tool to help address the problem." +#: doc/guix.texi:7954 +msgid "Once you have done that work, you can tell whether the differences are due to a non-deterministic build process or to a malicious server. We try hard to remove sources of non-determinism in packages to make it easier to verify substitutes, but of course, this is a process that involves not just Guix, but a large part of the free software community. In the meantime, @command{guix challenge} is one tool to help address the problem." msgstr "" #. type: Plain text -#: doc/guix.texi:7748 -msgid "" -"If you are writing packages for Guix, you are encouraged to check whether " -"@code{hydra.gnu.org} and other substitute servers obtain the same build " -"result as you did with:" +#: doc/guix.texi:7958 +msgid "If you are writing packages for Guix, you are encouraged to check whether @code{hydra.gnu.org} and other substitute servers obtain the same build result as you did with:" msgstr "" #. type: example -#: doc/guix.texi:7751 +#: doc/guix.texi:7961 #, no-wrap msgid "$ guix challenge @var{package}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7756 -msgid "" -"where @var{package} is a package specification such as @code{guile@@2.0} or " -"@code{glibc:debug}." +#: doc/guix.texi:7966 +msgid "where @var{package} is a package specification such as @code{guile@@2.0} or @code{glibc:debug}." msgstr "" #. type: example -#: doc/guix.texi:7761 +#: doc/guix.texi:7971 #, no-wrap msgid "guix challenge @var{options} [@var{packages}@dots{}]\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7768 -msgid "" -"When a difference is found between the hash of a locally-built item and that " -"of a server-provided substitute, or among substitutes provided by different " -"servers, the command displays it as in the example above and its exit code " -"is 2 (other non-zero exit codes denote other kinds of errors.)" +#: doc/guix.texi:7978 +msgid "When a difference is found between the hash of a locally-built item and that of a server-provided substitute, or among substitutes provided by different servers, the command displays it as in the example above and its exit code is 2 (other non-zero exit codes denote other kinds of errors.)" msgstr "" #. type: Plain text -#: doc/guix.texi:7770 +#: doc/guix.texi:7980 msgid "The one option that matters is:" msgstr "" #. type: table -#: doc/guix.texi:7776 -msgid "" -"Consider @var{urls} the whitespace-separated list of substitute source URLs " -"to compare to." +#: doc/guix.texi:7986 +msgid "Consider @var{urls} the whitespace-separated list of substitute source URLs to compare to." msgstr "" #. type: itemx -#: doc/guix.texi:7778 +#: doc/guix.texi:7988 #, no-wrap msgid "-v" msgstr "" #. type: table -#: doc/guix.texi:7781 -msgid "" -"Show details about matches (identical contents) in addition to information " -"about mismatches." +#: doc/guix.texi:7991 +msgid "Show details about matches (identical contents) in addition to information about mismatches." msgstr "" #. type: section -#: doc/guix.texi:7785 +#: doc/guix.texi:7995 #, no-wrap msgid "Invoking @command{guix copy}" msgstr "" #. type: cindex -#: doc/guix.texi:7787 +#: doc/guix.texi:7997 #, no-wrap msgid "copy, of store items, over SSH" msgstr "" #. type: cindex -#: doc/guix.texi:7788 +#: doc/guix.texi:7998 #, no-wrap msgid "SSH, copy of store items" msgstr "" #. type: cindex -#: doc/guix.texi:7789 +#: doc/guix.texi:7999 #, no-wrap msgid "sharing store items across machines" msgstr "" #. type: cindex -#: doc/guix.texi:7790 +#: doc/guix.texi:8000 #, no-wrap msgid "transferring store items across machines" msgstr "" #. type: Plain text -#: doc/guix.texi:7797 -msgid "" -"The @command{guix copy} command copies items from the store of one machine " -"to that of another machine over a secure shell (SSH) " -"connection@footnote{This command is available only when Guile-SSH was " -"found. @xref{Requirements}, for details.}. For example, the following " -"command copies the @code{coreutils} package, the user's profile, and all " -"their dependencies over to @var{host}, logged in as @var{user}:" +#: doc/guix.texi:8007 +msgid "The @command{guix copy} command copies items from the store of one machine to that of another machine over a secure shell (SSH) connection@footnote{This command is available only when Guile-SSH was found. @xref{Requirements}, for details.}. For example, the following command copies the @code{coreutils} package, the user's profile, and all their dependencies over to @var{host}, logged in as @var{user}:" msgstr "" #. type: example -#: doc/guix.texi:7801 +#: doc/guix.texi:8011 #, no-wrap msgid "" "guix copy --to=@var{user}@@@var{host} \\\n" @@ -17827,243 +14202,192 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:7805 -msgid "" -"If some of the items to be copied are already present on @var{host}, they " -"are not actually sent." +#: doc/guix.texi:8015 +msgid "If some of the items to be copied are already present on @var{host}, they are not actually sent." msgstr "" #. type: Plain text -#: doc/guix.texi:7808 -msgid "" -"The command below retrieves @code{libreoffice} and @code{gimp} from " -"@var{host}, assuming they are available there:" +#: doc/guix.texi:8018 +msgid "The command below retrieves @code{libreoffice} and @code{gimp} from @var{host}, assuming they are available there:" msgstr "" #. type: example -#: doc/guix.texi:7811 +#: doc/guix.texi:8021 #, no-wrap msgid "guix copy --from=@var{host} libreoffice gimp\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7816 -msgid "" -"The SSH connection is established using the Guile-SSH client, which is " -"compatible with OpenSSH: it honors @file{~/.ssh/known_hosts} and @file{~/." -"ssh/config}, and uses the SSH agent for authentication." +#: doc/guix.texi:8026 +msgid "The SSH connection is established using the Guile-SSH client, which is compatible with OpenSSH: it honors @file{~/.ssh/known_hosts} and @file{~/.ssh/config}, and uses the SSH agent for authentication." msgstr "" #. type: Plain text -#: doc/guix.texi:7822 -msgid "" -"The key used to sign items that are sent must be accepted by the remote " -"machine. Likewise, the key used by the remote machine to sign items you are " -"retrieving must be in @file{/etc/guix/acl} so it is accepted by your own " -"daemon. @xref{Invoking guix archive}, for more information about store item " -"authentication." +#: doc/guix.texi:8032 +msgid "The key used to sign items that are sent must be accepted by the remote machine. Likewise, the key used by the remote machine to sign items you are retrieving must be in @file{/etc/guix/acl} so it is accepted by your own daemon. @xref{Invoking guix archive}, for more information about store item authentication." msgstr "" #. type: example -#: doc/guix.texi:7827 +#: doc/guix.texi:8037 #, no-wrap msgid "guix copy [--to=@var{spec}|--from=@var{spec}] @var{items}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7830 +#: doc/guix.texi:8040 msgid "You must always specify one of the following options:" msgstr "" #. type: item -#: doc/guix.texi:7832 +#: doc/guix.texi:8042 #, no-wrap msgid "--to=@var{spec}" msgstr "" #. type: itemx -#: doc/guix.texi:7833 +#: doc/guix.texi:8043 #, no-wrap msgid "--from=@var{spec}" msgstr "" #. type: table -#: doc/guix.texi:7837 -msgid "" -"Specify the host to send to or receive from. @var{spec} must be an SSH spec " -"such as @code{example.org}, @code{charlie@@example.org}, or " -"@code{charlie@@example.org:2222}." +#: doc/guix.texi:8047 +msgid "Specify the host to send to or receive from. @var{spec} must be an SSH spec such as @code{example.org}, @code{charlie@@example.org}, or @code{charlie@@example.org:2222}." msgstr "" #. type: Plain text -#: doc/guix.texi:7841 -msgid "" -"The @var{items} can be either package names, such as @code{gimp}, or store " -"items, such as @file{/gnu/store/@dots{}-idutils-4.6}." +#: doc/guix.texi:8051 +msgid "The @var{items} can be either package names, such as @code{gimp}, or store items, such as @file{/gnu/store/@dots{}-idutils-4.6}." msgstr "" #. type: Plain text -#: doc/guix.texi:7845 -msgid "" -"When specifying the name of a package to send, it is first built if needed, " -"unless @option{--dry-run} was specified. Common build options are supported " -"(@pxref{Common Build Options})." +#: doc/guix.texi:8055 +msgid "When specifying the name of a package to send, it is first built if needed, unless @option{--dry-run} was specified. Common build options are supported (@pxref{Common Build Options})." msgstr "" #. type: section -#: doc/guix.texi:7848 +#: doc/guix.texi:8058 #, no-wrap msgid "Invoking @command{guix container}" msgstr "" #. type: command{#1} -#: doc/guix.texi:7850 +#: doc/guix.texi:8060 #, no-wrap msgid "guix container" msgstr "" #. type: quotation -#: doc/guix.texi:7854 -msgid "" -"As of version @value{VERSION}, this tool is experimental. The interface is " -"subject to radical change in the future." +#: doc/guix.texi:8064 +msgid "As of version @value{VERSION}, this tool is experimental. The interface is subject to radical change in the future." msgstr "" #. type: Plain text -#: doc/guix.texi:7861 -msgid "" -"The purpose of @command{guix container} is to manipulate processes running " -"within an isolated environment, commonly known as a ``container'', typically " -"created by the @command{guix environment} (@pxref{Invoking guix " -"environment}) and @command{guix system container} (@pxref{Invoking guix " -"system}) commands." +#: doc/guix.texi:8071 +msgid "The purpose of @command{guix container} is to manipulate processes running within an isolated environment, commonly known as a ``container'', typically created by the @command{guix environment} (@pxref{Invoking guix environment}) and @command{guix system container} (@pxref{Invoking guix system}) commands." msgstr "" #. type: example -#: doc/guix.texi:7866 +#: doc/guix.texi:8076 #, no-wrap msgid "guix container @var{action} @var{options}@dots{}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:7870 -msgid "" -"@var{action} specifies the operation to perform with a container, and " -"@var{options} specifies the context-specific arguments for the action." +#: doc/guix.texi:8080 +msgid "@var{action} specifies the operation to perform with a container, and @var{options} specifies the context-specific arguments for the action." msgstr "" #. type: Plain text -#: doc/guix.texi:7872 +#: doc/guix.texi:8082 msgid "The following actions are available:" msgstr "" #. type: item -#: doc/guix.texi:7874 +#: doc/guix.texi:8084 #, no-wrap msgid "exec" msgstr "" #. type: table -#: doc/guix.texi:7876 +#: doc/guix.texi:8086 msgid "Execute a command within the context of a running container." msgstr "" #. type: table -#: doc/guix.texi:7878 +#: doc/guix.texi:8088 msgid "The syntax is:" msgstr "" #. type: example -#: doc/guix.texi:7881 +#: doc/guix.texi:8091 #, no-wrap msgid "guix container exec @var{pid} @var{program} @var{arguments}@dots{}\n" msgstr "" #. type: table -#: doc/guix.texi:7887 -msgid "" -"@var{pid} specifies the process ID of the running container. @var{program} " -"specifies an executable file name within the root file system of the " -"container. @var{arguments} are the additional options that will be passed " -"to @var{program}." +#: doc/guix.texi:8097 +msgid "@var{pid} specifies the process ID of the running container. @var{program} specifies an executable file name within the root file system of the container. @var{arguments} are the additional options that will be passed to @var{program}." msgstr "" #. type: table -#: doc/guix.texi:7891 -msgid "" -"The following command launches an interactive login shell inside a GuixSD " -"container, started by @command{guix system container}, and whose process ID " -"is 9001:" +#: doc/guix.texi:8101 +msgid "The following command launches an interactive login shell inside a GuixSD container, started by @command{guix system container}, and whose process ID is 9001:" msgstr "" #. type: example -#: doc/guix.texi:7894 +#: doc/guix.texi:8104 #, no-wrap msgid "guix container exec 9001 /run/current-system/profile/bin/bash --login\n" msgstr "" #. type: table -#: doc/guix.texi:7898 -msgid "" -"Note that the @var{pid} cannot be the parent process of a container. It " -"must be PID 1 of the container or one of its child processes." +#: doc/guix.texi:8108 +msgid "Note that the @var{pid} cannot be the parent process of a container. It must be PID 1 of the container or one of its child processes." msgstr "" #. type: section -#: doc/guix.texi:7902 +#: doc/guix.texi:8112 #, no-wrap msgid "Invoking @command{guix weather}" msgstr "" #. type: Plain text -#: doc/guix.texi:7911 -msgid "" -"Occasionally you're grumpy because substitutes are lacking and you end up " -"building packages by yourself (@pxref{Substitutes}). The @command{guix " -"weather} command reports on substitute availability on the specified servers " -"so you can have an idea of whether you'll be grumpy today. It can sometimes " -"be useful info as a user, but it is primarily useful to people running " -"@command{guix publish} (@pxref{Invoking guix publish})." -msgstr "" -"Vous pouvez parfois grogner lorsque les substituts ne sont pas disponibles " -"et que vous devez construire les paquets vous-même (@pxref{Substituts}). La " -"commande @command{guix weather} rapporte la disponibilité des substituts sur " -"les serveurs spécifiés pour que vous sachiez si vous allez raller " -"aujourd'hui. Cela peut parfois être une information utile pour les " -"utilisateurs, mais elle est surtout utile pour les personnes qui font " -"tourner @command{guix publish} (@pxref{Invoking guix publish})." +#: doc/guix.texi:8121 +msgid "Occasionally you're grumpy because substitutes are lacking and you end up building packages by yourself (@pxref{Substitutes}). The @command{guix weather} command reports on substitute availability on the specified servers so you can have an idea of whether you'll be grumpy today. It can sometimes be useful info as a user, but it is primarily useful to people running @command{guix publish} (@pxref{Invoking guix publish})." +msgstr "Vous pouvez parfois grogner lorsque les substituts ne sont pas disponibles et que vous devez construire les paquets vous-même (@pxref{Substituts}). La commande @command{guix weather} rapporte la disponibilité des substituts sur les serveurs spécifiés pour que vous sachiez si vous allez raller aujourd'hui. Cela peut parfois être une information utile pour les utilisateurs, mais elle est surtout utile pour les personnes qui font tourner @command{guix publish} (@pxref{Invoking guix publish})." #. type: cindex -#: doc/guix.texi:7912 +#: doc/guix.texi:8122 #, no-wrap msgid "statistics, for substitutes" msgstr "" #. type: cindex -#: doc/guix.texi:7913 +#: doc/guix.texi:8123 #, no-wrap msgid "availability of substitutes" msgstr "" #. type: cindex -#: doc/guix.texi:7914 +#: doc/guix.texi:8124 #, no-wrap msgid "substitute availability" msgstr "" #. type: cindex -#: doc/guix.texi:7915 +#: doc/guix.texi:8125 #, no-wrap msgid "weather, substitute availability" msgstr "" #. type: Plain text -#: doc/guix.texi:7917 +#: doc/guix.texi:8127 msgid "Here's a sample run:" msgstr "" #. type: example -#: doc/guix.texi:7929 +#: doc/guix.texi:8139 #, no-wrap msgid "" "$ guix weather --substitute-urls=https://guix.example.org\n" @@ -18080,7 +14404,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:7939 +#: doc/guix.texi:8149 #, no-wrap msgid "" " 9.8% (342 out of 3,470) of the missing items are queued\n" @@ -18095,374 +14419,258 @@ msgid "" msgstr "" #. type: cindex -#: doc/guix.texi:7941 +#: doc/guix.texi:8151 #, no-wrap msgid "continuous integration, statistics" msgstr "" #. type: Plain text -#: doc/guix.texi:7950 -msgid "" -"As you can see, it reports the fraction of all the packages for which " -"substitutes are available on the server---regardless of whether substitutes " -"are enabled, and regardless of whether this server's signing key is " -"authorized. It also reports the size of the compressed archives (``nars'') " -"provided by the server, the size the corresponding store items occupy in the " -"store (assuming deduplication is turned off), and the server's throughput. " -"The second part gives continuous integration (CI) statistics, if the server " -"supports it." +#: doc/guix.texi:8160 +msgid "As you can see, it reports the fraction of all the packages for which substitutes are available on the server---regardless of whether substitutes are enabled, and regardless of whether this server's signing key is authorized. It also reports the size of the compressed archives (``nars'') provided by the server, the size the corresponding store items occupy in the store (assuming deduplication is turned off), and the server's throughput. The second part gives continuous integration (CI) statistics, if the server supports it." msgstr "" #. type: Plain text -#: doc/guix.texi:7956 -msgid "" -"To achieve that, @command{guix weather} queries over HTTP(S) meta-data " -"(@dfn{narinfos}) for all the relevant store items. Like @command{guix " -"challenge}, it ignores signatures on those substitutes, which is innocuous " -"since the command only gathers statistics and cannot install those " -"substitutes." +#: doc/guix.texi:8166 +msgid "To achieve that, @command{guix weather} queries over HTTP(S) meta-data (@dfn{narinfos}) for all the relevant store items. Like @command{guix challenge}, it ignores signatures on those substitutes, which is innocuous since the command only gathers statistics and cannot install those substitutes." msgstr "" #. type: Plain text -#: doc/guix.texi:7959 -msgid "" -"Among other things, it is possible to query specific system types and " -"specific package sets. The available options are listed below." +#: doc/guix.texi:8169 +msgid "Among other things, it is possible to query specific system types and specific package sets. The available options are listed below." msgstr "" #. type: table -#: doc/guix.texi:7965 -msgid "" -"@var{urls} is the space-separated list of substitute server URLs to query. " -"When this option is omitted, the default set of substitute servers is " -"queried." +#: doc/guix.texi:8175 +msgid "@var{urls} is the space-separated list of substitute server URLs to query. When this option is omitted, the default set of substitute servers is queried." msgstr "" #. type: table -#: doc/guix.texi:7971 -msgid "" -"Query substitutes for @var{system}---e.g., @code{aarch64-linux}. This " -"option can be repeated, in which case @command{guix weather} will query " -"substitutes for several system types." +#: doc/guix.texi:8181 +msgid "Query substitutes for @var{system}---e.g., @code{aarch64-linux}. This option can be repeated, in which case @command{guix weather} will query substitutes for several system types." msgstr "" #. type: table -#: doc/guix.texi:7977 -msgid "" -"Instead of querying substitutes for all the packages, only ask for those " -"specified in @var{file}. @var{file} must contain a @dfn{manifest}, as with " -"the @code{-m} option of @command{guix package} (@pxref{Invoking guix " -"package})." +#: doc/guix.texi:8187 +msgid "Instead of querying substitutes for all the packages, only ask for those specified in @var{file}. @var{file} must contain a @dfn{manifest}, as with the @code{-m} option of @command{guix package} (@pxref{Invoking guix package})." msgstr "" #. type: Plain text -#: doc/guix.texi:7995 -msgid "" -"Guix comes with a distribution of the GNU system consisting entirely of free " -"software@footnote{The term ``free'' here refers to the @url{http://www.gnu." -"org/philosophy/free-sw.html,freedom provided to users of that software}.}. " -"The distribution can be installed on its own (@pxref{System Installation}), " -"but it is also possible to install Guix as a package manager on top of an " -"installed GNU/Linux system (@pxref{Installation}). To distinguish between " -"the two, we refer to the standalone distribution as the Guix System " -"Distribution, or GuixSD." +#: doc/guix.texi:8205 +msgid "Guix comes with a distribution of the GNU system consisting entirely of free software@footnote{The term ``free'' here refers to the @url{http://www.gnu.org/philosophy/free-sw.html,freedom provided to users of that software}.}. The distribution can be installed on its own (@pxref{System Installation}), but it is also possible to install Guix as a package manager on top of an installed GNU/Linux system (@pxref{Installation}). To distinguish between the two, we refer to the standalone distribution as the Guix System Distribution, or GuixSD." msgstr "" #. type: Plain text -#: doc/guix.texi:8001 -msgid "" -"The distribution provides core GNU packages such as GNU libc, GCC, and " -"Binutils, as well as many GNU and non-GNU applications. The complete list " -"of available packages can be browsed @url{http://www.gnu.org/software/guix/" -"packages,on-line} or by running @command{guix package} (@pxref{Invoking guix " -"package}):" +#: doc/guix.texi:8211 +msgid "The distribution provides core GNU packages such as GNU libc, GCC, and Binutils, as well as many GNU and non-GNU applications. The complete list of available packages can be browsed @url{http://www.gnu.org/software/guix/packages,on-line} or by running @command{guix package} (@pxref{Invoking guix package}):" msgstr "" #. type: example -#: doc/guix.texi:8004 +#: doc/guix.texi:8214 #, no-wrap msgid "guix package --list-available\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8010 -msgid "" -"Our goal is to provide a practical 100% free software distribution of Linux-" -"based and other variants of GNU, with a focus on the promotion and tight " -"integration of GNU components, and an emphasis on programs and tools that " -"help users exert that freedom." +#: doc/guix.texi:8220 +msgid "Our goal is to provide a practical 100% free software distribution of Linux-based and other variants of GNU, with a focus on the promotion and tight integration of GNU components, and an emphasis on programs and tools that help users exert that freedom." msgstr "" #. type: Plain text -#: doc/guix.texi:8012 +#: doc/guix.texi:8222 msgid "Packages are currently available on the following platforms:" msgstr "" #. type: item -#: doc/guix.texi:8015 doc/guix.texi:8180 +#: doc/guix.texi:8225 doc/guix.texi:8390 #, no-wrap msgid "x86_64-linux" msgstr "" #. type: table -#: doc/guix.texi:8017 +#: doc/guix.texi:8227 msgid "Intel/AMD @code{x86_64} architecture, Linux-Libre kernel;" msgstr "" #. type: item -#: doc/guix.texi:8018 doc/guix.texi:8183 +#: doc/guix.texi:8228 doc/guix.texi:8393 #, no-wrap msgid "i686-linux" msgstr "" #. type: table -#: doc/guix.texi:8020 +#: doc/guix.texi:8230 msgid "Intel 32-bit architecture (IA32), Linux-Libre kernel;" msgstr "" #. type: item -#: doc/guix.texi:8021 +#: doc/guix.texi:8231 #, no-wrap msgid "armhf-linux" msgstr "" #. type: table -#: doc/guix.texi:8025 -msgid "" -"ARMv7-A architecture with hard float, Thumb-2 and NEON, using the EABI hard-" -"float application binary interface (ABI), and Linux-Libre kernel." +#: doc/guix.texi:8235 +msgid "ARMv7-A architecture with hard float, Thumb-2 and NEON, using the EABI hard-float application binary interface (ABI), and Linux-Libre kernel." msgstr "" #. type: item -#: doc/guix.texi:8026 +#: doc/guix.texi:8236 #, no-wrap msgid "aarch64-linux" msgstr "" #. type: table -#: doc/guix.texi:8030 -msgid "" -"little-endian 64-bit ARMv8-A processors, Linux-Libre kernel. This is " -"currently in an experimental stage, with limited support. " -"@xref{Contributing}, for how to help!" +#: doc/guix.texi:8240 +msgid "little-endian 64-bit ARMv8-A processors, Linux-Libre kernel. This is currently in an experimental stage, with limited support. @xref{Contributing}, for how to help!" msgstr "" #. type: item -#: doc/guix.texi:8031 +#: doc/guix.texi:8241 #, no-wrap msgid "mips64el-linux" msgstr "" #. type: table -#: doc/guix.texi:8034 -msgid "" -"little-endian 64-bit MIPS processors, specifically the Loongson series, n32 " -"ABI, and Linux-Libre kernel." +#: doc/guix.texi:8244 +msgid "little-endian 64-bit MIPS processors, specifically the Loongson series, n32 ABI, and Linux-Libre kernel." msgstr "" #. type: Plain text -#: doc/guix.texi:8038 -msgid "" -"GuixSD itself is currently only available on @code{i686} and @code{x86_64}." +#: doc/guix.texi:8248 +msgid "GuixSD itself is currently only available on @code{i686} and @code{x86_64}." msgstr "" #. type: Plain text -#: doc/guix.texi:8042 -msgid "" -"For information on porting to other architectures or kernels, " -"@pxref{Porting}." +#: doc/guix.texi:8252 +msgid "For information on porting to other architectures or kernels, @pxref{Porting}." msgstr "" #. type: Plain text -#: doc/guix.texi:8057 -msgid "" -"Building this distribution is a cooperative effort, and you are invited to " -"join! @xref{Contributing}, for information about how you can help." +#: doc/guix.texi:8267 +msgid "Building this distribution is a cooperative effort, and you are invited to join! @xref{Contributing}, for information about how you can help." msgstr "" #. type: cindex -#: doc/guix.texi:8061 +#: doc/guix.texi:8271 #, no-wrap msgid "installing GuixSD" msgstr "" #. type: Plain text -#: doc/guix.texi:8067 -msgid "" -"This section explains how to install the Guix System Distribution (GuixSD) " -"on a machine. The Guix package manager can also be installed on top of a " -"running GNU/Linux system, @pxref{Installation}." +#: doc/guix.texi:8277 +msgid "This section explains how to install the Guix System Distribution (GuixSD) on a machine. The Guix package manager can also be installed on top of a running GNU/Linux system, @pxref{Installation}." msgstr "" #. type: quotation -#: doc/guix.texi:8076 -msgid "" -"You are reading this documentation with an Info reader. For details on how " -"to use it, hit the @key{RET} key (``return'' or ``enter'') on the link that " -"follows: @pxref{Top, Info reader,, info-stnd, Stand-alone GNU Info}. Hit " -"@kbd{l} afterwards to come back here." +#: doc/guix.texi:8286 +msgid "You are reading this documentation with an Info reader. For details on how to use it, hit the @key{RET} key (``return'' or ``enter'') on the link that follows: @pxref{Top, Info reader,, info-stnd, Stand-alone GNU Info}. Hit @kbd{l} afterwards to come back here." msgstr "" #. type: quotation -#: doc/guix.texi:8079 -msgid "" -"Alternately, run @command{info info} in another tty to keep the manual " -"available." +#: doc/guix.texi:8289 +msgid "Alternately, run @command{info info} in another tty to keep the manual available." msgstr "" #. type: Plain text -#: doc/guix.texi:8104 -msgid "" -"As of version @value{VERSION}, the Guix System Distribution (GuixSD) is not " -"production-ready. It may contain bugs and lack important features. Thus, " -"if you are looking for a stable production system that respects your freedom " -"as a computer user, a good solution at this point is to consider @url{http://" -"www.gnu.org/distros/free-distros.html, one of the more established GNU/Linux " -"distributions}. We hope you can soon switch to the GuixSD without fear, of " -"course. In the meantime, you can also keep using your distribution and try " -"out the package manager on top of it (@pxref{Installation})." +#: doc/guix.texi:8314 +msgid "As of version @value{VERSION}, the Guix System Distribution (GuixSD) is not production-ready. It may contain bugs and lack important features. Thus, if you are looking for a stable production system that respects your freedom as a computer user, a good solution at this point is to consider @url{http://www.gnu.org/distros/free-distros.html, one of the more established GNU/Linux distributions}. We hope you can soon switch to the GuixSD without fear, of course. In the meantime, you can also keep using your distribution and try out the package manager on top of it (@pxref{Installation})." msgstr "" #. type: Plain text -#: doc/guix.texi:8107 -msgid "" -"Before you proceed with the installation, be aware of the following " -"noteworthy limitations applicable to version @value{VERSION}:" +#: doc/guix.texi:8317 +msgid "Before you proceed with the installation, be aware of the following noteworthy limitations applicable to version @value{VERSION}:" msgstr "" #. type: itemize -#: doc/guix.texi:8113 -msgid "" -"The installation process does not include a graphical user interface and " -"requires familiarity with GNU/Linux (see the following subsections to get a " -"feel of what that means.)" +#: doc/guix.texi:8323 +msgid "The installation process does not include a graphical user interface and requires familiarity with GNU/Linux (see the following subsections to get a feel of what that means.)" msgstr "" #. type: itemize -#: doc/guix.texi:8116 +#: doc/guix.texi:8326 msgid "Support for the Logical Volume Manager (LVM) is missing." msgstr "" #. type: itemize -#: doc/guix.texi:8120 -msgid "" -"More and more system services are provided (@pxref{Services}), but some may " -"be missing." +#: doc/guix.texi:8330 +msgid "More and more system services are provided (@pxref{Services}), but some may be missing." msgstr "" #. type: itemize -#: doc/guix.texi:8124 -msgid "" -"More than 6,500 packages are available, but you might occasionally find that " -"a useful package is missing." +#: doc/guix.texi:8334 +msgid "More than 6,500 packages are available, but you might occasionally find that a useful package is missing." msgstr "" #. type: itemize -#: doc/guix.texi:8129 -msgid "" -"GNOME, Xfce, LXDE, and Enlightenment are available (@pxref{Desktop " -"Services}), as well as a number of X11 window managers. However, some " -"graphical applications may be missing, as well as KDE." +#: doc/guix.texi:8339 +msgid "GNOME, Xfce, LXDE, and Enlightenment are available (@pxref{Desktop Services}), as well as a number of X11 window managers. However, some graphical applications may be missing, as well as KDE." msgstr "" #. type: Plain text -#: doc/guix.texi:8134 -msgid "" -"You have been warned! But more than a disclaimer, this is an invitation to " -"report issues (and success stories!), and to join us in improving it. " -"@xref{Contributing}, for more info." +#: doc/guix.texi:8344 +msgid "You have been warned! But more than a disclaimer, this is an invitation to report issues (and success stories!), and to join us in improving it. @xref{Contributing}, for more info." msgstr "" #. type: cindex -#: doc/guix.texi:8139 +#: doc/guix.texi:8349 #, no-wrap msgid "hardware support on GuixSD" msgstr "" #. type: Plain text -#: doc/guix.texi:8148 -msgid "" -"GNU@tie{}GuixSD focuses on respecting the user's computing freedom. It " -"builds around the kernel Linux-libre, which means that only hardware for " -"which free software drivers and firmware exist is supported. Nowadays, a " -"wide range of off-the-shelf hardware is supported on GNU/Linux-libre---from " -"keyboards to graphics cards to scanners and Ethernet controllers. " -"Unfortunately, there are still areas where hardware vendors deny users " -"control over their own computing, and such hardware is not supported on " -"GuixSD." +#: doc/guix.texi:8358 +msgid "GNU@tie{}GuixSD focuses on respecting the user's computing freedom. It builds around the kernel Linux-libre, which means that only hardware for which free software drivers and firmware exist is supported. Nowadays, a wide range of off-the-shelf hardware is supported on GNU/Linux-libre---from keyboards to graphics cards to scanners and Ethernet controllers. Unfortunately, there are still areas where hardware vendors deny users control over their own computing, and such hardware is not supported on GuixSD." msgstr "" #. type: cindex -#: doc/guix.texi:8149 +#: doc/guix.texi:8359 #, no-wrap msgid "WiFi, hardware support" msgstr "" #. type: Plain text -#: doc/guix.texi:8158 -msgid "" -"One of the main areas where free drivers or firmware are lacking is WiFi " -"devices. WiFi devices known to work include those using Atheros chips " -"(AR9271 and AR7010), which corresponds to the @code{ath9k} Linux-libre " -"driver, and those using Broadcom/AirForce chips (BCM43xx with Wireless-Core " -"Revision 5), which corresponds to the @code{b43-open} Linux-libre driver. " -"Free firmware exists for both and is available out-of-the-box on GuixSD, as " -"part of @var{%base-firmware} (@pxref{operating-system Reference, " -"@code{firmware}})." +#: doc/guix.texi:8368 +msgid "One of the main areas where free drivers or firmware are lacking is WiFi devices. WiFi devices known to work include those using Atheros chips (AR9271 and AR7010), which corresponds to the @code{ath9k} Linux-libre driver, and those using Broadcom/AirForce chips (BCM43xx with Wireless-Core Revision 5), which corresponds to the @code{b43-open} Linux-libre driver. Free firmware exists for both and is available out-of-the-box on GuixSD, as part of @var{%base-firmware} (@pxref{operating-system Reference, @code{firmware}})." msgstr "" #. type: cindex -#: doc/guix.texi:8159 +#: doc/guix.texi:8369 #, no-wrap msgid "RYF, Respects Your Freedom" msgstr "" #. type: Plain text -#: doc/guix.texi:8165 -msgid "" -"The @uref{https://www.fsf.org/, Free Software Foundation} runs @uref{https://" -"www.fsf.org/ryf, @dfn{Respects Your Freedom}} (RYF), a certification program " -"for hardware products that respect your freedom and your privacy and ensure " -"that you have control over your device. We encourage you to check the list " -"of RYF-certified devices." +#: doc/guix.texi:8375 +msgid "The @uref{https://www.fsf.org/, Free Software Foundation} runs @uref{https://www.fsf.org/ryf, @dfn{Respects Your Freedom}} (RYF), a certification program for hardware products that respect your freedom and your privacy and ensure that you have control over your device. We encourage you to check the list of RYF-certified devices." msgstr "" #. type: Plain text -#: doc/guix.texi:8169 -msgid "" -"Another useful resource is the @uref{https://www.h-node.org/, H-Node} web " -"site. It contains a catalog of hardware devices with information about " -"their support in GNU/Linux." +#: doc/guix.texi:8379 +msgid "Another useful resource is the @uref{https://www.h-node.org/, H-Node} web site. It contains a catalog of hardware devices with information about their support in GNU/Linux." msgstr "" #. type: Plain text -#: doc/guix.texi:8178 -msgid "" -"An ISO-9660 installation image that can be written to a USB stick or burnt " -"to a DVD can be downloaded from @indicateurl{ftp://alpha.gnu.org/gnu/guix/" -"guixsd-install-@value{VERSION}.@var{system}.iso.xz}, where @var{system} is " -"one of:" +#: doc/guix.texi:8388 +msgid "An ISO-9660 installation image that can be written to a USB stick or burnt to a DVD can be downloaded from @indicateurl{ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.iso.xz}, where @var{system} is one of:" msgstr "" #. type: table -#: doc/guix.texi:8182 +#: doc/guix.texi:8392 msgid "for a GNU/Linux system on Intel/AMD-compatible 64-bit CPUs;" msgstr "" #. type: table -#: doc/guix.texi:8185 +#: doc/guix.texi:8395 msgid "for a 32-bit GNU/Linux system on Intel-compatible CPUs." msgstr "" #. type: Plain text -#: doc/guix.texi:8190 -msgid "" -"Make sure to download the associated @file{.sig} file and to verify the " -"authenticity of the image against it, along these lines:" +#: doc/guix.texi:8400 +msgid "Make sure to download the associated @file{.sig} file and to verify the authenticity of the image against it, along these lines:" msgstr "" #. type: example -#: doc/guix.texi:8194 +#: doc/guix.texi:8404 #, no-wrap msgid "" "$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.iso.xz.sig\n" @@ -18470,44 +14678,39 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:8209 -msgid "" -"This image contains the tools necessary for an installation. It is meant to " -"be copied @emph{as is} to a large-enough USB stick or DVD." +#: doc/guix.texi:8419 +msgid "This image contains the tools necessary for an installation. It is meant to be copied @emph{as is} to a large-enough USB stick or DVD." msgstr "" #. type: unnumberedsubsubsec -#: doc/guix.texi:8210 +#: doc/guix.texi:8420 #, no-wrap msgid "Copying to a USB Stick" msgstr "" #. type: Plain text -#: doc/guix.texi:8213 +#: doc/guix.texi:8423 msgid "To copy the image to a USB stick, follow these steps:" msgstr "" #. type: enumerate -#: doc/guix.texi:8217 doc/guix.texi:8242 +#: doc/guix.texi:8427 doc/guix.texi:8452 msgid "Decompress the image using the @command{xz} command:" msgstr "" #. type: example -#: doc/guix.texi:8220 doc/guix.texi:8245 +#: doc/guix.texi:8430 doc/guix.texi:8455 #, no-wrap msgid "xz -d guixsd-install-@value{VERSION}.@var{system}.iso.xz\n" msgstr "" #. type: enumerate -#: doc/guix.texi:8226 -msgid "" -"Insert a USB stick of 1@tie{}GiB or more into your machine, and determine " -"its device name. Assuming that the USB stick is known as @file{/dev/sdX}, " -"copy the image with:" +#: doc/guix.texi:8436 +msgid "Insert a USB stick of 1@tie{}GiB or more into your machine, and determine its device name. Assuming that the USB stick is known as @file{/dev/sdX}, copy the image with:" msgstr "" #. type: example -#: doc/guix.texi:8230 +#: doc/guix.texi:8440 #, no-wrap msgid "" "dd if=guixsd-install-@value{VERSION}.x86_64-linux.iso of=/dev/sdX\n" @@ -18515,221 +14718,182 @@ msgid "" msgstr "" #. type: enumerate -#: doc/guix.texi:8233 +#: doc/guix.texi:8443 msgid "Access to @file{/dev/sdX} usually requires root privileges." msgstr "" #. type: unnumberedsubsubsec -#: doc/guix.texi:8235 +#: doc/guix.texi:8445 #, no-wrap msgid "Burning on a DVD" msgstr "" #. type: Plain text -#: doc/guix.texi:8238 +#: doc/guix.texi:8448 msgid "To copy the image to a DVD, follow these steps:" msgstr "" #. type: enumerate -#: doc/guix.texi:8251 -msgid "" -"Insert a blank DVD into your machine, and determine its device name. " -"Assuming that the DVD drive is known as @file{/dev/srX}, copy the image with:" +#: doc/guix.texi:8461 +msgid "Insert a blank DVD into your machine, and determine its device name. Assuming that the DVD drive is known as @file{/dev/srX}, copy the image with:" msgstr "" #. type: example -#: doc/guix.texi:8254 +#: doc/guix.texi:8464 #, no-wrap msgid "growisofs -dvd-compat -Z /dev/srX=guixsd-install-@value{VERSION}.x86_64.iso\n" msgstr "" #. type: enumerate -#: doc/guix.texi:8257 +#: doc/guix.texi:8467 msgid "Access to @file{/dev/srX} usually requires root privileges." msgstr "" #. type: unnumberedsubsubsec -#: doc/guix.texi:8259 +#: doc/guix.texi:8469 #, no-wrap msgid "Booting" msgstr "" #. type: Plain text -#: doc/guix.texi:8264 -msgid "" -"Once this is done, you should be able to reboot the system and boot from the " -"USB stick or DVD. The latter usually requires you to get in the BIOS or " -"UEFI boot menu, where you can choose to boot from the USB stick." +#: doc/guix.texi:8474 +msgid "Once this is done, you should be able to reboot the system and boot from the USB stick or DVD. The latter usually requires you to get in the BIOS or UEFI boot menu, where you can choose to boot from the USB stick." msgstr "" #. type: Plain text -#: doc/guix.texi:8267 -msgid "" -"@xref{Installing GuixSD in a VM}, if, instead, you would like to install " -"GuixSD in a virtual machine (VM)." +#: doc/guix.texi:8477 +msgid "@xref{Installing GuixSD in a VM}, if, instead, you would like to install GuixSD in a virtual machine (VM)." msgstr "" #. type: Plain text -#: doc/guix.texi:8279 -msgid "" -"Once you have successfully booted your computer using the installation " -"medium, you should end up with a root prompt. Several console TTYs are " -"configured and can be used to run commands as root. TTY2 shows this " -"documentation, browsable using the Info reader commands (@pxref{Top,,, info-" -"stnd, Stand-alone GNU Info}). The installation system runs the GPM mouse " -"daemon, which allows you to select text with the left mouse button and to " -"paste it with the middle button." +#: doc/guix.texi:8489 +msgid "Once you have successfully booted your computer using the installation medium, you should end up with a root prompt. Several console TTYs are configured and can be used to run commands as root. TTY2 shows this documentation, browsable using the Info reader commands (@pxref{Top,,, info-stnd, Stand-alone GNU Info}). The installation system runs the GPM mouse daemon, which allows you to select text with the left mouse button and to paste it with the middle button." msgstr "" #. type: quotation -#: doc/guix.texi:8284 -msgid "" -"Installation requires access to the Internet so that any missing " -"dependencies of your system configuration can be downloaded. See the " -"``Networking'' section below." +#: doc/guix.texi:8494 +msgid "Installation requires access to the Internet so that any missing dependencies of your system configuration can be downloaded. See the ``Networking'' section below." msgstr "" #. type: Plain text -#: doc/guix.texi:8290 -msgid "" -"The installation system includes many common tools needed for this task. " -"But it is also a full-blown GuixSD system, which means that you can install " -"additional packages, should you need it, using @command{guix package} " -"(@pxref{Invoking guix package})." +#: doc/guix.texi:8500 +msgid "The installation system includes many common tools needed for this task. But it is also a full-blown GuixSD system, which means that you can install additional packages, should you need it, using @command{guix package} (@pxref{Invoking guix package})." msgstr "" #. type: subsubsection -#: doc/guix.texi:8291 +#: doc/guix.texi:8501 #, no-wrap msgid "Keyboard Layout" msgstr "" #. type: cindex -#: doc/guix.texi:8293 doc/guix.texi:10364 +#: doc/guix.texi:8503 doc/guix.texi:10593 doc/guix.texi:11931 #, no-wrap msgid "keyboard layout" msgstr "" #. type: Plain text -#: doc/guix.texi:8297 -msgid "" -"The installation image uses the US qwerty keyboard layout. If you want to " -"change it, you can use the @command{loadkeys} command. For example, the " -"following command selects the Dvorak keyboard layout:" +#: doc/guix.texi:8507 +msgid "The installation image uses the US qwerty keyboard layout. If you want to change it, you can use the @command{loadkeys} command. For example, the following command selects the Dvorak keyboard layout:" msgstr "" #. type: example -#: doc/guix.texi:8300 +#: doc/guix.texi:8510 #, no-wrap msgid "loadkeys dvorak\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8305 -msgid "" -"See the files under @file{/run/current-system/profile/share/keymaps} for a " -"list of available keyboard layouts. Run @command{man loadkeys} for more " -"information." +#: doc/guix.texi:8515 +msgid "See the files under @file{/run/current-system/profile/share/keymaps} for a list of available keyboard layouts. Run @command{man loadkeys} for more information." msgstr "" #. type: subsubsection -#: doc/guix.texi:8306 +#: doc/guix.texi:8516 #, no-wrap msgid "Networking" msgstr "" #. type: Plain text -#: doc/guix.texi:8309 +#: doc/guix.texi:8519 msgid "Run the following command see what your network interfaces are called:" msgstr "" #. type: example -#: doc/guix.texi:8312 +#: doc/guix.texi:8522 #, no-wrap msgid "ifconfig -a\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8316 +#: doc/guix.texi:8526 msgid "@dots{} or, using the GNU/Linux-specific @command{ip} command:" msgstr "" #. type: example -#: doc/guix.texi:8319 +#: doc/guix.texi:8529 #, no-wrap msgid "ip a\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8326 -msgid "" -"Wired interfaces have a name starting with @samp{e}; for example, the " -"interface corresponding to the first on-board Ethernet controller is called " -"@samp{eno1}. Wireless interfaces have a name starting with @samp{w}, like " -"@samp{w1p2s0}." +#: doc/guix.texi:8536 +msgid "Wired interfaces have a name starting with @samp{e}; for example, the interface corresponding to the first on-board Ethernet controller is called @samp{eno1}. Wireless interfaces have a name starting with @samp{w}, like @samp{w1p2s0}." msgstr "" #. type: item -#: doc/guix.texi:8328 +#: doc/guix.texi:8538 #, no-wrap msgid "Wired connection" msgstr "" #. type: table -#: doc/guix.texi:8331 -msgid "" -"To configure a wired network run the following command, substituting " -"@var{interface} with the name of the wired interface you want to use." +#: doc/guix.texi:8541 +msgid "To configure a wired network run the following command, substituting @var{interface} with the name of the wired interface you want to use." msgstr "" #. type: example -#: doc/guix.texi:8334 +#: doc/guix.texi:8544 #, no-wrap msgid "ifconfig @var{interface} up\n" msgstr "" #. type: item -#: doc/guix.texi:8336 +#: doc/guix.texi:8546 #, no-wrap msgid "Wireless connection" msgstr "" #. type: cindex -#: doc/guix.texi:8337 doc/guix.texi:10763 +#: doc/guix.texi:8547 doc/guix.texi:11008 #, no-wrap msgid "wireless" msgstr "" #. type: cindex -#: doc/guix.texi:8338 doc/guix.texi:10764 +#: doc/guix.texi:8548 doc/guix.texi:11009 #, no-wrap msgid "WiFi" msgstr "" #. type: table -#: doc/guix.texi:8343 -msgid "" -"To configure wireless networking, you can create a configuration file for " -"the @command{wpa_supplicant} configuration tool (its location is not " -"important) using one of the available text editors such as @command{nano}:" +#: doc/guix.texi:8553 +msgid "To configure wireless networking, you can create a configuration file for the @command{wpa_supplicant} configuration tool (its location is not important) using one of the available text editors such as @command{nano}:" msgstr "" #. type: example -#: doc/guix.texi:8346 +#: doc/guix.texi:8556 #, no-wrap msgid "nano wpa_supplicant.conf\n" msgstr "" #. type: table -#: doc/guix.texi:8351 -msgid "" -"As an example, the following stanza can go to this file and will work for " -"many wireless networks, provided you give the actual SSID and passphrase for " -"the network you are connecting to:" +#: doc/guix.texi:8561 +msgid "As an example, the following stanza can go to this file and will work for many wireless networks, provided you give the actual SSID and passphrase for the network you are connecting to:" msgstr "" #. type: example -#: doc/guix.texi:8358 +#: doc/guix.texi:8568 #, no-wrap msgid "" "network=@{\n" @@ -18740,206 +14904,167 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:8363 -msgid "" -"Start the wireless service and run it in the background with the following " -"command (substitute @var{interface} with the name of the network interface " -"you want to use):" +#: doc/guix.texi:8573 +msgid "Start the wireless service and run it in the background with the following command (substitute @var{interface} with the name of the network interface you want to use):" msgstr "" #. type: example -#: doc/guix.texi:8366 +#: doc/guix.texi:8576 #, no-wrap msgid "wpa_supplicant -c wpa_supplicant.conf -i @var{interface} -B\n" msgstr "" #. type: table -#: doc/guix.texi:8369 +#: doc/guix.texi:8579 msgid "Run @command{man wpa_supplicant} for more information." msgstr "" #. type: cindex -#: doc/guix.texi:8371 +#: doc/guix.texi:8581 #, no-wrap msgid "DHCP" msgstr "" #. type: Plain text -#: doc/guix.texi:8374 -msgid "" -"At this point, you need to acquire an IP address. On a network where IP " -"addresses are automatically assigned @i{via} DHCP, you can run:" +#: doc/guix.texi:8584 +msgid "At this point, you need to acquire an IP address. On a network where IP addresses are automatically assigned @i{via} DHCP, you can run:" msgstr "" #. type: example -#: doc/guix.texi:8377 +#: doc/guix.texi:8587 #, no-wrap msgid "dhclient -v @var{interface}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8380 +#: doc/guix.texi:8590 msgid "Try to ping a server to see if networking is up and running:" msgstr "" #. type: example -#: doc/guix.texi:8383 +#: doc/guix.texi:8593 #, no-wrap msgid "ping -c 3 gnu.org\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8387 -msgid "" -"Setting up network access is almost always a requirement because the image " -"does not contain all the software and tools that may be needed." +#: doc/guix.texi:8597 +msgid "Setting up network access is almost always a requirement because the image does not contain all the software and tools that may be needed." msgstr "" #. type: cindex -#: doc/guix.texi:8388 +#: doc/guix.texi:8598 #, no-wrap msgid "installing over SSH" msgstr "" #. type: Plain text -#: doc/guix.texi:8391 -msgid "" -"If you want to, you can continue the installation remotely by starting an " -"SSH server:" +#: doc/guix.texi:8601 +msgid "If you want to, you can continue the installation remotely by starting an SSH server:" msgstr "" #. type: example -#: doc/guix.texi:8394 +#: doc/guix.texi:8604 #, no-wrap msgid "herd start ssh-daemon\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8398 -msgid "" -"Make sure to either set a password with @command{passwd}, or configure " -"OpenSSH public key authentication before logging in." +#: doc/guix.texi:8608 +msgid "Make sure to either set a password with @command{passwd}, or configure OpenSSH public key authentication before logging in." msgstr "" #. type: subsubsection -#: doc/guix.texi:8399 +#: doc/guix.texi:8609 #, no-wrap msgid "Disk Partitioning" msgstr "" #. type: Plain text -#: doc/guix.texi:8403 -msgid "" -"Unless this has already been done, the next step is to partition, and then " -"format the target partition(s)." +#: doc/guix.texi:8613 +msgid "Unless this has already been done, the next step is to partition, and then format the target partition(s)." msgstr "" #. type: Plain text -#: doc/guix.texi:8408 -msgid "" -"The installation image includes several partitioning tools, including Parted " -"(@pxref{Overview,,, parted, GNU Parted User Manual}), @command{fdisk}, and " -"@command{cfdisk}. Run it and set up your disk with the partition layout you " -"want:" +#: doc/guix.texi:8618 +msgid "The installation image includes several partitioning tools, including Parted (@pxref{Overview,,, parted, GNU Parted User Manual}), @command{fdisk}, and @command{cfdisk}. Run it and set up your disk with the partition layout you want:" msgstr "" #. type: example -#: doc/guix.texi:8411 +#: doc/guix.texi:8621 #, no-wrap msgid "cfdisk\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8417 -msgid "" -"If your disk uses the GUID Partition Table (GPT) format and you plan to " -"install BIOS-based GRUB (which is the default), make sure a BIOS Boot " -"Partition is available (@pxref{BIOS installation,,, grub, GNU GRUB manual})." +#: doc/guix.texi:8627 +msgid "If your disk uses the GUID Partition Table (GPT) format and you plan to install BIOS-based GRUB (which is the default), make sure a BIOS Boot Partition is available (@pxref{BIOS installation,,, grub, GNU GRUB manual})." msgstr "" #. type: cindex -#: doc/guix.texi:8418 +#: doc/guix.texi:8628 #, no-wrap msgid "EFI, installation" msgstr "" #. type: cindex -#: doc/guix.texi:8419 +#: doc/guix.texi:8629 #, no-wrap msgid "UEFI, installation" msgstr "" #. type: cindex -#: doc/guix.texi:8420 +#: doc/guix.texi:8630 #, no-wrap msgid "ESP, EFI system partition" msgstr "" #. type: Plain text -#: doc/guix.texi:8424 -msgid "" -"If you instead wish to use EFI-based GRUB, a FAT32 @dfn{EFI System " -"Partition} (ESP) is required. This partition should be mounted at @file{/" -"boot/efi} and must have the @code{esp} flag set. E.g., for @command{parted}:" +#: doc/guix.texi:8634 +msgid "If you instead wish to use EFI-based GRUB, a FAT32 @dfn{EFI System Partition} (ESP) is required. This partition should be mounted at @file{/boot/efi} and must have the @code{esp} flag set. E.g., for @command{parted}:" msgstr "" #. type: example -#: doc/guix.texi:8427 +#: doc/guix.texi:8637 #, no-wrap msgid "parted /dev/sda set 1 esp on\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8435 -msgid "" -"Once you are done partitioning the target hard disk drive, you have to " -"create a file system on the relevant partition(s)@footnote{Currently GuixSD " -"only supports ext4 and btrfs file systems. In particular, code that reads " -"file system UUIDs and labels only works for these file system types.}. For " -"the ESP, if you have one and assuming it is @file{/dev/sda2}, run:" +#: doc/guix.texi:8645 +msgid "Once you are done partitioning the target hard disk drive, you have to create a file system on the relevant partition(s)@footnote{Currently GuixSD only supports ext4 and btrfs file systems. In particular, code that reads file system UUIDs and labels only works for these file system types.}. For the ESP, if you have one and assuming it is @file{/dev/sda2}, run:" msgstr "" #. type: example -#: doc/guix.texi:8438 +#: doc/guix.texi:8648 #, no-wrap msgid "mkfs.fat -F32 /dev/sda2\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8446 -msgid "" -"Preferably, assign file systems a label so that you can easily and reliably " -"refer to them in @code{file-system} declarations (@pxref{File Systems}). " -"This is typically done using the @code{-L} option of @command{mkfs.ext4} and " -"related commands. So, assuming the target root partition lives at @file{/" -"dev/sda1}, a file system with the label @code{my-root} can be created with:" +#: doc/guix.texi:8656 +msgid "Preferably, assign file systems a label so that you can easily and reliably refer to them in @code{file-system} declarations (@pxref{File Systems}). This is typically done using the @code{-L} option of @command{mkfs.ext4} and related commands. So, assuming the target root partition lives at @file{/dev/sda1}, a file system with the label @code{my-root} can be created with:" msgstr "" #. type: example -#: doc/guix.texi:8449 +#: doc/guix.texi:8659 #, no-wrap msgid "mkfs.ext4 -L my-root /dev/sda1\n" msgstr "" #. type: cindex -#: doc/guix.texi:8451 doc/guix.texi:8840 +#: doc/guix.texi:8661 doc/guix.texi:9066 #, no-wrap msgid "encrypted disk" msgstr "" #. type: Plain text -#: doc/guix.texi:8458 -msgid "" -"If you are instead planning to encrypt the root partition, you can use the " -"Cryptsetup/LUKS utilities to do that (see @inlinefmtifelse{html, " -"@uref{https://linux.die.net/man/8/cryptsetup, @code{man cryptsetup}}, " -"@code{man cryptsetup}} for more information.) Assuming you want to store " -"the root partition on @file{/dev/sda1}, the command sequence would be along " -"these lines:" +#: doc/guix.texi:8668 +msgid "If you are instead planning to encrypt the root partition, you can use the Cryptsetup/LUKS utilities to do that (see @inlinefmtifelse{html, @uref{https://linux.die.net/man/8/cryptsetup, @code{man cryptsetup}}, @code{man cryptsetup}} for more information.) Assuming you want to store the root partition on @file{/dev/sda1}, the command sequence would be along these lines:" msgstr "" #. type: example -#: doc/guix.texi:8463 +#: doc/guix.texi:8673 #, no-wrap msgid "" "cryptsetup luksFormat /dev/sda1\n" @@ -18948,39 +15073,28 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:8468 -msgid "" -"Once that is done, mount the target file system under @file{/mnt} with a " -"command like (again, assuming @code{my-root} is the label of the root file " -"system):" +#: doc/guix.texi:8678 +msgid "Once that is done, mount the target file system under @file{/mnt} with a command like (again, assuming @code{my-root} is the label of the root file system):" msgstr "" #. type: example -#: doc/guix.texi:8471 +#: doc/guix.texi:8681 #, no-wrap msgid "mount LABEL=my-root /mnt\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8477 -msgid "" -"Also mount any other file systems you would like to use on the target system " -"relative to this path. If you have @file{/boot} on a separate partition for " -"example, mount it at @file{/mnt/boot} now so it is found by @code{guix " -"system init} afterwards." +#: doc/guix.texi:8687 +msgid "Also mount any other file systems you would like to use on the target system relative to this path. If you have @file{/boot} on a separate partition for example, mount it at @file{/mnt/boot} now so it is found by @code{guix system init} afterwards." msgstr "" #. type: Plain text -#: doc/guix.texi:8482 -msgid "" -"Finally, if you plan to use one or more swap partitions (@pxref{Memory " -"Concepts, swap space,, libc, The GNU C Library Reference Manual}), make sure " -"to initialize them with @command{mkswap}. Assuming you have one swap " -"partition on @file{/dev/sda2}, you would run:" +#: doc/guix.texi:8692 +msgid "Finally, if you plan to use one or more swap partitions (@pxref{Memory Concepts, swap space,, libc, The GNU C Library Reference Manual}), make sure to initialize them with @command{mkswap}. Assuming you have one swap partition on @file{/dev/sda2}, you would run:" msgstr "" #. type: example -#: doc/guix.texi:8486 +#: doc/guix.texi:8696 #, no-wrap msgid "" "mkswap /dev/sda2\n" @@ -18988,18 +15102,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:8494 -msgid "" -"Alternatively, you may use a swap file. For example, assuming that in the " -"new system you want to use the file @file{/swapfile} as a swap file, you " -"would run@footnote{This example will work for many types of file systems (e." -"g., ext4). However, for copy-on-write file systems (e.g., btrfs), the " -"required steps may be different. For details, see the manual pages for " -"@command{mkswap} and @command{swapon}.}:" +#: doc/guix.texi:8704 +msgid "Alternatively, you may use a swap file. For example, assuming that in the new system you want to use the file @file{/swapfile} as a swap file, you would run@footnote{This example will work for many types of file systems (e.g., ext4). However, for copy-on-write file systems (e.g., btrfs), the required steps may be different. For details, see the manual pages for @command{mkswap} and @command{swapon}.}:" msgstr "" #. type: example -#: doc/guix.texi:8502 +#: doc/guix.texi:8712 #, no-wrap msgid "" "# This is 10 GiB of swap space. Adjust \"count\" to change the size.\n" @@ -19011,62 +15119,38 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:8507 -msgid "" -"Note that if you have encrypted the root partition and created a swap file " -"in its file system as described above, then the encryption also protects the " -"swap file, just like any other file in that file system." +#: doc/guix.texi:8717 +msgid "Note that if you have encrypted the root partition and created a swap file in its file system as described above, then the encryption also protects the swap file, just like any other file in that file system." msgstr "" #. type: Plain text -#: doc/guix.texi:8513 -msgid "" -"With the target partitions ready and the target root mounted on @file{/mnt}, " -"we're ready to go. First, run:" +#: doc/guix.texi:8723 +msgid "With the target partitions ready and the target root mounted on @file{/mnt}, we're ready to go. First, run:" msgstr "" #. type: example -#: doc/guix.texi:8516 +#: doc/guix.texi:8726 #, no-wrap msgid "herd start cow-store /mnt\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8523 -msgid "" -"This makes @file{/gnu/store} copy-on-write, such that packages added to it " -"during the installation phase are written to the target disk on @file{/mnt} " -"rather than kept in memory. This is necessary because the first phase of " -"the @command{guix system init} command (see below) entails downloads or " -"builds to @file{/gnu/store} which, initially, is an in-memory file system." +#: doc/guix.texi:8733 +msgid "This makes @file{/gnu/store} copy-on-write, such that packages added to it during the installation phase are written to the target disk on @file{/mnt} rather than kept in memory. This is necessary because the first phase of the @command{guix system init} command (see below) entails downloads or builds to @file{/gnu/store} which, initially, is an in-memory file system." msgstr "" #. type: Plain text -#: doc/guix.texi:8534 -msgid "" -"Next, you have to edit a file and provide the declaration of the operating " -"system to be installed. To that end, the installation system comes with " -"three text editors. We recommend GNU nano (@pxref{Top,,, nano, GNU nano " -"Manual}), which supports syntax highlighting and parentheses matching; other " -"editors include GNU Zile (an Emacs clone), and nvi (a clone of the original " -"BSD @command{vi} editor). We strongly recommend storing that file on the " -"target root file system, say, as @file{/mnt/etc/config.scm}. Failing to do " -"that, you will have lost your configuration file once you have rebooted into " -"the newly-installed system." +#: doc/guix.texi:8744 +msgid "Next, you have to edit a file and provide the declaration of the operating system to be installed. To that end, the installation system comes with three text editors. We recommend GNU nano (@pxref{Top,,, nano, GNU nano Manual}), which supports syntax highlighting and parentheses matching; other editors include GNU Zile (an Emacs clone), and nvi (a clone of the original BSD @command{vi} editor). We strongly recommend storing that file on the target root file system, say, as @file{/mnt/etc/config.scm}. Failing to do that, you will have lost your configuration file once you have rebooted into the newly-installed system." msgstr "" #. type: Plain text -#: doc/guix.texi:8541 -msgid "" -"@xref{Using the Configuration System}, for an overview of the configuration " -"file. The example configurations discussed in that section are available " -"under @file{/etc/configuration} in the installation image. Thus, to get " -"started with a system configuration providing a graphical display server (a " -"``desktop'' system), you can run something along these lines:" +#: doc/guix.texi:8751 +msgid "@xref{Using the Configuration System}, for an overview of the configuration file. The example configurations discussed in that section are available under @file{/etc/configuration} in the installation image. Thus, to get started with a system configuration providing a graphical display server (a ``desktop'' system), you can run something along these lines:" msgstr "" #. type: example -#: doc/guix.texi:8546 +#: doc/guix.texi:8756 #, no-wrap msgid "" "# mkdir /mnt/etc\n" @@ -19075,171 +15159,124 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:8550 -msgid "" -"You should pay attention to what your configuration file contains, and in " -"particular:" +#: doc/guix.texi:8760 +msgid "You should pay attention to what your configuration file contains, and in particular:" msgstr "" #. type: itemize -#: doc/guix.texi:8560 -msgid "" -"Make sure the @code{bootloader-configuration} form refers to the target you " -"want to install GRUB on. It should mention @code{grub-bootloader} if you " -"are installing GRUB in the legacy way, or @code{grub-efi-bootloader} for " -"newer UEFI systems. For legacy systems, the @code{target} field names a " -"device, like @code{/dev/sda}; for UEFI systems it names a path to a mounted " -"EFI partition, like @code{/boot/efi}, and do make sure the path is actually " -"mounted." +#: doc/guix.texi:8770 +msgid "Make sure the @code{bootloader-configuration} form refers to the target you want to install GRUB on. It should mention @code{grub-bootloader} if you are installing GRUB in the legacy way, or @code{grub-efi-bootloader} for newer UEFI systems. For legacy systems, the @code{target} field names a device, like @code{/dev/sda}; for UEFI systems it names a path to a mounted EFI partition, like @code{/boot/efi}, and do make sure the path is actually mounted." msgstr "" #. type: itemize -#: doc/guix.texi:8566 -msgid "" -"Be sure that your file system labels match the value of their respective " -"@code{device} fields in your @code{file-system} configuration, assuming your " -"@code{file-system} configuration sets the value of @code{title} to " -"@code{'label}." +#: doc/guix.texi:8776 +msgid "Be sure that your file system labels match the value of their respective @code{device} fields in your @code{file-system} configuration, assuming your @code{file-system} configuration sets the value of @code{title} to @code{'label}." msgstr "" #. type: itemize -#: doc/guix.texi:8570 -msgid "" -"If there are encrypted or RAID partitions, make sure to add a @code{mapped-" -"devices} field to describe them (@pxref{Mapped Devices})." +#: doc/guix.texi:8780 +msgid "If there are encrypted or RAID partitions, make sure to add a @code{mapped-devices} field to describe them (@pxref{Mapped Devices})." msgstr "" #. type: Plain text -#: doc/guix.texi:8575 -msgid "" -"Once you are done preparing the configuration file, the new system must be " -"initialized (remember that the target root file system is mounted under " -"@file{/mnt}):" +#: doc/guix.texi:8785 +msgid "Once you are done preparing the configuration file, the new system must be initialized (remember that the target root file system is mounted under @file{/mnt}):" msgstr "" #. type: example -#: doc/guix.texi:8578 +#: doc/guix.texi:8788 #, no-wrap msgid "guix system init /mnt/etc/config.scm /mnt\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8585 -msgid "" -"This copies all the necessary files and installs GRUB on @file{/dev/sdX}, " -"unless you pass the @option{--no-bootloader} option. For more information, " -"@pxref{Invoking guix system}. This command may trigger downloads or builds " -"of missing packages, which can take some time." +#: doc/guix.texi:8795 +msgid "This copies all the necessary files and installs GRUB on @file{/dev/sdX}, unless you pass the @option{--no-bootloader} option. For more information, @pxref{Invoking guix system}. This command may trigger downloads or builds of missing packages, which can take some time." msgstr "" #. type: Plain text -#: doc/guix.texi:8592 -msgid "" -"Once that command has completed---and hopefully succeeded!---you can run " -"@command{reboot} and boot into the new system. The @code{root} password in " -"the new system is initially empty; other users' passwords need to be " -"initialized by running the @command{passwd} command as @code{root}, unless " -"your configuration specifies otherwise (@pxref{user-account-password, user " -"account passwords})." +#: doc/guix.texi:8802 +msgid "Once that command has completed---and hopefully succeeded!---you can run @command{reboot} and boot into the new system. The @code{root} password in the new system is initially empty; other users' passwords need to be initialized by running the @command{passwd} command as @code{root}, unless your configuration specifies otherwise (@pxref{user-account-password, user account passwords})." msgstr "" #. type: cindex -#: doc/guix.texi:8593 +#: doc/guix.texi:8803 #, no-wrap msgid "upgrading GuixSD" msgstr "" #. type: Plain text -#: doc/guix.texi:8600 -msgid "" -"From then on, you can update GuixSD whenever you want by running " -"@command{guix pull} as @code{root} (@pxref{Invoking guix pull}), and then " -"running @command{guix system reconfigure} to build a new system generation " -"with the latest packages and services (@pxref{Invoking guix system}). We " -"recommend doing that regularly so that your system includes the latest " -"security updates (@pxref{Security Updates})." +#: doc/guix.texi:8810 +msgid "From then on, you can update GuixSD whenever you want by running @command{guix pull} as @code{root} (@pxref{Invoking guix pull}), and then running @command{guix system reconfigure} to build a new system generation with the latest packages and services (@pxref{Invoking guix system}). We recommend doing that regularly so that your system includes the latest security updates (@pxref{Security Updates})." msgstr "" #. type: Plain text -#: doc/guix.texi:8604 -msgid "" -"Join us on @code{#guix} on the Freenode IRC network or on @file{guix-" -"devel@@gnu.org} to share your experience---good or not so good." +#: doc/guix.texi:8814 +msgid "Join us on @code{#guix} on the Freenode IRC network or on @file{guix-devel@@gnu.org} to share your experience---good or not so good." msgstr "" #. type: subsection -#: doc/guix.texi:8606 +#: doc/guix.texi:8816 #, no-wrap msgid "Installing GuixSD in a Virtual Machine" msgstr "" #. type: cindex -#: doc/guix.texi:8608 +#: doc/guix.texi:8818 #, no-wrap msgid "virtual machine, GuixSD installation" msgstr "" #. type: cindex -#: doc/guix.texi:8609 +#: doc/guix.texi:8819 #, no-wrap msgid "virtual private server (VPS)" msgstr "" #. type: cindex -#: doc/guix.texi:8610 +#: doc/guix.texi:8820 #, no-wrap msgid "VPS (virtual private server)" msgstr "" #. type: Plain text -#: doc/guix.texi:8614 -msgid "" -"If you'd like to install GuixSD in a virtual machine (VM) or on a virtual " -"private server (VPS) rather than on your beloved machine, this section is " -"for you." +#: doc/guix.texi:8824 +msgid "If you'd like to install GuixSD in a virtual machine (VM) or on a virtual private server (VPS) rather than on your beloved machine, this section is for you." msgstr "" #. type: Plain text -#: doc/guix.texi:8617 -msgid "" -"To boot a @uref{http://qemu.org/,QEMU} VM for installing GuixSD in a disk " -"image, follow these steps:" +#: doc/guix.texi:8827 +msgid "To boot a @uref{http://qemu.org/,QEMU} VM for installing GuixSD in a disk image, follow these steps:" msgstr "" #. type: enumerate -#: doc/guix.texi:8622 -msgid "" -"First, retrieve and decompress the GuixSD installation image as described " -"previously (@pxref{USB Stick and DVD Installation})." +#: doc/guix.texi:8832 +msgid "First, retrieve and decompress the GuixSD installation image as described previously (@pxref{USB Stick and DVD Installation})." msgstr "" #. type: enumerate -#: doc/guix.texi:8626 -msgid "" -"Create a disk image that will hold the installed system. To make a qcow2-" -"formatted disk image, use the @command{qemu-img} command:" +#: doc/guix.texi:8836 +msgid "Create a disk image that will hold the installed system. To make a qcow2-formatted disk image, use the @command{qemu-img} command:" msgstr "" #. type: example -#: doc/guix.texi:8629 +#: doc/guix.texi:8839 #, no-wrap msgid "qemu-img create -f qcow2 guixsd.img 50G\n" msgstr "" #. type: enumerate -#: doc/guix.texi:8633 -msgid "" -"The resulting file will be much smaller than 50 GB (typically less than 1 " -"MB), but it will grow as the virtualized storage device is filled up." +#: doc/guix.texi:8843 +msgid "The resulting file will be much smaller than 50 GB (typically less than 1 MB), but it will grow as the virtualized storage device is filled up." msgstr "" #. type: enumerate -#: doc/guix.texi:8636 +#: doc/guix.texi:8846 msgid "Boot the USB installation image in an VM:" msgstr "" #. type: example -#: doc/guix.texi:8642 +#: doc/guix.texi:8852 #, no-wrap msgid "" "qemu-system-x86_64 -m 1024 -smp 1 \\\n" @@ -19249,166 +15286,141 @@ msgid "" msgstr "" #. type: enumerate -#: doc/guix.texi:8645 +#: doc/guix.texi:8855 msgid "The ordering of the drives matters." msgstr "" #. type: enumerate -#: doc/guix.texi:8649 -msgid "" -"In the VM console, quickly press the @kbd{F12} key to enter the boot menu. " -"Then press the @kbd{2} key and the @kbd{RET} key to validate your selection." +#: doc/guix.texi:8859 +msgid "In the VM console, quickly press the @kbd{F12} key to enter the boot menu. Then press the @kbd{2} key and the @kbd{RET} key to validate your selection." msgstr "" #. type: enumerate -#: doc/guix.texi:8653 -msgid "" -"You're now root in the VM, proceed with the installation process. " -"@xref{Preparing for Installation}, and follow the instructions." +#: doc/guix.texi:8863 +msgid "You're now root in the VM, proceed with the installation process. @xref{Preparing for Installation}, and follow the instructions." msgstr "" #. type: Plain text -#: doc/guix.texi:8658 -msgid "" -"Once installation is complete, you can boot the system that's on your " -"@file{guixsd.img} image. @xref{Running GuixSD in a VM}, for how to do that." +#: doc/guix.texi:8868 +msgid "Once installation is complete, you can boot the system that's on your @file{guixsd.img} image. @xref{Running GuixSD in a VM}, for how to do that." msgstr "" #. type: cindex -#: doc/guix.texi:8662 +#: doc/guix.texi:8872 #, no-wrap msgid "installation image" msgstr "" #. type: Plain text -#: doc/guix.texi:8665 -msgid "" -"The installation image described above was built using the @command{guix " -"system} command, specifically:" +#: doc/guix.texi:8875 +msgid "The installation image described above was built using the @command{guix system} command, specifically:" msgstr "" #. type: example -#: doc/guix.texi:8668 +#: doc/guix.texi:8878 #, no-wrap msgid "guix system disk-image gnu/system/install.scm\n" msgstr "" #. type: Plain text -#: doc/guix.texi:8673 -msgid "" -"Have a look at @file{gnu/system/install.scm} in the source tree, and see " -"also @ref{Invoking guix system} for more information about the installation " -"image." +#: doc/guix.texi:8883 +msgid "Have a look at @file{gnu/system/install.scm} in the source tree, and see also @ref{Invoking guix system} for more information about the installation image." +msgstr "" + +#. type: subsection +#: doc/guix.texi:8884 +#, no-wrap +msgid "Building the Installation Image for ARM Boards" +msgstr "Construire l'image d'installation pour les cartes ARM" + +#. type: Plain text +#: doc/guix.texi:8888 +msgid "Many ARM boards require a specific variant of the @uref{http://www.denx.de/wiki/U-Boot/, U-Boot} bootloader." +msgstr "" + +#. type: Plain text +#: doc/guix.texi:8892 +msgid "If you build a disk image and the bootloader is not available otherwise (on another boot drive etc), it's advisable to build an image that includes the bootloader, specifically:" +msgstr "" + +#. type: example +#: doc/guix.texi:8895 +#, no-wrap +msgid "guix system disk-image --system=armhf-linux -e '((@@ (gnu system install) os-with-u-boot) (@@ (gnu system install) installation-os) \"A20-OLinuXino-Lime2\")'\n" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:8899 +msgid "@code{A20-OLinuXino-Lime2} is the name of the board. If you specify an invalid board, a list of possible boards will be printed." msgstr "" #. type: cindex -#: doc/guix.texi:8677 +#: doc/guix.texi:8903 #, no-wrap msgid "system configuration" msgstr "" #. type: Plain text -#: doc/guix.texi:8683 -msgid "" -"The Guix System Distribution supports a consistent whole-system " -"configuration mechanism. By that we mean that all aspects of the global " -"system configuration---such as the available system services, timezone and " -"locale settings, user accounts---are declared in a single place. Such a " -"@dfn{system configuration} can be @dfn{instantiated}---i.e., effected." +#: doc/guix.texi:8909 +msgid "The Guix System Distribution supports a consistent whole-system configuration mechanism. By that we mean that all aspects of the global system configuration---such as the available system services, timezone and locale settings, user accounts---are declared in a single place. Such a @dfn{system configuration} can be @dfn{instantiated}---i.e., effected." msgstr "" #. type: Plain text -#: doc/guix.texi:8693 -msgid "" -"One of the advantages of putting all the system configuration under the " -"control of Guix is that it supports transactional system upgrades, and makes " -"it possible to roll back to a previous system instantiation, should " -"something go wrong with the new one (@pxref{Features}). Another advantage " -"is that it makes it easy to replicate the exact same configuration across " -"different machines, or at different points in time, without having to resort " -"to additional administration tools layered on top of the own tools of the " -"system." +#: doc/guix.texi:8919 +msgid "One of the advantages of putting all the system configuration under the control of Guix is that it supports transactional system upgrades, and makes it possible to roll back to a previous system instantiation, should something go wrong with the new one (@pxref{Features}). Another advantage is that it makes it easy to replicate the exact same configuration across different machines, or at different points in time, without having to resort to additional administration tools layered on top of the own tools of the system." msgstr "" #. type: Plain text -#: doc/guix.texi:8698 -msgid "" -"This section describes this mechanism. First we focus on the system " -"administrator's viewpoint---explaining how the system is configured and " -"instantiated. Then we show how this mechanism can be extended, for instance " -"to support new system services." +#: doc/guix.texi:8924 +msgid "This section describes this mechanism. First we focus on the system administrator's viewpoint---explaining how the system is configured and instantiated. Then we show how this mechanism can be extended, for instance to support new system services." msgstr "" #. type: Plain text -#: doc/guix.texi:8725 -msgid "" -"The operating system is configured by providing an @code{operating-system} " -"declaration in a file that can then be passed to the @command{guix system} " -"command (@pxref{Invoking guix system}). A simple setup, with the default " -"system services, the default Linux-Libre kernel, initial RAM disk, and boot " -"loader looks like this:" +#: doc/guix.texi:8951 +msgid "The operating system is configured by providing an @code{operating-system} declaration in a file that can then be passed to the @command{guix system} command (@pxref{Invoking guix system}). A simple setup, with the default system services, the default Linux-Libre kernel, initial RAM disk, and boot loader looks like this:" msgstr "" #. type: findex -#: doc/guix.texi:8726 +#: doc/guix.texi:8952 #, no-wrap msgid "operating-system" msgstr "" #. type: include -#: doc/guix.texi:8728 +#: doc/guix.texi:8954 #, no-wrap msgid "os-config-bare-bones.texi" msgstr "" #. type: Plain text -#: doc/guix.texi:8735 -msgid "" -"This example should be self-describing. Some of the fields defined above, " -"such as @code{host-name} and @code{bootloader}, are mandatory. Others, such " -"as @code{packages} and @code{services}, can be omitted, in which case they " -"get a default value." +#: doc/guix.texi:8961 +msgid "This example should be self-describing. Some of the fields defined above, such as @code{host-name} and @code{bootloader}, are mandatory. Others, such as @code{packages} and @code{services}, can be omitted, in which case they get a default value." msgstr "" #. type: Plain text -#: doc/guix.texi:8740 -msgid "" -"Below we discuss the effect of some of the most important fields " -"(@pxref{operating-system Reference}, for details about all the available " -"fields), and how to @dfn{instantiate} the operating system using " -"@command{guix system}." +#: doc/guix.texi:8966 +msgid "Below we discuss the effect of some of the most important fields (@pxref{operating-system Reference}, for details about all the available fields), and how to @dfn{instantiate} the operating system using @command{guix system}." msgstr "" #. type: unnumberedsubsubsec -#: doc/guix.texi:8741 +#: doc/guix.texi:8967 #, no-wrap msgid "Globally-Visible Packages" msgstr "" #. type: vindex -#: doc/guix.texi:8743 +#: doc/guix.texi:8969 #, no-wrap msgid "%base-packages" msgstr "" #. type: Plain text -#: doc/guix.texi:8756 -msgid "" -"The @code{packages} field lists packages that will be globally visible on " -"the system, for all user accounts---i.e., in every user's @code{PATH} " -"environment variable---in addition to the per-user profiles (@pxref{Invoking " -"guix package}). The @var{%base-packages} variable provides all the tools " -"one would expect for basic user and administrator tasks---including the GNU " -"Core Utilities, the GNU Networking Utilities, the GNU Zile lightweight text " -"editor, @command{find}, @command{grep}, etc. The example above adds " -"GNU@tie{}Screen and OpenSSH to those, taken from the @code{(gnu packages " -"screen)} and @code{(gnu packages ssh)} modules (@pxref{Package Modules}). " -"The @code{(list package output)} syntax can be used to add a specific output " -"of a package:" +#: doc/guix.texi:8982 +msgid "The @code{packages} field lists packages that will be globally visible on the system, for all user accounts---i.e., in every user's @code{PATH} environment variable---in addition to the per-user profiles (@pxref{Invoking guix package}). The @var{%base-packages} variable provides all the tools one would expect for basic user and administrator tasks---including the GNU Core Utilities, the GNU Networking Utilities, the GNU Zile lightweight text editor, @command{find}, @command{grep}, etc. The example above adds GNU@tie{}Screen and OpenSSH to those, taken from the @code{(gnu packages screen)} and @code{(gnu packages ssh)} modules (@pxref{Package Modules}). The @code{(list package output)} syntax can be used to add a specific output of a package:" msgstr "" #. type: lisp -#: doc/guix.texi:8760 +#: doc/guix.texi:8986 #, no-wrap msgid "" "(use-modules (gnu packages))\n" @@ -19417,7 +15429,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:8765 +#: doc/guix.texi:8991 #, no-wrap msgid "" "(operating-system\n" @@ -19427,25 +15439,18 @@ msgid "" msgstr "" #. type: findex -#: doc/guix.texi:8767 +#: doc/guix.texi:8993 #, no-wrap msgid "specification->package" msgstr "" #. type: Plain text -#: doc/guix.texi:8776 -msgid "" -"Referring to packages by variable name, like @code{bind} above, has the " -"advantage of being unambiguous; it also allows typos and such to be " -"diagnosed right away as ``unbound variables''. The downside is that one " -"needs to know which module defines which package, and to augment the " -"@code{use-package-modules} line accordingly. To avoid that, one can use the " -"@code{specification->package} procedure of the @code{(gnu packages)} module, " -"which returns the best package for a given name or name and version:" +#: doc/guix.texi:9002 +msgid "Referring to packages by variable name, like @code{bind} above, has the advantage of being unambiguous; it also allows typos and such to be diagnosed right away as ``unbound variables''. The downside is that one needs to know which module defines which package, and to augment the @code{use-package-modules} line accordingly. To avoid that, one can use the @code{specification->package} procedure of the @code{(gnu packages)} module, which returns the best package for a given name or name and version:" msgstr "" #. type: lisp -#: doc/guix.texi:8779 +#: doc/guix.texi:9005 #, no-wrap msgid "" "(use-modules (gnu packages))\n" @@ -19453,7 +15458,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:8785 +#: doc/guix.texi:9011 #, no-wrap msgid "" "(operating-system\n" @@ -19464,67 +15469,52 @@ msgid "" msgstr "" #. type: unnumberedsubsubsec -#: doc/guix.texi:8787 +#: doc/guix.texi:9013 #, no-wrap msgid "System Services" msgstr "" #. type: cindex -#: doc/guix.texi:8789 doc/guix.texi:19933 doc/guix.texi:20851 +#: doc/guix.texi:9015 doc/guix.texi:20417 doc/guix.texi:21335 #, no-wrap msgid "services" msgstr "" #. type: vindex -#: doc/guix.texi:8790 +#: doc/guix.texi:9016 #, no-wrap msgid "%base-services" msgstr "" #. type: Plain text -#: doc/guix.texi:8800 -msgid "" -"The @code{services} field lists @dfn{system services} to be made available " -"when the system starts (@pxref{Services}). The @code{operating-system} " -"declaration above specifies that, in addition to the basic services, we want " -"the @command{lshd} secure shell daemon listening on port 2222 " -"(@pxref{Networking Services, @code{lsh-service}}). Under the hood, " -"@code{lsh-service} arranges so that @code{lshd} is started with the right " -"command-line options, possibly with supporting configuration files generated " -"as needed (@pxref{Defining Services})." +#: doc/guix.texi:9026 +msgid "The @code{services} field lists @dfn{system services} to be made available when the system starts (@pxref{Services}). The @code{operating-system} declaration above specifies that, in addition to the basic services, we want the @command{lshd} secure shell daemon listening on port 2222 (@pxref{Networking Services, @code{lsh-service}}). Under the hood, @code{lsh-service} arranges so that @code{lshd} is started with the right command-line options, possibly with supporting configuration files generated as needed (@pxref{Defining Services})." msgstr "" #. type: cindex -#: doc/guix.texi:8801 +#: doc/guix.texi:9027 #, no-wrap msgid "customization, of services" msgstr "" #. type: findex -#: doc/guix.texi:8802 +#: doc/guix.texi:9028 #, no-wrap msgid "modify-services" msgstr "" #. type: Plain text -#: doc/guix.texi:8806 -msgid "" -"Occasionally, instead of using the base services as is, you will want to " -"customize them. To do this, use @code{modify-services} (@pxref{Service " -"Reference, @code{modify-services}}) to modify the list." +#: doc/guix.texi:9032 +msgid "Occasionally, instead of using the base services as is, you will want to customize them. To do this, use @code{modify-services} (@pxref{Service Reference, @code{modify-services}}) to modify the list." msgstr "" #. type: Plain text -#: doc/guix.texi:8811 -msgid "" -"For example, suppose you want to modify @code{guix-daemon} and Mingetty (the " -"console log-in) in the @var{%base-services} list (@pxref{Base Services, " -"@code{%base-services}}). To do that, you can write the following in your " -"operating system declaration:" +#: doc/guix.texi:9037 +msgid "For example, suppose you want to modify @code{guix-daemon} and Mingetty (the console log-in) in the @var{%base-services} list (@pxref{Base Services, @code{%base-services}}). To do that, you can write the following in your operating system declaration:" msgstr "" #. type: lisp -#: doc/guix.texi:8824 +#: doc/guix.texi:9050 #, no-wrap msgid "" "(define %my-services\n" @@ -19542,7 +15532,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:8828 +#: doc/guix.texi:9054 #, no-wrap msgid "" "(operating-system\n" @@ -19551,83 +15541,55 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:8839 -msgid "" -"This changes the configuration---i.e., the service parameters---of the " -"@code{guix-service-type} instance, and that of all the @code{mingetty-" -"service-type} instances in the @var{%base-services} list. Observe how this " -"is accomplished: first, we arrange for the original configuration to be " -"bound to the identifier @code{config} in the @var{body}, and then we write " -"the @var{body} so that it evaluates to the desired configuration. In " -"particular, notice how we use @code{inherit} to create a new configuration " -"which has the same values as the old configuration, but with a few " -"modifications." +#: doc/guix.texi:9065 +msgid "This changes the configuration---i.e., the service parameters---of the @code{guix-service-type} instance, and that of all the @code{mingetty-service-type} instances in the @var{%base-services} list. Observe how this is accomplished: first, we arrange for the original configuration to be bound to the identifier @code{config} in the @var{body}, and then we write the @var{body} so that it evaluates to the desired configuration. In particular, notice how we use @code{inherit} to create a new configuration which has the same values as the old configuration, but with a few modifications." msgstr "" #. type: Plain text -#: doc/guix.texi:8846 -msgid "" -"The configuration for a typical ``desktop'' usage, with an encrypted root " -"partition, the X11 display server, GNOME and Xfce (users can choose which of " -"these desktop environments to use at the log-in screen by pressing " -"@kbd{F1}), network management, power management, and more, would look like " -"this:" +#: doc/guix.texi:9072 +msgid "The configuration for a typical ``desktop'' usage, with an encrypted root partition, the X11 display server, GNOME and Xfce (users can choose which of these desktop environments to use at the log-in screen by pressing @kbd{F1}), network management, power management, and more, would look like this:" msgstr "" #. type: include -#: doc/guix.texi:8848 +#: doc/guix.texi:9074 #, no-wrap msgid "os-config-desktop.texi" msgstr "" #. type: cindex -#: doc/guix.texi:8851 +#: doc/guix.texi:9077 #, no-wrap msgid "UEFI" msgstr "" #. type: Plain text -#: doc/guix.texi:8854 -msgid "" -"A graphical UEFI system with a choice of lightweight window managers instead " -"of full-blown desktop environments would look like this:" +#: doc/guix.texi:9080 +msgid "A graphical UEFI system with a choice of lightweight window managers instead of full-blown desktop environments would look like this:" msgstr "" #. type: include -#: doc/guix.texi:8856 +#: doc/guix.texi:9082 #, no-wrap msgid "os-config-lightweight-desktop.texi" msgstr "" #. type: Plain text -#: doc/guix.texi:8862 -msgid "" -"This example refers to the @file{/boot/efi} file system by its UUID, " -"@code{1234-ABCD}. Replace this UUID with the right UUID on your system, as " -"returned by the @command{blkid} command." +#: doc/guix.texi:9088 +msgid "This example refers to the @file{/boot/efi} file system by its UUID, @code{1234-ABCD}. Replace this UUID with the right UUID on your system, as returned by the @command{blkid} command." msgstr "" #. type: Plain text -#: doc/guix.texi:8866 -msgid "" -"@xref{Desktop Services}, for the exact list of services provided by " -"@var{%desktop-services}. @xref{X.509 Certificates}, for background " -"information about the @code{nss-certs} package that is used here." +#: doc/guix.texi:9092 +msgid "@xref{Desktop Services}, for the exact list of services provided by @var{%desktop-services}. @xref{X.509 Certificates}, for background information about the @code{nss-certs} package that is used here." msgstr "" #. type: Plain text -#: doc/guix.texi:8873 -msgid "" -"Again, @var{%desktop-services} is just a list of service objects. If you " -"want to remove services from there, you can do so using the procedures for " -"list filtering (@pxref{SRFI-1 Filtering and Partitioning,,, guile, GNU Guile " -"Reference Manual}). For instance, the following expression returns a list " -"that contains all the services in @var{%desktop-services} minus the Avahi " -"service:" +#: doc/guix.texi:9099 +msgid "Again, @var{%desktop-services} is just a list of service objects. If you want to remove services from there, you can do so using the procedures for list filtering (@pxref{SRFI-1 Filtering and Partitioning,,, guile, GNU Guile Reference Manual}). For instance, the following expression returns a list that contains all the services in @var{%desktop-services} minus the Avahi service:" msgstr "" #. type: example -#: doc/guix.texi:8878 +#: doc/guix.texi:9104 #, no-wrap msgid "" "(remove (lambda (service)\n" @@ -19636,356 +15598,288 @@ msgid "" msgstr "" #. type: unnumberedsubsubsec -#: doc/guix.texi:8880 +#: doc/guix.texi:9106 #, no-wrap msgid "Instantiating the System" msgstr "" #. type: Plain text -#: doc/guix.texi:8887 -msgid "" -"Assuming the @code{operating-system} declaration is stored in the @file{my-" -"system-config.scm} file, the @command{guix system reconfigure my-system-" -"config.scm} command instantiates that configuration, and makes it the " -"default GRUB boot entry (@pxref{Invoking guix system})." +#: doc/guix.texi:9113 +msgid "Assuming the @code{operating-system} declaration is stored in the @file{my-system-config.scm} file, the @command{guix system reconfigure my-system-config.scm} command instantiates that configuration, and makes it the default GRUB boot entry (@pxref{Invoking guix system})." msgstr "" #. type: Plain text -#: doc/guix.texi:8895 -msgid "" -"The normal way to change the system configuration is by updating this file " -"and re-running @command{guix system reconfigure}. One should never have to " -"touch files in @file{/etc} or to run commands that modify the system state " -"such as @command{useradd} or @command{grub-install}. In fact, you must " -"avoid that since that would not only void your warranty but also prevent you " -"from rolling back to previous versions of your system, should you ever need " -"to." +#: doc/guix.texi:9121 +msgid "The normal way to change the system configuration is by updating this file and re-running @command{guix system reconfigure}. One should never have to touch files in @file{/etc} or to run commands that modify the system state such as @command{useradd} or @command{grub-install}. In fact, you must avoid that since that would not only void your warranty but also prevent you from rolling back to previous versions of your system, should you ever need to." msgstr "" #. type: cindex -#: doc/guix.texi:8896 +#: doc/guix.texi:9122 #, no-wrap msgid "roll-back, of the operating system" msgstr "" #. type: Plain text -#: doc/guix.texi:8906 -msgid "" -"Speaking of roll-back, each time you run @command{guix system reconfigure}, " -"a new @dfn{generation} of the system is created---without modifying or " -"deleting previous generations. Old system generations get an entry in the " -"bootloader boot menu, allowing you to boot them in case something went wrong " -"with the latest generation. Reassuring, no? The @command{guix system list-" -"generations} command lists the system generations available on disk. It is " -"also possible to roll back the system via the commands @command{guix system " -"roll-back} and @command{guix system switch-generation}." +#: doc/guix.texi:9132 +msgid "Speaking of roll-back, each time you run @command{guix system reconfigure}, a new @dfn{generation} of the system is created---without modifying or deleting previous generations. Old system generations get an entry in the bootloader boot menu, allowing you to boot them in case something went wrong with the latest generation. Reassuring, no? The @command{guix system list-generations} command lists the system generations available on disk. It is also possible to roll back the system via the commands @command{guix system roll-back} and @command{guix system switch-generation}." msgstr "" #. type: Plain text -#: doc/guix.texi:8912 -msgid "" -"Although the command @command{guix system reconfigure} will not modify " -"previous generations, must take care when the current generation is not the " -"latest (e.g., after invoking @command{guix system roll-back}), since the " -"operation might overwrite a later generation (@pxref{Invoking guix system})." +#: doc/guix.texi:9138 +msgid "Although the command @command{guix system reconfigure} will not modify previous generations, must take care when the current generation is not the latest (e.g., after invoking @command{guix system roll-back}), since the operation might overwrite a later generation (@pxref{Invoking guix system})." msgstr "" #. type: unnumberedsubsubsec -#: doc/guix.texi:8913 +#: doc/guix.texi:9139 #, no-wrap msgid "The Programming Interface" msgstr "" #. type: Plain text -#: doc/guix.texi:8918 -msgid "" -"At the Scheme level, the bulk of an @code{operating-system} declaration is " -"instantiated with the following monadic procedure (@pxref{The Store Monad}):" +#: doc/guix.texi:9144 +msgid "At the Scheme level, the bulk of an @code{operating-system} declaration is instantiated with the following monadic procedure (@pxref{The Store Monad}):" msgstr "" #. type: deffn -#: doc/guix.texi:8919 +#: doc/guix.texi:9145 #, no-wrap msgid "{Monadic Procedure} operating-system-derivation os" msgstr "" #. type: deffn -#: doc/guix.texi:8922 -msgid "" -"Return a derivation that builds @var{os}, an @code{operating-system} object " -"(@pxref{Derivations})." +#: doc/guix.texi:9148 +msgid "Return a derivation that builds @var{os}, an @code{operating-system} object (@pxref{Derivations})." msgstr "" #. type: deffn -#: doc/guix.texi:8926 -msgid "" -"The output of the derivation is a single directory that refers to all the " -"packages, configuration files, and other supporting files needed to " -"instantiate @var{os}." +#: doc/guix.texi:9152 +msgid "The output of the derivation is a single directory that refers to all the packages, configuration files, and other supporting files needed to instantiate @var{os}." msgstr "" #. type: Plain text -#: doc/guix.texi:8931 -msgid "" -"This procedure is provided by the @code{(gnu system)} module. Along with " -"@code{(gnu services)} (@pxref{Services}), this module contains the guts of " -"GuixSD. Make sure to visit it!" +#: doc/guix.texi:9157 +msgid "This procedure is provided by the @code{(gnu system)} module. Along with @code{(gnu services)} (@pxref{Services}), this module contains the guts of GuixSD. Make sure to visit it!" msgstr "" #. type: subsection -#: doc/guix.texi:8934 +#: doc/guix.texi:9160 #, no-wrap msgid "@code{operating-system} Reference" msgstr "" #. type: Plain text -#: doc/guix.texi:8939 -msgid "" -"This section summarizes all the options available in @code{operating-system} " -"declarations (@pxref{Using the Configuration System})." +#: doc/guix.texi:9165 +msgid "This section summarizes all the options available in @code{operating-system} declarations (@pxref{Using the Configuration System})." msgstr "" #. type: deftp -#: doc/guix.texi:8940 +#: doc/guix.texi:9166 #, no-wrap msgid "{Data Type} operating-system" msgstr "" #. type: deftp -#: doc/guix.texi:8944 -msgid "" -"This is the data type representing an operating system configuration. By " -"that, we mean all the global system configuration, not per-user " -"configuration (@pxref{Using the Configuration System})." +#: doc/guix.texi:9170 +msgid "This is the data type representing an operating system configuration. By that, we mean all the global system configuration, not per-user configuration (@pxref{Using the Configuration System})." msgstr "" #. type: item -#: doc/guix.texi:8946 +#: doc/guix.texi:9172 #, no-wrap msgid "@code{kernel} (default: @var{linux-libre})" msgstr "" #. type: table -#: doc/guix.texi:8950 -msgid "" -"The package object of the operating system kernel to use@footnote{Currently " -"only the Linux-libre kernel is supported. In the future, it will be " -"possible to use the GNU@tie{}Hurd.}." +#: doc/guix.texi:9176 +msgid "The package object of the operating system kernel to use@footnote{Currently only the Linux-libre kernel is supported. In the future, it will be possible to use the GNU@tie{}Hurd.}." msgstr "" #. type: item -#: doc/guix.texi:8951 +#: doc/guix.texi:9177 #, no-wrap msgid "@code{kernel-arguments} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:8954 -msgid "" -"List of strings or gexps representing additional arguments to pass on the " -"command-line of the kernel---e.g., @code{(\"console=ttyS0\")}." +#: doc/guix.texi:9180 +msgid "List of strings or gexps representing additional arguments to pass on the command-line of the kernel---e.g., @code{(\"console=ttyS0\")}." msgstr "" #. type: code{#1} -#: doc/guix.texi:8955 doc/guix.texi:20130 doc/guix.texi:20149 +#: doc/guix.texi:9181 doc/guix.texi:20614 doc/guix.texi:20633 #, no-wrap msgid "bootloader" msgstr "" #. type: table -#: doc/guix.texi:8957 -msgid "" -"The system bootloader configuration object. @xref{Bootloader Configuration}." +#: doc/guix.texi:9183 +msgid "The system bootloader configuration object. @xref{Bootloader Configuration}." msgstr "" #. type: item -#: doc/guix.texi:8958 +#: doc/guix.texi:9184 #, no-wrap msgid "@code{initrd-modules} (default: @code{%base-initrd-modules})" msgstr "" #. type: code{#1} -#: doc/guix.texi:8959 doc/guix.texi:19970 doc/guix.texi:20073 -#: doc/guix.texi:20268 +#: doc/guix.texi:9185 doc/guix.texi:20454 doc/guix.texi:20557 +#: doc/guix.texi:20752 #, no-wrap msgid "initrd" msgstr "" #. type: cindex -#: doc/guix.texi:8960 doc/guix.texi:19971 doc/guix.texi:20074 +#: doc/guix.texi:9186 doc/guix.texi:20455 doc/guix.texi:20558 #, no-wrap msgid "initial RAM disk" msgstr "" #. type: table -#: doc/guix.texi:8963 -msgid "" -"The list of Linux kernel modules that need to be available in the initial " -"RAM disk. @xref{Initial RAM Disk}." +#: doc/guix.texi:9189 +msgid "The list of Linux kernel modules that need to be available in the initial RAM disk. @xref{Initial RAM Disk}." msgstr "" #. type: item -#: doc/guix.texi:8964 +#: doc/guix.texi:9190 #, no-wrap msgid "@code{initrd} (default: @code{base-initrd})" msgstr "" #. type: table -#: doc/guix.texi:8968 -msgid "" -"A monadic procedure that returns an initial RAM disk for the Linux kernel. " -"This field is provided to support low-level customization and should rarely " -"be needed for casual use. @xref{Initial RAM Disk}." +#: doc/guix.texi:9194 +msgid "A monadic procedure that returns an initial RAM disk for the Linux kernel. This field is provided to support low-level customization and should rarely be needed for casual use. @xref{Initial RAM Disk}." msgstr "" #. type: item -#: doc/guix.texi:8969 +#: doc/guix.texi:9195 #, no-wrap msgid "@code{firmware} (default: @var{%base-firmware})" msgstr "" #. type: cindex -#: doc/guix.texi:8970 +#: doc/guix.texi:9196 #, no-wrap msgid "firmware" msgstr "" #. type: table -#: doc/guix.texi:8972 +#: doc/guix.texi:9198 msgid "List of firmware packages loadable by the operating system kernel." msgstr "" #. type: table -#: doc/guix.texi:8977 -msgid "" -"The default includes firmware needed for Atheros- and Broadcom-based WiFi " -"devices (Linux-libre modules @code{ath9k} and @code{b43-open}, " -"respectively). @xref{Hardware Considerations}, for more info on supported " -"hardware." +#: doc/guix.texi:9203 +msgid "The default includes firmware needed for Atheros- and Broadcom-based WiFi devices (Linux-libre modules @code{ath9k} and @code{b43-open}, respectively). @xref{Hardware Considerations}, for more info on supported hardware." msgstr "" #. type: code{#1} -#: doc/guix.texi:8978 +#: doc/guix.texi:9204 #, no-wrap msgid "host-name" msgstr "" #. type: table -#: doc/guix.texi:8980 +#: doc/guix.texi:9206 msgid "The host name." msgstr "" #. type: code{#1} -#: doc/guix.texi:8981 +#: doc/guix.texi:9207 #, no-wrap msgid "hosts-file" msgstr "" #. type: cindex -#: doc/guix.texi:8982 +#: doc/guix.texi:9208 #, no-wrap msgid "hosts file" msgstr "" #. type: table -#: doc/guix.texi:8987 -msgid "" -"A file-like object (@pxref{G-Expressions, file-like objects}) for use as " -"@file{/etc/hosts} (@pxref{Host Names,,, libc, The GNU C Library Reference " -"Manual}). The default is a file with entries for @code{localhost} and " -"@var{host-name}." +#: doc/guix.texi:9213 +msgid "A file-like object (@pxref{G-Expressions, file-like objects}) for use as @file{/etc/hosts} (@pxref{Host Names,,, libc, The GNU C Library Reference Manual}). The default is a file with entries for @code{localhost} and @var{host-name}." msgstr "" #. type: item -#: doc/guix.texi:8988 +#: doc/guix.texi:9214 #, no-wrap msgid "@code{mapped-devices} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:8990 +#: doc/guix.texi:9216 msgid "A list of mapped devices. @xref{Mapped Devices}." msgstr "" #. type: code{#1} -#: doc/guix.texi:8991 +#: doc/guix.texi:9217 #, no-wrap msgid "file-systems" msgstr "" #. type: table -#: doc/guix.texi:8993 +#: doc/guix.texi:9219 msgid "A list of file systems. @xref{File Systems}." msgstr "" #. type: item -#: doc/guix.texi:8994 +#: doc/guix.texi:9220 #, no-wrap msgid "@code{swap-devices} (default: @code{'()})" msgstr "" #. type: cindex -#: doc/guix.texi:8995 +#: doc/guix.texi:9221 #, no-wrap msgid "swap devices" msgstr "" #. type: table -#: doc/guix.texi:9002 -msgid "" -"A list of strings identifying devices or files to be used for ``swap " -"space'' (@pxref{Memory Concepts,,, libc, The GNU C Library Reference " -"Manual}). For example, @code{'(\"/dev/sda3\")} or @code{'(\"/swapfile\")}. " -"It is possible to specify a swap file in a file system on a mapped device, " -"provided that the necessary device mapping and file system are also " -"specified. @xref{Mapped Devices} and @ref{File Systems}." +#: doc/guix.texi:9228 +msgid "A list of strings identifying devices or files to be used for ``swap space'' (@pxref{Memory Concepts,,, libc, The GNU C Library Reference Manual}). For example, @code{'(\"/dev/sda3\")} or @code{'(\"/swapfile\")}. It is possible to specify a swap file in a file system on a mapped device, provided that the necessary device mapping and file system are also specified. @xref{Mapped Devices} and @ref{File Systems}." msgstr "" #. type: item -#: doc/guix.texi:9003 +#: doc/guix.texi:9229 #, no-wrap msgid "@code{users} (default: @code{%base-user-accounts})" msgstr "" #. type: itemx -#: doc/guix.texi:9004 +#: doc/guix.texi:9230 #, no-wrap msgid "@code{groups} (default: @var{%base-groups})" msgstr "" #. type: table -#: doc/guix.texi:9006 +#: doc/guix.texi:9232 msgid "List of user accounts and groups. @xref{User Accounts}." msgstr "" #. type: table -#: doc/guix.texi:9009 -msgid "" -"If the @code{users} list lacks a user account with UID@tie{}0, a ``root'' " -"account with UID@tie{}0 is automatically added." +#: doc/guix.texi:9235 +msgid "If the @code{users} list lacks a user account with UID@tie{}0, a ``root'' account with UID@tie{}0 is automatically added." msgstr "" #. type: item -#: doc/guix.texi:9010 +#: doc/guix.texi:9236 #, no-wrap msgid "@code{skeletons} (default: @code{(default-skeletons)})" msgstr "" #. type: table -#: doc/guix.texi:9014 -msgid "" -"A list target file name/file-like object tuples (@pxref{G-Expressions, file-" -"like objects}). These are the skeleton files that will be added to the home " -"directory of newly-created user accounts." +#: doc/guix.texi:9240 +msgid "A list target file name/file-like object tuples (@pxref{G-Expressions, file-like objects}). These are the skeleton files that will be added to the home directory of newly-created user accounts." msgstr "" #. type: table -#: doc/guix.texi:9016 +#: doc/guix.texi:9242 msgid "For instance, a valid value may look like this:" msgstr "" #. type: example -#: doc/guix.texi:9022 +#: doc/guix.texi:9248 #, no-wrap msgid "" "`((\".bashrc\" ,(plain-file \"bashrc\" \"echo Hello\\n\"))\n" @@ -19995,196 +15889,166 @@ msgid "" msgstr "" #. type: item -#: doc/guix.texi:9024 +#: doc/guix.texi:9250 #, no-wrap msgid "@code{issue} (default: @var{%default-issue})" msgstr "" #. type: table -#: doc/guix.texi:9027 -msgid "" -"A string denoting the contents of the @file{/etc/issue} file, which is " -"displayed when users log in on a text console." +#: doc/guix.texi:9253 +msgid "A string denoting the contents of the @file{/etc/issue} file, which is displayed when users log in on a text console." msgstr "" #. type: item -#: doc/guix.texi:9028 +#: doc/guix.texi:9254 #, no-wrap msgid "@code{packages} (default: @var{%base-packages})" msgstr "" #. type: table -#: doc/guix.texi:9031 -msgid "" -"The set of packages installed in the global profile, which is accessible at " -"@file{/run/current-system/profile}." +#: doc/guix.texi:9257 +msgid "The set of packages installed in the global profile, which is accessible at @file{/run/current-system/profile}." msgstr "" #. type: table -#: doc/guix.texi:9035 -msgid "" -"The default set includes core utilities and it is good practice to install " -"non-core utilities in user profiles (@pxref{Invoking guix package})." +#: doc/guix.texi:9261 +msgid "The default set includes core utilities and it is good practice to install non-core utilities in user profiles (@pxref{Invoking guix package})." msgstr "" #. type: code{#1} -#: doc/guix.texi:9036 +#: doc/guix.texi:9262 #, no-wrap msgid "timezone" msgstr "" #. type: table -#: doc/guix.texi:9038 +#: doc/guix.texi:9264 msgid "A timezone identifying string---e.g., @code{\"Europe/Paris\"}." msgstr "" #. type: table -#: doc/guix.texi:9042 -msgid "" -"You can run the @command{tzselect} command to find out which timezone string " -"corresponds to your region. Choosing an invalid timezone name causes " -"@command{guix system} to fail." +#: doc/guix.texi:9268 +msgid "You can run the @command{tzselect} command to find out which timezone string corresponds to your region. Choosing an invalid timezone name causes @command{guix system} to fail." msgstr "" #. type: item -#: doc/guix.texi:9043 +#: doc/guix.texi:9269 #, no-wrap msgid "@code{locale} (default: @code{\"en_US.utf8\"})" msgstr "" #. type: table -#: doc/guix.texi:9046 -msgid "" -"The name of the default locale (@pxref{Locale Names,,, libc, The GNU C " -"Library Reference Manual}). @xref{Locales}, for more information." +#: doc/guix.texi:9272 +msgid "The name of the default locale (@pxref{Locale Names,,, libc, The GNU C Library Reference Manual}). @xref{Locales}, for more information." msgstr "" #. type: item -#: doc/guix.texi:9047 +#: doc/guix.texi:9273 #, no-wrap msgid "@code{locale-definitions} (default: @var{%default-locale-definitions})" msgstr "" #. type: table -#: doc/guix.texi:9050 -msgid "" -"The list of locale definitions to be compiled and that may be used at run " -"time. @xref{Locales}." +#: doc/guix.texi:9276 +msgid "The list of locale definitions to be compiled and that may be used at run time. @xref{Locales}." msgstr "" #. type: item -#: doc/guix.texi:9051 +#: doc/guix.texi:9277 #, no-wrap msgid "@code{locale-libcs} (default: @code{(list @var{glibc})})" msgstr "" #. type: table -#: doc/guix.texi:9055 -msgid "" -"The list of GNU@tie{}libc packages whose locale data and tools are used to " -"build the locale definitions. @xref{Locales}, for compatibility " -"considerations that justify this option." +#: doc/guix.texi:9281 +msgid "The list of GNU@tie{}libc packages whose locale data and tools are used to build the locale definitions. @xref{Locales}, for compatibility considerations that justify this option." msgstr "" #. type: item -#: doc/guix.texi:9056 +#: doc/guix.texi:9282 #, no-wrap msgid "@code{name-service-switch} (default: @var{%default-nss})" msgstr "" #. type: table -#: doc/guix.texi:9060 -msgid "" -"Configuration of the libc name service switch (NSS)---a @code{} object. @xref{Name Service Switch}, for details." +#: doc/guix.texi:9286 +msgid "Configuration of the libc name service switch (NSS)---a @code{} object. @xref{Name Service Switch}, for details." msgstr "" #. type: item -#: doc/guix.texi:9061 +#: doc/guix.texi:9287 #, no-wrap msgid "@code{services} (default: @var{%base-services})" msgstr "" #. type: table -#: doc/guix.texi:9063 +#: doc/guix.texi:9289 msgid "A list of service objects denoting system services. @xref{Services}." msgstr "" #. type: item -#: doc/guix.texi:9064 +#: doc/guix.texi:9290 #, no-wrap msgid "@code{pam-services} (default: @code{(base-pam-services)})" msgstr "" #. type: cindex -#: doc/guix.texi:9065 +#: doc/guix.texi:9291 #, no-wrap msgid "PAM" msgstr "" #. type: cindex -#: doc/guix.texi:9066 +#: doc/guix.texi:9292 #, no-wrap msgid "pluggable authentication modules" msgstr "" #. type: table -#: doc/guix.texi:9069 +#: doc/guix.texi:9295 msgid "Linux @dfn{pluggable authentication module} (PAM) services." msgstr "" #. type: item -#: doc/guix.texi:9070 +#: doc/guix.texi:9296 #, no-wrap msgid "@code{setuid-programs} (default: @var{%setuid-programs})" msgstr "" #. type: table -#: doc/guix.texi:9073 -msgid "" -"List of string-valued G-expressions denoting setuid programs. @xref{Setuid " -"Programs}." +#: doc/guix.texi:9299 +msgid "List of string-valued G-expressions denoting setuid programs. @xref{Setuid Programs}." msgstr "" #. type: item -#: doc/guix.texi:9074 +#: doc/guix.texi:9300 #, no-wrap msgid "@code{sudoers-file} (default: @var{%sudoers-specification})" msgstr "" #. type: cindex -#: doc/guix.texi:9075 +#: doc/guix.texi:9301 #, no-wrap msgid "sudoers file" msgstr "" #. type: table -#: doc/guix.texi:9078 -msgid "" -"The contents of the @file{/etc/sudoers} file as a file-like object (@pxref{G-" -"Expressions, @code{local-file} and @code{plain-file}})." +#: doc/guix.texi:9304 +msgid "The contents of the @file{/etc/sudoers} file as a file-like object (@pxref{G-Expressions, @code{local-file} and @code{plain-file}})." msgstr "" #. type: table -#: doc/guix.texi:9083 -msgid "" -"This file specifies which users can use the @command{sudo} command, what " -"they are allowed to do, and what privileges they may gain. The default is " -"that only @code{root} and members of the @code{wheel} group may use " -"@code{sudo}." +#: doc/guix.texi:9309 +msgid "This file specifies which users can use the @command{sudo} command, what they are allowed to do, and what privileges they may gain. The default is that only @code{root} and members of the @code{wheel} group may use @code{sudo}." msgstr "" #. type: Plain text -#: doc/guix.texi:9094 -msgid "" -"The list of file systems to be mounted is specified in the @code{file-" -"systems} field of the operating system declaration (@pxref{Using the " -"Configuration System}). Each file system is declared using the @code{file-" -"system} form, like this:" +#: doc/guix.texi:9320 +msgid "The list of file systems to be mounted is specified in the @code{file-systems} field of the operating system declaration (@pxref{Using the Configuration System}). Each file system is declared using the @code{file-system} form, like this:" msgstr "" #. type: example -#: doc/guix.texi:9100 +#: doc/guix.texi:9326 #, no-wrap msgid "" "(file-system\n" @@ -20194,473 +16058,359 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9104 -msgid "" -"As usual, some of the fields are mandatory---those shown in the example " -"above---while others can be omitted. These are described below." +#: doc/guix.texi:9330 +msgid "As usual, some of the fields are mandatory---those shown in the example above---while others can be omitted. These are described below." msgstr "" #. type: deftp -#: doc/guix.texi:9105 +#: doc/guix.texi:9331 #, no-wrap msgid "{Data Type} file-system" msgstr "" #. type: deftp -#: doc/guix.texi:9108 -msgid "" -"Objects of this type represent file systems to be mounted. They contain the " -"following members:" +#: doc/guix.texi:9334 +msgid "Objects of this type represent file systems to be mounted. They contain the following members:" msgstr "" #. type: item -#: doc/guix.texi:9110 doc/guix.texi:9294 +#: doc/guix.texi:9336 doc/guix.texi:9522 #, no-wrap msgid "type" msgstr "" #. type: table -#: doc/guix.texi:9113 -msgid "" -"This is a string specifying the type of the file system---e.g., " -"@code{\"ext4\"}." +#: doc/guix.texi:9339 +msgid "This is a string specifying the type of the file system---e.g., @code{\"ext4\"}." msgstr "" #. type: code{#1} -#: doc/guix.texi:9114 +#: doc/guix.texi:9340 #, no-wrap msgid "mount-point" msgstr "" #. type: table -#: doc/guix.texi:9116 +#: doc/guix.texi:9342 msgid "This designates the place where the file system is to be mounted." msgstr "" #. type: code{#1} -#: doc/guix.texi:9117 +#: doc/guix.texi:9343 #, no-wrap msgid "device" msgstr "" #. type: table -#: doc/guix.texi:9121 -msgid "" -"This names the ``source'' of the file system. By default it is the name of " -"a node under @file{/dev}, but its meaning depends on the @code{title} field " -"described below." +#: doc/guix.texi:9353 +msgid "This names the ``source'' of the file system. It can be one of three things: a file system label, a file system UUID, or the name of a @file{/dev} node. Labels and UUIDs offer a way to refer to file systems without having to hard-code their actual device name@footnote{Note that, while it is tempting to use @file{/dev/disk/by-uuid} and similar device names to achieve the same result, this is not recommended: These special device nodes are created by the udev daemon and may be unavailable at the time the device is mounted.}." msgstr "" -#. type: item -#: doc/guix.texi:9122 +#. type: findex +#: doc/guix.texi:9354 #, no-wrap -msgid "@code{title} (default: @code{'device})" -msgstr "" +msgid "file-system-label" +msgstr "file-system-label" #. type: table -#: doc/guix.texi:9125 -msgid "" -"This is a symbol that specifies how the @code{device} field is to be " -"interpreted." -msgstr "" - -#. type: table -#: doc/guix.texi:9130 -msgid "" -"When it is the symbol @code{device}, then the @code{device} field is " -"interpreted as a file name; when it is @code{label}, then @code{device} is " -"interpreted as a file system label name; when it is @code{uuid}, " -"@code{device} is interpreted as a file system unique identifier (UUID)." -msgstr "" - -#. type: table -#: doc/guix.texi:9138 -msgid "" -"UUIDs may be converted from their string representation (as shown by the " -"@command{tune2fs -l} command) using the @code{uuid} form@footnote{The " -"@code{uuid} form expects 16-byte UUIDs as defined in @uref{https://tools." -"ietf.org/html/rfc4122, RFC@tie{}4122}. This is the form of UUID used by the " -"ext2 family of file systems and others, but it is different from ``UUIDs'' " -"found in FAT file systems, for instance.}, like this:" +#: doc/guix.texi:9359 +msgid "File system labels are created using the @code{file-system-label} procedure, UUIDs are created using @code{uuid}, and @file{/dev} node are plain strings. Here's an example of a file system referred to by its label, as shown by the @command{e2label} command:" msgstr "" #. type: example -#: doc/guix.texi:9145 +#: doc/guix.texi:9365 +#, no-wrap +msgid "" +"(file-system\n" +" (mount-point \"/home\")\n" +" (type \"ext4\")\n" +" (device (file-system-label \"my-home\")))\n" +msgstr "" + +#. type: findex +#: doc/guix.texi:9367 +#, no-wrap +msgid "uuid" +msgstr "" + +#. type: table +#: doc/guix.texi:9375 +msgid "UUIDs are converted from their string representation (as shown by the @command{tune2fs -l} command) using the @code{uuid} form@footnote{The @code{uuid} form expects 16-byte UUIDs as defined in @uref{https://tools.ietf.org/html/rfc4122, RFC@tie{}4122}. This is the form of UUID used by the ext2 family of file systems and others, but it is different from ``UUIDs'' found in FAT file systems, for instance.}, like this:" +msgstr "" + +#. type: example +#: doc/guix.texi:9381 #, no-wrap msgid "" "(file-system\n" " (mount-point \"/home\")\n" " (type \"ext4\")\n" -" (title 'uuid)\n" " (device (uuid \"4dab5feb-d176-45de-b287-9b0a6e4c01cb\")))\n" msgstr "" #. type: table -#: doc/guix.texi:9154 -msgid "" -"The @code{label} and @code{uuid} options offer a way to refer to file " -"systems without having to hard-code their actual device name@footnote{Note " -"that, while it is tempting to use @file{/dev/disk/by-uuid} and similar " -"device names to achieve the same result, this is not recommended: These " -"special device nodes are created by the udev daemon and may be unavailable " -"at the time the device is mounted.}." -msgstr "" - -#. type: table -#: doc/guix.texi:9161 -msgid "" -"However, when the source of a file system is a mapped device (@pxref{Mapped " -"Devices}), its @code{device} field @emph{must} refer to the mapped device " -"name---e.g., @file{/dev/mapper/root-partition}---and consequently " -"@code{title} must be set to @code{'device}. This is required so that the " -"system knows that mounting the file system depends on having the " -"corresponding device mapping established." +#: doc/guix.texi:9389 +msgid "When the source of a file system is a mapped device (@pxref{Mapped Devices}), its @code{device} field @emph{must} refer to the mapped device name---e.g., @file{\"/dev/mapper/root-partition\"}. This is required so that the system knows that mounting the file system depends on having the corresponding device mapping established." msgstr "" #. type: item -#: doc/guix.texi:9162 +#: doc/guix.texi:9390 #, no-wrap msgid "@code{flags} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:9167 -msgid "" -"This is a list of symbols denoting mount flags. Recognized flags include " -"@code{read-only}, @code{bind-mount}, @code{no-dev} (disallow access to " -"special files), @code{no-suid} (ignore setuid and setgid bits), and @code{no-" -"exec} (disallow program execution.)" +#: doc/guix.texi:9395 +msgid "This is a list of symbols denoting mount flags. Recognized flags include @code{read-only}, @code{bind-mount}, @code{no-dev} (disallow access to special files), @code{no-suid} (ignore setuid and setgid bits), and @code{no-exec} (disallow program execution.)" msgstr "" #. type: item -#: doc/guix.texi:9168 +#: doc/guix.texi:9396 #, no-wrap msgid "@code{options} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9170 +#: doc/guix.texi:9398 msgid "This is either @code{#f}, or a string denoting mount options." msgstr "" #. type: item -#: doc/guix.texi:9171 +#: doc/guix.texi:9399 #, no-wrap msgid "@code{mount?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:9176 -msgid "" -"This value indicates whether to automatically mount the file system when the " -"system is brought up. When set to @code{#f}, the file system gets an entry " -"in @file{/etc/fstab} (read by the @command{mount} command) but is not " -"automatically mounted." +#: doc/guix.texi:9404 +msgid "This value indicates whether to automatically mount the file system when the system is brought up. When set to @code{#f}, the file system gets an entry in @file{/etc/fstab} (read by the @command{mount} command) but is not automatically mounted." msgstr "" #. type: item -#: doc/guix.texi:9177 +#: doc/guix.texi:9405 #, no-wrap msgid "@code{needed-for-boot?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9182 -msgid "" -"This Boolean value indicates whether the file system is needed when " -"booting. If that is true, then the file system is mounted when the initial " -"RAM disk (initrd) is loaded. This is always the case, for instance, for the " -"root file system." +#: doc/guix.texi:9410 +msgid "This Boolean value indicates whether the file system is needed when booting. If that is true, then the file system is mounted when the initial RAM disk (initrd) is loaded. This is always the case, for instance, for the root file system." msgstr "" #. type: item -#: doc/guix.texi:9183 +#: doc/guix.texi:9411 #, no-wrap msgid "@code{check?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:9186 -msgid "" -"This Boolean indicates whether the file system needs to be checked for " -"errors before being mounted." +#: doc/guix.texi:9414 +msgid "This Boolean indicates whether the file system needs to be checked for errors before being mounted." msgstr "" #. type: item -#: doc/guix.texi:9187 +#: doc/guix.texi:9415 #, no-wrap msgid "@code{create-mount-point?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9189 +#: doc/guix.texi:9417 msgid "When true, the mount point is created if it does not exist yet." msgstr "" #. type: item -#: doc/guix.texi:9190 +#: doc/guix.texi:9418 #, no-wrap msgid "@code{dependencies} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:9194 -msgid "" -"This is a list of @code{} or @code{} objects " -"representing file systems that must be mounted or mapped devices that must " -"be opened before (and unmounted or closed after) this one." +#: doc/guix.texi:9422 +msgid "This is a list of @code{} or @code{} objects representing file systems that must be mounted or mapped devices that must be opened before (and unmounted or closed after) this one." msgstr "" #. type: table -#: doc/guix.texi:9198 -msgid "" -"As an example, consider a hierarchy of mounts: @file{/sys/fs/cgroup} is a " -"dependency of @file{/sys/fs/cgroup/cpu} and @file{/sys/fs/cgroup/memory}." +#: doc/guix.texi:9426 +msgid "As an example, consider a hierarchy of mounts: @file{/sys/fs/cgroup} is a dependency of @file{/sys/fs/cgroup/cpu} and @file{/sys/fs/cgroup/memory}." msgstr "" #. type: table -#: doc/guix.texi:9201 -msgid "" -"Another example is a file system that depends on a mapped device, for " -"example for an encrypted partition (@pxref{Mapped Devices})." +#: doc/guix.texi:9429 +msgid "Another example is a file system that depends on a mapped device, for example for an encrypted partition (@pxref{Mapped Devices})." msgstr "" #. type: Plain text -#: doc/guix.texi:9206 -msgid "" -"The @code{(gnu system file-systems)} exports the following useful variables." +#: doc/guix.texi:9434 +msgid "The @code{(gnu system file-systems)} exports the following useful variables." msgstr "" #. type: defvr -#: doc/guix.texi:9207 +#: doc/guix.texi:9435 #, no-wrap msgid "{Scheme Variable} %base-file-systems" msgstr "" #. type: defvr -#: doc/guix.texi:9212 -msgid "" -"These are essential file systems that are required on normal systems, such " -"as @var{%pseudo-terminal-file-system} and @var{%immutable-store} (see " -"below.) Operating system declarations should always contain at least these." +#: doc/guix.texi:9440 +msgid "These are essential file systems that are required on normal systems, such as @var{%pseudo-terminal-file-system} and @var{%immutable-store} (see below.) Operating system declarations should always contain at least these." msgstr "" #. type: defvr -#: doc/guix.texi:9214 +#: doc/guix.texi:9442 #, no-wrap msgid "{Scheme Variable} %pseudo-terminal-file-system" msgstr "" #. type: defvr -#: doc/guix.texi:9220 -msgid "" -"This is the file system to be mounted as @file{/dev/pts}. It supports " -"@dfn{pseudo-terminals} created @i{via} @code{openpty} and similar functions " -"(@pxref{Pseudo-Terminals,,, libc, The GNU C Library Reference Manual}). " -"Pseudo-terminals are used by terminal emulators such as @command{xterm}." +#: doc/guix.texi:9448 +msgid "This is the file system to be mounted as @file{/dev/pts}. It supports @dfn{pseudo-terminals} created @i{via} @code{openpty} and similar functions (@pxref{Pseudo-Terminals,,, libc, The GNU C Library Reference Manual}). Pseudo-terminals are used by terminal emulators such as @command{xterm}." msgstr "" #. type: defvr -#: doc/guix.texi:9222 +#: doc/guix.texi:9450 #, no-wrap msgid "{Scheme Variable} %shared-memory-file-system" msgstr "" #. type: defvr -#: doc/guix.texi:9226 -msgid "" -"This file system is mounted as @file{/dev/shm} and is used to support memory " -"sharing across processes (@pxref{Memory-mapped I/O, @code{shm_open},, libc, " -"The GNU C Library Reference Manual})." +#: doc/guix.texi:9454 +msgid "This file system is mounted as @file{/dev/shm} and is used to support memory sharing across processes (@pxref{Memory-mapped I/O, @code{shm_open},, libc, The GNU C Library Reference Manual})." msgstr "" #. type: defvr -#: doc/guix.texi:9228 +#: doc/guix.texi:9456 #, no-wrap msgid "{Scheme Variable} %immutable-store" msgstr "" #. type: defvr -#: doc/guix.texi:9233 -msgid "" -"This file system performs a read-only ``bind mount'' of @file{/gnu/store}, " -"making it read-only for all the users including @code{root}. This prevents " -"against accidental modification by software running as @code{root} or by " -"system administrators." +#: doc/guix.texi:9461 +msgid "This file system performs a read-only ``bind mount'' of @file{/gnu/store}, making it read-only for all the users including @code{root}. This prevents against accidental modification by software running as @code{root} or by system administrators." msgstr "" #. type: defvr -#: doc/guix.texi:9236 -msgid "" -"The daemon itself is still able to write to the store: it remounts it read-" -"write in its own ``name space.''" +#: doc/guix.texi:9464 +msgid "The daemon itself is still able to write to the store: it remounts it read-write in its own ``name space.''" msgstr "" #. type: defvr -#: doc/guix.texi:9238 +#: doc/guix.texi:9466 #, no-wrap msgid "{Scheme Variable} %binary-format-file-system" msgstr "" #. type: defvr -#: doc/guix.texi:9242 -msgid "" -"The @code{binfmt_misc} file system, which allows handling of arbitrary " -"executable file types to be delegated to user space. This requires the " -"@code{binfmt.ko} kernel module to be loaded." +#: doc/guix.texi:9470 +msgid "The @code{binfmt_misc} file system, which allows handling of arbitrary executable file types to be delegated to user space. This requires the @code{binfmt.ko} kernel module to be loaded." msgstr "" #. type: defvr -#: doc/guix.texi:9244 +#: doc/guix.texi:9472 #, no-wrap msgid "{Scheme Variable} %fuse-control-file-system" msgstr "" #. type: defvr -#: doc/guix.texi:9248 -msgid "" -"The @code{fusectl} file system, which allows unprivileged users to mount and " -"unmount user-space FUSE file systems. This requires the @code{fuse.ko} " -"kernel module to be loaded." +#: doc/guix.texi:9476 +msgid "The @code{fusectl} file system, which allows unprivileged users to mount and unmount user-space FUSE file systems. This requires the @code{fuse.ko} kernel module to be loaded." msgstr "" #. type: cindex -#: doc/guix.texi:9253 +#: doc/guix.texi:9481 #, no-wrap msgid "device mapping" msgstr "" #. type: cindex -#: doc/guix.texi:9254 +#: doc/guix.texi:9482 #, no-wrap msgid "mapped devices" msgstr "" #. type: Plain text -#: doc/guix.texi:9272 -msgid "" -"The Linux kernel has a notion of @dfn{device mapping}: a block device, such " -"as a hard disk partition, can be @dfn{mapped} into another device, usually " -"in @code{/dev/mapper/}, with additional processing over the data that flows " -"through it@footnote{Note that the GNU@tie{}Hurd makes no difference between " -"the concept of a ``mapped device'' and that of a file system: both boil down " -"to @emph{translating} input/output operations made on a file to operations " -"on its backing store. Thus, the Hurd implements mapped devices, like file " -"systems, using the generic @dfn{translator} mechanism (@pxref{Translators,,, " -"hurd, The GNU Hurd Reference Manual}).}. A typical example is encryption " -"device mapping: all writes to the mapped device are encrypted, and all reads " -"are deciphered, transparently. Guix extends this notion by considering any " -"device or set of devices that are @dfn{transformed} in some way to create a " -"new device; for instance, RAID devices are obtained by @dfn{assembling} " -"several other devices, such as hard disks or partitions, into a new one that " -"behaves as one partition. Other examples, not yet implemented, are LVM " -"logical volumes." +#: doc/guix.texi:9500 +msgid "The Linux kernel has a notion of @dfn{device mapping}: a block device, such as a hard disk partition, can be @dfn{mapped} into another device, usually in @code{/dev/mapper/}, with additional processing over the data that flows through it@footnote{Note that the GNU@tie{}Hurd makes no difference between the concept of a ``mapped device'' and that of a file system: both boil down to @emph{translating} input/output operations made on a file to operations on its backing store. Thus, the Hurd implements mapped devices, like file systems, using the generic @dfn{translator} mechanism (@pxref{Translators,,, hurd, The GNU Hurd Reference Manual}).}. A typical example is encryption device mapping: all writes to the mapped device are encrypted, and all reads are deciphered, transparently. Guix extends this notion by considering any device or set of devices that are @dfn{transformed} in some way to create a new device; for instance, RAID devices are obtained by @dfn{assembling} several other devices, such as hard disks or partitions, into a new one that behaves as one partition. Other examples, not yet implemented, are LVM logical volumes." msgstr "" #. type: Plain text -#: doc/guix.texi:9275 -msgid "" -"Mapped devices are declared using the @code{mapped-device} form, defined as " -"follows; for examples, see below." +#: doc/guix.texi:9503 +msgid "Mapped devices are declared using the @code{mapped-device} form, defined as follows; for examples, see below." msgstr "" #. type: deftp -#: doc/guix.texi:9276 +#: doc/guix.texi:9504 #, no-wrap msgid "{Data Type} mapped-device" msgstr "" #. type: deftp -#: doc/guix.texi:9279 -msgid "" -"Objects of this type represent device mappings that will be made when the " -"system boots up." +#: doc/guix.texi:9507 +msgid "Objects of this type represent device mappings that will be made when the system boots up." msgstr "" #. type: table -#: doc/guix.texi:9285 -msgid "" -"This is either a string specifying the name of the block device to be " -"mapped, such as @code{\"/dev/sda3\"}, or a list of such strings when several " -"devices need to be assembled for creating a new one." +#: doc/guix.texi:9513 +msgid "This is either a string specifying the name of the block device to be mapped, such as @code{\"/dev/sda3\"}, or a list of such strings when several devices need to be assembled for creating a new one." msgstr "" #. type: code{#1} -#: doc/guix.texi:9286 doc/guix.texi:20162 +#: doc/guix.texi:9514 doc/guix.texi:20646 #, no-wrap msgid "target" msgstr "" #. type: table -#: doc/guix.texi:9293 -msgid "" -"This string specifies the name of the resulting mapped device. For kernel " -"mappers such as encrypted devices of type @code{luks-device-mapping}, " -"specifying @code{\"my-partition\"} leads to the creation of the @code{\"/dev/" -"mapper/my-partition\"} device. For RAID devices of type @code{raid-device-" -"mapping}, the full device name such as @code{\"/dev/md0\"} needs to be given." +#: doc/guix.texi:9521 +msgid "This string specifies the name of the resulting mapped device. For kernel mappers such as encrypted devices of type @code{luks-device-mapping}, specifying @code{\"my-partition\"} leads to the creation of the @code{\"/dev/mapper/my-partition\"} device. For RAID devices of type @code{raid-device-mapping}, the full device name such as @code{\"/dev/md0\"} needs to be given." msgstr "" #. type: table -#: doc/guix.texi:9297 -msgid "" -"This must be a @code{mapped-device-kind} object, which specifies how " -"@var{source} is mapped to @var{target}." +#: doc/guix.texi:9525 +msgid "This must be a @code{mapped-device-kind} object, which specifies how @var{source} is mapped to @var{target}." msgstr "" #. type: defvr -#: doc/guix.texi:9300 +#: doc/guix.texi:9528 #, no-wrap msgid "{Scheme Variable} luks-device-mapping" msgstr "" #. type: defvr -#: doc/guix.texi:9304 -msgid "" -"This defines LUKS block device encryption using the @command{cryptsetup} " -"command from the package with the same name. It relies on the @code{dm-" -"crypt} Linux kernel module." +#: doc/guix.texi:9532 +msgid "This defines LUKS block device encryption using the @command{cryptsetup} command from the package with the same name. It relies on the @code{dm-crypt} Linux kernel module." msgstr "" #. type: defvr -#: doc/guix.texi:9306 +#: doc/guix.texi:9534 #, no-wrap msgid "{Scheme Variable} raid-device-mapping" msgstr "" #. type: defvr -#: doc/guix.texi:9311 -msgid "" -"This defines a RAID device, which is assembled using the @code{mdadm} " -"command from the package with the same name. It requires a Linux kernel " -"module for the appropriate RAID level to be loaded, such as @code{raid456} " -"for RAID-4, RAID-5 or RAID-6, or @code{raid10} for RAID-10." +#: doc/guix.texi:9539 +msgid "This defines a RAID device, which is assembled using the @code{mdadm} command from the package with the same name. It requires a Linux kernel module for the appropriate RAID level to be loaded, such as @code{raid456} for RAID-4, RAID-5 or RAID-6, or @code{raid10} for RAID-10." msgstr "" #. type: cindex -#: doc/guix.texi:9313 +#: doc/guix.texi:9541 #, no-wrap msgid "disk encryption" msgstr "" #. type: cindex -#: doc/guix.texi:9314 +#: doc/guix.texi:9542 #, no-wrap msgid "LUKS" msgstr "" #. type: Plain text -#: doc/guix.texi:9322 -msgid "" -"The following example specifies a mapping from @file{/dev/sda3} to @file{/" -"dev/mapper/home} using LUKS---the @url{https://gitlab.com/cryptsetup/" -"cryptsetup,Linux Unified Key Setup}, a standard mechanism for disk " -"encryption. The @file{/dev/mapper/home} device can then be used as the " -"@code{device} of a @code{file-system} declaration (@pxref{File Systems})." +#: doc/guix.texi:9550 +msgid "The following example specifies a mapping from @file{/dev/sda3} to @file{/dev/mapper/home} using LUKS---the @url{https://gitlab.com/cryptsetup/cryptsetup,Linux Unified Key Setup}, a standard mechanism for disk encryption. The @file{/dev/mapper/home} device can then be used as the @code{device} of a @code{file-system} declaration (@pxref{File Systems})." msgstr "" #. type: example -#: doc/guix.texi:9328 +#: doc/guix.texi:9556 #, no-wrap msgid "" "(mapped-device\n" @@ -20670,25 +16420,23 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9333 -msgid "" -"Alternatively, to become independent of device numbering, one may obtain the " -"LUKS UUID (@dfn{unique identifier}) of the source device by a command like:" +#: doc/guix.texi:9561 +msgid "Alternatively, to become independent of device numbering, one may obtain the LUKS UUID (@dfn{unique identifier}) of the source device by a command like:" msgstr "" #. type: example -#: doc/guix.texi:9336 +#: doc/guix.texi:9564 #, no-wrap msgid "cryptsetup luksUUID /dev/sda3\n" msgstr "" #. type: Plain text -#: doc/guix.texi:9339 +#: doc/guix.texi:9567 msgid "and use it as follows:" msgstr "" #. type: example -#: doc/guix.texi:9345 +#: doc/guix.texi:9573 #, no-wrap msgid "" "(mapped-device\n" @@ -20698,30 +16446,23 @@ msgid "" msgstr "" #. type: cindex -#: doc/guix.texi:9347 +#: doc/guix.texi:9575 #, no-wrap msgid "swap encryption" msgstr "" #. type: Plain text -#: doc/guix.texi:9353 -msgid "" -"It is also desirable to encrypt swap space, since swap space may contain " -"sensitive data. One way to accomplish that is to use a swap file in a file " -"system on a device mapped via LUKS encryption. In this way, the swap file " -"is encrypted because the entire device is encrypted. @xref{Preparing for " -"Installation,,Disk Partitioning}, for an example." +#: doc/guix.texi:9581 +msgid "It is also desirable to encrypt swap space, since swap space may contain sensitive data. One way to accomplish that is to use a swap file in a file system on a device mapped via LUKS encryption. In this way, the swap file is encrypted because the entire device is encrypted. @xref{Preparing for Installation,,Disk Partitioning}, for an example." msgstr "" #. type: Plain text -#: doc/guix.texi:9356 -msgid "" -"A RAID device formed of the partitions @file{/dev/sda1} and @file{/dev/sdb1} " -"may be declared as follows:" +#: doc/guix.texi:9584 +msgid "A RAID device formed of the partitions @file{/dev/sda1} and @file{/dev/sdb1} may be declared as follows:" msgstr "" #. type: example -#: doc/guix.texi:9362 +#: doc/guix.texi:9590 #, no-wrap msgid "" "(mapped-device\n" @@ -20731,42 +16472,35 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9369 -msgid "" -"The @file{/dev/md0} device can then be used as the @code{device} of a " -"@code{file-system} declaration (@pxref{File Systems}). Note that the RAID " -"level need not be given; it is chosen during the initial creation and " -"formatting of the RAID device and is determined automatically later." +#: doc/guix.texi:9597 +msgid "The @file{/dev/md0} device can then be used as the @code{device} of a @code{file-system} declaration (@pxref{File Systems}). Note that the RAID level need not be given; it is chosen during the initial creation and formatting of the RAID device and is determined automatically later." msgstr "" #. type: cindex -#: doc/guix.texi:9374 +#: doc/guix.texi:9602 #, no-wrap msgid "users" msgstr "" #. type: cindex -#: doc/guix.texi:9375 +#: doc/guix.texi:9603 #, no-wrap msgid "accounts" msgstr "" #. type: cindex -#: doc/guix.texi:9376 +#: doc/guix.texi:9604 #, no-wrap msgid "user accounts" msgstr "" #. type: Plain text -#: doc/guix.texi:9380 -msgid "" -"User accounts and groups are entirely managed through the @code{operating-" -"system} declaration. They are specified with the @code{user-account} and " -"@code{user-group} forms:" +#: doc/guix.texi:9608 +msgid "User accounts and groups are entirely managed through the @code{operating-system} declaration. They are specified with the @code{user-account} and @code{user-group} forms:" msgstr "" #. type: example -#: doc/guix.texi:9391 +#: doc/guix.texi:9619 #, no-wrap msgid "" "(user-account\n" @@ -20781,321 +16515,255 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9400 -msgid "" -"When booting or upon completion of @command{guix system reconfigure}, the " -"system ensures that only the user accounts and groups specified in the " -"@code{operating-system} declaration exist, and with the specified " -"properties. Thus, account or group creations or modifications made by " -"directly invoking commands such as @command{useradd} are lost upon " -"reconfiguration or reboot. This ensures that the system remains exactly as " -"declared." +#: doc/guix.texi:9628 +msgid "When booting or upon completion of @command{guix system reconfigure}, the system ensures that only the user accounts and groups specified in the @code{operating-system} declaration exist, and with the specified properties. Thus, account or group creations or modifications made by directly invoking commands such as @command{useradd} are lost upon reconfiguration or reboot. This ensures that the system remains exactly as declared." msgstr "" #. type: deftp -#: doc/guix.texi:9401 +#: doc/guix.texi:9629 #, no-wrap msgid "{Data Type} user-account" msgstr "" #. type: deftp -#: doc/guix.texi:9404 -msgid "" -"Objects of this type represent user accounts. The following members may be " -"specified:" +#: doc/guix.texi:9632 +msgid "Objects of this type represent user accounts. The following members may be specified:" msgstr "" #. type: table -#: doc/guix.texi:9408 +#: doc/guix.texi:9636 msgid "The name of the user account." msgstr "" #. type: itemx -#: doc/guix.texi:9409 doc/guix.texi:19924 +#: doc/guix.texi:9637 doc/guix.texi:20408 #, no-wrap msgid "group" msgstr "" #. type: cindex -#: doc/guix.texi:9410 doc/guix.texi:9459 +#: doc/guix.texi:9638 doc/guix.texi:9687 #, no-wrap msgid "groups" msgstr "" #. type: table -#: doc/guix.texi:9413 -msgid "" -"This is the name (a string) or identifier (a number) of the user group this " -"account belongs to." +#: doc/guix.texi:9641 +msgid "This is the name (a string) or identifier (a number) of the user group this account belongs to." msgstr "" #. type: item -#: doc/guix.texi:9414 +#: doc/guix.texi:9642 #, no-wrap msgid "@code{supplementary-groups} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:9417 -msgid "" -"Optionally, this can be defined as a list of group names that this account " -"belongs to." +#: doc/guix.texi:9645 +msgid "Optionally, this can be defined as a list of group names that this account belongs to." msgstr "" #. type: item -#: doc/guix.texi:9418 +#: doc/guix.texi:9646 #, no-wrap msgid "@code{uid} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9422 -msgid "" -"This is the user ID for this account (a number), or @code{#f}. In the " -"latter case, a number is automatically chosen by the system when the account " -"is created." +#: doc/guix.texi:9650 +msgid "This is the user ID for this account (a number), or @code{#f}. In the latter case, a number is automatically chosen by the system when the account is created." msgstr "" #. type: item -#: doc/guix.texi:9423 +#: doc/guix.texi:9651 #, no-wrap msgid "@code{comment} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:9425 +#: doc/guix.texi:9653 msgid "A comment about the account, such as the account owner's full name." msgstr "" #. type: code{#1} -#: doc/guix.texi:9426 +#: doc/guix.texi:9654 #, no-wrap msgid "home-directory" msgstr "" #. type: table -#: doc/guix.texi:9428 +#: doc/guix.texi:9656 msgid "This is the name of the home directory for the account." msgstr "" #. type: item -#: doc/guix.texi:9429 +#: doc/guix.texi:9657 #, no-wrap msgid "@code{create-home-directory?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:9432 -msgid "" -"Indicates whether the home directory of this account should be created if it " -"does not exist yet." +#: doc/guix.texi:9660 +msgid "Indicates whether the home directory of this account should be created if it does not exist yet." msgstr "" #. type: item -#: doc/guix.texi:9433 +#: doc/guix.texi:9661 #, no-wrap msgid "@code{shell} (default: Bash)" msgstr "" #. type: table -#: doc/guix.texi:9436 -msgid "" -"This is a G-expression denoting the file name of a program to be used as the " -"shell (@pxref{G-Expressions})." +#: doc/guix.texi:9664 +msgid "This is a G-expression denoting the file name of a program to be used as the shell (@pxref{G-Expressions})." msgstr "" #. type: item -#: doc/guix.texi:9437 doc/guix.texi:9477 +#: doc/guix.texi:9665 doc/guix.texi:9705 #, no-wrap msgid "@code{system?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9441 -msgid "" -"This Boolean value indicates whether the account is a ``system'' account. " -"System accounts are sometimes treated specially; for instance, graphical " -"login managers do not list them." +#: doc/guix.texi:9669 +msgid "This Boolean value indicates whether the account is a ``system'' account. System accounts are sometimes treated specially; for instance, graphical login managers do not list them." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:9443 +#: doc/guix.texi:9671 msgid "user-account-password" msgstr "" #. type: item -#: doc/guix.texi:9443 doc/guix.texi:9481 +#: doc/guix.texi:9671 doc/guix.texi:9709 #, no-wrap msgid "@code{password} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9449 -msgid "" -"You would normally leave this field to @code{#f}, initialize user passwords " -"as @code{root} with the @command{passwd} command, and then let users change " -"it with @command{passwd}. Passwords set with @command{passwd} are of course " -"preserved across reboot and reconfiguration." +#: doc/guix.texi:9677 +msgid "You would normally leave this field to @code{#f}, initialize user passwords as @code{root} with the @command{passwd} command, and then let users change it with @command{passwd}. Passwords set with @command{passwd} are of course preserved across reboot and reconfiguration." msgstr "" #. type: table -#: doc/guix.texi:9455 -msgid "" -"If you @emph{do} want to have a preset password for an account, then this " -"field must contain the encrypted password, as a string. @xref{crypt,,, " -"libc, The GNU C Library Reference Manual}, for more information on password " -"encryption, and @ref{Encryption,,, guile, GNU Guile Reference Manual}, for " -"information on Guile's @code{crypt} procedure." +#: doc/guix.texi:9683 +msgid "If you @emph{do} want to have a preset password for an account, then this field must contain the encrypted password, as a string. @xref{crypt,,, libc, The GNU C Library Reference Manual}, for more information on password encryption, and @ref{Encryption,,, guile, GNU Guile Reference Manual}, for information on Guile's @code{crypt} procedure." msgstr "" #. type: Plain text -#: doc/guix.texi:9461 +#: doc/guix.texi:9689 msgid "User group declarations are even simpler:" msgstr "" #. type: example -#: doc/guix.texi:9464 +#: doc/guix.texi:9692 #, no-wrap msgid "(user-group (name \"students\"))\n" msgstr "" #. type: deftp -#: doc/guix.texi:9466 +#: doc/guix.texi:9694 #, no-wrap msgid "{Data Type} user-group" msgstr "" #. type: deftp -#: doc/guix.texi:9468 +#: doc/guix.texi:9696 msgid "This type is for, well, user groups. There are just a few fields:" msgstr "" #. type: table -#: doc/guix.texi:9472 +#: doc/guix.texi:9700 msgid "The name of the group." msgstr "" #. type: item -#: doc/guix.texi:9473 +#: doc/guix.texi:9701 #, no-wrap msgid "@code{id} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9476 -msgid "" -"The group identifier (a number). If @code{#f}, a new number is " -"automatically allocated when the group is created." +#: doc/guix.texi:9704 +msgid "The group identifier (a number). If @code{#f}, a new number is automatically allocated when the group is created." msgstr "" #. type: table -#: doc/guix.texi:9480 -msgid "" -"This Boolean value indicates whether the group is a ``system'' group. " -"System groups have low numerical IDs." +#: doc/guix.texi:9708 +msgid "This Boolean value indicates whether the group is a ``system'' group. System groups have low numerical IDs." msgstr "" #. type: table -#: doc/guix.texi:9484 -msgid "" -"What, user groups can have a password? Well, apparently yes. Unless " -"@code{#f}, this field specifies the password of the group." +#: doc/guix.texi:9712 +msgid "What, user groups can have a password? Well, apparently yes. Unless @code{#f}, this field specifies the password of the group." msgstr "" #. type: Plain text -#: doc/guix.texi:9490 -msgid "" -"For convenience, a variable lists all the basic user groups one may expect:" +#: doc/guix.texi:9718 +msgid "For convenience, a variable lists all the basic user groups one may expect:" msgstr "" #. type: defvr -#: doc/guix.texi:9491 +#: doc/guix.texi:9719 #, no-wrap msgid "{Scheme Variable} %base-groups" msgstr "" #. type: defvr -#: doc/guix.texi:9496 -msgid "" -"This is the list of basic user groups that users and/or packages expect to " -"be present on the system. This includes groups such as ``root'', ``wheel'', " -"and ``users'', as well as groups used to control access to specific devices " -"such as ``audio'', ``disk'', and ``cdrom''." +#: doc/guix.texi:9724 +msgid "This is the list of basic user groups that users and/or packages expect to be present on the system. This includes groups such as ``root'', ``wheel'', and ``users'', as well as groups used to control access to specific devices such as ``audio'', ``disk'', and ``cdrom''." msgstr "" #. type: defvr -#: doc/guix.texi:9498 +#: doc/guix.texi:9726 #, no-wrap msgid "{Scheme Variable} %base-user-accounts" msgstr "" #. type: defvr -#: doc/guix.texi:9501 -msgid "" -"This is the list of basic system accounts that programs may expect to find " -"on a GNU/Linux system, such as the ``nobody'' account." +#: doc/guix.texi:9729 +msgid "This is the list of basic system accounts that programs may expect to find on a GNU/Linux system, such as the ``nobody'' account." msgstr "" #. type: defvr -#: doc/guix.texi:9504 -msgid "" -"Note that the ``root'' account is not included here. It is a special-case " -"and is automatically added whether or not it is specified." +#: doc/guix.texi:9732 +msgid "Note that the ``root'' account is not included here. It is a special-case and is automatically added whether or not it is specified." msgstr "" #. type: cindex -#: doc/guix.texi:9509 +#: doc/guix.texi:9737 #, no-wrap msgid "locale" msgstr "" #. type: Plain text -#: doc/guix.texi:9516 -msgid "" -"A @dfn{locale} defines cultural conventions for a particular language and " -"region of the world (@pxref{Locales,,, libc, The GNU C Library Reference " -"Manual}). Each locale has a name that typically has the form " -"@code{@var{language}_@var{territory}.@var{codeset}}---e.g., @code{fr_LU." -"utf8} designates the locale for the French language, with cultural " -"conventions from Luxembourg, and using the UTF-8 encoding." +#: doc/guix.texi:9744 +msgid "A @dfn{locale} defines cultural conventions for a particular language and region of the world (@pxref{Locales,,, libc, The GNU C Library Reference Manual}). Each locale has a name that typically has the form @code{@var{language}_@var{territory}.@var{codeset}}---e.g., @code{fr_LU.utf8} designates the locale for the French language, with cultural conventions from Luxembourg, and using the UTF-8 encoding." msgstr "" #. type: cindex -#: doc/guix.texi:9517 +#: doc/guix.texi:9745 #, no-wrap msgid "locale definition" msgstr "" #. type: Plain text -#: doc/guix.texi:9521 -msgid "" -"Usually, you will want to specify the default locale for the machine using " -"the @code{locale} field of the @code{operating-system} declaration " -"(@pxref{operating-system Reference, @code{locale}})." +#: doc/guix.texi:9749 +msgid "Usually, you will want to specify the default locale for the machine using the @code{locale} field of the @code{operating-system} declaration (@pxref{operating-system Reference, @code{locale}})." msgstr "" #. type: Plain text -#: doc/guix.texi:9530 -msgid "" -"The selected locale is automatically added to the @dfn{locale definitions} " -"known to the system if needed, with its codeset inferred from its name---e." -"g., @code{bo_CN.utf8} will be assumed to use the @code{UTF-8} codeset. " -"Additional locale definitions can be specified in the @code{locale-" -"definitions} slot of @code{operating-system}---this is useful, for instance, " -"if the codeset could not be inferred from the locale name. The default set " -"of locale definitions includes some widely used locales, but not all the " -"available locales, in order to save space." +#: doc/guix.texi:9758 +msgid "The selected locale is automatically added to the @dfn{locale definitions} known to the system if needed, with its codeset inferred from its name---e.g., @code{bo_CN.utf8} will be assumed to use the @code{UTF-8} codeset. Additional locale definitions can be specified in the @code{locale-definitions} slot of @code{operating-system}---this is useful, for instance, if the codeset could not be inferred from the locale name. The default set of locale definitions includes some widely used locales, but not all the available locales, in order to save space." msgstr "" #. type: Plain text -#: doc/guix.texi:9533 -msgid "" -"For instance, to add the North Frisian locale for Germany, the value of that " -"field may be:" +#: doc/guix.texi:9761 +msgid "For instance, to add the North Frisian locale for Germany, the value of that field may be:" msgstr "" #. type: example -#: doc/guix.texi:9538 +#: doc/guix.texi:9766 #, no-wrap msgid "" "(cons (locale-definition\n" @@ -21104,14 +16772,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9542 -msgid "" -"Likewise, to save space, one might want @code{locale-definitions} to list " -"only the locales that are actually used, as in:" +#: doc/guix.texi:9770 +msgid "Likewise, to save space, one might want @code{locale-definitions} to list only the locales that are actually used, as in:" msgstr "" #. type: example -#: doc/guix.texi:9547 +#: doc/guix.texi:9775 #, no-wrap msgid "" "(list (locale-definition\n" @@ -21120,158 +16786,114 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9556 -msgid "" -"The compiled locale definitions are available at @file{/run/current-system/" -"locale/X.Y}, where @code{X.Y} is the libc version, which is the default " -"location where the GNU@tie{}libc provided by Guix looks for locale data. " -"This can be overridden using the @code{LOCPATH} environment variable " -"(@pxref{locales-and-locpath, @code{LOCPATH} and locale packages})." +#: doc/guix.texi:9784 +msgid "The compiled locale definitions are available at @file{/run/current-system/locale/X.Y}, where @code{X.Y} is the libc version, which is the default location where the GNU@tie{}libc provided by Guix looks for locale data. This can be overridden using the @code{LOCPATH} environment variable (@pxref{locales-and-locpath, @code{LOCPATH} and locale packages})." msgstr "" #. type: Plain text -#: doc/guix.texi:9559 -msgid "" -"The @code{locale-definition} form is provided by the @code{(gnu system " -"locale)} module. Details are given below." +#: doc/guix.texi:9787 +msgid "The @code{locale-definition} form is provided by the @code{(gnu system locale)} module. Details are given below." msgstr "" #. type: deftp -#: doc/guix.texi:9560 +#: doc/guix.texi:9788 #, no-wrap msgid "{Data Type} locale-definition" msgstr "" #. type: deftp -#: doc/guix.texi:9562 +#: doc/guix.texi:9790 msgid "This is the data type of a locale definition." msgstr "" #. type: table -#: doc/guix.texi:9568 -msgid "" -"The name of the locale. @xref{Locale Names,,, libc, The GNU C Library " -"Reference Manual}, for more information on locale names." +#: doc/guix.texi:9796 +msgid "The name of the locale. @xref{Locale Names,,, libc, The GNU C Library Reference Manual}, for more information on locale names." msgstr "" #. type: table -#: doc/guix.texi:9572 -msgid "" -"The name of the source for that locale. This is typically the " -"@code{@var{language}_@var{territory}} part of the locale name." +#: doc/guix.texi:9800 +msgid "The name of the source for that locale. This is typically the @code{@var{language}_@var{territory}} part of the locale name." msgstr "" #. type: item -#: doc/guix.texi:9573 +#: doc/guix.texi:9801 #, no-wrap msgid "@code{charset} (default: @code{\"UTF-8\"})" msgstr "" #. type: table -#: doc/guix.texi:9577 -msgid "" -"The ``character set'' or ``code set'' for that locale, @uref{http://www.iana." -"org/assignments/character-sets, as defined by IANA}." +#: doc/guix.texi:9805 +msgid "The ``character set'' or ``code set'' for that locale, @uref{http://www.iana.org/assignments/character-sets, as defined by IANA}." msgstr "" #. type: defvr -#: doc/guix.texi:9581 +#: doc/guix.texi:9809 #, no-wrap msgid "{Scheme Variable} %default-locale-definitions" msgstr "" #. type: defvr -#: doc/guix.texi:9585 -msgid "" -"A list of commonly used UTF-8 locales, used as the default value of the " -"@code{locale-definitions} field of @code{operating-system} declarations." +#: doc/guix.texi:9813 +msgid "A list of commonly used UTF-8 locales, used as the default value of the @code{locale-definitions} field of @code{operating-system} declarations." msgstr "" #. type: cindex -#: doc/guix.texi:9586 +#: doc/guix.texi:9814 #, no-wrap msgid "locale name" msgstr "" #. type: cindex -#: doc/guix.texi:9587 +#: doc/guix.texi:9815 #, no-wrap msgid "normalized codeset in locale names" msgstr "" #. type: defvr -#: doc/guix.texi:9593 -msgid "" -"These locale definitions use the @dfn{normalized codeset} for the part that " -"follows the dot in the name (@pxref{Using gettextized software, normalized " -"codeset,, libc, The GNU C Library Reference Manual}). So for instance it " -"has @code{uk_UA.utf8} but @emph{not}, say, @code{uk_UA.UTF-8}." +#: doc/guix.texi:9821 +msgid "These locale definitions use the @dfn{normalized codeset} for the part that follows the dot in the name (@pxref{Using gettextized software, normalized codeset,, libc, The GNU C Library Reference Manual}). So for instance it has @code{uk_UA.utf8} but @emph{not}, say, @code{uk_UA.UTF-8}." msgstr "" #. type: subsubsection -#: doc/guix.texi:9595 +#: doc/guix.texi:9823 #, no-wrap msgid "Locale Data Compatibility Considerations" msgstr "" #. type: cindex -#: doc/guix.texi:9597 +#: doc/guix.texi:9825 #, no-wrap msgid "incompatibility, of locale data" msgstr "" #. type: Plain text -#: doc/guix.texi:9604 -msgid "" -"@code{operating-system} declarations provide a @code{locale-libcs} field to " -"specify the GNU@tie{}libc packages that are used to compile locale " -"declarations (@pxref{operating-system Reference}). ``Why would I care?'', " -"you may ask. Well, it turns out that the binary format of locale data is " -"occasionally incompatible from one libc version to another." +#: doc/guix.texi:9832 +msgid "@code{operating-system} declarations provide a @code{locale-libcs} field to specify the GNU@tie{}libc packages that are used to compile locale declarations (@pxref{operating-system Reference}). ``Why would I care?'', you may ask. Well, it turns out that the binary format of locale data is occasionally incompatible from one libc version to another." msgstr "" #. type: Plain text -#: doc/guix.texi:9616 -msgid "" -"For instance, a program linked against libc version 2.21 is unable to read " -"locale data produced with libc 2.22; worse, that program @emph{aborts} " -"instead of simply ignoring the incompatible locale data@footnote{Versions " -"2.23 and later of GNU@tie{}libc will simply skip the incompatible locale " -"data, which is already an improvement.}. Similarly, a program linked " -"against libc 2.22 can read most, but not all, of the locale data from libc " -"2.21 (specifically, @code{LC_COLLATE} data is incompatible); thus calls to " -"@code{setlocale} may fail, but programs will not abort." +#: doc/guix.texi:9844 +msgid "For instance, a program linked against libc version 2.21 is unable to read locale data produced with libc 2.22; worse, that program @emph{aborts} instead of simply ignoring the incompatible locale data@footnote{Versions 2.23 and later of GNU@tie{}libc will simply skip the incompatible locale data, which is already an improvement.}. Similarly, a program linked against libc 2.22 can read most, but not all, of the locale data from libc 2.21 (specifically, @code{LC_COLLATE} data is incompatible); thus calls to @code{setlocale} may fail, but programs will not abort." msgstr "" #. type: Plain text -#: doc/guix.texi:9621 -msgid "" -"The ``problem'' in GuixSD is that users have a lot of freedom: They can " -"choose whether and when to upgrade software in their profiles, and might be " -"using a libc version different from the one the system administrator used to " -"build the system-wide locale data." +#: doc/guix.texi:9849 +msgid "The ``problem'' in GuixSD is that users have a lot of freedom: They can choose whether and when to upgrade software in their profiles, and might be using a libc version different from the one the system administrator used to build the system-wide locale data." msgstr "" #. type: Plain text -#: doc/guix.texi:9625 -msgid "" -"Fortunately, unprivileged users can also install their own locale data and " -"define @var{GUIX_LOCPATH} accordingly (@pxref{locales-and-locpath, " -"@code{GUIX_LOCPATH} and locale packages})." +#: doc/guix.texi:9853 +msgid "Fortunately, unprivileged users can also install their own locale data and define @var{GUIX_LOCPATH} accordingly (@pxref{locales-and-locpath, @code{GUIX_LOCPATH} and locale packages})." msgstr "" #. type: Plain text -#: doc/guix.texi:9632 -msgid "" -"Still, it is best if the system-wide locale data at @file{/run/current-" -"system/locale} is built for all the libc versions actually in use on the " -"system, so that all the programs can access it---this is especially crucial " -"on a multi-user system. To do that, the administrator can specify several " -"libc packages in the @code{locale-libcs} field of @code{operating-system}:" +#: doc/guix.texi:9860 +msgid "Still, it is best if the system-wide locale data at @file{/run/current-system/locale} is built for all the libc versions actually in use on the system, so that all the programs can access it---this is especially crucial on a multi-user system. To do that, the administrator can specify several libc packages in the @code{locale-libcs} field of @code{operating-system}:" msgstr "" #. type: example -#: doc/guix.texi:9635 +#: doc/guix.texi:9863 #, no-wrap msgid "" "(use-package-modules base)\n" @@ -21279,7 +16901,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:9639 +#: doc/guix.texi:9867 #, no-wrap msgid "" "(operating-system\n" @@ -21288,56 +16910,39 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9644 -msgid "" -"This example would lead to a system containing locale definitions for both " -"libc 2.21 and the current version of libc in @file{/run/current-system/" -"locale}." +#: doc/guix.texi:9872 +msgid "This example would lead to a system containing locale definitions for both libc 2.21 and the current version of libc in @file{/run/current-system/locale}." msgstr "" #. type: cindex -#: doc/guix.texi:9649 +#: doc/guix.texi:9877 #, no-wrap msgid "system services" msgstr "" #. type: Plain text -#: doc/guix.texi:9655 -msgid "" -"An important part of preparing an @code{operating-system} declaration is " -"listing @dfn{system services} and their configuration (@pxref{Using the " -"Configuration System}). System services are typically daemons launched when " -"the system boots, or other actions needed at that time---e.g., configuring " -"network access." +#: doc/guix.texi:9883 +msgid "An important part of preparing an @code{operating-system} declaration is listing @dfn{system services} and their configuration (@pxref{Using the Configuration System}). System services are typically daemons launched when the system boots, or other actions needed at that time---e.g., configuring network access." msgstr "" #. type: Plain text -#: doc/guix.texi:9662 -msgid "" -"GuixSD has a broad definition of ``service'' (@pxref{Service Composition}), " -"but many services are managed by the GNU@tie{}Shepherd (@pxref{Shepherd " -"Services}). On a running system, the @command{herd} command allows you to " -"list the available services, show their status, start and stop them, or do " -"other specific operations (@pxref{Jump Start,,, shepherd, The GNU Shepherd " -"Manual}). For example:" +#: doc/guix.texi:9890 +msgid "GuixSD has a broad definition of ``service'' (@pxref{Service Composition}), but many services are managed by the GNU@tie{}Shepherd (@pxref{Shepherd Services}). On a running system, the @command{herd} command allows you to list the available services, show their status, start and stop them, or do other specific operations (@pxref{Jump Start,,, shepherd, The GNU Shepherd Manual}). For example:" msgstr "" #. type: example -#: doc/guix.texi:9665 +#: doc/guix.texi:9893 #, no-wrap msgid "# herd status\n" msgstr "" #. type: Plain text -#: doc/guix.texi:9670 -msgid "" -"The above command, run as @code{root}, lists the currently defined " -"services. The @command{herd doc} command shows a synopsis of the given " -"service:" +#: doc/guix.texi:9898 +msgid "The above command, run as @code{root}, lists the currently defined services. The @command{herd doc} command shows a synopsis of the given service:" msgstr "" #. type: example -#: doc/guix.texi:9674 +#: doc/guix.texi:9902 #, no-wrap msgid "" "# herd doc nscd\n" @@ -21345,15 +16950,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9679 -msgid "" -"The @command{start}, @command{stop}, and @command{restart} sub-commands have " -"the effect you would expect. For instance, the commands below stop the nscd " -"service and restart the Xorg display server:" +#: doc/guix.texi:9907 +msgid "The @command{start}, @command{stop}, and @command{restart} sub-commands have the effect you would expect. For instance, the commands below stop the nscd service and restart the Xorg display server:" msgstr "" #. type: example -#: doc/guix.texi:9686 +#: doc/guix.texi:9914 #, no-wrap msgid "" "# herd stop nscd\n" @@ -21364,109 +16966,90 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:9691 -msgid "" -"The following sections document the available services, starting with the " -"core services, that may be used in an @code{operating-system} declaration." +#: doc/guix.texi:9919 +msgid "The following sections document the available services, starting with the core services, that may be used in an @code{operating-system} declaration." msgstr "" #. type: Plain text -#: doc/guix.texi:9726 -msgid "" -"The @code{(gnu services base)} module provides definitions for the basic " -"services that one expects from the system. The services exported by this " -"module are listed below." +#: doc/guix.texi:9955 +msgid "The @code{(gnu services base)} module provides definitions for the basic services that one expects from the system. The services exported by this module are listed below." msgstr "" #. type: defvr -#: doc/guix.texi:9727 +#: doc/guix.texi:9956 #, no-wrap msgid "{Scheme Variable} %base-services" msgstr "" #. type: defvr -#: doc/guix.texi:9733 -msgid "" -"This variable contains a list of basic services (@pxref{Service Types and " -"Services}, for more information on service objects) one would expect from " -"the system: a login service (mingetty) on each tty, syslogd, the libc name " -"service cache daemon (nscd), the udev device manager, and more." +#: doc/guix.texi:9962 +msgid "This variable contains a list of basic services (@pxref{Service Types and Services}, for more information on service objects) one would expect from the system: a login service (mingetty) on each tty, syslogd, the libc name service cache daemon (nscd), the udev device manager, and more." msgstr "" #. type: defvr -#: doc/guix.texi:9738 -msgid "" -"This is the default value of the @code{services} field of @code{operating-" -"system} declarations. Usually, when customizing a system, you will want to " -"append services to @var{%base-services}, like this:" +#: doc/guix.texi:9967 +msgid "This is the default value of the @code{services} field of @code{operating-system} declarations. Usually, when customizing a system, you will want to append services to @var{%base-services}, like this:" msgstr "" #. type: example -#: doc/guix.texi:9741 +#: doc/guix.texi:9970 #, no-wrap msgid "(cons* (avahi-service) (lsh-service) %base-services)\n" msgstr "" #. type: defvr -#: doc/guix.texi:9744 +#: doc/guix.texi:9973 #, no-wrap msgid "{Scheme Variable} special-files-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:9747 -msgid "" -"This is the service that sets up ``special files'' such as @file{/bin/sh}; " -"an instance of it is part of @code{%base-services}." +#: doc/guix.texi:9976 +msgid "This is the service that sets up ``special files'' such as @file{/bin/sh}; an instance of it is part of @code{%base-services}." msgstr "" #. type: defvr -#: doc/guix.texi:9751 -msgid "" -"The value associated with @code{special-files-service-type} services must be " -"a list of tuples where the first element is the ``special file'' and the " -"second element is its target. By default it is:" +#: doc/guix.texi:9980 +msgid "The value associated with @code{special-files-service-type} services must be a list of tuples where the first element is the ``special file'' and the second element is its target. By default it is:" msgstr "" #. type: file{#1} -#: doc/guix.texi:9752 +#: doc/guix.texi:9981 #, no-wrap msgid "/bin/sh" msgstr "" #. type: cindex -#: doc/guix.texi:9753 +#: doc/guix.texi:9982 #, no-wrap msgid "@file{sh}, in @file{/bin}" msgstr "" #. type: example -#: doc/guix.texi:9756 +#: doc/guix.texi:9985 #, no-wrap msgid "`((\"/bin/sh\" ,(file-append @var{bash} \"/bin/sh\")))\n" msgstr "" #. type: file{#1} -#: doc/guix.texi:9758 +#: doc/guix.texi:9987 #, no-wrap msgid "/usr/bin/env" msgstr "" #. type: cindex -#: doc/guix.texi:9759 +#: doc/guix.texi:9988 #, no-wrap msgid "@file{env}, in @file{/usr/bin}" msgstr "" #. type: defvr -#: doc/guix.texi:9762 -msgid "" -"If you want to add, say, @code{/usr/bin/env} to your system, you can change " -"it to:" +#: doc/guix.texi:9991 +msgid "If you want to add, say, @code{/usr/bin/env} to your system, you can change it to:" msgstr "" #. type: example -#: doc/guix.texi:9766 +#: doc/guix.texi:9995 #, no-wrap msgid "" "`((\"/bin/sh\" ,(file-append @var{bash} \"/bin/sh\"))\n" @@ -21474,34 +17057,28 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:9773 -msgid "" -"Since this is part of @code{%base-services}, you can use @code{modify-" -"services} to customize the set of special files (@pxref{Service Reference, " -"@code{modify-services}}). But the simple way to add a special file is " -"@i{via} the @code{extra-special-file} procedure (see below.)" +#: doc/guix.texi:10002 +msgid "Since this is part of @code{%base-services}, you can use @code{modify-services} to customize the set of special files (@pxref{Service Reference, @code{modify-services}}). But the simple way to add a special file is @i{via} the @code{extra-special-file} procedure (see below.)" msgstr "" #. type: deffn -#: doc/guix.texi:9775 +#: doc/guix.texi:10004 #, no-wrap msgid "{Scheme Procedure} extra-special-file @var{file} @var{target}" msgstr "" #. type: deffn -#: doc/guix.texi:9777 +#: doc/guix.texi:10006 msgid "Use @var{target} as the ``special file'' @var{file}." msgstr "" #. type: deffn -#: doc/guix.texi:9781 -msgid "" -"For example, adding the following lines to the @code{services} field of your " -"operating system declaration leads to a @file{/usr/bin/env} symlink:" +#: doc/guix.texi:10010 +msgid "For example, adding the following lines to the @code{services} field of your operating system declaration leads to a @file{/usr/bin/env} symlink:" msgstr "" #. type: example -#: doc/guix.texi:9785 +#: doc/guix.texi:10014 #, no-wrap msgid "" "(extra-special-file \"/usr/bin/env\"\n" @@ -21509,1278 +17086,1099 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:9788 +#: doc/guix.texi:10017 #, no-wrap msgid "{Scheme Procedure} host-name-service @var{name}" msgstr "" #. type: deffn -#: doc/guix.texi:9790 +#: doc/guix.texi:10019 msgid "Return a service that sets the host name to @var{name}." msgstr "" #. type: deffn -#: doc/guix.texi:9792 +#: doc/guix.texi:10021 #, no-wrap msgid "{Scheme Procedure} login-service @var{config}" msgstr "" #. type: deffn -#: doc/guix.texi:9796 -msgid "" -"Return a service to run login according to @var{config}, a @code{} object, which specifies the message of the day, among other " -"things." +#: doc/guix.texi:10025 +msgid "Return a service to run login according to @var{config}, a @code{} object, which specifies the message of the day, among other things." msgstr "" #. type: deftp -#: doc/guix.texi:9798 +#: doc/guix.texi:10027 #, no-wrap msgid "{Data Type} login-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:9800 +#: doc/guix.texi:10029 msgid "This is the data type representing the configuration of login." msgstr "" #. type: code{#1} -#: doc/guix.texi:9803 +#: doc/guix.texi:10032 #, no-wrap msgid "motd" msgstr "" #. type: cindex -#: doc/guix.texi:9804 +#: doc/guix.texi:10033 #, no-wrap msgid "message of the day" msgstr "" #. type: table -#: doc/guix.texi:9806 +#: doc/guix.texi:10035 msgid "A file-like object containing the ``message of the day''." msgstr "" #. type: item -#: doc/guix.texi:9807 doc/guix.texi:11469 +#: doc/guix.texi:10036 doc/guix.texi:11736 #, no-wrap msgid "@code{allow-empty-passwords?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:9810 -msgid "" -"Allow empty passwords by default so that first-time users can log in when " -"the 'root' account has just been created." +#: doc/guix.texi:10039 +msgid "Allow empty passwords by default so that first-time users can log in when the 'root' account has just been created." msgstr "" #. type: deffn -#: doc/guix.texi:9814 +#: doc/guix.texi:10043 #, no-wrap msgid "{Scheme Procedure} mingetty-service @var{config}" msgstr "" #. type: deffn -#: doc/guix.texi:9818 -msgid "" -"Return a service to run mingetty according to @var{config}, a " -"@code{} object, which specifies the tty to run, " -"among other things." +#: doc/guix.texi:10047 +msgid "Return a service to run mingetty according to @var{config}, a @code{} object, which specifies the tty to run, among other things." msgstr "" #. type: deftp -#: doc/guix.texi:9820 +#: doc/guix.texi:10049 #, no-wrap msgid "{Data Type} mingetty-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:9823 -msgid "" -"This is the data type representing the configuration of Mingetty, which " -"provides the default implementation of virtual console log-in." +#: doc/guix.texi:10052 +msgid "This is the data type representing the configuration of Mingetty, which provides the default implementation of virtual console log-in." msgstr "" #. type: code{#1} -#: doc/guix.texi:9826 doc/guix.texi:9862 +#: doc/guix.texi:10055 doc/guix.texi:10091 #, no-wrap msgid "tty" msgstr "" #. type: table -#: doc/guix.texi:9828 +#: doc/guix.texi:10057 msgid "The name of the console this Mingetty runs on---e.g., @code{\"tty1\"}." msgstr "" #. type: item -#: doc/guix.texi:9829 doc/guix.texi:9891 +#: doc/guix.texi:10058 doc/guix.texi:10120 #, no-wrap msgid "@code{auto-login} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9833 -msgid "" -"When true, this field must be a string denoting the user name under which " -"the system automatically logs in. When it is @code{#f}, a user name and " -"password must be entered to log in." +#: doc/guix.texi:10062 +msgid "When true, this field must be a string denoting the user name under which the system automatically logs in. When it is @code{#f}, a user name and password must be entered to log in." msgstr "" #. type: item -#: doc/guix.texi:9834 +#: doc/guix.texi:10063 #, no-wrap msgid "@code{login-program} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9838 -msgid "" -"This must be either @code{#f}, in which case the default log-in program is " -"used (@command{login} from the Shadow tool suite), or a gexp denoting the " -"name of the log-in program." +#: doc/guix.texi:10067 +msgid "This must be either @code{#f}, in which case the default log-in program is used (@command{login} from the Shadow tool suite), or a gexp denoting the name of the log-in program." msgstr "" #. type: item -#: doc/guix.texi:9839 +#: doc/guix.texi:10068 #, no-wrap msgid "@code{login-pause?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9842 -msgid "" -"When set to @code{#t} in conjunction with @var{auto-login}, the user will " -"have to press a key before the log-in shell is launched." +#: doc/guix.texi:10071 +msgid "When set to @code{#t} in conjunction with @var{auto-login}, the user will have to press a key before the log-in shell is launched." msgstr "" #. type: item -#: doc/guix.texi:9843 +#: doc/guix.texi:10072 #, no-wrap msgid "@code{mingetty} (default: @var{mingetty})" msgstr "" #. type: table -#: doc/guix.texi:9845 +#: doc/guix.texi:10074 msgid "The Mingetty package to use." msgstr "" #. type: deffn -#: doc/guix.texi:9849 +#: doc/guix.texi:10078 #, no-wrap msgid "{Scheme Procedure} agetty-service @var{config}" msgstr "" #. type: deffn -#: doc/guix.texi:9853 -msgid "" -"Return a service to run agetty according to @var{config}, an @code{} object, which specifies the tty to run, among other things." +#: doc/guix.texi:10082 +msgid "Return a service to run agetty according to @var{config}, an @code{} object, which specifies the tty to run, among other things." msgstr "" #. type: deftp -#: doc/guix.texi:9855 +#: doc/guix.texi:10084 #, no-wrap msgid "{Data Type} agetty-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:9859 -msgid "" -"This is the data type representing the configuration of agetty, which " -"implements virtual and serial console log-in. See the @code{agetty(8)} man " -"page for more information." +#: doc/guix.texi:10088 +msgid "This is the data type representing the configuration of agetty, which implements virtual and serial console log-in. See the @code{agetty(8)} man page for more information." msgstr "" #. type: table -#: doc/guix.texi:9866 -msgid "" -"The name of the console this agetty runs on, as a string---e.g., " -"@code{\"ttyS0\"}. This argument is optional, it will default to a reasonable " -"default serial port used by the kernel Linux." +#: doc/guix.texi:10095 +msgid "The name of the console this agetty runs on, as a string---e.g., @code{\"ttyS0\"}. This argument is optional, it will default to a reasonable default serial port used by the kernel Linux." msgstr "" #. type: table -#: doc/guix.texi:9870 -msgid "" -"For this, if there is a value for an option @code{agetty.tty} in the kernel " -"command line, agetty will extract the device name of the serial port from it " -"and use that." +#: doc/guix.texi:10099 +msgid "For this, if there is a value for an option @code{agetty.tty} in the kernel command line, agetty will extract the device name of the serial port from it and use that." msgstr "" #. type: table -#: doc/guix.texi:9874 -msgid "" -"If not and if there is a value for an option @code{console} with a tty in " -"the Linux command line, agetty will extract the device name of the serial " -"port from it and use that." +#: doc/guix.texi:10103 +msgid "If not and if there is a value for an option @code{console} with a tty in the Linux command line, agetty will extract the device name of the serial port from it and use that." msgstr "" #. type: table -#: doc/guix.texi:9878 -msgid "" -"In both cases, agetty will leave the other serial device settings (baud rate " -"etc.) alone---in the hope that Linux pinned them to the correct values." +#: doc/guix.texi:10107 +msgid "In both cases, agetty will leave the other serial device settings (baud rate etc.) alone---in the hope that Linux pinned them to the correct values." msgstr "" #. type: item -#: doc/guix.texi:9879 +#: doc/guix.texi:10108 #, no-wrap msgid "@code{baud-rate} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9882 -msgid "" -"A string containing a comma-separated list of one or more baud rates, in " -"descending order." +#: doc/guix.texi:10111 +msgid "A string containing a comma-separated list of one or more baud rates, in descending order." msgstr "" #. type: item -#: doc/guix.texi:9883 +#: doc/guix.texi:10112 #, no-wrap msgid "@code{term} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9886 -msgid "" -"A string containing the value used for the @code{TERM} environment variable." +#: doc/guix.texi:10115 +msgid "A string containing the value used for the @code{TERM} environment variable." msgstr "" #. type: item -#: doc/guix.texi:9887 +#: doc/guix.texi:10116 #, no-wrap msgid "@code{eight-bits?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:9890 -msgid "" -"When @code{#t}, the tty is assumed to be 8-bit clean, and parity detection " -"is disabled." +#: doc/guix.texi:10119 +msgid "When @code{#t}, the tty is assumed to be 8-bit clean, and parity detection is disabled." msgstr "" #. type: table -#: doc/guix.texi:9894 -msgid "" -"When passed a login name, as a string, the specified user will be logged in " -"automatically without prompting for their login name or password." +#: doc/guix.texi:10123 +msgid "When passed a login name, as a string, the specified user will be logged in automatically without prompting for their login name or password." msgstr "" #. type: item -#: doc/guix.texi:9895 +#: doc/guix.texi:10124 #, no-wrap msgid "@code{no-reset?} (default: @code{#f})" msgstr "" -#. type: table -#: doc/guix.texi:9897 -msgid "When @code{#t}, don't reset terminal cflags (control modes)." -msgstr "" - -#. type: item -#: doc/guix.texi:9898 -#, no-wrap -msgid "@code{host} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9901 -msgid "" -"This accepts a string containing the \"login_host\", which will be written " -"into the @file{/var/run/utmpx} file." -msgstr "" - -#. type: item -#: doc/guix.texi:9902 -#, no-wrap -msgid "@code{remote?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9906 -msgid "" -"When set to @code{#t} in conjunction with @var{host}, this will add an " -"@code{-r} fakehost option to the command line of the login program specified " -"in @var{login-program}." -msgstr "" - -#. type: item -#: doc/guix.texi:9907 -#, no-wrap -msgid "@code{flow-control?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9909 -msgid "When set to @code{#t}, enable hardware (RTS/CTS) flow control." -msgstr "" - -#. type: item -#: doc/guix.texi:9910 -#, no-wrap -msgid "@code{no-issue?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9913 -msgid "" -"When set to @code{#t}, the contents of the @file{/etc/issue} file will not " -"be displayed before presenting the login prompt." -msgstr "" - -#. type: item -#: doc/guix.texi:9914 -#, no-wrap -msgid "@code{init-string} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9917 -msgid "" -"This accepts a string that will be sent to the tty or modem before sending " -"anything else. It can be used to initialize a modem." -msgstr "" - -#. type: item -#: doc/guix.texi:9918 -#, no-wrap -msgid "@code{no-clear?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9921 -msgid "" -"When set to @code{#t}, agetty will not clear the screen before showing the " -"login prompt." -msgstr "" - -#. type: item -#: doc/guix.texi:9922 -#, no-wrap -msgid "@code{login-program} (default: (file-append shadow \"/bin/login\"))" -msgstr "" - -#. type: table -#: doc/guix.texi:9926 -msgid "" -"This must be either a gexp denoting the name of a log-in program, or unset, " -"in which case the default value is the @command{login} from the Shadow tool " -"suite." -msgstr "" - -#. type: item -#: doc/guix.texi:9927 -#, no-wrap -msgid "@code{local-line} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9931 -msgid "" -"Control the CLOCAL line flag. This accepts one of three symbols as " -"arguments, @code{'auto}, @code{'always}, or @code{'never}. If @code{#f}, the " -"default value chosen by agetty is @code{'auto}." -msgstr "" - -#. type: item -#: doc/guix.texi:9932 -#, no-wrap -msgid "@code{extract-baud?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9935 -msgid "" -"When set to @code{#t}, instruct agetty to try to extract the baud rate from " -"the status messages produced by certain types of modems." -msgstr "" - -#. type: item -#: doc/guix.texi:9936 -#, no-wrap -msgid "@code{skip-login?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9940 -msgid "" -"When set to @code{#t}, do not prompt the user for a login name. This can be " -"used with @var{login-program} field to use non-standard login systems." -msgstr "" - -#. type: item -#: doc/guix.texi:9941 -#, no-wrap -msgid "@code{no-newline?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9944 -msgid "" -"When set to @code{#t}, do not print a newline before printing the @file{/etc/" -"issue} file." -msgstr "" - -#. type: item -#: doc/guix.texi:9946 -#, no-wrap -msgid "@code{login-options} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9951 -msgid "" -"This option accepts a string containing options that are passed to the login " -"program. When used with the @var{login-program}, be aware that a malicious " -"user could try to enter a login name containing embedded options that could " -"be parsed by the login program." -msgstr "" - -#. type: item -#: doc/guix.texi:9952 -#, no-wrap -msgid "@code{login-pause} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9956 -msgid "" -"When set to @code{#t}, wait for any key before showing the login prompt. " -"This can be used in conjunction with @var{auto-login} to save memory by " -"lazily spawning shells." -msgstr "" - -#. type: item -#: doc/guix.texi:9957 -#, no-wrap -msgid "@code{chroot} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9960 -msgid "" -"Change root to the specified directory. This option accepts a directory " -"path as a string." -msgstr "" - -#. type: item -#: doc/guix.texi:9961 -#, no-wrap -msgid "@code{hangup?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9964 -msgid "" -"Use the Linux system call @code{vhangup} to do a virtual hangup of the " -"specified terminal." -msgstr "" - -#. type: item -#: doc/guix.texi:9965 -#, no-wrap -msgid "@code{keep-baud?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9969 -msgid "" -"When set to @code{#t}, try to keep the existing baud rate. The baud rates " -"from @var{baud-rate} are used when agetty receives a @key{BREAK} character." -msgstr "" - -#. type: item -#: doc/guix.texi:9970 -#, no-wrap -msgid "@code{timeout} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9973 -msgid "" -"When set to an integer value, terminate if no user name could be read within " -"@var{timeout} seconds." -msgstr "" - -#. type: item -#: doc/guix.texi:9974 -#, no-wrap -msgid "@code{detect-case?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9980 -msgid "" -"When set to @code{#t}, turn on support for detecting an uppercase-only " -"terminal. This setting will detect a login name containing only uppercase " -"letters as indicating an uppercase-only terminal and turn on some upper-to-" -"lower case conversions. Note that this will not support Unicode characters." -msgstr "" - -#. type: item -#: doc/guix.texi:9981 -#, no-wrap -msgid "@code{wait-cr?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9986 -msgid "" -"When set to @code{#t}, wait for the user or modem to send a carriage-return " -"or linefeed character before displaying @file{/etc/issue} or login prompt. " -"This is typically used with the @var{init-string} option." -msgstr "" - -#. type: item -#: doc/guix.texi:9987 -#, no-wrap -msgid "@code{no-hints?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9990 -msgid "" -"When set to @code{#t}, do not print hints about Num, Caps, and Scroll locks." -msgstr "" - -#. type: item -#: doc/guix.texi:9991 -#, no-wrap -msgid "@code{no-hostname?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9994 -msgid "" -"By default, the hostname is printed. When this option is set to @code{#t}, " -"no hostname will be shown at all." -msgstr "" - -#. type: item -#: doc/guix.texi:9995 -#, no-wrap -msgid "@code{long-hostname?} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:9999 -msgid "" -"By default, the hostname is only printed until the first dot. When this " -"option is set to @code{#t}, the fully qualified hostname by " -"@code{gethostname} or @code{getaddrinfo} is shown." -msgstr "" - -#. type: item -#: doc/guix.texi:10000 -#, no-wrap -msgid "@code{erase-characters} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:10003 -msgid "" -"This option accepts a string of additional characters that should be " -"interpreted as backspace when the user types their login name." -msgstr "" - -#. type: item -#: doc/guix.texi:10004 -#, no-wrap -msgid "@code{kill-characters} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:10008 -msgid "" -"This option accepts a string that should be interpreted to mean \"ignore all " -"previous characters\" (also called a \"kill\" character) when the types " -"their login name." -msgstr "" - -#. type: item -#: doc/guix.texi:10009 -#, no-wrap -msgid "@code{chdir} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:10012 -msgid "" -"This option accepts, as a string, a directory path that will be changed to " -"before login." -msgstr "" - -#. type: item -#: doc/guix.texi:10013 -#, no-wrap -msgid "@code{delay} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:10016 -msgid "" -"This options accepts, as an integer, the number of seconds to sleep before " -"opening the tty and displaying the login prompt." -msgstr "" - -#. type: item -#: doc/guix.texi:10017 -#, no-wrap -msgid "@code{nice} (default: @code{#f})" -msgstr "" - -#. type: table -#: doc/guix.texi:10020 -msgid "" -"This option accepts, as an integer, the nice value with which to run the " -"@command{login} program." -msgstr "" - -#. type: item -#: doc/guix.texi:10021 doc/guix.texi:10221 -#, no-wrap -msgid "@code{extra-options} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:10024 -msgid "" -"This option provides an \"escape hatch\" for the user to provide arbitrary " -"command-line arguments to @command{agetty} as a list of strings." -msgstr "" - -#. type: deffn -#: doc/guix.texi:10028 -#, no-wrap -msgid "{Scheme Procedure} kmscon-service-type @var{config}" -msgstr "" - -#. type: deffn -#: doc/guix.texi:10032 -msgid "" -"Return a service to run @uref{https://www.freedesktop.org/wiki/Software/" -"kmscon,kmscon} according to @var{config}, a @code{} " -"object, which specifies the tty to run, among other things." -msgstr "" - -#. type: deftp -#: doc/guix.texi:10034 -#, no-wrap -msgid "{Data Type} kmscon-configuration" -msgstr "" - -#. type: deftp -#: doc/guix.texi:10037 -msgid "" -"This is the data type representing the configuration of Kmscon, which " -"implements virtual console log-in." -msgstr "" - -#. type: code{#1} -#: doc/guix.texi:10040 -#, no-wrap -msgid "virtual-terminal" -msgstr "" - -#. type: table -#: doc/guix.texi:10042 -msgid "The name of the console this Kmscon runs on---e.g., @code{\"tty1\"}." -msgstr "" - -#. type: item -#: doc/guix.texi:10043 -#, no-wrap -msgid "@code{login-program} (default: @code{#~(string-append #$shadow \"/bin/login\")})" -msgstr "" - -#. type: table -#: doc/guix.texi:10046 -msgid "" -"A gexp denoting the name of the log-in program. The default log-in program " -"is @command{login} from the Shadow tool suite." -msgstr "" - -#. type: item -#: doc/guix.texi:10047 -#, no-wrap -msgid "@code{login-arguments} (default: @code{'(\"-p\")})" -msgstr "" - -#. type: table -#: doc/guix.texi:10049 -msgid "A list of arguments to pass to @command{login}." -msgstr "" - -#. type: item -#: doc/guix.texi:10050 -#, no-wrap -msgid "@code{hardware-acceleration?} (default: #f)" -msgstr "" - -#. type: table -#: doc/guix.texi:10052 -msgid "Whether to use hardware acceleration." -msgstr "" - -#. type: item -#: doc/guix.texi:10053 -#, no-wrap -msgid "@code{kmscon} (default: @var{kmscon})" -msgstr "" - -#. type: table -#: doc/guix.texi:10055 -msgid "The Kmscon package to use." -msgstr "" - -#. type: cindex -#: doc/guix.texi:10059 -#, no-wrap -msgid "name service cache daemon" -msgstr "" - -#. type: cindex -#: doc/guix.texi:10060 -#, no-wrap -msgid "nscd" -msgstr "" - -#. type: deffn -#: doc/guix.texi:10061 -#, no-wrap -msgid "{Scheme Procedure} nscd-service [@var{config}] [#:glibc glibc] @" -msgstr "" - -#. type: deffn -#: doc/guix.texi:10066 -msgid "" -"[#:name-services '()] Return a service that runs the libc name service cache " -"daemon (nscd) with the given @var{config}---an @code{} " -"object. @xref{Name Service Switch}, for an example." -msgstr "" - -#. type: defvr -#: doc/guix.texi:10068 -#, no-wrap -msgid "{Scheme Variable} %nscd-default-configuration" -msgstr "" - -#. type: defvr -#: doc/guix.texi:10072 -msgid "" -"This is the default @code{} value (see below) used by " -"@code{nscd-service}. It uses the caches defined by @var{%nscd-default-" -"caches}; see below." -msgstr "" - -#. type: deftp -#: doc/guix.texi:10074 -#, no-wrap -msgid "{Data Type} nscd-configuration" -msgstr "" - -#. type: deftp -#: doc/guix.texi:10077 -msgid "" -"This is the data type representing the name service cache daemon (nscd) " -"configuration." -msgstr "" - -#. type: item -#: doc/guix.texi:10080 -#, no-wrap -msgid "@code{name-services} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:10083 -msgid "" -"List of packages denoting @dfn{name services} that must be visible to the " -"nscd---e.g., @code{(list @var{nss-mdns})}." -msgstr "" - -#. type: item -#: doc/guix.texi:10084 -#, no-wrap -msgid "@code{glibc} (default: @var{glibc})" -msgstr "" - -#. type: table -#: doc/guix.texi:10087 -msgid "" -"Package object denoting the GNU C Library providing the @command{nscd} " -"command." -msgstr "" - -#. type: item -#: doc/guix.texi:10088 -#, no-wrap -msgid "@code{log-file} (default: @code{\"/var/log/nscd.log\"})" -msgstr "" - -#. type: table -#: doc/guix.texi:10091 -msgid "" -"Name of the nscd log file. This is where debugging output goes when " -"@code{debug-level} is strictly positive." -msgstr "" - -#. type: item -#: doc/guix.texi:10092 -#, no-wrap -msgid "@code{debug-level} (default: @code{0})" -msgstr "" - -#. type: table -#: doc/guix.texi:10095 -msgid "" -"Integer denoting the debugging levels. Higher numbers mean that more " -"debugging output is logged." -msgstr "" - -#. type: item -#: doc/guix.texi:10096 -#, no-wrap -msgid "@code{caches} (default: @var{%nscd-default-caches})" -msgstr "" - -#. type: table -#: doc/guix.texi:10099 -msgid "" -"List of @code{} objects denoting things to be cached; see below." -msgstr "" - -#. type: deftp -#: doc/guix.texi:10103 -#, no-wrap -msgid "{Data Type} nscd-cache" -msgstr "" - -#. type: deftp -#: doc/guix.texi:10105 -msgid "Data type representing a cache database of nscd and its parameters." -msgstr "" - -#. type: cindex -#: doc/guix.texi:10108 doc/guix.texi:12810 -#, no-wrap -msgid "database" -msgstr "" - -#. type: table -#: doc/guix.texi:10113 -msgid "" -"This is a symbol representing the name of the database to be cached. Valid " -"values are @code{passwd}, @code{group}, @code{hosts}, and @code{services}, " -"which designate the corresponding NSS database (@pxref{NSS Basics,,, libc, " -"The GNU C Library Reference Manual})." -msgstr "" - -#. type: code{#1} -#: doc/guix.texi:10114 -#, no-wrap -msgid "positive-time-to-live" -msgstr "" - -#. type: itemx -#: doc/guix.texi:10115 -#, no-wrap -msgid "@code{negative-time-to-live} (default: @code{20})" -msgstr "" - -#. type: table -#: doc/guix.texi:10118 -msgid "" -"A number representing the number of seconds during which a positive or " -"negative lookup result remains in cache." -msgstr "" - -#. type: item -#: doc/guix.texi:10119 -#, no-wrap -msgid "@code{check-files?} (default: @code{#t})" -msgstr "" - -#. type: table -#: doc/guix.texi:10122 -msgid "" -"Whether to check for updates of the files corresponding to @var{database}." -msgstr "" - #. type: table #: doc/guix.texi:10126 -msgid "" -"For instance, when @var{database} is @code{hosts}, setting this flag " -"instructs nscd to check for updates in @file{/etc/hosts} and to take them " -"into account." +msgid "When @code{#t}, don't reset terminal cflags (control modes)." msgstr "" #. type: item #: doc/guix.texi:10127 #, no-wrap -msgid "@code{persistent?} (default: @code{#t})" +msgid "@code{host} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10129 -msgid "Whether the cache should be stored persistently on disk." -msgstr "" - -#. type: item #: doc/guix.texi:10130 -#, no-wrap -msgid "@code{shared?} (default: @code{#t})" -msgstr "" - -#. type: table -#: doc/guix.texi:10132 -msgid "Whether the cache should be shared among users." +msgid "This accepts a string containing the \"login_host\", which will be written into the @file{/var/run/utmpx} file." msgstr "" #. type: item -#: doc/guix.texi:10133 +#: doc/guix.texi:10131 #, no-wrap -msgid "@code{max-database-size} (default: 32@tie{}MiB)" +msgid "@code{remote?} (default: @code{#f})" msgstr "" #. type: table #: doc/guix.texi:10135 -msgid "Maximum size in bytes of the database cache." +msgid "When set to @code{#t} in conjunction with @var{host}, this will add an @code{-r} fakehost option to the command line of the login program specified in @var{login-program}." msgstr "" -#. type: defvr +#. type: item +#: doc/guix.texi:10136 +#, no-wrap +msgid "@code{flow-control?} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10138 +msgid "When set to @code{#t}, enable hardware (RTS/CTS) flow control." +msgstr "" + +#. type: item +#: doc/guix.texi:10139 +#, no-wrap +msgid "@code{no-issue?} (default: @code{#f})" +msgstr "" + +#. type: table #: doc/guix.texi:10142 +msgid "When set to @code{#t}, the contents of the @file{/etc/issue} file will not be displayed before presenting the login prompt." +msgstr "" + +#. type: item +#: doc/guix.texi:10143 #, no-wrap -msgid "{Scheme Variable} %nscd-default-caches" +msgid "@code{init-string} (default: @code{#f})" msgstr "" -#. type: defvr -#: doc/guix.texi:10145 -msgid "" -"List of @code{} objects used by default by @code{nscd-" -"configuration} (see above)." +#. type: table +#: doc/guix.texi:10146 +msgid "This accepts a string that will be sent to the tty or modem before sending anything else. It can be used to initialize a modem." msgstr "" -#. type: defvr +#. type: item +#: doc/guix.texi:10147 +#, no-wrap +msgid "@code{no-clear?} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10150 +msgid "When set to @code{#t}, agetty will not clear the screen before showing the login prompt." +msgstr "" + +#. type: item #: doc/guix.texi:10151 -msgid "" -"It enables persistent and aggressive caching of service and host name " -"lookups. The latter provides better host name lookup performance, " -"resilience in the face of unreliable name servers, and also better privacy---" -"often the result of host name lookups is in local cache, so external name " -"servers do not even need to be queried." -msgstr "" - -#. type: anchor{#1} -#: doc/guix.texi:10154 -msgid "syslog-configuration-type" -msgstr "" - -#. type: cindex -#: doc/guix.texi:10154 doc/guix.texi:10170 #, no-wrap -msgid "syslog" +msgid "@code{login-program} (default: (file-append shadow \"/bin/login\"))" msgstr "" -#. type: cindex -#: doc/guix.texi:10155 doc/guix.texi:10588 -#, no-wrap -msgid "logging" +#. type: table +#: doc/guix.texi:10155 +msgid "This must be either a gexp denoting the name of a log-in program, or unset, in which case the default value is the @command{login} from the Shadow tool suite." msgstr "" -#. type: deftp +#. type: item #: doc/guix.texi:10156 #, no-wrap -msgid "{Data Type} syslog-configuration" +msgid "@code{local-line} (default: @code{#f})" msgstr "" -#. type: deftp -#: doc/guix.texi:10158 -msgid "This data type represents the configuration of the syslog daemon." -msgstr "" - -#. type: item +#. type: table #: doc/guix.texi:10160 -#, no-wrap -msgid "@code{syslogd} (default: @code{#~(string-append #$inetutils \"/libexec/syslogd\")})" -msgstr "" - -#. type: table -#: doc/guix.texi:10162 -msgid "The syslog daemon to use." +msgid "Control the CLOCAL line flag. This accepts one of three symbols as arguments, @code{'auto}, @code{'always}, or @code{'never}. If @code{#f}, the default value chosen by agetty is @code{'auto}." msgstr "" #. type: item -#: doc/guix.texi:10163 +#: doc/guix.texi:10161 #, no-wrap -msgid "@code{config-file} (default: @code{%default-syslog.conf})" +msgid "@code{extract-baud?} (default: @code{#f})" msgstr "" #. type: table +#: doc/guix.texi:10164 +msgid "When set to @code{#t}, instruct agetty to try to extract the baud rate from the status messages produced by certain types of modems." +msgstr "" + +#. type: item #: doc/guix.texi:10165 -msgid "The syslog configuration file to use." -msgstr "" - -#. type: anchor{#1} -#: doc/guix.texi:10170 -msgid "syslog-service" -msgstr "" - -#. type: deffn -#: doc/guix.texi:10171 #, no-wrap -msgid "{Scheme Procedure} syslog-service @var{config}" -msgstr "" - -#. type: deffn -#: doc/guix.texi:10173 -msgid "Return a service that runs a syslog daemon according to @var{config}." -msgstr "" - -#. type: deffn -#: doc/guix.texi:10176 -msgid "" -"@xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more information " -"on the configuration file syntax." -msgstr "" - -#. type: anchor{#1} -#: doc/guix.texi:10179 -msgid "guix-configuration-type" -msgstr "" - -#. type: deftp -#: doc/guix.texi:10179 -#, no-wrap -msgid "{Data Type} guix-configuration" -msgstr "" - -#. type: deftp -#: doc/guix.texi:10182 -msgid "" -"This data type represents the configuration of the Guix build daemon. " -"@xref{Invoking guix-daemon}, for more information." -msgstr "" - -#. type: item -#: doc/guix.texi:10184 -#, no-wrap -msgid "@code{guix} (default: @var{guix})" +msgid "@code{skip-login?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10186 doc/guix.texi:10414 -msgid "The Guix package to use." +#: doc/guix.texi:10169 +msgid "When set to @code{#t}, do not prompt the user for a login name. This can be used with @var{login-program} field to use non-standard login systems." msgstr "" #. type: item -#: doc/guix.texi:10187 +#: doc/guix.texi:10170 #, no-wrap -msgid "@code{build-group} (default: @code{\"guixbuild\"})" +msgid "@code{no-newline?} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10173 +msgid "When set to @code{#t}, do not print a newline before printing the @file{/etc/issue} file." +msgstr "" + +#. type: item +#: doc/guix.texi:10175 +#, no-wrap +msgid "@code{login-options} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10180 +msgid "This option accepts a string containing options that are passed to the login program. When used with the @var{login-program}, be aware that a malicious user could try to enter a login name containing embedded options that could be parsed by the login program." +msgstr "" + +#. type: item +#: doc/guix.texi:10181 +#, no-wrap +msgid "@code{login-pause} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10185 +msgid "When set to @code{#t}, wait for any key before showing the login prompt. This can be used in conjunction with @var{auto-login} to save memory by lazily spawning shells." +msgstr "" + +#. type: item +#: doc/guix.texi:10186 +#, no-wrap +msgid "@code{chroot} (default: @code{#f})" msgstr "" #. type: table #: doc/guix.texi:10189 -msgid "Name of the group for build user accounts." +msgid "Change root to the specified directory. This option accepts a directory path as a string." msgstr "" #. type: item #: doc/guix.texi:10190 #, no-wrap -msgid "@code{build-accounts} (default: @code{10})" +msgid "@code{hangup?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10192 -msgid "Number of build user accounts to create." +#: doc/guix.texi:10193 +msgid "Use the Linux system call @code{vhangup} to do a virtual hangup of the specified terminal." msgstr "" #. type: item -#: doc/guix.texi:10193 +#: doc/guix.texi:10194 #, no-wrap -msgid "@code{authorize-key?} (default: @code{#t})" +msgid "@code{keep-baud?} (default: @code{#f})" msgstr "" #. type: table #: doc/guix.texi:10198 -msgid "" -"Whether to authorize the substitute keys listed in @code{authorized-keys}---" -"by default that of @code{hydra.gnu.org} (@pxref{Substitutes})." +msgid "When set to @code{#t}, try to keep the existing baud rate. The baud rates from @var{baud-rate} are used when agetty receives a @key{BREAK} character." msgstr "" -"Autoriser ou non les clefs de substituts listées dans @code{authorize-keys} " -"— par défaut celle de @code{hydra.gny.org} (@pxref{Substituts})." -#. type: vindex +#. type: item #: doc/guix.texi:10199 #, no-wrap -msgid "%default-authorized-guix-keys" -msgstr "" - -#. type: item -#: doc/guix.texi:10200 -#, no-wrap -msgid "@code{authorized-keys} (default: @var{%default-authorized-guix-keys})" +msgid "@code{timeout} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10204 -msgid "" -"The list of authorized key files for archive imports, as a list of string-" -"valued gexps (@pxref{Invoking guix archive}). By default, it contains that " -"of @code{hydra.gnu.org} (@pxref{Substitutes})." -msgstr "" -"La liste des fichiers de clefs autorisées pour les imports d'archives, en " -"tant que liste de gexps sous forme de chaînes (@pxref{Invoking guix " -"archive}). Par défaut, elle contient celle de @code{hydra.gnu.org} " -"(@pxref{Substituts})." - -#. type: item -#: doc/guix.texi:10205 -#, no-wrap -msgid "@code{use-substitutes?} (default: @code{#t})" -msgstr "" - -#. type: table -#: doc/guix.texi:10207 -msgid "Whether to use substitutes." +#: doc/guix.texi:10202 +msgid "When set to an integer value, terminate if no user name could be read within @var{timeout} seconds." msgstr "" #. type: item -#: doc/guix.texi:10208 +#: doc/guix.texi:10203 #, no-wrap -msgid "@code{substitute-urls} (default: @var{%default-substitute-urls})" +msgid "@code{detect-case?} (default: @code{#f})" msgstr "" #. type: table +#: doc/guix.texi:10209 +msgid "When set to @code{#t}, turn on support for detecting an uppercase-only terminal. This setting will detect a login name containing only uppercase letters as indicating an uppercase-only terminal and turn on some upper-to-lower case conversions. Note that this will not support Unicode characters." +msgstr "" + +#. type: item #: doc/guix.texi:10210 -msgid "The list of URLs where to look for substitutes by default." -msgstr "" - -#. type: item -#: doc/guix.texi:10211 #, no-wrap -msgid "@code{max-silent-time} (default: @code{0})" -msgstr "" - -#. type: itemx -#: doc/guix.texi:10212 -#, no-wrap -msgid "@code{timeout} (default: @code{0})" +msgid "@code{wait-cr?} (default: @code{#f})" msgstr "" #. type: table +#: doc/guix.texi:10215 +msgid "When set to @code{#t}, wait for the user or modem to send a carriage-return or linefeed character before displaying @file{/etc/issue} or login prompt. This is typically used with the @var{init-string} option." +msgstr "" + +#. type: item #: doc/guix.texi:10216 -msgid "" -"The number of seconds of silence and the number of seconds of activity, " -"respectively, after which a build process times out. A value of zero " -"disables the timeout." -msgstr "" - -#. type: item -#: doc/guix.texi:10217 #, no-wrap -msgid "@code{log-compression} (default: @code{'bzip2})" +msgid "@code{no-hints?} (default: @code{#f})" msgstr "" #. type: table +#: doc/guix.texi:10219 +msgid "When set to @code{#t}, do not print hints about Num, Caps, and Scroll locks." +msgstr "" + +#. type: item #: doc/guix.texi:10220 -msgid "" -"The type of compression used for build logs---one of @code{gzip}, " -"@code{bzip2}, or @code{none}." +#, no-wrap +msgid "@code{no-hostname?} (default: @code{#f})" msgstr "" #. type: table #: doc/guix.texi:10223 -msgid "List of extra command-line options for @command{guix-daemon}." +msgid "By default, the hostname is printed. When this option is set to @code{#t}, no hostname will be shown at all." msgstr "" #. type: item #: doc/guix.texi:10224 #, no-wrap +msgid "@code{long-hostname?} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10228 +msgid "By default, the hostname is only printed until the first dot. When this option is set to @code{#t}, the fully qualified hostname by @code{gethostname} or @code{getaddrinfo} is shown." +msgstr "" + +#. type: item +#: doc/guix.texi:10229 +#, no-wrap +msgid "@code{erase-characters} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10232 +msgid "This option accepts a string of additional characters that should be interpreted as backspace when the user types their login name." +msgstr "" + +#. type: item +#: doc/guix.texi:10233 +#, no-wrap +msgid "@code{kill-characters} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10237 +msgid "This option accepts a string that should be interpreted to mean \"ignore all previous characters\" (also called a \"kill\" character) when the types their login name." +msgstr "" + +#. type: item +#: doc/guix.texi:10238 +#, no-wrap +msgid "@code{chdir} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10241 +msgid "This option accepts, as a string, a directory path that will be changed to before login." +msgstr "" + +#. type: item +#: doc/guix.texi:10242 +#, no-wrap +msgid "@code{delay} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10245 +msgid "This options accepts, as an integer, the number of seconds to sleep before opening the tty and displaying the login prompt." +msgstr "" + +#. type: item +#: doc/guix.texi:10246 +#, no-wrap +msgid "@code{nice} (default: @code{#f})" +msgstr "" + +#. type: table +#: doc/guix.texi:10249 +msgid "This option accepts, as an integer, the nice value with which to run the @command{login} program." +msgstr "" + +#. type: item +#: doc/guix.texi:10250 doc/guix.texi:10450 +#, no-wrap +msgid "@code{extra-options} (default: @code{'()})" +msgstr "" + +#. type: table +#: doc/guix.texi:10253 +msgid "This option provides an \"escape hatch\" for the user to provide arbitrary command-line arguments to @command{agetty} as a list of strings." +msgstr "" + +#. type: deffn +#: doc/guix.texi:10257 +#, no-wrap +msgid "{Scheme Procedure} kmscon-service-type @var{config}" +msgstr "" + +#. type: deffn +#: doc/guix.texi:10261 +msgid "Return a service to run @uref{https://www.freedesktop.org/wiki/Software/kmscon,kmscon} according to @var{config}, a @code{} object, which specifies the tty to run, among other things." +msgstr "" + +#. type: deftp +#: doc/guix.texi:10263 +#, no-wrap +msgid "{Data Type} kmscon-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:10266 +msgid "This is the data type representing the configuration of Kmscon, which implements virtual console log-in." +msgstr "" + +#. type: code{#1} +#: doc/guix.texi:10269 +#, no-wrap +msgid "virtual-terminal" +msgstr "" + +#. type: table +#: doc/guix.texi:10271 +msgid "The name of the console this Kmscon runs on---e.g., @code{\"tty1\"}." +msgstr "" + +#. type: item +#: doc/guix.texi:10272 +#, no-wrap +msgid "@code{login-program} (default: @code{#~(string-append #$shadow \"/bin/login\")})" +msgstr "" + +#. type: table +#: doc/guix.texi:10275 +msgid "A gexp denoting the name of the log-in program. The default log-in program is @command{login} from the Shadow tool suite." +msgstr "" + +#. type: item +#: doc/guix.texi:10276 +#, no-wrap +msgid "@code{login-arguments} (default: @code{'(\"-p\")})" +msgstr "" + +#. type: table +#: doc/guix.texi:10278 +msgid "A list of arguments to pass to @command{login}." +msgstr "" + +#. type: item +#: doc/guix.texi:10279 +#, no-wrap +msgid "@code{hardware-acceleration?} (default: #f)" +msgstr "" + +#. type: table +#: doc/guix.texi:10281 +msgid "Whether to use hardware acceleration." +msgstr "" + +#. type: item +#: doc/guix.texi:10282 +#, no-wrap +msgid "@code{kmscon} (default: @var{kmscon})" +msgstr "" + +#. type: table +#: doc/guix.texi:10284 +msgid "The Kmscon package to use." +msgstr "" + +#. type: cindex +#: doc/guix.texi:10288 +#, no-wrap +msgid "name service cache daemon" +msgstr "" + +#. type: cindex +#: doc/guix.texi:10289 +#, no-wrap +msgid "nscd" +msgstr "" + +#. type: deffn +#: doc/guix.texi:10290 +#, no-wrap +msgid "{Scheme Procedure} nscd-service [@var{config}] [#:glibc glibc] @" +msgstr "" + +#. type: deffn +#: doc/guix.texi:10295 +msgid "[#:name-services '()] Return a service that runs the libc name service cache daemon (nscd) with the given @var{config}---an @code{} object. @xref{Name Service Switch}, for an example." +msgstr "" + +#. type: defvr +#: doc/guix.texi:10297 +#, no-wrap +msgid "{Scheme Variable} %nscd-default-configuration" +msgstr "" + +#. type: defvr +#: doc/guix.texi:10301 +msgid "This is the default @code{} value (see below) used by @code{nscd-service}. It uses the caches defined by @var{%nscd-default-caches}; see below." +msgstr "" + +#. type: deftp +#: doc/guix.texi:10303 +#, no-wrap +msgid "{Data Type} nscd-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:10306 +msgid "This is the data type representing the name service cache daemon (nscd) configuration." +msgstr "" + +#. type: item +#: doc/guix.texi:10309 +#, no-wrap +msgid "@code{name-services} (default: @code{'()})" +msgstr "" + +#. type: table +#: doc/guix.texi:10312 +msgid "List of packages denoting @dfn{name services} that must be visible to the nscd---e.g., @code{(list @var{nss-mdns})}." +msgstr "" + +#. type: item +#: doc/guix.texi:10313 +#, no-wrap +msgid "@code{glibc} (default: @var{glibc})" +msgstr "" + +#. type: table +#: doc/guix.texi:10316 +msgid "Package object denoting the GNU C Library providing the @command{nscd} command." +msgstr "" + +#. type: item +#: doc/guix.texi:10317 +#, no-wrap +msgid "@code{log-file} (default: @code{\"/var/log/nscd.log\"})" +msgstr "" + +#. type: table +#: doc/guix.texi:10320 +msgid "Name of the nscd log file. This is where debugging output goes when @code{debug-level} is strictly positive." +msgstr "" + +#. type: item +#: doc/guix.texi:10321 +#, no-wrap +msgid "@code{debug-level} (default: @code{0})" +msgstr "" + +#. type: table +#: doc/guix.texi:10324 +msgid "Integer denoting the debugging levels. Higher numbers mean that more debugging output is logged." +msgstr "" + +#. type: item +#: doc/guix.texi:10325 +#, no-wrap +msgid "@code{caches} (default: @var{%nscd-default-caches})" +msgstr "" + +#. type: table +#: doc/guix.texi:10328 +msgid "List of @code{} objects denoting things to be cached; see below." +msgstr "" + +#. type: deftp +#: doc/guix.texi:10332 +#, no-wrap +msgid "{Data Type} nscd-cache" +msgstr "" + +#. type: deftp +#: doc/guix.texi:10334 +msgid "Data type representing a cache database of nscd and its parameters." +msgstr "" + +#. type: cindex +#: doc/guix.texi:10337 doc/guix.texi:13172 +#, no-wrap +msgid "database" +msgstr "" + +#. type: table +#: doc/guix.texi:10342 +msgid "This is a symbol representing the name of the database to be cached. Valid values are @code{passwd}, @code{group}, @code{hosts}, and @code{services}, which designate the corresponding NSS database (@pxref{NSS Basics,,, libc, The GNU C Library Reference Manual})." +msgstr "" + +#. type: code{#1} +#: doc/guix.texi:10343 +#, no-wrap +msgid "positive-time-to-live" +msgstr "" + +#. type: itemx +#: doc/guix.texi:10344 +#, no-wrap +msgid "@code{negative-time-to-live} (default: @code{20})" +msgstr "" + +#. type: table +#: doc/guix.texi:10347 +msgid "A number representing the number of seconds during which a positive or negative lookup result remains in cache." +msgstr "" + +#. type: item +#: doc/guix.texi:10348 +#, no-wrap +msgid "@code{check-files?} (default: @code{#t})" +msgstr "" + +#. type: table +#: doc/guix.texi:10351 +msgid "Whether to check for updates of the files corresponding to @var{database}." +msgstr "" + +#. type: table +#: doc/guix.texi:10355 +msgid "For instance, when @var{database} is @code{hosts}, setting this flag instructs nscd to check for updates in @file{/etc/hosts} and to take them into account." +msgstr "" + +#. type: item +#: doc/guix.texi:10356 +#, no-wrap +msgid "@code{persistent?} (default: @code{#t})" +msgstr "" + +#. type: table +#: doc/guix.texi:10358 +msgid "Whether the cache should be stored persistently on disk." +msgstr "" + +#. type: item +#: doc/guix.texi:10359 +#, no-wrap +msgid "@code{shared?} (default: @code{#t})" +msgstr "" + +#. type: table +#: doc/guix.texi:10361 +msgid "Whether the cache should be shared among users." +msgstr "" + +#. type: item +#: doc/guix.texi:10362 +#, no-wrap +msgid "@code{max-database-size} (default: 32@tie{}MiB)" +msgstr "" + +#. type: table +#: doc/guix.texi:10364 +msgid "Maximum size in bytes of the database cache." +msgstr "" + +#. type: defvr +#: doc/guix.texi:10371 +#, no-wrap +msgid "{Scheme Variable} %nscd-default-caches" +msgstr "" + +#. type: defvr +#: doc/guix.texi:10374 +msgid "List of @code{} objects used by default by @code{nscd-configuration} (see above)." +msgstr "" + +#. type: defvr +#: doc/guix.texi:10380 +msgid "It enables persistent and aggressive caching of service and host name lookups. The latter provides better host name lookup performance, resilience in the face of unreliable name servers, and also better privacy---often the result of host name lookups is in local cache, so external name servers do not even need to be queried." +msgstr "" + +#. type: anchor{#1} +#: doc/guix.texi:10383 +msgid "syslog-configuration-type" +msgstr "" + +#. type: cindex +#: doc/guix.texi:10383 doc/guix.texi:10399 +#, no-wrap +msgid "syslog" +msgstr "" + +#. type: cindex +#: doc/guix.texi:10384 doc/guix.texi:10833 +#, no-wrap +msgid "logging" +msgstr "" + +#. type: deftp +#: doc/guix.texi:10385 +#, no-wrap +msgid "{Data Type} syslog-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:10387 +msgid "This data type represents the configuration of the syslog daemon." +msgstr "" + +#. type: item +#: doc/guix.texi:10389 +#, no-wrap +msgid "@code{syslogd} (default: @code{#~(string-append #$inetutils \"/libexec/syslogd\")})" +msgstr "" + +#. type: table +#: doc/guix.texi:10391 +msgid "The syslog daemon to use." +msgstr "" + +#. type: item +#: doc/guix.texi:10392 +#, no-wrap +msgid "@code{config-file} (default: @code{%default-syslog.conf})" +msgstr "" + +#. type: table +#: doc/guix.texi:10394 +msgid "The syslog configuration file to use." +msgstr "" + +#. type: anchor{#1} +#: doc/guix.texi:10399 +msgid "syslog-service" +msgstr "" + +#. type: deffn +#: doc/guix.texi:10400 +#, no-wrap +msgid "{Scheme Procedure} syslog-service @var{config}" +msgstr "" + +#. type: deffn +#: doc/guix.texi:10402 +msgid "Return a service that runs a syslog daemon according to @var{config}." +msgstr "" + +#. type: deffn +#: doc/guix.texi:10405 +msgid "@xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more information on the configuration file syntax." +msgstr "" + +#. type: anchor{#1} +#: doc/guix.texi:10408 +msgid "guix-configuration-type" +msgstr "" + +#. type: deftp +#: doc/guix.texi:10408 +#, no-wrap +msgid "{Data Type} guix-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:10411 +msgid "This data type represents the configuration of the Guix build daemon. @xref{Invoking guix-daemon}, for more information." +msgstr "" + +#. type: item +#: doc/guix.texi:10413 +#, no-wrap +msgid "@code{guix} (default: @var{guix})" +msgstr "" + +#. type: table +#: doc/guix.texi:10415 doc/guix.texi:10659 +msgid "The Guix package to use." +msgstr "" + +#. type: item +#: doc/guix.texi:10416 +#, no-wrap +msgid "@code{build-group} (default: @code{\"guixbuild\"})" +msgstr "" + +#. type: table +#: doc/guix.texi:10418 +msgid "Name of the group for build user accounts." +msgstr "" + +#. type: item +#: doc/guix.texi:10419 +#, no-wrap +msgid "@code{build-accounts} (default: @code{10})" +msgstr "" + +#. type: table +#: doc/guix.texi:10421 +msgid "Number of build user accounts to create." +msgstr "" + +#. type: item +#: doc/guix.texi:10422 +#, no-wrap +msgid "@code{authorize-key?} (default: @code{#t})" +msgstr "" + +#. type: table +#: doc/guix.texi:10427 +msgid "Whether to authorize the substitute keys listed in @code{authorized-keys}---by default that of @code{hydra.gnu.org} (@pxref{Substitutes})." +msgstr "Autoriser ou non les clefs de substituts listées dans @code{authorize-keys} — par défaut celle de @code{hydra.gny.org} (@pxref{Substituts})." + +#. type: vindex +#: doc/guix.texi:10428 +#, no-wrap +msgid "%default-authorized-guix-keys" +msgstr "" + +#. type: item +#: doc/guix.texi:10429 +#, no-wrap +msgid "@code{authorized-keys} (default: @var{%default-authorized-guix-keys})" +msgstr "" + +#. type: table +#: doc/guix.texi:10433 +msgid "The list of authorized key files for archive imports, as a list of string-valued gexps (@pxref{Invoking guix archive}). By default, it contains that of @code{hydra.gnu.org} (@pxref{Substitutes})." +msgstr "La liste des fichiers de clefs autorisées pour les imports d'archives, en tant que liste de gexps sous forme de chaînes (@pxref{Invoking guix archive}). Par défaut, elle contient celle de @code{hydra.gnu.org} (@pxref{Substituts})." + +#. type: item +#: doc/guix.texi:10434 +#, no-wrap +msgid "@code{use-substitutes?} (default: @code{#t})" +msgstr "" + +#. type: table +#: doc/guix.texi:10436 +msgid "Whether to use substitutes." +msgstr "" + +#. type: item +#: doc/guix.texi:10437 +#, no-wrap +msgid "@code{substitute-urls} (default: @var{%default-substitute-urls})" +msgstr "" + +#. type: table +#: doc/guix.texi:10439 +msgid "The list of URLs where to look for substitutes by default." +msgstr "" + +#. type: item +#: doc/guix.texi:10440 +#, no-wrap +msgid "@code{max-silent-time} (default: @code{0})" +msgstr "" + +#. type: itemx +#: doc/guix.texi:10441 +#, no-wrap +msgid "@code{timeout} (default: @code{0})" +msgstr "" + +#. type: table +#: doc/guix.texi:10445 +msgid "The number of seconds of silence and the number of seconds of activity, respectively, after which a build process times out. A value of zero disables the timeout." +msgstr "" + +#. type: item +#: doc/guix.texi:10446 +#, no-wrap +msgid "@code{log-compression} (default: @code{'bzip2})" +msgstr "" + +#. type: table +#: doc/guix.texi:10449 +msgid "The type of compression used for build logs---one of @code{gzip}, @code{bzip2}, or @code{none}." +msgstr "" + +#. type: table +#: doc/guix.texi:10452 +msgid "List of extra command-line options for @command{guix-daemon}." +msgstr "" + +#. type: item +#: doc/guix.texi:10453 +#, no-wrap msgid "@code{log-file} (default: @code{\"/var/log/guix-daemon.log\"})" msgstr "" #. type: table -#: doc/guix.texi:10227 -msgid "" -"File where @command{guix-daemon}'s standard output and standard error are " -"written." +#: doc/guix.texi:10456 +msgid "File where @command{guix-daemon}'s standard output and standard error are written." msgstr "" #. type: item -#: doc/guix.texi:10228 +#: doc/guix.texi:10457 #, no-wrap msgid "@code{http-proxy} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10231 -msgid "" -"The HTTP proxy used for downloading fixed-output derivations and substitutes." +#: doc/guix.texi:10460 +msgid "The HTTP proxy used for downloading fixed-output derivations and substitutes." msgstr "" #. type: item -#: doc/guix.texi:10232 +#: doc/guix.texi:10461 #, no-wrap msgid "@code{tmpdir} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10234 +#: doc/guix.texi:10463 msgid "A directory path where the @command{guix-daemon} will perform builds." msgstr "" #. type: deffn -#: doc/guix.texi:10238 +#: doc/guix.texi:10467 #, no-wrap msgid "{Scheme Procedure} guix-service @var{config}" msgstr "" #. type: deffn -#: doc/guix.texi:10241 -msgid "" -"Return a service that runs the Guix build daemon according to @var{config}." +#: doc/guix.texi:10470 +msgid "Return a service that runs the Guix build daemon according to @var{config}." msgstr "" #. type: deffn -#: doc/guix.texi:10243 +#: doc/guix.texi:10472 #, no-wrap msgid "{Scheme Procedure} udev-service [#:udev @var{eudev} #:rules @code{'()}]" msgstr "" #. type: deffn -#: doc/guix.texi:10248 -msgid "" -"Run @var{udev}, which populates the @file{/dev} directory dynamically. udev " -"rules can be provided as a list of files through the @var{rules} variable. " -"The procedures @var{udev-rule} and @var{file->udev-rule} from @code{(gnu " -"services base)} simplify the creation of such rule files." +#: doc/guix.texi:10477 +msgid "Run @var{udev}, which populates the @file{/dev} directory dynamically. udev rules can be provided as a list of files through the @var{rules} variable. The procedures @var{udev-rule} and @var{file->udev-rule} from @code{(gnu services base)} simplify the creation of such rule files." msgstr "" #. type: deffn -#: doc/guix.texi:10249 +#: doc/guix.texi:10478 #, no-wrap msgid "{Scheme Procedure} udev-rule [@var{file-name} @var{contents}]" msgstr "" #. type: deffn -#: doc/guix.texi:10252 -msgid "" -"Return a udev-rule file named @var{file-name} containing the rules defined " -"by the @var{contents} literal." +#: doc/guix.texi:10481 +msgid "Return a udev-rule file named @var{file-name} containing the rules defined by the @var{contents} literal." msgstr "" #. type: deffn -#: doc/guix.texi:10256 -msgid "" -"In the following example, a rule for a USB device is defined to be stored in " -"the file @file{90-usb-thing.rules}. The rule runs a script upon detecting a " -"USB device with a given product identifier." +#: doc/guix.texi:10485 +msgid "In the following example, a rule for a USB device is defined to be stored in the file @file{90-usb-thing.rules}. The rule runs a script upon detecting a USB device with a given product identifier." msgstr "" #. type: example -#: doc/guix.texi:10264 +#: doc/guix.texi:10493 #, no-wrap msgid "" "(define %example-udev-rule\n" @@ -22792,13 +18190,12 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:10268 -msgid "" -"Here we show how the default @var{udev-service} can be extended with it." +#: doc/guix.texi:10497 +msgid "Here we show how the default @var{udev-service} can be extended with it." msgstr "" #. type: example -#: doc/guix.texi:10278 +#: doc/guix.texi:10507 #, no-wrap msgid "" "(operating-system\n" @@ -22812,25 +18209,23 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:10280 +#: doc/guix.texi:10509 #, no-wrap msgid "{Scheme Procedure} file->udev-rule [@var{file-name} @var{file}]" msgstr "" #. type: deffn -#: doc/guix.texi:10283 -msgid "" -"Return a udev file named @var{file-name} containing the rules defined within " -"@var{file}, a file-like object." +#: doc/guix.texi:10512 +msgid "Return a udev file named @var{file-name} containing the rules defined within @var{file}, a file-like object." msgstr "" #. type: deffn -#: doc/guix.texi:10285 +#: doc/guix.texi:10514 msgid "The following example showcases how we can use an existing rule file." msgstr "" #. type: example -#: doc/guix.texi:10290 +#: doc/guix.texi:10519 #, no-wrap msgid "" "(use-modules (guix download) ;for url-fetch\n" @@ -22840,7 +18235,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:10301 +#: doc/guix.texi:10530 #, no-wrap msgid "" "(define %android-udev-rules\n" @@ -22856,30 +18251,17 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:10310 -msgid "" -"Additionally, Guix package definitions can be included in @var{rules} in " -"order to extend the udev rules with the definitions found under their " -"@file{lib/udev/rules.d} sub-directory. In lieu of the previous @var{file-" -">udev-rule} example, we could have used the @var{android-udev-rules} package " -"which exists in Guix in the @code{(gnu packages android)} module." +#: doc/guix.texi:10539 +msgid "Additionally, Guix package definitions can be included in @var{rules} in order to extend the udev rules with the definitions found under their @file{lib/udev/rules.d} sub-directory. In lieu of the previous @var{file->udev-rule} example, we could have used the @var{android-udev-rules} package which exists in Guix in the @code{(gnu packages android)} module." msgstr "" #. type: deffn -#: doc/guix.texi:10319 -msgid "" -"The following example shows how to use the @var{android-udev-rules} package " -"so that the Android tool @command{adb} can detect devices without root " -"privileges. It also details how to create the @code{adbusers} group, which " -"is required for the proper functioning of the rules defined within the " -"@var{android-udev-rules} package. To create such a group, we must define it " -"both as part of the @var{supplementary-groups} of our @var{user-account} " -"declaration, as well as in the @var{groups} field of the @var{operating-" -"system} record." +#: doc/guix.texi:10548 +msgid "The following example shows how to use the @var{android-udev-rules} package so that the Android tool @command{adb} can detect devices without root privileges. It also details how to create the @code{adbusers} group, which is required for the proper functioning of the rules defined within the @var{android-udev-rules} package. To create such a group, we must define it both as part of the @var{supplementary-groups} of our @var{user-account} declaration, as well as in the @var{groups} field of the @var{operating-system} record." msgstr "" #. type: example -#: doc/guix.texi:10324 +#: doc/guix.texi:10553 #, no-wrap msgid "" "(use-modules (gnu packages android) ;for android-udev-rules\n" @@ -22889,7 +18271,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:10333 +#: doc/guix.texi:10562 #, no-wrap msgid "" "(operating-system\n" @@ -22904,7 +18286,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:10336 +#: doc/guix.texi:10565 #, no-wrap msgid "" " (groups (cons (user-group (system? #t) (name \"adbusers\"))\n" @@ -22913,7 +18295,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:10338 +#: doc/guix.texi:10567 #, no-wrap msgid "" " ;; @dots{}\n" @@ -22921,7 +18303,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:10345 +#: doc/guix.texi:10574 #, no-wrap msgid "" " (services\n" @@ -22933,331 +18315,311 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:10348 +#: doc/guix.texi:10577 #, no-wrap msgid "{Scheme Variable} urandom-seed-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:10353 -msgid "" -"Save some entropy in @var{%random-seed-file} to seed @file{/dev/urandom} " -"when rebooting. It also tries to seed @file{/dev/urandom} from @file{/dev/" -"hwrng} while booting, if @file{/dev/hwrng} exists and is readable." +#: doc/guix.texi:10582 +msgid "Save some entropy in @var{%random-seed-file} to seed @file{/dev/urandom} when rebooting. It also tries to seed @file{/dev/urandom} from @file{/dev/hwrng} while booting, if @file{/dev/hwrng} exists and is readable." msgstr "" #. type: defvr -#: doc/guix.texi:10355 +#: doc/guix.texi:10584 #, no-wrap msgid "{Scheme Variable} %random-seed-file" msgstr "" #. type: defvr -#: doc/guix.texi:10359 -msgid "" -"This is the name of the file where some random bytes are saved by " -"@var{urandom-seed-service} to seed @file{/dev/urandom} when rebooting. It " -"defaults to @file{/var/lib/random-seed}." +#: doc/guix.texi:10588 +msgid "This is the name of the file where some random bytes are saved by @var{urandom-seed-service} to seed @file{/dev/urandom} when rebooting. It defaults to @file{/var/lib/random-seed}." msgstr "" #. type: cindex -#: doc/guix.texi:10361 +#: doc/guix.texi:10590 doc/guix.texi:11930 #, no-wrap msgid "keymap" msgstr "" #. type: cindex -#: doc/guix.texi:10362 +#: doc/guix.texi:10591 #, no-wrap msgid "keyboard" msgstr "" #. type: deffn -#: doc/guix.texi:10363 +#: doc/guix.texi:10592 #, no-wrap msgid "{Scheme Procedure} console-keymap-service @var{files} ..." msgstr "" #. type: deffn -#: doc/guix.texi:10368 -msgid "" -"Return a service to load console keymaps from @var{files} using " -"@command{loadkeys} command. Most likely, you want to load some default " -"keymap, which can be done like this:" +#: doc/guix.texi:10597 +msgid "Return a service to load console keymaps from @var{files} using @command{loadkeys} command. Most likely, you want to load some default keymap, which can be done like this:" msgstr "" #. type: example -#: doc/guix.texi:10371 +#: doc/guix.texi:10600 #, no-wrap msgid "(console-keymap-service \"dvorak\")\n" msgstr "" #. type: deffn -#: doc/guix.texi:10375 -msgid "" -"Or, for example, for a Swedish keyboard, you may need to combine the " -"following keymaps:" +#: doc/guix.texi:10604 +msgid "Or, for example, for a Swedish keyboard, you may need to combine the following keymaps:" msgstr "" #. type: example -#: doc/guix.texi:10377 +#: doc/guix.texi:10606 #, no-wrap msgid "(console-keymap-service \"se-lat6\" \"se-fi-lat6\")\n" msgstr "" #. type: deffn -#: doc/guix.texi:10381 -msgid "" -"Also you can specify a full file name (or file names) of your keymap(s). " -"See @code{man loadkeys} for details." +#: doc/guix.texi:10610 +msgid "Also you can specify a full file name (or file names) of your keymap(s). See @code{man loadkeys} for details." msgstr "" #. type: cindex -#: doc/guix.texi:10384 +#: doc/guix.texi:10613 #, no-wrap msgid "mouse" msgstr "" #. type: cindex -#: doc/guix.texi:10385 +#: doc/guix.texi:10614 #, no-wrap msgid "gpm" msgstr "" -#. type: deffn -#: doc/guix.texi:10386 +#. type: defvr +#: doc/guix.texi:10615 #, no-wrap -msgid "{Scheme Procedure} gpm-service [#:gpm @var{gpm}] @" +msgid "{Scheme Variable} gpm-service-type" +msgstr "{Variable Scheme} gpm-service-type" + +#. type: defvr +#: doc/guix.texi:10620 +msgid "This is the type of the service that runs GPM, the @dfn{general-purpose mouse daemon}, which provides mouse support to the Linux console. GPM allows users to use the mouse in the console, notably to select, copy, and paste text." msgstr "" -#. type: deffn -#: doc/guix.texi:10392 -msgid "" -"[#:options] Run @var{gpm}, the general-purpose mouse daemon, with the given " -"command-line @var{options}. GPM allows users to use the mouse in the " -"console, notably to select, copy, and paste text. The default value of " -"@var{options} uses the @code{ps2} protocol, which works for both USB and " -"PS/2 mice." +#. type: defvr +#: doc/guix.texi:10623 +msgid "The value for services of this type must be a @code{gpm-configuration} (see below). This service is not part of @var{%base-services}." msgstr "" -#. type: deffn -#: doc/guix.texi:10394 -msgid "This service is not part of @var{%base-services}." +#. type: deftp +#: doc/guix.texi:10625 +#, no-wrap +msgid "{Data Type} gpm-configuration" +msgstr "{Type de donnée} gpm-configuration" + +#. type: deftp +#: doc/guix.texi:10627 +msgid "Data type representing the configuration of GPM." +msgstr "Type de données représentant la configuration de GPM." + +#. type: item +#: doc/guix.texi:10629 +#, no-wrap +msgid "@code{options} (default: @code{%default-gpm-options})" +msgstr "@code{options} (par défaut : @code{%default-gpm-options})" + +#. type: table +#: doc/guix.texi:10634 +msgid "Command-line options passed to @command{gpm}. The default set of options instruct @command{gpm} to listen to mouse events on @file{/dev/input/mice}. @xref{Command Line,,, gpm, gpm manual}, for more information." msgstr "" +#. type: item +#: doc/guix.texi:10635 +#, no-wrap +msgid "@code{gpm} (default: @code{gpm})" +msgstr "@code{gpm} (par défaut : @code{gpm})" + +#. type: table +#: doc/guix.texi:10637 +msgid "The GPM package to use." +msgstr "Le paquet GPM à utiliser." + #. type: anchor{#1} -#: doc/guix.texi:10397 +#: doc/guix.texi:10642 msgid "guix-publish-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:10397 +#: doc/guix.texi:10642 #, no-wrap msgid "{Scheme Variable} guix-publish-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:10401 -msgid "" -"This is the service type for @command{guix publish} (@pxref{Invoking guix " -"publish}). Its value must be a @code{guix-configuration} object, as " -"described below." +#: doc/guix.texi:10646 +msgid "This is the service type for @command{guix publish} (@pxref{Invoking guix publish}). Its value must be a @code{guix-configuration} object, as described below." msgstr "" #. type: deffn -#: doc/guix.texi:10405 -msgid "" -"This assumes that @file{/etc/guix} already contains a signing key pair as " -"created by @command{guix archive --generate-key} (@pxref{Invoking guix " -"archive}). If that is not the case, the service will fail to start." +#: doc/guix.texi:10650 +msgid "This assumes that @file{/etc/guix} already contains a signing key pair as created by @command{guix archive --generate-key} (@pxref{Invoking guix archive}). If that is not the case, the service will fail to start." msgstr "" #. type: deftp -#: doc/guix.texi:10407 +#: doc/guix.texi:10652 #, no-wrap msgid "{Data Type} guix-publish-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:10410 -msgid "" -"Data type representing the configuration of the @code{guix publish} service." +#: doc/guix.texi:10655 +msgid "Data type representing the configuration of the @code{guix publish} service." msgstr "" #. type: item -#: doc/guix.texi:10412 +#: doc/guix.texi:10657 #, no-wrap msgid "@code{guix} (default: @code{guix})" msgstr "" #. type: item -#: doc/guix.texi:10415 +#: doc/guix.texi:10660 #, no-wrap msgid "@code{port} (default: @code{80})" msgstr "" #. type: table -#: doc/guix.texi:10417 +#: doc/guix.texi:10662 msgid "The TCP port to listen for connections." msgstr "" #. type: item -#: doc/guix.texi:10418 +#: doc/guix.texi:10663 #, no-wrap msgid "@code{host} (default: @code{\"localhost\"})" msgstr "" #. type: table -#: doc/guix.texi:10421 -msgid "" -"The host (and thus, network interface) to listen to. Use @code{\"0.0.0.0\"} " -"to listen on all the network interfaces." +#: doc/guix.texi:10666 +msgid "The host (and thus, network interface) to listen to. Use @code{\"0.0.0.0\"} to listen on all the network interfaces." msgstr "" #. type: table -#: doc/guix.texi:10426 -msgid "" -"The gzip compression level at which substitutes are compressed. Use " -"@code{0} to disable compression altogether, and @code{9} to get the best " -"compression ratio at the expense of increased CPU usage." +#: doc/guix.texi:10671 +msgid "The gzip compression level at which substitutes are compressed. Use @code{0} to disable compression altogether, and @code{9} to get the best compression ratio at the expense of increased CPU usage." msgstr "" #. type: item -#: doc/guix.texi:10427 +#: doc/guix.texi:10672 #, no-wrap msgid "@code{nar-path} (default: @code{\"nar\"})" msgstr "" #. type: table -#: doc/guix.texi:10430 -msgid "" -"The URL path at which ``nars'' can be fetched. @xref{Invoking guix publish, " -"@code{--nar-path}}, for details." +#: doc/guix.texi:10675 +msgid "The URL path at which ``nars'' can be fetched. @xref{Invoking guix publish, @code{--nar-path}}, for details." msgstr "" #. type: item -#: doc/guix.texi:10431 +#: doc/guix.texi:10676 #, no-wrap msgid "@code{cache} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10437 -msgid "" -"When it is @code{#f}, disable caching and instead generate archives on " -"demand. Otherwise, this should be the name of a directory---e.g., @code{\"/" -"var/cache/guix/publish\"}---where @command{guix publish} caches archives and " -"meta-data ready to be sent. @xref{Invoking guix publish, @option{--cache}}, " -"for more information on the tradeoffs involved." +#: doc/guix.texi:10682 +msgid "When it is @code{#f}, disable caching and instead generate archives on demand. Otherwise, this should be the name of a directory---e.g., @code{\"/var/cache/guix/publish\"}---where @command{guix publish} caches archives and meta-data ready to be sent. @xref{Invoking guix publish, @option{--cache}}, for more information on the tradeoffs involved." msgstr "" #. type: item -#: doc/guix.texi:10438 +#: doc/guix.texi:10683 #, no-wrap msgid "@code{workers} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10442 -msgid "" -"When it is an integer, this is the number of worker threads used for " -"caching; when @code{#f}, the number of processors is used. @xref{Invoking " -"guix publish, @option{--workers}}, for more information." +#: doc/guix.texi:10687 +msgid "When it is an integer, this is the number of worker threads used for caching; when @code{#f}, the number of processors is used. @xref{Invoking guix publish, @option{--workers}}, for more information." msgstr "" #. type: item -#: doc/guix.texi:10443 +#: doc/guix.texi:10688 #, no-wrap msgid "@code{ttl} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10447 -msgid "" -"When it is an integer, this denotes the @dfn{time-to-live} in seconds of the " -"published archives. @xref{Invoking guix publish, @option{--ttl}}, for more " -"information." +#: doc/guix.texi:10692 +msgid "When it is an integer, this denotes the @dfn{time-to-live} in seconds of the published archives. @xref{Invoking guix publish, @option{--ttl}}, for more information." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:10451 +#: doc/guix.texi:10696 msgid "rngd-service" msgstr "" #. type: deffn -#: doc/guix.texi:10451 +#: doc/guix.texi:10696 #, no-wrap msgid "{Scheme Procedure} rngd-service [#:rng-tools @var{rng-tools}] @" msgstr "" #. type: deffn -#: doc/guix.texi:10456 -msgid "" -"[#:device \"/dev/hwrng\"] Return a service that runs the @command{rngd} " -"program from @var{rng-tools} to add @var{device} to the kernel's entropy " -"pool. The service will fail if @var{device} does not exist." +#: doc/guix.texi:10701 +msgid "[#:device \"/dev/hwrng\"] Return a service that runs the @command{rngd} program from @var{rng-tools} to add @var{device} to the kernel's entropy pool. The service will fail if @var{device} does not exist." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:10459 +#: doc/guix.texi:10704 msgid "pam-limits-service" msgstr "" #. type: cindex -#: doc/guix.texi:10459 +#: doc/guix.texi:10704 #, no-wrap msgid "session limits" msgstr "" #. type: cindex -#: doc/guix.texi:10460 +#: doc/guix.texi:10705 #, no-wrap msgid "ulimit" msgstr "" #. type: cindex -#: doc/guix.texi:10461 +#: doc/guix.texi:10706 #, no-wrap msgid "priority" msgstr "" #. type: cindex -#: doc/guix.texi:10462 +#: doc/guix.texi:10707 #, no-wrap msgid "realtime" msgstr "" #. type: cindex -#: doc/guix.texi:10463 +#: doc/guix.texi:10708 #, no-wrap msgid "jackd" msgstr "" #. type: deffn -#: doc/guix.texi:10464 +#: doc/guix.texi:10709 #, no-wrap msgid "{Scheme Procedure} pam-limits-service [#:limits @code{'()}]" msgstr "" #. type: deffn -#: doc/guix.texi:10471 -msgid "" -"Return a service that installs a configuration file for the @uref{http://" -"linux-pam.org/Linux-PAM-html/sag-pam_limits.html, @code{pam_limits} " -"module}. The procedure optionally takes a list of @code{pam-limits-entry} " -"values, which can be used to specify @code{ulimit} limits and nice priority " -"limits to user sessions." +#: doc/guix.texi:10716 +msgid "Return a service that installs a configuration file for the @uref{http://linux-pam.org/Linux-PAM-html/sag-pam_limits.html, @code{pam_limits} module}. The procedure optionally takes a list of @code{pam-limits-entry} values, which can be used to specify @code{ulimit} limits and nice priority limits to user sessions." msgstr "" #. type: deffn -#: doc/guix.texi:10474 -msgid "" -"The following limits definition sets two hard and soft limits for all login " -"sessions of users in the @code{realtime} group:" +#: doc/guix.texi:10719 +msgid "The following limits definition sets two hard and soft limits for all login sessions of users in the @code{realtime} group:" msgstr "" #. type: example -#: doc/guix.texi:10480 +#: doc/guix.texi:10725 #, no-wrap msgid "" "(pam-limits-service\n" @@ -23267,56 +18629,40 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:10486 -msgid "" -"The first entry increases the maximum realtime priority for non-privileged " -"processes; the second entry lifts any restriction of the maximum address " -"space that can be locked in memory. These settings are commonly used for " -"real-time audio systems." +#: doc/guix.texi:10731 +msgid "The first entry increases the maximum realtime priority for non-privileged processes; the second entry lifts any restriction of the maximum address space that can be locked in memory. These settings are commonly used for real-time audio systems." msgstr "" #. type: cindex -#: doc/guix.texi:10491 +#: doc/guix.texi:10736 #, no-wrap msgid "cron" msgstr "" #. type: cindex -#: doc/guix.texi:10492 +#: doc/guix.texi:10737 #, no-wrap msgid "mcron" msgstr "" #. type: cindex -#: doc/guix.texi:10493 +#: doc/guix.texi:10738 #, no-wrap msgid "scheduling jobs" msgstr "" #. type: Plain text -#: doc/guix.texi:10500 -msgid "" -"The @code{(gnu services mcron)} module provides an interface to GNU@tie{}" -"mcron, a daemon to run jobs at scheduled times (@pxref{Top,,, mcron, " -"GNU@tie{}mcron}). GNU@tie{}mcron is similar to the traditional Unix " -"@command{cron} daemon; the main difference is that it is implemented in " -"Guile Scheme, which provides a lot of flexibility when specifying the " -"scheduling of jobs and their actions." +#: doc/guix.texi:10745 +msgid "The @code{(gnu services mcron)} module provides an interface to GNU@tie{}mcron, a daemon to run jobs at scheduled times (@pxref{Top,,, mcron, GNU@tie{}mcron}). GNU@tie{}mcron is similar to the traditional Unix @command{cron} daemon; the main difference is that it is implemented in Guile Scheme, which provides a lot of flexibility when specifying the scheduling of jobs and their actions." msgstr "" #. type: Plain text -#: doc/guix.texi:10508 -msgid "" -"The example below defines an operating system that runs the " -"@command{updatedb} (@pxref{Invoking updatedb,,, find, Finding Files}) and " -"the @command{guix gc} commands (@pxref{Invoking guix gc}) daily, as well as " -"the @command{mkid} command on behalf of an unprivileged user (@pxref{mkid " -"invocation,,, idutils, ID Database Utilities}). It uses gexps to introduce " -"job definitions that are passed to mcron (@pxref{G-Expressions})." +#: doc/guix.texi:10753 +msgid "The example below defines an operating system that runs the @command{updatedb} (@pxref{Invoking updatedb,,, find, Finding Files}) and the @command{guix gc} commands (@pxref{Invoking guix gc}) daily, as well as the @command{mkid} command on behalf of an unprivileged user (@pxref{mkid invocation,,, idutils, ID Database Utilities}). It uses gexps to introduce job definitions that are passed to mcron (@pxref{G-Expressions})." msgstr "" #. type: lisp -#: doc/guix.texi:10512 +#: doc/guix.texi:10757 #, no-wrap msgid "" "(use-modules (guix) (gnu) (gnu services mcron))\n" @@ -23325,7 +18671,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:10521 +#: doc/guix.texi:10766 #, no-wrap msgid "" "(define updatedb-job\n" @@ -23340,7 +18686,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:10527 +#: doc/guix.texi:10772 #, no-wrap msgid "" "(define garbage-collector-job\n" @@ -23352,7 +18698,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:10534 +#: doc/guix.texi:10779 #, no-wrap msgid "" "(define idutils-job\n" @@ -23365,7 +18711,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:10541 +#: doc/guix.texi:10786 #, no-wrap msgid "" "(operating-system\n" @@ -23377,33 +18723,28 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:10546 -msgid "" -"@xref{Guile Syntax, mcron job specifications,, mcron, GNU@tie{}mcron}, for " -"more information on mcron job specifications. Below is the reference of the " -"mcron service." +#: doc/guix.texi:10791 +msgid "@xref{Guile Syntax, mcron job specifications,, mcron, GNU@tie{}mcron}, for more information on mcron job specifications. Below is the reference of the mcron service." msgstr "" #. type: deffn -#: doc/guix.texi:10547 +#: doc/guix.texi:10792 #, no-wrap msgid "{Scheme Procedure} mcron-service @var{jobs} [#:mcron @var{mcron}]" msgstr "" #. type: deffn -#: doc/guix.texi:10550 -msgid "" -"Return an mcron service running @var{mcron} that schedules @var{jobs}, a " -"list of gexps denoting mcron job specifications." +#: doc/guix.texi:10795 +msgid "Return an mcron service running @var{mcron} that schedules @var{jobs}, a list of gexps denoting mcron job specifications." msgstr "" #. type: deffn -#: doc/guix.texi:10552 +#: doc/guix.texi:10797 msgid "This is a shorthand for:" msgstr "" #. type: example -#: doc/guix.texi:10555 +#: doc/guix.texi:10800 #, no-wrap msgid "" "(service mcron-service-type\n" @@ -23411,94 +18752,78 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:10558 +#: doc/guix.texi:10803 #, no-wrap msgid "{Scheme Variable} mcron-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:10561 -msgid "" -"This is the type of the @code{mcron} service, whose value is an @code{mcron-" -"configuration} object." +#: doc/guix.texi:10806 +msgid "This is the type of the @code{mcron} service, whose value is an @code{mcron-configuration} object." msgstr "" #. type: defvr -#: doc/guix.texi:10566 -msgid "" -"This service type can be the target of a service extension that provides it " -"additional job specifications (@pxref{Service Composition}). In other " -"words, it is possible to define services that provide additional mcron jobs " -"to run." +#: doc/guix.texi:10811 +msgid "This service type can be the target of a service extension that provides it additional job specifications (@pxref{Service Composition}). In other words, it is possible to define services that provide additional mcron jobs to run." msgstr "" #. type: deftp -#: doc/guix.texi:10568 +#: doc/guix.texi:10813 #, no-wrap msgid "{Data Type} mcron-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:10570 +#: doc/guix.texi:10815 msgid "Data type representing the configuration of mcron." msgstr "" #. type: item -#: doc/guix.texi:10572 +#: doc/guix.texi:10817 #, no-wrap msgid "@code{mcron} (default: @var{mcron})" msgstr "" #. type: table -#: doc/guix.texi:10574 +#: doc/guix.texi:10819 msgid "The mcron package to use." msgstr "" #. type: code{#1} -#: doc/guix.texi:10575 doc/guix.texi:10634 +#: doc/guix.texi:10820 doc/guix.texi:10879 #, no-wrap msgid "jobs" msgstr "" #. type: table -#: doc/guix.texi:10579 -msgid "" -"This is a list of gexps (@pxref{G-Expressions}), where each gexp corresponds " -"to an mcron job specification (@pxref{Syntax, mcron job specifications,, " -"mcron, GNU@tie{}mcron})." +#: doc/guix.texi:10824 +msgid "This is a list of gexps (@pxref{G-Expressions}), where each gexp corresponds to an mcron job specification (@pxref{Syntax, mcron job specifications,, mcron, GNU@tie{}mcron})." msgstr "" #. type: cindex -#: doc/guix.texi:10586 +#: doc/guix.texi:10831 #, no-wrap msgid "rottlog" msgstr "" #. type: cindex -#: doc/guix.texi:10587 +#: doc/guix.texi:10832 #, no-wrap msgid "log rotation" msgstr "" #. type: Plain text -#: doc/guix.texi:10594 -msgid "" -"Log files such as those found in @file{/var/log} tend to grow endlessly, so " -"it's a good idea to @dfn{rotate} them once in a while---i.e., archive their " -"contents in separate files, possibly compressed. The @code{(gnu services " -"admin)} module provides an interface to GNU@tie{}Rot[t]log, a log rotation " -"tool (@pxref{Top,,, rottlog, GNU Rot[t]log Manual})." +#: doc/guix.texi:10839 +msgid "Log files such as those found in @file{/var/log} tend to grow endlessly, so it's a good idea to @dfn{rotate} them once in a while---i.e., archive their contents in separate files, possibly compressed. The @code{(gnu services admin)} module provides an interface to GNU@tie{}Rot[t]log, a log rotation tool (@pxref{Top,,, rottlog, GNU Rot[t]log Manual})." msgstr "" #. type: Plain text -#: doc/guix.texi:10597 -msgid "" -"The example below defines an operating system that provides log rotation " -"with the default settings, for commonly encountered log files." +#: doc/guix.texi:10842 +msgid "The example below defines an operating system that provides log rotation with the default settings, for commonly encountered log files." msgstr "" #. type: lisp -#: doc/guix.texi:10602 +#: doc/guix.texi:10847 #, no-wrap msgid "" "(use-modules (guix) (gnu))\n" @@ -23508,7 +18833,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:10607 +#: doc/guix.texi:10852 #, no-wrap msgid "" "(operating-system\n" @@ -23518,106 +18843,93 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:10609 +#: doc/guix.texi:10854 #, no-wrap msgid "{Scheme Variable} rottlog-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:10612 -msgid "" -"This is the type of the Rottlog service, whose value is a @code{rottlog-" -"configuration} object." +#: doc/guix.texi:10857 +msgid "This is the type of the Rottlog service, whose value is a @code{rottlog-configuration} object." msgstr "" #. type: defvr -#: doc/guix.texi:10615 -msgid "" -"Other services can extend this one with new @code{log-rotation} objects (see " -"below), thereby augmenting the set of files to be rotated." +#: doc/guix.texi:10860 +msgid "Other services can extend this one with new @code{log-rotation} objects (see below), thereby augmenting the set of files to be rotated." msgstr "" #. type: defvr -#: doc/guix.texi:10618 -msgid "" -"This service type can define mcron jobs (@pxref{Scheduled Job Execution}) to " -"run the rottlog service." +#: doc/guix.texi:10863 +msgid "This service type can define mcron jobs (@pxref{Scheduled Job Execution}) to run the rottlog service." msgstr "" #. type: deftp -#: doc/guix.texi:10620 +#: doc/guix.texi:10865 #, no-wrap msgid "{Data Type} rottlog-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:10622 +#: doc/guix.texi:10867 msgid "Data type representing the configuration of rottlog." msgstr "" #. type: item -#: doc/guix.texi:10624 +#: doc/guix.texi:10869 #, no-wrap msgid "@code{rottlog} (default: @code{rottlog})" msgstr "" #. type: table -#: doc/guix.texi:10626 +#: doc/guix.texi:10871 msgid "The Rottlog package to use." msgstr "" #. type: item -#: doc/guix.texi:10627 +#: doc/guix.texi:10872 #, no-wrap msgid "@code{rc-file} (default: @code{(file-append rottlog \"/etc/rc\")})" msgstr "" #. type: table -#: doc/guix.texi:10630 -msgid "" -"The Rottlog configuration file to use (@pxref{Mandatory RC Variables,,, " -"rottlog, GNU Rot[t]log Manual})." +#: doc/guix.texi:10875 +msgid "The Rottlog configuration file to use (@pxref{Mandatory RC Variables,,, rottlog, GNU Rot[t]log Manual})." msgstr "" #. type: item -#: doc/guix.texi:10631 +#: doc/guix.texi:10876 #, no-wrap msgid "@code{rotations} (default: @code{%default-rotations})" msgstr "" #. type: table -#: doc/guix.texi:10633 +#: doc/guix.texi:10878 msgid "A list of @code{log-rotation} objects as defined below." msgstr "" #. type: table -#: doc/guix.texi:10637 -msgid "" -"This is a list of gexps where each gexp corresponds to an mcron job " -"specification (@pxref{Scheduled Job Execution})." +#: doc/guix.texi:10882 +msgid "This is a list of gexps where each gexp corresponds to an mcron job specification (@pxref{Scheduled Job Execution})." msgstr "" #. type: deftp -#: doc/guix.texi:10640 +#: doc/guix.texi:10885 #, no-wrap msgid "{Data Type} log-rotation" msgstr "" #. type: deftp -#: doc/guix.texi:10642 +#: doc/guix.texi:10887 msgid "Data type representing the rotation of a group of log files." msgstr "" #. type: deftp -#: doc/guix.texi:10646 -msgid "" -"Taking an example from the Rottlog manual (@pxref{Period Related File " -"Examples,,, rottlog, GNU Rot[t]log Manual}), a log rotation might be defined " -"like this:" +#: doc/guix.texi:10891 +msgid "Taking an example from the Rottlog manual (@pxref{Period Related File Examples,,, rottlog, GNU Rot[t]log Manual}), a log rotation might be defined like this:" msgstr "" #. type: example -#: doc/guix.texi:10655 +#: doc/guix.texi:10900 #, no-wrap msgid "" "(log-rotation\n" @@ -23630,123 +18942,111 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:10658 +#: doc/guix.texi:10903 msgid "The list of fields is as follows:" msgstr "" #. type: item -#: doc/guix.texi:10660 +#: doc/guix.texi:10905 #, no-wrap msgid "@code{frequency} (default: @code{'weekly})" msgstr "" #. type: table -#: doc/guix.texi:10662 +#: doc/guix.texi:10907 msgid "The log rotation frequency, a symbol." msgstr "" #. type: code{#1} -#: doc/guix.texi:10663 +#: doc/guix.texi:10908 #, no-wrap msgid "files" msgstr "" #. type: table -#: doc/guix.texi:10665 +#: doc/guix.texi:10910 msgid "The list of files or file glob patterns to rotate." msgstr "" #. type: item -#: doc/guix.texi:10666 +#: doc/guix.texi:10911 #, no-wrap msgid "@code{options} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10669 -msgid "" -"The list of rottlog options for this rotation (@pxref{Configuration " -"parameters,,, rottlog, GNU Rot[t]lg Manual})." +#: doc/guix.texi:10914 +msgid "The list of rottlog options for this rotation (@pxref{Configuration parameters,,, rottlog, GNU Rot[t]lg Manual})." msgstr "" #. type: item -#: doc/guix.texi:10670 +#: doc/guix.texi:10915 #, no-wrap msgid "@code{post-rotate} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10672 +#: doc/guix.texi:10917 msgid "Either @code{#f} or a gexp to execute once the rotation has completed." msgstr "" #. type: defvr -#: doc/guix.texi:10675 +#: doc/guix.texi:10920 #, no-wrap msgid "{Scheme Variable} %default-rotations" msgstr "" #. type: defvr -#: doc/guix.texi:10678 -msgid "" -"Specifies weekly rotation of @var{%rotated-files} and a couple of other " -"files." +#: doc/guix.texi:10923 +msgid "Specifies weekly rotation of @var{%rotated-files} and a couple of other files." msgstr "" #. type: defvr -#: doc/guix.texi:10680 +#: doc/guix.texi:10925 #, no-wrap msgid "{Scheme Variable} %rotated-files" msgstr "" #. type: defvr -#: doc/guix.texi:10683 -msgid "" -"The list of syslog-controlled files to be rotated. By default it is: " -"@code{'(\"/var/log/messages\" \"/var/log/secure\")}." +#: doc/guix.texi:10928 +msgid "The list of syslog-controlled files to be rotated. By default it is: @code{'(\"/var/log/messages\" \"/var/log/secure\")}." msgstr "" #. type: Plain text -#: doc/guix.texi:10690 -msgid "" -"The @code{(gnu services networking)} module provides services to configure " -"the network interface." +#: doc/guix.texi:10935 +msgid "The @code{(gnu services networking)} module provides services to configure the network interface." msgstr "" #. type: cindex -#: doc/guix.texi:10691 +#: doc/guix.texi:10936 #, no-wrap msgid "DHCP, networking service" msgstr "" #. type: deffn -#: doc/guix.texi:10692 +#: doc/guix.texi:10937 #, no-wrap msgid "{Scheme Procedure} dhcp-client-service [#:dhcp @var{isc-dhcp}]" msgstr "" #. type: deffn -#: doc/guix.texi:10695 -msgid "" -"Return a service that runs @var{dhcp}, a Dynamic Host Configuration Protocol " -"(DHCP) client, on all the non-loopback network interfaces." +#: doc/guix.texi:10940 +msgid "Return a service that runs @var{dhcp}, a Dynamic Host Configuration Protocol (DHCP) client, on all the non-loopback network interfaces." msgstr "" #. type: deffn -#: doc/guix.texi:10697 +#: doc/guix.texi:10942 #, no-wrap msgid "{Scheme Procedure} dhcpd-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:10701 -msgid "" -"This type defines a service that runs a DHCP daemon. To create a service of " -"this type, you must supply a @code{}. For example:" +#: doc/guix.texi:10946 +msgid "This type defines a service that runs a DHCP daemon. To create a service of this type, you must supply a @code{}. For example:" msgstr "" #. type: example -#: doc/guix.texi:10707 +#: doc/guix.texi:10952 #, no-wrap msgid "" "(service dhcpd-service-type\n" @@ -23756,307 +19056,294 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:10710 +#: doc/guix.texi:10955 #, no-wrap msgid "{Data Type} dhcpd-configuration" msgstr "" #. type: item -#: doc/guix.texi:10712 +#: doc/guix.texi:10957 #, no-wrap msgid "@code{package} (default: @code{isc-dhcp})" msgstr "" #. type: table -#: doc/guix.texi:10717 -msgid "" -"The package that provides the DHCP daemon. This package is expected to " -"provide the daemon at @file{sbin/dhcpd} relative to its output directory. " -"The default package is the @uref{http://www.isc.org/products/DHCP, ISC's " -"DHCP server}." +#: doc/guix.texi:10962 +msgid "The package that provides the DHCP daemon. This package is expected to provide the daemon at @file{sbin/dhcpd} relative to its output directory. The default package is the @uref{http://www.isc.org/products/DHCP, ISC's DHCP server}." msgstr "" #. type: item -#: doc/guix.texi:10717 doc/guix.texi:14345 +#: doc/guix.texi:10962 doc/guix.texi:14707 #, no-wrap msgid "@code{config-file} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10722 -msgid "" -"The configuration file to use. This is required. It will be passed to " -"@code{dhcpd} via its @code{-cf} option. This may be any ``file-like'' " -"object (@pxref{G-Expressions, file-like objects}). See @code{man dhcpd." -"conf} for details on the configuration file syntax." +#: doc/guix.texi:10967 +msgid "The configuration file to use. This is required. It will be passed to @code{dhcpd} via its @code{-cf} option. This may be any ``file-like'' object (@pxref{G-Expressions, file-like objects}). See @code{man dhcpd.conf} for details on the configuration file syntax." msgstr "" #. type: item -#: doc/guix.texi:10722 +#: doc/guix.texi:10967 #, no-wrap msgid "@code{version} (default: @code{\"4\"})" msgstr "" #. type: table -#: doc/guix.texi:10727 -msgid "" -"The DHCP version to use. The ISC DHCP server supports the values ``4'', " -"``6'', and ``4o6''. These correspond to the @code{dhcpd} program options " -"@code{-4}, @code{-6}, and @code{-4o6}. See @code{man dhcpd} for details." +#: doc/guix.texi:10972 +msgid "The DHCP version to use. The ISC DHCP server supports the values ``4'', ``6'', and ``4o6''. These correspond to the @code{dhcpd} program options @code{-4}, @code{-6}, and @code{-4o6}. See @code{man dhcpd} for details." msgstr "" #. type: item -#: doc/guix.texi:10727 +#: doc/guix.texi:10972 #, no-wrap msgid "@code{run-directory} (default: @code{\"/run/dhcpd\"})" msgstr "" #. type: table -#: doc/guix.texi:10730 -msgid "" -"The run directory to use. At service activation time, this directory will " -"be created if it does not exist." +#: doc/guix.texi:10975 +msgid "The run directory to use. At service activation time, this directory will be created if it does not exist." msgstr "" #. type: item -#: doc/guix.texi:10730 +#: doc/guix.texi:10975 #, no-wrap msgid "@code{pid-file} (default: @code{\"/run/dhcpd/dhcpd.pid\"})" msgstr "" #. type: table -#: doc/guix.texi:10733 -msgid "" -"The PID file to use. This corresponds to the @code{-pf} option of " -"@code{dhcpd}. See @code{man dhcpd} for details." +#: doc/guix.texi:10978 +msgid "The PID file to use. This corresponds to the @code{-pf} option of @code{dhcpd}. See @code{man dhcpd} for details." msgstr "" #. type: item -#: doc/guix.texi:10733 +#: doc/guix.texi:10978 #, no-wrap msgid "@code{interfaces} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10739 -msgid "" -"The names of the network interfaces on which dhcpd should listen for " -"broadcasts. If this list is not empty, then its elements (which must be " -"strings) will be appended to the @code{dhcpd} invocation when starting the " -"daemon. It may not be necessary to explicitly specify any interfaces here; " -"see @code{man dhcpd} for details." +#: doc/guix.texi:10984 +msgid "The names of the network interfaces on which dhcpd should listen for broadcasts. If this list is not empty, then its elements (which must be strings) will be appended to the @code{dhcpd} invocation when starting the daemon. It may not be necessary to explicitly specify any interfaces here; see @code{man dhcpd} for details." msgstr "" #. type: defvr -#: doc/guix.texi:10742 +#: doc/guix.texi:10987 #, no-wrap msgid "{Scheme Variable} static-networking-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:10745 +#: doc/guix.texi:10990 msgid "This is the type for statically-configured network interfaces." msgstr "" #. type: deffn -#: doc/guix.texi:10747 +#: doc/guix.texi:10992 #, no-wrap msgid "{Scheme Procedure} static-networking-service @var{interface} @var{ip} @" msgstr "" #. type: deffn -#: doc/guix.texi:10755 -msgid "" -"[#:netmask #f] [#:gateway #f] [#:name-servers @code{'()}] [#:requirement " -"@code{'(udev)}] Return a service that starts @var{interface} with address " -"@var{ip}. If @var{netmask} is true, use it as the network mask. If " -"@var{gateway} is true, it must be a string specifying the default network " -"gateway. @var{requirement} can be used to declare a dependency on another " -"service before configuring the interface." +#: doc/guix.texi:11000 +msgid "[#:netmask #f] [#:gateway #f] [#:name-servers @code{'()}] [#:requirement @code{'(udev)}] Return a service that starts @var{interface} with address @var{ip}. If @var{netmask} is true, use it as the network mask. If @var{gateway} is true, it must be a string specifying the default network gateway. @var{requirement} can be used to declare a dependency on another service before configuring the interface." msgstr "" #. type: deffn -#: doc/guix.texi:10760 -msgid "" -"This procedure can be called several times, one for each network interface " -"of interest. Behind the scenes what it does is extend @code{static-" -"networking-service-type} with additional network interfaces to handle." +#: doc/guix.texi:11005 +msgid "This procedure can be called several times, one for each network interface of interest. Behind the scenes what it does is extend @code{static-networking-service-type} with additional network interfaces to handle." msgstr "" #. type: cindex -#: doc/guix.texi:10762 +#: doc/guix.texi:11007 #, no-wrap msgid "wicd" msgstr "" #. type: cindex -#: doc/guix.texi:10765 +#: doc/guix.texi:11010 #, no-wrap msgid "network management" msgstr "" #. type: deffn -#: doc/guix.texi:10766 +#: doc/guix.texi:11011 #, no-wrap msgid "{Scheme Procedure} wicd-service [#:wicd @var{wicd}]" msgstr "" #. type: deffn -#: doc/guix.texi:10769 -msgid "" -"Return a service that runs @url{https://launchpad.net/wicd,Wicd}, a network " -"management daemon that aims to simplify wired and wireless networking." +#: doc/guix.texi:11014 +msgid "Return a service that runs @url{https://launchpad.net/wicd,Wicd}, a network management daemon that aims to simplify wired and wireless networking." msgstr "" #. type: deffn -#: doc/guix.texi:10774 -msgid "" -"This service adds the @var{wicd} package to the global profile, providing " -"several commands to interact with the daemon and configure networking: " -"@command{wicd-client}, a graphical user interface, and the @command{wicd-" -"cli} and @command{wicd-curses} user interfaces." +#: doc/guix.texi:11019 +msgid "This service adds the @var{wicd} package to the global profile, providing several commands to interact with the daemon and configure networking: @command{wicd-client}, a graphical user interface, and the @command{wicd-cli} and @command{wicd-curses} user interfaces." msgstr "" #. type: cindex -#: doc/guix.texi:10776 +#: doc/guix.texi:11021 +#, no-wrap +msgid "ModemManager" +msgstr "" + +#. type: defvr +#: doc/guix.texi:11023 +#, no-wrap +msgid "{Scheme Variable} modem-manager-service-type" +msgstr "{Variable Scheme} modem-manager-service-type" + +#. type: defvr +#: doc/guix.texi:11028 +msgid "This is the service type for the @uref{https://wiki.gnome.org/Projects/ModemManager, ModemManager} service. The value for this service type is a @code{modem-manager-configuration} record." +msgstr "" + +#. type: defvr +#: doc/guix.texi:11031 doc/guix.texi:11053 +msgid "This service is part of @code{%desktop-services} (@pxref{Desktop Services})." +msgstr "" + +#. type: deftp +#: doc/guix.texi:11033 +#, no-wrap +msgid "{Data Type} modem-manager-configuration" +msgstr "{Type de donnée} modem-manager-configuration" + +#. type: deftp +#: doc/guix.texi:11035 +msgid "Data type representing the configuration of ModemManager." +msgstr "Type de donnée représentant la configuration de ModemManager." + +#. type: item +#: doc/guix.texi:11037 +#, no-wrap +msgid "@code{modem-manager} (default: @code{modem-manager})" +msgstr "@code{modem-manager} (par défaut : @code{modem-manager})" + +#. type: table +#: doc/guix.texi:11039 +msgid "The ModemManager package to use." +msgstr "Le paquet ModemManager à utiliser." + +#. type: cindex +#: doc/guix.texi:11043 #, no-wrap msgid "NetworkManager" msgstr "" #. type: defvr -#: doc/guix.texi:10778 +#: doc/guix.texi:11045 #, no-wrap msgid "{Scheme Variable} network-manager-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:10783 -msgid "" -"This is the service type for the @uref{https://wiki.gnome.org/Projects/" -"NetworkManager, NetworkManager} service. The value for this service type is " -"a @code{network-manager-configuration} record." -msgstr "" - -#. type: defvr -#: doc/guix.texi:10786 -msgid "" -"This service is part of @code{%desktop-services} (@pxref{Desktop Services})." +#: doc/guix.texi:11050 +msgid "This is the service type for the @uref{https://wiki.gnome.org/Projects/NetworkManager, NetworkManager} service. The value for this service type is a @code{network-manager-configuration} record." msgstr "" #. type: deftp -#: doc/guix.texi:10788 +#: doc/guix.texi:11055 #, no-wrap msgid "{Data Type} network-manager-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:10790 +#: doc/guix.texi:11057 msgid "Data type representing the configuration of NetworkManager." msgstr "" #. type: item -#: doc/guix.texi:10792 +#: doc/guix.texi:11059 #, no-wrap msgid "@code{network-manager} (default: @code{network-manager})" msgstr "" #. type: table -#: doc/guix.texi:10794 +#: doc/guix.texi:11061 msgid "The NetworkManager package to use." msgstr "" #. type: item -#: doc/guix.texi:10795 +#: doc/guix.texi:11062 #, no-wrap msgid "@code{dns} (default: @code{\"default\"})" msgstr "" #. type: table -#: doc/guix.texi:10798 -msgid "" -"Processing mode for DNS, which affects how NetworkManager uses the " -"@code{resolv.conf} configuration file." +#: doc/guix.texi:11065 +msgid "Processing mode for DNS, which affects how NetworkManager uses the @code{resolv.conf} configuration file." msgstr "" #. type: item -#: doc/guix.texi:10800 +#: doc/guix.texi:11067 #, no-wrap msgid "default" msgstr "" #. type: table -#: doc/guix.texi:10803 -msgid "" -"NetworkManager will update @code{resolv.conf} to reflect the nameservers " -"provided by currently active connections." +#: doc/guix.texi:11070 +msgid "NetworkManager will update @code{resolv.conf} to reflect the nameservers provided by currently active connections." msgstr "" #. type: item -#: doc/guix.texi:10804 +#: doc/guix.texi:11071 #, no-wrap msgid "dnsmasq" msgstr "" #. type: table -#: doc/guix.texi:10808 -msgid "" -"NetworkManager will run @code{dnsmasq} as a local caching nameserver, using " -"a \"split DNS\" configuration if you are connected to a VPN, and then update " -"@code{resolv.conf} to point to the local nameserver." +#: doc/guix.texi:11075 +msgid "NetworkManager will run @code{dnsmasq} as a local caching nameserver, using a \"split DNS\" configuration if you are connected to a VPN, and then update @code{resolv.conf} to point to the local nameserver." msgstr "" #. type: item -#: doc/guix.texi:10809 doc/guix.texi:11795 +#: doc/guix.texi:11076 doc/guix.texi:12100 #, no-wrap msgid "none" msgstr "" #. type: table -#: doc/guix.texi:10811 +#: doc/guix.texi:11078 msgid "NetworkManager will not modify @code{resolv.conf}." msgstr "" #. type: item -#: doc/guix.texi:10813 +#: doc/guix.texi:11080 #, no-wrap msgid "@code{vpn-plugins} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10817 -msgid "" -"This is the list of available plugins for virtual private networks (VPNs). " -"An example of this is the @code{network-manager-openvpn} package, which " -"allows NetworkManager to manage VPNs @i{via} OpenVPN." +#: doc/guix.texi:11084 +msgid "This is the list of available plugins for virtual private networks (VPNs). An example of this is the @code{network-manager-openvpn} package, which allows NetworkManager to manage VPNs @i{via} OpenVPN." msgstr "" #. type: cindex -#: doc/guix.texi:10821 +#: doc/guix.texi:11088 #, no-wrap msgid "Connman" msgstr "" #. type: deffn -#: doc/guix.texi:10822 +#: doc/guix.texi:11089 #, no-wrap msgid "{Scheme Variable} connman-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:10825 -msgid "" -"This is the service type to run @url{https://01.org/connman,Connman}, a " -"network connection manager." +#: doc/guix.texi:11092 +msgid "This is the service type to run @url{https://01.org/connman,Connman}, a network connection manager." msgstr "" #. type: deffn -#: doc/guix.texi:10828 -msgid "" -"Its value must be an @code{connman-configuration} record as in this example:" +#: doc/guix.texi:11095 +msgid "Its value must be an @code{connman-configuration} record as in this example:" msgstr "" #. type: example -#: doc/guix.texi:10833 +#: doc/guix.texi:11100 #, no-wrap msgid "" "(service connman-service-type\n" @@ -24065,73 +19352,67 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:10836 +#: doc/guix.texi:11103 msgid "See below for details about @code{connman-configuration}." msgstr "" #. type: deftp -#: doc/guix.texi:10838 +#: doc/guix.texi:11105 #, no-wrap msgid "{Data Type} connman-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:10840 +#: doc/guix.texi:11107 msgid "Data Type representing the configuration of connman." msgstr "" #. type: item -#: doc/guix.texi:10842 +#: doc/guix.texi:11109 #, no-wrap msgid "@code{connman} (default: @var{connman})" msgstr "" #. type: table -#: doc/guix.texi:10844 +#: doc/guix.texi:11111 msgid "The connman package to use." msgstr "" #. type: item -#: doc/guix.texi:10845 +#: doc/guix.texi:11112 #, no-wrap msgid "@code{disable-vpn?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10847 +#: doc/guix.texi:11114 msgid "When true, enable connman's vpn plugin." msgstr "" #. type: cindex -#: doc/guix.texi:10850 +#: doc/guix.texi:11117 #, no-wrap msgid "WPA Supplicant" msgstr "" #. type: defvr -#: doc/guix.texi:10851 +#: doc/guix.texi:11118 #, no-wrap msgid "{Scheme Variable} wpa-supplicant-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:10856 -msgid "" -"This is the service type to run @url{https://w1.fi/wpa_supplicant/,WPA " -"supplicant}, an authentication daemon required to authenticate against " -"encrypted WiFi or ethernet networks. It is configured to listen for " -"requests on D-Bus." +#: doc/guix.texi:11123 +msgid "This is the service type to run @url{https://w1.fi/wpa_supplicant/,WPA supplicant}, an authentication daemon required to authenticate against encrypted WiFi or ethernet networks. It is configured to listen for requests on D-Bus." msgstr "" #. type: defvr -#: doc/guix.texi:10859 -msgid "" -"The value of this service is the @code{wpa-supplicant} package to use. " -"Thus, it can be instantiated like this:" +#: doc/guix.texi:11126 +msgid "The value of this service is the @code{wpa-supplicant} package to use. Thus, it can be instantiated like this:" msgstr "" #. type: lisp -#: doc/guix.texi:10862 +#: doc/guix.texi:11129 #, no-wrap msgid "" "(use-modules (gnu services networking))\n" @@ -24139,73 +19420,64 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:10864 +#: doc/guix.texi:11131 #, no-wrap msgid "(service wpa-supplicant-service-type)\n" msgstr "" #. type: cindex -#: doc/guix.texi:10867 +#: doc/guix.texi:11134 #, no-wrap msgid "NTP" msgstr "" #. type: cindex -#: doc/guix.texi:10868 +#: doc/guix.texi:11135 #, no-wrap msgid "real time clock" msgstr "" #. type: deffn -#: doc/guix.texi:10869 +#: doc/guix.texi:11136 #, no-wrap msgid "{Scheme Procedure} ntp-service [#:ntp @var{ntp}] @" msgstr "" #. type: deffn -#: doc/guix.texi:10877 -msgid "" -"[#:servers @var{%ntp-servers}] @ [#:allow-large-adjustment? #f] Return a " -"service that runs the daemon from @var{ntp}, the @uref{http://www.ntp.org, " -"Network Time Protocol package}. The daemon will keep the system clock " -"synchronized with that of @var{servers}. @var{allow-large-adjustment?} " -"determines whether @command{ntpd} is allowed to make an initial adjustment " -"of more than 1,000 seconds." +#: doc/guix.texi:11144 +msgid "[#:servers @var{%ntp-servers}] @ [#:allow-large-adjustment? #f] Return a service that runs the daemon from @var{ntp}, the @uref{http://www.ntp.org, Network Time Protocol package}. The daemon will keep the system clock synchronized with that of @var{servers}. @var{allow-large-adjustment?} determines whether @command{ntpd} is allowed to make an initial adjustment of more than 1,000 seconds." msgstr "" #. type: defvr -#: doc/guix.texi:10879 +#: doc/guix.texi:11146 #, no-wrap msgid "{Scheme Variable} %ntp-servers" msgstr "" #. type: defvr -#: doc/guix.texi:10881 +#: doc/guix.texi:11148 msgid "List of host names used as the default NTP servers." msgstr "" #. type: cindex -#: doc/guix.texi:10883 +#: doc/guix.texi:11150 #, no-wrap msgid "OpenNTPD" msgstr "" #. type: deffn -#: doc/guix.texi:10884 +#: doc/guix.texi:11151 #, no-wrap msgid "{Scheme Procedure} openntpd-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:10888 -msgid "" -"Run the @command{ntpd}, the Network Time Protocol (NTP) daemon, as " -"implemented by @uref{http://www.openntpd.org, OpenNTPD}. The daemon will " -"keep the system clock synchronized with that of the given servers." +#: doc/guix.texi:11155 +msgid "Run the @command{ntpd}, the Network Time Protocol (NTP) daemon, as implemented by @uref{http://www.openntpd.org, OpenNTPD}. The daemon will keep the system clock synchronized with that of the given servers." msgstr "" #. type: example -#: doc/guix.texi:10898 +#: doc/guix.texi:11165 #, no-wrap msgid "" "(service\n" @@ -24220,162 +19492,134 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:10902 +#: doc/guix.texi:11169 #, no-wrap msgid "{Data Type} openntpd-configuration" msgstr "" #. type: item -#: doc/guix.texi:10904 +#: doc/guix.texi:11171 #, no-wrap msgid "@code{openntpd} (default: @code{(file-append openntpd \"/sbin/ntpd\")})" msgstr "" #. type: table -#: doc/guix.texi:10906 +#: doc/guix.texi:11173 msgid "The openntpd executable to use." msgstr "" #. type: item -#: doc/guix.texi:10906 +#: doc/guix.texi:11173 #, no-wrap msgid "@code{listen-on} (default: @code{'(\"127.0.0.1\" \"::1\")})" msgstr "" #. type: table -#: doc/guix.texi:10908 -msgid "" -"A list of local IP addresses or hostnames the ntpd daemon should listen on." +#: doc/guix.texi:11175 +msgid "A list of local IP addresses or hostnames the ntpd daemon should listen on." msgstr "" #. type: item -#: doc/guix.texi:10908 +#: doc/guix.texi:11175 #, no-wrap msgid "@code{query-from} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10910 -msgid "" -"A list of local IP address the ntpd daemon should use for outgoing queries." +#: doc/guix.texi:11177 +msgid "A list of local IP address the ntpd daemon should use for outgoing queries." msgstr "" #. type: item -#: doc/guix.texi:10910 +#: doc/guix.texi:11177 #, no-wrap msgid "@code{sensor} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10915 -msgid "" -"Specify a list of timedelta sensor devices ntpd should use. @code{ntpd} " -"will listen to each sensor that acutally exists and ignore non-existant " -"ones. See @uref{https://man.openbsd.org/ntpd.conf, upstream documentation} " -"for more information." +#: doc/guix.texi:11182 +msgid "Specify a list of timedelta sensor devices ntpd should use. @code{ntpd} will listen to each sensor that acutally exists and ignore non-existant ones. See @uref{https://man.openbsd.org/ntpd.conf, upstream documentation} for more information." msgstr "" #. type: item -#: doc/guix.texi:10915 +#: doc/guix.texi:11182 #, no-wrap msgid "@code{server} (default: @var{%ntp-servers})" msgstr "" #. type: table -#: doc/guix.texi:10917 -msgid "" -"Specify a list of IP addresses or hostnames of NTP servers to synchronize to." +#: doc/guix.texi:11184 +msgid "Specify a list of IP addresses or hostnames of NTP servers to synchronize to." msgstr "" #. type: item -#: doc/guix.texi:10917 +#: doc/guix.texi:11184 doc/guix.texi:16965 #, no-wrap msgid "@code{servers} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10919 -msgid "" -"Specify a list of IP addresses or hostnames of NTP pools to synchronize to." +#: doc/guix.texi:11186 +msgid "Specify a list of IP addresses or hostnames of NTP pools to synchronize to." msgstr "" #. type: item -#: doc/guix.texi:10919 +#: doc/guix.texi:11186 #, no-wrap msgid "@code{constraint-from} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10926 -msgid "" -"@code{ntpd} can be configured to query the ‘Date’ from trusted HTTPS servers " -"via TLS. This time information is not used for precision but acts as an " -"authenticated constraint, thereby reducing the impact of unauthenticated NTP " -"man-in-the-middle attacks. Specify a list of URLs, IP addresses or " -"hostnames of HTTPS servers to provide a constraint." +#: doc/guix.texi:11193 +msgid "@code{ntpd} can be configured to query the ‘Date’ from trusted HTTPS servers via TLS. This time information is not used for precision but acts as an authenticated constraint, thereby reducing the impact of unauthenticated NTP man-in-the-middle attacks. Specify a list of URLs, IP addresses or hostnames of HTTPS servers to provide a constraint." msgstr "" #. type: item -#: doc/guix.texi:10926 +#: doc/guix.texi:11193 #, no-wrap msgid "@code{constraints-from} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10930 -msgid "" -"As with constraint from, specify a list of URLs, IP addresses or hostnames " -"of HTTPS servers to provide a constraint. Should the hostname resolve to " -"multiple IP addresses, @code{ntpd} will calculate a median constraint from " -"all of them." +#: doc/guix.texi:11197 +msgid "As with constraint from, specify a list of URLs, IP addresses or hostnames of HTTPS servers to provide a constraint. Should the hostname resolve to multiple IP addresses, @code{ntpd} will calculate a median constraint from all of them." msgstr "" #. type: item -#: doc/guix.texi:10930 +#: doc/guix.texi:11197 #, no-wrap msgid "@code{allow-large-adjustment?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:10933 -msgid "" -"Determines if @code{ntpd} is allowed to make an initial adjustment of more " -"than 180 seconds." +#: doc/guix.texi:11200 +msgid "Determines if @code{ntpd} is allowed to make an initial adjustment of more than 180 seconds." msgstr "" #. type: cindex -#: doc/guix.texi:10936 +#: doc/guix.texi:11203 #, no-wrap msgid "inetd" msgstr "" #. type: deffn -#: doc/guix.texi:10937 +#: doc/guix.texi:11204 #, no-wrap msgid "{Scheme variable} inetd-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:10942 -msgid "" -"This service runs the @command{inetd} (@pxref{inetd invocation,,, inetutils, " -"GNU Inetutils}) daemon. @command{inetd} listens for connections on internet " -"sockets, and lazily starts the specified server program when a connection is " -"made on one of these sockets." +#: doc/guix.texi:11209 +msgid "This service runs the @command{inetd} (@pxref{inetd invocation,,, inetutils, GNU Inetutils}) daemon. @command{inetd} listens for connections on internet sockets, and lazily starts the specified server program when a connection is made on one of these sockets." msgstr "" #. type: deffn -#: doc/guix.texi:10948 -msgid "" -"The value of this service is an @code{inetd-configuration} object. The " -"following example configures the @command{inetd} daemon to provide the built-" -"in @command{echo} service, as well as an smtp service which forwards smtp " -"traffic over ssh to a server @code{smtp-server} behind a gateway " -"@code{hostname}:" +#: doc/guix.texi:11215 +msgid "The value of this service is an @code{inetd-configuration} object. The following example configures the @command{inetd} daemon to provide the built-in @command{echo} service, as well as an smtp service which forwards smtp traffic over ssh to a server @code{smtp-server} behind a gateway @code{hostname}:" msgstr "" #. type: example -#: doc/guix.texi:10971 +#: doc/guix.texi:11238 #, no-wrap msgid "" "(service\n" @@ -24402,201 +19646,170 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:10974 +#: doc/guix.texi:11241 msgid "See below for more details about @code{inetd-configuration}." msgstr "" #. type: deftp -#: doc/guix.texi:10976 +#: doc/guix.texi:11243 #, no-wrap msgid "{Data Type} inetd-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:10978 +#: doc/guix.texi:11245 msgid "Data type representing the configuration of @command{inetd}." msgstr "" #. type: item -#: doc/guix.texi:10980 +#: doc/guix.texi:11247 #, no-wrap msgid "@code{program} (default: @code{(file-append inetutils \"/libexec/inetd\")})" msgstr "" #. type: table -#: doc/guix.texi:10982 +#: doc/guix.texi:11249 msgid "The @command{inetd} executable to use." msgstr "" #. type: item -#: doc/guix.texi:10983 doc/guix.texi:16240 +#: doc/guix.texi:11250 doc/guix.texi:16671 #, no-wrap msgid "@code{entries} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:10986 -msgid "" -"A list of @command{inetd} service entries. Each entry should be created by " -"the @code{inetd-entry} constructor." +#: doc/guix.texi:11253 +msgid "A list of @command{inetd} service entries. Each entry should be created by the @code{inetd-entry} constructor." msgstr "" #. type: deftp -#: doc/guix.texi:10989 +#: doc/guix.texi:11256 #, no-wrap msgid "{Data Type} inetd-entry" msgstr "" #. type: deftp -#: doc/guix.texi:10993 -msgid "" -"Data type representing an entry in the @command{inetd} configuration. Each " -"entry corresponds to a socket where @command{inetd} will listen for requests." +#: doc/guix.texi:11260 +msgid "Data type representing an entry in the @command{inetd} configuration. Each entry corresponds to a socket where @command{inetd} will listen for requests." msgstr "" #. type: item -#: doc/guix.texi:10995 +#: doc/guix.texi:11262 #, no-wrap msgid "@code{node} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:11000 -msgid "" -"Optional string, a comma-separated list of local addresses @command{inetd} " -"should use when listening for this service. @xref{Configuration file,,, " -"inetutils, GNU Inetutils} for a complete description of all options." +#: doc/guix.texi:11267 +msgid "Optional string, a comma-separated list of local addresses @command{inetd} should use when listening for this service. @xref{Configuration file,,, inetutils, GNU Inetutils} for a complete description of all options." msgstr "" #. type: table -#: doc/guix.texi:11002 +#: doc/guix.texi:11269 msgid "A string, the name must correspond to an entry in @code{/etc/services}." msgstr "" #. type: code{#1} -#: doc/guix.texi:11002 +#: doc/guix.texi:11269 #, no-wrap msgid "socket-type" msgstr "" #. type: table -#: doc/guix.texi:11005 -msgid "" -"One of @code{'stream}, @code{'dgram}, @code{'raw}, @code{'rdm} or " -"@code{'seqpacket}." +#: doc/guix.texi:11272 +msgid "One of @code{'stream}, @code{'dgram}, @code{'raw}, @code{'rdm} or @code{'seqpacket}." msgstr "" #. type: code{#1} -#: doc/guix.texi:11005 +#: doc/guix.texi:11272 #, no-wrap msgid "protocol" msgstr "" #. type: table -#: doc/guix.texi:11007 +#: doc/guix.texi:11274 msgid "A string, must correspond to an entry in @code{/etc/protocols}." msgstr "" #. type: item -#: doc/guix.texi:11007 +#: doc/guix.texi:11274 #, no-wrap msgid "@code{wait?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:11010 -msgid "" -"Whether @command{inetd} should wait for the server to exit before listening " -"to new service requests." +#: doc/guix.texi:11277 +msgid "Whether @command{inetd} should wait for the server to exit before listening to new service requests." msgstr "" #. type: table -#: doc/guix.texi:11015 -msgid "" -"A string containing the user (and, optionally, group) name of the user as " -"whom the server should run. The group name can be specified in a suffix, " -"separated by a colon or period, i.e. @code{\"user\"}, @code{\"user:group\"} " -"or @code{\"user.group\"}." +#: doc/guix.texi:11282 +msgid "A string containing the user (and, optionally, group) name of the user as whom the server should run. The group name can be specified in a suffix, separated by a colon or period, i.e. @code{\"user\"}, @code{\"user:group\"} or @code{\"user.group\"}." msgstr "" #. type: item -#: doc/guix.texi:11015 +#: doc/guix.texi:11282 #, no-wrap msgid "@code{program} (default: @code{\"internal\"})" msgstr "" #. type: table -#: doc/guix.texi:11018 -msgid "" -"The server program which will serve the requests, or @code{\"internal\"} if " -"@command{inetd} should use a built-in service." +#: doc/guix.texi:11285 +msgid "The server program which will serve the requests, or @code{\"internal\"} if @command{inetd} should use a built-in service." msgstr "" #. type: table -#: doc/guix.texi:11023 -msgid "" -"A list strings or file-like objects, which are the server program's " -"arguments, starting with the zeroth argument, i.e. the name of the program " -"itself. For @command{inetd}'s internal services, this entry must be " -"@code{'()} or @code{'(\"internal\")}." +#: doc/guix.texi:11290 +msgid "A list strings or file-like objects, which are the server program's arguments, starting with the zeroth argument, i.e. the name of the program itself. For @command{inetd}'s internal services, this entry must be @code{'()} or @code{'(\"internal\")}." msgstr "" #. type: deftp -#: doc/guix.texi:11027 -msgid "" -"@xref{Configuration file,,, inetutils, GNU Inetutils} for a more detailed " -"discussion of each configuration field." +#: doc/guix.texi:11294 +msgid "@xref{Configuration file,,, inetutils, GNU Inetutils} for a more detailed discussion of each configuration field." msgstr "" #. type: cindex -#: doc/guix.texi:11029 +#: doc/guix.texi:11296 #, no-wrap msgid "Tor" msgstr "" #. type: deffn -#: doc/guix.texi:11030 +#: doc/guix.texi:11297 #, no-wrap msgid "{Scheme Procedure} tor-service [@var{config-file}] [#:tor @var{tor}]" msgstr "" #. type: deffn -#: doc/guix.texi:11033 -msgid "" -"Return a service to run the @uref{https://torproject.org, Tor} anonymous " -"networking daemon." +#: doc/guix.texi:11300 +msgid "Return a service to run the @uref{https://torproject.org, Tor} anonymous networking daemon." msgstr "" #. type: deffn -#: doc/guix.texi:11038 -msgid "" -"The daemon runs as the @code{tor} unprivileged user. It is passed " -"@var{config-file}, a file-like object, with an additional @code{User tor} " -"line and lines for hidden services added via @code{tor-hidden-service}. Run " -"@command{man tor} for information about the configuration file." +#: doc/guix.texi:11305 +msgid "The daemon runs as the @code{tor} unprivileged user. It is passed @var{config-file}, a file-like object, with an additional @code{User tor} line and lines for hidden services added via @code{tor-hidden-service}. Run @command{man tor} for information about the configuration file." msgstr "" #. type: cindex -#: doc/guix.texi:11040 +#: doc/guix.texi:11307 #, no-wrap msgid "hidden service" msgstr "" #. type: deffn -#: doc/guix.texi:11041 +#: doc/guix.texi:11308 #, no-wrap msgid "{Scheme Procedure} tor-hidden-service @var{name} @var{mapping}" msgstr "" #. type: deffn -#: doc/guix.texi:11044 -msgid "" -"Define a new Tor @dfn{hidden service} called @var{name} and implementing " -"@var{mapping}. @var{mapping} is a list of port/host tuples, such as:" +#: doc/guix.texi:11311 +msgid "Define a new Tor @dfn{hidden service} called @var{name} and implementing @var{mapping}. @var{mapping} is a list of port/host tuples, such as:" msgstr "" #. type: example -#: doc/guix.texi:11048 +#: doc/guix.texi:11315 #, no-wrap msgid "" " '((22 \"127.0.0.1:22\")\n" @@ -24604,330 +19817,288 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:11052 -msgid "" -"In this example, port 22 of the hidden service is mapped to local port 22, " -"and port 80 is mapped to local port 8080." +#: doc/guix.texi:11319 +msgid "In this example, port 22 of the hidden service is mapped to local port 22, and port 80 is mapped to local port 8080." msgstr "" #. type: deffn -#: doc/guix.texi:11056 -msgid "" -"This creates a @file{/var/lib/tor/hidden-services/@var{name}} directory, " -"where the @file{hostname} file contains the @code{.onion} host name for the " -"hidden service." +#: doc/guix.texi:11323 +msgid "This creates a @file{/var/lib/tor/hidden-services/@var{name}} directory, where the @file{hostname} file contains the @code{.onion} host name for the hidden service." msgstr "" #. type: deffn -#: doc/guix.texi:11059 -msgid "" -"See @uref{https://www.torproject.org/docs/tor-hidden-service.html.en, the " -"Tor project's documentation} for more information." +#: doc/guix.texi:11326 +msgid "See @uref{https://www.torproject.org/docs/tor-hidden-service.html.en, the Tor project's documentation} for more information." msgstr "" #. type: Plain text -#: doc/guix.texi:11062 +#: doc/guix.texi:11329 msgid "The @code{(gnu services rsync)} module provides the following services:" msgstr "" #. type: Plain text -#: doc/guix.texi:11066 -msgid "" -"You might want an rsync daemon if you have files that you want available so " -"anyone (or just yourself) can download existing files or upload new files." +#: doc/guix.texi:11333 +msgid "You might want an rsync daemon if you have files that you want available so anyone (or just yourself) can download existing files or upload new files." msgstr "" #. type: deffn -#: doc/guix.texi:11067 +#: doc/guix.texi:11334 #, no-wrap msgid "{Scheme Variable} rsync-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:11070 -msgid "" -"This is the type for the @uref{https://rsync.samba.org, rsync} rsync daemon, " -"@command{rsync-configuration} record as in this example:" +#: doc/guix.texi:11337 +msgid "This is the type for the @uref{https://rsync.samba.org, rsync} rsync daemon, @command{rsync-configuration} record as in this example:" msgstr "" #. type: example -#: doc/guix.texi:11073 +#: doc/guix.texi:11340 #, no-wrap msgid "(service rsync-service-type)\n" msgstr "" #. type: deffn -#: doc/guix.texi:11076 +#: doc/guix.texi:11343 msgid "See below for details about @code{rsync-configuration}." msgstr "" #. type: deftp -#: doc/guix.texi:11078 +#: doc/guix.texi:11345 #, no-wrap msgid "{Data Type} rsync-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:11080 +#: doc/guix.texi:11347 msgid "Data type representing the configuration for @code{rsync-service}." msgstr "" #. type: item -#: doc/guix.texi:11082 +#: doc/guix.texi:11349 #, no-wrap msgid "@code{package} (default: @var{rsync})" msgstr "" #. type: table -#: doc/guix.texi:11084 +#: doc/guix.texi:11351 msgid "@code{rsync} package to use." msgstr "" #. type: item -#: doc/guix.texi:11085 +#: doc/guix.texi:11352 #, no-wrap msgid "@code{port-number} (default: @code{873})" msgstr "" #. type: table -#: doc/guix.texi:11089 -msgid "" -"TCP port on which @command{rsync} listens for incoming connections. If port " -"is less than @code{1024} @command{rsync} needs to be started as the " -"@code{root} user and group." +#: doc/guix.texi:11356 +msgid "TCP port on which @command{rsync} listens for incoming connections. If port is less than @code{1024} @command{rsync} needs to be started as the @code{root} user and group." msgstr "" #. type: item -#: doc/guix.texi:11090 +#: doc/guix.texi:11357 #, no-wrap msgid "@code{pid-file} (default: @code{\"/var/run/rsyncd/rsyncd.pid\"})" msgstr "" #. type: table -#: doc/guix.texi:11092 +#: doc/guix.texi:11359 msgid "Name of the file where @command{rsync} writes its PID." msgstr "" #. type: item -#: doc/guix.texi:11093 +#: doc/guix.texi:11360 #, no-wrap msgid "@code{lock-file} (default: @code{\"/var/run/rsyncd/rsyncd.lock\"})" msgstr "" #. type: table -#: doc/guix.texi:11095 +#: doc/guix.texi:11362 msgid "Name of the file where @command{rsync} writes its lock file." msgstr "" #. type: item -#: doc/guix.texi:11096 +#: doc/guix.texi:11363 #, no-wrap msgid "@code{log-file} (default: @code{\"/var/log/rsyncd.log\"})" msgstr "" #. type: table -#: doc/guix.texi:11098 +#: doc/guix.texi:11365 msgid "Name of the file where @command{rsync} writes its log file." msgstr "" #. type: item -#: doc/guix.texi:11099 +#: doc/guix.texi:11366 #, no-wrap msgid "@code{use-chroot?} (default: @var{#t})" msgstr "" #. type: table -#: doc/guix.texi:11101 +#: doc/guix.texi:11368 msgid "Whether to use chroot for @command{rsync} shared directory." msgstr "" #. type: item -#: doc/guix.texi:11102 +#: doc/guix.texi:11369 #, no-wrap msgid "@code{share-path} (default: @file{/srv/rsync})" msgstr "" #. type: table -#: doc/guix.texi:11104 +#: doc/guix.texi:11371 msgid "Location of the @command{rsync} shared directory." msgstr "" #. type: item -#: doc/guix.texi:11105 +#: doc/guix.texi:11372 #, no-wrap msgid "@code{share-comment} (default: @code{\"Rsync share\"})" msgstr "" #. type: table -#: doc/guix.texi:11107 +#: doc/guix.texi:11374 msgid "Comment of the @command{rsync} shared directory." msgstr "" #. type: item -#: doc/guix.texi:11108 +#: doc/guix.texi:11375 #, no-wrap msgid "@code{read-only?} (default: @var{#f})" msgstr "" #. type: table -#: doc/guix.texi:11110 +#: doc/guix.texi:11377 msgid "Read-write permissions to shared directory." msgstr "" #. type: item -#: doc/guix.texi:11111 +#: doc/guix.texi:11378 #, no-wrap msgid "@code{timeout} (default: @code{300})" msgstr "" #. type: table -#: doc/guix.texi:11113 +#: doc/guix.texi:11380 msgid "I/O timeout in seconds." msgstr "" #. type: item -#: doc/guix.texi:11114 +#: doc/guix.texi:11381 #, no-wrap msgid "@code{user} (default: @var{\"root\"})" msgstr "" #. type: table -#: doc/guix.texi:11116 +#: doc/guix.texi:11383 msgid "Owner of the @code{rsync} process." msgstr "" #. type: item -#: doc/guix.texi:11117 +#: doc/guix.texi:11384 #, no-wrap msgid "@code{group} (default: @var{\"root\"})" msgstr "" #. type: table -#: doc/guix.texi:11119 +#: doc/guix.texi:11386 msgid "Group of the @code{rsync} process." msgstr "" #. type: item -#: doc/guix.texi:11120 +#: doc/guix.texi:11387 #, no-wrap msgid "@code{uid} (default: @var{\"rsyncd\"})" msgstr "" #. type: table -#: doc/guix.texi:11123 -msgid "" -"User name or user ID that file transfers to and from that module should take " -"place as when the daemon was run as @code{root}." +#: doc/guix.texi:11390 +msgid "User name or user ID that file transfers to and from that module should take place as when the daemon was run as @code{root}." msgstr "" #. type: item -#: doc/guix.texi:11124 +#: doc/guix.texi:11391 #, no-wrap msgid "@code{gid} (default: @var{\"rsyncd\"})" msgstr "" #. type: table -#: doc/guix.texi:11126 +#: doc/guix.texi:11393 msgid "Group name or group ID that will be used when accessing the module." msgstr "" #. type: Plain text -#: doc/guix.texi:11131 +#: doc/guix.texi:11398 msgid "Furthermore, @code{(gnu services ssh)} provides the following services." msgstr "" #. type: cindex -#: doc/guix.texi:11131 doc/guix.texi:11170 doc/guix.texi:20791 +#: doc/guix.texi:11398 doc/guix.texi:11437 doc/guix.texi:21275 #, no-wrap msgid "SSH" msgstr "" #. type: cindex -#: doc/guix.texi:11132 doc/guix.texi:11171 doc/guix.texi:20792 +#: doc/guix.texi:11399 doc/guix.texi:11438 doc/guix.texi:21276 #, no-wrap msgid "SSH server" msgstr "" #. type: deffn -#: doc/guix.texi:11134 +#: doc/guix.texi:11401 #, no-wrap msgid "{Scheme Procedure} lsh-service [#:host-key \"/etc/lsh/host-key\"] @" msgstr "" #. type: deffn -#: doc/guix.texi:11143 -msgid "" -"[#:daemonic? #t] [#:interfaces '()] [#:port-number 22] @ [#:allow-empty-" -"passwords? #f] [#:root-login? #f] @ [#:syslog-output? #t] [#:x11-forwarding? " -"#t] @ [#:tcp/ip-forwarding? #t] [#:password-authentication? #t] @ [#:public-" -"key-authentication? #t] [#:initialize? #t] Run the @command{lshd} program " -"from @var{lsh} to listen on port @var{port-number}. @var{host-key} must " -"designate a file containing the host key, and readable only by root." +#: doc/guix.texi:11410 +msgid "[#:daemonic? #t] [#:interfaces '()] [#:port-number 22] @ [#:allow-empty-passwords? #f] [#:root-login? #f] @ [#:syslog-output? #t] [#:x11-forwarding? #t] @ [#:tcp/ip-forwarding? #t] [#:password-authentication? #t] @ [#:public-key-authentication? #t] [#:initialize? #t] Run the @command{lshd} program from @var{lsh} to listen on port @var{port-number}. @var{host-key} must designate a file containing the host key, and readable only by root." msgstr "" #. type: deffn -#: doc/guix.texi:11149 -msgid "" -"When @var{daemonic?} is true, @command{lshd} will detach from the " -"controlling terminal and log its output to syslogd, unless one sets " -"@var{syslog-output?} to false. Obviously, it also makes lsh-service depend " -"on existence of syslogd service. When @var{pid-file?} is true, " -"@command{lshd} writes its PID to the file called @var{pid-file}." +#: doc/guix.texi:11416 +msgid "When @var{daemonic?} is true, @command{lshd} will detach from the controlling terminal and log its output to syslogd, unless one sets @var{syslog-output?} to false. Obviously, it also makes lsh-service depend on existence of syslogd service. When @var{pid-file?} is true, @command{lshd} writes its PID to the file called @var{pid-file}." msgstr "" #. type: deffn -#: doc/guix.texi:11153 -msgid "" -"When @var{initialize?} is true, automatically create the seed and host key " -"upon service activation if they do not exist yet. This may take long and " -"require interaction." +#: doc/guix.texi:11420 +msgid "When @var{initialize?} is true, automatically create the seed and host key upon service activation if they do not exist yet. This may take long and require interaction." msgstr "" #. type: deffn -#: doc/guix.texi:11158 -msgid "" -"When @var{initialize?} is false, it is up to the user to initialize the " -"randomness generator (@pxref{lsh-make-seed,,, lsh, LSH Manual}), and to " -"create a key pair with the private key stored in file @var{host-key} " -"(@pxref{lshd basics,,, lsh, LSH Manual})." +#: doc/guix.texi:11425 +msgid "When @var{initialize?} is false, it is up to the user to initialize the randomness generator (@pxref{lsh-make-seed,,, lsh, LSH Manual}), and to create a key pair with the private key stored in file @var{host-key} (@pxref{lshd basics,,, lsh, LSH Manual})." msgstr "" #. type: deffn -#: doc/guix.texi:11162 -msgid "" -"When @var{interfaces} is empty, lshd listens for connections on all the " -"network interfaces; otherwise, @var{interfaces} must be a list of host names " -"or addresses." +#: doc/guix.texi:11429 +msgid "When @var{interfaces} is empty, lshd listens for connections on all the network interfaces; otherwise, @var{interfaces} must be a list of host names or addresses." msgstr "" #. type: deffn -#: doc/guix.texi:11166 -msgid "" -"@var{allow-empty-passwords?} specifies whether to accept log-ins with empty " -"passwords, and @var{root-login?} specifies whether to accept log-ins as root." +#: doc/guix.texi:11433 +msgid "@var{allow-empty-passwords?} specifies whether to accept log-ins with empty passwords, and @var{root-login?} specifies whether to accept log-ins as root." msgstr "" #. type: deffn -#: doc/guix.texi:11168 +#: doc/guix.texi:11435 msgid "The other options should be self-descriptive." msgstr "" #. type: deffn -#: doc/guix.texi:11172 +#: doc/guix.texi:11439 #, no-wrap msgid "{Scheme Variable} openssh-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:11176 -msgid "" -"This is the type for the @uref{http://www.openssh.org, OpenSSH} secure shell " -"daemon, @command{sshd}. Its value must be an @code{openssh-configuration} " -"record as in this example:" +#: doc/guix.texi:11443 +msgid "This is the type for the @uref{http://www.openssh.org, OpenSSH} secure shell daemon, @command{sshd}. Its value must be an @code{openssh-configuration} record as in this example:" msgstr "" #. type: example -#: doc/guix.texi:11185 +#: doc/guix.texi:11452 #, no-wrap msgid "" "(service openssh-service-type\n" @@ -24940,18 +20111,17 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:11188 +#: doc/guix.texi:11455 msgid "See below for details about @code{openssh-configuration}." msgstr "" #. type: deffn -#: doc/guix.texi:11191 -msgid "" -"This service can be extended with extra authorized keys, as in this example:" +#: doc/guix.texi:11458 +msgid "This service can be extended with extra authorized keys, as in this example:" msgstr "" #. type: example -#: doc/guix.texi:11196 +#: doc/guix.texi:11463 #, no-wrap msgid "" "(service-extension openssh-service-type\n" @@ -24960,188 +20130,159 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:11199 +#: doc/guix.texi:11466 #, no-wrap msgid "{Data Type} openssh-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:11201 +#: doc/guix.texi:11468 msgid "This is the configuration record for OpenSSH's @command{sshd}." msgstr "" #. type: item -#: doc/guix.texi:11203 +#: doc/guix.texi:11470 #, no-wrap msgid "@code{pid-file} (default: @code{\"/var/run/sshd.pid\"})" msgstr "" #. type: table -#: doc/guix.texi:11205 +#: doc/guix.texi:11472 msgid "Name of the file where @command{sshd} writes its PID." msgstr "" #. type: item -#: doc/guix.texi:11206 +#: doc/guix.texi:11473 #, no-wrap msgid "@code{port-number} (default: @code{22})" msgstr "" #. type: table -#: doc/guix.texi:11208 +#: doc/guix.texi:11475 msgid "TCP port on which @command{sshd} listens for incoming connections." msgstr "" #. type: item -#: doc/guix.texi:11209 +#: doc/guix.texi:11476 #, no-wrap msgid "@code{permit-root-login} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:11214 -msgid "" -"This field determines whether and when to allow logins as root. If " -"@code{#f}, root logins are disallowed; if @code{#t}, they are allowed. If " -"it's the symbol @code{'without-password}, then root logins are permitted but " -"not with password-based authentication." +#: doc/guix.texi:11481 +msgid "This field determines whether and when to allow logins as root. If @code{#f}, root logins are disallowed; if @code{#t}, they are allowed. If it's the symbol @code{'without-password}, then root logins are permitted but not with password-based authentication." msgstr "" #. type: item -#: doc/guix.texi:11215 doc/guix.texi:11348 +#: doc/guix.texi:11482 doc/guix.texi:11615 #, no-wrap msgid "@code{allow-empty-passwords?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:11218 -msgid "" -"When true, users with empty passwords may log in. When false, they may not." +#: doc/guix.texi:11485 +msgid "When true, users with empty passwords may log in. When false, they may not." msgstr "" #. type: item -#: doc/guix.texi:11219 doc/guix.texi:11351 +#: doc/guix.texi:11486 doc/guix.texi:11618 #, no-wrap msgid "@code{password-authentication?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:11222 -msgid "" -"When true, users may log in with their password. When false, they have " -"other authentication methods." +#: doc/guix.texi:11489 +msgid "When true, users may log in with their password. When false, they have other authentication methods." msgstr "" #. type: item -#: doc/guix.texi:11223 +#: doc/guix.texi:11490 #, no-wrap msgid "@code{public-key-authentication?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:11226 -msgid "" -"When true, users may log in using public key authentication. When false, " -"users have to use other authentication method." +#: doc/guix.texi:11493 +msgid "When true, users may log in using public key authentication. When false, users have to use other authentication method." msgstr "" #. type: table -#: doc/guix.texi:11229 -msgid "" -"Authorized public keys are stored in @file{~/.ssh/authorized_keys}. This is " -"used only by protocol version 2." +#: doc/guix.texi:11496 +msgid "Authorized public keys are stored in @file{~/.ssh/authorized_keys}. This is used only by protocol version 2." msgstr "" #. type: item -#: doc/guix.texi:11230 +#: doc/guix.texi:11497 #, no-wrap msgid "@code{x11-forwarding?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:11234 -msgid "" -"When true, forwarding of X11 graphical client connections is enabled---in " -"other words, @command{ssh} options @option{-X} and @option{-Y} will work." +#: doc/guix.texi:11501 +msgid "When true, forwarding of X11 graphical client connections is enabled---in other words, @command{ssh} options @option{-X} and @option{-Y} will work." msgstr "" #. type: item -#: doc/guix.texi:11235 +#: doc/guix.texi:11502 #, no-wrap msgid "@code{challenge-response-authentication?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:11238 -msgid "" -"Specifies whether challenge response authentication is allowed (e.g. via " -"PAM)." +#: doc/guix.texi:11505 +msgid "Specifies whether challenge response authentication is allowed (e.g. via PAM)." msgstr "" #. type: item -#: doc/guix.texi:11239 +#: doc/guix.texi:11506 #, no-wrap msgid "@code{use-pam?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:11245 -msgid "" -"Enables the Pluggable Authentication Module interface. If set to @code{#t}, " -"this will enable PAM authentication using @code{challenge-response-" -"authentication?} and @code{password-authentication?}, in addition to PAM " -"account and session module processing for all authentication types." +#: doc/guix.texi:11512 +msgid "Enables the Pluggable Authentication Module interface. If set to @code{#t}, this will enable PAM authentication using @code{challenge-response-authentication?} and @code{password-authentication?}, in addition to PAM account and session module processing for all authentication types." msgstr "" #. type: table -#: doc/guix.texi:11250 -msgid "" -"Because PAM challenge response authentication usually serves an equivalent " -"role to password authentication, you should disable either @code{challenge-" -"response-authentication?} or @code{password-authentication?}." +#: doc/guix.texi:11517 +msgid "Because PAM challenge response authentication usually serves an equivalent role to password authentication, you should disable either @code{challenge-response-authentication?} or @code{password-authentication?}." msgstr "" #. type: item -#: doc/guix.texi:11251 +#: doc/guix.texi:11518 #, no-wrap msgid "@code{print-last-log?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:11254 -msgid "" -"Specifies whether @command{sshd} should print the date and time of the last " -"user login when a user logs in interactively." +#: doc/guix.texi:11521 +msgid "Specifies whether @command{sshd} should print the date and time of the last user login when a user logs in interactively." msgstr "" #. type: item -#: doc/guix.texi:11255 +#: doc/guix.texi:11522 #, no-wrap msgid "@code{subsystems} (default: @code{'((\"sftp\" \"internal-sftp\"))})" msgstr "" #. type: table -#: doc/guix.texi:11257 +#: doc/guix.texi:11524 msgid "Configures external subsystems (e.g. file transfer daemon)." msgstr "" #. type: table -#: doc/guix.texi:11261 -msgid "" -"This is a list of two-element lists, each of which containing the subsystem " -"name and a command (with optional arguments) to execute upon subsystem " -"request." +#: doc/guix.texi:11528 +msgid "This is a list of two-element lists, each of which containing the subsystem name and a command (with optional arguments) to execute upon subsystem request." msgstr "" #. type: table -#: doc/guix.texi:11264 -msgid "" -"The command @command{internal-sftp} implements an in-process SFTP server. " -"Alternately, one can specify the @command{sftp-server} command:" +#: doc/guix.texi:11531 +msgid "The command @command{internal-sftp} implements an in-process SFTP server. Alternately, one can specify the @command{sftp-server} command:" msgstr "" #. type: example -#: doc/guix.texi:11269 +#: doc/guix.texi:11536 #, no-wrap msgid "" "(service openssh-service-type\n" @@ -25151,34 +20292,28 @@ msgid "" msgstr "" #. type: item -#: doc/guix.texi:11271 +#: doc/guix.texi:11538 #, no-wrap msgid "@code{accepted-environment} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:11273 +#: doc/guix.texi:11540 msgid "List of strings describing which environment variables may be exported." msgstr "" #. type: table -#: doc/guix.texi:11276 -msgid "" -"Each string gets on its own line. See the @code{AcceptEnv} option in " -"@code{man sshd_config}." +#: doc/guix.texi:11543 +msgid "Each string gets on its own line. See the @code{AcceptEnv} option in @code{man sshd_config}." msgstr "" #. type: table -#: doc/guix.texi:11281 -msgid "" -"This example allows ssh-clients to export the @code{COLORTERM} variable. It " -"is set by terminal emulators, which support colors. You can use it in your " -"shell's ressource file to enable colors for the prompt and commands if this " -"variable is set." +#: doc/guix.texi:11548 +msgid "This example allows ssh-clients to export the @code{COLORTERM} variable. It is set by terminal emulators, which support colors. You can use it in your shell's ressource file to enable colors for the prompt and commands if this variable is set." msgstr "" #. type: example -#: doc/guix.texi:11286 +#: doc/guix.texi:11553 #, no-wrap msgid "" "(service openssh-service-type\n" @@ -25187,33 +20322,30 @@ msgid "" msgstr "" #. type: item -#: doc/guix.texi:11288 +#: doc/guix.texi:11555 #, no-wrap msgid "@code{authorized-keys} (default: @code{'()})" msgstr "" #. type: cindex -#: doc/guix.texi:11289 +#: doc/guix.texi:11556 #, no-wrap msgid "authorized keys, SSH" msgstr "" #. type: cindex -#: doc/guix.texi:11290 +#: doc/guix.texi:11557 #, no-wrap msgid "SSH authorized keys" msgstr "" #. type: table -#: doc/guix.texi:11294 -msgid "" -"This is the list of authorized keys. Each element of the list is a user " -"name followed by one or more file-like objects that represent SSH public " -"keys. For example:" +#: doc/guix.texi:11561 +msgid "This is the list of authorized keys. Each element of the list is a user name followed by one or more file-like objects that represent SSH public keys. For example:" msgstr "" #. type: example -#: doc/guix.texi:11301 +#: doc/guix.texi:11568 #, no-wrap msgid "" "(openssh-configuration\n" @@ -25224,48 +20356,38 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:11306 -msgid "" -"registers the specified public keys for user accounts @code{rekado}, " -"@code{chris}, and @code{root}." +#: doc/guix.texi:11573 +msgid "registers the specified public keys for user accounts @code{rekado}, @code{chris}, and @code{root}." msgstr "" #. type: table -#: doc/guix.texi:11309 -msgid "" -"Additional authorized keys can be specified @i{via} @code{service-extension}." +#: doc/guix.texi:11576 +msgid "Additional authorized keys can be specified @i{via} @code{service-extension}." msgstr "" #. type: table -#: doc/guix.texi:11312 -msgid "" -"Note that this does @emph{not} interfere with the use of @file{~/.ssh/" -"authorized_keys}." +#: doc/guix.texi:11579 +msgid "Note that this does @emph{not} interfere with the use of @file{~/.ssh/authorized_keys}." msgstr "" #. type: deffn -#: doc/guix.texi:11315 +#: doc/guix.texi:11582 #, no-wrap msgid "{Scheme Procedure} dropbear-service [@var{config}]" msgstr "" #. type: deffn -#: doc/guix.texi:11319 -msgid "" -"Run the @uref{https://matt.ucc.asn.au/dropbear/dropbear.html,Dropbear SSH " -"daemon} with the given @var{config}, a @code{} " -"object." +#: doc/guix.texi:11586 +msgid "Run the @uref{https://matt.ucc.asn.au/dropbear/dropbear.html,Dropbear SSH daemon} with the given @var{config}, a @code{} object." msgstr "" #. type: deffn -#: doc/guix.texi:11322 -msgid "" -"For example, to specify a Dropbear service listening on port 1234, add this " -"call to the operating system's @code{services} field:" +#: doc/guix.texi:11589 +msgid "For example, to specify a Dropbear service listening on port 1234, add this call to the operating system's @code{services} field:" msgstr "" #. type: example -#: doc/guix.texi:11326 +#: doc/guix.texi:11593 #, no-wrap msgid "" "(dropbear-service (dropbear-configuration\n" @@ -25273,107 +20395,99 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:11329 +#: doc/guix.texi:11596 #, no-wrap msgid "{Data Type} dropbear-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:11331 +#: doc/guix.texi:11598 msgid "This data type represents the configuration of a Dropbear SSH daemon." msgstr "" #. type: item -#: doc/guix.texi:11333 +#: doc/guix.texi:11600 #, no-wrap msgid "@code{dropbear} (default: @var{dropbear})" msgstr "" #. type: table -#: doc/guix.texi:11335 +#: doc/guix.texi:11602 msgid "The Dropbear package to use." msgstr "" #. type: item -#: doc/guix.texi:11336 +#: doc/guix.texi:11603 #, no-wrap msgid "@code{port-number} (default: 22)" msgstr "" #. type: table -#: doc/guix.texi:11338 +#: doc/guix.texi:11605 msgid "The TCP port where the daemon waits for incoming connections." msgstr "" #. type: item -#: doc/guix.texi:11339 +#: doc/guix.texi:11606 #, no-wrap msgid "@code{syslog-output?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:11341 +#: doc/guix.texi:11608 msgid "Whether to enable syslog output." msgstr "" #. type: item -#: doc/guix.texi:11342 +#: doc/guix.texi:11609 #, no-wrap msgid "@code{pid-file} (default: @code{\"/var/run/dropbear.pid\"})" msgstr "" #. type: table -#: doc/guix.texi:11344 +#: doc/guix.texi:11611 msgid "File name of the daemon's PID file." msgstr "" #. type: item -#: doc/guix.texi:11345 +#: doc/guix.texi:11612 #, no-wrap msgid "@code{root-login?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:11347 +#: doc/guix.texi:11614 msgid "Whether to allow @code{root} logins." msgstr "" #. type: table -#: doc/guix.texi:11350 +#: doc/guix.texi:11617 msgid "Whether to allow empty passwords." msgstr "" #. type: table -#: doc/guix.texi:11353 +#: doc/guix.texi:11620 msgid "Whether to enable password-based authentication." msgstr "" #. type: defvr -#: doc/guix.texi:11356 +#: doc/guix.texi:11623 #, no-wrap msgid "{Scheme Variable} %facebook-host-aliases" msgstr "" #. type: defvr -#: doc/guix.texi:11362 -msgid "" -"This variable contains a string for use in @file{/etc/hosts} (@pxref{Host " -"Names,,, libc, The GNU C Library Reference Manual}). Each line contains a " -"entry that maps a known server name of the Facebook on-line service---e.g., " -"@code{www.facebook.com}---to the local host---@code{127.0.0.1} or its IPv6 " -"equivalent, @code{::1}." +#: doc/guix.texi:11629 +msgid "This variable contains a string for use in @file{/etc/hosts} (@pxref{Host Names,,, libc, The GNU C Library Reference Manual}). Each line contains a entry that maps a known server name of the Facebook on-line service---e.g., @code{www.facebook.com}---to the local host---@code{127.0.0.1} or its IPv6 equivalent, @code{::1}." msgstr "" #. type: defvr -#: doc/guix.texi:11366 -msgid "" -"This variable is typically used in the @code{hosts-file} field of an " -"@code{operating-system} declaration (@pxref{operating-system Reference, " -"@file{/etc/hosts}}):" +#: doc/guix.texi:11633 +msgid "This variable is typically used in the @code{hosts-file} field of an @code{operating-system} declaration (@pxref{operating-system Reference, @file{/etc/hosts}}):" msgstr "" #. type: example -#: doc/guix.texi:11369 +#: doc/guix.texi:11636 #, no-wrap msgid "" "(use-modules (gnu) (guix))\n" @@ -25381,7 +20495,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:11379 +#: doc/guix.texi:11646 #, no-wrap msgid "" "(operating-system\n" @@ -25396,688 +20510,632 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:11383 -msgid "" -"This mechanism can prevent programs running locally, such as Web browsers, " -"from accessing Facebook." +#: doc/guix.texi:11650 +msgid "This mechanism can prevent programs running locally, such as Web browsers, from accessing Facebook." msgstr "" #. type: Plain text -#: doc/guix.texi:11386 +#: doc/guix.texi:11653 msgid "The @code{(gnu services avahi)} provides the following definition." msgstr "" #. type: deffn -#: doc/guix.texi:11387 +#: doc/guix.texi:11654 #, no-wrap msgid "{Scheme Procedure} avahi-service [#:avahi @var{avahi}] @" msgstr "" #. type: deffn -#: doc/guix.texi:11399 -msgid "" -"[#:host-name #f] [#:publish? #t] [#:ipv4? #t] @ [#:ipv6? #t] [#:wide-area? " -"#f] @ [#:domains-to-browse '()] [#:debug? #f] Return a service that runs " -"@command{avahi-daemon}, a system-wide mDNS/DNS-SD responder that allows for " -"service discovery and \"zero-configuration\" host name lookups (see " -"@uref{http://avahi.org/}), and extends the name service cache daemon (nscd) " -"so that it can resolve @code{.local} host names using @uref{http://0pointer." -"de/lennart/projects/nss-mdns/, nss-mdns}. Additionally, add the @var{avahi} " -"package to the system profile so that commands such as @command{avahi-" -"browse} are directly usable." +#: doc/guix.texi:11666 +msgid "[#:host-name #f] [#:publish? #t] [#:ipv4? #t] @ [#:ipv6? #t] [#:wide-area? #f] @ [#:domains-to-browse '()] [#:debug? #f] Return a service that runs @command{avahi-daemon}, a system-wide mDNS/DNS-SD responder that allows for service discovery and \"zero-configuration\" host name lookups (see @uref{http://avahi.org/}), and extends the name service cache daemon (nscd) so that it can resolve @code{.local} host names using @uref{http://0pointer.de/lennart/projects/nss-mdns/, nss-mdns}. Additionally, add the @var{avahi} package to the system profile so that commands such as @command{avahi-browse} are directly usable." msgstr "" #. type: deffn -#: doc/guix.texi:11402 -msgid "" -"If @var{host-name} is different from @code{#f}, use that as the host name to " -"publish for this machine; otherwise, use the machine's actual host name." +#: doc/guix.texi:11669 +msgid "If @var{host-name} is different from @code{#f}, use that as the host name to publish for this machine; otherwise, use the machine's actual host name." msgstr "" #. type: deffn -#: doc/guix.texi:11406 -msgid "" -"When @var{publish?} is true, publishing of host names and services is " -"allowed; in particular, avahi-daemon will publish the machine's host name " -"and IP address via mDNS on the local network." +#: doc/guix.texi:11673 +msgid "When @var{publish?} is true, publishing of host names and services is allowed; in particular, avahi-daemon will publish the machine's host name and IP address via mDNS on the local network." msgstr "" #. type: deffn -#: doc/guix.texi:11408 +#: doc/guix.texi:11675 msgid "When @var{wide-area?} is true, DNS-SD over unicast DNS is enabled." msgstr "" #. type: deffn -#: doc/guix.texi:11411 -msgid "" -"Boolean values @var{ipv4?} and @var{ipv6?} determine whether to use IPv4/" -"IPv6 sockets." +#: doc/guix.texi:11678 +msgid "Boolean values @var{ipv4?} and @var{ipv6?} determine whether to use IPv4/IPv6 sockets." msgstr "" #. type: deffn -#: doc/guix.texi:11413 +#: doc/guix.texi:11680 #, no-wrap msgid "{Scheme Variable} openvswitch-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:11417 -msgid "" -"This is the type of the @uref{http://www.openvswitch.org, Open vSwitch} " -"service, whose value should be an @code{openvswitch-configuration} object." +#: doc/guix.texi:11684 +msgid "This is the type of the @uref{http://www.openvswitch.org, Open vSwitch} service, whose value should be an @code{openvswitch-configuration} object." msgstr "" #. type: deftp -#: doc/guix.texi:11419 +#: doc/guix.texi:11686 #, no-wrap msgid "{Data Type} openvswitch-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:11423 -msgid "" -"Data type representing the configuration of Open vSwitch, a multilayer " -"virtual switch which is designed to enable massive network automation " -"through programmatic extension." +#: doc/guix.texi:11690 +msgid "Data type representing the configuration of Open vSwitch, a multilayer virtual switch which is designed to enable massive network automation through programmatic extension." msgstr "" #. type: item -#: doc/guix.texi:11425 +#: doc/guix.texi:11692 #, no-wrap msgid "@code{package} (default: @var{openvswitch})" msgstr "" #. type: table -#: doc/guix.texi:11427 +#: doc/guix.texi:11694 msgid "Package object of the Open vSwitch." msgstr "" #. type: cindex -#: doc/guix.texi:11434 +#: doc/guix.texi:11701 #, no-wrap msgid "X11" msgstr "" #. type: cindex -#: doc/guix.texi:11435 +#: doc/guix.texi:11702 #, no-wrap msgid "X Window System" msgstr "" #. type: cindex -#: doc/guix.texi:11436 doc/guix.texi:11613 +#: doc/guix.texi:11703 doc/guix.texi:11880 #, no-wrap msgid "login manager" msgstr "" #. type: Plain text -#: doc/guix.texi:11441 -msgid "" -"Support for the X Window graphical display system---specifically Xorg---is " -"provided by the @code{(gnu services xorg)} module. Note that there is no " -"@code{xorg-service} procedure. Instead, the X server is started by the " -"@dfn{login manager}, by default SLiM." +#: doc/guix.texi:11708 +msgid "Support for the X Window graphical display system---specifically Xorg---is provided by the @code{(gnu services xorg)} module. Note that there is no @code{xorg-service} procedure. Instead, the X server is started by the @dfn{login manager}, by default SLiM." msgstr "" #. type: cindex -#: doc/guix.texi:11442 +#: doc/guix.texi:11709 #, no-wrap msgid "window manager" msgstr "" #. type: Plain text -#: doc/guix.texi:11447 -msgid "" -"To use X11, you must install at least one @dfn{window manager}---for example " -"the @code{windowmaker} or @code{openbox} packages---preferably by adding it " -"to the @code{packages} field of your operating system definition " -"(@pxref{operating-system Reference, system-wide packages})." +#: doc/guix.texi:11714 +msgid "To use X11, you must install at least one @dfn{window manager}---for example the @code{windowmaker} or @code{openbox} packages---preferably by adding it to the @code{packages} field of your operating system definition (@pxref{operating-system Reference, system-wide packages})." msgstr "" #. type: defvr -#: doc/guix.texi:11448 +#: doc/guix.texi:11715 #, no-wrap msgid "{Scheme Variable} slim-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:11450 +#: doc/guix.texi:11717 msgid "This is the type for the SLiM graphical login manager for X11." msgstr "" #. type: cindex -#: doc/guix.texi:11451 +#: doc/guix.texi:11718 #, no-wrap msgid "session types (X11)" msgstr "" #. type: cindex -#: doc/guix.texi:11452 +#: doc/guix.texi:11719 #, no-wrap msgid "X11 session types" msgstr "" #. type: defvr -#: doc/guix.texi:11459 -msgid "" -"SLiM looks for @dfn{session types} described by the @file{.desktop} files in " -"@file{/run/current-system/profile/share/xsessions} and allows users to " -"choose a session from the log-in screen using @kbd{F1}. Packages such as " -"@code{xfce}, @code{sawfish}, and @code{ratpoison} provide @file{.desktop} " -"files; adding them to the system-wide set of packages automatically makes " -"them available at the log-in screen." +#: doc/guix.texi:11726 +msgid "SLiM looks for @dfn{session types} described by the @file{.desktop} files in @file{/run/current-system/profile/share/xsessions} and allows users to choose a session from the log-in screen using @kbd{F1}. Packages such as @code{xfce}, @code{sawfish}, and @code{ratpoison} provide @file{.desktop} files; adding them to the system-wide set of packages automatically makes them available at the log-in screen." msgstr "" #. type: defvr -#: doc/guix.texi:11463 -msgid "" -"In addition, @file{~/.xsession} files are honored. When available, @file{~/." -"xsession} must be an executable that starts a window manager and/or other X " -"clients." +#: doc/guix.texi:11730 +msgid "In addition, @file{~/.xsession} files are honored. When available, @file{~/.xsession} must be an executable that starts a window manager and/or other X clients." msgstr "" #. type: deftp -#: doc/guix.texi:11465 +#: doc/guix.texi:11732 #, no-wrap msgid "{Data Type} slim-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:11467 +#: doc/guix.texi:11734 msgid "Data type representing the configuration of @code{slim-service-type}." msgstr "" #. type: table -#: doc/guix.texi:11471 +#: doc/guix.texi:11738 msgid "Whether to allow logins with empty passwords." msgstr "" #. type: item -#: doc/guix.texi:11472 +#: doc/guix.texi:11739 #, no-wrap msgid "@code{auto-login?} (default: @code{#f})" msgstr "" #. type: itemx -#: doc/guix.texi:11473 +#: doc/guix.texi:11740 #, no-wrap msgid "@code{default-user} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:11475 +#: doc/guix.texi:11742 msgid "When @code{auto-login?} is false, SLiM presents a log-in screen." msgstr "" #. type: table -#: doc/guix.texi:11478 -msgid "" -"When @code{auto-login?} is true, SLiM logs in directly as @code{default-" -"user}." +#: doc/guix.texi:11745 +msgid "When @code{auto-login?} is true, SLiM logs in directly as @code{default-user}." msgstr "" #. type: item -#: doc/guix.texi:11479 +#: doc/guix.texi:11746 #, no-wrap msgid "@code{theme} (default: @code{%default-slim-theme})" msgstr "" #. type: itemx -#: doc/guix.texi:11480 +#: doc/guix.texi:11747 #, no-wrap msgid "@code{theme-name} (default: @code{%default-slim-theme-name})" msgstr "" #. type: table -#: doc/guix.texi:11482 +#: doc/guix.texi:11749 msgid "The graphical theme to use and its name." msgstr "" #. type: item -#: doc/guix.texi:11483 +#: doc/guix.texi:11750 #, no-wrap msgid "@code{auto-login-session} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:11486 -msgid "" -"If true, this must be the name of the executable to start as the default " -"session---e.g., @code{(file-append windowmaker \"/bin/windowmaker\")}." +#: doc/guix.texi:11753 +msgid "If true, this must be the name of the executable to start as the default session---e.g., @code{(file-append windowmaker \"/bin/windowmaker\")}." msgstr "" #. type: table -#: doc/guix.texi:11490 -msgid "" -"If false, a session described by one of the available @file{.desktop} files " -"in @code{/run/current-system/profile} and @code{~/.guix-profile} will be " -"used." +#: doc/guix.texi:11757 +msgid "If false, a session described by one of the available @file{.desktop} files in @code{/run/current-system/profile} and @code{~/.guix-profile} will be used." msgstr "" #. type: quotation -#: doc/guix.texi:11495 -msgid "" -"You must install at least one window manager in the system profile or in " -"your user profile. Failing to do that, if @code{auto-login-session} is " -"false, you will be unable to log in." +#: doc/guix.texi:11762 +msgid "You must install at least one window manager in the system profile or in your user profile. Failing to do that, if @code{auto-login-session} is false, you will be unable to log in." msgstr "" #. type: item -#: doc/guix.texi:11497 +#: doc/guix.texi:11764 #, no-wrap msgid "@code{startx} (default: @code{(xorg-start-command)})" msgstr "" #. type: table -#: doc/guix.texi:11499 +#: doc/guix.texi:11766 msgid "The command used to start the X11 graphical server." msgstr "" #. type: item -#: doc/guix.texi:11500 +#: doc/guix.texi:11767 #, no-wrap msgid "@code{xauth} (default: @code{xauth})" msgstr "" #. type: table -#: doc/guix.texi:11502 +#: doc/guix.texi:11769 msgid "The XAuth package to use." msgstr "" #. type: item -#: doc/guix.texi:11503 +#: doc/guix.texi:11770 #, no-wrap msgid "@code{shepherd} (default: @code{shepherd})" msgstr "" #. type: table -#: doc/guix.texi:11506 -msgid "" -"The Shepherd package used when invoking @command{halt} and @command{reboot}." +#: doc/guix.texi:11773 +msgid "The Shepherd package used when invoking @command{halt} and @command{reboot}." msgstr "" #. type: item -#: doc/guix.texi:11507 +#: doc/guix.texi:11774 #, no-wrap msgid "@code{sessreg} (default: @code{sessreg})" msgstr "" #. type: table -#: doc/guix.texi:11509 +#: doc/guix.texi:11776 msgid "The sessreg package used in order to register the session." msgstr "" #. type: item -#: doc/guix.texi:11510 +#: doc/guix.texi:11777 #, no-wrap msgid "@code{slim} (default: @code{slim})" msgstr "" #. type: table -#: doc/guix.texi:11512 +#: doc/guix.texi:11779 msgid "The SLiM package to use." msgstr "" #. type: defvr -#: doc/guix.texi:11515 doc/guix.texi:20288 +#: doc/guix.texi:11782 doc/guix.texi:20772 #, no-wrap msgid "{Scheme Variable} %default-theme" msgstr "" #. type: defvrx -#: doc/guix.texi:11516 +#: doc/guix.texi:11783 #, no-wrap msgid "{Scheme Variable} %default-theme-name" msgstr "" #. type: defvr -#: doc/guix.texi:11518 +#: doc/guix.texi:11785 msgid "The default SLiM theme and its name." msgstr "" #. type: deftp -#: doc/guix.texi:11521 +#: doc/guix.texi:11788 #, no-wrap msgid "{Data Type} sddm-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:11523 +#: doc/guix.texi:11790 msgid "This is the data type representing the sddm service configuration." msgstr "" #. type: item -#: doc/guix.texi:11525 +#: doc/guix.texi:11792 #, no-wrap msgid "@code{display-server} (default: \"x11\")" msgstr "" #. type: table -#: doc/guix.texi:11528 -msgid "" -"Select display server to use for the greeter. Valid values are \"x11\" or " -"\"wayland\"." +#: doc/guix.texi:11795 +msgid "Select display server to use for the greeter. Valid values are \"x11\" or \"wayland\"." msgstr "" #. type: item -#: doc/guix.texi:11529 +#: doc/guix.texi:11796 #, no-wrap msgid "@code{numlock} (default: \"on\")" msgstr "" #. type: table -#: doc/guix.texi:11531 +#: doc/guix.texi:11798 msgid "Valid values are \"on\", \"off\" or \"none\"." msgstr "" #. type: item -#: doc/guix.texi:11532 +#: doc/guix.texi:11799 #, no-wrap msgid "@code{halt-command} (default @code{#~(string-apppend #$shepherd \"/sbin/halt\")})" msgstr "" #. type: table -#: doc/guix.texi:11534 +#: doc/guix.texi:11801 msgid "Command to run when halting." msgstr "" #. type: item -#: doc/guix.texi:11535 +#: doc/guix.texi:11802 #, no-wrap msgid "@code{reboot-command} (default @code{#~(string-append #$shepherd \"/sbin/reboot\")})" msgstr "" #. type: table -#: doc/guix.texi:11537 +#: doc/guix.texi:11804 msgid "Command to run when rebooting." msgstr "" #. type: item -#: doc/guix.texi:11538 +#: doc/guix.texi:11805 #, no-wrap msgid "@code{theme} (default \"maldives\")" msgstr "" #. type: table -#: doc/guix.texi:11540 -msgid "" -"Theme to use. Default themes provided by SDDM are \"elarun\" or \"maldives\"." +#: doc/guix.texi:11807 +msgid "Theme to use. Default themes provided by SDDM are \"elarun\" or \"maldives\"." msgstr "" #. type: item -#: doc/guix.texi:11541 +#: doc/guix.texi:11808 #, no-wrap msgid "@code{themes-directory} (default \"/run/current-system/profile/share/sddm/themes\")" msgstr "" #. type: table -#: doc/guix.texi:11543 +#: doc/guix.texi:11810 msgid "Directory to look for themes." msgstr "" #. type: item -#: doc/guix.texi:11544 +#: doc/guix.texi:11811 #, no-wrap msgid "@code{faces-directory} (default \"/run/current-system/profile/share/sddm/faces\")" msgstr "" #. type: table -#: doc/guix.texi:11546 +#: doc/guix.texi:11813 msgid "Directory to look for faces." msgstr "" #. type: item -#: doc/guix.texi:11547 +#: doc/guix.texi:11814 #, no-wrap msgid "@code{default-path} (default \"/run/current-system/profile/bin\")" msgstr "" #. type: table -#: doc/guix.texi:11549 +#: doc/guix.texi:11816 msgid "Default PATH to use." msgstr "" #. type: item -#: doc/guix.texi:11550 +#: doc/guix.texi:11817 #, no-wrap msgid "@code{minimum-uid} (default 1000)" msgstr "" #. type: table -#: doc/guix.texi:11552 +#: doc/guix.texi:11819 msgid "Minimum UID to display in SDDM." msgstr "" #. type: item -#: doc/guix.texi:11553 +#: doc/guix.texi:11820 #, no-wrap msgid "@code{maximum-uid} (default 2000)" msgstr "" #. type: table -#: doc/guix.texi:11555 +#: doc/guix.texi:11822 msgid "Maximum UID to display in SDDM" msgstr "" #. type: item -#: doc/guix.texi:11556 +#: doc/guix.texi:11823 #, no-wrap msgid "@code{remember-last-user?} (default #t)" msgstr "" #. type: table -#: doc/guix.texi:11558 +#: doc/guix.texi:11825 msgid "Remember last user." msgstr "" #. type: item -#: doc/guix.texi:11559 +#: doc/guix.texi:11826 #, no-wrap msgid "@code{remember-last-session?} (default #t)" msgstr "" #. type: table -#: doc/guix.texi:11561 +#: doc/guix.texi:11828 msgid "Remember last session." msgstr "" #. type: item -#: doc/guix.texi:11562 +#: doc/guix.texi:11829 #, no-wrap msgid "@code{hide-users} (default \"\")" msgstr "" #. type: table -#: doc/guix.texi:11564 +#: doc/guix.texi:11831 msgid "Usernames to hide from SDDM greeter." msgstr "" #. type: item -#: doc/guix.texi:11565 +#: doc/guix.texi:11832 #, no-wrap msgid "@code{hide-shells} (default @code{#~(string-append #$shadow \"/sbin/nologin\")})" msgstr "" #. type: table -#: doc/guix.texi:11567 +#: doc/guix.texi:11834 msgid "Users with shells listed will be hidden from the SDDM greeter." msgstr "" #. type: item -#: doc/guix.texi:11568 +#: doc/guix.texi:11835 #, no-wrap msgid "@code{session-command} (default @code{#~(string-append #$sddm \"/share/sddm/scripts/wayland-session\")})" msgstr "" #. type: table -#: doc/guix.texi:11570 +#: doc/guix.texi:11837 msgid "Script to run before starting a wayland session." msgstr "" #. type: item -#: doc/guix.texi:11571 +#: doc/guix.texi:11838 #, no-wrap msgid "@code{sessions-directory} (default \"/run/current-system/profile/share/wayland-sessions\")" msgstr "" #. type: table -#: doc/guix.texi:11573 +#: doc/guix.texi:11840 msgid "Directory to look for desktop files starting wayland sessions." msgstr "" #. type: item -#: doc/guix.texi:11574 +#: doc/guix.texi:11841 #, no-wrap msgid "@code{xorg-server-path} (default @code{xorg-start-command})" msgstr "" #. type: table -#: doc/guix.texi:11576 +#: doc/guix.texi:11843 msgid "Path to xorg-server." msgstr "" #. type: item -#: doc/guix.texi:11577 +#: doc/guix.texi:11844 #, no-wrap msgid "@code{xauth-path} (default @code{#~(string-append #$xauth \"/bin/xauth\")})" msgstr "" #. type: table -#: doc/guix.texi:11579 +#: doc/guix.texi:11846 msgid "Path to xauth." msgstr "" #. type: item -#: doc/guix.texi:11580 +#: doc/guix.texi:11847 #, no-wrap msgid "@code{xephyr-path} (default @code{#~(string-append #$xorg-server \"/bin/Xephyr\")})" msgstr "" #. type: table -#: doc/guix.texi:11582 +#: doc/guix.texi:11849 msgid "Path to Xephyr." msgstr "" #. type: item -#: doc/guix.texi:11583 +#: doc/guix.texi:11850 #, no-wrap msgid "@code{xdisplay-start} (default @code{#~(string-append #$sddm \"/share/sddm/scripts/Xsetup\")})" msgstr "" #. type: table -#: doc/guix.texi:11585 +#: doc/guix.texi:11852 msgid "Script to run after starting xorg-server." msgstr "" #. type: item -#: doc/guix.texi:11586 +#: doc/guix.texi:11853 #, no-wrap msgid "@code{xdisplay-stop} (default @code{#~(string-append #$sddm \"/share/sddm/scripts/Xstop\")})" msgstr "" #. type: table -#: doc/guix.texi:11588 +#: doc/guix.texi:11855 msgid "Script to run before stopping xorg-server." msgstr "" #. type: item -#: doc/guix.texi:11589 +#: doc/guix.texi:11856 #, no-wrap -msgid "@code{xsession-command} (default: @code{xinitr })" -msgstr "" +msgid "@code{xsession-command} (default: @code{xinitrc})" +msgstr "@code{xsession-command} (par défaut : @code{xinitrc})" #. type: table -#: doc/guix.texi:11591 +#: doc/guix.texi:11858 msgid "Script to run before starting a X session." msgstr "" #. type: item -#: doc/guix.texi:11592 +#: doc/guix.texi:11859 #, no-wrap msgid "@code{xsessions-directory} (default: \"/run/current-system/profile/share/xsessions\")" msgstr "" #. type: table -#: doc/guix.texi:11594 +#: doc/guix.texi:11861 msgid "Directory to look for desktop files starting X sessions." msgstr "" #. type: item -#: doc/guix.texi:11595 +#: doc/guix.texi:11862 #, no-wrap msgid "@code{minimum-vt} (default: 7)" msgstr "" #. type: table -#: doc/guix.texi:11597 +#: doc/guix.texi:11864 msgid "Minimum VT to use." msgstr "" #. type: item -#: doc/guix.texi:11598 +#: doc/guix.texi:11865 #, no-wrap msgid "@code{xserver-arguments} (default \"-nolisten tcp\")" msgstr "" #. type: table -#: doc/guix.texi:11600 +#: doc/guix.texi:11867 msgid "Arguments to pass to xorg-server." msgstr "" #. type: item -#: doc/guix.texi:11601 +#: doc/guix.texi:11868 #, no-wrap msgid "@code{auto-login-user} (default \"\")" msgstr "" #. type: table -#: doc/guix.texi:11603 +#: doc/guix.texi:11870 msgid "User to use for auto-login." msgstr "" #. type: item -#: doc/guix.texi:11604 +#: doc/guix.texi:11871 #, no-wrap msgid "@code{auto-login-session} (default \"\")" msgstr "" #. type: table -#: doc/guix.texi:11606 +#: doc/guix.texi:11873 msgid "Desktop file to use for auto-login." msgstr "" #. type: item -#: doc/guix.texi:11607 +#: doc/guix.texi:11874 #, no-wrap msgid "@code{relogin?} (default #f)" msgstr "" #. type: table -#: doc/guix.texi:11609 +#: doc/guix.texi:11876 msgid "Relogin after logout." msgstr "" #. type: cindex -#: doc/guix.texi:11614 +#: doc/guix.texi:11881 #, no-wrap msgid "X11 login" msgstr "" #. type: deffn -#: doc/guix.texi:11615 +#: doc/guix.texi:11882 #, no-wrap msgid "{Scheme Procedure} sddm-service config" msgstr "" #. type: deffn -#: doc/guix.texi:11618 -msgid "" -"Return a service that spawns the SDDM graphical login manager for config of " -"type @code{}." +#: doc/guix.texi:11885 +msgid "Return a service that spawns the SDDM graphical login manager for config of type @code{}." msgstr "" #. type: example -#: doc/guix.texi:11623 +#: doc/guix.texi:11890 #, no-wrap msgid "" " (sddm-service (sddm-configuration\n" @@ -26086,155 +21144,157 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:11626 +#: doc/guix.texi:11893 #, no-wrap msgid "{Scheme Procedure} xorg-start-command [#:guile] @" msgstr "" #. type: deffn -#: doc/guix.texi:11635 -msgid "" -"[#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ [#:" -"configuration-file (xorg-configuration-file @dots{})] @ [#:xorg-server " -"@var{xorg-server}] Return a @code{startx} script in which @var{modules}, a " -"list of X module packages, and @var{fonts}, a list of X font directories, " -"are available. See @code{xorg-wrapper} for more details on the arguments. " -"The result should be used in place of @code{startx}." +#: doc/guix.texi:11902 +msgid "[#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ [#:configuration-file (xorg-configuration-file @dots{})] @ [#:xorg-server @var{xorg-server}] Return a @code{startx} script in which @var{modules}, a list of X module packages, and @var{fonts}, a list of X font directories, are available. See @code{xorg-wrapper} for more details on the arguments. The result should be used in place of @code{startx}." msgstr "" #. type: deffn -#: doc/guix.texi:11637 +#: doc/guix.texi:11904 msgid "Usually the X server is started by a login manager." msgstr "" #. type: deffn -#: doc/guix.texi:11639 +#: doc/guix.texi:11906 #, no-wrap msgid "{Scheme Procedure} xorg-configuration-file @" msgstr "" #. type: deffn -#: doc/guix.texi:11645 -msgid "" -"[#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ [#:" -"drivers '()] [#:resolutions '()] [#:extra-config '()] Return a configuration " -"file for the Xorg server containing search paths for all the common drivers." +#: doc/guix.texi:11912 +msgid "[#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ [#:drivers '()] [#:resolutions '()] [#:extra-config '()] Return a configuration file for the Xorg server containing search paths for all the common drivers." msgstr "" #. type: deffn -#: doc/guix.texi:11650 -msgid "" -"@var{modules} must be a list of @dfn{module packages} loaded by the Xorg " -"server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so " -"on. @var{fonts} must be a list of font directories to add to the server's " -"@dfn{font path}." +#: doc/guix.texi:11917 +msgid "@var{modules} must be a list of @dfn{module packages} loaded by the Xorg server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so on. @var{fonts} must be a list of font directories to add to the server's @dfn{font path}." msgstr "" #. type: deffn -#: doc/guix.texi:11654 -msgid "" -"@var{drivers} must be either the empty list, in which case Xorg chooses a " -"graphics driver automatically, or a list of driver names that will be tried " -"in this order---e.g., @code{(\"modesetting\" \"vesa\")}." +#: doc/guix.texi:11921 +msgid "@var{drivers} must be either the empty list, in which case Xorg chooses a graphics driver automatically, or a list of driver names that will be tried in this order---e.g., @code{(\"modesetting\" \"vesa\")}." msgstr "" #. type: deffn -#: doc/guix.texi:11658 -msgid "" -"Likewise, when @var{resolutions} is the empty list, Xorg chooses an " -"appropriate screen resolution; otherwise, it must be a list of resolutions---" -"e.g., @code{((1024 768) (640 480))}." +#: doc/guix.texi:11925 +msgid "Likewise, when @var{resolutions} is the empty list, Xorg chooses an appropriate screen resolution; otherwise, it must be a list of resolutions---e.g., @code{((1024 768) (640 480))}." msgstr "" #. type: deffn -#: doc/guix.texi:11662 -msgid "" -"Last, @var{extra-config} is a list of strings or objects appended to the " -"configuration file. It is used to pass extra text to be added verbatim to " -"the configuration file." +#: doc/guix.texi:11929 +msgid "Last, @var{extra-config} is a list of strings or objects appended to the configuration file. It is used to pass extra text to be added verbatim to the configuration file." msgstr "" #. type: deffn -#: doc/guix.texi:11664 +#: doc/guix.texi:11935 +msgid "This procedure is especially useful to configure a different keyboard layout than the default US keymap. For instance, to use the ``bépo'' keymap by default on the display manager:" +msgstr "" + +#. type: example +#: doc/guix.texi:11945 +#, no-wrap +msgid "" +"(define bepo-evdev\n" +" \"Section \\\"InputClass\\\"\n" +" Identifier \\\"evdev keyboard catchall\\\"\n" +" Driver \\\"evdev\\\"\n" +" MatchIsKeyboard \\\"on\\\"\n" +" Option \\\"xkb_layout\\\" \\\"fr\\\"\n" +" Option \\\"xkb_variant\\\" \\\"bepo\\\"\n" +"EndSection\")\n" +"\n" +msgstr "" + +#. type: example +#: doc/guix.texi:11958 +#, no-wrap +msgid "" +"(operating-system\n" +" ...\n" +" (services\n" +" (modify-services %desktop-services\n" +" (slim-service-type config =>\n" +" (slim-configuration\n" +" (inherit config)\n" +" (startx (xorg-start-command\n" +" #:configuration-file\n" +" (xorg-configuration-file\n" +" #:extra-config\n" +" (list bepo-evdev)))))))))\n" +msgstr "" + +#. type: deffn +#: doc/guix.texi:11967 +msgid "The @code{MatchIsKeyboard} line specifies that we only apply the configuration to keyboards. Without this line, other devices such as touchpad may not work correctly because they will be attached to the wrong driver. In this example, the user typically used @code{setxkbmap fr bepo} to set their favorite keymap once logged in. The first argument corresponds to the layout, while the second argument corresponds to the variant. The @code{xkb_variant} line can be omitted to select the default variant." +msgstr "" + +#. type: deffn +#: doc/guix.texi:11969 #, no-wrap msgid "{Scheme Procedure} screen-locker-service @var{package} [@var{program}]" msgstr "" #. type: deffn -#: doc/guix.texi:11668 -msgid "" -"Add @var{package}, a package for a screen locker or screen saver whose " -"command is @var{program}, to the set of setuid programs and add a PAM entry " -"for it. For example:" +#: doc/guix.texi:11973 +msgid "Add @var{package}, a package for a screen locker or screen saver whose command is @var{program}, to the set of setuid programs and add a PAM entry for it. For example:" msgstr "" #. type: lisp -#: doc/guix.texi:11671 +#: doc/guix.texi:11976 #, no-wrap msgid "(screen-locker-service xlockmore \"xlock\")\n" msgstr "" #. type: deffn -#: doc/guix.texi:11674 +#: doc/guix.texi:11979 msgid "makes the good ol' XlockMore usable." msgstr "" #. type: cindex -#: doc/guix.texi:11680 +#: doc/guix.texi:11985 #, no-wrap msgid "printer support with CUPS" msgstr "" #. type: Plain text -#: doc/guix.texi:11684 -msgid "" -"The @code{(gnu services cups)} module provides a Guix service definition for " -"the CUPS printing service. To add printer support to a GuixSD system, add a " -"@code{cups-service} to the operating system definition:" +#: doc/guix.texi:11989 +msgid "The @code{(gnu services cups)} module provides a Guix service definition for the CUPS printing service. To add printer support to a GuixSD system, add a @code{cups-service} to the operating system definition:" msgstr "" #. type: deffn -#: doc/guix.texi:11685 +#: doc/guix.texi:11990 #, no-wrap msgid "{Scheme Variable} cups-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:11689 -msgid "" -"The service type for the CUPS print server. Its value should be a valid " -"CUPS configuration (see below). To use the default settings, simply write:" +#: doc/guix.texi:11994 +msgid "The service type for the CUPS print server. Its value should be a valid CUPS configuration (see below). To use the default settings, simply write:" msgstr "" #. type: example -#: doc/guix.texi:11691 +#: doc/guix.texi:11996 #, no-wrap msgid "(service cups-service-type)\n" msgstr "" #. type: Plain text -#: doc/guix.texi:11701 -msgid "" -"The CUPS configuration controls the basic things about your CUPS " -"installation: what interfaces it listens on, what to do if a print job " -"fails, how much logging to do, and so on. To actually add a printer, you " -"have to visit the @url{http://localhost:631} URL, or use a tool such as " -"GNOME's printer configuration services. By default, configuring a CUPS " -"service will generate a self-signed certificate if needed, for secure " -"connections to the print server." +#: doc/guix.texi:12006 +msgid "The CUPS configuration controls the basic things about your CUPS installation: what interfaces it listens on, what to do if a print job fails, how much logging to do, and so on. To actually add a printer, you have to visit the @url{http://localhost:631} URL, or use a tool such as GNOME's printer configuration services. By default, configuring a CUPS service will generate a self-signed certificate if needed, for secure connections to the print server." msgstr "" #. type: Plain text -#: doc/guix.texi:11706 -msgid "" -"Suppose you want to enable the Web interface of CUPS and also add support " -"for Epson printers @i{via} the @code{escpr} package and for HP printers " -"@i{via} the @code{hplip} package. You can do that directly, like this (you " -"need to use the @code{(gnu packages cups)} module):" +#: doc/guix.texi:12011 +msgid "Suppose you want to enable the Web interface of CUPS and also add support for Epson printers @i{via} the @code{escpr} package and for HP printers @i{via} the @code{hplip} package. You can do that directly, like this (you need to use the @code{(gnu packages cups)} module):" msgstr "" #. type: example -#: doc/guix.texi:11713 +#: doc/guix.texi:12018 #, no-wrap msgid "" "(service cups-service-type\n" @@ -26245,1758 +21305,1527 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:11721 -msgid "" -"The available configuration parameters follow. Each parameter definition is " -"preceded by its type; for example, @samp{string-list foo} indicates that the " -"@code{foo} parameter should be specified as a list of strings. There is " -"also a way to specify the configuration as a string, if you have an old " -"@code{cupsd.conf} file that you want to port over from some other system; " -"see the end for more details." +#: doc/guix.texi:12026 +msgid "The available configuration parameters follow. Each parameter definition is preceded by its type; for example, @samp{string-list foo} indicates that the @code{foo} parameter should be specified as a list of strings. There is also a way to specify the configuration as a string, if you have an old @code{cupsd.conf} file that you want to port over from some other system; see the end for more details." msgstr "" #. type: Plain text -#: doc/guix.texi:11732 +#: doc/guix.texi:12037 msgid "Available @code{cups-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:11733 +#: doc/guix.texi:12038 #, no-wrap msgid "{@code{cups-configuration} parameter} package cups" msgstr "" #. type: deftypevr -#: doc/guix.texi:11735 doc/guix.texi:12492 +#: doc/guix.texi:12040 doc/guix.texi:12797 msgid "The CUPS package." msgstr "" #. type: deftypevr -#: doc/guix.texi:11737 +#: doc/guix.texi:12042 #, no-wrap msgid "{@code{cups-configuration} parameter} package-list extensions" msgstr "" #. type: deftypevr -#: doc/guix.texi:11739 +#: doc/guix.texi:12044 msgid "Drivers and other extensions to the CUPS package." msgstr "" #. type: deftypevr -#: doc/guix.texi:11741 +#: doc/guix.texi:12046 #, no-wrap msgid "{@code{cups-configuration} parameter} files-configuration files-configuration" msgstr "" #. type: deftypevr -#: doc/guix.texi:11744 -msgid "" -"Configuration of where to write logs, what directories to use for print " -"spools, and related privileged configuration parameters." +#: doc/guix.texi:12049 +msgid "Configuration of where to write logs, what directories to use for print spools, and related privileged configuration parameters." msgstr "" #. type: deftypevr -#: doc/guix.texi:11746 +#: doc/guix.texi:12051 msgid "Available @code{files-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:11747 +#: doc/guix.texi:12052 #, no-wrap msgid "{@code{files-configuration} parameter} log-location access-log" msgstr "" #. type: deftypevr -#: doc/guix.texi:11755 -msgid "" -"Defines the access log filename. Specifying a blank filename disables " -"access log generation. The value @code{stderr} causes log entries to be " -"sent to the standard error file when the scheduler is running in the " -"foreground, or to the system log daemon when run in the background. The " -"value @code{syslog} causes log entries to be sent to the system log daemon. " -"The server name may be included in filenames using the string @code{%s}, as " -"in @code{/var/log/cups/%s-access_log}." +#: doc/guix.texi:12060 +msgid "Defines the access log filename. Specifying a blank filename disables access log generation. The value @code{stderr} causes log entries to be sent to the standard error file when the scheduler is running in the foreground, or to the system log daemon when run in the background. The value @code{syslog} causes log entries to be sent to the system log daemon. The server name may be included in filenames using the string @code{%s}, as in @code{/var/log/cups/%s-access_log}." msgstr "" #. type: deftypevr -#: doc/guix.texi:11757 +#: doc/guix.texi:12062 msgid "Defaults to @samp{\"/var/log/cups/access_log\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:11759 +#: doc/guix.texi:12064 #, no-wrap msgid "{@code{files-configuration} parameter} file-name cache-dir" msgstr "" #. type: deftypevr -#: doc/guix.texi:11761 +#: doc/guix.texi:12066 msgid "Where CUPS should cache data." msgstr "" #. type: deftypevr -#: doc/guix.texi:11763 +#: doc/guix.texi:12068 msgid "Defaults to @samp{\"/var/cache/cups\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:11765 +#: doc/guix.texi:12070 #, no-wrap msgid "{@code{files-configuration} parameter} string config-file-perm" msgstr "" #. type: deftypevr -#: doc/guix.texi:11768 -msgid "" -"Specifies the permissions for all configuration files that the scheduler " -"writes." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11774 -msgid "" -"Note that the permissions for the printers.conf file are currently masked to " -"only allow access from the scheduler user (typically root). This is done " -"because printer device URIs sometimes contain sensitive authentication " -"information that should not be generally known on the system. There is no " -"way to disable this security feature." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11776 -msgid "Defaults to @samp{\"0640\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11778 -#, no-wrap -msgid "{@code{files-configuration} parameter} log-location error-log" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11786 -msgid "" -"Defines the error log filename. Specifying a blank filename disables access " -"log generation. The value @code{stderr} causes log entries to be sent to " -"the standard error file when the scheduler is running in the foreground, or " -"to the system log daemon when run in the background. The value " -"@code{syslog} causes log entries to be sent to the system log daemon. The " -"server name may be included in filenames using the string @code{%s}, as in " -"@code{/var/log/cups/%s-error_log}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11788 -msgid "Defaults to @samp{\"/var/log/cups/error_log\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11790 -#, no-wrap -msgid "{@code{files-configuration} parameter} string fatal-errors" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11793 -msgid "" -"Specifies which errors are fatal, causing the scheduler to exit. The kind " -"strings are:" -msgstr "" - -#. type: table -#: doc/guix.texi:11797 -msgid "No errors are fatal." -msgstr "" - -#. type: table -#: doc/guix.texi:11800 -msgid "All of the errors below are fatal." -msgstr "" - -#. type: item -#: doc/guix.texi:11801 -#, no-wrap -msgid "browse" -msgstr "" - -#. type: table -#: doc/guix.texi:11804 -msgid "" -"Browsing initialization errors are fatal, for example failed connections to " -"the DNS-SD daemon." -msgstr "" - -#. type: item -#: doc/guix.texi:11805 -#, no-wrap -msgid "config" -msgstr "" - -#. type: table -#: doc/guix.texi:11807 -msgid "Configuration file syntax errors are fatal." -msgstr "" - -#. type: item -#: doc/guix.texi:11808 -#, no-wrap -msgid "listen" -msgstr "" - -#. type: table -#: doc/guix.texi:11811 -msgid "" -"Listen or Port errors are fatal, except for IPv6 failures on the loopback or " -"@code{any} addresses." -msgstr "" - -#. type: item -#: doc/guix.texi:11812 -#, no-wrap -msgid "log" -msgstr "" - -#. type: table -#: doc/guix.texi:11814 -msgid "Log file creation or write errors are fatal." -msgstr "" - -#. type: item -#: doc/guix.texi:11815 -#, no-wrap -msgid "permissions" -msgstr "" - -#. type: table -#: doc/guix.texi:11818 -msgid "" -"Bad startup file permissions are fatal, for example shared TLS certificate " -"and key files with world-read permissions." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11821 -msgid "Defaults to @samp{\"all -browse\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11823 -#, no-wrap -msgid "{@code{files-configuration} parameter} boolean file-device?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11826 -msgid "" -"Specifies whether the file pseudo-device can be used for new printer " -"queues. The URI @uref{file:///dev/null} is always allowed." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11828 doc/guix.texi:11898 doc/guix.texi:11934 -#: doc/guix.texi:11946 doc/guix.texi:11952 doc/guix.texi:11968 -#: doc/guix.texi:12056 doc/guix.texi:12150 doc/guix.texi:12466 -#: doc/guix.texi:12479 doc/guix.texi:16606 doc/guix.texi:16620 -#: doc/guix.texi:16742 doc/guix.texi:16763 doc/guix.texi:16784 -#: doc/guix.texi:16791 doc/guix.texi:16836 doc/guix.texi:16843 -#: doc/guix.texi:17246 doc/guix.texi:17260 doc/guix.texi:17432 -#: doc/guix.texi:17477 doc/guix.texi:17564 doc/guix.texi:17693 -#: doc/guix.texi:17726 doc/guix.texi:17866 doc/guix.texi:17877 -#: doc/guix.texi:18127 doc/guix.texi:18769 doc/guix.texi:18778 -#: doc/guix.texi:18786 doc/guix.texi:18794 doc/guix.texi:18810 -#: doc/guix.texi:18826 doc/guix.texi:18834 doc/guix.texi:18842 -#: doc/guix.texi:18851 doc/guix.texi:18860 doc/guix.texi:18876 -#: doc/guix.texi:18940 doc/guix.texi:19046 doc/guix.texi:19054 -#: doc/guix.texi:19062 doc/guix.texi:19087 doc/guix.texi:19141 -#: doc/guix.texi:19189 doc/guix.texi:19342 doc/guix.texi:19350 -#: doc/guix.texi:19358 doc/guix.texi:19366 doc/guix.texi:19374 -#: doc/guix.texi:19382 doc/guix.texi:19390 doc/guix.texi:19397 -msgid "Defaults to @samp{#f}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11830 -#, no-wrap -msgid "{@code{files-configuration} parameter} string group" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11833 -msgid "" -"Specifies the group name or ID that will be used when executing external " -"programs." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11835 doc/guix.texi:11915 -msgid "Defaults to @samp{\"lp\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11837 -#, no-wrap -msgid "{@code{files-configuration} parameter} string log-file-perm" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11839 -msgid "Specifies the permissions for all log files that the scheduler writes." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11841 -msgid "Defaults to @samp{\"0644\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11843 -#, no-wrap -msgid "{@code{files-configuration} parameter} log-location page-log" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11851 -msgid "" -"Defines the page log filename. Specifying a blank filename disables access " -"log generation. The value @code{stderr} causes log entries to be sent to " -"the standard error file when the scheduler is running in the foreground, or " -"to the system log daemon when run in the background. The value " -"@code{syslog} causes log entries to be sent to the system log daemon. The " -"server name may be included in filenames using the string @code{%s}, as in " -"@code{/var/log/cups/%s-page_log}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11853 -msgid "Defaults to @samp{\"/var/log/cups/page_log\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11855 -#, no-wrap -msgid "{@code{files-configuration} parameter} string remote-root" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11858 -msgid "" -"Specifies the username that is associated with unauthenticated accesses by " -"clients claiming to be the root user. The default is @code{remroot}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11860 -msgid "Defaults to @samp{\"remroot\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11862 -#, no-wrap -msgid "{@code{files-configuration} parameter} file-name request-root" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11865 -msgid "" -"Specifies the directory that contains print jobs and other HTTP request data." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11867 -msgid "Defaults to @samp{\"/var/spool/cups\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11869 -#, no-wrap -msgid "{@code{files-configuration} parameter} sandboxing sandboxing" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11874 -msgid "" -"Specifies the level of security sandboxing that is applied to print filters, " -"backends, and other child processes of the scheduler; either @code{relaxed} " -"or @code{strict}. This directive is currently only used/supported on macOS." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11876 -msgid "Defaults to @samp{strict}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11878 -#, no-wrap -msgid "{@code{files-configuration} parameter} file-name server-keychain" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11883 -msgid "" -"Specifies the location of TLS certificates and private keys. CUPS will look " -"for public and private keys in this directory: a @code{.crt} files for PEM-" -"encoded certificates and corresponding @code{.key} files for PEM-encoded " -"private keys." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11885 -msgid "Defaults to @samp{\"/etc/cups/ssl\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11887 -#, no-wrap -msgid "{@code{files-configuration} parameter} file-name server-root" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11889 -msgid "Specifies the directory containing the server configuration files." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11891 -msgid "Defaults to @samp{\"/etc/cups\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11893 -#, no-wrap -msgid "{@code{files-configuration} parameter} boolean sync-on-close?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11896 -msgid "" -"Specifies whether the scheduler calls fsync(2) after writing configuration " -"or state files." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11900 -#, no-wrap -msgid "{@code{files-configuration} parameter} space-separated-string-list system-group" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11902 -msgid "Specifies the group(s) to use for @code{@@SYSTEM} group authentication." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11904 -#, no-wrap -msgid "{@code{files-configuration} parameter} file-name temp-dir" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11906 -msgid "Specifies the directory where temporary files are stored." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11908 -msgid "Defaults to @samp{\"/var/spool/cups/tmp\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11910 -#, no-wrap -msgid "{@code{files-configuration} parameter} string user" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11913 -msgid "" -"Specifies the user name or ID that is used when running external programs." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11918 -#, no-wrap -msgid "{@code{cups-configuration} parameter} access-log-level access-log-level" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11925 -msgid "" -"Specifies the logging level for the AccessLog file. The @code{config} level " -"logs when printers and classes are added, deleted, or modified and when " -"configuration files are accessed or updated. The @code{actions} level logs " -"when print jobs are submitted, held, released, modified, or canceled, and " -"any of the conditions for @code{config}. The @code{all} level logs all " -"requests." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11927 -msgid "Defaults to @samp{actions}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11929 -#, no-wrap -msgid "{@code{cups-configuration} parameter} boolean auto-purge-jobs?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11932 -msgid "" -"Specifies whether to purge job history data automatically when it is no " -"longer required for quotas." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11936 -#, no-wrap -msgid "{@code{cups-configuration} parameter} browse-local-protocols browse-local-protocols" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11938 -msgid "Specifies which protocols to use for local printer sharing." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11940 -msgid "Defaults to @samp{dnssd}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11942 -#, no-wrap -msgid "{@code{cups-configuration} parameter} boolean browse-web-if?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11944 -msgid "Specifies whether the CUPS web interface is advertised." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11948 -#, no-wrap -msgid "{@code{cups-configuration} parameter} boolean browsing?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11950 -msgid "Specifies whether shared printers are advertised." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11954 -#, no-wrap -msgid "{@code{cups-configuration} parameter} string classification" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11959 -msgid "" -"Specifies the security classification of the server. Any valid banner name " -"can be used, including \"classified\", \"confidential\", \"secret\", " -"\"topsecret\", and \"unclassified\", or the banner can be omitted to disable " -"secure printing functions." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11961 doc/guix.texi:12298 doc/guix.texi:13657 -#: doc/guix.texi:13669 doc/guix.texi:17832 doc/guix.texi:17840 -#: doc/guix.texi:17848 doc/guix.texi:17856 doc/guix.texi:18134 -#: doc/guix.texi:18612 doc/guix.texi:18620 doc/guix.texi:18628 -#: doc/guix.texi:18736 doc/guix.texi:18761 doc/guix.texi:18892 -#: doc/guix.texi:18900 doc/guix.texi:18908 doc/guix.texi:18916 -#: doc/guix.texi:18924 doc/guix.texi:18932 doc/guix.texi:18955 -#: doc/guix.texi:18963 doc/guix.texi:19015 doc/guix.texi:19031 -#: doc/guix.texi:19039 doc/guix.texi:19078 doc/guix.texi:19101 -#: doc/guix.texi:19123 doc/guix.texi:19130 doc/guix.texi:19165 -#: doc/guix.texi:19173 doc/guix.texi:19197 doc/guix.texi:19229 -#: doc/guix.texi:19258 doc/guix.texi:19265 doc/guix.texi:19272 -#: doc/guix.texi:19280 doc/guix.texi:19294 doc/guix.texi:19303 -#: doc/guix.texi:19313 doc/guix.texi:19320 doc/guix.texi:19327 -#: doc/guix.texi:19334 doc/guix.texi:19405 doc/guix.texi:19412 -#: doc/guix.texi:19419 doc/guix.texi:19428 doc/guix.texi:19444 -#: doc/guix.texi:19451 doc/guix.texi:19458 doc/guix.texi:19465 -#: doc/guix.texi:19473 doc/guix.texi:19481 -msgid "Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11963 -#, no-wrap -msgid "{@code{cups-configuration} parameter} boolean classify-override?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11966 -msgid "" -"Specifies whether users may override the classification (cover page) of " -"individual print jobs using the @code{job-sheets} option." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11970 -#, no-wrap -msgid "{@code{cups-configuration} parameter} default-auth-type default-auth-type" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11972 -msgid "Specifies the default type of authentication to use." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11974 -msgid "Defaults to @samp{Basic}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11976 -#, no-wrap -msgid "{@code{cups-configuration} parameter} default-encryption default-encryption" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11978 -msgid "Specifies whether encryption will be used for authenticated requests." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11980 -msgid "Defaults to @samp{Required}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11982 -#, no-wrap -msgid "{@code{cups-configuration} parameter} string default-language" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11984 -msgid "Specifies the default language to use for text and web content." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11986 -msgid "Defaults to @samp{\"en\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11988 -#, no-wrap -msgid "{@code{cups-configuration} parameter} string default-paper-size" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11993 -msgid "" -"Specifies the default paper size for new print queues. @samp{\"Auto\"} uses " -"a locale-specific default, while @samp{\"None\"} specifies there is no " -"default paper size. Specific size names are typically @samp{\"Letter\"} or " -"@samp{\"A4\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11995 -msgid "Defaults to @samp{\"Auto\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11997 -#, no-wrap -msgid "{@code{cups-configuration} parameter} string default-policy" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:11999 -msgid "Specifies the default access policy to use." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12001 -msgid "Defaults to @samp{\"default\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12003 -#, no-wrap -msgid "{@code{cups-configuration} parameter} boolean default-shared?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12005 -msgid "Specifies whether local printers are shared by default." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12007 doc/guix.texi:12087 doc/guix.texi:12383 -#: doc/guix.texi:16576 doc/guix.texi:16583 doc/guix.texi:16591 -#: doc/guix.texi:16613 doc/guix.texi:16627 doc/guix.texi:16712 -#: doc/guix.texi:16719 doc/guix.texi:16727 doc/guix.texi:17113 -#: doc/guix.texi:17253 doc/guix.texi:17439 doc/guix.texi:17446 -#: doc/guix.texi:17468 doc/guix.texi:17507 doc/guix.texi:17527 -#: doc/guix.texi:17541 doc/guix.texi:17681 doc/guix.texi:18714 -#: doc/guix.texi:18802 doc/guix.texi:18818 doc/guix.texi:18868 -msgid "Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12009 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer dirty-clean-interval" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12013 -msgid "" -"Specifies the delay for updating of configuration and state files, in " -"seconds. A value of 0 causes the update to happen as soon as possible, " -"typically within a few milliseconds." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12015 doc/guix.texi:12063 doc/guix.texi:12072 -#: doc/guix.texi:12093 doc/guix.texi:12390 -msgid "Defaults to @samp{30}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12017 -#, no-wrap -msgid "{@code{cups-configuration} parameter} error-policy error-policy" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12023 -msgid "" -"Specifies what to do when an error occurs. Possible values are @code{abort-" -"job}, which will discard the failed print job; @code{retry-job}, which will " -"retry the job at a later time; @code{retry-this-job}, which retries the " -"failed job immediately; and @code{stop-printer}, which stops the printer." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12025 -msgid "Defaults to @samp{stop-printer}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12027 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer filter-limit" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12035 -msgid "" -"Specifies the maximum cost of filters that are run concurrently, which can " -"be used to minimize disk, memory, and CPU resource problems. A limit of 0 " -"disables filter limiting. An average print to a non-PostScript printer " -"needs a filter limit of about 200. A PostScript printer needs about half " -"that (100). Setting the limit below these thresholds will effectively limit " -"the scheduler to printing a single job at any time." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12037 doc/guix.texi:12045 doc/guix.texi:12100 -#: doc/guix.texi:12216 doc/guix.texi:12230 doc/guix.texi:12237 -#: doc/guix.texi:13761 doc/guix.texi:13773 doc/guix.texi:17129 -#: doc/guix.texi:17454 doc/guix.texi:18707 doc/guix.texi:19007 -#: doc/guix.texi:19181 -msgid "Defaults to @samp{0}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12039 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer filter-nice" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12043 -msgid "" -"Specifies the scheduling priority of filters that are run to print a job. " -"The nice value ranges from 0, the highest priority, to 19, the lowest " -"priority." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12047 -#, no-wrap -msgid "{@code{cups-configuration} parameter} host-name-lookups host-name-lookups" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12054 -msgid "" -"Specifies whether to do reverse lookups on connecting clients. The " -"@code{double} setting causes @code{cupsd} to verify that the hostname " -"resolved from the address matches one of the addresses returned for that " -"hostname. Double lookups also prevent clients with unregistered addresses " -"from connecting to your server. Only set this option to @code{#t} or " -"@code{double} if absolutely required." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12058 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer job-kill-delay" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12061 -msgid "" -"Specifies the number of seconds to wait before killing the filters and " -"backend associated with a canceled or held job." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12065 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer job-retry-interval" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12070 -msgid "" -"Specifies the interval between retries of jobs in seconds. This is " -"typically used for fax queues but can also be used with normal print queues " -"whose error policy is @code{retry-job} or @code{retry-current-job}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12074 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer job-retry-limit" +#: doc/guix.texi:12073 +msgid "Specifies the permissions for all configuration files that the scheduler writes." msgstr "" #. type: deftypevr #: doc/guix.texi:12079 -msgid "" -"Specifies the number of retries that are done for jobs. This is typically " -"used for fax queues but can also be used with normal print queues whose " -"error policy is @code{retry-job} or @code{retry-current-job}." +msgid "Note that the permissions for the printers.conf file are currently masked to only allow access from the scheduler user (typically root). This is done because printer device URIs sometimes contain sensitive authentication information that should not be generally known on the system. There is no way to disable this security feature." msgstr "" #. type: deftypevr -#: doc/guix.texi:12081 doc/guix.texi:17933 doc/guix.texi:17953 -#: doc/guix.texi:17969 doc/guix.texi:17983 doc/guix.texi:17990 -#: doc/guix.texi:17997 doc/guix.texi:18004 doc/guix.texi:18163 -#: doc/guix.texi:18179 doc/guix.texi:18186 doc/guix.texi:18193 -#: doc/guix.texi:18204 doc/guix.texi:18659 doc/guix.texi:18667 -#: doc/guix.texi:18675 doc/guix.texi:18699 -msgid "Defaults to @samp{5}." +#: doc/guix.texi:12081 +msgid "Defaults to @samp{\"0640\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:12083 #, no-wrap -msgid "{@code{cups-configuration} parameter} boolean keep-alive?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12085 -msgid "Specifies whether to support HTTP keep-alive connections." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12089 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer keep-alive-timeout" +msgid "{@code{files-configuration} parameter} log-location error-log" msgstr "" #. type: deftypevr #: doc/guix.texi:12091 -msgid "Specifies how long an idle client connection remains open, in seconds." +msgid "Defines the error log filename. Specifying a blank filename disables access log generation. The value @code{stderr} causes log entries to be sent to the standard error file when the scheduler is running in the foreground, or to the system log daemon when run in the background. The value @code{syslog} causes log entries to be sent to the system log daemon. The server name may be included in filenames using the string @code{%s}, as in @code{/var/log/cups/%s-error_log}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12093 +msgid "Defaults to @samp{\"/var/log/cups/error_log\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:12095 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer limit-request-body" +msgid "{@code{files-configuration} parameter} string fatal-errors" msgstr "" #. type: deftypevr #: doc/guix.texi:12098 -msgid "" -"Specifies the maximum size of print files, IPP requests, and HTML form " -"data. A limit of 0 disables the limit check." +msgid "Specifies which errors are fatal, causing the scheduler to exit. The kind strings are:" msgstr "" -#. type: deftypevr +#. type: table #: doc/guix.texi:12102 -#, no-wrap -msgid "{@code{cups-configuration} parameter} multiline-string-list listen" +msgid "No errors are fatal." msgstr "" -#. type: deftypevr +#. type: table +#: doc/guix.texi:12105 +msgid "All of the errors below are fatal." +msgstr "" + +#. type: item +#: doc/guix.texi:12106 +#, no-wrap +msgid "browse" +msgstr "" + +#. type: table #: doc/guix.texi:12109 -msgid "" -"Listens on the specified interfaces for connections. Valid values are of " -"the form @var{address}:@var{port}, where @var{address} is either an IPv6 " -"address enclosed in brackets, an IPv4 address, or @code{*} to indicate all " -"addresses. Values can also be file names of local UNIX domain sockets. The " -"Listen directive is similar to the Port directive but allows you to restrict " -"access to specific interfaces or networks." +msgid "Browsing initialization errors are fatal, for example failed connections to the DNS-SD daemon." msgstr "" -#. type: deftypevr -#: doc/guix.texi:12111 +#. type: item +#: doc/guix.texi:12110 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer listen-back-log" +msgid "config" msgstr "" -#. type: deftypevr -#: doc/guix.texi:12118 -msgid "" -"Specifies the number of pending connections that will be allowed. This " -"normally only affects very busy servers that have reached the MaxClients " -"limit, but can also be triggered by large numbers of simultaneous " -"connections. When the limit is reached, the operating system will refuse " -"additional connections until the scheduler can accept the pending ones." +#. type: table +#: doc/guix.texi:12112 +msgid "Configuration file syntax errors are fatal." msgstr "" -#. type: deftypevr +#. type: item +#: doc/guix.texi:12113 +#, no-wrap +msgid "listen" +msgstr "" + +#. type: table +#: doc/guix.texi:12116 +msgid "Listen or Port errors are fatal, except for IPv6 failures on the loopback or @code{any} addresses." +msgstr "" + +#. type: item +#: doc/guix.texi:12117 +#, no-wrap +msgid "log" +msgstr "" + +#. type: table +#: doc/guix.texi:12119 +msgid "Log file creation or write errors are fatal." +msgstr "" + +#. type: item #: doc/guix.texi:12120 -msgid "Defaults to @samp{128}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12122 #, no-wrap -msgid "{@code{cups-configuration} parameter} location-access-control-list location-access-controls" +msgid "permissions" msgstr "" -#. type: deftypevr -#: doc/guix.texi:12124 -msgid "Specifies a set of additional access controls." +#. type: table +#: doc/guix.texi:12123 +msgid "Bad startup file permissions are fatal, for example shared TLS certificate and key files with world-read permissions." msgstr "" #. type: deftypevr #: doc/guix.texi:12126 -msgid "Available @code{location-access-controls} fields are:" +msgid "Defaults to @samp{\"all -browse\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12127 +#: doc/guix.texi:12128 #, no-wrap -msgid "{@code{location-access-controls} parameter} file-name path" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12129 -msgid "Specifies the URI path to which the access control applies." +msgid "{@code{files-configuration} parameter} boolean file-device?" msgstr "" #. type: deftypevr #: doc/guix.texi:12131 +msgid "Specifies whether the file pseudo-device can be used for new printer queues. The URI @uref{file:///dev/null} is always allowed." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12133 doc/guix.texi:12203 doc/guix.texi:12239 +#: doc/guix.texi:12251 doc/guix.texi:12257 doc/guix.texi:12273 +#: doc/guix.texi:12361 doc/guix.texi:12455 doc/guix.texi:12771 +#: doc/guix.texi:12784 doc/guix.texi:17090 doc/guix.texi:17104 +#: doc/guix.texi:17226 doc/guix.texi:17247 doc/guix.texi:17268 +#: doc/guix.texi:17275 doc/guix.texi:17320 doc/guix.texi:17327 +#: doc/guix.texi:17730 doc/guix.texi:17744 doc/guix.texi:17916 +#: doc/guix.texi:17961 doc/guix.texi:18048 doc/guix.texi:18177 +#: doc/guix.texi:18210 doc/guix.texi:18350 doc/guix.texi:18361 +#: doc/guix.texi:18611 doc/guix.texi:19253 doc/guix.texi:19262 +#: doc/guix.texi:19270 doc/guix.texi:19278 doc/guix.texi:19294 +#: doc/guix.texi:19310 doc/guix.texi:19318 doc/guix.texi:19326 +#: doc/guix.texi:19335 doc/guix.texi:19344 doc/guix.texi:19360 +#: doc/guix.texi:19424 doc/guix.texi:19530 doc/guix.texi:19538 +#: doc/guix.texi:19546 doc/guix.texi:19571 doc/guix.texi:19625 +#: doc/guix.texi:19673 doc/guix.texi:19826 doc/guix.texi:19834 +#: doc/guix.texi:19842 doc/guix.texi:19850 doc/guix.texi:19858 +#: doc/guix.texi:19866 doc/guix.texi:19874 doc/guix.texi:19881 +msgid "Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12135 #, no-wrap -msgid "{@code{location-access-controls} parameter} access-control-list access-controls" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12134 -msgid "" -"Access controls for all access to this path, in the same format as the " -"@code{access-controls} of @code{operation-access-control}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12136 doc/guix.texi:12142 doc/guix.texi:12156 -#: doc/guix.texi:12163 doc/guix.texi:12305 doc/guix.texi:12364 -#: doc/guix.texi:12448 doc/guix.texi:12459 doc/guix.texi:14247 -#: doc/guix.texi:16634 doc/guix.texi:16822 doc/guix.texi:17824 -#: doc/guix.texi:17884 doc/guix.texi:17892 doc/guix.texi:18722 -#: doc/guix.texi:18729 doc/guix.texi:19071 doc/guix.texi:19149 -#: doc/guix.texi:19243 doc/guix.texi:19251 doc/guix.texi:19287 -#: doc/guix.texi:19437 doc/guix.texi:19488 doc/guix.texi:19497 -msgid "Defaults to @samp{()}." +msgid "{@code{files-configuration} parameter} string group" msgstr "" #. type: deftypevr #: doc/guix.texi:12138 -#, no-wrap -msgid "{@code{location-access-controls} parameter} method-access-control-list method-access-controls" +msgid "Specifies the group name or ID that will be used when executing external programs." msgstr "" #. type: deftypevr -#: doc/guix.texi:12140 -msgid "Access controls for method-specific access to this path." +#: doc/guix.texi:12140 doc/guix.texi:12220 +msgid "Defaults to @samp{\"lp\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12142 +#, no-wrap +msgid "{@code{files-configuration} parameter} string log-file-perm" msgstr "" #. type: deftypevr #: doc/guix.texi:12144 -msgid "Available @code{method-access-controls} fields are:" +msgid "Specifies the permissions for all log files that the scheduler writes." msgstr "" #. type: deftypevr -#: doc/guix.texi:12145 -#, no-wrap -msgid "{@code{method-access-controls} parameter} boolean reverse?" +#: doc/guix.texi:12146 +msgid "Defaults to @samp{\"0644\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:12148 -msgid "" -"If @code{#t}, apply access controls to all methods except the listed " -"methods. Otherwise apply to only the listed methods." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12152 #, no-wrap -msgid "{@code{method-access-controls} parameter} method-list methods" +msgid "{@code{files-configuration} parameter} log-location page-log" msgstr "" #. type: deftypevr -#: doc/guix.texi:12154 -msgid "Methods to which this access control applies." +#: doc/guix.texi:12156 +msgid "Defines the page log filename. Specifying a blank filename disables access log generation. The value @code{stderr} causes log entries to be sent to the standard error file when the scheduler is running in the foreground, or to the system log daemon when run in the background. The value @code{syslog} causes log entries to be sent to the system log daemon. The server name may be included in filenames using the string @code{%s}, as in @code{/var/log/cups/%s-page_log}." msgstr "" #. type: deftypevr #: doc/guix.texi:12158 -#, no-wrap -msgid "{@code{method-access-controls} parameter} access-control-list access-controls" +msgid "Defaults to @samp{\"/var/log/cups/page_log\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12161 -msgid "" -"Access control directives, as a list of strings. Each string should be one " -"directive, such as \"Order allow,deny\"." +#: doc/guix.texi:12160 +#, no-wrap +msgid "{@code{files-configuration} parameter} string remote-root" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12163 +msgid "Specifies the username that is associated with unauthenticated accesses by clients claiming to be the root user. The default is @code{remroot}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12165 +msgid "Defaults to @samp{\"remroot\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:12167 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer log-debug-history" +msgid "{@code{files-configuration} parameter} file-name request-root" msgstr "" #. type: deftypevr -#: doc/guix.texi:12171 -msgid "" -"Specifies the number of debugging messages that are retained for logging if " -"an error occurs in a print job. Debug messages are logged regardless of the " -"LogLevel setting." +#: doc/guix.texi:12170 +msgid "Specifies the directory that contains print jobs and other HTTP request data." msgstr "" #. type: deftypevr -#: doc/guix.texi:12173 doc/guix.texi:12194 doc/guix.texi:12201 -#: doc/guix.texi:14007 doc/guix.texi:16807 -msgid "Defaults to @samp{100}." +#: doc/guix.texi:12172 +msgid "Defaults to @samp{\"/var/spool/cups\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12175 +#: doc/guix.texi:12174 #, no-wrap -msgid "{@code{cups-configuration} parameter} log-level log-level" +msgid "{@code{files-configuration} parameter} sandboxing sandboxing" msgstr "" #. type: deftypevr -#: doc/guix.texi:12178 -msgid "" -"Specifies the level of logging for the ErrorLog file. The value @code{none} " -"stops all logging while @code{debug2} logs everything." +#: doc/guix.texi:12179 +msgid "Specifies the level of security sandboxing that is applied to print filters, backends, and other child processes of the scheduler; either @code{relaxed} or @code{strict}. This directive is currently only used/supported on macOS." msgstr "" #. type: deftypevr -#: doc/guix.texi:12180 -msgid "Defaults to @samp{info}." +#: doc/guix.texi:12181 +msgid "Defaults to @samp{strict}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12182 +#: doc/guix.texi:12183 #, no-wrap -msgid "{@code{cups-configuration} parameter} log-time-format log-time-format" +msgid "{@code{files-configuration} parameter} file-name server-keychain" msgstr "" #. type: deftypevr -#: doc/guix.texi:12185 -msgid "" -"Specifies the format of the date and time in the log files. The value " -"@code{standard} logs whole seconds while @code{usecs} logs microseconds." +#: doc/guix.texi:12188 +msgid "Specifies the location of TLS certificates and private keys. CUPS will look for public and private keys in this directory: a @code{.crt} files for PEM-encoded certificates and corresponding @code{.key} files for PEM-encoded private keys." msgstr "" #. type: deftypevr -#: doc/guix.texi:12187 -msgid "Defaults to @samp{standard}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12189 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-clients" +#: doc/guix.texi:12190 +msgid "Defaults to @samp{\"/etc/cups/ssl\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:12192 -msgid "" -"Specifies the maximum number of simultaneous clients that are allowed by the " -"scheduler." +#, no-wrap +msgid "{@code{files-configuration} parameter} file-name server-root" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12194 +msgid "Specifies the directory containing the server configuration files." msgstr "" #. type: deftypevr #: doc/guix.texi:12196 +msgid "Defaults to @samp{\"/etc/cups\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12198 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-clients-per-host" +msgid "{@code{files-configuration} parameter} boolean sync-on-close?" msgstr "" #. type: deftypevr -#: doc/guix.texi:12199 -msgid "" -"Specifies the maximum number of simultaneous clients that are allowed from a " -"single address." +#: doc/guix.texi:12201 +msgid "Specifies whether the scheduler calls fsync(2) after writing configuration or state files." msgstr "" #. type: deftypevr -#: doc/guix.texi:12203 +#: doc/guix.texi:12205 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-copies" +msgid "{@code{files-configuration} parameter} space-separated-string-list system-group" msgstr "" #. type: deftypevr -#: doc/guix.texi:12206 -msgid "" -"Specifies the maximum number of copies that a user can print of each job." +#: doc/guix.texi:12207 +msgid "Specifies the group(s) to use for @code{@@SYSTEM} group authentication." msgstr "" #. type: deftypevr -#: doc/guix.texi:12208 -msgid "Defaults to @samp{9999}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12210 +#: doc/guix.texi:12209 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-hold-time" +msgid "{@code{files-configuration} parameter} file-name temp-dir" msgstr "" #. type: deftypevr -#: doc/guix.texi:12214 -msgid "" -"Specifies the maximum time a job may remain in the @code{indefinite} hold " -"state before it is canceled. A value of 0 disables cancellation of held " -"jobs." +#: doc/guix.texi:12211 +msgid "Specifies the directory where temporary files are stored." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12213 +msgid "Defaults to @samp{\"/var/spool/cups/tmp\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12215 +#, no-wrap +msgid "{@code{files-configuration} parameter} string user" msgstr "" #. type: deftypevr #: doc/guix.texi:12218 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12221 -msgid "" -"Specifies the maximum number of simultaneous jobs that are allowed. Set to " -"0 to allow an unlimited number of jobs." +msgid "Specifies the user name or ID that is used when running external programs." msgstr "" #. type: deftypevr #: doc/guix.texi:12223 -msgid "Defaults to @samp{500}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12225 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs-per-printer" +msgid "{@code{cups-configuration} parameter} access-log-level access-log-level" msgstr "" #. type: deftypevr -#: doc/guix.texi:12228 -msgid "" -"Specifies the maximum number of simultaneous jobs that are allowed per " -"printer. A value of 0 allows up to MaxJobs jobs per printer." +#: doc/guix.texi:12230 +msgid "Specifies the logging level for the AccessLog file. The @code{config} level logs when printers and classes are added, deleted, or modified and when configuration files are accessed or updated. The @code{actions} level logs when print jobs are submitted, held, released, modified, or canceled, and any of the conditions for @code{config}. The @code{all} level logs all requests." msgstr "" #. type: deftypevr #: doc/guix.texi:12232 +msgid "Defaults to @samp{actions}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12234 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs-per-user" +msgid "{@code{cups-configuration} parameter} boolean auto-purge-jobs?" msgstr "" #. type: deftypevr -#: doc/guix.texi:12235 -msgid "" -"Specifies the maximum number of simultaneous jobs that are allowed per " -"user. A value of 0 allows up to MaxJobs jobs per user." +#: doc/guix.texi:12237 +msgid "Specifies whether to purge job history data automatically when it is no longer required for quotas." msgstr "" #. type: deftypevr -#: doc/guix.texi:12239 +#: doc/guix.texi:12241 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-job-time" +msgid "{@code{cups-configuration} parameter} browse-local-protocols browse-local-protocols" msgstr "" #. type: deftypevr -#: doc/guix.texi:12242 -msgid "" -"Specifies the maximum time a job may take to print before it is canceled, in " -"seconds. Set to 0 to disable cancellation of \"stuck\" jobs." +#: doc/guix.texi:12243 +msgid "Specifies which protocols to use for local printer sharing." msgstr "" #. type: deftypevr -#: doc/guix.texi:12244 -msgid "Defaults to @samp{10800}." +#: doc/guix.texi:12245 +msgid "Defaults to @samp{dnssd}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12246 +#: doc/guix.texi:12247 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer max-log-size" +msgid "{@code{cups-configuration} parameter} boolean browse-web-if?" msgstr "" #. type: deftypevr #: doc/guix.texi:12249 -msgid "" -"Specifies the maximum size of the log files before they are rotated, in " -"bytes. The value 0 disables log rotation." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12251 -msgid "Defaults to @samp{1048576}." +msgid "Specifies whether the CUPS web interface is advertised." msgstr "" #. type: deftypevr #: doc/guix.texi:12253 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer multiple-operation-timeout" +msgid "{@code{cups-configuration} parameter} boolean browsing?" msgstr "" #. type: deftypevr -#: doc/guix.texi:12256 -msgid "" -"Specifies the maximum amount of time to allow between files in a multiple " -"file print job, in seconds." +#: doc/guix.texi:12255 +msgid "Specifies whether shared printers are advertised." msgstr "" #. type: deftypevr -#: doc/guix.texi:12258 doc/guix.texi:12472 -msgid "Defaults to @samp{300}." +#: doc/guix.texi:12259 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string classification" msgstr "" #. type: deftypevr -#: doc/guix.texi:12260 -#, no-wrap -msgid "{@code{cups-configuration} parameter} string page-log-format" +#: doc/guix.texi:12264 +msgid "Specifies the security classification of the server. Any valid banner name can be used, including \"classified\", \"confidential\", \"secret\", \"topsecret\", and \"unclassified\", or the banner can be omitted to disable secure printing functions." msgstr "" #. type: deftypevr -#: doc/guix.texi:12265 -msgid "" -"Specifies the format of PageLog lines. Sequences beginning with percent " -"(@samp{%}) characters are replaced with the corresponding information, while " -"all other characters are copied literally. The following percent sequences " -"are recognized:" +#: doc/guix.texi:12266 doc/guix.texi:12603 doc/guix.texi:14019 +#: doc/guix.texi:14031 doc/guix.texi:18316 doc/guix.texi:18324 +#: doc/guix.texi:18332 doc/guix.texi:18340 doc/guix.texi:18618 +#: doc/guix.texi:19096 doc/guix.texi:19104 doc/guix.texi:19112 +#: doc/guix.texi:19220 doc/guix.texi:19245 doc/guix.texi:19376 +#: doc/guix.texi:19384 doc/guix.texi:19392 doc/guix.texi:19400 +#: doc/guix.texi:19408 doc/guix.texi:19416 doc/guix.texi:19439 +#: doc/guix.texi:19447 doc/guix.texi:19499 doc/guix.texi:19515 +#: doc/guix.texi:19523 doc/guix.texi:19562 doc/guix.texi:19585 +#: doc/guix.texi:19607 doc/guix.texi:19614 doc/guix.texi:19649 +#: doc/guix.texi:19657 doc/guix.texi:19681 doc/guix.texi:19713 +#: doc/guix.texi:19742 doc/guix.texi:19749 doc/guix.texi:19756 +#: doc/guix.texi:19764 doc/guix.texi:19778 doc/guix.texi:19787 +#: doc/guix.texi:19797 doc/guix.texi:19804 doc/guix.texi:19811 +#: doc/guix.texi:19818 doc/guix.texi:19889 doc/guix.texi:19896 +#: doc/guix.texi:19903 doc/guix.texi:19912 doc/guix.texi:19928 +#: doc/guix.texi:19935 doc/guix.texi:19942 doc/guix.texi:19949 +#: doc/guix.texi:19957 doc/guix.texi:19965 +msgid "Defaults to @samp{\"\"}." msgstr "" -#. type: item -#: doc/guix.texi:12267 +#. type: deftypevr +#: doc/guix.texi:12268 #, no-wrap -msgid "%%" +msgid "{@code{cups-configuration} parameter} boolean classify-override?" msgstr "" -#. type: table -#: doc/guix.texi:12269 -msgid "insert a single percent character" +#. type: deftypevr +#: doc/guix.texi:12271 +msgid "Specifies whether users may override the classification (cover page) of individual print jobs using the @code{job-sheets} option." msgstr "" -#. type: item -#: doc/guix.texi:12270 -#, no-wrap -msgid "%@{name@}" -msgstr "" - -#. type: table -#: doc/guix.texi:12272 -msgid "insert the value of the specified IPP attribute" -msgstr "" - -#. type: item -#: doc/guix.texi:12273 -#, no-wrap -msgid "%C" -msgstr "" - -#. type: table +#. type: deftypevr #: doc/guix.texi:12275 -msgid "insert the number of copies for the current page" -msgstr "" - -#. type: item -#: doc/guix.texi:12276 #, no-wrap -msgid "%P" -msgstr "" - -#. type: table -#: doc/guix.texi:12278 -msgid "insert the current page number" -msgstr "" - -#. type: item -#: doc/guix.texi:12279 -#, no-wrap -msgid "%T" -msgstr "" - -#. type: table -#: doc/guix.texi:12281 -msgid "insert the current date and time in common log format" -msgstr "" - -#. type: item -#: doc/guix.texi:12282 -#, no-wrap -msgid "%j" -msgstr "" - -#. type: table -#: doc/guix.texi:12284 -msgid "insert the job ID" -msgstr "" - -#. type: item -#: doc/guix.texi:12285 doc/guix.texi:13617 -#, no-wrap -msgid "%p" -msgstr "" - -#. type: table -#: doc/guix.texi:12287 -msgid "insert the printer name" -msgstr "" - -#. type: item -#: doc/guix.texi:12288 doc/guix.texi:13640 -#, no-wrap -msgid "%u" -msgstr "" - -#. type: table -#: doc/guix.texi:12290 -msgid "insert the username" +msgid "{@code{cups-configuration} parameter} default-auth-type default-auth-type" msgstr "" #. type: deftypevr -#: doc/guix.texi:12296 -msgid "" -"A value of the empty string disables page logging. The string @code{%p %u " -"%j %T %P %C %@{job-billing@} %@{job-originating-host-name@} %@{job-name@} " -"%@{media@} %@{sides@}} creates a page log with the standard items." +#: doc/guix.texi:12277 +msgid "Specifies the default type of authentication to use." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12279 +msgid "Defaults to @samp{Basic}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12281 +#, no-wrap +msgid "{@code{cups-configuration} parameter} default-encryption default-encryption" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12283 +msgid "Specifies whether encryption will be used for authenticated requests." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12285 +msgid "Defaults to @samp{Required}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12287 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string default-language" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12289 +msgid "Specifies the default language to use for text and web content." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12291 +msgid "Defaults to @samp{\"en\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12293 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string default-paper-size" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12298 +msgid "Specifies the default paper size for new print queues. @samp{\"Auto\"} uses a locale-specific default, while @samp{\"None\"} specifies there is no default paper size. Specific size names are typically @samp{\"Letter\"} or @samp{\"A4\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:12300 +msgid "Defaults to @samp{\"Auto\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12302 #, no-wrap -msgid "{@code{cups-configuration} parameter} environment-variables environment-variables" +msgid "{@code{cups-configuration} parameter} string default-policy" msgstr "" #. type: deftypevr -#: doc/guix.texi:12303 -msgid "" -"Passes the specified environment variable(s) to child processes; a list of " -"strings." +#: doc/guix.texi:12304 +msgid "Specifies the default access policy to use." msgstr "" #. type: deftypevr -#: doc/guix.texi:12307 +#: doc/guix.texi:12306 +msgid "Defaults to @samp{\"default\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12308 #, no-wrap -msgid "{@code{cups-configuration} parameter} policy-configuration-list policies" +msgid "{@code{cups-configuration} parameter} boolean default-shared?" msgstr "" #. type: deftypevr -#: doc/guix.texi:12309 -msgid "Specifies named access control policies." +#: doc/guix.texi:12310 +msgid "Specifies whether local printers are shared by default." msgstr "" #. type: deftypevr -#: doc/guix.texi:12311 -msgid "Available @code{policy-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12312 -#, no-wrap -msgid "{@code{policy-configuration} parameter} string name" +#: doc/guix.texi:12312 doc/guix.texi:12392 doc/guix.texi:12688 +#: doc/guix.texi:17060 doc/guix.texi:17067 doc/guix.texi:17075 +#: doc/guix.texi:17097 doc/guix.texi:17111 doc/guix.texi:17196 +#: doc/guix.texi:17203 doc/guix.texi:17211 doc/guix.texi:17597 +#: doc/guix.texi:17737 doc/guix.texi:17923 doc/guix.texi:17930 +#: doc/guix.texi:17952 doc/guix.texi:17991 doc/guix.texi:18011 +#: doc/guix.texi:18025 doc/guix.texi:18165 doc/guix.texi:19198 +#: doc/guix.texi:19286 doc/guix.texi:19302 doc/guix.texi:19352 +msgid "Defaults to @samp{#t}." msgstr "" #. type: deftypevr #: doc/guix.texi:12314 -msgid "Name of the policy." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12316 #, no-wrap -msgid "{@code{policy-configuration} parameter} string job-private-access" +msgid "{@code{cups-configuration} parameter} non-negative-integer dirty-clean-interval" msgstr "" #. type: deftypevr -#: doc/guix.texi:12326 -msgid "" -"Specifies an access list for a job's private values. @code{@@ACL} maps to " -"the printer's requesting-user-name-allowed or requesting-user-name-denied " -"values. @code{@@OWNER} maps to the job's owner. @code{@@SYSTEM} maps to " -"the groups listed for the @code{system-group} field of the @code{files-" -"config} configuration, which is reified into the @code{cups-files.conf(5)} " -"file. Other possible elements of the access list include specific user " -"names, and @code{@@@var{group}} to indicate members of a specific group. " -"The access list may also be simply @code{all} or @code{default}." +#: doc/guix.texi:12318 +msgid "Specifies the delay for updating of configuration and state files, in seconds. A value of 0 causes the update to happen as soon as possible, typically within a few milliseconds." msgstr "" #. type: deftypevr -#: doc/guix.texi:12328 doc/guix.texi:12350 -msgid "Defaults to @samp{\"@@OWNER @@SYSTEM\"}." +#: doc/guix.texi:12320 doc/guix.texi:12368 doc/guix.texi:12377 +#: doc/guix.texi:12398 doc/guix.texi:12695 +msgid "Defaults to @samp{30}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12322 +#, no-wrap +msgid "{@code{cups-configuration} parameter} error-policy error-policy" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12328 +msgid "Specifies what to do when an error occurs. Possible values are @code{abort-job}, which will discard the failed print job; @code{retry-job}, which will retry the job at a later time; @code{retry-this-job}, which retries the failed job immediately; and @code{stop-printer}, which stops the printer." msgstr "" #. type: deftypevr #: doc/guix.texi:12330 +msgid "Defaults to @samp{stop-printer}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12332 #, no-wrap -msgid "{@code{policy-configuration} parameter} string job-private-values" +msgid "{@code{cups-configuration} parameter} non-negative-integer filter-limit" msgstr "" #. type: deftypevr -#: doc/guix.texi:12333 doc/guix.texi:12355 -msgid "" -"Specifies the list of job values to make private, or @code{all}, " -"@code{default}, or @code{none}." +#: doc/guix.texi:12340 +msgid "Specifies the maximum cost of filters that are run concurrently, which can be used to minimize disk, memory, and CPU resource problems. A limit of 0 disables filter limiting. An average print to a non-PostScript printer needs a filter limit of about 200. A PostScript printer needs about half that (100). Setting the limit below these thresholds will effectively limit the scheduler to printing a single job at any time." msgstr "" #. type: deftypevr -#: doc/guix.texi:12336 -msgid "" -"Defaults to @samp{\"job-name job-originating-host-name job-originating-user-" -"name phone\"}." +#: doc/guix.texi:12342 doc/guix.texi:12350 doc/guix.texi:12405 +#: doc/guix.texi:12521 doc/guix.texi:12535 doc/guix.texi:12542 +#: doc/guix.texi:14123 doc/guix.texi:14135 doc/guix.texi:17613 +#: doc/guix.texi:17938 doc/guix.texi:19191 doc/guix.texi:19491 +#: doc/guix.texi:19665 +msgid "Defaults to @samp{0}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12338 +#: doc/guix.texi:12344 #, no-wrap -msgid "{@code{policy-configuration} parameter} string subscription-private-access" +msgid "{@code{cups-configuration} parameter} non-negative-integer filter-nice" msgstr "" #. type: deftypevr #: doc/guix.texi:12348 -msgid "" -"Specifies an access list for a subscription's private values. @code{@@ACL} " -"maps to the printer's requesting-user-name-allowed or requesting-user-name-" -"denied values. @code{@@OWNER} maps to the job's owner. @code{@@SYSTEM} " -"maps to the groups listed for the @code{system-group} field of the " -"@code{files-config} configuration, which is reified into the @code{cups-" -"files.conf(5)} file. Other possible elements of the access list include " -"specific user names, and @code{@@@var{group}} to indicate members of a " -"specific group. The access list may also be simply @code{all} or " -"@code{default}." +msgid "Specifies the scheduling priority of filters that are run to print a job. The nice value ranges from 0, the highest priority, to 19, the lowest priority." msgstr "" #. type: deftypevr #: doc/guix.texi:12352 #, no-wrap -msgid "{@code{policy-configuration} parameter} string subscription-private-values" +msgid "{@code{cups-configuration} parameter} host-name-lookups host-name-lookups" msgstr "" #. type: deftypevr -#: doc/guix.texi:12358 -msgid "" -"Defaults to @samp{\"notify-events notify-pull-method notify-recipient-uri " -"notify-subscriber-user-name notify-user-data\"}." +#: doc/guix.texi:12359 +msgid "Specifies whether to do reverse lookups on connecting clients. The @code{double} setting causes @code{cupsd} to verify that the hostname resolved from the address matches one of the addresses returned for that hostname. Double lookups also prevent clients with unregistered addresses from connecting to your server. Only set this option to @code{#t} or @code{double} if absolutely required." msgstr "" #. type: deftypevr -#: doc/guix.texi:12360 +#: doc/guix.texi:12363 #, no-wrap -msgid "{@code{policy-configuration} parameter} operation-access-control-list access-controls" +msgid "{@code{cups-configuration} parameter} non-negative-integer job-kill-delay" msgstr "" #. type: deftypevr -#: doc/guix.texi:12362 -msgid "Access control by IPP operation." +#: doc/guix.texi:12366 +msgid "Specifies the number of seconds to wait before killing the filters and backend associated with a canceled or held job." msgstr "" #. type: deftypevr -#: doc/guix.texi:12367 +#: doc/guix.texi:12370 #, no-wrap -msgid "{@code{cups-configuration} parameter} boolean-or-non-negative-integer preserve-job-files" +msgid "{@code{cups-configuration} parameter} non-negative-integer job-retry-interval" msgstr "" #. type: deftypevr -#: doc/guix.texi:12372 -msgid "" -"Specifies whether job files (documents) are preserved after a job is " -"printed. If a numeric value is specified, job files are preserved for the " -"indicated number of seconds after printing. Otherwise a boolean value " -"applies indefinitely." +#: doc/guix.texi:12375 +msgid "Specifies the interval between retries of jobs in seconds. This is typically used for fax queues but can also be used with normal print queues whose error policy is @code{retry-job} or @code{retry-current-job}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12374 -msgid "Defaults to @samp{86400}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12376 +#: doc/guix.texi:12379 #, no-wrap -msgid "{@code{cups-configuration} parameter} boolean-or-non-negative-integer preserve-job-history" +msgid "{@code{cups-configuration} parameter} non-negative-integer job-retry-limit" msgstr "" #. type: deftypevr -#: doc/guix.texi:12381 -msgid "" -"Specifies whether the job history is preserved after a job is printed. If a " -"numeric value is specified, the job history is preserved for the indicated " -"number of seconds after printing. If @code{#t}, the job history is " -"preserved until the MaxJobs limit is reached." +#: doc/guix.texi:12384 +msgid "Specifies the number of retries that are done for jobs. This is typically used for fax queues but can also be used with normal print queues whose error policy is @code{retry-job} or @code{retry-current-job}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12385 -#, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer reload-timeout" +#: doc/guix.texi:12386 doc/guix.texi:18417 doc/guix.texi:18437 +#: doc/guix.texi:18453 doc/guix.texi:18467 doc/guix.texi:18474 +#: doc/guix.texi:18481 doc/guix.texi:18488 doc/guix.texi:18647 +#: doc/guix.texi:18663 doc/guix.texi:18670 doc/guix.texi:18677 +#: doc/guix.texi:18688 doc/guix.texi:19143 doc/guix.texi:19151 +#: doc/guix.texi:19159 doc/guix.texi:19183 +msgid "Defaults to @samp{5}." msgstr "" #. type: deftypevr #: doc/guix.texi:12388 -msgid "" -"Specifies the amount of time to wait for job completion before restarting " -"the scheduler." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12392 #, no-wrap -msgid "{@code{cups-configuration} parameter} string rip-cache" +msgid "{@code{cups-configuration} parameter} boolean keep-alive?" msgstr "" #. type: deftypevr -#: doc/guix.texi:12395 -msgid "" -"Specifies the maximum amount of memory to use when converting documents into " -"bitmaps for a printer." +#: doc/guix.texi:12390 +msgid "Specifies whether to support HTTP keep-alive connections." msgstr "" #. type: deftypevr -#: doc/guix.texi:12397 -msgid "Defaults to @samp{\"128m\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12399 +#: doc/guix.texi:12394 #, no-wrap -msgid "{@code{cups-configuration} parameter} string server-admin" +msgid "{@code{cups-configuration} parameter} non-negative-integer keep-alive-timeout" msgstr "" #. type: deftypevr -#: doc/guix.texi:12401 -msgid "Specifies the email address of the server administrator." +#: doc/guix.texi:12396 +msgid "Specifies how long an idle client connection remains open, in seconds." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12400 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer limit-request-body" msgstr "" #. type: deftypevr #: doc/guix.texi:12403 -msgid "Defaults to @samp{\"root@@localhost.localdomain\"}." +msgid "Specifies the maximum size of print files, IPP requests, and HTML form data. A limit of 0 disables the limit check." msgstr "" #. type: deftypevr -#: doc/guix.texi:12405 +#: doc/guix.texi:12407 #, no-wrap -msgid "{@code{cups-configuration} parameter} host-name-list-or-* server-alias" +msgid "{@code{cups-configuration} parameter} multiline-string-list listen" msgstr "" #. type: deftypevr -#: doc/guix.texi:12413 -msgid "" -"The ServerAlias directive is used for HTTP Host header validation when " -"clients connect to the scheduler from external interfaces. Using the " -"special name @code{*} can expose your system to known browser-based DNS " -"rebinding attacks, even when accessing sites through a firewall. If the " -"auto-discovery of alternate names does not work, we recommend listing each " -"alternate name with a ServerAlias directive instead of using @code{*}." +#: doc/guix.texi:12414 +msgid "Listens on the specified interfaces for connections. Valid values are of the form @var{address}:@var{port}, where @var{address} is either an IPv6 address enclosed in brackets, an IPv4 address, or @code{*} to indicate all addresses. Values can also be file names of local UNIX domain sockets. The Listen directive is similar to the Port directive but allows you to restrict access to specific interfaces or networks." msgstr "" #. type: deftypevr -#: doc/guix.texi:12415 -msgid "Defaults to @samp{*}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12417 +#: doc/guix.texi:12416 #, no-wrap -msgid "{@code{cups-configuration} parameter} string server-name" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12419 -msgid "Specifies the fully-qualified host name of the server." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12421 -msgid "Defaults to @samp{\"localhost\"}." +msgid "{@code{cups-configuration} parameter} non-negative-integer listen-back-log" msgstr "" #. type: deftypevr #: doc/guix.texi:12423 +msgid "Specifies the number of pending connections that will be allowed. This normally only affects very busy servers that have reached the MaxClients limit, but can also be triggered by large numbers of simultaneous connections. When the limit is reached, the operating system will refuse additional connections until the scheduler can accept the pending ones." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12425 +msgid "Defaults to @samp{128}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12427 #, no-wrap -msgid "{@code{cups-configuration} parameter} server-tokens server-tokens" +msgid "{@code{cups-configuration} parameter} location-access-control-list location-access-controls" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12429 +msgid "Specifies a set of additional access controls." msgstr "" #. type: deftypevr #: doc/guix.texi:12431 -msgid "" -"Specifies what information is included in the Server header of HTTP " -"responses. @code{None} disables the Server header. @code{ProductOnly} " -"reports @code{CUPS}. @code{Major} reports @code{CUPS 2}. @code{Minor} " -"reports @code{CUPS 2.0}. @code{Minimal} reports @code{CUPS 2.0.0}. " -"@code{OS} reports @code{CUPS 2.0.0 (@var{uname})} where @var{uname} is the " -"output of the @code{uname} command. @code{Full} reports @code{CUPS 2.0.0 " -"(@var{uname}) IPP/2.0}." +msgid "Available @code{location-access-controls} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:12433 -msgid "Defaults to @samp{Minimal}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12435 +#: doc/guix.texi:12432 #, no-wrap -msgid "{@code{cups-configuration} parameter} string set-env" +msgid "{@code{location-access-controls} parameter} file-name path" msgstr "" #. type: deftypevr -#: doc/guix.texi:12437 -msgid "Set the specified environment variable to be passed to child processes." +#: doc/guix.texi:12434 +msgid "Specifies the URI path to which the access control applies." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12436 +#, no-wrap +msgid "{@code{location-access-controls} parameter} access-control-list access-controls" msgstr "" #. type: deftypevr #: doc/guix.texi:12439 -msgid "Defaults to @samp{\"variable value\"}." +msgid "Access controls for all access to this path, in the same format as the @code{access-controls} of @code{operation-access-control}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12441 +#: doc/guix.texi:12441 doc/guix.texi:12447 doc/guix.texi:12461 +#: doc/guix.texi:12468 doc/guix.texi:12610 doc/guix.texi:12669 +#: doc/guix.texi:12753 doc/guix.texi:12764 doc/guix.texi:14609 +#: doc/guix.texi:17118 doc/guix.texi:17306 doc/guix.texi:18308 +#: doc/guix.texi:18368 doc/guix.texi:18376 doc/guix.texi:19206 +#: doc/guix.texi:19213 doc/guix.texi:19555 doc/guix.texi:19633 +#: doc/guix.texi:19727 doc/guix.texi:19735 doc/guix.texi:19771 +#: doc/guix.texi:19921 doc/guix.texi:19972 doc/guix.texi:19981 +msgid "Defaults to @samp{()}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12443 #, no-wrap -msgid "{@code{cups-configuration} parameter} multiline-string-list ssl-listen" +msgid "{@code{location-access-controls} parameter} method-access-control-list method-access-controls" msgstr "" #. type: deftypevr -#: doc/guix.texi:12446 -msgid "" -"Listens on the specified interfaces for encrypted connections. Valid values " -"are of the form @var{address}:@var{port}, where @var{address} is either an " -"IPv6 address enclosed in brackets, an IPv4 address, or @code{*} to indicate " -"all addresses." +#: doc/guix.texi:12445 +msgid "Access controls for method-specific access to this path." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12449 +msgid "Available @code{method-access-controls} fields are:" msgstr "" #. type: deftypevr #: doc/guix.texi:12450 #, no-wrap -msgid "{@code{cups-configuration} parameter} ssl-options ssl-options" +msgid "{@code{method-access-controls} parameter} boolean reverse?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12453 +msgid "If @code{#t}, apply access controls to all methods except the listed methods. Otherwise apply to only the listed methods." msgstr "" #. type: deftypevr #: doc/guix.texi:12457 -msgid "" -"Sets encryption options. By default, CUPS only supports encryption using " -"TLS v1.0 or higher using known secure cipher suites. The @code{AllowRC4} " -"option enables the 128-bit RC4 cipher suites, which are required for some " -"older clients that do not implement newer ones. The @code{AllowSSL3} option " -"enables SSL v3.0, which is required for some older clients that do not " -"support TLS v1.0." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:12461 #, no-wrap -msgid "{@code{cups-configuration} parameter} boolean strict-conformance?" +msgid "{@code{method-access-controls} parameter} method-list methods" msgstr "" #. type: deftypevr -#: doc/guix.texi:12464 -msgid "" -"Specifies whether the scheduler requires clients to strictly adhere to the " -"IPP specifications." +#: doc/guix.texi:12459 +msgid "Methods to which this access control applies." msgstr "" #. type: deftypevr -#: doc/guix.texi:12468 +#: doc/guix.texi:12463 #, no-wrap -msgid "{@code{cups-configuration} parameter} non-negative-integer timeout" +msgid "{@code{method-access-controls} parameter} access-control-list access-controls" msgstr "" #. type: deftypevr -#: doc/guix.texi:12470 -msgid "Specifies the HTTP request timeout, in seconds." +#: doc/guix.texi:12466 +msgid "Access control directives, as a list of strings. Each string should be one directive, such as \"Order allow,deny\"." msgstr "" #. type: deftypevr -#: doc/guix.texi:12475 +#: doc/guix.texi:12472 #, no-wrap -msgid "{@code{cups-configuration} parameter} boolean web-interface?" +msgid "{@code{cups-configuration} parameter} non-negative-integer log-debug-history" msgstr "" #. type: deftypevr -#: doc/guix.texi:12477 -msgid "Specifies whether the web interface is enabled." +#: doc/guix.texi:12476 +msgid "Specifies the number of debugging messages that are retained for logging if an error occurs in a print job. Debug messages are logged regardless of the LogLevel setting." msgstr "" -#. type: Plain text +#. type: deftypevr +#: doc/guix.texi:12478 doc/guix.texi:12499 doc/guix.texi:12506 +#: doc/guix.texi:14369 doc/guix.texi:17291 +msgid "Defaults to @samp{100}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12480 +#, no-wrap +msgid "{@code{cups-configuration} parameter} log-level log-level" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12483 +msgid "Specifies the level of logging for the ErrorLog file. The value @code{none} stops all logging while @code{debug2} logs everything." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12485 +msgid "Defaults to @samp{info}." +msgstr "" + +#. type: deftypevr #: doc/guix.texi:12487 -msgid "" -"At this point you're probably thinking ``oh dear, Guix manual, I like you " -"but you can stop already with the configuration options''. Indeed. " -"However, one more point: it could be that you have an existing @code{cupsd." -"conf} that you want to use. In that case, you can pass an @code{opaque-cups-" -"configuration} as the configuration of a @code{cups-service-type}." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:12489 -msgid "Available @code{opaque-cups-configuration} fields are:" +#, no-wrap +msgid "{@code{cups-configuration} parameter} log-time-format log-time-format" msgstr "" #. type: deftypevr #: doc/guix.texi:12490 -#, no-wrap -msgid "{@code{opaque-cups-configuration} parameter} package cups" +msgid "Specifies the format of the date and time in the log files. The value @code{standard} logs whole seconds while @code{usecs} logs microseconds." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12492 +msgid "Defaults to @samp{standard}." msgstr "" #. type: deftypevr #: doc/guix.texi:12494 #, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-clients" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12497 +msgid "Specifies the maximum number of simultaneous clients that are allowed by the scheduler." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12501 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-clients-per-host" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12504 +msgid "Specifies the maximum number of simultaneous clients that are allowed from a single address." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12508 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-copies" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12511 +msgid "Specifies the maximum number of copies that a user can print of each job." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12513 +msgid "Defaults to @samp{9999}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12515 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-hold-time" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12519 +msgid "Specifies the maximum time a job may remain in the @code{indefinite} hold state before it is canceled. A value of 0 disables cancellation of held jobs." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12523 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12526 +msgid "Specifies the maximum number of simultaneous jobs that are allowed. Set to 0 to allow an unlimited number of jobs." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12528 +msgid "Defaults to @samp{500}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12530 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs-per-printer" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12533 +msgid "Specifies the maximum number of simultaneous jobs that are allowed per printer. A value of 0 allows up to MaxJobs jobs per printer." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12537 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs-per-user" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12540 +msgid "Specifies the maximum number of simultaneous jobs that are allowed per user. A value of 0 allows up to MaxJobs jobs per user." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12544 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-job-time" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12547 +msgid "Specifies the maximum time a job may take to print before it is canceled, in seconds. Set to 0 to disable cancellation of \"stuck\" jobs." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12549 +msgid "Defaults to @samp{10800}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12551 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer max-log-size" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12554 +msgid "Specifies the maximum size of the log files before they are rotated, in bytes. The value 0 disables log rotation." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12556 +msgid "Defaults to @samp{1048576}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12558 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer multiple-operation-timeout" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12561 +msgid "Specifies the maximum amount of time to allow between files in a multiple file print job, in seconds." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12563 doc/guix.texi:12777 +msgid "Defaults to @samp{300}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12565 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string page-log-format" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12570 +msgid "Specifies the format of PageLog lines. Sequences beginning with percent (@samp{%}) characters are replaced with the corresponding information, while all other characters are copied literally. The following percent sequences are recognized:" +msgstr "" + +#. type: item +#: doc/guix.texi:12572 +#, no-wrap +msgid "%%" +msgstr "" + +#. type: table +#: doc/guix.texi:12574 +msgid "insert a single percent character" +msgstr "" + +#. type: item +#: doc/guix.texi:12575 +#, no-wrap +msgid "%@{name@}" +msgstr "" + +#. type: table +#: doc/guix.texi:12577 +msgid "insert the value of the specified IPP attribute" +msgstr "" + +#. type: item +#: doc/guix.texi:12578 +#, no-wrap +msgid "%C" +msgstr "" + +#. type: table +#: doc/guix.texi:12580 +msgid "insert the number of copies for the current page" +msgstr "" + +#. type: item +#: doc/guix.texi:12581 +#, no-wrap +msgid "%P" +msgstr "" + +#. type: table +#: doc/guix.texi:12583 +msgid "insert the current page number" +msgstr "" + +#. type: item +#: doc/guix.texi:12584 +#, no-wrap +msgid "%T" +msgstr "" + +#. type: table +#: doc/guix.texi:12586 +msgid "insert the current date and time in common log format" +msgstr "" + +#. type: item +#: doc/guix.texi:12587 +#, no-wrap +msgid "%j" +msgstr "" + +#. type: table +#: doc/guix.texi:12589 +msgid "insert the job ID" +msgstr "" + +#. type: item +#: doc/guix.texi:12590 doc/guix.texi:13979 +#, no-wrap +msgid "%p" +msgstr "" + +#. type: table +#: doc/guix.texi:12592 +msgid "insert the printer name" +msgstr "" + +#. type: item +#: doc/guix.texi:12593 doc/guix.texi:14002 +#, no-wrap +msgid "%u" +msgstr "" + +#. type: table +#: doc/guix.texi:12595 +msgid "insert the username" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12601 +msgid "A value of the empty string disables page logging. The string @code{%p %u %j %T %P %C %@{job-billing@} %@{job-originating-host-name@} %@{job-name@} %@{media@} %@{sides@}} creates a page log with the standard items." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12605 +#, no-wrap +msgid "{@code{cups-configuration} parameter} environment-variables environment-variables" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12608 +msgid "Passes the specified environment variable(s) to child processes; a list of strings." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12612 +#, no-wrap +msgid "{@code{cups-configuration} parameter} policy-configuration-list policies" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12614 +msgid "Specifies named access control policies." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12616 +msgid "Available @code{policy-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12617 +#, no-wrap +msgid "{@code{policy-configuration} parameter} string name" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12619 +msgid "Name of the policy." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12621 +#, no-wrap +msgid "{@code{policy-configuration} parameter} string job-private-access" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12631 +msgid "Specifies an access list for a job's private values. @code{@@ACL} maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values. @code{@@OWNER} maps to the job's owner. @code{@@SYSTEM} maps to the groups listed for the @code{system-group} field of the @code{files-config} configuration, which is reified into the @code{cups-files.conf(5)} file. Other possible elements of the access list include specific user names, and @code{@@@var{group}} to indicate members of a specific group. The access list may also be simply @code{all} or @code{default}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12633 doc/guix.texi:12655 +msgid "Defaults to @samp{\"@@OWNER @@SYSTEM\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12635 +#, no-wrap +msgid "{@code{policy-configuration} parameter} string job-private-values" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12638 doc/guix.texi:12660 +msgid "Specifies the list of job values to make private, or @code{all}, @code{default}, or @code{none}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12641 +msgid "Defaults to @samp{\"job-name job-originating-host-name job-originating-user-name phone\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12643 +#, no-wrap +msgid "{@code{policy-configuration} parameter} string subscription-private-access" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12653 +msgid "Specifies an access list for a subscription's private values. @code{@@ACL} maps to the printer's requesting-user-name-allowed or requesting-user-name-denied values. @code{@@OWNER} maps to the job's owner. @code{@@SYSTEM} maps to the groups listed for the @code{system-group} field of the @code{files-config} configuration, which is reified into the @code{cups-files.conf(5)} file. Other possible elements of the access list include specific user names, and @code{@@@var{group}} to indicate members of a specific group. The access list may also be simply @code{all} or @code{default}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12657 +#, no-wrap +msgid "{@code{policy-configuration} parameter} string subscription-private-values" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12663 +msgid "Defaults to @samp{\"notify-events notify-pull-method notify-recipient-uri notify-subscriber-user-name notify-user-data\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12665 +#, no-wrap +msgid "{@code{policy-configuration} parameter} operation-access-control-list access-controls" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12667 +msgid "Access control by IPP operation." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12672 +#, no-wrap +msgid "{@code{cups-configuration} parameter} boolean-or-non-negative-integer preserve-job-files" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12677 +msgid "Specifies whether job files (documents) are preserved after a job is printed. If a numeric value is specified, job files are preserved for the indicated number of seconds after printing. Otherwise a boolean value applies indefinitely." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12679 +msgid "Defaults to @samp{86400}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12681 +#, no-wrap +msgid "{@code{cups-configuration} parameter} boolean-or-non-negative-integer preserve-job-history" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12686 +msgid "Specifies whether the job history is preserved after a job is printed. If a numeric value is specified, the job history is preserved for the indicated number of seconds after printing. If @code{#t}, the job history is preserved until the MaxJobs limit is reached." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12690 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer reload-timeout" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12693 +msgid "Specifies the amount of time to wait for job completion before restarting the scheduler." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12697 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string rip-cache" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12700 +msgid "Specifies the maximum amount of memory to use when converting documents into bitmaps for a printer." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12702 +msgid "Defaults to @samp{\"128m\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12704 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string server-admin" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12706 +msgid "Specifies the email address of the server administrator." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12708 +msgid "Defaults to @samp{\"root@@localhost.localdomain\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12710 +#, no-wrap +msgid "{@code{cups-configuration} parameter} host-name-list-or-* server-alias" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12718 +msgid "The ServerAlias directive is used for HTTP Host header validation when clients connect to the scheduler from external interfaces. Using the special name @code{*} can expose your system to known browser-based DNS rebinding attacks, even when accessing sites through a firewall. If the auto-discovery of alternate names does not work, we recommend listing each alternate name with a ServerAlias directive instead of using @code{*}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12720 +msgid "Defaults to @samp{*}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12722 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string server-name" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12724 +msgid "Specifies the fully-qualified host name of the server." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12726 +msgid "Defaults to @samp{\"localhost\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12728 +#, no-wrap +msgid "{@code{cups-configuration} parameter} server-tokens server-tokens" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12736 +msgid "Specifies what information is included in the Server header of HTTP responses. @code{None} disables the Server header. @code{ProductOnly} reports @code{CUPS}. @code{Major} reports @code{CUPS 2}. @code{Minor} reports @code{CUPS 2.0}. @code{Minimal} reports @code{CUPS 2.0.0}. @code{OS} reports @code{CUPS 2.0.0 (@var{uname})} where @var{uname} is the output of the @code{uname} command. @code{Full} reports @code{CUPS 2.0.0 (@var{uname}) IPP/2.0}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12738 +msgid "Defaults to @samp{Minimal}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12740 +#, no-wrap +msgid "{@code{cups-configuration} parameter} string set-env" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12742 +msgid "Set the specified environment variable to be passed to child processes." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12744 +msgid "Defaults to @samp{\"variable value\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12746 +#, no-wrap +msgid "{@code{cups-configuration} parameter} multiline-string-list ssl-listen" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12751 +msgid "Listens on the specified interfaces for encrypted connections. Valid values are of the form @var{address}:@var{port}, where @var{address} is either an IPv6 address enclosed in brackets, an IPv4 address, or @code{*} to indicate all addresses." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12755 +#, no-wrap +msgid "{@code{cups-configuration} parameter} ssl-options ssl-options" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12762 +msgid "Sets encryption options. By default, CUPS only supports encryption using TLS v1.0 or higher using known secure cipher suites. The @code{AllowRC4} option enables the 128-bit RC4 cipher suites, which are required for some older clients that do not implement newer ones. The @code{AllowSSL3} option enables SSL v3.0, which is required for some older clients that do not support TLS v1.0." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12766 +#, no-wrap +msgid "{@code{cups-configuration} parameter} boolean strict-conformance?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12769 +msgid "Specifies whether the scheduler requires clients to strictly adhere to the IPP specifications." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12773 +#, no-wrap +msgid "{@code{cups-configuration} parameter} non-negative-integer timeout" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12775 +msgid "Specifies the HTTP request timeout, in seconds." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12780 +#, no-wrap +msgid "{@code{cups-configuration} parameter} boolean web-interface?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12782 +msgid "Specifies whether the web interface is enabled." +msgstr "" + +#. type: Plain text +#: doc/guix.texi:12792 +msgid "At this point you're probably thinking ``oh dear, Guix manual, I like you but you can stop already with the configuration options''. Indeed. However, one more point: it could be that you have an existing @code{cupsd.conf} that you want to use. In that case, you can pass an @code{opaque-cups-configuration} as the configuration of a @code{cups-service-type}." +msgstr "" + +#. type: Plain text +#: doc/guix.texi:12794 +msgid "Available @code{opaque-cups-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12795 +#, no-wrap +msgid "{@code{opaque-cups-configuration} parameter} package cups" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:12799 +#, no-wrap msgid "{@code{opaque-cups-configuration} parameter} string cupsd.conf" msgstr "" #. type: deftypevr -#: doc/guix.texi:12496 +#: doc/guix.texi:12801 msgid "The contents of the @code{cupsd.conf}, as a string." msgstr "" #. type: deftypevr -#: doc/guix.texi:12498 +#: doc/guix.texi:12803 #, no-wrap msgid "{@code{opaque-cups-configuration} parameter} string cups-files.conf" msgstr "" #. type: deftypevr -#: doc/guix.texi:12500 +#: doc/guix.texi:12805 msgid "The contents of the @code{cups-files.conf} file, as a string." msgstr "" #. type: Plain text -#: doc/guix.texi:12505 -msgid "" -"For example, if your @code{cupsd.conf} and @code{cups-files.conf} are in " -"strings of the same name, you could instantiate a CUPS service like this:" +#: doc/guix.texi:12810 +msgid "For example, if your @code{cupsd.conf} and @code{cups-files.conf} are in strings of the same name, you could instantiate a CUPS service like this:" msgstr "" #. type: example -#: doc/guix.texi:12511 +#: doc/guix.texi:12816 #, no-wrap msgid "" "(service cups-service-type\n" @@ -28006,145 +22835,114 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:12522 -msgid "" -"The @code{(gnu services desktop)} module provides services that are usually " -"useful in the context of a ``desktop'' setup---that is, on a machine running " -"a graphical display server, possibly with graphical user interfaces, etc. " -"It also defines services that provide specific desktop environments like " -"GNOME, XFCE or MATE." +#: doc/guix.texi:12827 +msgid "The @code{(gnu services desktop)} module provides services that are usually useful in the context of a ``desktop'' setup---that is, on a machine running a graphical display server, possibly with graphical user interfaces, etc. It also defines services that provide specific desktop environments like GNOME, XFCE or MATE." msgstr "" #. type: Plain text -#: doc/guix.texi:12526 -msgid "" -"To simplify things, the module defines a variable containing the set of " -"services that users typically expect on a machine with a graphical " -"environment and networking:" +#: doc/guix.texi:12831 +msgid "To simplify things, the module defines a variable containing the set of services that users typically expect on a machine with a graphical environment and networking:" msgstr "" #. type: defvr -#: doc/guix.texi:12527 +#: doc/guix.texi:12832 #, no-wrap msgid "{Scheme Variable} %desktop-services" msgstr "" #. type: defvr -#: doc/guix.texi:12530 -msgid "" -"This is a list of services that builds upon @var{%base-services} and adds or " -"adjusts services for a typical ``desktop'' setup." +#: doc/guix.texi:12835 +msgid "This is a list of services that builds upon @var{%base-services} and adds or adjusts services for a typical ``desktop'' setup." msgstr "" #. type: defvr -#: doc/guix.texi:12540 -msgid "" -"In particular, it adds a graphical login manager (@pxref{X Window, " -"@code{slim-service}}), screen lockers, a network management tool " -"(@pxref{Networking Services, @code{network-manager-service-type}}), energy " -"and color management services, the @code{elogind} login and seat manager, " -"the Polkit privilege service, the GeoClue location service, the " -"AccountsService daemon that allows authorized users change system passwords, " -"an NTP client (@pxref{Networking Services}), the Avahi daemon, and has the " -"name service switch service configured to be able to use @code{nss-mdns} " -"(@pxref{Name Service Switch, mDNS})." +#: doc/guix.texi:12845 +msgid "In particular, it adds a graphical login manager (@pxref{X Window, @code{slim-service}}), screen lockers, a network management tool (@pxref{Networking Services, @code{network-manager-service-type}}), energy and color management services, the @code{elogind} login and seat manager, the Polkit privilege service, the GeoClue location service, the AccountsService daemon that allows authorized users change system passwords, an NTP client (@pxref{Networking Services}), the Avahi daemon, and has the name service switch service configured to be able to use @code{nss-mdns} (@pxref{Name Service Switch, mDNS})." msgstr "" #. type: Plain text -#: doc/guix.texi:12545 -msgid "" -"The @var{%desktop-services} variable can be used as the @code{services} " -"field of an @code{operating-system} declaration (@pxref{operating-system " -"Reference, @code{services}})." +#: doc/guix.texi:12850 +msgid "The @var{%desktop-services} variable can be used as the @code{services} field of an @code{operating-system} declaration (@pxref{operating-system Reference, @code{services}})." msgstr "" #. type: Plain text -#: doc/guix.texi:12565 -msgid "" -"Additionally, the @code{gnome-desktop-service}, @code{xfce-desktop-service} " -"and @code{mate-desktop-service} procedures can add GNOME, XFCE and/or MATE " -"to a system. To ``add GNOME'' means that system-level services like the " -"backlight adjustment helpers and the power management utilities are added to " -"the system, extending @code{polkit} and @code{dbus} appropriately, allowing " -"GNOME to operate with elevated privileges on a limited number of special-" -"purpose system interfaces. Additionally, adding a service made by " -"@code{gnome-desktop-service} adds the GNOME metapackage to the system " -"profile. Likewise, adding the XFCE service not only adds the @code{xfce} " -"metapackage to the system profile, but it also gives the Thunar file manager " -"the ability to open a ``root-mode'' file management window, if the user " -"authenticates using the administrator's password via the standard polkit " -"graphical interface. To ``add MATE'' means that @code{polkit} and " -"@code{dbus} are extended appropriately, allowing MATE to operate with " -"elevated privileges on a limited number of special-purpose system " -"interfaces. Additionally, adding a service made by @code{mate-desktop-" -"service} adds the MATE metapackage to the system profile." +#: doc/guix.texi:12873 +msgid "Additionally, the @code{gnome-desktop-service}, @code{xfce-desktop-service}, @code{mate-desktop-service} and @code{enlightenment-desktop-service-type} procedures can add GNOME, XFCE, MATE and/or Enlightenment to a system. To ``add GNOME'' means that system-level services like the backlight adjustment helpers and the power management utilities are added to the system, extending @code{polkit} and @code{dbus} appropriately, allowing GNOME to operate with elevated privileges on a limited number of special-purpose system interfaces. Additionally, adding a service made by @code{gnome-desktop-service} adds the GNOME metapackage to the system profile. Likewise, adding the XFCE service not only adds the @code{xfce} metapackage to the system profile, but it also gives the Thunar file manager the ability to open a ``root-mode'' file management window, if the user authenticates using the administrator's password via the standard polkit graphical interface. To ``add MATE'' means that @code{polkit} and @code{dbus} are extended appropriately, allowing MATE to operate with elevated privileges on a limited number of special-purpose system interfaces. Additionally, adding a service made by @code{mate-desktop-service} adds the MATE metapackage to the system profile. ``Adding ENLIGHTENMENT'' means that @code{dbus} is extended appropriately, and several of Enlightenment's binaries are set as setuid, allowing Enlightenment's screen locker and other functionality to work as expetected." msgstr "" #. type: Plain text -#: doc/guix.texi:12574 -msgid "" -"The desktop environments in Guix use the Xorg display server by default. If " -"you'd like to use the newer display server protocol called Wayland, you need " -"to use the @code{sddm-service} instead of the @code{slim-service} for the " -"graphical login manager. You should then select the ``GNOME (Wayland)'' " -"session in SDDM. Alternatively you can also try starting GNOME on Wayland " -"manually from a TTY with the command ``XDG_SESSION_TYPE=wayland exec dbus-" -"run-session gnome-session``. Currently only GNOME has support for Wayland." +#: doc/guix.texi:12882 +msgid "The desktop environments in Guix use the Xorg display server by default. If you'd like to use the newer display server protocol called Wayland, you need to use the @code{sddm-service} instead of the @code{slim-service} for the graphical login manager. You should then select the ``GNOME (Wayland)'' session in SDDM. Alternatively you can also try starting GNOME on Wayland manually from a TTY with the command ``XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session``. Currently only GNOME has support for Wayland." msgstr "" #. type: deffn -#: doc/guix.texi:12575 +#: doc/guix.texi:12883 #, no-wrap msgid "{Scheme Procedure} gnome-desktop-service" msgstr "" #. type: deffn -#: doc/guix.texi:12579 -msgid "" -"Return a service that adds the @code{gnome} package to the system profile, " -"and extends polkit with the actions from @code{gnome-settings-daemon}." +#: doc/guix.texi:12887 +msgid "Return a service that adds the @code{gnome} package to the system profile, and extends polkit with the actions from @code{gnome-settings-daemon}." msgstr "" #. type: deffn -#: doc/guix.texi:12581 +#: doc/guix.texi:12889 #, no-wrap msgid "{Scheme Procedure} xfce-desktop-service" msgstr "" #. type: deffn -#: doc/guix.texi:12586 -msgid "" -"Return a service that adds the @code{xfce} package to the system profile, " -"and extends polkit with the ability for @code{thunar} to manipulate the file " -"system as root from within a user session, after the user has authenticated " -"with the administrator's password." +#: doc/guix.texi:12894 +msgid "Return a service that adds the @code{xfce} package to the system profile, and extends polkit with the ability for @code{thunar} to manipulate the file system as root from within a user session, after the user has authenticated with the administrator's password." msgstr "" #. type: deffn -#: doc/guix.texi:12588 +#: doc/guix.texi:12896 #, no-wrap msgid "{Scheme Procedure} mate-desktop-service" msgstr "" #. type: deffn -#: doc/guix.texi:12592 -msgid "" -"Return a service that adds the @code{mate} package to the system profile, " -"and extends polkit with the actions from @code{mate-settings-daemon}." +#: doc/guix.texi:12900 +msgid "Return a service that adds the @code{mate} package to the system profile, and extends polkit with the actions from @code{mate-settings-daemon}." msgstr "" +#. type: deffn +#: doc/guix.texi:12902 +#, no-wrap +msgid "{Scheme Procedure} enlightenment-desktop-service-type" +msgstr "{Procédure Scheme} enlightenment-desktop-service-type" + +#. type: deffn +#: doc/guix.texi:12905 +msgid "Return a service that adds the @code{enlightenment} package to the system profile, and extends dbus with actions from @code{efl}." +msgstr "" + +#. type: deftp +#: doc/guix.texi:12907 +#, no-wrap +msgid "{Data Type} enlightenment-desktop-service-configuration" +msgstr "" + +#. type: item +#: doc/guix.texi:12909 +#, no-wrap +msgid "@code{enlightenment} (default @code{enlightenment})" +msgstr "@code{enlightenment} (par défaut : @code{enlightenment})" + +#. type: table +#: doc/guix.texi:12911 +msgid "The enlightenment package to use." +msgstr "Le paquet enlightenment à utiliser." + #. type: Plain text -#: doc/guix.texi:12599 -msgid "" -"Because the GNOME, XFCE and MATE desktop services pull in so many packages, " -"the default @code{%desktop-services} variable doesn't include either of them " -"by default. To add GNOME, XFCE or MATE, just @code{cons} them onto " -"@code{%desktop-services} in the @code{services} field of your " -"@code{operating-system}:" +#: doc/guix.texi:12919 +msgid "Because the GNOME, XFCE and MATE desktop services pull in so many packages, the default @code{%desktop-services} variable doesn't include any of them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto @code{%desktop-services} in the @code{services} field of your @code{operating-system}:" msgstr "" #. type: example -#: doc/guix.texi:12610 +#: doc/guix.texi:12930 #, no-wrap msgid "" "(use-modules (gnu))\n" @@ -28159,862 +22957,817 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:12614 -msgid "" -"These desktop environments will then be available as options in the " -"graphical login window." +#: doc/guix.texi:12934 +msgid "These desktop environments will then be available as options in the graphical login window." msgstr "" #. type: Plain text -#: doc/guix.texi:12618 -msgid "" -"The actual service definitions included in @code{%desktop-services} and " -"provided by @code{(gnu services dbus)} and @code{(gnu services desktop)} are " -"described below." +#: doc/guix.texi:12938 +msgid "The actual service definitions included in @code{%desktop-services} and provided by @code{(gnu services dbus)} and @code{(gnu services desktop)} are described below." msgstr "" #. type: deffn -#: doc/guix.texi:12619 +#: doc/guix.texi:12939 #, no-wrap msgid "{Scheme Procedure} dbus-service [#:dbus @var{dbus}] [#:services '()]" msgstr "" #. type: deffn -#: doc/guix.texi:12622 -msgid "" -"Return a service that runs the ``system bus'', using @var{dbus}, with " -"support for @var{services}." +#: doc/guix.texi:12942 +msgid "Return a service that runs the ``system bus'', using @var{dbus}, with support for @var{services}." msgstr "" #. type: deffn -#: doc/guix.texi:12626 -msgid "" -"@uref{http://dbus.freedesktop.org/, D-Bus} is an inter-process communication " -"facility. Its system bus is used to allow system services to communicate " -"and to be notified of system-wide events." +#: doc/guix.texi:12946 +msgid "@uref{http://dbus.freedesktop.org/, D-Bus} is an inter-process communication facility. Its system bus is used to allow system services to communicate and to be notified of system-wide events." msgstr "" #. type: deffn -#: doc/guix.texi:12631 -msgid "" -"@var{services} must be a list of packages that provide an @file{etc/dbus-1/" -"system.d} directory containing additional D-Bus configuration and policy " -"files. For example, to allow avahi-daemon to use the system bus, " -"@var{services} must be equal to @code{(list avahi)}." +#: doc/guix.texi:12951 +msgid "@var{services} must be a list of packages that provide an @file{etc/dbus-1/system.d} directory containing additional D-Bus configuration and policy files. For example, to allow avahi-daemon to use the system bus, @var{services} must be equal to @code{(list avahi)}." msgstr "" #. type: deffn -#: doc/guix.texi:12633 +#: doc/guix.texi:12953 #, no-wrap msgid "{Scheme Procedure} elogind-service [#:config @var{config}]" msgstr "" #. type: deffn -#: doc/guix.texi:12639 -msgid "" -"Return a service that runs the @code{elogind} login and seat management " -"daemon. @uref{https://github.com/elogind/elogind, Elogind} exposes a D-Bus " -"interface that can be used to know which users are logged in, know what kind " -"of sessions they have open, suspend the system, inhibit system suspend, " -"reboot the system, and other tasks." +#: doc/guix.texi:12959 +msgid "Return a service that runs the @code{elogind} login and seat management daemon. @uref{https://github.com/elogind/elogind, Elogind} exposes a D-Bus interface that can be used to know which users are logged in, know what kind of sessions they have open, suspend the system, inhibit system suspend, reboot the system, and other tasks." msgstr "" #. type: deffn -#: doc/guix.texi:12643 -msgid "" -"Elogind handles most system-level power events for a computer, for example " -"suspending the system when a lid is closed, or shutting it down when the " -"power button is pressed." +#: doc/guix.texi:12963 +msgid "Elogind handles most system-level power events for a computer, for example suspending the system when a lid is closed, or shutting it down when the power button is pressed." msgstr "" #. type: deffn -#: doc/guix.texi:12648 -msgid "" -"The @var{config} keyword argument specifies the configuration for elogind, " -"and should be the result of an @code{(elogind-configuration (@var{parameter} " -"@var{value})...)} invocation. Available parameters and their default values " -"are:" +#: doc/guix.texi:12968 +msgid "The @var{config} keyword argument specifies the configuration for elogind, and should be the result of an @code{(elogind-configuration (@var{parameter} @var{value})...)} invocation. Available parameters and their default values are:" msgstr "" #. type: item -#: doc/guix.texi:12650 +#: doc/guix.texi:12970 #, no-wrap msgid "kill-user-processes?" msgstr "" #. type: code{#1} -#: doc/guix.texi:12652 doc/guix.texi:12670 doc/guix.texi:12672 -#: doc/guix.texi:12674 doc/guix.texi:12686 +#: doc/guix.texi:12972 doc/guix.texi:12990 doc/guix.texi:12992 +#: doc/guix.texi:12994 doc/guix.texi:13006 msgid "#f" msgstr "" #. type: item -#: doc/guix.texi:12652 +#: doc/guix.texi:12972 #, no-wrap msgid "kill-only-users" msgstr "" #. type: code{#1} -#: doc/guix.texi:12654 doc/guix.texi:12692 +#: doc/guix.texi:12974 doc/guix.texi:13012 msgid "()" msgstr "" #. type: item -#: doc/guix.texi:12654 +#: doc/guix.texi:12974 #, no-wrap msgid "kill-exclude-users" msgstr "" #. type: code{#1} -#: doc/guix.texi:12656 +#: doc/guix.texi:12976 msgid "(\"root\")" msgstr "" #. type: item -#: doc/guix.texi:12656 +#: doc/guix.texi:12976 #, no-wrap msgid "inhibit-delay-max-seconds" msgstr "" #. type: code{#1} -#: doc/guix.texi:12658 +#: doc/guix.texi:12978 msgid "5" msgstr "" #. type: item -#: doc/guix.texi:12658 +#: doc/guix.texi:12978 #, no-wrap msgid "handle-power-key" msgstr "" #. type: code{#1} -#: doc/guix.texi:12660 +#: doc/guix.texi:12980 msgid "poweroff" msgstr "" #. type: item -#: doc/guix.texi:12660 +#: doc/guix.texi:12980 #, no-wrap msgid "handle-suspend-key" msgstr "" #. type: code{#1} -#: doc/guix.texi:12662 doc/guix.texi:12666 +#: doc/guix.texi:12982 doc/guix.texi:12986 msgid "suspend" msgstr "" #. type: item -#: doc/guix.texi:12662 +#: doc/guix.texi:12982 #, no-wrap msgid "handle-hibernate-key" msgstr "" #. type: code{#1} -#: doc/guix.texi:12664 +#: doc/guix.texi:12984 msgid "hibernate" msgstr "" #. type: item -#: doc/guix.texi:12664 +#: doc/guix.texi:12984 #, no-wrap msgid "handle-lid-switch" msgstr "" #. type: item -#: doc/guix.texi:12666 +#: doc/guix.texi:12986 #, no-wrap msgid "handle-lid-switch-docked" msgstr "" #. type: code{#1} -#: doc/guix.texi:12668 doc/guix.texi:12680 +#: doc/guix.texi:12988 doc/guix.texi:13000 msgid "ignore" msgstr "" #. type: item -#: doc/guix.texi:12668 +#: doc/guix.texi:12988 #, no-wrap msgid "power-key-ignore-inhibited?" msgstr "" #. type: item -#: doc/guix.texi:12670 +#: doc/guix.texi:12990 #, no-wrap msgid "suspend-key-ignore-inhibited?" msgstr "" #. type: item -#: doc/guix.texi:12672 +#: doc/guix.texi:12992 #, no-wrap msgid "hibernate-key-ignore-inhibited?" msgstr "" #. type: item -#: doc/guix.texi:12674 +#: doc/guix.texi:12994 #, no-wrap msgid "lid-switch-ignore-inhibited?" msgstr "" #. type: code{#1} -#: doc/guix.texi:12676 doc/guix.texi:12688 +#: doc/guix.texi:12996 doc/guix.texi:13008 msgid "#t" msgstr "" #. type: item -#: doc/guix.texi:12676 +#: doc/guix.texi:12996 #, no-wrap msgid "holdoff-timeout-seconds" msgstr "" #. type: code{#1} -#: doc/guix.texi:12678 +#: doc/guix.texi:12998 msgid "30" msgstr "" #. type: item -#: doc/guix.texi:12678 +#: doc/guix.texi:12998 #, no-wrap msgid "idle-action" msgstr "" #. type: item -#: doc/guix.texi:12680 +#: doc/guix.texi:13000 #, no-wrap msgid "idle-action-seconds" msgstr "" #. type: code{#1} -#: doc/guix.texi:12682 +#: doc/guix.texi:13002 msgid "(* 30 60)" msgstr "" #. type: item -#: doc/guix.texi:12682 +#: doc/guix.texi:13002 #, no-wrap msgid "runtime-directory-size-percent" msgstr "" #. type: code{#1} -#: doc/guix.texi:12684 +#: doc/guix.texi:13004 msgid "10" msgstr "" #. type: item -#: doc/guix.texi:12684 +#: doc/guix.texi:13004 #, no-wrap msgid "runtime-directory-size" msgstr "" #. type: item -#: doc/guix.texi:12686 +#: doc/guix.texi:13006 #, no-wrap msgid "remove-ipc?" msgstr "" #. type: item -#: doc/guix.texi:12688 +#: doc/guix.texi:13008 #, no-wrap msgid "suspend-state" msgstr "" #. type: code{#1} -#: doc/guix.texi:12690 +#: doc/guix.texi:13010 msgid "(\"mem\" \"standby\" \"freeze\")" msgstr "" #. type: item -#: doc/guix.texi:12690 +#: doc/guix.texi:13010 #, no-wrap msgid "suspend-mode" msgstr "" #. type: item -#: doc/guix.texi:12692 +#: doc/guix.texi:13012 #, no-wrap msgid "hibernate-state" msgstr "" #. type: code{#1} -#: doc/guix.texi:12694 doc/guix.texi:12698 +#: doc/guix.texi:13014 doc/guix.texi:13018 msgid "(\"disk\")" msgstr "" #. type: item -#: doc/guix.texi:12694 +#: doc/guix.texi:13014 #, no-wrap msgid "hibernate-mode" msgstr "" #. type: code{#1} -#: doc/guix.texi:12696 +#: doc/guix.texi:13016 msgid "(\"platform\" \"shutdown\")" msgstr "" #. type: item -#: doc/guix.texi:12696 +#: doc/guix.texi:13016 #, no-wrap msgid "hybrid-sleep-state" msgstr "" #. type: item -#: doc/guix.texi:12698 +#: doc/guix.texi:13018 #, no-wrap msgid "hybrid-sleep-mode" msgstr "" #. type: code{#1} -#: doc/guix.texi:12700 +#: doc/guix.texi:13020 msgid "(\"suspend\" \"platform\" \"shutdown\")" msgstr "" #. type: deffn -#: doc/guix.texi:12703 +#: doc/guix.texi:13023 #, no-wrap msgid "{Scheme Procedure} accountsservice-service @" msgstr "" #. type: deffn -#: doc/guix.texi:12711 -msgid "" -"[#:accountsservice @var{accountsservice}] Return a service that runs " -"AccountsService, a system service that can list available accounts, change " -"their passwords, and so on. AccountsService integrates with PolicyKit to " -"enable unprivileged users to acquire the capability to modify their system " -"configuration. @uref{https://www.freedesktop.org/wiki/Software/" -"AccountsService/, the accountsservice web site} for more information." +#: doc/guix.texi:13031 +msgid "[#:accountsservice @var{accountsservice}] Return a service that runs AccountsService, a system service that can list available accounts, change their passwords, and so on. AccountsService integrates with PolicyKit to enable unprivileged users to acquire the capability to modify their system configuration. @uref{https://www.freedesktop.org/wiki/Software/AccountsService/, the accountsservice web site} for more information." msgstr "" #. type: deffn -#: doc/guix.texi:12714 -msgid "" -"The @var{accountsservice} keyword argument is the @code{accountsservice} " -"package to expose as a service." +#: doc/guix.texi:13034 +msgid "The @var{accountsservice} keyword argument is the @code{accountsservice} package to expose as a service." msgstr "" #. type: deffn -#: doc/guix.texi:12716 +#: doc/guix.texi:13036 #, no-wrap msgid "{Scheme Procedure} polkit-service @" msgstr "" #. type: deffn -#: doc/guix.texi:12725 -msgid "" -"[#:polkit @var{polkit}] Return a service that runs the @uref{http://www." -"freedesktop.org/wiki/Software/polkit/, Polkit privilege management service}, " -"which allows system administrators to grant access to privileged operations " -"in a structured way. By querying the Polkit service, a privileged system " -"component can know when it should grant additional capabilities to ordinary " -"users. For example, an ordinary user can be granted the capability to " -"suspend the system if the user is logged in locally." +#: doc/guix.texi:13045 +msgid "[#:polkit @var{polkit}] Return a service that runs the @uref{http://www.freedesktop.org/wiki/Software/polkit/, Polkit privilege management service}, which allows system administrators to grant access to privileged operations in a structured way. By querying the Polkit service, a privileged system component can know when it should grant additional capabilities to ordinary users. For example, an ordinary user can be granted the capability to suspend the system if the user is logged in locally." msgstr "" #. type: deffn -#: doc/guix.texi:12727 +#: doc/guix.texi:13047 #, no-wrap msgid "{Scheme Procedure} upower-service [#:upower @var{upower}] @" msgstr "" #. type: deffn -#: doc/guix.texi:12744 -msgid "" -"[#:watts-up-pro? #f] @ [#:poll-batteries? #t] @ [#:ignore-lid? #f] @ [#:use-" -"percentage-for-policy? #f] @ [#:percentage-low 10] @ [#:percentage-critical " -"3] @ [#:percentage-action 2] @ [#:time-low 1200] @ [#:time-critical 300] @ " -"[#:time-action 120] @ [#:critical-power-action 'hybrid-sleep] Return a " -"service that runs @uref{http://upower.freedesktop.org/, @command{upowerd}}, " -"a system-wide monitor for power consumption and battery levels, with the " -"given configuration settings. It implements the @code{org.freedesktop." -"UPower} D-Bus interface, and is notably used by GNOME." +#: doc/guix.texi:13064 +msgid "[#:watts-up-pro? #f] @ [#:poll-batteries? #t] @ [#:ignore-lid? #f] @ [#:use-percentage-for-policy? #f] @ [#:percentage-low 10] @ [#:percentage-critical 3] @ [#:percentage-action 2] @ [#:time-low 1200] @ [#:time-critical 300] @ [#:time-action 120] @ [#:critical-power-action 'hybrid-sleep] Return a service that runs @uref{http://upower.freedesktop.org/, @command{upowerd}}, a system-wide monitor for power consumption and battery levels, with the given configuration settings. It implements the @code{org.freedesktop.UPower} D-Bus interface, and is notably used by GNOME." msgstr "" #. type: deffn -#: doc/guix.texi:12746 +#: doc/guix.texi:13066 #, no-wrap msgid "{Scheme Procedure} udisks-service [#:udisks @var{udisks}]" msgstr "" #. type: deffn -#: doc/guix.texi:12751 -msgid "" -"Return a service for @uref{http://udisks.freedesktop.org/docs/latest/, " -"UDisks}, a @dfn{disk management} daemon that provides user interfaces with " -"notifications and ways to mount/unmount disks. Programs that talk to UDisks " -"include the @command{udisksctl} command, part of UDisks, and GNOME Disks." +#: doc/guix.texi:13071 +msgid "Return a service for @uref{http://udisks.freedesktop.org/docs/latest/, UDisks}, a @dfn{disk management} daemon that provides user interfaces with notifications and ways to mount/unmount disks. Programs that talk to UDisks include the @command{udisksctl} command, part of UDisks, and GNOME Disks." msgstr "" #. type: deffn -#: doc/guix.texi:12753 +#: doc/guix.texi:13073 #, no-wrap msgid "{Scheme Procedure} colord-service [#:colord @var{colord}]" msgstr "" #. type: deffn -#: doc/guix.texi:12759 -msgid "" -"Return a service that runs @command{colord}, a system service with a D-Bus " -"interface to manage the color profiles of input and output devices such as " -"screens and scanners. It is notably used by the GNOME Color Manager " -"graphical tool. See @uref{http://www.freedesktop.org/software/colord/, the " -"colord web site} for more information." +#: doc/guix.texi:13079 +msgid "Return a service that runs @command{colord}, a system service with a D-Bus interface to manage the color profiles of input and output devices such as screens and scanners. It is notably used by the GNOME Color Manager graphical tool. See @uref{http://www.freedesktop.org/software/colord/, the colord web site} for more information." msgstr "" #. type: deffn -#: doc/guix.texi:12761 +#: doc/guix.texi:13081 #, no-wrap msgid "{Scheme Procedure} geoclue-application name [#:allowed? #t] [#:system? #f] [#:users '()]" msgstr "" #. type: deffn -#: doc/guix.texi:12770 -msgid "" -"Return a configuration allowing an application to access GeoClue location " -"data. @var{name} is the Desktop ID of the application, without the @code{." -"desktop} part. If @var{allowed?} is true, the application will have access " -"to location information by default. The boolean @var{system?} value " -"indicates whether an application is a system component or not. Finally " -"@var{users} is a list of UIDs of all users for which this application is " -"allowed location info access. An empty users list means that all users are " -"allowed." +#: doc/guix.texi:13090 +msgid "Return a configuration allowing an application to access GeoClue location data. @var{name} is the Desktop ID of the application, without the @code{.desktop} part. If @var{allowed?} is true, the application will have access to location information by default. The boolean @var{system?} value indicates whether an application is a system component or not. Finally @var{users} is a list of UIDs of all users for which this application is allowed location info access. An empty users list means that all users are allowed." msgstr "" #. type: defvr -#: doc/guix.texi:12772 +#: doc/guix.texi:13092 #, no-wrap msgid "{Scheme Variable} %standard-geoclue-applications" msgstr "" #. type: defvr -#: doc/guix.texi:12779 -msgid "" -"The standard list of well-known GeoClue application configurations, granting " -"authority to the GNOME date-and-time utility to ask for the current location " -"in order to set the time zone, and allowing the IceCat and Epiphany web " -"browsers to request location information. IceCat and Epiphany both query " -"the user before allowing a web page to know the user's location." +#: doc/guix.texi:13099 +msgid "The standard list of well-known GeoClue application configurations, granting authority to the GNOME date-and-time utility to ask for the current location in order to set the time zone, and allowing the IceCat and Epiphany web browsers to request location information. IceCat and Epiphany both query the user before allowing a web page to know the user's location." msgstr "" #. type: deffn -#: doc/guix.texi:12781 +#: doc/guix.texi:13101 #, no-wrap msgid "{Scheme Procedure} geoclue-service [#:colord @var{colord}] @" msgstr "" #. type: deffn -#: doc/guix.texi:12794 -msgid "" -"[#:whitelist '()] @ [#:wifi-geolocation-url \"https://location.services." -"mozilla.com/v1/geolocate?key=geoclue\"] @ [#:submit-data? #f] [#:wifi-" -"submission-url \"https://location.services.mozilla.com/v1/submit?key=geoclue" -"\"] @ [#:submission-nick \"geoclue\"] @ [#:applications %standard-geoclue-" -"applications] Return a service that runs the GeoClue location service. This " -"service provides a D-Bus interface to allow applications to request access " -"to a user's physical location, and optionally to add information to online " -"location databases. See @uref{https://wiki.freedesktop.org/www/Software/" -"GeoClue/, the GeoClue web site} for more information." +#: doc/guix.texi:13114 +msgid "[#:whitelist '()] @ [#:wifi-geolocation-url \"https://location.services.mozilla.com/v1/geolocate?key=geoclue\"] @ [#:submit-data? #f] [#:wifi-submission-url \"https://location.services.mozilla.com/v1/submit?key=geoclue\"] @ [#:submission-nick \"geoclue\"] @ [#:applications %standard-geoclue-applications] Return a service that runs the GeoClue location service. This service provides a D-Bus interface to allow applications to request access to a user's physical location, and optionally to add information to online location databases. See @uref{https://wiki.freedesktop.org/www/Software/GeoClue/, the GeoClue web site} for more information." msgstr "" #. type: deffn -#: doc/guix.texi:12796 +#: doc/guix.texi:13116 #, no-wrap msgid "{Scheme Procedure} bluetooth-service [#:bluez @var{bluez}] @" msgstr "" #. type: deffn -#: doc/guix.texi:12803 -msgid "" -"[@w{#:auto-enable? #f}] Return a service that runs the @command{bluetoothd} " -"daemon, which manages all the Bluetooth devices and provides a number of D-" -"Bus interfaces. When AUTO-ENABLE? is true, the bluetooth controller is " -"powered automatically at boot, which can be useful when using a bluetooth " -"keyboard or mouse." +#: doc/guix.texi:13123 +msgid "[@w{#:auto-enable? #f}] Return a service that runs the @command{bluetoothd} daemon, which manages all the Bluetooth devices and provides a number of D-Bus interfaces. When AUTO-ENABLE? is true, the bluetooth controller is powered automatically at boot, which can be useful when using a bluetooth keyboard or mouse." msgstr "" #. type: deffn -#: doc/guix.texi:12805 +#: doc/guix.texi:13125 msgid "Users need to be in the @code{lp} group to access the D-Bus service." msgstr "" #. type: cindex -#: doc/guix.texi:12811 +#: doc/guix.texi:13130 +#, no-wrap +msgid "sound support" +msgstr "" + +#. type: cindex +#: doc/guix.texi:13131 +#, no-wrap +msgid "ALSA" +msgstr "" + +#. type: cindex +#: doc/guix.texi:13132 +#, no-wrap +msgid "PulseAudio, sound support" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:13139 +msgid "The @code{(gnu services sound)} module provides an @code{alsa-service-type} service to generate an ALSA @file{/etc/asound.conf} configuration file. This configuration file is what allows applications that produce sound using ALSA to be correctly handled." +msgstr "" + +#. type: deffn +#: doc/guix.texi:13140 +#, no-wrap +msgid "{Scheme Variable} alsa-service-type" +msgstr "{Variable Scheme} alsa-service-type" + +#. type: deffn +#: doc/guix.texi:13143 +msgid "This is the type for the @uref{https://alsa-project.org/, ALSA}, @command{alsa-configuration} record as in this example:" +msgstr "" + +#. type: example +#: doc/guix.texi:13146 +#, no-wrap +msgid "(service alsa-service-type)\n" +msgstr "" + +#. type: deffn +#: doc/guix.texi:13149 +msgid "See below for details about @code{alsa-configuration}." +msgstr "" + +#. type: deftp +#: doc/guix.texi:13151 +#, no-wrap +msgid "{Data Type} alsa-configuration" +msgstr "{Type de donnée} alsa-configuration" + +#. type: deftp +#: doc/guix.texi:13153 +msgid "Data type representing the configuration for @code{alsa-service}." +msgstr "" + +#. type: item +#: doc/guix.texi:13155 +#, no-wrap +msgid "@code{pulseaudio?} (default: @var{#t})" +msgstr "@code{pulseaudio?} (par défaut : @code{#t})" + +#. type: table +#: doc/guix.texi:13158 +msgid "Whether ALSA applications should transparently be made to use the @uref{http://www.pulseaudio.org/, PulseAudio} sound server." +msgstr "" + +#. type: table +#: doc/guix.texi:13162 +msgid "Using PulseAudio allows you to run several sound-producing applications at the same time and to individual control them @i{via} @command{pavucontrol}, among other things." +msgstr "" + +#. type: item +#: doc/guix.texi:13163 +#, no-wrap +msgid "@code{extra-options} (default: @var{\"\"})" +msgstr "@code{extra-options} (par défaut : @code{\"\"})" + +#. type: table +#: doc/guix.texi:13165 +msgid "String to append to the @file{asound.conf} file." +msgstr "" + +#. type: cindex +#: doc/guix.texi:13173 #, no-wrap msgid "SQL" msgstr "" #. type: Plain text -#: doc/guix.texi:12813 -msgid "" -"The @code{(gnu services databases)} module provides the following services." +#: doc/guix.texi:13175 +msgid "The @code{(gnu services databases)} module provides the following services." msgstr "" #. type: deffn -#: doc/guix.texi:12814 +#: doc/guix.texi:13176 #, no-wrap msgid "{Scheme Procedure} postgresql-service [#:postgresql postgresql] @" msgstr "" #. type: deffn -#: doc/guix.texi:12819 -msgid "" -"[#:config-file] [#:data-directory ``/var/lib/postgresql/data''] @ [#:port " -"5432] [#:locale ``en_US.utf8''] Return a service that runs @var{postgresql}, " -"the PostgreSQL database server." +#: doc/guix.texi:13181 +msgid "[#:config-file] [#:data-directory ``/var/lib/postgresql/data''] @ [#:port 5432] [#:locale ``en_US.utf8''] Return a service that runs @var{postgresql}, the PostgreSQL database server." msgstr "" #. type: deffn -#: doc/guix.texi:12823 -msgid "" -"The PostgreSQL daemon loads its runtime configuration from @var{config-" -"file}, creates a database cluster with @var{locale} as the default locale, " -"stored in @var{data-directory}. It then listens on @var{port}." +#: doc/guix.texi:13185 +msgid "The PostgreSQL daemon loads its runtime configuration from @var{config-file}, creates a database cluster with @var{locale} as the default locale, stored in @var{data-directory}. It then listens on @var{port}." msgstr "" #. type: deffn -#: doc/guix.texi:12825 +#: doc/guix.texi:13187 #, no-wrap msgid "{Scheme Procedure} mysql-service [#:config (mysql-configuration)]" msgstr "" #. type: deffn -#: doc/guix.texi:12828 -msgid "" -"Return a service that runs @command{mysqld}, the MySQL or MariaDB database " -"server." +#: doc/guix.texi:13190 +msgid "Return a service that runs @command{mysqld}, the MySQL or MariaDB database server." msgstr "" #. type: deffn -#: doc/guix.texi:12831 -msgid "" -"The optional @var{config} argument specifies the configuration for " -"@command{mysqld}, which should be a @code{} object." +#: doc/guix.texi:13193 +msgid "The optional @var{config} argument specifies the configuration for @command{mysqld}, which should be a @code{} object." msgstr "" #. type: deftp -#: doc/guix.texi:12833 +#: doc/guix.texi:13195 #, no-wrap msgid "{Data Type} mysql-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:12835 +#: doc/guix.texi:13197 msgid "Data type representing the configuration of @var{mysql-service}." msgstr "" #. type: item -#: doc/guix.texi:12837 +#: doc/guix.texi:13199 #, no-wrap msgid "@code{mysql} (default: @var{mariadb})" msgstr "" #. type: table -#: doc/guix.texi:12840 -msgid "" -"Package object of the MySQL database server, can be either @var{mariadb} or " -"@var{mysql}." +#: doc/guix.texi:13202 +msgid "Package object of the MySQL database server, can be either @var{mariadb} or @var{mysql}." msgstr "" #. type: table -#: doc/guix.texi:12843 -msgid "" -"For MySQL, a temporary root password will be displayed at activation time. " -"For MariaDB, the root password is empty." +#: doc/guix.texi:13205 +msgid "For MySQL, a temporary root password will be displayed at activation time. For MariaDB, the root password is empty." msgstr "" #. type: item -#: doc/guix.texi:12844 +#: doc/guix.texi:13206 #, no-wrap msgid "@code{port} (default: @code{3306})" msgstr "" #. type: table -#: doc/guix.texi:12846 +#: doc/guix.texi:13208 msgid "TCP port on which the database server listens for incoming connections." msgstr "" #. type: defvr -#: doc/guix.texi:12849 +#: doc/guix.texi:13211 #, no-wrap msgid "{Scheme Variable} memcached-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:12853 -msgid "" -"This is the service type for the @uref{https://memcached.org/, Memcached} " -"service, which provides a distributed in memory cache. The value for the " -"service type is a @code{memcached-configuration} object." +#: doc/guix.texi:13215 +msgid "This is the service type for the @uref{https://memcached.org/, Memcached} service, which provides a distributed in memory cache. The value for the service type is a @code{memcached-configuration} object." msgstr "" #. type: example -#: doc/guix.texi:12857 +#: doc/guix.texi:13219 #, no-wrap msgid "(service memcached-service-type)\n" msgstr "" #. type: deftp -#: doc/guix.texi:12859 +#: doc/guix.texi:13221 #, no-wrap msgid "{Data Type} memcached-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:12861 +#: doc/guix.texi:13223 msgid "Data type representing the configuration of memcached." msgstr "" #. type: item -#: doc/guix.texi:12863 +#: doc/guix.texi:13225 #, no-wrap msgid "@code{memcached} (default: @code{memcached})" msgstr "" #. type: table -#: doc/guix.texi:12865 +#: doc/guix.texi:13227 msgid "The Memcached package to use." msgstr "" #. type: item -#: doc/guix.texi:12866 +#: doc/guix.texi:13228 #, no-wrap msgid "@code{interfaces} (default: @code{'(\"0.0.0.0\")})" msgstr "" #. type: table -#: doc/guix.texi:12868 +#: doc/guix.texi:13230 msgid "Network interfaces on which to listen." msgstr "" #. type: item -#: doc/guix.texi:12869 +#: doc/guix.texi:13231 #, no-wrap msgid "@code{tcp-port} (default: @code{11211})" msgstr "" #. type: table -#: doc/guix.texi:12871 +#: doc/guix.texi:13233 msgid "Port on which to accept connections on," msgstr "" #. type: item -#: doc/guix.texi:12872 +#: doc/guix.texi:13234 #, no-wrap msgid "@code{udp-port} (default: @code{11211})" msgstr "" #. type: table -#: doc/guix.texi:12875 -msgid "" -"Port on which to accept UDP connections on, a value of 0 will disable " -"listening on a UDP socket." +#: doc/guix.texi:13237 +msgid "Port on which to accept UDP connections on, a value of 0 will disable listening on a UDP socket." msgstr "" #. type: item -#: doc/guix.texi:12876 +#: doc/guix.texi:13238 #, no-wrap msgid "@code{additional-options} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:12878 +#: doc/guix.texi:13240 msgid "Additional command line options to pass to @code{memcached}." msgstr "" #. type: defvr -#: doc/guix.texi:12881 +#: doc/guix.texi:13243 #, no-wrap msgid "{Scheme Variable} mongodb-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:12884 -msgid "" -"This is the service type for @uref{https://www.mongodb.com/, MongoDB}. The " -"value for the service type is a @code{mongodb-configuration} object." +#: doc/guix.texi:13246 +msgid "This is the service type for @uref{https://www.mongodb.com/, MongoDB}. The value for the service type is a @code{mongodb-configuration} object." msgstr "" #. type: example -#: doc/guix.texi:12888 +#: doc/guix.texi:13250 #, no-wrap msgid "(service mongodb-service-type)\n" msgstr "" #. type: deftp -#: doc/guix.texi:12890 +#: doc/guix.texi:13252 #, no-wrap msgid "{Data Type} mongodb-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:12892 +#: doc/guix.texi:13254 msgid "Data type representing the configuration of mongodb." msgstr "" #. type: item -#: doc/guix.texi:12894 +#: doc/guix.texi:13256 #, no-wrap msgid "@code{mongodb} (default: @code{mongodb})" msgstr "" #. type: table -#: doc/guix.texi:12896 +#: doc/guix.texi:13258 msgid "The MongoDB package to use." msgstr "" #. type: item -#: doc/guix.texi:12897 +#: doc/guix.texi:13259 #, no-wrap msgid "@code{config-file} (default: @code{%default-mongodb-configuration-file})" msgstr "" #. type: table -#: doc/guix.texi:12899 +#: doc/guix.texi:13261 msgid "The configuration file for MongoDB." msgstr "" #. type: item -#: doc/guix.texi:12900 +#: doc/guix.texi:13262 #, no-wrap msgid "@code{data-directory} (default: @code{\"/var/lib/mongodb\"})" msgstr "" #. type: table -#: doc/guix.texi:12904 -msgid "" -"This value is used to create the directory, so that it exists and is owned " -"by the mongodb user. It should match the data-directory which MongoDB is " -"configured to use through the configuration file." +#: doc/guix.texi:13266 +msgid "This value is used to create the directory, so that it exists and is owned by the mongodb user. It should match the data-directory which MongoDB is configured to use through the configuration file." msgstr "" #. type: defvr -#: doc/guix.texi:12907 +#: doc/guix.texi:13269 #, no-wrap msgid "{Scheme Variable} redis-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:12910 -msgid "" -"This is the service type for the @uref{https://redis.io/, Redis} key/value " -"store, whose value is a @code{redis-configuration} object." +#: doc/guix.texi:13272 +msgid "This is the service type for the @uref{https://redis.io/, Redis} key/value store, whose value is a @code{redis-configuration} object." msgstr "" #. type: deftp -#: doc/guix.texi:12912 +#: doc/guix.texi:13274 #, no-wrap msgid "{Data Type} redis-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:12914 +#: doc/guix.texi:13276 msgid "Data type representing the configuration of redis." msgstr "" #. type: item -#: doc/guix.texi:12916 +#: doc/guix.texi:13278 #, no-wrap msgid "@code{redis} (default: @code{redis})" msgstr "" #. type: table -#: doc/guix.texi:12918 +#: doc/guix.texi:13280 msgid "The Redis package to use." msgstr "" #. type: item -#: doc/guix.texi:12919 +#: doc/guix.texi:13281 #, no-wrap msgid "@code{bind} (default: @code{\"127.0.0.1\"})" msgstr "" #. type: table -#: doc/guix.texi:12921 +#: doc/guix.texi:13283 msgid "Network interface on which to listen." msgstr "" #. type: item -#: doc/guix.texi:12922 +#: doc/guix.texi:13284 #, no-wrap msgid "@code{port} (default: @code{6379})" msgstr "" #. type: table -#: doc/guix.texi:12925 -msgid "" -"Port on which to accept connections on, a value of 0 will disable listening " -"on a TCP socket." +#: doc/guix.texi:13287 +msgid "Port on which to accept connections on, a value of 0 will disable listening on a TCP socket." msgstr "" #. type: item -#: doc/guix.texi:12926 +#: doc/guix.texi:13288 #, no-wrap msgid "@code{working-directory} (default: @code{\"/var/lib/redis\"})" msgstr "" #. type: table -#: doc/guix.texi:12928 +#: doc/guix.texi:13290 msgid "Directory in which to store the database and related files." msgstr "" #. type: cindex -#: doc/guix.texi:12934 +#: doc/guix.texi:13296 #, no-wrap msgid "mail" msgstr "" #. type: code{#1} -#: doc/guix.texi:12935 doc/guix.texi:16030 +#: doc/guix.texi:13297 doc/guix.texi:16457 #, no-wrap msgid "email" msgstr "" #. type: Plain text -#: doc/guix.texi:12940 -msgid "" -"The @code{(gnu services mail)} module provides Guix service definitions for " -"email services: IMAP, POP3, and LMTP servers, as well as mail transport " -"agents (MTAs). Lots of acronyms! These services are detailed in the " -"subsections below." +#: doc/guix.texi:13302 +msgid "The @code{(gnu services mail)} module provides Guix service definitions for email services: IMAP, POP3, and LMTP servers, as well as mail transport agents (MTAs). Lots of acronyms! These services are detailed in the subsections below." msgstr "" #. type: subsubheading -#: doc/guix.texi:12941 +#: doc/guix.texi:13303 #, no-wrap msgid "Dovecot Service" msgstr "" #. type: deffn -#: doc/guix.texi:12943 +#: doc/guix.texi:13305 #, no-wrap msgid "{Scheme Procedure} dovecot-service [#:config (dovecot-configuration)]" msgstr "" #. type: deffn -#: doc/guix.texi:12945 +#: doc/guix.texi:13307 msgid "Return a service that runs the Dovecot IMAP/POP3/LMTP mail server." msgstr "" #. type: Plain text -#: doc/guix.texi:12955 -msgid "" -"By default, Dovecot does not need much configuration; the default " -"configuration object created by @code{(dovecot-configuration)} will suffice " -"if your mail is delivered to @code{~/Maildir}. A self-signed certificate " -"will be generated for TLS-protected connections, though Dovecot will also " -"listen on cleartext ports by default. There are a number of options, " -"though, which mail administrators might need to change, and as is the case " -"with other services, Guix allows the system administrator to specify these " -"parameters via a uniform Scheme interface." +#: doc/guix.texi:13317 +msgid "By default, Dovecot does not need much configuration; the default configuration object created by @code{(dovecot-configuration)} will suffice if your mail is delivered to @code{~/Maildir}. A self-signed certificate will be generated for TLS-protected connections, though Dovecot will also listen on cleartext ports by default. There are a number of options, though, which mail administrators might need to change, and as is the case with other services, Guix allows the system administrator to specify these parameters via a uniform Scheme interface." msgstr "" #. type: Plain text -#: doc/guix.texi:12958 -msgid "" -"For example, to specify that mail is located at @code{maildir~/.mail}, one " -"would instantiate the Dovecot service like this:" +#: doc/guix.texi:13320 +msgid "For example, to specify that mail is located at @code{maildir~/.mail}, one would instantiate the Dovecot service like this:" msgstr "" #. type: example -#: doc/guix.texi:12963 +#: doc/guix.texi:13325 #, no-wrap msgid "" "(dovecot-service #:config\n" @@ -29023,2840 +23776,2357 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:12971 -msgid "" -"The available configuration parameters follow. Each parameter definition is " -"preceded by its type; for example, @samp{string-list foo} indicates that the " -"@code{foo} parameter should be specified as a list of strings. There is " -"also a way to specify the configuration as a string, if you have an old " -"@code{dovecot.conf} file that you want to port over from some other system; " -"see the end for more details." +#: doc/guix.texi:13333 +msgid "The available configuration parameters follow. Each parameter definition is preceded by its type; for example, @samp{string-list foo} indicates that the @code{foo} parameter should be specified as a list of strings. There is also a way to specify the configuration as a string, if you have an old @code{dovecot.conf} file that you want to port over from some other system; see the end for more details." msgstr "" #. type: Plain text -#: doc/guix.texi:12981 +#: doc/guix.texi:13343 msgid "Available @code{dovecot-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:12982 +#: doc/guix.texi:13344 #, no-wrap msgid "{@code{dovecot-configuration} parameter} package dovecot" msgstr "" #. type: deftypevr -#: doc/guix.texi:12984 doc/guix.texi:14271 +#: doc/guix.texi:13346 doc/guix.texi:14633 msgid "The dovecot package." msgstr "" #. type: deftypevr -#: doc/guix.texi:12986 +#: doc/guix.texi:13348 #, no-wrap msgid "{@code{dovecot-configuration} parameter} comma-separated-string-list listen" msgstr "" #. type: deftypevr -#: doc/guix.texi:12992 -msgid "" -"A list of IPs or hosts where to listen for connections. @samp{*} listens on " -"all IPv4 interfaces, @samp{::} listens on all IPv6 interfaces. If you want " -"to specify non-default ports or anything more complex, customize the address " -"and port fields of the @samp{inet-listener} of the specific services you are " -"interested in." +#: doc/guix.texi:13354 +msgid "A list of IPs or hosts where to listen for connections. @samp{*} listens on all IPv4 interfaces, @samp{::} listens on all IPv6 interfaces. If you want to specify non-default ports or anything more complex, customize the address and port fields of the @samp{inet-listener} of the specific services you are interested in." msgstr "" #. type: deftypevr -#: doc/guix.texi:12994 +#: doc/guix.texi:13356 #, no-wrap msgid "{@code{dovecot-configuration} parameter} protocol-configuration-list protocols" msgstr "" #. type: deftypevr -#: doc/guix.texi:12997 -msgid "" -"List of protocols we want to serve. Available protocols include " -"@samp{imap}, @samp{pop3}, and @samp{lmtp}." +#: doc/guix.texi:13359 +msgid "List of protocols we want to serve. Available protocols include @samp{imap}, @samp{pop3}, and @samp{lmtp}." msgstr "" #. type: deftypevr -#: doc/guix.texi:12999 +#: doc/guix.texi:13361 msgid "Available @code{protocol-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:13000 +#: doc/guix.texi:13362 #, no-wrap msgid "{@code{protocol-configuration} parameter} string name" msgstr "" #. type: deftypevr -#: doc/guix.texi:13002 +#: doc/guix.texi:13364 msgid "The name of the protocol." msgstr "" #. type: deftypevr -#: doc/guix.texi:13004 +#: doc/guix.texi:13366 #, no-wrap msgid "{@code{protocol-configuration} parameter} string auth-socket-path" msgstr "" #. type: deftypevr -#: doc/guix.texi:13008 -msgid "" -"UNIX socket path to the master authentication server to find users. This is " -"used by imap (for shared users) and lda. It defaults to @samp{\"/var/run/" -"dovecot/auth-userdb\"}." +#: doc/guix.texi:13370 +msgid "UNIX socket path to the master authentication server to find users. This is used by imap (for shared users) and lda. It defaults to @samp{\"/var/run/dovecot/auth-userdb\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13010 +#: doc/guix.texi:13372 #, no-wrap msgid "{@code{protocol-configuration} parameter} space-separated-string-list mail-plugins" msgstr "" #. type: deftypevr -#: doc/guix.texi:13012 +#: doc/guix.texi:13374 msgid "Space separated list of plugins to load." msgstr "" #. type: deftypevr -#: doc/guix.texi:13014 +#: doc/guix.texi:13376 #, no-wrap msgid "{@code{protocol-configuration} parameter} non-negative-integer mail-max-userip-connections" msgstr "" #. type: deftypevr -#: doc/guix.texi:13018 -msgid "" -"Maximum number of IMAP connections allowed for a user from each IP address. " -"NOTE: The username is compared case-sensitively. Defaults to @samp{10}." +#: doc/guix.texi:13380 +msgid "Maximum number of IMAP connections allowed for a user from each IP address. NOTE: The username is compared case-sensitively. Defaults to @samp{10}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13022 +#: doc/guix.texi:13384 #, no-wrap msgid "{@code{dovecot-configuration} parameter} service-configuration-list services" msgstr "" #. type: deftypevr -#: doc/guix.texi:13026 -msgid "" -"List of services to enable. Available services include @samp{imap}, " -"@samp{imap-login}, @samp{pop3}, @samp{pop3-login}, @samp{auth}, and " -"@samp{lmtp}." +#: doc/guix.texi:13388 +msgid "List of services to enable. Available services include @samp{imap}, @samp{imap-login}, @samp{pop3}, @samp{pop3-login}, @samp{auth}, and @samp{lmtp}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13028 +#: doc/guix.texi:13390 msgid "Available @code{service-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:13029 +#: doc/guix.texi:13391 #, no-wrap msgid "{@code{service-configuration} parameter} string kind" msgstr "" #. type: deftypevr -#: doc/guix.texi:13034 -msgid "" -"The service kind. Valid values include @code{director}, @code{imap-login}, " -"@code{pop3-login}, @code{lmtp}, @code{imap}, @code{pop3}, @code{auth}, " -"@code{auth-worker}, @code{dict}, @code{tcpwrap}, @code{quota-warning}, or " -"anything else." +#: doc/guix.texi:13396 +msgid "The service kind. Valid values include @code{director}, @code{imap-login}, @code{pop3-login}, @code{lmtp}, @code{imap}, @code{pop3}, @code{auth}, @code{auth-worker}, @code{dict}, @code{tcpwrap}, @code{quota-warning}, or anything else." msgstr "" #. type: deftypevr -#: doc/guix.texi:13036 +#: doc/guix.texi:13398 #, no-wrap msgid "{@code{service-configuration} parameter} listener-configuration-list listeners" msgstr "" #. type: deftypevr -#: doc/guix.texi:13041 -msgid "" -"Listeners for the service. A listener is either a @code{unix-listener-" -"configuration}, a @code{fifo-listener-configuration}, or an @code{inet-" -"listener-configuration}. Defaults to @samp{()}." +#: doc/guix.texi:13403 +msgid "Listeners for the service. A listener is either a @code{unix-listener-configuration}, a @code{fifo-listener-configuration}, or an @code{inet-listener-configuration}. Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13043 +#: doc/guix.texi:13405 msgid "Available @code{unix-listener-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:13044 +#: doc/guix.texi:13406 #, no-wrap msgid "{@code{unix-listener-configuration} parameter} string path" msgstr "" #. type: deftypevr -#: doc/guix.texi:13047 doc/guix.texi:13070 -msgid "" -"Path to the file, relative to @code{base-dir} field. This is also used as " -"the section name." +#: doc/guix.texi:13409 doc/guix.texi:13432 +msgid "Path to the file, relative to @code{base-dir} field. This is also used as the section name." msgstr "" #. type: deftypevr -#: doc/guix.texi:13049 +#: doc/guix.texi:13411 #, no-wrap msgid "{@code{unix-listener-configuration} parameter} string mode" msgstr "" #. type: deftypevr -#: doc/guix.texi:13052 doc/guix.texi:13075 +#: doc/guix.texi:13414 doc/guix.texi:13437 msgid "The access mode for the socket. Defaults to @samp{\"0600\"}." msgstr "" -#. type: deftypevr -#: doc/guix.texi:13054 -#, no-wrap -msgid "{@code{unix-listener-configuration} parameter} string user" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13057 doc/guix.texi:13080 -msgid "The user to own the socket. Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13059 -#, no-wrap -msgid "{@code{unix-listener-configuration} parameter} string group" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13062 doc/guix.texi:13085 -msgid "The group to own the socket. Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13066 -msgid "Available @code{fifo-listener-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13067 -#, no-wrap -msgid "{@code{fifo-listener-configuration} parameter} string path" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13072 -#, no-wrap -msgid "{@code{fifo-listener-configuration} parameter} string mode" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13077 -#, no-wrap -msgid "{@code{fifo-listener-configuration} parameter} string user" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13082 -#, no-wrap -msgid "{@code{fifo-listener-configuration} parameter} string group" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13089 -msgid "Available @code{inet-listener-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13090 -#, no-wrap -msgid "{@code{inet-listener-configuration} parameter} string protocol" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13092 -msgid "The protocol to listen for." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13094 -#, no-wrap -msgid "{@code{inet-listener-configuration} parameter} string address" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13097 -msgid "" -"The address on which to listen, or empty for all addresses. Defaults to " -"@samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13099 -#, no-wrap -msgid "{@code{inet-listener-configuration} parameter} non-negative-integer port" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13101 -msgid "The port on which to listen." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13103 -#, no-wrap -msgid "{@code{inet-listener-configuration} parameter} boolean ssl?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13107 -msgid "" -"Whether to use SSL for this service; @samp{yes}, @samp{no}, or " -"@samp{required}. Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13111 -#, no-wrap -msgid "{@code{service-configuration} parameter} non-negative-integer service-count" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13116 -msgid "" -"Number of connections to handle before starting a new process. Typically " -"the only useful values are 0 (unlimited) or 1. 1 is more secure, but 0 is " -"faster. . Defaults to @samp{1}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13118 -#, no-wrap -msgid "{@code{service-configuration} parameter} non-negative-integer process-min-avail" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13121 -msgid "" -"Number of processes to always keep waiting for more connections. Defaults " -"to @samp{0}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13123 -#, no-wrap -msgid "{@code{service-configuration} parameter} non-negative-integer vsz-limit" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13127 -msgid "" -"If you set @samp{service-count 0}, you probably need to grow this. Defaults " -"to @samp{256000000}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13131 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} dict-configuration dict" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13134 -msgid "" -"Dict configuration, as created by the @code{dict-configuration} constructor." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13136 -msgid "Available @code{dict-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13137 -#, no-wrap -msgid "{@code{dict-configuration} parameter} free-form-fields entries" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13140 -msgid "" -"A list of key-value pairs that this dict should hold. Defaults to @samp{()}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13144 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} passdb-configuration-list passdbs" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13147 -msgid "" -"A list of passdb configurations, each one created by the @code{passdb-" -"configuration} constructor." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13149 -msgid "Available @code{passdb-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13150 -#, no-wrap -msgid "{@code{passdb-configuration} parameter} string driver" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13155 -msgid "" -"The driver that the passdb should use. Valid values include @samp{pam}, " -"@samp{passwd}, @samp{shadow}, @samp{bsdauth}, and @samp{static}. Defaults " -"to @samp{\"pam\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13157 -#, no-wrap -msgid "{@code{passdb-configuration} parameter} space-separated-string-list args" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13160 -msgid "" -"Space separated list of arguments to the passdb driver. Defaults to " -"@samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13164 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} userdb-configuration-list userdbs" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13167 -msgid "" -"List of userdb configurations, each one created by the @code{userdb-" -"configuration} constructor." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13169 -msgid "Available @code{userdb-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13170 -#, no-wrap -msgid "{@code{userdb-configuration} parameter} string driver" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13174 -msgid "" -"The driver that the userdb should use. Valid values include @samp{passwd} " -"and @samp{static}. Defaults to @samp{\"passwd\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13176 -#, no-wrap -msgid "{@code{userdb-configuration} parameter} space-separated-string-list args" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13179 -msgid "" -"Space separated list of arguments to the userdb driver. Defaults to " -"@samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13181 -#, no-wrap -msgid "{@code{userdb-configuration} parameter} free-form-args override-fields" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13184 -msgid "Override fields from passwd. Defaults to @samp{()}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13188 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} plugin-configuration plugin-configuration" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13191 -msgid "" -"Plug-in configuration, created by the @code{plugin-configuration} " -"constructor." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13193 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} list-of-namespace-configuration namespaces" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13196 -msgid "" -"List of namespaces. Each item in the list is created by the @code{namespace-" -"configuration} constructor." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13198 -msgid "Available @code{namespace-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13199 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} string name" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13201 -msgid "Name for this namespace." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13203 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} string type" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13206 -msgid "" -"Namespace type: @samp{private}, @samp{shared} or @samp{public}. Defaults to " -"@samp{\"private\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13208 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} string separator" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13214 -msgid "" -"Hierarchy separator to use. You should use the same separator for all " -"namespaces or some clients get confused. @samp{/} is usually a good one. " -"The default however depends on the underlying mail storage format. Defaults " -"to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13216 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} string prefix" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13220 -msgid "" -"Prefix required to access this namespace. This needs to be different for " -"all namespaces. For example @samp{Public/}. Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13222 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} string location" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13226 -msgid "" -"Physical location of the mailbox. This is in the same format as " -"mail_location, which is also the default for it. Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13228 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} boolean inbox?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13232 -msgid "" -"There can be only one INBOX, and this setting defines which namespace has " -"it. Defaults to @samp{#f}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13234 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} boolean hidden?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13242 -msgid "" -"If namespace is hidden, it's not advertised to clients via NAMESPACE " -"extension. You'll most likely also want to set @samp{list? #f}. This is " -"mostly useful when converting from another server with different namespaces " -"which you want to deprecate but still keep working. For example you can " -"create hidden namespaces with prefixes @samp{~/mail/}, @samp{~%u/mail/} and " -"@samp{mail/}. Defaults to @samp{#f}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13244 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} boolean list?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13250 -msgid "" -"Show the mailboxes under this namespace with the LIST command. This makes " -"the namespace visible for clients that do not support the NAMESPACE " -"extension. The special @code{children} value lists child mailboxes, but " -"hides the namespace prefix. Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13252 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} boolean subscriptions?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13257 -msgid "" -"Namespace handles its own subscriptions. If set to @code{#f}, the parent " -"namespace handles them. The empty prefix should always have this as " -"@code{#t}). Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13259 -#, no-wrap -msgid "{@code{namespace-configuration} parameter} mailbox-configuration-list mailboxes" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13262 -msgid "List of predefined mailboxes in this namespace. Defaults to @samp{()}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13264 -msgid "Available @code{mailbox-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13265 -#, no-wrap -msgid "{@code{mailbox-configuration} parameter} string name" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13267 -msgid "Name for this mailbox." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13269 -#, no-wrap -msgid "{@code{mailbox-configuration} parameter} string auto" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13273 -msgid "" -"@samp{create} will automatically create this mailbox. @samp{subscribe} will " -"both create and subscribe to the mailbox. Defaults to @samp{\"no\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13275 -#, no-wrap -msgid "{@code{mailbox-configuration} parameter} space-separated-string-list special-use" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13280 -msgid "" -"List of IMAP @code{SPECIAL-USE} attributes as specified by RFC 6154. Valid " -"values are @code{\\All}, @code{\\Archive}, @code{\\Drafts}, " -"@code{\\Flagged}, @code{\\Junk}, @code{\\Sent}, and @code{\\Trash}. " -"Defaults to @samp{()}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13286 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} file-name base-dir" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13289 -msgid "" -"Base directory where to store runtime data. Defaults to @samp{\"/var/run/" -"dovecot/\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13291 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string login-greeting" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13294 -msgid "Greeting message for clients. Defaults to @samp{\"Dovecot ready.\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13296 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-trusted-networks" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13303 -msgid "" -"List of trusted network ranges. Connections from these IPs are allowed to " -"override their IP addresses and ports (for logging and for authentication " -"checks). @samp{disable-plaintext-auth} is also ignored for these networks. " -"Typically you would specify your IMAP proxy servers here. Defaults to " -"@samp{()}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13305 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-access-sockets" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13308 -msgid "" -"List of login access check sockets (e.g. tcpwrap). Defaults to @samp{()}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13310 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean verbose-proctitle?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13316 -msgid "" -"Show more verbose process titles (in ps). Currently shows user name and IP " -"address. Useful for seeing who is actually using the IMAP processes (e.g. " -"shared mailboxes or if the same uid is used for multiple accounts). " -"Defaults to @samp{#f}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13318 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean shutdown-clients?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13324 -msgid "" -"Should all processes be killed when Dovecot master process shuts down. " -"Setting this to @code{#f} means that Dovecot can be upgraded without forcing " -"existing client connections to close (although that could also be a problem " -"if the upgrade is e.g. due to a security fix). Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13326 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer doveadm-worker-count" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13330 -msgid "" -"If non-zero, run mail commands via this many connections to doveadm server, " -"instead of running them directly in the same process. Defaults to @samp{0}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13332 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string doveadm-socket-path" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13335 -msgid "" -"UNIX socket or host:port used for connecting to doveadm server. Defaults to " -"@samp{\"doveadm-server\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13337 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list import-environment" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13341 -msgid "" -"List of environment variables that are preserved on Dovecot startup and " -"passed down to all of its child processes. You can also give key=value " -"pairs to always set specific settings." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13343 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean disable-plaintext-auth?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13350 -msgid "" -"Disable LOGIN command and all other plaintext authentications unless SSL/TLS " -"is used (LOGINDISABLED capability). Note that if the remote IP matches the " -"local IP (i.e. you're connecting from the same computer), the connection is " -"considered secure and plaintext authentication is allowed. See also " -"ssl=required setting. Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13352 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer auth-cache-size" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13357 -msgid "" -"Authentication cache size (e.g. @samp{#e10e6}). 0 means it's disabled. " -"Note that bsdauth, PAM and vpopmail require @samp{cache-key} to be set for " -"caching to be used. Defaults to @samp{0}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13359 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-cache-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13367 -msgid "" -"Time to live for cached data. After TTL expires the cached record is no " -"longer used, *except* if the main database lookup returns internal failure. " -"We also try to handle password changes automatically: If user's previous " -"authentication was successful, but this one wasn't, the cache isn't used. " -"For now this works only with plaintext authentication. Defaults to " -"@samp{\"1 hour\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13369 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-cache-negative-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13373 -msgid "" -"TTL for negative hits (user not found, password mismatch). 0 disables " -"caching them completely. Defaults to @samp{\"1 hour\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13375 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list auth-realms" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13381 -msgid "" -"List of realms for SASL authentication mechanisms that need them. You can " -"leave it empty if you don't want to support multiple realms. Many clients " -"simply use the first one listed here, so keep the default realm first. " -"Defaults to @samp{()}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13383 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-default-realm" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13388 -msgid "" -"Default realm/domain to use if none was specified. This is used for both " -"SASL realms and appending @@domain to username in plaintext logins. " -"Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13390 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-username-chars" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13397 -msgid "" -"List of allowed characters in username. If the user-given username contains " -"a character not listed in here, the login automatically fails. This is just " -"an extra check to make sure user can't exploit any potential quote escaping " -"vulnerabilities with SQL/LDAP databases. If you want to allow all " -"characters, set this value to empty. Defaults to " -"@samp{\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@@" -"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13399 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-username-translation" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13405 -msgid "" -"Username character translations before it's looked up from databases. The " -"value contains series of from -> to characters. For example @samp{#@@/@@} " -"means that @samp{#} and @samp{/} characters are translated to @samp{@@}. " -"Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13407 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-username-format" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13414 -msgid "" -"Username formatting before it's looked up from databases. You can use the " -"standard variables here, e.g. %Lu would lowercase the username, %n would " -"drop away the domain if it was given, or @samp{%n-AT-%d} would change the " -"@samp{@@} into @samp{-AT-}. This translation is done after @samp{auth-" -"username-translation} changes. Defaults to @samp{\"%Lu\"}." -msgstr "" - #. type: deftypevr #: doc/guix.texi:13416 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-master-user-separator" +msgid "{@code{unix-listener-configuration} parameter} string user" msgstr "" #. type: deftypevr -#: doc/guix.texi:13424 -msgid "" -"If you want to allow master users to log in by specifying the master " -"username within the normal username string (i.e. not using SASL mechanism's " -"support for it), you can specify the separator character here. The format " -"is then . UW-IMAP uses @samp{*} as " -"the separator, so that could be a good choice. Defaults to @samp{\"\"}." +#: doc/guix.texi:13419 doc/guix.texi:13442 +msgid "The user to own the socket. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13426 +#: doc/guix.texi:13421 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-anonymous-username" +msgid "{@code{unix-listener-configuration} parameter} string group" msgstr "" #. type: deftypevr -#: doc/guix.texi:13430 -msgid "" -"Username to use for users logging in with ANONYMOUS SASL mechanism. " -"Defaults to @samp{\"anonymous\"}." +#: doc/guix.texi:13424 doc/guix.texi:13447 +msgid "The group to own the socket. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13432 +#: doc/guix.texi:13428 +msgid "Available @code{fifo-listener-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13429 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer auth-worker-max-count" +msgid "{@code{fifo-listener-configuration} parameter} string path" msgstr "" #. type: deftypevr -#: doc/guix.texi:13437 -msgid "" -"Maximum number of dovecot-auth worker processes. They're used to execute " -"blocking passdb and userdb queries (e.g. MySQL and PAM). They're " -"automatically created and destroyed as needed. Defaults to @samp{30}." +#: doc/guix.texi:13434 +#, no-wrap +msgid "{@code{fifo-listener-configuration} parameter} string mode" msgstr "" #. type: deftypevr #: doc/guix.texi:13439 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-gssapi-hostname" +msgid "{@code{fifo-listener-configuration} parameter} string user" msgstr "" #. type: deftypevr #: doc/guix.texi:13444 -msgid "" -"Host name to use in GSSAPI principal names. The default is to use the name " -"returned by gethostname(). Use @samp{$ALL} (with quotes) to allow all " -"keytab entries. Defaults to @samp{\"\"}." +#, no-wrap +msgid "{@code{fifo-listener-configuration} parameter} string group" msgstr "" #. type: deftypevr -#: doc/guix.texi:13446 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-krb5-keytab" +#: doc/guix.texi:13451 +msgid "Available @code{inet-listener-configuration} fields are:" msgstr "" #. type: deftypevr #: doc/guix.texi:13452 -msgid "" -"Kerberos keytab to use for the GSSAPI mechanism. Will use the system " -"default (usually @file{/etc/krb5.keytab}) if not specified. You may need to " -"change the auth service to run as root to be able to read this file. " -"Defaults to @samp{\"\"}." +#, no-wrap +msgid "{@code{inet-listener-configuration} parameter} string protocol" msgstr "" #. type: deftypevr #: doc/guix.texi:13454 +msgid "The protocol to listen for." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13456 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean auth-use-winbind?" +msgid "{@code{inet-listener-configuration} parameter} string address" msgstr "" #. type: deftypevr #: doc/guix.texi:13459 -msgid "" -"Do NTLM and GSS-SPNEGO authentication using Samba's winbind daemon and " -"@samp{ntlm-auth} helper. . " -"Defaults to @samp{#f}." +msgid "The address on which to listen, or empty for all addresses. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:13461 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} file-name auth-winbind-helper-path" +msgid "{@code{inet-listener-configuration} parameter} non-negative-integer port" msgstr "" #. type: deftypevr -#: doc/guix.texi:13464 -msgid "" -"Path for Samba's @samp{ntlm-auth} helper binary. Defaults to @samp{\"/usr/" -"bin/ntlm_auth\"}." +#: doc/guix.texi:13463 +msgid "The port on which to listen." msgstr "" #. type: deftypevr -#: doc/guix.texi:13466 +#: doc/guix.texi:13465 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string auth-failure-delay" +msgid "{@code{inet-listener-configuration} parameter} boolean ssl?" msgstr "" #. type: deftypevr #: doc/guix.texi:13469 -msgid "" -"Time to delay before replying to failed authentications. Defaults to " -"@samp{\"2 secs\"}." +msgid "Whether to use SSL for this service; @samp{yes}, @samp{no}, or @samp{required}. Defaults to @samp{#t}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13471 +#: doc/guix.texi:13473 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean auth-ssl-require-client-cert?" +msgid "{@code{service-configuration} parameter} non-negative-integer service-count" msgstr "" #. type: deftypevr -#: doc/guix.texi:13475 -msgid "" -"Require a valid SSL client certificate or the authentication fails. " -"Defaults to @samp{#f}." +#: doc/guix.texi:13478 +msgid "Number of connections to handle before starting a new process. Typically the only useful values are 0 (unlimited) or 1. 1 is more secure, but 0 is faster. . Defaults to @samp{1}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13477 +#: doc/guix.texi:13480 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean auth-ssl-username-from-cert?" +msgid "{@code{service-configuration} parameter} non-negative-integer process-min-avail" msgstr "" #. type: deftypevr -#: doc/guix.texi:13482 -msgid "" -"Take the username from client's SSL certificate, using " -"@code{X509_NAME_get_text_by_NID()} which returns the subject's DN's " -"CommonName. Defaults to @samp{#f}." +#: doc/guix.texi:13483 +msgid "Number of processes to always keep waiting for more connections. Defaults to @samp{0}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13484 +#: doc/guix.texi:13485 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list auth-mechanisms" +msgid "{@code{service-configuration} parameter} non-negative-integer vsz-limit" msgstr "" #. type: deftypevr -#: doc/guix.texi:13490 -msgid "" -"List of wanted authentication mechanisms. Supported mechanisms are: " -"@samp{plain}, @samp{login}, @samp{digest-md5}, @samp{cram-md5}, @samp{ntlm}, " -"@samp{rpa}, @samp{apop}, @samp{anonymous}, @samp{gssapi}, @samp{otp}, " -"@samp{skey}, and @samp{gss-spnego}. NOTE: See also @samp{disable-plaintext-" -"auth} setting." +#: doc/guix.texi:13489 +msgid "If you set @samp{service-count 0}, you probably need to grow this. Defaults to @samp{256000000}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13492 +#: doc/guix.texi:13493 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list director-servers" +msgid "{@code{dovecot-configuration} parameter} dict-configuration dict" msgstr "" #. type: deftypevr -#: doc/guix.texi:13497 -msgid "" -"List of IPs or hostnames to all director servers, including ourself. Ports " -"can be specified as ip:port. The default port is the same as what director " -"service's @samp{inet-listener} is using. Defaults to @samp{()}." +#: doc/guix.texi:13496 +msgid "Dict configuration, as created by the @code{dict-configuration} constructor." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13498 +msgid "Available @code{dict-configuration} fields are:" msgstr "" #. type: deftypevr #: doc/guix.texi:13499 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list director-mail-servers" +msgid "{@code{dict-configuration} parameter} free-form-fields entries" msgstr "" #. type: deftypevr -#: doc/guix.texi:13503 -msgid "" -"List of IPs or hostnames to all backend mail servers. Ranges are allowed " -"too, like 10.0.0.10-10.0.0.30. Defaults to @samp{()}." +#: doc/guix.texi:13502 +msgid "A list of key-value pairs that this dict should hold. Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13505 +#: doc/guix.texi:13506 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string director-user-expire" +msgid "{@code{dovecot-configuration} parameter} passdb-configuration-list passdbs" msgstr "" #. type: deftypevr #: doc/guix.texi:13509 -msgid "" -"How long to redirect users to a specific server after it no longer has any " -"connections. Defaults to @samp{\"15 min\"}." +msgid "A list of passdb configurations, each one created by the @code{passdb-configuration} constructor." msgstr "" #. type: deftypevr #: doc/guix.texi:13511 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string director-username-hash" +msgid "Available @code{passdb-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:13516 -msgid "" -"How the username is translated before being hashed. Useful values include " -"%Ln if user can log in with or without @@domain, %Ld if mailboxes are shared " -"within domain. Defaults to @samp{\"%Lu\"}." +#: doc/guix.texi:13512 +#, no-wrap +msgid "{@code{passdb-configuration} parameter} string driver" msgstr "" #. type: deftypevr -#: doc/guix.texi:13518 +#: doc/guix.texi:13517 +msgid "The driver that the passdb should use. Valid values include @samp{pam}, @samp{passwd}, @samp{shadow}, @samp{bsdauth}, and @samp{static}. Defaults to @samp{\"pam\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13519 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string log-path" +msgid "{@code{passdb-configuration} parameter} space-separated-string-list args" msgstr "" #. type: deftypevr #: doc/guix.texi:13522 -msgid "" -"Log file to use for error messages. @samp{syslog} logs to syslog, @samp{/" -"dev/stderr} logs to stderr. Defaults to @samp{\"syslog\"}." +msgid "Space separated list of arguments to the passdb driver. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13524 +#: doc/guix.texi:13526 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string info-log-path" +msgid "{@code{dovecot-configuration} parameter} userdb-configuration-list userdbs" msgstr "" #. type: deftypevr -#: doc/guix.texi:13528 -msgid "" -"Log file to use for informational messages. Defaults to @samp{log-path}. " -"Defaults to @samp{\"\"}." +#: doc/guix.texi:13529 +msgid "List of userdb configurations, each one created by the @code{userdb-configuration} constructor." msgstr "" #. type: deftypevr -#: doc/guix.texi:13530 +#: doc/guix.texi:13531 +msgid "Available @code{userdb-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13532 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string debug-log-path" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13534 -msgid "" -"Log file to use for debug messages. Defaults to @samp{info-log-path}. " -"Defaults to @samp{\"\"}." +msgid "{@code{userdb-configuration} parameter} string driver" msgstr "" #. type: deftypevr #: doc/guix.texi:13536 +msgid "The driver that the userdb should use. Valid values include @samp{passwd} and @samp{static}. Defaults to @samp{\"passwd\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13538 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string syslog-facility" +msgid "{@code{userdb-configuration} parameter} space-separated-string-list args" msgstr "" #. type: deftypevr #: doc/guix.texi:13541 -msgid "" -"Syslog facility to use if you're logging to syslog. Usually if you don't " -"want to use @samp{mail}, you'll use local0..local7. Also other standard " -"facilities are supported. Defaults to @samp{\"mail\"}." +msgid "Space separated list of arguments to the userdb driver. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:13543 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean auth-verbose?" +msgid "{@code{userdb-configuration} parameter} free-form-args override-fields" msgstr "" #. type: deftypevr -#: doc/guix.texi:13547 -msgid "" -"Log unsuccessful authentication attempts and the reasons why they failed. " -"Defaults to @samp{#f}." +#: doc/guix.texi:13546 +msgid "Override fields from passwd. Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13549 +#: doc/guix.texi:13550 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean auth-verbose-passwords?" +msgid "{@code{dovecot-configuration} parameter} plugin-configuration plugin-configuration" msgstr "" #. type: deftypevr -#: doc/guix.texi:13556 -msgid "" -"In case of password mismatches, log the attempted password. Valid values " -"are no, plain and sha1. sha1 can be useful for detecting brute force " -"password attempts vs. user simply trying the same password over and over " -"again. You can also truncate the value to n chars by appending \":n\" (e.g. " -"sha1:6). Defaults to @samp{#f}." +#: doc/guix.texi:13553 +msgid "Plug-in configuration, created by the @code{plugin-configuration} constructor." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13555 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} list-of-namespace-configuration namespaces" msgstr "" #. type: deftypevr #: doc/guix.texi:13558 +msgid "List of namespaces. Each item in the list is created by the @code{namespace-configuration} constructor." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13560 +msgid "Available @code{namespace-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13561 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean auth-debug?" +msgid "{@code{namespace-configuration} parameter} string name" msgstr "" #. type: deftypevr -#: doc/guix.texi:13562 -msgid "" -"Even more verbose logging for debugging purposes. Shows for example SQL " -"queries. Defaults to @samp{#f}." +#: doc/guix.texi:13563 +msgid "Name for this namespace." msgstr "" #. type: deftypevr -#: doc/guix.texi:13564 +#: doc/guix.texi:13565 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean auth-debug-passwords?" +msgid "{@code{namespace-configuration} parameter} string type" msgstr "" #. type: deftypevr -#: doc/guix.texi:13569 -msgid "" -"In case of password mismatches, log the passwords and used scheme so the " -"problem can be debugged. Enabling this also enables @samp{auth-debug}. " -"Defaults to @samp{#f}." +#: doc/guix.texi:13568 +msgid "Namespace type: @samp{private}, @samp{shared} or @samp{public}. Defaults to @samp{\"private\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13571 +#: doc/guix.texi:13570 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mail-debug?" +msgid "{@code{namespace-configuration} parameter} string separator" msgstr "" #. type: deftypevr -#: doc/guix.texi:13575 -msgid "" -"Enable mail process debugging. This can help you figure out why Dovecot " -"isn't finding your mails. Defaults to @samp{#f}." +#: doc/guix.texi:13576 +msgid "Hierarchy separator to use. You should use the same separator for all namespaces or some clients get confused. @samp{/} is usually a good one. The default however depends on the underlying mail storage format. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13577 +#: doc/guix.texi:13578 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean verbose-ssl?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13580 -msgid "Show protocol level SSL errors. Defaults to @samp{#f}." +msgid "{@code{namespace-configuration} parameter} string prefix" msgstr "" #. type: deftypevr #: doc/guix.texi:13582 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string log-timestamp" +msgid "Prefix required to access this namespace. This needs to be different for all namespaces. For example @samp{Public/}. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13586 -msgid "" -"Prefix for each line written to log file. % codes are in strftime(3) " -"format. Defaults to @samp{\"\\\"%b %d %H:%M:%S \\\"\"}." +#: doc/guix.texi:13584 +#, no-wrap +msgid "{@code{namespace-configuration} parameter} string location" msgstr "" #. type: deftypevr #: doc/guix.texi:13588 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-log-format-elements" +msgid "Physical location of the mailbox. This is in the same format as mail_location, which is also the default for it. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13592 -msgid "" -"List of elements we want to log. The elements which have a non-empty " -"variable value are joined together to form a comma-separated string." +#: doc/guix.texi:13590 +#, no-wrap +msgid "{@code{namespace-configuration} parameter} boolean inbox?" msgstr "" #. type: deftypevr #: doc/guix.texi:13594 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string login-log-format" +msgid "There can be only one INBOX, and this setting defines which namespace has it. Defaults to @samp{#f}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13598 -msgid "" -"Login log format. %s contains @samp{login-log-format-elements} string, %$ " -"contains the data we want to log. Defaults to @samp{\"%$: %s\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13600 +#: doc/guix.texi:13596 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-log-prefix" +msgid "{@code{namespace-configuration} parameter} boolean hidden?" msgstr "" #. type: deftypevr #: doc/guix.texi:13604 -msgid "" -"Log prefix for mail processes. See doc/wiki/Variables.txt for list of " -"possible variables you can use. Defaults to @samp{\"\\\"%s(%u)<%@{pid@}><" -"%@{session@}>: \\\"\"}." +msgid "If namespace is hidden, it's not advertised to clients via NAMESPACE extension. You'll most likely also want to set @samp{list? #f}. This is mostly useful when converting from another server with different namespaces which you want to deprecate but still keep working. For example you can create hidden namespaces with prefixes @samp{~/mail/}, @samp{~%u/mail/} and @samp{mail/}. Defaults to @samp{#f}." msgstr "" #. type: deftypevr #: doc/guix.texi:13606 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string deliver-log-format" +msgid "{@code{namespace-configuration} parameter} boolean list?" msgstr "" #. type: deftypevr -#: doc/guix.texi:13608 -msgid "Format to use for logging mail deliveries. You can use variables:" +#: doc/guix.texi:13612 +msgid "Show the mailboxes under this namespace with the LIST command. This makes the namespace visible for clients that do not support the NAMESPACE extension. The special @code{children} value lists child mailboxes, but hides the namespace prefix. Defaults to @samp{#t}." msgstr "" -#. type: item -#: doc/guix.texi:13609 +#. type: deftypevr +#: doc/guix.texi:13614 #, no-wrap -msgid "%$" +msgid "{@code{namespace-configuration} parameter} boolean subscriptions?" msgstr "" -#. type: table -#: doc/guix.texi:13611 -msgid "Delivery status message (e.g. @samp{saved to INBOX})" -msgstr "" - -#. type: item -#: doc/guix.texi:13611 -#, no-wrap -msgid "%m" -msgstr "" - -#. type: table -#: doc/guix.texi:13613 -msgid "Message-ID" -msgstr "" - -#. type: item -#: doc/guix.texi:13613 doc/guix.texi:14145 -#, no-wrap -msgid "%s" -msgstr "" - -#. type: table -#: doc/guix.texi:13615 -msgid "Subject" -msgstr "" - -#. type: item -#: doc/guix.texi:13615 -#, no-wrap -msgid "%f" -msgstr "" - -#. type: table -#: doc/guix.texi:13617 -msgid "From address" -msgstr "" - -#. type: table +#. type: deftypevr #: doc/guix.texi:13619 -msgid "Physical size" +msgid "Namespace handles its own subscriptions. If set to @code{#f}, the parent namespace handles them. The empty prefix should always have this as @code{#t}). Defaults to @samp{#t}." msgstr "" -#. type: item -#: doc/guix.texi:13619 -#, no-wrap -msgid "%w" -msgstr "" - -#. type: table +#. type: deftypevr #: doc/guix.texi:13621 -msgid "Virtual size." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13623 -msgid "Defaults to @samp{\"msgid=%m: %$\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13625 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-location" +msgid "{@code{namespace-configuration} parameter} mailbox-configuration-list mailboxes" msgstr "" #. type: deftypevr -#: doc/guix.texi:13630 -msgid "" -"Location for users' mailboxes. The default is empty, which means that " -"Dovecot tries to find the mailboxes automatically. This won't work if the " -"user doesn't yet have any mail, so you should explicitly tell Dovecot the " -"full location." +#: doc/guix.texi:13624 +msgid "List of predefined mailboxes in this namespace. Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13636 -msgid "" -"If you're using mbox, giving a path to the INBOX file (e.g. /var/mail/%u) " -"isn't enough. You'll also need to tell Dovecot where the other mailboxes " -"are kept. This is called the \"root mail directory\", and it must be the " -"first path given in the @samp{mail-location} setting." +#: doc/guix.texi:13626 +msgid "Available @code{mailbox-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:13638 -msgid "There are a few special variables you can use, eg.:" +#: doc/guix.texi:13627 +#, no-wrap +msgid "{@code{mailbox-configuration} parameter} string name" msgstr "" -#. type: table +#. type: deftypevr +#: doc/guix.texi:13629 +msgid "Name for this mailbox." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13631 +#, no-wrap +msgid "{@code{mailbox-configuration} parameter} string auto" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13635 +msgid "@samp{create} will automatically create this mailbox. @samp{subscribe} will both create and subscribe to the mailbox. Defaults to @samp{\"no\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13637 +#, no-wrap +msgid "{@code{mailbox-configuration} parameter} space-separated-string-list special-use" +msgstr "" + +#. type: deftypevr #: doc/guix.texi:13642 -msgid "username" +msgid "List of IMAP @code{SPECIAL-USE} attributes as specified by RFC 6154. Valid values are @code{\\All}, @code{\\Archive}, @code{\\Drafts}, @code{\\Flagged}, @code{\\Junk}, @code{\\Sent}, and @code{\\Trash}. Defaults to @samp{()}." msgstr "" -#. type: item -#: doc/guix.texi:13642 doc/guix.texi:14141 -#, no-wrap -msgid "%n" -msgstr "" - -#. type: table -#: doc/guix.texi:13644 -msgid "user part in user@@domain, same as %u if there's no domain" -msgstr "" - -#. type: item -#: doc/guix.texi:13644 -#, no-wrap -msgid "%d" -msgstr "" - -#. type: table -#: doc/guix.texi:13646 -msgid "domain part in user@@domain, empty if there's no domain" -msgstr "" - -#. type: item -#: doc/guix.texi:13646 -#, no-wrap -msgid "%h" -msgstr "" - -#. type: table +#. type: deftypevr #: doc/guix.texi:13648 -msgid "home director" +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} file-name base-dir" msgstr "" #. type: deftypevr #: doc/guix.texi:13651 -msgid "See doc/wiki/Variables.txt for full list. Some examples:" +msgid "Base directory where to store runtime data. Defaults to @samp{\"/var/run/dovecot/\"}." msgstr "" -#. type: item -#: doc/guix.texi:13652 -#, no-wrap -msgid "maildir:~/Maildir" -msgstr "" - -#. type: item +#. type: deftypevr #: doc/guix.texi:13653 #, no-wrap -msgid "mbox:~/mail:INBOX=/var/mail/%u" +msgid "{@code{dovecot-configuration} parameter} string login-greeting" msgstr "" -#. type: item -#: doc/guix.texi:13654 +#. type: deftypevr +#: doc/guix.texi:13656 +msgid "Greeting message for clients. Defaults to @samp{\"Dovecot ready.\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13658 #, no-wrap -msgid "mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-trusted-networks" msgstr "" #. type: deftypevr -#: doc/guix.texi:13659 +#: doc/guix.texi:13665 +msgid "List of trusted network ranges. Connections from these IPs are allowed to override their IP addresses and ports (for logging and for authentication checks). @samp{disable-plaintext-auth} is also ignored for these networks. Typically you would specify your IMAP proxy servers here. Defaults to @samp{()}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13667 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-uid" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-access-sockets" msgstr "" #. type: deftypevr -#: doc/guix.texi:13664 -msgid "" -"System user and group used to access mails. If you use multiple, userdb can " -"override these by returning uid or gid fields. You can use either numbers " -"or names. . Defaults to @samp{\"\"}." +#: doc/guix.texi:13670 +msgid "List of login access check sockets (e.g. tcpwrap). Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13666 +#: doc/guix.texi:13672 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-gid" +msgid "{@code{dovecot-configuration} parameter} boolean verbose-proctitle?" msgstr "" #. type: deftypevr -#: doc/guix.texi:13671 +#: doc/guix.texi:13678 +msgid "Show more verbose process titles (in ps). Currently shows user name and IP address. Useful for seeing who is actually using the IMAP processes (e.g. shared mailboxes or if the same uid is used for multiple accounts). Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13680 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-privileged-group" +msgid "{@code{dovecot-configuration} parameter} boolean shutdown-clients?" msgstr "" #. type: deftypevr -#: doc/guix.texi:13677 -msgid "" -"Group to enable temporarily for privileged operations. Currently this is " -"used only with INBOX when either its initial creation or dotlocking fails. " -"Typically this is set to \"mail\" to give access to /var/mail. Defaults to " -"@samp{\"\"}." +#: doc/guix.texi:13686 +msgid "Should all processes be killed when Dovecot master process shuts down. Setting this to @code{#f} means that Dovecot can be upgraded without forcing existing client connections to close (although that could also be a problem if the upgrade is e.g. due to a security fix). Defaults to @samp{#t}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13679 +#: doc/guix.texi:13688 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-access-groups" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer doveadm-worker-count" msgstr "" #. type: deftypevr -#: doc/guix.texi:13687 -msgid "" -"Grant access to these supplementary groups for mail processes. Typically " -"these are used to set up access to shared mailboxes. Note that it may be " -"dangerous to set these if users can create symlinks (e.g. if \"mail\" group " -"is set here, ln -s /var/mail ~/mail/var could allow a user to delete others' " -"mailboxes, or ln -s /secret/shared/box ~/mail/mybox would allow reading " -"it). Defaults to @samp{\"\"}." +#: doc/guix.texi:13692 +msgid "If non-zero, run mail commands via this many connections to doveadm server, instead of running them directly in the same process. Defaults to @samp{0}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13689 +#: doc/guix.texi:13694 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mail-full-filesystem-access?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13695 -msgid "" -"Allow full file system access to clients. There's no access checks other " -"than what the operating system does for the active UID/GID. It works with " -"both maildir and mboxes, allowing you to prefix mailboxes names with e.g. /" -"path/ or ~user/. Defaults to @samp{#f}." +msgid "{@code{dovecot-configuration} parameter} string doveadm-socket-path" msgstr "" #. type: deftypevr #: doc/guix.texi:13697 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mmap-disable?" +msgid "UNIX socket or host:port used for connecting to doveadm server. Defaults to @samp{\"doveadm-server\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13701 -msgid "" -"Don't use mmap() at all. This is required if you store indexes to shared " -"file systems (NFS or clustered file system). Defaults to @samp{#f}." +#: doc/guix.texi:13699 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list import-environment" msgstr "" #. type: deftypevr #: doc/guix.texi:13703 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean dotlock-use-excl?" +msgid "List of environment variables that are preserved on Dovecot startup and passed down to all of its child processes. You can also give key=value pairs to always set specific settings." msgstr "" #. type: deftypevr -#: doc/guix.texi:13708 -msgid "" -"Rely on @samp{O_EXCL} to work when creating dotlock files. NFS supports " -"@samp{O_EXCL} since version 3, so this should be safe to use nowadays by " -"default. Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13710 +#: doc/guix.texi:13705 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-fsync" +msgid "{@code{dovecot-configuration} parameter} boolean disable-plaintext-auth?" msgstr "" #. type: deftypevr #: doc/guix.texi:13712 -msgid "When to use fsync() or fdatasync() calls:" +msgid "Disable LOGIN command and all other plaintext authentications unless SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP matches the local IP (i.e. you're connecting from the same computer), the connection is considered secure and plaintext authentication is allowed. See also ssl=required setting. Defaults to @samp{#t}." msgstr "" -#. type: item -#: doc/guix.texi:13713 +#. type: deftypevr +#: doc/guix.texi:13714 #, no-wrap -msgid "optimized" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer auth-cache-size" msgstr "" -#. type: table -#: doc/guix.texi:13715 -msgid "Whenever necessary to avoid losing important data" -msgstr "" - -#. type: table -#: doc/guix.texi:13717 -msgid "Useful with e.g. NFS when write()s are delayed" -msgstr "" - -#. type: table +#. type: deftypevr #: doc/guix.texi:13719 -msgid "Never use it (best performance, but crashes can lose data)." +msgid "Authentication cache size (e.g. @samp{#e10e6}). 0 means it's disabled. Note that bsdauth, PAM and vpopmail require @samp{cache-key} to be set for caching to be used. Defaults to @samp{0}." msgstr "" #. type: deftypevr #: doc/guix.texi:13721 -msgid "Defaults to @samp{\"optimized\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13723 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mail-nfs-storage?" +msgid "{@code{dovecot-configuration} parameter} string auth-cache-ttl" msgstr "" #. type: deftypevr -#: doc/guix.texi:13728 -msgid "" -"Mail storage exists in NFS. Set this to yes to make Dovecot flush NFS " -"caches whenever needed. If you're using only a single mail server this " -"isn't needed. Defaults to @samp{#f}." +#: doc/guix.texi:13729 +msgid "Time to live for cached data. After TTL expires the cached record is no longer used, *except* if the main database lookup returns internal failure. We also try to handle password changes automatically: If user's previous authentication was successful, but this one wasn't, the cache isn't used. For now this works only with plaintext authentication. Defaults to @samp{\"1 hour\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13730 +#: doc/guix.texi:13731 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mail-nfs-index?" +msgid "{@code{dovecot-configuration} parameter} string auth-cache-negative-ttl" msgstr "" #. type: deftypevr -#: doc/guix.texi:13734 -msgid "" -"Mail index files also exist in NFS. Setting this to yes requires @samp{mmap-" -"disable? #t} and @samp{fsync-disable? #f}. Defaults to @samp{#f}." +#: doc/guix.texi:13735 +msgid "TTL for negative hits (user not found, password mismatch). 0 disables caching them completely. Defaults to @samp{\"1 hour\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13736 +#: doc/guix.texi:13737 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string lock-method" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list auth-realms" msgstr "" #. type: deftypevr -#: doc/guix.texi:13742 -msgid "" -"Locking method for index files. Alternatives are fcntl, flock and dotlock. " -"Dotlocking uses some tricks which may create more disk I/O than other " -"locking methods. NFS users: flock doesn't work, remember to change " -"@samp{mmap-disable}. Defaults to @samp{\"fcntl\"}." +#: doc/guix.texi:13743 +msgid "List of realms for SASL authentication mechanisms that need them. You can leave it empty if you don't want to support multiple realms. Many clients simply use the first one listed here, so keep the default realm first. Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13744 +#: doc/guix.texi:13745 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} file-name mail-temp-dir" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13748 -msgid "" -"Directory in which LDA/LMTP temporarily stores incoming mails >128 kB. " -"Defaults to @samp{\"/tmp\"}." +msgid "{@code{dovecot-configuration} parameter} string auth-default-realm" msgstr "" #. type: deftypevr #: doc/guix.texi:13750 +msgid "Default realm/domain to use if none was specified. This is used for both SASL realms and appending @@domain to username in plaintext logins. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13752 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer first-valid-uid" +msgid "{@code{dovecot-configuration} parameter} string auth-username-chars" msgstr "" #. type: deftypevr -#: doc/guix.texi:13756 -msgid "" -"Valid UID range for users. This is mostly to make sure that users can't log " -"in as daemons or other system users. Note that denying root logins is " -"hardcoded to dovecot binary and can't be done even if @samp{first-valid-uid} " -"is set to 0. Defaults to @samp{500}." +#: doc/guix.texi:13759 +msgid "List of allowed characters in username. If the user-given username contains a character not listed in here, the login automatically fails. This is just an extra check to make sure user can't exploit any potential quote escaping vulnerabilities with SQL/LDAP databases. If you want to allow all characters, set this value to empty. Defaults to @samp{\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@@\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13758 +#: doc/guix.texi:13761 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer last-valid-uid" +msgid "{@code{dovecot-configuration} parameter} string auth-username-translation" msgstr "" #. type: deftypevr -#: doc/guix.texi:13763 +#: doc/guix.texi:13767 +msgid "Username character translations before it's looked up from databases. The value contains series of from -> to characters. For example @samp{#@@/@@} means that @samp{#} and @samp{/} characters are translated to @samp{@@}. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13769 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer first-valid-gid" +msgid "{@code{dovecot-configuration} parameter} string auth-username-format" msgstr "" #. type: deftypevr -#: doc/guix.texi:13768 -msgid "" -"Valid GID range for users. Users having non-valid GID as primary group ID " -"aren't allowed to log in. If user belongs to supplementary groups with non-" -"valid GIDs, those groups are not set. Defaults to @samp{1}." +#: doc/guix.texi:13776 +msgid "Username formatting before it's looked up from databases. You can use the standard variables here, e.g. %Lu would lowercase the username, %n would drop away the domain if it was given, or @samp{%n-AT-%d} would change the @samp{@@} into @samp{-AT-}. This translation is done after @samp{auth-username-translation} changes. Defaults to @samp{\"%Lu\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13770 +#: doc/guix.texi:13778 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer last-valid-gid" +msgid "{@code{dovecot-configuration} parameter} string auth-master-user-separator" msgstr "" #. type: deftypevr -#: doc/guix.texi:13775 +#: doc/guix.texi:13786 +msgid "If you want to allow master users to log in by specifying the master username within the normal username string (i.e. not using SASL mechanism's support for it), you can specify the separator character here. The format is then . UW-IMAP uses @samp{*} as the separator, so that could be a good choice. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13788 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-max-keyword-length" +msgid "{@code{dovecot-configuration} parameter} string auth-anonymous-username" msgstr "" #. type: deftypevr -#: doc/guix.texi:13779 -msgid "" -"Maximum allowed length for mail keyword name. It's only forced when trying " -"to create new keywords. Defaults to @samp{50}." +#: doc/guix.texi:13792 +msgid "Username to use for users logging in with ANONYMOUS SASL mechanism. Defaults to @samp{\"anonymous\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13781 +#: doc/guix.texi:13794 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} colon-separated-file-name-list valid-chroot-dirs" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer auth-worker-max-count" msgstr "" #. type: deftypevr -#: doc/guix.texi:13791 -msgid "" -"List of directories under which chrooting is allowed for mail processes (i." -"e. /var/mail will allow chrooting to /var/mail/foo/bar too). This setting " -"doesn't affect @samp{login-chroot} @samp{mail-chroot} or auth chroot " -"settings. If this setting is empty, \"/./\" in home dirs are ignored. " -"WARNING: Never add directories here which local users can modify, that may " -"lead to root exploit. Usually this should be done only if you don't allow " -"shell access for users. . Defaults to @samp{()}." +#: doc/guix.texi:13799 +msgid "Maximum number of dovecot-auth worker processes. They're used to execute blocking passdb and userdb queries (e.g. MySQL and PAM). They're automatically created and destroyed as needed. Defaults to @samp{30}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13793 +#: doc/guix.texi:13801 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-chroot" +msgid "{@code{dovecot-configuration} parameter} string auth-gssapi-hostname" msgstr "" #. type: deftypevr -#: doc/guix.texi:13802 -msgid "" -"Default chroot directory for mail processes. This can be overridden for " -"specific users in user database by giving /./ in user's home directory (e." -"g. /home/./user chroots into /home). Note that usually there is no real " -"need to do chrooting, Dovecot doesn't allow users to access files outside " -"their mail directory anyway. If your home directories are prefixed with the " -"chroot directory, append \"/.\" to @samp{mail-chroot}. . Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13804 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} file-name auth-socket-path" +#: doc/guix.texi:13806 +msgid "Host name to use in GSSAPI principal names. The default is to use the name returned by gethostname(). Use @samp{$ALL} (with quotes) to allow all keytab entries. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:13808 -msgid "" -"UNIX socket path to master authentication server to find users. This is " -"used by imap (for shared users) and lda. Defaults to @samp{\"/var/run/" -"dovecot/auth-userdb\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13810 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} file-name mail-plugin-dir" +msgid "{@code{dovecot-configuration} parameter} string auth-krb5-keytab" msgstr "" #. type: deftypevr -#: doc/guix.texi:13813 -msgid "" -"Directory where to look up mail plugins. Defaults to @samp{\"/usr/lib/" -"dovecot\"}." +#: doc/guix.texi:13814 +msgid "Kerberos keytab to use for the GSSAPI mechanism. Will use the system default (usually @file{/etc/krb5.keytab}) if not specified. You may need to change the auth service to run as root to be able to read this file. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13815 +#: doc/guix.texi:13816 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mail-plugins" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13819 -msgid "" -"List of plugins to load for all services. Plugins specific to IMAP, LDA, " -"etc. are added to this list in their own .conf files. Defaults to @samp{()}." +msgid "{@code{dovecot-configuration} parameter} boolean auth-use-winbind?" msgstr "" #. type: deftypevr #: doc/guix.texi:13821 +msgid "Do NTLM and GSS-SPNEGO authentication using Samba's winbind daemon and @samp{ntlm-auth} helper. . Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13823 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-cache-min-mail-count" +msgid "{@code{dovecot-configuration} parameter} file-name auth-winbind-helper-path" msgstr "" #. type: deftypevr #: doc/guix.texi:13826 -msgid "" -"The minimum number of mails in a mailbox before updates are done to cache " -"file. This allows optimizing Dovecot's behavior to do less disk writes at " -"the cost of more disk reads. Defaults to @samp{0}." +msgid "Path for Samba's @samp{ntlm-auth} helper binary. Defaults to @samp{\"/usr/bin/ntlm_auth\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:13828 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mailbox-idle-check-interval" +msgid "{@code{dovecot-configuration} parameter} string auth-failure-delay" msgstr "" #. type: deftypevr -#: doc/guix.texi:13835 -msgid "" -"When IDLE command is running, mailbox is checked once in a while to see if " -"there are any new mails or other changes. This setting defines the minimum " -"time to wait between those checks. Dovecot can also use dnotify, inotify " -"and kqueue to find out immediately when changes occur. Defaults to " -"@samp{\"30 secs\"}." +#: doc/guix.texi:13831 +msgid "Time to delay before replying to failed authentications. Defaults to @samp{\"2 secs\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13833 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean auth-ssl-require-client-cert?" msgstr "" #. type: deftypevr #: doc/guix.texi:13837 +msgid "Require a valid SSL client certificate or the authentication fails. Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13839 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mail-save-crlf?" +msgid "{@code{dovecot-configuration} parameter} boolean auth-ssl-username-from-cert?" msgstr "" #. type: deftypevr #: doc/guix.texi:13844 -msgid "" -"Save mails with CR+LF instead of plain LF. This makes sending those mails " -"take less CPU, especially with sendfile() syscall with Linux and FreeBSD. " -"But it also creates a bit more disk I/O which may just make it slower. Also " -"note that if other software reads the mboxes/maildirs, they may handle the " -"extra CRs wrong and cause problems. Defaults to @samp{#f}." +msgid "Take the username from client's SSL certificate, using @code{X509_NAME_get_text_by_NID()} which returns the subject's DN's CommonName. Defaults to @samp{#f}." msgstr "" #. type: deftypevr #: doc/guix.texi:13846 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean maildir-stat-dirs?" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list auth-mechanisms" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13852 +msgid "List of wanted authentication mechanisms. Supported mechanisms are: @samp{plain}, @samp{login}, @samp{digest-md5}, @samp{cram-md5}, @samp{ntlm}, @samp{rpa}, @samp{apop}, @samp{anonymous}, @samp{gssapi}, @samp{otp}, @samp{skey}, and @samp{gss-spnego}. NOTE: See also @samp{disable-plaintext-auth} setting." msgstr "" #. type: deftypevr #: doc/guix.texi:13854 -msgid "" -"By default LIST command returns all entries in maildir beginning with a " -"dot. Enabling this option makes Dovecot return only entries which are " -"directories. This is done by stat()ing each entry, so it causes more disk I/" -"O. (For systems setting struct @samp{dirent->d_type} this check is free and " -"it's done always regardless of this setting). Defaults to @samp{#f}." +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list director-servers" msgstr "" #. type: deftypevr -#: doc/guix.texi:13856 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean maildir-copy-with-hardlinks?" +#: doc/guix.texi:13859 +msgid "List of IPs or hostnames to all director servers, including ourself. Ports can be specified as ip:port. The default port is the same as what director service's @samp{inet-listener} is using. Defaults to @samp{()}." msgstr "" #. type: deftypevr #: doc/guix.texi:13861 -msgid "" -"When copying a message, do it with hard links whenever possible. This makes " -"the performance much better, and it's unlikely to have any side effects. " -"Defaults to @samp{#t}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13863 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean maildir-very-dirty-syncs?" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list director-mail-servers" msgstr "" #. type: deftypevr -#: doc/guix.texi:13868 -msgid "" -"Assume Dovecot is the only MUA accessing Maildir: Scan cur/ directory only " -"when its mtime changes unexpectedly or when we can't find the mail " -"otherwise. Defaults to @samp{#f}." +#: doc/guix.texi:13865 +msgid "List of IPs or hostnames to all backend mail servers. Ranges are allowed too, like 10.0.0.10-10.0.0.30. Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13870 +#: doc/guix.texi:13867 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mbox-read-locks" +msgid "{@code{dovecot-configuration} parameter} string director-user-expire" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13871 +msgid "How long to redirect users to a specific server after it no longer has any connections. Defaults to @samp{\"15 min\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:13873 -msgid "" -"Which locking methods to use for locking mbox. There are four available:" -msgstr "" - -#. type: item -#: doc/guix.texi:13875 #, no-wrap -msgid "dotlock" -msgstr "" - -#. type: table -#: doc/guix.texi:13879 -msgid "" -"Create .lock file. This is the oldest and most NFS-safe solution. " -"If you want to use /var/mail/ like directory, the users will need write " -"access to that directory." -msgstr "" - -#. type: item -#: doc/guix.texi:13879 -#, no-wrap -msgid "dotlock-try" -msgstr "" - -#. type: table -#: doc/guix.texi:13882 -msgid "" -"Same as dotlock, but if it fails because of permissions or because there " -"isn't enough disk space, just skip it." -msgstr "" - -#. type: item -#: doc/guix.texi:13882 -#, no-wrap -msgid "fcntl" -msgstr "" - -#. type: table -#: doc/guix.texi:13884 -msgid "Use this if possible. Works with NFS too if lockd is used." -msgstr "" - -#. type: item -#: doc/guix.texi:13884 -#, no-wrap -msgid "flock" -msgstr "" - -#. type: table -#: doc/guix.texi:13886 doc/guix.texi:13888 -msgid "May not exist in all systems. Doesn't work with NFS." -msgstr "" - -#. type: item -#: doc/guix.texi:13886 -#, no-wrap -msgid "lockf" +msgid "{@code{dovecot-configuration} parameter} string director-username-hash" msgstr "" #. type: deftypevr -#: doc/guix.texi:13894 -msgid "" -"You can use multiple locking methods; if you do the order they're declared " -"in is important to avoid deadlocks if other MTAs/MUAs are using multiple " -"locking methods as well. Some operating systems don't allow using some of " -"them simultaneously." +#: doc/guix.texi:13878 +msgid "How the username is translated before being hashed. Useful values include %Ln if user can log in with or without @@domain, %Ld if mailboxes are shared within domain. Defaults to @samp{\"%Lu\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13880 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string log-path" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13884 +msgid "Log file to use for error messages. @samp{syslog} logs to syslog, @samp{/dev/stderr} logs to stderr. Defaults to @samp{\"syslog\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13886 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string info-log-path" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13890 +msgid "Log file to use for informational messages. Defaults to @samp{log-path}. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13892 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string debug-log-path" msgstr "" #. type: deftypevr #: doc/guix.texi:13896 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mbox-write-locks" +msgid "Log file to use for debug messages. Defaults to @samp{info-log-path}. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13900 +#: doc/guix.texi:13898 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mbox-lock-timeout" +msgid "{@code{dovecot-configuration} parameter} string syslog-facility" msgstr "" #. type: deftypevr #: doc/guix.texi:13903 -msgid "" -"Maximum time to wait for lock (all of them) before aborting. Defaults to " -"@samp{\"5 mins\"}." +msgid "Syslog facility to use if you're logging to syslog. Usually if you don't want to use @samp{mail}, you'll use local0..local7. Also other standard facilities are supported. Defaults to @samp{\"mail\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:13905 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mbox-dotlock-change-timeout" +msgid "{@code{dovecot-configuration} parameter} boolean auth-verbose?" msgstr "" #. type: deftypevr #: doc/guix.texi:13909 -msgid "" -"If dotlock exists but the mailbox isn't modified in any way, override the " -"lock file after this much time. Defaults to @samp{\"2 mins\"}." +msgid "Log unsuccessful authentication attempts and the reasons why they failed. Defaults to @samp{#f}." msgstr "" #. type: deftypevr #: doc/guix.texi:13911 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mbox-dirty-syncs?" +msgid "{@code{dovecot-configuration} parameter} boolean auth-verbose-passwords?" msgstr "" #. type: deftypevr -#: doc/guix.texi:13922 -msgid "" -"When mbox changes unexpectedly we have to fully read it to find out what " -"changed. If the mbox is large this can take a long time. Since the change " -"is usually just a newly appended mail, it'd be faster to simply read the new " -"mails. If this setting is enabled, Dovecot does this but still safely " -"fallbacks to re-reading the whole mbox file whenever something in mbox isn't " -"how it's expected to be. The only real downside to this setting is that if " -"some other MUA changes message flags, Dovecot doesn't notice it " -"immediately. Note that a full sync is done with SELECT, EXAMINE, EXPUNGE " -"and CHECK commands. Defaults to @samp{#t}." +#: doc/guix.texi:13918 +msgid "In case of password mismatches, log the attempted password. Valid values are no, plain and sha1. sha1 can be useful for detecting brute force password attempts vs. user simply trying the same password over and over again. You can also truncate the value to n chars by appending \":n\" (e.g. sha1:6). Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13920 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean auth-debug?" msgstr "" #. type: deftypevr #: doc/guix.texi:13924 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mbox-very-dirty-syncs?" +msgid "Even more verbose logging for debugging purposes. Shows for example SQL queries. Defaults to @samp{#f}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13929 -msgid "" -"Like @samp{mbox-dirty-syncs}, but don't do full syncs even with SELECT, " -"EXAMINE, EXPUNGE or CHECK commands. If this is set, @samp{mbox-dirty-syncs} " -"is ignored. Defaults to @samp{#f}." +#: doc/guix.texi:13926 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean auth-debug-passwords?" msgstr "" #. type: deftypevr #: doc/guix.texi:13931 +msgid "In case of password mismatches, log the passwords and used scheme so the problem can be debugged. Enabling this also enables @samp{auth-debug}. Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13933 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mbox-lazy-writes?" +msgid "{@code{dovecot-configuration} parameter} boolean mail-debug?" msgstr "" #. type: deftypevr #: doc/guix.texi:13937 -msgid "" -"Delay writing mbox headers until doing a full write sync (EXPUNGE and CHECK " -"commands and when closing the mailbox). This is especially useful for POP3 " -"where clients often delete all mails. The downside is that our changes " -"aren't immediately visible to other MUAs. Defaults to @samp{#t}." +msgid "Enable mail process debugging. This can help you figure out why Dovecot isn't finding your mails. Defaults to @samp{#f}." msgstr "" #. type: deftypevr #: doc/guix.texi:13939 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer mbox-min-index-size" +msgid "{@code{dovecot-configuration} parameter} boolean verbose-ssl?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13942 +msgid "Show protocol level SSL errors. Defaults to @samp{#f}." msgstr "" #. type: deftypevr #: doc/guix.texi:13944 -msgid "" -"If mbox size is smaller than this (e.g. 100k), don't write index files. If " -"an index file already exists it's still read, just not updated. Defaults to " -"@samp{0}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13946 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer mdbox-rotate-size" +msgid "{@code{dovecot-configuration} parameter} string log-timestamp" msgstr "" #. type: deftypevr -#: doc/guix.texi:13949 -msgid "" -"Maximum dbox file size until it's rotated. Defaults to @samp{10000000}." +#: doc/guix.texi:13948 +msgid "Prefix for each line written to log file. % codes are in strftime(3) format. Defaults to @samp{\"\\\"%b %d %H:%M:%S \\\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13951 +#: doc/guix.texi:13950 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mdbox-rotate-interval" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-log-format-elements" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13954 +msgid "List of elements we want to log. The elements which have a non-empty variable value are joined together to form a comma-separated string." msgstr "" #. type: deftypevr #: doc/guix.texi:13956 -msgid "" -"Maximum dbox file age until it's rotated. Typically in days. Day begins " -"from midnight, so 1d = today, 2d = yesterday, etc. 0 = check disabled. " -"Defaults to @samp{\"1d\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13958 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean mdbox-preallocate-space?" +msgid "{@code{dovecot-configuration} parameter} string login-log-format" msgstr "" #. type: deftypevr -#: doc/guix.texi:13963 -msgid "" -"When creating new mdbox files, immediately preallocate their size to " -"@samp{mdbox-rotate-size}. This setting currently works only in Linux with " -"some file systems (ext4, xfs). Defaults to @samp{#f}." +#: doc/guix.texi:13960 +msgid "Login log format. %s contains @samp{login-log-format-elements} string, %$ contains the data we want to log. Defaults to @samp{\"%$: %s\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:13965 +#: doc/guix.texi:13962 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-attachment-dir" +msgid "{@code{dovecot-configuration} parameter} string mail-log-prefix" msgstr "" #. type: deftypevr -#: doc/guix.texi:13969 -msgid "" -"sdbox and mdbox support saving mail attachments to external files, which " -"also allows single instance storage for them. Other backends don't support " -"this for now." +#: doc/guix.texi:13966 +msgid "Log prefix for mail processes. See doc/wiki/Variables.txt for list of possible variables you can use. Defaults to @samp{\"\\\"%s(%u)<%@{pid@}><%@{session@}>: \\\"\"}." msgstr "" #. type: deftypevr +#: doc/guix.texi:13968 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string deliver-log-format" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:13970 +msgid "Format to use for logging mail deliveries. You can use variables:" +msgstr "" + +#. type: item #: doc/guix.texi:13971 -msgid "" -"WARNING: This feature hasn't been tested much yet. Use at your own risk." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13974 -msgid "" -"Directory root where to store mail attachments. Disabled, if empty. " -"Defaults to @samp{\"\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:13976 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-attachment-min-size" +msgid "%$" msgstr "" -#. type: deftypevr +#. type: table +#: doc/guix.texi:13973 +msgid "Delivery status message (e.g. @samp{saved to INBOX})" +msgstr "" + +#. type: item +#: doc/guix.texi:13973 +#, no-wrap +msgid "%m" +msgstr "" + +#. type: table +#: doc/guix.texi:13975 +msgid "Message-ID" +msgstr "" + +#. type: item +#: doc/guix.texi:13975 doc/guix.texi:14507 +#, no-wrap +msgid "%s" +msgstr "" + +#. type: table +#: doc/guix.texi:13977 +msgid "Subject" +msgstr "" + +#. type: item +#: doc/guix.texi:13977 +#, no-wrap +msgid "%f" +msgstr "" + +#. type: table +#: doc/guix.texi:13979 +msgid "From address" +msgstr "" + +#. type: table #: doc/guix.texi:13981 -msgid "" -"Attachments smaller than this aren't saved externally. It's also possible " -"to write a plugin to disable saving specific attachments externally. " -"Defaults to @samp{128000}." +msgid "Physical size" msgstr "" -#. type: deftypevr -#: doc/guix.texi:13983 +#. type: item +#: doc/guix.texi:13981 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-attachment-fs" +msgid "%w" +msgstr "" + +#. type: table +#: doc/guix.texi:13983 +msgid "Virtual size." msgstr "" #. type: deftypevr #: doc/guix.texi:13985 -msgid "File system backend to use for saving attachments:" +msgid "Defaults to @samp{\"msgid=%m: %$\"}." msgstr "" -#. type: item -#: doc/guix.texi:13986 +#. type: deftypevr +#: doc/guix.texi:13987 #, no-wrap -msgid "posix" +msgid "{@code{dovecot-configuration} parameter} string mail-location" msgstr "" -#. type: table -#: doc/guix.texi:13988 -msgid "No SiS done by Dovecot (but this might help FS's own deduplication)" -msgstr "" - -#. type: item -#: doc/guix.texi:13988 -#, no-wrap -msgid "sis posix" -msgstr "" - -#. type: table -#: doc/guix.texi:13990 -msgid "SiS with immediate byte-by-byte comparison during saving" -msgstr "" - -#. type: item -#: doc/guix.texi:13990 -#, no-wrap -msgid "sis-queue posix" -msgstr "" - -#. type: table +#. type: deftypevr #: doc/guix.texi:13992 -msgid "SiS with delayed comparison and deduplication." +msgid "Location for users' mailboxes. The default is empty, which means that Dovecot tries to find the mailboxes automatically. This won't work if the user doesn't yet have any mail, so you should explicitly tell Dovecot the full location." msgstr "" #. type: deftypevr -#: doc/guix.texi:13994 -msgid "Defaults to @samp{\"sis posix\"}." +#: doc/guix.texi:13998 +msgid "If you're using mbox, giving a path to the INBOX file (e.g. /var/mail/%u) isn't enough. You'll also need to tell Dovecot where the other mailboxes are kept. This is called the \"root mail directory\", and it must be the first path given in the @samp{mail-location} setting." msgstr "" #. type: deftypevr -#: doc/guix.texi:13996 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string mail-attachment-hash" +#: doc/guix.texi:14000 +msgid "There are a few special variables you can use, eg.:" msgstr "" -#. type: deftypevr -#: doc/guix.texi:14002 -msgid "" -"Hash format to use in attachment filenames. You can add any text and " -"variables: @code{%@{md4@}}, @code{%@{md5@}}, @code{%@{sha1@}}, " -"@code{%@{sha256@}}, @code{%@{sha512@}}, @code{%@{size@}}. Variables can be " -"truncated, e.g. @code{%@{sha256:80@}} returns only first 80 bits. Defaults " -"to @samp{\"%@{sha1@}\"}." -msgstr "" - -#. type: deftypevr +#. type: table #: doc/guix.texi:14004 +msgid "username" +msgstr "" + +#. type: item +#: doc/guix.texi:14004 doc/guix.texi:14503 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-process-limit" +msgid "%n" msgstr "" -#. type: deftypevr -#: doc/guix.texi:14009 +#. type: table +#: doc/guix.texi:14006 +msgid "user part in user@@domain, same as %u if there's no domain" +msgstr "" + +#. type: item +#: doc/guix.texi:14006 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-client-limit" +msgid "%d" +msgstr "" + +#. type: table +#: doc/guix.texi:14008 +msgid "domain part in user@@domain, empty if there's no domain" +msgstr "" + +#. type: item +#: doc/guix.texi:14008 +#, no-wrap +msgid "%h" +msgstr "" + +#. type: table +#: doc/guix.texi:14010 +msgid "home director" msgstr "" #. type: deftypevr -#: doc/guix.texi:14012 doc/guix.texi:17918 -msgid "Defaults to @samp{1000}." +#: doc/guix.texi:14013 +msgid "See doc/wiki/Variables.txt for full list. Some examples:" msgstr "" -#. type: deftypevr +#. type: item #: doc/guix.texi:14014 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-vsz-limit" +msgid "maildir:~/Maildir" msgstr "" -#. type: deftypevr -#: doc/guix.texi:14019 -msgid "" -"Default VSZ (virtual memory size) limit for service processes. This is " -"mainly intended to catch and kill processes that leak memory before they eat " -"up everything. Defaults to @samp{256000000}." +#. type: item +#: doc/guix.texi:14015 +#, no-wrap +msgid "mbox:~/mail:INBOX=/var/mail/%u" +msgstr "" + +#. type: item +#: doc/guix.texi:14016 +#, no-wrap +msgid "mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%" msgstr "" #. type: deftypevr #: doc/guix.texi:14021 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string default-login-user" +msgid "{@code{dovecot-configuration} parameter} string mail-uid" msgstr "" #. type: deftypevr #: doc/guix.texi:14026 -msgid "" -"Login user is internally used by login processes. This is the most " -"untrusted user in Dovecot system. It shouldn't have access to anything at " -"all. Defaults to @samp{\"dovenull\"}." +msgid "System user and group used to access mails. If you use multiple, userdb can override these by returning uid or gid fields. You can use either numbers or names. . Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:14028 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string default-internal-user" +msgid "{@code{dovecot-configuration} parameter} string mail-gid" msgstr "" #. type: deftypevr #: doc/guix.texi:14033 -msgid "" -"Internal user is used by unprivileged processes. It should be separate from " -"login user, so that login processes can't disturb other processes. Defaults " -"to @samp{\"dovecot\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14035 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string ssl?" +msgid "{@code{dovecot-configuration} parameter} string mail-privileged-group" msgstr "" #. type: deftypevr -#: doc/guix.texi:14038 -msgid "" -"SSL/TLS support: yes, no, required. . Defaults to " -"@samp{\"required\"}." +#: doc/guix.texi:14039 +msgid "Group to enable temporarily for privileged operations. Currently this is used only with INBOX when either its initial creation or dotlocking fails. Typically this is set to \"mail\" to give access to /var/mail. Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14040 +#: doc/guix.texi:14041 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string ssl-cert" +msgid "{@code{dovecot-configuration} parameter} string mail-access-groups" msgstr "" #. type: deftypevr -#: doc/guix.texi:14043 -msgid "" -"PEM encoded X.509 SSL/TLS certificate (public key). Defaults to @samp{\"128 kB. Defaults to @samp{\"/tmp\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14107 +#: doc/guix.texi:14112 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string hostname" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer first-valid-uid" msgstr "" #. type: deftypevr -#: doc/guix.texi:14111 -msgid "" -"Hostname to use in various parts of sent mails (e.g. in Message-Id) and in " -"LMTP replies. Default is the system's real hostname@@domain. Defaults to " -"@samp{\"\"}." +#: doc/guix.texi:14118 +msgid "Valid UID range for users. This is mostly to make sure that users can't log in as daemons or other system users. Note that denying root logins is hardcoded to dovecot binary and can't be done even if @samp{first-valid-uid} is set to 0. Defaults to @samp{500}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14113 +#: doc/guix.texi:14120 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean quota-full-tempfail?" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer last-valid-uid" msgstr "" #. type: deftypevr -#: doc/guix.texi:14117 -msgid "" -"If user is over quota, return with temporary failure instead of bouncing the " -"mail. Defaults to @samp{#f}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14119 +#: doc/guix.texi:14125 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} file-name sendmail-path" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14122 -msgid "" -"Binary to use for sending mails. Defaults to @samp{\"/usr/sbin/sendmail\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14124 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} string submission-host" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14128 -msgid "" -"If non-empty, send mails via this SMTP host[:port] instead of sendmail. " -"Defaults to @samp{\"\"}." +msgid "{@code{dovecot-configuration} parameter} non-negative-integer first-valid-gid" msgstr "" #. type: deftypevr #: doc/guix.texi:14130 +msgid "Valid GID range for users. Users having non-valid GID as primary group ID aren't allowed to log in. If user belongs to supplementary groups with non-valid GIDs, those groups are not set. Defaults to @samp{1}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14132 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string rejection-subject" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer last-valid-gid" msgstr "" #. type: deftypevr -#: doc/guix.texi:14134 -msgid "" -"Subject: header to use for rejection mails. You can use the same variables " -"as for @samp{rejection-reason} below. Defaults to @samp{\"Rejected: %s\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14136 +#: doc/guix.texi:14137 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string rejection-reason" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-max-keyword-length" msgstr "" #. type: deftypevr -#: doc/guix.texi:14139 -msgid "" -"Human readable error message for rejection mails. You can use variables:" +#: doc/guix.texi:14141 +msgid "Maximum allowed length for mail keyword name. It's only forced when trying to create new keywords. Defaults to @samp{50}." msgstr "" -#. type: table -#: doc/guix.texi:14143 -msgid "CRLF" -msgstr "" - -#. type: item +#. type: deftypevr #: doc/guix.texi:14143 #, no-wrap -msgid "%r" -msgstr "" - -#. type: table -#: doc/guix.texi:14145 -msgid "reason" -msgstr "" - -#. type: table -#: doc/guix.texi:14147 -msgid "original subject" -msgstr "" - -#. type: item -#: doc/guix.texi:14147 -#, no-wrap -msgid "%t" -msgstr "" - -#. type: table -#: doc/guix.texi:14149 -msgid "recipient" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14151 -msgid "" -"Defaults to @samp{\"Your message to <%t> was automatically rejected:%n%r\"}." +msgid "{@code{dovecot-configuration} parameter} colon-separated-file-name-list valid-chroot-dirs" msgstr "" #. type: deftypevr #: doc/guix.texi:14153 +msgid "List of directories under which chrooting is allowed for mail processes (i.e. /var/mail will allow chrooting to /var/mail/foo/bar too). This setting doesn't affect @samp{login-chroot} @samp{mail-chroot} or auth chroot settings. If this setting is empty, \"/./\" in home dirs are ignored. WARNING: Never add directories here which local users can modify, that may lead to root exploit. Usually this should be done only if you don't allow shell access for users. . Defaults to @samp{()}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14155 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string recipient-delimiter" +msgid "{@code{dovecot-configuration} parameter} string mail-chroot" msgstr "" #. type: deftypevr -#: doc/guix.texi:14157 -msgid "" -"Delimiter character between local-part and detail in email address. " -"Defaults to @samp{\"+\"}." +#: doc/guix.texi:14164 +msgid "Default chroot directory for mail processes. This can be overridden for specific users in user database by giving /./ in user's home directory (e.g. /home/./user chroots into /home). Note that usually there is no real need to do chrooting, Dovecot doesn't allow users to access files outside their mail directory anyway. If your home directories are prefixed with the chroot directory, append \"/.\" to @samp{mail-chroot}. . Defaults to @samp{\"\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14159 +#: doc/guix.texi:14166 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string lda-original-recipient-header" +msgid "{@code{dovecot-configuration} parameter} file-name auth-socket-path" msgstr "" #. type: deftypevr -#: doc/guix.texi:14165 -msgid "" -"Header where the original recipient address (SMTP's RCPT TO: address) is " -"taken from if not available elsewhere. With dovecot-lda -a parameter " -"overrides this. A commonly used header for this is X-Original-To. Defaults " -"to @samp{\"\"}." +#: doc/guix.texi:14170 +msgid "UNIX socket path to master authentication server to find users. This is used by imap (for shared users) and lda. Defaults to @samp{\"/var/run/dovecot/auth-userdb\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14167 +#: doc/guix.texi:14172 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean lda-mailbox-autocreate?" +msgid "{@code{dovecot-configuration} parameter} file-name mail-plugin-dir" msgstr "" #. type: deftypevr -#: doc/guix.texi:14171 -msgid "" -"Should saving a mail to a nonexistent mailbox automatically create it?. " -"Defaults to @samp{#f}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14173 -#, no-wrap -msgid "{@code{dovecot-configuration} parameter} boolean lda-mailbox-autosubscribe?" +#: doc/guix.texi:14175 +msgid "Directory where to look up mail plugins. Defaults to @samp{\"/usr/lib/dovecot\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:14177 -msgid "" -"Should automatically created mailboxes be also automatically subscribed?. " -"Defaults to @samp{#f}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14179 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} non-negative-integer imap-max-line-length" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mail-plugins" msgstr "" #. type: deftypevr -#: doc/guix.texi:14185 -msgid "" -"Maximum IMAP command line length. Some clients generate very long command " -"lines with huge mailboxes, so you may need to raise this if you get \"Too " -"long argument\" or \"IMAP command line too large\" errors often. Defaults " -"to @samp{64000}." +#: doc/guix.texi:14181 +msgid "List of plugins to load for all services. Plugins specific to IMAP, LDA, etc. are added to this list in their own .conf files. Defaults to @samp{()}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14187 +#: doc/guix.texi:14183 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string imap-logout-format" +msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-cache-min-mail-count" msgstr "" #. type: deftypevr -#: doc/guix.texi:14189 -msgid "IMAP logout format string:" +#: doc/guix.texi:14188 +msgid "The minimum number of mails in a mailbox before updates are done to cache file. This allows optimizing Dovecot's behavior to do less disk writes at the cost of more disk reads. Defaults to @samp{0}." msgstr "" -#. type: item +#. type: deftypevr #: doc/guix.texi:14190 #, no-wrap -msgid "%i" -msgstr "" - -#. type: table -#: doc/guix.texi:14192 -msgid "total number of bytes read from client" -msgstr "" - -#. type: item -#: doc/guix.texi:14192 -#, no-wrap -msgid "%o" -msgstr "" - -#. type: table -#: doc/guix.texi:14194 -msgid "total number of bytes sent to client." +msgid "{@code{dovecot-configuration} parameter} string mailbox-idle-check-interval" msgstr "" #. type: deftypevr #: doc/guix.texi:14197 -msgid "" -"See @file{doc/wiki/Variables.txt} for a list of all the variables you can " -"use. Defaults to @samp{\"in=%i out=%o deleted=%@{deleted@} expunged=" -"%@{expunged@} trashed=%@{trashed@} hdr_count=%@{fetch_hdr_count@} hdr_bytes=" -"%@{fetch_hdr_bytes@} body_count=%@{fetch_body_count@} body_bytes=" -"%@{fetch_body_bytes@}\"}." +msgid "When IDLE command is running, mailbox is checked once in a while to see if there are any new mails or other changes. This setting defines the minimum time to wait between those checks. Dovecot can also use dnotify, inotify and kqueue to find out immediately when changes occur. Defaults to @samp{\"30 secs\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:14199 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string imap-capability" +msgid "{@code{dovecot-configuration} parameter} boolean mail-save-crlf?" msgstr "" #. type: deftypevr -#: doc/guix.texi:14203 -msgid "" -"Override the IMAP CAPABILITY response. If the value begins with '+', add " -"the given capabilities on top of the defaults (e.g. +XFOO XBAR). Defaults " -"to @samp{\"\"}." +#: doc/guix.texi:14206 +msgid "Save mails with CR+LF instead of plain LF. This makes sending those mails take less CPU, especially with sendfile() syscall with Linux and FreeBSD. But it also creates a bit more disk I/O which may just make it slower. Also note that if other software reads the mboxes/maildirs, they may handle the extra CRs wrong and cause problems. Defaults to @samp{#f}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14205 +#: doc/guix.texi:14208 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string imap-idle-notify-interval" +msgid "{@code{dovecot-configuration} parameter} boolean maildir-stat-dirs?" msgstr "" #. type: deftypevr -#: doc/guix.texi:14209 -msgid "" -"How long to wait between \"OK Still here\" notifications when client is " -"IDLEing. Defaults to @samp{\"2 mins\"}." +#: doc/guix.texi:14216 +msgid "By default LIST command returns all entries in maildir beginning with a dot. Enabling this option makes Dovecot return only entries which are directories. This is done by stat()ing each entry, so it causes more disk I/O. (For systems setting struct @samp{dirent->d_type} this check is free and it's done always regardless of this setting). Defaults to @samp{#f}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14211 +#: doc/guix.texi:14218 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string imap-id-send" +msgid "{@code{dovecot-configuration} parameter} boolean maildir-copy-with-hardlinks?" msgstr "" #. type: deftypevr -#: doc/guix.texi:14217 -msgid "" -"ID field names and values to send to clients. Using * as the value makes " -"Dovecot use the default value. The following fields have default values " -"currently: name, version, os, os-version, support-url, support-email. " -"Defaults to @samp{\"\"}." +#: doc/guix.texi:14223 +msgid "When copying a message, do it with hard links whenever possible. This makes the performance much better, and it's unlikely to have any side effects. Defaults to @samp{#t}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14219 +#: doc/guix.texi:14225 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string imap-id-log" +msgid "{@code{dovecot-configuration} parameter} boolean maildir-very-dirty-syncs?" msgstr "" #. type: deftypevr -#: doc/guix.texi:14222 -msgid "" -"ID fields sent by client to log. * means everything. Defaults to " -"@samp{\"\"}." +#: doc/guix.texi:14230 +msgid "Assume Dovecot is the only MUA accessing Maildir: Scan cur/ directory only when its mtime changes unexpectedly or when we can't find the mail otherwise. Defaults to @samp{#f}." msgstr "" #. type: deftypevr -#: doc/guix.texi:14224 +#: doc/guix.texi:14232 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} space-separated-string-list imap-client-workarounds" +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mbox-read-locks" msgstr "" #. type: deftypevr -#: doc/guix.texi:14226 -msgid "Workarounds for various client bugs:" -msgstr "" - -#. type: item -#: doc/guix.texi:14228 -#, no-wrap -msgid "delay-newmail" -msgstr "" - -#. type: table #: doc/guix.texi:14235 -msgid "" -"Send EXISTS/RECENT new mail notifications only when replying to NOOP and " -"CHECK commands. Some clients ignore them otherwise, for example OSX Mail " -"(.lock file. This is the oldest and most NFS-safe solution. If you want to use /var/mail/ like directory, the users will need write access to that directory." msgstr "" #. type: item #: doc/guix.texi:14241 #, no-wrap -msgid "tb-lsub-flags" +msgid "dotlock-try" msgstr "" #. type: table -#: doc/guix.texi:14245 -msgid "" -"Show \\Noselect flags for LSUB replies with LAYOUT=fs (e.g. mbox). This " -"makes Thunderbird realize they aren't selectable and show them greyed out, " -"instead of only later giving \"not selectable\" popup error." +#: doc/guix.texi:14244 +msgid "Same as dotlock, but if it fails because of permissions or because there isn't enough disk space, just skip it." msgstr "" -#. type: deftypevr -#: doc/guix.texi:14249 +#. type: item +#: doc/guix.texi:14244 #, no-wrap -msgid "{@code{dovecot-configuration} parameter} string imap-urlauth-host" +msgid "fcntl" msgstr "" -#. type: deftypevr -#: doc/guix.texi:14252 -msgid "" -"Host allowed in URLAUTH URLs sent by client. \"*\" allows all. Defaults to " -"@samp{\"\"}." +#. type: table +#: doc/guix.texi:14246 +msgid "Use this if possible. Works with NFS too if lockd is used." msgstr "" -#. type: Plain text -#: doc/guix.texi:14260 -msgid "" -"Whew! Lots of configuration options. The nice thing about it though is that " -"GuixSD has a complete interface to Dovecot's configuration language. This " -"allows not only a nice way to declare configurations, but also offers " -"reflective capabilities as well: users can write code to inspect and " -"transform configurations from within Scheme." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:14266 -msgid "" -"However, it could be that you just want to get a @code{dovecot.conf} up and " -"running. In that case, you can pass an @code{opaque-dovecot-configuration} " -"as the @code{#:config} parameter to @code{dovecot-service}. As its name " -"indicates, an opaque configuration does not have easy reflective " -"capabilities." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:14268 -msgid "Available @code{opaque-dovecot-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:14269 +#. type: item +#: doc/guix.texi:14246 #, no-wrap -msgid "{@code{opaque-dovecot-configuration} parameter} package dovecot" +msgid "flock" +msgstr "" + +#. type: table +#: doc/guix.texi:14248 doc/guix.texi:14250 +msgid "May not exist in all systems. Doesn't work with NFS." +msgstr "" + +#. type: item +#: doc/guix.texi:14248 +#, no-wrap +msgid "lockf" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14256 +msgid "You can use multiple locking methods; if you do the order they're declared in is important to avoid deadlocks if other MTAs/MUAs are using multiple locking methods as well. Some operating systems don't allow using some of them simultaneously." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14258 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mbox-write-locks" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14262 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string mbox-lock-timeout" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14265 +msgid "Maximum time to wait for lock (all of them) before aborting. Defaults to @samp{\"5 mins\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14267 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string mbox-dotlock-change-timeout" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14271 +msgid "If dotlock exists but the mailbox isn't modified in any way, override the lock file after this much time. Defaults to @samp{\"2 mins\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:14273 #, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean mbox-dirty-syncs?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14284 +msgid "When mbox changes unexpectedly we have to fully read it to find out what changed. If the mbox is large this can take a long time. Since the change is usually just a newly appended mail, it'd be faster to simply read the new mails. If this setting is enabled, Dovecot does this but still safely fallbacks to re-reading the whole mbox file whenever something in mbox isn't how it's expected to be. The only real downside to this setting is that if some other MUA changes message flags, Dovecot doesn't notice it immediately. Note that a full sync is done with SELECT, EXAMINE, EXPUNGE and CHECK commands. Defaults to @samp{#t}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14286 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean mbox-very-dirty-syncs?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14291 +msgid "Like @samp{mbox-dirty-syncs}, but don't do full syncs even with SELECT, EXAMINE, EXPUNGE or CHECK commands. If this is set, @samp{mbox-dirty-syncs} is ignored. Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14293 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean mbox-lazy-writes?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14299 +msgid "Delay writing mbox headers until doing a full write sync (EXPUNGE and CHECK commands and when closing the mailbox). This is especially useful for POP3 where clients often delete all mails. The downside is that our changes aren't immediately visible to other MUAs. Defaults to @samp{#t}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14301 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} non-negative-integer mbox-min-index-size" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14306 +msgid "If mbox size is smaller than this (e.g. 100k), don't write index files. If an index file already exists it's still read, just not updated. Defaults to @samp{0}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14308 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} non-negative-integer mdbox-rotate-size" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14311 +msgid "Maximum dbox file size until it's rotated. Defaults to @samp{10000000}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14313 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string mdbox-rotate-interval" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14318 +msgid "Maximum dbox file age until it's rotated. Typically in days. Day begins from midnight, so 1d = today, 2d = yesterday, etc. 0 = check disabled. Defaults to @samp{\"1d\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14320 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean mdbox-preallocate-space?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14325 +msgid "When creating new mdbox files, immediately preallocate their size to @samp{mdbox-rotate-size}. This setting currently works only in Linux with some file systems (ext4, xfs). Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14327 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string mail-attachment-dir" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14331 +msgid "sdbox and mdbox support saving mail attachments to external files, which also allows single instance storage for them. Other backends don't support this for now." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14333 +msgid "WARNING: This feature hasn't been tested much yet. Use at your own risk." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14336 +msgid "Directory root where to store mail attachments. Disabled, if empty. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14338 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-attachment-min-size" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14343 +msgid "Attachments smaller than this aren't saved externally. It's also possible to write a plugin to disable saving specific attachments externally. Defaults to @samp{128000}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14345 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string mail-attachment-fs" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14347 +msgid "File system backend to use for saving attachments:" +msgstr "" + +#. type: item +#: doc/guix.texi:14348 +#, no-wrap +msgid "posix" +msgstr "" + +#. type: table +#: doc/guix.texi:14350 +msgid "No SiS done by Dovecot (but this might help FS's own deduplication)" +msgstr "" + +#. type: item +#: doc/guix.texi:14350 +#, no-wrap +msgid "sis posix" +msgstr "" + +#. type: table +#: doc/guix.texi:14352 +msgid "SiS with immediate byte-by-byte comparison during saving" +msgstr "" + +#. type: item +#: doc/guix.texi:14352 +#, no-wrap +msgid "sis-queue posix" +msgstr "" + +#. type: table +#: doc/guix.texi:14354 +msgid "SiS with delayed comparison and deduplication." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14356 +msgid "Defaults to @samp{\"sis posix\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14358 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string mail-attachment-hash" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14364 +msgid "Hash format to use in attachment filenames. You can add any text and variables: @code{%@{md4@}}, @code{%@{md5@}}, @code{%@{sha1@}}, @code{%@{sha256@}}, @code{%@{sha512@}}, @code{%@{size@}}. Variables can be truncated, e.g. @code{%@{sha256:80@}} returns only first 80 bits. Defaults to @samp{\"%@{sha1@}\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14366 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-process-limit" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14371 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-client-limit" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14374 doc/guix.texi:18402 +msgid "Defaults to @samp{1000}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14376 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-vsz-limit" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14381 +msgid "Default VSZ (virtual memory size) limit for service processes. This is mainly intended to catch and kill processes that leak memory before they eat up everything. Defaults to @samp{256000000}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14383 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string default-login-user" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14388 +msgid "Login user is internally used by login processes. This is the most untrusted user in Dovecot system. It shouldn't have access to anything at all. Defaults to @samp{\"dovenull\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14390 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string default-internal-user" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14395 +msgid "Internal user is used by unprivileged processes. It should be separate from login user, so that login processes can't disturb other processes. Defaults to @samp{\"dovecot\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14397 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string ssl?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14400 +msgid "SSL/TLS support: yes, no, required. . Defaults to @samp{\"required\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14402 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string ssl-cert" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14405 +msgid "PEM encoded X.509 SSL/TLS certificate (public key). Defaults to @samp{\" was automatically rejected:%n%r\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14515 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string recipient-delimiter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14519 +msgid "Delimiter character between local-part and detail in email address. Defaults to @samp{\"+\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14521 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string lda-original-recipient-header" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14527 +msgid "Header where the original recipient address (SMTP's RCPT TO: address) is taken from if not available elsewhere. With dovecot-lda -a parameter overrides this. A commonly used header for this is X-Original-To. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14529 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean lda-mailbox-autocreate?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14533 +msgid "Should saving a mail to a nonexistent mailbox automatically create it?. Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14535 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} boolean lda-mailbox-autosubscribe?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14539 +msgid "Should automatically created mailboxes be also automatically subscribed?. Defaults to @samp{#f}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14541 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} non-negative-integer imap-max-line-length" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14547 +msgid "Maximum IMAP command line length. Some clients generate very long command lines with huge mailboxes, so you may need to raise this if you get \"Too long argument\" or \"IMAP command line too large\" errors often. Defaults to @samp{64000}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14549 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string imap-logout-format" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14551 +msgid "IMAP logout format string:" +msgstr "" + +#. type: item +#: doc/guix.texi:14552 +#, no-wrap +msgid "%i" +msgstr "" + +#. type: table +#: doc/guix.texi:14554 +msgid "total number of bytes read from client" +msgstr "" + +#. type: item +#: doc/guix.texi:14554 +#, no-wrap +msgid "%o" +msgstr "" + +#. type: table +#: doc/guix.texi:14556 +msgid "total number of bytes sent to client." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14559 +msgid "See @file{doc/wiki/Variables.txt} for a list of all the variables you can use. Defaults to @samp{\"in=%i out=%o deleted=%@{deleted@} expunged=%@{expunged@} trashed=%@{trashed@} hdr_count=%@{fetch_hdr_count@} hdr_bytes=%@{fetch_hdr_bytes@} body_count=%@{fetch_body_count@} body_bytes=%@{fetch_body_bytes@}\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14561 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string imap-capability" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14565 +msgid "Override the IMAP CAPABILITY response. If the value begins with '+', add the given capabilities on top of the defaults (e.g. +XFOO XBAR). Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14567 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string imap-idle-notify-interval" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14571 +msgid "How long to wait between \"OK Still here\" notifications when client is IDLEing. Defaults to @samp{\"2 mins\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14573 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string imap-id-send" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14579 +msgid "ID field names and values to send to clients. Using * as the value makes Dovecot use the default value. The following fields have default values currently: name, version, os, os-version, support-url, support-email. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14581 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} string imap-id-log" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14584 +msgid "ID fields sent by client to log. * means everything. Defaults to @samp{\"\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14586 +#, no-wrap +msgid "{@code{dovecot-configuration} parameter} space-separated-string-list imap-client-workarounds" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:14588 +msgid "Workarounds for various client bugs:" +msgstr "" + +#. type: item +#: doc/guix.texi:14590 +#, no-wrap +msgid "delay-newmail" +msgstr "" + +#. type: table +#: doc/guix.texi:14597 +msgid "Send EXISTS/RECENT new mail notifications only when replying to NOOP and CHECK commands. Some clients ignore them otherwise, for example OSX Mail (' before setting it here, to get a feel for which cipher suites you " -"will get. After setting this option, it is recommend that you inspect your " -"Murmur log to ensure that Murmur is using the cipher suites that you " -"expected it to." +#: doc/guix.texi:15378 +msgid "It is recommended that you try your cipher string using 'openssl ciphers ' before setting it here, to get a feel for which cipher suites you will get. After setting this option, it is recommend that you inspect your Murmur log to ensure that Murmur is using the cipher suites that you expected it to." msgstr "" #. type: table -#: doc/guix.texi:15017 -msgid "" -"Note: Changing this option may impact the backwards compatibility of your " -"Murmur server, and can remove the ability for older Mumble clients to be " -"able to connect to it." +#: doc/guix.texi:15382 +msgid "Note: Changing this option may impact the backwards compatibility of your Murmur server, and can remove the ability for older Mumble clients to be able to connect to it." msgstr "" #. type: item -#: doc/guix.texi:15018 +#: doc/guix.texi:15383 #, no-wrap msgid "@code{public-registration} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15020 -msgid "" -"Must be a @code{} record or " -"@code{#f}." +#: doc/guix.texi:15385 +msgid "Must be a @code{} record or @code{#f}." msgstr "" #. type: table -#: doc/guix.texi:15025 -msgid "" -"You can optionally register your server in the public server list that the " -"@code{mumble} client shows on startup. You cannot register your server if " -"you have set a @code{server-password}, or set @code{allow-ping} to @code{#f}." +#: doc/guix.texi:15390 +msgid "You can optionally register your server in the public server list that the @code{mumble} client shows on startup. You cannot register your server if you have set a @code{server-password}, or set @code{allow-ping} to @code{#f}." msgstr "" #. type: table -#: doc/guix.texi:15027 +#: doc/guix.texi:15392 msgid "It might take a few hours until it shows up in the public list." msgstr "" #. type: item -#: doc/guix.texi:15028 doc/guix.texi:15599 +#: doc/guix.texi:15393 doc/guix.texi:15964 #, no-wrap msgid "@code{file} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15030 +#: doc/guix.texi:15395 msgid "Optional alternative override for this configuration." msgstr "" #. type: deftp -#: doc/guix.texi:15033 +#: doc/guix.texi:15398 #, no-wrap msgid "{Data Type} murmur-public-registration-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15035 +#: doc/guix.texi:15400 msgid "Configuration for public registration of a murmur service." msgstr "" #. type: table -#: doc/guix.texi:15039 -msgid "" -"This is a display name for your server. Not to be confused with the hostname." +#: doc/guix.texi:15404 +msgid "This is a display name for your server. Not to be confused with the hostname." msgstr "" #. type: itemx -#: doc/guix.texi:15040 doc/guix.texi:19930 +#: doc/guix.texi:15405 doc/guix.texi:20414 #, no-wrap msgid "password" msgstr "" #. type: table -#: doc/guix.texi:15043 -msgid "" -"A password to identify your registration. Subsequent updates will need the " -"same password. Don't lose your password." +#: doc/guix.texi:15408 +msgid "A password to identify your registration. Subsequent updates will need the same password. Don't lose your password." msgstr "" #. type: code{#1} -#: doc/guix.texi:15044 +#: doc/guix.texi:15409 #, no-wrap msgid "url" msgstr "" #. type: table -#: doc/guix.texi:15047 -msgid "" -"This should be a @code{http://} or @code{https://} link to your web site." +#: doc/guix.texi:15412 +msgid "This should be a @code{http://} or @code{https://} link to your web site." msgstr "" #. type: item -#: doc/guix.texi:15048 +#: doc/guix.texi:15413 #, no-wrap msgid "@code{hostname} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15051 -msgid "" -"By default your server will be listed by its IP address. If it is set your " -"server will be linked by this host name instead." +#: doc/guix.texi:15416 +msgid "By default your server will be listed by its IP address. If it is set your server will be linked by this host name instead." msgstr "" #. type: subsubheading -#: doc/guix.texi:15059 +#: doc/guix.texi:15424 #, no-wrap msgid "Tailon Service" msgstr "" #. type: Plain text -#: doc/guix.texi:15063 -msgid "" -"@uref{https://tailon.readthedocs.io/, Tailon} is a web application for " -"viewing and searching log files." +#: doc/guix.texi:15428 +msgid "@uref{https://tailon.readthedocs.io/, Tailon} is a web application for viewing and searching log files." msgstr "" #. type: Plain text -#: doc/guix.texi:15066 -msgid "" -"The following example will configure the service with default values. By " -"default, Tailon can be accessed on port 8080 (@code{http://localhost:8080})." +#: doc/guix.texi:15431 +msgid "The following example will configure the service with default values. By default, Tailon can be accessed on port 8080 (@code{http://localhost:8080})." msgstr "" #. type: example -#: doc/guix.texi:15069 +#: doc/guix.texi:15434 #, no-wrap msgid "(service tailon-service-type)\n" msgstr "" #. type: Plain text -#: doc/guix.texi:15073 -msgid "" -"The following example customises more of the Tailon configuration, adding " -"@command{sed} to the list of allowed commands." +#: doc/guix.texi:15438 +msgid "The following example customises more of the Tailon configuration, adding @command{sed} to the list of allowed commands." msgstr "" #. type: example -#: doc/guix.texi:15080 +#: doc/guix.texi:15445 #, no-wrap msgid "" "(service tailon-service-type\n" @@ -33722,40 +27728,34 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:15083 +#: doc/guix.texi:15448 #, no-wrap msgid "{Data Type} tailon-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15086 -msgid "" -"Data type representing the configuration of Tailon. This type has the " -"following parameters:" +#: doc/guix.texi:15451 +msgid "Data type representing the configuration of Tailon. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:15088 +#: doc/guix.texi:15453 #, no-wrap msgid "@code{config-file} (default: @code{(tailon-configuration-file)})" msgstr "" #. type: table -#: doc/guix.texi:15092 -msgid "" -"The configuration file to use for Tailon. This can be set to a @dfn{tailon-" -"configuration-file} record value, or any gexp (@pxref{G-Expressions})." +#: doc/guix.texi:15457 +msgid "The configuration file to use for Tailon. This can be set to a @dfn{tailon-configuration-file} record value, or any gexp (@pxref{G-Expressions})." msgstr "" #. type: table -#: doc/guix.texi:15095 -msgid "" -"For example, to instead use a local file, the @code{local-file} function can " -"be used:" +#: doc/guix.texi:15460 +msgid "For example, to instead use a local file, the @code{local-file} function can be used:" msgstr "" #. type: example -#: doc/guix.texi:15100 +#: doc/guix.texi:15465 #, no-wrap msgid "" "(service tailon-service-type\n" @@ -33764,164 +27764,150 @@ msgid "" msgstr "" #. type: item -#: doc/guix.texi:15102 +#: doc/guix.texi:15467 #, no-wrap msgid "@code{package} (default: @code{tailon})" msgstr "" #. type: table -#: doc/guix.texi:15104 +#: doc/guix.texi:15469 msgid "The tailon package to use." msgstr "" #. type: deftp -#: doc/guix.texi:15108 +#: doc/guix.texi:15473 #, no-wrap msgid "{Data Type} tailon-configuration-file" msgstr "" #. type: deftp -#: doc/guix.texi:15111 -msgid "" -"Data type representing the configuration options for Tailon. This type has " -"the following parameters:" +#: doc/guix.texi:15476 +msgid "Data type representing the configuration options for Tailon. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:15113 +#: doc/guix.texi:15478 #, no-wrap msgid "@code{files} (default: @code{(list \"/var/log\")})" msgstr "" #. type: table -#: doc/guix.texi:15118 -msgid "" -"List of files to display. The list can include strings for a single file or " -"directory, or a list, where the first item is the name of a subsection, and " -"the remaining items are the files or directories in that subsection." +#: doc/guix.texi:15483 +msgid "List of files to display. The list can include strings for a single file or directory, or a list, where the first item is the name of a subsection, and the remaining items are the files or directories in that subsection." msgstr "" #. type: item -#: doc/guix.texi:15119 +#: doc/guix.texi:15484 #, no-wrap msgid "@code{bind} (default: @code{\"localhost:8080\"})" msgstr "" #. type: table -#: doc/guix.texi:15121 +#: doc/guix.texi:15486 msgid "Address and port to which Tailon should bind on." msgstr "" #. type: item -#: doc/guix.texi:15122 +#: doc/guix.texi:15487 #, no-wrap msgid "@code{relative-root} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15124 +#: doc/guix.texi:15489 msgid "URL path to use for Tailon, set to @code{#f} to not use a path." msgstr "" #. type: item -#: doc/guix.texi:15125 +#: doc/guix.texi:15490 #, no-wrap msgid "@code{allow-transfers?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:15127 +#: doc/guix.texi:15492 msgid "Allow downloading the log files in the web interface." msgstr "" #. type: item -#: doc/guix.texi:15128 +#: doc/guix.texi:15493 #, no-wrap msgid "@code{follow-names?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:15130 +#: doc/guix.texi:15495 msgid "Allow tailing of not-yet existent files." msgstr "" #. type: item -#: doc/guix.texi:15131 +#: doc/guix.texi:15496 #, no-wrap msgid "@code{tail-lines} (default: @code{200})" msgstr "" #. type: table -#: doc/guix.texi:15133 +#: doc/guix.texi:15498 msgid "Number of lines to read initially from each file." msgstr "" #. type: item -#: doc/guix.texi:15134 +#: doc/guix.texi:15499 #, no-wrap msgid "@code{allowed-commands} (default: @code{(list \"tail\" \"grep\" \"awk\")})" msgstr "" #. type: table -#: doc/guix.texi:15136 +#: doc/guix.texi:15501 msgid "Commands to allow running. By default, @code{sed} is disabled." msgstr "" #. type: item -#: doc/guix.texi:15137 +#: doc/guix.texi:15502 #, no-wrap msgid "@code{debug?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15139 +#: doc/guix.texi:15504 msgid "Set @code{debug?} to @code{#t} to show debug messages." msgstr "" #. type: item -#: doc/guix.texi:15140 +#: doc/guix.texi:15505 #, no-wrap msgid "@code{wrap-lines} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:15144 -msgid "" -"Initial line wrapping state in the web interface. Set to @code{#t} to " -"initially wrap lines (the default), or to @code{#f} to initially not wrap " -"lines." +#: doc/guix.texi:15509 +msgid "Initial line wrapping state in the web interface. Set to @code{#t} to initially wrap lines (the default), or to @code{#f} to initially not wrap lines." msgstr "" #. type: item -#: doc/guix.texi:15145 +#: doc/guix.texi:15510 #, no-wrap msgid "@code{http-auth} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15149 -msgid "" -"HTTP authentication type to use. Set to @code{#f} to disable authentication " -"(the default). Supported values are @code{\"digest\"} or @code{\"basic\"}." +#: doc/guix.texi:15514 +msgid "HTTP authentication type to use. Set to @code{#f} to disable authentication (the default). Supported values are @code{\"digest\"} or @code{\"basic\"}." msgstr "" #. type: item -#: doc/guix.texi:15150 +#: doc/guix.texi:15515 #, no-wrap msgid "@code{users} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15155 -msgid "" -"If HTTP authentication is enabled (see @code{http-auth}), access will be " -"restricted to the credentials provided here. To configure users, use a list " -"of pairs, where the first element of the pair is the username, and the 2nd " -"element of the pair is the password." +#: doc/guix.texi:15520 +msgid "If HTTP authentication is enabled (see @code{http-auth}), access will be restricted to the credentials provided here. To configure users, use a list of pairs, where the first element of the pair is the username, and the 2nd element of the pair is the password." msgstr "" #. type: example -#: doc/guix.texi:15161 +#: doc/guix.texi:15526 #, no-wrap msgid "" "(tailon-configuration-file\n" @@ -33931,40 +27917,35 @@ msgid "" msgstr "" #. type: subsubheading -#: doc/guix.texi:15167 +#: doc/guix.texi:15532 #, no-wrap msgid "Darkstat Service" msgstr "" #. type: cindex -#: doc/guix.texi:15168 +#: doc/guix.texi:15533 #, no-wrap msgid "darkstat" msgstr "" #. type: Plain text -#: doc/guix.texi:15171 -msgid "" -"Darkstat is a packet sniffer that captures network traffic, calculates " -"statistics about usage, and serves reports over HTTP." +#: doc/guix.texi:15536 +msgid "Darkstat is a packet sniffer that captures network traffic, calculates statistics about usage, and serves reports over HTTP." msgstr "" #. type: defvar -#: doc/guix.texi:15172 +#: doc/guix.texi:15537 #, no-wrap msgid "{Scheme Variable} darkstat-service-type" msgstr "" #. type: defvar -#: doc/guix.texi:15177 -msgid "" -"This is the service type for the @uref{https://unix4lyfe.org/darkstat/, " -"darkstat} service, its value must be a @code{darkstat-configuration} record " -"as in this example:" +#: doc/guix.texi:15542 +msgid "This is the service type for the @uref{https://unix4lyfe.org/darkstat/, darkstat} service, its value must be a @code{darkstat-configuration} record as in this example:" msgstr "" #. type: example -#: doc/guix.texi:15182 +#: doc/guix.texi:15547 #, no-wrap msgid "" "(service darkstat-service-type\n" @@ -33973,127 +27954,116 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:15185 +#: doc/guix.texi:15550 #, no-wrap msgid "{Data Type} darkstat-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15187 +#: doc/guix.texi:15552 msgid "Data type representing the configuration of @command{darkstat}." msgstr "" #. type: item -#: doc/guix.texi:15189 +#: doc/guix.texi:15554 #, no-wrap msgid "@code{package} (default: @code{darkstat})" msgstr "" #. type: table -#: doc/guix.texi:15191 +#: doc/guix.texi:15556 msgid "The darkstat package to use." msgstr "" #. type: code{#1} -#: doc/guix.texi:15192 +#: doc/guix.texi:15557 #, no-wrap msgid "interface" msgstr "" #. type: table -#: doc/guix.texi:15194 +#: doc/guix.texi:15559 msgid "Capture traffic on the specified network interface." msgstr "" #. type: item -#: doc/guix.texi:15195 +#: doc/guix.texi:15560 #, no-wrap msgid "@code{port} (default: @code{\"667\"})" msgstr "" #. type: table -#: doc/guix.texi:15197 +#: doc/guix.texi:15562 msgid "Bind the web interface to the specified port." msgstr "" #. type: item -#: doc/guix.texi:15198 +#: doc/guix.texi:15563 #, no-wrap msgid "@code{bind-address} (default: @code{\"127.0.0.1\"})" msgstr "" #. type: table -#: doc/guix.texi:15200 +#: doc/guix.texi:15565 msgid "Bind the web interface to the specified address." msgstr "" #. type: item -#: doc/guix.texi:15201 +#: doc/guix.texi:15566 #, no-wrap msgid "@code{base} (default: @code{\"/\"})" msgstr "" #. type: table -#: doc/guix.texi:15204 -msgid "" -"Specify the path of the base URL. This can be useful if @command{darkstat} " -"is accessed via a reverse proxy." +#: doc/guix.texi:15569 +msgid "Specify the path of the base URL. This can be useful if @command{darkstat} is accessed via a reverse proxy." msgstr "" #. type: cindex -#: doc/guix.texi:15211 +#: doc/guix.texi:15576 #, no-wrap msgid "Kerberos" msgstr "" #. type: Plain text -#: doc/guix.texi:15215 -msgid "" -"The @code{(gnu services kerberos)} module provides services relating to the " -"authentication protocol @dfn{Kerberos}." +#: doc/guix.texi:15580 +msgid "The @code{(gnu services kerberos)} module provides services relating to the authentication protocol @dfn{Kerberos}." msgstr "" #. type: subsubheading -#: doc/guix.texi:15216 +#: doc/guix.texi:15581 #, no-wrap msgid "Krb5 Service" msgstr "" #. type: Plain text -#: doc/guix.texi:15223 -msgid "" -"Programs using a Kerberos client library normally expect a configuration " -"file in @file{/etc/krb5.conf}. This service generates such a file from a " -"definition provided in the operating system declaration. It does not cause " -"any daemon to be started." +#: doc/guix.texi:15588 +msgid "Programs using a Kerberos client library normally expect a configuration file in @file{/etc/krb5.conf}. This service generates such a file from a definition provided in the operating system declaration. It does not cause any daemon to be started." msgstr "" #. type: Plain text -#: doc/guix.texi:15227 -msgid "" -"No ``keytab'' files are provided by this service---you must explicitly " -"create them. This service is known to work with the MIT client library, " -"@code{mit-krb5}. Other implementations have not been tested." +#: doc/guix.texi:15592 +msgid "No ``keytab'' files are provided by this service---you must explicitly create them. This service is known to work with the MIT client library, @code{mit-krb5}. Other implementations have not been tested." msgstr "" #. type: defvr -#: doc/guix.texi:15228 +#: doc/guix.texi:15593 #, no-wrap msgid "{Scheme Variable} krb5-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:15230 +#: doc/guix.texi:15595 msgid "A service type for Kerberos 5 clients." msgstr "" #. type: Plain text -#: doc/guix.texi:15234 +#: doc/guix.texi:15599 msgid "Here is an example of its use:" msgstr "" #. type: lisp -#: doc/guix.texi:15248 +#: doc/guix.texi:15613 #, no-wrap msgid "" "(service krb5-service-type\n" @@ -34112,263 +28082,229 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:15252 +#: doc/guix.texi:15617 msgid "This example provides a Kerberos@tie{}5 client configuration which:" msgstr "" #. type: item -#: doc/guix.texi:15253 +#: doc/guix.texi:15618 #, no-wrap msgid "Recognizes two realms, @i{viz:} ``EXAMPLE.COM'' and ``ARGRX.EDU'', both" msgstr "" #. type: itemize -#: doc/guix.texi:15255 -msgid "" -"of which have distinct administration servers and key distribution centers;" +#: doc/guix.texi:15620 +msgid "of which have distinct administration servers and key distribution centers;" msgstr "" #. type: item -#: doc/guix.texi:15255 +#: doc/guix.texi:15620 #, no-wrap msgid "Will default to the realm ``EXAMPLE.COM'' if the realm is not explicitly" msgstr "" #. type: itemize -#: doc/guix.texi:15257 +#: doc/guix.texi:15622 msgid "specified by clients;" msgstr "" #. type: item -#: doc/guix.texi:15257 +#: doc/guix.texi:15622 #, no-wrap msgid "Accepts services which only support encryption types known to be weak." msgstr "" #. type: Plain text -#: doc/guix.texi:15265 -msgid "" -"The @code{krb5-realm} and @code{krb5-configuration} types have many fields. " -"Only the most commonly used ones are described here. For a full list, and " -"more detailed explanation of each, see the MIT @uref{http://web.mit.edu/" -"kerberos/krb5-devel/doc/admin/conf_files/krb5_conf.html,,krb5.conf} " -"documentation." +#: doc/guix.texi:15630 +msgid "The @code{krb5-realm} and @code{krb5-configuration} types have many fields. Only the most commonly used ones are described here. For a full list, and more detailed explanation of each, see the MIT @uref{http://web.mit.edu/kerberos/krb5-devel/doc/admin/conf_files/krb5_conf.html,,krb5.conf} documentation." msgstr "" #. type: deftp -#: doc/guix.texi:15267 +#: doc/guix.texi:15632 #, no-wrap msgid "{Data Type} krb5-realm" msgstr "" #. type: cindex -#: doc/guix.texi:15268 +#: doc/guix.texi:15633 #, no-wrap msgid "realm, kerberos" msgstr "" #. type: table -#: doc/guix.texi:15274 -msgid "" -"This field is a string identifying the name of the realm. A common " -"convention is to use the fully qualified DNS name of your organization, " -"converted to upper case." +#: doc/guix.texi:15639 +msgid "This field is a string identifying the name of the realm. A common convention is to use the fully qualified DNS name of your organization, converted to upper case." msgstr "" #. type: code{#1} -#: doc/guix.texi:15275 +#: doc/guix.texi:15640 #, no-wrap msgid "admin-server" msgstr "" #. type: table -#: doc/guix.texi:15278 -msgid "" -"This field is a string identifying the host where the administration server " -"is running." +#: doc/guix.texi:15643 +msgid "This field is a string identifying the host where the administration server is running." msgstr "" #. type: code{#1} -#: doc/guix.texi:15279 +#: doc/guix.texi:15644 #, no-wrap msgid "kdc" msgstr "" #. type: table -#: doc/guix.texi:15282 -msgid "" -"This field is a string identifying the key distribution center for the realm." +#: doc/guix.texi:15647 +msgid "This field is a string identifying the key distribution center for the realm." msgstr "" #. type: deftp -#: doc/guix.texi:15285 +#: doc/guix.texi:15650 #, no-wrap msgid "{Data Type} krb5-configuration" msgstr "" #. type: item -#: doc/guix.texi:15288 +#: doc/guix.texi:15653 #, no-wrap msgid "@code{allow-weak-crypto?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15291 -msgid "" -"If this flag is @code{#t} then services which only offer encryption " -"algorithms known to be weak will be accepted." +#: doc/guix.texi:15656 +msgid "If this flag is @code{#t} then services which only offer encryption algorithms known to be weak will be accepted." msgstr "" #. type: item -#: doc/guix.texi:15292 +#: doc/guix.texi:15657 #, no-wrap msgid "@code{default-realm} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15299 -msgid "" -"This field should be a string identifying the default Kerberos realm for the " -"client. You should set this field to the name of your Kerberos realm. If " -"this value is @code{#f} then a realm must be specified with every Kerberos " -"principal when invoking programs such as @command{kinit}." +#: doc/guix.texi:15664 +msgid "This field should be a string identifying the default Kerberos realm for the client. You should set this field to the name of your Kerberos realm. If this value is @code{#f} then a realm must be specified with every Kerberos principal when invoking programs such as @command{kinit}." msgstr "" #. type: code{#1} -#: doc/guix.texi:15300 +#: doc/guix.texi:15665 #, no-wrap msgid "realms" msgstr "" #. type: table -#: doc/guix.texi:15305 -msgid "" -"This should be a non-empty list of @code{krb5-realm} objects, which clients " -"may access. Normally, one of them will have a @code{name} field matching " -"the @code{default-realm} field." +#: doc/guix.texi:15670 +msgid "This should be a non-empty list of @code{krb5-realm} objects, which clients may access. Normally, one of them will have a @code{name} field matching the @code{default-realm} field." msgstr "" #. type: subsubheading -#: doc/guix.texi:15309 +#: doc/guix.texi:15674 #, no-wrap msgid "PAM krb5 Service" msgstr "" #. type: cindex -#: doc/guix.texi:15310 +#: doc/guix.texi:15675 #, no-wrap msgid "pam-krb5" msgstr "" #. type: Plain text -#: doc/guix.texi:15316 -msgid "" -"The @code{pam-krb5} service allows for login authentication and password " -"management via Kerberos. You will need this service if you want PAM enabled " -"applications to authenticate users using Kerberos." +#: doc/guix.texi:15681 +msgid "The @code{pam-krb5} service allows for login authentication and password management via Kerberos. You will need this service if you want PAM enabled applications to authenticate users using Kerberos." msgstr "" #. type: defvr -#: doc/guix.texi:15317 +#: doc/guix.texi:15682 #, no-wrap msgid "{Scheme Variable} pam-krb5-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:15319 +#: doc/guix.texi:15684 msgid "A service type for the Kerberos 5 PAM module." msgstr "" #. type: deftp -#: doc/guix.texi:15321 +#: doc/guix.texi:15686 #, no-wrap msgid "{Data Type} pam-krb5-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15324 -msgid "" -"Data type representing the configuration of the Kerberos 5 PAM module This " -"type has the following parameters:" +#: doc/guix.texi:15689 +msgid "Data type representing the configuration of the Kerberos 5 PAM module This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:15325 +#: doc/guix.texi:15690 #, no-wrap msgid "@code{pam-krb5} (default: @code{pam-krb5})" msgstr "" #. type: table -#: doc/guix.texi:15327 +#: doc/guix.texi:15692 msgid "The pam-krb5 package to use." msgstr "" #. type: item -#: doc/guix.texi:15328 +#: doc/guix.texi:15693 #, no-wrap msgid "@code{minimum-uid} (default: @code{1000})" msgstr "" #. type: table -#: doc/guix.texi:15331 -msgid "" -"The smallest user ID for which Kerberos authentications should be " -"attempted. Local accounts with lower values will silently fail to " -"authenticate." +#: doc/guix.texi:15696 +msgid "The smallest user ID for which Kerberos authentications should be attempted. Local accounts with lower values will silently fail to authenticate." msgstr "" #. type: cindex -#: doc/guix.texi:15338 +#: doc/guix.texi:15703 #, no-wrap msgid "web" msgstr "" #. type: cindex -#: doc/guix.texi:15339 +#: doc/guix.texi:15704 #, no-wrap msgid "www" msgstr "" #. type: cindex -#: doc/guix.texi:15340 +#: doc/guix.texi:15705 #, no-wrap msgid "HTTP" msgstr "" #. type: Plain text -#: doc/guix.texi:15343 -msgid "" -"The @code{(gnu services web)} module provides the Apache HTTP Server, the " -"nginx web server, and also a fastcgi wrapper daemon." +#: doc/guix.texi:15708 +msgid "The @code{(gnu services web)} module provides the Apache HTTP Server, the nginx web server, and also a fastcgi wrapper daemon." msgstr "" #. type: subsubheading -#: doc/guix.texi:15344 +#: doc/guix.texi:15709 #, no-wrap msgid "Apache HTTP Server" msgstr "" #. type: deffn -#: doc/guix.texi:15346 +#: doc/guix.texi:15711 #, no-wrap msgid "{Scheme Variable} httpd-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:15350 -msgid "" -"Service type for the @uref{https://httpd.apache.org/,Apache HTTP} server " -"(@dfn{httpd}). The value for this service type is a @code{https-" -"configuration} record." +#: doc/guix.texi:15715 +msgid "Service type for the @uref{https://httpd.apache.org/,Apache HTTP} server (@dfn{httpd}). The value for this service type is a @code{https-configuration} record." msgstr "" #. type: deffn -#: doc/guix.texi:15352 doc/guix.texi:15503 +#: doc/guix.texi:15717 doc/guix.texi:15868 msgid "A simple example configuration is given below." msgstr "" #. type: example -#: doc/guix.texi:15360 +#: doc/guix.texi:15725 #, no-wrap msgid "" "(service httpd-service-type\n" @@ -34380,14 +28316,12 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:15364 -msgid "" -"Other services can also extend the @code{httpd-service-type} to add to the " -"configuration." +#: doc/guix.texi:15729 +msgid "Other services can also extend the @code{httpd-service-type} to add to the configuration." msgstr "" #. type: example -#: doc/guix.texi:15373 doc/guix.texi:15483 +#: doc/guix.texi:15738 doc/guix.texi:15848 #, no-wrap msgid "" "(simple-service 'my-extra-server httpd-service-type\n" @@ -34400,292 +28334,257 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:15379 -msgid "" -"The details for the @code{httpd-configuration}, @code{httpd-module}, " -"@code{httpd-config-file} and @code{httpd-virtualhost} record types are given " -"below." +#: doc/guix.texi:15744 +msgid "The details for the @code{httpd-configuration}, @code{httpd-module}, @code{httpd-config-file} and @code{httpd-virtualhost} record types are given below." msgstr "" #. type: deffn -#: doc/guix.texi:15380 +#: doc/guix.texi:15745 #, no-wrap msgid "{Data Type} httpd-configuration" msgstr "" #. type: deffn -#: doc/guix.texi:15382 +#: doc/guix.texi:15747 msgid "This data type represents the configuration for the httpd service." msgstr "" #. type: item -#: doc/guix.texi:15384 +#: doc/guix.texi:15749 #, no-wrap msgid "@code{package} (default: @code{httpd})" msgstr "" #. type: table -#: doc/guix.texi:15386 +#: doc/guix.texi:15751 msgid "The httpd package to use." msgstr "" #. type: item -#: doc/guix.texi:15387 doc/guix.texi:15446 +#: doc/guix.texi:15752 doc/guix.texi:15811 #, no-wrap msgid "@code{pid-file} (default: @code{\"/var/run/httpd\"})" msgstr "" #. type: table -#: doc/guix.texi:15389 +#: doc/guix.texi:15754 msgid "The pid file used by the shepherd-service." msgstr "" #. type: item -#: doc/guix.texi:15390 +#: doc/guix.texi:15755 #, no-wrap msgid "@code{config} (default: @code{(httpd-config-file)})" msgstr "" #. type: table -#: doc/guix.texi:15395 -msgid "" -"The configuration file to use with the httpd service. The default value is a " -"@code{httpd-config-file} record, but this can also be a different G-" -"expression that generates a file, for example a @code{plain-file}. A file " -"outside of the store can also be specified through a string." +#: doc/guix.texi:15760 +msgid "The configuration file to use with the httpd service. The default value is a @code{httpd-config-file} record, but this can also be a different G-expression that generates a file, for example a @code{plain-file}. A file outside of the store can also be specified through a string." msgstr "" #. type: deffn -#: doc/guix.texi:15399 +#: doc/guix.texi:15764 #, no-wrap msgid "{Data Type} httpd-module" msgstr "" #. type: deffn -#: doc/guix.texi:15401 +#: doc/guix.texi:15766 msgid "This data type represents a module for the httpd service." msgstr "" #. type: table -#: doc/guix.texi:15405 +#: doc/guix.texi:15770 msgid "The name of the module." msgstr "" #. type: table -#: doc/guix.texi:15411 -msgid "" -"The file for the module. This can be relative to the httpd package being " -"used, the absolute location of a file, or a G-expression for a file within " -"the store, for example @code{(file-append mod-wsgi \"/modules/mod_wsgi.so" -"\")}." +#: doc/guix.texi:15776 +msgid "The file for the module. This can be relative to the httpd package being used, the absolute location of a file, or a G-expression for a file within the store, for example @code{(file-append mod-wsgi \"/modules/mod_wsgi.so\")}." msgstr "" #. type: deffn -#: doc/guix.texi:15415 +#: doc/guix.texi:15780 #, no-wrap msgid "{Data Type} httpd-config-file" msgstr "" #. type: deffn -#: doc/guix.texi:15417 +#: doc/guix.texi:15782 msgid "This data type represents a configuration file for the httpd service." msgstr "" #. type: item -#: doc/guix.texi:15419 +#: doc/guix.texi:15784 #, no-wrap msgid "@code{modules} (default: @code{%default-httpd-modules})" msgstr "" #. type: table -#: doc/guix.texi:15422 -msgid "" -"The modules to load. Additional modules can be added here, or loaded by " -"additional configuration." +#: doc/guix.texi:15787 +msgid "The modules to load. Additional modules can be added here, or loaded by additional configuration." msgstr "" #. type: item -#: doc/guix.texi:15423 +#: doc/guix.texi:15788 #, no-wrap msgid "@code{server-root} (default: @code{httpd})" msgstr "" #. type: table -#: doc/guix.texi:15427 -msgid "" -"The @code{ServerRoot} in the configuration file, defaults to the httpd " -"package. Directives including @code{Include} and @code{LoadModule} are taken " -"as relative to the server root." +#: doc/guix.texi:15792 +msgid "The @code{ServerRoot} in the configuration file, defaults to the httpd package. Directives including @code{Include} and @code{LoadModule} are taken as relative to the server root." msgstr "" #. type: item -#: doc/guix.texi:15428 +#: doc/guix.texi:15793 #, no-wrap msgid "@code{server-name} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15432 -msgid "" -"The @code{ServerName} in the configuration file, used to specify the request " -"scheme, hostname and port that the server uses to identify itself." +#: doc/guix.texi:15797 +msgid "The @code{ServerName} in the configuration file, used to specify the request scheme, hostname and port that the server uses to identify itself." msgstr "" #. type: table -#: doc/guix.texi:15436 -msgid "" -"This doesn't need to be set in the server config, and can be specifyed in " -"virtual hosts. The default is @code{#f} to not specify a @code{ServerName}." +#: doc/guix.texi:15801 +msgid "This doesn't need to be set in the server config, and can be specifyed in virtual hosts. The default is @code{#f} to not specify a @code{ServerName}." msgstr "" #. type: item -#: doc/guix.texi:15437 +#: doc/guix.texi:15802 #, no-wrap msgid "@code{document-root} (default: @code{\"/srv/http\"})" msgstr "" #. type: table -#: doc/guix.texi:15439 +#: doc/guix.texi:15804 msgid "The @code{DocumentRoot} from which files will be served." msgstr "" #. type: item -#: doc/guix.texi:15440 +#: doc/guix.texi:15805 #, no-wrap msgid "@code{listen} (default: @code{'(\"80\")})" msgstr "" #. type: table -#: doc/guix.texi:15445 -msgid "" -"The list of values for the @code{Listen} directives in the config file. The " -"value should be a list of strings, when each string can specify the port " -"number to listen on, and optionally the IP address and protocol to use." +#: doc/guix.texi:15810 +msgid "The list of values for the @code{Listen} directives in the config file. The value should be a list of strings, when each string can specify the port number to listen on, and optionally the IP address and protocol to use." msgstr "" #. type: table -#: doc/guix.texi:15450 -msgid "" -"The @code{PidFile} to use. This should match the @code{pid-file} set in the " -"@code{httpd-configuration} so that the Shepherd service is configured " -"correctly." +#: doc/guix.texi:15815 +msgid "The @code{PidFile} to use. This should match the @code{pid-file} set in the @code{httpd-configuration} so that the Shepherd service is configured correctly." msgstr "" #. type: item -#: doc/guix.texi:15451 +#: doc/guix.texi:15816 #, no-wrap msgid "@code{error-log} (default: @code{\"/var/log/httpd/error_log\"})" msgstr "" #. type: table -#: doc/guix.texi:15453 +#: doc/guix.texi:15818 msgid "The @code{ErrorLog} to which the server will log errors." msgstr "" #. type: item -#: doc/guix.texi:15454 +#: doc/guix.texi:15819 #, no-wrap msgid "@code{user} (default: @code{\"httpd\"})" msgstr "" #. type: table -#: doc/guix.texi:15456 +#: doc/guix.texi:15821 msgid "The @code{User} which the server will answer requests as." msgstr "" #. type: item -#: doc/guix.texi:15457 +#: doc/guix.texi:15822 #, no-wrap msgid "@code{group} (default: @code{\"httpd\"})" msgstr "" #. type: table -#: doc/guix.texi:15459 +#: doc/guix.texi:15824 msgid "The @code{Group} which the server will answer requests as." msgstr "" #. type: item -#: doc/guix.texi:15460 +#: doc/guix.texi:15825 #, no-wrap msgid "@code{extra-config} (default: @code{(list \"TypesConfig etc/httpd/mime.types\")})" msgstr "" #. type: table -#: doc/guix.texi:15463 -msgid "" -"A flat list of strings and G-expressions which will be added to the end of " -"the configuration file." +#: doc/guix.texi:15828 +msgid "A flat list of strings and G-expressions which will be added to the end of the configuration file." msgstr "" #. type: table -#: doc/guix.texi:15466 -msgid "" -"Any values which the service is extended with will be appended to this list." +#: doc/guix.texi:15831 +msgid "Any values which the service is extended with will be appended to this list." msgstr "" #. type: deffn -#: doc/guix.texi:15470 +#: doc/guix.texi:15835 #, no-wrap msgid "{Data Type} httpd-virtualhost" msgstr "" #. type: deffn -#: doc/guix.texi:15472 -msgid "" -"This data type represents a virtualhost configuration block for the httpd " -"service." +#: doc/guix.texi:15837 +msgid "This data type represents a virtualhost configuration block for the httpd service." msgstr "" #. type: deffn -#: doc/guix.texi:15474 +#: doc/guix.texi:15839 msgid "These should be added to the extra-config for the httpd-service." msgstr "" #. type: code{#1} -#: doc/guix.texi:15486 +#: doc/guix.texi:15851 #, no-wrap msgid "addresses-and-ports" msgstr "" #. type: table -#: doc/guix.texi:15488 +#: doc/guix.texi:15853 msgid "The addresses and ports for the @code{VirtualHost} directive." msgstr "" #. type: code{#1} -#: doc/guix.texi:15489 +#: doc/guix.texi:15854 #, no-wrap msgid "contents" msgstr "" #. type: table -#: doc/guix.texi:15492 -msgid "" -"The contents of the @code{VirtualHost} directive, this should be a list of " -"strings and G-expressions." +#: doc/guix.texi:15857 +msgid "The contents of the @code{VirtualHost} directive, this should be a list of strings and G-expressions." msgstr "" #. type: subsubheading -#: doc/guix.texi:15496 +#: doc/guix.texi:15861 #, no-wrap msgid "NGINX" msgstr "" #. type: deffn -#: doc/guix.texi:15498 +#: doc/guix.texi:15863 #, no-wrap msgid "{Scheme Variable} nginx-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:15501 -msgid "" -"Service type for the @uref{https://nginx.org/,NGinx} web server. The value " -"for this service type is a @code{} record." +#: doc/guix.texi:15866 +msgid "Service type for the @uref{https://nginx.org/,NGinx} web server. The value for this service type is a @code{} record." msgstr "" #. type: example -#: doc/guix.texi:15511 doc/guix.texi:15565 +#: doc/guix.texi:15876 doc/guix.texi:15930 #, no-wrap msgid "" "(service nginx-service-type\n" @@ -34697,15 +28596,12 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:15516 -msgid "" -"In addition to adding server blocks to the service configuration directly, " -"this service can be extended by other services to add server blocks, as in " -"this example:" +#: doc/guix.texi:15881 +msgid "In addition to adding server blocks to the service configuration directly, this service can be extended by other services to add server blocks, as in this example:" msgstr "" #. type: example -#: doc/guix.texi:15522 +#: doc/guix.texi:15887 #, no-wrap msgid "" "(simple-service 'my-extra-server nginx-service-type\n" @@ -34715,112 +28611,88 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:15533 -msgid "" -"At startup, @command{nginx} has not yet read its configuration file, so it " -"uses a default file to log error messages. If it fails to load its " -"configuration file, that is where error messages are logged. After the " -"configuration file is loaded, the default error log file changes as per " -"configuration. In our case, startup error messages can be found in @file{/" -"var/run/nginx/logs/error.log}, and after configuration in @file{/var/log/" -"nginx/error.log}. The second location can be changed with the @var{log-" -"directory} configuration option." +#: doc/guix.texi:15898 +msgid "At startup, @command{nginx} has not yet read its configuration file, so it uses a default file to log error messages. If it fails to load its configuration file, that is where error messages are logged. After the configuration file is loaded, the default error log file changes as per configuration. In our case, startup error messages can be found in @file{/var/run/nginx/logs/error.log}, and after configuration in @file{/var/log/nginx/error.log}. The second location can be changed with the @var{log-directory} configuration option." msgstr "" #. type: deffn -#: doc/guix.texi:15534 +#: doc/guix.texi:15899 #, no-wrap msgid "{Data Type} nginx-configuration" msgstr "" #. type: deffn -#: doc/guix.texi:15538 -msgid "" -"This data type represents the configuration for NGinx. Some configuration " -"can be done through this and the other provided record types, or " -"alternatively, a config file can be provided." +#: doc/guix.texi:15903 +msgid "This data type represents the configuration for NGinx. Some configuration can be done through this and the other provided record types, or alternatively, a config file can be provided." msgstr "" #. type: item -#: doc/guix.texi:15540 +#: doc/guix.texi:15905 #, no-wrap msgid "@code{nginx} (default: @code{nginx})" msgstr "" #. type: table -#: doc/guix.texi:15542 +#: doc/guix.texi:15907 msgid "The nginx package to use." msgstr "" #. type: item -#: doc/guix.texi:15543 +#: doc/guix.texi:15908 #, no-wrap msgid "@code{log-directory} (default: @code{\"/var/log/nginx\"})" msgstr "" #. type: table -#: doc/guix.texi:15545 +#: doc/guix.texi:15910 msgid "The directory to which NGinx will write log files." msgstr "" #. type: item -#: doc/guix.texi:15546 +#: doc/guix.texi:15911 #, no-wrap msgid "@code{run-directory} (default: @code{\"/var/run/nginx\"})" msgstr "" #. type: table -#: doc/guix.texi:15549 -msgid "" -"The directory in which NGinx will create a pid file, and write temporary " -"files." +#: doc/guix.texi:15914 +msgid "The directory in which NGinx will create a pid file, and write temporary files." msgstr "" #. type: item -#: doc/guix.texi:15550 +#: doc/guix.texi:15915 #, no-wrap msgid "@code{server-blocks} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:15554 -msgid "" -"A list of @dfn{server blocks} to create in the generated configuration file, " -"the elements should be of type @code{}." +#: doc/guix.texi:15919 +msgid "A list of @dfn{server blocks} to create in the generated configuration file, the elements should be of type @code{}." msgstr "" #. type: table -#: doc/guix.texi:15558 -msgid "" -"The following example would setup NGinx to serve @code{www.example.com} from " -"the @code{/srv/http/www.example.com} directory, without using HTTPS." +#: doc/guix.texi:15923 +msgid "The following example would setup NGinx to serve @code{www.example.com} from the @code{/srv/http/www.example.com} directory, without using HTTPS." msgstr "" #. type: item -#: doc/guix.texi:15567 +#: doc/guix.texi:15932 #, no-wrap msgid "@code{upstream-blocks} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:15571 -msgid "" -"A list of @dfn{upstream blocks} to create in the generated configuration " -"file, the elements should be of type @code{}." +#: doc/guix.texi:15936 +msgid "A list of @dfn{upstream blocks} to create in the generated configuration file, the elements should be of type @code{}." msgstr "" #. type: table -#: doc/guix.texi:15578 -msgid "" -"Configuring upstreams through the @code{upstream-blocks} can be useful when " -"combined with @code{locations} in the @code{} " -"records. The following example creates a server configuration with one " -"location configuration, that will proxy requests to a upstream " -"configuration, which will handle requests with two servers." +#: doc/guix.texi:15943 +msgid "Configuring upstreams through the @code{upstream-blocks} can be useful when combined with @code{locations} in the @code{} records. The following example creates a server configuration with one location configuration, that will proxy requests to a upstream configuration, which will handle requests with two servers." msgstr "" #. type: example -#: doc/guix.texi:15597 +#: doc/guix.texi:15962 #, no-wrap msgid "" "(service\n" @@ -34843,830 +28715,739 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:15605 -msgid "" -"If a configuration @var{file} is provided, this will be used, rather than " -"generating a configuration file from the provided @code{log-directory}, " -"@code{run-directory}, @code{server-blocks} and @code{upstream-blocks}. For " -"proper operation, these arguments should match what is in @var{file} to " -"ensure that the directories are created when the service is activated." +#: doc/guix.texi:15970 +msgid "If a configuration @var{file} is provided, this will be used, rather than generating a configuration file from the provided @code{log-directory}, @code{run-directory}, @code{server-blocks} and @code{upstream-blocks}. For proper operation, these arguments should match what is in @var{file} to ensure that the directories are created when the service is activated." msgstr "" #. type: table -#: doc/guix.texi:15609 -msgid "" -"This can be useful if you have an existing configuration file, or it's not " -"possible to do what is required through the other parts of the nginx-" -"configuration record." +#: doc/guix.texi:15974 +msgid "This can be useful if you have an existing configuration file, or it's not possible to do what is required through the other parts of the nginx-configuration record." msgstr "" #. type: item -#: doc/guix.texi:15610 +#: doc/guix.texi:15975 #, no-wrap msgid "@code{server-names-hash-bucket-size} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15613 -msgid "" -"Bucket size for the server names hash tables, defaults to @code{#f} to use " -"the size of the processors cache line." +#: doc/guix.texi:15978 +msgid "Bucket size for the server names hash tables, defaults to @code{#f} to use the size of the processors cache line." msgstr "" #. type: item -#: doc/guix.texi:15614 +#: doc/guix.texi:15979 #, no-wrap msgid "@code{server-names-hash-bucket-max-size} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15616 +#: doc/guix.texi:15981 msgid "Maximum bucket size for the server names hash tables." msgstr "" +#. type: item +#: doc/guix.texi:15982 +#, no-wrap +msgid "@code{extra-content} (default: @code{\"\"})" +msgstr "@code{extra-content} (par défaut : @code{\"\"})" + +#. type: table +#: doc/guix.texi:15985 +msgid "Extra content for the @code{http} block. Should be string or a string valued G-expression." +msgstr "" + #. type: deftp -#: doc/guix.texi:15620 +#: doc/guix.texi:15989 #, no-wrap msgid "{Data Type} nginx-server-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15623 -msgid "" -"Data type representing the configuration of an nginx server block. This " -"type has the following parameters:" +#: doc/guix.texi:15992 +msgid "Data type representing the configuration of an nginx server block. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:15625 +#: doc/guix.texi:15994 #, no-wrap msgid "@code{listen} (default: @code{'(\"80\" \"443 ssl\")})" msgstr "" #. type: table -#: doc/guix.texi:15630 -msgid "" -"Each @code{listen} directive sets the address and port for IP, or the path " -"for a UNIX-domain socket on which the server will accept requests. Both " -"address and port, or only address or only port can be specified. An address " -"may also be a hostname, for example:" +#: doc/guix.texi:15999 +msgid "Each @code{listen} directive sets the address and port for IP, or the path for a UNIX-domain socket on which the server will accept requests. Both address and port, or only address or only port can be specified. An address may also be a hostname, for example:" msgstr "" #. type: example -#: doc/guix.texi:15633 +#: doc/guix.texi:16002 #, no-wrap msgid "'(\"127.0.0.1:8000\" \"127.0.0.1\" \"8000\" \"*:8000\" \"localhost:8000\")\n" msgstr "" #. type: item -#: doc/guix.texi:15635 +#: doc/guix.texi:16004 #, no-wrap msgid "@code{server-name} (default: @code{(list 'default)})" msgstr "" #. type: table -#: doc/guix.texi:15638 -msgid "" -"A list of server names this server represents. @code{'default} represents " -"the default server for connections matching no other server." +#: doc/guix.texi:16007 +msgid "A list of server names this server represents. @code{'default} represents the default server for connections matching no other server." msgstr "" #. type: item -#: doc/guix.texi:15639 +#: doc/guix.texi:16008 #, no-wrap msgid "@code{root} (default: @code{\"/srv/http\"})" msgstr "" #. type: table -#: doc/guix.texi:15641 +#: doc/guix.texi:16010 msgid "Root of the website nginx will serve." msgstr "" #. type: item -#: doc/guix.texi:15642 +#: doc/guix.texi:16011 #, no-wrap msgid "@code{locations} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:15646 -msgid "" -"A list of @dfn{nginx-location-configuration} or @dfn{nginx-named-location-" -"configuration} records to use within this server block." +#: doc/guix.texi:16015 +msgid "A list of @dfn{nginx-location-configuration} or @dfn{nginx-named-location-configuration} records to use within this server block." msgstr "" #. type: item -#: doc/guix.texi:15647 +#: doc/guix.texi:16016 #, no-wrap msgid "@code{index} (default: @code{(list \"index.html\")})" msgstr "" #. type: table -#: doc/guix.texi:15650 -msgid "" -"Index files to look for when clients ask for a directory. If it cannot be " -"found, Nginx will send the list of files in the directory." +#: doc/guix.texi:16019 +msgid "Index files to look for when clients ask for a directory. If it cannot be found, Nginx will send the list of files in the directory." msgstr "" #. type: item -#: doc/guix.texi:15651 +#: doc/guix.texi:16020 #, no-wrap msgid "@code{try-files} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:15654 -msgid "" -"A list of files whose existence is checked in the specified order. " -"@code{nginx} will use the first file it finds to process the request." +#: doc/guix.texi:16023 +msgid "A list of files whose existence is checked in the specified order. @code{nginx} will use the first file it finds to process the request." msgstr "" #. type: item -#: doc/guix.texi:15655 +#: doc/guix.texi:16024 #, no-wrap msgid "@code{ssl-certificate} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15658 -msgid "" -"Where to find the certificate for secure connections. Set it to @code{#f} " -"if you don't have a certificate or you don't want to use HTTPS." +#: doc/guix.texi:16027 +msgid "Where to find the certificate for secure connections. Set it to @code{#f} if you don't have a certificate or you don't want to use HTTPS." msgstr "" #. type: item -#: doc/guix.texi:15659 +#: doc/guix.texi:16028 #, no-wrap msgid "@code{ssl-certificate-key} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15662 -msgid "" -"Where to find the private key for secure connections. Set it to @code{#f} " -"if you don't have a key or you don't want to use HTTPS." +#: doc/guix.texi:16031 +msgid "Where to find the private key for secure connections. Set it to @code{#f} if you don't have a key or you don't want to use HTTPS." msgstr "" #. type: item -#: doc/guix.texi:15663 +#: doc/guix.texi:16032 #, no-wrap msgid "@code{server-tokens?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15665 +#: doc/guix.texi:16034 msgid "Whether the server should add its configuration to response." msgstr "" #. type: item -#: doc/guix.texi:15666 +#: doc/guix.texi:16035 #, no-wrap msgid "@code{raw-content} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:15668 +#: doc/guix.texi:16037 msgid "A list of raw lines added to the server block." msgstr "" #. type: deftp -#: doc/guix.texi:15672 +#: doc/guix.texi:16041 #, no-wrap msgid "{Data Type} nginx-upstream-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15675 -msgid "" -"Data type representing the configuration of an nginx @code{upstream} block. " -"This type has the following parameters:" +#: doc/guix.texi:16044 +msgid "Data type representing the configuration of an nginx @code{upstream} block. This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:15679 +#: doc/guix.texi:16048 msgid "Name for this group of servers." msgstr "" #. type: code{#1} -#: doc/guix.texi:15680 +#: doc/guix.texi:16049 #, no-wrap msgid "servers" msgstr "" #. type: table -#: doc/guix.texi:15687 -msgid "" -"Specify the addresses of the servers in the group. The address can be " -"specified as a IP address (e.g. @samp{127.0.0.1}), domain name (e.g. " -"@samp{backend1.example.com}) or a path to a UNIX socket using the prefix " -"@samp{unix:}. For addresses using an IP address or domain name, the default " -"port is 80, and a different port can be specified explicitly." +#: doc/guix.texi:16056 +msgid "Specify the addresses of the servers in the group. The address can be specified as a IP address (e.g. @samp{127.0.0.1}), domain name (e.g. @samp{backend1.example.com}) or a path to a UNIX socket using the prefix @samp{unix:}. For addresses using an IP address or domain name, the default port is 80, and a different port can be specified explicitly." msgstr "" #. type: deftp -#: doc/guix.texi:15691 +#: doc/guix.texi:16060 #, no-wrap msgid "{Data Type} nginx-location-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15694 -msgid "" -"Data type representing the configuration of an nginx @code{location} block. " -"This type has the following parameters:" +#: doc/guix.texi:16063 +msgid "Data type representing the configuration of an nginx @code{location} block. This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:15698 +#: doc/guix.texi:16067 msgid "URI which this location block matches." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:15700 +#: doc/guix.texi:16069 msgid "nginx-location-configuration body" msgstr "" #. type: code{#1} -#: doc/guix.texi:15700 doc/guix.texi:15721 +#: doc/guix.texi:16069 doc/guix.texi:16090 #, no-wrap msgid "body" msgstr "" #. type: table -#: doc/guix.texi:15707 -msgid "" -"Body of the location block, specified as a list of strings. This can contain " -"many configuration directives. For example, to pass requests to a upstream " -"server group defined using an @code{nginx-upstream-configuration} block, the " -"following directive would be specified in the body @samp{(list \"proxy_pass " -"http://upstream-name;\")}." +#: doc/guix.texi:16076 +msgid "Body of the location block, specified as a list of strings. This can contain many configuration directives. For example, to pass requests to a upstream server group defined using an @code{nginx-upstream-configuration} block, the following directive would be specified in the body @samp{(list \"proxy_pass http://upstream-name;\")}." msgstr "" #. type: deftp -#: doc/guix.texi:15711 +#: doc/guix.texi:16080 #, no-wrap msgid "{Data Type} nginx-named-location-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15716 -msgid "" -"Data type representing the configuration of an nginx named location block. " -"Named location blocks are used for request redirection, and not used for " -"regular request processing. This type has the following parameters:" +#: doc/guix.texi:16085 +msgid "Data type representing the configuration of an nginx named location block. Named location blocks are used for request redirection, and not used for regular request processing. This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:15720 +#: doc/guix.texi:16089 msgid "Name to identify this location block." msgstr "" #. type: table -#: doc/guix.texi:15726 -msgid "" -"@xref{nginx-location-configuration body}, as the body for named location " -"blocks can be used in a similar way to the @code{nginx-location-" -"configuration body}. One restriction is that the body of a named location " -"block cannot contain location blocks." +#: doc/guix.texi:16095 +msgid "@xref{nginx-location-configuration body}, as the body for named location blocks can be used in a similar way to the @code{nginx-location-configuration body}. One restriction is that the body of a named location block cannot contain location blocks." msgstr "" #. type: cindex -#: doc/guix.texi:15730 +#: doc/guix.texi:16099 #, no-wrap msgid "fastcgi" msgstr "" #. type: cindex -#: doc/guix.texi:15731 +#: doc/guix.texi:16100 #, no-wrap msgid "fcgiwrap" msgstr "" #. type: Plain text -#: doc/guix.texi:15738 -msgid "" -"FastCGI is an interface between the front-end and the back-end of a web " -"service. It is a somewhat legacy facility; new web services should " -"generally just talk HTTP between the front-end and the back-end. However " -"there are a number of back-end services such as PHP or the optimized HTTP " -"Git repository access that use FastCGI, so we have support for it in Guix." +#: doc/guix.texi:16107 +msgid "FastCGI is an interface between the front-end and the back-end of a web service. It is a somewhat legacy facility; new web services should generally just talk HTTP between the front-end and the back-end. However there are a number of back-end services such as PHP or the optimized HTTP Git repository access that use FastCGI, so we have support for it in Guix." msgstr "" #. type: Plain text -#: doc/guix.texi:15745 -msgid "" -"To use FastCGI, you configure the front-end web server (e.g., nginx) to " -"dispatch some subset of its requests to the fastcgi backend, which listens " -"on a local TCP or UNIX socket. There is an intermediary @code{fcgiwrap} " -"program that sits between the actual backend process and the web server. " -"The front-end indicates which backend program to run, passing that " -"information to the @code{fcgiwrap} process." +#: doc/guix.texi:16114 +msgid "To use FastCGI, you configure the front-end web server (e.g., nginx) to dispatch some subset of its requests to the fastcgi backend, which listens on a local TCP or UNIX socket. There is an intermediary @code{fcgiwrap} program that sits between the actual backend process and the web server. The front-end indicates which backend program to run, passing that information to the @code{fcgiwrap} process." msgstr "" #. type: defvr -#: doc/guix.texi:15746 +#: doc/guix.texi:16115 #, no-wrap msgid "{Scheme Variable} fcgiwrap-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:15748 +#: doc/guix.texi:16117 msgid "A service type for the @code{fcgiwrap} FastCGI proxy." msgstr "" #. type: deftp -#: doc/guix.texi:15750 +#: doc/guix.texi:16119 #, no-wrap msgid "{Data Type} fcgiwrap-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15753 -msgid "" -"Data type representing the configuration of the @code{fcgiwrap} serice. " -"This type has the following parameters:" +#: doc/guix.texi:16122 +msgid "Data type representing the configuration of the @code{fcgiwrap} serice. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:15754 +#: doc/guix.texi:16123 #, no-wrap msgid "@code{package} (default: @code{fcgiwrap})" msgstr "" #. type: table -#: doc/guix.texi:15756 +#: doc/guix.texi:16125 msgid "The fcgiwrap package to use." msgstr "" #. type: item -#: doc/guix.texi:15757 +#: doc/guix.texi:16126 #, no-wrap msgid "@code{socket} (default: @code{tcp:127.0.0.1:9000})" msgstr "" #. type: table -#: doc/guix.texi:15763 -msgid "" -"The socket on which the @code{fcgiwrap} process should listen, as a string. " -"Valid @var{socket} values include @code{unix:@var{/path/to/unix/socket}}, " -"@code{tcp:@var{dot.ted.qu.ad}:@var{port}} and @code{tcp6:[@var{ipv6_addr}]:" -"port}." +#: doc/guix.texi:16132 +msgid "The socket on which the @code{fcgiwrap} process should listen, as a string. Valid @var{socket} values include @code{unix:@var{/path/to/unix/socket}}, @code{tcp:@var{dot.ted.qu.ad}:@var{port}} and @code{tcp6:[@var{ipv6_addr}]:port}." msgstr "" #. type: item -#: doc/guix.texi:15764 +#: doc/guix.texi:16133 #, no-wrap msgid "@code{user} (default: @code{fcgiwrap})" msgstr "" #. type: itemx -#: doc/guix.texi:15765 +#: doc/guix.texi:16134 #, no-wrap msgid "@code{group} (default: @code{fcgiwrap})" msgstr "" #. type: table -#: doc/guix.texi:15770 -msgid "" -"The user and group names, as strings, under which to run the @code{fcgiwrap} " -"process. The @code{fastcgi} service will ensure that if the user asks for " -"the specific user or group names @code{fcgiwrap} that the corresponding user " -"and/or group is present on the system." +#: doc/guix.texi:16139 +msgid "The user and group names, as strings, under which to run the @code{fcgiwrap} process. The @code{fastcgi} service will ensure that if the user asks for the specific user or group names @code{fcgiwrap} that the corresponding user and/or group is present on the system." msgstr "" #. type: table -#: doc/guix.texi:15777 -msgid "" -"It is possible to configure a FastCGI-backed web service to pass HTTP " -"authentication information from the front-end to the back-end, and to allow " -"@code{fcgiwrap} to run the back-end process as a corresponding local user. " -"To enable this capability on the back-end., run @code{fcgiwrap} as the " -"@code{root} user and group. Note that this capability also has to be " -"configured on the front-end as well." +#: doc/guix.texi:16146 +msgid "It is possible to configure a FastCGI-backed web service to pass HTTP authentication information from the front-end to the back-end, and to allow @code{fcgiwrap} to run the back-end process as a corresponding local user. To enable this capability on the back-end., run @code{fcgiwrap} as the @code{root} user and group. Note that this capability also has to be configured on the front-end as well." msgstr "" #. type: cindex -#: doc/guix.texi:15780 +#: doc/guix.texi:16149 #, no-wrap msgid "php-fpm" msgstr "" #. type: Plain text -#: doc/guix.texi:15783 -msgid "" -"PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI " -"implementation with some additional features useful for sites of any size." +#: doc/guix.texi:16152 +msgid "PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI implementation with some additional features useful for sites of any size." msgstr "" #. type: Plain text -#: doc/guix.texi:15785 +#: doc/guix.texi:16154 msgid "These features include:" msgstr "" #. type: item -#: doc/guix.texi:15786 +#: doc/guix.texi:16155 #, no-wrap msgid "Adaptive process spawning" msgstr "" #. type: item -#: doc/guix.texi:15787 +#: doc/guix.texi:16156 #, no-wrap msgid "Basic statistics (similar to Apache's mod_status)" msgstr "" #. type: item -#: doc/guix.texi:15788 +#: doc/guix.texi:16157 #, no-wrap msgid "Advanced process management with graceful stop/start" msgstr "" #. type: item -#: doc/guix.texi:15789 +#: doc/guix.texi:16158 #, no-wrap msgid "Ability to start workers with different uid/gid/chroot/environment" msgstr "" #. type: itemize -#: doc/guix.texi:15791 +#: doc/guix.texi:16160 msgid "and different php.ini (replaces safe_mode)" msgstr "" #. type: item -#: doc/guix.texi:15791 +#: doc/guix.texi:16160 #, no-wrap msgid "Stdout & stderr logging" msgstr "" #. type: item -#: doc/guix.texi:15792 +#: doc/guix.texi:16161 #, no-wrap msgid "Emergency restart in case of accidental opcode cache destruction" msgstr "" #. type: item -#: doc/guix.texi:15793 +#: doc/guix.texi:16162 #, no-wrap msgid "Accelerated upload support" msgstr "" #. type: item -#: doc/guix.texi:15794 +#: doc/guix.texi:16163 #, no-wrap msgid "Support for a \"slowlog\"" msgstr "" #. type: item -#: doc/guix.texi:15795 +#: doc/guix.texi:16164 #, no-wrap msgid "Enhancements to FastCGI, such as fastcgi_finish_request() -" msgstr "" #. type: itemize -#: doc/guix.texi:15798 -msgid "" -"a special function to finish request & flush all data while continuing to do " -"something time-consuming (video converting, stats processing, etc.)" +#: doc/guix.texi:16167 +msgid "a special function to finish request & flush all data while continuing to do something time-consuming (video converting, stats processing, etc.)" msgstr "" #. type: Plain text -#: doc/guix.texi:15800 +#: doc/guix.texi:16169 msgid "... and much more." msgstr "" #. type: defvr -#: doc/guix.texi:15801 +#: doc/guix.texi:16170 #, no-wrap msgid "{Scheme Variable} php-fpm-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:15803 +#: doc/guix.texi:16172 msgid "A Service type for @code{php-fpm}." msgstr "" #. type: deftp -#: doc/guix.texi:15805 +#: doc/guix.texi:16174 #, no-wrap msgid "{Data Type} php-fpm-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15807 +#: doc/guix.texi:16176 msgid "Data Type for php-fpm service configuration." msgstr "" #. type: item -#: doc/guix.texi:15808 +#: doc/guix.texi:16177 #, no-wrap msgid "@code{php} (default: @code{php})" msgstr "" #. type: table -#: doc/guix.texi:15810 +#: doc/guix.texi:16179 msgid "The php package to use." msgstr "" #. type: item -#: doc/guix.texi:15810 +#: doc/guix.texi:16179 #, no-wrap msgid "@code{socket} (default: @code{(string-append \"/var/run/php\" (version-major (package-version php)) \"-fpm.sock\")})" msgstr "" #. type: table -#: doc/guix.texi:15812 +#: doc/guix.texi:16181 msgid "The address on which to accept FastCGI requests. Valid syntaxes are:" msgstr "" #. type: code{#1} -#: doc/guix.texi:15813 +#: doc/guix.texi:16182 #, no-wrap msgid "\"ip.add.re.ss:port\"" msgstr "" #. type: table -#: doc/guix.texi:15815 +#: doc/guix.texi:16184 msgid "Listen on a TCP socket to a specific address on a specific port." msgstr "" #. type: code{#1} -#: doc/guix.texi:15815 +#: doc/guix.texi:16184 #, no-wrap msgid "\"port\"" msgstr "" #. type: table -#: doc/guix.texi:15817 +#: doc/guix.texi:16186 msgid "Listen on a TCP socket to all addresses on a specific port." msgstr "" #. type: code{#1} -#: doc/guix.texi:15817 +#: doc/guix.texi:16186 #, no-wrap msgid "\"/path/to/unix/socket\"" msgstr "" #. type: table -#: doc/guix.texi:15819 +#: doc/guix.texi:16188 msgid "Listen on a unix socket." msgstr "" #. type: item -#: doc/guix.texi:15821 +#: doc/guix.texi:16190 #, no-wrap msgid "@code{user} (default: @code{php-fpm})" msgstr "" #. type: table -#: doc/guix.texi:15823 +#: doc/guix.texi:16192 msgid "User who will own the php worker processes." msgstr "" #. type: item -#: doc/guix.texi:15823 +#: doc/guix.texi:16192 #, no-wrap msgid "@code{group} (default: @code{php-fpm})" msgstr "" #. type: table -#: doc/guix.texi:15825 +#: doc/guix.texi:16194 msgid "Group of the worker processes." msgstr "" #. type: item -#: doc/guix.texi:15825 +#: doc/guix.texi:16194 #, no-wrap msgid "@code{socket-user} (default: @code{php-fpm})" msgstr "" #. type: table -#: doc/guix.texi:15827 +#: doc/guix.texi:16196 msgid "User who can speak to the php-fpm socket." msgstr "" #. type: item -#: doc/guix.texi:15827 +#: doc/guix.texi:16196 #, no-wrap msgid "@code{socket-group} (default: @code{php-fpm})" msgstr "" #. type: table -#: doc/guix.texi:15829 +#: doc/guix.texi:16198 msgid "Group that can speak to the php-fpm socket." msgstr "" #. type: item -#: doc/guix.texi:15829 +#: doc/guix.texi:16198 #, no-wrap msgid "@code{pid-file} (default: @code{(string-append \"/var/run/php\" (version-major (package-version php)) \"-fpm.pid\")})" msgstr "" #. type: table -#: doc/guix.texi:15832 -msgid "" -"The process id of the php-fpm process is written to this file once the " -"service has started." +#: doc/guix.texi:16201 +msgid "The process id of the php-fpm process is written to this file once the service has started." msgstr "" #. type: item -#: doc/guix.texi:15832 +#: doc/guix.texi:16201 #, no-wrap msgid "@code{log-file} (default: @code{(string-append \"/var/log/php\" (version-major (package-version php)) \"-fpm.log\")})" msgstr "" #. type: table -#: doc/guix.texi:15834 +#: doc/guix.texi:16203 msgid "Log for the php-fpm master process." msgstr "" #. type: item -#: doc/guix.texi:15834 +#: doc/guix.texi:16203 #, no-wrap msgid "@code{process-manager} (default: @code{(php-fpm-dynamic-process-manager-configuration)})" msgstr "" #. type: table -#: doc/guix.texi:15837 +#: doc/guix.texi:16206 msgid "Detailed settings for the php-fpm process manager. Must be either:" msgstr "" #. type: code{#1} -#: doc/guix.texi:15838 +#: doc/guix.texi:16207 #, no-wrap msgid "" msgstr "" #. type: code{#1} -#: doc/guix.texi:15839 +#: doc/guix.texi:16208 #, no-wrap msgid "" msgstr "" #. type: code{#1} -#: doc/guix.texi:15840 +#: doc/guix.texi:16209 #, no-wrap msgid "" msgstr "" #. type: item -#: doc/guix.texi:15842 +#: doc/guix.texi:16211 #, no-wrap msgid "@code{display-errors} (default @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15847 -msgid "" -"Determines whether php errors and warning should be sent to clients and " -"displayed in their browsers. This is useful for local php development, but " -"a security risk for public sites, as error messages can reveal passwords and " -"personal data." +#: doc/guix.texi:16216 +msgid "Determines whether php errors and warning should be sent to clients and displayed in their browsers. This is useful for local php development, but a security risk for public sites, as error messages can reveal passwords and personal data." msgstr "" #. type: item -#: doc/guix.texi:15847 +#: doc/guix.texi:16216 #, no-wrap msgid "@code{workers-logfile} (default @code{(string-append \"/var/log/php\" (version-major (package-version php)) \"-fpm.www.log\")})" msgstr "" #. type: table -#: doc/guix.texi:15850 -msgid "" -"This file will log the @code{stderr} outputs of php worker processes. Can " -"be set to @code{#f} to disable logging." +#: doc/guix.texi:16219 +msgid "This file will log the @code{stderr} outputs of php worker processes. Can be set to @code{#f} to disable logging." msgstr "" #. type: item -#: doc/guix.texi:15850 +#: doc/guix.texi:16219 #, no-wrap msgid "@code{file} (default @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:15853 -msgid "" -"An optional override of the whole configuration. You can use the " -"@code{mixed-text-file} function or an absolute filepath for it." +#: doc/guix.texi:16222 +msgid "An optional override of the whole configuration. You can use the @code{mixed-text-file} function or an absolute filepath for it." msgstr "" #. type: deftp -#: doc/guix.texi:15856 +#: doc/guix.texi:16225 #, no-wrap msgid "{Data type} php-fpm-dynamic-process-manager-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15860 -msgid "" -"Data Type for the @code{dynamic} php-fpm process manager. With the " -"@code{dynamic} process manager, spare worker processes are kept around based " -"on it's configured limits." +#: doc/guix.texi:16229 +msgid "Data Type for the @code{dynamic} php-fpm process manager. With the @code{dynamic} process manager, spare worker processes are kept around based on it's configured limits." msgstr "" #. type: item -#: doc/guix.texi:15861 doc/guix.texi:15877 doc/guix.texi:15887 +#: doc/guix.texi:16230 doc/guix.texi:16246 doc/guix.texi:16256 #, no-wrap msgid "@code{max-children} (default: @code{5})" msgstr "" #. type: table -#: doc/guix.texi:15863 doc/guix.texi:15879 doc/guix.texi:15889 +#: doc/guix.texi:16232 doc/guix.texi:16248 doc/guix.texi:16258 msgid "Maximum of worker processes." msgstr "" #. type: item -#: doc/guix.texi:15863 +#: doc/guix.texi:16232 #, no-wrap msgid "@code{start-servers} (default: @code{2})" msgstr "" #. type: table -#: doc/guix.texi:15865 +#: doc/guix.texi:16234 msgid "How many worker processes should be started on start-up." msgstr "" #. type: item -#: doc/guix.texi:15865 +#: doc/guix.texi:16234 #, no-wrap msgid "@code{min-spare-servers} (default: @code{1})" msgstr "" #. type: table -#: doc/guix.texi:15867 +#: doc/guix.texi:16236 msgid "How many spare worker processes should be kept around at minimum." msgstr "" #. type: item -#: doc/guix.texi:15867 +#: doc/guix.texi:16236 #, no-wrap msgid "@code{max-spare-servers} (default: @code{3})" msgstr "" #. type: table -#: doc/guix.texi:15869 +#: doc/guix.texi:16238 msgid "How many spare worker processes should be kept around at maximum." msgstr "" #. type: deftp -#: doc/guix.texi:15872 +#: doc/guix.texi:16241 #, no-wrap msgid "{Data type} php-fpm-static-process-manager-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15876 -msgid "" -"Data Type for the @code{static} php-fpm process manager. With the " -"@code{static} process manager, an unchanging number of worker processes are " -"created." +#: doc/guix.texi:16245 +msgid "Data Type for the @code{static} php-fpm process manager. With the @code{static} process manager, an unchanging number of worker processes are created." msgstr "" #. type: deftp -#: doc/guix.texi:15882 +#: doc/guix.texi:16251 #, no-wrap msgid "{Data type} php-fpm-on-demand-process-manager-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:15886 -msgid "" -"Data Type for the @code{on-demand} php-fpm process manager. With the " -"@code{on-demand} process manager, worker processes are only created as " -"requests arrive." +#: doc/guix.texi:16255 +msgid "Data Type for the @code{on-demand} php-fpm process manager. With the @code{on-demand} process manager, worker processes are only created as requests arrive." msgstr "" #. type: item -#: doc/guix.texi:15889 +#: doc/guix.texi:16258 #, no-wrap msgid "@code{process-idle-timeout} (default: @code{10})" msgstr "" #. type: table -#: doc/guix.texi:15891 +#: doc/guix.texi:16260 msgid "The time in seconds after which a process with no requests is killed." msgstr "" #. type: deffn -#: doc/guix.texi:15895 +#: doc/guix.texi:16264 #, no-wrap msgid "{Scheme Procedure} nginx-php-fpm-location @" msgstr "" #. type: deffn -#: doc/guix.texi:15901 -msgid "" -"[#:nginx-package nginx] @ [socket (string-append \"/var/run/php\" @ (version-" -"major (package-version php)) @ \"-fpm.sock\")] A helper function to quickly " -"add php to an @code{nginx-server-configuration}." +#: doc/guix.texi:16270 +msgid "[#:nginx-package nginx] @ [socket (string-append \"/var/run/php\" @ (version-major (package-version php)) @ \"-fpm.sock\")] A helper function to quickly add php to an @code{nginx-server-configuration}." msgstr "" #. type: Plain text -#: doc/guix.texi:15904 +#: doc/guix.texi:16273 msgid "A simple services setup for nginx with php can look like this:" msgstr "" #. type: example -#: doc/guix.texi:15917 +#: doc/guix.texi:16286 #, no-wrap msgid "" "(services (cons* (dhcp-client-service)\n" @@ -35684,43 +29465,34 @@ msgid "" msgstr "" #. type: cindex -#: doc/guix.texi:15919 +#: doc/guix.texi:16288 #, no-wrap msgid "cat-avatar-generator" msgstr "" #. type: Plain text -#: doc/guix.texi:15923 -msgid "" -"The cat avatar generator is a simple service to demonstrate the use of php-" -"fpm in @code{Nginx}. It is used to generate cat avatar from a seed, for " -"instance the hash of a user's email address." +#: doc/guix.texi:16292 +msgid "The cat avatar generator is a simple service to demonstrate the use of php-fpm in @code{Nginx}. It is used to generate cat avatar from a seed, for instance the hash of a user's email address." msgstr "" #. type: deffn -#: doc/guix.texi:15924 +#: doc/guix.texi:16293 #, no-wrap msgid "{Scheme Procedure} cat-avatar-generator-serice @" msgstr "" #. type: deffn -#: doc/guix.texi:15932 -msgid "" -"[#:cache-dir \"/var/cache/cat-avatar-generator\"] @ [#:package cat-avatar-" -"generator] @ [#:configuration (nginx-server-configuration)] Returns an nginx-" -"server-configuration that inherits @code{configuration}. It extends the " -"nginx configuration to add a server block that serves @code{package}, a " -"version of cat-avatar-generator. During execution, cat-avatar-generator " -"will be able to use @code{cache-dir} as its cache directory." +#: doc/guix.texi:16301 +msgid "[#:cache-dir \"/var/cache/cat-avatar-generator\"] @ [#:package cat-avatar-generator] @ [#:configuration (nginx-server-configuration)] Returns an nginx-server-configuration that inherits @code{configuration}. It extends the nginx configuration to add a server block that serves @code{package}, a version of cat-avatar-generator. During execution, cat-avatar-generator will be able to use @code{cache-dir} as its cache directory." msgstr "" #. type: Plain text -#: doc/guix.texi:15935 +#: doc/guix.texi:16304 msgid "A simple setup for cat-avatar-generator can look like this:" msgstr "" #. type: example -#: doc/guix.texi:15942 +#: doc/guix.texi:16311 #, no-wrap msgid "" "(services (cons* (cat-avatar-generator-service\n" @@ -35731,96 +29503,207 @@ msgid "" " %base-services))\n" msgstr "" +#. type: subsubheading +#: doc/guix.texi:16313 +#, no-wrap +msgid "Hpcguix-web" +msgstr "" + #. type: cindex -#: doc/guix.texi:15947 +#: doc/guix.texi:16315 +#, no-wrap +msgid "hpcguix-web" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:16320 +msgid "The @uref{hpcguix-web, https://github.com/UMCUGenetics/hpcguix-web/} program is a customizable web interface to browse Guix packages, initially designed for users of high-performance computing (HPC) clusters." +msgstr "" + +#. type: defvr +#: doc/guix.texi:16321 +#, no-wrap +msgid "{Scheme Variable} hpcguix-web-service-type" +msgstr "{Variable Scheme} hpcguix-web-service-type" + +#. type: defvr +#: doc/guix.texi:16323 +msgid "The service type for @code{hpcguix-web}." +msgstr "" + +#. type: deftp +#: doc/guix.texi:16325 +#, no-wrap +msgid "{Data Type} hpcguix-web-configuration" +msgstr "{Type de donnée} hpcguix-web-configuration" + +#. type: deftp +#: doc/guix.texi:16327 +msgid "Data type for the hpcguix-web service configuration." +msgstr "" + +#. type: code{#1} +#: doc/guix.texi:16329 +#, no-wrap +msgid "specs" +msgstr "" + +#. type: table +#: doc/guix.texi:16332 +msgid "A gexp (@pxref{G-Expressions}) specifying the hpcguix-web service configuration. The main items available in this spec are:" +msgstr "" + +#. type: item +#: doc/guix.texi:16334 +#, no-wrap +msgid "@code{title-prefix} (default: @code{\"hpcguix | \"})" +msgstr "@code{title-prefix} (par défaut : @code{\"hpcguix | \"})" + +#. type: table +#: doc/guix.texi:16336 +msgid "The page title prefix." +msgstr "Le préfixe du titre des pages." + +#. type: item +#: doc/guix.texi:16337 +#, no-wrap +msgid "@code{guix-command} (default: @code{\"guix\"})" +msgstr "@code{guix-command} (par défaut : @code{\"guix\"})" + +#. type: table +#: doc/guix.texi:16339 +msgid "The @command{guix} command." +msgstr "La commande @command{guix}" + +#. type: item +#: doc/guix.texi:16340 +#, no-wrap +msgid "@code{package-filter-proc} (default: @code{(const #t)})" +msgstr "@code{package-filter-proc} (par défaut : @code{(const #t)})" + +#. type: table +#: doc/guix.texi:16342 +msgid "A procedure specifying how to filter packages that are displayed." +msgstr "Une procédure qui spécifie comment filtrer les paquets qui seront affichés." + +#. type: item +#: doc/guix.texi:16343 +#, no-wrap +msgid "@code{package-page-extension-proc} (default: @code{(const '())})" +msgstr "@code{package-page-extension-procinputs} (par défaut : @code{(const '())})" + +#. type: table +#: doc/guix.texi:16345 +msgid "Extension package for @code{hpcguix-web}." +msgstr "" + +#. type: item +#: doc/guix.texi:16346 +#, no-wrap +msgid "@code{menu} (default: @code{'()})" +msgstr "@code{menu} (par défaut : @code{'()})" + +#. type: table +#: doc/guix.texi:16348 +msgid "Additional entry in page @code{menu}." +msgstr "" + +#. type: table +#: doc/guix.texi:16353 +msgid "See the hpcguix-web repository for a @uref{https://github.com/UMCUGenetics/hpcguix-web/blob/master/hpcweb-configuration.scm, complete example}." +msgstr "" + +#. type: item +#: doc/guix.texi:16354 +#, no-wrap +msgid "@code{package} (default: @code{hpcguix-web})" +msgstr "@code{packages} (par défaut : @code{hpcguix-web})" + +#. type: table +#: doc/guix.texi:16356 +msgid "The hpcguix-web package to use." +msgstr "Le paquet hpcguix-web à utiliser." + +#. type: Plain text +#: doc/guix.texi:16360 +msgid "A typical hpcguix-web service declaration looks like this:" +msgstr "" + +#. type: example +#: doc/guix.texi:16369 +#, no-wrap +msgid "" +"(service hpcguix-web-service-type\n" +" (hpcguix-web-configuration\n" +" (specs\n" +" #~(define site-config\n" +" (hpcweb-configuration\n" +" (title-prefix \"Guix-HPC - \")\n" +" (menu '((\"/about\" \"ABOUT\"))))))))\n" +msgstr "" + +#. type: cindex +#: doc/guix.texi:16374 #, no-wrap msgid "Web" msgstr "" #. type: cindex -#: doc/guix.texi:15948 +#: doc/guix.texi:16375 #, no-wrap msgid "HTTP, HTTPS" msgstr "" #. type: cindex -#: doc/guix.texi:15949 +#: doc/guix.texi:16376 #, no-wrap msgid "Let's Encrypt" msgstr "" #. type: cindex -#: doc/guix.texi:15950 +#: doc/guix.texi:16377 #, no-wrap msgid "TLS certificates" msgstr "" #. type: Plain text -#: doc/guix.texi:15957 -msgid "" -"The @code{(gnu services certbot)} module provides a service to automatically " -"obtain a valid TLS certificate from the Let's Encrypt certificate " -"authority. These certificates can then be used to serve content securely " -"over HTTPS or other TLS-based protocols, with the knowledge that the client " -"will be able to verify the server's authenticity." +#: doc/guix.texi:16384 +msgid "The @code{(gnu services certbot)} module provides a service to automatically obtain a valid TLS certificate from the Let's Encrypt certificate authority. These certificates can then be used to serve content securely over HTTPS or other TLS-based protocols, with the knowledge that the client will be able to verify the server's authenticity." msgstr "" #. type: Plain text -#: doc/guix.texi:15969 -msgid "" -"@url{https://letsencrypt.org/, Let's Encrypt} provides the @code{certbot} " -"tool to automate the certification process. This tool first securely " -"generates a key on the server. It then makes a request to the Let's Encrypt " -"certificate authority (CA) to sign the key. The CA checks that the request " -"originates from the host in question by using a challenge-response protocol, " -"requiring the server to provide its response over HTTP. If that protocol " -"completes successfully, the CA signs the key, resulting in a certificate. " -"That certificate is valid for a limited period of time, and therefore to " -"continue to provide TLS services, the server needs to periodically ask the " -"CA to renew its signature." +#: doc/guix.texi:16396 +msgid "@url{https://letsencrypt.org/, Let's Encrypt} provides the @code{certbot} tool to automate the certification process. This tool first securely generates a key on the server. It then makes a request to the Let's Encrypt certificate authority (CA) to sign the key. The CA checks that the request originates from the host in question by using a challenge-response protocol, requiring the server to provide its response over HTTP. If that protocol completes successfully, the CA signs the key, resulting in a certificate. That certificate is valid for a limited period of time, and therefore to continue to provide TLS services, the server needs to periodically ask the CA to renew its signature." msgstr "" #. type: Plain text -#: doc/guix.texi:15976 -msgid "" -"The certbot service automates this process: the initial key generation, the " -"initial certification request to the Let's Encrypt service, the web server " -"challenge/response integration, writing the certificate to disk, the " -"automated periodic renewals, and the deployment tasks associated with the " -"renewal (e.g. reloading services, copying keys with different permissions)." +#: doc/guix.texi:16403 +msgid "The certbot service automates this process: the initial key generation, the initial certification request to the Let's Encrypt service, the web server challenge/response integration, writing the certificate to disk, the automated periodic renewals, and the deployment tasks associated with the renewal (e.g. reloading services, copying keys with different permissions)." msgstr "" #. type: Plain text -#: doc/guix.texi:15982 -msgid "" -"Certbot is run twice a day, at a random minute within the hour. It won't do " -"anything until your certificates are due for renewal or revoked, but running " -"it regularly would give your service a chance of staying online in case a " -"Let's Encrypt-initiated revocation happened for some reason." +#: doc/guix.texi:16409 +msgid "Certbot is run twice a day, at a random minute within the hour. It won't do anything until your certificates are due for renewal or revoked, but running it regularly would give your service a chance of staying online in case a Let's Encrypt-initiated revocation happened for some reason." msgstr "" #. type: Plain text -#: doc/guix.texi:15986 -msgid "" -"By using this service, you agree to the ACME Subscriber Agreement, which can " -"be found there: @url{https://acme-v01.api.letsencrypt.org/directory}." +#: doc/guix.texi:16413 +msgid "By using this service, you agree to the ACME Subscriber Agreement, which can be found there: @url{https://acme-v01.api.letsencrypt.org/directory}." msgstr "" #. type: defvr -#: doc/guix.texi:15987 +#: doc/guix.texi:16414 #, no-wrap msgid "{Scheme Variable} certbot-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:15990 -msgid "" -"A service type for the @code{certbot} Let's Encrypt client. Its value must " -"be a @code{certbot-configuration} record as in this example:" +#: doc/guix.texi:16417 +msgid "A service type for the @code{certbot} Let's Encrypt client. Its value must be a @code{certbot-configuration} record as in this example:" msgstr "" #. type: example -#: doc/guix.texi:15997 +#: doc/guix.texi:16424 #, no-wrap msgid "" "(define %nginx-deploy-hook\n" @@ -35832,7 +29715,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:16008 +#: doc/guix.texi:16435 #, no-wrap msgid "" "(service certbot-service-type\n" @@ -35848,216 +29731,180 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:16011 +#: doc/guix.texi:16438 msgid "See below for details about @code{certbot-configuration}." msgstr "" #. type: deftp -#: doc/guix.texi:16013 +#: doc/guix.texi:16440 #, no-wrap msgid "{Data Type} certbot-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16016 -msgid "" -"Data type representing the configuration of the @code{certbot} service. " -"This type has the following parameters:" +#: doc/guix.texi:16443 +msgid "Data type representing the configuration of the @code{certbot} service. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:16018 +#: doc/guix.texi:16445 #, no-wrap msgid "@code{package} (default: @code{certbot})" msgstr "" #. type: table -#: doc/guix.texi:16020 +#: doc/guix.texi:16447 msgid "The certbot package to use." msgstr "" #. type: item -#: doc/guix.texi:16021 +#: doc/guix.texi:16448 #, no-wrap msgid "@code{webroot} (default: @code{/var/www})" msgstr "" #. type: table -#: doc/guix.texi:16024 -msgid "" -"The directory from which to serve the Let's Encrypt challenge/response files." +#: doc/guix.texi:16451 +msgid "The directory from which to serve the Let's Encrypt challenge/response files." msgstr "" #. type: item -#: doc/guix.texi:16025 +#: doc/guix.texi:16452 #, no-wrap msgid "@code{certificates} (default: @code{()})" msgstr "" #. type: table -#: doc/guix.texi:16029 -msgid "" -"A list of @code{certificates-configuration}s for which to generate " -"certificates and request signatures. Each certificate has a @code{name} and " -"several @code{domains}." +#: doc/guix.texi:16456 +msgid "A list of @code{certificates-configuration}s for which to generate certificates and request signatures. Each certificate has a @code{name} and several @code{domains}." msgstr "" #. type: table -#: doc/guix.texi:16033 -msgid "" -"Mandatory email used for registration, recovery contact, and important " -"account notifications." +#: doc/guix.texi:16460 +msgid "Mandatory email used for registration, recovery contact, and important account notifications." msgstr "" #. type: item -#: doc/guix.texi:16034 +#: doc/guix.texi:16461 #, no-wrap msgid "@code{rsa-key-size} (default: @code{2048})" msgstr "" #. type: table -#: doc/guix.texi:16036 +#: doc/guix.texi:16463 msgid "Size of the RSA key." msgstr "" #. type: item -#: doc/guix.texi:16037 +#: doc/guix.texi:16464 #, no-wrap msgid "@code{default-location} (default: @i{see below})" msgstr "" #. type: table -#: doc/guix.texi:16046 -msgid "" -"The default @code{nginx-location-configuration}. Because @code{certbot} " -"needs to be able to serve challenges and responses, it needs to be able to " -"run a web server. It does so by extending the @code{nginx} web service with " -"an @code{nginx-server-configuration} listening on the @var{domains} on port " -"80, and which has a @code{nginx-location-configuration} for the @code{/.well-" -"known/} URI path subspace used by Let's Encrypt. @xref{Web Services}, for " -"more on these nginx configuration data types." +#: doc/guix.texi:16473 +msgid "The default @code{nginx-location-configuration}. Because @code{certbot} needs to be able to serve challenges and responses, it needs to be able to run a web server. It does so by extending the @code{nginx} web service with an @code{nginx-server-configuration} listening on the @var{domains} on port 80, and which has a @code{nginx-location-configuration} for the @code{/.well-known/} URI path subspace used by Let's Encrypt. @xref{Web Services}, for more on these nginx configuration data types." msgstr "" #. type: table -#: doc/guix.texi:16050 -msgid "" -"Requests to other URL paths will be matched by the @code{default-location}, " -"which if present is added to all @code{nginx-server-configuration}s." +#: doc/guix.texi:16477 +msgid "Requests to other URL paths will be matched by the @code{default-location}, which if present is added to all @code{nginx-server-configuration}s." msgstr "" #. type: table -#: doc/guix.texi:16054 -msgid "" -"By default, the @code{default-location} will issue a redirect from " -"@code{http://@var{domain}/...} to @code{https://@var{domain}/...}, leaving " -"you to define what to serve on your site via @code{https}." +#: doc/guix.texi:16481 +msgid "By default, the @code{default-location} will issue a redirect from @code{http://@var{domain}/...} to @code{https://@var{domain}/...}, leaving you to define what to serve on your site via @code{https}." msgstr "" #. type: table -#: doc/guix.texi:16056 +#: doc/guix.texi:16483 msgid "Pass @code{#f} to not issue a default location." msgstr "" #. type: deftp -#: doc/guix.texi:16059 +#: doc/guix.texi:16486 #, no-wrap msgid "{Data Type} certificate-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16062 -msgid "" -"Data type representing the configuration of a certificate. This type has " -"the following parameters:" +#: doc/guix.texi:16489 +msgid "Data type representing the configuration of a certificate. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:16064 +#: doc/guix.texi:16491 #, no-wrap msgid "@code{name} (default: @i{see below})" msgstr "" #. type: table -#: doc/guix.texi:16068 -msgid "" -"This name is used by Certbot for housekeeping and in file paths; it doesn't " -"affect the content of the certificate itself. To see certificate names, run " -"@code{certbot certificates}." +#: doc/guix.texi:16495 +msgid "This name is used by Certbot for housekeeping and in file paths; it doesn't affect the content of the certificate itself. To see certificate names, run @code{certbot certificates}." msgstr "" #. type: table -#: doc/guix.texi:16070 +#: doc/guix.texi:16497 msgid "Its default is the first provided domain." msgstr "" #. type: item -#: doc/guix.texi:16071 +#: doc/guix.texi:16498 #, no-wrap msgid "@code{domains} (default: @code{()})" msgstr "" #. type: table -#: doc/guix.texi:16074 -msgid "" -"The first domain provided will be the subject CN of the certificate, and all " -"domains will be Subject Alternative Names on the certificate." +#: doc/guix.texi:16501 +msgid "The first domain provided will be the subject CN of the certificate, and all domains will be Subject Alternative Names on the certificate." msgstr "" #. type: item -#: doc/guix.texi:16075 +#: doc/guix.texi:16502 #, no-wrap msgid "@code{deploy-hook} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16083 -msgid "" -"Command to be run in a shell once for each successfully issued certificate. " -"For this command, the shell variable @code{$RENEWED_LINEAGE} will point to " -"the config live subdirectory (for example, @samp{\"/etc/letsencrypt/live/" -"example.com\"}) containing the new certificates and keys; the shell variable " -"@code{$RENEWED_DOMAINS} will contain a space-delimited list of renewed " -"certificate domains (for example, @samp{\"example.com www.example.com\"}." +#: doc/guix.texi:16510 +msgid "Command to be run in a shell once for each successfully issued certificate. For this command, the shell variable @code{$RENEWED_LINEAGE} will point to the config live subdirectory (for example, @samp{\"/etc/letsencrypt/live/example.com\"}) containing the new certificates and keys; the shell variable @code{$RENEWED_DOMAINS} will contain a space-delimited list of renewed certificate domains (for example, @samp{\"example.com www.example.com\"}." msgstr "" #. type: Plain text -#: doc/guix.texi:16090 -msgid "" -"For each @code{certificate-configuration}, the certificate is saved to " -"@code{/etc/letsencrypt/live/@var{name}/fullchain.pem} and the key is saved " -"to @code{/etc/letsencrypt/live/@var{name}/privkey.pem}." +#: doc/guix.texi:16517 +msgid "For each @code{certificate-configuration}, the certificate is saved to @code{/etc/letsencrypt/live/@var{name}/fullchain.pem} and the key is saved to @code{/etc/letsencrypt/live/@var{name}/privkey.pem}." msgstr "" #. type: cindex -#: doc/guix.texi:16092 +#: doc/guix.texi:16519 #, no-wrap msgid "DNS (domain name system)" msgstr "" #. type: cindex -#: doc/guix.texi:16093 +#: doc/guix.texi:16520 #, no-wrap msgid "domain name system (DNS)" msgstr "" #. type: Plain text -#: doc/guix.texi:16099 -msgid "" -"The @code{(gnu services dns)} module provides services related to the " -"@dfn{domain name system} (DNS). It provides a server service for hosting an " -"@emph{authoritative} DNS server for multiple zones, slave or master. This " -"service uses @uref{https://www.knot-dns.cz/, Knot DNS}." +#: doc/guix.texi:16528 +msgid "The @code{(gnu services dns)} module provides services related to the @dfn{domain name system} (DNS). It provides a server service for hosting an @emph{authoritative} DNS server for multiple zones, slave or master. This service uses @uref{https://www.knot-dns.cz/, Knot DNS}. And also a caching and forwarding DNS server for the LAN, which uses @uref{http://www.thekelleys.org.uk/dnsmasq/doc.html, dnsmasq}." msgstr "" +#. type: subsubheading +#: doc/guix.texi:16529 +#, no-wrap +msgid "Knot Service" +msgstr "Service Knot" + #. type: Plain text -#: doc/guix.texi:16102 -msgid "" -"An example configuration of an authoritative server for two zones, one " -"master and one slave, is:" +#: doc/guix.texi:16533 +msgid "An example configuration of an authoritative server for two zones, one master and one slave, is:" msgstr "" #. type: lisp -#: doc/guix.texi:16109 +#: doc/guix.texi:16540 #, no-wrap msgid "" "(define-zone-entries example.org.zone\n" @@ -36069,7 +29916,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:16116 +#: doc/guix.texi:16547 #, no-wrap msgid "" "(define master-zone\n" @@ -36082,7 +29929,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:16122 +#: doc/guix.texi:16553 #, no-wrap msgid "" "(define slave-zone\n" @@ -36094,7 +29941,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:16127 +#: doc/guix.texi:16558 #, no-wrap msgid "" "(define plop-master\n" @@ -36105,7 +29952,7 @@ msgid "" msgstr "" #. type: lisp -#: doc/guix.texi:16136 +#: doc/guix.texi:16567 #, no-wrap msgid "" "(operating-system\n" @@ -36119,1879 +29966,1822 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:16138 +#: doc/guix.texi:16569 #, no-wrap msgid "{Scheme Variable} knot-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:16140 +#: doc/guix.texi:16571 msgid "This is the type for the Knot DNS server." msgstr "" #. type: deffn -#: doc/guix.texi:16148 -msgid "" -"Knot DNS is an authoritative DNS server, meaning that it can serve multiple " -"zones, that is to say domain names you would buy from a registrar. This " -"server is not a resolver, meaning that it can only resolve names for which " -"it is authoritative. This server can be configured to serve zones as a " -"master server or a slave server as a per-zone basis. Slave zones will get " -"their data from masters, and will serve it as an authoritative server. From " -"the point of view of a resolver, there is no difference between master and " -"slave." +#: doc/guix.texi:16579 +msgid "Knot DNS is an authoritative DNS server, meaning that it can serve multiple zones, that is to say domain names you would buy from a registrar. This server is not a resolver, meaning that it can only resolve names for which it is authoritative. This server can be configured to serve zones as a master server or a slave server as a per-zone basis. Slave zones will get their data from masters, and will serve it as an authoritative server. From the point of view of a resolver, there is no difference between master and slave." msgstr "" #. type: deffn -#: doc/guix.texi:16150 +#: doc/guix.texi:16581 msgid "The following data types are used to configure the Knot DNS server:" msgstr "" #. type: deftp -#: doc/guix.texi:16152 +#: doc/guix.texi:16583 #, no-wrap msgid "{Data Type} knot-key-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16155 +#: doc/guix.texi:16586 msgid "Data type representing a key. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:16157 doc/guix.texi:16177 doc/guix.texi:16292 -#: doc/guix.texi:16318 doc/guix.texi:16353 +#: doc/guix.texi:16588 doc/guix.texi:16608 doc/guix.texi:16723 +#: doc/guix.texi:16749 doc/guix.texi:16784 #, no-wrap msgid "@code{id} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:16160 -msgid "" -"An identifier for other configuration fields to refer to this key. IDs must " -"be unique and must not be empty." +#: doc/guix.texi:16591 +msgid "An identifier for other configuration fields to refer to this key. IDs must be unique and must not be empty." msgstr "" #. type: item -#: doc/guix.texi:16161 +#: doc/guix.texi:16592 #, no-wrap msgid "@code{algorithm} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16165 -msgid "" -"The algorithm to use. Choose between @code{#f}, @code{'hmac-md5}, " -"@code{'hmac-sha1}, @code{'hmac-sha224}, @code{'hmac-sha256}, @code{'hmac-" -"sha384} and @code{'hmac-sha512}." +#: doc/guix.texi:16596 +msgid "The algorithm to use. Choose between @code{#f}, @code{'hmac-md5}, @code{'hmac-sha1}, @code{'hmac-sha224}, @code{'hmac-sha256}, @code{'hmac-sha384} and @code{'hmac-sha512}." msgstr "" #. type: item -#: doc/guix.texi:16166 +#: doc/guix.texi:16597 #, no-wrap msgid "@code{secret} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:16168 +#: doc/guix.texi:16599 msgid "The secret key itself." msgstr "" #. type: deftp -#: doc/guix.texi:16172 +#: doc/guix.texi:16603 #, no-wrap msgid "{Data Type} knot-acl-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16175 -msgid "" -"Data type representing an Access Control List (ACL) configuration. This " -"type has the following parameters:" +#: doc/guix.texi:16606 +msgid "Data type representing an Access Control List (ACL) configuration. This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:16180 -msgid "" -"An identifier for ether configuration fields to refer to this key. IDs must " -"be unique and must not be empty." +#: doc/guix.texi:16611 +msgid "An identifier for ether configuration fields to refer to this key. IDs must be unique and must not be empty." msgstr "" #. type: item -#: doc/guix.texi:16181 doc/guix.texi:16296 +#: doc/guix.texi:16612 doc/guix.texi:16727 #, no-wrap msgid "@code{address} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:16185 -msgid "" -"An ordered list of IP addresses, network subnets, or network ranges " -"represented with strings. The query must match one of them. Empty value " -"means that address match is not required." +#: doc/guix.texi:16616 +msgid "An ordered list of IP addresses, network subnets, or network ranges represented with strings. The query must match one of them. Empty value means that address match is not required." msgstr "" #. type: item -#: doc/guix.texi:16186 +#: doc/guix.texi:16617 #, no-wrap msgid "@code{key} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:16190 -msgid "" -"An ordered list of references to keys represented with strings. The string " -"must match a key ID defined in a @code{knot-key-configuration}. No key " -"means that a key is not require to match that ACL." +#: doc/guix.texi:16621 +msgid "An ordered list of references to keys represented with strings. The string must match a key ID defined in a @code{knot-key-configuration}. No key means that a key is not require to match that ACL." msgstr "" #. type: item -#: doc/guix.texi:16191 +#: doc/guix.texi:16622 #, no-wrap msgid "@code{action} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:16195 -msgid "" -"An ordered list of actions that are permitted or forbidden by this ACL. " -"Possible values are lists of zero or more elements from @code{'transfer}, " -"@code{'notify} and @code{'update}." +#: doc/guix.texi:16626 +msgid "An ordered list of actions that are permitted or forbidden by this ACL. Possible values are lists of zero or more elements from @code{'transfer}, @code{'notify} and @code{'update}." msgstr "" #. type: item -#: doc/guix.texi:16196 +#: doc/guix.texi:16627 #, no-wrap msgid "@code{deny?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16199 -msgid "" -"When true, the ACL defines restrictions. Listed actions are forbidden. " -"When false, listed actions are allowed." +#: doc/guix.texi:16630 +msgid "When true, the ACL defines restrictions. Listed actions are forbidden. When false, listed actions are allowed." msgstr "" #. type: deftp -#: doc/guix.texi:16203 +#: doc/guix.texi:16634 #, no-wrap msgid "{Data Type} zone-entry" msgstr "" #. type: deftp -#: doc/guix.texi:16206 -msgid "" -"Data type represnting a record entry in a zone file. This type has the " -"following parameters:" +#: doc/guix.texi:16637 +msgid "Data type represnting a record entry in a zone file. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:16208 +#: doc/guix.texi:16639 #, no-wrap msgid "@code{name} (default: @code{\"@@\"})" msgstr "" #. type: table -#: doc/guix.texi:16214 -msgid "" -"The name of the record. @code{\"@@\"} refers to the origin of the zone. " -"Names are relative to the origin of the zone. For example, in the " -"@code{example.org} zone, @code{\"ns.example.org\"} actually refers to " -"@code{ns.example.org.example.org}. Names ending with a dot are absolute, " -"which means that @code{\"ns.example.org.\"} refers to @code{ns.example.org}." +#: doc/guix.texi:16645 +msgid "The name of the record. @code{\"@@\"} refers to the origin of the zone. Names are relative to the origin of the zone. For example, in the @code{example.org} zone, @code{\"ns.example.org\"} actually refers to @code{ns.example.org.example.org}. Names ending with a dot are absolute, which means that @code{\"ns.example.org.\"} refers to @code{ns.example.org}." msgstr "" #. type: item -#: doc/guix.texi:16215 +#: doc/guix.texi:16646 #, no-wrap msgid "@code{ttl} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:16217 -msgid "" -"The Time-To-Live (TTL) of this record. If not set, the default TTL is used." +#: doc/guix.texi:16648 +msgid "The Time-To-Live (TTL) of this record. If not set, the default TTL is used." msgstr "" #. type: item -#: doc/guix.texi:16218 +#: doc/guix.texi:16649 #, no-wrap msgid "@code{class} (default: @code{\"IN\"})" msgstr "" #. type: table -#: doc/guix.texi:16221 -msgid "" -"The class of the record. Knot currently supports only @code{\"IN\"} and " -"partially @code{\"CH\"}." +#: doc/guix.texi:16652 +msgid "The class of the record. Knot currently supports only @code{\"IN\"} and partially @code{\"CH\"}." msgstr "" #. type: item -#: doc/guix.texi:16222 +#: doc/guix.texi:16653 #, no-wrap msgid "@code{type} (default: @code{\"A\"})" msgstr "" #. type: table -#: doc/guix.texi:16226 -msgid "" -"The type of the record. Common types include A (IPv4 address), AAAA (IPv6 " -"address), NS (Name Server) and MX (Mail eXchange). Many other types are " -"defined." +#: doc/guix.texi:16657 +msgid "The type of the record. Common types include A (IPv4 address), AAAA (IPv6 address), NS (Name Server) and MX (Mail eXchange). Many other types are defined." msgstr "" #. type: item -#: doc/guix.texi:16227 +#: doc/guix.texi:16658 #, no-wrap msgid "@code{data} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:16231 -msgid "" -"The data contained in the record. For instance an IP address associated " -"with an A record, or a domain name associated with an NS record. Remember " -"that domain names are relative to the origin unless they end with a dot." +#: doc/guix.texi:16662 +msgid "The data contained in the record. For instance an IP address associated with an A record, or a domain name associated with an NS record. Remember that domain names are relative to the origin unless they end with a dot." msgstr "" #. type: deftp -#: doc/guix.texi:16235 +#: doc/guix.texi:16666 #, no-wrap msgid "{Data Type} zone-file" msgstr "" #. type: deftp -#: doc/guix.texi:16238 -msgid "" -"Data type representing the content of a zone file. This type has the " -"following parameters:" +#: doc/guix.texi:16669 +msgid "Data type representing the content of a zone file. This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:16247 -msgid "" -"The list of entries. The SOA record is taken care of, so you don't need to " -"put it in the list of entries. This list should probably contain an entry " -"for your primary authoritative DNS server. Other than using a list of " -"entries directly, you can use @code{define-zone-entries} to define a object " -"containing the list of entries more easily, that you can later pass to the " -"@code{entries} field of the @code{zone-file}." +#: doc/guix.texi:16678 +msgid "The list of entries. The SOA record is taken care of, so you don't need to put it in the list of entries. This list should probably contain an entry for your primary authoritative DNS server. Other than using a list of entries directly, you can use @code{define-zone-entries} to define a object containing the list of entries more easily, that you can later pass to the @code{entries} field of the @code{zone-file}." msgstr "" #. type: item -#: doc/guix.texi:16248 +#: doc/guix.texi:16679 #, no-wrap msgid "@code{origin} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:16250 +#: doc/guix.texi:16681 msgid "The name of your zone. This parameter cannot be empty." msgstr "" #. type: item -#: doc/guix.texi:16251 +#: doc/guix.texi:16682 #, no-wrap msgid "@code{ns} (default: @code{\"ns\"})" msgstr "" #. type: table -#: doc/guix.texi:16256 -msgid "" -"The domain of your primary authoritative DNS server. The name is relative " -"to the origin, unless it ends with a dot. It is mandatory that this primary " -"DNS server corresponds to an NS record in the zone and that it is associated " -"to an IP address in the list of entries." +#: doc/guix.texi:16687 +msgid "The domain of your primary authoritative DNS server. The name is relative to the origin, unless it ends with a dot. It is mandatory that this primary DNS server corresponds to an NS record in the zone and that it is associated to an IP address in the list of entries." msgstr "" #. type: item -#: doc/guix.texi:16257 +#: doc/guix.texi:16688 #, no-wrap msgid "@code{mail} (default: @code{\"hostmaster\"})" msgstr "" #. type: table -#: doc/guix.texi:16260 -msgid "" -"An email address people can contact you at, as the owner of the zone. This " -"is translated as @code{@@}." +#: doc/guix.texi:16691 +msgid "An email address people can contact you at, as the owner of the zone. This is translated as @code{@@}." msgstr "" #. type: item -#: doc/guix.texi:16261 +#: doc/guix.texi:16692 #, no-wrap msgid "@code{serial} (default: @code{1})" msgstr "" #. type: table -#: doc/guix.texi:16265 -msgid "" -"The serial number of the zone. As this is used to keep track of changes by " -"both slaves and resolvers, it is mandatory that it @emph{never} decreases. " -"Always increment it when you make a change in your zone." +#: doc/guix.texi:16696 +msgid "The serial number of the zone. As this is used to keep track of changes by both slaves and resolvers, it is mandatory that it @emph{never} decreases. Always increment it when you make a change in your zone." msgstr "" #. type: item -#: doc/guix.texi:16266 +#: doc/guix.texi:16697 #, no-wrap msgid "@code{refresh} (default: @code{(* 2 24 3600)})" msgstr "" #. type: table -#: doc/guix.texi:16270 -msgid "" -"The frequency at which slaves will do a zone transfer. This value is a " -"number of seconds. It can be computed by multiplications or with " -"@code{(string->duration)}." +#: doc/guix.texi:16701 +msgid "The frequency at which slaves will do a zone transfer. This value is a number of seconds. It can be computed by multiplications or with @code{(string->duration)}." msgstr "" #. type: item -#: doc/guix.texi:16271 +#: doc/guix.texi:16702 #, no-wrap msgid "@code{retry} (default: @code{(* 15 60)})" msgstr "" #. type: table -#: doc/guix.texi:16274 -msgid "" -"The period after which a slave will retry to contact its master when it " -"fails to do so a first time." +#: doc/guix.texi:16705 +msgid "The period after which a slave will retry to contact its master when it fails to do so a first time." msgstr "" #. type: item -#: doc/guix.texi:16275 +#: doc/guix.texi:16706 #, no-wrap msgid "@code{expiry} (default: @code{(* 14 24 3600)})" msgstr "" #. type: table -#: doc/guix.texi:16279 -msgid "" -"Default TTL of records. Existing records are considered correct for at most " -"this amount of time. After this period, resolvers will invalidate their " -"cache and check again that it still exists." +#: doc/guix.texi:16710 +msgid "Default TTL of records. Existing records are considered correct for at most this amount of time. After this period, resolvers will invalidate their cache and check again that it still exists." msgstr "" #. type: item -#: doc/guix.texi:16280 +#: doc/guix.texi:16711 #, no-wrap msgid "@code{nx} (default: @code{3600})" msgstr "" #. type: table -#: doc/guix.texi:16283 -msgid "" -"Default TTL of inexistant records. This delay is usually short because you " -"want your new domains to reach everyone quickly." +#: doc/guix.texi:16714 +msgid "Default TTL of inexistant records. This delay is usually short because you want your new domains to reach everyone quickly." msgstr "" #. type: deftp -#: doc/guix.texi:16287 +#: doc/guix.texi:16718 #, no-wrap msgid "{Data Type} knot-remote-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16290 -msgid "" -"Data type representing a remote configuration. This type has the following " -"parameters:" +#: doc/guix.texi:16721 +msgid "Data type representing a remote configuration. This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:16295 -msgid "" -"An identifier for other configuration fields to refer to this remote. IDs " -"must be unique and must not be empty." +#: doc/guix.texi:16726 +msgid "An identifier for other configuration fields to refer to this remote. IDs must be unique and must not be empty." msgstr "" #. type: table -#: doc/guix.texi:16300 -msgid "" -"An ordered list of destination IP addresses. Addresses are tried in " -"sequence. An optional port can be given with the @@ separator. For " -"instance: @code{(list \"1.2.3.4\" \"2.3.4.5@@53\")}. Default port is 53." +#: doc/guix.texi:16731 +msgid "An ordered list of destination IP addresses. Addresses are tried in sequence. An optional port can be given with the @@ separator. For instance: @code{(list \"1.2.3.4\" \"2.3.4.5@@53\")}. Default port is 53." msgstr "" #. type: item -#: doc/guix.texi:16301 +#: doc/guix.texi:16732 #, no-wrap msgid "@code{via} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:16305 -msgid "" -"An ordered list of source IP addresses. An empty list will have Knot choose " -"an appropriate source IP. An optional port can be given with the @@ " -"separator. The default is to choose at random." +#: doc/guix.texi:16736 +msgid "An ordered list of source IP addresses. An empty list will have Knot choose an appropriate source IP. An optional port can be given with the @@ separator. The default is to choose at random." msgstr "" #. type: item -#: doc/guix.texi:16306 +#: doc/guix.texi:16737 #, no-wrap msgid "@code{key} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16309 -msgid "" -"A reference to a key, that is a string containing the identifier of a key " -"defined in a @code{knot-key-configuration} field." +#: doc/guix.texi:16740 +msgid "A reference to a key, that is a string containing the identifier of a key defined in a @code{knot-key-configuration} field." msgstr "" #. type: deftp -#: doc/guix.texi:16313 +#: doc/guix.texi:16744 #, no-wrap msgid "{Data Type} knot-keystore-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16316 -msgid "" -"Data type representing a keystore to hold dnssec keys. This type has the " -"following parameters:" +#: doc/guix.texi:16747 +msgid "Data type representing a keystore to hold dnssec keys. This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:16320 +#: doc/guix.texi:16751 msgid "The id of the keystore. It must not be empty." msgstr "" #. type: item -#: doc/guix.texi:16321 +#: doc/guix.texi:16752 #, no-wrap msgid "@code{backend} (default: @code{'pem})" msgstr "" #. type: table -#: doc/guix.texi:16323 -msgid "" -"The backend to store the keys in. Can be @code{'pem} or @code{'pkcs11}." +#: doc/guix.texi:16754 +msgid "The backend to store the keys in. Can be @code{'pem} or @code{'pkcs11}." msgstr "" #. type: item -#: doc/guix.texi:16324 +#: doc/guix.texi:16755 #, no-wrap msgid "@code{config} (default: @code{\"/var/lib/knot/keys/keys\"})" msgstr "" #. type: table -#: doc/guix.texi:16328 -msgid "" -"The configuration string of the backend. An example for the PKCS#11 is: " -"@code{\"pkcs11:token=knot;pin-value=1234 /gnu/store/.../lib/pkcs11/" -"libsofthsm2.so\"}. For the pem backend, the string reprensents a path in " -"the file system." +#: doc/guix.texi:16759 +msgid "The configuration string of the backend. An example for the PKCS#11 is: @code{\"pkcs11:token=knot;pin-value=1234 /gnu/store/.../lib/pkcs11/libsofthsm2.so\"}. For the pem backend, the string reprensents a path in the file system." msgstr "" #. type: deftp -#: doc/guix.texi:16332 +#: doc/guix.texi:16763 #, no-wrap msgid "{Data Type} knot-policy-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16336 -msgid "" -"Data type representing a dnssec policy. Knot DNS is able to automatically " -"sign your zones. It can either generate and manage your keys automatically " -"or use keys that you generate." +#: doc/guix.texi:16767 +msgid "Data type representing a dnssec policy. Knot DNS is able to automatically sign your zones. It can either generate and manage your keys automatically or use keys that you generate." msgstr "" #. type: deftp -#: doc/guix.texi:16343 -msgid "" -"Dnssec is usually implemented using two keys: a Key Signing Key (KSK) that " -"is used to sign the second, and a Zone Signing Key (ZSK) that is used to " -"sign the zone. In order to be trusted, the KSK needs to be present in the " -"parent zone (usually a top-level domain). If your registrar supports " -"dnssec, you will have to send them your KSK's hash so they can add a DS " -"record in their zone. This is not automated and need to be done each time " -"you change your KSK." +#: doc/guix.texi:16774 +msgid "Dnssec is usually implemented using two keys: a Key Signing Key (KSK) that is used to sign the second, and a Zone Signing Key (ZSK) that is used to sign the zone. In order to be trusted, the KSK needs to be present in the parent zone (usually a top-level domain). If your registrar supports dnssec, you will have to send them your KSK's hash so they can add a DS record in their zone. This is not automated and need to be done each time you change your KSK." msgstr "" #. type: deftp -#: doc/guix.texi:16349 -msgid "" -"The policy also defines the lifetime of keys. Usually, ZSK can be changed " -"easily and use weaker cryptographic functions (they use lower parameters) in " -"order to sign records quickly, so they are changed often. The KSK however " -"requires manual interaction with the registrar, so they are changed less " -"often and use stronger parameters because they sign only one record." +#: doc/guix.texi:16780 +msgid "The policy also defines the lifetime of keys. Usually, ZSK can be changed easily and use weaker cryptographic functions (they use lower parameters) in order to sign records quickly, so they are changed often. The KSK however requires manual interaction with the registrar, so they are changed less often and use stronger parameters because they sign only one record." msgstr "" #. type: deftp -#: doc/guix.texi:16351 +#: doc/guix.texi:16782 msgid "This type has the following parameters:" msgstr "" #. type: table -#: doc/guix.texi:16355 +#: doc/guix.texi:16786 msgid "The id of the policy. It must not be empty." msgstr "" #. type: item -#: doc/guix.texi:16356 +#: doc/guix.texi:16787 #, no-wrap msgid "@code{keystore} (default: @code{\"default\"})" msgstr "" #. type: table -#: doc/guix.texi:16361 -msgid "" -"A reference to a keystore, that is a string containing the identifier of a " -"keystore defined in a @code{knot-keystore-configuration} field. The " -"@code{\"default\"} identifier means the default keystore (a kasp database " -"that was setup by this service)." +#: doc/guix.texi:16792 +msgid "A reference to a keystore, that is a string containing the identifier of a keystore defined in a @code{knot-keystore-configuration} field. The @code{\"default\"} identifier means the default keystore (a kasp database that was setup by this service)." msgstr "" #. type: item -#: doc/guix.texi:16362 +#: doc/guix.texi:16793 #, no-wrap msgid "@code{manual?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16364 +#: doc/guix.texi:16795 msgid "Whether the key management is manual or automatic." msgstr "" #. type: item -#: doc/guix.texi:16365 +#: doc/guix.texi:16796 #, no-wrap msgid "@code{single-type-signing?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16367 +#: doc/guix.texi:16798 msgid "When @code{#t}, use the Single-Type Signing Scheme." msgstr "" #. type: item -#: doc/guix.texi:16368 +#: doc/guix.texi:16799 #, no-wrap msgid "@code{algorithm} (default: @code{\"ecdsap256sha256\"})" msgstr "" #. type: table -#: doc/guix.texi:16370 +#: doc/guix.texi:16801 msgid "An algorithm of signing keys and issued signatures." msgstr "" #. type: item -#: doc/guix.texi:16371 +#: doc/guix.texi:16802 #, no-wrap msgid "@code{ksk-size} (default: @code{256})" msgstr "" #. type: table -#: doc/guix.texi:16374 -msgid "" -"The length of the KSK. Note that this value is correct for the default " -"algorithm, but would be unsecure for other algorithms." +#: doc/guix.texi:16805 +msgid "The length of the KSK. Note that this value is correct for the default algorithm, but would be unsecure for other algorithms." msgstr "" #. type: item -#: doc/guix.texi:16375 +#: doc/guix.texi:16806 #, no-wrap msgid "@code{zsk-size} (default: @code{256})" msgstr "" #. type: table -#: doc/guix.texi:16378 -msgid "" -"The length of the ZSK. Note that this value is correct for the default " -"algorithm, but would be unsecure for other algorithms." +#: doc/guix.texi:16809 +msgid "The length of the ZSK. Note that this value is correct for the default algorithm, but would be unsecure for other algorithms." msgstr "" #. type: item -#: doc/guix.texi:16379 +#: doc/guix.texi:16810 #, no-wrap msgid "@code{dnskey-ttl} (default: @code{'default})" msgstr "" #. type: table -#: doc/guix.texi:16382 -msgid "" -"The TTL value for DNSKEY records added into zone apex. The special " -"@code{'default} value means same as the zone SOA TTL." +#: doc/guix.texi:16813 +msgid "The TTL value for DNSKEY records added into zone apex. The special @code{'default} value means same as the zone SOA TTL." msgstr "" #. type: item -#: doc/guix.texi:16383 +#: doc/guix.texi:16814 #, no-wrap msgid "@code{zsk-lifetime} (default: @code{(* 30 24 3600)})" msgstr "" #. type: table -#: doc/guix.texi:16385 +#: doc/guix.texi:16816 msgid "The period between ZSK publication and the next rollover initiation." msgstr "" #. type: item -#: doc/guix.texi:16386 +#: doc/guix.texi:16817 #, no-wrap msgid "@code{propagation-delay} (default: @code{(* 24 3600)})" msgstr "" #. type: table -#: doc/guix.texi:16389 -msgid "" -"An extra delay added for each key rollover step. This value should be high " -"enough to cover propagation of data from the master server to all slaves." +#: doc/guix.texi:16820 +msgid "An extra delay added for each key rollover step. This value should be high enough to cover propagation of data from the master server to all slaves." msgstr "" #. type: item -#: doc/guix.texi:16390 +#: doc/guix.texi:16821 #, no-wrap msgid "@code{rrsig-lifetime} (default: @code{(* 14 24 3600)})" msgstr "" #. type: table -#: doc/guix.texi:16392 +#: doc/guix.texi:16823 msgid "A validity period of newly issued signatures." msgstr "" #. type: item -#: doc/guix.texi:16393 +#: doc/guix.texi:16824 #, no-wrap msgid "@code{rrsig-refresh} (default: @code{(* 7 24 3600)})" msgstr "" #. type: table -#: doc/guix.texi:16395 -msgid "" -"A period how long before a signature expiration the signature will be " -"refreshed." +#: doc/guix.texi:16826 +msgid "A period how long before a signature expiration the signature will be refreshed." msgstr "" #. type: item -#: doc/guix.texi:16396 +#: doc/guix.texi:16827 #, no-wrap msgid "@code{nsec3?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16398 +#: doc/guix.texi:16829 msgid "When @code{#t}, NSEC3 will be used instead of NSEC." msgstr "" #. type: item -#: doc/guix.texi:16399 +#: doc/guix.texi:16830 #, no-wrap msgid "@code{nsec3-iterations} (default: @code{5})" msgstr "" #. type: table -#: doc/guix.texi:16401 +#: doc/guix.texi:16832 msgid "The number of additional times the hashing is performed." msgstr "" #. type: item -#: doc/guix.texi:16402 +#: doc/guix.texi:16833 #, no-wrap msgid "@code{nsec3-salt-length} (default: @code{8})" msgstr "" #. type: table -#: doc/guix.texi:16405 -msgid "" -"The length of a salt field in octets, which is appended to the original " -"owner name before hashing." +#: doc/guix.texi:16836 +msgid "The length of a salt field in octets, which is appended to the original owner name before hashing." msgstr "" #. type: item -#: doc/guix.texi:16406 +#: doc/guix.texi:16837 #, no-wrap msgid "@code{nsec3-salt-lifetime} (default: @code{(* 30 24 3600)})" msgstr "" #. type: table -#: doc/guix.texi:16408 +#: doc/guix.texi:16839 msgid "The validity period of newly issued salt field." msgstr "" #. type: deftp -#: doc/guix.texi:16412 +#: doc/guix.texi:16843 #, no-wrap msgid "{Data Type} knot-zone-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16415 -msgid "" -"Data type representing a zone served by Knot. This type has the following " -"parameters:" +#: doc/guix.texi:16846 +msgid "Data type representing a zone served by Knot. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:16417 +#: doc/guix.texi:16848 #, no-wrap msgid "@code{domain} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:16419 +#: doc/guix.texi:16850 msgid "The domain served by this configuration. It must not be empty." msgstr "" #. type: item -#: doc/guix.texi:16420 +#: doc/guix.texi:16851 #, no-wrap msgid "@code{file} (default: @code{\"\"})" msgstr "" #. type: table -#: doc/guix.texi:16423 -msgid "" -"The file where this zone is saved. This parameter is ignored by master " -"zones. Empty means default location that depends on the domain name." +#: doc/guix.texi:16854 +msgid "The file where this zone is saved. This parameter is ignored by master zones. Empty means default location that depends on the domain name." msgstr "" #. type: item -#: doc/guix.texi:16424 +#: doc/guix.texi:16855 #, no-wrap msgid "@code{zone} (default: @code{(zone-file)})" msgstr "" #. type: table -#: doc/guix.texi:16427 -msgid "" -"The content of the zone file. This parameter is ignored by slave zones. It " -"must contain a zone-file record." +#: doc/guix.texi:16858 +msgid "The content of the zone file. This parameter is ignored by slave zones. It must contain a zone-file record." msgstr "" #. type: item -#: doc/guix.texi:16428 +#: doc/guix.texi:16859 #, no-wrap msgid "@code{master} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:16431 -msgid "" -"A list of master remotes. When empty, this zone is a master. When set, " -"this zone is a slave. This is a list of remotes identifiers." +#: doc/guix.texi:16862 +msgid "A list of master remotes. When empty, this zone is a master. When set, this zone is a slave. This is a list of remotes identifiers." msgstr "" #. type: item -#: doc/guix.texi:16432 +#: doc/guix.texi:16863 #, no-wrap msgid "@code{ddns-master} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16435 -msgid "" -"The main master. When empty, it defaults to the first master in the list of " -"masters." +#: doc/guix.texi:16866 +msgid "The main master. When empty, it defaults to the first master in the list of masters." msgstr "" #. type: item -#: doc/guix.texi:16436 +#: doc/guix.texi:16867 #, no-wrap msgid "@code{notify} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:16438 +#: doc/guix.texi:16869 msgid "A list of slave remote identifiers." msgstr "" #. type: item -#: doc/guix.texi:16439 +#: doc/guix.texi:16870 #, no-wrap msgid "@code{acl} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:16441 +#: doc/guix.texi:16872 msgid "A list of acl identifiers." msgstr "" #. type: item -#: doc/guix.texi:16442 +#: doc/guix.texi:16873 #, no-wrap msgid "@code{semantic-checks?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16444 +#: doc/guix.texi:16875 msgid "When set, this adds more semantic checks to the zone." msgstr "" #. type: item -#: doc/guix.texi:16445 +#: doc/guix.texi:16876 #, no-wrap msgid "@code{disable-any?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16447 +#: doc/guix.texi:16878 msgid "When set, this forbids queries of the ANY type." msgstr "" #. type: item -#: doc/guix.texi:16448 +#: doc/guix.texi:16879 #, no-wrap msgid "@code{zonefile-sync} (default: @code{0})" msgstr "" #. type: table -#: doc/guix.texi:16451 -msgid "" -"The delay between a modification in memory and on disk. 0 means immediate " -"synchronization." +#: doc/guix.texi:16882 +msgid "The delay between a modification in memory and on disk. 0 means immediate synchronization." msgstr "" #. type: item -#: doc/guix.texi:16452 +#: doc/guix.texi:16883 #, no-wrap msgid "@code{serial-policy} (default: @code{'increment})" msgstr "" #. type: table -#: doc/guix.texi:16454 +#: doc/guix.texi:16885 msgid "A policy between @code{'increment} and @code{'unixtime}." msgstr "" #. type: deftp -#: doc/guix.texi:16458 +#: doc/guix.texi:16889 #, no-wrap msgid "{Data Type} knot-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:16461 -msgid "" -"Data type representing the Knot configuration. This type has the following " -"parameters:" +#: doc/guix.texi:16892 +msgid "Data type representing the Knot configuration. This type has the following parameters:" msgstr "" #. type: item -#: doc/guix.texi:16463 +#: doc/guix.texi:16894 #, no-wrap msgid "@code{knot} (default: @code{knot})" msgstr "" #. type: table -#: doc/guix.texi:16465 +#: doc/guix.texi:16896 msgid "The Knot package." msgstr "" #. type: item -#: doc/guix.texi:16466 +#: doc/guix.texi:16897 #, no-wrap msgid "@code{run-directory} (default: @code{\"/var/run/knot\"})" msgstr "" #. type: table -#: doc/guix.texi:16468 -msgid "" -"The run directory. This directory will be used for pid file and sockets." +#: doc/guix.texi:16899 +msgid "The run directory. This directory will be used for pid file and sockets." msgstr "" #. type: item -#: doc/guix.texi:16469 +#: doc/guix.texi:16900 #, no-wrap msgid "@code{listen-v4} (default: @code{\"0.0.0.0\"})" msgstr "" #. type: table -#: doc/guix.texi:16471 doc/guix.texi:16474 +#: doc/guix.texi:16902 doc/guix.texi:16905 msgid "An ip address on which to listen." msgstr "" -#. type: item -#: doc/guix.texi:16472 -#, no-wrap -msgid "@code{listen-v6} (default: @code{\"::\"})" -msgstr "" - -#. type: item -#: doc/guix.texi:16475 -#, no-wrap -msgid "@code{listen-port} (default: @code{53})" -msgstr "" - -#. type: table -#: doc/guix.texi:16477 -msgid "A port on which to listen." -msgstr "" - -#. type: item -#: doc/guix.texi:16478 -#, no-wrap -msgid "@code{keys} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:16480 -msgid "The list of knot-key-configuration used by this configuration." -msgstr "" - -#. type: item -#: doc/guix.texi:16481 -#, no-wrap -msgid "@code{acls} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:16483 -msgid "The list of knot-acl-configuration used by this configuration." -msgstr "" - -#. type: item -#: doc/guix.texi:16484 -#, no-wrap -msgid "@code{remotes} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:16486 -msgid "The list of knot-remote-configuration used by this configuration." -msgstr "" - -#. type: item -#: doc/guix.texi:16487 -#, no-wrap -msgid "@code{zones} (default: @code{'()})" -msgstr "" - -#. type: table -#: doc/guix.texi:16489 -msgid "The list of knot-zone-configuration used by this configuration." -msgstr "" - -#. type: cindex -#: doc/guix.texi:16496 -#, no-wrap -msgid "VPN (virtual private network)" -msgstr "" - -#. type: cindex -#: doc/guix.texi:16497 -#, no-wrap -msgid "virtual private network (VPN)" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:16503 -msgid "" -"The @code{(gnu services vpn)} module provides services related to " -"@dfn{virtual private networks} (VPNs). It provides a @emph{client} service " -"for your machine to connect to a VPN, and a @emph{servire} service for your " -"machine to host a VPN. Both services use @uref{https://openvpn.net/, " -"OpenVPN}." -msgstr "" - -#. type: deffn -#: doc/guix.texi:16504 -#, no-wrap -msgid "{Scheme Procedure} openvpn-client-service @" -msgstr "" - -#. type: deffn -#: doc/guix.texi:16506 -msgid "[#:config (openvpn-client-configuration)]" -msgstr "" - -#. type: deffn -#: doc/guix.texi:16508 -msgid "" -"Return a service that runs @command{openvpn}, a VPN daemon, as a client." -msgstr "" - -#. type: deffn -#: doc/guix.texi:16510 -#, no-wrap -msgid "{Scheme Procedure} openvpn-server-service @" -msgstr "" - -#. type: deffn -#: doc/guix.texi:16512 -msgid "[#:config (openvpn-server-configuration)]" -msgstr "" - -#. type: deffn -#: doc/guix.texi:16514 -msgid "" -"Return a service that runs @command{openvpn}, a VPN daemon, as a server." -msgstr "" - -#. type: deffn -#: doc/guix.texi:16516 -msgid "Both can be run simultaneously." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:16521 -msgid "Available @code{openvpn-client-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16522 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} package openvpn" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16524 doc/guix.texi:16660 -msgid "The OpenVPN package." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16527 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} string pid-file" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16529 doc/guix.texi:16665 -msgid "The OpenVPN pid file." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16531 doc/guix.texi:16667 -msgid "Defaults to @samp{\"/var/run/openvpn/openvpn.pid\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16534 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} proto proto" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16537 doc/guix.texi:16673 -msgid "" -"The protocol (UDP or TCP) used to open a channel between clients and servers." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16539 doc/guix.texi:16675 -msgid "Defaults to @samp{udp}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16542 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} dev dev" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16544 doc/guix.texi:16680 -msgid "The device type used to represent the VPN connection." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16546 doc/guix.texi:16682 -msgid "Defaults to @samp{tun}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16549 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} string ca" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16551 doc/guix.texi:16687 -msgid "The certificate authority to check connections against." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16553 doc/guix.texi:16689 -msgid "Defaults to @samp{\"/etc/openvpn/ca.crt\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16556 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} string cert" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16559 doc/guix.texi:16695 -msgid "" -"The certificate of the machine the daemon is running on. It should be " -"signed by the authority given in @code{ca}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16561 doc/guix.texi:16697 -msgid "Defaults to @samp{\"/etc/openvpn/client.crt\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16564 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} string key" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16567 doc/guix.texi:16703 -msgid "" -"The key of the machine the daemon is running on. It must be the key whose " -"certificate is @code{cert}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16569 doc/guix.texi:16705 -msgid "Defaults to @samp{\"/etc/openvpn/client.key\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16572 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} boolean comp-lzo?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16574 doc/guix.texi:16710 -msgid "Whether to use the lzo compression algorithm." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16579 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} boolean persist-key?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16581 doc/guix.texi:16717 -msgid "Don't re-read key files across SIGUSR1 or --ping-restart." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16586 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} boolean persist-tun?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16589 doc/guix.texi:16725 -msgid "" -"Don't close and reopen TUN/TAP device or run up/down scripts across SIGUSR1 " -"or --ping-restart restarts." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16594 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} number verbosity" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16596 doc/guix.texi:16732 -msgid "Verbosity level." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16598 doc/guix.texi:16734 doc/guix.texi:18011 -#: doc/guix.texi:18234 -msgid "Defaults to @samp{3}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16601 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} tls-auth-client tls-auth" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16604 doc/guix.texi:16740 -msgid "" -"Add an additional layer of HMAC authentication on top of the TLS control " -"channel to protect against DoS attacks." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16609 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} key-usage verify-key-usage?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16611 -msgid "Whether to check the server certificate has server usage extension." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16616 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} bind bind?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16618 -msgid "Bind to a specific local port number." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16623 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} resolv-retry resolv-retry?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16625 -msgid "Retry resolving server address." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16630 -#, no-wrap -msgid "{@code{openvpn-client-configuration} parameter} openvpn-remote-list remote" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16632 -msgid "A list of remote servers to connect to." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16636 -msgid "Available @code{openvpn-remote-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16637 -#, no-wrap -msgid "{@code{openvpn-remote-configuration} parameter} string name" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16639 -msgid "Server name." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16641 -msgid "Defaults to @samp{\"my-server\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16644 -#, no-wrap -msgid "{@code{openvpn-remote-configuration} parameter} number port" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16646 -msgid "Port number the server listens to." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16648 doc/guix.texi:16749 -msgid "Defaults to @samp{1194}." -msgstr "" - -#. type: Plain text -#: doc/guix.texi:16657 -msgid "Available @code{openvpn-server-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16658 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} package openvpn" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16663 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} string pid-file" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16670 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} proto proto" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16678 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} dev dev" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16685 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} string ca" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16692 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} string cert" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16700 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} string key" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16708 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} boolean comp-lzo?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16715 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} boolean persist-key?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16722 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} boolean persist-tun?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16730 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} number verbosity" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16737 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} tls-auth-server tls-auth" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16745 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} number port" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16747 -msgid "Specifies the port number on which the server listens." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16752 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} ip-mask server" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16754 -msgid "An ip and mask specifying the subnet inside the virtual network." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16756 -msgid "Defaults to @samp{\"10.8.0.0 255.255.255.0\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16759 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} cidr6 server-ipv6" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16761 -msgid "A CIDR notation specifying the IPv6 subnet inside the virtual network." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16766 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} string dh" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16768 -msgid "The Diffie-Hellman parameters file." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16770 -msgid "Defaults to @samp{\"/etc/openvpn/dh2048.pem\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16773 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} string ifconfig-pool-persist" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16775 -msgid "The file that records client IPs." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16777 -msgid "Defaults to @samp{\"/etc/openvpn/ipp.txt\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16780 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} gateway redirect-gateway?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16782 -msgid "When true, the server will act as a gateway for its clients." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16787 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} boolean client-to-client?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16789 -msgid "When true, clients are allowed to talk to each other inside the VPN." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16794 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} keepalive keepalive" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16800 -msgid "" -"Causes ping-like messages to be sent back and forth over the link so that " -"each side knows when the other side has gone down. @code{keepalive} " -"requires a pair. The first element is the period of the ping sending, and " -"the second element is the timeout before considering the other side down." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16803 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} number max-clients" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16805 -msgid "The maximum number of clients." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16810 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} string status" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16813 -msgid "" -"The status file. This file shows a small report on current connection. It " -"is truncated and rewritten every minute." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16815 -msgid "Defaults to @samp{\"/var/run/openvpn/status\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16818 -#, no-wrap -msgid "{@code{openvpn-server-configuration} parameter} openvpn-ccd-list client-config-dir" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16820 -msgid "The list of configuration for some clients." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16824 -msgid "Available @code{openvpn-ccd-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16825 -#, no-wrap -msgid "{@code{openvpn-ccd-configuration} parameter} string name" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16827 -msgid "Client name." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16829 -msgid "Defaults to @samp{\"client\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16832 -#, no-wrap -msgid "{@code{openvpn-ccd-configuration} parameter} ip-mask iroute" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16834 -msgid "Client own network" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16839 -#, no-wrap -msgid "{@code{openvpn-ccd-configuration} parameter} ip-mask ifconfig-push" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:16841 -msgid "Client VPN IP." -msgstr "" - -#. type: cindex -#: doc/guix.texi:16854 -#, no-wrap -msgid "NFS" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:16859 -msgid "" -"The @code{(gnu services nfs)} module provides the following services, which " -"are most commonly used in relation to mounting or exporting directory trees " -"as @dfn{network file systems} (NFS)." -msgstr "" - -#. type: subsubheading -#: doc/guix.texi:16860 -#, no-wrap -msgid "RPC Bind Service" -msgstr "" - -#. type: cindex -#: doc/guix.texi:16861 -#, no-wrap -msgid "rpcbind" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:16867 -msgid "" -"The RPC Bind service provides a facility to map program numbers into " -"universal addresses. Many NFS related services use this facility. Hence it " -"is automatically started when a dependent service starts." -msgstr "" - -#. type: defvr -#: doc/guix.texi:16868 -#, no-wrap -msgid "{Scheme Variable} rpcbind-service-type" -msgstr "" - -#. type: defvr -#: doc/guix.texi:16870 -msgid "A service type for the RPC portmapper daemon." -msgstr "" - -#. type: deftp -#: doc/guix.texi:16873 -#, no-wrap -msgid "{Data Type} rpcbind-configuration" -msgstr "" - -#. type: deftp -#: doc/guix.texi:16876 -msgid "" -"Data type representing the configuration of the RPC Bind Service. This type " -"has the following parameters:" -msgstr "" - -#. type: item -#: doc/guix.texi:16877 -#, no-wrap -msgid "@code{rpcbind} (default: @code{rpcbind})" -msgstr "" - -#. type: table -#: doc/guix.texi:16879 -msgid "The rpcbind package to use." -msgstr "" - -#. type: item -#: doc/guix.texi:16880 -#, no-wrap -msgid "@code{warm-start?} (default: @code{#t})" -msgstr "" - -#. type: table -#: doc/guix.texi:16884 -msgid "" -"If this parameter is @code{#t}, then the daemon will read a state file on " -"startup thus reloading state information saved by a previous instance." -msgstr "" - -#. type: subsubheading -#: doc/guix.texi:16888 -#, no-wrap -msgid "Pipefs Pseudo File System" -msgstr "" - -#. type: cindex -#: doc/guix.texi:16889 -#, no-wrap -msgid "pipefs" -msgstr "" - -#. type: cindex -#: doc/guix.texi:16890 -#, no-wrap -msgid "rpc_pipefs" -msgstr "" - -#. type: Plain text -#: doc/guix.texi:16894 -msgid "" -"The pipefs file system is used to transfer NFS related data between the " -"kernel and user space programs." -msgstr "" - -#. type: defvr -#: doc/guix.texi:16895 -#, no-wrap -msgid "{Scheme Variable} pipefs-service-type" -msgstr "" - -#. type: defvr -#: doc/guix.texi:16897 -msgid "A service type for the pipefs pseudo file system." -msgstr "" - -#. type: deftp -#: doc/guix.texi:16899 -#, no-wrap -msgid "{Data Type} pipefs-configuration" -msgstr "" - -#. type: deftp -#: doc/guix.texi:16902 -msgid "" -"Data type representing the configuration of the pipefs pseudo file system " -"service. This type has the following parameters:" -msgstr "" - #. type: item #: doc/guix.texi:16903 #, no-wrap -msgid "@code{mount-point} (default: @code{\"/var/lib/nfs/rpc_pipefs\"})" +msgid "@code{listen-v6} (default: @code{\"::\"})" +msgstr "" + +#. type: item +#: doc/guix.texi:16906 +#, no-wrap +msgid "@code{listen-port} (default: @code{53})" msgstr "" #. type: table -#: doc/guix.texi:16905 -msgid "The directory to which the file system is to be attached." +#: doc/guix.texi:16908 +msgid "A port on which to listen." msgstr "" -#. type: subsubheading +#. type: item #: doc/guix.texi:16909 #, no-wrap -msgid "GSS Daemon Service" +msgid "@code{keys} (default: @code{'()})" msgstr "" -#. type: cindex -#: doc/guix.texi:16910 -#, no-wrap -msgid "GSSD" -msgstr "" - -#. type: cindex +#. type: table #: doc/guix.texi:16911 -#, no-wrap -msgid "GSS" +msgid "The list of knot-key-configuration used by this configuration." msgstr "" -#. type: cindex +#. type: item #: doc/guix.texi:16912 #, no-wrap -msgid "global security system" +msgid "@code{acls} (default: @code{'()})" msgstr "" -#. type: Plain text -#: doc/guix.texi:16919 -msgid "" -"The @dfn{global security system} (GSS) daemon provides strong security for " -"RPC based protocols. Before exchanging RPC requests an RPC client must " -"establish a security context. Typically this is done using the Kerberos " -"command @command{kinit} or automatically at login time using PAM services " -"(@pxref{Kerberos Services})." +#. type: table +#: doc/guix.texi:16914 +msgid "The list of knot-acl-configuration used by this configuration." msgstr "" -#. type: defvr +#. type: item +#: doc/guix.texi:16915 +#, no-wrap +msgid "@code{remotes} (default: @code{'()})" +msgstr "" + +#. type: table +#: doc/guix.texi:16917 +msgid "The list of knot-remote-configuration used by this configuration." +msgstr "" + +#. type: item +#: doc/guix.texi:16918 +#, no-wrap +msgid "@code{zones} (default: @code{'()})" +msgstr "" + +#. type: table #: doc/guix.texi:16920 -#, no-wrap -msgid "{Scheme Variable} gss-service-type" -msgstr "" - -#. type: defvr -#: doc/guix.texi:16922 -msgid "A service type for the Global Security System (GSS) daemon." -msgstr "" - -#. type: deftp -#: doc/guix.texi:16924 -#, no-wrap -msgid "{Data Type} gss-configuration" -msgstr "" - -#. type: deftp -#: doc/guix.texi:16927 -msgid "" -"Data type representing the configuration of the GSS daemon service. This " -"type has the following parameters:" -msgstr "" - -#. type: item -#: doc/guix.texi:16928 doc/guix.texi:16953 -#, no-wrap -msgid "@code{nfs-utils} (default: @code{nfs-utils})" -msgstr "" - -#. type: table -#: doc/guix.texi:16930 -msgid "The package in which the @command{rpc.gssd} command is to be found." -msgstr "" - -#. type: item -#: doc/guix.texi:16931 doc/guix.texi:16956 -#, no-wrap -msgid "@code{pipefs-directory} (default: @code{\"/var/lib/nfs/rpc_pipefs\"})" -msgstr "" - -#. type: table -#: doc/guix.texi:16933 doc/guix.texi:16958 -msgid "The directory where the pipefs file system is mounted." +msgid "The list of knot-zone-configuration used by this configuration." msgstr "" #. type: subsubheading +#: doc/guix.texi:16924 +#, no-wrap +msgid "Dnsmasq Service" +msgstr "Services Dnsmasq" + +#. type: deffn +#: doc/guix.texi:16926 +#, no-wrap +msgid "{Scheme Variable} dnsmasq-service-type" +msgstr "{Variable Scheme} dnsmasq-service-type" + +#. type: deffn +#: doc/guix.texi:16929 +msgid "This is the type of the dnsmasq service, whose value should be an @code{dnsmasq-configuration} object as in this example:" +msgstr "" + +#. type: example +#: doc/guix.texi:16935 +#, no-wrap +msgid "" +"(service dnsmasq-service-type\n" +" (dnsmasq-configuration\n" +" (no-resolv? #t)\n" +" (servers '(\"192.168.1.1\"))))\n" +msgstr "" + +#. type: deftp #: doc/guix.texi:16938 #, no-wrap -msgid "IDMAP Daemon Service" -msgstr "" +msgid "{Data Type} dnsmasq-configuration" +msgstr "{Type de donnée} dnsmasq-configuration" -#. type: cindex -#: doc/guix.texi:16939 -#, no-wrap -msgid "idmapd" -msgstr "" - -#. type: cindex +#. type: deftp #: doc/guix.texi:16940 +msgid "Data type representing the configuration of dnsmasq." +msgstr "Type de données qui représente la configuration de dnsmasq." + +#. type: item +#: doc/guix.texi:16942 #, no-wrap -msgid "name mapper" -msgstr "" +msgid "@code{package} (default: @var{dnsmasq})" +msgstr "@code{package} (par défaut : @code{dnsmasq})" -#. type: Plain text +#. type: table #: doc/guix.texi:16944 -msgid "" -"The idmap daemon service provides mapping between user IDs and user names. " -"Typically it is required in order to access file systems mounted via NFSv4." +msgid "Package object of the dnsmasq server." msgstr "" -#. type: defvr +#. type: item #: doc/guix.texi:16945 #, no-wrap -msgid "{Scheme Variable} idmap-service-type" -msgstr "" +msgid "@code{no-hosts?} (default: @code{#f})" +msgstr "@code{no-hosts?} (par défaut : @code{#f})" -#. type: defvr +#. type: table #: doc/guix.texi:16947 -msgid "A service type for the Identity Mapper (IDMAP) daemon." +msgid "When true, don't read the hostnames in /etc/hosts." msgstr "" -#. type: deftp -#: doc/guix.texi:16949 +#. type: item +#: doc/guix.texi:16948 #, no-wrap -msgid "{Data Type} idmap-configuration" +msgid "@code{port} (default: @code{53})" +msgstr "@code{port} (par défaut : @code{53})" + +#. type: table +#: doc/guix.texi:16951 +msgid "The port to listen on. Setting this to zero completely disables DNS funtion, leaving only DHCP and/or TFTP." msgstr "" -#. type: deftp +#. type: item #: doc/guix.texi:16952 -msgid "" -"Data type representing the configuration of the IDMAP daemon service. This " -"type has the following parameters:" -msgstr "" +#, no-wrap +msgid "@code{local-service?} (default: @code{#t})" +msgstr "@code{local-service?} (par défaut : @code{#t})" #. type: table #: doc/guix.texi:16955 -msgid "The package in which the @command{rpc.idmapd} command is to be found." +msgid "Accept DNS queries only from hosts whose address is on a local subnet, ie a subnet for which an interface exists on the server." +msgstr "" + +#. type: item +#: doc/guix.texi:16956 +#, no-wrap +msgid "@code{listen-addresses} (default: @code{'()})" +msgstr "@code{listen-addresses} (par défaut : @code{'()})" + +#. type: table +#: doc/guix.texi:16958 +msgid "Listen on the given IP addresses." msgstr "" #. type: item #: doc/guix.texi:16959 #, no-wrap +msgid "@code{resolv-file} (default: @code{\"/etc/resolv.conf\"})" +msgstr "@code{resolv-file} (par défaut : @code{\"/etc/resolv.conf\"})" + +#. type: table +#: doc/guix.texi:16961 +msgid "The file to read the IP address of the upstream nameservers from." +msgstr "" + +#. type: item +#: doc/guix.texi:16962 +#, no-wrap +msgid "@code{no-resolv?} (default: @code{#f})" +msgstr "@code{no-resolv?} (par défaut : @code{#f})" + +#. type: table +#: doc/guix.texi:16964 +msgid "When true, don't read @var{resolv-file}." +msgstr "" + +#. type: table +#: doc/guix.texi:16967 +msgid "Specify IP address of upstream servers directly." +msgstr "" + +#. type: item +#: doc/guix.texi:16968 +#, no-wrap +msgid "@code{cache-size} (default: @code{150})" +msgstr "@code{cache-size} (par défaut : @code{150})" + +#. type: table +#: doc/guix.texi:16971 +msgid "Set the size of dnsmasq's cache. Setting the cache size to zero disables caching." +msgstr "" + +#. type: item +#: doc/guix.texi:16972 +#, no-wrap +msgid "@code{negative-cache?} (default: @code{#t})" +msgstr "@code{negative-cache?} (par défaut : @code{#t})" + +#. type: table +#: doc/guix.texi:16974 +msgid "When false, disable negative caching." +msgstr "" + +#. type: cindex +#: doc/guix.texi:16980 +#, no-wrap +msgid "VPN (virtual private network)" +msgstr "" + +#. type: cindex +#: doc/guix.texi:16981 +#, no-wrap +msgid "virtual private network (VPN)" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:16987 +msgid "The @code{(gnu services vpn)} module provides services related to @dfn{virtual private networks} (VPNs). It provides a @emph{client} service for your machine to connect to a VPN, and a @emph{servire} service for your machine to host a VPN. Both services use @uref{https://openvpn.net/, OpenVPN}." +msgstr "" + +#. type: deffn +#: doc/guix.texi:16988 +#, no-wrap +msgid "{Scheme Procedure} openvpn-client-service @" +msgstr "" + +#. type: deffn +#: doc/guix.texi:16990 +msgid "[#:config (openvpn-client-configuration)]" +msgstr "" + +#. type: deffn +#: doc/guix.texi:16992 +msgid "Return a service that runs @command{openvpn}, a VPN daemon, as a client." +msgstr "" + +#. type: deffn +#: doc/guix.texi:16994 +#, no-wrap +msgid "{Scheme Procedure} openvpn-server-service @" +msgstr "" + +#. type: deffn +#: doc/guix.texi:16996 +msgid "[#:config (openvpn-server-configuration)]" +msgstr "" + +#. type: deffn +#: doc/guix.texi:16998 +msgid "Return a service that runs @command{openvpn}, a VPN daemon, as a server." +msgstr "" + +#. type: deffn +#: doc/guix.texi:17000 +msgid "Both can be run simultaneously." +msgstr "" + +#. type: Plain text +#: doc/guix.texi:17005 +msgid "Available @code{openvpn-client-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17006 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} package openvpn" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17008 doc/guix.texi:17144 +msgid "The OpenVPN package." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17011 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} string pid-file" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17013 doc/guix.texi:17149 +msgid "The OpenVPN pid file." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17015 doc/guix.texi:17151 +msgid "Defaults to @samp{\"/var/run/openvpn/openvpn.pid\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17018 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} proto proto" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17021 doc/guix.texi:17157 +msgid "The protocol (UDP or TCP) used to open a channel between clients and servers." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17023 doc/guix.texi:17159 +msgid "Defaults to @samp{udp}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17026 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} dev dev" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17028 doc/guix.texi:17164 +msgid "The device type used to represent the VPN connection." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17030 doc/guix.texi:17166 +msgid "Defaults to @samp{tun}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17033 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} string ca" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17035 doc/guix.texi:17171 +msgid "The certificate authority to check connections against." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17037 doc/guix.texi:17173 +msgid "Defaults to @samp{\"/etc/openvpn/ca.crt\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17040 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} string cert" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17043 doc/guix.texi:17179 +msgid "The certificate of the machine the daemon is running on. It should be signed by the authority given in @code{ca}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17045 doc/guix.texi:17181 +msgid "Defaults to @samp{\"/etc/openvpn/client.crt\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17048 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} string key" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17051 doc/guix.texi:17187 +msgid "The key of the machine the daemon is running on. It must be the key whose certificate is @code{cert}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17053 doc/guix.texi:17189 +msgid "Defaults to @samp{\"/etc/openvpn/client.key\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17056 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} boolean comp-lzo?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17058 doc/guix.texi:17194 +msgid "Whether to use the lzo compression algorithm." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17063 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} boolean persist-key?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17065 doc/guix.texi:17201 +msgid "Don't re-read key files across SIGUSR1 or --ping-restart." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17070 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} boolean persist-tun?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17073 doc/guix.texi:17209 +msgid "Don't close and reopen TUN/TAP device or run up/down scripts across SIGUSR1 or --ping-restart restarts." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17078 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} number verbosity" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17080 doc/guix.texi:17216 +msgid "Verbosity level." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17082 doc/guix.texi:17218 doc/guix.texi:18495 +#: doc/guix.texi:18718 +msgid "Defaults to @samp{3}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17085 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} tls-auth-client tls-auth" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17088 doc/guix.texi:17224 +msgid "Add an additional layer of HMAC authentication on top of the TLS control channel to protect against DoS attacks." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17093 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} key-usage verify-key-usage?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17095 +msgid "Whether to check the server certificate has server usage extension." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17100 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} bind bind?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17102 +msgid "Bind to a specific local port number." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17107 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} resolv-retry resolv-retry?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17109 +msgid "Retry resolving server address." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17114 +#, no-wrap +msgid "{@code{openvpn-client-configuration} parameter} openvpn-remote-list remote" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17116 +msgid "A list of remote servers to connect to." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17120 +msgid "Available @code{openvpn-remote-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17121 +#, no-wrap +msgid "{@code{openvpn-remote-configuration} parameter} string name" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17123 +msgid "Server name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17125 +msgid "Defaults to @samp{\"my-server\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17128 +#, no-wrap +msgid "{@code{openvpn-remote-configuration} parameter} number port" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17130 +msgid "Port number the server listens to." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17132 doc/guix.texi:17233 +msgid "Defaults to @samp{1194}." +msgstr "" + +#. type: Plain text +#: doc/guix.texi:17141 +msgid "Available @code{openvpn-server-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17142 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} package openvpn" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17147 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} string pid-file" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17154 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} proto proto" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17162 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} dev dev" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17169 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} string ca" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17176 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} string cert" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17184 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} string key" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17192 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} boolean comp-lzo?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17199 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} boolean persist-key?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17206 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} boolean persist-tun?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17214 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} number verbosity" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17221 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} tls-auth-server tls-auth" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17229 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} number port" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17231 +msgid "Specifies the port number on which the server listens." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17236 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} ip-mask server" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17238 +msgid "An ip and mask specifying the subnet inside the virtual network." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17240 +msgid "Defaults to @samp{\"10.8.0.0 255.255.255.0\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17243 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} cidr6 server-ipv6" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17245 +msgid "A CIDR notation specifying the IPv6 subnet inside the virtual network." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17250 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} string dh" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17252 +msgid "The Diffie-Hellman parameters file." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17254 +msgid "Defaults to @samp{\"/etc/openvpn/dh2048.pem\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17257 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} string ifconfig-pool-persist" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17259 +msgid "The file that records client IPs." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17261 +msgid "Defaults to @samp{\"/etc/openvpn/ipp.txt\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17264 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} gateway redirect-gateway?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17266 +msgid "When true, the server will act as a gateway for its clients." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17271 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} boolean client-to-client?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17273 +msgid "When true, clients are allowed to talk to each other inside the VPN." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17278 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} keepalive keepalive" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17284 +msgid "Causes ping-like messages to be sent back and forth over the link so that each side knows when the other side has gone down. @code{keepalive} requires a pair. The first element is the period of the ping sending, and the second element is the timeout before considering the other side down." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17287 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} number max-clients" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17289 +msgid "The maximum number of clients." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17294 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} string status" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17297 +msgid "The status file. This file shows a small report on current connection. It is truncated and rewritten every minute." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17299 +msgid "Defaults to @samp{\"/var/run/openvpn/status\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17302 +#, no-wrap +msgid "{@code{openvpn-server-configuration} parameter} openvpn-ccd-list client-config-dir" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17304 +msgid "The list of configuration for some clients." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17308 +msgid "Available @code{openvpn-ccd-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17309 +#, no-wrap +msgid "{@code{openvpn-ccd-configuration} parameter} string name" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17311 +msgid "Client name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17313 +msgid "Defaults to @samp{\"client\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17316 +#, no-wrap +msgid "{@code{openvpn-ccd-configuration} parameter} ip-mask iroute" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17318 +msgid "Client own network" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17323 +#, no-wrap +msgid "{@code{openvpn-ccd-configuration} parameter} ip-mask ifconfig-push" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:17325 +msgid "Client VPN IP." +msgstr "" + +#. type: cindex +#: doc/guix.texi:17338 +#, no-wrap +msgid "NFS" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:17343 +msgid "The @code{(gnu services nfs)} module provides the following services, which are most commonly used in relation to mounting or exporting directory trees as @dfn{network file systems} (NFS)." +msgstr "" + +#. type: subsubheading +#: doc/guix.texi:17344 +#, no-wrap +msgid "RPC Bind Service" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17345 +#, no-wrap +msgid "rpcbind" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:17351 +msgid "The RPC Bind service provides a facility to map program numbers into universal addresses. Many NFS related services use this facility. Hence it is automatically started when a dependent service starts." +msgstr "" + +#. type: defvr +#: doc/guix.texi:17352 +#, no-wrap +msgid "{Scheme Variable} rpcbind-service-type" +msgstr "" + +#. type: defvr +#: doc/guix.texi:17354 +msgid "A service type for the RPC portmapper daemon." +msgstr "" + +#. type: deftp +#: doc/guix.texi:17357 +#, no-wrap +msgid "{Data Type} rpcbind-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:17360 +msgid "Data type representing the configuration of the RPC Bind Service. This type has the following parameters:" +msgstr "" + +#. type: item +#: doc/guix.texi:17361 +#, no-wrap +msgid "@code{rpcbind} (default: @code{rpcbind})" +msgstr "" + +#. type: table +#: doc/guix.texi:17363 +msgid "The rpcbind package to use." +msgstr "" + +#. type: item +#: doc/guix.texi:17364 +#, no-wrap +msgid "@code{warm-start?} (default: @code{#t})" +msgstr "" + +#. type: table +#: doc/guix.texi:17368 +msgid "If this parameter is @code{#t}, then the daemon will read a state file on startup thus reloading state information saved by a previous instance." +msgstr "" + +#. type: subsubheading +#: doc/guix.texi:17372 +#, no-wrap +msgid "Pipefs Pseudo File System" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17373 +#, no-wrap +msgid "pipefs" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17374 +#, no-wrap +msgid "rpc_pipefs" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:17378 +msgid "The pipefs file system is used to transfer NFS related data between the kernel and user space programs." +msgstr "" + +#. type: defvr +#: doc/guix.texi:17379 +#, no-wrap +msgid "{Scheme Variable} pipefs-service-type" +msgstr "" + +#. type: defvr +#: doc/guix.texi:17381 +msgid "A service type for the pipefs pseudo file system." +msgstr "" + +#. type: deftp +#: doc/guix.texi:17383 +#, no-wrap +msgid "{Data Type} pipefs-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:17386 +msgid "Data type representing the configuration of the pipefs pseudo file system service. This type has the following parameters:" +msgstr "" + +#. type: item +#: doc/guix.texi:17387 +#, no-wrap +msgid "@code{mount-point} (default: @code{\"/var/lib/nfs/rpc_pipefs\"})" +msgstr "" + +#. type: table +#: doc/guix.texi:17389 +msgid "The directory to which the file system is to be attached." +msgstr "" + +#. type: subsubheading +#: doc/guix.texi:17393 +#, no-wrap +msgid "GSS Daemon Service" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17394 +#, no-wrap +msgid "GSSD" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17395 +#, no-wrap +msgid "GSS" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17396 +#, no-wrap +msgid "global security system" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:17403 +msgid "The @dfn{global security system} (GSS) daemon provides strong security for RPC based protocols. Before exchanging RPC requests an RPC client must establish a security context. Typically this is done using the Kerberos command @command{kinit} or automatically at login time using PAM services (@pxref{Kerberos Services})." +msgstr "" + +#. type: defvr +#: doc/guix.texi:17404 +#, no-wrap +msgid "{Scheme Variable} gss-service-type" +msgstr "" + +#. type: defvr +#: doc/guix.texi:17406 +msgid "A service type for the Global Security System (GSS) daemon." +msgstr "" + +#. type: deftp +#: doc/guix.texi:17408 +#, no-wrap +msgid "{Data Type} gss-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:17411 +msgid "Data type representing the configuration of the GSS daemon service. This type has the following parameters:" +msgstr "" + +#. type: item +#: doc/guix.texi:17412 doc/guix.texi:17437 +#, no-wrap +msgid "@code{nfs-utils} (default: @code{nfs-utils})" +msgstr "" + +#. type: table +#: doc/guix.texi:17414 +msgid "The package in which the @command{rpc.gssd} command is to be found." +msgstr "" + +#. type: item +#: doc/guix.texi:17415 doc/guix.texi:17440 +#, no-wrap +msgid "@code{pipefs-directory} (default: @code{\"/var/lib/nfs/rpc_pipefs\"})" +msgstr "" + +#. type: table +#: doc/guix.texi:17417 doc/guix.texi:17442 +msgid "The directory where the pipefs file system is mounted." +msgstr "" + +#. type: subsubheading +#: doc/guix.texi:17422 +#, no-wrap +msgid "IDMAP Daemon Service" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17423 +#, no-wrap +msgid "idmapd" +msgstr "" + +#. type: cindex +#: doc/guix.texi:17424 +#, no-wrap +msgid "name mapper" +msgstr "" + +#. type: Plain text +#: doc/guix.texi:17428 +msgid "The idmap daemon service provides mapping between user IDs and user names. Typically it is required in order to access file systems mounted via NFSv4." +msgstr "" + +#. type: defvr +#: doc/guix.texi:17429 +#, no-wrap +msgid "{Scheme Variable} idmap-service-type" +msgstr "" + +#. type: defvr +#: doc/guix.texi:17431 +msgid "A service type for the Identity Mapper (IDMAP) daemon." +msgstr "" + +#. type: deftp +#: doc/guix.texi:17433 +#, no-wrap +msgid "{Data Type} idmap-configuration" +msgstr "" + +#. type: deftp +#: doc/guix.texi:17436 +msgid "Data type representing the configuration of the IDMAP daemon service. This type has the following parameters:" +msgstr "" + +#. type: table +#: doc/guix.texi:17439 +msgid "The package in which the @command{rpc.idmapd} command is to be found." +msgstr "" + +#. type: item +#: doc/guix.texi:17443 +#, no-wrap msgid "@code{domain} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:16963 -msgid "" -"The local NFSv4 domain name. This must be a string or @code{#f}. If it is " -"@code{#f} then the daemon will use the host's fully qualified domain name." +#: doc/guix.texi:17447 +msgid "The local NFSv4 domain name. This must be a string or @code{#f}. If it is @code{#f} then the daemon will use the host's fully qualified domain name." msgstr "" #. type: cindex -#: doc/guix.texi:16970 +#: doc/guix.texi:17454 #, no-wrap msgid "continuous integration" msgstr "" #. type: Plain text -#: doc/guix.texi:16974 -msgid "" -"@uref{https://notabug.org/mthl/cuirass, Cuirass} is a continuous integration " -"tool for Guix. It can be used both for development and for providing " -"substitutes to others (@pxref{Substitutes})." -msgstr "" -"@uref{https://notabug.org/mthl/cuirass, Cuirass} est un outil d'intégration " -"continue pour Guix. On peut l'utiliser aussi bien pour le développement que " -"pour fournir des substituts à d'autres (@pxref{Substituts})." +#: doc/guix.texi:17458 +msgid "@uref{https://notabug.org/mthl/cuirass, Cuirass} is a continuous integration tool for Guix. It can be used both for development and for providing substitutes to others (@pxref{Substitutes})." +msgstr "@uref{https://notabug.org/mthl/cuirass, Cuirass} est un outil d'intégration continue pour Guix. On peut l'utiliser aussi bien pour le développement que pour fournir des substituts à d'autres (@pxref{Substituts})." #. type: Plain text -#: doc/guix.texi:16976 -msgid "" -"The @code{(gnu services cuirass)} module provides the following service." +#: doc/guix.texi:17460 +msgid "The @code{(gnu services cuirass)} module provides the following service." msgstr "" #. type: defvr -#: doc/guix.texi:16977 +#: doc/guix.texi:17461 #, no-wrap msgid "{Scheme Procedure} cuirass-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:16980 -msgid "" -"The type of the Cuirass service. Its value must be a @code{cuirass-" -"configuration} object, as described below." +#: doc/guix.texi:17464 +msgid "The type of the Cuirass service. Its value must be a @code{cuirass-configuration} object, as described below." msgstr "" #. type: Plain text -#: doc/guix.texi:16987 -msgid "" -"To add build jobs, you have to set the @code{specifications} field of the " -"configuration. Here is an example of a service defining a build job based " -"on a specification that can be found in Cuirass source tree. This service " -"polls the Guix repository and builds a subset of the Guix packages, as " -"prescribed in the @file{gnu-system.scm} example spec:" +#: doc/guix.texi:17471 +msgid "To add build jobs, you have to set the @code{specifications} field of the configuration. Here is an example of a service defining a build job based on a specification that can be found in Cuirass source tree. This service polls the Guix repository and builds a subset of the Guix packages, as prescribed in the @file{gnu-system.scm} example spec:" msgstr "" #. type: example -#: doc/guix.texi:16999 +#: doc/guix.texi:17483 #, no-wrap msgid "" "(let ((spec #~((#:name . \"guix\")\n" @@ -38007,1179 +31797,1087 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:17004 -msgid "" -"While information related to build jobs is located directly in the " -"specifications, global settings for the @command{cuirass} process are " -"accessible in other @code{cuirass-configuration} fields." +#: doc/guix.texi:17488 +msgid "While information related to build jobs is located directly in the specifications, global settings for the @command{cuirass} process are accessible in other @code{cuirass-configuration} fields." msgstr "" #. type: deftp -#: doc/guix.texi:17005 +#: doc/guix.texi:17489 #, no-wrap msgid "{Data Type} cuirass-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:17007 +#: doc/guix.texi:17491 msgid "Data type representing the configuration of Cuirass." msgstr "" #. type: item -#: doc/guix.texi:17009 +#: doc/guix.texi:17493 #, no-wrap msgid "@code{log-file} (default: @code{\"/var/log/cuirass.log\"})" msgstr "" #. type: table -#: doc/guix.texi:17011 +#: doc/guix.texi:17495 msgid "Location of the log file." msgstr "" #. type: item -#: doc/guix.texi:17012 +#: doc/guix.texi:17496 #, no-wrap msgid "@code{cache-directory} (default: @code{\"/var/cache/cuirass\"})" msgstr "" #. type: table -#: doc/guix.texi:17014 +#: doc/guix.texi:17498 msgid "Location of the repository cache." msgstr "" #. type: item -#: doc/guix.texi:17015 +#: doc/guix.texi:17499 #, no-wrap msgid "@code{user} (default: @code{\"cuirass\"})" msgstr "" #. type: table -#: doc/guix.texi:17017 +#: doc/guix.texi:17501 msgid "Owner of the @code{cuirass} process." msgstr "" #. type: item -#: doc/guix.texi:17018 +#: doc/guix.texi:17502 #, no-wrap msgid "@code{group} (default: @code{\"cuirass\"})" msgstr "" #. type: table -#: doc/guix.texi:17020 +#: doc/guix.texi:17504 msgid "Owner's group of the @code{cuirass} process." msgstr "" #. type: item -#: doc/guix.texi:17021 +#: doc/guix.texi:17505 #, no-wrap msgid "@code{interval} (default: @code{60})" msgstr "" #. type: table -#: doc/guix.texi:17024 -msgid "" -"Number of seconds between the poll of the repositories followed by the " -"Cuirass jobs." +#: doc/guix.texi:17508 +msgid "Number of seconds between the poll of the repositories followed by the Cuirass jobs." msgstr "" #. type: item -#: doc/guix.texi:17025 +#: doc/guix.texi:17509 #, no-wrap msgid "@code{database} (default: @code{\"/var/run/cuirass/cuirass.db\"})" msgstr "" #. type: table -#: doc/guix.texi:17028 -msgid "" -"Location of sqlite database which contains the build results and previously " -"added specifications." +#: doc/guix.texi:17512 +msgid "Location of sqlite database which contains the build results and previously added specifications." msgstr "" #. type: item -#: doc/guix.texi:17029 +#: doc/guix.texi:17513 #, no-wrap msgid "@code{port} (default: @code{8081})" msgstr "" #. type: table -#: doc/guix.texi:17031 +#: doc/guix.texi:17515 msgid "Port number used by the HTTP server." msgstr "" #. type: table -#: doc/guix.texi:17035 -msgid "" -"Listen on the network interface for @var{host}. The default is to accept " -"connections from localhost." +#: doc/guix.texi:17519 +msgid "Listen on the network interface for @var{host}. The default is to accept connections from localhost." msgstr "" #. type: item -#: doc/guix.texi:17036 +#: doc/guix.texi:17520 #, no-wrap msgid "@code{specifications} (default: @code{#~'()})" msgstr "" #. type: table -#: doc/guix.texi:17042 -msgid "" -"A gexp (@pxref{G-Expressions}) that evaluates to a list of specifications, " -"where a specification is an association list (@pxref{Associations Lists,,, " -"guile, GNU Guile Reference Manual}) whose keys are keywords (@code{#:keyword-" -"example}) as shown in the example above." +#: doc/guix.texi:17526 +msgid "A gexp (@pxref{G-Expressions}) that evaluates to a list of specifications, where a specification is an association list (@pxref{Associations Lists,,, guile, GNU Guile Reference Manual}) whose keys are keywords (@code{#:keyword-example}) as shown in the example above." msgstr "" #. type: item -#: doc/guix.texi:17043 +#: doc/guix.texi:17527 #, no-wrap msgid "@code{use-substitutes?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:17046 -msgid "" -"This allows using substitutes to avoid building every dependencies of a job " -"from source." +#: doc/guix.texi:17530 +msgid "This allows using substitutes to avoid building every dependencies of a job from source." msgstr "" #. type: item -#: doc/guix.texi:17047 +#: doc/guix.texi:17531 #, no-wrap msgid "@code{one-shot?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:17049 +#: doc/guix.texi:17533 msgid "Only evaluate specifications and build derivations once." msgstr "" #. type: item -#: doc/guix.texi:17050 +#: doc/guix.texi:17534 #, no-wrap msgid "@code{fallback?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:17053 -msgid "" -"When substituting a pre-built binary fails, fall back to building packages " -"locally." +#: doc/guix.texi:17537 +msgid "When substituting a pre-built binary fails, fall back to building packages locally." msgstr "" #. type: item -#: doc/guix.texi:17054 +#: doc/guix.texi:17538 #, no-wrap msgid "@code{load-path} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:17057 -msgid "" -"This allows users to define their own packages and make them visible to " -"cuirass as in @command{guix build} command." +#: doc/guix.texi:17541 +msgid "This allows users to define their own packages and make them visible to cuirass as in @command{guix build} command." msgstr "" #. type: item -#: doc/guix.texi:17058 +#: doc/guix.texi:17542 #, no-wrap msgid "@code{cuirass} (default: @code{cuirass})" msgstr "" #. type: table -#: doc/guix.texi:17060 +#: doc/guix.texi:17544 msgid "The Cuirass package to use." msgstr "" #. type: cindex -#: doc/guix.texi:17066 +#: doc/guix.texi:17550 #, no-wrap msgid "power management with TLP" msgstr "" #. type: Plain text -#: doc/guix.texi:17069 -msgid "" -"The @code{(gnu services pm)} module provides a Guix service definition for " -"the Linux power management tool TLP." +#: doc/guix.texi:17553 +msgid "The @code{(gnu services pm)} module provides a Guix service definition for the Linux power management tool TLP." msgstr "" #. type: Plain text -#: doc/guix.texi:17075 -msgid "" -"TLP enables various powersaving modes in userspace and kernel. Contrary to " -"@code{upower-service}, it is not a passive, monitoring tool, as it will " -"apply custom settings each time a new power source is detected. More " -"information can be found at @uref{http://linrunner.de/en/tlp/tlp.html, TLP " -"home page}." +#: doc/guix.texi:17559 +msgid "TLP enables various powersaving modes in userspace and kernel. Contrary to @code{upower-service}, it is not a passive, monitoring tool, as it will apply custom settings each time a new power source is detected. More information can be found at @uref{http://linrunner.de/en/tlp/tlp.html, TLP home page}." msgstr "" #. type: deffn -#: doc/guix.texi:17076 +#: doc/guix.texi:17560 #, no-wrap msgid "{Scheme Variable} tlp-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:17080 -msgid "" -"The service type for the TLP tool. Its value should be a valid TLP " -"configuration (see below). To use the default settings, simply write:" +#: doc/guix.texi:17564 +msgid "The service type for the TLP tool. Its value should be a valid TLP configuration (see below). To use the default settings, simply write:" msgstr "" #. type: example -#: doc/guix.texi:17082 +#: doc/guix.texi:17566 #, no-wrap msgid "(service tlp-service-type)\n" msgstr "" #. type: Plain text -#: doc/guix.texi:17087 -msgid "" -"By default TLP does not need much configuration but most TLP parameters can " -"be tweaked using @code{tlp-configuration}." +#: doc/guix.texi:17571 +msgid "By default TLP does not need much configuration but most TLP parameters can be tweaked using @code{tlp-configuration}." msgstr "" #. type: Plain text -#: doc/guix.texi:17093 -msgid "" -"Each parameter definition is preceded by its type; for example, " -"@samp{boolean foo} indicates that the @code{foo} parameter should be " -"specified as a boolean. Types starting with @code{maybe-} denote parameters " -"that won't show up in TLP config file when their value is @code{'disabled}." +#: doc/guix.texi:17577 +msgid "Each parameter definition is preceded by its type; for example, @samp{boolean foo} indicates that the @code{foo} parameter should be specified as a boolean. Types starting with @code{maybe-} denote parameters that won't show up in TLP config file when their value is @code{'disabled}." msgstr "" #. type: Plain text -#: doc/guix.texi:17103 +#: doc/guix.texi:17587 msgid "Available @code{tlp-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:17104 +#: doc/guix.texi:17588 #, no-wrap msgid "{@code{tlp-configuration} parameter} package tlp" msgstr "" #. type: deftypevr -#: doc/guix.texi:17106 +#: doc/guix.texi:17590 msgid "The TLP package." msgstr "" #. type: deftypevr -#: doc/guix.texi:17109 +#: doc/guix.texi:17593 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean tlp-enable?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17111 +#: doc/guix.texi:17595 msgid "Set to true if you wish to enable TLP." msgstr "" #. type: deftypevr -#: doc/guix.texi:17116 +#: doc/guix.texi:17600 #, no-wrap msgid "{@code{tlp-configuration} parameter} string tlp-default-mode" msgstr "" #. type: deftypevr -#: doc/guix.texi:17119 -msgid "" -"Default mode when no power supply can be detected. Alternatives are AC and " -"BAT." +#: doc/guix.texi:17603 +msgid "Default mode when no power supply can be detected. Alternatives are AC and BAT." msgstr "" #. type: deftypevr -#: doc/guix.texi:17121 +#: doc/guix.texi:17605 msgid "Defaults to @samp{\"AC\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17124 +#: doc/guix.texi:17608 #, no-wrap msgid "{@code{tlp-configuration} parameter} non-negative-integer disk-idle-secs-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17127 -msgid "" -"Number of seconds Linux kernel has to wait after the disk goes idle, before " -"syncing on AC." +#: doc/guix.texi:17611 +msgid "Number of seconds Linux kernel has to wait after the disk goes idle, before syncing on AC." msgstr "" #. type: deftypevr -#: doc/guix.texi:17132 +#: doc/guix.texi:17616 #, no-wrap msgid "{@code{tlp-configuration} parameter} non-negative-integer disk-idle-secs-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17134 +#: doc/guix.texi:17618 msgid "Same as @code{disk-idle-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17136 +#: doc/guix.texi:17620 msgid "Defaults to @samp{2}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17139 +#: doc/guix.texi:17623 #, no-wrap msgid "{@code{tlp-configuration} parameter} non-negative-integer max-lost-work-secs-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17141 +#: doc/guix.texi:17625 msgid "Dirty pages flushing periodicity, expressed in seconds." msgstr "" #. type: deftypevr -#: doc/guix.texi:17143 doc/guix.texi:17366 doc/guix.texi:18683 -#: doc/guix.texi:18691 +#: doc/guix.texi:17627 doc/guix.texi:17850 doc/guix.texi:19167 +#: doc/guix.texi:19175 msgid "Defaults to @samp{15}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17146 +#: doc/guix.texi:17630 #, no-wrap msgid "{@code{tlp-configuration} parameter} non-negative-integer max-lost-work-secs-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17148 +#: doc/guix.texi:17632 msgid "Same as @code{max-lost-work-secs-on-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17150 +#: doc/guix.texi:17634 msgid "Defaults to @samp{60}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17153 +#: doc/guix.texi:17637 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list cpu-scaling-governor-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17157 -msgid "" -"CPU frequency scaling governor on AC mode. With intel_pstate driver, " -"alternatives are powersave and performance. With acpi-cpufreq driver, " -"alternatives are ondemand, powersave, performance and conservative." +#: doc/guix.texi:17641 +msgid "CPU frequency scaling governor on AC mode. With intel_pstate driver, alternatives are powersave and performance. With acpi-cpufreq driver, alternatives are ondemand, powersave, performance and conservative." msgstr "" #. type: deftypevr -#: doc/guix.texi:17159 doc/guix.texi:17166 doc/guix.texi:17173 -#: doc/guix.texi:17180 doc/guix.texi:17187 doc/guix.texi:17194 -#: doc/guix.texi:17202 doc/guix.texi:17210 doc/guix.texi:17217 -#: doc/guix.texi:17224 doc/guix.texi:17231 doc/guix.texi:17238 -#: doc/guix.texi:17268 doc/guix.texi:17306 doc/guix.texi:17313 -#: doc/guix.texi:17322 doc/guix.texi:17344 doc/guix.texi:17352 -#: doc/guix.texi:17359 doc/guix.texi:17514 doc/guix.texi:17534 -#: doc/guix.texi:17549 doc/guix.texi:17556 +#: doc/guix.texi:17643 doc/guix.texi:17650 doc/guix.texi:17657 +#: doc/guix.texi:17664 doc/guix.texi:17671 doc/guix.texi:17678 +#: doc/guix.texi:17686 doc/guix.texi:17694 doc/guix.texi:17701 +#: doc/guix.texi:17708 doc/guix.texi:17715 doc/guix.texi:17722 +#: doc/guix.texi:17752 doc/guix.texi:17790 doc/guix.texi:17797 +#: doc/guix.texi:17806 doc/guix.texi:17828 doc/guix.texi:17836 +#: doc/guix.texi:17843 doc/guix.texi:17998 doc/guix.texi:18018 +#: doc/guix.texi:18033 doc/guix.texi:18040 msgid "Defaults to @samp{disabled}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17162 +#: doc/guix.texi:17646 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list cpu-scaling-governor-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17164 +#: doc/guix.texi:17648 msgid "Same as @code{cpu-scaling-governor-on-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17169 +#: doc/guix.texi:17653 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-min-freq-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17171 +#: doc/guix.texi:17655 msgid "Set the min available frequency for the scaling governor on AC." msgstr "" #. type: deftypevr -#: doc/guix.texi:17176 +#: doc/guix.texi:17660 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-max-freq-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17178 +#: doc/guix.texi:17662 msgid "Set the max available frequency for the scaling governor on AC." msgstr "" #. type: deftypevr -#: doc/guix.texi:17183 +#: doc/guix.texi:17667 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-min-freq-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17185 +#: doc/guix.texi:17669 msgid "Set the min available frequency for the scaling governor on BAT." msgstr "" #. type: deftypevr -#: doc/guix.texi:17190 +#: doc/guix.texi:17674 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-max-freq-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17192 +#: doc/guix.texi:17676 msgid "Set the max available frequency for the scaling governor on BAT." msgstr "" #. type: deftypevr -#: doc/guix.texi:17197 +#: doc/guix.texi:17681 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-min-perf-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17200 -msgid "" -"Limit the min P-state to control the power dissipation of the CPU, in AC " -"mode. Values are stated as a percentage of the available performance." +#: doc/guix.texi:17684 +msgid "Limit the min P-state to control the power dissipation of the CPU, in AC mode. Values are stated as a percentage of the available performance." msgstr "" #. type: deftypevr -#: doc/guix.texi:17205 +#: doc/guix.texi:17689 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-max-perf-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17208 -msgid "" -"Limit the max P-state to control the power dissipation of the CPU, in AC " -"mode. Values are stated as a percentage of the available performance." +#: doc/guix.texi:17692 +msgid "Limit the max P-state to control the power dissipation of the CPU, in AC mode. Values are stated as a percentage of the available performance." msgstr "" #. type: deftypevr -#: doc/guix.texi:17213 +#: doc/guix.texi:17697 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-min-perf-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17215 +#: doc/guix.texi:17699 msgid "Same as @code{cpu-min-perf-on-ac} on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17220 +#: doc/guix.texi:17704 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-max-perf-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17222 +#: doc/guix.texi:17706 msgid "Same as @code{cpu-max-perf-on-ac} on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17227 +#: doc/guix.texi:17711 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-boolean cpu-boost-on-ac?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17229 +#: doc/guix.texi:17713 msgid "Enable CPU turbo boost feature on AC mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17234 +#: doc/guix.texi:17718 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-boolean cpu-boost-on-bat?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17236 +#: doc/guix.texi:17720 msgid "Same as @code{cpu-boost-on-ac?} on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17241 +#: doc/guix.texi:17725 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean sched-powersave-on-ac?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17244 -msgid "" -"Allow Linux kernel to minimize the number of CPU cores/hyper-threads used " -"under light load conditions." +#: doc/guix.texi:17728 +msgid "Allow Linux kernel to minimize the number of CPU cores/hyper-threads used under light load conditions." msgstr "" #. type: deftypevr -#: doc/guix.texi:17249 +#: doc/guix.texi:17733 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean sched-powersave-on-bat?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17251 +#: doc/guix.texi:17735 msgid "Same as @code{sched-powersave-on-ac?} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17256 +#: doc/guix.texi:17740 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean nmi-watchdog?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17258 +#: doc/guix.texi:17742 msgid "Enable Linux kernel NMI watchdog." msgstr "" #. type: deftypevr -#: doc/guix.texi:17263 +#: doc/guix.texi:17747 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-string phc-controls" msgstr "" #. type: deftypevr -#: doc/guix.texi:17266 -msgid "" -"For Linux kernels with PHC patch applied, change CPU voltages. An example " -"value would be @samp{\"F:V F:V F:V F:V\"}." +#: doc/guix.texi:17750 +msgid "For Linux kernels with PHC patch applied, change CPU voltages. An example value would be @samp{\"F:V F:V F:V F:V\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17271 +#: doc/guix.texi:17755 #, no-wrap msgid "{@code{tlp-configuration} parameter} string energy-perf-policy-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17274 -msgid "" -"Set CPU performance versus energy saving policy on AC. Alternatives are " -"performance, normal, powersave." +#: doc/guix.texi:17758 +msgid "Set CPU performance versus energy saving policy on AC. Alternatives are performance, normal, powersave." msgstr "" #. type: deftypevr -#: doc/guix.texi:17276 doc/guix.texi:17374 doc/guix.texi:17404 +#: doc/guix.texi:17760 doc/guix.texi:17858 doc/guix.texi:17888 msgid "Defaults to @samp{\"performance\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17279 +#: doc/guix.texi:17763 #, no-wrap msgid "{@code{tlp-configuration} parameter} string energy-perf-policy-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17281 +#: doc/guix.texi:17765 msgid "Same as @code{energy-perf-policy-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17283 doc/guix.texi:17381 +#: doc/guix.texi:17767 doc/guix.texi:17865 msgid "Defaults to @samp{\"powersave\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17286 +#: doc/guix.texi:17770 #, no-wrap msgid "{@code{tlp-configuration} parameter} space-separated-string-list disks-devices" msgstr "" #. type: deftypevr -#: doc/guix.texi:17288 +#: doc/guix.texi:17772 msgid "Hard disk devices." msgstr "" #. type: deftypevr -#: doc/guix.texi:17291 +#: doc/guix.texi:17775 #, no-wrap msgid "{@code{tlp-configuration} parameter} space-separated-string-list disk-apm-level-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17293 +#: doc/guix.texi:17777 msgid "Hard disk advanced power management level." msgstr "" #. type: deftypevr -#: doc/guix.texi:17296 +#: doc/guix.texi:17780 #, no-wrap msgid "{@code{tlp-configuration} parameter} space-separated-string-list disk-apm-level-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17298 +#: doc/guix.texi:17782 msgid "Same as @code{disk-apm-bat} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17301 +#: doc/guix.texi:17785 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list disk-spindown-timeout-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17304 -msgid "" -"Hard disk spin down timeout. One value has to be specified for each " -"declared hard disk." +#: doc/guix.texi:17788 +msgid "Hard disk spin down timeout. One value has to be specified for each declared hard disk." msgstr "" #. type: deftypevr -#: doc/guix.texi:17309 +#: doc/guix.texi:17793 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list disk-spindown-timeout-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17311 +#: doc/guix.texi:17795 msgid "Same as @code{disk-spindown-timeout-on-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17316 +#: doc/guix.texi:17800 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list disk-iosched" msgstr "" #. type: deftypevr -#: doc/guix.texi:17320 -msgid "" -"Select IO scheduler for disk devices. One value has to be specified for " -"each declared hard disk. Example alternatives are cfq, deadline and noop." +#: doc/guix.texi:17804 +msgid "Select IO scheduler for disk devices. One value has to be specified for each declared hard disk. Example alternatives are cfq, deadline and noop." msgstr "" #. type: deftypevr -#: doc/guix.texi:17325 +#: doc/guix.texi:17809 #, no-wrap msgid "{@code{tlp-configuration} parameter} string sata-linkpwr-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17328 -msgid "" -"SATA aggressive link power management (ALPM) level. Alternatives are " -"min_power, medium_power, max_performance." +#: doc/guix.texi:17812 +msgid "SATA aggressive link power management (ALPM) level. Alternatives are min_power, medium_power, max_performance." msgstr "" #. type: deftypevr -#: doc/guix.texi:17330 +#: doc/guix.texi:17814 msgid "Defaults to @samp{\"max_performance\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17333 +#: doc/guix.texi:17817 #, no-wrap msgid "{@code{tlp-configuration} parameter} string sata-linkpwr-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17335 +#: doc/guix.texi:17819 msgid "Same as @code{sata-linkpwr-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17337 +#: doc/guix.texi:17821 msgid "Defaults to @samp{\"min_power\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17340 +#: doc/guix.texi:17824 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-string sata-linkpwr-blacklist" msgstr "" #. type: deftypevr -#: doc/guix.texi:17342 +#: doc/guix.texi:17826 msgid "Exclude specified SATA host devices for link power management." msgstr "" #. type: deftypevr -#: doc/guix.texi:17347 +#: doc/guix.texi:17831 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-on-off-boolean ahci-runtime-pm-on-ac?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17350 -msgid "" -"Enable Runtime Power Management for AHCI controller and disks on AC mode." +#: doc/guix.texi:17834 +msgid "Enable Runtime Power Management for AHCI controller and disks on AC mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17355 +#: doc/guix.texi:17839 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-on-off-boolean ahci-runtime-pm-on-bat?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17357 +#: doc/guix.texi:17841 msgid "Same as @code{ahci-runtime-pm-on-ac} on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17362 +#: doc/guix.texi:17846 #, no-wrap msgid "{@code{tlp-configuration} parameter} non-negative-integer ahci-runtime-pm-timeout" msgstr "" #. type: deftypevr -#: doc/guix.texi:17364 +#: doc/guix.texi:17848 msgid "Seconds of inactivity before disk is suspended." msgstr "" #. type: deftypevr -#: doc/guix.texi:17369 +#: doc/guix.texi:17853 #, no-wrap msgid "{@code{tlp-configuration} parameter} string pcie-aspm-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17372 -msgid "" -"PCI Express Active State Power Management level. Alternatives are default, " -"performance, powersave." +#: doc/guix.texi:17856 +msgid "PCI Express Active State Power Management level. Alternatives are default, performance, powersave." msgstr "" #. type: deftypevr -#: doc/guix.texi:17377 +#: doc/guix.texi:17861 #, no-wrap msgid "{@code{tlp-configuration} parameter} string pcie-aspm-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17379 +#: doc/guix.texi:17863 msgid "Same as @code{pcie-aspm-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17384 +#: doc/guix.texi:17868 #, no-wrap msgid "{@code{tlp-configuration} parameter} string radeon-power-profile-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17387 -msgid "" -"Radeon graphics clock speed level. Alternatives are low, mid, high, auto, " -"default." +#: doc/guix.texi:17871 +msgid "Radeon graphics clock speed level. Alternatives are low, mid, high, auto, default." msgstr "" #. type: deftypevr -#: doc/guix.texi:17389 +#: doc/guix.texi:17873 msgid "Defaults to @samp{\"high\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17392 +#: doc/guix.texi:17876 #, no-wrap msgid "{@code{tlp-configuration} parameter} string radeon-power-profile-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17394 +#: doc/guix.texi:17878 msgid "Same as @code{radeon-power-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17396 +#: doc/guix.texi:17880 msgid "Defaults to @samp{\"low\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17399 +#: doc/guix.texi:17883 #, no-wrap msgid "{@code{tlp-configuration} parameter} string radeon-dpm-state-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17402 -msgid "" -"Radeon dynamic power management method (DPM). Alternatives are battery, " -"performance." +#: doc/guix.texi:17886 +msgid "Radeon dynamic power management method (DPM). Alternatives are battery, performance." msgstr "" #. type: deftypevr -#: doc/guix.texi:17407 +#: doc/guix.texi:17891 #, no-wrap msgid "{@code{tlp-configuration} parameter} string radeon-dpm-state-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17409 +#: doc/guix.texi:17893 msgid "Same as @code{radeon-dpm-state-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17411 +#: doc/guix.texi:17895 msgid "Defaults to @samp{\"battery\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17414 +#: doc/guix.texi:17898 #, no-wrap msgid "{@code{tlp-configuration} parameter} string radeon-dpm-perf-level-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17416 +#: doc/guix.texi:17900 msgid "Radeon DPM performance level. Alternatives are auto, low, high." msgstr "" #. type: deftypevr -#: doc/guix.texi:17418 doc/guix.texi:17425 doc/guix.texi:17499 +#: doc/guix.texi:17902 doc/guix.texi:17909 doc/guix.texi:17983 msgid "Defaults to @samp{\"auto\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17421 +#: doc/guix.texi:17905 #, no-wrap msgid "{@code{tlp-configuration} parameter} string radeon-dpm-perf-level-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17423 +#: doc/guix.texi:17907 msgid "Same as @code{radeon-dpm-perf-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17428 +#: doc/guix.texi:17912 #, no-wrap msgid "{@code{tlp-configuration} parameter} on-off-boolean wifi-pwr-on-ac?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17430 +#: doc/guix.texi:17914 msgid "Wifi power saving mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17435 +#: doc/guix.texi:17919 #, no-wrap msgid "{@code{tlp-configuration} parameter} on-off-boolean wifi-pwr-on-bat?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17437 +#: doc/guix.texi:17921 msgid "Same as @code{wifi-power-ac?} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17442 +#: doc/guix.texi:17926 #, no-wrap msgid "{@code{tlp-configuration} parameter} y-n-boolean wol-disable?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17444 +#: doc/guix.texi:17928 msgid "Disable wake on LAN." msgstr "" #. type: deftypevr -#: doc/guix.texi:17449 +#: doc/guix.texi:17933 #, no-wrap msgid "{@code{tlp-configuration} parameter} non-negative-integer sound-power-save-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17452 -msgid "" -"Timeout duration in seconds before activating audio power saving on Intel " -"HDA and AC97 devices. A value of 0 disables power saving." +#: doc/guix.texi:17936 +msgid "Timeout duration in seconds before activating audio power saving on Intel HDA and AC97 devices. A value of 0 disables power saving." msgstr "" #. type: deftypevr -#: doc/guix.texi:17457 +#: doc/guix.texi:17941 #, no-wrap msgid "{@code{tlp-configuration} parameter} non-negative-integer sound-power-save-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17459 +#: doc/guix.texi:17943 msgid "Same as @code{sound-powersave-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17461 doc/guix.texi:17976 doc/guix.texi:18120 +#: doc/guix.texi:17945 doc/guix.texi:18460 doc/guix.texi:18604 msgid "Defaults to @samp{1}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17464 +#: doc/guix.texi:17948 #, no-wrap msgid "{@code{tlp-configuration} parameter} y-n-boolean sound-power-save-controller?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17466 +#: doc/guix.texi:17950 msgid "Disable controller in powersaving mode on Intel HDA devices." msgstr "" #. type: deftypevr -#: doc/guix.texi:17471 +#: doc/guix.texi:17955 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean bay-poweroff-on-bat?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17475 -msgid "" -"Enable optical drive in UltraBay/MediaBay on BAT mode. Drive can be powered " -"on again by releasing (and reinserting) the eject lever or by pressing the " -"disc eject button on newer models." +#: doc/guix.texi:17959 +msgid "Enable optical drive in UltraBay/MediaBay on BAT mode. Drive can be powered on again by releasing (and reinserting) the eject lever or by pressing the disc eject button on newer models." msgstr "" #. type: deftypevr -#: doc/guix.texi:17480 +#: doc/guix.texi:17964 #, no-wrap msgid "{@code{tlp-configuration} parameter} string bay-device" msgstr "" #. type: deftypevr -#: doc/guix.texi:17482 +#: doc/guix.texi:17966 msgid "Name of the optical drive device to power off." msgstr "" #. type: deftypevr -#: doc/guix.texi:17484 +#: doc/guix.texi:17968 msgid "Defaults to @samp{\"sr0\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17487 +#: doc/guix.texi:17971 #, no-wrap msgid "{@code{tlp-configuration} parameter} string runtime-pm-on-ac" msgstr "" #. type: deftypevr -#: doc/guix.texi:17490 -msgid "" -"Runtime Power Management for PCI(e) bus devices. Alternatives are on and " -"auto." +#: doc/guix.texi:17974 +msgid "Runtime Power Management for PCI(e) bus devices. Alternatives are on and auto." msgstr "" #. type: deftypevr -#: doc/guix.texi:17492 +#: doc/guix.texi:17976 msgid "Defaults to @samp{\"on\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17495 +#: doc/guix.texi:17979 #, no-wrap msgid "{@code{tlp-configuration} parameter} string runtime-pm-on-bat" msgstr "" #. type: deftypevr -#: doc/guix.texi:17497 +#: doc/guix.texi:17981 msgid "Same as @code{runtime-pm-ac} but on BAT mode." msgstr "" #. type: deftypevr -#: doc/guix.texi:17502 +#: doc/guix.texi:17986 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean runtime-pm-all?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17505 -msgid "" -"Runtime Power Management for all PCI(e) bus devices, except blacklisted ones." +#: doc/guix.texi:17989 +msgid "Runtime Power Management for all PCI(e) bus devices, except blacklisted ones." msgstr "" #. type: deftypevr -#: doc/guix.texi:17510 +#: doc/guix.texi:17994 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list runtime-pm-blacklist" msgstr "" #. type: deftypevr -#: doc/guix.texi:17512 -msgid "" -"Exclude specified PCI(e) device addresses from Runtime Power Management." +#: doc/guix.texi:17996 +msgid "Exclude specified PCI(e) device addresses from Runtime Power Management." msgstr "" #. type: deftypevr -#: doc/guix.texi:17517 +#: doc/guix.texi:18001 #, no-wrap msgid "{@code{tlp-configuration} parameter} space-separated-string-list runtime-pm-driver-blacklist" msgstr "" #. type: deftypevr -#: doc/guix.texi:17520 -msgid "" -"Exclude PCI(e) devices assigned to the specified drivers from Runtime Power " -"Management." +#: doc/guix.texi:18004 +msgid "Exclude PCI(e) devices assigned to the specified drivers from Runtime Power Management." msgstr "" #. type: deftypevr -#: doc/guix.texi:17523 +#: doc/guix.texi:18007 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean usb-autosuspend?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17525 +#: doc/guix.texi:18009 msgid "Enable USB autosuspend feature." msgstr "" #. type: deftypevr -#: doc/guix.texi:17530 +#: doc/guix.texi:18014 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-string usb-blacklist" msgstr "" #. type: deftypevr -#: doc/guix.texi:17532 +#: doc/guix.texi:18016 msgid "Exclude specified devices from USB autosuspend." msgstr "" #. type: deftypevr -#: doc/guix.texi:17537 +#: doc/guix.texi:18021 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean usb-blacklist-wwan?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17539 +#: doc/guix.texi:18023 msgid "Exclude WWAN devices from USB autosuspend." msgstr "" #. type: deftypevr -#: doc/guix.texi:17544 +#: doc/guix.texi:18028 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-string usb-whitelist" msgstr "" #. type: deftypevr -#: doc/guix.texi:17547 -msgid "" -"Include specified devices into USB autosuspend, even if they are already " -"excluded by the driver or via @code{usb-blacklist-wwan?}." +#: doc/guix.texi:18031 +msgid "Include specified devices into USB autosuspend, even if they are already excluded by the driver or via @code{usb-blacklist-wwan?}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17552 +#: doc/guix.texi:18036 #, no-wrap msgid "{@code{tlp-configuration} parameter} maybe-boolean usb-autosuspend-disable-on-shutdown?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17554 +#: doc/guix.texi:18038 msgid "Enable USB autosuspend before shutdown." msgstr "" #. type: deftypevr -#: doc/guix.texi:17559 +#: doc/guix.texi:18043 #, no-wrap msgid "{@code{tlp-configuration} parameter} boolean restore-device-state-on-startup?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17562 -msgid "" -"Restore radio device state (bluetooth, wifi, wwan) from previous shutdown on " -"system startup." +#: doc/guix.texi:18046 +msgid "Restore radio device state (bluetooth, wifi, wwan) from previous shutdown on system startup." msgstr "" #. type: Plain text -#: doc/guix.texi:17570 -msgid "" -"The @code{(gnu services pm)} module provides an interface to thermald, a CPU " -"frequency scaling service which helps prevent overheating." +#: doc/guix.texi:18054 +msgid "The @code{(gnu services pm)} module provides an interface to thermald, a CPU frequency scaling service which helps prevent overheating." msgstr "" #. type: defvr -#: doc/guix.texi:17571 +#: doc/guix.texi:18055 #, no-wrap msgid "{Scheme Variable} thermald-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:17576 -msgid "" -"This is the service type for @uref{https://01.org/linux-thermal-daemon/, " -"thermald}, the Linux Thermal Daemon, which is responsible for controlling " -"the thermal state of processors and preventing overheating." +#: doc/guix.texi:18060 +msgid "This is the service type for @uref{https://01.org/linux-thermal-daemon/, thermald}, the Linux Thermal Daemon, which is responsible for controlling the thermal state of processors and preventing overheating." msgstr "" #. type: deftp -#: doc/guix.texi:17578 +#: doc/guix.texi:18062 #, no-wrap msgid "{Data Type} thermald-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:17580 -msgid "" -"Data type representing the configuration of @code{thermald-service-type}." +#: doc/guix.texi:18064 +msgid "Data type representing the configuration of @code{thermald-service-type}." msgstr "" #. type: item -#: doc/guix.texi:17582 +#: doc/guix.texi:18066 #, no-wrap msgid "@code{ignore-cpuid-check?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:17584 +#: doc/guix.texi:18068 msgid "Ignore cpuid check for supported CPU models." msgstr "" #. type: item -#: doc/guix.texi:17585 +#: doc/guix.texi:18069 #, no-wrap msgid "@code{thermald} (default: @var{thermald})" msgstr "" #. type: table -#: doc/guix.texi:17587 +#: doc/guix.texi:18071 msgid "Package object of thermald." msgstr "" #. type: Plain text -#: doc/guix.texi:17596 -msgid "" -"The @code{(gnu services audio)} module provides a service to start MPD (the " -"Music Player Daemon)." +#: doc/guix.texi:18080 +msgid "The @code{(gnu services audio)} module provides a service to start MPD (the Music Player Daemon)." msgstr "" #. type: cindex -#: doc/guix.texi:17597 +#: doc/guix.texi:18081 #, no-wrap msgid "mpd" msgstr "" #. type: subsubheading -#: doc/guix.texi:17598 +#: doc/guix.texi:18082 #, no-wrap msgid "Music Player Daemon" msgstr "" #. type: Plain text -#: doc/guix.texi:17603 -msgid "" -"The Music Player Daemon (MPD) is a service that can play music while being " -"controlled from the local machine or over the network by a variety of " -"clients." +#: doc/guix.texi:18087 +msgid "The Music Player Daemon (MPD) is a service that can play music while being controlled from the local machine or over the network by a variety of clients." msgstr "" #. type: Plain text -#: doc/guix.texi:17606 -msgid "" -"The following example shows how one might run @code{mpd} as user @code{\"bob" -"\"} on port @code{6666}. It uses pulseaudio for output." +#: doc/guix.texi:18090 +msgid "The following example shows how one might run @code{mpd} as user @code{\"bob\"} on port @code{6666}. It uses pulseaudio for output." msgstr "" #. type: example -#: doc/guix.texi:17612 +#: doc/guix.texi:18096 #, no-wrap msgid "" "(service mpd-service-type\n" @@ -39189,127 +32887,117 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:17614 +#: doc/guix.texi:18098 #, no-wrap msgid "{Scheme Variable} mpd-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:17616 +#: doc/guix.texi:18100 msgid "The service type for @command{mpd}" msgstr "" #. type: deftp -#: doc/guix.texi:17618 +#: doc/guix.texi:18102 #, no-wrap msgid "{Data Type} mpd-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:17620 +#: doc/guix.texi:18104 msgid "Data type representing the configuration of @command{mpd}." msgstr "" #. type: item -#: doc/guix.texi:17622 +#: doc/guix.texi:18106 #, no-wrap msgid "@code{user} (default: @code{\"mpd\"})" msgstr "" #. type: table -#: doc/guix.texi:17624 +#: doc/guix.texi:18108 msgid "The user to run mpd as." msgstr "" #. type: item -#: doc/guix.texi:17625 +#: doc/guix.texi:18109 #, no-wrap msgid "@code{music-dir} (default: @code{\"~/Music\"})" msgstr "" #. type: table -#: doc/guix.texi:17627 +#: doc/guix.texi:18111 msgid "The directory to scan for music files." msgstr "" #. type: item -#: doc/guix.texi:17628 +#: doc/guix.texi:18112 #, no-wrap msgid "@code{playlist-dir} (default: @code{\"~/.mpd/playlists\"})" msgstr "" #. type: table -#: doc/guix.texi:17630 +#: doc/guix.texi:18114 msgid "The directory to store playlists." msgstr "" #. type: item -#: doc/guix.texi:17631 +#: doc/guix.texi:18115 #, no-wrap msgid "@code{port} (default: @code{\"6600\"})" msgstr "" #. type: table -#: doc/guix.texi:17633 +#: doc/guix.texi:18117 msgid "The port to run mpd on." msgstr "" #. type: item -#: doc/guix.texi:17634 +#: doc/guix.texi:18118 #, no-wrap msgid "@code{address} (default: @code{\"any\"})" msgstr "" #. type: table -#: doc/guix.texi:17637 -msgid "" -"The address that mpd will bind to. To use a Unix domain socket, an absolute " -"path can be specified here." +#: doc/guix.texi:18121 +msgid "The address that mpd will bind to. To use a Unix domain socket, an absolute path can be specified here." msgstr "" #. type: subsubsection -#: doc/guix.texi:17642 +#: doc/guix.texi:18126 #, no-wrap msgid "Virtualization services" msgstr "" #. type: Plain text -#: doc/guix.texi:17647 -msgid "" -"The @code{(gnu services virtualization)} module provides services for the " -"libvirt and virtlog daemons, as well as other virtualization-related " -"services." +#: doc/guix.texi:18131 +msgid "The @code{(gnu services virtualization)} module provides services for the libvirt and virtlog daemons, as well as other virtualization-related services." msgstr "" #. type: subsubheading -#: doc/guix.texi:17648 +#: doc/guix.texi:18132 #, no-wrap msgid "Libvirt daemon" msgstr "" #. type: Plain text -#: doc/guix.texi:17652 -msgid "" -"@code{libvirtd} is the server side daemon component of the libvirt " -"virtualization management system. This daemon runs on host servers and " -"performs required management tasks for virtualized guests." +#: doc/guix.texi:18136 +msgid "@code{libvirtd} is the server side daemon component of the libvirt virtualization management system. This daemon runs on host servers and performs required management tasks for virtualized guests." msgstr "" #. type: deffn -#: doc/guix.texi:17653 +#: doc/guix.texi:18137 #, no-wrap msgid "{Scheme Variable} libvirt-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:17656 -msgid "" -"This is the type of the @uref{https://libvirt.org, libvirt daemon}. Its " -"value must be a @code{libvirt-configuration}." +#: doc/guix.texi:18140 +msgid "This is the type of the @uref{https://libvirt.org, libvirt daemon}. Its value must be a @code{libvirt-configuration}." msgstr "" #. type: example -#: doc/guix.texi:17662 +#: doc/guix.texi:18146 #, no-wrap msgid "" "(service libvirt-service-type\n" @@ -39319,995 +33007,879 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:17667 +#: doc/guix.texi:18151 msgid "Available @code{libvirt-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:17668 +#: doc/guix.texi:18152 #, no-wrap msgid "{@code{libvirt-configuration} parameter} package libvirt" msgstr "" #. type: deftypevr -#: doc/guix.texi:17670 +#: doc/guix.texi:18154 msgid "Libvirt package." msgstr "" #. type: deftypevr -#: doc/guix.texi:17673 +#: doc/guix.texi:18157 #, no-wrap msgid "{@code{libvirt-configuration} parameter} boolean listen-tls?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17676 -msgid "" -"Flag listening for secure TLS connections on the public TCP/IP port. must " -"set @code{listen} for this to have any effect." +#: doc/guix.texi:18160 +msgid "Flag listening for secure TLS connections on the public TCP/IP port. must set @code{listen} for this to have any effect." msgstr "" #. type: deftypevr -#: doc/guix.texi:17679 -msgid "" -"It is necessary to setup a CA and issue server certificates before using " -"this capability." +#: doc/guix.texi:18163 +msgid "It is necessary to setup a CA and issue server certificates before using this capability." msgstr "" #. type: deftypevr -#: doc/guix.texi:17684 +#: doc/guix.texi:18168 #, no-wrap msgid "{@code{libvirt-configuration} parameter} boolean listen-tcp?" msgstr "" #. type: deftypevr -#: doc/guix.texi:17687 -msgid "" -"Listen for unencrypted TCP connections on the public TCP/IP port. must set " -"@code{listen} for this to have any effect." +#: doc/guix.texi:18171 +msgid "Listen for unencrypted TCP connections on the public TCP/IP port. must set @code{listen} for this to have any effect." msgstr "" #. type: deftypevr -#: doc/guix.texi:17691 -msgid "" -"Using the TCP socket requires SASL authentication by default. Only SASL " -"mechanisms which support data encryption are allowed. This is DIGEST_MD5 " -"and GSSAPI (Kerberos5)" +#: doc/guix.texi:18175 +msgid "Using the TCP socket requires SASL authentication by default. Only SASL mechanisms which support data encryption are allowed. This is DIGEST_MD5 and GSSAPI (Kerberos5)" msgstr "" #. type: deftypevr -#: doc/guix.texi:17696 +#: doc/guix.texi:18180 #, no-wrap msgid "{@code{libvirt-configuration} parameter} string tls-port" msgstr "" #. type: deftypevr -#: doc/guix.texi:17699 -msgid "" -"Port for accepting secure TLS connections This can be a port number, or " -"service name" +#: doc/guix.texi:18183 +msgid "Port for accepting secure TLS connections This can be a port number, or service name" msgstr "" #. type: deftypevr -#: doc/guix.texi:17701 +#: doc/guix.texi:18185 msgid "Defaults to @samp{\"16514\"}." msgstr "" #. type: deftypevr -#: doc/guix.texi:17704 +#: doc/guix.texi:18188 #, no-wrap msgid "{@code{libvirt-configuration} parameter} string tcp-port" msgstr "" #. type: deftypevr -#: doc/guix.texi:17707 -msgid "" -"Port for accepting insecure TCP connections This can be a port number, or " -"service name" +#: doc/guix.texi:18191 +msgid "Port for accepting insecure TCP connections This can be a port number, or service name" msgstr "" #. type: deftypevr -#: doc/guix.texi:17709 +#: doc/guix.texi:18193 msgid "Defaults to @samp{\"16509\"}." msgstr "" -#. type: deftypevr -#: doc/guix.texi:17712 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string listen-addr" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17714 -msgid "IP address or hostname used for client connections." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17716 -msgid "Defaults to @samp{\"0.0.0.0\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17719 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} boolean mdns-adv?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17721 -msgid "Flag toggling mDNS advertisement of the libvirt service." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17724 -msgid "" -"Alternatively can disable for all services on a host by stopping the Avahi " -"daemon." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17729 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string mdns-name" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17732 -msgid "" -"Default mDNS advertisement name. This must be unique on the immediate " -"broadcast network." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17734 -msgid "Defaults to @samp{\"Virtualization Host \"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17737 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string unix-sock-group" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17741 -msgid "" -"UNIX domain socket group ownership. This can be used to allow a 'trusted' " -"set of users access to management capabilities without becoming root." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17743 -msgid "Defaults to @samp{\"root\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17746 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string unix-sock-ro-perms" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17749 -msgid "" -"UNIX socket permissions for the R/O socket. This is used for monitoring VM " -"status only." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17751 doc/guix.texi:17769 -msgid "Defaults to @samp{\"0777\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17754 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string unix-sock-rw-perms" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17758 -msgid "" -"UNIX socket permissions for the R/W socket. Default allows only root. If " -"PolicyKit is enabled on the socket, the default will change to allow " -"everyone (eg, 0777)" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17760 -msgid "Defaults to @samp{\"0770\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17763 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string unix-sock-admin-perms" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17767 -msgid "" -"UNIX socket permissions for the admin socket. Default allows only owner " -"(root), do not change it unless you are sure to whom you are exposing the " -"access to." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17772 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string unix-sock-dir" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17774 -msgid "The directory in which sockets will be found/created." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17776 -msgid "Defaults to @samp{\"/var/run/libvirt\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17779 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string auth-unix-ro" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17782 -msgid "" -"Authentication scheme for UNIX read-only sockets. By default socket " -"permissions allow anyone to connect" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17784 doc/guix.texi:17793 -msgid "Defaults to @samp{\"polkit\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17787 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string auth-unix-rw" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17791 -msgid "" -"Authentication scheme for UNIX read-write sockets. By default socket " -"permissions only allow root. If PolicyKit support was compiled into " -"libvirt, the default will be to use 'polkit' auth." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17796 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string auth-tcp" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17800 -msgid "" -"Authentication scheme for TCP sockets. If you don't enable SASL, then all " -"TCP traffic is cleartext. Don't do this outside of a dev/test scenario." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17802 -msgid "Defaults to @samp{\"sasl\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17805 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string auth-tls" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17809 -msgid "" -"Authentication scheme for TLS sockets. TLS sockets already have encryption " -"provided by the TLS layer, and limited authentication is done by " -"certificates." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17812 -msgid "" -"It is possible to make use of any SASL authentication mechanism as well, by " -"using 'sasl' for this option" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17814 -msgid "Defaults to @samp{\"none\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17817 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} optional-list access-drivers" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17819 -msgid "API access control scheme." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17822 -msgid "" -"By default an authenticated user is allowed access to all APIs. Access " -"drivers can place restrictions on this." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17827 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string key-file" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17830 -msgid "" -"Server key file path. If set to an empty string, then no private key is " -"loaded." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17835 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string cert-file" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17838 -msgid "" -"Server key file path. If set to an empty string, then no certificate is " -"loaded." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17843 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string ca-file" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17846 -msgid "" -"Server key file path. If set to an empty string, then no CA certificate is " -"loaded." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17851 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string crl-file" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17854 -msgid "" -"Certificate revocation list path. If set to an empty string, then no CRL is " -"loaded." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17859 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} boolean tls-no-sanity-cert" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17861 -msgid "Disable verification of our own server certificates." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17864 -msgid "" -"When libvirtd starts it performs some sanity checks against its own " -"certificates." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17869 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} boolean tls-no-verify-cert" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17871 -msgid "Disable verification of client certificates." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17875 -msgid "" -"Client certificate verification is the primary authentication mechanism. " -"Any client which does not present a certificate signed by the CA will be " -"rejected." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17880 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} optional-list tls-allowed-dn-list" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17882 -msgid "Whitelist of allowed x509 Distinguished Name." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17887 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} optional-list sasl-allowed-usernames" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17890 -msgid "" -"Whitelist of allowed SASL usernames. The format for username depends on the " -"SASL authentication mechanism." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17895 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string tls-priority" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17899 -msgid "" -"Override the compile time default TLS priority string. The default is " -"usually \"NORMAL\" unless overridden at build time. Only set this is it is " -"desired for libvirt to deviate from the global default settings." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17901 -msgid "Defaults to @samp{\"NORMAL\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17904 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer max-clients" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17907 doc/guix.texi:18330 -msgid "" -"Maximum number of concurrent client connections to allow over all sockets " -"combined." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17909 -msgid "Defaults to @samp{5000}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17912 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer max-queued-clients" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17916 -msgid "" -"Maximum length of queue of connections waiting to be accepted by the " -"daemon. Note, that some protocols supporting retransmission may obey this " -"so that a later reattempt at connection succeeds." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17921 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer max-anonymous-clients" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17924 -msgid "" -"Maximum length of queue of accepted but not yet authenticated clients. Set " -"this to zero to turn this feature off" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17926 doc/guix.texi:17944 doc/guix.texi:17960 -msgid "Defaults to @samp{20}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17929 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer min-workers" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17931 -msgid "Number of workers to start up initially." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17936 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer max-workers" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17938 -msgid "Maximum number of worker threads." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17942 -msgid "" -"If the number of active clients exceeds @code{min-workers}, then more " -"threads are spawned, up to max_workers limit. Typically you'd want " -"max_workers to equal maximum number of clients allowed." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17947 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer prio-workers" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17951 -msgid "" -"Number of priority workers. If all workers from above pool are stuck, some " -"calls marked as high priority (notably domainDestroy) can be executed in " -"this pool." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17956 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer max-requests" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17958 -msgid "Total global limit on concurrent RPC calls." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17963 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer max-client-requests" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17967 -msgid "" -"Limit on concurrent requests from a single client connection. To avoid one " -"client monopolizing the server this should be a small fraction of the global " -"max_requests and max_workers parameter." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17972 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer admin-min-workers" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17974 -msgid "Same as @code{min-workers} but for the admin interface." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17979 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer admin-max-workers" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17981 -msgid "Same as @code{max-workers} but for the admin interface." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17986 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer admin-max-clients" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17988 -msgid "Same as @code{max-clients} but for the admin interface." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17993 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer admin-max-queued-clients" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:17995 -msgid "Same as @code{max-queued-clients} but for the admin interface." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18000 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer admin-max-client-requests" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18002 -msgid "Same as @code{max-client-requests} but for the admin interface." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18007 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer log-level" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18009 doc/guix.texi:18232 -msgid "Logging level. 4 errors, 3 warnings, 2 information, 1 debug." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18014 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string log-filters" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18016 doc/guix.texi:18239 -msgid "Logging filters." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18019 doc/guix.texi:18242 -msgid "" -"A filter allows to select a different logging level for a given category of " -"logs The format for a filter is one of:" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18023 doc/guix.texi:18246 -msgid "x:name" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18026 doc/guix.texi:18249 -msgid "x:+name" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18036 doc/guix.texi:18259 -msgid "" -"where @code{name} is a string which is matched against the category given in " -"the @code{VIR_LOG_INIT()} at the top of each libvirt source file, e.g., " -"\"remote\", \"qemu\", or \"util.json\" (the name in the filter can be a " -"substring of the full category name, in order to match multiple similar " -"categories), the optional \"+\" prefix tells libvirt to log stack trace for " -"each message matching name, and @code{x} is the minimal level where matching " -"messages should be logged:" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18040 doc/guix.texi:18085 doc/guix.texi:18263 -#: doc/guix.texi:18308 -msgid "1: DEBUG" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18043 doc/guix.texi:18088 doc/guix.texi:18266 -#: doc/guix.texi:18311 -msgid "2: INFO" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18046 doc/guix.texi:18091 doc/guix.texi:18269 -#: doc/guix.texi:18314 -msgid "3: WARNING" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18049 doc/guix.texi:18094 doc/guix.texi:18272 -#: doc/guix.texi:18317 -msgid "4: ERROR" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18054 doc/guix.texi:18277 -msgid "" -"Multiple filters can be defined in a single filters statement, they just " -"need to be separated by spaces." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18056 doc/guix.texi:18279 -msgid "Defaults to @samp{\"3:remote 4:event\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18059 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string log-outputs" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18061 doc/guix.texi:18284 -msgid "Logging outputs." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18064 doc/guix.texi:18287 -msgid "" -"An output is one of the places to save logging information The format for an " -"output can be:" -msgstr "" - -#. type: item -#: doc/guix.texi:18066 doc/guix.texi:18289 -#, no-wrap -msgid "x:stderr" -msgstr "" - -#. type: table -#: doc/guix.texi:18068 doc/guix.texi:18291 -msgid "output goes to stderr" -msgstr "" - -#. type: item -#: doc/guix.texi:18069 doc/guix.texi:18292 -#, no-wrap -msgid "x:syslog:name" -msgstr "" - -#. type: table -#: doc/guix.texi:18071 doc/guix.texi:18294 -msgid "use syslog for the output and use the given name as the ident" -msgstr "" - -#. type: item -#: doc/guix.texi:18072 doc/guix.texi:18295 -#, no-wrap -msgid "x:file:file_path" -msgstr "" - -#. type: table -#: doc/guix.texi:18074 doc/guix.texi:18297 -msgid "output to a file, with the given filepath" -msgstr "" - -#. type: item -#: doc/guix.texi:18075 doc/guix.texi:18298 -#, no-wrap -msgid "x:journald" -msgstr "" - -#. type: table -#: doc/guix.texi:18077 doc/guix.texi:18300 -msgid "output to journald logging system" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18081 doc/guix.texi:18304 -msgid "In all case the x prefix is the minimal level, acting as a filter" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18099 doc/guix.texi:18322 -msgid "" -"Multiple outputs can be defined, they just need to be separated by spaces." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18101 doc/guix.texi:18324 -msgid "Defaults to @samp{\"3:stderr\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18104 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer audit-level" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18106 -msgid "Allows usage of the auditing subsystem to be altered" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18110 -msgid "0: disable all auditing" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18113 -msgid "1: enable auditing, only if enabled on host" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18116 -msgid "2: enable auditing, and exit if disabled on host." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18123 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} boolean audit-logging" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18125 -msgid "Send audit messages via libvirt logging infrastructure." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18130 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} optional-string host-uuid" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18132 -msgid "Host UUID. UUID must not have all digits be the same." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18137 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} string host-uuid-source" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18139 -msgid "Source to read host UUID." -msgstr "" - -#. type: itemize -#: doc/guix.texi:18143 -msgid "@code{smbios}: fetch the UUID from @code{dmidecode -s system-uuid}" -msgstr "" - -#. type: itemize -#: doc/guix.texi:18146 -msgid "@code{machine-id}: fetch the UUID from @code{/etc/machine-id}" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18151 -msgid "" -"If @code{dmidecode} does not provide a valid UUID a temporary UUID will be " -"generated." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18153 -msgid "Defaults to @samp{\"smbios\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18156 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer keepalive-interval" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18161 -msgid "" -"A keepalive message is sent to a client after @code{keepalive_interval} " -"seconds of inactivity to check if the client is still responding. If set to " -"-1, libvirtd will never send keepalive requests; however clients can still " -"send them and the daemon will send responses." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18166 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer keepalive-count" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18170 -msgid "" -"Maximum number of keepalive messages that are allowed to be sent to the " -"client without getting any response before the connection is considered " -"broken." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18177 -msgid "" -"In other words, the connection is automatically closed approximately after " -"@code{keepalive_interval * (keepalive_count + 1)} seconds since the last " -"message received from the client. When @code{keepalive-count} is set to 0, " -"connections will be automatically closed after @code{keepalive-interval} " -"seconds of inactivity without sending any keepalive messages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18182 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer admin-keepalive-interval" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18184 doc/guix.texi:18191 -msgid "Same as above but for admin interface." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18189 -#, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer admin-keepalive-count" -msgstr "" - #. type: deftypevr #: doc/guix.texi:18196 #, no-wrap -msgid "{@code{libvirt-configuration} parameter} integer ovs-timeout" +msgid "{@code{libvirt-configuration} parameter} string listen-addr" msgstr "" #. type: deftypevr #: doc/guix.texi:18198 +msgid "IP address or hostname used for client connections." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18200 +msgid "Defaults to @samp{\"0.0.0.0\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18203 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} boolean mdns-adv?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18205 +msgid "Flag toggling mDNS advertisement of the libvirt service." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18208 +msgid "Alternatively can disable for all services on a host by stopping the Avahi daemon." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18213 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string mdns-name" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18216 +msgid "Default mDNS advertisement name. This must be unique on the immediate broadcast network." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18218 +msgid "Defaults to @samp{\"Virtualization Host \"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18221 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string unix-sock-group" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18225 +msgid "UNIX domain socket group ownership. This can be used to allow a 'trusted' set of users access to management capabilities without becoming root." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18227 +msgid "Defaults to @samp{\"root\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18230 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string unix-sock-ro-perms" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18233 +msgid "UNIX socket permissions for the R/O socket. This is used for monitoring VM status only." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18235 doc/guix.texi:18253 +msgid "Defaults to @samp{\"0777\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18238 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string unix-sock-rw-perms" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18242 +msgid "UNIX socket permissions for the R/W socket. Default allows only root. If PolicyKit is enabled on the socket, the default will change to allow everyone (eg, 0777)" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18244 +msgid "Defaults to @samp{\"0770\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18247 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string unix-sock-admin-perms" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18251 +msgid "UNIX socket permissions for the admin socket. Default allows only owner (root), do not change it unless you are sure to whom you are exposing the access to." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18256 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string unix-sock-dir" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18258 +msgid "The directory in which sockets will be found/created." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18260 +msgid "Defaults to @samp{\"/var/run/libvirt\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18263 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string auth-unix-ro" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18266 +msgid "Authentication scheme for UNIX read-only sockets. By default socket permissions allow anyone to connect" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18268 doc/guix.texi:18277 +msgid "Defaults to @samp{\"polkit\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18271 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string auth-unix-rw" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18275 +msgid "Authentication scheme for UNIX read-write sockets. By default socket permissions only allow root. If PolicyKit support was compiled into libvirt, the default will be to use 'polkit' auth." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18280 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string auth-tcp" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18284 +msgid "Authentication scheme for TCP sockets. If you don't enable SASL, then all TCP traffic is cleartext. Don't do this outside of a dev/test scenario." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18286 +msgid "Defaults to @samp{\"sasl\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18289 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string auth-tls" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18293 +msgid "Authentication scheme for TLS sockets. TLS sockets already have encryption provided by the TLS layer, and limited authentication is done by certificates." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18296 +msgid "It is possible to make use of any SASL authentication mechanism as well, by using 'sasl' for this option" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18298 +msgid "Defaults to @samp{\"none\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18301 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} optional-list access-drivers" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18303 +msgid "API access control scheme." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18306 +msgid "By default an authenticated user is allowed access to all APIs. Access drivers can place restrictions on this." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18311 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string key-file" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18314 +msgid "Server key file path. If set to an empty string, then no private key is loaded." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18319 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string cert-file" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18322 +msgid "Server key file path. If set to an empty string, then no certificate is loaded." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18327 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string ca-file" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18330 +msgid "Server key file path. If set to an empty string, then no CA certificate is loaded." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18335 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string crl-file" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18338 +msgid "Certificate revocation list path. If set to an empty string, then no CRL is loaded." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18343 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} boolean tls-no-sanity-cert" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18345 +msgid "Disable verification of our own server certificates." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18348 +msgid "When libvirtd starts it performs some sanity checks against its own certificates." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18353 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} boolean tls-no-verify-cert" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18355 +msgid "Disable verification of client certificates." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18359 +msgid "Client certificate verification is the primary authentication mechanism. Any client which does not present a certificate signed by the CA will be rejected." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18364 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} optional-list tls-allowed-dn-list" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18366 +msgid "Whitelist of allowed x509 Distinguished Name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18371 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} optional-list sasl-allowed-usernames" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18374 +msgid "Whitelist of allowed SASL usernames. The format for username depends on the SASL authentication mechanism." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18379 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string tls-priority" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18383 +msgid "Override the compile time default TLS priority string. The default is usually \"NORMAL\" unless overridden at build time. Only set this is it is desired for libvirt to deviate from the global default settings." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18385 +msgid "Defaults to @samp{\"NORMAL\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18388 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer max-clients" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18391 doc/guix.texi:18814 +msgid "Maximum number of concurrent client connections to allow over all sockets combined." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18393 +msgid "Defaults to @samp{5000}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18396 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer max-queued-clients" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18400 +msgid "Maximum length of queue of connections waiting to be accepted by the daemon. Note, that some protocols supporting retransmission may obey this so that a later reattempt at connection succeeds." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18405 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer max-anonymous-clients" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18408 +msgid "Maximum length of queue of accepted but not yet authenticated clients. Set this to zero to turn this feature off" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18410 doc/guix.texi:18428 doc/guix.texi:18444 +msgid "Defaults to @samp{20}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18413 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer min-workers" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18415 +msgid "Number of workers to start up initially." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18420 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer max-workers" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18422 +msgid "Maximum number of worker threads." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18426 +msgid "If the number of active clients exceeds @code{min-workers}, then more threads are spawned, up to max_workers limit. Typically you'd want max_workers to equal maximum number of clients allowed." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18431 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer prio-workers" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18435 +msgid "Number of priority workers. If all workers from above pool are stuck, some calls marked as high priority (notably domainDestroy) can be executed in this pool." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18440 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer max-requests" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18442 +msgid "Total global limit on concurrent RPC calls." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18447 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer max-client-requests" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18451 +msgid "Limit on concurrent requests from a single client connection. To avoid one client monopolizing the server this should be a small fraction of the global max_requests and max_workers parameter." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18456 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer admin-min-workers" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18458 +msgid "Same as @code{min-workers} but for the admin interface." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18463 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer admin-max-workers" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18465 +msgid "Same as @code{max-workers} but for the admin interface." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18470 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer admin-max-clients" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18472 +msgid "Same as @code{max-clients} but for the admin interface." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18477 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer admin-max-queued-clients" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18479 +msgid "Same as @code{max-queued-clients} but for the admin interface." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18484 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer admin-max-client-requests" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18486 +msgid "Same as @code{max-client-requests} but for the admin interface." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18491 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer log-level" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18493 doc/guix.texi:18716 +msgid "Logging level. 4 errors, 3 warnings, 2 information, 1 debug." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18498 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string log-filters" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18500 doc/guix.texi:18723 +msgid "Logging filters." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18503 doc/guix.texi:18726 +msgid "A filter allows to select a different logging level for a given category of logs The format for a filter is one of:" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18507 doc/guix.texi:18730 +msgid "x:name" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18510 doc/guix.texi:18733 +msgid "x:+name" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18520 doc/guix.texi:18743 +msgid "where @code{name} is a string which is matched against the category given in the @code{VIR_LOG_INIT()} at the top of each libvirt source file, e.g., \"remote\", \"qemu\", or \"util.json\" (the name in the filter can be a substring of the full category name, in order to match multiple similar categories), the optional \"+\" prefix tells libvirt to log stack trace for each message matching name, and @code{x} is the minimal level where matching messages should be logged:" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18524 doc/guix.texi:18569 doc/guix.texi:18747 +#: doc/guix.texi:18792 +msgid "1: DEBUG" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18527 doc/guix.texi:18572 doc/guix.texi:18750 +#: doc/guix.texi:18795 +msgid "2: INFO" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18530 doc/guix.texi:18575 doc/guix.texi:18753 +#: doc/guix.texi:18798 +msgid "3: WARNING" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18533 doc/guix.texi:18578 doc/guix.texi:18756 +#: doc/guix.texi:18801 +msgid "4: ERROR" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18538 doc/guix.texi:18761 +msgid "Multiple filters can be defined in a single filters statement, they just need to be separated by spaces." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18540 doc/guix.texi:18763 +msgid "Defaults to @samp{\"3:remote 4:event\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18543 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string log-outputs" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18545 doc/guix.texi:18768 +msgid "Logging outputs." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18548 doc/guix.texi:18771 +msgid "An output is one of the places to save logging information The format for an output can be:" +msgstr "" + +#. type: item +#: doc/guix.texi:18550 doc/guix.texi:18773 +#, no-wrap +msgid "x:stderr" +msgstr "" + +#. type: table +#: doc/guix.texi:18552 doc/guix.texi:18775 +msgid "output goes to stderr" +msgstr "" + +#. type: item +#: doc/guix.texi:18553 doc/guix.texi:18776 +#, no-wrap +msgid "x:syslog:name" +msgstr "" + +#. type: table +#: doc/guix.texi:18555 doc/guix.texi:18778 +msgid "use syslog for the output and use the given name as the ident" +msgstr "" + +#. type: item +#: doc/guix.texi:18556 doc/guix.texi:18779 +#, no-wrap +msgid "x:file:file_path" +msgstr "" + +#. type: table +#: doc/guix.texi:18558 doc/guix.texi:18781 +msgid "output to a file, with the given filepath" +msgstr "" + +#. type: item +#: doc/guix.texi:18559 doc/guix.texi:18782 +#, no-wrap +msgid "x:journald" +msgstr "" + +#. type: table +#: doc/guix.texi:18561 doc/guix.texi:18784 +msgid "output to journald logging system" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18565 doc/guix.texi:18788 +msgid "In all case the x prefix is the minimal level, acting as a filter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18583 doc/guix.texi:18806 +msgid "Multiple outputs can be defined, they just need to be separated by spaces." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18585 doc/guix.texi:18808 +msgid "Defaults to @samp{\"3:stderr\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18588 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer audit-level" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18590 +msgid "Allows usage of the auditing subsystem to be altered" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18594 +msgid "0: disable all auditing" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18597 +msgid "1: enable auditing, only if enabled on host" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18600 +msgid "2: enable auditing, and exit if disabled on host." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18607 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} boolean audit-logging" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18609 +msgid "Send audit messages via libvirt logging infrastructure." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18614 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} optional-string host-uuid" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18616 +msgid "Host UUID. UUID must not have all digits be the same." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18621 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} string host-uuid-source" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18623 +msgid "Source to read host UUID." +msgstr "" + +#. type: itemize +#: doc/guix.texi:18627 +msgid "@code{smbios}: fetch the UUID from @code{dmidecode -s system-uuid}" +msgstr "" + +#. type: itemize +#: doc/guix.texi:18630 +msgid "@code{machine-id}: fetch the UUID from @code{/etc/machine-id}" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18635 +msgid "If @code{dmidecode} does not provide a valid UUID a temporary UUID will be generated." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18637 +msgid "Defaults to @samp{\"smbios\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18640 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer keepalive-interval" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18645 +msgid "A keepalive message is sent to a client after @code{keepalive_interval} seconds of inactivity to check if the client is still responding. If set to -1, libvirtd will never send keepalive requests; however clients can still send them and the daemon will send responses." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18650 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer keepalive-count" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18654 +msgid "Maximum number of keepalive messages that are allowed to be sent to the client without getting any response before the connection is considered broken." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18661 +msgid "In other words, the connection is automatically closed approximately after @code{keepalive_interval * (keepalive_count + 1)} seconds since the last message received from the client. When @code{keepalive-count} is set to 0, connections will be automatically closed after @code{keepalive-interval} seconds of inactivity without sending any keepalive messages." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18666 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer admin-keepalive-interval" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18668 doc/guix.texi:18675 +msgid "Same as above but for admin interface." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18673 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer admin-keepalive-count" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18680 +#, no-wrap +msgid "{@code{libvirt-configuration} parameter} integer ovs-timeout" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:18682 msgid "Timeout for Open vSwitch calls." msgstr "" #. type: deftypevr -#: doc/guix.texi:18202 -msgid "" -"The @code{ovs-vsctl} utility is used for the configuration and its timeout " -"option is set by default to 5 seconds to avoid potential infinite waits " -"blocking libvirt." +#: doc/guix.texi:18686 +msgid "The @code{ovs-vsctl} utility is used for the configuration and its timeout option is set by default to 5 seconds to avoid potential infinite waits blocking libvirt." msgstr "" #. type: subsubheading -#: doc/guix.texi:18209 +#: doc/guix.texi:18693 #, no-wrap msgid "Virtlog daemon" msgstr "" #. type: Plain text -#: doc/guix.texi:18212 -msgid "" -"The virtlogd service is a server side daemon component of libvirt that is " -"used to manage logs from virtual machine consoles." +#: doc/guix.texi:18696 +msgid "The virtlogd service is a server side daemon component of libvirt that is used to manage logs from virtual machine consoles." msgstr "" #. type: Plain text -#: doc/guix.texi:18218 -msgid "" -"This daemon is not used directly by libvirt client applications, rather it " -"is called on their behalf by @code{libvirtd}. By maintaining the logs in a " -"standalone daemon, the main @code{libvirtd} daemon can be restarted without " -"risk of losing logs. The @code{virtlogd} daemon has the ability to re-" -"exec() itself upon receiving @code{SIGUSR1}, to allow live upgrades without " -"downtime." +#: doc/guix.texi:18702 +msgid "This daemon is not used directly by libvirt client applications, rather it is called on their behalf by @code{libvirtd}. By maintaining the logs in a standalone daemon, the main @code{libvirtd} daemon can be restarted without risk of losing logs. The @code{virtlogd} daemon has the ability to re-exec() itself upon receiving @code{SIGUSR1}, to allow live upgrades without downtime." msgstr "" #. type: deffn -#: doc/guix.texi:18219 +#: doc/guix.texi:18703 #, no-wrap msgid "{Scheme Variable} virtlog-service-type" msgstr "" #. type: deffn -#: doc/guix.texi:18222 -msgid "" -"This is the type of the virtlog daemon. Its value must be a @code{virtlog-" -"configuration}." +#: doc/guix.texi:18706 +msgid "This is the type of the virtlog daemon. Its value must be a @code{virtlog-configuration}." msgstr "" #. type: example -#: doc/guix.texi:18227 +#: doc/guix.texi:18711 #, no-wrap msgid "" "(service virtlog-service-type\n" @@ -40316,110 +33888,102 @@ msgid "" msgstr "" #. type: deftypevr -#: doc/guix.texi:18230 +#: doc/guix.texi:18714 #, no-wrap msgid "{@code{virtlog-configuration} parameter} integer log-level" msgstr "" #. type: deftypevr -#: doc/guix.texi:18237 +#: doc/guix.texi:18721 #, no-wrap msgid "{@code{virtlog-configuration} parameter} string log-filters" msgstr "" #. type: deftypevr -#: doc/guix.texi:18282 +#: doc/guix.texi:18766 #, no-wrap msgid "{@code{virtlog-configuration} parameter} string log-outputs" msgstr "" #. type: deftypevr -#: doc/guix.texi:18327 +#: doc/guix.texi:18811 #, no-wrap msgid "{@code{virtlog-configuration} parameter} integer max-clients" msgstr "" #. type: deftypevr -#: doc/guix.texi:18332 +#: doc/guix.texi:18816 msgid "Defaults to @samp{1024}." msgstr "" #. type: deftypevr -#: doc/guix.texi:18335 +#: doc/guix.texi:18819 #, no-wrap msgid "{@code{virtlog-configuration} parameter} integer max-size" msgstr "" #. type: deftypevr -#: doc/guix.texi:18337 +#: doc/guix.texi:18821 msgid "Maximum file size before rolling over." msgstr "" #. type: deftypevr -#: doc/guix.texi:18339 +#: doc/guix.texi:18823 msgid "Defaults to @samp{2MB}" msgstr "" #. type: deftypevr -#: doc/guix.texi:18342 +#: doc/guix.texi:18826 #, no-wrap msgid "{@code{virtlog-configuration} parameter} integer max-backups" msgstr "" #. type: deftypevr -#: doc/guix.texi:18344 +#: doc/guix.texi:18828 msgid "Maximum number of backup files to keep." msgstr "" #. type: deftypevr -#: doc/guix.texi:18346 +#: doc/guix.texi:18830 msgid "Defaults to @samp{3}" msgstr "" #. type: subsubheading -#: doc/guix.texi:18349 +#: doc/guix.texi:18833 #, no-wrap msgid "Transparent Emulation with QEMU" msgstr "" #. type: cindex -#: doc/guix.texi:18351 +#: doc/guix.texi:18835 #, no-wrap msgid "emulation" msgstr "" #. type: code{#1} -#: doc/guix.texi:18352 +#: doc/guix.texi:18836 #, no-wrap msgid "binfmt_misc" msgstr "" #. type: Plain text -#: doc/guix.texi:18358 -msgid "" -"@code{qemu-binfmt-service-type} provides support for transparent emulation " -"of program binaries built for different architectures---e.g., it allows you " -"to transparently execute an ARMv7 program on an x86_64 machine. It achieves " -"this by combining the @uref{https://www.qemu.org, QEMU} emulator and the " -"@code{binfmt_misc} feature of the kernel Linux." +#: doc/guix.texi:18842 +msgid "@code{qemu-binfmt-service-type} provides support for transparent emulation of program binaries built for different architectures---e.g., it allows you to transparently execute an ARMv7 program on an x86_64 machine. It achieves this by combining the @uref{https://www.qemu.org, QEMU} emulator and the @code{binfmt_misc} feature of the kernel Linux." msgstr "" #. type: defvr -#: doc/guix.texi:18359 +#: doc/guix.texi:18843 #, no-wrap msgid "{Scheme Variable} qemu-binfmt-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:18364 -msgid "" -"This is the type of the QEMU/binfmt service for transparent emulation. Its " -"value must be a @code{qemu-binfmt-configuration} object, which specifies the " -"QEMU package to use as well as the architecture we want to emulated:" +#: doc/guix.texi:18848 +msgid "This is the type of the QEMU/binfmt service for transparent emulation. Its value must be a @code{qemu-binfmt-configuration} object, which specifies the QEMU package to use as well as the architecture we want to emulated:" msgstr "" #. type: example -#: doc/guix.texi:18369 +#: doc/guix.texi:18853 #, no-wrap msgid "" "(service qemu-binfmt-service-type\n" @@ -40428,63 +33992,50 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:18375 -msgid "" -"In this example, we enable transparent emulation for the ARM and aarch64 " -"platforms. Running @code{herd stop qemu-binfmt} turns it off, and running " -"@code{herd start qemu-binfmt} turns it back on (@pxref{Invoking herd, the " -"@command{herd} command,, shepherd, The GNU Shepherd Manual})." +#: doc/guix.texi:18859 +msgid "In this example, we enable transparent emulation for the ARM and aarch64 platforms. Running @code{herd stop qemu-binfmt} turns it off, and running @code{herd start qemu-binfmt} turns it back on (@pxref{Invoking herd, the @command{herd} command,, shepherd, The GNU Shepherd Manual})." msgstr "" #. type: deftp -#: doc/guix.texi:18377 +#: doc/guix.texi:18861 #, no-wrap msgid "{Data Type} qemu-binfmt-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:18379 +#: doc/guix.texi:18863 msgid "This is the configuration for the @code{qemu-binfmt} service." msgstr "" #. type: item -#: doc/guix.texi:18381 +#: doc/guix.texi:18865 #, no-wrap msgid "@code{platforms} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:18384 -msgid "" -"The list of emulated QEMU platforms. Each item must be a @dfn{platform " -"object} as returned by @code{lookup-qemu-platforms} (see below)." +#: doc/guix.texi:18868 +msgid "The list of emulated QEMU platforms. Each item must be a @dfn{platform object} as returned by @code{lookup-qemu-platforms} (see below)." msgstr "" #. type: item -#: doc/guix.texi:18385 +#: doc/guix.texi:18869 #, no-wrap msgid "@code{guix-support?} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:18391 -msgid "" -"When it is true, QEMU and all its dependencies are added to the build " -"environment of @command{guix-daemon} (@pxref{Invoking guix-daemon, @code{--" -"chroot-directory} option}). This allows the @code{binfmt_misc} handlers to " -"be used within the build environment, which in turn means that you can " -"transparently build programs for another architecture." +#: doc/guix.texi:18875 +msgid "When it is true, QEMU and all its dependencies are added to the build environment of @command{guix-daemon} (@pxref{Invoking guix-daemon, @code{--chroot-directory} option}). This allows the @code{binfmt_misc} handlers to be used within the build environment, which in turn means that you can transparently build programs for another architecture." msgstr "" #. type: table -#: doc/guix.texi:18394 -msgid "" -"For example, let's suppose you're on an x86_64 machine and you have this " -"service:" +#: doc/guix.texi:18878 +msgid "For example, let's suppose you're on an x86_64 machine and you have this service:" msgstr "" #. type: example -#: doc/guix.texi:18400 +#: doc/guix.texi:18884 #, no-wrap msgid "" "(service qemu-binfmt-service-type\n" @@ -40494,323 +34045,262 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:18403 +#: doc/guix.texi:18887 msgid "You can run:" msgstr "" #. type: example -#: doc/guix.texi:18406 +#: doc/guix.texi:18890 #, no-wrap msgid "guix build -s armhf-linux inkscape\n" msgstr "" #. type: table -#: doc/guix.texi:18413 -msgid "" -"and it will build Inkscape for ARMv7 @emph{as if it were a native build}, " -"transparently using QEMU to emulate the ARMv7 CPU. Pretty handy if you'd " -"like to test a package build for an architecture you don't have access to!" +#: doc/guix.texi:18897 +msgid "and it will build Inkscape for ARMv7 @emph{as if it were a native build}, transparently using QEMU to emulate the ARMv7 CPU. Pretty handy if you'd like to test a package build for an architecture you don't have access to!" msgstr "" #. type: item -#: doc/guix.texi:18414 +#: doc/guix.texi:18898 #, no-wrap msgid "@code{qemu} (default: @code{qemu})" msgstr "" #. type: table -#: doc/guix.texi:18416 +#: doc/guix.texi:18900 msgid "The QEMU package to use." msgstr "" #. type: deffn -#: doc/guix.texi:18419 +#: doc/guix.texi:18903 #, no-wrap msgid "{Scheme Procedure} lookup-qemu-platforms @var{platforms}@dots{}" msgstr "" #. type: deffn -#: doc/guix.texi:18424 -msgid "" -"Return the list of QEMU platform objects corresponding to @var{platforms}" -"@dots{}. @var{platforms} must be a list of strings corresponding to " -"platform names, such as @code{\"arm\"}, @code{\"sparc\"}, @code{\"mips64el" -"\"}, and so on." +#: doc/guix.texi:18908 +msgid "Return the list of QEMU platform objects corresponding to @var{platforms}@dots{}. @var{platforms} must be a list of strings corresponding to platform names, such as @code{\"arm\"}, @code{\"sparc\"}, @code{\"mips64el\"}, and so on." msgstr "" #. type: deffn -#: doc/guix.texi:18426 +#: doc/guix.texi:18910 #, no-wrap msgid "{Scheme Procedure} qemu-platform? @var{obj}" msgstr "" #. type: deffn -#: doc/guix.texi:18428 +#: doc/guix.texi:18912 msgid "Return true if @var{obj} is a platform object." msgstr "" #. type: deffn -#: doc/guix.texi:18430 +#: doc/guix.texi:18914 #, no-wrap msgid "{Scheme Procedure} qemu-platform-name @var{platform}" msgstr "" #. type: deffn -#: doc/guix.texi:18432 +#: doc/guix.texi:18916 msgid "Return the name of @var{platform}---a string such as @code{\"arm\"}." msgstr "" #. type: Plain text -#: doc/guix.texi:18444 -msgid "" -"The @code{(gnu services version-control)} module provides a service to allow " -"remote access to local Git repositories. There are three options: the " -"@code{git-daemon-service}, which provides access to repositories via the " -"@code{git://} unsecured TCP-based protocol, extending the @code{nginx} web " -"server to proxy some requests to @code{git-http-backend}, or providing a web " -"interface with @code{cgit-service-type}." +#: doc/guix.texi:18928 +msgid "The @code{(gnu services version-control)} module provides a service to allow remote access to local Git repositories. There are three options: the @code{git-daemon-service}, which provides access to repositories via the @code{git://} unsecured TCP-based protocol, extending the @code{nginx} web server to proxy some requests to @code{git-http-backend}, or providing a web interface with @code{cgit-service-type}." msgstr "" #. type: deffn -#: doc/guix.texi:18445 +#: doc/guix.texi:18929 #, no-wrap msgid "{Scheme Procedure} git-daemon-service [#:config (git-daemon-configuration)]" msgstr "" #. type: deffn -#: doc/guix.texi:18449 -msgid "" -"Return a service that runs @command{git daemon}, a simple TCP server to " -"expose repositories over the Git protocol for anonymous access." +#: doc/guix.texi:18933 +msgid "Return a service that runs @command{git daemon}, a simple TCP server to expose repositories over the Git protocol for anonymous access." msgstr "" #. type: deffn -#: doc/guix.texi:18455 -msgid "" -"The optional @var{config} argument should be a @code{} object, by default it allows read-only access to " -"exported@footnote{By creating the magic file \"git-daemon-export-ok\" in the " -"repository directory.} repositories under @file{/srv/git}." +#: doc/guix.texi:18939 +msgid "The optional @var{config} argument should be a @code{} object, by default it allows read-only access to exported@footnote{By creating the magic file \"git-daemon-export-ok\" in the repository directory.} repositories under @file{/srv/git}." msgstr "" #. type: deftp -#: doc/guix.texi:18458 +#: doc/guix.texi:18942 #, no-wrap msgid "{Data Type} git-daemon-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:18460 +#: doc/guix.texi:18944 msgid "Data type representing the configuration for @code{git-daemon-service}." msgstr "" #. type: item -#: doc/guix.texi:18462 doc/guix.texi:18518 +#: doc/guix.texi:18946 doc/guix.texi:19002 #, no-wrap msgid "@code{package} (default: @var{git})" msgstr "" #. type: table -#: doc/guix.texi:18464 doc/guix.texi:18520 +#: doc/guix.texi:18948 doc/guix.texi:19004 msgid "Package object of the Git distributed version control system." msgstr "" #. type: item -#: doc/guix.texi:18465 doc/guix.texi:18524 +#: doc/guix.texi:18949 doc/guix.texi:19008 #, no-wrap msgid "@code{export-all?} (default: @var{#f})" msgstr "" #. type: table -#: doc/guix.texi:18468 -msgid "" -"Whether to allow access for all Git repositories, even if they do not have " -"the @file{git-daemon-export-ok} file." +#: doc/guix.texi:18952 +msgid "Whether to allow access for all Git repositories, even if they do not have the @file{git-daemon-export-ok} file." msgstr "" #. type: item -#: doc/guix.texi:18469 +#: doc/guix.texi:18953 #, no-wrap msgid "@code{base-path} (default: @file{/srv/git})" msgstr "" #. type: table -#: doc/guix.texi:18474 -msgid "" -"Whether to remap all the path requests as relative to the given path. If " -"you run git daemon with @var{(base-path \"/srv/git\")} on example.com, then " -"if you later try to pull @code{git://example.com/hello.git}, git daemon will " -"interpret the path as @code{/srv/git/hello.git}." +#: doc/guix.texi:18958 +msgid "Whether to remap all the path requests as relative to the given path. If you run git daemon with @var{(base-path \"/srv/git\")} on example.com, then if you later try to pull @code{git://example.com/hello.git}, git daemon will interpret the path as @code{/srv/git/hello.git}." msgstr "" #. type: item -#: doc/guix.texi:18475 +#: doc/guix.texi:18959 #, no-wrap msgid "@code{user-path} (default: @var{#f})" msgstr "" #. type: table -#: doc/guix.texi:18482 -msgid "" -"Whether to allow @code{~user} notation to be used in requests. When " -"specified with empty string, requests to @code{git://host/~alice/foo} is " -"taken as a request to access @code{foo} repository in the home directory of " -"user @code{alice}. If @var{(user-path \"path\")} is specified, the same " -"request is taken as a request to access @code{path/foo} repository in the " -"home directory of user @code{alice}." +#: doc/guix.texi:18966 +msgid "Whether to allow @code{~user} notation to be used in requests. When specified with empty string, requests to @code{git://host/~alice/foo} is taken as a request to access @code{foo} repository in the home directory of user @code{alice}. If @var{(user-path \"path\")} is specified, the same request is taken as a request to access @code{path/foo} repository in the home directory of user @code{alice}." msgstr "" #. type: item -#: doc/guix.texi:18483 +#: doc/guix.texi:18967 #, no-wrap msgid "@code{listen} (default: @var{'()})" msgstr "" #. type: table -#: doc/guix.texi:18486 -msgid "" -"Whether to listen on specific IP addresses or hostnames, defaults to all." +#: doc/guix.texi:18970 +msgid "Whether to listen on specific IP addresses or hostnames, defaults to all." msgstr "" #. type: item -#: doc/guix.texi:18487 +#: doc/guix.texi:18971 #, no-wrap msgid "@code{port} (default: @var{#f})" msgstr "" #. type: table -#: doc/guix.texi:18489 +#: doc/guix.texi:18973 msgid "Whether to listen on an alternative port, which defaults to 9418." msgstr "" #. type: item -#: doc/guix.texi:18490 +#: doc/guix.texi:18974 #, no-wrap msgid "@code{whitelist} (default: @var{'()})" msgstr "" #. type: table -#: doc/guix.texi:18492 +#: doc/guix.texi:18976 msgid "If not empty, only allow access to this list of directories." msgstr "" #. type: item -#: doc/guix.texi:18493 +#: doc/guix.texi:18977 #, no-wrap msgid "@code{extra-options} (default: @var{'()})" msgstr "" #. type: table -#: doc/guix.texi:18496 -msgid "" -"Extra options will be passed to @code{git daemon}, please run @command{man " -"git-daemon} for more information." +#: doc/guix.texi:18980 +msgid "Extra options will be passed to @code{git daemon}, please run @command{man git-daemon} for more information." msgstr "" #. type: Plain text -#: doc/guix.texi:18510 -msgid "" -"The @code{git://} protocol lacks authentication. When you pull from a " -"repository fetched via @code{git://}, you don't know that the data you " -"receive was modified is really coming from the specified host, and you have " -"your connection is subject to eavesdropping. It's better to use an " -"authenticated and encrypted transport, such as @code{https}. Although Git " -"allows you to serve repositories using unsophisticated file-based web " -"servers, there is a faster protocol implemented by the @code{git-http-" -"backend} program. This program is the back-end of a proper Git web " -"service. It is designed to sit behind a FastCGI proxy. @xref{Web " -"Services}, for more on running the necessary @code{fcgiwrap} daemon." +#: doc/guix.texi:18994 +msgid "The @code{git://} protocol lacks authentication. When you pull from a repository fetched via @code{git://}, you don't know that the data you receive was modified is really coming from the specified host, and you have your connection is subject to eavesdropping. It's better to use an authenticated and encrypted transport, such as @code{https}. Although Git allows you to serve repositories using unsophisticated file-based web servers, there is a faster protocol implemented by the @code{git-http-backend} program. This program is the back-end of a proper Git web service. It is designed to sit behind a FastCGI proxy. @xref{Web Services}, for more on running the necessary @code{fcgiwrap} daemon." msgstr "" #. type: Plain text -#: doc/guix.texi:18513 -msgid "" -"Guix has a separate configuration data type for serving Git repositories " -"over HTTP." +#: doc/guix.texi:18997 +msgid "Guix has a separate configuration data type for serving Git repositories over HTTP." msgstr "" #. type: deftp -#: doc/guix.texi:18514 +#: doc/guix.texi:18998 #, no-wrap msgid "{Data Type} git-http-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:18516 +#: doc/guix.texi:19000 msgid "Data type representing the configuration for @code{git-http-service}." msgstr "" #. type: item -#: doc/guix.texi:18521 +#: doc/guix.texi:19005 #, no-wrap msgid "@code{git-root} (default: @file{/srv/git})" msgstr "" #. type: table -#: doc/guix.texi:18523 +#: doc/guix.texi:19007 msgid "Directory containing the Git repositories to expose to the world." msgstr "" #. type: table -#: doc/guix.texi:18527 -msgid "" -"Whether to expose access for all Git repositories in @var{git-root}, even if " -"they do not have the @file{git-daemon-export-ok} file." +#: doc/guix.texi:19011 +msgid "Whether to expose access for all Git repositories in @var{git-root}, even if they do not have the @file{git-daemon-export-ok} file." msgstr "" #. type: item -#: doc/guix.texi:18528 +#: doc/guix.texi:19012 #, no-wrap msgid "@code{uri-path} (default: @file{/git/})" msgstr "" #. type: table -#: doc/guix.texi:18533 -msgid "" -"Path prefix for Git access. With the default @code{/git/} prefix, this will " -"map @code{http://@var{server}/git/@var{repo}.git} to @code{/srv/git/" -"@var{repo}.git}. Requests whose URI paths do not begin with this prefix are " -"not passed on to this Git instance." +#: doc/guix.texi:19017 +msgid "Path prefix for Git access. With the default @code{/git/} prefix, this will map @code{http://@var{server}/git/@var{repo}.git} to @code{/srv/git/@var{repo}.git}. Requests whose URI paths do not begin with this prefix are not passed on to this Git instance." msgstr "" #. type: item -#: doc/guix.texi:18534 +#: doc/guix.texi:19018 #, no-wrap msgid "@code{fcgiwrap-socket} (default: @code{127.0.0.1:9000})" msgstr "" #. type: table -#: doc/guix.texi:18537 -msgid "" -"The socket on which the @code{fcgiwrap} daemon is listening. @xref{Web " -"Services}." +#: doc/guix.texi:19021 +msgid "The socket on which the @code{fcgiwrap} daemon is listening. @xref{Web Services}." msgstr "" #. type: Plain text -#: doc/guix.texi:18544 -msgid "" -"There is no @code{git-http-service-type}, currently; instead you can create " -"an @code{nginx-location-configuration} from a @code{git-http-configuration} " -"and then add that location to a web server." +#: doc/guix.texi:19028 +msgid "There is no @code{git-http-service-type}, currently; instead you can create an @code{nginx-location-configuration} from a @code{git-http-configuration} and then add that location to a web server." msgstr "" #. type: deffn -#: doc/guix.texi:18545 +#: doc/guix.texi:19029 #, no-wrap msgid "{Scheme Procedure} git-http-nginx-location-configuration @" msgstr "" #. type: deffn -#: doc/guix.texi:18550 -msgid "" -"[config=(git-http-configuration)] Compute an @code{nginx-location-" -"configuration} that corresponds to the given Git http configuration. An " -"example nginx service definition to serve the default @file{/srv/git} over " -"HTTPS might be:" +#: doc/guix.texi:19034 +msgid "[config=(git-http-configuration)] Compute an @code{nginx-location-configuration} that corresponds to the given Git http configuration. An example nginx service definition to serve the default @file{/srv/git} over HTTPS might be:" msgstr "" #. type: example -#: doc/guix.texi:18567 +#: doc/guix.texi:19051 #, no-wrap msgid "" "(service nginx-service-type\n" @@ -40831,1595 +34321,1425 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:18574 -msgid "" -"This example assumes that you are using Let's Encrypt to get your TLS " -"certificate. @xref{Certificate Services}. The default @code{certbot} " -"service will redirect all HTTP traffic on @code{git.my-host.org} to HTTPS. " -"You will also need to add an @code{fcgiwrap} proxy to your system services. " -"@xref{Web Services}." +#: doc/guix.texi:19058 +msgid "This example assumes that you are using Let's Encrypt to get your TLS certificate. @xref{Certificate Services}. The default @code{certbot} service will redirect all HTTP traffic on @code{git.my-host.org} to HTTPS. You will also need to add an @code{fcgiwrap} proxy to your system services. @xref{Web Services}." msgstr "" #. type: subsubheading -#: doc/guix.texi:18576 +#: doc/guix.texi:19060 #, no-wrap msgid "Cgit Service" msgstr "" #. type: cindex -#: doc/guix.texi:18578 +#: doc/guix.texi:19062 #, no-wrap msgid "Cgit service" msgstr "" #. type: cindex -#: doc/guix.texi:18579 +#: doc/guix.texi:19063 #, no-wrap msgid "Git, web interface" msgstr "" #. type: Plain text -#: doc/guix.texi:18582 -msgid "" -"@uref{https://git.zx2c4.com/cgit/, Cgit} is a web frontend for Git " -"repositories written in C." +#: doc/guix.texi:19066 +msgid "@uref{https://git.zx2c4.com/cgit/, Cgit} is a web frontend for Git repositories written in C." msgstr "" #. type: Plain text -#: doc/guix.texi:18585 -msgid "" -"The following example will configure the service with default values. By " -"default, Cgit can be accessed on port 80 (@code{http://localhost:80})." +#: doc/guix.texi:19069 +msgid "The following example will configure the service with default values. By default, Cgit can be accessed on port 80 (@code{http://localhost:80})." msgstr "" #. type: example -#: doc/guix.texi:18588 +#: doc/guix.texi:19072 #, no-wrap msgid "(service cgit-service-type)\n" msgstr "" #. type: Plain text -#: doc/guix.texi:18592 -msgid "" -"The @code{file-object} type designates either a file-like object (@pxref{G-" -"Expressions, file-like objects}) or a string." +#: doc/guix.texi:19076 +msgid "The @code{file-object} type designates either a file-like object (@pxref{G-Expressions, file-like objects}) or a string." msgstr "" #. type: Plain text -#: doc/guix.texi:18596 +#: doc/guix.texi:19080 msgid "Available @code{cgit-configuration} fields are:" msgstr "" -#. type: deftypevr -#: doc/guix.texi:18597 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} package package" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18599 -msgid "The CGIT package." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18602 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} nginx-server-configuration-list nginx" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18604 -msgid "NGINX configuration." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18607 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object about-filter" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18610 -msgid "" -"Specifies a command which will be invoked to format the content of about " -"pages (both top-level and for each repository)." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18615 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string agefile" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18618 -msgid "" -"Specifies a path, relative to each repository path, which can be used to " -"specify the date and time of the youngest commit in the repository." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18623 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object auth-filter" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18626 -msgid "" -"Specifies a command that will be invoked for authenticating repository " -"access." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18631 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string branch-sort" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18634 -msgid "" -"Flag which, when set to @samp{age}, enables date ordering in the branch ref " -"list, and when set @samp{name} enables ordering by branch name." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18636 -msgid "Defaults to @samp{\"name\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18639 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string cache-root" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18641 -msgid "Path used to store the cgit cache entries." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18643 -msgid "Defaults to @samp{\"/var/cache/cgit\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18646 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-static-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18649 -msgid "" -"Number which specifies the time-to-live, in minutes, for the cached version " -"of repository pages accessed with a fixed SHA1." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18651 doc/guix.texi:19094 -msgid "Defaults to @samp{-1}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18654 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-dynamic-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18657 -msgid "" -"Number which specifies the time-to-live, in minutes, for the cached version " -"of repository pages accessed without a fixed SHA1." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18662 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-repo-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18665 -msgid "" -"Number which specifies the time-to-live, in minutes, for the cached version " -"of the repository summary page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18670 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-root-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18673 -msgid "" -"Number which specifies the time-to-live, in minutes, for the cached version " -"of the repository index page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18678 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-scanrc-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18681 -msgid "" -"Number which specifies the time-to-live, in minutes, for the result of " -"scanning a path for Git repositories." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18686 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-about-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18689 -msgid "" -"Number which specifies the time-to-live, in minutes, for the cached version " -"of the repository about page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18694 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-snapshot-ttl" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18697 -msgid "" -"Number which specifies the time-to-live, in minutes, for the cached version " -"of snapshots." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18702 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer cache-size" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18705 -msgid "" -"The maximum number of entries in the cgit cache. When set to @samp{0}, " -"caching is disabled." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18710 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean case-sensitive-sort?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18712 -msgid "Sort items in the repo list case sensitively." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18717 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} list clone-prefix" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18720 -msgid "" -"List of common prefixes which, when combined with a repository URL, " -"generates valid clone URLs for the repository." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18725 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} list clone-url" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18727 -msgid "List of @code{clone-url} templates." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18732 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object commit-filter" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18734 -msgid "Command which will be invoked to format commit messages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18739 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string commit-sort" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18743 doc/guix.texi:19301 -msgid "" -"Flag which, when set to @samp{date}, enables strict date ordering in the " -"commit log, and when set to @samp{topo} enables strict topological ordering." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18745 -msgid "Defaults to @samp{\"git log\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18748 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object css" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18750 -msgid "URL which specifies the css document to include in all cgit pages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18752 -msgid "Defaults to @samp{\"/share/cgit/cgit.css\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18755 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object email-filter" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18759 -msgid "" -"Specifies a command which will be invoked to format names and email address " -"of committers, authors, and taggers, as represented in various places " -"throughout the cgit interface." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18764 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean embedded?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18767 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit generate a HTML fragment " -"suitable for embedding in other HTML pages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18772 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-commit-graph?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18776 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit print an ASCII-art commit " -"history graph to the left of the commit messages in the repository log page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18781 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-filter-overrides?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18784 -msgid "" -"Flag which, when set to @samp{#t}, allows all filter settings to be " -"overridden in repository-specific cgitrc files." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18789 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-follow-links?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18792 -msgid "" -"Flag which, when set to @samp{#t}, allows users to follow a file in the log " -"view." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18797 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-http-clone?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18800 -msgid "" -"If set to @samp{#t}, cgit will act as an dumb HTTP endpoint for Git clones." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18805 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-index-links?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18808 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit generate extra links " -"\"summary\", \"commit\", \"tree\" for each repo in the repository index." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18813 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-index-owner?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18816 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit display the owner of each " -"repo in the repository index." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18821 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-log-filecount?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18824 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit print the number of " -"modified files for each commit on the repository log page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18829 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-log-linecount?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18832 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit print the number of added " -"and removed lines for each commit on the repository log page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18837 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-remote-branches?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18840 doc/guix.texi:19364 -msgid "" -"Flag which, when set to @code{#t}, will make cgit display remote branches in " -"the summary and refs views." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18845 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-subject-links?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18849 -msgid "" -"Flag which, when set to @code{1}, will make cgit use the subject of the " -"parent commit as link text when generating links to parent commits in commit " -"view." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18854 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-html-serving?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18858 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit use the subject of the " -"parent commit as link text when generating links to parent commits in commit " -"view." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18863 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-tree-linenumbers?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18866 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit generate linenumber links " -"for plaintext blobs printed in the tree view." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18871 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean enable-git-config?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18874 -msgid "" -"Flag which, when set to @samp{#f}, will allow cgit to use Git config to set " -"any repo specific settings." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18879 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object favicon" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18881 -msgid "URL used as link to a shortcut icon for cgit." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18883 -msgid "Defaults to @samp{\"/favicon.ico\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18886 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string footer" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18890 -msgid "" -"The content of the file specified with this option will be included verbatim " -"at the bottom of all pages (i.e. it replaces the standard \"generated by..." -"\" message)." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18895 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string head-include" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18898 -msgid "" -"The content of the file specified with this option will be included verbatim " -"in the HTML HEAD section on all pages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18903 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string header" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18906 -msgid "" -"The content of the file specified with this option will be included verbatim " -"at the top of all pages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18911 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object include" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18914 -msgid "" -"Name of a configfile to include before the rest of the current config- file " -"is parsed." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18919 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string index-header" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18922 -msgid "" -"The content of the file specified with this option will be included verbatim " -"above the repository index." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18927 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string index-info" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18930 -msgid "" -"The content of the file specified with this option will be included verbatim " -"below the heading on the repository index page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18935 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean local-time?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18938 -msgid "" -"Flag which, if set to @samp{#t}, makes cgit print commit and tag times in " -"the servers timezone." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18943 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object logo" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18946 -msgid "" -"URL which specifies the source of an image which will be used as a logo on " -"all cgit pages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18948 -msgid "Defaults to @samp{\"/share/cgit/cgit.png\"}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18951 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string logo-link" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18953 doc/guix.texi:19410 -msgid "URL loaded when clicking on the cgit logo image." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18958 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object owner-filter" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18961 -msgid "" -"Command which will be invoked to format the Owner column of the main page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18966 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer max-atom-items" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18968 -msgid "Number of items to display in atom feeds view." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18970 doc/guix.texi:19205 doc/guix.texi:19213 -#: doc/guix.texi:19221 -msgid "Defaults to @samp{10}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18973 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer max-commit-count" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18975 -msgid "Number of entries to list per page in \"log\" view." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18977 doc/guix.texi:18992 -msgid "Defaults to @samp{50}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18980 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer max-message-length" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18982 -msgid "Number of commit message characters to display in \"log\" view." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18984 doc/guix.texi:19000 -msgid "Defaults to @samp{80}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18987 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer max-repo-count" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18990 -msgid "" -"Specifies the number of entries to list per page on the repository index " -"page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18995 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer max-repodesc-length" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:18998 -msgid "" -"Specifies the maximum number of repo description characters to display on " -"the repository index page." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19003 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} integer max-blob-size" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19005 -msgid "Specifies the maximum size of a blob to display HTML for in KBytes." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19010 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string max-stats" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19013 -msgid "" -"Maximum statistics period. Valid values are @samp{week},@samp{month}, " -"@samp{quarter} and @samp{year}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19018 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} mimetype-alist mimetype" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19020 -msgid "Mimetype for the specified filename extension." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19024 -msgid "" -"Defaults to @samp{((gif \"image/gif\") (html \"text/html\") (jpg \"image/jpeg" -"\") (jpeg \"image/jpeg\") (pdf \"application/pdf\") (png \"image/png\") (svg " -"\"image/svg+xml\"))}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19027 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object mimetype-file" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19029 -msgid "Specifies the file to use for automatic mimetype lookup." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19034 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} string module-link" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19037 -msgid "" -"Text which will be used as the formatstring for a hyperlink when a submodule " -"is printed in a directory listing." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19042 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean nocache?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19044 -msgid "If set to the value @samp{#t} caching will be disabled." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19049 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean noplainemail?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19052 -msgid "" -"If set to @samp{#t} showing full author email addresses will be disabled." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19057 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean noheader?" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19060 -msgid "" -"Flag which, when set to @samp{#t}, will make cgit omit the standard header " -"on all pages." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19065 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} list project-list" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19069 -msgid "" -"A list of subdirectories inside of @code{repository-directory}, relative to " -"it, that should loaded as Git repositories. An empty list means that all " -"subdirectories will be loaded." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19074 -#, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object readme" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19076 -msgid "Text which will be used as default value for @code{cgit-repo-readme}." -msgstr "" - #. type: deftypevr #: doc/guix.texi:19081 #, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean remove-suffix?" +msgid "{@code{cgit-configuration} parameter} package package" msgstr "" #. type: deftypevr -#: doc/guix.texi:19085 -msgid "" -"If set to @code{#t} and @code{repository-directory} is enabled, if any " -"repositories are found with a suffix of @code{.git}, this suffix will be " -"removed for the URL and name." +#: doc/guix.texi:19083 +msgid "The CGIT package." msgstr "" #. type: deftypevr -#: doc/guix.texi:19090 +#: doc/guix.texi:19086 #, no-wrap -msgid "{@code{cgit-configuration} parameter} integer renamelimit" +msgid "{@code{cgit-configuration} parameter} nginx-server-configuration-list nginx" msgstr "" #. type: deftypevr -#: doc/guix.texi:19092 -msgid "Maximum number of files to consider when detecting renames." +#: doc/guix.texi:19088 +msgid "NGINX configuration." msgstr "" #. type: deftypevr -#: doc/guix.texi:19097 +#: doc/guix.texi:19091 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string repository-sort" +msgid "{@code{cgit-configuration} parameter} file-object about-filter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19094 +msgid "Specifies a command which will be invoked to format the content of about pages (both top-level and for each repository)." msgstr "" #. type: deftypevr #: doc/guix.texi:19099 -msgid "The way in which repositories in each section are sorted." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19104 #, no-wrap -msgid "{@code{cgit-configuration} parameter} robots-list robots" +msgid "{@code{cgit-configuration} parameter} string agefile" msgstr "" #. type: deftypevr -#: doc/guix.texi:19106 -msgid "Text used as content for the @code{robots} meta-tag." +#: doc/guix.texi:19102 +msgid "Specifies a path, relative to each repository path, which can be used to specify the date and time of the youngest commit in the repository." msgstr "" #. type: deftypevr -#: doc/guix.texi:19108 -msgid "Defaults to @samp{(\"noindex\" \"nofollow\")}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19111 +#: doc/guix.texi:19107 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string root-desc" +msgid "{@code{cgit-configuration} parameter} file-object auth-filter" msgstr "" #. type: deftypevr -#: doc/guix.texi:19113 -msgid "Text printed below the heading on the repository index page." +#: doc/guix.texi:19110 +msgid "Specifies a command that will be invoked for authenticating repository access." msgstr "" #. type: deftypevr #: doc/guix.texi:19115 -msgid "Defaults to @samp{\"a fast webinterface for the git dscm\"}." +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string branch-sort" msgstr "" #. type: deftypevr #: doc/guix.texi:19118 +msgid "Flag which, when set to @samp{age}, enables date ordering in the branch ref list, and when set @samp{name} enables ordering by branch name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19120 +msgid "Defaults to @samp{\"name\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19123 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string root-readme" +msgid "{@code{cgit-configuration} parameter} string cache-root" msgstr "" #. type: deftypevr -#: doc/guix.texi:19121 -msgid "" -"The content of the file specified with this option will be included verbatim " -"below thef \"about\" link on the repository index page." +#: doc/guix.texi:19125 +msgid "Path used to store the cgit cache entries." msgstr "" #. type: deftypevr -#: doc/guix.texi:19126 +#: doc/guix.texi:19127 +msgid "Defaults to @samp{\"/var/cache/cgit\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19130 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string root-title" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19128 -msgid "Text printed as heading on the repository index page." +msgid "{@code{cgit-configuration} parameter} integer cache-static-ttl" msgstr "" #. type: deftypevr #: doc/guix.texi:19133 +msgid "Number which specifies the time-to-live, in minutes, for the cached version of repository pages accessed with a fixed SHA1." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19135 doc/guix.texi:19578 +msgid "Defaults to @samp{-1}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19138 #, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean scan-hidden-path" +msgid "{@code{cgit-configuration} parameter} integer cache-dynamic-ttl" msgstr "" #. type: deftypevr -#: doc/guix.texi:19139 -msgid "" -"If set to @samp{#t} and repository-directory is enabled, repository-" -"directory will recurse into directories whose name starts with a period. " -"Otherwise, repository-directory will stay away from such directories, " -"considered as \"hidden\". Note that this does not apply to the \".git\" " -"directory in non-bare repos." +#: doc/guix.texi:19141 +msgid "Number which specifies the time-to-live, in minutes, for the cached version of repository pages accessed without a fixed SHA1." msgstr "" #. type: deftypevr -#: doc/guix.texi:19144 +#: doc/guix.texi:19146 #, no-wrap -msgid "{@code{cgit-configuration} parameter} list snapshots" +msgid "{@code{cgit-configuration} parameter} integer cache-repo-ttl" msgstr "" #. type: deftypevr -#: doc/guix.texi:19147 -msgid "" -"Text which specifies the default set of snapshot formats that cgit generates " -"links for." +#: doc/guix.texi:19149 +msgid "Number which specifies the time-to-live, in minutes, for the cached version of the repository summary page." msgstr "" #. type: deftypevr -#: doc/guix.texi:19152 +#: doc/guix.texi:19154 #, no-wrap -msgid "{@code{cgit-configuration} parameter} repository-directory repository-directory" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19155 -msgid "" -"Name of the directory to scan for repositories (represents @code{scan-path})." +msgid "{@code{cgit-configuration} parameter} integer cache-root-ttl" msgstr "" #. type: deftypevr #: doc/guix.texi:19157 -msgid "Defaults to @samp{\"/srv/git\"}." +msgid "Number which specifies the time-to-live, in minutes, for the cached version of the repository index page." msgstr "" #. type: deftypevr -#: doc/guix.texi:19160 +#: doc/guix.texi:19162 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string section" +msgid "{@code{cgit-configuration} parameter} integer cache-scanrc-ttl" msgstr "" #. type: deftypevr -#: doc/guix.texi:19163 doc/guix.texi:19479 -msgid "" -"The name of the current repository section - all repositories defined after " -"this option will inherit the current section name." +#: doc/guix.texi:19165 +msgid "Number which specifies the time-to-live, in minutes, for the result of scanning a path for Git repositories." msgstr "" #. type: deftypevr -#: doc/guix.texi:19168 +#: doc/guix.texi:19170 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string section-sort" +msgid "{@code{cgit-configuration} parameter} integer cache-about-ttl" msgstr "" #. type: deftypevr -#: doc/guix.texi:19171 -msgid "" -"Flag which, when set to @samp{1}, will sort the sections on the repository " -"listing by name." +#: doc/guix.texi:19173 +msgid "Number which specifies the time-to-live, in minutes, for the cached version of the repository about page." msgstr "" #. type: deftypevr -#: doc/guix.texi:19176 +#: doc/guix.texi:19178 #, no-wrap -msgid "{@code{cgit-configuration} parameter} integer section-from-path" +msgid "{@code{cgit-configuration} parameter} integer cache-snapshot-ttl" msgstr "" #. type: deftypevr -#: doc/guix.texi:19179 -msgid "" -"A number which, if defined prior to repository-directory, specifies how many " -"path elements from each repo path to use as a default section name." +#: doc/guix.texi:19181 +msgid "Number which specifies the time-to-live, in minutes, for the cached version of snapshots." msgstr "" #. type: deftypevr -#: doc/guix.texi:19184 +#: doc/guix.texi:19186 #, no-wrap -msgid "{@code{cgit-configuration} parameter} boolean side-by-side-diffs?" +msgid "{@code{cgit-configuration} parameter} integer cache-size" msgstr "" #. type: deftypevr -#: doc/guix.texi:19187 -msgid "" -"If set to @samp{#t} shows side-by-side diffs instead of unidiffs per default." +#: doc/guix.texi:19189 +msgid "The maximum number of entries in the cgit cache. When set to @samp{0}, caching is disabled." msgstr "" #. type: deftypevr -#: doc/guix.texi:19192 +#: doc/guix.texi:19194 #, no-wrap -msgid "{@code{cgit-configuration} parameter} file-object source-filter" +msgid "{@code{cgit-configuration} parameter} boolean case-sensitive-sort?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19195 -msgid "" -"Specifies a command which will be invoked to format plaintext blobs in the " -"tree view." +#: doc/guix.texi:19196 +msgid "Sort items in the repo list case sensitively." msgstr "" #. type: deftypevr -#: doc/guix.texi:19200 +#: doc/guix.texi:19201 #, no-wrap -msgid "{@code{cgit-configuration} parameter} integer summary-branches" +msgid "{@code{cgit-configuration} parameter} list clone-prefix" msgstr "" #. type: deftypevr -#: doc/guix.texi:19203 -msgid "" -"Specifies the number of branches to display in the repository \"summary\" " -"view." +#: doc/guix.texi:19204 +msgid "List of common prefixes which, when combined with a repository URL, generates valid clone URLs for the repository." msgstr "" #. type: deftypevr -#: doc/guix.texi:19208 +#: doc/guix.texi:19209 #, no-wrap -msgid "{@code{cgit-configuration} parameter} integer summary-log" +msgid "{@code{cgit-configuration} parameter} list clone-url" msgstr "" #. type: deftypevr #: doc/guix.texi:19211 -msgid "" -"Specifies the number of log entries to display in the repository \"summary\" " -"view." +msgid "List of @code{clone-url} templates." msgstr "" #. type: deftypevr #: doc/guix.texi:19216 #, no-wrap -msgid "{@code{cgit-configuration} parameter} integer summary-tags" +msgid "{@code{cgit-configuration} parameter} file-object commit-filter" msgstr "" #. type: deftypevr -#: doc/guix.texi:19219 -msgid "" -"Specifies the number of tags to display in the repository \"summary\" view." +#: doc/guix.texi:19218 +msgid "Command which will be invoked to format commit messages." msgstr "" #. type: deftypevr -#: doc/guix.texi:19224 +#: doc/guix.texi:19223 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string strict-export" +msgid "{@code{cgit-configuration} parameter} string commit-sort" msgstr "" #. type: deftypevr -#: doc/guix.texi:19227 -msgid "" -"Filename which, if specified, needs to be present within the repository for " -"cgit to allow access to that repository." +#: doc/guix.texi:19227 doc/guix.texi:19785 +msgid "Flag which, when set to @samp{date}, enables strict date ordering in the commit log, and when set to @samp{topo} enables strict topological ordering." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19229 +msgid "Defaults to @samp{\"git log\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:19232 #, no-wrap -msgid "{@code{cgit-configuration} parameter} string virtual-root" +msgid "{@code{cgit-configuration} parameter} file-object css" msgstr "" #. type: deftypevr #: doc/guix.texi:19234 -msgid "URL which, if specified, will be used as root for all cgit links." +msgid "URL which specifies the css document to include in all cgit pages." msgstr "" #. type: deftypevr #: doc/guix.texi:19236 -msgid "Defaults to @samp{\"/\"}." +msgid "Defaults to @samp{\"/share/cgit/cgit.css\"}." msgstr "" #. type: deftypevr #: doc/guix.texi:19239 #, no-wrap -msgid "{@code{cgit-configuration} parameter} repository-cgit-configuration-list repositories" +msgid "{@code{cgit-configuration} parameter} file-object email-filter" msgstr "" #. type: deftypevr -#: doc/guix.texi:19241 -msgid "A list of @dfn{cgit-repo} records to use with config." +#: doc/guix.texi:19243 +msgid "Specifies a command which will be invoked to format names and email address of committers, authors, and taggers, as represented in various places throughout the cgit interface." msgstr "" #. type: deftypevr -#: doc/guix.texi:19245 -msgid "Available @code{repository-cgit-configuration} fields are:" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19246 +#: doc/guix.texi:19248 #, no-wrap -msgid "{@code{repository-cgit-configuration} parameter} repo-list snapshots" +msgid "{@code{cgit-configuration} parameter} boolean embedded?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19249 -msgid "" -"A mask of snapshot formats for this repo that cgit generates links for, " -"restricted by the global @code{snapshots} setting." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19254 -#, no-wrap -msgid "{@code{repository-cgit-configuration} parameter} repo-file-object source-filter" +#: doc/guix.texi:19251 +msgid "Flag which, when set to @samp{#t}, will make cgit generate a HTML fragment suitable for embedding in other HTML pages." msgstr "" #. type: deftypevr #: doc/guix.texi:19256 -msgid "Override the default @code{source-filter}." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19261 #, no-wrap -msgid "{@code{repository-cgit-configuration} parameter} repo-string url" +msgid "{@code{cgit-configuration} parameter} boolean enable-commit-graph?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19263 -msgid "The relative URL used to access the repository." +#: doc/guix.texi:19260 +msgid "Flag which, when set to @samp{#t}, will make cgit print an ASCII-art commit history graph to the left of the commit messages in the repository log page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19265 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-filter-overrides?" msgstr "" #. type: deftypevr #: doc/guix.texi:19268 +msgid "Flag which, when set to @samp{#t}, allows all filter settings to be overridden in repository-specific cgitrc files." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19273 #, no-wrap -msgid "{@code{repository-cgit-configuration} parameter} repo-file-object about-filter" +msgid "{@code{cgit-configuration} parameter} boolean enable-follow-links?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19270 -msgid "Override the default @code{about-filter}." +#: doc/guix.texi:19276 +msgid "Flag which, when set to @samp{#t}, allows users to follow a file in the log view." msgstr "" #. type: deftypevr -#: doc/guix.texi:19275 +#: doc/guix.texi:19281 #, no-wrap -msgid "{@code{repository-cgit-configuration} parameter} repo-string branch-sort" +msgid "{@code{cgit-configuration} parameter} boolean enable-http-clone?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19278 -msgid "" -"Flag which, when set to @samp{age}, enables date ordering in the branch ref " -"list, and when set to @samp{name} enables ordering by branch name." +#: doc/guix.texi:19284 +msgid "If set to @samp{#t}, cgit will act as an dumb HTTP endpoint for Git clones." msgstr "" #. type: deftypevr -#: doc/guix.texi:19283 +#: doc/guix.texi:19289 #, no-wrap -msgid "{@code{repository-cgit-configuration} parameter} repo-list clone-url" -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19285 -msgid "A list of URLs which can be used to clone repo." -msgstr "" - -#. type: deftypevr -#: doc/guix.texi:19290 -#, no-wrap -msgid "{@code{repository-cgit-configuration} parameter} repo-file-object commit-filter" +msgid "{@code{cgit-configuration} parameter} boolean enable-index-links?" msgstr "" #. type: deftypevr #: doc/guix.texi:19292 -msgid "Override the default @code{commit-filter}." +msgid "Flag which, when set to @samp{#t}, will make cgit generate extra links \"summary\", \"commit\", \"tree\" for each repo in the repository index." msgstr "" #. type: deftypevr #: doc/guix.texi:19297 #, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-index-owner?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19300 +msgid "Flag which, when set to @samp{#t}, will make cgit display the owner of each repo in the repository index." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19305 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-log-filecount?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19308 +msgid "Flag which, when set to @samp{#t}, will make cgit print the number of modified files for each commit on the repository log page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19313 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-log-linecount?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19316 +msgid "Flag which, when set to @samp{#t}, will make cgit print the number of added and removed lines for each commit on the repository log page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19321 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-remote-branches?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19324 doc/guix.texi:19848 +msgid "Flag which, when set to @code{#t}, will make cgit display remote branches in the summary and refs views." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19329 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-subject-links?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19333 +msgid "Flag which, when set to @code{1}, will make cgit use the subject of the parent commit as link text when generating links to parent commits in commit view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19338 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-html-serving?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19342 +msgid "Flag which, when set to @samp{#t}, will make cgit use the subject of the parent commit as link text when generating links to parent commits in commit view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19347 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-tree-linenumbers?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19350 +msgid "Flag which, when set to @samp{#t}, will make cgit generate linenumber links for plaintext blobs printed in the tree view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19355 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean enable-git-config?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19358 +msgid "Flag which, when set to @samp{#f}, will allow cgit to use Git config to set any repo specific settings." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19363 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} file-object favicon" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19365 +msgid "URL used as link to a shortcut icon for cgit." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19367 +msgid "Defaults to @samp{\"/favicon.ico\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19370 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string footer" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19374 +msgid "The content of the file specified with this option will be included verbatim at the bottom of all pages (i.e. it replaces the standard \"generated by...\" message)." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19379 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string head-include" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19382 +msgid "The content of the file specified with this option will be included verbatim in the HTML HEAD section on all pages." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19387 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string header" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19390 +msgid "The content of the file specified with this option will be included verbatim at the top of all pages." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19395 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} file-object include" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19398 +msgid "Name of a configfile to include before the rest of the current config- file is parsed." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19403 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string index-header" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19406 +msgid "The content of the file specified with this option will be included verbatim above the repository index." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19411 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string index-info" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19414 +msgid "The content of the file specified with this option will be included verbatim below the heading on the repository index page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19419 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean local-time?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19422 +msgid "Flag which, if set to @samp{#t}, makes cgit print commit and tag times in the servers timezone." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19427 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} file-object logo" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19430 +msgid "URL which specifies the source of an image which will be used as a logo on all cgit pages." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19432 +msgid "Defaults to @samp{\"/share/cgit/cgit.png\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19435 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string logo-link" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19437 doc/guix.texi:19894 +msgid "URL loaded when clicking on the cgit logo image." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19442 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} file-object owner-filter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19445 +msgid "Command which will be invoked to format the Owner column of the main page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19450 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer max-atom-items" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19452 +msgid "Number of items to display in atom feeds view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19454 doc/guix.texi:19689 doc/guix.texi:19697 +#: doc/guix.texi:19705 +msgid "Defaults to @samp{10}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19457 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer max-commit-count" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19459 +msgid "Number of entries to list per page in \"log\" view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19461 doc/guix.texi:19476 +msgid "Defaults to @samp{50}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19464 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer max-message-length" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19466 +msgid "Number of commit message characters to display in \"log\" view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19468 doc/guix.texi:19484 +msgid "Defaults to @samp{80}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19471 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer max-repo-count" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19474 +msgid "Specifies the number of entries to list per page on the repository index page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19479 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer max-repodesc-length" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19482 +msgid "Specifies the maximum number of repo description characters to display on the repository index page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19487 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer max-blob-size" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19489 +msgid "Specifies the maximum size of a blob to display HTML for in KBytes." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19494 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string max-stats" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19497 +msgid "Maximum statistics period. Valid values are @samp{week},@samp{month}, @samp{quarter} and @samp{year}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19502 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} mimetype-alist mimetype" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19504 +msgid "Mimetype for the specified filename extension." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19508 +msgid "Defaults to @samp{((gif \"image/gif\") (html \"text/html\") (jpg \"image/jpeg\") (jpeg \"image/jpeg\") (pdf \"application/pdf\") (png \"image/png\") (svg \"image/svg+xml\"))}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19511 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} file-object mimetype-file" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19513 +msgid "Specifies the file to use for automatic mimetype lookup." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19518 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string module-link" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19521 +msgid "Text which will be used as the formatstring for a hyperlink when a submodule is printed in a directory listing." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19526 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean nocache?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19528 +msgid "If set to the value @samp{#t} caching will be disabled." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19533 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean noplainemail?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19536 +msgid "If set to @samp{#t} showing full author email addresses will be disabled." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19541 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean noheader?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19544 +msgid "Flag which, when set to @samp{#t}, will make cgit omit the standard header on all pages." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19549 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} project-list project-list" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19553 +msgid "A list of subdirectories inside of @code{repository-directory}, relative to it, that should loaded as Git repositories. An empty list means that all subdirectories will be loaded." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19558 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} file-object readme" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19560 +msgid "Text which will be used as default value for @code{cgit-repo-readme}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19565 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean remove-suffix?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19569 +msgid "If set to @code{#t} and @code{repository-directory} is enabled, if any repositories are found with a suffix of @code{.git}, this suffix will be removed for the URL and name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19574 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer renamelimit" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19576 +msgid "Maximum number of files to consider when detecting renames." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19581 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string repository-sort" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19583 +msgid "The way in which repositories in each section are sorted." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19588 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} robots-list robots" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19590 +msgid "Text used as content for the @code{robots} meta-tag." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19592 +msgid "Defaults to @samp{(\"noindex\" \"nofollow\")}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19595 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string root-desc" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19597 +msgid "Text printed below the heading on the repository index page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19599 +msgid "Defaults to @samp{\"a fast webinterface for the git dscm\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19602 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string root-readme" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19605 +msgid "The content of the file specified with this option will be included verbatim below thef \"about\" link on the repository index page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19610 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string root-title" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19612 +msgid "Text printed as heading on the repository index page." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19617 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean scan-hidden-path" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19623 +msgid "If set to @samp{#t} and repository-directory is enabled, repository-directory will recurse into directories whose name starts with a period. Otherwise, repository-directory will stay away from such directories, considered as \"hidden\". Note that this does not apply to the \".git\" directory in non-bare repos." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19628 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} list snapshots" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19631 +msgid "Text which specifies the default set of snapshot formats that cgit generates links for." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19636 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} repository-directory repository-directory" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19639 +msgid "Name of the directory to scan for repositories (represents @code{scan-path})." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19641 +msgid "Defaults to @samp{\"/srv/git\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19644 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string section" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19647 doc/guix.texi:19963 +msgid "The name of the current repository section - all repositories defined after this option will inherit the current section name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19652 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string section-sort" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19655 +msgid "Flag which, when set to @samp{1}, will sort the sections on the repository listing by name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19660 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer section-from-path" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19663 +msgid "A number which, if defined prior to repository-directory, specifies how many path elements from each repo path to use as a default section name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19668 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} boolean side-by-side-diffs?" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19671 +msgid "If set to @samp{#t} shows side-by-side diffs instead of unidiffs per default." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19676 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} file-object source-filter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19679 +msgid "Specifies a command which will be invoked to format plaintext blobs in the tree view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19684 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer summary-branches" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19687 +msgid "Specifies the number of branches to display in the repository \"summary\" view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19692 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer summary-log" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19695 +msgid "Specifies the number of log entries to display in the repository \"summary\" view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19700 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} integer summary-tags" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19703 +msgid "Specifies the number of tags to display in the repository \"summary\" view." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19708 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string strict-export" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19711 +msgid "Filename which, if specified, needs to be present within the repository for cgit to allow access to that repository." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19716 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} string virtual-root" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19718 +msgid "URL which, if specified, will be used as root for all cgit links." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19720 +msgid "Defaults to @samp{\"/\"}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19723 +#, no-wrap +msgid "{@code{cgit-configuration} parameter} repository-cgit-configuration-list repositories" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19725 +msgid "A list of @dfn{cgit-repo} records to use with config." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19729 +msgid "Available @code{repository-cgit-configuration} fields are:" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19730 +#, no-wrap +msgid "{@code{repository-cgit-configuration} parameter} repo-list snapshots" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19733 +msgid "A mask of snapshot formats for this repo that cgit generates links for, restricted by the global @code{snapshots} setting." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19738 +#, no-wrap +msgid "{@code{repository-cgit-configuration} parameter} repo-file-object source-filter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19740 +msgid "Override the default @code{source-filter}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19745 +#, no-wrap +msgid "{@code{repository-cgit-configuration} parameter} repo-string url" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19747 +msgid "The relative URL used to access the repository." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19752 +#, no-wrap +msgid "{@code{repository-cgit-configuration} parameter} repo-file-object about-filter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19754 +msgid "Override the default @code{about-filter}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19759 +#, no-wrap +msgid "{@code{repository-cgit-configuration} parameter} repo-string branch-sort" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19762 +msgid "Flag which, when set to @samp{age}, enables date ordering in the branch ref list, and when set to @samp{name} enables ordering by branch name." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19767 +#, no-wrap +msgid "{@code{repository-cgit-configuration} parameter} repo-list clone-url" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19769 +msgid "A list of URLs which can be used to clone repo." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19774 +#, no-wrap +msgid "{@code{repository-cgit-configuration} parameter} repo-file-object commit-filter" +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19776 +msgid "Override the default @code{commit-filter}." +msgstr "" + +#. type: deftypevr +#: doc/guix.texi:19781 +#, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string commit-sort" msgstr "" #. type: deftypevr -#: doc/guix.texi:19306 +#: doc/guix.texi:19790 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string defbranch" msgstr "" #. type: deftypevr -#: doc/guix.texi:19311 -msgid "" -"The name of the default branch for this repository. If no such branch " -"exists in the repository, the first branch name (when sorted) is used as " -"default instead. By default branch pointed to by HEAD, or \"master\" if " -"there is no suitable HEAD." +#: doc/guix.texi:19795 +msgid "The name of the default branch for this repository. If no such branch exists in the repository, the first branch name (when sorted) is used as default instead. By default branch pointed to by HEAD, or \"master\" if there is no suitable HEAD." msgstr "" #. type: deftypevr -#: doc/guix.texi:19316 +#: doc/guix.texi:19800 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string desc" msgstr "" #. type: deftypevr -#: doc/guix.texi:19318 +#: doc/guix.texi:19802 msgid "The value to show as repository description." msgstr "" #. type: deftypevr -#: doc/guix.texi:19323 +#: doc/guix.texi:19807 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string homepage" msgstr "" #. type: deftypevr -#: doc/guix.texi:19325 +#: doc/guix.texi:19809 msgid "The value to show as repository homepage." msgstr "" #. type: deftypevr -#: doc/guix.texi:19330 +#: doc/guix.texi:19814 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-file-object email-filter" msgstr "" #. type: deftypevr -#: doc/guix.texi:19332 +#: doc/guix.texi:19816 msgid "Override the default @code{email-filter}." msgstr "" #. type: deftypevr -#: doc/guix.texi:19337 +#: doc/guix.texi:19821 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-commit-graph?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19340 -msgid "" -"A flag which can be used to disable the global setting @code{enable-commit-" -"graph?}." +#: doc/guix.texi:19824 +msgid "A flag which can be used to disable the global setting @code{enable-commit-graph?}." msgstr "" #. type: deftypevr -#: doc/guix.texi:19345 +#: doc/guix.texi:19829 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-log-filecount?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19348 -msgid "" -"A flag which can be used to disable the global setting @code{enable-log-" -"filecount?}." +#: doc/guix.texi:19832 +msgid "A flag which can be used to disable the global setting @code{enable-log-filecount?}." msgstr "" #. type: deftypevr -#: doc/guix.texi:19353 +#: doc/guix.texi:19837 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-log-linecount?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19356 -msgid "" -"A flag which can be used to disable the global setting @code{enable-log-" -"linecount?}." +#: doc/guix.texi:19840 +msgid "A flag which can be used to disable the global setting @code{enable-log-linecount?}." msgstr "" #. type: deftypevr -#: doc/guix.texi:19361 +#: doc/guix.texi:19845 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-remote-branches?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19369 +#: doc/guix.texi:19853 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-subject-links?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19372 -msgid "" -"A flag which can be used to override the global setting @code{enable-subject-" -"links?}." +#: doc/guix.texi:19856 +msgid "A flag which can be used to override the global setting @code{enable-subject-links?}." msgstr "" #. type: deftypevr -#: doc/guix.texi:19377 +#: doc/guix.texi:19861 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-html-serving?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19380 -msgid "" -"A flag which can be used to override the global setting @code{enable-html-" -"serving?}." +#: doc/guix.texi:19864 +msgid "A flag which can be used to override the global setting @code{enable-html-serving?}." msgstr "" #. type: deftypevr -#: doc/guix.texi:19385 +#: doc/guix.texi:19869 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean hide?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19388 -msgid "" -"Flag which, when set to @code{#t}, hides the repository from the repository " -"index." +#: doc/guix.texi:19872 +msgid "Flag which, when set to @code{#t}, hides the repository from the repository index." msgstr "" #. type: deftypevr -#: doc/guix.texi:19393 +#: doc/guix.texi:19877 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-boolean ignore?" msgstr "" #. type: deftypevr -#: doc/guix.texi:19395 +#: doc/guix.texi:19879 msgid "Flag which, when set to @samp{#t}, ignores the repository." msgstr "" #. type: deftypevr -#: doc/guix.texi:19400 +#: doc/guix.texi:19884 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-file-object logo" msgstr "" #. type: deftypevr -#: doc/guix.texi:19403 -msgid "" -"URL which specifies the source of an image which will be used as a logo on " -"this repo’s pages." +#: doc/guix.texi:19887 +msgid "URL which specifies the source of an image which will be used as a logo on this repo’s pages." msgstr "" #. type: deftypevr -#: doc/guix.texi:19408 +#: doc/guix.texi:19892 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string logo-link" msgstr "" #. type: deftypevr -#: doc/guix.texi:19415 +#: doc/guix.texi:19899 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-file-object owner-filter" msgstr "" #. type: deftypevr -#: doc/guix.texi:19417 +#: doc/guix.texi:19901 msgid "Override the default @code{owner-filter}." msgstr "" #. type: deftypevr -#: doc/guix.texi:19422 +#: doc/guix.texi:19906 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string module-link" msgstr "" #. type: deftypevr -#: doc/guix.texi:19426 -msgid "" -"Text which will be used as the formatstring for a hyperlink when a submodule " -"is printed in a directory listing. The arguments for the formatstring are " -"the path and SHA1 of the submodule commit." +#: doc/guix.texi:19910 +msgid "Text which will be used as the formatstring for a hyperlink when a submodule is printed in a directory listing. The arguments for the formatstring are the path and SHA1 of the submodule commit." msgstr "" #. type: deftypevr -#: doc/guix.texi:19431 +#: doc/guix.texi:19915 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} module-link-path module-link-path" msgstr "" #. type: deftypevr -#: doc/guix.texi:19435 -msgid "" -"Text which will be used as the formatstring for a hyperlink when a submodule " -"with the specified subdirectory path is printed in a directory listing." +#: doc/guix.texi:19919 +msgid "Text which will be used as the formatstring for a hyperlink when a submodule with the specified subdirectory path is printed in a directory listing." msgstr "" #. type: deftypevr -#: doc/guix.texi:19440 +#: doc/guix.texi:19924 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string max-stats" msgstr "" #. type: deftypevr -#: doc/guix.texi:19442 +#: doc/guix.texi:19926 msgid "Override the default maximum statistics period." msgstr "" #. type: deftypevr -#: doc/guix.texi:19447 +#: doc/guix.texi:19931 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string name" msgstr "" #. type: deftypevr -#: doc/guix.texi:19449 +#: doc/guix.texi:19933 msgid "The value to show as repository name." msgstr "" #. type: deftypevr -#: doc/guix.texi:19454 +#: doc/guix.texi:19938 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string owner" msgstr "" #. type: deftypevr -#: doc/guix.texi:19456 +#: doc/guix.texi:19940 msgid "A value used to identify the owner of the repository." msgstr "" #. type: deftypevr -#: doc/guix.texi:19461 +#: doc/guix.texi:19945 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string path" msgstr "" #. type: deftypevr -#: doc/guix.texi:19463 +#: doc/guix.texi:19947 msgid "An absolute path to the repository directory." msgstr "" #. type: deftypevr -#: doc/guix.texi:19468 +#: doc/guix.texi:19952 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string readme" msgstr "" #. type: deftypevr -#: doc/guix.texi:19471 -msgid "" -"A path (relative to repo) which specifies a file to include verbatim as the " -"\"About\" page for this repo." +#: doc/guix.texi:19955 +msgid "A path (relative to repo) which specifies a file to include verbatim as the \"About\" page for this repo." msgstr "" #. type: deftypevr -#: doc/guix.texi:19476 +#: doc/guix.texi:19960 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-string section" msgstr "" #. type: deftypevr -#: doc/guix.texi:19484 +#: doc/guix.texi:19968 #, no-wrap msgid "{@code{repository-cgit-configuration} parameter} repo-list extra-options" msgstr "" #. type: deftypevr -#: doc/guix.texi:19486 doc/guix.texi:19495 +#: doc/guix.texi:19970 doc/guix.texi:19979 msgid "Extra options will be appended to cgitrc file." msgstr "" #. type: deftypevr -#: doc/guix.texi:19493 +#: doc/guix.texi:19977 #, no-wrap msgid "{@code{cgit-configuration} parameter} list extra-options" msgstr "" #. type: Plain text -#: doc/guix.texi:19507 -msgid "" -"However, it could be that you just want to get a @code{cgitrc} up and " -"running. In that case, you can pass an @code{opaque-cgit-configuration} as " -"a record to @code{cgit-service-type}. As its name indicates, an opaque " -"configuration does not have easy reflective capabilities." +#: doc/guix.texi:19991 +msgid "However, it could be that you just want to get a @code{cgitrc} up and running. In that case, you can pass an @code{opaque-cgit-configuration} as a record to @code{cgit-service-type}. As its name indicates, an opaque configuration does not have easy reflective capabilities." msgstr "" #. type: Plain text -#: doc/guix.texi:19509 +#: doc/guix.texi:19993 msgid "Available @code{opaque-cgit-configuration} fields are:" msgstr "" #. type: deftypevr -#: doc/guix.texi:19510 +#: doc/guix.texi:19994 #, no-wrap msgid "{@code{opaque-cgit-configuration} parameter} package cgit" msgstr "" #. type: deftypevr -#: doc/guix.texi:19512 +#: doc/guix.texi:19996 msgid "The cgit package." msgstr "" #. type: deftypevr -#: doc/guix.texi:19514 +#: doc/guix.texi:19998 #, no-wrap msgid "{@code{opaque-cgit-configuration} parameter} string string" msgstr "" #. type: deftypevr -#: doc/guix.texi:19516 +#: doc/guix.texi:20000 msgid "The contents of the @code{cgitrc}, as a string." msgstr "" #. type: Plain text -#: doc/guix.texi:19520 -msgid "" -"For example, if your @code{cgitrc} is just the empty string, you could " -"instantiate a cgit service like this:" +#: doc/guix.texi:20004 +msgid "For example, if your @code{cgitrc} is just the empty string, you could instantiate a cgit service like this:" msgstr "" #. type: example -#: doc/guix.texi:19525 +#: doc/guix.texi:20009 #, no-wrap msgid "" "(service cgit-service-type\n" @@ -42428,113 +35748,102 @@ msgid "" msgstr "" #. type: subsubheading -#: doc/guix.texi:19531 +#: doc/guix.texi:20015 #, no-wrap msgid "The Battle for Wesnoth Service" msgstr "" #. type: cindex -#: doc/guix.texi:19532 +#: doc/guix.texi:20016 #, no-wrap msgid "wesnothd" msgstr "" #. type: Plain text -#: doc/guix.texi:19536 -msgid "" -"@uref{https://wesnoth.org, The Battle for Wesnoth} is a fantasy, turn based " -"tactical strategy game, with several single player campaigns, and " -"multiplayer games (both networked and local)." +#: doc/guix.texi:20020 +msgid "@uref{https://wesnoth.org, The Battle for Wesnoth} is a fantasy, turn based tactical strategy game, with several single player campaigns, and multiplayer games (both networked and local)." msgstr "" #. type: defvar -#: doc/guix.texi:19537 +#: doc/guix.texi:20021 #, no-wrap msgid "{Scheme Variable} wesnothd-service-type" msgstr "" #. type: defvar -#: doc/guix.texi:19541 -msgid "" -"Service type for the wesnothd service. Its value must be a @code{wesnothd-" -"configuration} object. To run wesnothd in the default configuration, " -"instantiate it as:" +#: doc/guix.texi:20025 +msgid "Service type for the wesnothd service. Its value must be a @code{wesnothd-configuration} object. To run wesnothd in the default configuration, instantiate it as:" msgstr "" #. type: example -#: doc/guix.texi:19544 +#: doc/guix.texi:20028 #, no-wrap msgid "(service wesnothd-service-type)\n" msgstr "" #. type: deftp -#: doc/guix.texi:19547 +#: doc/guix.texi:20031 #, no-wrap msgid "{Data Type} wesnothd-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:19549 +#: doc/guix.texi:20033 msgid "Data type representing the configuration of @command{wesnothd}." msgstr "" #. type: item -#: doc/guix.texi:19551 +#: doc/guix.texi:20035 #, no-wrap msgid "@code{package} (default: @code{wesnoth-server})" msgstr "" #. type: table -#: doc/guix.texi:19553 +#: doc/guix.texi:20037 msgid "The wesnoth server package to use." msgstr "" #. type: item -#: doc/guix.texi:19554 +#: doc/guix.texi:20038 #, no-wrap msgid "@code{port} (default: @code{15000})" msgstr "" #. type: table -#: doc/guix.texi:19556 +#: doc/guix.texi:20040 msgid "The port to bind the server to." msgstr "" #. type: cindex -#: doc/guix.texi:19562 +#: doc/guix.texi:20046 #, no-wrap msgid "sysctl" msgstr "" #. type: subsubheading -#: doc/guix.texi:19563 +#: doc/guix.texi:20047 #, no-wrap msgid "System Control Service" msgstr "" #. type: Plain text -#: doc/guix.texi:19567 -msgid "" -"The @code{(gnu services sysctl)} provides a service to configure kernel " -"parameters at boot." +#: doc/guix.texi:20051 +msgid "The @code{(gnu services sysctl)} provides a service to configure kernel parameters at boot." msgstr "" #. type: defvr -#: doc/guix.texi:19568 +#: doc/guix.texi:20052 #, no-wrap msgid "{Scheme Variable} sysctl-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:19572 -msgid "" -"The service type for @command{sysctl}, which modifies kernel parameters " -"under @file{/proc/sys/}. To enable IPv4 forwarding, it can be instantiated " -"as:" +#: doc/guix.texi:20056 +msgid "The service type for @command{sysctl}, which modifies kernel parameters under @file{/proc/sys/}. To enable IPv4 forwarding, it can be instantiated as:" msgstr "" #. type: example -#: doc/guix.texi:19577 +#: doc/guix.texi:20061 #, no-wrap msgid "" "(service sysctl-service-type\n" @@ -42543,331 +35852,296 @@ msgid "" msgstr "" #. type: deftp -#: doc/guix.texi:19580 +#: doc/guix.texi:20064 #, no-wrap msgid "{Data Type} sysctl-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:19582 +#: doc/guix.texi:20066 msgid "The data type representing the configuration of @command{sysctl}." msgstr "" #. type: item -#: doc/guix.texi:19584 +#: doc/guix.texi:20068 #, no-wrap msgid "@code{sysctl} (default: @code{(file-append procps \"/sbin/sysctl\"})" msgstr "" #. type: table -#: doc/guix.texi:19586 +#: doc/guix.texi:20070 msgid "The @command{sysctl} executable to use." msgstr "" #. type: item -#: doc/guix.texi:19587 +#: doc/guix.texi:20071 #, no-wrap msgid "@code{settings} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:19589 +#: doc/guix.texi:20073 msgid "An association list specifies kernel parameters and their values." msgstr "" #. type: cindex -#: doc/guix.texi:19592 +#: doc/guix.texi:20076 #, no-wrap msgid "lirc" msgstr "" #. type: subsubheading -#: doc/guix.texi:19593 +#: doc/guix.texi:20077 #, no-wrap msgid "Lirc Service" msgstr "" #. type: Plain text -#: doc/guix.texi:19596 +#: doc/guix.texi:20080 msgid "The @code{(gnu services lirc)} module provides the following service." msgstr "" #. type: deffn -#: doc/guix.texi:19597 +#: doc/guix.texi:20081 #, no-wrap msgid "{Scheme Procedure} lirc-service [#:lirc lirc] @" msgstr "" #. type: deffn -#: doc/guix.texi:19602 -msgid "" -"[#:device #f] [#:driver #f] [#:config-file #f] @ [#:extra-options '()] " -"Return a service that runs @url{http://www.lirc.org,LIRC}, a daemon that " -"decodes infrared signals from remote controls." +#: doc/guix.texi:20086 +msgid "[#:device #f] [#:driver #f] [#:config-file #f] @ [#:extra-options '()] Return a service that runs @url{http://www.lirc.org,LIRC}, a daemon that decodes infrared signals from remote controls." msgstr "" #. type: deffn -#: doc/guix.texi:19606 -msgid "" -"Optionally, @var{device}, @var{driver} and @var{config-file} (configuration " -"file name) may be specified. See @command{lircd} manual for details." +#: doc/guix.texi:20090 +msgid "Optionally, @var{device}, @var{driver} and @var{config-file} (configuration file name) may be specified. See @command{lircd} manual for details." msgstr "" #. type: deffn -#: doc/guix.texi:19609 -msgid "" -"Finally, @var{extra-options} is a list of additional command-line options " -"passed to @command{lircd}." +#: doc/guix.texi:20093 +msgid "Finally, @var{extra-options} is a list of additional command-line options passed to @command{lircd}." msgstr "" #. type: cindex -#: doc/guix.texi:19611 +#: doc/guix.texi:20095 #, no-wrap msgid "spice" msgstr "" #. type: subsubheading -#: doc/guix.texi:19612 +#: doc/guix.texi:20096 #, no-wrap msgid "Spice Service" msgstr "" #. type: Plain text -#: doc/guix.texi:19615 +#: doc/guix.texi:20099 msgid "The @code{(gnu services spice)} module provides the following service." msgstr "" #. type: deffn -#: doc/guix.texi:19616 +#: doc/guix.texi:20100 #, no-wrap msgid "{Scheme Procedure} spice-vdagent-service [#:spice-vdagent]" msgstr "" #. type: deffn -#: doc/guix.texi:19620 -msgid "" -"Returns a service that runs @url{http://www.spice-space.org,VDAGENT}, a " -"daemon that enables sharing the clipboard with a vm and setting the guest " -"display resolution when the graphical console window resizes." +#: doc/guix.texi:20104 +msgid "Returns a service that runs @url{http://www.spice-space.org,VDAGENT}, a daemon that enables sharing the clipboard with a vm and setting the guest display resolution when the graphical console window resizes." msgstr "" #. type: subsubsection -#: doc/guix.texi:19622 +#: doc/guix.texi:20106 #, no-wrap msgid "Dictionary Services" msgstr "" #. type: cindex -#: doc/guix.texi:19623 +#: doc/guix.texi:20107 #, no-wrap msgid "dictionary" msgstr "" #. type: Plain text -#: doc/guix.texi:19625 +#: doc/guix.texi:20109 msgid "The @code{(gnu services dict)} module provides the following service:" msgstr "" #. type: deffn -#: doc/guix.texi:19626 +#: doc/guix.texi:20110 #, no-wrap msgid "{Scheme Procedure} dicod-service [#:config (dicod-configuration)]" msgstr "" #. type: deffn -#: doc/guix.texi:19629 -msgid "" -"Return a service that runs the @command{dicod} daemon, an implementation of " -"DICT server (@pxref{Dicod,,, dico, GNU Dico Manual})." +#: doc/guix.texi:20113 +msgid "Return a service that runs the @command{dicod} daemon, an implementation of DICT server (@pxref{Dicod,,, dico, GNU Dico Manual})." msgstr "" #. type: deffn -#: doc/guix.texi:19633 -msgid "" -"The optional @var{config} argument specifies the configuration for " -"@command{dicod}, which should be a @code{} object, by " -"default it serves the GNU Collaborative International Dictonary of English." +#: doc/guix.texi:20117 +msgid "The optional @var{config} argument specifies the configuration for @command{dicod}, which should be a @code{} object, by default it serves the GNU Collaborative International Dictonary of English." msgstr "" #. type: deffn -#: doc/guix.texi:19637 -msgid "" -"You can add @command{open localhost} to your @file{~/.dico} file to make " -"@code{localhost} the default server for @command{dico} client " -"(@pxref{Initialization File,,, dico, GNU Dico Manual})." +#: doc/guix.texi:20121 +msgid "You can add @command{open localhost} to your @file{~/.dico} file to make @code{localhost} the default server for @command{dico} client (@pxref{Initialization File,,, dico, GNU Dico Manual})." msgstr "" #. type: deftp -#: doc/guix.texi:19639 +#: doc/guix.texi:20123 #, no-wrap msgid "{Data Type} dicod-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:19641 +#: doc/guix.texi:20125 msgid "Data type representing the configuration of dicod." msgstr "" #. type: item -#: doc/guix.texi:19643 +#: doc/guix.texi:20127 #, no-wrap msgid "@code{dico} (default: @var{dico})" msgstr "" #. type: table -#: doc/guix.texi:19645 +#: doc/guix.texi:20129 msgid "Package object of the GNU Dico dictionary server." msgstr "" #. type: item -#: doc/guix.texi:19646 +#: doc/guix.texi:20130 #, no-wrap msgid "@code{interfaces} (default: @var{'(\"localhost\")})" msgstr "" #. type: table -#: doc/guix.texi:19650 -msgid "" -"This is the list of IP addresses and ports and possibly socket file names to " -"listen to (@pxref{Server Settings, @code{listen} directive,, dico, GNU Dico " -"Manual})." +#: doc/guix.texi:20134 +msgid "This is the list of IP addresses and ports and possibly socket file names to listen to (@pxref{Server Settings, @code{listen} directive,, dico, GNU Dico Manual})." msgstr "" #. type: item -#: doc/guix.texi:19651 +#: doc/guix.texi:20135 #, no-wrap msgid "@code{handlers} (default: @var{'()})" msgstr "" #. type: table -#: doc/guix.texi:19653 -msgid "" -"List of @code{} objects denoting handlers (module instances)." +#: doc/guix.texi:20137 +msgid "List of @code{} objects denoting handlers (module instances)." msgstr "" #. type: item -#: doc/guix.texi:19654 +#: doc/guix.texi:20138 #, no-wrap msgid "@code{databases} (default: @var{(list %dicod-database:gcide)})" msgstr "" #. type: table -#: doc/guix.texi:19656 -msgid "" -"List of @code{} objects denoting dictionaries to be served." +#: doc/guix.texi:20140 +msgid "List of @code{} objects denoting dictionaries to be served." msgstr "" #. type: deftp -#: doc/guix.texi:19659 +#: doc/guix.texi:20143 #, no-wrap msgid "{Data Type} dicod-handler" msgstr "" #. type: deftp -#: doc/guix.texi:19661 +#: doc/guix.texi:20145 msgid "Data type representing a dictionary handler (module instance)." msgstr "" #. type: table -#: doc/guix.texi:19665 +#: doc/guix.texi:20149 msgid "Name of the handler (module instance)." msgstr "" #. type: item -#: doc/guix.texi:19666 +#: doc/guix.texi:20150 #, no-wrap msgid "@code{module} (default: @var{#f})" msgstr "" #. type: table -#: doc/guix.texi:19670 -msgid "" -"Name of the dicod module of the handler (instance). If it is @code{#f}, the " -"module has the same name as the handler. (@pxref{Modules,,, dico, GNU Dico " -"Manual})." +#: doc/guix.texi:20154 +msgid "Name of the dicod module of the handler (instance). If it is @code{#f}, the module has the same name as the handler. (@pxref{Modules,,, dico, GNU Dico Manual})." msgstr "" #. type: code{#1} -#: doc/guix.texi:19671 doc/guix.texi:19691 +#: doc/guix.texi:20155 doc/guix.texi:20175 #, no-wrap msgid "options" msgstr "" #. type: table -#: doc/guix.texi:19673 -msgid "" -"List of strings or gexps representing the arguments for the module handler" +#: doc/guix.texi:20157 +msgid "List of strings or gexps representing the arguments for the module handler" msgstr "" #. type: deftp -#: doc/guix.texi:19676 +#: doc/guix.texi:20160 #, no-wrap msgid "{Data Type} dicod-database" msgstr "" #. type: deftp -#: doc/guix.texi:19678 +#: doc/guix.texi:20162 msgid "Data type representing a dictionary database." msgstr "" #. type: table -#: doc/guix.texi:19682 +#: doc/guix.texi:20166 msgid "Name of the database, will be used in DICT commands." msgstr "" #. type: code{#1} -#: doc/guix.texi:19683 +#: doc/guix.texi:20167 #, no-wrap msgid "handler" msgstr "" #. type: table -#: doc/guix.texi:19686 -msgid "" -"Name of the dicod handler (module instance) used by this database " -"(@pxref{Handlers,,, dico, GNU Dico Manual})." +#: doc/guix.texi:20170 +msgid "Name of the dicod handler (module instance) used by this database (@pxref{Handlers,,, dico, GNU Dico Manual})." msgstr "" #. type: item -#: doc/guix.texi:19687 +#: doc/guix.texi:20171 #, no-wrap msgid "@code{complex?} (default: @var{#f})" msgstr "" #. type: table -#: doc/guix.texi:19690 -msgid "" -"Whether the database configuration complex. The complex configuration will " -"need a corresponding @code{} object, otherwise not." +#: doc/guix.texi:20174 +msgid "Whether the database configuration complex. The complex configuration will need a corresponding @code{} object, otherwise not." msgstr "" #. type: table -#: doc/guix.texi:19694 -msgid "" -"List of strings or gexps representing the arguments for the database " -"(@pxref{Databases,,, dico, GNU Dico Manual})." +#: doc/guix.texi:20178 +msgid "List of strings or gexps representing the arguments for the database (@pxref{Databases,,, dico, GNU Dico Manual})." msgstr "" #. type: defvr -#: doc/guix.texi:19697 +#: doc/guix.texi:20181 #, no-wrap msgid "{Scheme Variable} %dicod-database:gcide" msgstr "" #. type: defvr -#: doc/guix.texi:19700 -msgid "" -"A @code{} object serving the GNU Collaborative International " -"Dictionary of English using the @code{gcide} package." +#: doc/guix.texi:20184 +msgid "A @code{} object serving the GNU Collaborative International Dictionary of English using the @code{gcide} package." msgstr "" #. type: Plain text -#: doc/guix.texi:19703 +#: doc/guix.texi:20187 msgid "The following is an example @code{dicod-service} configuration." msgstr "" #. type: example -#: doc/guix.texi:19718 +#: doc/guix.texi:20202 #, no-wrap msgid "" "(dicod-service #:config\n" @@ -42886,162 +36160,108 @@ msgid "" msgstr "" #. type: cindex -#: doc/guix.texi:19723 +#: doc/guix.texi:20207 #, no-wrap msgid "setuid programs" msgstr "" #. type: Plain text -#: doc/guix.texi:19733 -msgid "" -"Some programs need to run with ``root'' privileges, even when they are " -"launched by unprivileged users. A notorious example is the @command{passwd} " -"program, which users can run to change their password, and which needs to " -"access the @file{/etc/passwd} and @file{/etc/shadow} files---something " -"normally restricted to root, for obvious security reasons. To address that, " -"these executables are @dfn{setuid-root}, meaning that they always run with " -"root privileges (@pxref{How Change Persona,,, libc, The GNU C Library " -"Reference Manual}, for more info about the setuid mechanism.)" +#: doc/guix.texi:20217 +msgid "Some programs need to run with ``root'' privileges, even when they are launched by unprivileged users. A notorious example is the @command{passwd} program, which users can run to change their password, and which needs to access the @file{/etc/passwd} and @file{/etc/shadow} files---something normally restricted to root, for obvious security reasons. To address that, these executables are @dfn{setuid-root}, meaning that they always run with root privileges (@pxref{How Change Persona,,, libc, The GNU C Library Reference Manual}, for more info about the setuid mechanism.)" msgstr "" #. type: Plain text -#: doc/guix.texi:19740 -msgid "" -"The store itself @emph{cannot} contain setuid programs: that would be a " -"security issue since any user on the system can write derivations that " -"populate the store (@pxref{The Store}). Thus, a different mechanism is " -"used: instead of changing the setuid bit directly on files that are in the " -"store, we let the system administrator @emph{declare} which programs should " -"be setuid root." +#: doc/guix.texi:20224 +msgid "The store itself @emph{cannot} contain setuid programs: that would be a security issue since any user on the system can write derivations that populate the store (@pxref{The Store}). Thus, a different mechanism is used: instead of changing the setuid bit directly on files that are in the store, we let the system administrator @emph{declare} which programs should be setuid root." msgstr "" #. type: Plain text -#: doc/guix.texi:19746 -msgid "" -"The @code{setuid-programs} field of an @code{operating-system} declaration " -"contains a list of G-expressions denoting the names of programs to be setuid-" -"root (@pxref{Using the Configuration System}). For instance, the " -"@command{passwd} program, which is part of the Shadow package, can be " -"designated by this G-expression (@pxref{G-Expressions}):" +#: doc/guix.texi:20230 +msgid "The @code{setuid-programs} field of an @code{operating-system} declaration contains a list of G-expressions denoting the names of programs to be setuid-root (@pxref{Using the Configuration System}). For instance, the @command{passwd} program, which is part of the Shadow package, can be designated by this G-expression (@pxref{G-Expressions}):" msgstr "" #. type: example -#: doc/guix.texi:19749 +#: doc/guix.texi:20233 #, no-wrap msgid "#~(string-append #$shadow \"/bin/passwd\")\n" msgstr "" #. type: Plain text -#: doc/guix.texi:19753 -msgid "" -"A default set of setuid programs is defined by the @code{%setuid-programs} " -"variable of the @code{(gnu system)} module." +#: doc/guix.texi:20237 +msgid "A default set of setuid programs is defined by the @code{%setuid-programs} variable of the @code{(gnu system)} module." msgstr "" #. type: defvr -#: doc/guix.texi:19754 +#: doc/guix.texi:20238 #, no-wrap msgid "{Scheme Variable} %setuid-programs" msgstr "" #. type: defvr -#: doc/guix.texi:19756 +#: doc/guix.texi:20240 msgid "A list of G-expressions denoting common programs that are setuid-root." msgstr "" #. type: defvr -#: doc/guix.texi:19759 -msgid "" -"The list includes commands such as @command{passwd}, @command{ping}, " -"@command{su}, and @command{sudo}." +#: doc/guix.texi:20243 +msgid "The list includes commands such as @command{passwd}, @command{ping}, @command{su}, and @command{sudo}." msgstr "" #. type: Plain text -#: doc/guix.texi:19765 -msgid "" -"Under the hood, the actual setuid programs are created in the @file{/run/" -"setuid-programs} directory at system activation time. The files in this " -"directory refer to the ``real'' binaries, which are in the store." +#: doc/guix.texi:20249 +msgid "Under the hood, the actual setuid programs are created in the @file{/run/setuid-programs} directory at system activation time. The files in this directory refer to the ``real'' binaries, which are in the store." msgstr "" #. type: cindex -#: doc/guix.texi:19769 +#: doc/guix.texi:20253 #, no-wrap msgid "HTTPS, certificates" msgstr "" #. type: cindex -#: doc/guix.texi:19770 +#: doc/guix.texi:20254 #, no-wrap msgid "X.509 certificates" msgstr "" #. type: cindex -#: doc/guix.texi:19771 +#: doc/guix.texi:20255 #, no-wrap msgid "TLS" msgstr "" #. type: Plain text -#: doc/guix.texi:19778 -msgid "" -"Web servers available over HTTPS (that is, HTTP over the transport-layer " -"security mechanism, TLS) send client programs an @dfn{X.509 certificate} " -"that the client can then use to @emph{authenticate} the server. To do that, " -"clients verify that the server's certificate is signed by a so-called " -"@dfn{certificate authority} (CA). But to verify the CA's signature, clients " -"must have first acquired the CA's certificate." +#: doc/guix.texi:20262 +msgid "Web servers available over HTTPS (that is, HTTP over the transport-layer security mechanism, TLS) send client programs an @dfn{X.509 certificate} that the client can then use to @emph{authenticate} the server. To do that, clients verify that the server's certificate is signed by a so-called @dfn{certificate authority} (CA). But to verify the CA's signature, clients must have first acquired the CA's certificate." msgstr "" #. type: Plain text -#: doc/guix.texi:19782 -msgid "" -"Web browsers such as GNU@tie{}IceCat include their own set of CA " -"certificates, such that they are able to verify CA signatures out-of-the-box." +#: doc/guix.texi:20266 +msgid "Web browsers such as GNU@tie{}IceCat include their own set of CA certificates, such that they are able to verify CA signatures out-of-the-box." msgstr "" #. type: Plain text -#: doc/guix.texi:19786 -msgid "" -"However, most other programs that can talk HTTPS---@command{wget}, " -"@command{git}, @command{w3m}, etc.---need to be told where CA certificates " -"can be found." +#: doc/guix.texi:20270 +msgid "However, most other programs that can talk HTTPS---@command{wget}, @command{git}, @command{w3m}, etc.---need to be told where CA certificates can be found." msgstr "" #. type: Plain text -#: doc/guix.texi:19793 -msgid "" -"In GuixSD, this is done by adding a package that provides certificates to " -"the @code{packages} field of the @code{operating-system} declaration " -"(@pxref{operating-system Reference}). GuixSD includes one such package, " -"@code{nss-certs}, which is a set of CA certificates provided as part of " -"Mozilla's Network Security Services." +#: doc/guix.texi:20277 +msgid "In GuixSD, this is done by adding a package that provides certificates to the @code{packages} field of the @code{operating-system} declaration (@pxref{operating-system Reference}). GuixSD includes one such package, @code{nss-certs}, which is a set of CA certificates provided as part of Mozilla's Network Security Services." msgstr "" #. type: Plain text -#: doc/guix.texi:19798 -msgid "" -"Note that it is @emph{not} part of @var{%base-packages}, so you need to " -"explicitly add it. The @file{/etc/ssl/certs} directory, which is where most " -"applications and libraries look for certificates by default, points to the " -"certificates installed globally." +#: doc/guix.texi:20282 +msgid "Note that it is @emph{not} part of @var{%base-packages}, so you need to explicitly add it. The @file{/etc/ssl/certs} directory, which is where most applications and libraries look for certificates by default, points to the certificates installed globally." msgstr "" #. type: Plain text -#: doc/guix.texi:19808 -msgid "" -"Unprivileged users, including users of Guix on a foreign distro, can also " -"install their own certificate package in their profile. A number of " -"environment variables need to be defined so that applications and libraries " -"know where to find them. Namely, the OpenSSL library honors the " -"@code{SSL_CERT_DIR} and @code{SSL_CERT_FILE} variables. Some applications " -"add their own environment variables; for instance, the Git version control " -"system honors the certificate bundle pointed to by the @code{GIT_SSL_CAINFO} " -"environment variable. Thus, you would typically run something like:" +#: doc/guix.texi:20292 +msgid "Unprivileged users, including users of Guix on a foreign distro, can also install their own certificate package in their profile. A number of environment variables need to be defined so that applications and libraries know where to find them. Namely, the OpenSSL library honors the @code{SSL_CERT_DIR} and @code{SSL_CERT_FILE} variables. Some applications add their own environment variables; for instance, the Git version control system honors the certificate bundle pointed to by the @code{GIT_SSL_CAINFO} environment variable. Thus, you would typically run something like:" msgstr "" #. type: example -#: doc/guix.texi:19814 +#: doc/guix.texi:20298 #, no-wrap msgid "" "$ guix package -i nss-certs\n" @@ -43051,15 +36271,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:19819 -msgid "" -"As another example, R requires the @code{CURL_CA_BUNDLE} environment " -"variable to point to a certificate bundle, so you would have to run " -"something like this:" +#: doc/guix.texi:20303 +msgid "As another example, R requires the @code{CURL_CA_BUNDLE} environment variable to point to a certificate bundle, so you would have to run something like this:" msgstr "" #. type: example -#: doc/guix.texi:19823 +#: doc/guix.texi:20307 #, no-wrap msgid "" "$ guix package -i nss-certs\n" @@ -43067,71 +36284,51 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:19827 -msgid "" -"For other applications you may want to look up the required environment " -"variable in the relevant documentation." +#: doc/guix.texi:20311 +msgid "For other applications you may want to look up the required environment variable in the relevant documentation." msgstr "" #. type: cindex -#: doc/guix.texi:19832 +#: doc/guix.texi:20316 #, no-wrap msgid "name service switch" msgstr "" #. type: cindex -#: doc/guix.texi:19833 +#: doc/guix.texi:20317 #, no-wrap msgid "NSS" msgstr "" #. type: Plain text -#: doc/guix.texi:19842 -msgid "" -"The @code{(gnu system nss)} module provides bindings to the configuration " -"file of the libc @dfn{name service switch} or @dfn{NSS} (@pxref{NSS " -"Configuration File,,, libc, The GNU C Library Reference Manual}). In a " -"nutshell, the NSS is a mechanism that allows libc to be extended with new " -"``name'' lookup methods for system databases, which includes host names, " -"service names, user accounts, and more (@pxref{Name Service Switch, System " -"Databases and Name Service Switch,, libc, The GNU C Library Reference " -"Manual})." +#: doc/guix.texi:20326 +msgid "The @code{(gnu system nss)} module provides bindings to the configuration file of the libc @dfn{name service switch} or @dfn{NSS} (@pxref{NSS Configuration File,,, libc, The GNU C Library Reference Manual}). In a nutshell, the NSS is a mechanism that allows libc to be extended with new ``name'' lookup methods for system databases, which includes host names, service names, user accounts, and more (@pxref{Name Service Switch, System Databases and Name Service Switch,, libc, The GNU C Library Reference Manual})." msgstr "" #. type: Plain text -#: doc/guix.texi:19849 -msgid "" -"The NSS configuration specifies, for each system database, which lookup " -"method is to be used, and how the various methods are chained together---for " -"instance, under which circumstances NSS should try the next method in the " -"list. The NSS configuration is given in the @code{name-service-switch} " -"field of @code{operating-system} declarations (@pxref{operating-system " -"Reference, @code{name-service-switch}})." +#: doc/guix.texi:20333 +msgid "The NSS configuration specifies, for each system database, which lookup method is to be used, and how the various methods are chained together---for instance, under which circumstances NSS should try the next method in the list. The NSS configuration is given in the @code{name-service-switch} field of @code{operating-system} declarations (@pxref{operating-system Reference, @code{name-service-switch}})." msgstr "" #. type: cindex -#: doc/guix.texi:19850 +#: doc/guix.texi:20334 #, no-wrap msgid "nss-mdns" msgstr "" #. type: cindex -#: doc/guix.texi:19851 +#: doc/guix.texi:20335 #, no-wrap msgid ".local, host name lookup" msgstr "" #. type: Plain text -#: doc/guix.texi:19856 -msgid "" -"As an example, the declaration below configures the NSS to use the " -"@uref{http://0pointer.de/lennart/projects/nss-mdns/, @code{nss-mdns} back-" -"end}, which supports host name lookups over multicast DNS (mDNS) for host " -"names ending in @code{.local}:" +#: doc/guix.texi:20340 +msgid "As an example, the declaration below configures the NSS to use the @uref{http://0pointer.de/lennart/projects/nss-mdns/, @code{nss-mdns} back-end}, which supports host name lookups over multicast DNS (mDNS) for host names ending in @code{.local}:" msgstr "" #. type: example -#: doc/guix.texi:19860 +#: doc/guix.texi:20344 #, no-wrap msgid "" "(name-service-switch\n" @@ -43140,7 +36337,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:19865 +#: doc/guix.texi:20349 #, no-wrap msgid "" " ;; If the above did not succeed, try\n" @@ -43151,7 +36348,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:19871 +#: doc/guix.texi:20355 #, no-wrap msgid "" " ;; 'mdns_minimal' is authoritative for\n" @@ -43163,7 +36360,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:19875 +#: doc/guix.texi:20359 #, no-wrap msgid "" " ;; Then fall back to DNS.\n" @@ -43173,7 +36370,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:19879 +#: doc/guix.texi:20363 #, no-wrap msgid "" " ;; Finally, try with the \"full\" 'mdns'.\n" @@ -43182,195 +36379,157 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:19884 -msgid "" -"Do not worry: the @code{%mdns-host-lookup-nss} variable (see below) " -"contains this configuration, so you will not have to type it if all you want " -"is to have @code{.local} host lookup working." +#: doc/guix.texi:20368 +msgid "Do not worry: the @code{%mdns-host-lookup-nss} variable (see below) contains this configuration, so you will not have to type it if all you want is to have @code{.local} host lookup working." msgstr "" #. type: Plain text -#: doc/guix.texi:19892 -msgid "" -"Note that, in this case, in addition to setting the @code{name-service-" -"switch} of the @code{operating-system} declaration, you also need to use " -"@code{avahi-service} (@pxref{Networking Services, @code{avahi-service}}), or " -"@var{%desktop-services}, which includes it (@pxref{Desktop Services}). " -"Doing this makes @code{nss-mdns} accessible to the name service cache daemon " -"(@pxref{Base Services, @code{nscd-service}})." +#: doc/guix.texi:20376 +msgid "Note that, in this case, in addition to setting the @code{name-service-switch} of the @code{operating-system} declaration, you also need to use @code{avahi-service} (@pxref{Networking Services, @code{avahi-service}}), or @var{%desktop-services}, which includes it (@pxref{Desktop Services}). Doing this makes @code{nss-mdns} accessible to the name service cache daemon (@pxref{Base Services, @code{nscd-service}})." msgstr "" #. type: Plain text -#: doc/guix.texi:19895 -msgid "" -"For convenience, the following variables provide typical NSS configurations." +#: doc/guix.texi:20379 +msgid "For convenience, the following variables provide typical NSS configurations." msgstr "" #. type: defvr -#: doc/guix.texi:19896 +#: doc/guix.texi:20380 #, no-wrap msgid "{Scheme Variable} %default-nss" msgstr "" #. type: defvr -#: doc/guix.texi:19899 -msgid "" -"This is the default name service switch configuration, a @code{name-service-" -"switch} object." +#: doc/guix.texi:20383 +msgid "This is the default name service switch configuration, a @code{name-service-switch} object." msgstr "" #. type: defvr -#: doc/guix.texi:19901 +#: doc/guix.texi:20385 #, no-wrap msgid "{Scheme Variable} %mdns-host-lookup-nss" msgstr "" #. type: defvr -#: doc/guix.texi:19904 -msgid "" -"This is the name service switch configuration with support for host name " -"lookup over multicast DNS (mDNS) for host names ending in @code{.local}." +#: doc/guix.texi:20388 +msgid "This is the name service switch configuration with support for host name lookup over multicast DNS (mDNS) for host names ending in @code{.local}." msgstr "" #. type: Plain text -#: doc/guix.texi:19914 -msgid "" -"The reference for name service switch configuration is given below. It is a " -"direct mapping of the configuration file format of the C library , so please " -"refer to the C library manual for more information (@pxref{NSS Configuration " -"File,,, libc, The GNU C Library Reference Manual}). Compared to the " -"configuration file format of libc NSS, it has the advantage not only of " -"adding this warm parenthetic feel that we like, but also static checks: you " -"will know about syntax errors and typos as soon as you run @command{guix " -"system}." +#: doc/guix.texi:20398 +msgid "The reference for name service switch configuration is given below. It is a direct mapping of the configuration file format of the C library , so please refer to the C library manual for more information (@pxref{NSS Configuration File,,, libc, The GNU C Library Reference Manual}). Compared to the configuration file format of libc NSS, it has the advantage not only of adding this warm parenthetic feel that we like, but also static checks: you will know about syntax errors and typos as soon as you run @command{guix system}." msgstr "" #. type: deftp -#: doc/guix.texi:19915 +#: doc/guix.texi:20399 #, no-wrap msgid "{Data Type} name-service-switch" msgstr "" #. type: deftp -#: doc/guix.texi:19920 -msgid "" -"This is the data type representation the configuration of libc's name " -"service switch (NSS). Each field below represents one of the supported " -"system databases." +#: doc/guix.texi:20404 +msgid "This is the data type representation the configuration of libc's name service switch (NSS). Each field below represents one of the supported system databases." msgstr "" #. type: item -#: doc/guix.texi:19922 +#: doc/guix.texi:20406 #, no-wrap msgid "aliases" msgstr "" #. type: itemx -#: doc/guix.texi:19923 +#: doc/guix.texi:20407 #, no-wrap msgid "ethers" msgstr "" #. type: itemx -#: doc/guix.texi:19925 +#: doc/guix.texi:20409 #, no-wrap msgid "gshadow" msgstr "" #. type: itemx -#: doc/guix.texi:19926 +#: doc/guix.texi:20410 #, no-wrap msgid "hosts" msgstr "" #. type: itemx -#: doc/guix.texi:19927 +#: doc/guix.texi:20411 #, no-wrap msgid "initgroups" msgstr "" #. type: itemx -#: doc/guix.texi:19928 +#: doc/guix.texi:20412 #, no-wrap msgid "netgroup" msgstr "" #. type: itemx -#: doc/guix.texi:19929 +#: doc/guix.texi:20413 #, no-wrap msgid "networks" msgstr "" #. type: itemx -#: doc/guix.texi:19931 +#: doc/guix.texi:20415 #, no-wrap msgid "public-key" msgstr "" #. type: itemx -#: doc/guix.texi:19932 +#: doc/guix.texi:20416 #, no-wrap msgid "rpc" msgstr "" #. type: itemx -#: doc/guix.texi:19934 +#: doc/guix.texi:20418 #, no-wrap msgid "shadow" msgstr "" #. type: table -#: doc/guix.texi:19937 -msgid "" -"The system databases handled by the NSS. Each of these fields must be a " -"list of @code{} objects (see below)." +#: doc/guix.texi:20421 +msgid "The system databases handled by the NSS. Each of these fields must be a list of @code{} objects (see below)." msgstr "" #. type: deftp -#: doc/guix.texi:19940 +#: doc/guix.texi:20424 #, no-wrap msgid "{Data Type} name-service" msgstr "" #. type: deftp -#: doc/guix.texi:19944 -msgid "" -"This is the data type representing an actual name service and the associated " -"lookup action." +#: doc/guix.texi:20428 +msgid "This is the data type representing an actual name service and the associated lookup action." msgstr "" #. type: table -#: doc/guix.texi:19949 -msgid "" -"A string denoting the name service (@pxref{Services in the NSS " -"configuration,,, libc, The GNU C Library Reference Manual})." +#: doc/guix.texi:20433 +msgid "A string denoting the name service (@pxref{Services in the NSS configuration,,, libc, The GNU C Library Reference Manual})." msgstr "" #. type: table -#: doc/guix.texi:19954 -msgid "" -"Note that name services listed here must be visible to nscd. This is " -"achieved by passing the @code{#:name-services} argument to @code{nscd-" -"service} the list of packages providing the needed name services " -"(@pxref{Base Services, @code{nscd-service}})." +#: doc/guix.texi:20438 +msgid "Note that name services listed here must be visible to nscd. This is achieved by passing the @code{#:name-services} argument to @code{nscd-service} the list of packages providing the needed name services (@pxref{Base Services, @code{nscd-service}})." msgstr "" #. type: item -#: doc/guix.texi:19955 +#: doc/guix.texi:20439 #, no-wrap msgid "reaction" msgstr "" #. type: table -#: doc/guix.texi:19959 -msgid "" -"An action specified using the @code{lookup-specification} macro " -"(@pxref{Actions in the NSS configuration,,, libc, The GNU C Library " -"Reference Manual}). For example:" +#: doc/guix.texi:20443 +msgid "An action specified using the @code{lookup-specification} macro (@pxref{Actions in the NSS configuration,,, libc, The GNU C Library Reference Manual}). For example:" msgstr "" #. type: example -#: doc/guix.texi:19963 +#: doc/guix.texi:20447 #, no-wrap msgid "" "(lookup-specification (unavailable => continue)\n" @@ -43378,29 +36537,17 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:19977 -msgid "" -"For bootstrapping purposes, the Linux-Libre kernel is passed an @dfn{initial " -"RAM disk}, or @dfn{initrd}. An initrd contains a temporary root file system " -"as well as an initialization script. The latter is responsible for mounting " -"the real root file system, and for loading any kernel modules that may be " -"needed to achieve that." +#: doc/guix.texi:20461 +msgid "For bootstrapping purposes, the Linux-Libre kernel is passed an @dfn{initial RAM disk}, or @dfn{initrd}. An initrd contains a temporary root file system as well as an initialization script. The latter is responsible for mounting the real root file system, and for loading any kernel modules that may be needed to achieve that." msgstr "" #. type: Plain text -#: doc/guix.texi:19986 -msgid "" -"The @code{initrd-modules} field of an @code{operating-system} declaration " -"allows you to specify Linux-libre kernel modules that must be available in " -"the initrd. In particular, this is where you would list modules needed to " -"actually drive the hard disk where your root partition is---although the " -"default value of @code{initrd-modules} should cover most use cases. For " -"example, assuming you need the @code{megaraid_sas} module in addition to the " -"default modules to be able to access your root file system, you would write:" +#: doc/guix.texi:20470 +msgid "The @code{initrd-modules} field of an @code{operating-system} declaration allows you to specify Linux-libre kernel modules that must be available in the initrd. In particular, this is where you would list modules needed to actually drive the hard disk where your root partition is---although the default value of @code{initrd-modules} should cover most use cases. For example, assuming you need the @code{megaraid_sas} module in addition to the default modules to be able to access your root file system, you would write:" msgstr "" #. type: example -#: doc/guix.texi:19991 +#: doc/guix.texi:20475 #, no-wrap msgid "" "(operating-system\n" @@ -43409,37 +36556,28 @@ msgid "" msgstr "" #. type: defvr -#: doc/guix.texi:19993 +#: doc/guix.texi:20477 #, no-wrap msgid "{Scheme Variable} %base-initrd-modules" msgstr "" #. type: defvr -#: doc/guix.texi:19995 +#: doc/guix.texi:20479 msgid "This is the list of kernel modules included in the initrd by default." msgstr "" #. type: Plain text -#: doc/guix.texi:20003 -msgid "" -"Furthermore, if you need lower-level customization, the @code{initrd} field " -"of an @code{operating-system} declaration allows you to specify which initrd " -"you would like to use. The @code{(gnu system linux-initrd)} module provides " -"three ways to build an initrd: the high-level @code{base-initrd} procedure " -"and the low-level @code{raw-initrd} and @code{expression->initrd} procedures." +#: doc/guix.texi:20487 +msgid "Furthermore, if you need lower-level customization, the @code{initrd} field of an @code{operating-system} declaration allows you to specify which initrd you would like to use. The @code{(gnu system linux-initrd)} module provides three ways to build an initrd: the high-level @code{base-initrd} procedure and the low-level @code{raw-initrd} and @code{expression->initrd} procedures." msgstr "" #. type: Plain text -#: doc/guix.texi:20008 -msgid "" -"The @code{base-initrd} procedure is intended to cover most common uses. For " -"example, if you want to add a bunch of kernel modules to be loaded at boot " -"time, you can define the @code{initrd} field of the operating system " -"declaration like this:" +#: doc/guix.texi:20492 +msgid "The @code{base-initrd} procedure is intended to cover most common uses. For example, if you want to add a bunch of kernel modules to be loaded at boot time, you can define the @code{initrd} field of the operating system declaration like this:" msgstr "" #. type: example -#: doc/guix.texi:20016 +#: doc/guix.texi:20500 #, no-wrap msgid "" "(initrd (lambda (file-systems . rest)\n" @@ -43451,440 +36589,316 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:20021 -msgid "" -"The @code{base-initrd} procedure also handles common use cases that involves " -"using the system as a QEMU guest, or as a ``live'' system with volatile root " -"file system." +#: doc/guix.texi:20505 +msgid "The @code{base-initrd} procedure also handles common use cases that involves using the system as a QEMU guest, or as a ``live'' system with volatile root file system." msgstr "" #. type: Plain text -#: doc/guix.texi:20028 -msgid "" -"The @code{base-initrd} procedure is built from @code{raw-initrd} procedure. " -"Unlike @code{base-initrd}, @code{raw-initrd} doesn't do anything high-level, " -"such as trying to guess which kernel modules and packages should be included " -"to the initrd. An example use of @code{raw-initrd} is when a user has a " -"custom Linux kernel configuration and default kernel modules included by " -"@code{base-initrd} are not available." +#: doc/guix.texi:20512 +msgid "The @code{base-initrd} procedure is built from @code{raw-initrd} procedure. Unlike @code{base-initrd}, @code{raw-initrd} doesn't do anything high-level, such as trying to guess which kernel modules and packages should be included to the initrd. An example use of @code{raw-initrd} is when a user has a custom Linux kernel configuration and default kernel modules included by @code{base-initrd} are not available." msgstr "" #. type: Plain text -#: doc/guix.texi:20033 -msgid "" -"The initial RAM disk produced by @code{base-initrd} or @code{raw-initrd} " -"honors several options passed on the Linux kernel command line (that is, " -"arguments passed @i{via} the @code{linux} command of GRUB, or the @code{-" -"append} option of QEMU), notably:" +#: doc/guix.texi:20517 +msgid "The initial RAM disk produced by @code{base-initrd} or @code{raw-initrd} honors several options passed on the Linux kernel command line (that is, arguments passed @i{via} the @code{linux} command of GRUB, or the @code{-append} option of QEMU), notably:" msgstr "" #. type: item -#: doc/guix.texi:20035 +#: doc/guix.texi:20519 #, no-wrap msgid "--load=@var{boot}" msgstr "" #. type: table -#: doc/guix.texi:20038 -msgid "" -"Tell the initial RAM disk to load @var{boot}, a file containing a Scheme " -"program, once it has mounted the root file system." +#: doc/guix.texi:20522 +msgid "Tell the initial RAM disk to load @var{boot}, a file containing a Scheme program, once it has mounted the root file system." msgstr "" #. type: table -#: doc/guix.texi:20042 -msgid "" -"GuixSD uses this option to yield control to a boot program that runs the " -"service activation programs and then spawns the GNU@tie{}Shepherd, the " -"initialization system." +#: doc/guix.texi:20526 +msgid "GuixSD uses this option to yield control to a boot program that runs the service activation programs and then spawns the GNU@tie{}Shepherd, the initialization system." msgstr "" #. type: item -#: doc/guix.texi:20043 +#: doc/guix.texi:20527 #, no-wrap msgid "--root=@var{root}" msgstr "" #. type: table -#: doc/guix.texi:20047 -msgid "" -"Mount @var{root} as the root file system. @var{root} can be a device name " -"like @code{/dev/sda1}, a file system label, or a file system UUID." +#: doc/guix.texi:20531 +msgid "Mount @var{root} as the root file system. @var{root} can be a device name like @code{/dev/sda1}, a file system label, or a file system UUID." msgstr "" #. type: table -#: doc/guix.texi:20051 -msgid "" -"Have @file{/run/booted-system} and @file{/run/current-system} point to " -"@var{system}." +#: doc/guix.texi:20535 +msgid "Have @file{/run/booted-system} and @file{/run/current-system} point to @var{system}." msgstr "" #. type: item -#: doc/guix.texi:20052 +#: doc/guix.texi:20536 #, no-wrap msgid "modprobe.blacklist=@var{modules}@dots{}" msgstr "" #. type: cindex -#: doc/guix.texi:20053 +#: doc/guix.texi:20537 #, no-wrap msgid "module, black-listing" msgstr "" #. type: cindex -#: doc/guix.texi:20054 +#: doc/guix.texi:20538 #, no-wrap msgid "black list, of kernel modules" msgstr "" #. type: table -#: doc/guix.texi:20059 -msgid "" -"Instruct the initial RAM disk as well as the @command{modprobe} command " -"(from the kmod package) to refuse to load @var{modules}. @var{modules} must " -"be a comma-separated list of module names---e.g., @code{usbkbd,9pnet}." +#: doc/guix.texi:20543 +msgid "Instruct the initial RAM disk as well as the @command{modprobe} command (from the kmod package) to refuse to load @var{modules}. @var{modules} must be a comma-separated list of module names---e.g., @code{usbkbd,9pnet}." msgstr "" #. type: item -#: doc/guix.texi:20060 +#: doc/guix.texi:20544 #, no-wrap msgid "--repl" msgstr "" #. type: table -#: doc/guix.texi:20066 -msgid "" -"Start a read-eval-print loop (REPL) from the initial RAM disk before it " -"tries to load kernel modules and to mount the root file system. Our " -"marketing team calls it @dfn{boot-to-Guile}. The Schemer in you will love " -"it. @xref{Using Guile Interactively,,, guile, GNU Guile Reference Manual}, " -"for more information on Guile's REPL." +#: doc/guix.texi:20550 +msgid "Start a read-eval-print loop (REPL) from the initial RAM disk before it tries to load kernel modules and to mount the root file system. Our marketing team calls it @dfn{boot-to-Guile}. The Schemer in you will love it. @xref{Using Guile Interactively,,, guile, GNU Guile Reference Manual}, for more information on Guile's REPL." msgstr "" #. type: Plain text -#: doc/guix.texi:20072 -msgid "" -"Now that you know all the features that initial RAM disks produced by " -"@code{base-initrd} and @code{raw-initrd} provide, here is how to use it and " -"customize it further." +#: doc/guix.texi:20556 +msgid "Now that you know all the features that initial RAM disks produced by @code{base-initrd} and @code{raw-initrd} provide, here is how to use it and customize it further." msgstr "" #. type: deffn -#: doc/guix.texi:20075 +#: doc/guix.texi:20559 #, no-wrap msgid "{Monadic Procedure} raw-initrd @var{file-systems} @" msgstr "" #. type: deffn -#: doc/guix.texi:20087 -msgid "" -"[#:linux-modules '()] [#:mapped-devices '()] @ [#:helper-packages '()] [#:" -"qemu-networking? #f] [#:volatile-root? #f] Return a monadic derivation that " -"builds a raw initrd. @var{file-systems} is a list of file systems to be " -"mounted by the initrd, possibly in addition to the root file system " -"specified on the kernel command line via @code{--root}. @var{linux-modules} " -"is a list of kernel modules to be loaded at boot time. @var{mapped-devices} " -"is a list of device mappings to realize before @var{file-systems} are " -"mounted (@pxref{Mapped Devices}). @var{helper-packages} is a list of " -"packages to be copied in the initrd. It may include @code{e2fsck/static} or " -"other packages needed by the initrd to check the root file system." +#: doc/guix.texi:20571 +msgid "[#:linux-modules '()] [#:mapped-devices '()] @ [#:helper-packages '()] [#:qemu-networking? #f] [#:volatile-root? #f] Return a monadic derivation that builds a raw initrd. @var{file-systems} is a list of file systems to be mounted by the initrd, possibly in addition to the root file system specified on the kernel command line via @code{--root}. @var{linux-modules} is a list of kernel modules to be loaded at boot time. @var{mapped-devices} is a list of device mappings to realize before @var{file-systems} are mounted (@pxref{Mapped Devices}). @var{helper-packages} is a list of packages to be copied in the initrd. It may include @code{e2fsck/static} or other packages needed by the initrd to check the root file system." msgstr "" #. type: deffn -#: doc/guix.texi:20091 -msgid "" -"When @var{qemu-networking?} is true, set up networking with the standard " -"QEMU parameters. When @var{virtio?} is true, load additional modules so " -"that the initrd can be used as a QEMU guest with para-virtualized I/O " -"drivers." +#: doc/guix.texi:20575 +msgid "When @var{qemu-networking?} is true, set up networking with the standard QEMU parameters. When @var{virtio?} is true, load additional modules so that the initrd can be used as a QEMU guest with para-virtualized I/O drivers." msgstr "" #. type: deffn -#: doc/guix.texi:20094 -msgid "" -"When @var{volatile-root?} is true, the root file system is writable but any " -"changes to it are lost." +#: doc/guix.texi:20578 +msgid "When @var{volatile-root?} is true, the root file system is writable but any changes to it are lost." msgstr "" #. type: deffn -#: doc/guix.texi:20096 +#: doc/guix.texi:20580 #, no-wrap msgid "{Monadic Procedure} base-initrd @var{file-systems} @" msgstr "" #. type: deffn -#: doc/guix.texi:20104 -msgid "" -"[#:mapped-devices '()] [#:qemu-networking? #f] [#:volatile-root? #f]@ [#:" -"linux-modules '()] Return a monadic derivation that builds a generic initrd, " -"with kernel modules taken from @var{linux}. @var{file-systems} is a list of " -"file-systems to be mounted by the initrd, possibly in addition to the root " -"file system specified on the kernel command line via @code{--root}. " -"@var{mapped-devices} is a list of device mappings to realize before " -"@var{file-systems} are mounted." +#: doc/guix.texi:20588 +msgid "[#:mapped-devices '()] [#:qemu-networking? #f] [#:volatile-root? #f]@ [#:linux-modules '()] Return a monadic derivation that builds a generic initrd, with kernel modules taken from @var{linux}. @var{file-systems} is a list of file-systems to be mounted by the initrd, possibly in addition to the root file system specified on the kernel command line via @code{--root}. @var{mapped-devices} is a list of device mappings to realize before @var{file-systems} are mounted." msgstr "" #. type: deffn -#: doc/guix.texi:20106 -msgid "" -"@var{qemu-networking?} and @var{volatile-root?} behaves as in @code{raw-" -"initrd}." +#: doc/guix.texi:20590 +msgid "@var{qemu-networking?} and @var{volatile-root?} behaves as in @code{raw-initrd}." msgstr "" #. type: deffn -#: doc/guix.texi:20111 -msgid "" -"The initrd is automatically populated with all the kernel modules necessary " -"for @var{file-systems} and for the given options. Additional kernel modules " -"can be listed in @var{linux-modules}. They will be added to the initrd, and " -"loaded at boot time in the order in which they appear." +#: doc/guix.texi:20595 +msgid "The initrd is automatically populated with all the kernel modules necessary for @var{file-systems} and for the given options. Additional kernel modules can be listed in @var{linux-modules}. They will be added to the initrd, and loaded at boot time in the order in which they appear." msgstr "" #. type: Plain text -#: doc/guix.texi:20118 -msgid "" -"Needless to say, the initrds we produce and use embed a statically-linked " -"Guile, and the initialization program is a Guile program. That gives a lot " -"of flexibility. The @code{expression->initrd} procedure builds such an " -"initrd, given the program to run in that initrd." +#: doc/guix.texi:20602 +msgid "Needless to say, the initrds we produce and use embed a statically-linked Guile, and the initialization program is a Guile program. That gives a lot of flexibility. The @code{expression->initrd} procedure builds such an initrd, given the program to run in that initrd." msgstr "" #. type: deffn -#: doc/guix.texi:20119 +#: doc/guix.texi:20603 #, no-wrap msgid "{Monadic Procedure} expression->initrd @var{exp} @" msgstr "" #. type: deffn -#: doc/guix.texi:20125 -msgid "" -"[#:guile %guile-static-stripped] [#:name \"guile-initrd\"] Return a " -"derivation that builds a Linux initrd (a gzipped cpio archive) containing " -"@var{guile} and that evaluates @var{exp}, a G-expression, upon booting. All " -"the derivations referenced by @var{exp} are automatically copied to the " -"initrd." +#: doc/guix.texi:20609 +msgid "[#:guile %guile-static-stripped] [#:name \"guile-initrd\"] Return a derivation that builds a Linux initrd (a gzipped cpio archive) containing @var{guile} and that evaluates @var{exp}, a G-expression, upon booting. All the derivations referenced by @var{exp} are automatically copied to the initrd." msgstr "" #. type: cindex -#: doc/guix.texi:20131 +#: doc/guix.texi:20615 #, no-wrap msgid "boot loader" msgstr "" #. type: Plain text -#: doc/guix.texi:20138 -msgid "" -"The operating system supports multiple bootloaders. The bootloader is " -"configured using @code{bootloader-configuration} declaration. All the " -"fields of this structure are bootloader agnostic except for one field, " -"@code{bootloader} that indicates the bootloader to be configured and " -"installed." +#: doc/guix.texi:20622 +msgid "The operating system supports multiple bootloaders. The bootloader is configured using @code{bootloader-configuration} declaration. All the fields of this structure are bootloader agnostic except for one field, @code{bootloader} that indicates the bootloader to be configured and installed." msgstr "" #. type: Plain text -#: doc/guix.texi:20143 -msgid "" -"Some of the bootloaders do not honor every field of @code{bootloader-" -"configuration}. For instance, the extlinux bootloader does not support " -"themes and thus ignores the @code{theme} field." +#: doc/guix.texi:20627 +msgid "Some of the bootloaders do not honor every field of @code{bootloader-configuration}. For instance, the extlinux bootloader does not support themes and thus ignores the @code{theme} field." msgstr "" #. type: deftp -#: doc/guix.texi:20144 +#: doc/guix.texi:20628 #, no-wrap msgid "{Data Type} bootloader-configuration" msgstr "" #. type: deftp -#: doc/guix.texi:20146 +#: doc/guix.texi:20630 msgid "The type of a bootloader configuration declaration." msgstr "" #. type: cindex -#: doc/guix.texi:20150 +#: doc/guix.texi:20634 #, no-wrap msgid "EFI, bootloader" msgstr "" #. type: cindex -#: doc/guix.texi:20151 +#: doc/guix.texi:20635 #, no-wrap msgid "UEFI, bootloader" msgstr "" #. type: cindex -#: doc/guix.texi:20152 +#: doc/guix.texi:20636 #, no-wrap msgid "BIOS, bootloader" msgstr "" #. type: table -#: doc/guix.texi:20158 -msgid "" -"The bootloader to use, as a @code{bootloader} object. For now @code{grub-" -"bootloader}, @code{grub-efi-bootloader}, @code{extlinux-bootloader} and " -"@code{u-boot-bootloader} are supported. @code{grub-efi-bootloader} allows " -"to boot on modern systems using the @dfn{Unified Extensible Firmware " -"Interface} (UEFI)." +#: doc/guix.texi:20642 +msgid "The bootloader to use, as a @code{bootloader} object. For now @code{grub-bootloader}, @code{grub-efi-bootloader}, @code{extlinux-bootloader} and @code{u-boot-bootloader} are supported. @code{grub-efi-bootloader} allows to boot on modern systems using the @dfn{Unified Extensible Firmware Interface} (UEFI)." msgstr "" #. type: table -#: doc/guix.texi:20161 -msgid "" -"Available bootloaders are described in @code{(gnu bootloader @dots{})} " -"modules." +#: doc/guix.texi:20645 +msgid "Available bootloaders are described in @code{(gnu bootloader @dots{})} modules." msgstr "" #. type: table -#: doc/guix.texi:20171 -msgid "" -"This is a string denoting the target onto which to install the bootloader. " -"The exact interpretation depends on the bootloader in question; for " -"@code{grub-bootloader}, for example, it should be a device name understood " -"by the bootloader @command{installer} command, such as @code{/dev/sda} or " -"@code{(hd0)} (for GRUB, @pxref{Invoking grub-install,,, grub, GNU GRUB " -"Manual}). For @code{grub-efi-bootloader}, it should be the path to a " -"mounted EFI file system." +#: doc/guix.texi:20655 +msgid "This is a string denoting the target onto which to install the bootloader. The exact interpretation depends on the bootloader in question; for @code{grub-bootloader}, for example, it should be a device name understood by the bootloader @command{installer} command, such as @code{/dev/sda} or @code{(hd0)} (for GRUB, @pxref{Invoking grub-install,,, grub, GNU GRUB Manual}). For @code{grub-efi-bootloader}, it should be the path to a mounted EFI file system." msgstr "" #. type: item -#: doc/guix.texi:20172 +#: doc/guix.texi:20656 #, no-wrap msgid "@code{menu-entries} (default: @code{()})" msgstr "" #. type: table -#: doc/guix.texi:20176 -msgid "" -"A possibly empty list of @code{menu-entry} objects (see below), denoting " -"entries to appear in the bootloader menu, in addition to the current system " -"entry and the entry pointing to previous system generations." +#: doc/guix.texi:20660 +msgid "A possibly empty list of @code{menu-entry} objects (see below), denoting entries to appear in the bootloader menu, in addition to the current system entry and the entry pointing to previous system generations." msgstr "" #. type: item -#: doc/guix.texi:20177 +#: doc/guix.texi:20661 #, no-wrap msgid "@code{default-entry} (default: @code{0})" msgstr "" #. type: table -#: doc/guix.texi:20180 -msgid "" -"The index of the default boot menu entry. Index 0 is for the entry of the " -"current system." +#: doc/guix.texi:20664 +msgid "The index of the default boot menu entry. Index 0 is for the entry of the current system." msgstr "" #. type: item -#: doc/guix.texi:20181 +#: doc/guix.texi:20665 #, no-wrap msgid "@code{timeout} (default: @code{5})" msgstr "" #. type: table -#: doc/guix.texi:20184 -msgid "" -"The number of seconds to wait for keyboard input before booting. Set to 0 " -"to boot immediately, and to -1 to wait indefinitely." +#: doc/guix.texi:20668 +msgid "The number of seconds to wait for keyboard input before booting. Set to 0 to boot immediately, and to -1 to wait indefinitely." msgstr "" #. type: item -#: doc/guix.texi:20185 +#: doc/guix.texi:20669 #, no-wrap msgid "@code{theme} (default: @var{#f})" msgstr "" #. type: table -#: doc/guix.texi:20189 -msgid "" -"The bootloader theme object describing the theme to use. If no theme is " -"provided, some bootloaders might use a default theme, that's true for GRUB." +#: doc/guix.texi:20673 +msgid "The bootloader theme object describing the theme to use. If no theme is provided, some bootloaders might use a default theme, that's true for GRUB." msgstr "" #. type: item -#: doc/guix.texi:20190 +#: doc/guix.texi:20674 #, no-wrap msgid "@code{terminal-outputs} (default: @code{'gfxterm})" msgstr "" #. type: table -#: doc/guix.texi:20197 -msgid "" -"The output terminals used for the bootloader boot menu, as a list of " -"symbols. GRUB accepts the values: @code{console}, @code{serial}, " -"@code{serial_@{0-3@}}, @code{gfxterm}, @code{vga_text}, @code{mda_text}, " -"@code{morse}, and @code{pkmodem}. This field corresponds to the GRUB " -"variable GRUB_TERMINAL_OUTPUT (@pxref{Simple configuration,,, grub,GNU GRUB " -"manual})." +#: doc/guix.texi:20681 +msgid "The output terminals used for the bootloader boot menu, as a list of symbols. GRUB accepts the values: @code{console}, @code{serial}, @code{serial_@{0-3@}}, @code{gfxterm}, @code{vga_text}, @code{mda_text}, @code{morse}, and @code{pkmodem}. This field corresponds to the GRUB variable GRUB_TERMINAL_OUTPUT (@pxref{Simple configuration,,, grub,GNU GRUB manual})." msgstr "" #. type: item -#: doc/guix.texi:20198 +#: doc/guix.texi:20682 #, no-wrap msgid "@code{terminal-inputs} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:20206 -msgid "" -"The input terminals used for the bootloader boot menu, as a list of " -"symbols. For GRUB, the default is the native platform terminal as " -"determined at run-time. GRUB accepts the values: @code{console}, " -"@code{serial}, @code{serial_@{0-3@}}, @code{at_keyboard}, and " -"@code{usb_keyboard}. This field corresponds to the GRUB variable " -"GRUB_TERMINAL_INPUT (@pxref{Simple configuration,,, grub,GNU GRUB manual})." +#: doc/guix.texi:20690 +msgid "The input terminals used for the bootloader boot menu, as a list of symbols. For GRUB, the default is the native platform terminal as determined at run-time. GRUB accepts the values: @code{console}, @code{serial}, @code{serial_@{0-3@}}, @code{at_keyboard}, and @code{usb_keyboard}. This field corresponds to the GRUB variable GRUB_TERMINAL_INPUT (@pxref{Simple configuration,,, grub,GNU GRUB manual})." msgstr "" #. type: item -#: doc/guix.texi:20207 +#: doc/guix.texi:20691 #, no-wrap msgid "@code{serial-unit} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:20211 -msgid "" -"The serial unit used by the bootloader, as an integer from 0 to 3. For " -"GRUB, it is chosen at run-time; currently GRUB chooses 0, which corresponds " -"to COM1 (@pxref{Serial terminal,,, grub,GNU GRUB manual})." +#: doc/guix.texi:20695 +msgid "The serial unit used by the bootloader, as an integer from 0 to 3. For GRUB, it is chosen at run-time; currently GRUB chooses 0, which corresponds to COM1 (@pxref{Serial terminal,,, grub,GNU GRUB manual})." msgstr "" #. type: item -#: doc/guix.texi:20212 +#: doc/guix.texi:20696 #, no-wrap msgid "@code{serial-speed} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:20216 -msgid "" -"The speed of the serial interface, as an integer. For GRUB, the default " -"value is chosen at run-time; currently GRUB chooses 9600@tie{}bps " -"(@pxref{Serial terminal,,, grub,GNU GRUB manual})." +#: doc/guix.texi:20700 +msgid "The speed of the serial interface, as an integer. For GRUB, the default value is chosen at run-time; currently GRUB chooses 9600@tie{}bps (@pxref{Serial terminal,,, grub,GNU GRUB manual})." msgstr "" #. type: cindex -#: doc/guix.texi:20220 +#: doc/guix.texi:20704 #, no-wrap msgid "dual boot" msgstr "" #. type: cindex -#: doc/guix.texi:20221 +#: doc/guix.texi:20705 #, no-wrap msgid "boot menu" msgstr "" #. type: Plain text -#: doc/guix.texi:20227 -msgid "" -"Should you want to list additional boot menu entries @i{via} the @code{menu-" -"entries} field above, you will need to create them with the @code{menu-" -"entry} form. For example, imagine you want to be able to boot another " -"distro (hard to imagine!), you can define a menu entry along these lines:" +#: doc/guix.texi:20711 +msgid "Should you want to list additional boot menu entries @i{via} the @code{menu-entries} field above, you will need to create them with the @code{menu-entry} form. For example, imagine you want to be able to boot another distro (hard to imagine!), you can define a menu entry along these lines:" msgstr "" #. type: example -#: doc/guix.texi:20234 +#: doc/guix.texi:20718 #, no-wrap msgid "" "(menu-entry\n" @@ -43895,176 +36909,147 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:20237 +#: doc/guix.texi:20721 msgid "Details below." msgstr "" #. type: deftp -#: doc/guix.texi:20238 +#: doc/guix.texi:20722 #, no-wrap msgid "{Data Type} menu-entry" msgstr "" #. type: deftp -#: doc/guix.texi:20240 +#: doc/guix.texi:20724 msgid "The type of an entry in the bootloader menu." msgstr "" #. type: code{#1} -#: doc/guix.texi:20243 +#: doc/guix.texi:20727 #, no-wrap msgid "label" msgstr "" #. type: table -#: doc/guix.texi:20245 +#: doc/guix.texi:20729 msgid "The label to show in the menu---e.g., @code{\"GNU\"}." msgstr "" #. type: code{#1} -#: doc/guix.texi:20246 +#: doc/guix.texi:20730 #, no-wrap msgid "linux" msgstr "" #. type: table -#: doc/guix.texi:20248 +#: doc/guix.texi:20732 msgid "The Linux kernel image to boot, for example:" msgstr "" #. type: example -#: doc/guix.texi:20251 +#: doc/guix.texi:20735 #, no-wrap msgid "(file-append linux-libre \"/bzImage\")\n" msgstr "" #. type: table -#: doc/guix.texi:20256 -msgid "" -"For GRUB, it is also possible to specify a device explicitly in the file " -"path using GRUB's device naming convention (@pxref{Naming convention,,, " -"grub, GNU GRUB manual}), for example:" +#: doc/guix.texi:20740 +msgid "For GRUB, it is also possible to specify a device explicitly in the file path using GRUB's device naming convention (@pxref{Naming convention,,, grub, GNU GRUB manual}), for example:" msgstr "" #. type: example -#: doc/guix.texi:20259 +#: doc/guix.texi:20743 #, no-wrap msgid "\"(hd0,msdos1)/boot/vmlinuz\"\n" msgstr "" #. type: table -#: doc/guix.texi:20263 -msgid "" -"If the device is specified explicitly as above, then the @code{device} field " -"is ignored entirely." +#: doc/guix.texi:20747 +msgid "If the device is specified explicitly as above, then the @code{device} field is ignored entirely." msgstr "" #. type: item -#: doc/guix.texi:20264 +#: doc/guix.texi:20748 #, no-wrap msgid "@code{linux-arguments} (default: @code{()})" msgstr "" #. type: table -#: doc/guix.texi:20267 -msgid "" -"The list of extra Linux kernel command-line arguments---e.g., " -"@code{(\"console=ttyS0\")}." +#: doc/guix.texi:20751 +msgid "The list of extra Linux kernel command-line arguments---e.g., @code{(\"console=ttyS0\")}." msgstr "" #. type: table -#: doc/guix.texi:20271 -msgid "" -"A G-Expression or string denoting the file name of the initial RAM disk to " -"use (@pxref{G-Expressions})." +#: doc/guix.texi:20755 +msgid "A G-Expression or string denoting the file name of the initial RAM disk to use (@pxref{G-Expressions})." msgstr "" #. type: item -#: doc/guix.texi:20271 +#: doc/guix.texi:20755 #, no-wrap msgid "@code{device} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:20274 -msgid "" -"The device where the kernel and initrd are to be found---i.e., for GRUB, " -"@dfn{root} for this menu entry (@pxref{root,,, grub, GNU GRUB manual})." +#: doc/guix.texi:20758 +msgid "The device where the kernel and initrd are to be found---i.e., for GRUB, @dfn{root} for this menu entry (@pxref{root,,, grub, GNU GRUB manual})." msgstr "" #. type: table -#: doc/guix.texi:20280 -msgid "" -"This may be a file system label (a string), a file system UUID (a " -"bytevector, @pxref{File Systems}), or @code{#f}, in which case the " -"bootloader will search the device containing the file specified by the " -"@code{linux} field (@pxref{search,,, grub, GNU GRUB manual}). It must " -"@emph{not} be an OS device name such as @file{/dev/sda1}." +#: doc/guix.texi:20764 +msgid "This may be a file system label (a string), a file system UUID (a bytevector, @pxref{File Systems}), or @code{#f}, in which case the bootloader will search the device containing the file specified by the @code{linux} field (@pxref{search,,, grub, GNU GRUB manual}). It must @emph{not} be an OS device name such as @file{/dev/sda1}." msgstr "" #. type: Plain text -#: doc/guix.texi:20287 -msgid "" -"Fow now only GRUB has theme support. GRUB themes are created using the " -"@code{grub-theme} form, which is not documented yet." +#: doc/guix.texi:20771 +msgid "Fow now only GRUB has theme support. GRUB themes are created using the @code{grub-theme} form, which is not documented yet." msgstr "" #. type: defvr -#: doc/guix.texi:20292 -msgid "" -"This is the default GRUB theme used by the operating system if no " -"@code{theme} field is specified in @code{bootloader-configuration} record." +#: doc/guix.texi:20776 +msgid "This is the default GRUB theme used by the operating system if no @code{theme} field is specified in @code{bootloader-configuration} record." msgstr "" #. type: defvr -#: doc/guix.texi:20295 -msgid "" -"It comes with a fancy background image displaying the GNU and Guix logos." +#: doc/guix.texi:20779 +msgid "It comes with a fancy background image displaying the GNU and Guix logos." msgstr "" #. type: subsection -#: doc/guix.texi:20299 +#: doc/guix.texi:20783 #, no-wrap msgid "Invoking @code{guix system}" msgstr "" #. type: Plain text -#: doc/guix.texi:20304 -msgid "" -"Once you have written an operating system declaration as seen in the " -"previous section, it can be @dfn{instantiated} using the @command{guix " -"system} command. The synopsis is:" +#: doc/guix.texi:20788 +msgid "Once you have written an operating system declaration as seen in the previous section, it can be @dfn{instantiated} using the @command{guix system} command. The synopsis is:" msgstr "" #. type: example -#: doc/guix.texi:20307 +#: doc/guix.texi:20791 #, no-wrap msgid "guix system @var{options}@dots{} @var{action} @var{file}\n" msgstr "" #. type: Plain text -#: doc/guix.texi:20313 -msgid "" -"@var{file} must be the name of a file containing an @code{operating-system} " -"declaration. @var{action} specifies how the operating system is " -"instantiated. Currently the following values are supported:" +#: doc/guix.texi:20797 +msgid "@var{file} must be the name of a file containing an @code{operating-system} declaration. @var{action} specifies how the operating system is instantiated. Currently the following values are supported:" msgstr "" #. type: item -#: doc/guix.texi:20315 +#: doc/guix.texi:20799 #, no-wrap msgid "search" msgstr "" #. type: table -#: doc/guix.texi:20318 -msgid "" -"Display available service type definitions that match the given regular " -"expressions, sorted by relevance:" +#: doc/guix.texi:20802 +msgid "Display available service type definitions that match the given regular expressions, sorted by relevance:" msgstr "" #. type: example -#: doc/guix.texi:20330 +#: doc/guix.texi:20814 #, no-wrap msgid "" "$ guix system search console font\n" @@ -44081,7 +37066,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:20336 +#: doc/guix.texi:20820 #, no-wrap msgid "" "name: mingetty\n" @@ -44093,7 +37078,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:20343 +#: doc/guix.texi:20827 #, no-wrap msgid "" "name: login\n" @@ -44106,270 +37091,194 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:20345 +#: doc/guix.texi:20829 #, no-wrap msgid "@dots{}\n" msgstr "" #. type: table -#: doc/guix.texi:20350 -msgid "" -"As for @command{guix package --search}, the result is written in " -"@code{recutils} format, which makes it easy to filter the output " -"(@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual})." +#: doc/guix.texi:20834 +msgid "As for @command{guix package --search}, the result is written in @code{recutils} format, which makes it easy to filter the output (@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual})." msgstr "" #. type: item -#: doc/guix.texi:20351 +#: doc/guix.texi:20835 #, no-wrap msgid "reconfigure" msgstr "" #. type: table -#: doc/guix.texi:20356 -msgid "" -"Build the operating system described in @var{file}, activate it, and switch " -"to it@footnote{This action (and the related actions @code{switch-generation} " -"and @code{roll-back}) are usable only on systems already running GuixSD.}." +#: doc/guix.texi:20840 +msgid "Build the operating system described in @var{file}, activate it, and switch to it@footnote{This action (and the related actions @code{switch-generation} and @code{roll-back}) are usable only on systems already running GuixSD.}." msgstr "" #. type: table -#: doc/guix.texi:20363 -msgid "" -"This effects all the configuration specified in @var{file}: user accounts, " -"system services, global package list, setuid programs, etc. The command " -"starts system services specified in @var{file} that are not currently " -"running; if a service is currently running, it does not attempt to upgrade " -"it since this would not be possible without stopping it first." +#: doc/guix.texi:20847 +msgid "This effects all the configuration specified in @var{file}: user accounts, system services, global package list, setuid programs, etc. The command starts system services specified in @var{file} that are not currently running; if a service is currently running, it does not attempt to upgrade it since this would not be possible without stopping it first." msgstr "" #. type: table -#: doc/guix.texi:20369 -msgid "" -"This command creates a new generation whose number is one greater than the " -"current generation (as reported by @command{guix system list-generations}). " -"If that generation already exists, it will be overwritten. This behavior " -"mirrors that of @command{guix package} (@pxref{Invoking guix package})." +#: doc/guix.texi:20853 +msgid "This command creates a new generation whose number is one greater than the current generation (as reported by @command{guix system list-generations}). If that generation already exists, it will be overwritten. This behavior mirrors that of @command{guix package} (@pxref{Invoking guix package})." msgstr "" #. type: table -#: doc/guix.texi:20374 -msgid "" -"It also adds a bootloader menu entry for the new OS configuration, ---unless " -"@option{--no-bootloader} is passed. For GRUB, it moves entries for older " -"configurations to a submenu, allowing you to choose an older system " -"generation at boot time should you need it." +#: doc/guix.texi:20858 +msgid "It also adds a bootloader menu entry for the new OS configuration, ---unless @option{--no-bootloader} is passed. For GRUB, it moves entries for older configurations to a submenu, allowing you to choose an older system generation at boot time should you need it." msgstr "" #. type: quotation -#: doc/guix.texi:20382 -msgid "" -"It is highly recommended to run @command{guix pull} once before you run " -"@command{guix system reconfigure} for the first time (@pxref{Invoking guix " -"pull}). Failing to do that you would see an older version of Guix once " -"@command{reconfigure} has completed." +#: doc/guix.texi:20866 +msgid "It is highly recommended to run @command{guix pull} once before you run @command{guix system reconfigure} for the first time (@pxref{Invoking guix pull}). Failing to do that you would see an older version of Guix once @command{reconfigure} has completed." msgstr "" #. type: item -#: doc/guix.texi:20384 +#: doc/guix.texi:20868 #, no-wrap msgid "switch-generation" msgstr "" #. type: table -#: doc/guix.texi:20393 -msgid "" -"Switch to an existing system generation. This action atomically switches " -"the system profile to the specified system generation. It also rearranges " -"the system's existing bootloader menu entries. It makes the menu entry for " -"the specified system generation the default, and it moves the entries for " -"the other generatiors to a submenu, if supported by the bootloader being " -"used. The next time the system boots, it will use the specified system " -"generation." +#: doc/guix.texi:20877 +msgid "Switch to an existing system generation. This action atomically switches the system profile to the specified system generation. It also rearranges the system's existing bootloader menu entries. It makes the menu entry for the specified system generation the default, and it moves the entries for the other generatiors to a submenu, if supported by the bootloader being used. The next time the system boots, it will use the specified system generation." msgstr "" #. type: table -#: doc/guix.texi:20397 -msgid "" -"The bootloader itself is not being reinstalled when using this command. " -"Thus, the installed bootloader is used with an updated configuration file." +#: doc/guix.texi:20881 +msgid "The bootloader itself is not being reinstalled when using this command. Thus, the installed bootloader is used with an updated configuration file." msgstr "" #. type: table -#: doc/guix.texi:20401 -msgid "" -"The target generation can be specified explicitly by its generation number. " -"For example, the following invocation would switch to system generation 7:" +#: doc/guix.texi:20885 +msgid "The target generation can be specified explicitly by its generation number. For example, the following invocation would switch to system generation 7:" msgstr "" #. type: example -#: doc/guix.texi:20404 +#: doc/guix.texi:20888 #, no-wrap msgid "guix system switch-generation 7\n" msgstr "" #. type: table -#: doc/guix.texi:20412 -msgid "" -"The target generation can also be specified relative to the current " -"generation with the form @code{+N} or @code{-N}, where @code{+3} means ``3 " -"generations ahead of the current generation,'' and @code{-1} means ``1 " -"generation prior to the current generation.'' When specifying a negative " -"value such as @code{-1}, you must precede it with @code{--} to prevent it " -"from being parsed as an option. For example:" +#: doc/guix.texi:20896 +msgid "The target generation can also be specified relative to the current generation with the form @code{+N} or @code{-N}, where @code{+3} means ``3 generations ahead of the current generation,'' and @code{-1} means ``1 generation prior to the current generation.'' When specifying a negative value such as @code{-1}, you must precede it with @code{--} to prevent it from being parsed as an option. For example:" msgstr "" #. type: example -#: doc/guix.texi:20415 +#: doc/guix.texi:20899 #, no-wrap msgid "guix system switch-generation -- -1\n" msgstr "" #. type: table -#: doc/guix.texi:20423 -msgid "" -"Currently, the effect of invoking this action is @emph{only} to switch the " -"system profile to an existing generation and rearrange the bootloader menu " -"entries. To actually start using the target system generation, you must " -"reboot after running this action. In the future, it will be updated to do " -"the same things as @command{reconfigure}, like activating and deactivating " -"services." +#: doc/guix.texi:20907 +msgid "Currently, the effect of invoking this action is @emph{only} to switch the system profile to an existing generation and rearrange the bootloader menu entries. To actually start using the target system generation, you must reboot after running this action. In the future, it will be updated to do the same things as @command{reconfigure}, like activating and deactivating services." msgstr "" #. type: table -#: doc/guix.texi:20425 +#: doc/guix.texi:20909 msgid "This action will fail if the specified generation does not exist." msgstr "" #. type: item -#: doc/guix.texi:20426 +#: doc/guix.texi:20910 #, no-wrap msgid "roll-back" msgstr "" #. type: table -#: doc/guix.texi:20432 -msgid "" -"Switch to the preceding system generation. The next time the system boots, " -"it will use the preceding system generation. This is the inverse of " -"@command{reconfigure}, and it is exactly the same as invoking " -"@command{switch-generation} with an argument of @code{-1}." +#: doc/guix.texi:20916 +msgid "Switch to the preceding system generation. The next time the system boots, it will use the preceding system generation. This is the inverse of @command{reconfigure}, and it is exactly the same as invoking @command{switch-generation} with an argument of @code{-1}." msgstr "" #. type: table -#: doc/guix.texi:20436 -msgid "" -"Currently, as with @command{switch-generation}, you must reboot after " -"running this action to actually start using the preceding system generation." +#: doc/guix.texi:20920 +msgid "Currently, as with @command{switch-generation}, you must reboot after running this action to actually start using the preceding system generation." msgstr "" #. type: table -#: doc/guix.texi:20441 -msgid "" -"Build the derivation of the operating system, which includes all the " -"configuration files and programs needed to boot and run the system. This " -"action does not actually install anything." +#: doc/guix.texi:20925 +msgid "Build the derivation of the operating system, which includes all the configuration files and programs needed to boot and run the system. This action does not actually install anything." msgstr "" #. type: item -#: doc/guix.texi:20442 +#: doc/guix.texi:20926 #, no-wrap msgid "init" msgstr "" #. type: table -#: doc/guix.texi:20446 -msgid "" -"Populate the given directory with all the files necessary to run the " -"operating system specified in @var{file}. This is useful for first-time " -"installations of GuixSD. For instance:" +#: doc/guix.texi:20930 +msgid "Populate the given directory with all the files necessary to run the operating system specified in @var{file}. This is useful for first-time installations of GuixSD. For instance:" msgstr "" #. type: example -#: doc/guix.texi:20449 +#: doc/guix.texi:20933 #, no-wrap msgid "guix system init my-os-config.scm /mnt\n" msgstr "" #. type: table -#: doc/guix.texi:20456 -msgid "" -"copies to @file{/mnt} all the store items required by the configuration " -"specified in @file{my-os-config.scm}. This includes configuration files, " -"packages, and so on. It also creates other essential files needed for the " -"system to operate correctly---e.g., the @file{/etc}, @file{/var}, and @file{/" -"run} directories, and the @file{/bin/sh} file." +#: doc/guix.texi:20940 +msgid "copies to @file{/mnt} all the store items required by the configuration specified in @file{my-os-config.scm}. This includes configuration files, packages, and so on. It also creates other essential files needed for the system to operate correctly---e.g., the @file{/etc}, @file{/var}, and @file{/run} directories, and the @file{/bin/sh} file." msgstr "" #. type: table -#: doc/guix.texi:20460 -msgid "" -"This command also installs bootloader on the target specified in @file{my-os-" -"config}, unless the @option{--no-bootloader} option was passed." +#: doc/guix.texi:20944 +msgid "This command also installs bootloader on the target specified in @file{my-os-config}, unless the @option{--no-bootloader} option was passed." msgstr "" #. type: item -#: doc/guix.texi:20461 +#: doc/guix.texi:20945 #, no-wrap msgid "vm" msgstr "" #. type: cindex -#: doc/guix.texi:20462 doc/guix.texi:20726 +#: doc/guix.texi:20946 doc/guix.texi:21210 #, no-wrap msgid "virtual machine" msgstr "" #. type: cindex -#: doc/guix.texi:20463 +#: doc/guix.texi:20947 #, no-wrap msgid "VM" msgstr "" #. type: anchor{#1} -#: doc/guix.texi:20470 +#: doc/guix.texi:20954 msgid "guix system vm" msgstr "" #. type: table -#: doc/guix.texi:20470 -msgid "" -"Build a virtual machine that contains the operating system declared in " -"@var{file}, and return a script to run that virtual machine (VM). Arguments " -"given to the script are passed to QEMU as in the example below, which " -"enables networking and requests 1@tie{}GiB of RAM for the emulated machine:" +#: doc/guix.texi:20954 +msgid "Build a virtual machine that contains the operating system declared in @var{file}, and return a script to run that virtual machine (VM). Arguments given to the script are passed to QEMU as in the example below, which enables networking and requests 1@tie{}GiB of RAM for the emulated machine:" msgstr "" #. type: example -#: doc/guix.texi:20473 +#: doc/guix.texi:20957 #, no-wrap msgid "$ /gnu/store/@dots{}-run-vm.sh -m 1024 -net user\n" msgstr "" #. type: table -#: doc/guix.texi:20476 +#: doc/guix.texi:20960 msgid "The VM shares its store with the host system." msgstr "" #. type: table -#: doc/guix.texi:20481 -msgid "" -"Additional file systems can be shared between the host and the VM using the " -"@code{--share} and @code{--expose} command-line options: the former " -"specifies a directory to be shared with write access, while the latter " -"provides read-only access to the shared directory." +#: doc/guix.texi:20965 +msgid "Additional file systems can be shared between the host and the VM using the @code{--share} and @code{--expose} command-line options: the former specifies a directory to be shared with write access, while the latter provides read-only access to the shared directory." msgstr "" #. type: table -#: doc/guix.texi:20485 -msgid "" -"The example below creates a VM in which the user's home directory is " -"accessible read-only, and where the @file{/exchange} directory is a read-" -"write mapping of @file{$HOME/tmp} on the host:" +#: doc/guix.texi:20969 +msgid "The example below creates a VM in which the user's home directory is accessible read-only, and where the @file{/exchange} directory is a read-write mapping of @file{$HOME/tmp} on the host:" msgstr "" #. type: example -#: doc/guix.texi:20489 +#: doc/guix.texi:20973 #, no-wrap msgid "" "guix system vm my-config.scm \\\n" @@ -44377,105 +37286,78 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:20494 -msgid "" -"On GNU/Linux, the default is to boot directly to the kernel; this has the " -"advantage of requiring only a very tiny root disk image since the store of " -"the host can then be mounted." +#: doc/guix.texi:20978 +msgid "On GNU/Linux, the default is to boot directly to the kernel; this has the advantage of requiring only a very tiny root disk image since the store of the host can then be mounted." msgstr "" #. type: table -#: doc/guix.texi:20500 -msgid "" -"The @code{--full-boot} option forces a complete boot sequence, starting with " -"the bootloader. This requires more disk space since a root image containing " -"at least the kernel, initrd, and bootloader data files must be created. The " -"@code{--image-size} option can be used to specify the size of the image." +#: doc/guix.texi:20984 +msgid "The @code{--full-boot} option forces a complete boot sequence, starting with the bootloader. This requires more disk space since a root image containing at least the kernel, initrd, and bootloader data files must be created. The @code{--image-size} option can be used to specify the size of the image." msgstr "" #. type: cindex -#: doc/guix.texi:20501 +#: doc/guix.texi:20985 #, no-wrap msgid "System images, creation in various formats" msgstr "" #. type: cindex -#: doc/guix.texi:20502 +#: doc/guix.texi:20986 #, no-wrap msgid "Creating system images in various formats" msgstr "" #. type: item -#: doc/guix.texi:20503 +#: doc/guix.texi:20987 #, no-wrap msgid "vm-image" msgstr "" #. type: itemx -#: doc/guix.texi:20504 +#: doc/guix.texi:20988 #, no-wrap msgid "disk-image" msgstr "" #. type: itemx -#: doc/guix.texi:20505 +#: doc/guix.texi:20989 #, no-wrap msgid "docker-image" msgstr "" #. type: table -#: doc/guix.texi:20513 -msgid "" -"Return a virtual machine, disk image, or Docker image of the operating " -"system declared in @var{file} that stands alone. By default, @command{guix " -"system} estimates the size of the image needed to store the system, but you " -"can use the @option{--image-size} option to specify a value. Docker images " -"are built to contain exactly what they need, so the @option{--image-size} " -"option is ignored in the case of @code{docker-image}." +#: doc/guix.texi:20997 +msgid "Return a virtual machine, disk image, or Docker image of the operating system declared in @var{file} that stands alone. By default, @command{guix system} estimates the size of the image needed to store the system, but you can use the @option{--image-size} option to specify a value. Docker images are built to contain exactly what they need, so the @option{--image-size} option is ignored in the case of @code{docker-image}." msgstr "" #. type: table -#: doc/guix.texi:20516 -msgid "" -"You can specify the root file system type by using the @option{--file-system-" -"type} option. It defaults to @code{ext4}." +#: doc/guix.texi:21000 +msgid "You can specify the root file system type by using the @option{--file-system-type} option. It defaults to @code{ext4}." msgstr "" #. type: table -#: doc/guix.texi:20520 -msgid "" -"When using @code{vm-image}, the returned image is in qcow2 format, which the " -"QEMU emulator can efficiently use. @xref{Running GuixSD in a VM}, for more " -"information on how to run the image in a virtual machine." +#: doc/guix.texi:21004 +msgid "When using @code{vm-image}, the returned image is in qcow2 format, which the QEMU emulator can efficiently use. @xref{Running GuixSD in a VM}, for more information on how to run the image in a virtual machine." msgstr "" #. type: table -#: doc/guix.texi:20525 -msgid "" -"When using @code{disk-image}, a raw disk image is produced; it can be copied " -"as is to a USB stick, for instance. Assuming @code{/dev/sdc} is the device " -"corresponding to a USB stick, one can copy the image to it using the " -"following command:" +#: doc/guix.texi:21009 +msgid "When using @code{disk-image}, a raw disk image is produced; it can be copied as is to a USB stick, for instance. Assuming @code{/dev/sdc} is the device corresponding to a USB stick, one can copy the image to it using the following command:" msgstr "" #. type: example -#: doc/guix.texi:20528 +#: doc/guix.texi:21012 #, no-wrap msgid "# dd if=$(guix system disk-image my-os.scm) of=/dev/sdc\n" msgstr "" #. type: table -#: doc/guix.texi:20535 -msgid "" -"When using @code{docker-image}, a Docker image is produced. Guix builds the " -"image from scratch, not from a pre-existing Docker base image. As a result, " -"it contains @emph{exactly} what you define in the operating system " -"configuration file. You can then load the image and launch a Docker " -"container using commands like the following:" +#: doc/guix.texi:21019 +msgid "When using @code{docker-image}, a Docker image is produced. Guix builds the image from scratch, not from a pre-existing Docker base image. As a result, it contains @emph{exactly} what you define in the operating system configuration file. You can then load the image and launch a Docker container using commands like the following:" msgstr "" #. type: example -#: doc/guix.texi:20541 +#: doc/guix.texi:21025 #, no-wrap msgid "" "image_id=\"$(docker load < guixsd-docker-image.tar.gz)\"\n" @@ -44485,45 +37367,27 @@ msgid "" msgstr "" #. type: table -#: doc/guix.texi:20551 -msgid "" -"This command starts a new Docker container from the specified image. It " -"will boot the GuixSD system in the usual manner, which means it will start " -"any services you have defined in the operating system configuration. " -"Depending on what you run in the Docker container, it may be necessary to " -"give the container additional permissions. For example, if you intend to " -"build software using Guix inside of the Docker container, you may need to " -"pass the @option{--privileged} option to @code{docker run}." +#: doc/guix.texi:21035 +msgid "This command starts a new Docker container from the specified image. It will boot the GuixSD system in the usual manner, which means it will start any services you have defined in the operating system configuration. Depending on what you run in the Docker container, it may be necessary to give the container additional permissions. For example, if you intend to build software using Guix inside of the Docker container, you may need to pass the @option{--privileged} option to @code{docker run}." msgstr "" #. type: table -#: doc/guix.texi:20559 -msgid "" -"Return a script to run the operating system declared in @var{file} within a " -"container. Containers are a set of lightweight isolation mechanisms " -"provided by the kernel Linux-libre. Containers are substantially less " -"resource-demanding than full virtual machines since the kernel, shared " -"objects, and other resources can be shared with the host system; this also " -"means they provide thinner isolation." +#: doc/guix.texi:21043 +msgid "Return a script to run the operating system declared in @var{file} within a container. Containers are a set of lightweight isolation mechanisms provided by the kernel Linux-libre. Containers are substantially less resource-demanding than full virtual machines since the kernel, shared objects, and other resources can be shared with the host system; this also means they provide thinner isolation." msgstr "" #. type: table -#: doc/guix.texi:20563 -msgid "" -"Currently, the script must be run as root in order to support more than a " -"single user and group. The container shares its store with the host system." +#: doc/guix.texi:21047 +msgid "Currently, the script must be run as root in order to support more than a single user and group. The container shares its store with the host system." msgstr "" #. type: table -#: doc/guix.texi:20567 -msgid "" -"As with the @code{vm} action (@pxref{guix system vm}), additional file " -"systems to be shared between the host and container can be specified using " -"the @option{--share} and @option{--expose} options:" +#: doc/guix.texi:21051 +msgid "As with the @code{vm} action (@pxref{guix system vm}), additional file systems to be shared between the host and container can be specified using the @option{--share} and @option{--expose} options:" msgstr "" #. type: example -#: doc/guix.texi:20571 +#: doc/guix.texi:21055 #, no-wrap msgid "" "guix system container my-config.scm \\\n" @@ -44531,332 +37395,260 @@ msgid "" msgstr "" #. type: quotation -#: doc/guix.texi:20575 +#: doc/guix.texi:21059 msgid "This option requires Linux-libre 3.19 or newer." msgstr "" #. type: Plain text -#: doc/guix.texi:20582 -msgid "" -"@var{options} can contain any of the common build options (@pxref{Common " -"Build Options}). In addition, @var{options} can contain one of the " -"following:" +#: doc/guix.texi:21066 +msgid "@var{options} can contain any of the common build options (@pxref{Common Build Options}). In addition, @var{options} can contain one of the following:" msgstr "" #. type: table -#: doc/guix.texi:20591 -msgid "" -"Consider the operating-system @var{expr} evaluates to. This is an " -"alternative to specifying a file which evaluates to an operating system. " -"This is used to generate the GuixSD installer @pxref{Building the " -"Installation Image})." +#: doc/guix.texi:21075 +msgid "Consider the operating-system @var{expr} evaluates to. This is an alternative to specifying a file which evaluates to an operating system. This is used to generate the GuixSD installer @pxref{Building the Installation Image})." msgstr "" #. type: table -#: doc/guix.texi:20596 -msgid "" -"Attempt to build for @var{system} instead of the host system type. This " -"works as per @command{guix build} (@pxref{Invoking guix build})." +#: doc/guix.texi:21080 +msgid "Attempt to build for @var{system} instead of the host system type. This works as per @command{guix build} (@pxref{Invoking guix build})." msgstr "" #. type: item -#: doc/guix.texi:20597 +#: doc/guix.texi:21081 #, no-wrap msgid "--derivation" msgstr "" #. type: table -#: doc/guix.texi:20601 -msgid "" -"Return the derivation file name of the given operating system without " -"building anything." +#: doc/guix.texi:21085 +msgid "Return the derivation file name of the given operating system without building anything." msgstr "" #. type: item -#: doc/guix.texi:20602 +#: doc/guix.texi:21086 #, no-wrap msgid "--file-system-type=@var{type}" msgstr "" #. type: table -#: doc/guix.texi:20606 -msgid "" -"For the @code{disk-image} action, create a file system of the given " -"@var{type} on the image." +#: doc/guix.texi:21090 +msgid "For the @code{disk-image} action, create a file system of the given @var{type} on the image." msgstr "" #. type: table -#: doc/guix.texi:20608 +#: doc/guix.texi:21092 msgid "When this option is omitted, @command{guix system} uses @code{ext4}." msgstr "" #. type: cindex -#: doc/guix.texi:20609 +#: doc/guix.texi:21093 #, no-wrap msgid "ISO-9660 format" msgstr "" #. type: cindex -#: doc/guix.texi:20610 +#: doc/guix.texi:21094 #, no-wrap msgid "CD image format" msgstr "" #. type: cindex -#: doc/guix.texi:20611 +#: doc/guix.texi:21095 #, no-wrap msgid "DVD image format" msgstr "" #. type: table -#: doc/guix.texi:20614 -msgid "" -"@code{--file-system-type=iso9660} produces an ISO-9660 image, suitable for " -"burning on CDs and DVDs." +#: doc/guix.texi:21098 +msgid "@code{--file-system-type=iso9660} produces an ISO-9660 image, suitable for burning on CDs and DVDs." msgstr "" #. type: item -#: doc/guix.texi:20615 +#: doc/guix.texi:21099 #, no-wrap msgid "--image-size=@var{size}" msgstr "" #. type: table -#: doc/guix.texi:20620 -msgid "" -"For the @code{vm-image} and @code{disk-image} actions, create an image of " -"the given @var{size}. @var{size} may be a number of bytes, or it may " -"include a unit as a suffix (@pxref{Block size, size specifications,, " -"coreutils, GNU Coreutils})." +#: doc/guix.texi:21104 +msgid "For the @code{vm-image} and @code{disk-image} actions, create an image of the given @var{size}. @var{size} may be a number of bytes, or it may include a unit as a suffix (@pxref{Block size, size specifications,, coreutils, GNU Coreutils})." msgstr "" #. type: table -#: doc/guix.texi:20624 -msgid "" -"When this option is omitted, @command{guix system} computes an estimate of " -"the image size as a function of the size of the system declared in " -"@var{file}." +#: doc/guix.texi:21108 +msgid "When this option is omitted, @command{guix system} computes an estimate of the image size as a function of the size of the system declared in @var{file}." msgstr "" #. type: item -#: doc/guix.texi:20630 +#: doc/guix.texi:21114 #, no-wrap msgid "--skip-checks" msgstr "--skip-checks" #. type: table -#: doc/guix.texi:20632 +#: doc/guix.texi:21116 msgid "Skip pre-installation safety checks." msgstr "" #. type: table -#: doc/guix.texi:20639 -msgid "" -"By default, @command{guix system init} and @command{guix system reconfigure} " -"perform safety checks: they make sure the file systems that appear in the " -"@code{operating-system} declaration actually exist (@pxref{File Systems}), " -"and that any Linux kernel modules that may be needed at boot time are listed " -"in @code{initrd-modules} (@pxref{Initial RAM Disk}). Passing this option " -"skips these tests altogether." +#: doc/guix.texi:21123 +msgid "By default, @command{guix system init} and @command{guix system reconfigure} perform safety checks: they make sure the file systems that appear in the @code{operating-system} declaration actually exist (@pxref{File Systems}), and that any Linux kernel modules that may be needed at boot time are listed in @code{initrd-modules} (@pxref{Initial RAM Disk}). Passing this option skips these tests altogether." msgstr "" #. type: item -#: doc/guix.texi:20640 +#: doc/guix.texi:21124 #, no-wrap msgid "--on-error=@var{strategy}" msgstr "" #. type: table -#: doc/guix.texi:20643 -msgid "" -"Apply @var{strategy} when an error occurs when reading @var{file}. " -"@var{strategy} may be one of the following:" +#: doc/guix.texi:21127 +msgid "Apply @var{strategy} when an error occurs when reading @var{file}. @var{strategy} may be one of the following:" msgstr "" #. type: item -#: doc/guix.texi:20645 +#: doc/guix.texi:21129 #, no-wrap msgid "nothing-special" msgstr "" #. type: table -#: doc/guix.texi:20647 +#: doc/guix.texi:21131 msgid "Report the error concisely and exit. This is the default strategy." msgstr "" #. type: item -#: doc/guix.texi:20648 +#: doc/guix.texi:21132 #, no-wrap msgid "backtrace" msgstr "" #. type: table -#: doc/guix.texi:20650 +#: doc/guix.texi:21134 msgid "Likewise, but also display a backtrace." msgstr "" #. type: item -#: doc/guix.texi:20651 +#: doc/guix.texi:21135 #, no-wrap msgid "debug" msgstr "" #. type: table -#: doc/guix.texi:20657 -msgid "" -"Report the error and enter Guile's debugger. From there, you can run " -"commands such as @code{,bt} to get a backtrace, @code{,locals} to display " -"local variable values, and more generally inspect the state of the program. " -"@xref{Debug Commands,,, guile, GNU Guile Reference Manual}, for a list of " -"available debugging commands." +#: doc/guix.texi:21141 +msgid "Report the error and enter Guile's debugger. From there, you can run commands such as @code{,bt} to get a backtrace, @code{,locals} to display local variable values, and more generally inspect the state of the program. @xref{Debug Commands,,, guile, GNU Guile Reference Manual}, for a list of available debugging commands." msgstr "" #. type: quotation -#: doc/guix.texi:20667 -msgid "" -"All the actions above, except @code{build} and @code{init}, can use KVM " -"support in the Linux-libre kernel. Specifically, if the machine has " -"hardware virtualization support, the corresponding KVM kernel module should " -"be loaded, and the @file{/dev/kvm} device node must exist and be readable " -"and writable by the user and by the build users of the daemon (@pxref{Build " -"Environment Setup})." +#: doc/guix.texi:21151 +msgid "All the actions above, except @code{build} and @code{init}, can use KVM support in the Linux-libre kernel. Specifically, if the machine has hardware virtualization support, the corresponding KVM kernel module should be loaded, and the @file{/dev/kvm} device node must exist and be readable and writable by the user and by the build users of the daemon (@pxref{Build Environment Setup})." msgstr "" #. type: Plain text -#: doc/guix.texi:20673 -msgid "" -"Once you have built, configured, re-configured, and re-re-configured your " -"GuixSD installation, you may find it useful to list the operating system " -"generations available on disk---and that you can choose from the bootloader " -"boot menu:" +#: doc/guix.texi:21157 +msgid "Once you have built, configured, re-configured, and re-re-configured your GuixSD installation, you may find it useful to list the operating system generations available on disk---and that you can choose from the bootloader boot menu:" msgstr "" #. type: item -#: doc/guix.texi:20676 +#: doc/guix.texi:21160 #, no-wrap msgid "list-generations" msgstr "" #. type: table -#: doc/guix.texi:20681 -msgid "" -"List a summary of each generation of the operating system available on disk, " -"in a human-readable way. This is similar to the @option{--list-generations} " -"option of @command{guix package} (@pxref{Invoking guix package})." +#: doc/guix.texi:21165 +msgid "List a summary of each generation of the operating system available on disk, in a human-readable way. This is similar to the @option{--list-generations} option of @command{guix package} (@pxref{Invoking guix package})." msgstr "" #. type: table -#: doc/guix.texi:20686 -msgid "" -"Optionally, one can specify a pattern, with the same syntax that is used in " -"@command{guix package --list-generations}, to restrict the list of " -"generations displayed. For instance, the following command displays " -"generations that are up to 10 days old:" +#: doc/guix.texi:21170 +msgid "Optionally, one can specify a pattern, with the same syntax that is used in @command{guix package --list-generations}, to restrict the list of generations displayed. For instance, the following command displays generations that are up to 10 days old:" msgstr "" #. type: example -#: doc/guix.texi:20689 +#: doc/guix.texi:21173 #, no-wrap msgid "$ guix system list-generations 10d\n" msgstr "" #. type: Plain text -#: doc/guix.texi:20696 -msgid "" -"The @command{guix system} command has even more to offer! The following sub-" -"commands allow you to visualize how your system services relate to each " -"other:" +#: doc/guix.texi:21180 +msgid "The @command{guix system} command has even more to offer! The following sub-commands allow you to visualize how your system services relate to each other:" msgstr "" #. type: anchor{#1} -#: doc/guix.texi:20698 +#: doc/guix.texi:21182 msgid "system-extension-graph" msgstr "" #. type: item -#: doc/guix.texi:20700 +#: doc/guix.texi:21184 #, no-wrap msgid "extension-graph" msgstr "" #. type: table -#: doc/guix.texi:20705 -msgid "" -"Emit in Dot/Graphviz format to standard output the @dfn{service extension " -"graph} of the operating system defined in @var{file} (@pxref{Service " -"Composition}, for more information on service extensions.)" +#: doc/guix.texi:21189 +msgid "Emit in Dot/Graphviz format to standard output the @dfn{service extension graph} of the operating system defined in @var{file} (@pxref{Service Composition}, for more information on service extensions.)" msgstr "" #. type: table -#: doc/guix.texi:20707 +#: doc/guix.texi:21191 msgid "The command:" msgstr "" #. type: example -#: doc/guix.texi:20710 +#: doc/guix.texi:21194 #, no-wrap msgid "$ guix system extension-graph @var{file} | dot -Tpdf > services.pdf\n" msgstr "" #. type: table -#: doc/guix.texi:20713 +#: doc/guix.texi:21197 msgid "produces a PDF file showing the extension relations among services." msgstr "" #. type: anchor{#1} -#: doc/guix.texi:20715 +#: doc/guix.texi:21199 msgid "system-shepherd-graph" msgstr "" #. type: item -#: doc/guix.texi:20715 +#: doc/guix.texi:21199 #, no-wrap msgid "shepherd-graph" msgstr "" #. type: table -#: doc/guix.texi:20720 -msgid "" -"Emit in Dot/Graphviz format to standard output the @dfn{dependency graph} of " -"shepherd services of the operating system defined in @var{file}. " -"@xref{Shepherd Services}, for more information and for an example graph." +#: doc/guix.texi:21204 +msgid "Emit in Dot/Graphviz format to standard output the @dfn{dependency graph} of shepherd services of the operating system defined in @var{file}. @xref{Shepherd Services}, for more information and for an example graph." msgstr "" #. type: subsection -#: doc/guix.texi:20724 +#: doc/guix.texi:21208 #, no-wrap msgid "Running GuixSD in a Virtual Machine" msgstr "" #. type: Plain text -#: doc/guix.texi:20734 -msgid "" -"To run GuixSD in a virtual machine (VM), one can either use the pre-built " -"GuixSD VM image distributed at @indicateurl{ftp://alpha.gnu.org/guix/guixsd-" -"vm-image-@value{VERSION}.@var{system}.tar.xz} , or build their own virtual " -"machine image using @command{guix system vm-image} (@pxref{Invoking guix " -"system}). The returned image is in qcow2 format, which the @uref{http://" -"qemu.org/, QEMU emulator} can efficiently use." +#: doc/guix.texi:21218 +msgid "To run GuixSD in a virtual machine (VM), one can either use the pre-built GuixSD VM image distributed at @indicateurl{ftp://alpha.gnu.org/guix/guixsd-vm-image-@value{VERSION}.@var{system}.tar.xz} , or build their own virtual machine image using @command{guix system vm-image} (@pxref{Invoking guix system}). The returned image is in qcow2 format, which the @uref{http://qemu.org/, QEMU emulator} can efficiently use." msgstr "" #. type: cindex -#: doc/guix.texi:20735 +#: doc/guix.texi:21219 #, no-wrap msgid "QEMU" msgstr "" #. type: Plain text -#: doc/guix.texi:20742 -msgid "" -"If you built your own image, you must copy it out of the store (@pxref{The " -"Store}) and give yourself permission to write to the copy before you can use " -"it. When invoking QEMU, you must choose a system emulator that is suitable " -"for your hardware platform. Here is a minimal QEMU invocation that will " -"boot the result of @command{guix system vm-image} on x86_64 hardware:" +#: doc/guix.texi:21226 +msgid "If you built your own image, you must copy it out of the store (@pxref{The Store}) and give yourself permission to write to the copy before you can use it. When invoking QEMU, you must choose a system emulator that is suitable for your hardware platform. Here is a minimal QEMU invocation that will boot the result of @command{guix system vm-image} on x86_64 hardware:" msgstr "" #. type: example -#: doc/guix.texi:20747 +#: doc/guix.texi:21231 #, no-wrap msgid "" "$ qemu-system-x86_64 \\\n" @@ -44865,171 +37657,132 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:20750 +#: doc/guix.texi:21234 msgid "Here is what each of these options means:" msgstr "" #. type: item -#: doc/guix.texi:20752 +#: doc/guix.texi:21236 #, no-wrap msgid "qemu-system-x86_64" msgstr "" #. type: table -#: doc/guix.texi:20755 -msgid "" -"This specifies the hardware platform to emulate. This should match the host." +#: doc/guix.texi:21239 +msgid "This specifies the hardware platform to emulate. This should match the host." msgstr "" #. type: item -#: doc/guix.texi:20756 +#: doc/guix.texi:21240 #, no-wrap msgid "-net user" msgstr "" #. type: table -#: doc/guix.texi:20760 -msgid "" -"Enable the unprivileged user-mode network stack. The guest OS can access " -"the host but not vice versa. This is the simplest way to get the guest OS " -"online." +#: doc/guix.texi:21244 +msgid "Enable the unprivileged user-mode network stack. The guest OS can access the host but not vice versa. This is the simplest way to get the guest OS online." msgstr "" #. type: item -#: doc/guix.texi:20761 +#: doc/guix.texi:21245 #, no-wrap msgid "-net nic,model=virtio" msgstr "" #. type: table -#: doc/guix.texi:20766 -msgid "" -"You must create a network interface of a given model. If you do not create " -"a NIC, the boot will fail. Assuming your hardware platform is x86_64, you " -"can get a list of available NIC models by running @command{qemu-system-" -"x86_64 -net nic,model=help}." +#: doc/guix.texi:21250 +msgid "You must create a network interface of a given model. If you do not create a NIC, the boot will fail. Assuming your hardware platform is x86_64, you can get a list of available NIC models by running @command{qemu-system-x86_64 -net nic,model=help}." msgstr "" #. type: item -#: doc/guix.texi:20767 +#: doc/guix.texi:21251 #, no-wrap msgid "-enable-kvm" msgstr "" #. type: table -#: doc/guix.texi:20771 -msgid "" -"If your system has hardware virtualization extensions, enabling the virtual " -"machine support (KVM) of the Linux kernel will make things run faster." +#: doc/guix.texi:21255 +msgid "If your system has hardware virtualization extensions, enabling the virtual machine support (KVM) of the Linux kernel will make things run faster." msgstr "" #. type: item -#: doc/guix.texi:20772 +#: doc/guix.texi:21256 #, no-wrap msgid "-m 256" msgstr "" #. type: table -#: doc/guix.texi:20775 -msgid "" -"RAM available to the guest OS, in mebibytes. Defaults to 128@tie{}MiB, " -"which may be insufficient for some operations." +#: doc/guix.texi:21259 +msgid "RAM available to the guest OS, in mebibytes. Defaults to 128@tie{}MiB, which may be insufficient for some operations." msgstr "" #. type: item -#: doc/guix.texi:20776 +#: doc/guix.texi:21260 #, no-wrap msgid "/tmp/qemu-image" msgstr "" #. type: table -#: doc/guix.texi:20778 +#: doc/guix.texi:21262 msgid "The file name of the qcow2 image." msgstr "" #. type: Plain text -#: doc/guix.texi:20788 -msgid "" -"The default @command{run-vm.sh} script that is returned by an invocation of " -"@command{guix system vm} does not add a @command{-net user} flag by " -"default. To get network access from within the vm add the @code{(dhcp-" -"client-service)} to your system definition and start the VM using " -"@command{`guix system vm config.scm` -net user}. An important caveat of " -"using @command{-net user} for networking is that @command{ping} will not " -"work, because it uses the ICMP protocol. You'll have to use a different " -"command to check for network connectivity, for example @command{guix " -"download}." +#: doc/guix.texi:21272 +msgid "The default @command{run-vm.sh} script that is returned by an invocation of @command{guix system vm} does not add a @command{-net user} flag by default. To get network access from within the vm add the @code{(dhcp-client-service)} to your system definition and start the VM using @command{`guix system vm config.scm` -net user}. An important caveat of using @command{-net user} for networking is that @command{ping} will not work, because it uses the ICMP protocol. You'll have to use a different command to check for network connectivity, for example @command{guix download}." msgstr "" #. type: subsubsection -#: doc/guix.texi:20789 +#: doc/guix.texi:21273 #, no-wrap msgid "Connecting Through SSH" msgstr "" #. type: Plain text -#: doc/guix.texi:20798 -msgid "" -"To enable SSH inside a VM you need to add a SSH server like @code{(dropbear-" -"service)} or @code{(lsh-service)} to your VM. The @code{(lsh-service}) " -"doesn't currently boot unsupervised. It requires you to type some " -"characters to initialize the randomness generator. In addition you need to " -"forward the SSH port, 22 by default, to the host. You can do this with" +#: doc/guix.texi:21282 +msgid "To enable SSH inside a VM you need to add a SSH server like @code{(dropbear-service)} or @code{(lsh-service)} to your VM. The @code{(lsh-service}) doesn't currently boot unsupervised. It requires you to type some characters to initialize the randomness generator. In addition you need to forward the SSH port, 22 by default, to the host. You can do this with" msgstr "" #. type: example -#: doc/guix.texi:20801 +#: doc/guix.texi:21285 #, no-wrap msgid "`guix system vm config.scm` -net user,hostfwd=tcp::10022-:22\n" msgstr "" #. type: Plain text -#: doc/guix.texi:20804 +#: doc/guix.texi:21288 msgid "To connect to the VM you can run" msgstr "" #. type: example -#: doc/guix.texi:20807 +#: doc/guix.texi:21291 #, no-wrap msgid "ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p 10022\n" msgstr "" #. type: Plain text -#: doc/guix.texi:20814 -msgid "" -"The @command{-p} tells @command{ssh} the port you want to connect to. " -"@command{-o UserKnownHostsFile=/dev/null} prevents @command{ssh} from " -"complaining every time you modify your @command{config.scm} file and the " -"@command{-o StrictHostKeyChecking=no} prevents you from having to allow a " -"connection to an unknown host every time you connect." +#: doc/guix.texi:21298 +msgid "The @command{-p} tells @command{ssh} the port you want to connect to. @command{-o UserKnownHostsFile=/dev/null} prevents @command{ssh} from complaining every time you modify your @command{config.scm} file and the @command{-o StrictHostKeyChecking=no} prevents you from having to allow a connection to an unknown host every time you connect." msgstr "" #. type: subsubsection -#: doc/guix.texi:20815 +#: doc/guix.texi:21299 #, no-wrap msgid "Using @command{virt-viewer} with Spice" msgstr "" #. type: Plain text -#: doc/guix.texi:20821 -msgid "" -"As an alternative to the default @command{qemu} graphical client you can use " -"the @command{remote-viewer} from the @command{virt-viewer} package. To " -"connect pass the @command{-spice port=5930,disable-ticketing} flag to " -"@command{qemu}. See previous section for further information on how to do " -"this." +#: doc/guix.texi:21305 +msgid "As an alternative to the default @command{qemu} graphical client you can use the @command{remote-viewer} from the @command{virt-viewer} package. To connect pass the @command{-spice port=5930,disable-ticketing} flag to @command{qemu}. See previous section for further information on how to do this." msgstr "" #. type: Plain text -#: doc/guix.texi:20824 -msgid "" -"Spice also allows you to do some nice stuff like share your clipboard with " -"your VM. To enable that you'll also have to pass the following flags to " -"@command{qemu}:" +#: doc/guix.texi:21308 +msgid "Spice also allows you to do some nice stuff like share your clipboard with your VM. To enable that you'll also have to pass the following flags to @command{qemu}:" msgstr "" #. type: example -#: doc/guix.texi:20830 +#: doc/guix.texi:21314 #, no-wrap msgid "" "-device virtio-serial-pci,id=virtio-serial0,max_ports=16,bus=pci.0,addr=0x5\n" @@ -45039,125 +37792,81 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:20833 -msgid "" -"You'll also need to add the @pxref{Miscellaneous Services, Spice service}." +#: doc/guix.texi:21317 +msgid "You'll also need to add the @pxref{Miscellaneous Services, Spice service}." msgstr "" #. type: Plain text -#: doc/guix.texi:20840 -msgid "" -"The previous sections show the available services and how one can combine " -"them in an @code{operating-system} declaration. But how do we define them " -"in the first place? And what is a service anyway?" +#: doc/guix.texi:21324 +msgid "The previous sections show the available services and how one can combine them in an @code{operating-system} declaration. But how do we define them in the first place? And what is a service anyway?" msgstr "" #. type: cindex -#: doc/guix.texi:20852 +#: doc/guix.texi:21336 #, no-wrap msgid "daemons" msgstr "" #. type: Plain text -#: doc/guix.texi:20865 -msgid "" -"Here we define a @dfn{service} as, broadly, something that extends the " -"functionality of the operating system. Often a service is a process---a " -"@dfn{daemon}---started when the system boots: a secure shell server, a Web " -"server, the Guix build daemon, etc. Sometimes a service is a daemon whose " -"execution can be triggered by another daemon---e.g., an FTP server started " -"by @command{inetd} or a D-Bus service activated by @command{dbus-daemon}. " -"Occasionally, a service does not map to a daemon. For instance, the " -"``account'' service collects user accounts and makes sure they exist when " -"the system runs; the ``udev'' service collects device management rules and " -"makes them available to the eudev daemon; the @file{/etc} service populates " -"the @file{/etc} directory of the system." +#: doc/guix.texi:21349 +msgid "Here we define a @dfn{service} as, broadly, something that extends the functionality of the operating system. Often a service is a process---a @dfn{daemon}---started when the system boots: a secure shell server, a Web server, the Guix build daemon, etc. Sometimes a service is a daemon whose execution can be triggered by another daemon---e.g., an FTP server started by @command{inetd} or a D-Bus service activated by @command{dbus-daemon}. Occasionally, a service does not map to a daemon. For instance, the ``account'' service collects user accounts and makes sure they exist when the system runs; the ``udev'' service collects device management rules and makes them available to the eudev daemon; the @file{/etc} service populates the @file{/etc} directory of the system." msgstr "" #. type: cindex -#: doc/guix.texi:20866 +#: doc/guix.texi:21350 #, no-wrap msgid "service extensions" msgstr "" #. type: Plain text -#: doc/guix.texi:20878 -msgid "" -"GuixSD services are connected by @dfn{extensions}. For instance, the secure " -"shell service @emph{extends} the Shepherd---the GuixSD initialization " -"system, running as PID@tie{}1---by giving it the command lines to start and " -"stop the secure shell daemon (@pxref{Networking Services, @code{lsh-" -"service}}); the UPower service extends the D-Bus service by passing it its " -"@file{.service} specification, and extends the udev service by passing it " -"device management rules (@pxref{Desktop Services, @code{upower-service}}); " -"the Guix daemon service extends the Shepherd by passing it the command lines " -"to start and stop the daemon, and extends the account service by passing it " -"a list of required build user accounts (@pxref{Base Services})." +#: doc/guix.texi:21362 +msgid "GuixSD services are connected by @dfn{extensions}. For instance, the secure shell service @emph{extends} the Shepherd---the GuixSD initialization system, running as PID@tie{}1---by giving it the command lines to start and stop the secure shell daemon (@pxref{Networking Services, @code{lsh-service}}); the UPower service extends the D-Bus service by passing it its @file{.service} specification, and extends the udev service by passing it device management rules (@pxref{Desktop Services, @code{upower-service}}); the Guix daemon service extends the Shepherd by passing it the command lines to start and stop the daemon, and extends the account service by passing it a list of required build user accounts (@pxref{Base Services})." msgstr "" #. type: Plain text -#: doc/guix.texi:20882 -msgid "" -"All in all, services and their ``extends'' relations form a directed acyclic " -"graph (DAG). If we represent services as boxes and extensions as arrows, a " -"typical system might provide something like this:" +#: doc/guix.texi:21366 +msgid "All in all, services and their ``extends'' relations form a directed acyclic graph (DAG). If we represent services as boxes and extensions as arrows, a typical system might provide something like this:" msgstr "" #. type: Plain text -#: doc/guix.texi:20884 +#: doc/guix.texi:21368 msgid "@image{images/service-graph,,5in,Typical service extension graph.}" msgstr "" #. type: cindex -#: doc/guix.texi:20885 +#: doc/guix.texi:21369 #, no-wrap msgid "system service" msgstr "" #. type: Plain text -#: doc/guix.texi:20893 -msgid "" -"At the bottom, we see the @dfn{system service}, which produces the directory " -"containing everything to run and boot the system, as returned by the " -"@command{guix system build} command. @xref{Service Reference}, to learn " -"about the other service types shown here. @xref{system-extension-graph, the " -"@command{guix system extension-graph} command}, for information on how to " -"generate this representation for a particular operating system definition." +#: doc/guix.texi:21377 +msgid "At the bottom, we see the @dfn{system service}, which produces the directory containing everything to run and boot the system, as returned by the @command{guix system build} command. @xref{Service Reference}, to learn about the other service types shown here. @xref{system-extension-graph, the @command{guix system extension-graph} command}, for information on how to generate this representation for a particular operating system definition." msgstr "" #. type: cindex -#: doc/guix.texi:20894 +#: doc/guix.texi:21378 #, no-wrap msgid "service types" msgstr "" #. type: Plain text -#: doc/guix.texi:20900 -msgid "" -"Technically, developers can define @dfn{service types} to express these " -"relations. There can be any number of services of a given type on the " -"system---for instance, a system running two instances of the GNU secure " -"shell server (lsh) has two instances of @var{lsh-service-type}, with " -"different parameters." +#: doc/guix.texi:21384 +msgid "Technically, developers can define @dfn{service types} to express these relations. There can be any number of services of a given type on the system---for instance, a system running two instances of the GNU secure shell server (lsh) has two instances of @var{lsh-service-type}, with different parameters." msgstr "" #. type: Plain text -#: doc/guix.texi:20903 -msgid "" -"The following section describes the programming interface for service types " -"and services." +#: doc/guix.texi:21387 +msgid "The following section describes the programming interface for service types and services." msgstr "" #. type: Plain text -#: doc/guix.texi:20910 -msgid "" -"A @dfn{service type} is a node in the DAG described above. Let us start " -"with a simple example, the service type for the Guix build daemon " -"(@pxref{Invoking guix-daemon}):" +#: doc/guix.texi:21394 +msgid "A @dfn{service type} is a node in the DAG described above. Let us start with a simple example, the service type for the Guix build daemon (@pxref{Invoking guix-daemon}):" msgstr "" #. type: example -#: doc/guix.texi:20920 +#: doc/guix.texi:21404 #, no-wrap msgid "" "(define guix-service-type\n" @@ -45171,90 +37880,75 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:20924 +#: doc/guix.texi:21408 msgid "It defines three things:" msgstr "" #. type: enumerate -#: doc/guix.texi:20928 +#: doc/guix.texi:21412 msgid "A name, whose sole purpose is to make inspection and debugging easier." msgstr "" #. type: enumerate -#: doc/guix.texi:20933 -msgid "" -"A list of @dfn{service extensions}, where each extension designates the " -"target service type and a procedure that, given the parameters of the " -"service, returns a list of objects to extend the service of that type." +#: doc/guix.texi:21417 +msgid "A list of @dfn{service extensions}, where each extension designates the target service type and a procedure that, given the parameters of the service, returns a list of objects to extend the service of that type." msgstr "" #. type: enumerate -#: doc/guix.texi:20936 -msgid "" -"Every service type has at least one service extension. The only exception " -"is the @dfn{boot service type}, which is the ultimate service." +#: doc/guix.texi:21420 +msgid "Every service type has at least one service extension. The only exception is the @dfn{boot service type}, which is the ultimate service." msgstr "" #. type: enumerate -#: doc/guix.texi:20939 +#: doc/guix.texi:21423 msgid "Optionally, a default value for instances of this type." msgstr "" #. type: Plain text -#: doc/guix.texi:20942 +#: doc/guix.texi:21426 msgid "In this example, @var{guix-service-type} extends three services:" msgstr "" #. type: item -#: doc/guix.texi:20944 +#: doc/guix.texi:21428 #, no-wrap msgid "shepherd-root-service-type" msgstr "" #. type: table -#: doc/guix.texi:20949 -msgid "" -"The @var{guix-shepherd-service} procedure defines how the Shepherd service " -"is extended. Namely, it returns a @code{} object that " -"defines how @command{guix-daemon} is started and stopped (@pxref{Shepherd " -"Services})." +#: doc/guix.texi:21433 +msgid "The @var{guix-shepherd-service} procedure defines how the Shepherd service is extended. Namely, it returns a @code{} object that defines how @command{guix-daemon} is started and stopped (@pxref{Shepherd Services})." msgstr "" #. type: item -#: doc/guix.texi:20950 +#: doc/guix.texi:21434 #, no-wrap msgid "account-service-type" msgstr "" #. type: table -#: doc/guix.texi:20955 -msgid "" -"This extension for this service is computed by @var{guix-accounts}, which " -"returns a list of @code{user-group} and @code{user-account} objects " -"representing the build user accounts (@pxref{Invoking guix-daemon})." +#: doc/guix.texi:21439 +msgid "This extension for this service is computed by @var{guix-accounts}, which returns a list of @code{user-group} and @code{user-account} objects representing the build user accounts (@pxref{Invoking guix-daemon})." msgstr "" #. type: item -#: doc/guix.texi:20956 +#: doc/guix.texi:21440 #, no-wrap msgid "activation-service-type" msgstr "" #. type: table -#: doc/guix.texi:20960 -msgid "" -"Here @var{guix-activation} is a procedure that returns a gexp, which is a " -"code snippet to run at ``activation time''---e.g., when the service is " -"booted." +#: doc/guix.texi:21444 +msgid "Here @var{guix-activation} is a procedure that returns a gexp, which is a code snippet to run at ``activation time''---e.g., when the service is booted." msgstr "" #. type: Plain text -#: doc/guix.texi:20963 +#: doc/guix.texi:21447 msgid "A service of this type is instantiated like this:" msgstr "" #. type: example -#: doc/guix.texi:20969 +#: doc/guix.texi:21453 #, no-wrap msgid "" "(service guix-service-type\n" @@ -45264,35 +37958,28 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:20977 -msgid "" -"The second argument to the @code{service} form is a value representing the " -"parameters of this specific service instance. @xref{guix-configuration-" -"type, @code{guix-configuration}}, for information about the @code{guix-" -"configuration} data type. When the value is omitted, the default value " -"specified by @code{guix-service-type} is used:" +#: doc/guix.texi:21461 +msgid "The second argument to the @code{service} form is a value representing the parameters of this specific service instance. @xref{guix-configuration-type, @code{guix-configuration}}, for information about the @code{guix-configuration} data type. When the value is omitted, the default value specified by @code{guix-service-type} is used:" msgstr "" #. type: example -#: doc/guix.texi:20980 +#: doc/guix.texi:21464 #, no-wrap msgid "(service guix-service-type)\n" msgstr "" #. type: Plain text -#: doc/guix.texi:20984 -msgid "" -"@var{guix-service-type} is quite simple because it extends other services " -"but is not extensible itself." +#: doc/guix.texi:21468 +msgid "@var{guix-service-type} is quite simple because it extends other services but is not extensible itself." msgstr "" #. type: Plain text -#: doc/guix.texi:20988 +#: doc/guix.texi:21472 msgid "The service type for an @emph{extensible} service looks like this:" msgstr "" #. type: example -#: doc/guix.texi:20995 +#: doc/guix.texi:21479 #, no-wrap msgid "" "(define udev-service-type\n" @@ -45304,7 +37991,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:21003 +#: doc/guix.texi:21487 #, no-wrap msgid "" " (compose concatenate) ;concatenate the list of rules\n" @@ -45317,128 +38004,96 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21009 -msgid "" -"This is the service type for the @uref{https://wiki.gentoo.org/wiki/Project:" -"Eudev, eudev device management daemon}. Compared to the previous example, " -"in addition to an extension of @var{shepherd-root-service-type}, we see two " -"new fields:" +#: doc/guix.texi:21493 +msgid "This is the service type for the @uref{https://wiki.gentoo.org/wiki/Project:Eudev, eudev device management daemon}. Compared to the previous example, in addition to an extension of @var{shepherd-root-service-type}, we see two new fields:" msgstr "" #. type: item -#: doc/guix.texi:21011 +#: doc/guix.texi:21495 #, no-wrap msgid "compose" msgstr "" #. type: table -#: doc/guix.texi:21014 -msgid "" -"This is the procedure to @dfn{compose} the list of extensions to services of " -"this type." +#: doc/guix.texi:21498 +msgid "This is the procedure to @dfn{compose} the list of extensions to services of this type." msgstr "" #. type: table -#: doc/guix.texi:21017 -msgid "" -"Services can extend the udev service by passing it lists of rules; we " -"compose those extensions simply by concatenating them." +#: doc/guix.texi:21501 +msgid "Services can extend the udev service by passing it lists of rules; we compose those extensions simply by concatenating them." msgstr "" #. type: item -#: doc/guix.texi:21018 +#: doc/guix.texi:21502 #, no-wrap msgid "extend" msgstr "" #. type: table -#: doc/guix.texi:21021 -msgid "" -"This procedure defines how the value of the service is @dfn{extended} with " -"the composition of the extensions." +#: doc/guix.texi:21505 +msgid "This procedure defines how the value of the service is @dfn{extended} with the composition of the extensions." msgstr "" #. type: table -#: doc/guix.texi:21026 -msgid "" -"Udev extensions are composed into a list of rules, but the udev service " -"value is itself a @code{} record. So here, we extend " -"that record by appending the list of rules it contains to the list of " -"contributed rules." +#: doc/guix.texi:21510 +msgid "Udev extensions are composed into a list of rules, but the udev service value is itself a @code{} record. So here, we extend that record by appending the list of rules it contains to the list of contributed rules." msgstr "" #. type: table -#: doc/guix.texi:21032 -msgid "" -"This is a string giving an overview of the service type. The string can " -"contain Texinfo markup (@pxref{Overview,,, texinfo, GNU Texinfo}). The " -"@command{guix system search} command searches these strings and displays " -"them (@pxref{Invoking guix system})." +#: doc/guix.texi:21516 +msgid "This is a string giving an overview of the service type. The string can contain Texinfo markup (@pxref{Overview,,, texinfo, GNU Texinfo}). The @command{guix system search} command searches these strings and displays them (@pxref{Invoking guix system})." msgstr "" #. type: Plain text -#: doc/guix.texi:21037 -msgid "" -"There can be only one instance of an extensible service type such as " -"@var{udev-service-type}. If there were more, the @code{service-extension} " -"specifications would be ambiguous." +#: doc/guix.texi:21521 +msgid "There can be only one instance of an extensible service type such as @var{udev-service-type}. If there were more, the @code{service-extension} specifications would be ambiguous." msgstr "" #. type: Plain text -#: doc/guix.texi:21040 -msgid "" -"Still here? The next section provides a reference of the programming " -"interface for services." +#: doc/guix.texi:21524 +msgid "Still here? The next section provides a reference of the programming interface for services." msgstr "" #. type: Plain text -#: doc/guix.texi:21048 -msgid "" -"We have seen an overview of service types (@pxref{Service Types and " -"Services}). This section provides a reference on how to manipulate services " -"and service types. This interface is provided by the @code{(gnu services)} " -"module." +#: doc/guix.texi:21532 +msgid "We have seen an overview of service types (@pxref{Service Types and Services}). This section provides a reference on how to manipulate services and service types. This interface is provided by the @code{(gnu services)} module." msgstr "" #. type: deffn -#: doc/guix.texi:21049 +#: doc/guix.texi:21533 #, no-wrap msgid "{Scheme Procedure} service @var{type} [@var{value}]" msgstr "" #. type: deffn -#: doc/guix.texi:21053 -msgid "" -"Return a new service of @var{type}, a @code{} object (see " -"below.) @var{value} can be any object; it represents the parameters of this " -"particular service instance." +#: doc/guix.texi:21537 +msgid "Return a new service of @var{type}, a @code{} object (see below.) @var{value} can be any object; it represents the parameters of this particular service instance." msgstr "" #. type: deffn -#: doc/guix.texi:21057 -msgid "" -"When @var{value} is omitted, the default value specified by @var{type} is " -"used; if @var{type} does not specify a default value, an error is raised." +#: doc/guix.texi:21541 +msgid "When @var{value} is omitted, the default value specified by @var{type} is used; if @var{type} does not specify a default value, an error is raised." msgstr "" #. type: deffn -#: doc/guix.texi:21059 +#: doc/guix.texi:21543 msgid "For instance, this:" msgstr "" #. type: example -#: doc/guix.texi:21062 +#: doc/guix.texi:21546 #, no-wrap msgid "(service openssh-service-type)\n" msgstr "" #. type: deffn -#: doc/guix.texi:21066 +#: doc/guix.texi:21550 msgid "is equivalent to this:" msgstr "" #. type: example -#: doc/guix.texi:21070 +#: doc/guix.texi:21554 #, no-wrap msgid "" "(service openssh-service-type\n" @@ -45446,55 +38101,50 @@ msgid "" msgstr "" #. type: deffn -#: doc/guix.texi:21074 -msgid "" -"In both cases the result is an instance of @code{openssh-service-type} with " -"the default configuration." +#: doc/guix.texi:21558 +msgid "In both cases the result is an instance of @code{openssh-service-type} with the default configuration." msgstr "" #. type: deffn -#: doc/guix.texi:21076 +#: doc/guix.texi:21560 #, no-wrap msgid "{Scheme Procedure} service? @var{obj}" msgstr "" #. type: deffn -#: doc/guix.texi:21078 +#: doc/guix.texi:21562 msgid "Return true if @var{obj} is a service." msgstr "" #. type: deffn -#: doc/guix.texi:21080 +#: doc/guix.texi:21564 #, no-wrap msgid "{Scheme Procedure} service-kind @var{service}" msgstr "" #. type: deffn -#: doc/guix.texi:21082 -msgid "" -"Return the type of @var{service}---i.e., a @code{} object." +#: doc/guix.texi:21566 +msgid "Return the type of @var{service}---i.e., a @code{} object." msgstr "" #. type: deffn -#: doc/guix.texi:21084 +#: doc/guix.texi:21568 #, no-wrap msgid "{Scheme Procedure} service-value @var{service}" msgstr "" #. type: deffn -#: doc/guix.texi:21087 -msgid "" -"Return the value associated with @var{service}. It represents its " -"parameters." +#: doc/guix.texi:21571 +msgid "Return the value associated with @var{service}. It represents its parameters." msgstr "" #. type: Plain text -#: doc/guix.texi:21090 +#: doc/guix.texi:21574 msgid "Here is an example of how a service is created and manipulated:" msgstr "" #. type: example -#: doc/guix.texi:21099 +#: doc/guix.texi:21583 #, no-wrap msgid "" "(define s\n" @@ -45508,7 +38158,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:21102 +#: doc/guix.texi:21586 #, no-wrap msgid "" "(service? s)\n" @@ -45517,7 +38167,7 @@ msgid "" msgstr "" #. type: example -#: doc/guix.texi:21105 +#: doc/guix.texi:21589 #, no-wrap msgid "" "(eq? (service-kind s) nginx-service-type)\n" @@ -45525,215 +38175,167 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21115 -msgid "" -"The @code{modify-services} form provides a handy way to change the " -"parameters of some of the services of a list such as @var{%base-services} " -"(@pxref{Base Services, @code{%base-services}}). It evaluates to a list of " -"services. Of course, you could always use standard list combinators such as " -"@code{map} and @code{fold} to do that (@pxref{SRFI-1, List Library,, guile, " -"GNU Guile Reference Manual}); @code{modify-services} simply provides a more " -"concise form for this common pattern." +#: doc/guix.texi:21599 +msgid "The @code{modify-services} form provides a handy way to change the parameters of some of the services of a list such as @var{%base-services} (@pxref{Base Services, @code{%base-services}}). It evaluates to a list of services. Of course, you could always use standard list combinators such as @code{map} and @code{fold} to do that (@pxref{SRFI-1, List Library,, guile, GNU Guile Reference Manual}); @code{modify-services} simply provides a more concise form for this common pattern." msgstr "" #. type: deffn -#: doc/guix.texi:21116 +#: doc/guix.texi:21600 #, no-wrap msgid "{Scheme Syntax} modify-services @var{services} @" msgstr "" #. type: deffn -#: doc/guix.texi:21118 +#: doc/guix.texi:21602 msgid "(@var{type} @var{variable} => @var{body}) @dots{}" msgstr "" #. type: deffn -#: doc/guix.texi:21121 -msgid "" -"Modify the services listed in @var{services} according to the given " -"clauses. Each clause has the form:" +#: doc/guix.texi:21605 +msgid "Modify the services listed in @var{services} according to the given clauses. Each clause has the form:" msgstr "" #. type: example -#: doc/guix.texi:21124 +#: doc/guix.texi:21608 #, no-wrap msgid "(@var{type} @var{variable} => @var{body})\n" msgstr "" #. type: deffn -#: doc/guix.texi:21131 -msgid "" -"where @var{type} is a service type---e.g., @code{guix-service-type}---and " -"@var{variable} is an identifier that is bound within the @var{body} to the " -"service parameters---e.g., a @code{guix-configuration} instance---of the " -"original service of that @var{type}." +#: doc/guix.texi:21615 +msgid "where @var{type} is a service type---e.g., @code{guix-service-type}---and @var{variable} is an identifier that is bound within the @var{body} to the service parameters---e.g., a @code{guix-configuration} instance---of the original service of that @var{type}." msgstr "" #. type: deffn -#: doc/guix.texi:21138 -msgid "" -"The @var{body} should evaluate to the new service parameters, which will be " -"used to configure the new service. This new service will replace the " -"original in the resulting list. Because a service's service parameters are " -"created using @code{define-record-type*}, you can write a succinct " -"@var{body} that evaluates to the new service parameters by using the " -"@code{inherit} feature that @code{define-record-type*} provides." +#: doc/guix.texi:21622 +msgid "The @var{body} should evaluate to the new service parameters, which will be used to configure the new service. This new service will replace the original in the resulting list. Because a service's service parameters are created using @code{define-record-type*}, you can write a succinct @var{body} that evaluates to the new service parameters by using the @code{inherit} feature that @code{define-record-type*} provides." msgstr "" #. type: deffn -#: doc/guix.texi:21140 +#: doc/guix.texi:21624 msgid "@xref{Using the Configuration System}, for example usage." msgstr "" #. type: Plain text -#: doc/guix.texi:21147 -msgid "" -"Next comes the programming interface for service types. This is something " -"you want to know when writing new service definitions, but not necessarily " -"when simply looking for ways to customize your @code{operating-system} " -"declaration." +#: doc/guix.texi:21631 +msgid "Next comes the programming interface for service types. This is something you want to know when writing new service definitions, but not necessarily when simply looking for ways to customize your @code{operating-system} declaration." msgstr "" #. type: deftp -#: doc/guix.texi:21148 +#: doc/guix.texi:21632 #, no-wrap msgid "{Data Type} service-type" msgstr "" #. type: cindex -#: doc/guix.texi:21149 +#: doc/guix.texi:21633 #, no-wrap msgid "service type" msgstr "" #. type: deftp -#: doc/guix.texi:21152 -msgid "" -"This is the representation of a @dfn{service type} (@pxref{Service Types and " -"Services})." +#: doc/guix.texi:21636 +msgid "This is the representation of a @dfn{service type} (@pxref{Service Types and Services})." msgstr "" #. type: table -#: doc/guix.texi:21156 +#: doc/guix.texi:21640 msgid "This is a symbol, used only to simplify inspection and debugging." msgstr "" #. type: code{#1} -#: doc/guix.texi:21157 +#: doc/guix.texi:21641 #, no-wrap msgid "extensions" msgstr "" #. type: table -#: doc/guix.texi:21159 +#: doc/guix.texi:21643 msgid "A non-empty list of @code{} objects (see below)." msgstr "" #. type: item -#: doc/guix.texi:21160 +#: doc/guix.texi:21644 #, no-wrap msgid "@code{compose} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:21164 -msgid "" -"If this is @code{#f}, then the service type denotes services that cannot be " -"extended---i.e., services that do not receive ``values'' from other services." +#: doc/guix.texi:21648 +msgid "If this is @code{#f}, then the service type denotes services that cannot be extended---i.e., services that do not receive ``values'' from other services." msgstr "" #. type: table -#: doc/guix.texi:21168 -msgid "" -"Otherwise, it must be a one-argument procedure. The procedure is called by " -"@code{fold-services} and is passed a list of values collected from " -"extensions. It may return any single value." +#: doc/guix.texi:21652 +msgid "Otherwise, it must be a one-argument procedure. The procedure is called by @code{fold-services} and is passed a list of values collected from extensions. It may return any single value." msgstr "" #. type: item -#: doc/guix.texi:21169 +#: doc/guix.texi:21653 #, no-wrap msgid "@code{extend} (default: @code{#f})" msgstr "" #. type: table -#: doc/guix.texi:21171 +#: doc/guix.texi:21655 msgid "If this is @code{#f}, services of this type cannot be extended." msgstr "" #. type: table -#: doc/guix.texi:21177 -msgid "" -"Otherwise, it must be a two-argument procedure: @code{fold-services} calls " -"it, passing it the initial value of the service as the first argument and " -"the result of applying @code{compose} to the extension values as the second " -"argument. It must return a value that is a valid parameter value for the " -"service instance." +#: doc/guix.texi:21661 +msgid "Otherwise, it must be a two-argument procedure: @code{fold-services} calls it, passing it the initial value of the service as the first argument and the result of applying @code{compose} to the extension values as the second argument. It must return a value that is a valid parameter value for the service instance." msgstr "" #. type: deftp -#: doc/guix.texi:21180 +#: doc/guix.texi:21664 msgid "@xref{Service Types and Services}, for examples." msgstr "" #. type: deffn -#: doc/guix.texi:21182 +#: doc/guix.texi:21666 #, no-wrap msgid "{Scheme Procedure} service-extension @var{target-type} @" msgstr "" #. type: deffn -#: doc/guix.texi:21188 -msgid "" -"@var{compute} Return a new extension for services of type @var{target-" -"type}. @var{compute} must be a one-argument procedure: @code{fold-services} " -"calls it, passing it the value associated with the service that provides the " -"extension; it must return a valid value for the target service." +#: doc/guix.texi:21672 +msgid "@var{compute} Return a new extension for services of type @var{target-type}. @var{compute} must be a one-argument procedure: @code{fold-services} calls it, passing it the value associated with the service that provides the extension; it must return a valid value for the target service." msgstr "" #. type: deffn -#: doc/guix.texi:21190 +#: doc/guix.texi:21674 #, no-wrap msgid "{Scheme Procedure} service-extension? @var{obj}" msgstr "" #. type: deffn -#: doc/guix.texi:21192 +#: doc/guix.texi:21676 msgid "Return true if @var{obj} is a service extension." msgstr "" #. type: Plain text -#: doc/guix.texi:21198 -msgid "" -"Occasionally, you might want to simply extend an existing service. This " -"involves creating a new service type and specifying the extension of " -"interest, which can be verbose; the @code{simple-service} procedure provides " -"a shorthand for this." +#: doc/guix.texi:21682 +msgid "Occasionally, you might want to simply extend an existing service. This involves creating a new service type and specifying the extension of interest, which can be verbose; the @code{simple-service} procedure provides a shorthand for this." msgstr "" #. type: deffn -#: doc/guix.texi:21199 +#: doc/guix.texi:21683 #, no-wrap msgid "{Scheme Procedure} simple-service @var{name} @var{target} @var{value}" msgstr "" #. type: deffn -#: doc/guix.texi:21203 -msgid "" -"Return a service that extends @var{target} with @var{value}. This works by " -"creating a singleton service type @var{name}, of which the returned service " -"is an instance." +#: doc/guix.texi:21687 +msgid "Return a service that extends @var{target} with @var{value}. This works by creating a singleton service type @var{name}, of which the returned service is an instance." msgstr "" #. type: deffn -#: doc/guix.texi:21206 -msgid "" -"For example, this extends mcron (@pxref{Scheduled Job Execution}) with an " -"additional job:" +#: doc/guix.texi:21690 +msgid "For example, this extends mcron (@pxref{Scheduled Job Execution}) with an additional job:" msgstr "" #. type: example -#: doc/guix.texi:21210 +#: doc/guix.texi:21694 #, no-wrap msgid "" "(simple-service 'my-mcron-job mcron-service-type\n" @@ -45741,364 +38343,297 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21220 -msgid "" -"At the core of the service abstraction lies the @code{fold-services} " -"procedure, which is responsible for ``compiling'' a list of services down to " -"a single directory that contains everything needed to boot and run the " -"system---the directory shown by the @command{guix system build} command " -"(@pxref{Invoking guix system}). In essence, it propagates service " -"extensions down the service graph, updating each node parameters on the way, " -"until it reaches the root node." +#: doc/guix.texi:21704 +msgid "At the core of the service abstraction lies the @code{fold-services} procedure, which is responsible for ``compiling'' a list of services down to a single directory that contains everything needed to boot and run the system---the directory shown by the @command{guix system build} command (@pxref{Invoking guix system}). In essence, it propagates service extensions down the service graph, updating each node parameters on the way, until it reaches the root node." msgstr "" #. type: deffn -#: doc/guix.texi:21221 +#: doc/guix.texi:21705 #, no-wrap msgid "{Scheme Procedure} fold-services @var{services} @" msgstr "" #. type: deffn -#: doc/guix.texi:21225 -msgid "" -"[#:target-type @var{system-service-type}] Fold @var{services} by propagating " -"their extensions down to the root of type @var{target-type}; return the root " -"service adjusted accordingly." +#: doc/guix.texi:21709 +msgid "[#:target-type @var{system-service-type}] Fold @var{services} by propagating their extensions down to the root of type @var{target-type}; return the root service adjusted accordingly." msgstr "" #. type: Plain text -#: doc/guix.texi:21229 -msgid "" -"Lastly, the @code{(gnu services)} module also defines several essential " -"service types, some of which are listed below." +#: doc/guix.texi:21713 +msgid "Lastly, the @code{(gnu services)} module also defines several essential service types, some of which are listed below." msgstr "" #. type: defvr -#: doc/guix.texi:21230 +#: doc/guix.texi:21714 #, no-wrap msgid "{Scheme Variable} system-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:21233 -msgid "" -"This is the root of the service graph. It produces the system directory as " -"returned by the @command{guix system build} command." +#: doc/guix.texi:21717 +msgid "This is the root of the service graph. It produces the system directory as returned by the @command{guix system build} command." msgstr "" #. type: defvr -#: doc/guix.texi:21235 +#: doc/guix.texi:21719 #, no-wrap msgid "{Scheme Variable} boot-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:21238 -msgid "" -"The type of the ``boot service'', which produces the @dfn{boot script}. The " -"boot script is what the initial RAM disk runs when booting." +#: doc/guix.texi:21722 +msgid "The type of the ``boot service'', which produces the @dfn{boot script}. The boot script is what the initial RAM disk runs when booting." msgstr "" #. type: defvr -#: doc/guix.texi:21240 +#: doc/guix.texi:21724 #, no-wrap msgid "{Scheme Variable} etc-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:21244 -msgid "" -"The type of the @file{/etc} service. This service is used to create files " -"under @file{/etc} and can be extended by passing it name/file tuples such as:" +#: doc/guix.texi:21728 +msgid "The type of the @file{/etc} service. This service is used to create files under @file{/etc} and can be extended by passing it name/file tuples such as:" msgstr "" #. type: example -#: doc/guix.texi:21247 +#: doc/guix.texi:21731 #, no-wrap msgid "(list `(\"issue\" ,(plain-file \"issue\" \"Welcome!\\n\")))\n" msgstr "" #. type: defvr -#: doc/guix.texi:21251 -msgid "" -"In this example, the effect would be to add an @file{/etc/issue} file " -"pointing to the given file." +#: doc/guix.texi:21735 +msgid "In this example, the effect would be to add an @file{/etc/issue} file pointing to the given file." msgstr "" #. type: defvr -#: doc/guix.texi:21253 +#: doc/guix.texi:21737 #, no-wrap msgid "{Scheme Variable} setuid-program-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:21257 -msgid "" -"Type for the ``setuid-program service''. This service collects lists of " -"executable file names, passed as gexps, and adds them to the set of setuid-" -"root programs on the system (@pxref{Setuid Programs})." +#: doc/guix.texi:21741 +msgid "Type for the ``setuid-program service''. This service collects lists of executable file names, passed as gexps, and adds them to the set of setuid-root programs on the system (@pxref{Setuid Programs})." msgstr "" #. type: defvr -#: doc/guix.texi:21259 +#: doc/guix.texi:21743 #, no-wrap msgid "{Scheme Variable} profile-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:21263 -msgid "" -"Type of the service that populates the @dfn{system profile}---i.e., the " -"programs under @file{/run/current-system/profile}. Other services can " -"extend it by passing it lists of packages to add to the system profile." +#: doc/guix.texi:21747 +msgid "Type of the service that populates the @dfn{system profile}---i.e., the programs under @file{/run/current-system/profile}. Other services can extend it by passing it lists of packages to add to the system profile." msgstr "" #. type: cindex -#: doc/guix.texi:21269 +#: doc/guix.texi:21753 #, no-wrap msgid "shepherd services" msgstr "" #. type: cindex -#: doc/guix.texi:21270 +#: doc/guix.texi:21754 #, no-wrap msgid "PID 1" msgstr "" #. type: cindex -#: doc/guix.texi:21271 +#: doc/guix.texi:21755 #, no-wrap msgid "init system" msgstr "" #. type: Plain text -#: doc/guix.texi:21277 -msgid "" -"The @code{(gnu services shepherd)} module provides a way to define services " -"managed by the GNU@tie{}Shepherd, which is the GuixSD initialization " -"system---the first process that is started when the system boots, also known " -"as PID@tie{}1 (@pxref{Introduction,,, shepherd, The GNU Shepherd Manual})." +#: doc/guix.texi:21761 +msgid "The @code{(gnu services shepherd)} module provides a way to define services managed by the GNU@tie{}Shepherd, which is the GuixSD initialization system---the first process that is started when the system boots, also known as PID@tie{}1 (@pxref{Introduction,,, shepherd, The GNU Shepherd Manual})." msgstr "" #. type: Plain text -#: doc/guix.texi:21283 -msgid "" -"Services in the Shepherd can depend on each other. For instance, the SSH " -"daemon may need to be started after the syslog daemon has been started, " -"which in turn can only happen once all the file systems have been mounted. " -"The simple operating system defined earlier (@pxref{Using the Configuration " -"System}) results in a service graph like this:" +#: doc/guix.texi:21767 +msgid "Services in the Shepherd can depend on each other. For instance, the SSH daemon may need to be started after the syslog daemon has been started, which in turn can only happen once all the file systems have been mounted. The simple operating system defined earlier (@pxref{Using the Configuration System}) results in a service graph like this:" msgstr "" #. type: Plain text -#: doc/guix.texi:21285 +#: doc/guix.texi:21769 msgid "@image{images/shepherd-graph,,5in,Typical shepherd service graph.}" msgstr "" #. type: Plain text -#: doc/guix.texi:21289 -msgid "" -"You can actually generate such a graph for any operating system definition " -"using the @command{guix system shepherd-graph} command (@pxref{system-" -"shepherd-graph, @command{guix system shepherd-graph}})." +#: doc/guix.texi:21773 +msgid "You can actually generate such a graph for any operating system definition using the @command{guix system shepherd-graph} command (@pxref{system-shepherd-graph, @command{guix system shepherd-graph}})." msgstr "" #. type: Plain text -#: doc/guix.texi:21293 -msgid "" -"The @var{%shepherd-root-service} is a service object representing PID@tie{}" -"1, of type @var{shepherd-root-service-type}; it can be extended by passing " -"it lists of @code{} objects." +#: doc/guix.texi:21777 +msgid "The @var{%shepherd-root-service} is a service object representing PID@tie{}1, of type @var{shepherd-root-service-type}; it can be extended by passing it lists of @code{} objects." msgstr "" #. type: deftp -#: doc/guix.texi:21294 +#: doc/guix.texi:21778 #, no-wrap msgid "{Data Type} shepherd-service" msgstr "" #. type: deftp -#: doc/guix.texi:21296 +#: doc/guix.texi:21780 msgid "The data type representing a service managed by the Shepherd." msgstr "" #. type: code{#1} -#: doc/guix.texi:21298 +#: doc/guix.texi:21782 #, no-wrap msgid "provision" msgstr "" #. type: table -#: doc/guix.texi:21300 +#: doc/guix.texi:21784 msgid "This is a list of symbols denoting what the service provides." msgstr "" #. type: table -#: doc/guix.texi:21305 -msgid "" -"These are the names that may be passed to @command{herd start}, " -"@command{herd status}, and similar commands (@pxref{Invoking herd,,, " -"shepherd, The GNU Shepherd Manual}). @xref{Slots of services, the " -"@code{provides} slot,, shepherd, The GNU Shepherd Manual}, for details." +#: doc/guix.texi:21789 +msgid "These are the names that may be passed to @command{herd start}, @command{herd status}, and similar commands (@pxref{Invoking herd,,, shepherd, The GNU Shepherd Manual}). @xref{Slots of services, the @code{provides} slot,, shepherd, The GNU Shepherd Manual}, for details." msgstr "" #. type: item -#: doc/guix.texi:21306 +#: doc/guix.texi:21790 #, no-wrap msgid "@code{requirements} (default: @code{'()})" msgstr "" #. type: table -#: doc/guix.texi:21308 +#: doc/guix.texi:21792 msgid "List of symbols denoting the Shepherd services this one depends on." msgstr "" #. type: item -#: doc/guix.texi:21309 +#: doc/guix.texi:21793 #, no-wrap msgid "@code{respawn?} (default: @code{#t})" msgstr "" #. type: table -#: doc/guix.texi:21312 -msgid "" -"Whether to restart the service when it stops, for instance when the " -"underlying process dies." +#: doc/guix.texi:21796 +msgid "Whether to restart the service when it stops, for instance when the underlying process dies." msgstr "" #. type: code{#1} -#: doc/guix.texi:21313 +#: doc/guix.texi:21797 #, no-wrap msgid "start" msgstr "" #. type: itemx -#: doc/guix.texi:21314 +#: doc/guix.texi:21798 #, no-wrap msgid "@code{stop} (default: @code{#~(const #f)})" msgstr "" #. type: table -#: doc/guix.texi:21320 -msgid "" -"The @code{start} and @code{stop} fields refer to the Shepherd's facilities " -"to start and stop processes (@pxref{Service De- and Constructors,,, " -"shepherd, The GNU Shepherd Manual}). They are given as G-expressions that " -"get expanded in the Shepherd configuration file (@pxref{G-Expressions})." +#: doc/guix.texi:21804 +msgid "The @code{start} and @code{stop} fields refer to the Shepherd's facilities to start and stop processes (@pxref{Service De- and Constructors,,, shepherd, The GNU Shepherd Manual}). They are given as G-expressions that get expanded in the Shepherd configuration file (@pxref{G-Expressions})." msgstr "" #. type: table -#: doc/guix.texi:21323 +#: doc/guix.texi:21807 msgid "A documentation string, as shown when running:" msgstr "" #. type: example -#: doc/guix.texi:21326 +#: doc/guix.texi:21810 #, no-wrap msgid "herd doc @var{service-name}\n" msgstr "" #. type: table -#: doc/guix.texi:21330 -msgid "" -"where @var{service-name} is one of the symbols in @var{provision} " -"(@pxref{Invoking herd,,, shepherd, The GNU Shepherd Manual})." +#: doc/guix.texi:21814 +msgid "where @var{service-name} is one of the symbols in @var{provision} (@pxref{Invoking herd,,, shepherd, The GNU Shepherd Manual})." msgstr "" #. type: item -#: doc/guix.texi:21331 +#: doc/guix.texi:21815 #, no-wrap msgid "@code{modules} (default: @var{%default-modules})" msgstr "" #. type: table -#: doc/guix.texi:21334 -msgid "" -"This is the list of modules that must be in scope when @code{start} and " -"@code{stop} are evaluated." +#: doc/guix.texi:21818 +msgid "This is the list of modules that must be in scope when @code{start} and @code{stop} are evaluated." msgstr "" #. type: defvr -#: doc/guix.texi:21338 +#: doc/guix.texi:21822 #, no-wrap msgid "{Scheme Variable} shepherd-root-service-type" msgstr "" #. type: defvr -#: doc/guix.texi:21340 +#: doc/guix.texi:21824 msgid "The service type for the Shepherd ``root service''---i.e., PID@tie{}1." msgstr "" #. type: defvr -#: doc/guix.texi:21344 -msgid "" -"This is the service type that extensions target when they want to create " -"shepherd services (@pxref{Service Types and Services}, for an example). " -"Each extension must pass a list of @code{}." +#: doc/guix.texi:21828 +msgid "This is the service type that extensions target when they want to create shepherd services (@pxref{Service Types and Services}, for an example). Each extension must pass a list of @code{}." msgstr "" #. type: defvr -#: doc/guix.texi:21346 +#: doc/guix.texi:21830 #, no-wrap msgid "{Scheme Variable} %shepherd-root-service" msgstr "" #. type: defvr -#: doc/guix.texi:21348 +#: doc/guix.texi:21832 msgid "This service represents PID@tie{}1." msgstr "" #. type: cindex -#: doc/guix.texi:21354 +#: doc/guix.texi:21838 #, no-wrap msgid "documentation, searching for" msgstr "" #. type: cindex -#: doc/guix.texi:21355 +#: doc/guix.texi:21839 #, no-wrap msgid "searching for documentation" msgstr "" #. type: cindex -#: doc/guix.texi:21356 +#: doc/guix.texi:21840 #, no-wrap msgid "Info, documentation format" msgstr "" #. type: cindex -#: doc/guix.texi:21357 +#: doc/guix.texi:21841 #, no-wrap msgid "man pages" msgstr "" #. type: cindex -#: doc/guix.texi:21358 +#: doc/guix.texi:21842 #, no-wrap msgid "manual pages" msgstr "" #. type: Plain text -#: doc/guix.texi:21365 -msgid "" -"In most cases packages installed with Guix come with documentation. There " -"are two main documentation formats: ``Info'', a browseable hypertext format " -"used for GNU software, and ``manual pages'' (or ``man pages''), the linear " -"documentation format traditionally found on Unix. Info manuals are accessed " -"with the @command{info} command or with Emacs, and man pages are accessed " -"using @command{man}." +#: doc/guix.texi:21849 +msgid "In most cases packages installed with Guix come with documentation. There are two main documentation formats: ``Info'', a browseable hypertext format used for GNU software, and ``manual pages'' (or ``man pages''), the linear documentation format traditionally found on Unix. Info manuals are accessed with the @command{info} command or with Emacs, and man pages are accessed using @command{man}." msgstr "" #. type: Plain text -#: doc/guix.texi:21369 -msgid "" -"You can look for documentation of software installed on your system by " -"keyword. For example, the following command searches for information about " -"``TLS'' in Info manuals:" +#: doc/guix.texi:21853 +msgid "You can look for documentation of software installed on your system by keyword. For example, the following command searches for information about ``TLS'' in Info manuals:" msgstr "" #. type: example -#: doc/guix.texi:21377 +#: doc/guix.texi:21861 #, no-wrap msgid "" "$ info -k TLS\n" @@ -46110,12 +38645,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21381 +#: doc/guix.texi:21865 msgid "The command below searches for the same keyword in man pages:" msgstr "" #. type: example -#: doc/guix.texi:21387 +#: doc/guix.texi:21871 #, no-wrap msgid "" "$ man -k TLS\n" @@ -46125,175 +38660,108 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21393 -msgid "" -"These searches are purely local to your computer so you have the guarantee " -"that documentation you find corresponds to what you have actually installed, " -"you can access it off-line, and your privacy is respected." +#: doc/guix.texi:21877 +msgid "These searches are purely local to your computer so you have the guarantee that documentation you find corresponds to what you have actually installed, you can access it off-line, and your privacy is respected." msgstr "" #. type: Plain text -#: doc/guix.texi:21396 -msgid "" -"Once you have these results, you can view the relevant documentation by " -"running, say:" +#: doc/guix.texi:21880 +msgid "Once you have these results, you can view the relevant documentation by running, say:" msgstr "" #. type: example -#: doc/guix.texi:21399 +#: doc/guix.texi:21883 #, no-wrap msgid "$ info \"(gnutls)Core TLS API\"\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21403 +#: doc/guix.texi:21887 msgid "or:" msgstr "" #. type: example -#: doc/guix.texi:21406 +#: doc/guix.texi:21890 #, no-wrap msgid "$ man certtool\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21414 -msgid "" -"Info manuals contain sections and indices as well as hyperlinks like those " -"found in Web pages. The @command{info} reader (@pxref{Top, Info reader,, " -"info-stnd, Stand-alone GNU Info}) and its Emacs counterpart (@pxref{Misc " -"Help,,, emacs, The GNU Emacs Manual}) provide intuitive key bindings to " -"navigate manuals. @xref{Getting Started,,, info, Info: An Introduction}, " -"for an introduction to Info navigation." +#: doc/guix.texi:21898 +msgid "Info manuals contain sections and indices as well as hyperlinks like those found in Web pages. The @command{info} reader (@pxref{Top, Info reader,, info-stnd, Stand-alone GNU Info}) and its Emacs counterpart (@pxref{Misc Help,,, emacs, The GNU Emacs Manual}) provide intuitive key bindings to navigate manuals. @xref{Getting Started,,, info, Info: An Introduction}, for an introduction to Info navigation." msgstr "" #. type: cindex -#: doc/guix.texi:21418 +#: doc/guix.texi:21902 #, no-wrap msgid "debugging files" msgstr "" #. type: Plain text -#: doc/guix.texi:21424 -msgid "" -"Program binaries, as produced by the GCC compilers for instance, are " -"typically written in the ELF format, with a section containing " -"@dfn{debugging information}. Debugging information is what allows the " -"debugger, GDB, to map binary code to source code; it is required to debug a " -"compiled program in good conditions." +#: doc/guix.texi:21908 +msgid "Program binaries, as produced by the GCC compilers for instance, are typically written in the ELF format, with a section containing @dfn{debugging information}. Debugging information is what allows the debugger, GDB, to map binary code to source code; it is required to debug a compiled program in good conditions." msgstr "" #. type: Plain text -#: doc/guix.texi:21432 -msgid "" -"The problem with debugging information is that is takes up a fair amount of " -"disk space. For example, debugging information for the GNU C Library weighs " -"in at more than 60 MiB. Thus, as a user, keeping all the debugging info of " -"all the installed programs is usually not an option. Yet, space savings " -"should not come at the cost of an impediment to debugging---especially in " -"the GNU system, which should make it easier for users to exert their " -"computing freedom (@pxref{GNU Distribution})." -msgstr "" -"Le problème avec les informations de débogage est qu'elles prennent pas mal " -"de place sur le disque. Par exemple, les informations de débogage de la " -"bibliothèque C de GNU prend plus de 60 Mo. Ainsi, en tant qu'utilisateur, " -"garder toutes les informations de débogage de tous les programmes installés " -"n'est souvent pas une possibilité. Cependant, l'économie d'espace ne devrait " -"pas empêcher le débogage — en particulier, dans le système GNU, qui devrait " -"faciliter pour ses utilisateurs l'exercice de leurs libertés " -"(@pxref{Distribution GNU})." +#: doc/guix.texi:21916 +msgid "The problem with debugging information is that is takes up a fair amount of disk space. For example, debugging information for the GNU C Library weighs in at more than 60 MiB. Thus, as a user, keeping all the debugging info of all the installed programs is usually not an option. Yet, space savings should not come at the cost of an impediment to debugging---especially in the GNU system, which should make it easier for users to exert their computing freedom (@pxref{GNU Distribution})." +msgstr "Le problème avec les informations de débogage est qu'elles prennent pas mal de place sur le disque. Par exemple, les informations de débogage de la bibliothèque C de GNU prend plus de 60 Mo. Ainsi, en tant qu'utilisateur, garder toutes les informations de débogage de tous les programmes installés n'est souvent pas une possibilité. Cependant, l'économie d'espace ne devrait pas empêcher le débogage — en particulier, dans le système GNU, qui devrait faciliter pour ses utilisateurs l'exercice de leurs libertés (@pxref{Distribution GNU})." #. type: Plain text -#: doc/guix.texi:21439 -msgid "" -"Thankfully, the GNU Binary Utilities (Binutils) and GDB provide a mechanism " -"that allows users to get the best of both worlds: debugging information can " -"be stripped from the binaries and stored in separate files. GDB is then " -"able to load debugging information from those files, when they are available " -"(@pxref{Separate Debug Files,,, gdb, Debugging with GDB})." +#: doc/guix.texi:21923 +msgid "Thankfully, the GNU Binary Utilities (Binutils) and GDB provide a mechanism that allows users to get the best of both worlds: debugging information can be stripped from the binaries and stored in separate files. GDB is then able to load debugging information from those files, when they are available (@pxref{Separate Debug Files,,, gdb, Debugging with GDB})." msgstr "" #. type: Plain text -#: doc/guix.texi:21447 -msgid "" -"The GNU distribution takes advantage of this by storing debugging " -"information in the @code{lib/debug} sub-directory of a separate package " -"output unimaginatively called @code{debug} (@pxref{Packages with Multiple " -"Outputs}). Users can choose to install the @code{debug} output of a package " -"when they need it. For instance, the following command installs the " -"debugging information for the GNU C Library and for GNU Guile:" +#: doc/guix.texi:21931 +msgid "The GNU distribution takes advantage of this by storing debugging information in the @code{lib/debug} sub-directory of a separate package output unimaginatively called @code{debug} (@pxref{Packages with Multiple Outputs}). Users can choose to install the @code{debug} output of a package when they need it. For instance, the following command installs the debugging information for the GNU C Library and for GNU Guile:" msgstr "" #. type: example -#: doc/guix.texi:21450 +#: doc/guix.texi:21934 #, no-wrap msgid "guix package -i glibc:debug guile:debug\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21456 -msgid "" -"GDB must then be told to look for debug files in the user's profile, by " -"setting the @code{debug-file-directory} variable (consider setting it from " -"the @file{~/.gdbinit} file, @pxref{Startup,,, gdb, Debugging with GDB}):" +#: doc/guix.texi:21940 +msgid "GDB must then be told to look for debug files in the user's profile, by setting the @code{debug-file-directory} variable (consider setting it from the @file{~/.gdbinit} file, @pxref{Startup,,, gdb, Debugging with GDB}):" msgstr "" #. type: example -#: doc/guix.texi:21459 +#: doc/guix.texi:21943 #, no-wrap msgid "(gdb) set debug-file-directory ~/.guix-profile/lib/debug\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21463 -msgid "" -"From there on, GDB will pick up debugging information from the @code{.debug} " -"files under @file{~/.guix-profile/lib/debug}." +#: doc/guix.texi:21947 +msgid "From there on, GDB will pick up debugging information from the @code{.debug} files under @file{~/.guix-profile/lib/debug}." msgstr "" #. type: Plain text -#: doc/guix.texi:21470 -msgid "" -"In addition, you will most likely want GDB to be able to show the source " -"code being debugged. To do that, you will have to unpack the source code of " -"the package of interest (obtained with @code{guix build --source}, " -"@pxref{Invoking guix build}), and to point GDB to that source directory " -"using the @code{directory} command (@pxref{Source Path, @code{directory},, " -"gdb, Debugging with GDB})." +#: doc/guix.texi:21954 +msgid "In addition, you will most likely want GDB to be able to show the source code being debugged. To do that, you will have to unpack the source code of the package of interest (obtained with @code{guix build --source}, @pxref{Invoking guix build}), and to point GDB to that source directory using the @code{directory} command (@pxref{Source Path, @code{directory},, gdb, Debugging with GDB})." msgstr "" #. type: Plain text -#: doc/guix.texi:21479 -msgid "" -"The @code{debug} output mechanism in Guix is implemented by the @code{gnu-" -"build-system} (@pxref{Build Systems}). Currently, it is opt-in---debugging " -"information is available only for the packages with definitions explicitly " -"declaring a @code{debug} output. This may be changed to opt-out in the " -"future if our build farm servers can handle the load. To check whether a " -"package has a @code{debug} output, use @command{guix package --list-" -"available} (@pxref{Invoking guix package})." +#: doc/guix.texi:21963 +msgid "The @code{debug} output mechanism in Guix is implemented by the @code{gnu-build-system} (@pxref{Build Systems}). Currently, it is opt-in---debugging information is available only for the packages with definitions explicitly declaring a @code{debug} output. This may be changed to opt-out in the future if our build farm servers can handle the load. To check whether a package has a @code{debug} output, use @command{guix package --list-available} (@pxref{Invoking guix package})." msgstr "" #. type: cindex -#: doc/guix.texi:21484 +#: doc/guix.texi:21968 #, no-wrap msgid "security updates" msgstr "" #. type: Plain text -#: doc/guix.texi:21493 -msgid "" -"Occasionally, important security vulnerabilities are discovered in software " -"packages and must be patched. Guix developers try hard to keep track of " -"known vulnerabilities and to apply fixes as soon as possible in the " -"@code{master} branch of Guix (we do not yet provide a ``stable'' branch " -"containing only security updates.) The @command{guix lint} tool helps " -"developers find out about vulnerable versions of software packages in the " -"distribution:" +#: doc/guix.texi:21977 +msgid "Occasionally, important security vulnerabilities are discovered in software packages and must be patched. Guix developers try hard to keep track of known vulnerabilities and to apply fixes as soon as possible in the @code{master} branch of Guix (we do not yet provide a ``stable'' branch containing only security updates.) The @command{guix lint} tool helps developers find out about vulnerable versions of software packages in the distribution:" msgstr "" #. type: smallexample -#: doc/guix.texi:21500 +#: doc/guix.texi:21984 #, no-wrap msgid "" "$ guix lint -c cve\n" @@ -46304,73 +38772,44 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21503 +#: doc/guix.texi:21987 msgid "@xref{Invoking guix lint}, for more information." msgstr "" #. type: quotation -#: doc/guix.texi:21507 -msgid "" -"As of version @value{VERSION}, the feature described below is considered " -"``beta''." +#: doc/guix.texi:21991 +msgid "As of version @value{VERSION}, the feature described below is considered ``beta''." msgstr "" #. type: Plain text -#: doc/guix.texi:21517 -msgid "" -"Guix follows a functional package management discipline " -"(@pxref{Introduction}), which implies that, when a package is changed, " -"@emph{every package that depends on it} must be rebuilt. This can " -"significantly slow down the deployment of fixes in core packages such as " -"libc or Bash, since basically the whole distribution would need to be " -"rebuilt. Using pre-built binaries helps (@pxref{Substitutes}), but " -"deployment may still take more time than desired." -msgstr "" -"Guix suit une discipline de gestion de paquets fonctionnelle " -"(@pxref{Introduction}), ce qui implique que lorsqu'un paquet change, " -"@emph{tous les paquets qui en dépendent} doivent être reconstruits. Cela " -"peut grandement ralentir le déploiement de corrections dans les paquets du " -"cœur comme libc ou bash comme presque toute la distribution aurait besoin " -"d'être reconstruite. Cela aide d'utiliser des binaires pré-construits " -"(@pxref{Substituts}), mais le déploiement peut toujours prendre plus de " -"temps de souhaité." +#: doc/guix.texi:22001 +msgid "Guix follows a functional package management discipline (@pxref{Introduction}), which implies that, when a package is changed, @emph{every package that depends on it} must be rebuilt. This can significantly slow down the deployment of fixes in core packages such as libc or Bash, since basically the whole distribution would need to be rebuilt. Using pre-built binaries helps (@pxref{Substitutes}), but deployment may still take more time than desired." +msgstr "Guix suit une discipline de gestion de paquets fonctionnelle (@pxref{Introduction}), ce qui implique que lorsqu'un paquet change, @emph{tous les paquets qui en dépendent} doivent être reconstruits. Cela peut grandement ralentir le déploiement de corrections dans les paquets du cœur comme libc ou bash comme presque toute la distribution aurait besoin d'être reconstruite. Cela aide d'utiliser des binaires pré-construits (@pxref{Substituts}), mais le déploiement peut toujours prendre plus de temps de souhaité." #. type: cindex -#: doc/guix.texi:21518 +#: doc/guix.texi:22002 #, no-wrap msgid "grafts" msgstr "" #. type: Plain text -#: doc/guix.texi:21526 -msgid "" -"To address this, Guix implements @dfn{grafts}, a mechanism that allows for " -"fast deployment of critical updates without the costs associated with a " -"whole-distribution rebuild. The idea is to rebuild only the package that " -"needs to be patched, and then to ``graft'' it onto packages explicitly " -"installed by the user and that were previously referring to the original " -"package. The cost of grafting is typically very low, and order of " -"magnitudes lower than a full rebuild of the dependency chain." +#: doc/guix.texi:22010 +msgid "To address this, Guix implements @dfn{grafts}, a mechanism that allows for fast deployment of critical updates without the costs associated with a whole-distribution rebuild. The idea is to rebuild only the package that needs to be patched, and then to ``graft'' it onto packages explicitly installed by the user and that were previously referring to the original package. The cost of grafting is typically very low, and order of magnitudes lower than a full rebuild of the dependency chain." msgstr "" #. type: cindex -#: doc/guix.texi:21527 +#: doc/guix.texi:22011 #, no-wrap msgid "replacements of packages, for grafts" msgstr "" #. type: Plain text -#: doc/guix.texi:21533 -msgid "" -"For instance, suppose a security update needs to be applied to Bash. Guix " -"developers will provide a package definition for the ``fixed'' Bash, say " -"@var{bash-fixed}, in the usual way (@pxref{Defining Packages}). Then, the " -"original package definition is augmented with a @code{replacement} field " -"pointing to the package containing the bug fix:" +#: doc/guix.texi:22017 +msgid "For instance, suppose a security update needs to be applied to Bash. Guix developers will provide a package definition for the ``fixed'' Bash, say @var{bash-fixed}, in the usual way (@pxref{Defining Packages}). Then, the original package definition is augmented with a @code{replacement} field pointing to the package containing the bug fix:" msgstr "" #. type: example -#: doc/guix.texi:21540 +#: doc/guix.texi:22024 #, no-wrap msgid "" "(define bash\n" @@ -46381,398 +38820,246 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21550 -msgid "" -"From there on, any package depending directly or indirectly on Bash---as " -"reported by @command{guix gc --requisites} (@pxref{Invoking guix gc})---that " -"is installed is automatically ``rewritten'' to refer to @var{bash-fixed} " -"instead of @var{bash}. This grafting process takes time proportional to the " -"size of the package, usually less than a minute for an ``average'' package " -"on a recent machine. Grafting is recursive: when an indirect dependency " -"requires grafting, then grafting ``propagates'' up to the package that the " -"user is installing." +#: doc/guix.texi:22034 +msgid "From there on, any package depending directly or indirectly on Bash---as reported by @command{guix gc --requisites} (@pxref{Invoking guix gc})---that is installed is automatically ``rewritten'' to refer to @var{bash-fixed} instead of @var{bash}. This grafting process takes time proportional to the size of the package, usually less than a minute for an ``average'' package on a recent machine. Grafting is recursive: when an indirect dependency requires grafting, then grafting ``propagates'' up to the package that the user is installing." msgstr "" #. type: Plain text -#: doc/guix.texi:21558 -msgid "" -"Currently, the length of the name and version of the graft and that of the " -"package it replaces (@var{bash-fixed} and @var{bash} in the example above) " -"must be equal. This restriction mostly comes from the fact that grafting " -"works by patching files, including binary files, directly. Other " -"restrictions may apply: for instance, when adding a graft to a package " -"providing a shared library, the original shared library and its replacement " -"must have the same @code{SONAME} and be binary-compatible." +#: doc/guix.texi:22042 +msgid "Currently, the length of the name and version of the graft and that of the package it replaces (@var{bash-fixed} and @var{bash} in the example above) must be equal. This restriction mostly comes from the fact that grafting works by patching files, including binary files, directly. Other restrictions may apply: for instance, when adding a graft to a package providing a shared library, the original shared library and its replacement must have the same @code{SONAME} and be binary-compatible." msgstr "" #. type: Plain text -#: doc/guix.texi:21562 -msgid "" -"The @option{--no-grafts} command-line option allows you to forcefully avoid " -"grafting (@pxref{Common Build Options, @option{--no-grafts}}). Thus, the " -"command:" +#: doc/guix.texi:22046 +msgid "The @option{--no-grafts} command-line option allows you to forcefully avoid grafting (@pxref{Common Build Options, @option{--no-grafts}}). Thus, the command:" msgstr "" #. type: example -#: doc/guix.texi:21565 +#: doc/guix.texi:22049 #, no-wrap msgid "guix build bash --no-grafts\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21569 +#: doc/guix.texi:22053 msgid "returns the store file name of the original Bash, whereas:" msgstr "" #. type: example -#: doc/guix.texi:21572 +#: doc/guix.texi:22056 #, no-wrap msgid "guix build bash\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21577 -msgid "" -"returns the store file name of the ``fixed'', replacement Bash. This allows " -"you to distinguish between the two variants of Bash." +#: doc/guix.texi:22061 +msgid "returns the store file name of the ``fixed'', replacement Bash. This allows you to distinguish between the two variants of Bash." msgstr "" #. type: Plain text -#: doc/guix.texi:21580 -msgid "" -"To verify which Bash your whole profile refers to, you can run " -"(@pxref{Invoking guix gc}):" +#: doc/guix.texi:22064 +msgid "To verify which Bash your whole profile refers to, you can run (@pxref{Invoking guix gc}):" msgstr "" #. type: example -#: doc/guix.texi:21583 +#: doc/guix.texi:22067 #, no-wrap msgid "guix gc -R `readlink -f ~/.guix-profile` | grep bash\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21588 -msgid "" -"@dots{} and compare the store file names that you get with those above. " -"Likewise for a complete GuixSD system generation:" +#: doc/guix.texi:22072 +msgid "@dots{} and compare the store file names that you get with those above. Likewise for a complete GuixSD system generation:" msgstr "" #. type: example -#: doc/guix.texi:21591 +#: doc/guix.texi:22075 #, no-wrap msgid "guix gc -R `guix system build my-config.scm` | grep bash\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21595 -msgid "" -"Lastly, to check which Bash running processes are using, you can use the " -"@command{lsof} command:" +#: doc/guix.texi:22079 +msgid "Lastly, to check which Bash running processes are using, you can use the @command{lsof} command:" msgstr "" #. type: example -#: doc/guix.texi:21598 +#: doc/guix.texi:22082 #, no-wrap msgid "lsof | grep /gnu/store/.*bash\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21615 -msgid "" -"From a programming viewpoint, the package definitions of the GNU " -"distribution are provided by Guile modules in the @code{(gnu packages " -"@dots{})} name space@footnote{Note that packages under the @code{(gnu " -"packages @dots{})} module name space are not necessarily ``GNU packages''. " -"This module naming scheme follows the usual Guile module naming convention: " -"@code{gnu} means that these modules are distributed as part of the GNU " -"system, and @code{packages} identifies modules that define packages.} " -"(@pxref{Modules, Guile modules,, guile, GNU Guile Reference Manual}). For " -"instance, the @code{(gnu packages emacs)} module exports a variable named " -"@code{emacs}, which is bound to a @code{} object (@pxref{Defining " -"Packages})." +#: doc/guix.texi:22099 +msgid "From a programming viewpoint, the package definitions of the GNU distribution are provided by Guile modules in the @code{(gnu packages @dots{})} name space@footnote{Note that packages under the @code{(gnu packages @dots{})} module name space are not necessarily ``GNU packages''. This module naming scheme follows the usual Guile module naming convention: @code{gnu} means that these modules are distributed as part of the GNU system, and @code{packages} identifies modules that define packages.} (@pxref{Modules, Guile modules,, guile, GNU Guile Reference Manual}). For instance, the @code{(gnu packages emacs)} module exports a variable named @code{emacs}, which is bound to a @code{} object (@pxref{Defining Packages})." msgstr "" #. type: Plain text -#: doc/guix.texi:21622 -msgid "" -"The @code{(gnu packages @dots{})} module name space is automatically scanned " -"for packages by the command-line tools. For instance, when running " -"@code{guix package -i emacs}, all the @code{(gnu packages @dots{})} modules " -"are scanned until one that exports a package object whose name is " -"@code{emacs} is found. This package search facility is implemented in the " -"@code{(gnu packages)} module." +#: doc/guix.texi:22106 +msgid "The @code{(gnu packages @dots{})} module name space is automatically scanned for packages by the command-line tools. For instance, when running @code{guix package -i emacs}, all the @code{(gnu packages @dots{})} modules are scanned until one that exports a package object whose name is @code{emacs} is found. This package search facility is implemented in the @code{(gnu packages)} module." msgstr "" #. type: cindex -#: doc/guix.texi:21624 +#: doc/guix.texi:22108 #, no-wrap msgid "package module search path" msgstr "" #. type: Plain text -#: doc/guix.texi:21641 -msgid "" -"Users can store package definitions in modules with different names---e.g., " -"@code{(my-packages emacs)}@footnote{Note that the file name and module name " -"must match. For instance, the @code{(my-packages emacs)} module must be " -"stored in a @file{my-packages/emacs.scm} file relative to the load path " -"specified with @option{--load-path} or @code{GUIX_PACKAGE_PATH}. " -"@xref{Modules and the File System,,, guile, GNU Guile Reference Manual}, for " -"details.}. These package definitions will not be visible by default. Users " -"can invoke commands such as @command{guix package} and @command{guix build} " -"with the @code{-e} option so that they know where to find the package. " -"Better yet, they can use the @code{-L} option of these commands to make " -"those modules visible (@pxref{Invoking guix build, @code{--load-path}}), or " -"define the @code{GUIX_PACKAGE_PATH} environment variable. This environment " -"variable makes it easy to extend or customize the distribution and is " -"honored by all the user interfaces." +#: doc/guix.texi:22125 +msgid "Users can store package definitions in modules with different names---e.g., @code{(my-packages emacs)}@footnote{Note that the file name and module name must match. For instance, the @code{(my-packages emacs)} module must be stored in a @file{my-packages/emacs.scm} file relative to the load path specified with @option{--load-path} or @code{GUIX_PACKAGE_PATH}. @xref{Modules and the File System,,, guile, GNU Guile Reference Manual}, for details.}. These package definitions will not be visible by default. Users can invoke commands such as @command{guix package} and @command{guix build} with the @code{-e} option so that they know where to find the package. Better yet, they can use the @code{-L} option of these commands to make those modules visible (@pxref{Invoking guix build, @code{--load-path}}), or define the @code{GUIX_PACKAGE_PATH} environment variable. This environment variable makes it easy to extend or customize the distribution and is honored by all the user interfaces." msgstr "" #. type: defvr -#: doc/guix.texi:21642 +#: doc/guix.texi:22126 #, no-wrap msgid "{Environment Variable} GUIX_PACKAGE_PATH" msgstr "" #. type: defvr -#: doc/guix.texi:21646 -msgid "" -"This is a colon-separated list of directories to search for additional " -"package modules. Directories listed in this variable take precedence over " -"the own modules of the distribution." +#: doc/guix.texi:22130 +msgid "This is a colon-separated list of directories to search for additional package modules. Directories listed in this variable take precedence over the own modules of the distribution." msgstr "" #. type: Plain text -#: doc/guix.texi:21654 -msgid "" -"The distribution is fully @dfn{bootstrapped} and @dfn{self-contained}: each " -"package is built based solely on other packages in the distribution. The " -"root of this dependency graph is a small set of @dfn{bootstrap binaries}, " -"provided by the @code{(gnu packages bootstrap)} module. For more " -"information on bootstrapping, @pxref{Bootstrapping}." +#: doc/guix.texi:22138 +msgid "The distribution is fully @dfn{bootstrapped} and @dfn{self-contained}: each package is built based solely on other packages in the distribution. The root of this dependency graph is a small set of @dfn{bootstrap binaries}, provided by the @code{(gnu packages bootstrap)} module. For more information on bootstrapping, @pxref{Bootstrapping}." msgstr "" #. type: cindex -#: doc/guix.texi:21658 +#: doc/guix.texi:22142 #, no-wrap msgid "packages, creating" msgstr "" #. type: Plain text -#: doc/guix.texi:21663 -msgid "" -"The GNU distribution is nascent and may well lack some of your favorite " -"packages. This section describes how you can help make the distribution " -"grow. @xref{Contributing}, for additional information on how you can help." +#: doc/guix.texi:22147 +msgid "The GNU distribution is nascent and may well lack some of your favorite packages. This section describes how you can help make the distribution grow. @xref{Contributing}, for additional information on how you can help." msgstr "" #. type: Plain text -#: doc/guix.texi:21671 -msgid "" -"Free software packages are usually distributed in the form of @dfn{source " -"code tarballs}---typically @file{tar.gz} files that contain all the source " -"files. Adding a package to the distribution means essentially two things: " -"adding a @dfn{recipe} that describes how to build the package, including a " -"list of other packages required to build it, and adding @dfn{package " -"metadata} along with that recipe, such as a description and licensing " -"information." +#: doc/guix.texi:22155 +msgid "Free software packages are usually distributed in the form of @dfn{source code tarballs}---typically @file{tar.gz} files that contain all the source files. Adding a package to the distribution means essentially two things: adding a @dfn{recipe} that describes how to build the package, including a list of other packages required to build it, and adding @dfn{package metadata} along with that recipe, such as a description and licensing information." msgstr "" #. type: Plain text -#: doc/guix.texi:21680 -msgid "" -"In Guix all this information is embodied in @dfn{package definitions}. " -"Package definitions provide a high-level view of the package. They are " -"written using the syntax of the Scheme programming language; in fact, for " -"each package we define a variable bound to the package definition, and " -"export that variable from a module (@pxref{Package Modules}). However, in-" -"depth Scheme knowledge is @emph{not} a prerequisite for creating packages. " -"For more information on package definitions, @pxref{Defining Packages}." +#: doc/guix.texi:22164 +msgid "In Guix all this information is embodied in @dfn{package definitions}. Package definitions provide a high-level view of the package. They are written using the syntax of the Scheme programming language; in fact, for each package we define a variable bound to the package definition, and export that variable from a module (@pxref{Package Modules}). However, in-depth Scheme knowledge is @emph{not} a prerequisite for creating packages. For more information on package definitions, @pxref{Defining Packages}." msgstr "" #. type: Plain text -#: doc/guix.texi:21686 -msgid "" -"Once a package definition is in place, stored in a file in the Guix source " -"tree, it can be tested using the @command{guix build} command " -"(@pxref{Invoking guix build}). For example, assuming the new package is " -"called @code{gnew}, you may run this command from the Guix build tree " -"(@pxref{Running Guix Before It Is Installed}):" +#: doc/guix.texi:22170 +msgid "Once a package definition is in place, stored in a file in the Guix source tree, it can be tested using the @command{guix build} command (@pxref{Invoking guix build}). For example, assuming the new package is called @code{gnew}, you may run this command from the Guix build tree (@pxref{Running Guix Before It Is Installed}):" msgstr "" #. type: example -#: doc/guix.texi:21689 +#: doc/guix.texi:22173 #, no-wrap msgid "./pre-inst-env guix build gnew --keep-failed\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21695 -msgid "" -"Using @code{--keep-failed} makes it easier to debug build failures since it " -"provides access to the failed build tree. Another useful command-line " -"option when debugging is @code{--log-file}, to access the build log." +#: doc/guix.texi:22179 +msgid "Using @code{--keep-failed} makes it easier to debug build failures since it provides access to the failed build tree. Another useful command-line option when debugging is @code{--log-file}, to access the build log." msgstr "" #. type: Plain text -#: doc/guix.texi:21700 -msgid "" -"If the package is unknown to the @command{guix} command, it may be that the " -"source file contains a syntax error, or lacks a @code{define-public} clause " -"to export the package variable. To figure it out, you may load the module " -"from Guile to get more information about the actual error:" +#: doc/guix.texi:22184 +msgid "If the package is unknown to the @command{guix} command, it may be that the source file contains a syntax error, or lacks a @code{define-public} clause to export the package variable. To figure it out, you may load the module from Guile to get more information about the actual error:" msgstr "" #. type: example -#: doc/guix.texi:21703 +#: doc/guix.texi:22187 #, no-wrap msgid "./pre-inst-env guile -c '(use-modules (gnu packages gnew))'\n" msgstr "" #. type: Plain text -#: doc/guix.texi:21711 -msgid "" -"Once your package builds correctly, please send us a patch " -"(@pxref{Contributing}). Well, if you need help, we will be happy to help " -"you too. Once the patch is committed in the Guix repository, the new " -"package automatically gets built on the supported platforms by @url{http://" -"hydra.gnu.org/jobset/gnu/master, our continuous integration system}." +#: doc/guix.texi:22195 +msgid "Once your package builds correctly, please send us a patch (@pxref{Contributing}). Well, if you need help, we will be happy to help you too. Once the patch is committed in the Guix repository, the new package automatically gets built on the supported platforms by @url{http://hydra.gnu.org/jobset/gnu/master, our continuous integration system}." msgstr "" #. type: cindex -#: doc/guix.texi:21712 +#: doc/guix.texi:22196 #, no-wrap msgid "substituter" msgstr "" #. type: Plain text -#: doc/guix.texi:21719 -msgid "" -"Users can obtain the new package definition simply by running @command{guix " -"pull} (@pxref{Invoking guix pull}). When @code{hydra.gnu.org} is done " -"building the package, installing the package automatically downloads " -"binaries from there (@pxref{Substitutes}). The only place where human " -"intervention is needed is to review and apply the patch." -msgstr "" -"On peut obtenir la nouvelle définition du paquet simplement en lançant " -"@command{guix pull} (@pxref{Invoking guix pull}). Lorsque @code{hydra.gnu." -"org} a fini de construire le paquet, l'installation du paquet y télécharge " -"automatiquement les binaires (@pxref{Substituts}). La seule intervention " -"humaine requise est pendant la revue et l'application du correctif." +#: doc/guix.texi:22203 +msgid "Users can obtain the new package definition simply by running @command{guix pull} (@pxref{Invoking guix pull}). When @code{hydra.gnu.org} is done building the package, installing the package automatically downloads binaries from there (@pxref{Substitutes}). The only place where human intervention is needed is to review and apply the patch." +msgstr "On peut obtenir la nouvelle définition du paquet simplement en lançant @command{guix pull} (@pxref{Invoking guix pull}). Lorsque @code{hydra.gnu.org} a fini de construire le paquet, l'installation du paquet y télécharge automatiquement les binaires (@pxref{Substituts}). La seule intervention humaine requise est pendant la revue et l'application du correctif." #. type: cindex -#: doc/guix.texi:21736 +#: doc/guix.texi:22220 #, no-wrap msgid "free software" msgstr "" #. type: Plain text -#: doc/guix.texi:21744 -msgid "" -"The GNU operating system has been developed so that users can have freedom " -"in their computing. GNU is @dfn{free software}, meaning that users have the " -"@url{http://www.gnu.org/philosophy/free-sw.html,four essential freedoms}: to " -"run the program, to study and change the program in source code form, to " -"redistribute exact copies, and to distribute modified versions. Packages " -"found in the GNU distribution provide only software that conveys these four " -"freedoms." +#: doc/guix.texi:22228 +msgid "The GNU operating system has been developed so that users can have freedom in their computing. GNU is @dfn{free software}, meaning that users have the @url{http://www.gnu.org/philosophy/free-sw.html,four essential freedoms}: to run the program, to study and change the program in source code form, to redistribute exact copies, and to distribute modified versions. Packages found in the GNU distribution provide only software that conveys these four freedoms." msgstr "" #. type: Plain text -#: doc/guix.texi:21750 -msgid "" -"In addition, the GNU distribution follow the @url{http://www.gnu.org/distros/" -"free-system-distribution-guidelines.html,free software distribution " -"guidelines}. Among other things, these guidelines reject non-free firmware, " -"recommendations of non-free software, and discuss ways to deal with " -"trademarks and patents." +#: doc/guix.texi:22234 +msgid "In addition, the GNU distribution follow the @url{http://www.gnu.org/distros/free-system-distribution-guidelines.html,free software distribution guidelines}. Among other things, these guidelines reject non-free firmware, recommendations of non-free software, and discuss ways to deal with trademarks and patents." msgstr "" #. type: Plain text -#: doc/guix.texi:21758 -msgid "" -"Some otherwise free upstream package sources contain a small and optional " -"subset that violates the above guidelines, for instance because this subset " -"is itself non-free code. When that happens, the offending items are removed " -"with appropriate patches or code snippets in the @code{origin} form of the " -"package (@pxref{Defining Packages}). This way, @code{guix build --source} " -"returns the ``freed'' source rather than the unmodified upstream source." +#: doc/guix.texi:22242 +msgid "Some otherwise free upstream package sources contain a small and optional subset that violates the above guidelines, for instance because this subset is itself non-free code. When that happens, the offending items are removed with appropriate patches or code snippets in the @code{origin} form of the package (@pxref{Defining Packages}). This way, @code{guix build --source} returns the ``freed'' source rather than the unmodified upstream source." msgstr "" #. type: cindex -#: doc/guix.texi:21763 +#: doc/guix.texi:22247 #, no-wrap msgid "package name" msgstr "" #. type: Plain text -#: doc/guix.texi:21771 -msgid "" -"A package has actually two names associated with it: First, there is the " -"name of the @emph{Scheme variable}, the one following @code{define-public}. " -"By this name, the package can be made known in the Scheme code, for instance " -"as input to another package. Second, there is the string in the @code{name} " -"field of a package definition. This name is used by package management " -"commands such as @command{guix package} and @command{guix build}." +#: doc/guix.texi:22255 +msgid "A package has actually two names associated with it: First, there is the name of the @emph{Scheme variable}, the one following @code{define-public}. By this name, the package can be made known in the Scheme code, for instance as input to another package. Second, there is the string in the @code{name} field of a package definition. This name is used by package management commands such as @command{guix package} and @command{guix build}." msgstr "" #. type: Plain text -#: doc/guix.texi:21776 -msgid "" -"Both are usually the same and correspond to the lowercase conversion of the " -"project name chosen upstream, with underscores replaced with hyphens. For " -"instance, GNUnet is available as @code{gnunet}, and SDL_net as @code{sdl-" -"net}." +#: doc/guix.texi:22260 +msgid "Both are usually the same and correspond to the lowercase conversion of the project name chosen upstream, with underscores replaced with hyphens. For instance, GNUnet is available as @code{gnunet}, and SDL_net as @code{sdl-net}." msgstr "" #. type: Plain text -#: doc/guix.texi:21781 -msgid "" -"We do not add @code{lib} prefixes for library packages, unless these are " -"already part of the official project name. But @pxref{Python Modules} and " -"@ref{Perl Modules} for special rules concerning modules for the Python and " -"Perl languages." +#: doc/guix.texi:22265 +msgid "We do not add @code{lib} prefixes for library packages, unless these are already part of the official project name. But @pxref{Python Modules} and @ref{Perl Modules} for special rules concerning modules for the Python and Perl languages." msgstr "" #. type: Plain text -#: doc/guix.texi:21783 +#: doc/guix.texi:22267 msgid "Font package names are handled differently, @pxref{Fonts}." msgstr "" #. type: cindex -#: doc/guix.texi:21788 +#: doc/guix.texi:22272 #, no-wrap msgid "package version" msgstr "" #. type: Plain text -#: doc/guix.texi:21797 -msgid "" -"We usually package only the latest version of a given free software " -"project. But sometimes, for instance for incompatible library versions, two " -"(or more) versions of the same package are needed. These require different " -"Scheme variable names. We use the name as defined in @ref{Package Naming} " -"for the most recent version; previous versions use the same name, suffixed " -"by @code{-} and the smallest prefix of the version number that may " -"distinguish the two versions." +#: doc/guix.texi:22281 +msgid "We usually package only the latest version of a given free software project. But sometimes, for instance for incompatible library versions, two (or more) versions of the same package are needed. These require different Scheme variable names. We use the name as defined in @ref{Package Naming} for the most recent version; previous versions use the same name, suffixed by @code{-} and the smallest prefix of the version number that may distinguish the two versions." msgstr "" #. type: Plain text -#: doc/guix.texi:21800 -msgid "" -"The name inside the package definition is the same for all versions of a " -"package and does not contain any version number." +#: doc/guix.texi:22284 +msgid "The name inside the package definition is the same for all versions of a package and does not contain any version number." msgstr "" #. type: Plain text -#: doc/guix.texi:21802 -msgid "" -"For instance, the versions 2.24.20 and 3.9.12 of GTK+ may be packaged as " -"follows:" +#: doc/guix.texi:22286 +msgid "For instance, the versions 2.24.20 and 3.9.12 of GTK+ may be packaged as follows:" msgstr "" #. type: example -#: doc/guix.texi:21814 +#: doc/guix.texi:22298 #, no-wrap msgid "" "(define-public gtk+\n" @@ -46788,12 +39075,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21816 +#: doc/guix.texi:22300 msgid "If we also wanted GTK+ 3.8.2, this would be packaged as" msgstr "" #. type: example -#: doc/guix.texi:21822 +#: doc/guix.texi:22306 #, no-wrap msgid "" "(define-public gtk+-3.8\n" @@ -46804,35 +39091,23 @@ msgid "" msgstr "" #. type: cindex -#: doc/guix.texi:21826 +#: doc/guix.texi:22310 #, no-wrap msgid "version number, for VCS snapshots" msgstr "" #. type: Plain text -#: doc/guix.texi:21832 -msgid "" -"Occasionally, we package snapshots of upstream's version control system " -"(VCS) instead of formal releases. This should remain exceptional, because " -"it is up to upstream developers to clarify what the stable release is. Yet, " -"it is sometimes necessary. So, what should we put in the @code{version} " -"field?" +#: doc/guix.texi:22316 +msgid "Occasionally, we package snapshots of upstream's version control system (VCS) instead of formal releases. This should remain exceptional, because it is up to upstream developers to clarify what the stable release is. Yet, it is sometimes necessary. So, what should we put in the @code{version} field?" msgstr "" #. type: Plain text -#: doc/guix.texi:21840 -msgid "" -"Clearly, we need to make the commit identifier of the VCS snapshot visible " -"in the version string, but we also need to make sure that the version string " -"is monotonically increasing so that @command{guix package --upgrade} can " -"determine which version is newer. Since commit identifiers, notably with " -"Git, are not monotonically increasing, we add a revision number that we " -"increase each time we upgrade to a newer snapshot. The resulting version " -"string looks like this:" +#: doc/guix.texi:22324 +msgid "Clearly, we need to make the commit identifier of the VCS snapshot visible in the version string, but we also need to make sure that the version string is monotonically increasing so that @command{guix package --upgrade} can determine which version is newer. Since commit identifiers, notably with Git, are not monotonically increasing, we add a revision number that we increase each time we upgrade to a newer snapshot. The resulting version string looks like this:" msgstr "" #. type: example -#: doc/guix.texi:21849 +#: doc/guix.texi:22333 #, no-wrap msgid "" "2.0.11-3.cabba9e\n" @@ -46845,18 +39120,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21858 -msgid "" -"It is a good idea to strip commit identifiers in the @code{version} field " -"to, say, 7 digits. It avoids an aesthetic annoyance (assuming aesthetics " -"have a role to play here) as well as problems related to OS limits such as " -"the maximum shebang length (127 bytes for the Linux kernel.) It is best to " -"use the full commit identifiers in @code{origin}s, though, to avoid " -"ambiguities. A typical package definition may look like this:" +#: doc/guix.texi:22342 +msgid "It is a good idea to strip commit identifiers in the @code{version} field to, say, 7 digits. It avoids an aesthetic annoyance (assuming aesthetics have a role to play here) as well as problems related to OS limits such as the maximum shebang length (127 bytes for the Linux kernel.) It is best to use the full commit identifiers in @code{origin}s, though, to avoid ambiguities. A typical package definition may look like this:" msgstr "" #. type: example -#: doc/guix.texi:21874 +#: doc/guix.texi:22358 #, no-wrap msgid "" "(define my-package\n" @@ -46874,104 +39143,76 @@ msgid "" " ;; @dots{}\n" " )))\n" msgstr "" +"(define my-package\n" +" (let ((commit \"c3f29bc928d5900971f65965feaae59e1272a3f7\")\n" +" (revision \"1\")) ;révision du paquet Guix\n" +" (package\n" +" (version (git-version \"0.9\" revision commit))\n" +" (source (origin\n" +" (method git-fetch)\n" +" (uri (git-reference\n" +" (url \"git://example.org/my-package.git\")\n" +" (commit commit)))\n" +" (sha256 (base32 \"1mbikn@dots{}\"))\n" +" (file-name (git-file-name name version))))\n" +" ;; @dots{}\n" +" )))\n" #. type: cindex -#: doc/guix.texi:21879 +#: doc/guix.texi:22363 #, no-wrap msgid "package description" msgstr "" #. type: cindex -#: doc/guix.texi:21880 +#: doc/guix.texi:22364 #, no-wrap msgid "package synopsis" msgstr "" #. type: Plain text -#: doc/guix.texi:21887 -msgid "" -"As we have seen before, each package in GNU@tie{}Guix includes a synopsis " -"and a description (@pxref{Defining Packages}). Synopses and descriptions " -"are important: They are what @command{guix package --search} searches, and a " -"crucial piece of information to help users determine whether a given package " -"suits their needs. Consequently, packagers should pay attention to what " -"goes into them." +#: doc/guix.texi:22371 +msgid "As we have seen before, each package in GNU@tie{}Guix includes a synopsis and a description (@pxref{Defining Packages}). Synopses and descriptions are important: They are what @command{guix package --search} searches, and a crucial piece of information to help users determine whether a given package suits their needs. Consequently, packagers should pay attention to what goes into them." msgstr "" #. type: Plain text -#: doc/guix.texi:21895 -msgid "" -"Synopses must start with a capital letter and must not end with a period. " -"They must not start with ``a'' or ``the'', which usually does not bring " -"anything; for instance, prefer ``File-frobbing tool'' over ``A tool that " -"frobs files''. The synopsis should say what the package is---e.g., ``Core " -"GNU utilities (file, text, shell)''---or what it is used for---e.g., the " -"synopsis for GNU@tie{}grep is ``Print lines matching a pattern''." +#: doc/guix.texi:22379 +msgid "Synopses must start with a capital letter and must not end with a period. They must not start with ``a'' or ``the'', which usually does not bring anything; for instance, prefer ``File-frobbing tool'' over ``A tool that frobs files''. The synopsis should say what the package is---e.g., ``Core GNU utilities (file, text, shell)''---or what it is used for---e.g., the synopsis for GNU@tie{}grep is ``Print lines matching a pattern''." msgstr "" #. type: Plain text -#: doc/guix.texi:21905 -msgid "" -"Keep in mind that the synopsis must be meaningful for a very wide audience. " -"For example, ``Manipulate alignments in the SAM format'' might make sense " -"for a seasoned bioinformatics researcher, but might be fairly unhelpful or " -"even misleading to a non-specialized audience. It is a good idea to come up " -"with a synopsis that gives an idea of the application domain of the " -"package. In this example, this might give something like ``Manipulate " -"nucleotide sequence alignments'', which hopefully gives the user a better " -"idea of whether this is what they are looking for." +#: doc/guix.texi:22389 +msgid "Keep in mind that the synopsis must be meaningful for a very wide audience. For example, ``Manipulate alignments in the SAM format'' might make sense for a seasoned bioinformatics researcher, but might be fairly unhelpful or even misleading to a non-specialized audience. It is a good idea to come up with a synopsis that gives an idea of the application domain of the package. In this example, this might give something like ``Manipulate nucleotide sequence alignments'', which hopefully gives the user a better idea of whether this is what they are looking for." msgstr "" #. type: Plain text -#: doc/guix.texi:21913 -msgid "" -"Descriptions should take between five and ten lines. Use full sentences, " -"and avoid using acronyms without first introducing them. Please avoid " -"marketing phrases such as ``world-leading'', ``industrial-strength'', and " -"``next-generation'', and avoid superlatives like ``the most advanced''---" -"they are not helpful to users looking for a package and may even sound " -"suspicious. Instead, try to be factual, mentioning use cases and features." +#: doc/guix.texi:22397 +msgid "Descriptions should take between five and ten lines. Use full sentences, and avoid using acronyms without first introducing them. Please avoid marketing phrases such as ``world-leading'', ``industrial-strength'', and ``next-generation'', and avoid superlatives like ``the most advanced''---they are not helpful to users looking for a package and may even sound suspicious. Instead, try to be factual, mentioning use cases and features." msgstr "" #. type: cindex -#: doc/guix.texi:21914 +#: doc/guix.texi:22398 #, no-wrap msgid "Texinfo markup, in package descriptions" msgstr "" #. type: Plain text -#: doc/guix.texi:21923 -msgid "" -"Descriptions can include Texinfo markup, which is useful to introduce " -"ornaments such as @code{@@code} or @code{@@dfn}, bullet lists, or hyperlinks " -"(@pxref{Overview,,, texinfo, GNU Texinfo}). However you should be careful " -"when using some characters for example @samp{@@} and curly braces which are " -"the basic special characters in Texinfo (@pxref{Special Characters,,, " -"texinfo, GNU Texinfo}). User interfaces such as @command{guix package --" -"show} take care of rendering it appropriately." +#: doc/guix.texi:22407 +msgid "Descriptions can include Texinfo markup, which is useful to introduce ornaments such as @code{@@code} or @code{@@dfn}, bullet lists, or hyperlinks (@pxref{Overview,,, texinfo, GNU Texinfo}). However you should be careful when using some characters for example @samp{@@} and curly braces which are the basic special characters in Texinfo (@pxref{Special Characters,,, texinfo, GNU Texinfo}). User interfaces such as @command{guix package --show} take care of rendering it appropriately." msgstr "" #. type: Plain text -#: doc/guix.texi:21929 -msgid "" -"Synopses and descriptions are translated by volunteers @uref{http://" -"translationproject.org/domain/guix-packages.html, at the Translation " -"Project} so that as many users as possible can read them in their native " -"language. User interfaces search them and display them in the language " -"specified by the current locale." +#: doc/guix.texi:22413 +msgid "Synopses and descriptions are translated by volunteers @uref{http://translationproject.org/domain/guix-packages.html, at the Translation Project} so that as many users as possible can read them in their native language. User interfaces search them and display them in the language specified by the current locale." msgstr "" #. type: Plain text -#: doc/guix.texi:21934 -msgid "" -"To allow @command{xgettext} to extract them as translatable strings, " -"synopses and descriptions @emph{must be literal strings}. This means that " -"you cannot use @code{string-append} or @code{format} to construct these " -"strings:" +#: doc/guix.texi:22418 +msgid "To allow @command{xgettext} to extract them as translatable strings, synopses and descriptions @emph{must be literal strings}. This means that you cannot use @code{string-append} or @code{format} to construct these strings:" msgstr "" #. type: lisp -#: doc/guix.texi:21940 +#: doc/guix.texi:22424 #, no-wrap msgid "" "(package\n" @@ -46981,17 +39222,12 @@ msgid "" msgstr "" #. type: Plain text -#: doc/guix.texi:21948 -msgid "" -"Translation is a lot of work so, as a packager, please pay even more " -"attention to your synopses and descriptions as every change may entail " -"additional work for translators. In order to help them, it is possible to " -"make recommendations or instructions visible to them by inserting special " -"comments like this (@pxref{xgettext Invocation,,, gettext, GNU Gettext}):" +#: doc/guix.texi:22432 +msgid "Translation is a lot of work so, as a packager, please pay even more attention to your synopses and descriptions as every change may entail additional work for translators. In order to help them, it is possible to make recommendations or instructions visible to them by inserting special comments like this (@pxref{xgettext Invocation,,, gettext, GNU Gettext}):" msgstr "" #. type: example -#: doc/guix.texi:21953 +#: doc/guix.texi:22437 #, no-wrap msgid "" ";; TRANSLATORS: \"X11 resize-and-rotate\" should not be translated.\n" @@ -47000,627 +39236,390 @@ msgid "" msgstr "" #. type: cindex -#: doc/guix.texi:21959 +#: doc/guix.texi:22443 #, no-wrap msgid "python" msgstr "" #. type: Plain text -#: doc/guix.texi:21965 -msgid "" -"We currently package Python 2 and Python 3, under the Scheme variable names " -"@code{python-2} and @code{python} as explained in @ref{Version Numbers}. To " -"avoid confusion and naming clashes with other programming languages, it " -"seems desirable that the name of a package for a Python module contains the " -"word @code{python}." +#: doc/guix.texi:22449 +msgid "We currently package Python 2 and Python 3, under the Scheme variable names @code{python-2} and @code{python} as explained in @ref{Version Numbers}. To avoid confusion and naming clashes with other programming languages, it seems desirable that the name of a package for a Python module contains the word @code{python}." msgstr "" #. type: Plain text -#: doc/guix.texi:21971 -msgid "" -"Some modules are compatible with only one version of Python, others with " -"both. If the package Foo compiles only with Python 3, we name it " -"@code{python-foo}; if it compiles only with Python 2, we name it " -"@code{python2-foo}. If it is compatible with both versions, we create two " -"packages with the corresponding names." +#: doc/guix.texi:22455 +msgid "Some modules are compatible with only one version of Python, others with both. If the package Foo compiles only with Python 3, we name it @code{python-foo}; if it compiles only with Python 2, we name it @code{python2-foo}. If it is compatible with both versions, we create two packages with the corresponding names." msgstr "" #. type: Plain text -#: doc/guix.texi:21977 -msgid "" -"If a project already contains the word @code{python}, we drop this; for " -"instance, the module python-dateutil is packaged under the names " -"@code{python-dateutil} and @code{python2-dateutil}. If the project name " -"starts with @code{py} (e.g. @code{pytz}), we keep it and prefix it as " -"described above." +#: doc/guix.texi:22461 +msgid "If a project already contains the word @code{python}, we drop this; for instance, the module python-dateutil is packaged under the names @code{python-dateutil} and @code{python2-dateutil}. If the project name starts with @code{py} (e.g. @code{pytz}), we keep it and prefix it as described above." msgstr "" #. type: subsubsection -#: doc/guix.texi:21978 +#: doc/guix.texi:22462 #, no-wrap msgid "Specifying Dependencies" msgstr "" #. type: cindex -#: doc/guix.texi:21979 +#: doc/guix.texi:22463 #, no-wrap msgid "inputs, for Python packages" msgstr "" #. type: Plain text -#: doc/guix.texi:21984 -msgid "" -"Dependency information for Python packages is usually available in the " -"package source tree, with varying degrees of accuracy: in the @file{setup." -"py} file, in @file{requirements.txt}, or in @file{tox.ini}." +#: doc/guix.texi:22468 +msgid "Dependency information for Python packages is usually available in the package source tree, with varying degrees of accuracy: in the @file{setup.py} file, in @file{requirements.txt}, or in @file{tox.ini}." msgstr "" #. type: Plain text -#: doc/guix.texi:21990 -msgid "" -"Your mission, when writing a recipe for a Python package, is to map these " -"dependencies to the appropriate type of ``input'' (@pxref{package Reference, " -"inputs}). Although the @code{pypi} importer normally does a good job " -"(@pxref{Invoking guix import}), you may want to check the following check " -"list to determine which dependency goes where." +#: doc/guix.texi:22474 +msgid "Your mission, when writing a recipe for a Python package, is to map these dependencies to the appropriate type of ``input'' (@pxref{package Reference, inputs}). Although the @code{pypi} importer normally does a good job (@pxref{Invoking guix import}), you may want to check the following check list to determine which dependency goes where." msgstr "" #. type: itemize -#: doc/guix.texi:21998 -msgid "" -"We currently package Python 2 with @code{setuptools} and @code{pip} " -"installed like Python 3.4 has per default. Thus you don't need to specify " -"either of these as an input. @command{guix lint} will warn you if you do." +#: doc/guix.texi:22482 +msgid "We currently package Python 2 with @code{setuptools} and @code{pip} installed like Python 3.4 has per default. Thus you don't need to specify either of these as an input. @command{guix lint} will warn you if you do." msgstr "" #. type: itemize -#: doc/guix.texi:22004 -msgid "" -"Python dependencies required at run time go into @code{propagated-inputs}. " -"They are typically defined with the @code{install_requires} keyword in " -"@file{setup.py}, or in the @file{requirements.txt} file." +#: doc/guix.texi:22488 +msgid "Python dependencies required at run time go into @code{propagated-inputs}. They are typically defined with the @code{install_requires} keyword in @file{setup.py}, or in the @file{requirements.txt} file." msgstr "" #. type: itemize -#: doc/guix.texi:22012 -msgid "" -"Python packages required only at build time---e.g., those listed with the " -"@code{setup_requires} keyword in @file{setup.py}---or only for testing---e." -"g., those in @code{tests_require}---go into @code{native-inputs}. The " -"rationale is that (1) they do not need to be propagated because they are not " -"needed at run time, and (2) in a cross-compilation context, it's the " -"``native'' input that we'd want." +#: doc/guix.texi:22496 +msgid "Python packages required only at build time---e.g., those listed with the @code{setup_requires} keyword in @file{setup.py}---or only for testing---e.g., those in @code{tests_require}---go into @code{native-inputs}. The rationale is that (1) they do not need to be propagated because they are not needed at run time, and (2) in a cross-compilation context, it's the ``native'' input that we'd want." msgstr "" #. type: itemize -#: doc/guix.texi:22016 -msgid "" -"Examples are the @code{pytest}, @code{mock}, and @code{nose} test " -"frameworks. Of course if any of these packages is also required at run-" -"time, it needs to go to @code{propagated-inputs}." +#: doc/guix.texi:22500 +msgid "Examples are the @code{pytest}, @code{mock}, and @code{nose} test frameworks. Of course if any of these packages is also required at run-time, it needs to go to @code{propagated-inputs}." msgstr "" #. type: itemize -#: doc/guix.texi:22021 -msgid "" -"Anything that does not fall in the previous categories goes to " -"@code{inputs}, for example programs or C libraries required for building " -"Python packages containing C extensions." +#: doc/guix.texi:22505 +msgid "Anything that does not fall in the previous categories goes to @code{inputs}, for example programs or C libraries required for building Python packages containing C extensions." msgstr "" #. type: itemize -#: doc/guix.texi:22027 -msgid "" -"If a Python package has optional dependencies (@code{extras_require}), it is " -"up to you to decide whether to add them or not, based on their usefulness/" -"overhead ratio (@pxref{Submitting Patches, @command{guix size}})." +#: doc/guix.texi:22511 +msgid "If a Python package has optional dependencies (@code{extras_require}), it is up to you to decide whether to add them or not, based on their usefulness/overhead ratio (@pxref{Submitting Patches, @command{guix size}})." msgstr "" #. type: cindex -#: doc/guix.texi:22034 +#: doc/guix.texi:22518 #, no-wrap msgid "perl" msgstr "" #. type: Plain text -#: doc/guix.texi:22045 -msgid "" -"Perl programs standing for themselves are named as any other package, using " -"the lowercase upstream name. For Perl packages containing a single class, " -"we use the lowercase class name, replace all occurrences of @code{::} by " -"dashes and prepend the prefix @code{perl-}. So the class @code{XML::Parser} " -"becomes @code{perl-xml-parser}. Modules containing several classes keep " -"their lowercase upstream name and are also prepended by @code{perl-}. Such " -"modules tend to have the word @code{perl} somewhere in their name, which " -"gets dropped in favor of the prefix. For instance, @code{libwww-perl} " -"becomes @code{perl-libwww}." +#: doc/guix.texi:22529 +msgid "Perl programs standing for themselves are named as any other package, using the lowercase upstream name. For Perl packages containing a single class, we use the lowercase class name, replace all occurrences of @code{::} by dashes and prepend the prefix @code{perl-}. So the class @code{XML::Parser} becomes @code{perl-xml-parser}. Modules containing several classes keep their lowercase upstream name and are also prepended by @code{perl-}. Such modules tend to have the word @code{perl} somewhere in their name, which gets dropped in favor of the prefix. For instance, @code{libwww-perl} becomes @code{perl-libwww}." msgstr "" #. type: cindex -#: doc/guix.texi:22050 +#: doc/guix.texi:22534 #, no-wrap msgid "java" msgstr "" #. type: Plain text -#: doc/guix.texi:22053 -msgid "" -"Java programs standing for themselves are named as any other package, using " -"the lowercase upstream name." +#: doc/guix.texi:22537 +msgid "Java programs standing for themselves are named as any other package, using the lowercase upstream name." msgstr "" #. type: Plain text -#: doc/guix.texi:22059 -msgid "" -"To avoid confusion and naming clashes with other programming languages, it " -"is desirable that the name of a package for a Java package is prefixed with " -"@code{java-}. If a project already contains the word @code{java}, we drop " -"this; for instance, the package @code{ngsjava} is packaged under the name " -"@code{java-ngs}." +#: doc/guix.texi:22543 +msgid "To avoid confusion and naming clashes with other programming languages, it is desirable that the name of a package for a Java package is prefixed with @code{java-}. If a project already contains the word @code{java}, we drop this; for instance, the package @code{ngsjava} is packaged under the name @code{java-ngs}." msgstr "" #. type: Plain text -#: doc/guix.texi:22065 -msgid "" -"For Java packages containing a single class or a small class hierarchy, we " -"use the lowercase class name, replace all occurrences of @code{.} by dashes " -"and prepend the prefix @code{java-}. So the class @code{apache.commons.cli} " -"becomes package @code{java-apache-commons-cli}." +#: doc/guix.texi:22549 +msgid "For Java packages containing a single class or a small class hierarchy, we use the lowercase class name, replace all occurrences of @code{.} by dashes and prepend the prefix @code{java-}. So the class @code{apache.commons.cli} becomes package @code{java-apache-commons-cli}." msgstr "" #. type: Plain text -#: doc/guix.texi:22076 -msgid "" -"For fonts that are in general not installed by a user for typesetting " -"purposes, or that are distributed as part of a larger software package, we " -"rely on the general packaging rules for software; for instance, this applies " -"to the fonts delivered as part of the X.Org system or fonts that are part of " -"TeX Live." +#: doc/guix.texi:22560 +msgid "For fonts that are in general not installed by a user for typesetting purposes, or that are distributed as part of a larger software package, we rely on the general packaging rules for software; for instance, this applies to the fonts delivered as part of the X.Org system or fonts that are part of TeX Live." msgstr "" #. type: Plain text -#: doc/guix.texi:22080 -msgid "" -"To make it easier for a user to search for fonts, names for other packages " -"containing only fonts are constructed as follows, independently of the " -"upstream package name." +#: doc/guix.texi:22564 +msgid "To make it easier for a user to search for fonts, names for other packages containing only fonts are constructed as follows, independently of the upstream package name." msgstr "" #. type: Plain text -#: doc/guix.texi:22088 -msgid "" -"The name of a package containing only one font family starts with " -"@code{font-}; it is followed by the foundry name and a dash @code{-} if the " -"foundry is known, and the font family name, in which spaces are replaced by " -"dashes (and as usual, all upper case letters are transformed to lower " -"case). For example, the Gentium font family by SIL is packaged under the " -"name @code{font-sil-gentium}." +#: doc/guix.texi:22572 +msgid "The name of a package containing only one font family starts with @code{font-}; it is followed by the foundry name and a dash @code{-} if the foundry is known, and the font family name, in which spaces are replaced by dashes (and as usual, all upper case letters are transformed to lower case). For example, the Gentium font family by SIL is packaged under the name @code{font-sil-gentium}." msgstr "" #. type: Plain text -#: doc/guix.texi:22097 -msgid "" -"For a package containing several font families, the name of the collection " -"is used in the place of the font family name. For instance, the Liberation " -"fonts consist of three families, Liberation Sans, Liberation Serif and " -"Liberation Mono. These could be packaged separately under the names " -"@code{font-liberation-sans} and so on; but as they are distributed together " -"under a common name, we prefer to package them together as @code{font-" -"liberation}." +#: doc/guix.texi:22581 +msgid "For a package containing several font families, the name of the collection is used in the place of the font family name. For instance, the Liberation fonts consist of three families, Liberation Sans, Liberation Serif and Liberation Mono. These could be packaged separately under the names @code{font-liberation-sans} and so on; but as they are distributed together under a common name, we prefer to package them together as @code{font-liberation}." msgstr "" #. type: Plain text -#: doc/guix.texi:22103 -msgid "" -"In the case where several formats of the same font family or font collection " -"are packaged separately, a short form of the format, prepended by a dash, is " -"added to the package name. We use @code{-ttf} for TrueType fonts, @code{-" -"otf} for OpenType fonts and @code{-type1} for PostScript Type 1 fonts." +#: doc/guix.texi:22587 +msgid "In the case where several formats of the same font family or font collection are packaged separately, a short form of the format, prepended by a dash, is added to the package name. We use @code{-ttf} for TrueType fonts, @code{-otf} for OpenType fonts and @code{-type1} for PostScript Type 1 fonts." msgstr "" #. type: cindex -#: doc/guix.texi:22111 +#: doc/guix.texi:22595 #, no-wrap msgid "bootstrapping" msgstr "" #. type: Plain text -#: doc/guix.texi:22121 -msgid "" -"Bootstrapping in our context refers to how the distribution gets built " -"``from nothing''. Remember that the build environment of a derivation " -"contains nothing but its declared inputs (@pxref{Introduction}). So there's " -"an obvious chicken-and-egg problem: how does the first package get built? " -"How does the first compiler get compiled? Note that this is a question of " -"interest only to the curious hacker, not to the regular user, so you can " -"shamelessly skip this section if you consider yourself a ``regular user''." +#: doc/guix.texi:22605 +msgid "Bootstrapping in our context refers to how the distribution gets built ``from nothing''. Remember that the build environment of a derivation contains nothing but its declared inputs (@pxref{Introduction}). So there's an obvious chicken-and-egg problem: how does the first package get built? How does the first compiler get compiled? Note that this is a question of interest only to the curious hacker, not to the regular user, so you can shamelessly skip this section if you consider yourself a ``regular user''." msgstr "" #. type: cindex -#: doc/guix.texi:22122 doc/guix.texi:22244 +#: doc/guix.texi:22606 doc/guix.texi:22728 #, no-wrap msgid "bootstrap binaries" msgstr "" #. type: Plain text -#: doc/guix.texi:22132 -msgid "" -"The GNU system is primarily made of C code, with libc at its core. The GNU " -"build system itself assumes the availability of a Bourne shell and command-" -"line tools provided by GNU Coreutils, Awk, Findutils, `sed', and `grep'. " -"Furthermore, build programs---programs that run @code{./configure}, " -"@code{make}, etc.---are written in Guile Scheme (@pxref{Derivations}). " -"Consequently, to be able to build anything at all, from scratch, Guix relies " -"on pre-built binaries of Guile, GCC, Binutils, libc, and the other packages " -"mentioned above---the @dfn{bootstrap binaries}." +#: doc/guix.texi:22616 +msgid "The GNU system is primarily made of C code, with libc at its core. The GNU build system itself assumes the availability of a Bourne shell and command-line tools provided by GNU Coreutils, Awk, Findutils, `sed', and `grep'. Furthermore, build programs---programs that run @code{./configure}, @code{make}, etc.---are written in Guile Scheme (@pxref{Derivations}). Consequently, to be able to build anything at all, from scratch, Guix relies on pre-built binaries of Guile, GCC, Binutils, libc, and the other packages mentioned above---the @dfn{bootstrap binaries}." msgstr "" #. type: Plain text -#: doc/guix.texi:22135 -msgid "" -"These bootstrap binaries are ``taken for granted'', though we can also re-" -"create them if needed (more on that later)." +#: doc/guix.texi:22619 +msgid "These bootstrap binaries are ``taken for granted'', though we can also re-create them if needed (more on that later)." msgstr "" #. type: unnumberedsubsec -#: doc/guix.texi:22136 +#: doc/guix.texi:22620 #, no-wrap msgid "Preparing to Use the Bootstrap Binaries" msgstr "" #. type: Plain text -#: doc/guix.texi:22141 -msgid "" -"@image{images/bootstrap-graph,6in,,Dependency graph of the early bootstrap " -"derivations}" +#: doc/guix.texi:22625 +msgid "@image{images/bootstrap-graph,6in,,Dependency graph of the early bootstrap derivations}" msgstr "" #. type: Plain text -#: doc/guix.texi:22146 -msgid "" -"The figure above shows the very beginning of the dependency graph of the " -"distribution, corresponding to the package definitions of the @code{(gnu " -"packages bootstrap)} module. A similar figure can be generated with " -"@command{guix graph} (@pxref{Invoking guix graph}), along the lines of:" +#: doc/guix.texi:22630 +msgid "The figure above shows the very beginning of the dependency graph of the distribution, corresponding to the package definitions of the @code{(gnu packages bootstrap)} module. A similar figure can be generated with @command{guix graph} (@pxref{Invoking guix graph}), along the lines of:" msgstr "" #. type: example -#: doc/guix.texi:22151 +#: doc/guix.texi:22635 #, no-wrap msgid "" "guix graph -t derivation \\\n" " -e '(@@@@ (gnu packages bootstrap) %bootstrap-gcc)' \\\n" " | dot -Tps > t.ps\n" msgstr "" +"guix graph -t derivation \\\n" +" -e '(@@@@ (gnu packages bootstrap) %bootstrap-gcc)' \\\n" +" | dot -Tps > t.ps\n" #. type: Plain text -#: doc/guix.texi:22160 -msgid "" -"At this level of detail, things are slightly complex. First, Guile itself " -"consists of an ELF executable, along with many source and compiled Scheme " -"files that are dynamically loaded when it runs. This gets stored in the " -"@file{guile-2.0.7.tar.xz} tarball shown in this graph. This tarball is part " -"of Guix's ``source'' distribution, and gets inserted into the store with " -"@code{add-to-store} (@pxref{The Store})." +#: doc/guix.texi:22644 +msgid "At this level of detail, things are slightly complex. First, Guile itself consists of an ELF executable, along with many source and compiled Scheme files that are dynamically loaded when it runs. This gets stored in the @file{guile-2.0.7.tar.xz} tarball shown in this graph. This tarball is part of Guix's ``source'' distribution, and gets inserted into the store with @code{add-to-store} (@pxref{The Store})." msgstr "" #. type: Plain text -#: doc/guix.texi:22169 -msgid "" -"But how do we write a derivation that unpacks this tarball and adds it to " -"the store? To solve this problem, the @code{guile-bootstrap-2.0.drv} " -"derivation---the first one that gets built---uses @code{bash} as its " -"builder, which runs @code{build-bootstrap-guile.sh}, which in turn calls " -"@code{tar} to unpack the tarball. Thus, @file{bash}, @file{tar}, @file{xz}, " -"and @file{mkdir} are statically-linked binaries, also part of the Guix " -"source distribution, whose sole purpose is to allow the Guile tarball to be " -"unpacked." +#: doc/guix.texi:22653 +msgid "But how do we write a derivation that unpacks this tarball and adds it to the store? To solve this problem, the @code{guile-bootstrap-2.0.drv} derivation---the first one that gets built---uses @code{bash} as its builder, which runs @code{build-bootstrap-guile.sh}, which in turn calls @code{tar} to unpack the tarball. Thus, @file{bash}, @file{tar}, @file{xz}, and @file{mkdir} are statically-linked binaries, also part of the Guix source distribution, whose sole purpose is to allow the Guile tarball to be unpacked." msgstr "" #. type: Plain text -#: doc/guix.texi:22181 -msgid "" -"Once @code{guile-bootstrap-2.0.drv} is built, we have a functioning Guile " -"that can be used to run subsequent build programs. Its first task is to " -"download tarballs containing the other pre-built binaries---this is what the " -"@code{.tar.xz.drv} derivations do. Guix modules such as @code{ftp-client." -"scm} are used for this purpose. The @code{module-import.drv} derivations " -"import those modules in a directory in the store, using the original " -"layout. The @code{module-import-compiled.drv} derivations compile those " -"modules, and write them in an output directory with the right layout. This " -"corresponds to the @code{#:modules} argument of @code{build-expression-" -">derivation} (@pxref{Derivations})." +#: doc/guix.texi:22665 +msgid "Once @code{guile-bootstrap-2.0.drv} is built, we have a functioning Guile that can be used to run subsequent build programs. Its first task is to download tarballs containing the other pre-built binaries---this is what the @code{.tar.xz.drv} derivations do. Guix modules such as @code{ftp-client.scm} are used for this purpose. The @code{module-import.drv} derivations import those modules in a directory in the store, using the original layout. The @code{module-import-compiled.drv} derivations compile those modules, and write them in an output directory with the right layout. This corresponds to the @code{#:modules} argument of @code{build-expression->derivation} (@pxref{Derivations})." msgstr "" #. type: Plain text -#: doc/guix.texi:22185 -msgid "" -"Finally, the various tarballs are unpacked by the derivations @code{gcc-" -"bootstrap-0.drv}, @code{glibc-bootstrap-0.drv}, etc., at which point we have " -"a working C tool chain." +#: doc/guix.texi:22669 +msgid "Finally, the various tarballs are unpacked by the derivations @code{gcc-bootstrap-0.drv}, @code{glibc-bootstrap-0.drv}, etc., at which point we have a working C tool chain." msgstr "" #. type: unnumberedsubsec -#: doc/guix.texi:22187 +#: doc/guix.texi:22671 #, no-wrap msgid "Building the Build Tools" msgstr "" #. type: Plain text -#: doc/guix.texi:22196 -msgid "" -"Bootstrapping is complete when we have a full tool chain that does not " -"depend on the pre-built bootstrap tools discussed above. This no-dependency " -"requirement is verified by checking whether the files of the final tool " -"chain contain references to the @file{/gnu/store} directories of the " -"bootstrap inputs. The process that leads to this ``final'' tool chain is " -"described by the package definitions found in the @code{(gnu packages " -"commencement)} module." +#: doc/guix.texi:22680 +msgid "Bootstrapping is complete when we have a full tool chain that does not depend on the pre-built bootstrap tools discussed above. This no-dependency requirement is verified by checking whether the files of the final tool chain contain references to the @file{/gnu/store} directories of the bootstrap inputs. The process that leads to this ``final'' tool chain is described by the package definitions found in the @code{(gnu packages commencement)} module." msgstr "" #. type: Plain text -#: doc/guix.texi:22203 -msgid "" -"The @command{guix graph} command allows us to ``zoom out'' compared to the " -"graph above, by looking at the level of package objects instead of " -"individual derivations---remember that a package may translate to several " -"derivations, typically one derivation to download its source, one to build " -"the Guile modules it needs, and one to actually build the package from " -"source. The command:" +#: doc/guix.texi:22687 +msgid "The @command{guix graph} command allows us to ``zoom out'' compared to the graph above, by looking at the level of package objects instead of individual derivations---remember that a package may translate to several derivations, typically one derivation to download its source, one to build the Guile modules it needs, and one to actually build the package from source. The command:" msgstr "" #. type: example -#: doc/guix.texi:22208 +#: doc/guix.texi:22692 #, no-wrap msgid "" "guix graph -t bag \\\n" " -e '(@@@@ (gnu packages commencement)\n" " glibc-final-with-bootstrap-bash)' | dot -Tps > t.ps\n" msgstr "" +"guix graph -t bag \\\n" +" -e '(@@@@ (gnu packages commencement)\n" +" glibc-final-with-bootstrap-bash)' | dot -Tps > t.ps\n" #. type: Plain text -#: doc/guix.texi:22215 -msgid "" -"produces the dependency graph leading to the ``final'' C " -"library@footnote{You may notice the @code{glibc-intermediate} label, " -"suggesting that it is not @emph{quite} final, but as a good approximation, " -"we will consider it final.}, depicted below." +#: doc/guix.texi:22699 +msgid "produces the dependency graph leading to the ``final'' C library@footnote{You may notice the @code{glibc-intermediate} label, suggesting that it is not @emph{quite} final, but as a good approximation, we will consider it final.}, depicted below." msgstr "" #. type: Plain text -#: doc/guix.texi:22217 -msgid "" -"@image{images/bootstrap-packages,6in,,Dependency graph of the early packages}" +#: doc/guix.texi:22701 +msgid "@image{images/bootstrap-packages,6in,,Dependency graph of the early packages}" msgstr "" #. type: Plain text -#: doc/guix.texi:22223 -msgid "" -"The first tool that gets built with the bootstrap binaries is GNU@tie{}" -"Make---noted @code{make-boot0} above---which is a prerequisite for all the " -"following packages. From there Findutils and Diffutils get built." +#: doc/guix.texi:22707 +msgid "The first tool that gets built with the bootstrap binaries is GNU@tie{}Make---noted @code{make-boot0} above---which is a prerequisite for all the following packages. From there Findutils and Diffutils get built." msgstr "" #. type: Plain text -#: doc/guix.texi:22228 -msgid "" -"Then come the first-stage Binutils and GCC, built as pseudo cross tools---i." -"e., with @code{--target} equal to @code{--host}. They are used to build " -"libc. Thanks to this cross-build trick, this libc is guaranteed not to hold " -"any reference to the initial tool chain." +#: doc/guix.texi:22712 +msgid "Then come the first-stage Binutils and GCC, built as pseudo cross tools---i.e., with @code{--target} equal to @code{--host}. They are used to build libc. Thanks to this cross-build trick, this libc is guaranteed not to hold any reference to the initial tool chain." msgstr "" #. type: Plain text -#: doc/guix.texi:22234 -msgid "" -"From there the final Binutils and GCC (not shown above) are built. GCC uses " -"@code{ld} from the final Binutils, and links programs against the just-built " -"libc. This tool chain is used to build the other packages used by Guix and " -"by the GNU Build System: Guile, Bash, Coreutils, etc." +#: doc/guix.texi:22718 +msgid "From there the final Binutils and GCC (not shown above) are built. GCC uses @code{ld} from the final Binutils, and links programs against the just-built libc. This tool chain is used to build the other packages used by Guix and by the GNU Build System: Guile, Bash, Coreutils, etc." msgstr "" #. type: Plain text -#: doc/guix.texi:22240 -msgid "" -"And voilà! At this point we have the complete set of build tools that the " -"GNU Build System expects. These are in the @code{%final-inputs} variable of " -"the @code{(gnu packages commencement)} module, and are implicitly used by " -"any package that uses @code{gnu-build-system} (@pxref{Build Systems, " -"@code{gnu-build-system}})." +#: doc/guix.texi:22724 +msgid "And voilà! At this point we have the complete set of build tools that the GNU Build System expects. These are in the @code{%final-inputs} variable of the @code{(gnu packages commencement)} module, and are implicitly used by any package that uses @code{gnu-build-system} (@pxref{Build Systems, @code{gnu-build-system}})." msgstr "" #. type: unnumberedsubsec -#: doc/guix.texi:22242 +#: doc/guix.texi:22726 #, no-wrap msgid "Building the Bootstrap Binaries" msgstr "" #. type: Plain text -#: doc/guix.texi:22249 -msgid "" -"Because the final tool chain does not depend on the bootstrap binaries, " -"those rarely need to be updated. Nevertheless, it is useful to have an " -"automated way to produce them, should an update occur, and this is what the " -"@code{(gnu packages make-bootstrap)} module provides." +#: doc/guix.texi:22733 +msgid "Because the final tool chain does not depend on the bootstrap binaries, those rarely need to be updated. Nevertheless, it is useful to have an automated way to produce them, should an update occur, and this is what the @code{(gnu packages make-bootstrap)} module provides." msgstr "" #. type: Plain text -#: doc/guix.texi:22253 -msgid "" -"The following command builds the tarballs containing the bootstrap binaries " -"(Guile, Binutils, GCC, libc, and a tarball containing a mixture of Coreutils " -"and other basic command-line tools):" +#: doc/guix.texi:22737 +msgid "The following command builds the tarballs containing the bootstrap binaries (Guile, Binutils, GCC, libc, and a tarball containing a mixture of Coreutils and other basic command-line tools):" msgstr "" #. type: example -#: doc/guix.texi:22256 +#: doc/guix.texi:22740 #, no-wrap msgid "guix build bootstrap-tarballs\n" msgstr "" #. type: Plain text -#: doc/guix.texi:22261 -msgid "" -"The generated tarballs are those that should be referred to in the " -"@code{(gnu packages bootstrap)} module mentioned at the beginning of this " -"section." +#: doc/guix.texi:22745 +msgid "The generated tarballs are those that should be referred to in the @code{(gnu packages bootstrap)} module mentioned at the beginning of this section." msgstr "" #. type: Plain text -#: doc/guix.texi:22267 -msgid "" -"Still here? Then perhaps by now you've started to wonder: when do we reach a " -"fixed point? That is an interesting question! The answer is unknown, but if " -"you would like to investigate further (and have significant computational " -"and storage resources to do so), then let us know." +#: doc/guix.texi:22751 +msgid "Still here? Then perhaps by now you've started to wonder: when do we reach a fixed point? That is an interesting question! The answer is unknown, but if you would like to investigate further (and have significant computational and storage resources to do so), then let us know." msgstr "" #. type: unnumberedsubsec -#: doc/guix.texi:22268 +#: doc/guix.texi:22752 #, no-wrap msgid "Reducing the Set of Bootstrap Binaries" msgstr "" #. type: Plain text -#: doc/guix.texi:22276 -msgid "" -"Our bootstrap binaries currently include GCC, Guile, etc. That's a lot of " -"binary code! Why is that a problem? It's a problem because these big chunks " -"of binary code are practically non-auditable, which makes it hard to " -"establish what source code produced them. Every unauditable binary also " -"leaves us vulnerable to compiler backdoors as described by Ken Thompson in " -"the 1984 paper @emph{Reflections on Trusting Trust}." +#: doc/guix.texi:22760 +msgid "Our bootstrap binaries currently include GCC, Guile, etc. That's a lot of binary code! Why is that a problem? It's a problem because these big chunks of binary code are practically non-auditable, which makes it hard to establish what source code produced them. Every unauditable binary also leaves us vulnerable to compiler backdoors as described by Ken Thompson in the 1984 paper @emph{Reflections on Trusting Trust}." msgstr "" #. type: Plain text -#: doc/guix.texi:22282 -msgid "" -"This is mitigated by the fact that our bootstrap binaries were generated " -"from an earlier Guix revision. Nevertheless it lacks the level of " -"transparency that we get in the rest of the package dependency graph, where " -"Guix always gives us a source-to-binary mapping. Thus, our goal is to " -"reduce the set of bootstrap binaries to the bare minimum." +#: doc/guix.texi:22766 +msgid "This is mitigated by the fact that our bootstrap binaries were generated from an earlier Guix revision. Nevertheless it lacks the level of transparency that we get in the rest of the package dependency graph, where Guix always gives us a source-to-binary mapping. Thus, our goal is to reduce the set of bootstrap binaries to the bare minimum." msgstr "" #. type: Plain text -#: doc/guix.texi:22288 -msgid "" -"The @uref{http://bootstrappable.org, Bootstrappable.org web site} lists on-" -"going projects to do that. One of these is about replacing the bootstrap " -"GCC with a sequence of assemblers, interpreters, and compilers of increasing " -"complexity, which could be built from source starting from a simple and " -"auditable assembler. Your help is welcome!" +#: doc/guix.texi:22772 +msgid "The @uref{http://bootstrappable.org, Bootstrappable.org web site} lists on-going projects to do that. One of these is about replacing the bootstrap GCC with a sequence of assemblers, interpreters, and compilers of increasing complexity, which could be built from source starting from a simple and auditable assembler. Your help is welcome!" msgstr "" #. type: section -#: doc/guix.texi:22291 +#: doc/guix.texi:22775 #, no-wrap msgid "Porting to a New Platform" msgstr "" #. type: Plain text -#: doc/guix.texi:22300 -msgid "" -"As discussed above, the GNU distribution is self-contained, and self-" -"containment is achieved by relying on pre-built ``bootstrap " -"binaries'' (@pxref{Bootstrapping}). These binaries are specific to an " -"operating system kernel, CPU architecture, and application binary interface " -"(ABI). Thus, to port the distribution to a platform that is not yet " -"supported, one must build those bootstrap binaries, and update the " -"@code{(gnu packages bootstrap)} module to use them on that platform." +#: doc/guix.texi:22784 +msgid "As discussed above, the GNU distribution is self-contained, and self-containment is achieved by relying on pre-built ``bootstrap binaries'' (@pxref{Bootstrapping}). These binaries are specific to an operating system kernel, CPU architecture, and application binary interface (ABI). Thus, to port the distribution to a platform that is not yet supported, one must build those bootstrap binaries, and update the @code{(gnu packages bootstrap)} module to use them on that platform." msgstr "" #. type: Plain text -#: doc/guix.texi:22305 -msgid "" -"Fortunately, Guix can @emph{cross compile} those bootstrap binaries. When " -"everything goes well, and assuming the GNU tool chain supports the target " -"platform, this can be as simple as running a command like this one:" +#: doc/guix.texi:22789 +msgid "Fortunately, Guix can @emph{cross compile} those bootstrap binaries. When everything goes well, and assuming the GNU tool chain supports the target platform, this can be as simple as running a command like this one:" msgstr "" #. type: example -#: doc/guix.texi:22308 +#: doc/guix.texi:22792 #, no-wrap msgid "guix build --target=armv5tel-linux-gnueabi bootstrap-tarballs\n" msgstr "" #. type: Plain text -#: doc/guix.texi:22315 -msgid "" -"For this to work, the @code{glibc-dynamic-linker} procedure in @code{(gnu " -"packages bootstrap)} must be augmented to return the right file name for " -"libc's dynamic linker on that platform; likewise, @code{system->linux-" -"architecture} in @code{(gnu packages linux)} must be taught about the new " -"platform." +#: doc/guix.texi:22799 +msgid "For this to work, the @code{glibc-dynamic-linker} procedure in @code{(gnu packages bootstrap)} must be augmented to return the right file name for libc's dynamic linker on that platform; likewise, @code{system->linux-architecture} in @code{(gnu packages linux)} must be taught about the new platform." msgstr "" #. type: Plain text -#: doc/guix.texi:22324 -msgid "" -"Once these are built, the @code{(gnu packages bootstrap)} module needs to be " -"updated to refer to these binaries on the target platform. That is, the " -"hashes and URLs of the bootstrap tarballs for the new platform must be added " -"alongside those of the currently supported platforms. The bootstrap Guile " -"tarball is treated specially: it is expected to be available locally, and " -"@file{gnu/local.mk} has rules do download it for the supported " -"architectures; a rule for the new platform must be added as well." +#: doc/guix.texi:22808 +msgid "Once these are built, the @code{(gnu packages bootstrap)} module needs to be updated to refer to these binaries on the target platform. That is, the hashes and URLs of the bootstrap tarballs for the new platform must be added alongside those of the currently supported platforms. The bootstrap Guile tarball is treated specially: it is expected to be available locally, and @file{gnu/local.mk} has rules do download it for the supported architectures; a rule for the new platform must be added as well." msgstr "" #. type: Plain text -#: doc/guix.texi:22333 -msgid "" -"In practice, there may be some complications. First, it may be that the " -"extended GNU triplet that specifies an ABI (like the @code{eabi} suffix " -"above) is not recognized by all the GNU tools. Typically, glibc recognizes " -"some of these, whereas GCC uses an extra @code{--with-abi} configure flag " -"(see @code{gcc.scm} for examples of how to handle this). Second, some of " -"the required packages could fail to build for that platform. Lastly, the " -"generated binaries could be broken for some reason." +#: doc/guix.texi:22817 +msgid "In practice, there may be some complications. First, it may be that the extended GNU triplet that specifies an ABI (like the @code{eabi} suffix above) is not recognized by all the GNU tools. Typically, glibc recognizes some of these, whereas GCC uses an extra @code{--with-abi} configure flag (see @code{gcc.scm} for examples of how to handle this). Second, some of the required packages could fail to build for that platform. Lastly, the generated binaries could be broken for some reason." msgstr "" #. type: include -#: doc/guix.texi:22335 +#: doc/guix.texi:22819 #, no-wrap msgid "contributing.texi" msgstr "contributing.fr.texi" #. type: Plain text -#: doc/guix.texi:22348 -msgid "" -"Guix is based on the @uref{http://nixos.org/nix/, Nix package manager}, " -"which was designed and implemented by Eelco Dolstra, with contributions from " -"other people (see the @file{nix/AUTHORS} file in Guix.) Nix pioneered " -"functional package management, and promoted unprecedented features, such as " -"transactional package upgrades and rollbacks, per-user profiles, and " -"referentially transparent build processes. Without this work, Guix would " -"not exist." -msgstr "" +#: doc/guix.texi:22832 +msgid "Guix is based on the @uref{http://nixos.org/nix/, Nix package manager}, which was designed and implemented by Eelco Dolstra, with contributions from other people (see the @file{nix/AUTHORS} file in Guix.) Nix pioneered functional package management, and promoted unprecedented features, such as transactional package upgrades and rollbacks, per-user profiles, and referentially transparent build processes. Without this work, Guix would not exist." +msgstr "Guix se base sur le @uref{http://nixos.org/nix/, gestionnaire de paquets Nix} conçu et implémenté par Eelco Dolstra, avec des constributions d'autres personnes (voir le fichier @file{nix/AUTHORS} dans Guix). Nix a inventé la gestion de paquet fonctionnelle et promu des fonctionnalités sans précédents comme les mises à jour de paquets transactionnelles et les retours en arrière, les profils par utilisateurs et les processus de constructions transparents pour les références. Sans ce travail, Guix n'existerait pas." #. type: Plain text -#: doc/guix.texi:22351 -msgid "" -"The Nix-based software distributions, Nixpkgs and NixOS, have also been an " -"inspiration for Guix." -msgstr "" +#: doc/guix.texi:22835 +msgid "The Nix-based software distributions, Nixpkgs and NixOS, have also been an inspiration for Guix." +msgstr "Les distributions logicielles basées sur Nix, Nixpkgs et NixOS, ont aussi été une inspiration pour Guix." #. type: Plain text -#: doc/guix.texi:22357 -msgid "" -"GNU@tie{}Guix itself is a collective work with contributions from a number " -"of people. See the @file{AUTHORS} file in Guix for more information on " -"these fine people. The @file{THANKS} file lists people who have helped by " -"reporting bugs, taking care of the infrastructure, providing artwork and " -"themes, making suggestions, and more---thank you!" -msgstr "" +#: doc/guix.texi:22841 +msgid "GNU@tie{}Guix itself is a collective work with contributions from a number of people. See the @file{AUTHORS} file in Guix for more information on these fine people. The @file{THANKS} file lists people who have helped by reporting bugs, taking care of the infrastructure, providing artwork and themes, making suggestions, and more---thank you!" +msgstr "GNU@tie{}Guix lui-même est un travail collectif avec des contributions d'un grand nombre de personnes. Voyez le fichier @file{AUTHORS} dans Guix pour plus d'information sur ces personnes de qualité. Le fichier @file{THANKS} liste les personnes qui ont aidé en rapportant des bogues, en prenant soin de l'infrastructure, en fournissant des images et des thèmes, en faisant des suggestions et bien plus. Merci !" #. type: cindex -#: doc/guix.texi:22362 +#: doc/guix.texi:22846 #, no-wrap msgid "license, GNU Free Documentation License" msgstr "license, GNU Free Documentation License" #. type: include -#: doc/guix.texi:22363 +#: doc/guix.texi:22847 #, no-wrap msgid "fdl-1.3.texi" msgstr "fdl-1.3.texi" + +#~ msgid "Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the local source tree; it simply updates the @file{~/.config/guix/latest} symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if you want to upgrade your local source tree.@footnote{If you would like to set up @command{guix} to use your Git checkout, you can point the @file{~/.config/guix/latest} symlink to your Git checkout directory. If you are the sole user of your system, you may also consider pointing the @file{/root/.config/guix/latest} symlink to point to @file{~/.config/guix/latest}; this way it will always use the same @command{guix} as your user does.}" +#~ msgstr "Remarquez que @command{./pre-inst-env guix pull} ne met @emph{pas} à jour l'arborescence des sources locale ; il met seulement à jour le lien symbolique @file{~/.config/guix/latest} (@pxref{Invoquer guix pull}). Lancez @command{git pull} à la place si vous voulez mettre à jour votre arborescence des sources locale@footnote{Si vous voulez paramétrer @command{guix} pour qu'il utilise votre dépôt Git, vous pouvez faire pointer le lien symbolique @file{~/.config/guix/latest} vers le répertoire contenant ce dépôt. Si vous le seul utilisateur du système, vous pouvez aussi considérer faire pointer le lien symbolique @file{/root/.config/guix/latest} vers @file{~/.config/guix/latest} ; comme ça root aura toujours la même commande @command{guix} que votre utilisateur}." diff --git a/po/guix/da.po b/po/guix/da.po index b55db1731f..015f0125c2 100644 --- a/po/guix/da.po +++ b/po/guix/da.po @@ -1,128 +1,208 @@ # Danish translation guix. -# Copyright (C) 2017 Free Software Foundation, Inc. +# Copyright (C) 2018 the authors of Guix (msgids) # This file is distributed under the same license as the guix package. -# Joe Hansen , 2015, 2016, 2017. +# Joe Hansen , 2015, 2016, 2017, 2018. # # build -> kompilering +# consider -> tag i betragtning (men mon ikke tag hensyn til eller overvej +# er bedre) # derivation -> derivat # emit -> opret # garbage -> affald (spild, bedre forslag?) # in a row -> i træk # item -> element +# replacement -> erstatning # specify -> angiv +# substitut -> substitut # unloading -> afslutter # msgid "" msgstr "" -"Project-Id-Version: guix 0.13.0\n" +"Project-Id-Version: guix 0.15.0-pre1\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" -"POT-Creation-Date: 2017-05-10 23:29+0200\n" -"PO-Revision-Date: 2017-05-21 19:31+01:00\n" -"Last-Translator: Joe Hansen \n" +"POT-Creation-Date: 2018-04-27 19:13+0200\n" +"PO-Revision-Date: 2018-06-15 20:58+0200\n" +"Last-Translator: joe Hansen \n" "Language-Team: Danish \n" "Language: da\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.8.11\n" -#: gnu/packages.scm:90 +#: gnu.scm:82 +#, scheme-format +msgid "module ~a not found" +msgstr "modulet ~a blev ikke fundet" + +#: gnu.scm:100 +msgid "" +"You may use @command{guix package --show=foo | grep location} to search\n" +"for the location of package @code{foo}.\n" +"If you get the line @code{location: gnu/packages/bar.scm:174:2},\n" +"add @code{bar} to the @code{use-package-modules} form." +msgstr "" +"Du kan bruge @command{guix pakke --show=foo | grep placering} til at søge\n" +"efter placeringen af pakken @code{foo}.\n" +"Hvis du møder linjen @code{location: gnu/packages/bar.scm:174:2},\n" +"tilføj @code{bar} til formen @code{use-package-modules}." + +#: gnu.scm:108 +#, scheme-format +msgid "Try adding @code{(use-package-modules ~a)}." +msgstr "Prøv at tilføje @code{(use-package-modules ~a)}." + +#: gnu.scm:123 +#, scheme-format +msgid "" +"You may use @command{guix system search ~a} to search for a service\n" +"matching @code{~a}.\n" +"If you get the line @code{location: gnu/services/foo.scm:188:2},\n" +"add @code{foo} to the @code{use-service-modules} form." +msgstr "" +"Du kan bruge @command{guix system search ~a} til at søge efter en\n" +"tjenste matchende @code{~a}.\n" +"Hvis du møder linjen @code{location: gnu/services/foo.scm:188:2},\n" +"tilføj @code{foo} til formen @code{use-service-modules}." + +#: gnu.scm:132 +#, scheme-format +msgid "Try adding @code{(use-service-modules ~a)}." +msgstr "Prøv at tilføje @code{(use-service-modules ~a)}." + +#: gnu/packages.scm:92 #, scheme-format msgid "~a: patch not found" msgstr "~a: rettelse blev ikke fundet" -#: gnu/packages.scm:106 +#: gnu/packages.scm:108 #, scheme-format msgid "could not find bootstrap binary '~a' for system '~a'" msgstr "kunne ikke finde bootstraps binære »~a« for system »~a«" -#: gnu/packages.scm:236 +#: gnu/packages.scm:259 #, scheme-format msgid "ambiguous package specification `~a'~%" msgstr "tvetydig pakkespecifikation »~a«~%" -#: gnu/packages.scm:237 +#: gnu/packages.scm:260 #, scheme-format msgid "choosing ~a@~a from ~a~%" msgstr "vælger ~a@~a fra ~a~%" -#: gnu/packages.scm:242 guix/scripts/package.scm:272 +#: gnu/packages.scm:265 guix/scripts/package.scm:278 #, scheme-format msgid "package '~a' has been superseded by '~a'~%" msgstr "pakken »~a« er blevet efterfulgt af »~a«~%" -#: gnu/packages.scm:249 +#: gnu/packages.scm:272 #, scheme-format msgid "~A: package not found for version ~a~%" msgstr "~A: pakke ikke fundet for version ~a~%" -#: gnu/packages.scm:250 +#: gnu/packages.scm:273 #, scheme-format msgid "~A: unknown package~%" msgstr "~A: ukendt pakke~%" -#: gnu/packages.scm:278 +#: gnu/packages.scm:301 #, scheme-format msgid "package `~a' lacks output `~a'~%" msgstr "pakke »~a« mangler uddata »~a«~%" -#: gnu/services.scm:186 +#: gnu/services.scm:238 #, scheme-format msgid "~a: no value specified for service of type '~a'" msgstr "~a: ingen værdi angivet for tjenestetypen »~a«" -#: gnu/services.scm:627 +#: gnu/services.scm:643 #, scheme-format -msgid "no target of type '~a' for service ~s" -msgstr "intet mål af typen »~a« for tjeneste ~s" +msgid "no target of type '~a' for service '~a'" +msgstr "intet mål af typen »~a« for tjeneste ~a" -#: gnu/services.scm:638 gnu/services.scm:699 +#: gnu/services.scm:669 gnu/services.scm:762 #, scheme-format msgid "more than one target service of type '~a'" msgstr "mere end en måltjeneste af typen »~a«" -#: gnu/services.scm:689 +#: gnu/services.scm:752 #, scheme-format msgid "service of type '~a' not found" msgstr "tjenste af typen »~a« blev ikke fundet" -#: gnu/system.scm:270 +#: gnu/system.scm:311 #, scheme-format msgid "unrecognized boot parameters for '~a'~%" msgstr "ikke genkendte opstartsparametre for »~a«~%" -#: gnu/system.scm:633 +#: gnu/system.scm:712 #, scheme-format msgid "using a string for file '~a' is deprecated; use 'plain-file' instead~%" msgstr "brug af en streng for filen »~a« er forældet; brug »plain-file« i stedet~%" -#: gnu/system.scm:649 +#: gnu/system.scm:728 #, scheme-format msgid "using a monadic value for '~a' is deprecated; use 'plain-file' instead~%" msgstr "brug af en unik værdi for »~a« er forældet; brug »plain-file« i stedet~%" -#: gnu/system.scm:791 +#: gnu/system.scm:875 #, scheme-format msgid "~a: invalid locale name" msgstr "~a: ugyldigt navn for regionsindstillinger" -#: gnu/services/shepherd.scm:166 +#: gnu/services/shepherd.scm:177 #, scheme-format msgid "service '~a' provided more than once" msgstr "tjenesten »~a« tilbudt mere end en gang" -#: gnu/services/shepherd.scm:181 +#: gnu/services/shepherd.scm:192 #, scheme-format msgid "service '~a' requires '~a', which is not provided by any service" msgstr "tjenesten »~a« kræver »~a«, som ikke tilbydes af nogen tjeneste" -#: gnu/system/shadow.scm:223 +#: gnu/system/mapped-devices.scm:136 +#, scheme-format +msgid "you may need these modules in the initrd for ~a:~{ ~a~}" +msgstr "du kan få brug for disse moduler i initrd for ~a:~{ ~a~}" + +#: gnu/system/mapped-devices.scm:140 +#, scheme-format +msgid "" +"Try adding them to the\n" +"@code{initrd-modules} field of your @code{operating-system} declaration, along\n" +"these lines:\n" +"\n" +"@example\n" +" (operating-system\n" +" ;; @dots{}\n" +" (initrd-modules (append (list~{ ~s~})\n" +" %base-initrd-modules)))\n" +"@end example\n" +msgstr "" +"Prøv at tilføje dem til\n" +"feltet @code{initrd-modules} i din @code{operating-system}-erklæring, sammen\n" +"med disse linjer:\n" +"\n" +"@example\n" +" (operating-system\n" +" ;; @dots{}\n" +" (initrd-modules (append (list~{ ~s~})\n" +" %base-initrd-modules)))\n" +"@end example\n" + +#: gnu/system/mapped-devices.scm:216 +#, scheme-format +msgid "no LUKS partition with UUID '~a'" +msgstr "ingen LUKS-partition med UUID »~a«" + +#: gnu/system/shadow.scm:242 #, scheme-format msgid "supplementary group '~a' of user '~a' is undeclared" msgstr "supplerende gruppe »~a« for bruger »~a« er ikke erklæret" -#: gnu/system/shadow.scm:233 +#: gnu/system/shadow.scm:252 #, scheme-format msgid "primary group '~a' of user '~a' is undeclared" msgstr "primær gruppe »~a« for brugeren »~a« er ikke erklæret" @@ -132,41 +212,45 @@ msgstr "primær gruppe »~a« for brugeren »~a« er ikke erklæret" msgid "invalid argument: ~a~%" msgstr "ugyldigt argument: ~a~%" -#: guix/scripts.scm:82 guix/scripts/download.scm:133 guix/scripts/gc.scm:164 +#: guix/scripts.scm:84 guix/scripts/download.scm:135 #: guix/scripts/import/cran.scm:82 guix/scripts/import/elpa.scm:77 -#: guix/scripts/lint.scm:1061 guix/scripts/publish.scm:811 -#: guix/scripts/edit.scm:81 guix/scripts/graph.scm:456 +#: guix/scripts/publish.scm:881 guix/scripts/edit.scm:81 #, scheme-format msgid "~A: unrecognized option~%" msgstr "~A: ikke genkendt tilvalg~%" -#: guix/scripts.scm:174 +#: guix/scripts.scm:179 #, scheme-format msgid "Your Guix installation is ~a day old.\n" msgid_plural "Your Guix installation is ~a days old.\n" msgstr[0] "Din Guix-installation er ~a dag gammel.\n" msgstr[1] "Din Guix-installation er ~a dage gammel.\n" -#: guix/scripts.scm:179 +#: guix/scripts.scm:184 #, scheme-format msgid "" "Consider running 'guix pull' followed by\n" "'~a' to get up-to-date packages and security updates.\n" msgstr "" -"Overvej at afvikle »guix pull« efterfulgt af\n" +"Tag i betragtning at afvikle »guix pull« efterfulgt af\n" "»~a« for at få opdaterede pakker og sikkerhedsopdateringer.\n" -#: guix/scripts/build.scm:124 +#: guix/scripts/build.scm:81 +#, scheme-format +msgid "cannot access build log at '~a':~%" +msgstr "kan ikke tilgå kompileringsloggen på »~a«:~%" + +#: guix/scripts/build.scm:135 #, scheme-format msgid "failed to create GC root `~a': ~a~%" msgstr "kunne ikke oprette GC-root »~a«: ~a~%" -#: guix/scripts/build.scm:206 +#: guix/scripts/build.scm:237 #, scheme-format msgid "invalid replacement specification: ~s~%" msgstr "ugyldig erstatningsspecifikation: ~s~%" -#: guix/scripts/build.scm:263 +#: guix/scripts/build.scm:294 msgid "" "\n" " --with-source=SOURCE\n" @@ -176,7 +260,7 @@ msgstr "" " --with-source=KILDE\n" " brug KILDE når den tilsvarende pakke kompileres" -#: guix/scripts/build.scm:266 +#: guix/scripts/build.scm:297 msgid "" "\n" " --with-input=PACKAGE=REPLACEMENT\n" @@ -186,7 +270,7 @@ msgstr "" " --with-input=PAKKE=ERSTATNING\n" " erstat afhængighedsPAKKE med ERSTATNING" -#: guix/scripts/build.scm:269 +#: guix/scripts/build.scm:300 msgid "" "\n" " --with-graft=PACKAGE=REPLACEMENT\n" @@ -196,12 +280,12 @@ msgstr "" " --with-graft=PAKKE=ERSTATNING\n" " pod ERSTATNING på pakker som refererer til PAKKE" -#: guix/scripts/build.scm:294 +#: guix/scripts/build.scm:325 #, scheme-format msgid "transformation '~a' had no effect on ~a~%" msgstr "transformation »~a« havde ingen effekt på ~a~%" -#: guix/scripts/build.scm:312 +#: guix/scripts/build.scm:343 msgid "" "\n" " -L, --load-path=DIR prepend DIR to the package module search path" @@ -209,7 +293,7 @@ msgstr "" "\n" " -L, --load-path=MAPPE foranstil MAPPE til pakkemodulets søgesti" -#: guix/scripts/build.scm:314 +#: guix/scripts/build.scm:345 msgid "" "\n" " -K, --keep-failed keep build tree of failed builds" @@ -217,7 +301,7 @@ msgstr "" "\n" " -K, --keep-failed bevar kompileringstræ for mislykkede kompileringer" -#: guix/scripts/build.scm:316 +#: guix/scripts/build.scm:347 msgid "" "\n" " -k, --keep-going keep going when some of the derivations fail" @@ -225,7 +309,7 @@ msgstr "" "\n" " -k, --keep-going fortsæt når nogle af derivaterne fejler" -#: guix/scripts/build.scm:318 +#: guix/scripts/build.scm:349 msgid "" "\n" " -n, --dry-run do not build the derivations" @@ -233,15 +317,15 @@ msgstr "" "\n" " -n, --dry-run kompiler ikke derivater" -#: guix/scripts/build.scm:320 +#: guix/scripts/build.scm:351 msgid "" "\n" " --fallback fall back to building when the substituter fails" msgstr "" "\n" -" --fallback fald tilbage til kompilering når erstatningen fejler" +" --fallback fald tilbage til kompilering når substituten fejler" -#: guix/scripts/build.scm:322 +#: guix/scripts/build.scm:353 msgid "" "\n" " --no-substitutes build instead of resorting to pre-built substitutes" @@ -250,7 +334,7 @@ msgstr "" " --no-substitutes kompiler i stedet for at bruge prækompilerede\n" " substitutter" -#: guix/scripts/build.scm:324 guix/scripts/size.scm:222 +#: guix/scripts/build.scm:355 guix/scripts/size.scm:232 msgid "" "\n" " --substitute-urls=URLS\n" @@ -260,7 +344,7 @@ msgstr "" " --substitute-urls=ADRESSER\n" " hent substitut fra ADRESSER hvis de er godkendt" -#: guix/scripts/build.scm:327 +#: guix/scripts/build.scm:358 msgid "" "\n" " --no-grafts do not graft packages" @@ -268,7 +352,7 @@ msgstr "" "\n" " --no-grafts pod ikke pakker" -#: guix/scripts/build.scm:329 +#: guix/scripts/build.scm:360 msgid "" "\n" " --no-build-hook do not attempt to offload builds via the build hook" @@ -277,7 +361,7 @@ msgstr "" " --no-build-hook forsøg ikke at aflaste kompileringer via\n" " kompileringskrogen" -#: guix/scripts/build.scm:331 +#: guix/scripts/build.scm:362 msgid "" "\n" " --max-silent-time=SECONDS\n" @@ -288,7 +372,7 @@ msgstr "" " marker kompileringen som mislykket efter SEKUNDERs\n" " stilhed" -#: guix/scripts/build.scm:334 +#: guix/scripts/build.scm:365 msgid "" "\n" " --timeout=SECONDS mark the build as failed after SECONDS of activity" @@ -297,7 +381,7 @@ msgstr "" " --timeout=SEKUNDER marker kompileringen som mislykket efter SEKUNDERs\n" " aktivitet" -#: guix/scripts/build.scm:336 +#: guix/scripts/build.scm:367 msgid "" "\n" " --verbosity=LEVEL use the given verbosity LEVEL" @@ -305,7 +389,7 @@ msgstr "" "\n" " --verbosity=NIVEAU brug det angivne uddybnings-NIVEAU" -#: guix/scripts/build.scm:338 +#: guix/scripts/build.scm:369 msgid "" "\n" " --rounds=N build N times in a row to detect non-determinism" @@ -314,7 +398,7 @@ msgstr "" " --rounds=N kompiler N gange i træk for at detektere\n" " ikkedeterminisme" -#: guix/scripts/build.scm:340 +#: guix/scripts/build.scm:371 msgid "" "\n" " -c, --cores=N allow the use of up to N CPU cores for the build" @@ -323,7 +407,7 @@ msgstr "" " -c, --cores=N tillad brugen af op til N cpu-kerner til\n" " kompileringen" -#: guix/scripts/build.scm:342 +#: guix/scripts/build.scm:373 msgid "" "\n" " -M, --max-jobs=N allow at most N build jobs" @@ -331,12 +415,12 @@ msgstr "" "\n" " -M, --max-jobs=N tillad højst N kompileringsjob" -#: guix/scripts/build.scm:448 guix/scripts/build.scm:455 +#: guix/scripts/build.scm:479 guix/scripts/build.scm:486 #, scheme-format msgid "not a number: '~a' option argument: ~a~%" msgstr "ikke et nummer: »~a« tilvalgsparameter: ~a~%" -#: guix/scripts/build.scm:474 +#: guix/scripts/build.scm:505 msgid "" "Usage: guix build [OPTION]... PACKAGE-OR-DERIVATION...\n" "Build the given PACKAGE-OR-DERIVATION and return their output paths.\n" @@ -344,7 +428,7 @@ msgstr "" "Brug: guix build [TILVALG]... PAKKE-ELLER-DERIVAT...\n" "Kompiler den angivne PAKKE-ELLER-DERIVAT og returner deres uddatastier.\n" -#: guix/scripts/build.scm:476 +#: guix/scripts/build.scm:507 msgid "" "\n" " -e, --expression=EXPR build the package or derivation EXPR evaluates to" @@ -353,7 +437,7 @@ msgstr "" " -e, --expression=UDTRYK\n" " kompiler pakken eller derivatet UDTRYK evaluerer til" -#: guix/scripts/build.scm:478 +#: guix/scripts/build.scm:509 msgid "" "\n" " -f, --file=FILE build the package or derivation that the code within\n" @@ -363,7 +447,7 @@ msgstr "" " -f, --file=FIL kompiler pakken eller derivatet som koden i FIL\n" " evaluerer til" -#: guix/scripts/build.scm:481 +#: guix/scripts/build.scm:512 msgid "" "\n" " -S, --source build the packages' source derivations" @@ -371,7 +455,7 @@ msgstr "" "\n" " -S, --source kompiler pakkernes kildederivater" -#: guix/scripts/build.scm:483 +#: guix/scripts/build.scm:514 msgid "" "\n" " --sources[=TYPE] build source derivations; TYPE may optionally be one\n" @@ -381,7 +465,7 @@ msgstr "" " --sources[=TYPE] kompileringskildederivater; TYPE kan valgfrit være\n" " »package«, »all« (standard) eller »transitive«" -#: guix/scripts/build.scm:486 guix/scripts/pack.scm:330 +#: guix/scripts/build.scm:517 guix/scripts/pack.scm:357 msgid "" "\n" " -s, --system=SYSTEM attempt to build for SYSTEM--e.g., \"i686-linux\"" @@ -389,7 +473,7 @@ msgstr "" "\n" " -s, --system=SYSTEM forsøger at kompilere for SYSTEM--f.eks. »i686-linux«" -#: guix/scripts/build.scm:488 guix/scripts/pack.scm:332 +#: guix/scripts/build.scm:519 guix/scripts/pack.scm:359 msgid "" "\n" " --target=TRIPLET cross-build for TRIPLET--e.g., \"armel-linux-gnu\"" @@ -397,7 +481,7 @@ msgstr "" "\n" " --target=TRIPLET krydskompiler for TRIPLET--f.eks. »armel-linux-gnu«" -#: guix/scripts/build.scm:490 +#: guix/scripts/build.scm:521 msgid "" "\n" " -d, --derivations return the derivation paths of the given packages" @@ -405,7 +489,7 @@ msgstr "" "\n" " -d, --derivations returner de derivate stier for de givne pakker" -#: guix/scripts/build.scm:492 +#: guix/scripts/build.scm:523 msgid "" "\n" " --check rebuild items to check for non-determinism issues" @@ -414,7 +498,7 @@ msgstr "" " --check kompiler elementer igen for at kontrollere\n" " ikkedeterminisme" -#: guix/scripts/build.scm:494 +#: guix/scripts/build.scm:525 msgid "" "\n" " --repair repair the specified items" @@ -422,7 +506,7 @@ msgstr "" "\n" " --repair reparer de specificerede elementer" -#: guix/scripts/build.scm:496 +#: guix/scripts/build.scm:527 msgid "" "\n" " -r, --root=FILE make FILE a symlink to the result, and register it\n" @@ -432,7 +516,7 @@ msgstr "" " -r, --root=FIL gør FIL til en symbolsk henvisning for resultatet, og\n" " registrer den som en affaldsindsamlerroot" -#: guix/scripts/build.scm:499 +#: guix/scripts/build.scm:530 msgid "" "\n" " -q, --quiet do not show the build log" @@ -440,7 +524,7 @@ msgstr "" "\n" " -q, --quiet vis ikke kompileringsloggen" -#: guix/scripts/build.scm:501 +#: guix/scripts/build.scm:532 msgid "" "\n" " --log-file return the log file names for the given derivations" @@ -448,16 +532,17 @@ msgstr "" "\n" " --log-file returner logfilnavnen for de givne derivater" -#: guix/scripts/build.scm:508 guix/scripts/download.scm:81 -#: guix/scripts/package.scm:419 guix/scripts/gc.scm:74 +#: guix/scripts/build.scm:539 guix/scripts/download.scm:83 +#: guix/scripts/package.scm:435 guix/scripts/gc.scm:76 #: guix/scripts/hash.scm:59 guix/scripts/import.scm:92 -#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:94 -#: guix/scripts/substitute.scm:810 guix/scripts/system.scm:742 -#: guix/scripts/lint.scm:1010 guix/scripts/publish.scm:93 -#: guix/scripts/edit.scm:44 guix/scripts/size.scm:230 -#: guix/scripts/graph.scm:436 guix/scripts/challenge.scm:227 -#: guix/scripts/copy.scm:121 guix/scripts/pack.scm:341 -#: guix/scripts/container.scm:33 guix/scripts/container/exec.scm:43 +#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:111 +#: guix/scripts/substitute.scm:879 guix/scripts/system.scm:970 +#: guix/scripts/lint.scm:1122 guix/scripts/publish.scm:94 +#: guix/scripts/edit.scm:44 guix/scripts/size.scm:243 +#: guix/scripts/graph.scm:466 guix/scripts/challenge.scm:241 +#: guix/scripts/copy.scm:122 guix/scripts/pack.scm:372 +#: guix/scripts/weather.scm:258 guix/scripts/container.scm:33 +#: guix/scripts/container/exec.scm:43 msgid "" "\n" " -h, --help display this help and exit" @@ -465,16 +550,17 @@ msgstr "" "\n" " -h, --help vis denne hjælpetekst og afslut" -#: guix/scripts/build.scm:510 guix/scripts/download.scm:83 -#: guix/scripts/package.scm:421 guix/scripts/gc.scm:76 +#: guix/scripts/build.scm:541 guix/scripts/download.scm:85 +#: guix/scripts/package.scm:437 guix/scripts/gc.scm:78 #: guix/scripts/hash.scm:61 guix/scripts/import.scm:94 -#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:96 -#: guix/scripts/substitute.scm:812 guix/scripts/system.scm:744 -#: guix/scripts/lint.scm:1014 guix/scripts/publish.scm:95 -#: guix/scripts/edit.scm:46 guix/scripts/size.scm:232 -#: guix/scripts/graph.scm:438 guix/scripts/challenge.scm:229 -#: guix/scripts/copy.scm:123 guix/scripts/pack.scm:343 -#: guix/scripts/container.scm:35 guix/scripts/container/exec.scm:45 +#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:113 +#: guix/scripts/substitute.scm:881 guix/scripts/system.scm:972 +#: guix/scripts/lint.scm:1126 guix/scripts/publish.scm:96 +#: guix/scripts/edit.scm:46 guix/scripts/size.scm:245 +#: guix/scripts/graph.scm:468 guix/scripts/challenge.scm:243 +#: guix/scripts/copy.scm:124 guix/scripts/pack.scm:374 +#: guix/scripts/weather.scm:260 guix/scripts/container.scm:35 +#: guix/scripts/container/exec.scm:45 msgid "" "\n" " -V, --version display version information and exit" @@ -482,7 +568,7 @@ msgstr "" "\n" " -V, --version vis versioninformation og afslut" -#: guix/scripts/build.scm:537 +#: guix/scripts/build.scm:568 #, scheme-format msgid "" "invalid argument: '~a' option argument: ~a, ~\n" @@ -491,27 +577,27 @@ msgstr "" "ugyldigt argument: »~a« tilvalgsargumentet: ~a, ~\n" "skal være »package«, »all« eller »transitive«~%" -#: guix/scripts/build.scm:590 +#: guix/scripts/build.scm:621 #, scheme-format msgid "~s: not something we can build~%" msgstr "~s: ikke noget vi kan kompilere~%" -#: guix/scripts/build.scm:644 +#: guix/scripts/build.scm:675 #, scheme-format msgid "~a: warning: package '~a' has no source~%" msgstr "~a: advarsel: pakken »~a« har ingen kilde~%" -#: guix/scripts/build.scm:678 +#: guix/scripts/build.scm:709 #, scheme-format msgid "no build log for '~a'~%" msgstr "ingen kompileringslog for »~a«~%" -#: guix/discovery.scm:56 +#: guix/discovery.scm:90 #, scheme-format msgid "cannot access `~a': ~a~%" msgstr "kan ikke tilgå »~a«: ~a~%" -#: guix/scripts/download.scm:67 +#: guix/scripts/download.scm:69 msgid "" "Usage: guix download [OPTION] URL\n" "Download the file at URL to the store or to the given file, and print its\n" @@ -527,7 +613,7 @@ msgstr "" "Understøttede formater: »nix-base32« (standard), »base32«, og »base16«\n" "(»hex« og »hexadecimal« kan også bruges).\n" -#: guix/scripts/download.scm:73 guix/scripts/hash.scm:54 +#: guix/scripts/download.scm:75 guix/scripts/hash.scm:54 msgid "" "\n" " -f, --format=FMT write the hash in the given format" @@ -535,7 +621,7 @@ msgstr "" "\n" " -f, --format=FMT skriv hashen i det givne format" -#: guix/scripts/download.scm:75 +#: guix/scripts/download.scm:77 msgid "" "\n" " --no-check-certificate\n" @@ -545,7 +631,7 @@ msgstr "" " --no-check-certificate\n" " valider ikke certifikatet for HTTPS-servere" -#: guix/scripts/download.scm:78 +#: guix/scripts/download.scm:80 msgid "" "\n" " -o, --output=FILE download to FILE" @@ -553,91 +639,96 @@ msgstr "" "\n" " -o, --output=FIL hent til FIL" -#: guix/scripts/download.scm:101 guix/scripts/hash.scm:82 +#: guix/scripts/download.scm:103 guix/scripts/hash.scm:82 #, scheme-format msgid "unsupported hash format: ~a~%" msgstr "ikke understøttet hash-format: ~a~%" -#: guix/scripts/download.scm:136 guix/scripts/package.scm:882 -#: guix/scripts/publish.scm:813 +#: guix/scripts/download.scm:138 guix/scripts/package.scm:924 +#: guix/scripts/publish.scm:883 #, scheme-format msgid "~A: extraneous argument~%" msgstr "~A: uvedkommende argument~%" -#: guix/scripts/download.scm:144 +#: guix/scripts/download.scm:146 #, scheme-format msgid "no download URI was specified~%" msgstr "ingen overførselsadresse var angivet~%" -#: guix/scripts/download.scm:146 +#: guix/scripts/download.scm:151 #, scheme-format msgid "~a: failed to parse URI~%" msgstr "~a: kunne ikke fortolke URI~%" -#: guix/scripts/download.scm:156 +#: guix/scripts/download.scm:161 #, scheme-format msgid "~a: download failed~%" msgstr "~a: overførsel mislykkede~%" -#: guix/scripts/package.scm:107 +#: guix/scripts/package.scm:112 #, scheme-format msgid "Try \"info '(guix) Invoking guix package'\" for more information.~%" msgstr "Prøv »info '(guix) Invoking guix package'« for yderligere information.~%" -#: guix/scripts/package.scm:129 +#: guix/scripts/package.scm:134 #, scheme-format msgid "error: while creating directory `~a': ~a~%" msgstr "fejl: under oprettelse af mappe »~a«: ~a~%" -#: guix/scripts/package.scm:133 +#: guix/scripts/package.scm:138 #, scheme-format msgid "Please create the `~a' directory, with you as the owner.~%" msgstr "Opret venligst mappen »~a«, med dig som ejer.~%" -#: guix/scripts/package.scm:140 +#: guix/scripts/package.scm:145 #, scheme-format msgid "error: directory `~a' is not owned by you~%" msgstr "fejl: mappen »~a« er ikke ejet af dig~%" -#: guix/scripts/package.scm:143 +#: guix/scripts/package.scm:148 #, scheme-format msgid "Please change the owner of `~a' to user ~s.~%" msgstr "Ændr venligst ejeren af »~a« til brugeren ~s.~%" -#: guix/scripts/package.scm:178 +#: guix/scripts/package.scm:183 #, scheme-format msgid "not removing generation ~a, which is current~%" msgstr "fjerner ikke generation ~a, som er nuværende~%" -#: guix/scripts/package.scm:185 +#: guix/scripts/package.scm:190 #, scheme-format msgid "no matching generation~%" msgstr "ingen matchende generation~%" -#: guix/scripts/package.scm:188 guix/scripts/package.scm:700 -#: guix/scripts/system.scm:530 +#: guix/scripts/package.scm:193 guix/scripts/package.scm:730 +#: guix/scripts/system.scm:573 #, scheme-format msgid "invalid syntax: ~a~%" msgstr "ugyldig syntaks: ~a~%" -#: guix/scripts/package.scm:214 +#: guix/scripts/package.scm:222 #, scheme-format msgid "nothing to be done~%" msgstr "intet at udføre~%" -#: guix/scripts/package.scm:228 +#: guix/scripts/package.scm:236 #, scheme-format msgid "~a package in profile~%" msgid_plural "~a packages in profile~%" msgstr[0] "~a pakke i profil~%" msgstr[1] "~a pakker i profil~%" -#: guix/scripts/package.scm:344 +#: guix/scripts/package.scm:320 +#, scheme-format +msgid "package '~a' no longer exists~%" +msgstr "pakken »~a« findes ikke længere~%" + +#: guix/scripts/package.scm:358 #, scheme-format msgid "The following environment variable definitions may be needed:~%" msgstr "De følgende miljøvariabeldefinitioner kan være krævet:~%" -#: guix/scripts/package.scm:360 +#: guix/scripts/package.scm:374 msgid "" "Usage: guix package [OPTION]...\n" "Install, remove, or upgrade packages in a single transaction.\n" @@ -645,7 +736,7 @@ msgstr "" "Brug: guix-pakke [TILVALG] ... \n" "Installer, fjern eller opgrader pakker i en enkel transaktion.\n" -#: guix/scripts/package.scm:362 +#: guix/scripts/package.scm:376 msgid "" "\n" " -i, --install PACKAGE ...\n" @@ -655,7 +746,7 @@ msgstr "" " -i, --install PAKKE ...\n" " installer PAKKER" -#: guix/scripts/package.scm:365 +#: guix/scripts/package.scm:379 msgid "" "\n" " -e, --install-from-expression=EXP\n" @@ -665,7 +756,7 @@ msgstr "" " -e, --install-from-expression=UDTRYK\n" " installer pakken UDTRYK evaluerer til" -#: guix/scripts/package.scm:368 +#: guix/scripts/package.scm:382 msgid "" "\n" " -f, --install-from-file=FILE\n" @@ -677,7 +768,7 @@ msgstr "" " installer pakken som koden i FIL evaluerer\n" " til" -#: guix/scripts/package.scm:372 +#: guix/scripts/package.scm:386 msgid "" "\n" " -r, --remove PACKAGE ...\n" @@ -687,7 +778,7 @@ msgstr "" " -r, --remove PAKKE ...\n" " fjern PAKKER" -#: guix/scripts/package.scm:375 +#: guix/scripts/package.scm:389 msgid "" "\n" " -u, --upgrade[=REGEXP] upgrade all the installed packages matching REGEXP" @@ -697,7 +788,7 @@ msgstr "" " opgrader alle de installerede pakker der matcher\n" " REGUDTRYK" -#: guix/scripts/package.scm:377 +#: guix/scripts/package.scm:391 msgid "" "\n" " -m, --manifest=FILE create a new profile generation with the manifest\n" @@ -707,7 +798,7 @@ msgstr "" " -m, --manifest=FIL opret en ny profiloprettelse med manifestet fra\n" " FIL" -#: guix/scripts/package.scm:380 +#: guix/scripts/package.scm:394 msgid "" "\n" " --do-not-upgrade[=REGEXP] do not upgrade any packages matching REGEXP" @@ -715,7 +806,7 @@ msgstr "" "\n" " --do-not-upgrade[=REGUDTRYK] opgrader ikke pakker der matcher REGUDTRYK" -#: guix/scripts/package.scm:382 +#: guix/scripts/package.scm:396 msgid "" "\n" " --roll-back roll back to the previous generation" @@ -723,7 +814,7 @@ msgstr "" "\n" " --roll-back rul tilbage til den forrige generation" -#: guix/scripts/package.scm:384 +#: guix/scripts/package.scm:398 msgid "" "\n" " --search-paths[=KIND]\n" @@ -733,7 +824,7 @@ msgstr "" " --search-paths[=KIND]\n" " vis krævede miljøvariabeldefinitioner" -#: guix/scripts/package.scm:387 +#: guix/scripts/package.scm:401 msgid "" "\n" " -l, --list-generations[=PATTERN]\n" @@ -743,7 +834,7 @@ msgstr "" " -l, --list-generations[=MØNSTER]\n" " vis generationer der matcher MØNSTER" -#: guix/scripts/package.scm:390 +#: guix/scripts/package.scm:404 msgid "" "\n" " -d, --delete-generations[=PATTERN]\n" @@ -753,7 +844,7 @@ msgstr "" " -d, --delete-generations[=MØNSTER]\n" " slet generationer der matcher MØNSTER" -#: guix/scripts/package.scm:393 +#: guix/scripts/package.scm:407 msgid "" "\n" " -S, --switch-generation=PATTERN\n" @@ -763,7 +854,7 @@ msgstr "" " -S, --switch-generation=MØNSTER\n" " skift til et generationsmatchende MØNSTER" -#: guix/scripts/package.scm:396 +#: guix/scripts/package.scm:410 msgid "" "\n" " -p, --profile=PROFILE use PROFILE instead of the user's default profile" @@ -771,7 +862,15 @@ msgstr "" "\n" " -p, --profile=PROFIL brug PROFIL i stedet for brugerens standardprofil" -#: guix/scripts/package.scm:399 +#: guix/scripts/package.scm:413 +msgid "" +"\n" +" --allow-collisions do not treat collisions in the profile as an error" +msgstr "" +"\n" +" --allow-collisions opfat ikke kollisioner i profilen som en fejl" + +#: guix/scripts/package.scm:415 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the profile" @@ -779,7 +878,7 @@ msgstr "" "\n" " --bootstrap brug bootstrap Guile til at kompilere profilen" -#: guix/scripts/package.scm:401 guix/scripts/pull.scm:86 +#: guix/scripts/package.scm:417 guix/scripts/pull.scm:99 msgid "" "\n" " --verbose produce verbose output" @@ -787,7 +886,7 @@ msgstr "" "\n" " --verbose lav uddybende uddata" -#: guix/scripts/package.scm:404 +#: guix/scripts/package.scm:420 msgid "" "\n" " -s, --search=REGEXP search in synopsis and description using REGEXP" @@ -795,7 +894,7 @@ msgstr "" "\n" " -s, --search=REGUDTRYK søg i synopsis og beskrivelse via REGUDTRYK" -#: guix/scripts/package.scm:406 +#: guix/scripts/package.scm:422 msgid "" "\n" " -I, --list-installed[=REGEXP]\n" @@ -805,7 +904,7 @@ msgstr "" " -I, --list-installed[=REGUDTRYK]\n" " vis installerede pakker der matcher REGUDTRYK" -#: guix/scripts/package.scm:409 +#: guix/scripts/package.scm:425 msgid "" "\n" " -A, --list-available[=REGEXP]\n" @@ -815,7 +914,7 @@ msgstr "" " -A, --list-available[=REGUDTRYK]\n" " vis tilgængelige pakker der matcher REGUDTRYK" -#: guix/scripts/package.scm:412 +#: guix/scripts/package.scm:428 msgid "" "\n" " --show=PACKAGE show details about PACKAGE" @@ -823,22 +922,32 @@ msgstr "" "\n" " --show=PACKAGE vis detaljer om PAKKE" -#: guix/scripts/package.scm:507 +#: guix/scripts/package.scm:480 +#, scheme-format +msgid "upgrade regexp '~a' looks like a command-line option~%" +msgstr "opgradering af regulært udtryk »~a« ligner et tilvalg for kommandolinjen~%" + +#: guix/scripts/package.scm:483 +#, scheme-format +msgid "is this intended?~%" +msgstr "er dette med vilje?~%" + +#: guix/scripts/package.scm:528 #, scheme-format msgid "~a: unsupported kind of search path~%" msgstr "~a: ikke understøttet type af søgesti%" -#: guix/scripts/package.scm:791 +#: guix/scripts/package.scm:829 #, scheme-format msgid "cannot switch to generation '~a'~%" msgstr "kan ikke skifte til generation »~a«~%" -#: guix/scripts/package.scm:807 +#: guix/scripts/package.scm:846 #, scheme-format msgid "would install new manifest from '~a' with ~d entries~%" msgstr "vil installere nyt manifest fra »~a« med ~d poster~%" -#: guix/scripts/package.scm:809 +#: guix/scripts/package.scm:848 #, scheme-format msgid "installing new manifest from '~a' with ~d entries~%" msgstr "installerer nyt manifest fra »~a« med ~d poster~%" @@ -925,7 +1034,15 @@ msgstr "" "\n" " --referrers vis henvisninger for STIER" -#: guix/scripts/gc.scm:65 +#: guix/scripts/gc.scm:64 +msgid "" +"\n" +" --derivers list the derivers of PATHS" +msgstr "" +"\n" +" --derivers vis indholdet af STIER" + +#: guix/scripts/gc.scm:67 msgid "" "\n" " --verify[=OPTS] verify the integrity of the store; OPTS is a\n" @@ -937,7 +1054,7 @@ msgstr "" " kommaadskilt kombination af »repair« og \n" " »contents«" -#: guix/scripts/gc.scm:69 +#: guix/scripts/gc.scm:71 msgid "" "\n" " --list-failures list cached build failures" @@ -945,7 +1062,7 @@ msgstr "" "\n" " --list-failures vis mellemlagrede kompileringsfejl" -#: guix/scripts/gc.scm:71 +#: guix/scripts/gc.scm:73 msgid "" "\n" " --clear-failures remove PATHS from the set of cached failures" @@ -953,25 +1070,30 @@ msgstr "" "\n" " --clear-failures fjern STIER fra sættet med mellemlagrede fejl" -#: guix/scripts/gc.scm:100 +#: guix/scripts/gc.scm:87 +#, scheme-format +msgid "~a: invalid '--verify' option~%" +msgstr "~a: ugyldigt »--verify«-tilvalg~%" + +#: guix/scripts/gc.scm:117 #, scheme-format msgid "invalid amount of storage: ~a~%" msgstr "ugyldig lagermængde: ~a~%" -#: guix/scripts/gc.scm:191 +#: guix/scripts/gc.scm:202 msgid "already ~h bytes available on ~a, nothing to do~%" msgstr "der er allerede ~h byte tilgængelige på ~a, intet at udføre~%" -#: guix/scripts/gc.scm:194 +#: guix/scripts/gc.scm:205 msgid "freeing ~h bytes~%" msgstr "frigiver ~h byte~%" -#: guix/scripts/gc.scm:206 +#: guix/scripts/gc.scm:217 #, scheme-format msgid "extraneous arguments: ~{~a ~}~%" msgstr "uvedkommende argumenter: ~{~a ~}~%" -#: guix/scripts/gc.scm:226 guix/scripts/gc.scm:229 +#: guix/scripts/gc.scm:237 guix/scripts/gc.scm:240 msgid "freed ~h bytes~%" msgstr "frigav ~h byte~%" @@ -1005,18 +1127,13 @@ msgstr "" "\n" " -r, --recursive beregn hashen på FIL rekursivt" -#: guix/scripts/hash.scm:109 -#, scheme-format -msgid "unrecognized option: ~a~%" -msgstr "tilvalg blev ikke genkendt: ~a~%" - -#: guix/scripts/hash.scm:155 guix/ui.scm:264 guix/ui.scm:498 guix/ui.scm:551 +#: guix/scripts/hash.scm:150 guix/ui.scm:346 guix/ui.scm:656 guix/ui.scm:709 #, scheme-format msgid "~a~%" msgstr "~a~%" -#: guix/scripts/hash.scm:158 guix/scripts/system.scm:879 -#: guix/scripts/system.scm:886 guix/scripts/system.scm:893 +#: guix/scripts/hash.scm:153 guix/scripts/system.scm:1138 +#: guix/scripts/system.scm:1147 guix/scripts/system.scm:1154 #, scheme-format msgid "wrong number of arguments~%" msgstr "forkert antal argumenter~%" @@ -1116,7 +1233,26 @@ msgstr "" msgid "failed to download package '~a'~%" msgstr "kunne ikke hente pakken »~a«:~%" -#: guix/scripts/pull.scm:84 +#: guix/scripts/pull.scm:60 +#, scheme-format +msgid "" +"Guile-Git is missing but it is now required by 'guix pull'.\n" +"Install it by running:\n" +"\n" +" guix package -i ~a\n" +" export GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/~a:$GUILE_LOAD_PATH\n" +" export GUILE_LOAD_COMPILED_PATH=$HOME/.guix-profile/lib/guile/~a/site-ccache:$GUILE_LOAD_COMPILED_PATH\n" +"\n" +msgstr "" +"Guile-Git mangler men er nu krævet af »guix pull«.\n" +"Installer den ved at køre:\n" +"\n" +" guix package -i ~a\n" +" export GUILE_LOAD_PATH=$HOME/.guix-profile/share/guile/site/~a:$GUILE_LOAD_PATH\n" +" export GUILE_LOAD_COMPILED_PATH=$HOME/.guix-profile/lib/guile/~a/site-ccache:$GUILE_LOAD_COMPILED_PATH\n" +"\n" + +#: guix/scripts/pull.scm:97 msgid "" "Usage: guix pull [OPTION]...\n" "Download and deploy the latest version of Guix.\n" @@ -1124,15 +1260,31 @@ msgstr "" "Brug: guix pull [TILVALG]...\n" "Hent og udrul den seneste version af Guix.\n" -#: guix/scripts/pull.scm:88 +#: guix/scripts/pull.scm:101 msgid "" "\n" -" --url=URL download the Guix tarball from URL" +" --url=URL download from the Git repository at URL" msgstr "" "\n" -" --url=URL hent Guix-tarball'en fra ADRESSE" +" --url=URL hent fra Git-arkivet på URL (ADRESSE)" -#: guix/scripts/pull.scm:90 +#: guix/scripts/pull.scm:103 +msgid "" +"\n" +" --commit=COMMIT download the specified COMMIT" +msgstr "" +"\n" +" --commit=COMMIT hent den angivne COMMIT (INDSENDELSE)" + +#: guix/scripts/pull.scm:105 +msgid "" +"\n" +" --branch=BRANCH download the tip of the specified BRANCH" +msgstr "" +"\n" +" --branch=BRANCH hent toppen af den angivne BRANCH (GREN)" + +#: guix/scripts/pull.scm:107 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the new Guix" @@ -1140,158 +1292,156 @@ msgstr "" "\n" " --bootstrap brug bootstrap Guile til at kompilere den nye Guix" -#: guix/scripts/pull.scm:150 -msgid "tarball did not produce a single source directory" -msgstr "tarball fremstillede ikke en enkel kildemappe" - -#: guix/scripts/pull.scm:168 -#, scheme-format -msgid "unpacking '~a'...~%" -msgstr "udpakker »~a«...~%" - -#: guix/scripts/pull.scm:177 -msgid "failed to unpack source code" -msgstr "kunne ikke udpakke kildekode" - -#: guix/scripts/pull.scm:220 +#: guix/scripts/pull.scm:193 msgid "Guix already up to date\n" msgstr "Guix er allerede opdateret\n" -#: guix/scripts/pull.scm:225 +#: guix/scripts/pull.scm:198 #, scheme-format msgid "updated ~a successfully deployed under `~a'~%" msgstr "opdaterede ~a der med succes blev udrullet undet »~a«~%" -#: guix/scripts/pull.scm:228 +#: guix/scripts/pull.scm:201 #, scheme-format msgid "failed to update Guix, check the build log~%" msgstr "kunne ikke opdatere Guix; kontroller kompileringsloggen~%" -#: guix/scripts/pull.scm:255 -msgid "failed to download up-to-date source, exiting\n" -msgstr "kunne ikke hente opdateret kilde, afslutter\n" +#: guix/scripts/pull.scm:217 +#, scheme-format +msgid "cannot enforce use of the Let's Encrypt certificates~%" +msgstr "kan ikke gennemtvinge brugen af Let's Encrypt-certifikater~%" -#: guix/scripts/substitute.scm:114 +#: guix/scripts/pull.scm:219 +#, scheme-format +msgid "please upgrade Guile-Git~%" +msgstr "opgrader venligst Guile-Git~%" + +#: guix/scripts/pull.scm:227 +#, scheme-format +msgid "Git error ~a~%" +msgstr "Git-fejl: ~a~%" + +#: guix/scripts/pull.scm:229 +#, scheme-format +msgid "Git error: ~a~%" +msgstr "Git-fejl: ~a~%" + +#: guix/scripts/pull.scm:263 +#, scheme-format +msgid "Updating from Git repository at '~a'...~%" +msgstr "Opdaterer fra Git-arkiv på »~a«...~%" + +#: guix/scripts/pull.scm:272 +#, scheme-format +msgid "Building from Git commit ~a...~%" +msgstr "Kompilerer fra Git commit ~a...~%" + +#: guix/scripts/substitute.scm:125 #, scheme-format msgid "authentication and authorization of substitutes disabled!~%" msgstr "godkendelse og autorisation af substitutter er deaktiveret!~%" -#: guix/scripts/substitute.scm:189 +#: guix/scripts/substitute.scm:200 #, scheme-format msgid "download from '~a' failed: ~a, ~s~%" msgstr "hent fra »~a« mislykkedes: ~a, ~s~%" -#: guix/scripts/substitute.scm:202 +#: guix/scripts/substitute.scm:213 #, scheme-format msgid "while fetching ~a: server is somewhat slow~%" msgstr "under overførsel af ~a: server er noget langsom~%" -#: guix/scripts/substitute.scm:204 +#: guix/scripts/substitute.scm:215 #, scheme-format msgid "try `--no-substitutes' if the problem persists~%" msgstr "prøv »--no-substitutes« hvis problemet fortsætter~%" -#: guix/scripts/substitute.scm:222 +#: guix/scripts/substitute.scm:225 #, scheme-format msgid "unsupported substitute URI scheme: ~a~%" msgstr "ikke understøttet substitut-URI-skema: ~a~%" -#: guix/scripts/substitute.scm:257 +#: guix/scripts/substitute.scm:260 #, scheme-format msgid "while fetching '~a': ~a (~s)~%" msgstr "under overførsel af »~a«: ~a (~s)~%" -#: guix/scripts/substitute.scm:262 +#: guix/scripts/substitute.scm:265 #, scheme-format msgid "ignoring substitute server at '~s'~%" msgstr "ignorerer substitutserver »~s«~%" -#: guix/scripts/substitute.scm:312 +#: guix/scripts/substitute.scm:315 #, scheme-format msgid "signature version must be a number: ~s~%" msgstr "signaturversion skal være et nummer: ~s~%" -#: guix/scripts/substitute.scm:316 +#: guix/scripts/substitute.scm:319 #, scheme-format msgid "unsupported signature version: ~a~%" msgstr "signaturversion er ikke understøttet: ~a~%" -#: guix/scripts/substitute.scm:324 +#: guix/scripts/substitute.scm:327 #, scheme-format msgid "signature is not a valid s-expression: ~s~%" msgstr "signatur er ikke et gyldigt s-udtryk: ~s~%" -#: guix/scripts/substitute.scm:328 +#: guix/scripts/substitute.scm:331 #, scheme-format msgid "invalid format of the signature field: ~a~%" msgstr "ugyldigt format for signaturfeltet: ~a~%" -#: guix/scripts/substitute.scm:363 +#: guix/scripts/substitute.scm:366 #, scheme-format msgid "invalid signature for '~a'~%" msgstr "ugyldig signatur for »~a«~%" -#: guix/scripts/substitute.scm:365 +#: guix/scripts/substitute.scm:368 #, scheme-format msgid "hash mismatch for '~a'~%" msgstr "hash mismatch for »~a«~%" -#: guix/scripts/substitute.scm:367 +#: guix/scripts/substitute.scm:370 #, scheme-format msgid "'~a' is signed with an unauthorized key~%" msgstr "»~a« er underskrevet med en uautoriseret nøgle~%" -#: guix/scripts/substitute.scm:369 +#: guix/scripts/substitute.scm:372 #, scheme-format msgid "signature on '~a' is corrupt~%" msgstr "signatur på »~a« er ødelagt~%" -#: guix/scripts/substitute.scm:407 -#, scheme-format -msgid "substitute at '~a' lacks a signature~%" -msgstr "substitut på »~a« mangler en signatur~%" - -#: guix/scripts/substitute.scm:414 -#, scheme-format -msgid "Found valid signature for ~a~%" -msgstr "Fandt gyldig signatur for ~a~%" - -#: guix/scripts/substitute.scm:417 -#, scheme-format -msgid "From ~a~%" -msgstr "Fra ~a~%" - -#: guix/scripts/substitute.scm:451 +#: guix/scripts/substitute.scm:457 #, scheme-format msgid "'~a' does not name a store item~%" msgstr "»~a« nævner ikke et lagerelement~%" -#: guix/scripts/substitute.scm:599 +#: guix/scripts/substitute.scm:619 #, scheme-format msgid "updating list of substitutes from '~a'... ~5,1f%" msgstr "opdaterer liste af substitutter fra »~a«... ~5,1f%" -#: guix/scripts/substitute.scm:654 +#: guix/scripts/substitute.scm:683 #, scheme-format msgid "~s: unsupported server URI scheme~%" msgstr "~s: ikke understøttet server-URI-skema~%" -#: guix/scripts/substitute.scm:664 +#: guix/scripts/substitute.scm:693 #, scheme-format msgid "'~a' uses different store '~a'; ignoring it~%" msgstr "»~a« bruger et andet lager »~a«; ignorerer~%" -#: guix/scripts/substitute.scm:784 +#: guix/scripts/substitute.scm:853 #, scheme-format msgid "host name lookup error: ~a~%" msgstr "opslagsfejl for værtsnavn: ~a~%" -#: guix/scripts/substitute.scm:789 +#: guix/scripts/substitute.scm:858 #, scheme-format msgid "TLS error in procedure '~a': ~a~%" msgstr "TLS-fejl i proceduren »~a«: ~a~%" -#: guix/scripts/substitute.scm:800 +#: guix/scripts/substitute.scm:869 msgid "" "Usage: guix substitute [OPTION]...\n" "Internal tool to substitute a pre-built binary to a local build.\n" @@ -1299,7 +1449,7 @@ msgstr "" "Brug: guix substitute [TILVALG] ...\n" "Internt værktøj til at erstatte en prækompileret binær fil med en lokal kompilering.\n" -#: guix/scripts/substitute.scm:802 +#: guix/scripts/substitute.scm:871 msgid "" "\n" " --query report on the availability of substitutes for the\n" @@ -1309,7 +1459,7 @@ msgstr "" " --query rapport om tilgængeligheden for substitutter for\n" " lagerfilnavnene sendt til standardind" -#: guix/scripts/substitute.scm:805 +#: guix/scripts/substitute.scm:874 msgid "" "\n" " --substitute STORE-FILE DESTINATION\n" @@ -1321,24 +1471,26 @@ msgstr "" " hent LAGER-FIL og lagr den som en Nar i filen\n" " DESTINATION" -#. TRANSLATORS: The second part of this message looks like -#. "(4.1MiB installed)"; it shows the size of the package once -#. installed. -#: guix/scripts/substitute.scm:878 +#: guix/scripts/substitute.scm:939 #, scheme-format -msgid "Downloading ~a~:[~*~; (~a installed)~]...~%" -msgstr "Henter ~a~:[~*~; (~a installeret)~]...~%" +msgid "no valid substitute for '~a'~%" +msgstr "ingen gyldig substitut for »~a«~%" -#: guix/scripts/substitute.scm:935 +#: guix/scripts/substitute.scm:946 +#, scheme-format +msgid "Downloading ~a...~%" +msgstr "Henter ~a...~%" + +#: guix/scripts/substitute.scm:1002 msgid "ACL for archive imports seems to be uninitialized, substitutes may be unavailable\n" msgstr "ACL for arkivimporter ser ikke ud til at være initialiseret, substitutter kan være utilgængelige\n" -#: guix/scripts/substitute.scm:985 +#: guix/scripts/substitute.scm:1056 #, scheme-format msgid "~a: invalid URI~%" msgstr "~a: ugyldig URI~%" -#: guix/scripts/substitute.scm:1043 +#: guix/scripts/substitute.scm:1116 #, scheme-format msgid "~a: unrecognized options~%" msgstr "~a: ikke genkendte tilvalg~%" @@ -1377,141 +1529,172 @@ msgstr "" msgid "wrong arguments" msgstr "forkerte argumenter" -#: guix/scripts/system.scm:133 +#: guix/scripts/system.scm:141 #, scheme-format msgid "failed to register '~a' under '~a'~%" msgstr "kunne ikke registrere »~a« under »~a«~%" -#: guix/scripts/system.scm:166 +#: guix/scripts/system.scm:152 #, scheme-format -msgid "failed to install GRUB on device '~a'~%" -msgstr "kunne ikke installere GRUB på enhed »~a«~%" +msgid "copying to '~a'..." +msgstr "kopierer til »~a«..." -#: guix/scripts/system.scm:184 +#: guix/scripts/system.scm:187 +#, scheme-format +msgid "failed to install bootloader ~a~%" +msgstr "kunne ikke installere opstartsindlæseren ~a~%" + +#: guix/scripts/system.scm:207 #, scheme-format msgid "initializing the current root file system~%" msgstr "initialiserer det nuværende root-filsystem~%" -#: guix/scripts/system.scm:198 +#: guix/scripts/system.scm:221 #, scheme-format msgid "not running as 'root', so the ownership of '~a' may be incorrect!~%" msgstr "kører ikke som »root«, så ejerskabet af »~a« kan være forkert!~%" -#: guix/scripts/system.scm:239 +#: guix/scripts/system.scm:266 #, scheme-format msgid "while talking to shepherd: ~a~%" msgstr "under kommunikation med shepherd: ~a~%" -#: guix/scripts/system.scm:246 +#: guix/scripts/system.scm:273 #, scheme-format msgid "service '~a' could not be found~%" msgstr "tjensten »~a« blev ikke fundet~%" -#: guix/scripts/system.scm:249 +#: guix/scripts/system.scm:276 #, scheme-format msgid "service '~a' does not have an action '~a'~%" msgstr "tjenesten »~a« har ikke en handling »~a«~%" -#: guix/scripts/system.scm:253 +#: guix/scripts/system.scm:280 #, scheme-format msgid "exception caught while executing '~a' on service '~a':~%" msgstr "undtagelse fanget under kørsel af »~a« på tjenesten »~a«:~%" -#: guix/scripts/system.scm:261 +#: guix/scripts/system.scm:288 #, scheme-format msgid "something went wrong: ~s~%" msgstr "noget gik galt: ~s~%" -#: guix/scripts/system.scm:264 +#: guix/scripts/system.scm:291 #, scheme-format msgid "shepherd error~%" msgstr "shepherd-fejl~%" -#: guix/scripts/system.scm:281 +#: guix/scripts/system.scm:308 #, scheme-format msgid "failed to obtain list of shepherd services~%" msgstr "kunne ikke indhente liste over shepherd-tjenester~%" -#: guix/scripts/system.scm:301 +#: guix/scripts/system.scm:328 #, scheme-format msgid "unloading service '~a'...~%" msgstr "afslutter tjeneste »~a« ...~%" -#: guix/scripts/system.scm:309 +#: guix/scripts/system.scm:336 #, scheme-format msgid "loading new services:~{ ~a~}...~%" msgstr "indlæser nye tjenester:~{ ~a~}...~%" -#: guix/scripts/system.scm:333 +#: guix/scripts/system.scm:362 #, scheme-format msgid "activating system...~%" msgstr "aktiverer system ...~%" -#: guix/scripts/system.scm:408 +#: guix/scripts/system.scm:438 #, scheme-format msgid "cannot switch to system generation '~a'~%" msgstr "kan ikke skifte til systemoprettelse »~a«~%" -#: guix/scripts/system.scm:441 -#, scheme-format -msgid "failed to re-install GRUB configuration file: '~a'~%" -msgstr "kunne ikke geninstallere GRUB-konfigurationsfilen: »~a«~%" - -#: guix/scripts/system.scm:471 +#: guix/scripts/system.scm:509 msgid "the DAG of services" msgstr "DAGen for tjenester" -#: guix/scripts/system.scm:484 +#: guix/scripts/system.scm:522 msgid "the dependency graph of shepherd services" msgstr "afhængighedsgrafen for shepherd-tjenester" -#: guix/scripts/system.scm:507 +#: guix/scripts/system.scm:546 #, scheme-format msgid " file name: ~a~%" msgstr " filnavn: ~a~%" -#: guix/scripts/system.scm:508 +#: guix/scripts/system.scm:547 #, scheme-format msgid " canonical file name: ~a~%" msgstr " kanonisk filnavn: ~a~%" #. TRANSLATORS: Please preserve the two-space indentation. -#: guix/scripts/system.scm:510 +#: guix/scripts/system.scm:549 #, scheme-format msgid " label: ~a~%" msgstr " etikelt: ~a~%" -#: guix/scripts/system.scm:511 +#: guix/scripts/system.scm:550 +#, scheme-format +msgid " bootloader: ~a~%" +msgstr " opstartsindlæser: ~a~%" + +#: guix/scripts/system.scm:551 #, scheme-format msgid " root device: ~a~%" msgstr " root-enhed: ~a~%" -#: guix/scripts/system.scm:512 +#: guix/scripts/system.scm:555 #, scheme-format msgid " kernel: ~a~%" msgstr " kerne: ~a~%" -#: guix/scripts/system.scm:569 +#: guix/scripts/system.scm:626 +#, scheme-format +msgid "~a: error: device '~a' not found: ~a~%" +msgstr "~a: fejl: enheden »~a« blev ikke fundet: ~a~%" + +#: guix/scripts/system.scm:630 +#, scheme-format +msgid "" +"If '~a' is a file system\n" +"label, you need to add @code{(title 'label)} to your @code{file-system}\n" +"definition." +msgstr "" +"Hvis »~a« er en filsystemetiket,\n" +"skal du tilføje @code{(title 'label)} til din @code{file-system}-\n" +"definition." + +#: guix/scripts/system.scm:637 +#, scheme-format +msgid "~a: error: file system with label '~a' not found~%" +msgstr "~a: fejl: filsystem med etiketten »~a« blev ikke fundet~%" + +#: guix/scripts/system.scm:643 +#, scheme-format +msgid "~a: error: file system with UUID '~a' not found~%" +msgstr "~a: fejl: filsystem med UUID »~a« blev ikke fundet~%" + +#: guix/scripts/system.scm:741 #, scheme-format msgid "~a not found: 'guix pull' was never run~%" msgstr "~a blev ikke fundet: »guix pull« blev aldrig kørt~%" -#: guix/scripts/system.scm:570 +#: guix/scripts/system.scm:742 #, scheme-format msgid "Consider running 'guix pull' before 'reconfigure'.~%" -msgstr "Overvej at køre »guix pull« før »reconfigure«.~%" +msgstr "Tag i betragtning at køre »guix pull« før »reconfigure«.~%" -#: guix/scripts/system.scm:571 +#: guix/scripts/system.scm:743 #, scheme-format msgid "Failing to do that may downgrade your system!~%" msgstr "Hvis dette ikke gøres, kan dit system blive nedgraderet!~%" -#: guix/scripts/system.scm:646 +#: guix/scripts/system.scm:860 #, scheme-format msgid "initializing operating system under '~a'...~%" msgstr "initialiserer operativsystem under »~a«...~%" -#: guix/scripts/system.scm:690 +#: guix/scripts/system.scm:905 msgid "" "Usage: guix system [OPTION ...] ACTION [ARG ...] [FILE]\n" "Build the operating system declared in FILE according to ACTION.\n" @@ -1521,59 +1704,67 @@ msgstr "" "Kompiler operativsystemet erklæret i FIL jævnfør HANDLING.\n" "Nogle HANDLINGER understøtter yderligere ARGUMENTER.\n" -#: guix/scripts/system.scm:694 guix/scripts/container.scm:28 +#: guix/scripts/system.scm:909 guix/scripts/container.scm:28 msgid "The valid values for ACTION are:\n" msgstr "De gyldige værdier for HANDLING er:\n" -#: guix/scripts/system.scm:696 +#: guix/scripts/system.scm:911 +msgid " search search for existing service types\n" +msgstr " search søg efter eksisterende tjenestetyper\n" + +#: guix/scripts/system.scm:913 msgid " reconfigure switch to a new operating system configuration\n" msgstr " reconfigure skift til en ny operativsystemkonfiguration\n" -#: guix/scripts/system.scm:698 +#: guix/scripts/system.scm:915 msgid " roll-back switch to the previous operating system configuration\n" msgstr " roll-back skift til den forrige operativsystemkonfiguration\n" -#: guix/scripts/system.scm:700 +#: guix/scripts/system.scm:917 msgid " switch-generation switch to an existing operating system configuration\n" msgstr " switch-generation skift til en eksisterende operativsystemkonfiguration\n" -#: guix/scripts/system.scm:702 +#: guix/scripts/system.scm:919 msgid " list-generations list the system generations\n" msgstr " list-generations viser systemoprettelserne\n" -#: guix/scripts/system.scm:704 +#: guix/scripts/system.scm:921 msgid " build build the operating system without installing anything\n" msgstr " build kompiler operativsystemet uden at installere noget\n" -#: guix/scripts/system.scm:706 +#: guix/scripts/system.scm:923 msgid " container build a container that shares the host's store\n" msgstr " container kompiler en container som deler værtens lager\n" -#: guix/scripts/system.scm:708 +#: guix/scripts/system.scm:925 msgid " vm build a virtual machine image that shares the host's store\n" msgstr " vm kompiler et virtuelt maskinaftryk som deler værtens lager\n" -#: guix/scripts/system.scm:710 +#: guix/scripts/system.scm:927 msgid " vm-image build a freestanding virtual machine image\n" msgstr " vm-image kompiler et fritstående virtuelt maskinaftryk\n" -#: guix/scripts/system.scm:712 +#: guix/scripts/system.scm:929 msgid " disk-image build a disk image, suitable for a USB stick\n" msgstr " disk-image kompiler et diskaftryk, som egner sig til et USB-drev\n" -#: guix/scripts/system.scm:714 +#: guix/scripts/system.scm:931 +msgid " docker-image build a Docker image\n" +msgstr " docker-image kompiler et Dockeraftryk\n" + +#: guix/scripts/system.scm:933 msgid " init initialize a root file system to run GNU\n" msgstr " init initialiser et rootfilsystem til at køre GNU.\n" -#: guix/scripts/system.scm:716 +#: guix/scripts/system.scm:935 msgid " extension-graph emit the service extension graph in Dot format\n" msgstr " extension-graph opret tjenesteudvidelsesgrafen i Dot-format\n" -#: guix/scripts/system.scm:718 +#: guix/scripts/system.scm:937 msgid " shepherd-graph emit the graph of shepherd services in Dot format\n" msgstr " shepherd-graph opret grafen for shepherd-tjenester i Dot-format\n" -#: guix/scripts/system.scm:722 +#: guix/scripts/system.scm:941 msgid "" "\n" " -d, --derivation return the derivation of the given system" @@ -1581,7 +1772,18 @@ msgstr "" "\n" " -d, --derivation returner de derivate stier for det givne system" -#: guix/scripts/system.scm:724 +#: guix/scripts/system.scm:943 +msgid "" +"\n" +" -e, --expression=EXPR consider the operating-system EXPR evaluates to\n" +" instead of reading FILE, when applicable" +msgstr "" +"\n" +" -e, --expression=UDTRYK tag i betragtning hvad operativsystemets UDTRYK\n" +" evaluerer til i stedet for at læse FIL, når\n" +" anvendelig" + +#: guix/scripts/system.scm:946 msgid "" "\n" " --on-error=STRATEGY\n" @@ -1592,7 +1794,19 @@ msgstr "" " brug STRATEGI når den opstår en fejl under læsning\n" " af FIL" -#: guix/scripts/system.scm:727 +#: guix/scripts/system.scm:949 +msgid "" +"\n" +" --file-system-type=TYPE\n" +" for 'disk-image', produce a root file system of TYPE\n" +" (one of 'ext4', 'iso9660')" +msgstr "" +"\n" +" --file-system-type=TYPE\n" +" for »disk-image«, lav et rodfilsystem med TYPE (typen)\n" +" (enten »ext4« eller »iso9660«)" + +#: guix/scripts/system.scm:953 msgid "" "\n" " --image-size=SIZE for 'vm-image', produce an image of SIZE" @@ -1600,7 +1814,7 @@ msgstr "" "\n" " --image-size=STR for »vm-image«, lav et aftryk af STR" -#: guix/scripts/system.scm:729 +#: guix/scripts/system.scm:955 msgid "" "\n" " --no-bootloader for 'init', do not install a bootloader" @@ -1608,7 +1822,7 @@ msgstr "" "\n" " --no-bootloader for »init«, installer ikke en opstartsindlæser" -#: guix/scripts/system.scm:731 +#: guix/scripts/system.scm:957 msgid "" "\n" " --share=SPEC for 'vm', share host file system according to SPEC" @@ -1616,7 +1830,7 @@ msgstr "" "\n" " --share=SPEC for »vm«, del værtsfilsystem jævnfør SPEC" -#: guix/scripts/system.scm:733 +#: guix/scripts/system.scm:959 msgid "" "\n" " -r, --root=FILE for 'vm', 'vm-image', 'disk-image', 'container',\n" @@ -1629,7 +1843,7 @@ msgstr "" " resultatet, og registrer den som en\n" " affaldsindsamlerrod" -#: guix/scripts/system.scm:737 +#: guix/scripts/system.scm:963 msgid "" "\n" " --expose=SPEC for 'vm', expose host file system according to SPEC" @@ -1637,7 +1851,7 @@ msgstr "" "\n" " --expose=SPEC for »vm«, fremvis værtsfilsystem jævnfør SPEC" -#: guix/scripts/system.scm:739 +#: guix/scripts/system.scm:965 msgid "" "\n" " --full-boot for 'vm', make a full boot sequence" @@ -1645,45 +1859,62 @@ msgstr "" "\n" " --full-boot for »vm«, lav en fuld opstartssekvens" -#: guix/scripts/system.scm:827 -#, scheme-format -msgid "no configuration file specified~%" -msgstr "ingen konfigurationsfil angivet~%" +#: guix/scripts/system.scm:967 +msgid "" +"\n" +" --skip-checks skip file system and initrd module safety checks" +msgstr "" +"\n" +" --skip-checks udelad sikkerhedskontrol af filsystem og initrd-modul" -#: guix/scripts/system.scm:912 +#: guix/scripts/system.scm:1066 +#, scheme-format +msgid "both file and expression cannot be specified~%" +msgstr "fil og udtryk kan ikke angives samtidigt~%" + +#: guix/scripts/system.scm:1073 +#, scheme-format +msgid "no configuration specified~%" +msgstr "ingen konfiguration angivet~%" + +#: guix/scripts/system.scm:1173 #, scheme-format msgid "~a: unknown action~%" msgstr "~a: ukendt handling~%" -#: guix/scripts/system.scm:927 +#: guix/scripts/system.scm:1189 #, scheme-format msgid "wrong number of arguments for action '~a'~%" msgstr "forkert antal argumenter for handling »~a«~%" -#: guix/scripts/system.scm:932 +#: guix/scripts/system.scm:1194 #, scheme-format msgid "guix system: missing command name~%" msgstr "guix system: mangler kommandonavn~%" -#: guix/scripts/system.scm:934 +#: guix/scripts/system.scm:1196 #, scheme-format msgid "Try 'guix system --help' for more information.~%" msgstr "Prøv »guix system --help« for yderligere information.~%" -#: guix/scripts/lint.scm:135 +#: guix/scripts/system/search.scm:64 guix/ui.scm:1112 guix/ui.scm:1126 +msgid "unknown" +msgstr "ukendt" + +#: guix/scripts/lint.scm:139 #, scheme-format msgid "Available checkers:~%" msgstr "Tilgængelige kontrolprogrammer:~%" -#: guix/scripts/lint.scm:159 +#: guix/scripts/lint.scm:163 msgid "description should not be empty" msgstr "beskrivelse skal være udfyldt" -#: guix/scripts/lint.scm:169 +#: guix/scripts/lint.scm:173 msgid "Texinfo markup in description is invalid" msgstr "Texinfo-opmærkning i beskrivelse er ugyldig" -#: guix/scripts/lint.scm:179 +#: guix/scripts/lint.scm:183 #, scheme-format msgid "" "description should not contain ~\n" @@ -1694,16 +1925,16 @@ msgstr "" #. TRANSLATORS: '@code' is Texinfo markup and must be kept #. as is. -#: guix/scripts/lint.scm:192 +#: guix/scripts/lint.scm:196 msgid "use @code or similar ornament instead of quotes" msgstr "brug @code eller lignende ornament i stedet for citationstegn" -#: guix/scripts/lint.scm:199 +#: guix/scripts/lint.scm:203 msgid "description should start with an upper-case letter or digit" msgstr "beskrivelse skal starte med et stort bogstav eller et tal" # arg, hvad foregår der her -#: guix/scripts/lint.scm:215 +#: guix/scripts/lint.scm:219 #, scheme-format msgid "" "sentences in description should be followed ~\n" @@ -1712,231 +1943,263 @@ msgstr "" "sætninger i beskrivelsen skal efterfølges ~\n" "af to mellemrum; mulig infraction~p ved ~{~a~^, ~}" -#: guix/scripts/lint.scm:233 +#: guix/scripts/lint.scm:237 #, scheme-format msgid "invalid description: ~s" msgstr "ugyldig beskrivelse: ~s" # native kan evt. være platformsspecifik # Det er dog svært at gætte med sikkerhed hvad det betyder her -#: guix/scripts/lint.scm:277 +#: guix/scripts/lint.scm:282 #, scheme-format msgid "'~a' should probably be a native input" msgstr "»~a« skal sandsynligvis være standarddata" -#: guix/scripts/lint.scm:293 +#: guix/scripts/lint.scm:298 #, scheme-format msgid "'~a' should probably not be an input at all" msgstr "»~a« skal sandsynligvis ikke være inddata" -#: guix/scripts/lint.scm:310 +#: guix/scripts/lint.scm:315 msgid "synopsis should not be empty" msgstr "synopsis skal være udfyldt" -#: guix/scripts/lint.scm:318 +#: guix/scripts/lint.scm:323 msgid "no period allowed at the end of the synopsis" msgstr "ingen periode er tilladt i slutningen af synopsen" -#: guix/scripts/lint.scm:330 +#: guix/scripts/lint.scm:335 msgid "no article allowed at the beginning of the synopsis" msgstr "ingen artikel er tilladt i begyndelsen af synopsen" -#: guix/scripts/lint.scm:337 +#: guix/scripts/lint.scm:342 msgid "synopsis should be less than 80 characters long" msgstr "synopsis skal være mindre end 80 tegn lang" -#: guix/scripts/lint.scm:343 +#: guix/scripts/lint.scm:348 msgid "synopsis should start with an upper-case letter or digit" msgstr "synopsis skal starte med et stort bogstav eller et tal" -#: guix/scripts/lint.scm:350 +#: guix/scripts/lint.scm:355 msgid "synopsis should not start with the package name" msgstr "synopsis skal ikke starte med pakkenavnet" -#: guix/scripts/lint.scm:360 +#: guix/scripts/lint.scm:365 msgid "Texinfo markup in synopsis is invalid" msgstr "Texinfo-opmærkning i synopsis er ugyldig" -#: guix/scripts/lint.scm:379 +#: guix/scripts/lint.scm:384 #, scheme-format msgid "invalid synopsis: ~s" msgstr "ugyldig synopsis: ~s" -#: guix/scripts/lint.scm:479 +#: guix/scripts/lint.scm:503 #, scheme-format msgid "URI ~a returned suspiciously small file (~a bytes)" msgstr "URI'en ~a returnerede mistænkelig lille fil (~a byte)" -#: guix/scripts/lint.scm:488 guix/scripts/lint.scm:500 +#: guix/scripts/lint.scm:513 +#, scheme-format +msgid "permanent redirect from ~a to ~a" +msgstr "permanent omdirigering fra ~a til ~a" + +#: guix/scripts/lint.scm:520 +#, scheme-format +msgid "invalid permanent redirect from ~a" +msgstr "ugyldig permanent omdirigering fra ~a" + +#: guix/scripts/lint.scm:527 guix/scripts/lint.scm:539 #, scheme-format msgid "URI ~a not reachable: ~a (~s)" msgstr "URI ~a kan ikke nås: ~a (~s)" -#: guix/scripts/lint.scm:507 +#: guix/scripts/lint.scm:546 #, scheme-format msgid "URI ~a domain not found: ~a" msgstr "URI ~a domæne blev ikke fundet: ~a" -#: guix/scripts/lint.scm:515 +#: guix/scripts/lint.scm:554 #, scheme-format msgid "URI ~a unreachable: ~a" msgstr "URI ~a kan ikke nås: ~a" -#: guix/scripts/lint.scm:524 guix/scripts/lint.scm:780 +#: guix/scripts/lint.scm:563 #, scheme-format msgid "TLS certificate error: ~a" msgstr "TLS-certifikatfejl: ~a" -#: guix/scripts/lint.scm:545 +#: guix/scripts/lint.scm:584 msgid "invalid value for home page" msgstr "ugyldig værdi for hjemmeside" -#: guix/scripts/lint.scm:548 +#: guix/scripts/lint.scm:587 #, scheme-format msgid "invalid home page URL: ~s" msgstr "ugyldig hjemmesideadresse: ~s" -#: guix/scripts/lint.scm:568 +#: guix/scripts/lint.scm:613 msgid "file names of patches should start with the package name" msgstr "filnavn for rettelser skal starte med pakkenavnet" -#: guix/scripts/lint.scm:606 +#: guix/scripts/lint.scm:629 +#, scheme-format +msgid "~a: file name is too long" +msgstr "~a: filnavnet er for langt" + +#: guix/scripts/lint.scm:670 #, scheme-format msgid "~a: ~a: proposed synopsis: ~s~%" msgstr "~a: ~a: foreslået synopsis: ~s~%" -#: guix/scripts/lint.scm:619 +#: guix/scripts/lint.scm:683 #, scheme-format msgid "~a: ~a: proposed description:~% \"~a\"~%" msgstr "~a: ~a: foreslået beskrivelse:~% »~a«~%" -#: guix/scripts/lint.scm:661 +#: guix/scripts/lint.scm:725 msgid "all the source URIs are unreachable:" msgstr "alle kilde-URI'erne kan ikke nås:" -#: guix/scripts/lint.scm:684 +#: guix/scripts/lint.scm:747 msgid "the source file name should contain the package name" msgstr "kildefilnavnet skal indeholde pakkenavnet" -#: guix/scripts/lint.scm:700 +#: guix/scripts/lint.scm:763 #, scheme-format msgid "URL should be 'mirror://~a/~a'" msgstr "Adresse skal være »mirror://~a/~a«" -#: guix/scripts/lint.scm:718 guix/scripts/lint.scm:722 +#: guix/scripts/lint.scm:781 guix/scripts/lint.scm:785 #, scheme-format msgid "failed to create derivation: ~a" msgstr "kunne ikke oprette derivat: ~a" -#: guix/scripts/lint.scm:736 +#: guix/scripts/lint.scm:799 #, scheme-format msgid "failed to create derivation: ~s~%" msgstr "kunne ikke oprette derivat: ~s~%" -#: guix/scripts/lint.scm:746 +#: guix/scripts/lint.scm:809 msgid "invalid license field" msgstr "ugyldigt licensfelt" -#: guix/scripts/lint.scm:763 +#: guix/scripts/lint.scm:825 #, scheme-format -msgid "failed to retrieve CVE vulnerabilities from ~s: ~a (~s)~%" -msgstr "kunne ikke indhente CVE-sårbarheder fra ~s: ~a (~s)~%" +msgid "~a: HTTP GET error for ~a: ~a (~s)~%" +msgstr "~a: HTTP GET-fejl for ~a: ~a (~s)~%" -#: guix/scripts/lint.scm:768 guix/scripts/lint.scm:777 -#: guix/scripts/lint.scm:782 +#: guix/scripts/lint.scm:835 #, scheme-format -msgid "assuming no CVE vulnerabilities~%" -msgstr "antager ingen CVE-sårbarheder~%" +msgid "~a: host lookup failure: ~a~%" +msgstr "~a: værtsnavnet kunne ikke slås op: ~a~%" -#: guix/scripts/lint.scm:775 +#: guix/scripts/lint.scm:840 #, scheme-format -msgid "failed to lookup NIST host: ~a~%" -msgstr "kunne ikke slå NIST-vært op: ~a~%" +msgid "~a: TLS certificate error: ~a" +msgstr "~a: TLS-certifikatfejl: ~a" -#: guix/scripts/lint.scm:820 +#: guix/scripts/lint.scm:855 +msgid "while retrieving CVE vulnerabilities" +msgstr "under indhentelse af CVE-sårbarheder" + +#: guix/scripts/lint.scm:898 #, scheme-format msgid "probably vulnerable to ~a" msgstr "sandsynligvis sårbar for ~a" -#: guix/scripts/lint.scm:835 +#: guix/scripts/lint.scm:905 +#, scheme-format +msgid "while retrieving upstream info for '~a'" +msgstr "under indhentelse af opstrømsinformation for »~a«" + +#: guix/scripts/lint.scm:913 +#, scheme-format +msgid "can be upgraded to ~a" +msgstr "kan opgraderes til ~a" + +#: guix/scripts/lint.scm:928 #, scheme-format msgid "tabulation on line ~a, column ~a" msgstr "tabulering på linje ~a, kolonne ~a" -#: guix/scripts/lint.scm:844 +#: guix/scripts/lint.scm:937 #, scheme-format msgid "trailing white space on line ~a" msgstr "efterstillet mellemrum på linje ~a" -#: guix/scripts/lint.scm:854 +#: guix/scripts/lint.scm:947 #, scheme-format msgid "line ~a is way too long (~a characters)" msgstr "linjen ~a er alt for lang (~a tegn)" -#: guix/scripts/lint.scm:865 +#: guix/scripts/lint.scm:958 #, scheme-format msgid "line ~a: parentheses feel lonely, move to the previous or next line" msgstr "linjen ~a: parenteser er ensomme, flyt til den forrige eller næste linje" -#: guix/scripts/lint.scm:920 +#: guix/scripts/lint.scm:1028 msgid "Validate package descriptions" msgstr "Valider pakkebeskrivelser" -#: guix/scripts/lint.scm:924 +#: guix/scripts/lint.scm:1032 msgid "Validate synopsis & description of GNU packages" msgstr "Valider synopsis og beskrivelse for GNU-pakker" -#: guix/scripts/lint.scm:928 +#: guix/scripts/lint.scm:1036 msgid "Identify inputs that should be native inputs" msgstr "Identificer inddata som skal være standarddata" -#: guix/scripts/lint.scm:932 +#: guix/scripts/lint.scm:1040 msgid "Identify inputs that should be inputs at all" msgstr "Identificer inddata som skal være inddata" -#: guix/scripts/lint.scm:936 +#: guix/scripts/lint.scm:1044 msgid "Validate file names and availability of patches" msgstr "Valider filnavne og tilgængelighed for rettelser" -#: guix/scripts/lint.scm:940 +#: guix/scripts/lint.scm:1048 msgid "Validate home-page URLs" msgstr "Valider hjemmesiders adresser" #. TRANSLATORS: is the name of a data type and must not be #. translated. -#: guix/scripts/lint.scm:946 +#: guix/scripts/lint.scm:1054 msgid "Make sure the 'license' field is a or a list thereof" msgstr "Sikr at feltet »license« er en eller en liste deraf" -#: guix/scripts/lint.scm:951 +#: guix/scripts/lint.scm:1059 msgid "Validate source URLs" msgstr "Valider kildeadresser" -#: guix/scripts/lint.scm:955 +#: guix/scripts/lint.scm:1063 msgid "Suggest 'mirror://' URLs" msgstr "Foreslå »mirror://«-adresser" -#: guix/scripts/lint.scm:959 +#: guix/scripts/lint.scm:1067 msgid "Validate file names of sources" msgstr "Valider filnavne for kilder" -#: guix/scripts/lint.scm:963 +#: guix/scripts/lint.scm:1071 msgid "Report failure to compile a package to a derivation" msgstr "Rapporter mislykket kompilering af en pakke til et derivat" -#: guix/scripts/lint.scm:967 +#: guix/scripts/lint.scm:1075 msgid "Validate package synopses" msgstr "Valider pakkesynopser" -#: guix/scripts/lint.scm:971 +#: guix/scripts/lint.scm:1079 msgid "Check the Common Vulnerabilities and Exposures (CVE) database" msgstr "Kontroller databasen Common Vulnerabilities and Exposures (CVE)" -#: guix/scripts/lint.scm:976 +#: guix/scripts/lint.scm:1084 +msgid "Check the package for new upstream releases" +msgstr "Kontroller pakken for nye opstrømsudgivelser" + +#: guix/scripts/lint.scm:1088 msgid "Look for formatting issues in the source" msgstr "Kig efter formateringsproblemstillinger i kilden" -#: guix/scripts/lint.scm:1004 +#: guix/scripts/lint.scm:1116 msgid "" "Usage: guix lint [OPTION]... [PACKAGE]...\n" "Run a set of checkers on the specified package; if none is specified,\n" @@ -1946,7 +2209,7 @@ msgstr "" "Kør et sæt af kontroller på den specificerede pakke; hvis ingen er specificeret,\n" "så kør kontrollerne på alle pakker.\n" -#: guix/scripts/lint.scm:1007 +#: guix/scripts/lint.scm:1119 msgid "" "\n" " -c, --checkers=CHECKER1,CHECKER2...\n" @@ -1956,7 +2219,7 @@ msgstr "" " -c, --checkers=KONTROL1,KONTROL2...\n" " kør kun de specificerede kontroller" -#: guix/scripts/lint.scm:1012 +#: guix/scripts/lint.scm:1124 msgid "" "\n" " -l, --list-checkers display the list of available lint checkers" @@ -1964,12 +2227,12 @@ msgstr "" "\n" " -l, --list-checkers vis listen med tilgængelige lint-kontroller" -#: guix/scripts/lint.scm:1032 +#: guix/scripts/lint.scm:1144 #, scheme-format msgid "~a: invalid checker~%" msgstr "~a: ugyldig kontrol~%" -#: guix/scripts/publish.scm:67 +#: guix/scripts/publish.scm:68 #, scheme-format msgid "" "Usage: guix publish [OPTION]...\n" @@ -1978,7 +2241,7 @@ msgstr "" "Brug: guix publish [TILVALG] ...\n" "Udgiv ~a over HTTP.\n" -#: guix/scripts/publish.scm:69 +#: guix/scripts/publish.scm:70 msgid "" "\n" " -p, --port=PORT listen on PORT" @@ -1986,7 +2249,7 @@ msgstr "" "\n" " -p, --port=PORT lyt på PORT" -#: guix/scripts/publish.scm:71 +#: guix/scripts/publish.scm:72 msgid "" "\n" " --listen=HOST listen on the network interface for HOST" @@ -1994,7 +2257,7 @@ msgstr "" "\n" " --listen=VÆRT lyt på netværksgrænsefladen efter VÆRT" -#: guix/scripts/publish.scm:73 +#: guix/scripts/publish.scm:74 msgid "" "\n" " -u, --user=USER change privileges to USER as soon as possible" @@ -2002,7 +2265,7 @@ msgstr "" "\n" " -u, --user=BRUGER ændr privilegier for BRUGER så snart som muligt" -#: guix/scripts/publish.scm:75 +#: guix/scripts/publish.scm:76 msgid "" "\n" " -C, --compression[=LEVEL]\n" @@ -2012,7 +2275,7 @@ msgstr "" " -C, --compression[=NIVEAU]\n" " komprimer arkiver med NIVEAU" -#: guix/scripts/publish.scm:78 +#: guix/scripts/publish.scm:79 msgid "" "\n" " -c, --cache=DIRECTORY cache published items to DIRECTORY" @@ -2020,7 +2283,7 @@ msgstr "" "\n" " -c, --cache=MAPPE mellemlagr udgivne elementer til MAPPE" -#: guix/scripts/publish.scm:80 +#: guix/scripts/publish.scm:81 msgid "" "\n" " --workers=N use N workers to bake items" @@ -2028,7 +2291,7 @@ msgstr "" "\n" " --workers=N brug N arbejdere til at bage elementer" -#: guix/scripts/publish.scm:82 +#: guix/scripts/publish.scm:83 msgid "" "\n" " --ttl=TTL announce narinfos can be cached for TTL seconds" @@ -2036,7 +2299,7 @@ msgstr "" "\n" " --ttl=TTL announce narinfos kan mellemlagres i TTL sekunder" -#: guix/scripts/publish.scm:84 +#: guix/scripts/publish.scm:85 msgid "" "\n" " --nar-path=PATH use PATH as the prefix for nar URLs" @@ -2044,7 +2307,7 @@ msgstr "" "\n" " --nar-path=STI brug STI som præfiks for nar-adresser" -#: guix/scripts/publish.scm:86 +#: guix/scripts/publish.scm:87 msgid "" "\n" " --public-key=FILE use FILE as the public key for signatures" @@ -2052,7 +2315,7 @@ msgstr "" "\n" " --public-key=FIL brug FIL som offentlig nøgle for signaturer" -#: guix/scripts/publish.scm:88 +#: guix/scripts/publish.scm:89 msgid "" "\n" " --private-key=FILE use FILE as the private key for signatures" @@ -2060,7 +2323,7 @@ msgstr "" "\n" " --private-key=FIL brug FIL som privat nøgle for signaturer" -#: guix/scripts/publish.scm:90 +#: guix/scripts/publish.scm:91 msgid "" "\n" " -r, --repl[=PORT] spawn REPL server on PORT" @@ -2068,37 +2331,37 @@ msgstr "" "\n" " -r, --repl[=PORT] udsend REPL-server on PORT" -#: guix/scripts/publish.scm:106 +#: guix/scripts/publish.scm:107 #, scheme-format msgid "lookup of host '~a' failed: ~a~%" msgstr "opslag efter værten »~a« mislykkedes: ~a~%" -#: guix/scripts/publish.scm:151 +#: guix/scripts/publish.scm:152 #, scheme-format msgid "lookup of host '~a' returned nothing" msgstr "opslag efter værten »~a« returnerede intet" -#: guix/scripts/publish.scm:164 +#: guix/scripts/publish.scm:165 #, scheme-format msgid "zlib support is missing; compression disabled~%" msgstr "zlib-understøttelse mangler; komprimering deaktiveret~%" -#: guix/scripts/publish.scm:178 +#: guix/scripts/publish.scm:179 #, scheme-format msgid "~a: invalid duration~%" msgstr "~a: ugyldig varighed~%" -#: guix/scripts/publish.scm:799 +#: guix/scripts/publish.scm:869 #, scheme-format msgid "user '~a' not found: ~a~%" msgstr "brugeren »~a« blev ikke fundet: ~a~%" -#: guix/scripts/publish.scm:840 +#: guix/scripts/publish.scm:910 #, scheme-format msgid "server running as root; consider using the '--user' option!~%" -msgstr "server kører som root; overvej at bruge tilvalget »--user«!~%" +msgstr "server kører som root; tag i betragtning at bruge tilvalget »--user«!~%" -#: guix/scripts/publish.scm:845 +#: guix/scripts/publish.scm:915 #, scheme-format msgid "publishing ~a on ~a, port ~d~%" msgstr "udgiver ~a på ~a, port ~d~%" @@ -2131,19 +2394,19 @@ msgstr "kunne ikke starte »~a«: ~a~%" msgid "no available substitute information for '~a'~%" msgstr "ingen tilgængelig substitutinformation for »~a«~%" -#: guix/scripts/size.scm:85 +#: guix/scripts/size.scm:99 msgid "store item" msgstr "lagerpost" -#: guix/scripts/size.scm:85 +#: guix/scripts/size.scm:99 msgid "total" msgstr "i alt" -#: guix/scripts/size.scm:85 +#: guix/scripts/size.scm:99 msgid "self" msgstr "selv" -#: guix/scripts/size.scm:97 +#: guix/scripts/size.scm:107 #, scheme-format msgid "total: ~,1f MiB~%" msgstr "i alt: ~,1f MiB~%" @@ -2151,11 +2414,11 @@ msgstr "i alt: ~,1f MiB~%" #. TRANSLATORS: This is the title of a graph, meaning that the graph #. represents a profile of the store (the "store" being the place where #. packages are stored.) -#: guix/scripts/size.scm:211 +#: guix/scripts/size.scm:221 msgid "store profile" msgstr "lagerprofil" -#: guix/scripts/size.scm:220 +#: guix/scripts/size.scm:230 msgid "" "Usage: guix size [OPTION]... PACKAGE\n" "Report the size of PACKAGE and its dependencies.\n" @@ -2163,15 +2426,24 @@ msgstr "" "Brug: guix size [TILVALG]... PAKKE\n" "Rapporter størrelsen for PAKKE og dens afhængigheder.\n" -#: guix/scripts/size.scm:225 +#: guix/scripts/size.scm:235 msgid "" "\n" " -s, --system=SYSTEM consider packages for SYSTEM--e.g., \"i686-linux\"" msgstr "" "\n" -" -s, --system=SYSTEM overvej pakker for SYSTEM--f.eks., »i686-linux«" +" -s, --system=SYSTEM tag i betragtning pakker for SYSTEM--f.eks., »i686-linux«" -#: guix/scripts/size.scm:227 +#. TRANSLATORS: "closure" and "self" must not be translated. +#: guix/scripts/size.scm:238 +msgid "" +"\n" +" --sort=KEY sort according to KEY--\"closure\" or \"self\"" +msgstr "" +"\n" +" --sort=KEY sorter jævnfør KEY--\"closure\" eller \"self\"" + +#: guix/scripts/size.scm:240 msgid "" "\n" " -m, --map-file=FILE write to FILE a graphical map of disk usage" @@ -2179,89 +2451,98 @@ msgstr "" "\n" " -m, --map-file=FIL skriv til FIL et grafisk kort over diskforbrug" -#: guix/scripts/size.scm:281 +#: guix/scripts/size.scm:271 +#, scheme-format +msgid "~a: invalid sorting key~%" +msgstr "~a: ugyldig sorteringsnøgle~%" + +#: guix/scripts/size.scm:306 msgid "missing store item argument\n" msgstr "manglende lagerpostargument\n" -#: guix/scripts/graph.scm:84 +#: guix/scripts/graph.scm:87 #, scheme-format msgid "~a: invalid argument (package name expected)" msgstr "~a: ugyldigt argument (forventede et pakkenavn)" -#: guix/scripts/graph.scm:95 +#: guix/scripts/graph.scm:98 msgid "the DAG of packages, excluding implicit inputs" msgstr "DAGen for pakker, eksklusive implicitte inddata" -#: guix/scripts/graph.scm:121 +#: guix/scripts/graph.scm:124 msgid "the reverse DAG of packages" msgstr "den omvendte DAG for pakker" -#: guix/scripts/graph.scm:171 +#: guix/scripts/graph.scm:174 msgid "the DAG of packages, including implicit inputs" msgstr "DAGen for pakker, inklusive implicitte inddata" -#: guix/scripts/graph.scm:181 +#: guix/scripts/graph.scm:184 msgid "the DAG of packages and origins, including implicit inputs" msgstr "DAGen for pakker og oprindelser, inklusive implicitte inddata" -#: guix/scripts/graph.scm:211 +#: guix/scripts/graph.scm:214 msgid "same as 'bag', but without the bootstrap nodes" msgstr "samme som »bag«m uden bootstrap-knuder" -#: guix/scripts/graph.scm:257 +#: guix/scripts/graph.scm:256 msgid "the DAG of derivations" msgstr "DAGen for derivater" -#: guix/scripts/graph.scm:269 +#: guix/scripts/graph.scm:268 msgid "unsupported argument for derivation graph" msgstr "argument for derivatgraf er ikke understøttet" -#: guix/scripts/graph.scm:295 +#: guix/scripts/graph.scm:294 msgid "unsupported argument for this type of graph" msgstr "ikke understøttet argument for denne graftype" -#: guix/scripts/graph.scm:308 +#: guix/scripts/graph.scm:307 #, scheme-format msgid "references for '~a' are not known~%" msgstr "referencer for »~a« er ikke kendt~%" -#: guix/scripts/graph.scm:315 +#: guix/scripts/graph.scm:314 msgid "the DAG of run-time dependencies (store references)" msgstr "DAGen for kørselstidsafhængigheder (lagerreferencer)" -#: guix/scripts/graph.scm:331 +#: guix/scripts/graph.scm:330 msgid "the DAG of referrers in the store" msgstr "DAGen for referencer i lageret" -#: guix/scripts/graph.scm:358 +#: guix/scripts/graph.scm:360 +msgid "the graph of package modules" +msgstr "pakkemodulernes graf" + +#: guix/scripts/graph.scm:388 #, scheme-format msgid "~a: unknown node type~%" msgstr "~a: ukendt knudetype~%" -#: guix/scripts/graph.scm:365 +#: guix/scripts/graph.scm:395 #, scheme-format msgid "~a: unknown backend~%" msgstr "~a: ukendt motor~%" -#: guix/scripts/graph.scm:369 +#: guix/scripts/graph.scm:399 msgid "The available node types are:\n" msgstr "De gyldige knudetyper er:\n" -#: guix/scripts/graph.scm:379 +#: guix/scripts/graph.scm:409 msgid "The available backend types are:\n" msgstr "De gyldige motortyper er:\n" #. TRANSLATORS: Here 'dot' is the name of a program; it must not be #. translated. -#: guix/scripts/graph.scm:423 +#: guix/scripts/graph.scm:453 msgid "" "Usage: guix graph PACKAGE...\n" -"Emit a Graphviz (dot) representation of the dependencies of PACKAGE...\n" +"Emit a representation of the dependency graph of PACKAGE...\n" msgstr "" "Brug: guix graph PAKKE...\n" -"Opret en Graphviz-repræsentation (dot) af afhængighederne for PAKKE...\n" +"Opret en repræsentation af afhængighedsgrafen for PAKKE...\n" -#: guix/scripts/graph.scm:425 +#: guix/scripts/graph.scm:455 msgid "" "\n" " -b, --backend=TYPE produce a graph with the given backend TYPE" @@ -2269,7 +2550,7 @@ msgstr "" "\n" " -b, --backend=TYPE fremstil en graf med den angivne motor-TYPE" -#: guix/scripts/graph.scm:427 +#: guix/scripts/graph.scm:457 msgid "" "\n" " --list-backends list the available graph backends" @@ -2277,7 +2558,7 @@ msgstr "" "\n" " --list-backends vis de tilgængelige grafmotorer" -#: guix/scripts/graph.scm:429 +#: guix/scripts/graph.scm:459 msgid "" "\n" " -t, --type=TYPE represent nodes of the given TYPE" @@ -2285,7 +2566,7 @@ msgstr "" "\n" " -t, --type=TYPE repræsenter knuder for den givne TYPE" -#: guix/scripts/graph.scm:431 +#: guix/scripts/graph.scm:461 msgid "" "\n" " --list-types list the available graph types" @@ -2293,13 +2574,13 @@ msgstr "" "\n" " --list-types vis de tilgængelige graftyper" -#: guix/scripts/graph.scm:433 guix/scripts/pack.scm:328 +#: guix/scripts/graph.scm:463 guix/scripts/pack.scm:355 msgid "" "\n" " -e, --expression=EXPR consider the package EXPR evaluates to" msgstr "" "\n" -" -e, --expression=UDTRYK overvej pakken UDTRYK evaluerer til" +" -e, --expression=UDTRYK tag i betragtning pakken UDTRYK evaluerer til" #: guix/scripts/challenge.scm:191 #, scheme-format @@ -2337,6 +2618,22 @@ msgid "~a contents match:~%" msgstr "~a indhold mathcer:~%" #: guix/scripts/challenge.scm:219 +msgid "~h store items were analyzed:~%" +msgstr "~h lagerelementer blev analyseret:~%" + +#: guix/scripts/challenge.scm:220 +msgid " - ~h (~,1f%) were identical~%" +msgstr " - ~h (~,1f%) var identiske~%" + +#: guix/scripts/challenge.scm:222 +msgid " - ~h (~,1f%) differed~%" +msgstr " - ~h (~,1f%) var forskellige~%" + +#: guix/scripts/challenge.scm:224 +msgid " - ~h (~,1f%) were inconclusive~%" +msgstr " - ~h (~,1f%) var ufyldestgørende~%" + +#: guix/scripts/challenge.scm:233 msgid "" "Usage: guix challenge [PACKAGE...]\n" "Challenge the substitutes for PACKAGE... provided by one or more servers.\n" @@ -2344,7 +2641,7 @@ msgstr "" "Brug: guix challenge [PAKKE...]\n" "Ændr substitutterne for PAKKE... tilbudt af en eller flere servere.\n" -#: guix/scripts/challenge.scm:221 +#: guix/scripts/challenge.scm:235 msgid "" "\n" " --substitute-urls=URLS\n" @@ -2354,7 +2651,7 @@ msgstr "" " --substitute-urls=ADRESSER\n" " sammenlign kompileringsresultater med dem på ADRESSER" -#: guix/scripts/challenge.scm:224 +#: guix/scripts/challenge.scm:238 msgid "" "\n" " -v, --verbose show details about successful comparisons" @@ -2372,7 +2669,7 @@ msgstr "~a: ugyldigt TCP-portnummer~%" msgid "~a: invalid SSH specification~%" msgstr "~a: ugyldig SSH-specifikation~%" -#: guix/scripts/copy.scm:112 +#: guix/scripts/copy.scm:113 msgid "" "Usage: guix copy [OPTION]... ITEMS...\n" "Copy ITEMS to or from the specified host over SSH.\n" @@ -2380,7 +2677,7 @@ msgstr "" "Brug: guix copy [TILVALG]... ELEMENTER...\n" "Kopier ELEMENTER til eller fra den specificerede vært over SSH.\n" -#: guix/scripts/copy.scm:114 +#: guix/scripts/copy.scm:115 msgid "" "\n" " --to=HOST send ITEMS to HOST" @@ -2388,7 +2685,7 @@ msgstr "" "\n" " --to=VÆRT send ELEMENTER til VÆRT" -#: guix/scripts/copy.scm:116 +#: guix/scripts/copy.scm:117 msgid "" "\n" " --from=HOST receive ITEMS from HOST" @@ -2396,22 +2693,22 @@ msgstr "" "\n" " --from=VÆRT receive ELEMENTER from HOST" -#: guix/scripts/copy.scm:168 +#: guix/scripts/copy.scm:169 #, scheme-format msgid "use '--to' or '--from'~%" msgstr "brug »--to« eller »--from«~%" -#: guix/scripts/pack.scm:74 +#: guix/scripts/pack.scm:85 #, scheme-format msgid "~a: compressor not found~%" msgstr "~a: kompressor blev ikke fundet~%" -#: guix/scripts/pack.scm:310 +#: guix/scripts/pack.scm:334 #, scheme-format msgid "~a: invalid symlink specification~%" msgstr "~a: ugyldig symbolsk henvisningsspecifikation~%" -#: guix/scripts/pack.scm:320 +#: guix/scripts/pack.scm:347 msgid "" "Usage: guix pack [OPTION]... PACKAGE...\n" "Create a bundle of PACKAGE.\n" @@ -2419,7 +2716,7 @@ msgstr "" "Brug: guix pack [TILVALG]... PAKKE...\n" "Opret en samling af PAKKE.\n" -#: guix/scripts/pack.scm:326 +#: guix/scripts/pack.scm:353 msgid "" "\n" " -f, --format=FORMAT build a pack in the given FORMAT" @@ -2427,7 +2724,7 @@ msgstr "" "\n" " -f, --format=FORMAT kompiler en pakke i det givne FORMAT" -#: guix/scripts/pack.scm:334 +#: guix/scripts/pack.scm:361 msgid "" "\n" " -C, --compression=TOOL compress using TOOL--e.g., \"lzip\"" @@ -2435,7 +2732,7 @@ msgstr "" "\n" " -C, --compression=VÆRKTØJ komprimer via VÆRKTØJ--f.eks., »lzip«" -#: guix/scripts/pack.scm:336 +#: guix/scripts/pack.scm:363 msgid "" "\n" " -S, --symlink=SPEC create symlinks to the profile according to SPEC" @@ -2443,7 +2740,15 @@ msgstr "" "\n" " -S, --symlink=SPEC opret symbolske henvisninger til profilen jævnfør SPEC" -#: guix/scripts/pack.scm:338 +#: guix/scripts/pack.scm:365 +msgid "" +"\n" +" -m, --manifest=FILE create a pack with the manifest from FILE" +msgstr "" +"\n" +" -m, --manifest=FIL opret en pakke med manifestet fra FIL" + +#: guix/scripts/pack.scm:367 msgid "" "\n" " --localstatedir include /var/guix in the resulting pack" @@ -2451,28 +2756,158 @@ msgstr "" "\n" " --localstatedir inkluder /var/guix i resultatpakken" -#: guix/scripts/pack.scm:382 +#: guix/scripts/pack.scm:369 +msgid "" +"\n" +" --bootstrap use the bootstrap binaries to build the pack" +msgstr "" +"\n" +" --bootstrap brug bootstraps binære filer til at kompilere pakken" + +#: guix/scripts/pack.scm:405 +#, scheme-format +msgid "both a manifest and a package list were given~%" +msgstr "både et manifest og en pakkeliste blev angivet~%" + +#: guix/scripts/pack.scm:429 #, scheme-format msgid "~a: unknown pack format" msgstr "~a: ukendt pakkeformat" -#: guix/gnu-maintenance.scm:562 +#: guix/scripts/weather.scm:72 +msgid "computing ~h package derivations for ~a...~%" +msgstr "beregner ~h pakkederivater for ~a...~%" + +#: guix/scripts/weather.scm:161 +msgid "looking for ~h store items on ~a...~%" +msgstr "kigger efter ~h lagerelementer på ~a...~%" + +#: guix/scripts/weather.scm:173 +msgid " ~2,1f% substitutes available (~h out of ~h)~%" +msgstr " ~2,1f% substitutter tilgængelige (~h ud af ~h)~%" + +#: guix/scripts/weather.scm:179 +#, scheme-format +msgid " unknown substitute sizes~%" +msgstr " ukendte substitutstørrelser~%" + +#: guix/scripts/weather.scm:182 +msgid " ~,1h MiB of nars (compressed)~%" +msgstr " ~,1h MiB af nars (komprimeret)~%" + +#: guix/scripts/weather.scm:183 +msgid " at least ~,1h MiB of nars (compressed)~%" +msgstr " mindst ~,1h MiB af nars (komprimeret)~%" + +#: guix/scripts/weather.scm:185 +msgid " ~,1h MiB on disk (uncompressed)~%" +msgstr " ~,1h MiB på disk (komprimeret)~%" + +#: guix/scripts/weather.scm:187 +msgid " ~,3h seconds per request (~,1h seconds in total)~%" +msgstr " ~,3h sekunder per forespørgsel (~,1h sekunder samlet)~%" + +#: guix/scripts/weather.scm:189 +msgid " ~,1h requests per second~%" +msgstr " ~,1h forespørgsler per sekund~%" + +#: guix/scripts/weather.scm:195 +#, scheme-format +msgid " (continuous integration information unavailable)~%" +msgstr " (kontinuerlig integrationsinformation utilgængelig)~%" + +#: guix/scripts/weather.scm:198 +#, scheme-format +msgid " '~a' returned ~a (~s)~%" +msgstr " »~a« returnerede ~a (~s)~%" + +#: guix/scripts/weather.scm:215 +msgid " ~,1f% (~h out of ~h) of the missing items are queued~%" +msgstr " ~,1f% (~h ud af ~h) af de manglende elementer er placeret i køen~%" + +#: guix/scripts/weather.scm:221 +msgid " at least ~h queued builds~%" +msgstr " mindst ~h kompileringer i køen~%" + +#: guix/scripts/weather.scm:222 +msgid " ~h queued builds~%" +msgstr " ~h kompileringer i køen~%" + +#: guix/scripts/weather.scm:225 +#, scheme-format +msgid " ~a: ~a (~0,1f%)~%" +msgstr " ~a: ~a (~0,1f%)~%" + +#: guix/scripts/weather.scm:231 +#, scheme-format +msgid " build rate: ~1,2f builds per hour~%" +msgstr " kompileringshastighed: ~1,2f kompileringer per time~%" + +#: guix/scripts/weather.scm:235 +#, scheme-format +msgid " ~a: ~,2f builds per hour~%" +msgstr " ~a: ~,2f kompileringer per time~%" + +#: guix/scripts/weather.scm:247 +msgid "" +"Usage: guix weather [OPTIONS]\n" +"Report the availability of substitutes.\n" +msgstr "" +"Brug: guix weather [TILVALG]\n" +"Rapporter tilgængelighed over substitutter.\n" + +#: guix/scripts/weather.scm:249 +msgid "" +"\n" +" --substitute-urls=URLS\n" +" check for available substitutes at URLS" +msgstr "" +"\n" +" --substitute-urls=ADRESSER\n" +" kontroller for tilgængelige substitutter på URLS\n" +" (ADRESSER)" + +#: guix/scripts/weather.scm:252 +msgid "" +"\n" +" -m, --manifest=MANIFEST\n" +" look up substitutes for packages specified in MANIFEST" +msgstr "" +"\n" +" -m, --manifest=MANIFEST\n" +" slå substitutter op for pakker angivet i MANIFEST" + +#: guix/scripts/weather.scm:255 +msgid "" +"\n" +" -s, --system=SYSTEM consider substitutes for SYSTEM--e.g., \"i686-linux\"" +msgstr "" +"\n" +" -s, --system=SYSTEM tag i betragtning substitutter for SYSTEM--f.eks.,\n" +"»i686-linux«" + +#: guix/scripts/weather.scm:279 +#, scheme-format +msgid "~a: invalid URL~%" +msgstr "~a: ugyldig URL~%" + +#: guix/gnu-maintenance.scm:570 msgid "Updater for GNU packages" msgstr "Opdater for GNU-pakker" -#: guix/gnu-maintenance.scm:569 -msgid "Updater for GNOME packages" -msgstr "Opdateringsprogram for GNOME-pakker" +#: guix/gnu-maintenance.scm:579 +msgid "Updater for GNU packages only available via FTP" +msgstr "Opdateringsprogram for GNU-pakker er kun tilgængelig via FTP" -#: guix/gnu-maintenance.scm:576 +#: guix/gnu-maintenance.scm:588 msgid "Updater for KDE packages" msgstr "Opdateringsprogram for KDE-pakker" -#: guix/gnu-maintenance.scm:583 +#: guix/gnu-maintenance.scm:595 msgid "Updater for X.org packages" msgstr "Opdateringsprogram for X.org-pakker" -#: guix/gnu-maintenance.scm:590 +#: guix/gnu-maintenance.scm:602 msgid "Updater for packages hosted on kernel.org" msgstr "Opdateringsprogram for pakker fra kernel.org" @@ -2531,61 +2966,85 @@ msgstr "ingen sådan proces ~d~%" msgid "exec failed with status ~d~%" msgstr "exec mislykkedes med status ~d~%" -#: guix/upstream.scm:212 +#: guix/upstream.scm:250 #, scheme-format msgid "signature verification failed for `~a'~%" msgstr "signaturverifikation mislykkedes for »~a«~%" -#: guix/upstream.scm:214 +#: guix/upstream.scm:252 #, scheme-format msgid "(could be because the public key is not in your keyring)~%" msgstr "(kunne være fordi den offentlige nøgle ikke er i din nøglering)~%" -#: guix/upstream.scm:293 +#: guix/upstream.scm:337 #, scheme-format msgid "~a: could not locate source file" msgstr "~a: kunne ikke lokalisere kildefil" -#: guix/upstream.scm:298 +#: guix/upstream.scm:342 #, scheme-format msgid "~a: ~a: no `version' field in source; skipping~%" msgstr "~a: ~a: intet »versionsfelt« i kilde; udelader~%" -#: guix/ui.scm:241 +#: guix/ui.scm:161 +#, scheme-format +msgid "~a: unbound variable" +msgstr "~a: variabel uden binding" + +#: guix/ui.scm:253 msgid "entering debugger; type ',bt' for a backtrace\n" msgstr "går i fejlsøger; tast »,bt« for en tilbagesporing\n" -#: guix/ui.scm:257 guix/ui.scm:278 guix/ui.scm:285 +#: guix/ui.scm:302 +#, scheme-format +msgid "hint: ~a~%" +msgstr "fif: ~a~%" + +#: guix/ui.scm:314 guix/ui.scm:362 guix/ui.scm:369 #, scheme-format msgid "failed to load '~a': ~a~%" msgstr "kunne ikke indlæse »~a«: ~a~%" -#: guix/ui.scm:260 +#: guix/ui.scm:321 +#, scheme-format +msgid "~amissing closing parenthesis~%" +msgstr "~amanglende afsluttende parentes~%" + +#: guix/ui.scm:326 guix/ui.scm:342 guix/ui.scm:642 #, scheme-format msgid "~a: error: ~a~%" msgstr "~a: fejl: ~a~%" -#: guix/ui.scm:267 guix/ui.scm:554 +#: guix/ui.scm:334 +msgid "Did you forget a @code{use-modules} form?" +msgstr "Glemte du en @code{use-modules}-form?" + +#: guix/ui.scm:336 +#, scheme-format +msgid "Did you forget @code{(use-modules ~a)}?" +msgstr "Glemte du @code{(use-modules ~a)}?" + +#: guix/ui.scm:349 guix/ui.scm:712 #, scheme-format msgid "exception thrown: ~s~%" msgstr "undtagelse smidt: ~s~%" -#: guix/ui.scm:269 guix/ui.scm:291 +#: guix/ui.scm:353 guix/ui.scm:375 #, scheme-format msgid "failed to load '~a':~%" msgstr "kunne ikke indlæse »~a«:~%" -#: guix/ui.scm:281 +#: guix/ui.scm:365 #, scheme-format msgid "~a: warning: ~a~%" msgstr "~a: advarsel: ~a~%" -#: guix/ui.scm:288 +#: guix/ui.scm:372 #, scheme-format msgid "failed to load '~a': exception thrown: ~s~%" msgstr "kunne ikke indlæse »~a«: undtagelse smidt: ~s~%" -#: guix/ui.scm:300 +#: guix/ui.scm:384 #, scheme-format msgid "failed to install locale: ~a~%" msgstr "kunne ikke installere sprog: ~a~%" @@ -2593,15 +3052,15 @@ msgstr "kunne ikke installere sprog: ~a~%" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's #. locale. Otherwise, do not translate "(C)"; leave it as-is. */ -#: guix/ui.scm:323 +#: guix/ui.scm:414 msgid "(C)" msgstr "©" -#: guix/ui.scm:324 +#: guix/ui.scm:415 msgid "the Guix authors\n" msgstr "Guix-forfatterne\n" -#: guix/ui.scm:325 +#: guix/ui.scm:416 msgid "" "License GPLv3+: GNU GPL version 3 or later \n" "This is free software: you are free to change and redistribute it.\n" @@ -2615,7 +3074,7 @@ msgstr "" #. package. Please add another line saying "Report translation bugs to #. ...\n" with the address for translation bugs (typically your translation #. team's web or email address). -#: guix/ui.scm:337 +#: guix/ui.scm:428 #, scheme-format msgid "" "\n" @@ -2624,7 +3083,7 @@ msgstr "" "\n" "Rapporter fejl til: ~a." -#: guix/ui.scm:339 +#: guix/ui.scm:430 #, scheme-format msgid "" "\n" @@ -2633,7 +3092,7 @@ msgstr "" "\n" "~a hjemmeside: <~a>" -#: guix/ui.scm:341 +#: guix/ui.scm:432 msgid "" "\n" "General help using GNU software: " @@ -2641,204 +3100,249 @@ msgstr "" "\n" "Generel hjælp til brugen af GNU-programmer: " -#: guix/ui.scm:386 +#: guix/ui.scm:477 #, scheme-format msgid "'~a' is not a valid regular expression: ~a~%" msgstr "»~a« er ikke et gyldigt regulært udtryk: ~a~%" -#: guix/ui.scm:392 +#: guix/ui.scm:483 #, scheme-format msgid "~a: invalid number~%" msgstr "~a: ugyldigt nummer~%" -#: guix/ui.scm:409 +#: guix/ui.scm:500 #, scheme-format msgid "invalid number: ~a~%" msgstr "ugyldigt nummer: ~a~%" -#: guix/ui.scm:432 +#: guix/ui.scm:523 #, scheme-format msgid "unknown unit: ~a~%" msgstr "ukendt enhed: ~a~%" -#: guix/ui.scm:449 +#: guix/ui.scm:538 +#, scheme-format +msgid "" +"You cannot have two different versions\n" +"or variants of @code{~a} in the same profile." +msgstr "" +"Du kan ikke have to forskellige versioner\n" +"eller varianter af @code{~a} i den samme profil." + +#: guix/ui.scm:541 +#, scheme-format +msgid "" +"Try upgrading both @code{~a} and @code{~a},\n" +"or remove one of them from the profile." +msgstr "" +"Prøv at opgradere både @code{~a} og @code{~a},\n" +"eller fjern en af dem fra profilen." + +#: guix/ui.scm:560 #, scheme-format msgid "~a:~a:~a: package `~a' has an invalid input: ~s~%" msgstr "~a:~a:~a: pakken »~a« har ugyldige inddata: ~s~%" -#: guix/ui.scm:456 +#: guix/ui.scm:567 #, scheme-format msgid "~a: ~a: build system `~a' does not support cross builds~%" msgstr "~a: ~a: kompileringssystem »~a« understøtter ikke krydskompileringer~%" -#: guix/ui.scm:462 +#: guix/ui.scm:573 #, scheme-format msgid "~s: invalid G-expression input~%" msgstr "~s: ugyldige G-udtryksindata~%" -#: guix/ui.scm:465 +#: guix/ui.scm:576 #, scheme-format msgid "profile '~a' does not exist~%" msgstr "profilen »~a« findes ikke~%" -#: guix/ui.scm:468 +#: guix/ui.scm:579 #, scheme-format msgid "generation ~a of profile '~a' does not exist~%" msgstr "oprettelse ~a af profilen »~a« findes ikke~%" -#: guix/ui.scm:475 +#: guix/ui.scm:588 +#, scheme-format +msgid " ... propagated from ~a@~a~%" +msgstr " ... formeret fra ~a@~a~%" + +#: guix/ui.scm:598 +#, scheme-format +msgid "profile contains conflicting entries for ~a~a~%" +msgstr "profil indeholder elementer i konflikt for ~a~a~%" + +#: guix/ui.scm:601 +#, scheme-format +msgid " first entry: ~a@~a~a ~a~%" +msgstr " første element: ~a@~a~a ~a~%" + +#: guix/ui.scm:607 +#, scheme-format +msgid " second entry: ~a@~a~a ~a~%" +msgstr " andet element: ~a@~a~a ~a~%" + +#: guix/ui.scm:619 #, scheme-format msgid "corrupt input while restoring '~a' from ~s~%" msgstr "ødelagte inddata under gendannelse af »~a« fra ~s~%" -#: guix/ui.scm:477 +#: guix/ui.scm:621 #, scheme-format msgid "corrupt input while restoring archive from ~s~%" msgstr "ødelagte inddata under gendannelse af arkiv fra ~s~%" -#: guix/ui.scm:480 +#: guix/ui.scm:624 #, scheme-format msgid "failed to connect to `~a': ~a~%" msgstr "kunne ikke forbinde til »~a«: ~a~%" -#: guix/ui.scm:485 +#: guix/ui.scm:629 #, scheme-format msgid "build failed: ~a~%" msgstr "kompilering mislykkedes: ~a~%" -#: guix/ui.scm:488 +#: guix/ui.scm:632 #, scheme-format msgid "reference to invalid output '~a' of derivation '~a'~%" msgstr "reference til ugyldige uddata »~a« for derivat »~a«~%" -#: guix/ui.scm:492 +#: guix/ui.scm:636 #, scheme-format msgid "file '~a' could not be found in these directories:~{ ~a~}~%" msgstr "filen »~a« blev ikke fundet i disse mapper:~{ ~a~}~%" -#: guix/ui.scm:504 +#: guix/ui.scm:662 #, scheme-format msgid "~a: ~a~%" msgstr "~a: ~a~%" -#: guix/ui.scm:539 +#: guix/ui.scm:697 #, scheme-format msgid "failed to read expression ~s: ~s~%" msgstr "kunne ikke læse udtryk ~s: ~s~%" -#: guix/ui.scm:545 +#: guix/ui.scm:703 #, scheme-format msgid "failed to evaluate expression '~a':~%" msgstr "kunne ikke evaluere udtryk »~a«:~%" -#: guix/ui.scm:548 +#: guix/ui.scm:706 #, scheme-format msgid "syntax error: ~a~%" msgstr "syntaksfejl: ~a~%" -#: guix/ui.scm:566 +#: guix/ui.scm:724 #, scheme-format msgid "expression ~s does not evaluate to a package~%" msgstr "udtryk ~s evaluerer ikke til en pakke~%" -#: guix/ui.scm:628 +#: guix/ui.scm:743 +msgid "at least ~,1h MB needed but only ~,1h MB available in ~a~%" +msgstr "mindst ~,1h MB krævet men kun ~,1h MB tilgængelig i ~a~%" + +#: guix/ui.scm:811 #, scheme-format msgid "~:[The following derivation would be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations would be built:~%~{ ~a~%~}~;~]" msgstr[0] "~:[Det følgende derivat ville blive kompileret:~%~{ ~a~%~}~;~]" msgstr[1] "~:[De følgende derivater ville blive kompileret:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:633 +#. TRANSLATORS: "MB" is for "megabyte"; it should be +#. translated to the corresponding abbreviation. +#: guix/ui.scm:819 +msgid "~:[~,1h MB would be downloaded:~%~{ ~a~%~}~;~]" +msgstr "~:[~,1h MB ville blive hentet:~%~{ ~a~%~}~;~]" + +#: guix/ui.scm:824 #, scheme-format msgid "~:[The following file would be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files would be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[Den følgende fil ville blive hentet:~%~{ ~a~%~}~;~]" msgstr[1] "~:[De følgende filer ville blive hentet:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:639 +#: guix/ui.scm:831 #, scheme-format msgid "~:[The following derivation will be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations will be built:~%~{ ~a~%~}~;~]" msgstr[0] "~:[Det følgende derivat vil blive kompileret:~%~{ ~a~%~}~;~]" msgstr[1] "~:[De følgende derivater vil blive kompileret:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:644 +#. TRANSLATORS: "MB" is for "megabyte"; it should be +#. translated to the corresponding abbreviation. +#: guix/ui.scm:839 +msgid "~:[~,1h MB will be downloaded:~%~{ ~a~%~}~;~]" +msgstr "~:[~,1h MB vil blive hentet:~%~{ ~a~%~}~;~]" + +#: guix/ui.scm:844 #, scheme-format msgid "~:[The following file will be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files will be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[Den følgende fil vil blive hentet:~%~{ ~a~%~}~;~]" msgstr[1] "~:[De følgende filer vil blive hentet:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:700 +#: guix/ui.scm:904 #, scheme-format msgid "The following package would be removed:~%~{~a~%~}~%" msgid_plural "The following packages would be removed:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke ville blive fjernet:~%~{~a~%~}~%" msgstr[1] "De følgende pakker ville blive fjernet:~%~{~a~%~}~%" -#: guix/ui.scm:705 +#: guix/ui.scm:909 #, scheme-format msgid "The following package will be removed:~%~{~a~%~}~%" msgid_plural "The following packages will be removed:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke vil blive fjernet:~%~{~a~%~}~%" msgstr[1] "De følgende pakker vil blive fjernet:~%~{~a~%~}~%" -#: guix/ui.scm:718 +#: guix/ui.scm:922 #, scheme-format msgid "The following package would be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be downgraded:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke ville blive nedgraderet:~%~{~a~%~}~%" msgstr[1] "De følgende pakker ville blive nedgraderet:~%~{~a~%~}~%" -#: guix/ui.scm:723 +#: guix/ui.scm:927 #, scheme-format msgid "The following package will be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be downgraded:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke vil blive nedgraderet:~%~{~a~%~}~%" msgstr[1] "De følgende pakker vil blive nedgraderet:~%~{~a~%~}~%" -#: guix/ui.scm:736 +#: guix/ui.scm:940 #, scheme-format msgid "The following package would be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be upgraded:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke ville blive opgraderet:~%~{~a~%~}~%" msgstr[1] "De følgende pakker ville blive opgraderet:~%~{~a~%~}~%" -#: guix/ui.scm:741 +#: guix/ui.scm:945 #, scheme-format msgid "The following package will be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be upgraded:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke vil blive opgraderet:~%~{~a~%~}~%" msgstr[1] "De følgende pakker vil blive opgraderet:~%~{~a~%~}~%" -#: guix/ui.scm:752 +#: guix/ui.scm:956 #, scheme-format msgid "The following package would be installed:~%~{~a~%~}~%" msgid_plural "The following packages would be installed:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke ville blive installeret:~%~{~a~%~}~%" msgstr[1] "De følgende pakker ville blive installeret:~%~{~a~%~}~%" -#: guix/ui.scm:757 +#: guix/ui.scm:961 #, scheme-format msgid "The following package will be installed:~%~{~a~%~}~%" msgid_plural "The following packages will be installed:~%~{~a~%~}~%" msgstr[0] "Den følgende pakke vil blive installeret:~%~{~a~%~}~%" msgstr[1] "De følgende pakker vil blive installeret:~%~{~a~%~}~%" -#: guix/ui.scm:774 +#: guix/ui.scm:978 msgid "" msgstr "" -#: guix/ui.scm:793 -#, scheme-format -msgid "failed to create configuration directory `~a': ~a~%" -msgstr "kunne ikke oprette konfiguratinsmappe »~a«: ~a~%" - -#: guix/ui.scm:924 guix/ui.scm:938 -msgid "unknown" -msgstr "ukendt" - -#: guix/ui.scm:1097 +#: guix/ui.scm:1340 #, scheme-format msgid "Generation ~a\t~a" msgstr "Generation ~a\t~a" @@ -2846,27 +3350,27 @@ msgstr "Generation ~a\t~a" #. TRANSLATORS: The word "current" here is an adjective for #. "Generation", as in "current generation". Use the appropriate #. gender where applicable. -#: guix/ui.scm:1107 +#: guix/ui.scm:1350 #, scheme-format msgid "~a\t(current)~%" msgstr "~a\t(nuværende)~%" -#: guix/ui.scm:1150 +#: guix/ui.scm:1393 #, scheme-format msgid "switched from generation ~a to ~a~%" msgstr "skiftede fra generation ~a til ~a~%" -#: guix/ui.scm:1166 +#: guix/ui.scm:1409 #, scheme-format msgid "deleting ~a~%" msgstr "sletter ~a~%" -#: guix/ui.scm:1197 +#: guix/ui.scm:1440 #, scheme-format msgid "Try `guix --help' for more information.~%" msgstr "Prøv »guix --help« for yderligere information.~%" -#: guix/ui.scm:1225 +#: guix/ui.scm:1468 msgid "" "Usage: guix COMMAND ARGS...\n" "Run COMMAND with ARGS.\n" @@ -2874,31 +3378,31 @@ msgstr "" "Brug: guix KOMMANDO ARG...\n" "Kør KOMMANDO med ARG.\n" -#: guix/ui.scm:1228 +#: guix/ui.scm:1471 msgid "COMMAND must be one of the sub-commands listed below:\n" msgstr "KOMMANDO skal være en af underkommandoerne vist nedenfor:\n" -#: guix/ui.scm:1248 +#: guix/ui.scm:1491 #, scheme-format msgid "guix: ~a: command not found~%" msgstr "guix: ~a: kommando blev ikke fundet~%" -#: guix/ui.scm:1267 +#: guix/ui.scm:1521 #, scheme-format msgid "guix: missing command name~%" msgstr "guix: mangler kommandonavn~%" -#: guix/ui.scm:1275 +#: guix/ui.scm:1529 #, scheme-format msgid "guix: unrecognized option '~a'~%" msgstr "guix: ikke genkendt tilvalg »~a«~%" -#: guix/http-client.scm:265 +#: guix/http-client.scm:117 #, scheme-format msgid "following redirection to `~a'...~%" msgstr "følger omdirigering til »~a«...~%" -#: guix/http-client.scm:277 +#: guix/http-client.scm:129 #, scheme-format msgid "~a: HTTP download failed: ~a (~s)" msgstr "~a: HTTP-overførsel mislykkede: ~a (~s)" @@ -2945,146 +3449,126 @@ msgstr "importeret fil mangler en signatur" msgid "invalid inter-file archive mark" msgstr "ugyldig arkivmærke for mellemfil" -#: nix/nix-daemon/guix-daemon.cc:61 +#: nix/nix-daemon/guix-daemon.cc:66 msgid "guix-daemon -- perform derivation builds and store accesses" msgstr "guix-daemon – udfør derivatkompileringer og lageradgange" -#: nix/nix-daemon/guix-daemon.cc:63 +#: nix/nix-daemon/guix-daemon.cc:68 msgid "This program is a daemon meant to run in the background. It serves requests sent over a Unix-domain socket. It accesses the store, and builds derivations on behalf of its clients." msgstr "Dette program er en ædmon lavet til at køre i baggrunden. Den betjener forespørgsler sendt over en Unix-domænesokkel. Den tilgår lageret, og bygger derivater på vegne af dens klienter." -#: nix/nix-daemon/guix-daemon.cc:87 +#: nix/nix-daemon/guix-daemon.cc:95 msgid "SYSTEM" msgstr "SYSTEM" -#: nix/nix-daemon/guix-daemon.cc:88 +#: nix/nix-daemon/guix-daemon.cc:96 msgid "assume SYSTEM as the current system type" msgstr "antag SYSTEM som den nuværende systemtype" -#: nix/nix-daemon/guix-daemon.cc:89 nix/nix-daemon/guix-daemon.cc:92 +#: nix/nix-daemon/guix-daemon.cc:97 nix/nix-daemon/guix-daemon.cc:100 msgid "N" msgstr "N" -#: nix/nix-daemon/guix-daemon.cc:90 +#: nix/nix-daemon/guix-daemon.cc:98 msgid "use N CPU cores to build each derivation; 0 means as many as available" msgstr "brug N cpu-kerner til at kompilere hvert derivat; 0 betyder så mange som er tilgængelige" -#: nix/nix-daemon/guix-daemon.cc:93 +#: nix/nix-daemon/guix-daemon.cc:101 msgid "allow at most N build jobs" msgstr "tillad højst N kompileringsjob" -#: nix/nix-daemon/guix-daemon.cc:95 +#: nix/nix-daemon/guix-daemon.cc:102 nix/nix-daemon/guix-daemon.cc:104 +msgid "SECONDS" +msgstr "SEKUNDER" + +#: nix/nix-daemon/guix-daemon.cc:103 +msgid "mark builds as failed after SECONDS of activity" +msgstr "marker kompileringer som mislykkede efter SEKUNDERs aktivitet" + +#: nix/nix-daemon/guix-daemon.cc:105 +msgid "mark builds as failed after SECONDS of silence" +msgstr "marker kompileringer som mislykkede efter SEKUNDERs stilhed" + +#: nix/nix-daemon/guix-daemon.cc:107 msgid "disable chroot builds" msgstr "deaktiver chroot-kompileringer" -#: nix/nix-daemon/guix-daemon.cc:96 +#: nix/nix-daemon/guix-daemon.cc:108 msgid "DIR" msgstr "MAPPE" -#: nix/nix-daemon/guix-daemon.cc:97 +#: nix/nix-daemon/guix-daemon.cc:109 msgid "add DIR to the build chroot" msgstr "tilføj MAPPE til kompileringschrooten" -#: nix/nix-daemon/guix-daemon.cc:98 +#: nix/nix-daemon/guix-daemon.cc:110 msgid "GROUP" msgstr "GRUPPE" -#: nix/nix-daemon/guix-daemon.cc:99 +#: nix/nix-daemon/guix-daemon.cc:111 msgid "perform builds as a user of GROUP" msgstr "udfør kompileringer som en bruger i GRUPPE" -#: nix/nix-daemon/guix-daemon.cc:101 +#: nix/nix-daemon/guix-daemon.cc:113 msgid "do not use substitutes" msgstr "brug ikke substitutter" -#: nix/nix-daemon/guix-daemon.cc:102 +#: nix/nix-daemon/guix-daemon.cc:114 msgid "URLS" msgstr "ADRESSER" -#: nix/nix-daemon/guix-daemon.cc:103 +#: nix/nix-daemon/guix-daemon.cc:115 msgid "use URLS as the default list of substitute providers" msgstr "brug ADRESSER som standardlisten for substitutleverandører" -#: nix/nix-daemon/guix-daemon.cc:105 +#: nix/nix-daemon/guix-daemon.cc:117 msgid "do not use the 'build hook'" msgstr "brug ikke »build hook«" -#: nix/nix-daemon/guix-daemon.cc:107 +#: nix/nix-daemon/guix-daemon.cc:119 msgid "cache build failures" msgstr "kompileringsfejl i mellemlageret" -#: nix/nix-daemon/guix-daemon.cc:109 +#: nix/nix-daemon/guix-daemon.cc:121 msgid "build each derivation N times in a row" msgstr "kompiler hvert derivat N gange i træk" -#: nix/nix-daemon/guix-daemon.cc:111 +#: nix/nix-daemon/guix-daemon.cc:123 msgid "do not keep build logs" msgstr "bevar ikke kompileringslogge" -#: nix/nix-daemon/guix-daemon.cc:113 +#: nix/nix-daemon/guix-daemon.cc:126 msgid "disable compression of the build logs" msgstr "deaktiver komprimering af kompileringslogge" -#: nix/nix-daemon/guix-daemon.cc:118 +#: nix/nix-daemon/guix-daemon.cc:128 +msgid "use the specified compression type for build logs" +msgstr "brug den angivne komprimeringstype for kompileringslogge" + +#: nix/nix-daemon/guix-daemon.cc:133 msgid "disable automatic file \"deduplication\" in the store" msgstr "deaktiver automatisk »fildeduplikation« i lageret" -#: nix/nix-daemon/guix-daemon.cc:128 +#: nix/nix-daemon/guix-daemon.cc:143 msgid "impersonate Linux 2.6" msgstr "udgiv Linux 2.6" -#: nix/nix-daemon/guix-daemon.cc:132 +#: nix/nix-daemon/guix-daemon.cc:147 msgid "tell whether the GC must keep outputs of live derivations" msgstr "fortæl om GC'en skal bevare uddata for live derivater" -#: nix/nix-daemon/guix-daemon.cc:135 +#: nix/nix-daemon/guix-daemon.cc:150 msgid "tell whether the GC must keep derivations corresponding to live outputs" msgstr "fortæl om GC'en skal bevare derivater svarende til live uddata" -#: nix/nix-daemon/guix-daemon.cc:138 +#: nix/nix-daemon/guix-daemon.cc:153 msgid "SOCKET" msgstr "SOKKEL" -#: nix/nix-daemon/guix-daemon.cc:139 +#: nix/nix-daemon/guix-daemon.cc:154 msgid "listen for connections on SOCKET" msgstr "lyt efter forbindelser på SOKKEL" -#: nix/nix-daemon/guix-daemon.cc:141 +#: nix/nix-daemon/guix-daemon.cc:156 msgid "produce debugging output" msgstr "lav fejlsøgningsinformation" - -#~ msgid "deprecated NAME-VERSION syntax; use NAME@VERSION instead~%" -#~ msgstr "forældet NAVN-VERSION-syntaks; brug NAVN@VERSION i stedet for~%" - -#~ msgid "/" -#~ msgstr "/" - -#~ msgid "~A: unexpected argument~%" -#~ msgstr "~A: uventet argument~%" - -#~ msgid "~a: no substitute at '~a'~%" -#~ msgstr "~a: ingen substitut på »~a«~%" - -#~ msgid "no substitutes for '~a'~%" -#~ msgstr "ingen substitutter for »~a«~%" - -#~ msgid " ~50a: unavailable~%" -#~ msgstr " ~50a: utilgængelig~%" - -#~ msgid "gz" -#~ msgstr "gz" - -#~ msgid "download failed" -#~ msgstr "overførsel mislykkedes" - -#~ msgid "error: %s: invalid number of rounds\n" -#~ msgstr "fejl: %s: ugyldigt antal runder\n" - -#~ msgid "error: %s\n" -#~ msgstr "fejl: %s\n" - -#~ msgid "error: libgcrypt version mismatch\n" -#~ msgstr "fejl: forskellige versioner af libgcrypt\n" - -#~ msgid "warning: daemon is running as root, so using `--build-users-group' is highly recommended\n" -#~ msgstr "advarsel: dæmon kører som root, så brug af »--build-users-group« anbefales\n" diff --git a/po/guix/fr.po b/po/guix/fr.po index dd8206b049..f305027f80 100644 --- a/po/guix/fr.po +++ b/po/guix/fr.po @@ -15,10 +15,10 @@ # msgid "" msgstr "" -"Project-Id-Version: guix 0.14.0\n" +"Project-Id-Version: guix 0.15.0\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" -"POT-Creation-Date: 2017-11-28 08:56+0100\n" -"PO-Revision-Date: 2017-11-30 13:46+0100\n" +"POT-Creation-Date: 2018-06-22 14:08+0200\n" +"PO-Revision-Date: 2018-06-23 14:14+0200\n" "Last-Translator: Julien Lepiller \n" "Language-Team: French \n" "Language: fr\n" @@ -27,12 +27,12 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.0.3\n" +"X-Generator: Offlate 0.1\n" #: gnu.scm:82 #, scheme-format msgid "module ~a not found" -msgstr "module « ~a » introuvable" +msgstr "module « ~a » introuvable" #: gnu.scm:100 msgid "" @@ -79,92 +79,210 @@ msgstr "~a : correctif introuvable" msgid "could not find bootstrap binary '~a' for system '~a'" msgstr "impossible de trouver le binaire d'initialisation « ~a » pour le système « ~a »" -#: gnu/packages.scm:240 +#: gnu/packages.scm:259 #, scheme-format msgid "ambiguous package specification `~a'~%" msgstr "spécification du paquet « ~a » ambiguë~%" -#: gnu/packages.scm:241 +#: gnu/packages.scm:260 #, scheme-format msgid "choosing ~a@~a from ~a~%" msgstr "choix de ~a@~a parmi ~a~%" -#: gnu/packages.scm:246 guix/scripts/package.scm:271 +#: gnu/packages.scm:265 guix/scripts/package.scm:238 #, scheme-format msgid "package '~a' has been superseded by '~a'~%" msgstr "le paquet « ~a » a été remplacé par « ~a »~%" -#: gnu/packages.scm:253 +#: gnu/packages.scm:272 #, scheme-format msgid "~A: package not found for version ~a~%" msgstr "~A : paquet introuvable pour la version ~a~%" -#: gnu/packages.scm:254 +#: gnu/packages.scm:273 #, scheme-format msgid "~A: unknown package~%" msgstr "~A : paquet inconnu~%" -#: gnu/packages.scm:282 +#: gnu/packages.scm:301 #, scheme-format msgid "package `~a' lacks output `~a'~%" msgstr "le paquet « ~a » requiert la sortie « ~a »~%" -#: gnu/services.scm:235 +#: gnu/services.scm:238 #, scheme-format msgid "~a: no value specified for service of type '~a'" msgstr "~a : aucune valeur spécifiée pour le service de type « ~a »" -#: gnu/services.scm:650 +#: gnu/services.scm:336 +msgid "" +"Build the operating system top-level directory, which in\n" +"turn refers to everything the operating system needs: its kernel, initrd,\n" +"system profile, boot script, and so on." +msgstr "" +"Construit le répertoire de plus haut niveau du système d'exploitation,\n" +"qui se réfère à son tour à tout ce que le système d'exploitation a\n" +"besoin : son noyau, l'image de démarrage, le profil du système, le script\n" +"de démarrage, etc." + +#: gnu/services.scm:366 +msgid "" +"Produce the operating system's boot script, which is spawned\n" +"by the initrd once the root file system is mounted." +msgstr "" +"Produit le script de démarrage du système d'exploitation,\n" +"qui est appelé par l’image de démarrage une fois que le système\n" +"de fichiers racine est monté." + +#: gnu/services.scm:422 +msgid "" +"Delete files from @file{/tmp}, @file{/var/run}, and other\n" +"temporary locations at boot time." +msgstr "" +"Supprime les fichiers de @file{/tmp}, @file{/var/run} et d'autres\n" +"emplacements temporaires au démarrage." + +#: gnu/services.scm:476 +msgid "" +"Run @dfn{activation} code at boot time and upon\n" +"@command{guix system reconfigure} completion." +msgstr "" +"Lance le code d’@dfn{activation} au démarrage et à la\n" +"fin de @command{guix system reconfigure}." + +#: gnu/services.scm:527 +msgid "" +"Add special files to the root file system---e.g.,\n" +"@file{/usr/bin/env}." +msgstr "" +"Ajoute des fichiers spéciaux au système de fichiers\n" +"racine — p. ex. @file{/usr/bin/env}." + +#: gnu/services.scm:563 +msgid "Populate the @file{/etc} directory." +msgstr "Rempli le répertoire @file{/etc}." + +#: gnu/services.scm:580 +msgid "" +"Populate @file{/run/setuid-programs} with the specified\n" +"executables, making them setuid-root." +msgstr "" +"Rempli @file{/run/setuid-programs} avec les exécutables\n" +"spécifiés, en les rendant setuid-root." + +#: gnu/services.scm:600 +msgid "" +"This is the @dfn{system profile}, available as\n" +"@file{/run/current-system/profile}. It contains packages that the sysadmin\n" +"wants to be globally available to all the system users." +msgstr "" +"C'est le @dfn{profil système}, disponible dans\n" +"@file{/run/current-system/profile}. Il contient des paquets que l'administrateur\n" +"système souhaite rendre disponible à tous les utilisateurs du système." + +#: gnu/services.scm:620 +msgid "" +"Make ``firmware'' files loadable by the operating system\n" +"kernel. Firmware may then be uploaded to some of the machine's devices, such\n" +"as Wifi cards." +msgstr "" +"Rend les fichiers « firmware » chargeables par le noyau du système d'exploitation.\n" +"Les micro-logiciels peuvent ensuite être envoyés à certains périphériques de la\n" +"machine, comme une carte wifi." + +#: gnu/services.scm:651 +msgid "" +"Register garbage-collector roots---i.e., store items that\n" +"will not be reclaimed by the garbage collector." +msgstr "" +"Enregistre des racines du ramasse-miettes — c.-à-d. des éléments du\n" +"dépôt qui ne seront pas glanés par le ramasse-miettes." + +#: gnu/services.scm:676 #, scheme-format msgid "no target of type '~a' for service '~a'" msgstr "pas de cible de type « ~a » pour le service « ~a »" -#: gnu/services.scm:662 gnu/services.scm:723 +#: gnu/services.scm:702 gnu/services.scm:795 #, scheme-format msgid "more than one target service of type '~a'" msgstr "plus d'un service cible de type « ~a »" -#: gnu/services.scm:713 +#: gnu/services.scm:785 #, scheme-format msgid "service of type '~a' not found" msgstr "service de type « ~a » pas trouvé" -#: gnu/system.scm:305 +#: gnu/system.scm:320 #, scheme-format -msgid "unrecognized boot parameters for '~a'~%" -msgstr "paramètres de démarrage non reconnus pour « ~a »~%" +msgid "unrecognized boot parameters at '~a'~%" +msgstr "paramètres de démarrage non reconnus dans « ~a »~%" -#: gnu/system.scm:695 +#: gnu/system.scm:731 #, scheme-format msgid "using a string for file '~a' is deprecated; use 'plain-file' instead~%" msgstr "l'utilisation d'une chaîne pour le fichier « ~a » est obsolète. Utilisez plutôt « plain-file »~%" -#: gnu/system.scm:711 +#: gnu/system.scm:747 #, scheme-format msgid "using a monadic value for '~a' is deprecated; use 'plain-file' instead~%" msgstr "l'utilisation d'une valeur monadic pour « ~a » est obsolète. Utilisez plutôt « plain-file »~%" -#: gnu/system.scm:856 +#: gnu/system.scm:892 #, scheme-format msgid "~a: invalid locale name" msgstr "~a : nom d'environnement linguistique non valide" -#: gnu/services/shepherd.scm:166 +#: gnu/services/shepherd.scm:175 #, scheme-format msgid "service '~a' provided more than once" msgstr "service « ~a » fourni plus d'une fois" -#: gnu/services/shepherd.scm:181 +#: gnu/services/shepherd.scm:190 #, scheme-format msgid "service '~a' requires '~a', which is not provided by any service" msgstr "le service « ~a » requiert « ~a » qui n'est fourni pas aucun service" -#: gnu/system/shadow.scm:231 +#: gnu/system/mapped-devices.scm:142 +#, scheme-format +msgid "you may need these modules in the initrd for ~a:~{ ~a~}" +msgstr "vous pourriez avoir besoin de ces modules dans l’image de démarrage pour ~a :~{ ~a~}" + +#: gnu/system/mapped-devices.scm:146 +#, scheme-format +msgid "" +"Try adding them to the\n" +"@code{initrd-modules} field of your @code{operating-system} declaration, along\n" +"these lines:\n" +"\n" +"@example\n" +" (operating-system\n" +" ;; @dots{}\n" +" (initrd-modules (append (list~{ ~s~})\n" +" %base-initrd-modules)))\n" +"@end example\n" +msgstr "" +"Essayez de les ajouter dans le champ @code{initrd-modules} de votre déclaration\n" +"@code{operating-system}, comme ceci :\n" +"\n" +"@example\n" +" (operating-system\n" +" ;; @dots{}\n" +" (initrd-modules (append (list~{ ~s~})\n" +" %base-initrd-modules)))\n" +"@end example\n" + +#: gnu/system/mapped-devices.scm:222 +#, scheme-format +msgid "no LUKS partition with UUID '~a'" +msgstr "aucune partition LUKS avec l’UUID « ~a »" + +#: gnu/system/shadow.scm:245 #, scheme-format msgid "supplementary group '~a' of user '~a' is undeclared" msgstr "le groupe supplémentaire « ~a » de l'utilisateur « ~a » n'est pas déclaré" -#: gnu/system/shadow.scm:241 +#: gnu/system/shadow.scm:255 #, scheme-format msgid "primary group '~a' of user '~a' is undeclared" msgstr "le groupe primaire « ~a » de l'utilisateur « ~a » n'est pas déclaré" @@ -175,8 +293,8 @@ msgid "invalid argument: ~a~%" msgstr "argument non valide : ~a~%" #: guix/scripts.scm:84 guix/scripts/download.scm:135 -#: guix/scripts/import/cran.scm:82 guix/scripts/import/elpa.scm:77 -#: guix/scripts/publish.scm:844 guix/scripts/edit.scm:81 +#: guix/scripts/import/cran.scm:82 guix/scripts/import/elpa.scm:85 +#: guix/scripts/publish.scm:881 guix/scripts/edit.scm:81 #, scheme-format msgid "~A: unrecognized option~%" msgstr "~A : option non reconnue~%" @@ -197,17 +315,22 @@ msgstr "" "Envisagez d'exécuter « guix pull » suivi de\n" "« ~a » pour obtenir des paquets à jour et des mises à jour de sécurité.\n" -#: guix/scripts/build.scm:124 +#: guix/scripts/build.scm:81 +#, scheme-format +msgid "cannot access build log at '~a':~%" +msgstr "aucun journal de compilation sur « ~a »~%" + +#: guix/scripts/build.scm:135 #, scheme-format msgid "failed to create GC root `~a': ~a~%" msgstr "impossible de créer la racine du GC « ~a » : ~a~%" -#: guix/scripts/build.scm:206 +#: guix/scripts/build.scm:237 #, scheme-format msgid "invalid replacement specification: ~s~%" msgstr "spécification de remplacement invalide : ~s~%" -#: guix/scripts/build.scm:263 +#: guix/scripts/build.scm:294 msgid "" "\n" " --with-source=SOURCE\n" @@ -217,7 +340,7 @@ msgstr "" " --with-source=SOURCE\n" " utiliser la SOURCE donnée pour compiler le paquet correspondant" -#: guix/scripts/build.scm:266 +#: guix/scripts/build.scm:297 msgid "" "\n" " --with-input=PACKAGE=REPLACEMENT\n" @@ -227,7 +350,7 @@ msgstr "" " --with-input=PAQUET=REMPLACEMENT\n" " remplacer le paquet de dépendance PAQUET par REMPLACEMENT" -#: guix/scripts/build.scm:269 +#: guix/scripts/build.scm:300 msgid "" "\n" " --with-graft=PACKAGE=REPLACEMENT\n" @@ -237,12 +360,12 @@ msgstr "" " --with-graft=PAQUET=REMPLACEMENT\n" " greffer le paquet REMPLACEMENT sur les paquets qui font référence à PAQUET" -#: guix/scripts/build.scm:294 +#: guix/scripts/build.scm:325 #, scheme-format msgid "transformation '~a' had no effect on ~a~%" msgstr "la transformation « ~a » n'a pas d'effet sur ~a~%" -#: guix/scripts/build.scm:312 +#: guix/scripts/build.scm:343 msgid "" "\n" " -L, --load-path=DIR prepend DIR to the package module search path" @@ -250,7 +373,7 @@ msgstr "" "\n" " -L, --load-path=REP préfixer le chemin de recherche par REP" -#: guix/scripts/build.scm:314 +#: guix/scripts/build.scm:345 msgid "" "\n" " -K, --keep-failed keep build tree of failed builds" @@ -258,7 +381,7 @@ msgstr "" "\n" " -K, --keep-failed garder l'arbre de compilation pour les compilations ayant échoué" -#: guix/scripts/build.scm:316 +#: guix/scripts/build.scm:347 msgid "" "\n" " -k, --keep-going keep going when some of the derivations fail" @@ -266,7 +389,7 @@ msgstr "" "\n" " -k, --keep-going continuer si certaines dérivations échouent" -#: guix/scripts/build.scm:318 +#: guix/scripts/build.scm:349 msgid "" "\n" " -n, --dry-run do not build the derivations" @@ -274,7 +397,7 @@ msgstr "" "\n" " -n, --dry-run ne pas compiler les dérivations" -#: guix/scripts/build.scm:320 +#: guix/scripts/build.scm:351 msgid "" "\n" " --fallback fall back to building when the substituter fails" @@ -282,7 +405,7 @@ msgstr "" "\n" " --fallback revenir à la compilation quand le substitut échoue" -#: guix/scripts/build.scm:322 +#: guix/scripts/build.scm:353 msgid "" "\n" " --no-substitutes build instead of resorting to pre-built substitutes" @@ -290,7 +413,7 @@ msgstr "" "\n" " --no-substitutes compiler plutôt que recourir à des substituts pré-compilés" -#: guix/scripts/build.scm:324 guix/scripts/size.scm:232 +#: guix/scripts/build.scm:355 guix/scripts/size.scm:232 msgid "" "\n" " --substitute-urls=URLS\n" @@ -300,7 +423,7 @@ msgstr "" " --substitute-urls=URLS\n" " récupérer les substituts depuis les URLS si elles sont autorisées" -#: guix/scripts/build.scm:327 +#: guix/scripts/build.scm:358 msgid "" "\n" " --no-grafts do not graft packages" @@ -308,7 +431,7 @@ msgstr "" "\n" " --no-grafts ne pas greffer les paquets" -#: guix/scripts/build.scm:329 +#: guix/scripts/build.scm:360 msgid "" "\n" " --no-build-hook do not attempt to offload builds via the build hook" @@ -316,7 +439,7 @@ msgstr "" "\n" " --no-build-hook ne pas essayer de décharger les compilations via le hook de compilation" -#: guix/scripts/build.scm:331 +#: guix/scripts/build.scm:362 msgid "" "\n" " --max-silent-time=SECONDS\n" @@ -326,7 +449,7 @@ msgstr "" " --max-silent-time=N\n" " marquer la compilation comme ayant échouée après N secondes de silence" -#: guix/scripts/build.scm:334 +#: guix/scripts/build.scm:365 msgid "" "\n" " --timeout=SECONDS mark the build as failed after SECONDS of activity" @@ -334,7 +457,7 @@ msgstr "" "\n" " --timeout=N marquer la compilation comme ayant échouée après N secondes d'activité" -#: guix/scripts/build.scm:336 +#: guix/scripts/build.scm:367 msgid "" "\n" " --verbosity=LEVEL use the given verbosity LEVEL" @@ -342,7 +465,7 @@ msgstr "" "\n" " --verbosity=NIVEAU utiliser le NIVEAU de verbosité donné" -#: guix/scripts/build.scm:338 +#: guix/scripts/build.scm:369 msgid "" "\n" " --rounds=N build N times in a row to detect non-determinism" @@ -350,7 +473,7 @@ msgstr "" "\n" " --rounds=N compiler N fois de suite pour détecter les non déterminismes" -#: guix/scripts/build.scm:340 +#: guix/scripts/build.scm:371 msgid "" "\n" " -c, --cores=N allow the use of up to N CPU cores for the build" @@ -358,7 +481,7 @@ msgstr "" "\n" " -c, --cores=N utiliser jusqu'à N cœurs CPU pour la compilation" -#: guix/scripts/build.scm:342 +#: guix/scripts/build.scm:373 msgid "" "\n" " -M, --max-jobs=N allow at most N build jobs" @@ -366,12 +489,12 @@ msgstr "" "\n" " -M, --max-jobs=N autoriser au plus N tâches de compilation" -#: guix/scripts/build.scm:448 guix/scripts/build.scm:455 +#: guix/scripts/build.scm:479 guix/scripts/build.scm:486 #, scheme-format msgid "not a number: '~a' option argument: ~a~%" msgstr "pas un nombre: argument d'option « ~a » : ~a~%" -#: guix/scripts/build.scm:474 +#: guix/scripts/build.scm:505 msgid "" "Usage: guix build [OPTION]... PACKAGE-OR-DERIVATION...\n" "Build the given PACKAGE-OR-DERIVATION and return their output paths.\n" @@ -379,7 +502,7 @@ msgstr "" "Usage: guix build [OPTION]... PAQUET-OU-DERIVATION...\n" "Compiler le PAQUET-OU-DERIVATION donné et retourner leurs chemins de sortie.\n" -#: guix/scripts/build.scm:476 +#: guix/scripts/build.scm:507 msgid "" "\n" " -e, --expression=EXPR build the package or derivation EXPR evaluates to" @@ -387,7 +510,7 @@ msgstr "" "\n" " -e, --expression=EXPR compiler le paquet ou la dérivation évalué par EXPR" -#: guix/scripts/build.scm:478 +#: guix/scripts/build.scm:509 msgid "" "\n" " -f, --file=FILE build the package or derivation that the code within\n" @@ -397,7 +520,7 @@ msgstr "" " -f, --file=FICHIER compiler le paquet ou la dérivation qui est évaluée\n" " par le code dans FICHIER" -#: guix/scripts/build.scm:481 +#: guix/scripts/build.scm:512 msgid "" "\n" " -S, --source build the packages' source derivations" @@ -405,7 +528,7 @@ msgstr "" "\n" " -S, --source compiler les dérivations de source du paquet" -#: guix/scripts/build.scm:483 +#: guix/scripts/build.scm:514 msgid "" "\n" " --sources[=TYPE] build source derivations; TYPE may optionally be one\n" @@ -415,7 +538,7 @@ msgstr "" " --sources[=TYPE] compiler les dérivations sources. TYPE peut optionnellement\n" " être « package », « all » (défaut) ou « transitive »" -#: guix/scripts/build.scm:486 guix/scripts/pack.scm:338 +#: guix/scripts/build.scm:517 guix/scripts/pack.scm:646 msgid "" "\n" " -s, --system=SYSTEM attempt to build for SYSTEM--e.g., \"i686-linux\"" @@ -423,7 +546,7 @@ msgstr "" "\n" " -s, --system=SYSTÈME essayer de compiler pour le SYSTÈME donné, par exemple « i686-linux »" -#: guix/scripts/build.scm:488 guix/scripts/pack.scm:340 +#: guix/scripts/build.scm:519 guix/scripts/pack.scm:648 msgid "" "\n" " --target=TRIPLET cross-build for TRIPLET--e.g., \"armel-linux-gnu\"" @@ -431,7 +554,7 @@ msgstr "" "\n" " --target=TRIPLET effectuer une compilation croisée pour TRIPLET, par exemple « armel-linux-gnu »" -#: guix/scripts/build.scm:490 +#: guix/scripts/build.scm:521 msgid "" "\n" " -d, --derivations return the derivation paths of the given packages" @@ -439,7 +562,7 @@ msgstr "" "\n" " -d, --derivations retourner les chemins de dérivation pour les paquets donnés" -#: guix/scripts/build.scm:492 +#: guix/scripts/build.scm:523 msgid "" "\n" " --check rebuild items to check for non-determinism issues" @@ -447,7 +570,7 @@ msgstr "" "\n" " --check recompiler les éléments pour détecter des problèmes de non déterminisme" -#: guix/scripts/build.scm:494 +#: guix/scripts/build.scm:525 msgid "" "\n" " --repair repair the specified items" @@ -455,7 +578,7 @@ msgstr "" "\n" " --repair réparer les éléments spécifiés" -#: guix/scripts/build.scm:496 +#: guix/scripts/build.scm:527 msgid "" "\n" " -r, --root=FILE make FILE a symlink to the result, and register it\n" @@ -465,7 +588,7 @@ msgstr "" " -r, --root=FICHIER faire de FICHIER un lien symbolique pointant sur le résultat\n" " et l'enregistrer en tant que racine du garbage collector" -#: guix/scripts/build.scm:499 +#: guix/scripts/build.scm:530 msgid "" "\n" " -q, --quiet do not show the build log" @@ -473,7 +596,7 @@ msgstr "" "\n" " -q, --quiet ne pas montrer le journal de compilation" -#: guix/scripts/build.scm:501 +#: guix/scripts/build.scm:532 msgid "" "\n" " --log-file return the log file names for the given derivations" @@ -481,16 +604,16 @@ msgstr "" "\n" " --log-file retourner les fichiers de journalisation pour les dérivations données" -#: guix/scripts/build.scm:508 guix/scripts/download.scm:83 -#: guix/scripts/package.scm:425 guix/scripts/gc.scm:74 +#: guix/scripts/build.scm:539 guix/scripts/download.scm:83 +#: guix/scripts/package.scm:395 guix/scripts/gc.scm:76 #: guix/scripts/hash.scm:59 guix/scripts/import.scm:92 -#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:110 -#: guix/scripts/substitute.scm:889 guix/scripts/system.scm:870 -#: guix/scripts/lint.scm:1090 guix/scripts/publish.scm:94 +#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:120 +#: guix/scripts/substitute.scm:879 guix/scripts/system.scm:993 +#: guix/scripts/lint.scm:1107 guix/scripts/publish.scm:94 #: guix/scripts/edit.scm:44 guix/scripts/size.scm:243 -#: guix/scripts/graph.scm:432 guix/scripts/challenge.scm:241 -#: guix/scripts/copy.scm:122 guix/scripts/pack.scm:349 -#: guix/scripts/weather.scm:156 guix/scripts/container.scm:33 +#: guix/scripts/graph.scm:466 guix/scripts/challenge.scm:241 +#: guix/scripts/copy.scm:122 guix/scripts/pack.scm:661 +#: guix/scripts/weather.scm:258 guix/scripts/container.scm:33 #: guix/scripts/container/exec.scm:43 msgid "" "\n" @@ -499,16 +622,16 @@ msgstr "" "\n" " -h, --help afficher cette aide et quitter" -#: guix/scripts/build.scm:510 guix/scripts/download.scm:85 -#: guix/scripts/package.scm:427 guix/scripts/gc.scm:76 +#: guix/scripts/build.scm:541 guix/scripts/download.scm:85 +#: guix/scripts/package.scm:397 guix/scripts/gc.scm:78 #: guix/scripts/hash.scm:61 guix/scripts/import.scm:94 -#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:112 -#: guix/scripts/substitute.scm:891 guix/scripts/system.scm:872 -#: guix/scripts/lint.scm:1094 guix/scripts/publish.scm:96 +#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:122 +#: guix/scripts/substitute.scm:881 guix/scripts/system.scm:995 +#: guix/scripts/lint.scm:1111 guix/scripts/publish.scm:96 #: guix/scripts/edit.scm:46 guix/scripts/size.scm:245 -#: guix/scripts/graph.scm:434 guix/scripts/challenge.scm:243 -#: guix/scripts/copy.scm:124 guix/scripts/pack.scm:351 -#: guix/scripts/weather.scm:158 guix/scripts/container.scm:35 +#: guix/scripts/graph.scm:468 guix/scripts/challenge.scm:243 +#: guix/scripts/copy.scm:124 guix/scripts/pack.scm:663 +#: guix/scripts/weather.scm:260 guix/scripts/container.scm:35 #: guix/scripts/container/exec.scm:45 msgid "" "\n" @@ -517,7 +640,7 @@ msgstr "" "\n" " -V, --version afficher les informations sur la version et quitter" -#: guix/scripts/build.scm:537 +#: guix/scripts/build.scm:568 #, scheme-format msgid "" "invalid argument: '~a' option argument: ~a, ~\n" @@ -526,22 +649,22 @@ msgstr "" "argument invalide: argument en option « ~a » : ~a, ~\n" "doit être « package », « all » ou « transitive »~%" -#: guix/scripts/build.scm:590 +#: guix/scripts/build.scm:621 #, scheme-format msgid "~s: not something we can build~%" msgstr "~s : pas quelque chose qu'on sait compiler~%" -#: guix/scripts/build.scm:644 +#: guix/scripts/build.scm:679 #, scheme-format msgid "~a: warning: package '~a' has no source~%" msgstr "~a : attention : le paquet « ~a » n'a pas de source~%" -#: guix/scripts/build.scm:678 +#: guix/scripts/build.scm:713 #, scheme-format msgid "no build log for '~a'~%" msgstr "aucun journal de compilation pour « ~a »~%" -#: guix/discovery.scm:88 +#: guix/discovery.scm:90 #, scheme-format msgid "cannot access `~a': ~a~%" msgstr "impossible d'accéder à « ~a » : ~a~%" @@ -594,8 +717,8 @@ msgstr "" msgid "unsupported hash format: ~a~%" msgstr "format d'empreinte non supporté : ~a~%" -#: guix/scripts/download.scm:138 guix/scripts/package.scm:906 -#: guix/scripts/publish.scm:846 +#: guix/scripts/download.scm:138 guix/scripts/package.scm:884 +#: guix/scripts/publish.scm:883 #, scheme-format msgid "~A: extraneous argument~%" msgstr "~A : argument superflu~%" @@ -615,70 +738,70 @@ msgstr "~a : impossible d'évaluer l'URI~%" msgid "~a: download failed~%" msgstr "~a : le téléchargement a échoué~%" -#: guix/scripts/package.scm:112 +#: guix/scripts/package.scm:72 #, scheme-format msgid "Try \"info '(guix) Invoking guix package'\" for more information.~%" msgstr "Essayez « info '(guix) Invoking guix package' » pour plus d'information.~%" -#: guix/scripts/package.scm:134 +#: guix/scripts/package.scm:94 #, scheme-format msgid "error: while creating directory `~a': ~a~%" msgstr "erreur : pendant la création du répertoire « ~a » : ~a~%" -#: guix/scripts/package.scm:138 +#: guix/scripts/package.scm:98 #, scheme-format msgid "Please create the `~a' directory, with you as the owner.~%" msgstr "Veuillez créer le répertoire « ~a » dont vous êtes le propriétaire.~%" -#: guix/scripts/package.scm:145 +#: guix/scripts/package.scm:105 #, scheme-format msgid "error: directory `~a' is not owned by you~%" msgstr "erreur : vous ne possédez pas le répertoire « ~a »~%" -#: guix/scripts/package.scm:148 +#: guix/scripts/package.scm:108 #, scheme-format msgid "Please change the owner of `~a' to user ~s.~%" msgstr "Veuillez définir ~s comme propriétaire de « ~a ».~%" -#: guix/scripts/package.scm:183 +#: guix/scripts/package.scm:143 #, scheme-format msgid "not removing generation ~a, which is current~%" msgstr "la génération ~a n'est pas supprimée car elle est actuelle~%" -#: guix/scripts/package.scm:190 +#: guix/scripts/package.scm:150 #, scheme-format msgid "no matching generation~%" msgstr "aucune génération correspondante~%" -#: guix/scripts/package.scm:193 guix/scripts/package.scm:716 -#: guix/scripts/system.scm:558 +#: guix/scripts/package.scm:153 guix/scripts/package.scm:690 +#: guix/scripts/system.scm:593 #, scheme-format msgid "invalid syntax: ~a~%" msgstr "syntaxe non valide : ~a~%" -#: guix/scripts/package.scm:219 +#: guix/scripts/package.scm:182 #, scheme-format msgid "nothing to be done~%" msgstr "aucune action à faire~%" -#: guix/scripts/package.scm:233 +#: guix/scripts/package.scm:196 #, scheme-format msgid "~a package in profile~%" msgid_plural "~a packages in profile~%" msgstr[0] "~a paquet dans le profile~%" msgstr[1] "~a paquets dans le profile~%" -#: guix/scripts/package.scm:313 +#: guix/scripts/package.scm:280 #, scheme-format msgid "package '~a' no longer exists~%" msgstr "le paquet « ~a » n'existe plus~%" -#: guix/scripts/package.scm:351 +#: guix/scripts/package.scm:318 #, scheme-format msgid "The following environment variable definitions may be needed:~%" msgstr "Il pourrait être nécessaire de définir les variables d'environnement suivantes :~%" -#: guix/scripts/package.scm:366 +#: guix/scripts/package.scm:334 msgid "" "Usage: guix package [OPTION]...\n" "Install, remove, or upgrade packages in a single transaction.\n" @@ -686,7 +809,7 @@ msgstr "" "Usage : guix package [OPTION]...\n" "Installer, supprimer ou mettre à jour les paquets en une seule transaction.\n" -#: guix/scripts/package.scm:368 +#: guix/scripts/package.scm:336 msgid "" "\n" " -i, --install PACKAGE ...\n" @@ -696,7 +819,7 @@ msgstr "" " -i, --install=PAQUET ...\n" " installer les PAQUETs" -#: guix/scripts/package.scm:371 +#: guix/scripts/package.scm:339 msgid "" "\n" " -e, --install-from-expression=EXP\n" @@ -706,7 +829,7 @@ msgstr "" " -e, --install-from-expression=EXP\n" " installer le paquet évalué par EXP" -#: guix/scripts/package.scm:374 +#: guix/scripts/package.scm:342 msgid "" "\n" " -f, --install-from-file=FILE\n" @@ -718,7 +841,7 @@ msgstr "" " installer le paquet évalué par le code dans\n" " FICHIER" -#: guix/scripts/package.scm:378 +#: guix/scripts/package.scm:346 msgid "" "\n" " -r, --remove PACKAGE ...\n" @@ -728,7 +851,7 @@ msgstr "" " -r, --remove=PAQUET ...\n" " supprimer les PAQUETs" -#: guix/scripts/package.scm:381 +#: guix/scripts/package.scm:349 msgid "" "\n" " -u, --upgrade[=REGEXP] upgrade all the installed packages matching REGEXP" @@ -736,7 +859,7 @@ msgstr "" "\n" " -u, --upgrade[=REGEXP] mettre à jour tous les paquets installés correspondant à REGEXP" -#: guix/scripts/package.scm:383 +#: guix/scripts/package.scm:351 msgid "" "\n" " -m, --manifest=FILE create a new profile generation with the manifest\n" @@ -746,7 +869,7 @@ msgstr "" " -m, --manifest=FICHIER créer une nouvelle génération de profil avec le\n" " manifeste dans FICHIER" -#: guix/scripts/package.scm:386 +#: guix/scripts/package.scm:354 msgid "" "\n" " --do-not-upgrade[=REGEXP] do not upgrade any packages matching REGEXP" @@ -754,7 +877,7 @@ msgstr "" "\n" " --do-not-upgrade[=REGEXP] ne pas mettre à jour les paquets correspondant à REGEXP" -#: guix/scripts/package.scm:388 +#: guix/scripts/package.scm:356 msgid "" "\n" " --roll-back roll back to the previous generation" @@ -762,7 +885,7 @@ msgstr "" "\n" " --roll-back revenir à la génération antérieure" -#: guix/scripts/package.scm:390 +#: guix/scripts/package.scm:358 msgid "" "\n" " --search-paths[=KIND]\n" @@ -772,7 +895,7 @@ msgstr "" " --search-paths=[GENRE]\n" " afficher les définitions de variables d'environnement requises" -#: guix/scripts/package.scm:393 +#: guix/scripts/package.scm:361 guix/scripts/pull.scm:113 msgid "" "\n" " -l, --list-generations[=PATTERN]\n" @@ -782,7 +905,7 @@ msgstr "" " -l, --list-generations[=MOTIF]\n" " lister les générations correspondant à MOTIF" -#: guix/scripts/package.scm:396 +#: guix/scripts/package.scm:364 msgid "" "\n" " -d, --delete-generations[=PATTERN]\n" @@ -792,7 +915,7 @@ msgstr "" " -d, --delete-generations[=MOTIF]\n" " supprimer les générations correspondant à MOTIF" -#: guix/scripts/package.scm:399 +#: guix/scripts/package.scm:367 msgid "" "\n" " -S, --switch-generation=PATTERN\n" @@ -802,7 +925,7 @@ msgstr "" " -S, --switch-generation=MOTIF\n" " basculer vers une génération correspondant à MOTIF" -#: guix/scripts/package.scm:402 +#: guix/scripts/package.scm:370 msgid "" "\n" " -p, --profile=PROFILE use PROFILE instead of the user's default profile" @@ -810,7 +933,15 @@ msgstr "" "\n" " -p, --profile=PROFIL utiliser PROFIL au lieu du profil par défaut de l'utilisateur" -#: guix/scripts/package.scm:405 +#: guix/scripts/package.scm:373 +msgid "" +"\n" +" --allow-collisions do not treat collisions in the profile as an error" +msgstr "" +"\n" +" --allow-collisions ne pas traiter les collisions dans le profil comme une erreur" + +#: guix/scripts/package.scm:375 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the profile" @@ -818,7 +949,7 @@ msgstr "" "\n" " --bootstrap utiliser le programme d'amorçage Guile pour compiler le profil" -#: guix/scripts/package.scm:407 guix/scripts/pull.scm:98 +#: guix/scripts/package.scm:377 guix/scripts/pull.scm:105 msgid "" "\n" " --verbose produce verbose output" @@ -826,7 +957,7 @@ msgstr "" "\n" " --verbose produire une sortie verbeuse" -#: guix/scripts/package.scm:410 +#: guix/scripts/package.scm:380 msgid "" "\n" " -s, --search=REGEXP search in synopsis and description using REGEXP" @@ -834,7 +965,7 @@ msgstr "" "\n" " -s, --search=REGEXP chercher dans le synopsis et la description en utilisant REGEXP" -#: guix/scripts/package.scm:412 +#: guix/scripts/package.scm:382 msgid "" "\n" " -I, --list-installed[=REGEXP]\n" @@ -844,7 +975,7 @@ msgstr "" " -I, --list-installed[=REGEXP]\n" " lister les paquets installés correspondant à REGEXP" -#: guix/scripts/package.scm:415 +#: guix/scripts/package.scm:385 msgid "" "\n" " -A, --list-available[=REGEXP]\n" @@ -854,7 +985,7 @@ msgstr "" " -A, --list-available[=REGEXP]\n" " lister les paquets disponibles correspondant à REGEXP" -#: guix/scripts/package.scm:418 +#: guix/scripts/package.scm:388 msgid "" "\n" " --show=PACKAGE show details about PACKAGE" @@ -862,32 +993,32 @@ msgstr "" "\n" " --show=PAQUET montrer des détails du PAQUET" -#: guix/scripts/package.scm:470 +#: guix/scripts/package.scm:440 #, scheme-format msgid "upgrade regexp '~a' looks like a command-line option~%" msgstr "l'expression régulière « ~a » ressemble à une option de la ligne de commande~%" -#: guix/scripts/package.scm:473 +#: guix/scripts/package.scm:443 #, scheme-format msgid "is this intended?~%" msgstr "est-ce intentionnel ?~%" -#: guix/scripts/package.scm:518 +#: guix/scripts/package.scm:488 #, scheme-format msgid "~a: unsupported kind of search path~%" msgstr "~a : type de chemin de recherche non supporté~%" -#: guix/scripts/package.scm:815 +#: guix/scripts/package.scm:789 #, scheme-format msgid "cannot switch to generation '~a'~%" msgstr "impossible de passer à la génération « ~a »~%" -#: guix/scripts/package.scm:831 +#: guix/scripts/package.scm:806 #, scheme-format msgid "would install new manifest from '~a' with ~d entries~%" msgstr "installerait le nouveau manifeste depuis « ~a » avec ~d entrées~%" -#: guix/scripts/package.scm:833 +#: guix/scripts/package.scm:808 #, scheme-format msgid "installing new manifest from '~a' with ~d entries~%" msgstr "installation du nouveau manifeste depuis « ~a » avec ~d entrées~%" @@ -974,7 +1105,15 @@ msgstr "" "\n" " --referrers lister les référents de CHEMINS" -#: guix/scripts/gc.scm:65 +#: guix/scripts/gc.scm:64 +msgid "" +"\n" +" --derivers list the derivers of PATHS" +msgstr "" +"\n" +" --derivers lister les dérivations menant à CHEMINS" + +#: guix/scripts/gc.scm:67 msgid "" "\n" " --verify[=OPTS] verify the integrity of the store; OPTS is a\n" @@ -986,7 +1125,7 @@ msgstr "" " combinaison de « repair » et « contents » séparés\n" " par une virgule" -#: guix/scripts/gc.scm:69 +#: guix/scripts/gc.scm:71 msgid "" "\n" " --list-failures list cached build failures" @@ -994,7 +1133,7 @@ msgstr "" "\n" " --list-failures lister les échecs de compilation en cache" -#: guix/scripts/gc.scm:71 +#: guix/scripts/gc.scm:73 msgid "" "\n" " --clear-failures remove PATHS from the set of cached failures" @@ -1002,25 +1141,30 @@ msgstr "" "\n" " --clear-failures supprimer CHEMINS de l'ensemble des échecs en cache" -#: guix/scripts/gc.scm:100 +#: guix/scripts/gc.scm:87 +#, scheme-format +msgid "~a: invalid '--verify' option~%" +msgstr "~a : option « --verify » invalide~%" + +#: guix/scripts/gc.scm:117 #, scheme-format msgid "invalid amount of storage: ~a~%" msgstr "quantité de stockage non valide : ~a~%" -#: guix/scripts/gc.scm:185 +#: guix/scripts/gc.scm:202 msgid "already ~h bytes available on ~a, nothing to do~%" msgstr "déjà ~h octets disponibles sur ~a, rien à faire~%" -#: guix/scripts/gc.scm:188 +#: guix/scripts/gc.scm:205 msgid "freeing ~h bytes~%" msgstr "libération de ~h octets~%" -#: guix/scripts/gc.scm:200 +#: guix/scripts/gc.scm:217 #, scheme-format msgid "extraneous arguments: ~{~a ~}~%" msgstr "arguments superflus : ~{~a ~}~%" -#: guix/scripts/gc.scm:220 guix/scripts/gc.scm:223 +#: guix/scripts/gc.scm:237 guix/scripts/gc.scm:240 msgid "freed ~h bytes~%" msgstr "~h octets libérés~%" @@ -1054,13 +1198,13 @@ msgstr "" "\n" " -r, --recursive calculer l'empreinte de FICHIER de manière récursive" -#: guix/scripts/hash.scm:150 guix/ui.scm:326 guix/ui.scm:601 guix/ui.scm:654 +#: guix/scripts/hash.scm:150 guix/ui.scm:365 guix/ui.scm:706 guix/ui.scm:759 #, scheme-format msgid "~a~%" msgstr "~a~%" -#: guix/scripts/hash.scm:153 guix/scripts/system.scm:1022 -#: guix/scripts/system.scm:1031 guix/scripts/system.scm:1038 +#: guix/scripts/hash.scm:153 guix/scripts/system.scm:1161 +#: guix/scripts/system.scm:1170 guix/scripts/system.scm:1177 #, scheme-format msgid "wrong number of arguments~%" msgstr "nombre d'arguments incorrect~%" @@ -1108,22 +1252,22 @@ msgstr "" "\n" " -a, --archive=ARCHIVE spécifier le dépôt de l'archive" -#: guix/scripts/import/cran.scm:108 +#: guix/scripts/import/cran.scm:110 #, scheme-format msgid "failed to download description for package '~a'~%" msgstr "échec lors du téléchargement de la description du paquet « ~a »~%" -#: guix/scripts/import/cran.scm:112 guix/scripts/import/elpa.scm:95 +#: guix/scripts/import/cran.scm:114 guix/scripts/import/elpa.scm:113 #, scheme-format msgid "too few arguments~%" msgstr "trop peu d'arguments~%" -#: guix/scripts/import/cran.scm:114 guix/scripts/import/elpa.scm:97 +#: guix/scripts/import/cran.scm:116 guix/scripts/import/elpa.scm:115 #, scheme-format msgid "too many arguments~%" msgstr "trop d'arguments~%" -#: guix/scripts/import/elpa.scm:41 +#: guix/scripts/import/elpa.scm:44 msgid "" "Usage: guix import elpa PACKAGE-NAME\n" "Import the latest package named PACKAGE-NAME from an ELPA repository.\n" @@ -1131,7 +1275,7 @@ msgstr "" "Usage : guix import elpa NOM-DU-PAQUET\n" "Importer le dernier paquet nommé NOM-DU-PAQUET d'un dépôt ELPA.\n" -#: guix/scripts/import/elpa.scm:43 +#: guix/scripts/import/elpa.scm:46 msgid "" "\n" " -a, --archive=ARCHIVE specify the archive repository" @@ -1139,7 +1283,7 @@ msgstr "" "\n" " -a, --archive=ARCHIVE spécifier le dépôt de l'archive" -#: guix/scripts/import/elpa.scm:45 +#: guix/scripts/import/elpa.scm:48 msgid "" "\n" " -h, --help display this help and exit" @@ -1147,7 +1291,15 @@ msgstr "" "\n" " -h, --help afficher cette aide et quitter" -#: guix/scripts/import/elpa.scm:47 +#: guix/scripts/import/elpa.scm:50 +msgid "" +"\n" +" -r, --recursive generate package expressions for all Emacs packages that are not yet in Guix" +msgstr "" +"\n" +" -r, --recursive générer des expressions de paquets pour tous les paquets Emacs qui ne sont pas encore dans Guix" + +#: guix/scripts/import/elpa.scm:52 msgid "" "\n" " -V, --version display version information and exit" @@ -1155,12 +1307,12 @@ msgstr "" "\n" " -V, --version afficher les informations sur la version et quitter" -#: guix/scripts/import/elpa.scm:92 +#: guix/scripts/import/elpa.scm:110 #, scheme-format msgid "failed to download package '~a'~%" msgstr "échec lors du téléchargement du paquet « ~a »~%" -#: guix/scripts/pull.scm:60 +#: guix/scripts/pull.scm:66 #, scheme-format msgid "" "Guile-Git is missing but it is now required by 'guix pull'.\n" @@ -1179,7 +1331,7 @@ msgstr "" " export GUILE_LOAD_COMPILED_PATH=$HOME/.guix-profile/lib/guile/~a/site-ccache:$GUILE_LOAD_COMPILED_PATH\n" "\n" -#: guix/scripts/pull.scm:96 +#: guix/scripts/pull.scm:103 msgid "" "Usage: guix pull [OPTION]...\n" "Download and deploy the latest version of Guix.\n" @@ -1187,7 +1339,7 @@ msgstr "" "Usage : guix pull [OPTION]...\n" "Télécharger et déployer la dernière version de Guix.\n" -#: guix/scripts/pull.scm:100 +#: guix/scripts/pull.scm:107 msgid "" "\n" " --url=URL download from the Git repository at URL" @@ -1195,7 +1347,7 @@ msgstr "" "\n" " --url=URL télécharger le dépôt Git depuis URL" -#: guix/scripts/pull.scm:102 +#: guix/scripts/pull.scm:109 msgid "" "\n" " --commit=COMMIT download the specified COMMIT" @@ -1203,7 +1355,7 @@ msgstr "" "\n" " --commit=COMMIT télécharger le COMMIT indiqué" -#: guix/scripts/pull.scm:104 +#: guix/scripts/pull.scm:111 msgid "" "\n" " --branch=BRANCH download the tip of the specified BRANCH" @@ -1211,7 +1363,7 @@ msgstr "" "\n" " --branch=BRANCHE télécharger le bout de la BRANCHE indiquée" -#: guix/scripts/pull.scm:106 +#: guix/scripts/pull.scm:116 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the new Guix" @@ -1219,46 +1371,47 @@ msgstr "" "\n" " --bootstrap utiliser le programme d'amorçage Guile pour compiler le nouveau Guix" -#: guix/scripts/pull.scm:192 -msgid "Guix already up to date\n" -msgstr "Guix est déjà à jour\n" - -#: guix/scripts/pull.scm:197 -#, scheme-format -msgid "updated ~a successfully deployed under `~a'~%" -msgstr "~a a été mis à jour et déployé avec succès sous « ~a »~%" - -#: guix/scripts/pull.scm:200 -#, scheme-format -msgid "failed to update Guix, check the build log~%" -msgstr "échec de la mise à jour de Guix ; consultez le journal de compilation~%" - -#: guix/scripts/pull.scm:216 +#: guix/scripts/pull.scm:263 #, scheme-format msgid "cannot enforce use of the Let's Encrypt certificates~%" msgstr "impossible d'imposer l'utilisation des certificats Let's Encrypt~%" -#: guix/scripts/pull.scm:218 +#: guix/scripts/pull.scm:265 #, scheme-format msgid "please upgrade Guile-Git~%" msgstr "veuillez mettre à jour Guile-Git~%" -#: guix/scripts/pull.scm:226 +#: guix/scripts/pull.scm:273 #, scheme-format msgid "Git error ~a~%" msgstr "Erreur Git : ~a~%" -#: guix/scripts/pull.scm:228 +#: guix/scripts/pull.scm:275 #, scheme-format msgid "Git error: ~a~%" msgstr "Erreur Git : ~a~%" -#: guix/scripts/pull.scm:262 +#: guix/scripts/pull.scm:302 +#, scheme-format +msgid " repository URL: ~a~%" +msgstr " URL du répertoire : ~a~%" + +#: guix/scripts/pull.scm:304 +#, scheme-format +msgid " branch: ~a~%" +msgstr " branche: ~a~%" + +#: guix/scripts/pull.scm:305 +#, scheme-format +msgid " commit: ~a~%" +msgstr " commit : ~a~%" + +#: guix/scripts/pull.scm:373 #, scheme-format msgid "Updating from Git repository at '~a'...~%" msgstr "Mise à jour depuis le dépôt Git « ~a »...~%" -#: guix/scripts/pull.scm:271 +#: guix/scripts/pull.scm:383 #, scheme-format msgid "Building from Git commit ~a...~%" msgstr "Construction depuis le commit Git « ~a »...~%" @@ -1283,92 +1436,92 @@ msgstr "pendant la récupération de ~a : le serveur est plutôt lent~%" msgid "try `--no-substitutes' if the problem persists~%" msgstr "essayez l'option « --no-substitutes » si le problème persiste~%" -#: guix/scripts/substitute.scm:233 +#: guix/scripts/substitute.scm:225 #, scheme-format msgid "unsupported substitute URI scheme: ~a~%" msgstr "schéma de substitution URI non supporté : ~a~%" -#: guix/scripts/substitute.scm:268 +#: guix/scripts/substitute.scm:260 #, scheme-format msgid "while fetching '~a': ~a (~s)~%" msgstr "pendant la récupération de « ~a » : ~a (~s)~%" -#: guix/scripts/substitute.scm:273 +#: guix/scripts/substitute.scm:265 #, scheme-format msgid "ignoring substitute server at '~s'~%" msgstr "ignore le serveur de substitution à « ~s »~%" -#: guix/scripts/substitute.scm:323 +#: guix/scripts/substitute.scm:315 #, scheme-format msgid "signature version must be a number: ~s~%" msgstr "la version de la signature doit être un nombre: ~s~%" -#: guix/scripts/substitute.scm:327 +#: guix/scripts/substitute.scm:319 #, scheme-format msgid "unsupported signature version: ~a~%" msgstr "version de signature non supportée : ~a~%" -#: guix/scripts/substitute.scm:335 +#: guix/scripts/substitute.scm:327 #, scheme-format msgid "signature is not a valid s-expression: ~s~%" msgstr "la signature n'est pas une s-expression valide : ~s~%" -#: guix/scripts/substitute.scm:339 +#: guix/scripts/substitute.scm:331 #, scheme-format msgid "invalid format of the signature field: ~a~%" msgstr "format invalide du champ de signature : ~a~%" -#: guix/scripts/substitute.scm:374 +#: guix/scripts/substitute.scm:366 #, scheme-format msgid "invalid signature for '~a'~%" msgstr "signature non valide pour « ~a »~%" -#: guix/scripts/substitute.scm:376 +#: guix/scripts/substitute.scm:368 #, scheme-format msgid "hash mismatch for '~a'~%" msgstr "l'empreinte ne correspond pas pour « ~a »~%" -#: guix/scripts/substitute.scm:378 +#: guix/scripts/substitute.scm:370 #, scheme-format msgid "'~a' is signed with an unauthorized key~%" msgstr "« ~a » est signé avec une clé non autorisée~%" -#: guix/scripts/substitute.scm:380 +#: guix/scripts/substitute.scm:372 #, scheme-format msgid "signature on '~a' is corrupt~%" msgstr "la signature de « ~a » est corrompue~%" -#: guix/scripts/substitute.scm:465 +#: guix/scripts/substitute.scm:457 #, scheme-format msgid "'~a' does not name a store item~%" msgstr "« ~a » ne nomme pas un élément du stockage~%" -#: guix/scripts/substitute.scm:629 +#: guix/scripts/substitute.scm:619 #, scheme-format -msgid "updating list of substitutes from '~a'... ~5,1f%" -msgstr "mise à jour de la liste des substituts depuis « ~a »... ~5,1f%" +msgid "updating substitutes from '~a'... ~5,1f%" +msgstr "mise à jour des substituts depuis « ~a »... ~5,1f%" -#: guix/scripts/substitute.scm:693 +#: guix/scripts/substitute.scm:683 #, scheme-format msgid "~s: unsupported server URI scheme~%" msgstr "~s : schéma de URI serveur non supporté~%" -#: guix/scripts/substitute.scm:703 +#: guix/scripts/substitute.scm:693 #, scheme-format msgid "'~a' uses different store '~a'; ignoring it~%" msgstr "« ~a » utilise un stockage « ~a » différent. Il est ignoré~%" -#: guix/scripts/substitute.scm:863 +#: guix/scripts/substitute.scm:853 #, scheme-format msgid "host name lookup error: ~a~%" msgstr "erreur lors de la consultation du nom d'hôte : ~a~%" -#: guix/scripts/substitute.scm:868 +#: guix/scripts/substitute.scm:858 #, scheme-format msgid "TLS error in procedure '~a': ~a~%" msgstr "Erreur TLS dans la procédure « ~a » : ~a~%" -#: guix/scripts/substitute.scm:879 +#: guix/scripts/substitute.scm:869 msgid "" "Usage: guix substitute [OPTION]...\n" "Internal tool to substitute a pre-built binary to a local build.\n" @@ -1376,7 +1529,7 @@ msgstr "" "Usage : guix substitute [OPTION]...\n" "Outil interne pour substituer un binaire pré-compilé à une compilation locale.\n" -#: guix/scripts/substitute.scm:881 +#: guix/scripts/substitute.scm:871 msgid "" "\n" " --query report on the availability of substitutes for the\n" @@ -1387,7 +1540,7 @@ msgstr "" " noms de fichiers de dépôt passés sur l'entrée\n" " standard" -#: guix/scripts/substitute.scm:884 +#: guix/scripts/substitute.scm:874 msgid "" "\n" " --substitute STORE-FILE DESTINATION\n" @@ -1399,26 +1552,26 @@ msgstr "" " télécharger FICHIER-DÉPÔT et l'enregistrer comme un Nar\n" " dans le fichier DESTINATION" -#: guix/scripts/substitute.scm:949 +#: guix/scripts/substitute.scm:939 #, scheme-format msgid "no valid substitute for '~a'~%" msgstr "pas de substitut valide pour « ~a »~%" -#: guix/scripts/substitute.scm:956 +#: guix/scripts/substitute.scm:946 #, scheme-format msgid "Downloading ~a...~%" msgstr "Téléchargement de « ~a »...~%" -#: guix/scripts/substitute.scm:1012 +#: guix/scripts/substitute.scm:1002 msgid "ACL for archive imports seems to be uninitialized, substitutes may be unavailable\n" msgstr "L'ACL pour l'import d'archives ne semble pas initialisée ; les substituts pourraient être indisponibles\n" -#: guix/scripts/substitute.scm:1066 +#: guix/scripts/substitute.scm:1056 #, scheme-format msgid "~a: invalid URI~%" msgstr "~a : URI invalide~%" -#: guix/scripts/substitute.scm:1126 +#: guix/scripts/substitute.scm:1116 #, scheme-format msgid "~a: unrecognized options~%" msgstr "~a : options non reconnues~%" @@ -1457,151 +1610,178 @@ msgstr "" msgid "wrong arguments" msgstr "mauvais arguments" -#: guix/scripts/system.scm:135 +#: guix/scripts/system.scm:143 #, scheme-format msgid "failed to register '~a' under '~a'~%" msgstr "impossible d'enregistrer « ~a » sous « ~a »~%" -#: guix/scripts/system.scm:174 +#: guix/scripts/system.scm:154 +#, scheme-format +msgid "copying to '~a'..." +msgstr "copie vers « ~a »..." + +#: guix/scripts/system.scm:189 #, scheme-format msgid "failed to install bootloader ~a~%" msgstr "impossible d'installer le chargeur de démarrage : ~a~%" -#: guix/scripts/system.scm:194 +#: guix/scripts/system.scm:209 #, scheme-format msgid "initializing the current root file system~%" msgstr "initialisation du système de fichier racine courant~%" -#: guix/scripts/system.scm:208 +#: guix/scripts/system.scm:223 #, scheme-format msgid "not running as 'root', so the ownership of '~a' may be incorrect!~%" msgstr "n'est pas exécuté en tant que « root » donc le propriétaire de « ~a » pourrait être incorrect !~%" -#: guix/scripts/system.scm:253 +#: guix/scripts/system.scm:268 #, scheme-format msgid "while talking to shepherd: ~a~%" msgstr "en parlant au shepherd : ~a~%" -#: guix/scripts/system.scm:260 +#: guix/scripts/system.scm:275 #, scheme-format msgid "service '~a' could not be found~%" msgstr "service: « ~a » introuvable~%" -#: guix/scripts/system.scm:263 +#: guix/scripts/system.scm:278 #, scheme-format msgid "service '~a' does not have an action '~a'~%" msgstr "le service « ~a » n'a pas d'action « ~a »~%" -#: guix/scripts/system.scm:267 +#: guix/scripts/system.scm:282 #, scheme-format msgid "exception caught while executing '~a' on service '~a':~%" msgstr "exception interceptée pendant l'exécution de « ~a » sur le service « ~a »:~%" -#: guix/scripts/system.scm:275 +#: guix/scripts/system.scm:290 #, scheme-format msgid "something went wrong: ~s~%" msgstr "quelque chose s'est mal passé : ~s~%" -#: guix/scripts/system.scm:278 +#: guix/scripts/system.scm:293 #, scheme-format msgid "shepherd error~%" msgstr "erreur du shepherd~%" -#: guix/scripts/system.scm:295 +#: guix/scripts/system.scm:310 #, scheme-format msgid "failed to obtain list of shepherd services~%" msgstr "erreur en essayant d'obtenir la liste des services du shepherd~%" -#: guix/scripts/system.scm:315 +#: guix/scripts/system.scm:330 #, scheme-format msgid "unloading service '~a'...~%" msgstr "déchargement du service « ~a »...~%" -#: guix/scripts/system.scm:323 +#: guix/scripts/system.scm:338 #, scheme-format msgid "loading new services:~{ ~a~}...~%" msgstr "chargement des nouveaux services :~{ ~a~}...~%" -#: guix/scripts/system.scm:347 +#: guix/scripts/system.scm:364 #, scheme-format msgid "activating system...~%" msgstr "activation du système...~%" -#: guix/scripts/system.scm:423 +#: guix/scripts/system.scm:442 #, scheme-format msgid "cannot switch to system generation '~a'~%" msgstr "impossible de passer à la génération « ~a » du système~%" -#: guix/scripts/system.scm:494 +#: guix/scripts/system.scm:513 msgid "the DAG of services" msgstr "le graphe orienté acyclique (DAG) des services" -#: guix/scripts/system.scm:507 +#: guix/scripts/system.scm:526 msgid "the dependency graph of shepherd services" msgstr "le graphique des dépendances des services du shepherd" -#: guix/scripts/system.scm:531 +#: guix/scripts/system.scm:550 #, scheme-format msgid " file name: ~a~%" msgstr " nom de fichier: ~a~%" -#: guix/scripts/system.scm:532 +#: guix/scripts/system.scm:551 #, scheme-format msgid " canonical file name: ~a~%" msgstr " nom de fichier canonique : ~a~%" #. TRANSLATORS: Please preserve the two-space indentation. -#: guix/scripts/system.scm:534 +#: guix/scripts/system.scm:553 #, scheme-format msgid " label: ~a~%" msgstr " étiquette : ~a~%" -#: guix/scripts/system.scm:535 +#: guix/scripts/system.scm:554 #, scheme-format msgid " bootloader: ~a~%" msgstr " chargeur de démarrage : ~a~%" -#: guix/scripts/system.scm:536 +#. TRANSLATORS: The '~[', '~;', and '~]' sequences in this string must +#. be preserved. They denote conditionals, such that the result will +#. look like: +#. root device: UUID: 12345-678 +#. or: +#. root device: label: "my-root" +#. or just: +#. root device: /dev/sda3 +#: guix/scripts/system.scm:564 #, scheme-format -msgid " root device: ~a~%" -msgstr " périphérique racine : ~a~%" +msgid " root device: ~[UUID: ~a~;label: ~s~;~a~]~%" +msgstr " périphérique racine : ~[UUID : ~a~;étiquette : ~s~;~a~]~%" -#: guix/scripts/system.scm:540 +#: guix/scripts/system.scm:575 #, scheme-format msgid " kernel: ~a~%" msgstr " noyau : ~a~%" -#: guix/scripts/system.scm:600 +#: guix/scripts/system.scm:646 +#, scheme-format +msgid "~a: error: device '~a' not found: ~a~%" +msgstr "~a : erreur : périphérique « ~a » non trouvé : ~a~%" + +#: guix/scripts/system.scm:650 +#, scheme-format +msgid "" +"If '~a' is a file system\n" +"label, write @code{(file-system-label ~s)} in your @code{device} field." +msgstr "" +"Si « ~a » est une étiquette de système de fichiers, écrivez\n" +"@code{(file-system-label ~s)} dans votre champ @code{device}." + +#: guix/scripts/system.scm:658 #, scheme-format msgid "~a: error: file system with label '~a' not found~%" msgstr "~a : erreur : le système de fichier étiqueté « ~a » est introuvable~%" -#: guix/scripts/system.scm:606 +#: guix/scripts/system.scm:663 #, scheme-format msgid "~a: error: file system with UUID '~a' not found~%" msgstr "~a : erreur : le système de fichier avec l'UUID « ~a » est introuvable~%" -#: guix/scripts/system.scm:658 +#: guix/scripts/system.scm:764 #, scheme-format msgid "~a not found: 'guix pull' was never run~%" msgstr "~a pas trouvé : « guix pull » n'a jamais été exécuté~%" -#: guix/scripts/system.scm:659 +#: guix/scripts/system.scm:765 #, scheme-format msgid "Consider running 'guix pull' before 'reconfigure'.~%" msgstr "Envisagez d'exécuter « guix pull » avant « reconfigure ».~%" -#: guix/scripts/system.scm:660 +#: guix/scripts/system.scm:766 #, scheme-format msgid "Failing to do that may downgrade your system!~%" msgstr "Si vous ne le faites pas, votre système pourrait être amené à une version inférieure !~%" -#: guix/scripts/system.scm:767 +#: guix/scripts/system.scm:883 #, scheme-format msgid "initializing operating system under '~a'...~%" msgstr "initialisation du système d'exploitation sous « ~a »...~%" -#: guix/scripts/system.scm:812 +#: guix/scripts/system.scm:928 msgid "" "Usage: guix system [OPTION ...] ACTION [ARG ...] [FILE]\n" "Build the operating system declared in FILE according to ACTION.\n" @@ -1611,63 +1791,67 @@ msgstr "" "Compiler le système d'exploitation déclaré dans FICHER en suivant ACTION.\n" "Certaines ACTIONS supportent des ARGUMENTS supplémentaires.\n" -#: guix/scripts/system.scm:816 guix/scripts/container.scm:28 +#: guix/scripts/system.scm:932 guix/scripts/container.scm:28 msgid "The valid values for ACTION are:\n" msgstr "Les valeurs possibles pour ACTION sont :\n" -#: guix/scripts/system.scm:818 +#: guix/scripts/system.scm:934 msgid " search search for existing service types\n" msgstr " search chercher des types de services existants\n" -#: guix/scripts/system.scm:820 +#: guix/scripts/system.scm:936 msgid " reconfigure switch to a new operating system configuration\n" msgstr " reconfigure basculer vers une nouvelle configuration du système d'exploitation\n" -#: guix/scripts/system.scm:822 +#: guix/scripts/system.scm:938 msgid " roll-back switch to the previous operating system configuration\n" msgstr " roll-back basculer vers la configuration du système d'exploitation précédente\n" -#: guix/scripts/system.scm:824 +#: guix/scripts/system.scm:940 msgid " switch-generation switch to an existing operating system configuration\n" msgstr " switch-generation basculer vers une configuration du système d'exploitation existante\n" -#: guix/scripts/system.scm:826 +#: guix/scripts/system.scm:942 msgid " list-generations list the system generations\n" msgstr " list-generations lister les générations du système\n" -#: guix/scripts/system.scm:828 +#: guix/scripts/system.scm:944 msgid " build build the operating system without installing anything\n" msgstr " build compiler le système d'exploitation sans rien installer\n" -#: guix/scripts/system.scm:830 +#: guix/scripts/system.scm:946 msgid " container build a container that shares the host's store\n" msgstr " container compiler un conteneur qui partage le dépôt de l'hôte\n" -#: guix/scripts/system.scm:832 +#: guix/scripts/system.scm:948 msgid " vm build a virtual machine image that shares the host's store\n" msgstr " vm compiler une machine virtuelle partageant le dépôt de l'hôte\n" -#: guix/scripts/system.scm:834 +#: guix/scripts/system.scm:950 msgid " vm-image build a freestanding virtual machine image\n" msgstr " vm-image compiler une image autonome de machine virtuelle\n" -#: guix/scripts/system.scm:836 +#: guix/scripts/system.scm:952 msgid " disk-image build a disk image, suitable for a USB stick\n" msgstr " disk-image compiler une image disque adaptée pour une clé USB\n" -#: guix/scripts/system.scm:838 +#: guix/scripts/system.scm:954 +msgid " docker-image build a Docker image\n" +msgstr " docker-image compiler une image Docker\n" + +#: guix/scripts/system.scm:956 msgid " init initialize a root file system to run GNU\n" msgstr " init initialiser un système de fichier racine pour lancer GNU.\n" -#: guix/scripts/system.scm:840 +#: guix/scripts/system.scm:958 msgid " extension-graph emit the service extension graph in Dot format\n" msgstr " extension-graph produire le graphique des extensions de service au format Dot\n" -#: guix/scripts/system.scm:842 +#: guix/scripts/system.scm:960 msgid " shepherd-graph emit the graph of shepherd services in Dot format\n" msgstr " shepherd-graph produire le graphique des services du shepherd au format Dot\n" -#: guix/scripts/system.scm:846 +#: guix/scripts/system.scm:964 msgid "" "\n" " -d, --derivation return the derivation of the given system" @@ -1675,7 +1859,17 @@ msgstr "" "\n" " -d, --derivation retourner les dérivations pour le système donné" -#: guix/scripts/system.scm:848 +#: guix/scripts/system.scm:966 +msgid "" +"\n" +" -e, --expression=EXPR consider the operating-system EXPR evaluates to\n" +" instead of reading FILE, when applicable" +msgstr "" +"\n" +" -e, --expression=EXPR considère le paquet évalué par EXPR\n" +" au lieu de lire FICHIER, lorsque c'est possible" + +#: guix/scripts/system.scm:969 msgid "" "\n" " --on-error=STRATEGY\n" @@ -1685,7 +1879,7 @@ msgstr "" " --on-error=STRATÉGIE\n" " appliquer la STRATÉGIE quand une erreur survient en lisant le FICHIER" -#: guix/scripts/system.scm:851 +#: guix/scripts/system.scm:972 msgid "" "\n" " --file-system-type=TYPE\n" @@ -1697,7 +1891,7 @@ msgstr "" " avec « disk-image », produit un système de fichiers racine de TYPE\n" " (parmis « ext4» et « iso9660 »)" -#: guix/scripts/system.scm:855 +#: guix/scripts/system.scm:976 msgid "" "\n" " --image-size=SIZE for 'vm-image', produce an image of SIZE" @@ -1706,7 +1900,7 @@ msgstr "" " --image-size=TAILLE\n" " pour « vm-image », produire une image de TAILLE" -#: guix/scripts/system.scm:857 +#: guix/scripts/system.scm:978 msgid "" "\n" " --no-bootloader for 'init', do not install a bootloader" @@ -1714,7 +1908,7 @@ msgstr "" "\n" " --no-bootloader pour « init », ne pas installer un chargeur de démarrage" -#: guix/scripts/system.scm:859 +#: guix/scripts/system.scm:980 msgid "" "\n" " --share=SPEC for 'vm', share host file system according to SPEC" @@ -1723,7 +1917,7 @@ msgstr "" " --share=SPEC pour « vm », partager le système de fichiers hôte selon\n" " SPEC" -#: guix/scripts/system.scm:861 +#: guix/scripts/system.scm:982 msgid "" "\n" " -r, --root=FILE for 'vm', 'vm-image', 'disk-image', 'container',\n" @@ -1736,7 +1930,7 @@ msgstr "" " sur le résultat et l'enregistrer en tant que racine du\n" " ramasse-miettes" -#: guix/scripts/system.scm:865 +#: guix/scripts/system.scm:986 msgid "" "\n" " --expose=SPEC for 'vm', expose host file system according to SPEC" @@ -1745,7 +1939,7 @@ msgstr "" " --expose=SPEC pour « vm », exposer le système de fichiers hôte selon\n" " SPEC" -#: guix/scripts/system.scm:867 +#: guix/scripts/system.scm:988 msgid "" "\n" " --full-boot for 'vm', make a full boot sequence" @@ -1753,49 +1947,63 @@ msgstr "" "\n" " --full-boot pour « vm », accomplir une séquence complète de démarrage" -#: guix/scripts/system.scm:959 -#, scheme-format -msgid "no configuration file specified~%" -msgstr "aucun fichier de configuration spécifié~%" +#: guix/scripts/system.scm:990 +msgid "" +"\n" +" --skip-checks skip file system and initrd module safety checks" +msgstr "" +"\n" +" --skip-checks ignorer les tests de sécurité des systèmes de fichiers et\n" +" des modules de l'initrd" -#: guix/scripts/system.scm:1057 +#: guix/scripts/system.scm:1089 +#, scheme-format +msgid "both file and expression cannot be specified~%" +msgstr "on ne peut pas spécifier à la fois un fichier et une expression~%" + +#: guix/scripts/system.scm:1096 +#, scheme-format +msgid "no configuration specified~%" +msgstr "aucune configuration spécifiée~%" + +#: guix/scripts/system.scm:1196 #, scheme-format msgid "~a: unknown action~%" msgstr "~a : action inconnue~%" -#: guix/scripts/system.scm:1072 +#: guix/scripts/system.scm:1212 #, scheme-format msgid "wrong number of arguments for action '~a'~%" msgstr "nombre d'arguments incorrect pour l'action « ~a »~%" -#: guix/scripts/system.scm:1077 +#: guix/scripts/system.scm:1217 #, scheme-format msgid "guix system: missing command name~%" msgstr "guix system : nom de commande manquant~%" -#: guix/scripts/system.scm:1079 +#: guix/scripts/system.scm:1219 #, scheme-format msgid "Try 'guix system --help' for more information.~%" msgstr "Essayez « guix system --help » pour plus d'informations.~%" -#: guix/scripts/system/search.scm:64 guix/ui.scm:1057 guix/ui.scm:1071 +#: guix/scripts/system/search.scm:88 guix/ui.scm:1162 guix/ui.scm:1176 msgid "unknown" msgstr "inconnu" -#: guix/scripts/lint.scm:138 +#: guix/scripts/lint.scm:139 #, scheme-format msgid "Available checkers:~%" msgstr "Vérificateurs disponibles :~%" -#: guix/scripts/lint.scm:162 +#: guix/scripts/lint.scm:163 msgid "description should not be empty" msgstr "la description ne devrait pas être vide" -#: guix/scripts/lint.scm:172 +#: guix/scripts/lint.scm:173 msgid "Texinfo markup in description is invalid" -msgstr "lL'utilisation de balises Texinfo dans la description est invalide" +msgstr "Des balises Texinfo dans la description sont invalides" -#: guix/scripts/lint.scm:182 +#: guix/scripts/lint.scm:183 #, scheme-format msgid "" "description should not contain ~\n" @@ -1806,15 +2014,15 @@ msgstr "" #. TRANSLATORS: '@code' is Texinfo markup and must be kept #. as is. -#: guix/scripts/lint.scm:195 +#: guix/scripts/lint.scm:196 msgid "use @code or similar ornament instead of quotes" msgstr "utiliser @code ou une décoration similaire au lieu des guillemets" -#: guix/scripts/lint.scm:202 +#: guix/scripts/lint.scm:203 msgid "description should start with an upper-case letter or digit" msgstr "la description devrait commencer par une majuscule ou un chiffre" -#: guix/scripts/lint.scm:218 +#: guix/scripts/lint.scm:219 #, scheme-format msgid "" "sentences in description should be followed ~\n" @@ -1823,256 +2031,261 @@ msgstr "" "les phrases dans la description devraient être suivies ~\n" "par deux espaces. Infraction probable~p à ~{~a~^, ~}" -#: guix/scripts/lint.scm:236 +#: guix/scripts/lint.scm:237 #, scheme-format msgid "invalid description: ~s" msgstr "description invalide : ~s" -#: guix/scripts/lint.scm:281 +#: guix/scripts/lint.scm:282 #, scheme-format msgid "'~a' should probably be a native input" msgstr "« ~a » devrait sans doute être une entrée native" -#: guix/scripts/lint.scm:297 +#: guix/scripts/lint.scm:298 #, scheme-format msgid "'~a' should probably not be an input at all" msgstr "« ~a » ne devrait probablement pas être une entrée du tout" -#: guix/scripts/lint.scm:314 +#: guix/scripts/lint.scm:315 msgid "synopsis should not be empty" msgstr "le synopsis ne devrait pas être vide" -#: guix/scripts/lint.scm:322 +#: guix/scripts/lint.scm:323 msgid "no period allowed at the end of the synopsis" msgstr "un point n'est pas autorisé à la fin du synopsis" -#: guix/scripts/lint.scm:334 +#: guix/scripts/lint.scm:335 msgid "no article allowed at the beginning of the synopsis" msgstr "les articles ne sont pas permis au début du synopsis" -#: guix/scripts/lint.scm:341 +#: guix/scripts/lint.scm:342 msgid "synopsis should be less than 80 characters long" msgstr "le synopsis devrait être plus court que 80 caractères" -#: guix/scripts/lint.scm:347 +#: guix/scripts/lint.scm:348 msgid "synopsis should start with an upper-case letter or digit" msgstr "le synopsis devrait commencer par une majuscule ou un chiffre" -#: guix/scripts/lint.scm:354 +#: guix/scripts/lint.scm:355 msgid "synopsis should not start with the package name" msgstr "le synopsis ne devrait pas commencer par un nom de paquet" -#: guix/scripts/lint.scm:364 +#: guix/scripts/lint.scm:365 msgid "Texinfo markup in synopsis is invalid" msgstr "La balise Texinfo dans le synopsis est invalide" -#: guix/scripts/lint.scm:383 +#: guix/scripts/lint.scm:384 #, scheme-format msgid "invalid synopsis: ~s" msgstr "synopsis non valide : ~s" -#: guix/scripts/lint.scm:502 +#: guix/scripts/lint.scm:503 #, scheme-format msgid "URI ~a returned suspiciously small file (~a bytes)" msgstr "L'URI ~a a renvoyé un fichier étrangement petit (~a octets)" -#: guix/scripts/lint.scm:512 +#: guix/scripts/lint.scm:513 #, scheme-format msgid "permanent redirect from ~a to ~a" msgstr "redirection permanente de ~a vers ~a" -#: guix/scripts/lint.scm:519 +#: guix/scripts/lint.scm:520 #, scheme-format msgid "invalid permanent redirect from ~a" msgstr "redirection permanente invalide : ~a" -#: guix/scripts/lint.scm:526 guix/scripts/lint.scm:538 +#: guix/scripts/lint.scm:527 guix/scripts/lint.scm:539 #, scheme-format msgid "URI ~a not reachable: ~a (~s)" msgstr "L'URI ~a n'a pu être atteinte : ~a (~s)" -#: guix/scripts/lint.scm:545 +#: guix/scripts/lint.scm:546 #, scheme-format msgid "URI ~a domain not found: ~a" msgstr "Le domaine de l'URI ~a n'a pas été trouvé : ~a" -#: guix/scripts/lint.scm:553 +#: guix/scripts/lint.scm:554 #, scheme-format msgid "URI ~a unreachable: ~a" msgstr "L'URI ~a n'a pu être atteinte : ~a" -#: guix/scripts/lint.scm:562 +#: guix/scripts/lint.scm:563 #, scheme-format msgid "TLS certificate error: ~a" msgstr "Erreur de certificat TLS : ~a" -#: guix/scripts/lint.scm:583 +#: guix/scripts/lint.scm:584 msgid "invalid value for home page" msgstr "valeur invalide pour la page d'accueil" -#: guix/scripts/lint.scm:586 +#: guix/scripts/lint.scm:587 #, scheme-format msgid "invalid home page URL: ~s" msgstr "URL de la page d'accueil invalide : ~s" -#: guix/scripts/lint.scm:606 +#: guix/scripts/lint.scm:613 msgid "file names of patches should start with the package name" msgstr "les noms de fichiers des correctifs devraient commencer par le nom du paquet" -#: guix/scripts/lint.scm:644 +#: guix/scripts/lint.scm:629 +#, scheme-format +msgid "~a: file name is too long" +msgstr "~a : le nom de fichier est trop long" + +#: guix/scripts/lint.scm:670 #, scheme-format msgid "~a: ~a: proposed synopsis: ~s~%" msgstr "~a : ~a : synopsis proposé : ~s~%" -#: guix/scripts/lint.scm:657 +#: guix/scripts/lint.scm:683 #, scheme-format msgid "~a: ~a: proposed description:~% \"~a\"~%" msgstr "~a : ~a : description proposée :~% « ~a »~%" -#: guix/scripts/lint.scm:699 +#: guix/scripts/lint.scm:725 msgid "all the source URIs are unreachable:" msgstr "toutes les URI sources sont inatteignables :" -#: guix/scripts/lint.scm:721 +#: guix/scripts/lint.scm:747 msgid "the source file name should contain the package name" msgstr "le nom du fichier source devrait contenir le nom du paquet" -#: guix/scripts/lint.scm:737 +#: guix/scripts/lint.scm:763 #, scheme-format msgid "URL should be 'mirror://~a/~a'" msgstr "L'URL devrait être « mirror://~a/~a »" -#: guix/scripts/lint.scm:755 guix/scripts/lint.scm:759 +#: guix/scripts/lint.scm:781 guix/scripts/lint.scm:785 #, scheme-format msgid "failed to create derivation: ~a" msgstr "échec à la création de la dérivation : ~a" -#: guix/scripts/lint.scm:773 +#: guix/scripts/lint.scm:799 #, scheme-format msgid "failed to create derivation: ~s~%" msgstr "échec à la création de la dérivation : ~s~%" -#: guix/scripts/lint.scm:783 +#: guix/scripts/lint.scm:809 msgid "invalid license field" msgstr "champ de licence invalide" -#: guix/scripts/lint.scm:799 +#: guix/scripts/lint.scm:816 #, scheme-format msgid "~a: HTTP GET error for ~a: ~a (~s)~%" msgstr "~a : erreur HTTP GET pour ~a : ~a (~s)~%" -#: guix/scripts/lint.scm:809 +#: guix/scripts/lint.scm:826 #, scheme-format msgid "~a: host lookup failure: ~a~%" msgstr "~a : erreur lors de la consultation du nom d'hôte : ~a~%" -#: guix/scripts/lint.scm:814 +#: guix/scripts/lint.scm:831 #, scheme-format msgid "~a: TLS certificate error: ~a" msgstr "~a : erreur de certificat TLS : ~a" -#: guix/scripts/lint.scm:829 +#: guix/scripts/lint.scm:846 msgid "while retrieving CVE vulnerabilities" msgstr "pendant la récupération des vulnérabilités CVE" -#: guix/scripts/lint.scm:866 +#: guix/scripts/lint.scm:883 #, scheme-format msgid "probably vulnerable to ~a" msgstr "probablement vulnérable à ~a" -#: guix/scripts/lint.scm:873 +#: guix/scripts/lint.scm:890 #, scheme-format msgid "while retrieving upstream info for '~a'" msgstr "pendant la récupération des informations en amont de « ~a »" -#: guix/scripts/lint.scm:881 +#: guix/scripts/lint.scm:898 #, scheme-format msgid "can be upgraded to ~a" msgstr "peut être mis à jour vers ~a" -#: guix/scripts/lint.scm:896 +#: guix/scripts/lint.scm:913 #, scheme-format msgid "tabulation on line ~a, column ~a" msgstr "tabulation à la ligne ~a, colonne ~a" -#: guix/scripts/lint.scm:905 +#: guix/scripts/lint.scm:922 #, scheme-format msgid "trailing white space on line ~a" msgstr "espace à la fin de la ligne ~a" -#: guix/scripts/lint.scm:915 +#: guix/scripts/lint.scm:932 #, scheme-format msgid "line ~a is way too long (~a characters)" msgstr "la ligne ~a est beaucoup trop longue (~a caractères)" -#: guix/scripts/lint.scm:926 +#: guix/scripts/lint.scm:943 #, scheme-format msgid "line ~a: parentheses feel lonely, move to the previous or next line" msgstr "ligne ~a : des parenthèses se sentent seules. À déplacer à la ligne suivante ou précédente" -#: guix/scripts/lint.scm:996 +#: guix/scripts/lint.scm:1013 msgid "Validate package descriptions" msgstr "Valider des descriptions de paquets" -#: guix/scripts/lint.scm:1000 +#: guix/scripts/lint.scm:1017 msgid "Validate synopsis & description of GNU packages" msgstr "Valider le synopsis et la description de paquets GNU" -#: guix/scripts/lint.scm:1004 +#: guix/scripts/lint.scm:1021 msgid "Identify inputs that should be native inputs" msgstr "Identifier les entrées qui devraient être natives" -#: guix/scripts/lint.scm:1008 -msgid "Identify inputs that should be inputs at all" -msgstr "Identifier les entrées qui devraient être des entrées" +#: guix/scripts/lint.scm:1025 +msgid "Identify inputs that shouldn't be inputs at all" +msgstr "Identifier les entrées qui ne devraient pas être des entrées du tout" -#: guix/scripts/lint.scm:1012 +#: guix/scripts/lint.scm:1029 msgid "Validate file names and availability of patches" msgstr "Valider les noms de fichiers et la disponibilité de correctifs" -#: guix/scripts/lint.scm:1016 +#: guix/scripts/lint.scm:1033 msgid "Validate home-page URLs" msgstr "Valider les URL des pages d'accueil" #. TRANSLATORS: is the name of a data type and must not be #. translated. -#: guix/scripts/lint.scm:1022 +#: guix/scripts/lint.scm:1039 msgid "Make sure the 'license' field is a or a list thereof" msgstr "Assurez vous que le champ « licence » est une ou une telle liste" -#: guix/scripts/lint.scm:1027 +#: guix/scripts/lint.scm:1044 msgid "Validate source URLs" msgstr "Valider les URL sources" -#: guix/scripts/lint.scm:1031 +#: guix/scripts/lint.scm:1048 msgid "Suggest 'mirror://' URLs" -msgstr "Suggérer les URLs « mirror:// »" +msgstr "Suggérer les URL « mirror:// »" -#: guix/scripts/lint.scm:1035 +#: guix/scripts/lint.scm:1052 msgid "Validate file names of sources" msgstr "Valider les noms des fichiers des sources" -#: guix/scripts/lint.scm:1039 +#: guix/scripts/lint.scm:1056 msgid "Report failure to compile a package to a derivation" msgstr "Signaler l'échec de la compilation d'un paquet d'une dérivation" -#: guix/scripts/lint.scm:1043 +#: guix/scripts/lint.scm:1060 msgid "Validate package synopses" msgstr "Valider les synopsis des paquets" -#: guix/scripts/lint.scm:1047 +#: guix/scripts/lint.scm:1064 msgid "Check the Common Vulnerabilities and Exposures (CVE) database" msgstr "Vérifier la base de données des vulnérabilités et failles connues (CVE)" -#: guix/scripts/lint.scm:1052 +#: guix/scripts/lint.scm:1069 msgid "Check the package for new upstream releases" msgstr "Vérifier s'il y a une nouvelle version en amont pour le paquet" -#: guix/scripts/lint.scm:1056 +#: guix/scripts/lint.scm:1073 msgid "Look for formatting issues in the source" msgstr "Rechercher des problèmes de format dans la source" -#: guix/scripts/lint.scm:1084 +#: guix/scripts/lint.scm:1101 msgid "" "Usage: guix lint [OPTION]... [PACKAGE]...\n" "Run a set of checkers on the specified package; if none is specified,\n" @@ -2082,7 +2295,7 @@ msgstr "" "Lancer un ensemble de vérificateurs sur le paquet spécifié ; si aucun n'est spécifié,\n" "lancer les vérificateurs sur tous les paquets.\n" -#: guix/scripts/lint.scm:1087 +#: guix/scripts/lint.scm:1104 msgid "" "\n" " -c, --checkers=CHECKER1,CHECKER2...\n" @@ -2092,7 +2305,7 @@ msgstr "" " -c, --checkers=CHECKER1,CHECKER2...\n" " lancer uniquement les vérificateurs spécifiés" -#: guix/scripts/lint.scm:1092 +#: guix/scripts/lint.scm:1109 msgid "" "\n" " -l, --list-checkers display the list of available lint checkers" @@ -2100,7 +2313,7 @@ msgstr "" "\n" " -l, --list-checkers afficher la liste des vérificateurs disponibles" -#: guix/scripts/lint.scm:1112 +#: guix/scripts/lint.scm:1129 #, scheme-format msgid "~a: invalid checker~%" msgstr "~a : vérificateur non valide~%" @@ -2229,17 +2442,17 @@ msgstr "le support zlib est manquant. La compression est désactivée~%" msgid "~a: invalid duration~%" msgstr "~a : durée non valide~%" -#: guix/scripts/publish.scm:832 +#: guix/scripts/publish.scm:869 #, scheme-format msgid "user '~a' not found: ~a~%" msgstr "utilisateur « ~a » non trouvé : ~a~%" -#: guix/scripts/publish.scm:873 +#: guix/scripts/publish.scm:910 #, scheme-format msgid "server running as root; consider using the '--user' option!~%" msgstr "le serveur tourne en tant que root. Envisagez d'utiliser l'option « --user » !~%" -#: guix/scripts/publish.scm:878 +#: guix/scripts/publish.scm:915 #, scheme-format msgid "publishing ~a on ~a, port ~d~%" msgstr "diffusion de ~a sur ~a, port ~d~%" @@ -2338,77 +2551,81 @@ msgstr "~a : clef de tri invalide~%" msgid "missing store item argument\n" msgstr "argument d'élément de stockage manquant\n" -#: guix/scripts/graph.scm:84 +#: guix/scripts/graph.scm:87 #, scheme-format msgid "~a: invalid argument (package name expected)" msgstr "~a : argument invalide (nom de paquet attendu)" -#: guix/scripts/graph.scm:95 +#: guix/scripts/graph.scm:98 msgid "the DAG of packages, excluding implicit inputs" msgstr "le DAG des paquets en excluant les entrées implicites" -#: guix/scripts/graph.scm:121 +#: guix/scripts/graph.scm:124 msgid "the reverse DAG of packages" msgstr "le graphe orienté acyclique (DAG) inversé des paquets" -#: guix/scripts/graph.scm:171 +#: guix/scripts/graph.scm:174 msgid "the DAG of packages, including implicit inputs" msgstr "le DAG des paquets en incluant les entrées implicites" -#: guix/scripts/graph.scm:181 +#: guix/scripts/graph.scm:184 msgid "the DAG of packages and origins, including implicit inputs" msgstr "le DAG des paquets et origines en incluant les entrées implicites" -#: guix/scripts/graph.scm:211 +#: guix/scripts/graph.scm:214 msgid "same as 'bag', but without the bootstrap nodes" msgstr "comme « bag » mais sans les nœuds d'amorçage" -#: guix/scripts/graph.scm:253 +#: guix/scripts/graph.scm:256 msgid "the DAG of derivations" msgstr "le DAG des dérivations" -#: guix/scripts/graph.scm:265 +#: guix/scripts/graph.scm:268 msgid "unsupported argument for derivation graph" msgstr "argument non supporté pour le graphe de dérivation" -#: guix/scripts/graph.scm:291 +#: guix/scripts/graph.scm:294 msgid "unsupported argument for this type of graph" msgstr "argument non supporté pour ce type de graphe" -#: guix/scripts/graph.scm:304 +#: guix/scripts/graph.scm:307 #, scheme-format msgid "references for '~a' are not known~%" msgstr "les références pour « ~a » sont inconnues~%" -#: guix/scripts/graph.scm:311 +#: guix/scripts/graph.scm:314 msgid "the DAG of run-time dependencies (store references)" msgstr "le DAG des dépendances à l'exécution (stockage des références)" -#: guix/scripts/graph.scm:327 +#: guix/scripts/graph.scm:330 msgid "the DAG of referrers in the store" msgstr "le graphe orienté acyclique (DAG) des référents dans le stockage" -#: guix/scripts/graph.scm:354 +#: guix/scripts/graph.scm:360 +msgid "the graph of package modules" +msgstr "le graphe des modules de paquets" + +#: guix/scripts/graph.scm:388 #, scheme-format msgid "~a: unknown node type~%" msgstr "~a : type de nœud inconnu~%" -#: guix/scripts/graph.scm:361 +#: guix/scripts/graph.scm:395 #, scheme-format msgid "~a: unknown backend~%" msgstr "~a : moteur de graphe inconnu~%" -#: guix/scripts/graph.scm:365 +#: guix/scripts/graph.scm:399 msgid "The available node types are:\n" msgstr "Les types de nœuds disponibles sont :\n" -#: guix/scripts/graph.scm:375 +#: guix/scripts/graph.scm:409 msgid "The available backend types are:\n" msgstr "Les types de moteurs de graphes disponibles sont :\n" #. TRANSLATORS: Here 'dot' is the name of a program; it must not be #. translated. -#: guix/scripts/graph.scm:419 +#: guix/scripts/graph.scm:453 msgid "" "Usage: guix graph PACKAGE...\n" "Emit a representation of the dependency graph of PACKAGE...\n" @@ -2416,7 +2633,7 @@ msgstr "" "Usage : guix graph PAQUET...\n" "Produit une représentation du graphe des dépendances de PAQUET...\n" -#: guix/scripts/graph.scm:421 +#: guix/scripts/graph.scm:455 msgid "" "\n" " -b, --backend=TYPE produce a graph with the given backend TYPE" @@ -2424,7 +2641,7 @@ msgstr "" "\n" " -t, --backend=TYPE produire un graphe avec le TYPE de moteur donné" -#: guix/scripts/graph.scm:423 +#: guix/scripts/graph.scm:457 msgid "" "\n" " --list-backends list the available graph backends" @@ -2432,7 +2649,7 @@ msgstr "" "\n" " --list-backends lister les types de moteurs de graphes disponibles" -#: guix/scripts/graph.scm:425 +#: guix/scripts/graph.scm:459 msgid "" "\n" " -t, --type=TYPE represent nodes of the given TYPE" @@ -2440,7 +2657,7 @@ msgstr "" "\n" " -t, --type=TYPE représenter les nœuds du TYPE donné" -#: guix/scripts/graph.scm:427 +#: guix/scripts/graph.scm:461 msgid "" "\n" " --list-types list the available graph types" @@ -2448,7 +2665,7 @@ msgstr "" "\n" " --list-types lister les types de graphes disponibles" -#: guix/scripts/graph.scm:429 guix/scripts/pack.scm:336 +#: guix/scripts/graph.scm:463 guix/scripts/pack.scm:644 msgid "" "\n" " -e, --expression=EXPR consider the package EXPR evaluates to" @@ -2567,38 +2784,55 @@ msgstr "" "\n" " --from=HÔTE recevoir les ÉLÉMENTS depuis l'HÔTE" -#: guix/scripts/copy.scm:168 +#: guix/scripts/copy.scm:169 #, scheme-format msgid "use '--to' or '--from'~%" msgstr "utilisez « --to » ou « --from »~%" -#: guix/scripts/pack.scm:76 +#: guix/scripts/pack.scm:89 #, scheme-format msgid "~a: compressor not found~%" msgstr "~a : compresseur introuvable~%" -#: guix/scripts/pack.scm:318 +#: guix/scripts/pack.scm:467 +#, scheme-format +msgid "" +"cross-compilation not implemented here;\n" +"please email '~a'~%" +msgstr "" +"la compilation croisée n'est pas implémentée ici ;\n" +"envoyez un courriel à « ~a »~%" + +#: guix/scripts/pack.scm:621 #, scheme-format msgid "~a: invalid symlink specification~%" msgstr "~a : spécification de lien symbolique invalide~%" -#: guix/scripts/pack.scm:328 +#: guix/scripts/pack.scm:634 msgid "" "Usage: guix pack [OPTION]... PACKAGE...\n" "Create a bundle of PACKAGE.\n" msgstr "" -"Usage: guix pack [OPTION]... PAQUET...\n" -"Créer un paquet de PAQUET.\n" +"Utilisation : guix pack [OPTION]... PAQUET...\n" +"Créer un lot applicatif de PAQUET.\n" -#: guix/scripts/pack.scm:334 +#: guix/scripts/pack.scm:640 msgid "" "\n" " -f, --format=FORMAT build a pack in the given FORMAT" msgstr "" "\n" -" -f, --format=FORMAT créer un paquet dans le FORMAT donné" +" -f, --format=FORMAT créer un lot applicatif dans le FORMAT donné" -#: guix/scripts/pack.scm:342 +#: guix/scripts/pack.scm:642 +msgid "" +"\n" +" -R, --relocatable produce relocatable executables" +msgstr "" +"\n" +" -R, --relocatable produire des exécutables repositionnables" + +#: guix/scripts/pack.scm:650 msgid "" "\n" " -C, --compression=TOOL compress using TOOL--e.g., \"lzip\"" @@ -2607,7 +2841,7 @@ msgstr "" " -C, --compression=OUTIL\n" " compresser en utilisant l'OUTIL, par ex, « lzip »" -#: guix/scripts/pack.scm:344 +#: guix/scripts/pack.scm:652 msgid "" "\n" " -S, --symlink=SPEC create symlinks to the profile according to SPEC" @@ -2615,57 +2849,115 @@ msgstr "" "\n" " -S, --symlink=SPEC créer des liens symboliques vers le profil selon la SPEC" -#: guix/scripts/pack.scm:346 +#: guix/scripts/pack.scm:654 +msgid "" +"\n" +" -m, --manifest=FILE create a pack with the manifest from FILE" +msgstr "" +"\n" +" -m, --manifest=FICHIER créer un lot avec le manifeste dans FICHIER" + +#: guix/scripts/pack.scm:656 msgid "" "\n" " --localstatedir include /var/guix in the resulting pack" msgstr "" "\n" -" --localstatedir inclure /var/guix dans le paquet résultant" +" --localstatedir inclure /var/guix dans le lot résultant" -#: guix/scripts/pack.scm:390 +#: guix/scripts/pack.scm:658 +msgid "" +"\n" +" --bootstrap use the bootstrap binaries to build the pack" +msgstr "" +"\n" +" --bootstrap utiliser les programmes d'amorçage pour compiler le lot" + +#: guix/scripts/pack.scm:700 +#, scheme-format +msgid "both a manifest and a package list were given~%" +msgstr "vous avez donné à la fois un manifeste et une liste de paquets~%" + +#: guix/scripts/pack.scm:743 #, scheme-format msgid "~a: unknown pack format" msgstr "~a : format de paquet inconnu" -#: guix/scripts/weather.scm:74 +#: guix/scripts/weather.scm:72 msgid "computing ~h package derivations for ~a...~%" msgstr "calcul de ~h dérivations de paquets pour ~a…~%" -#: guix/scripts/weather.scm:110 +#: guix/scripts/weather.scm:161 msgid "looking for ~h store items on ~a...~%" msgstr "recherche de ~h éléments du dépôt sur ~a...~%" -#: guix/scripts/weather.scm:120 +#: guix/scripts/weather.scm:173 msgid " ~2,1f% substitutes available (~h out of ~h)~%" msgstr " ~2,1f% substituts disponibles (~h sur ~h)~%" -#: guix/scripts/weather.scm:126 +#: guix/scripts/weather.scm:179 #, scheme-format msgid " unknown substitute sizes~%" msgstr " taille des substituts inconnue~%" -#: guix/scripts/weather.scm:129 +#: guix/scripts/weather.scm:182 msgid " ~,1h MiB of nars (compressed)~%" msgstr " ~,1h Mo de fichiers nar (compressés)~%" -#: guix/scripts/weather.scm:130 +#: guix/scripts/weather.scm:183 msgid " at least ~,1h MiB of nars (compressed)~%" msgstr " au moins ~,1h Mo de fichiers nar (compressés)~%" -#: guix/scripts/weather.scm:132 +#: guix/scripts/weather.scm:185 msgid " ~,1h MiB on disk (uncompressed)~%" msgstr " ~,1h Mo sur le disque (décompressé)~%" -#: guix/scripts/weather.scm:134 +#: guix/scripts/weather.scm:187 msgid " ~,3h seconds per request (~,1h seconds in total)~%" msgstr " ~,3h secondes par requête (~,1h secondesen tout)~%" -#: guix/scripts/weather.scm:136 +#: guix/scripts/weather.scm:189 msgid " ~,1h requests per second~%" msgstr " ~,1h requêtes par seconde~%" -#: guix/scripts/weather.scm:145 +#: guix/scripts/weather.scm:195 +#, scheme-format +msgid " (continuous integration information unavailable)~%" +msgstr " (informations sur l’intégration continue indisponibles)~%" + +#: guix/scripts/weather.scm:198 +#, scheme-format +msgid " '~a' returned ~a (~s)~%" +msgstr " « ~a » a renvoyé ~a (~s)~%" + +#: guix/scripts/weather.scm:215 +msgid " ~,1f% (~h out of ~h) of the missing items are queued~%" +msgstr " ~,1f% (~h sur ~h) des éléments manquants sont dans la queue~%" + +#: guix/scripts/weather.scm:221 +msgid " at least ~h queued builds~%" +msgstr " au moins ~h constructions dans la queue~%" + +#: guix/scripts/weather.scm:222 +msgid " ~h queued builds~%" +msgstr " ~h constructions dans la queue~%" + +#: guix/scripts/weather.scm:225 +#, scheme-format +msgid " ~a: ~a (~0,1f%)~%" +msgstr " ~a : ~a (~0,1f%)~%" + +#: guix/scripts/weather.scm:231 +#, scheme-format +msgid " build rate: ~1,2f builds per hour~%" +msgstr " vitesse de construction : ~1,2f constructions par l'heure~%" + +#: guix/scripts/weather.scm:235 +#, scheme-format +msgid " ~a: ~,2f builds per hour~%" +msgstr " ~a: ~,2f constructions par heure~%" + +#: guix/scripts/weather.scm:247 msgid "" "Usage: guix weather [OPTIONS]\n" "Report the availability of substitutes.\n" @@ -2673,7 +2965,7 @@ msgstr "" "Usage : guix weather [OPTIONS]\n" "Rapporte la disponibilité des substituts.\n" -#: guix/scripts/weather.scm:147 +#: guix/scripts/weather.scm:249 msgid "" "\n" " --substitute-urls=URLS\n" @@ -2683,7 +2975,7 @@ msgstr "" " --substitute-urls=URLS\n" " vérifie la disponibilité des substituts aux URLS" -#: guix/scripts/weather.scm:150 +#: guix/scripts/weather.scm:252 msgid "" "\n" " -m, --manifest=MANIFEST\n" @@ -2693,7 +2985,7 @@ msgstr "" " -m, --manifest=MANIFESTE\n" " recherche les substituts des paquets du MANIFESTE" -#: guix/scripts/weather.scm:153 +#: guix/scripts/weather.scm:255 msgid "" "\n" " -s, --system=SYSTEM consider substitutes for SYSTEM--e.g., \"i686-linux\"" @@ -2701,28 +2993,28 @@ msgstr "" "\n" " -s, --system=SYSTÈME prend en compte les substituts pour le SYSTÈME, par exemple « i686-linux »" -#: guix/scripts/weather.scm:177 +#: guix/scripts/weather.scm:279 #, scheme-format msgid "~a: invalid URL~%" msgstr "~a : URL invalide~%" -#: guix/gnu-maintenance.scm:567 +#: guix/gnu-maintenance.scm:570 msgid "Updater for GNU packages" msgstr "Logiciel de mise à jour des paquets GNU" -#: guix/gnu-maintenance.scm:576 +#: guix/gnu-maintenance.scm:579 msgid "Updater for GNU packages only available via FTP" msgstr "Logiciel de mise à jour des paquets GNU disponibles uniquement par FTP" -#: guix/gnu-maintenance.scm:585 +#: guix/gnu-maintenance.scm:588 msgid "Updater for KDE packages" msgstr "Logiciel de mise à jour des paquets KDE" -#: guix/gnu-maintenance.scm:592 +#: guix/gnu-maintenance.scm:595 msgid "Updater for X.org packages" msgstr "Logiciel de mise à jour des paquets X.org" -#: guix/gnu-maintenance.scm:599 +#: guix/gnu-maintenance.scm:602 msgid "Updater for packages hosted on kernel.org" msgstr "Logiciel de mise à jour des paquets hébergés sur kernel.org" @@ -2781,85 +3073,85 @@ msgstr "aucun processus ~d~%" msgid "exec failed with status ~d~%" msgstr "exec a échoué avec le statut ~d~%" -#: guix/upstream.scm:249 +#: guix/upstream.scm:250 #, scheme-format msgid "signature verification failed for `~a'~%" msgstr "la vérification de la signature a échoué pour « ~a »~%" -#: guix/upstream.scm:251 +#: guix/upstream.scm:252 #, scheme-format msgid "(could be because the public key is not in your keyring)~%" msgstr "(il est possible que la clé publique ne soit pas dans dans votre trousseau)~%" -#: guix/upstream.scm:330 +#: guix/upstream.scm:337 #, scheme-format msgid "~a: could not locate source file" msgstr "~a : le fichier source est introuvable" -#: guix/upstream.scm:335 +#: guix/upstream.scm:342 #, scheme-format msgid "~a: ~a: no `version' field in source; skipping~%" msgstr "~a : ~a : aucun champ « version » dans la source ; ignoré~%" -#: guix/ui.scm:159 +#: guix/ui.scm:169 #, scheme-format -msgid "~a: unbound variable" -msgstr "~a : variable non liée" +msgid "error: ~a: unbound variable" +msgstr "erreur : ~a : variable non liée" -#: guix/ui.scm:235 +#: guix/ui.scm:265 msgid "entering debugger; type ',bt' for a backtrace\n" msgstr "entrée dans le débogueur; tapez « ,bt » pour la trace d'exécution\n" -#: guix/ui.scm:284 +#: guix/ui.scm:314 #, scheme-format msgid "hint: ~a~%" msgstr "conseil : ~a~%" -#: guix/ui.scm:294 guix/ui.scm:342 guix/ui.scm:349 +#: guix/ui.scm:330 +msgid "Did you forget a @code{use-modules} form?" +msgstr "Auriez-vous oublié un @code{use-modules} ?" + +#: guix/ui.scm:332 +#, scheme-format +msgid "Did you forget @code{(use-modules ~a)}?" +msgstr "Auriez-vous oublié @code{(use-modules ~a)} ?" + +#: guix/ui.scm:341 guix/ui.scm:381 guix/ui.scm:388 #, scheme-format msgid "failed to load '~a': ~a~%" msgstr "impossible de charger « ~a » : ~a~%" -#: guix/ui.scm:301 +#: guix/ui.scm:348 #, scheme-format msgid "~amissing closing parenthesis~%" msgstr "~a parenthèses fermantes manquantes~%" -#: guix/ui.scm:306 guix/ui.scm:322 guix/ui.scm:596 +#: guix/ui.scm:353 guix/ui.scm:361 guix/ui.scm:692 #, scheme-format msgid "~a: error: ~a~%" msgstr "~a : erreur: ~a~%" -#: guix/ui.scm:314 -msgid "Did you forget a @code{use-modules} form?" -msgstr "Auriez-vous oublié un @code{use-modules} ?" - -#: guix/ui.scm:316 -#, scheme-format -msgid "Try adding @code{(use-modules ~a)}." -msgstr "Essayez d'ajouter @code{(use-modules ~a)}." - -#: guix/ui.scm:329 guix/ui.scm:657 +#: guix/ui.scm:368 guix/ui.scm:762 #, scheme-format msgid "exception thrown: ~s~%" msgstr "exception générée : ~s~%" -#: guix/ui.scm:333 guix/ui.scm:355 +#: guix/ui.scm:372 guix/ui.scm:394 #, scheme-format msgid "failed to load '~a':~%" msgstr "échec lors du chargement de « ~a » :~%" -#: guix/ui.scm:345 +#: guix/ui.scm:384 #, scheme-format msgid "~a: warning: ~a~%" msgstr "~a : avertissement : ~a~%" -#: guix/ui.scm:352 +#: guix/ui.scm:391 #, scheme-format msgid "failed to load '~a': exception thrown: ~s~%" msgstr "échec lors du chargement de « ~a » : exception générée : ~s~%" -#: guix/ui.scm:364 +#: guix/ui.scm:424 #, scheme-format msgid "failed to install locale: ~a~%" msgstr "impossible d'installer l'environnement linguistique : ~a~%" @@ -2867,15 +3159,15 @@ msgstr "impossible d'installer l'environnement linguistique : ~a~%" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's #. locale. Otherwise, do not translate "(C)"; leave it as-is. */ -#: guix/ui.scm:394 +#: guix/ui.scm:454 msgid "(C)" msgstr "©" -#: guix/ui.scm:395 +#: guix/ui.scm:455 msgid "the Guix authors\n" msgstr "les auteurs de Guix\n" -#: guix/ui.scm:396 +#: guix/ui.scm:456 msgid "" "License GPLv3+: GNU GPL version 3 or later \n" "This is free software: you are free to change and redistribute it.\n" @@ -2889,7 +3181,7 @@ msgstr "" #. package. Please add another line saying "Report translation bugs to #. ...\n" with the address for translation bugs (typically your translation #. team's web or email address). -#: guix/ui.scm:408 +#: guix/ui.scm:468 #, scheme-format msgid "" "\n" @@ -2897,9 +3189,9 @@ msgid "" msgstr "" "\n" "Signalez toute anomalie à : ~a.\n" -"Signalez toute erreur de traduction à : traduc@traduc.org" +"Signalez toute erreur de traduction à : traduc@traduc.org." -#: guix/ui.scm:410 +#: guix/ui.scm:470 #, scheme-format msgid "" "\n" @@ -2908,7 +3200,7 @@ msgstr "" "\n" "~a page d'accueil : <~a>" -#: guix/ui.scm:412 +#: guix/ui.scm:472 msgid "" "\n" "General help using GNU software: " @@ -2916,131 +3208,154 @@ msgstr "" "\n" "Aide générale sur l'utilisation des logiciels GNU : " -#: guix/ui.scm:457 +#: guix/ui.scm:517 #, scheme-format msgid "'~a' is not a valid regular expression: ~a~%" msgstr "« ~a » n'est pas une expression rationnelle valide : ~a~%" -#: guix/ui.scm:463 +#: guix/ui.scm:523 #, scheme-format msgid "~a: invalid number~%" msgstr "~a : nombre non valide~%" -#: guix/ui.scm:480 +#: guix/ui.scm:540 #, scheme-format msgid "invalid number: ~a~%" msgstr "nombre non valide : ~a~%" -#: guix/ui.scm:503 +#: guix/ui.scm:563 #, scheme-format msgid "unknown unit: ~a~%" msgstr "unité inconnue : ~a~%" -#: guix/ui.scm:520 +#: guix/ui.scm:578 +#, scheme-format +msgid "" +"You cannot have two different versions\n" +"or variants of @code{~a} in the same profile." +msgstr "" +"Vous ne pouvez pas avoir deux versions ou variantes\n" +"différentes de @code{~a} dans le même profil." + +#: guix/ui.scm:581 +#, scheme-format +msgid "" +"Try upgrading both @code{~a} and @code{~a},\n" +"or remove one of them from the profile." +msgstr "" +"Essayez de mettre à jour à la fois @code{~a} et @code{~a},\n" +"ou supprimez-en un du profil." + +#: guix/ui.scm:600 #, scheme-format msgid "~a:~a:~a: package `~a' has an invalid input: ~s~%" msgstr "~a :~a :~a : le paquet « ~a » a une entrée non valide : ~s~%" -#: guix/ui.scm:527 +#: guix/ui.scm:607 #, scheme-format msgid "~a: ~a: build system `~a' does not support cross builds~%" msgstr "~a : ~a : le système de compilation « ~a » ne supporte pas la compilation croisée~%" -#: guix/ui.scm:533 +#: guix/ui.scm:613 #, scheme-format msgid "~s: invalid G-expression input~%" msgstr "~s : entrée G-expression invalide~%" -#: guix/ui.scm:536 +#: guix/ui.scm:616 #, scheme-format msgid "profile '~a' does not exist~%" msgstr "le profile « ~a » n'existe pas~%" -#: guix/ui.scm:539 +#: guix/ui.scm:619 #, scheme-format msgid "generation ~a of profile '~a' does not exist~%" msgstr "la génération ~a du profile « ~a » n'existe pas~%" -#: guix/ui.scm:548 +#: guix/ui.scm:628 #, scheme-format msgid " ... propagated from ~a@~a~%" msgstr " ... propagé depuis ~a@~a~%" -#: guix/ui.scm:553 +#: guix/ui.scm:638 #, scheme-format -msgid "profile contains conflicting entries for ~a:~a~%" -msgstr "le profil contient des entrées en conflit pour ~a :~a~%" +msgid "profile contains conflicting entries for ~a~a~%" +msgstr "le profil contient des entrées en conflit pour ~a~a~%" -#: guix/ui.scm:556 +#: guix/ui.scm:641 #, scheme-format -msgid " first entry: ~a@~a:~a ~a~%" -msgstr " première entrée : ~a@~a:~a ~a~%" +msgid " first entry: ~a@~a~a ~a~%" +msgstr " première entrée : ~a@~a~a ~a~%" -#: guix/ui.scm:562 +#: guix/ui.scm:647 #, scheme-format -msgid " second entry: ~a@~a:~a ~a~%" -msgstr " deuxième entrée : ~a@~a:~a ~a~%" +msgid " second entry: ~a@~a~a ~a~%" +msgstr " deuxième entrée : ~a@~a~a ~a~%" -#: guix/ui.scm:573 +#: guix/ui.scm:659 #, scheme-format msgid "corrupt input while restoring '~a' from ~s~%" msgstr "entrée corrompue en restaurant « ~a » depuis ~s~%" -#: guix/ui.scm:575 +#: guix/ui.scm:661 #, scheme-format msgid "corrupt input while restoring archive from ~s~%" msgstr "entrée corrompue en restaurant l'archive depuis ~s~%" -#: guix/ui.scm:578 +#: guix/ui.scm:664 #, scheme-format msgid "failed to connect to `~a': ~a~%" msgstr "impossible de se connecter à « ~a » : ~a~%" -#: guix/ui.scm:583 +#: guix/ui.scm:669 #, scheme-format msgid "build failed: ~a~%" msgstr "la compilation a échoué : ~a~%" -#: guix/ui.scm:586 +#: guix/ui.scm:672 #, scheme-format msgid "reference to invalid output '~a' of derivation '~a'~%" msgstr "référence à la sortie invalide « ~a » de la dérivation « ~a »~%" -#: guix/ui.scm:590 +#: guix/ui.scm:676 #, scheme-format msgid "file '~a' could not be found in these directories:~{ ~a~}~%" msgstr "le fichier « ~a » n'a pas été trouvé dans ces répertoires :~{ ~a~}~%" -#: guix/ui.scm:607 +#: guix/ui.scm:681 +#, scheme-format +msgid "program exited~@[ with non-zero exit status ~a~]~@[ terminated by signal ~a~]~@[ stopped by signal ~a~]: ~s~%" +msgstr "le programme a quitté~@[ avec un statut non nul ~a~]~@[ terminé par le signal ~a~]~@[ arrêté par le signal ~a~] : ~s~%" + +#: guix/ui.scm:712 #, scheme-format msgid "~a: ~a~%" msgstr "~a: ~a~%" -#: guix/ui.scm:642 +#: guix/ui.scm:747 #, scheme-format msgid "failed to read expression ~s: ~s~%" msgstr "impossible de lire l'expression ~s : ~s~%" -#: guix/ui.scm:648 +#: guix/ui.scm:753 #, scheme-format msgid "failed to evaluate expression '~a':~%" msgstr "impossible d'évaluer l'expression « ~a » :~%" -#: guix/ui.scm:651 +#: guix/ui.scm:756 #, scheme-format msgid "syntax error: ~a~%" msgstr "erreur de syntaxe : ~a~%" -#: guix/ui.scm:669 +#: guix/ui.scm:774 #, scheme-format msgid "expression ~s does not evaluate to a package~%" msgstr "l'expression ~s ne correspond à aucun paquet~%" -#: guix/ui.scm:688 +#: guix/ui.scm:793 msgid "at least ~,1h MB needed but only ~,1h MB available in ~a~%" msgstr "au moins ~,1h Mo sont nécessaires mais seulement ~,1h Mo sont disponibles dans ~a~%" -#: guix/ui.scm:756 +#: guix/ui.scm:861 #, scheme-format msgid "~:[The following derivation would be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations would be built:~%~{ ~a~%~}~;~]" @@ -3049,18 +3364,18 @@ msgstr[1] "~:[Les dérivations suivantes seraient compilées :~%~{ ~a~%~}~;~]" #. TRANSLATORS: "MB" is for "megabyte"; it should be #. translated to the corresponding abbreviation. -#: guix/ui.scm:764 +#: guix/ui.scm:869 msgid "~:[~,1h MB would be downloaded:~%~{ ~a~%~}~;~]" msgstr "~:[~,1h Mo seraient téléchargés :~%~{ ~a~%~}~;~]" -#: guix/ui.scm:769 +#: guix/ui.scm:874 #, scheme-format msgid "~:[The following file would be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files would be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[Le fichier suivant serait téléchargé :~%~{ ~a~%~}~;~]" msgstr[1] "~:[Les fichiers suivants seraient téléchargés :~%~{ ~a~%~}~;~]" -#: guix/ui.scm:776 +#: guix/ui.scm:881 #, scheme-format msgid "~:[The following derivation will be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations will be built:~%~{ ~a~%~}~;~]" @@ -3069,106 +3384,116 @@ msgstr[1] "~:[Les dérivations suivantes seront compilées :~%~{ ~a~%~}~;~]" #. TRANSLATORS: "MB" is for "megabyte"; it should be #. translated to the corresponding abbreviation. -#: guix/ui.scm:784 +#: guix/ui.scm:889 msgid "~:[~,1h MB will be downloaded:~%~{ ~a~%~}~;~]" msgstr "~:[~,1h Mo seront téléchargés :~%~{ ~a~%~}~;~]" -#: guix/ui.scm:789 +#: guix/ui.scm:894 #, scheme-format msgid "~:[The following file will be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files will be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[Le fichier suivant sera téléchargé :~%~{ ~a~%~}~;~]" msgstr[1] "~:[Les fichiers suivants seront téléchargés :~%~{ ~a~%~}~;~]" -#: guix/ui.scm:849 +#: guix/ui.scm:954 #, scheme-format msgid "The following package would be removed:~%~{~a~%~}~%" msgid_plural "The following packages would be removed:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant serait supprimé :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seraient supprimés :~%~{~a~%~}~%" -#: guix/ui.scm:854 +#: guix/ui.scm:959 #, scheme-format msgid "The following package will be removed:~%~{~a~%~}~%" msgid_plural "The following packages will be removed:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant sera supprimé :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seront supprimés :~%~{~a~%~}~%" -#: guix/ui.scm:867 +#: guix/ui.scm:972 #, scheme-format msgid "The following package would be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be downgraded:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant serait mis à une version inférieure :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seraient mis à des versions inférieures :~%~{~a~%~}~%" -#: guix/ui.scm:872 +#: guix/ui.scm:977 #, scheme-format msgid "The following package will be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be downgraded:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant sera mis à une version inférieure :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seront mis à des versions inférieures :~%~{~a~%~}~%" -#: guix/ui.scm:885 +#: guix/ui.scm:990 #, scheme-format msgid "The following package would be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be upgraded:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant serait mis à jour :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seraient mis à jour :~%~{~a~%~}~%" -#: guix/ui.scm:890 +#: guix/ui.scm:995 #, scheme-format msgid "The following package will be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be upgraded:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant sera mis à jour :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seront mis à jour :~%~{~a~%~}~%" -#: guix/ui.scm:901 +#: guix/ui.scm:1006 #, scheme-format msgid "The following package would be installed:~%~{~a~%~}~%" msgid_plural "The following packages would be installed:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant serait installé :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seraient installés :~%~{~a~%~}~%" -#: guix/ui.scm:906 +#: guix/ui.scm:1011 #, scheme-format msgid "The following package will be installed:~%~{~a~%~}~%" msgid_plural "The following packages will be installed:~%~{~a~%~}~%" msgstr[0] "Le paquet suivant sera installé :~%~{~a~%~}~%" msgstr[1] "Les paquets suivants seront installés :~%~{~a~%~}~%" -#: guix/ui.scm:923 +#: guix/ui.scm:1028 msgid "" msgstr "" -#: guix/ui.scm:1285 +#: guix/ui.scm:1390 #, scheme-format msgid "Generation ~a\t~a" msgstr "Génération ~a\t~a" +#. TRANSLATORS: This is a format-string for date->string. +#. Please choose a format that corresponds to the +#. usual way of presenting dates in your locale. +#. See https://www.gnu.org/software/guile/manual/html_node/SRFI_002d19-Date-to-string.html +#. for details. +#: guix/ui.scm:1399 +#, scheme-format +msgid "~b ~d ~Y ~T" +msgstr "~d ~b ~Y ~T" + #. TRANSLATORS: The word "current" here is an adjective for #. "Generation", as in "current generation". Use the appropriate #. gender where applicable. -#: guix/ui.scm:1295 +#: guix/ui.scm:1405 #, scheme-format msgid "~a\t(current)~%" -msgstr "~a\t(actuel)~%" +msgstr "~a\t(actuelle)~%" -#: guix/ui.scm:1338 +#: guix/ui.scm:1448 #, scheme-format msgid "switched from generation ~a to ~a~%" msgstr "passé de la génération ~a à ~a~%" -#: guix/ui.scm:1354 +#: guix/ui.scm:1464 #, scheme-format msgid "deleting ~a~%" msgstr "suppression de ~a~%" -#: guix/ui.scm:1385 +#: guix/ui.scm:1495 #, scheme-format msgid "Try `guix --help' for more information.~%" msgstr "Essayez « guix --help » pour plus d'informations.~%" -#: guix/ui.scm:1413 +#: guix/ui.scm:1523 msgid "" "Usage: guix COMMAND ARGS...\n" "Run COMMAND with ARGS.\n" @@ -3176,74 +3501,74 @@ msgstr "" "Usage : guix COMMANDE ARGS...\n" "Lance la COMMANDE avec les arguments ARGS.\n" -#: guix/ui.scm:1416 +#: guix/ui.scm:1526 msgid "COMMAND must be one of the sub-commands listed below:\n" msgstr "COMMANDE doit être une des sous-commandes listées ci-dessous :\n" -#: guix/ui.scm:1436 +#: guix/ui.scm:1546 #, scheme-format msgid "guix: ~a: command not found~%" msgstr "guix : ~a : commande introuvable~%" -#: guix/ui.scm:1466 +#: guix/ui.scm:1576 #, scheme-format msgid "guix: missing command name~%" msgstr "guix : nom de commande manquant~%" -#: guix/ui.scm:1474 +#: guix/ui.scm:1584 #, scheme-format msgid "guix: unrecognized option '~a'~%" msgstr "guix : option « ~a » non reconnue ~%" -#: guix/http-client.scm:269 +#: guix/http-client.scm:117 #, scheme-format msgid "following redirection to `~a'...~%" msgstr "redirection vers « ~a »...~%" -#: guix/http-client.scm:281 +#: guix/http-client.scm:129 #, scheme-format msgid "~a: HTTP download failed: ~a (~s)" msgstr "~a : le téléchargement HTTP a échoué : ~a (~s)" -#: guix/nar.scm:155 +#: guix/nar.scm:156 msgid "signature is not a valid s-expression" msgstr "la signature n'est pas une s-expression valide" -#: guix/nar.scm:164 +#: guix/nar.scm:165 msgid "invalid signature" msgstr "signature non valide" -#: guix/nar.scm:168 +#: guix/nar.scm:169 msgid "invalid hash" msgstr "empreinte non valide" -#: guix/nar.scm:176 +#: guix/nar.scm:177 msgid "unauthorized public key" msgstr "clé publique non autorisée" -#: guix/nar.scm:181 +#: guix/nar.scm:182 msgid "corrupt signature data" msgstr "signature corrompue" -#: guix/nar.scm:201 +#: guix/nar.scm:202 msgid "corrupt file set archive" msgstr "ensemble de fichiers corrompu dans l'archive" -#: guix/nar.scm:211 +#: guix/nar.scm:212 #, scheme-format msgid "importing file or directory '~a'...~%" msgstr "import du fichier ou répertoire « ~a »...~%" -#: guix/nar.scm:222 +#: guix/nar.scm:223 #, scheme-format msgid "found valid signature for '~a'~%" msgstr "signature valide trouvée pour « ~a »~%" -#: guix/nar.scm:229 +#: guix/nar.scm:230 msgid "imported file lacks a signature" msgstr "les fichiers importés requièrent une signature" -#: guix/nar.scm:268 +#: guix/nar.scm:269 msgid "invalid inter-file archive mark" msgstr "marque d'archive inter-fichier non valide" @@ -3255,127 +3580,140 @@ msgstr "guix-daemon -- réalise les compilations des dérivations et les accès msgid "This program is a daemon meant to run in the background. It serves requests sent over a Unix-domain socket. It accesses the store, and builds derivations on behalf of its clients." msgstr "Ce programme est un démon qui tourne en tâche de fond. Il répond aux requêtes envoyées via des socket de type Unix-domain. Il accède au stockage et compile les dérivations pour le compte de ses clients." -#: nix/nix-daemon/guix-daemon.cc:94 +#: nix/nix-daemon/guix-daemon.cc:95 msgid "SYSTEM" msgstr "SYSTÈME" -#: nix/nix-daemon/guix-daemon.cc:95 +#: nix/nix-daemon/guix-daemon.cc:96 msgid "assume SYSTEM as the current system type" msgstr "suppose que SYSTÈME est le type de système actuel" -#: nix/nix-daemon/guix-daemon.cc:96 nix/nix-daemon/guix-daemon.cc:99 +#: nix/nix-daemon/guix-daemon.cc:97 nix/nix-daemon/guix-daemon.cc:100 msgid "N" msgstr "N" -#: nix/nix-daemon/guix-daemon.cc:97 +#: nix/nix-daemon/guix-daemon.cc:98 msgid "use N CPU cores to build each derivation; 0 means as many as available" msgstr "utilise N cœurs CPU pour compiler chaque dérivation ; 0 signifie autant que disponible" -#: nix/nix-daemon/guix-daemon.cc:100 +#: nix/nix-daemon/guix-daemon.cc:101 msgid "allow at most N build jobs" msgstr "autorise au plus N tâches de compilation" -#: nix/nix-daemon/guix-daemon.cc:101 nix/nix-daemon/guix-daemon.cc:103 +#: nix/nix-daemon/guix-daemon.cc:102 nix/nix-daemon/guix-daemon.cc:104 msgid "SECONDS" msgstr "SECONDES" -#: nix/nix-daemon/guix-daemon.cc:102 +#: nix/nix-daemon/guix-daemon.cc:103 msgid "mark builds as failed after SECONDS of activity" msgstr "marque les constructions comme ayant échoué après SECONDES d'activité" -#: nix/nix-daemon/guix-daemon.cc:104 +#: nix/nix-daemon/guix-daemon.cc:105 msgid "mark builds as failed after SECONDS of silence" msgstr "marque les constructions comme ayant échoué après SECONDES de silence" -#: nix/nix-daemon/guix-daemon.cc:106 +#: nix/nix-daemon/guix-daemon.cc:107 msgid "disable chroot builds" msgstr "désactive les compilations chroot" -#: nix/nix-daemon/guix-daemon.cc:107 +#: nix/nix-daemon/guix-daemon.cc:108 msgid "DIR" msgstr "RÉP" -#: nix/nix-daemon/guix-daemon.cc:108 +#: nix/nix-daemon/guix-daemon.cc:109 msgid "add DIR to the build chroot" msgstr "ajoute RÉP au chroot de compilation" -#: nix/nix-daemon/guix-daemon.cc:109 +#: nix/nix-daemon/guix-daemon.cc:110 msgid "GROUP" msgstr "GROUPE" -#: nix/nix-daemon/guix-daemon.cc:110 +#: nix/nix-daemon/guix-daemon.cc:111 msgid "perform builds as a user of GROUP" msgstr "réalise les compilations en tant qu'un utilisateur du GROUPE" -#: nix/nix-daemon/guix-daemon.cc:112 +#: nix/nix-daemon/guix-daemon.cc:113 msgid "do not use substitutes" msgstr "ne pas utiliser de substituts" -#: nix/nix-daemon/guix-daemon.cc:113 +#: nix/nix-daemon/guix-daemon.cc:114 msgid "URLS" msgstr "URLS" -#: nix/nix-daemon/guix-daemon.cc:114 +#: nix/nix-daemon/guix-daemon.cc:115 msgid "use URLS as the default list of substitute providers" msgstr "utilise URLS comme liste par défaut de fournisseurs de substituts" -#: nix/nix-daemon/guix-daemon.cc:116 +#: nix/nix-daemon/guix-daemon.cc:117 msgid "do not use the 'build hook'" msgstr "n'utilise pas le « build hook »" -#: nix/nix-daemon/guix-daemon.cc:118 +#: nix/nix-daemon/guix-daemon.cc:119 msgid "cache build failures" msgstr "garde les fonctionnalités de compilation en cache" -#: nix/nix-daemon/guix-daemon.cc:120 +#: nix/nix-daemon/guix-daemon.cc:121 msgid "build each derivation N times in a row" msgstr "compile chaque dérivation N fois de suite" -#: nix/nix-daemon/guix-daemon.cc:122 +#: nix/nix-daemon/guix-daemon.cc:123 msgid "do not keep build logs" msgstr "ne conserve pas les journaux de compilation" -#: nix/nix-daemon/guix-daemon.cc:124 +#: nix/nix-daemon/guix-daemon.cc:126 msgid "disable compression of the build logs" msgstr "désactive la compression des journaux de compilation" -#: nix/nix-daemon/guix-daemon.cc:129 +#: nix/nix-daemon/guix-daemon.cc:128 +msgid "use the specified compression type for build logs" +msgstr "utilise le type de compression spécifié pour les journaux de compilation" + +#: nix/nix-daemon/guix-daemon.cc:133 msgid "disable automatic file \"deduplication\" in the store" msgstr "désactive la « déduplication » automatique des fichiers dans le stockage" -#: nix/nix-daemon/guix-daemon.cc:139 +#: nix/nix-daemon/guix-daemon.cc:143 msgid "impersonate Linux 2.6" msgstr "se faire passer pour Linux 2.6" -#: nix/nix-daemon/guix-daemon.cc:143 +#: nix/nix-daemon/guix-daemon.cc:147 msgid "tell whether the GC must keep outputs of live derivations" msgstr "indique si le GC doit garder les sorties des dérivations en temps réel" -#: nix/nix-daemon/guix-daemon.cc:146 +#: nix/nix-daemon/guix-daemon.cc:150 msgid "tell whether the GC must keep derivations corresponding to live outputs" msgstr "indique si le GC doit garder les dérivations correspondant aux sorties en temps réel" -#: nix/nix-daemon/guix-daemon.cc:149 +#: nix/nix-daemon/guix-daemon.cc:153 msgid "SOCKET" msgstr "SOCKET" -#: nix/nix-daemon/guix-daemon.cc:150 +#: nix/nix-daemon/guix-daemon.cc:154 msgid "listen for connections on SOCKET" msgstr "écoute sur SOCKET pour des connexions" -#: nix/nix-daemon/guix-daemon.cc:152 +#: nix/nix-daemon/guix-daemon.cc:156 msgid "produce debugging output" msgstr "produit une sortie de déboguage" +#~ msgid "Guix already up to date\n" +#~ msgstr "Guix est déjà à jour\n" + +#~ msgid "updated ~a successfully deployed under `~a'~%" +#~ msgstr "~a a été mis à jour et déployé avec succès sous « ~a »~%" + +#~ msgid "failed to update Guix, check the build log~%" +#~ msgstr "échec de la mise à jour de Guix ; consultez le journal de compilation~%" + +#~ msgid "Try adding @code{(use-modules ~a)}." +#~ msgstr "Essayez d'ajouter @code{(use-modules ~a)}." + #~ msgid "unrecognized option: ~a~%" #~ msgstr "option non reconnue: ~a~%" #~ msgid "tarball did not produce a single source directory" #~ msgstr "la tarball n'a produit aucun répertoire source" -#~ msgid "unpacking '~a'...~%" -#~ msgstr "dépaquetage « ~a »...~%" - #~ msgid "failed to unpack source code" #~ msgstr "échec du dépaquetage du code source" diff --git a/po/guix/pt_BR.po b/po/guix/pt_BR.po index bb7d29c3cf..67f1d43b3f 100644 --- a/po/guix/pt_BR.po +++ b/po/guix/pt_BR.po @@ -5,10 +5,10 @@ # Rafael Fontenelle , 2013, 2016, 2018. msgid "" msgstr "" -"Project-Id-Version: guix 0.15.0-pre1\n" +"Project-Id-Version: guix 0.15.0\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" -"POT-Creation-Date: 2018-04-27 19:13+0200\n" -"PO-Revision-Date: 2018-04-30 15:01-0200\n" +"POT-Creation-Date: 2018-06-22 14:08+0200\n" +"PO-Revision-Date: 2018-06-22 11:58-0200\n" "Last-Translator: Rafael Fontenelle \n" "Language-Team: Brazilian Portuguese \n" "Language: pt_BR\n" @@ -79,7 +79,7 @@ msgstr "especificação ambígua de pacote \"~a\"~%" msgid "choosing ~a@~a from ~a~%" msgstr "escolhendo ~a@~a de ~a~%" -#: gnu/packages.scm:265 guix/scripts/package.scm:278 +#: gnu/packages.scm:265 guix/scripts/package.scm:238 #, scheme-format msgid "package '~a' has been superseded by '~a'~%" msgstr "pacote \"~a\" foi substituído por \"~a\"~%" @@ -104,57 +104,139 @@ msgstr "pacote \"~a\" carece de mensagem de saída \"~a\"~%" msgid "~a: no value specified for service of type '~a'" msgstr "~a: nenhum valor especificado para um serviço do tipo \"~a\"" -#: gnu/services.scm:643 +#: gnu/services.scm:336 +msgid "" +"Build the operating system top-level directory, which in\n" +"turn refers to everything the operating system needs: its kernel, initrd,\n" +"system profile, boot script, and so on." +msgstr "" +"Constrói o diretório de nível superior do sistema operacional, que\n" +"se refere a tudo que o sistema operacional precisa: seu kernel, initrd,\n" +"perfil do sistema, script de inicialização e assim por diante." + +#: gnu/services.scm:366 +msgid "" +"Produce the operating system's boot script, which is spawned\n" +"by the initrd once the root file system is mounted." +msgstr "" +"Produz o script de inicialização do sistema operacional, que\n" +"é gerado pelo initrd quando o sistema de arquivos raiz é montado." + +#: gnu/services.scm:422 +msgid "" +"Delete files from @file{/tmp}, @file{/var/run}, and other\n" +"temporary locations at boot time." +msgstr "" +"Exclui arquivos a partir de @file{/tmp}, @file{/var/run}\n" +"e outros locais temporários no momento da inicialização." + +#: gnu/services.scm:476 +msgid "" +"Run @dfn{activation} code at boot time and upon\n" +"@command{guix system reconfigure} completion." +msgstr "" +"Executa o código @dfn{activation} na inicialização e\n" +"após conclusão com @command{guix system reconfigure}." + +#: gnu/services.scm:527 +msgid "" +"Add special files to the root file system---e.g.,\n" +"@file{/usr/bin/env}." +msgstr "" +"Adiciona arquivos especiais ao sistema de arquivos raiz,\n" +"por exemplo @file{/usr/bin/env}." + +#: gnu/services.scm:563 +msgid "Populate the @file{/etc} directory." +msgstr "Popula o diretório @file{/etc}." + +#: gnu/services.scm:580 +msgid "" +"Populate @file{/run/setuid-programs} with the specified\n" +"executables, making them setuid-root." +msgstr "" +"Preenche @file{/run/setuid-programs} com os executáveis\n" +"especificados, tornando-os setuid-root." + +#: gnu/services.scm:600 +msgid "" +"This is the @dfn{system profile}, available as\n" +"@file{/run/current-system/profile}. It contains packages that the sysadmin\n" +"wants to be globally available to all the system users." +msgstr "" +"Este é o @dfn{system profile}, disponível como\n" +"@file{/run/current-system/profile}. Ele contém pacotes que o sysadmin\n" +"quer que esteja globalmente disponível para todos os usuários do sistema." + +#: gnu/services.scm:620 +msgid "" +"Make ``firmware'' files loadable by the operating system\n" +"kernel. Firmware may then be uploaded to some of the machine's devices, such\n" +"as Wifi cards." +msgstr "" +"Faz arquivos ``firmware'' carregáveis pelo kernel do sistema\n" +"operacional. O firmware pode ser carregado em alguns dispositivos da máquina,\n" +"como como placas de rede Wi-Fi." + +#: gnu/services.scm:651 +msgid "" +"Register garbage-collector roots---i.e., store items that\n" +"will not be reclaimed by the garbage collector." +msgstr "" +"Registra raízes de coletor de lixo --- isto é, armazena\n" +"itens que não serão recuperados pelo coletor de lixo." + +#: gnu/services.scm:676 #, scheme-format msgid "no target of type '~a' for service '~a'" msgstr "nenhum alvo do tipo \"~a\" para o serviço \"~a\"" -#: gnu/services.scm:669 gnu/services.scm:762 +#: gnu/services.scm:702 gnu/services.scm:795 #, scheme-format msgid "more than one target service of type '~a'" msgstr "mais de um serviço alvo do tipo \"~a\"" -#: gnu/services.scm:752 +#: gnu/services.scm:785 #, scheme-format msgid "service of type '~a' not found" msgstr "serviço do tipo \"~a\" não localizado" -#: gnu/system.scm:311 +#: gnu/system.scm:320 #, scheme-format -msgid "unrecognized boot parameters for '~a'~%" -msgstr "parâmetros de inicialização não reconhecidos para \"~a\"~%" +msgid "unrecognized boot parameters at '~a'~%" +msgstr "parâmetros de inicialização não reconhecidos em \"~a\"~%" -#: gnu/system.scm:712 +#: gnu/system.scm:731 #, scheme-format msgid "using a string for file '~a' is deprecated; use 'plain-file' instead~%" msgstr "usando um texto para arquivo \"~a\" está obsoleto; em vez disso, use \"plain-file\"~%" -#: gnu/system.scm:728 +#: gnu/system.scm:747 #, scheme-format msgid "using a monadic value for '~a' is deprecated; use 'plain-file' instead~%" msgstr "usando um valor monádico para \"~a\" está obsoleto; em vez disso, use \"plain-file\"~%" -#: gnu/system.scm:875 +#: gnu/system.scm:892 #, scheme-format msgid "~a: invalid locale name" msgstr "~a: nome de localidade inválido" -#: gnu/services/shepherd.scm:177 +#: gnu/services/shepherd.scm:175 #, scheme-format msgid "service '~a' provided more than once" msgstr "serviço \"~a\" fornecido mais de uma vez" -#: gnu/services/shepherd.scm:192 +#: gnu/services/shepherd.scm:190 #, scheme-format msgid "service '~a' requires '~a', which is not provided by any service" msgstr "serviço \"~a\" requer \"~a\", o que não é fornecido por nenhum serviço" -#: gnu/system/mapped-devices.scm:136 +#: gnu/system/mapped-devices.scm:142 #, scheme-format msgid "you may need these modules in the initrd for ~a:~{ ~a~}" msgstr "você pode precisar desses módulos no initrd para ~a:~{ ~a~}" -#: gnu/system/mapped-devices.scm:140 +#: gnu/system/mapped-devices.scm:146 #, scheme-format msgid "" "Try adding them to the\n" @@ -179,17 +261,17 @@ msgstr "" " %base-initrd-modules)))\n" "@end example\n" -#: gnu/system/mapped-devices.scm:216 +#: gnu/system/mapped-devices.scm:222 #, scheme-format msgid "no LUKS partition with UUID '~a'" msgstr "nenhuma partição LUKS com UUID \"~a\"" -#: gnu/system/shadow.scm:242 +#: gnu/system/shadow.scm:245 #, scheme-format msgid "supplementary group '~a' of user '~a' is undeclared" msgstr "grupo suplementar \"~a\" do usuário \"~a\" não está declarado" -#: gnu/system/shadow.scm:252 +#: gnu/system/shadow.scm:255 #, scheme-format msgid "primary group '~a' of user '~a' is undeclared" msgstr "grupo primário \"~a\" do usuário \"~a\" não está declarado" @@ -200,7 +282,7 @@ msgid "invalid argument: ~a~%" msgstr "argumento inválido: ~a~%" #: guix/scripts.scm:84 guix/scripts/download.scm:135 -#: guix/scripts/import/cran.scm:82 guix/scripts/import/elpa.scm:77 +#: guix/scripts/import/cran.scm:82 guix/scripts/import/elpa.scm:85 #: guix/scripts/publish.scm:881 guix/scripts/edit.scm:81 #, scheme-format msgid "~A: unrecognized option~%" @@ -452,7 +534,7 @@ msgstr "" " --sources[=TIPO] compila derivações de fonte; como opção, TIPO pode\n" " um entre \"package\", \"all\" (padrão) ou \"transitive\"" -#: guix/scripts/build.scm:517 guix/scripts/pack.scm:357 +#: guix/scripts/build.scm:517 guix/scripts/pack.scm:646 msgid "" "\n" " -s, --system=SYSTEM attempt to build for SYSTEM--e.g., \"i686-linux\"" @@ -460,7 +542,7 @@ msgstr "" "\n" " -s, --system=SISTEMA tenta compilar para SISTEMA (ex.: \"i686-linux\")" -#: guix/scripts/build.scm:519 guix/scripts/pack.scm:359 +#: guix/scripts/build.scm:519 guix/scripts/pack.scm:648 msgid "" "\n" " --target=TRIPLET cross-build for TRIPLET--e.g., \"armel-linux-gnu\"" @@ -521,14 +603,14 @@ msgstr "" " derivações fornecidas" #: guix/scripts/build.scm:539 guix/scripts/download.scm:83 -#: guix/scripts/package.scm:435 guix/scripts/gc.scm:76 +#: guix/scripts/package.scm:395 guix/scripts/gc.scm:76 #: guix/scripts/hash.scm:59 guix/scripts/import.scm:92 -#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:111 -#: guix/scripts/substitute.scm:879 guix/scripts/system.scm:970 -#: guix/scripts/lint.scm:1122 guix/scripts/publish.scm:94 +#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:120 +#: guix/scripts/substitute.scm:879 guix/scripts/system.scm:993 +#: guix/scripts/lint.scm:1107 guix/scripts/publish.scm:94 #: guix/scripts/edit.scm:44 guix/scripts/size.scm:243 #: guix/scripts/graph.scm:466 guix/scripts/challenge.scm:241 -#: guix/scripts/copy.scm:122 guix/scripts/pack.scm:372 +#: guix/scripts/copy.scm:122 guix/scripts/pack.scm:661 #: guix/scripts/weather.scm:258 guix/scripts/container.scm:33 #: guix/scripts/container/exec.scm:43 msgid "" @@ -539,14 +621,14 @@ msgstr "" " -h, --help exibe esta ajuda e sai" #: guix/scripts/build.scm:541 guix/scripts/download.scm:85 -#: guix/scripts/package.scm:437 guix/scripts/gc.scm:78 +#: guix/scripts/package.scm:397 guix/scripts/gc.scm:78 #: guix/scripts/hash.scm:61 guix/scripts/import.scm:94 -#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:113 -#: guix/scripts/substitute.scm:881 guix/scripts/system.scm:972 -#: guix/scripts/lint.scm:1126 guix/scripts/publish.scm:96 +#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:122 +#: guix/scripts/substitute.scm:881 guix/scripts/system.scm:995 +#: guix/scripts/lint.scm:1111 guix/scripts/publish.scm:96 #: guix/scripts/edit.scm:46 guix/scripts/size.scm:245 #: guix/scripts/graph.scm:468 guix/scripts/challenge.scm:243 -#: guix/scripts/copy.scm:124 guix/scripts/pack.scm:374 +#: guix/scripts/copy.scm:124 guix/scripts/pack.scm:663 #: guix/scripts/weather.scm:260 guix/scripts/container.scm:35 #: guix/scripts/container/exec.scm:45 msgid "" @@ -570,12 +652,12 @@ msgstr "" msgid "~s: not something we can build~%" msgstr "~s: não é algo que podemos compilar~%" -#: guix/scripts/build.scm:675 +#: guix/scripts/build.scm:679 #, scheme-format msgid "~a: warning: package '~a' has no source~%" msgstr "~a: aviso: pacote \"~a\" não possui fontes~%" -#: guix/scripts/build.scm:709 +#: guix/scripts/build.scm:713 #, scheme-format msgid "no build log for '~a'~%" msgstr "nenhum log de compilação para \"~a\"~%" @@ -632,7 +714,7 @@ msgstr "" msgid "unsupported hash format: ~a~%" msgstr "sem suporte ao formato de hash: ~a~%" -#: guix/scripts/download.scm:138 guix/scripts/package.scm:924 +#: guix/scripts/download.scm:138 guix/scripts/package.scm:884 #: guix/scripts/publish.scm:883 #, scheme-format msgid "~A: extraneous argument~%" @@ -653,71 +735,71 @@ msgstr "~a: falha ao analisar URI~%" msgid "~a: download failed~%" msgstr "~a: falha no download~%" -#: guix/scripts/package.scm:112 +#: guix/scripts/package.scm:72 #, scheme-format msgid "Try \"info '(guix) Invoking guix package'\" for more information.~%" msgstr "Tente \"info '(guix) Invoking guix package'\" para mais informações.~%" -#: guix/scripts/package.scm:134 +#: guix/scripts/package.scm:94 #, scheme-format msgid "error: while creating directory `~a': ~a~%" msgstr "erro: ao criar diretório \"~a\": ~a~%" -#: guix/scripts/package.scm:138 +#: guix/scripts/package.scm:98 #, scheme-format msgid "Please create the `~a' directory, with you as the owner.~%" msgstr "Por favor, crie o diretório \"~a\", com você sendo o proprietário.~%" -#: guix/scripts/package.scm:145 +#: guix/scripts/package.scm:105 #, scheme-format msgid "error: directory `~a' is not owned by you~%" msgstr "erro: diretório \"~a\" não tem você como proprietário~%" -#: guix/scripts/package.scm:148 +#: guix/scripts/package.scm:108 #, scheme-format msgid "Please change the owner of `~a' to user ~s.~%" msgstr "Por favor, altere o proprietário d \"~a\" para o usuário ~s.~%" -#: guix/scripts/package.scm:183 +#: guix/scripts/package.scm:143 #, scheme-format msgid "not removing generation ~a, which is current~%" msgstr "não será removida a geração ~a, que é o atual~%" # geração, criação? -#: guix/scripts/package.scm:190 +#: guix/scripts/package.scm:150 #, scheme-format msgid "no matching generation~%" msgstr "nenhuma geração correspondente~%" -#: guix/scripts/package.scm:193 guix/scripts/package.scm:730 -#: guix/scripts/system.scm:573 +#: guix/scripts/package.scm:153 guix/scripts/package.scm:690 +#: guix/scripts/system.scm:593 #, scheme-format msgid "invalid syntax: ~a~%" msgstr "sintaxe inválida: ~a~%" -#: guix/scripts/package.scm:222 +#: guix/scripts/package.scm:182 #, scheme-format msgid "nothing to be done~%" msgstr "nada para ser feito~%" -#: guix/scripts/package.scm:236 +#: guix/scripts/package.scm:196 #, scheme-format msgid "~a package in profile~%" msgid_plural "~a packages in profile~%" msgstr[0] "~a pacote no perfil~%" msgstr[1] "~a pacotes no perfil~%" -#: guix/scripts/package.scm:320 +#: guix/scripts/package.scm:280 #, scheme-format msgid "package '~a' no longer exists~%" msgstr "o pacote \"~a\" não existe mais~%" -#: guix/scripts/package.scm:358 +#: guix/scripts/package.scm:318 #, scheme-format msgid "The following environment variable definitions may be needed:~%" msgstr "As seguintes definições de variável de ambiente podem ser necessárias:~%" -#: guix/scripts/package.scm:374 +#: guix/scripts/package.scm:334 msgid "" "Usage: guix package [OPTION]...\n" "Install, remove, or upgrade packages in a single transaction.\n" @@ -725,7 +807,7 @@ msgstr "" "Uso: guix package [OPÇÃO]...\n" "Instala, remove ou atualiza pacotes em uma única transação.\n" -#: guix/scripts/package.scm:376 +#: guix/scripts/package.scm:336 msgid "" "\n" " -i, --install PACKAGE ...\n" @@ -735,7 +817,7 @@ msgstr "" " -i, --install PACOTE ...\n" " instala PACOTEs" -#: guix/scripts/package.scm:379 +#: guix/scripts/package.scm:339 msgid "" "\n" " -e, --install-from-expression=EXP\n" @@ -745,7 +827,7 @@ msgstr "" " -e, --install-from-expression=EXP\n" " instala o pacote que EXPR corresponder" -#: guix/scripts/package.scm:382 +#: guix/scripts/package.scm:342 msgid "" "\n" " -f, --install-from-file=FILE\n" @@ -757,7 +839,7 @@ msgstr "" " instala o pacote cujo código dentro do ARQUIVO\n" " corresponder" -#: guix/scripts/package.scm:386 +#: guix/scripts/package.scm:346 msgid "" "\n" " -r, --remove PACKAGE ...\n" @@ -767,7 +849,7 @@ msgstr "" " -r, --remove PACOTE ...\n" " remove PACOTEs" -#: guix/scripts/package.scm:389 +#: guix/scripts/package.scm:349 msgid "" "\n" " -u, --upgrade[=REGEXP] upgrade all the installed packages matching REGEXP" @@ -776,7 +858,7 @@ msgstr "" " -u, --upgrade[=REGEXP] atualiza todos os pacotes instalados correspondendo\n" " à REGEXP" -#: guix/scripts/package.scm:391 +#: guix/scripts/package.scm:351 msgid "" "\n" " -m, --manifest=FILE create a new profile generation with the manifest\n" @@ -786,7 +868,7 @@ msgstr "" " -m, --manifest=ARQUIVO cria a geração de um novo perfil com o manifesto\n" " do ARQUIVO" -#: guix/scripts/package.scm:394 +#: guix/scripts/package.scm:354 msgid "" "\n" " --do-not-upgrade[=REGEXP] do not upgrade any packages matching REGEXP" @@ -794,7 +876,7 @@ msgstr "" "\n" " --do-not-upgrade[=REGEXP] não atualiza pacotes correspondente a REGEXP" -#: guix/scripts/package.scm:396 +#: guix/scripts/package.scm:356 msgid "" "\n" " --roll-back roll back to the previous generation" @@ -802,7 +884,7 @@ msgstr "" "\n" " --roll-back reverte para a geração anterior" -#: guix/scripts/package.scm:398 +#: guix/scripts/package.scm:358 msgid "" "\n" " --search-paths[=KIND]\n" @@ -812,7 +894,7 @@ msgstr "" " --search-paths[=TIPO]\n" " exibe definições necessárias de variável de ambiente" -#: guix/scripts/package.scm:401 +#: guix/scripts/package.scm:361 guix/scripts/pull.scm:113 msgid "" "\n" " -l, --list-generations[=PATTERN]\n" @@ -822,7 +904,7 @@ msgstr "" " -l, --list-generations[=PADRÃO]\n" " lista criações correspondendo a PADRÃO" -#: guix/scripts/package.scm:404 +#: guix/scripts/package.scm:364 msgid "" "\n" " -d, --delete-generations[=PATTERN]\n" @@ -832,7 +914,7 @@ msgstr "" " -d, --delete-generations[=PADRÃO]\n" " exclui gerações correspondendo a PADRÃO" -#: guix/scripts/package.scm:407 +#: guix/scripts/package.scm:367 msgid "" "\n" " -S, --switch-generation=PATTERN\n" @@ -842,7 +924,7 @@ msgstr "" " -S, --switch-generations=PADRÃO\n" " alterna para a geração correspondendo a PADRÃO" -#: guix/scripts/package.scm:410 +#: guix/scripts/package.scm:370 msgid "" "\n" " -p, --profile=PROFILE use PROFILE instead of the user's default profile" @@ -850,7 +932,7 @@ msgstr "" "\n" " -p, --profile=PERFIL usa PERFIL em vez do perfil padrão do usuário" -#: guix/scripts/package.scm:413 +#: guix/scripts/package.scm:373 msgid "" "\n" " --allow-collisions do not treat collisions in the profile as an error" @@ -858,7 +940,7 @@ msgstr "" "\n" " --allow-collisions não trata colisões no perfil como um erro" -#: guix/scripts/package.scm:415 +#: guix/scripts/package.scm:375 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the profile" @@ -866,7 +948,7 @@ msgstr "" "\n" " --bootstrap usa a inicialização do Guile para compilar o perfil" -#: guix/scripts/package.scm:417 guix/scripts/pull.scm:99 +#: guix/scripts/package.scm:377 guix/scripts/pull.scm:105 msgid "" "\n" " --verbose produce verbose output" @@ -874,7 +956,7 @@ msgstr "" "\n" " --verbose produz uma saída mais detalhada" -#: guix/scripts/package.scm:420 +#: guix/scripts/package.scm:380 msgid "" "\n" " -s, --search=REGEXP search in synopsis and description using REGEXP" @@ -882,7 +964,7 @@ msgstr "" "\n" " -s, --search=REGEXP pesquisa na sinopse e descrição usando REGEXP" -#: guix/scripts/package.scm:422 +#: guix/scripts/package.scm:382 msgid "" "\n" " -I, --list-installed[=REGEXP]\n" @@ -892,7 +974,7 @@ msgstr "" " -I, --list-installed[=REGEXP]\n" " lista pacotes instalados correspondentes a REGEXP" -#: guix/scripts/package.scm:425 +#: guix/scripts/package.scm:385 msgid "" "\n" " -A, --list-available[=REGEXP]\n" @@ -902,7 +984,7 @@ msgstr "" " -A, --list-available[=REGEXP]\n" " lista pacotes disponíveis correspondentes a REGEXP" -#: guix/scripts/package.scm:428 +#: guix/scripts/package.scm:388 msgid "" "\n" " --show=PACKAGE show details about PACKAGE" @@ -910,33 +992,33 @@ msgstr "" "\n" " --show=PACOTE mostra detalhes sobre o PACOTE" -#: guix/scripts/package.scm:480 +#: guix/scripts/package.scm:440 #, scheme-format msgid "upgrade regexp '~a' looks like a command-line option~%" msgstr "a regexp de atualização \"~a\" se parece com uma opção de linha de comando~%" -#: guix/scripts/package.scm:483 +#: guix/scripts/package.scm:443 #, scheme-format msgid "is this intended?~%" msgstr "isso é intencional?~%" -#: guix/scripts/package.scm:528 +#: guix/scripts/package.scm:488 #, scheme-format msgid "~a: unsupported kind of search path~%" msgstr "~a: sem suporte ao tipo de caminho de pesquisa~%" # geração, criação? -#: guix/scripts/package.scm:829 +#: guix/scripts/package.scm:789 #, scheme-format msgid "cannot switch to generation '~a'~%" msgstr "não foi possível alternar para a geração \"~a\"~%" -#: guix/scripts/package.scm:846 +#: guix/scripts/package.scm:806 #, scheme-format msgid "would install new manifest from '~a' with ~d entries~%" msgstr "instalaria novo manifesto a partir de \"~a\" com entradas ~d~%" -#: guix/scripts/package.scm:848 +#: guix/scripts/package.scm:808 #, scheme-format msgid "installing new manifest from '~a' with ~d entries~%" msgstr "instalando novo manifesto a partir de \"~a\" com entradas ~d~%" @@ -1119,13 +1201,13 @@ msgstr "" "\n" " -r, --recursive computa o hash no AQUIVO recursivamente" -#: guix/scripts/hash.scm:150 guix/ui.scm:346 guix/ui.scm:656 guix/ui.scm:709 +#: guix/scripts/hash.scm:150 guix/ui.scm:365 guix/ui.scm:706 guix/ui.scm:759 #, scheme-format msgid "~a~%" msgstr "~a~%" -#: guix/scripts/hash.scm:153 guix/scripts/system.scm:1138 -#: guix/scripts/system.scm:1147 guix/scripts/system.scm:1154 +#: guix/scripts/hash.scm:153 guix/scripts/system.scm:1161 +#: guix/scripts/system.scm:1170 guix/scripts/system.scm:1177 #, scheme-format msgid "wrong number of arguments~%" msgstr "número errado de argumentos~%" @@ -1173,22 +1255,22 @@ msgstr "" "\n" " -a, --archive=PACOTE especifica o repositório de pacote" -#: guix/scripts/import/cran.scm:108 +#: guix/scripts/import/cran.scm:110 #, scheme-format msgid "failed to download description for package '~a'~%" msgstr "falha ao baixar descrição para o pacote \"~a\"~%" -#: guix/scripts/import/cran.scm:112 guix/scripts/import/elpa.scm:95 +#: guix/scripts/import/cran.scm:114 guix/scripts/import/elpa.scm:113 #, scheme-format msgid "too few arguments~%" msgstr "poucos argumentos~%" -#: guix/scripts/import/cran.scm:114 guix/scripts/import/elpa.scm:97 +#: guix/scripts/import/cran.scm:116 guix/scripts/import/elpa.scm:115 #, scheme-format msgid "too many arguments~%" msgstr "número excessivo de argumentos~%" -#: guix/scripts/import/elpa.scm:41 +#: guix/scripts/import/elpa.scm:44 msgid "" "Usage: guix import elpa PACKAGE-NAME\n" "Import the latest package named PACKAGE-NAME from an ELPA repository.\n" @@ -1196,7 +1278,7 @@ msgstr "" "Uso: guix import elpa NOME-PACOTE\n" "Importa o último pacote chamado NOME-PACOTE de um repositório ELPA.\n" -#: guix/scripts/import/elpa.scm:43 +#: guix/scripts/import/elpa.scm:46 msgid "" "\n" " -a, --archive=ARCHIVE specify the archive repository" @@ -1204,7 +1286,7 @@ msgstr "" "\n" " -a, --archive=PACOTE especifica o repositório de pacote" -#: guix/scripts/import/elpa.scm:45 +#: guix/scripts/import/elpa.scm:48 msgid "" "\n" " -h, --help display this help and exit" @@ -1212,7 +1294,15 @@ msgstr "" "\n" " -h, --help exibe esta ajuda e sai" -#: guix/scripts/import/elpa.scm:47 +#: guix/scripts/import/elpa.scm:50 +msgid "" +"\n" +" -r, --recursive generate package expressions for all Emacs packages that are not yet in Guix" +msgstr "" +"\n" +" -r, --recursive gera expressões de pacote para todos os pacotes do Emacs que ainda não estão no Guix" + +#: guix/scripts/import/elpa.scm:52 msgid "" "\n" " -V, --version display version information and exit" @@ -1220,12 +1310,12 @@ msgstr "" "\n" " -V, --version exibe informações da versão e sai" -#: guix/scripts/import/elpa.scm:92 +#: guix/scripts/import/elpa.scm:110 #, scheme-format msgid "failed to download package '~a'~%" msgstr "falha ao baixar localidade: \"~a\"~%" -#: guix/scripts/pull.scm:60 +#: guix/scripts/pull.scm:66 #, scheme-format msgid "" "Guile-Git is missing but it is now required by 'guix pull'.\n" @@ -1244,7 +1334,7 @@ msgstr "" " export GUILE_LOAD_COMPILED_PATH=$HOME/.guix-profile/lib/guile/~a/site-ccache:$GUILE_LOAD_COMPILED_PATH\n" "\n" -#: guix/scripts/pull.scm:97 +#: guix/scripts/pull.scm:103 msgid "" "Usage: guix pull [OPTION]...\n" "Download and deploy the latest version of Guix.\n" @@ -1252,7 +1342,7 @@ msgstr "" "Uso: guix pull [OPÇÃO]...\n" "Baixa e implanta a última versão do Guix.\n" -#: guix/scripts/pull.scm:101 +#: guix/scripts/pull.scm:107 msgid "" "\n" " --url=URL download from the Git repository at URL" @@ -1260,7 +1350,7 @@ msgstr "" "\n" " --url=URL baixa do repositório Git na URL" -#: guix/scripts/pull.scm:103 +#: guix/scripts/pull.scm:109 msgid "" "\n" " --commit=COMMIT download the specified COMMIT" @@ -1268,7 +1358,7 @@ msgstr "" "\n" " --commit=COMMIT baixa o COMMIT especificado" -#: guix/scripts/pull.scm:105 +#: guix/scripts/pull.scm:111 msgid "" "\n" " --branch=BRANCH download the tip of the specified BRANCH" @@ -1276,7 +1366,7 @@ msgstr "" "\n" " --branch=RAMO baixa a dica do RAMO especificado" -#: guix/scripts/pull.scm:107 +#: guix/scripts/pull.scm:116 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the new Guix" @@ -1284,46 +1374,47 @@ msgstr "" "\n" " --bootstrap usa inicialização do Guile para compilar o novo Guix" -#: guix/scripts/pull.scm:193 -msgid "Guix already up to date\n" -msgstr "Guix já está atualizado\n" - -#: guix/scripts/pull.scm:198 -#, scheme-format -msgid "updated ~a successfully deployed under `~a'~%" -msgstr "~a atualizado foi implantado com sucesso sob \"~a\"~%" - -#: guix/scripts/pull.scm:201 -#, scheme-format -msgid "failed to update Guix, check the build log~%" -msgstr "falha ao atualizar Guix; verifique o log de compilação~%" - -#: guix/scripts/pull.scm:217 +#: guix/scripts/pull.scm:263 #, scheme-format msgid "cannot enforce use of the Let's Encrypt certificates~%" msgstr "não foi possível forçar o uso de certificados Let's Encrypt~%" -#: guix/scripts/pull.scm:219 +#: guix/scripts/pull.scm:265 #, scheme-format msgid "please upgrade Guile-Git~%" msgstr "por favor, atualize o Guile-Git~%" -#: guix/scripts/pull.scm:227 +#: guix/scripts/pull.scm:273 #, scheme-format msgid "Git error ~a~%" msgstr "erro no Git ~a~%" -#: guix/scripts/pull.scm:229 +#: guix/scripts/pull.scm:275 #, scheme-format msgid "Git error: ~a~%" msgstr "erro no Git: ~a~%" -#: guix/scripts/pull.scm:263 +#: guix/scripts/pull.scm:302 +#, scheme-format +msgid " repository URL: ~a~%" +msgstr " URL do repositório: ~a~%" + +#: guix/scripts/pull.scm:304 +#, scheme-format +msgid " branch: ~a~%" +msgstr " ramo: ~a~%" + +#: guix/scripts/pull.scm:305 +#, scheme-format +msgid " commit: ~a~%" +msgstr " commit: ~a~%" + +#: guix/scripts/pull.scm:373 #, scheme-format msgid "Updating from Git repository at '~a'...~%" msgstr "Atualizando a partir do repositório Git \"~a\"...~%" -#: guix/scripts/pull.scm:272 +#: guix/scripts/pull.scm:383 #, scheme-format msgid "Building from Git commit ~a...~%" msgstr "Compilando a partir do commit Git ~a...~%" @@ -1410,8 +1501,8 @@ msgstr "\"~a\" não é o nome de um item do armazenamento~%" #: guix/scripts/substitute.scm:619 #, scheme-format -msgid "updating list of substitutes from '~a'... ~5,1f%" -msgstr "atualizando a lista de substitutos de \"~a\"... ~5,1f%" +msgid "updating substitutes from '~a'... ~5,1f%" +msgstr "atualizando substitutos de \"~a\"... ~5,1f%" #: guix/scripts/substitute.scm:683 #, scheme-format @@ -1523,172 +1614,179 @@ msgstr "" msgid "wrong arguments" msgstr "argumentos errados" -#: guix/scripts/system.scm:141 +#: guix/scripts/system.scm:143 #, scheme-format msgid "failed to register '~a' under '~a'~%" msgstr "falha ao registrar \"~a\" sob \"~a\"~%" -#: guix/scripts/system.scm:152 +#: guix/scripts/system.scm:154 #, scheme-format msgid "copying to '~a'..." msgstr "copiando para \"~a\"..." -#: guix/scripts/system.scm:187 +#: guix/scripts/system.scm:189 #, scheme-format msgid "failed to install bootloader ~a~%" msgstr "falha ao instalar carregador de inicialização ~a~%" -#: guix/scripts/system.scm:207 +#: guix/scripts/system.scm:209 #, scheme-format msgid "initializing the current root file system~%" msgstr "inicialização do sistema de arquivos raiz atual~%" -#: guix/scripts/system.scm:221 +#: guix/scripts/system.scm:223 #, scheme-format msgid "not running as 'root', so the ownership of '~a' may be incorrect!~%" msgstr "execução como não \"root\", então o dono de \"~a\" pode estar incorreto!~%" -#: guix/scripts/system.scm:266 +#: guix/scripts/system.scm:268 #, scheme-format msgid "while talking to shepherd: ~a~%" msgstr "enquanto falava com o shepherd: ~a~%" -#: guix/scripts/system.scm:273 +#: guix/scripts/system.scm:275 #, scheme-format msgid "service '~a' could not be found~%" msgstr "o serviço \"~a\" não pôde ser localizado~%" -#: guix/scripts/system.scm:276 +#: guix/scripts/system.scm:278 #, scheme-format msgid "service '~a' does not have an action '~a'~%" msgstr "o serviço \"~a\" não possui uma ação \"~a\"~%" -#: guix/scripts/system.scm:280 +#: guix/scripts/system.scm:282 #, scheme-format msgid "exception caught while executing '~a' on service '~a':~%" msgstr "exceção encontrada ao executar \"~a\" no serviço \"~a\":~%" -#: guix/scripts/system.scm:288 +#: guix/scripts/system.scm:290 #, scheme-format msgid "something went wrong: ~s~%" msgstr "algo deu errado: ~s~%" -#: guix/scripts/system.scm:291 +#: guix/scripts/system.scm:293 #, scheme-format msgid "shepherd error~%" msgstr "erro do shepherd~%" -#: guix/scripts/system.scm:308 +#: guix/scripts/system.scm:310 #, scheme-format msgid "failed to obtain list of shepherd services~%" msgstr "falha ao obter lista de serviços do shepherd~%" -#: guix/scripts/system.scm:328 +#: guix/scripts/system.scm:330 #, scheme-format msgid "unloading service '~a'...~%" msgstr "descarregando serviço \"~a\"...~%" -#: guix/scripts/system.scm:336 +#: guix/scripts/system.scm:338 #, scheme-format msgid "loading new services:~{ ~a~}...~%" msgstr "carregando novos serviços:~{ ~a~}...~%" -#: guix/scripts/system.scm:362 +#: guix/scripts/system.scm:364 #, scheme-format msgid "activating system...~%" msgstr "ativando sistema...~%" # geração, criação? -#: guix/scripts/system.scm:438 +#: guix/scripts/system.scm:442 #, scheme-format msgid "cannot switch to system generation '~a'~%" msgstr "não foi possível alternar para a geração do sistema \"~a\"~%" -#: guix/scripts/system.scm:509 +#: guix/scripts/system.scm:513 msgid "the DAG of services" msgstr "o DAG de serviços" -#: guix/scripts/system.scm:522 +#: guix/scripts/system.scm:526 msgid "the dependency graph of shepherd services" msgstr "o gráfico de dependência de serviços do shepherd" -#: guix/scripts/system.scm:546 +#: guix/scripts/system.scm:550 #, scheme-format msgid " file name: ~a~%" msgstr " nome de arquivo: ~a~%" -#: guix/scripts/system.scm:547 +#: guix/scripts/system.scm:551 #, scheme-format msgid " canonical file name: ~a~%" msgstr " nome de arquivo canônico: ~a~%" #. TRANSLATORS: Please preserve the two-space indentation. -#: guix/scripts/system.scm:549 +#: guix/scripts/system.scm:553 #, scheme-format msgid " label: ~a~%" msgstr " rótulo: ~a~%" -#: guix/scripts/system.scm:550 +#: guix/scripts/system.scm:554 #, scheme-format msgid " bootloader: ~a~%" msgstr " carregador de inicialização: ~a~%" -#: guix/scripts/system.scm:551 +#. TRANSLATORS: The '~[', '~;', and '~]' sequences in this string must +#. be preserved. They denote conditionals, such that the result will +#. look like: +#. root device: UUID: 12345-678 +#. or: +#. root device: label: "my-root" +#. or just: +#. root device: /dev/sda3 +#: guix/scripts/system.scm:564 #, scheme-format -msgid " root device: ~a~%" -msgstr " dispositivo raiz: ~a~%" +msgid " root device: ~[UUID: ~a~;label: ~s~;~a~]~%" +msgstr " dispositivo raiz: ~[UUID: ~a~;rótulo: ~s~;~a~]~%" -#: guix/scripts/system.scm:555 +#: guix/scripts/system.scm:575 #, scheme-format msgid " kernel: ~a~%" msgstr " kernel: ~a~%" -#: guix/scripts/system.scm:626 +#: guix/scripts/system.scm:646 #, scheme-format msgid "~a: error: device '~a' not found: ~a~%" msgstr "~a: erro: dispositivo \"~a\" não localizado: ~a~%" -#: guix/scripts/system.scm:630 +#: guix/scripts/system.scm:650 #, scheme-format msgid "" "If '~a' is a file system\n" -"label, you need to add @code{(title 'label)} to your @code{file-system}\n" -"definition." +"label, write @code{(file-system-label ~s)} in your @code{device} field." msgstr "" "Se \"~a\" for um rótulo de sistema de arquivos,\n" -"você precisa adicionar @code{(title 'label)} à sua definição @code{file-system}" +"escreva @code{(file-system-label ~s)} em seu campo @code{device}." -#: guix/scripts/system.scm:637 +#: guix/scripts/system.scm:658 #, scheme-format msgid "~a: error: file system with label '~a' not found~%" msgstr "~a: erro: sistema de arquivos com rótulo \"~a\" não localizado~%" -#: guix/scripts/system.scm:643 +#: guix/scripts/system.scm:663 #, scheme-format msgid "~a: error: file system with UUID '~a' not found~%" msgstr "~a: erro: sistema de arquivos com UUID \"~a\" não localizado~%" -#: guix/scripts/system.scm:741 +#: guix/scripts/system.scm:764 #, scheme-format msgid "~a not found: 'guix pull' was never run~%" msgstr "~a não localizado: \"guix pull\" nunca foi executado~%" -#: guix/scripts/system.scm:742 +#: guix/scripts/system.scm:765 #, scheme-format msgid "Consider running 'guix pull' before 'reconfigure'.~%" msgstr "Considere executar \"guix pull\" antes de \"reconfigure\".~%" -#: guix/scripts/system.scm:743 +#: guix/scripts/system.scm:766 #, scheme-format msgid "Failing to do that may downgrade your system!~%" msgstr "Falhar em fazer isso pode fazer um downgrade de seu sistema!~%" -#: guix/scripts/system.scm:860 +#: guix/scripts/system.scm:883 #, scheme-format msgid "initializing operating system under '~a'...~%" msgstr "inicializando sistema operacional sob \"~a\"...~%" -#: guix/scripts/system.scm:905 +#: guix/scripts/system.scm:928 msgid "" "Usage: guix system [OPTION ...] ACTION [ARG ...] [FILE]\n" "Build the operating system declared in FILE according to ACTION.\n" @@ -1698,71 +1796,71 @@ msgstr "" "Compilação do sistema operacional declarado em ARQUIVO de acordo com AÇÃO.\n" "Algumas AÇÕES fornecem suporte adicional a ARGUMENTOS.\n" -#: guix/scripts/system.scm:909 guix/scripts/container.scm:28 +#: guix/scripts/system.scm:932 guix/scripts/container.scm:28 msgid "The valid values for ACTION are:\n" msgstr "Os valores válidos para AÇÃO são:\n" -#: guix/scripts/system.scm:911 +#: guix/scripts/system.scm:934 msgid " search search for existing service types\n" msgstr " search pesquisa por tipos de serviços existentes\n" -#: guix/scripts/system.scm:913 +#: guix/scripts/system.scm:936 msgid " reconfigure switch to a new operating system configuration\n" msgstr " reconfigure alterna para configuração de um novo sistema operacional\n" -#: guix/scripts/system.scm:915 +#: guix/scripts/system.scm:938 msgid " roll-back switch to the previous operating system configuration\n" msgstr " roll-back alterna para a configuração de sistema operacional anterior\n" -#: guix/scripts/system.scm:917 +#: guix/scripts/system.scm:940 msgid " switch-generation switch to an existing operating system configuration\n" msgstr " switch-generation alterna para uma configuração de sistema operacional existente\n" -#: guix/scripts/system.scm:919 +#: guix/scripts/system.scm:942 msgid " list-generations list the system generations\n" msgstr " list-generations lista as gerações do sistema\n" -#: guix/scripts/system.scm:921 +#: guix/scripts/system.scm:944 msgid " build build the operating system without installing anything\n" msgstr " build compila o sistema operacional sem instalador nada\n" -#: guix/scripts/system.scm:923 +#: guix/scripts/system.scm:946 msgid " container build a container that shares the host's store\n" msgstr "" " container compila um contêiner que compartilha o armazenamento\n" " da máquina\n" -#: guix/scripts/system.scm:925 +#: guix/scripts/system.scm:948 msgid " vm build a virtual machine image that shares the host's store\n" msgstr "" " vm compila uma imagem de máquina virtual que compartilha\n" " o armazenamento da máquina\n" -#: guix/scripts/system.scm:927 +#: guix/scripts/system.scm:950 msgid " vm-image build a freestanding virtual machine image\n" msgstr " vm-image compila uma imagem de máquina virtual independente\n" -#: guix/scripts/system.scm:929 +#: guix/scripts/system.scm:952 msgid " disk-image build a disk image, suitable for a USB stick\n" msgstr " disk-image compila uma imagem de disco, adequada para pendrive USB\n" -#: guix/scripts/system.scm:931 +#: guix/scripts/system.scm:954 msgid " docker-image build a Docker image\n" msgstr " docker-image compila uma imagem de Docker\n" -#: guix/scripts/system.scm:933 +#: guix/scripts/system.scm:956 msgid " init initialize a root file system to run GNU\n" msgstr " init inicializa um sistema de arquivos raiz para executar GNU\n" -#: guix/scripts/system.scm:935 +#: guix/scripts/system.scm:958 msgid " extension-graph emit the service extension graph in Dot format\n" msgstr " extension-graph emite o gráfico da extensão de serviço no formato Dot\n" -#: guix/scripts/system.scm:937 +#: guix/scripts/system.scm:960 msgid " shepherd-graph emit the graph of shepherd services in Dot format\n" msgstr " shepherd-graph emite o gráfico de serviços do shepherd no formato Dot\n" -#: guix/scripts/system.scm:941 +#: guix/scripts/system.scm:964 msgid "" "\n" " -d, --derivation return the derivation of the given system" @@ -1770,7 +1868,7 @@ msgstr "" "\n" " -d, --derivation retorna a derivação do sistema dado" -#: guix/scripts/system.scm:943 +#: guix/scripts/system.scm:966 msgid "" "\n" " -e, --expression=EXPR consider the operating-system EXPR evaluates to\n" @@ -1780,7 +1878,7 @@ msgstr "" " -e, --expression=EXPR considera operating-sistem para o qual EXPR avalia\n" " em vez de ler ARQUIVO, quando aplicável" -#: guix/scripts/system.scm:946 +#: guix/scripts/system.scm:969 msgid "" "\n" " --on-error=STRATEGY\n" @@ -1790,7 +1888,7 @@ msgstr "" " --on-error=ESTRATÉGIA\n" " aplica ESTRATÉGIA ao ocorrer um erro ao ler ARQUIVO" -#: guix/scripts/system.scm:949 +#: guix/scripts/system.scm:972 msgid "" "\n" " --file-system-type=TYPE\n" @@ -1802,7 +1900,7 @@ msgstr "" " para \"disk-image\", produz um sistema de arquivos\n" " raiz do TIPO (um entre \"ext4\", \"iso9660\")" -#: guix/scripts/system.scm:953 +#: guix/scripts/system.scm:976 msgid "" "\n" " --image-size=SIZE for 'vm-image', produce an image of SIZE" @@ -1810,7 +1908,7 @@ msgstr "" "\n" " --image-size=TAM para \"vm-image\", produz uma imagem de TAM" -#: guix/scripts/system.scm:955 +#: guix/scripts/system.scm:978 msgid "" "\n" " --no-bootloader for 'init', do not install a bootloader" @@ -1818,7 +1916,7 @@ msgstr "" "\n" " --no-bootloader para \"init\", não instala um carregador de inic." -#: guix/scripts/system.scm:957 +#: guix/scripts/system.scm:980 msgid "" "\n" " --share=SPEC for 'vm', share host file system according to SPEC" @@ -1827,7 +1925,7 @@ msgstr "" " --share=ESPEC para \"vm\", compartilha o sistema de arquivos do\n" " hospedeiro de acordo com ESPEC" -#: guix/scripts/system.scm:959 +#: guix/scripts/system.scm:982 msgid "" "\n" " -r, --root=FILE for 'vm', 'vm-image', 'disk-image', 'container',\n" @@ -1840,7 +1938,7 @@ msgstr "" " o resultado e o registra, como um coletor de lixo\n" " central" -#: guix/scripts/system.scm:963 +#: guix/scripts/system.scm:986 msgid "" "\n" " --expose=SPEC for 'vm', expose host file system according to SPEC" @@ -1849,7 +1947,7 @@ msgstr "" " --expose=ESPEC para \"vm\", expõe o sistema de arquivos do\n" " hospedeiro de acordo com ESPEC" -#: guix/scripts/system.scm:965 +#: guix/scripts/system.scm:988 msgid "" "\n" " --full-boot for 'vm', make a full boot sequence" @@ -1858,7 +1956,7 @@ msgstr "" " --full-boot para \"vm\", faz uma sequência completa de\n" " inicialização" -#: guix/scripts/system.scm:967 +#: guix/scripts/system.scm:990 msgid "" "\n" " --skip-checks skip file system and initrd module safety checks" @@ -1867,37 +1965,37 @@ msgstr "" " --skip-checks ignora verificações de segurança do sistema de\n" " arquivos e de módulo de initrd" -#: guix/scripts/system.scm:1066 +#: guix/scripts/system.scm:1089 #, scheme-format msgid "both file and expression cannot be specified~%" msgstr "não podem ser especificados arquivo e expressão~%" -#: guix/scripts/system.scm:1073 +#: guix/scripts/system.scm:1096 #, scheme-format msgid "no configuration specified~%" msgstr "nenhuma configuração especificada~%" -#: guix/scripts/system.scm:1173 +#: guix/scripts/system.scm:1196 #, scheme-format msgid "~a: unknown action~%" msgstr "~a: ação desconhecida~%" -#: guix/scripts/system.scm:1189 +#: guix/scripts/system.scm:1212 #, scheme-format msgid "wrong number of arguments for action '~a'~%" msgstr "número errado de argumentos para a ação \"~a\"~%" -#: guix/scripts/system.scm:1194 +#: guix/scripts/system.scm:1217 #, scheme-format msgid "guix system: missing command name~%" msgstr "guix system: faltando um nome de comando~%" -#: guix/scripts/system.scm:1196 +#: guix/scripts/system.scm:1219 #, scheme-format msgid "Try 'guix system --help' for more information.~%" msgstr "Tente \"guix system --help\" para mais informações.~%" -#: guix/scripts/system/search.scm:64 guix/ui.scm:1112 guix/ui.scm:1126 +#: guix/scripts/system/search.scm:88 guix/ui.scm:1162 guix/ui.scm:1176 msgid "unknown" msgstr "desconhecido" @@ -2080,123 +2178,123 @@ msgstr "falha ao criar a derivação: ~s~%" msgid "invalid license field" msgstr "campo de licença inválido" -#: guix/scripts/lint.scm:825 +#: guix/scripts/lint.scm:816 #, scheme-format msgid "~a: HTTP GET error for ~a: ~a (~s)~%" msgstr "~a: erro HTTP GET para ~a: ~a (~s)~%" -#: guix/scripts/lint.scm:835 +#: guix/scripts/lint.scm:826 #, scheme-format msgid "~a: host lookup failure: ~a~%" msgstr "~a: falha ao procurar o host: ~a~%" -#: guix/scripts/lint.scm:840 +#: guix/scripts/lint.scm:831 #, scheme-format msgid "~a: TLS certificate error: ~a" msgstr "~a: erro de certificado TLS: ~a" -#: guix/scripts/lint.scm:855 +#: guix/scripts/lint.scm:846 msgid "while retrieving CVE vulnerabilities" msgstr "ao obter vulnerabilidades CVE" -#: guix/scripts/lint.scm:898 +#: guix/scripts/lint.scm:883 #, scheme-format msgid "probably vulnerable to ~a" msgstr "provavelmente vulnerável a ~a" -#: guix/scripts/lint.scm:905 +#: guix/scripts/lint.scm:890 #, scheme-format msgid "while retrieving upstream info for '~a'" msgstr "ao obter informações do upstream para \"~a\"" -#: guix/scripts/lint.scm:913 +#: guix/scripts/lint.scm:898 #, scheme-format msgid "can be upgraded to ~a" msgstr "pode ser atualizado para ~a" -#: guix/scripts/lint.scm:928 +#: guix/scripts/lint.scm:913 #, scheme-format msgid "tabulation on line ~a, column ~a" msgstr "tabulação na linha ~a, coluna ~a" -#: guix/scripts/lint.scm:937 +#: guix/scripts/lint.scm:922 #, scheme-format msgid "trailing white space on line ~a" msgstr "espaço ao final da linha ~a" -#: guix/scripts/lint.scm:947 +#: guix/scripts/lint.scm:932 #, scheme-format msgid "line ~a is way too long (~a characters)" msgstr "a linha ~a está grande demais (~a caracteres)" -#: guix/scripts/lint.scm:958 +#: guix/scripts/lint.scm:943 #, scheme-format msgid "line ~a: parentheses feel lonely, move to the previous or next line" msgstr "linha ~a: parênteses está solitário, mova-o para a linha anterior ou a seguinte" -#: guix/scripts/lint.scm:1028 +#: guix/scripts/lint.scm:1013 msgid "Validate package descriptions" msgstr "Valida descrições dos pacotes" -#: guix/scripts/lint.scm:1032 +#: guix/scripts/lint.scm:1017 msgid "Validate synopsis & description of GNU packages" msgstr "Valida sinopse & descrição de pacotes GNU" -#: guix/scripts/lint.scm:1036 +#: guix/scripts/lint.scm:1021 msgid "Identify inputs that should be native inputs" msgstr "Identifica entradas que devem ser nativas" -#: guix/scripts/lint.scm:1040 -msgid "Identify inputs that should be inputs at all" -msgstr "Identifica entradas que devem ser entradas" +#: guix/scripts/lint.scm:1025 +msgid "Identify inputs that shouldn't be inputs at all" +msgstr "Identifica entradas que podem ser entradas" -#: guix/scripts/lint.scm:1044 +#: guix/scripts/lint.scm:1029 msgid "Validate file names and availability of patches" msgstr "Valida nomes de arquivos e disponibilidade de patches" -#: guix/scripts/lint.scm:1048 +#: guix/scripts/lint.scm:1033 msgid "Validate home-page URLs" msgstr "Valida URLs de site" #. TRANSLATORS: is the name of a data type and must not be #. translated. -#: guix/scripts/lint.scm:1054 +#: guix/scripts/lint.scm:1039 msgid "Make sure the 'license' field is a or a list thereof" msgstr "Certifica que o campo \"license\" é um ou uma lista disto" -#: guix/scripts/lint.scm:1059 +#: guix/scripts/lint.scm:1044 msgid "Validate source URLs" msgstr "Valida URLs fonte" -#: guix/scripts/lint.scm:1063 +#: guix/scripts/lint.scm:1048 msgid "Suggest 'mirror://' URLs" msgstr "Sugere URLs \"mirror://\"" -#: guix/scripts/lint.scm:1067 +#: guix/scripts/lint.scm:1052 msgid "Validate file names of sources" msgstr "Valida nomes de arquivos dos fontes" -#: guix/scripts/lint.scm:1071 +#: guix/scripts/lint.scm:1056 msgid "Report failure to compile a package to a derivation" msgstr "Relata falha ao compilar um pacote para uma derivação" -#: guix/scripts/lint.scm:1075 +#: guix/scripts/lint.scm:1060 msgid "Validate package synopses" msgstr "Valida sinopses do pacotes" -#: guix/scripts/lint.scm:1079 +#: guix/scripts/lint.scm:1064 msgid "Check the Common Vulnerabilities and Exposures (CVE) database" msgstr "Verifica o banco de dados de Vulnerabilidades e Exposições Comuns (CVE)" -#: guix/scripts/lint.scm:1084 +#: guix/scripts/lint.scm:1069 msgid "Check the package for new upstream releases" msgstr "Verifica o pacote por novos lançamentos do upstream" -#: guix/scripts/lint.scm:1088 +#: guix/scripts/lint.scm:1073 msgid "Look for formatting issues in the source" msgstr "Procura por problemas de formatação no fonte" -#: guix/scripts/lint.scm:1116 +#: guix/scripts/lint.scm:1101 msgid "" "Usage: guix lint [OPTION]... [PACKAGE]...\n" "Run a set of checkers on the specified package; if none is specified,\n" @@ -2206,7 +2304,7 @@ msgstr "" "Executa uma série de verificadores no pacote especificado; se nenhum\n" "for especificado, executa-os em todos pacote.\n" -#: guix/scripts/lint.scm:1119 +#: guix/scripts/lint.scm:1104 msgid "" "\n" " -c, --checkers=CHECKER1,CHECKER2...\n" @@ -2216,7 +2314,7 @@ msgstr "" " -c, --checkers=CHECKER1,CHECKER2...\n" " executa apenas os verificadores especificados" -#: guix/scripts/lint.scm:1124 +#: guix/scripts/lint.scm:1109 msgid "" "\n" " -l, --list-checkers display the list of available lint checkers" @@ -2224,7 +2322,7 @@ msgstr "" "\n" " -l, --list-checkers exibe a lista de verificações lint disponíveis" -#: guix/scripts/lint.scm:1144 +#: guix/scripts/lint.scm:1129 #, scheme-format msgid "~a: invalid checker~%" msgstr "~a: verificador inválido~%" @@ -2572,7 +2670,7 @@ msgstr "" "\n" " --list-types lista os tipos de gráficos disponíveis" -#: guix/scripts/graph.scm:463 guix/scripts/pack.scm:355 +#: guix/scripts/graph.scm:463 guix/scripts/pack.scm:644 msgid "" "\n" " -e, --expression=EXPR consider the package EXPR evaluates to" @@ -2696,17 +2794,26 @@ msgstr "" msgid "use '--to' or '--from'~%" msgstr "use \"--to\" ou \"--from\"~%" -#: guix/scripts/pack.scm:85 +#: guix/scripts/pack.scm:89 #, scheme-format msgid "~a: compressor not found~%" msgstr "~a: compressor não encontrado~%" -#: guix/scripts/pack.scm:334 +#: guix/scripts/pack.scm:467 +#, scheme-format +msgid "" +"cross-compilation not implemented here;\n" +"please email '~a'~%" +msgstr "" +"compilação cruzada não implementada aqui;\n" +"por favor, envie um e-mail para '~a'~%" + +#: guix/scripts/pack.scm:621 #, scheme-format msgid "~a: invalid symlink specification~%" msgstr "~a: especificação de link simbólico inválida~%" -#: guix/scripts/pack.scm:347 +#: guix/scripts/pack.scm:634 msgid "" "Usage: guix pack [OPTION]... PACKAGE...\n" "Create a bundle of PACKAGE.\n" @@ -2714,7 +2821,7 @@ msgstr "" "Uso: guix pack [OPÇÃO]... PACOTE...\n" "Cria um pacote de PACOTE.\n" -#: guix/scripts/pack.scm:353 +#: guix/scripts/pack.scm:640 msgid "" "\n" " -f, --format=FORMAT build a pack in the given FORMAT" @@ -2722,7 +2829,15 @@ msgstr "" "\n" " -f, --format=FORMATO compila um pacote no FORMATO dado" -#: guix/scripts/pack.scm:361 +#: guix/scripts/pack.scm:642 +msgid "" +"\n" +" -R, --relocatable produce relocatable executables" +msgstr "" +"\n" +" -R, --relocatable produz executáveis relocados" + +#: guix/scripts/pack.scm:650 msgid "" "\n" " -C, --compression=TOOL compress using TOOL--e.g., \"lzip\"" @@ -2731,7 +2846,7 @@ msgstr "" " -C, --compression=FERRAMENTA\n" " comprime usando FERRAMENTA--ex. \"lzip\"" -#: guix/scripts/pack.scm:363 +#: guix/scripts/pack.scm:652 msgid "" "\n" " -S, --symlink=SPEC create symlinks to the profile according to SPEC" @@ -2739,7 +2854,7 @@ msgstr "" "\n" " -S, --symlink=ESPEC cria link simbólicos para o perfil conforme ESPEC" -#: guix/scripts/pack.scm:365 +#: guix/scripts/pack.scm:654 msgid "" "\n" " -m, --manifest=FILE create a pack with the manifest from FILE" @@ -2747,7 +2862,7 @@ msgstr "" "\n" " -m, --manifest=ARQUIVO cria um pacote com o manifesto do ARQUIVO" -#: guix/scripts/pack.scm:367 +#: guix/scripts/pack.scm:656 msgid "" "\n" " --localstatedir include /var/guix in the resulting pack" @@ -2755,7 +2870,7 @@ msgstr "" "\n" " --localstatedir inclui /var/guix no pacote resultante" -#: guix/scripts/pack.scm:369 +#: guix/scripts/pack.scm:658 msgid "" "\n" " --bootstrap use the bootstrap binaries to build the pack" @@ -2764,12 +2879,12 @@ msgstr "" " --bootstrap usa os executáveis de inicialização para compilar\n" " o pacote" -#: guix/scripts/pack.scm:405 +#: guix/scripts/pack.scm:700 #, scheme-format msgid "both a manifest and a package list were given~%" msgstr "foram especificados um manifesto e uma lista de pacote~%" -#: guix/scripts/pack.scm:429 +#: guix/scripts/pack.scm:743 #, scheme-format msgid "~a: unknown pack format" msgstr "~a: formato de pacote desconhecido" @@ -2985,65 +3100,65 @@ msgstr "~a: não foi possível localizar um arquivo fonte" msgid "~a: ~a: no `version' field in source; skipping~%" msgstr "~a: ~a: sem o campo \"version\" no fonte; ignorando~%" -#: guix/ui.scm:161 +#: guix/ui.scm:169 #, scheme-format -msgid "~a: unbound variable" -msgstr "~a: variável não vinculada" +msgid "error: ~a: unbound variable" +msgstr "erro: ~a: variável não vinculada" -#: guix/ui.scm:253 +#: guix/ui.scm:265 msgid "entering debugger; type ',bt' for a backtrace\n" msgstr "entrando no depurador; digite \",bt\" para o \"backtrace\"\n" -#: guix/ui.scm:302 +#: guix/ui.scm:314 #, scheme-format msgid "hint: ~a~%" msgstr "dica: ~a~%" -#: guix/ui.scm:314 guix/ui.scm:362 guix/ui.scm:369 -#, scheme-format -msgid "failed to load '~a': ~a~%" -msgstr "falha ao carregar \"~a\": ~a~%" - -#: guix/ui.scm:321 -#, scheme-format -msgid "~amissing closing parenthesis~%" -msgstr "~afaltando parêntese de fechamento~%" - -#: guix/ui.scm:326 guix/ui.scm:342 guix/ui.scm:642 -#, scheme-format -msgid "~a: error: ~a~%" -msgstr "~a: erro: ~a~%" - -#: guix/ui.scm:334 +#: guix/ui.scm:330 msgid "Did you forget a @code{use-modules} form?" msgstr "Você se esqueceu de uma forma @code{use-modules}?" -#: guix/ui.scm:336 +#: guix/ui.scm:332 #, scheme-format msgid "Did you forget @code{(use-modules ~a)}?" msgstr "Você se esqueceu de @code{(use-modules ~a)}?" -#: guix/ui.scm:349 guix/ui.scm:712 +#: guix/ui.scm:341 guix/ui.scm:381 guix/ui.scm:388 +#, scheme-format +msgid "failed to load '~a': ~a~%" +msgstr "falha ao carregar \"~a\": ~a~%" + +#: guix/ui.scm:348 +#, scheme-format +msgid "~amissing closing parenthesis~%" +msgstr "~afaltando parêntese de fechamento~%" + +#: guix/ui.scm:353 guix/ui.scm:361 guix/ui.scm:692 +#, scheme-format +msgid "~a: error: ~a~%" +msgstr "~a: erro: ~a~%" + +#: guix/ui.scm:368 guix/ui.scm:762 #, scheme-format msgid "exception thrown: ~s~%" msgstr "excepção lançada: ~s~%" -#: guix/ui.scm:353 guix/ui.scm:375 +#: guix/ui.scm:372 guix/ui.scm:394 #, scheme-format msgid "failed to load '~a':~%" msgstr "falha ao carregar \"~a\":~%" -#: guix/ui.scm:365 +#: guix/ui.scm:384 #, scheme-format msgid "~a: warning: ~a~%" msgstr "~a: aviso: ~a~%" -#: guix/ui.scm:372 +#: guix/ui.scm:391 #, scheme-format msgid "failed to load '~a': exception thrown: ~s~%" msgstr "falha ao carregar \"~a\": exceção lançada: ~s~%" -#: guix/ui.scm:384 +#: guix/ui.scm:424 #, scheme-format msgid "failed to install locale: ~a~%" msgstr "falha ao instalar localidade: ~a~%" @@ -3051,15 +3166,15 @@ msgstr "falha ao instalar localidade: ~a~%" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's #. locale. Otherwise, do not translate "(C)"; leave it as-is. */ -#: guix/ui.scm:414 +#: guix/ui.scm:454 msgid "(C)" msgstr "(C)" -#: guix/ui.scm:415 +#: guix/ui.scm:455 msgid "the Guix authors\n" msgstr "os autores do Guix\n" -#: guix/ui.scm:416 +#: guix/ui.scm:456 msgid "" "License GPLv3+: GNU GPL version 3 or later \n" "This is free software: you are free to change and redistribute it.\n" @@ -3073,7 +3188,7 @@ msgstr "" #. package. Please add another line saying "Report translation bugs to #. ...\n" with the address for translation bugs (typically your translation #. team's web or email address). -#: guix/ui.scm:428 +#: guix/ui.scm:468 #, scheme-format msgid "" "\n" @@ -3083,7 +3198,7 @@ msgstr "" "Relate erros para: ~a.\n" "Relate erros de tradução para: ldpbr-translation@lists.sourceforge.net." -#: guix/ui.scm:430 +#: guix/ui.scm:470 #, scheme-format msgid "" "\n" @@ -3092,7 +3207,7 @@ msgstr "" "\n" "Site do ~a: <~a>" -#: guix/ui.scm:432 +#: guix/ui.scm:472 msgid "" "\n" "General help using GNU software: " @@ -3100,27 +3215,27 @@ msgstr "" "\n" "Ajuda em geral usando softwares GNU: " -#: guix/ui.scm:477 +#: guix/ui.scm:517 #, scheme-format msgid "'~a' is not a valid regular expression: ~a~%" msgstr "\"~a\" não é uma expressão regular válida: ~a~%" -#: guix/ui.scm:483 +#: guix/ui.scm:523 #, scheme-format msgid "~a: invalid number~%" msgstr "~a: número inválido~%" -#: guix/ui.scm:500 +#: guix/ui.scm:540 #, scheme-format msgid "invalid number: ~a~%" msgstr "número inválido: ~a~%" -#: guix/ui.scm:523 +#: guix/ui.scm:563 #, scheme-format msgid "unknown unit: ~a~%" msgstr "unidade desconhecida: ~a~%" -#: guix/ui.scm:538 +#: guix/ui.scm:578 #, scheme-format msgid "" "You cannot have two different versions\n" @@ -3129,7 +3244,7 @@ msgstr "" "Você não pode ter duas versões diferentes\n" "ou variantes de @code{~a} no mesmo perfil." -#: guix/ui.scm:541 +#: guix/ui.scm:581 #, scheme-format msgid "" "Try upgrading both @code{~a} and @code{~a},\n" @@ -3138,111 +3253,116 @@ msgstr "" "Tente atualizar ambos @code{~a} e @code{~a},\n" "ou remover um deles do perfil." -#: guix/ui.scm:560 +#: guix/ui.scm:600 #, scheme-format msgid "~a:~a:~a: package `~a' has an invalid input: ~s~%" msgstr "~a:~a:~a: o pacote \"~a\" tem uma entrada inválida: ~s~%" -#: guix/ui.scm:567 +#: guix/ui.scm:607 #, scheme-format msgid "~a: ~a: build system `~a' does not support cross builds~%" msgstr "~a: ~a: o sistema de compilação de \"~a\" não oferece suporte a compilações cruzadas~%" -#: guix/ui.scm:573 +#: guix/ui.scm:613 #, scheme-format msgid "~s: invalid G-expression input~%" msgstr "~s: entrada de expressão G inválida~%" -#: guix/ui.scm:576 +#: guix/ui.scm:616 #, scheme-format msgid "profile '~a' does not exist~%" msgstr "o perfil \"~a\" não existe~%" -#: guix/ui.scm:579 +#: guix/ui.scm:619 #, scheme-format msgid "generation ~a of profile '~a' does not exist~%" msgstr "a geração ~a do perfil \"~a\" não existe~%" -#: guix/ui.scm:588 +#: guix/ui.scm:628 #, scheme-format msgid " ... propagated from ~a@~a~%" msgstr " ... propagado de ~a@~a~%" -#: guix/ui.scm:598 +#: guix/ui.scm:638 #, scheme-format msgid "profile contains conflicting entries for ~a~a~%" msgstr "o perfil contém entradas conflitantes para ~a~a~%" -#: guix/ui.scm:601 +#: guix/ui.scm:641 #, scheme-format msgid " first entry: ~a@~a~a ~a~%" msgstr " primeira entrada: ~a@~a~a ~a~%" -#: guix/ui.scm:607 +#: guix/ui.scm:647 #, scheme-format msgid " second entry: ~a@~a~a ~a~%" msgstr " segunda entrada: ~a@~a~a ~a~%" -#: guix/ui.scm:619 +#: guix/ui.scm:659 #, scheme-format msgid "corrupt input while restoring '~a' from ~s~%" msgstr "entrada corrompida ao restaurar \"~a\" de ~s~%" -#: guix/ui.scm:621 +#: guix/ui.scm:661 #, scheme-format msgid "corrupt input while restoring archive from ~s~%" msgstr "entrada corrompida ao restaurar um pacote de ~s~%" -#: guix/ui.scm:624 +#: guix/ui.scm:664 #, scheme-format msgid "failed to connect to `~a': ~a~%" msgstr "falha ao conectar em \"~a\": ~a~%" -#: guix/ui.scm:629 +#: guix/ui.scm:669 #, scheme-format msgid "build failed: ~a~%" msgstr "compilação falhou: ~a~%" -#: guix/ui.scm:632 +#: guix/ui.scm:672 #, scheme-format msgid "reference to invalid output '~a' of derivation '~a'~%" msgstr "referência a uma saída inválida \"~a\" da derivação \"~a\"~%" -#: guix/ui.scm:636 +#: guix/ui.scm:676 #, scheme-format msgid "file '~a' could not be found in these directories:~{ ~a~}~%" msgstr "o arquivo \"~a\" não pôde ser localizado nesses diretórios:~{ ~a~}~%" -#: guix/ui.scm:662 +#: guix/ui.scm:681 +#, scheme-format +msgid "program exited~@[ with non-zero exit status ~a~]~@[ terminated by signal ~a~]~@[ stopped by signal ~a~]: ~s~%" +msgstr "programa saiu~@[ com status de saída não zero ~a~]~@[ terminado por sinal ~a~]~@[ parado por sinal ~a~]: ~s~%" + +#: guix/ui.scm:712 #, scheme-format msgid "~a: ~a~%" msgstr "~a: ~a~%" -#: guix/ui.scm:697 +#: guix/ui.scm:747 #, scheme-format msgid "failed to read expression ~s: ~s~%" msgstr "falha ao ler a expressão ~s: ~s~%" -#: guix/ui.scm:703 +#: guix/ui.scm:753 #, scheme-format msgid "failed to evaluate expression '~a':~%" msgstr "falha ao avaliar a expressão \"~a\":~%" -#: guix/ui.scm:706 +#: guix/ui.scm:756 #, scheme-format msgid "syntax error: ~a~%" msgstr "erro de sintaxe: ~a~%" -#: guix/ui.scm:724 +#: guix/ui.scm:774 #, scheme-format msgid "expression ~s does not evaluate to a package~%" msgstr "a expressão ~s não corresponde a um pacote~%" -#: guix/ui.scm:743 +#: guix/ui.scm:793 msgid "at least ~,1h MB needed but only ~,1h MB available in ~a~%" msgstr "pelo menos ~,1h MB necessário, mas apenas ~,1h MB disponível em ~a~%" -#: guix/ui.scm:811 +#: guix/ui.scm:861 #, scheme-format msgid "~:[The following derivation would be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations would be built:~%~{ ~a~%~}~;~]" @@ -3251,18 +3371,18 @@ msgstr[1] "~:[As seguintes derivações seriam compiladas:~%~{ ~a~%~}~;~]" #. TRANSLATORS: "MB" is for "megabyte"; it should be #. translated to the corresponding abbreviation. -#: guix/ui.scm:819 +#: guix/ui.scm:869 msgid "~:[~,1h MB would be downloaded:~%~{ ~a~%~}~;~]" msgstr "~:[~,1h MB seria baixado:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:824 +#: guix/ui.scm:874 #, scheme-format msgid "~:[The following file would be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files would be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[O seguinte arquivo seria baixado:~%~{ ~a~%~}~;~]" msgstr[1] "~:[Os seguintes arquivos seriam baixados:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:831 +#: guix/ui.scm:881 #, scheme-format msgid "~:[The following derivation will be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations will be built:~%~{ ~a~%~}~;~]" @@ -3271,107 +3391,117 @@ msgstr[1] "~:[As seguintes derivações serão compiladas:~%~{ ~a~%~}~;~]" #. TRANSLATORS: "MB" is for "megabyte"; it should be #. translated to the corresponding abbreviation. -#: guix/ui.scm:839 +#: guix/ui.scm:889 msgid "~:[~,1h MB will be downloaded:~%~{ ~a~%~}~;~]" msgstr "~:[~,1h MB será baixado:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:844 +#: guix/ui.scm:894 #, scheme-format msgid "~:[The following file will be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files will be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[O seguinte arquivo será baixado:~%~{ ~a~%~}~;~]" msgstr[1] "~:[Os seguintes arquivos serão baixados:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:904 +#: guix/ui.scm:954 #, scheme-format msgid "The following package would be removed:~%~{~a~%~}~%" msgid_plural "The following packages would be removed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote seria removido:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes seriam removidos:~%~{~a~%~}~%" -#: guix/ui.scm:909 +#: guix/ui.scm:959 #, scheme-format msgid "The following package will be removed:~%~{~a~%~}~%" msgid_plural "The following packages will be removed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote será removido:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes serão removidos:~%~{~a~%~}~%" -#: guix/ui.scm:922 +#: guix/ui.scm:972 #, scheme-format msgid "The following package would be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be downgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote sofreria um downgrade:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes sofreriam um downgrade:~%~{~a~%~}~%" -#: guix/ui.scm:927 +#: guix/ui.scm:977 #, scheme-format msgid "The following package will be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be downgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote sofrerá um downgrade:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes sofrerão um downgrade:~%~{~a~%~}~%" -#: guix/ui.scm:940 +#: guix/ui.scm:990 #, scheme-format msgid "The following package would be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be upgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote seria atualizado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes seriam atualizados:~%~{~a~%~}~%" -#: guix/ui.scm:945 +#: guix/ui.scm:995 #, scheme-format msgid "The following package will be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be upgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote será atualizado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes serão atualizados:~%~{~a~%~}~%" -#: guix/ui.scm:956 +#: guix/ui.scm:1006 #, scheme-format msgid "The following package would be installed:~%~{~a~%~}~%" msgid_plural "The following packages would be installed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote seria instalado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes seriam instalados:~%~{~a~%~}~%" -#: guix/ui.scm:961 +#: guix/ui.scm:1011 #, scheme-format msgid "The following package will be installed:~%~{~a~%~}~%" msgid_plural "The following packages will be installed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote será instalado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes serão instalados:~%~{~a~%~}~%" -#: guix/ui.scm:978 +#: guix/ui.scm:1028 msgid "" msgstr "" -#: guix/ui.scm:1340 +#: guix/ui.scm:1390 #, scheme-format msgid "Generation ~a\t~a" msgstr "Geração ~a\t~a" +#. TRANSLATORS: This is a format-string for date->string. +#. Please choose a format that corresponds to the +#. usual way of presenting dates in your locale. +#. See https://www.gnu.org/software/guile/manual/html_node/SRFI_002d19-Date-to-string.html +#. for details. +#: guix/ui.scm:1399 +#, scheme-format +msgid "~b ~d ~Y ~T" +msgstr "~d ~b ~Y ~T" + #. TRANSLATORS: The word "current" here is an adjective for #. "Generation", as in "current generation". Use the appropriate #. gender where applicable. -#: guix/ui.scm:1350 +#: guix/ui.scm:1405 #, scheme-format msgid "~a\t(current)~%" msgstr "~a\t(atual)~%" # geração, criação? -#: guix/ui.scm:1393 +#: guix/ui.scm:1448 #, scheme-format msgid "switched from generation ~a to ~a~%" msgstr "trocado da geração ~a para ~a~%" -#: guix/ui.scm:1409 +#: guix/ui.scm:1464 #, scheme-format msgid "deleting ~a~%" msgstr "excluindo ~a~%" -#: guix/ui.scm:1440 +#: guix/ui.scm:1495 #, scheme-format msgid "Try `guix --help' for more information.~%" msgstr "Tente \"guix --help\" para mais informações.~%" -#: guix/ui.scm:1468 +#: guix/ui.scm:1523 msgid "" "Usage: guix COMMAND ARGS...\n" "Run COMMAND with ARGS.\n" @@ -3379,21 +3509,21 @@ msgstr "" "Uso: guix COMANDO ARGUMENTOS...\n" "Executa COMANDO com ARGUMENTOS.\n" -#: guix/ui.scm:1471 +#: guix/ui.scm:1526 msgid "COMMAND must be one of the sub-commands listed below:\n" msgstr "COMANDO deve ser um dos subcomandos listados abaixo:\n" -#: guix/ui.scm:1491 +#: guix/ui.scm:1546 #, scheme-format msgid "guix: ~a: command not found~%" msgstr "guix: ~a: comando não encontrado~%" -#: guix/ui.scm:1521 +#: guix/ui.scm:1576 #, scheme-format msgid "guix: missing command name~%" msgstr "guix: faltando um nome de comando~%" -#: guix/ui.scm:1529 +#: guix/ui.scm:1584 #, scheme-format msgid "guix: unrecognized option '~a'~%" msgstr "guix: opção \"~a\" desconhecida~%" @@ -3408,45 +3538,45 @@ msgstr "seguindo redirecionamento para \"~a\"...~%" msgid "~a: HTTP download failed: ~a (~s)" msgstr "~a: download HTTP falhou: ~a (~s)" -#: guix/nar.scm:155 +#: guix/nar.scm:156 msgid "signature is not a valid s-expression" msgstr "a assinatura não é uma expressão-s válida" -#: guix/nar.scm:164 +#: guix/nar.scm:165 msgid "invalid signature" msgstr "assinatura inválida" -#: guix/nar.scm:168 +#: guix/nar.scm:169 msgid "invalid hash" msgstr "hash inválido" -#: guix/nar.scm:176 +#: guix/nar.scm:177 msgid "unauthorized public key" msgstr "chave pública não autorizada" -#: guix/nar.scm:181 +#: guix/nar.scm:182 msgid "corrupt signature data" msgstr "dados de assinatura corrompidos" -#: guix/nar.scm:201 +#: guix/nar.scm:202 msgid "corrupt file set archive" msgstr "pacote de conjunto de arquivos corrompido" -#: guix/nar.scm:211 +#: guix/nar.scm:212 #, scheme-format msgid "importing file or directory '~a'...~%" msgstr "importando arquivo ou diretório \"~a\"...~%" -#: guix/nar.scm:222 +#: guix/nar.scm:223 #, scheme-format msgid "found valid signature for '~a'~%" msgstr "localizada assinatura válida para \"~a\"~%" -#: guix/nar.scm:229 +#: guix/nar.scm:230 msgid "imported file lacks a signature" msgstr "arquivo importado carece de uma assinatura" -#: guix/nar.scm:268 +#: guix/nar.scm:269 msgid "invalid inter-file archive mark" msgstr "marca inválida de pacote interarquivo" @@ -3574,6 +3704,15 @@ msgstr "ouve conexões no SOQUETE" msgid "produce debugging output" msgstr "produz saída de depuração" +#~ msgid "Guix already up to date\n" +#~ msgstr "Guix já está atualizado\n" + +#~ msgid "updated ~a successfully deployed under `~a'~%" +#~ msgstr "~a atualizado foi implantado com sucesso sob \"~a\"~%" + +#~ msgid "failed to update Guix, check the build log~%" +#~ msgstr "falha ao atualizar Guix; verifique o log de compilação~%" + #~ msgid "Try adding @code{(use-modules ~a)}." #~ msgstr "Tente adicionar @code{(use-modules ~a)}." diff --git a/po/packages/da.po b/po/packages/da.po index d722898845..be9115ef63 100644 --- a/po/packages/da.po +++ b/po/packages/da.po @@ -1,14 +1,14 @@ # Danish translation guix-packages. # Copyright (C) 2017 Free Software Foundation, Inc. # This file is distributed under the same license as the guix package. -# Joe Hansen , 2015, 2016, 2017. +# Joe Hansen , 2015, 2016, 2017, 2018. # msgid "" msgstr "" -"Project-Id-Version: guix-packages 0.13.0\n" +"Project-Id-Version: guix-packages 0.15.0-pre1\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" -"POT-Creation-Date: 2017-05-10 23:22+0200\n" -"PO-Revision-Date: 2017-05-21 19:30+01:00\n" +"POT-Creation-Date: 2018-04-27 19:13+0200\n" +"PO-Revision-Date: 2018-06-16 19:30+01:00\n" "Last-Translator: Joe Hansen \n" "Language-Team: Danish \n" "Language: da\n" @@ -18,7 +18,7 @@ msgstr "" "X-Bugs: Report translation errors to the Language-Team address.\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: gnu/packages/abiword.scm:115 +#: gnu/packages/abiword.scm:114 msgid "Word processing program" msgstr "Tekstbehandlingsprogram" @@ -26,7 +26,7 @@ msgstr "Tekstbehandlingsprogram" #. descriptions may occasionally include Texinfo markup. Texinfo markup #. looks like "@code{rm -rf}", "@emph{important}", etc. When translating, #. please leave markup as is. -#: gnu/packages/abiword.scm:124 +#: gnu/packages/abiword.scm:123 msgid "" "AbiWord is a word processing program. It is rapidly\n" "becoming a state of the art word processor, with lots of features useful for\n" @@ -37,11 +37,11 @@ msgstr "" "som kan bruges i dit daglige arbejde, personlige behov, eller bare\n" "god gammeldags skrivning." -#: gnu/packages/aspell.scm:57 gnu/packages/libreoffice.scm:711 +#: gnu/packages/aspell.scm:70 gnu/packages/libreoffice.scm:718 msgid "Spell checker" msgstr "Stavekontrol" -#: gnu/packages/aspell.scm:59 +#: gnu/packages/aspell.scm:72 msgid "" "Aspell is a spell-checker which can be used either as a library or as\n" "a standalone program. Notable features of Aspell include its full support of\n" @@ -53,15 +53,45 @@ msgstr "" "fulde understøttelse af dokumenter skrivet i UTF-8-kodning og dets evne\n" "til at bruge flere ordbøger, inklusive personlige." -#: gnu/packages/aspell.scm:100 +#: gnu/packages/aspell.scm:114 msgid "This package provides a dictionary for the GNU Aspell spell checker." msgstr "Denne pakke tilbyder en ordbog for stavekontrollen GNU Aspell." -#: gnu/packages/audio.scm:124 +#: gnu/packages/aspell.scm:295 gnu/packages/libreoffice.scm:768 +msgid "" +"This package provides a dictionary for the Hunspell spell-checking\n" +"library." +msgstr "Denne pakke tilbyder en ordbog for stavekontrolbiblioteket Hunspell." + +#: gnu/packages/aspell.scm:313 +msgid "Hunspell dictionary for English" +msgstr "Hunspell-ordbog for engelsk" + +#: gnu/packages/aspell.scm:317 +msgid "Hunspell dictionary for Australian English" +msgstr "Hunspell-ordbog for australsk engelsk" + +#: gnu/packages/aspell.scm:321 +msgid "Hunspell dictionary for Canadian English" +msgstr "Hunspell-ordbog fro canadisk-engelsk" + +#: gnu/packages/aspell.scm:325 +msgid "Hunspell dictionary for British English, with -ise endings" +msgstr "Hunspell-ordbog for britisk engelsk, med -ise-endelser" + +#: gnu/packages/aspell.scm:329 +msgid "Hunspell dictionary for British English, with -ize endings" +msgstr "Hunspell-ordbog for britisk engelsk, med ize-endelser" + +#: gnu/packages/aspell.scm:333 +msgid "Hunspell dictionary for United States English" +msgstr "Hunspell-ordbog for amerikansk engelsk" + +#: gnu/packages/audio.scm:135 msgid "Realtime modular synthesizer and effect processor" msgstr "" -#: gnu/packages/audio.scm:126 +#: gnu/packages/audio.scm:137 msgid "" "AlsaModularSynth is a digital implementation of a classical analog\n" "modular synthesizer system. It uses virtual control voltages to control the\n" @@ -70,11 +100,11 @@ msgid "" "Filter) modules follow the convention of 1V / Octave." msgstr "" -#: gnu/packages/audio.scm:163 +#: gnu/packages/audio.scm:174 msgid "Library for audio labelling" msgstr "" -#: gnu/packages/audio.scm:165 +#: gnu/packages/audio.scm:176 msgid "" "aubio is a tool designed for the extraction of annotations from audio\n" "signals. Its features include segmenting a sound file before each of its\n" @@ -82,33 +112,33 @@ msgid "" "streams from live audio." msgstr "" -#: gnu/packages/audio.scm:266 +#: gnu/packages/audio.scm:277 msgid "Digital audio workstation" -msgstr "" +msgstr "Digital lydarbejdsstation" -#: gnu/packages/audio.scm:268 +#: gnu/packages/audio.scm:279 msgid "" "Ardour is a multi-channel digital audio workstation, allowing users to\n" "record, edit, mix and master audio and MIDI projects. It is targeted at audio\n" "engineers, musicians, soundtrack editors and composers." msgstr "" -#: gnu/packages/audio.scm:340 +#: gnu/packages/audio.scm:415 msgid "Software for recording and editing sounds" -msgstr "" +msgstr "Program til at optage og redigere lyde" -#: gnu/packages/audio.scm:342 +#: gnu/packages/audio.scm:417 msgid "" "Audacity is a multi-track audio editor designed for recording, playing\n" "and editing digital audio. It features digital effects and spectrum analysis\n" "tools." msgstr "" -#: gnu/packages/audio.scm:377 +#: gnu/packages/audio.scm:452 msgid "Tonewheel organ synthesizer" msgstr "" -#: gnu/packages/audio.scm:379 +#: gnu/packages/audio.scm:454 msgid "" "AZR-3 is a port of the free VST plugin AZR-3. It is a tonewheel organ\n" "with drawbars, distortion and rotating speakers. The organ has three\n" @@ -117,11 +147,11 @@ msgid "" "plugins are provided." msgstr "" -#: gnu/packages/audio.scm:416 +#: gnu/packages/audio.scm:491 msgid "Audio plug-in pack for LV2 and JACK environments" msgstr "Lydudvidelsesmpakke for LV2- og JACK-miljøer" -#: gnu/packages/audio.scm:418 +#: gnu/packages/audio.scm:493 msgid "" "Calf Studio Gear is an audio plug-in pack for LV2 and JACK environments.\n" "The suite contains lots of effects (delay, modulation, signal processing,\n" @@ -130,11 +160,11 @@ msgid "" "tools (analyzer, mono/stereo tools, crossovers)." msgstr "" -#: gnu/packages/audio.scm:470 +#: gnu/packages/audio.scm:545 msgid "Software speech synthesizer" msgstr "Programsynthesizer for tale" -#: gnu/packages/audio.scm:471 +#: gnu/packages/audio.scm:546 msgid "" "eSpeak is a software speech synthesizer for English and\n" "other languages. eSpeak uses a \"formant synthesis\" method. This allows many\n" @@ -143,22 +173,22 @@ msgid "" "based on human speech recordings." msgstr "" -#: gnu/packages/audio.scm:518 +#: gnu/packages/audio.scm:593 msgid "LV2 plugins for live use" msgstr "LV2-udvidelsesmoduler for live brug" -#: gnu/packages/audio.scm:520 +#: gnu/packages/audio.scm:595 msgid "" "The infamous plugins are a collection of LV2 audio plugins for live\n" "performances. The plugins include a cellular automaton synthesizer, an\n" "envelope follower, distortion effects, tape effects and more." msgstr "" -#: gnu/packages/audio.scm:561 +#: gnu/packages/audio.scm:636 msgid "SWH plugins in LV2 format" msgstr "SWH-udvidelsesmoduler i LV2-format" -#: gnu/packages/audio.scm:563 +#: gnu/packages/audio.scm:638 msgid "" "Swh-plugins-lv2 is a collection of audio plugins in LV2 format. Plugin\n" "classes include: dynamics (compressor, limiter), time (delay, chorus,\n" @@ -166,21 +196,21 @@ msgid "" "emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc." msgstr "" -#: gnu/packages/audio.scm:603 +#: gnu/packages/audio.scm:672 msgid "Sound and music computing system" msgstr "Lyd- og musikberegningsystem" -#: gnu/packages/audio.scm:605 +#: gnu/packages/audio.scm:674 msgid "" "Csound is a user-programmable and user-extensible sound processing\n" "language and software synthesizer." msgstr "" -#: gnu/packages/audio.scm:648 gnu/packages/audio.scm:2712 +#: gnu/packages/audio.scm:715 gnu/packages/audio.scm:2984 msgid "C++ wrapper around the ALSA API" msgstr "C++-omslag omkring ALSA API'en" -#: gnu/packages/audio.scm:650 +#: gnu/packages/audio.scm:717 msgid "" "clalsadrv is a C++ wrapper around the ALSA API simplifying access to\n" "ALSA PCM devices." @@ -188,22 +218,22 @@ msgstr "" "Clalsadrv er et C++-omslag omkring ALSA API'en, der forenkler adgang til\n" "ALSA PCM-enheder." -#: gnu/packages/audio.scm:687 +#: gnu/packages/audio.scm:754 msgid "LADSPA ambisonics plugins" msgstr "" -#: gnu/packages/audio.scm:689 +#: gnu/packages/audio.scm:756 msgid "" "The AMB plugins are a set of LADSPA ambisonics plugins, mainly to be\n" "used within Ardour. Features include: mono and stereo to B-format panning,\n" "horizontal rotator, square, hexagon and cube decoders." msgstr "" -#: gnu/packages/audio.scm:724 +#: gnu/packages/audio.scm:791 msgid "Chorus, phaser, and vintage high-pass and low-pass filters" msgstr "" -#: gnu/packages/audio.scm:726 +#: gnu/packages/audio.scm:793 msgid "" "This package provides various LADSPA plugins. @code{cs_chorus} and\n" "@code{cs_phaser} provide chorus and phaser effects, respectively;\n" @@ -213,21 +243,21 @@ msgid "" "the non-linear circuit elements of their original analog counterparts." msgstr "" -#: gnu/packages/audio.scm:764 +#: gnu/packages/audio.scm:831 msgid "LADSPA reverb plugin" msgstr "" -#: gnu/packages/audio.scm:766 +#: gnu/packages/audio.scm:833 msgid "" "This package provides a stereo reverb LADSPA plugin based on the\n" "well-known greverb." msgstr "" -#: gnu/packages/audio.scm:800 +#: gnu/packages/audio.scm:867 msgid "LADSPA four-band parametric equalizer plugin" msgstr "" -#: gnu/packages/audio.scm:802 +#: gnu/packages/audio.scm:869 msgid "" "This package provides a LADSPA plugin for a four-band parametric\n" "equalizer. Each section has an active/bypass switch, frequency, bandwidth and\n" @@ -242,11 +272,11 @@ msgid "" "for stage use." msgstr "" -#: gnu/packages/audio.scm:845 +#: gnu/packages/audio.scm:912 msgid "LADSPA stereo width plugin" msgstr "LADSPA-stereo med udvidelsesmodul" -#: gnu/packages/audio.scm:847 +#: gnu/packages/audio.scm:914 msgid "" "This package provides a LADSPA plugin to manipulate the stereo width of\n" "audio signals." @@ -254,11 +284,11 @@ msgstr "" "Denne pakke tilbyder et LADSPA-udvidelsesmodul til at manipulere stereodyben\n" "for lydsignaler." -#: gnu/packages/audio.scm:882 +#: gnu/packages/audio.scm:949 msgid "LADSPA plugin for synthesizer oscillators" msgstr "LADSPA-udvidelsesmodul for synthesizeroscillatorer" -#: gnu/packages/audio.scm:884 +#: gnu/packages/audio.scm:951 msgid "" "The @code{blvco} LADSPA plugin provides three anti-aliased oscillators:\n" "\n" @@ -273,11 +303,11 @@ msgid "" "output of analog synthesizers such as the Moog Voyager." msgstr "" -#: gnu/packages/audio.scm:926 +#: gnu/packages/audio.scm:993 msgid "LADSPA Autowah effect plugin" msgstr "" -#: gnu/packages/audio.scm:928 +#: gnu/packages/audio.scm:995 msgid "" "This package provides a LADSPA plugin for a Wah effect with envelope\n" "follower." @@ -285,19 +315,19 @@ msgstr "" "Denne pakke tilbyder et LADSPA-udvidelsesmodul for wn Wah-effekt med\n" "kuvertfølger." -#: gnu/packages/audio.scm:962 +#: gnu/packages/audio.scm:1029 msgid "LADSPA stereo reverb plugin" msgstr "" -#: gnu/packages/audio.scm:964 +#: gnu/packages/audio.scm:1031 msgid "This package provides a LADSPA plugin for a stereo reverb effect." msgstr "Denne pakke tilbyder et LADSPA-udvidelsesmodul for en stereo reverb-effekt." -#: gnu/packages/audio.scm:998 +#: gnu/packages/audio.scm:1070 msgid "SoundFont synthesizer" msgstr "SoundFont-synthesizer" -#: gnu/packages/audio.scm:1000 +#: gnu/packages/audio.scm:1072 msgid "" "FluidSynth is a real-time software synthesizer based on the SoundFont 2\n" "specifications. FluidSynth reads and handles MIDI events from the MIDI input\n" @@ -305,11 +335,11 @@ msgid "" "also play midifiles using a Soundfont." msgstr "" -#: gnu/packages/audio.scm:1032 +#: gnu/packages/audio.scm:1103 msgid "MPEG-4 and MPEG-2 AAC decoder" msgstr "MPEG-4- og MPEG-2 AAC-afkoder" -#: gnu/packages/audio.scm:1034 +#: gnu/packages/audio.scm:1105 msgid "" "FAAD2 is an MPEG-4 and MPEG-2 AAC decoder supporting LC, Main, LTP, SBR,\n" "PS, and DAB+." @@ -317,29 +347,29 @@ msgstr "" "FAAD2 er en MPEG-4- og MPEG-2 AAC-afkoder, der understøtter LC, Main, LTP, SBR,\n" "PS og DAB+." -#: gnu/packages/audio.scm:1063 +#: gnu/packages/audio.scm:1145 msgid "Signal processing language" msgstr "Signalbehandlingssprog" -#: gnu/packages/audio.scm:1065 +#: gnu/packages/audio.scm:1147 msgid "Faust is a programming language for realtime audio signal processing." msgstr "Faust er et programmeringssprog for behandling af lydsignaler i realtid." -#: gnu/packages/audio.scm:1130 +#: gnu/packages/audio.scm:1217 msgid "GUS compatible patches for MIDI players" msgstr "" -#: gnu/packages/audio.scm:1132 +#: gnu/packages/audio.scm:1219 msgid "" "FreePats is a project to create a free and open set of GUS compatible\n" "patches that can be used with softsynths such as Timidity and WildMidi." msgstr "" -#: gnu/packages/audio.scm:1184 +#: gnu/packages/audio.scm:1271 msgid "Virtual guitar amplifier" msgstr "" -#: gnu/packages/audio.scm:1185 +#: gnu/packages/audio.scm:1272 msgid "" "Guitarix is a virtual guitar amplifier running JACK.\n" "Guitarix takes the signal from your guitar as a mono-signal from your sound\n" @@ -350,11 +380,11 @@ msgid "" "auto-wah." msgstr "" -#: gnu/packages/audio.scm:1241 +#: gnu/packages/audio.scm:1326 msgid "Audio effects processor" msgstr "" -#: gnu/packages/audio.scm:1243 +#: gnu/packages/audio.scm:1328 msgid "" "Rakarrack is a richly featured multi-effects processor emulating a\n" "guitar effects pedalboard. Effects include compressor, expander, noise gate,\n" @@ -366,22 +396,22 @@ msgid "" "well suited to all musical instruments and vocals." msgstr "" -#: gnu/packages/audio.scm:1294 +#: gnu/packages/audio.scm:1379 msgid "LV2 convolution reverb" msgstr "" -#: gnu/packages/audio.scm:1296 +#: gnu/packages/audio.scm:1381 msgid "" "IR is a low-latency, real-time, high performance signal convolver\n" "especially for creating reverb effects. It supports impulse responses with 1,\n" "2 or 4 channels, in any soundfile format supported by libsndfile." msgstr "" -#: gnu/packages/audio.scm:1326 +#: gnu/packages/audio.scm:1411 msgid "JACK audio connection kit" msgstr "" -#: gnu/packages/audio.scm:1328 +#: gnu/packages/audio.scm:1413 msgid "" "JACK is a low-latency audio server. It can connect a number of\n" "different applications to an audio device, as well as allowing them to share\n" @@ -391,32 +421,32 @@ msgid "" "synchronous execution of all clients, and low latency operation." msgstr "" -#: gnu/packages/audio.scm:1434 +#: gnu/packages/audio.scm:1509 msgid "Simple LV2 host for JACK" msgstr "" -#: gnu/packages/audio.scm:1436 +#: gnu/packages/audio.scm:1511 msgid "" "Jalv is a simple but fully featured LV2 host for JACK. It runs LV2\n" "plugins and exposes their ports as JACK ports, essentially making any LV2\n" "plugin function as a JACK application." msgstr "" -#: gnu/packages/audio.scm:1479 +#: gnu/packages/audio.scm:1554 msgid "Linux Audio Developer's Simple Plugin API (LADSPA)" msgstr "" -#: gnu/packages/audio.scm:1481 +#: gnu/packages/audio.scm:1556 msgid "" "LADSPA is a standard that allows software audio processors and effects\n" "to be plugged into a wide range of audio synthesis and recording packages." msgstr "" -#: gnu/packages/audio.scm:1517 +#: gnu/packages/audio.scm:1602 msgid "Audio application session manager" msgstr "" -#: gnu/packages/audio.scm:1519 +#: gnu/packages/audio.scm:1604 msgid "" "LASH is a session management system for audio applications. It allows\n" "you to save and restore audio sessions consisting of multiple interconneced\n" @@ -424,11 +454,11 @@ msgid "" "connections between them." msgstr "" -#: gnu/packages/audio.scm:1540 +#: gnu/packages/audio.scm:1625 msgid "Bauer stereophonic-to-binaural DSP" msgstr "" -#: gnu/packages/audio.scm:1542 +#: gnu/packages/audio.scm:1627 msgid "" "The Bauer stereophonic-to-binaural DSP (bs2b) library and plugins is\n" "designed to improve headphone listening of stereo audio records. Recommended\n" @@ -436,21 +466,33 @@ msgid "" "essential distortions." msgstr "" -#: gnu/packages/audio.scm:1565 +#: gnu/packages/audio.scm:1650 msgid "Implementation of the Open Sound Control protocol" msgstr "" -#: gnu/packages/audio.scm:1567 +#: gnu/packages/audio.scm:1652 msgid "" "liblo is a lightweight library that provides an easy to use\n" -"implementation of the Open Sound Control (OSC) protocol." +"implementation of the Open Sound Control (@dfn{OSC}) protocol." msgstr "" -#: gnu/packages/audio.scm:1589 +#: gnu/packages/audio.scm:1675 +msgid "Bindings for PortAudio v19" +msgstr "Bindinger for PortAudio v19" + +#: gnu/packages/audio.scm:1676 +msgid "" +"This package provides bindings for PortAudio v19, the\n" +"cross-platform audio input/output stream library." +msgstr "" +"Denne pakke tilbyder bindinger for PortAudio v19,\n" +"lydinddata/uddata-udsendelsesbiblioteket for flere platforme." + +#: gnu/packages/audio.scm:1701 msgid "Python bindings for liblo" -msgstr "" +msgstr "Pythonbindinger for liblo" -#: gnu/packages/audio.scm:1591 +#: gnu/packages/audio.scm:1703 msgid "" "Pyliblo is a Python wrapper for the liblo Open Sound Control (OSC)\n" "library. It supports almost the complete functionality of liblo, allowing you\n" @@ -458,22 +500,22 @@ msgid "" "included are the command line utilities @code{send_osc} and @code{dump_osc}." msgstr "" -#: gnu/packages/audio.scm:1632 +#: gnu/packages/audio.scm:1744 msgid "Library to simplify use of LV2 plugins in applications" -msgstr "" +msgstr "Bibliotek til at forenkle bruge af LV2-udvidelsesmoduler i programmer" -#: gnu/packages/audio.scm:1634 +#: gnu/packages/audio.scm:1746 msgid "" "Lilv is a C library to make the use of LV2 plugins as simple as possible\n" "for applications. Lilv is the successor to SLV2, rewritten to be\n" "significantly faster and have minimal dependencies." msgstr "" -#: gnu/packages/audio.scm:1660 +#: gnu/packages/audio.scm:1772 msgid "LV2 audio plugin specification" msgstr "" -#: gnu/packages/audio.scm:1662 +#: gnu/packages/audio.scm:1774 msgid "" "LV2 is an open specification for audio plugins and host applications.\n" "At its core, LV2 is a simple stable interface, accompanied by extensions which\n" @@ -481,38 +523,38 @@ msgid "" "software." msgstr "" -#: gnu/packages/audio.scm:1697 +#: gnu/packages/audio.scm:1826 msgid "LV2 port of the mda Piano plugin" -msgstr "" +msgstr "LV2-port af mda Piano-udvidelsesmodulet" -#: gnu/packages/audio.scm:1698 +#: gnu/packages/audio.scm:1827 msgid "An LV2 port of the mda Piano VSTi." -msgstr "" +msgstr "En LV2-port af mda Piano VSTi." -#: gnu/packages/audio.scm:1711 +#: gnu/packages/audio.scm:1840 msgid "LV2 port of the mda EPiano plugin" -msgstr "" +msgstr "LV2-port af mda EPiano-udvidelsesmodulet" -#: gnu/packages/audio.scm:1712 +#: gnu/packages/audio.scm:1841 msgid "An LV2 port of the mda EPiano VSTi." -msgstr "" +msgstr "En LV2-port af mda EPiano VSTi." -#: gnu/packages/audio.scm:1757 +#: gnu/packages/audio.scm:1886 msgid "C++ libraries for LV2 plugins" -msgstr "" +msgstr "C++-biblioteker for LV2-udvidelsesmoduler" -#: gnu/packages/audio.scm:1759 +#: gnu/packages/audio.scm:1888 msgid "" "The LV2 Toolkit (LVTK) contains libraries that wrap the LV2 C API and\n" "extensions into easy to use C++ classes. It is the successor of\n" "lv2-c++-tools." msgstr "" -#: gnu/packages/audio.scm:1800 +#: gnu/packages/audio.scm:1929 msgid "3D audio API" msgstr "" -#: gnu/packages/audio.scm:1802 +#: gnu/packages/audio.scm:1931 msgid "" "OpenAL provides capabilities for playing audio in a virtual 3D\n" "environment. Distance attenuation, doppler shift, and directional sound\n" @@ -522,80 +564,107 @@ msgid "" "buffers, and audio capture." msgstr "" -#: gnu/packages/audio.scm:1832 +#: gnu/packages/audio.scm:1961 msgid "Free implementation of OpenAL's ALUT standard" -msgstr "" +msgstr "Fri implementering af OpenAL's ALUT-standard" -#: gnu/packages/audio.scm:1833 +#: gnu/packages/audio.scm:1962 msgid "freealut is the OpenAL Utility Toolkit." -msgstr "" +msgstr "freealut er OpenAL Utility Toolkit." -#: gnu/packages/audio.scm:1862 +#: gnu/packages/audio.scm:1991 msgid "Modular patch bay for audio and MIDI systems" msgstr "" -#: gnu/packages/audio.scm:1864 +#: gnu/packages/audio.scm:1993 msgid "" "Patchage is a modular patch bay for audio and MIDI systems based on JACK\n" "and ALSA." msgstr "" -#: gnu/packages/audio.scm:1890 +#: gnu/packages/audio.scm:2020 msgid "Jack server control application" msgstr "" -#: gnu/packages/audio.scm:1891 +#: gnu/packages/audio.scm:2021 msgid "" "Control a Jack server. Allows you to plug various sources\n" "into various outputs and to start, stop and configure jackd" msgstr "" -#: gnu/packages/audio.scm:1917 +#: gnu/packages/audio.scm:2054 +msgid "Stereo audio recorder for JACK" +msgstr "" + +#: gnu/packages/audio.scm:2055 +msgid "" +"QJackRcd is a simple graphical stereo recorder for JACK\n" +"supporting silence processing for automatic pause, file splitting, and\n" +"background file post-processing." +msgstr "" + +#: gnu/packages/audio.scm:2157 +msgid "Synthesis engine and programming language" +msgstr "Syntesemotor og programmeringssprog" + +#: gnu/packages/audio.scm:2158 +msgid "" +"SuperCollider is a synthesis engine (@code{scsynth} or\n" +"@code{supernova}) and programming language (@code{sclang}). It can be used\n" +"for experimenting with sound synthesis and algorithmic composition.\n" +"\n" +"SuperCollider requires jackd to be installed in your user profile and your\n" +"user must be allowed to access the realtime features of the kernel. Search\n" +"for \"realtime\" in the index of the Guix manual to learn how to achieve this\n" +"using GuixSD." +msgstr "" + +#: gnu/packages/audio.scm:2189 msgid "Real-time audio utility library" msgstr "" -#: gnu/packages/audio.scm:1919 +#: gnu/packages/audio.scm:2191 msgid "" "Raul (Real-time Audio Utility Library) is a C++ utility library primarily\n" "aimed at audio/musical applications." msgstr "" -#: gnu/packages/audio.scm:1962 +#: gnu/packages/audio.scm:2235 msgid "Audio time-stretching and pitch-shifting library" msgstr "" -#: gnu/packages/audio.scm:1964 +#: gnu/packages/audio.scm:2237 msgid "" "Rubber Band is a library and utility program that permits changing the\n" "tempo and pitch of an audio recording independently of one another." msgstr "" -#: gnu/packages/audio.scm:2012 +#: gnu/packages/audio.scm:2285 msgid "Cross-platform MIDI library for C++" msgstr "" -#: gnu/packages/audio.scm:2014 +#: gnu/packages/audio.scm:2287 msgid "" "RtMidi is a set of C++ classes (RtMidiIn, RtMidiOut, and API specific\n" "classes) that provide a common cross-platform API for realtime MIDI\n" "input/output." msgstr "" -#: gnu/packages/audio.scm:2039 +#: gnu/packages/audio.scm:2312 msgid "Library for serialising LV2 atoms to/from RDF" msgstr "" -#: gnu/packages/audio.scm:2041 +#: gnu/packages/audio.scm:2314 msgid "" "Sratom is a library for serialising LV2 atoms to/from RDF, particularly\n" "the Turtle syntax." msgstr "" -#: gnu/packages/audio.scm:2065 +#: gnu/packages/audio.scm:2342 msgid "Library for loading and wrapping LV2 plugin UIs" msgstr "" -#: gnu/packages/audio.scm:2067 +#: gnu/packages/audio.scm:2344 msgid "" "Suil is a lightweight C library for loading and wrapping LV2 plugin UIs.\n" "\n" @@ -604,14 +673,14 @@ msgid "" "support specific toolkits – if Suil supports a particular toolkit, then UIs in\n" "that toolkit will work in all hosts that use Suil automatically.\n" "\n" -"Suil currently supports every combination of Gtk 2, Qt 4, and X11." +"Suil currently supports every combination of Gtk, Qt, and X11." msgstr "" -#: gnu/packages/audio.scm:2124 +#: gnu/packages/audio.scm:2401 msgid "Software synthesizer for playing MIDI files" msgstr "" -#: gnu/packages/audio.scm:2126 +#: gnu/packages/audio.scm:2403 msgid "" "TiMidity++ is a software synthesizer. It can play MIDI files by\n" "converting them into PCM waveform data; give it a MIDI data along with digital\n" @@ -620,43 +689,43 @@ msgid "" "disks as various audio file formats." msgstr "" -#: gnu/packages/audio.scm:2165 +#: gnu/packages/audio.scm:2441 msgid "Modular and extensible audio processing system" msgstr "" -#: gnu/packages/audio.scm:2167 +#: gnu/packages/audio.scm:2443 msgid "" "Vamp is an audio processing plugin system for plugins that extract\n" "descriptive information from audio data — typically referred to as audio\n" "analysis plugins or audio feature extraction plugins." msgstr "" -#: gnu/packages/audio.scm:2206 +#: gnu/packages/audio.scm:2482 msgid "Library for time stretching and pitch scaling of audio" msgstr "" -#: gnu/packages/audio.scm:2208 +#: gnu/packages/audio.scm:2484 msgid "" "SBSMS (Subband Sinusoidal Modeling Synthesis) is software for time\n" "stretching and pitch scaling of audio. This package contains the library." msgstr "" -#: gnu/packages/audio.scm:2227 +#: gnu/packages/audio.scm:2506 msgid "Hybrid lossless audio codec" msgstr "" -#: gnu/packages/audio.scm:2229 +#: gnu/packages/audio.scm:2508 msgid "" "WavPack is an audio compression format with lossless, lossy and hybrid\n" "compression modes. This package contains command-line programs and library to\n" "encode and decode wavpack files." msgstr "" -#: gnu/packages/audio.scm:2248 +#: gnu/packages/audio.scm:2527 msgid "Mod file playing library" msgstr "" -#: gnu/packages/audio.scm:2250 +#: gnu/packages/audio.scm:2529 msgid "" "Libmodplug renders mod music files as raw audio data, for playing or\n" "conversion. mod, .s3m, .it, .xm, and a number of lesser-known formats are\n" @@ -664,33 +733,33 @@ msgid "" "surround and reverb." msgstr "" -#: gnu/packages/audio.scm:2269 +#: gnu/packages/audio.scm:2548 msgid "Module player library" msgstr "" -#: gnu/packages/audio.scm:2271 +#: gnu/packages/audio.scm:2550 msgid "" "Libxmp is a library that renders module files to PCM data. It supports\n" "over 90 mainstream and obscure module formats including Protracker (MOD),\n" "Scream Tracker 3 (S3M), Fast Tracker II (XM), and Impulse Tracker (IT)." msgstr "" -#: gnu/packages/audio.scm:2294 +#: gnu/packages/audio.scm:2573 msgid "Extended module player" msgstr "" -#: gnu/packages/audio.scm:2296 +#: gnu/packages/audio.scm:2575 msgid "" "Xmp is a portable module player that plays over 90 mainstream and\n" "obscure module formats, including Protracker MOD, Fasttracker II XM, Scream\n" "Tracker 3 S3M and Impulse Tracker IT files." msgstr "" -#: gnu/packages/audio.scm:2328 +#: gnu/packages/audio.scm:2606 msgid "Audio processing library for changing tempo, pitch and playback rate" msgstr "" -#: gnu/packages/audio.scm:2330 +#: gnu/packages/audio.scm:2608 msgid "" "SoundTouch is an audio processing library for changing the tempo, pitch\n" "and playback rates of audio streams or audio files. It is intended for\n" @@ -698,11 +767,11 @@ msgid "" "control functionality, or just for playing around with the sound effects." msgstr "" -#: gnu/packages/audio.scm:2367 +#: gnu/packages/audio.scm:2645 msgid "Sound processing utility" msgstr "" -#: gnu/packages/audio.scm:2369 +#: gnu/packages/audio.scm:2647 msgid "" "SoX (Sound eXchange) is a command line utility that can convert\n" "various formats of computer audio files to other formats. It can also\n" @@ -710,92 +779,92 @@ msgid "" "can play and record audio files." msgstr "" -#: gnu/packages/audio.scm:2392 +#: gnu/packages/audio.scm:2670 msgid "One-dimensional sample-rate conversion library" msgstr "" -#: gnu/packages/audio.scm:2394 +#: gnu/packages/audio.scm:2672 msgid "" "The SoX Resampler library (libsoxr) performs one-dimensional sample-rate\n" "conversion. It may be used, for example, to resample PCM-encoded audio." msgstr "" -#: gnu/packages/audio.scm:2424 +#: gnu/packages/audio.scm:2702 msgid "MPEG Audio Layer 2 (MP2) encoder" msgstr "" -#: gnu/packages/audio.scm:2426 +#: gnu/packages/audio.scm:2704 msgid "" "TwoLAME is an optimised MPEG Audio Layer 2 (MP2) encoder based on\n" "tooLAME by Mike Cheng, which in turn is based upon the ISO dist10 code and\n" "portions of LAME." msgstr "" -#: gnu/packages/audio.scm:2466 +#: gnu/packages/audio.scm:2743 msgid "Audio I/O library" msgstr "" -#: gnu/packages/audio.scm:2468 +#: gnu/packages/audio.scm:2745 msgid "" "PortAudio is a portable C/C++ audio I/O library providing a simple API\n" "to record and/or play sound using a callback function or a blocking read/write\n" "interface." msgstr "" -#: gnu/packages/audio.scm:2498 +#: gnu/packages/audio.scm:2775 msgid "Graphical user interface for FluidSynth" msgstr "" -#: gnu/packages/audio.scm:2500 +#: gnu/packages/audio.scm:2777 msgid "" "Qsynth is a GUI front-end application for the FluidSynth SoundFont\n" "synthesizer written in C++." msgstr "" -#: gnu/packages/audio.scm:2538 +#: gnu/packages/audio.scm:2814 msgid "Networked audio system" msgstr "" -#: gnu/packages/audio.scm:2540 +#: gnu/packages/audio.scm:2816 msgid "" "RSound allows you to send audio from an application and transfer it\n" "directly to a different computer on your LAN network. It is an audio daemon\n" "with a much different focus than most other audio daemons." msgstr "" -#: gnu/packages/audio.scm:2571 +#: gnu/packages/audio.scm:2847 msgid "JACK audio frequency analyzer and display" msgstr "" -#: gnu/packages/audio.scm:2573 +#: gnu/packages/audio.scm:2849 msgid "" "XJackFreak is an audio analysis and equalizing tool for the Jack Audio\n" "Connection Kit. It can display the FFT of any input, modify it and output the\n" "result." msgstr "" -#: gnu/packages/audio.scm:2619 +#: gnu/packages/audio.scm:2893 msgid "Fast, partitioned convolution engine library" msgstr "" -#: gnu/packages/audio.scm:2621 +#: gnu/packages/audio.scm:2895 msgid "" "Zita convolver is a C++ library providing a real-time convolution\n" "engine." msgstr "" -#: gnu/packages/audio.scm:2666 +#: gnu/packages/audio.scm:2940 msgid "C++ library for resampling audio signals" msgstr "" -#: gnu/packages/audio.scm:2668 +#: gnu/packages/audio.scm:2942 msgid "" "Libzita-resampler is a C++ library for resampling audio signals. It is\n" "designed to be used within a real-time processing context, to be fast, and to\n" "provide high-quality sample rate conversion." msgstr "" -#: gnu/packages/audio.scm:2714 +#: gnu/packages/audio.scm:2986 msgid "" "Zita-alsa-pcmi is a C++ wrapper around the ALSA API. It provides easy\n" "access to ALSA PCM devices, taking care of the many functions required to\n" @@ -803,11 +872,11 @@ msgid "" "point audio data." msgstr "" -#: gnu/packages/audio.scm:2745 +#: gnu/packages/audio.scm:3017 msgid "Cue and toc file parsers and utilities" msgstr "" -#: gnu/packages/audio.scm:2746 +#: gnu/packages/audio.scm:3018 msgid "" "Cuetools is a set of programs that are useful for manipulating\n" "and using CUE sheet (cue) files and Table of Contents (toc) files. CUE and TOC\n" @@ -815,64 +884,157 @@ msgid "" "machine-readable ASCII format." msgstr "" -#: gnu/packages/audio.scm:2765 +#: gnu/packages/audio.scm:3037 msgid "WAVE audio data processing tool" msgstr "" -#: gnu/packages/audio.scm:2766 +#: gnu/packages/audio.scm:3038 msgid "" "shntool is a multi-purpose WAVE data processing and reporting\n" "utility. File formats are abstracted from its core, so it can process any file\n" "that contains WAVE data, compressed or not---provided there exists a format\n" -"module to handle that particular file type." +"module to handle that particular file type. It can also generate CUE files, and\n" +"use them split WAVE data into multiple files." msgstr "" -#: gnu/packages/audio.scm:2803 +#: gnu/packages/audio.scm:3076 msgid "DTS Coherent Acoustics decoder" msgstr "" -#: gnu/packages/audio.scm:2804 +#: gnu/packages/audio.scm:3077 msgid "" "Dcadec is a DTS Coherent Acoustics surround sound decoder\n" "with support for HD extensions." msgstr "" -#: gnu/packages/audio.scm:2825 +#: gnu/packages/audio.scm:3098 msgid "Tool to adjust loudness of media files" -msgstr "" +msgstr "Værktøj til at justere lydstyrken for mediefiler" -#: gnu/packages/audio.scm:2827 +#: gnu/packages/audio.scm:3100 msgid "" "BS1770GAIN is a loudness scanner compliant with ITU-R BS.1770 and its\n" "flavors EBU R128, ATSC A/85, and ReplayGain 2.0. It helps normalizing the\n" "loudness of audio and video files to the same level." msgstr "" -#: gnu/packages/audio.scm:2858 +#: gnu/packages/audio.scm:3131 msgid "Lightweight audio filtering library" msgstr "" -#: gnu/packages/audio.scm:2859 +#: gnu/packages/audio.scm:3132 msgid "" "An easy to use audio filtering library made from webrtc\n" "code, used in @code{libtoxcore}." msgstr "" -#: gnu/packages/audio.scm:2903 +#: gnu/packages/audio.scm:3176 msgid "GSM 06.10 lossy speech compression library" msgstr "GSM 06.10-talekomprimeringsbibliotek uden kvalitetestab" -#: gnu/packages/audio.scm:2904 +#: gnu/packages/audio.scm:3177 msgid "" "This C library provides an encoder and a decoder for the GSM\n" "06.10 RPE-LTP lossy speech compression algorithm." msgstr "" -#: gnu/packages/backup.scm:108 +#: gnu/packages/audio.scm:3198 +msgid "ALSA wrappers for Python" +msgstr "ALSA-omslag for Python" + +#: gnu/packages/audio.scm:3200 +msgid "" +"This package contains wrappers for accessing the ALSA API from Python.\n" +"It is currently fairly complete for PCM devices, and has some support for\n" +"mixers." +msgstr "" + +#: gnu/packages/audio.scm:3244 +msgid "Bluetooth ALSA backend" +msgstr "" + +#: gnu/packages/audio.scm:3245 +msgid "" +"This project is a rebirth of a direct integration between\n" +"Bluez and ALSA. Since Bluez >= 5, the build-in integration has been removed\n" +"in favor of 3rd party audio applications. From now on, Bluez acts as a\n" +"middleware between an audio application, which implements Bluetooth audio\n" +"profile, and a Bluetooth audio device. BlueALSA registers all known Bluetooth\n" +"audio profiles in Bluez, so in theory every Bluetooth device (with audio\n" +"capabilities) can be connected. In order to access the audio stream, one has\n" +"to connect to the ALSA PCM device called @code{bluealsa}. The device is based\n" +"on the ALSA software PCM plugin." +msgstr "" + +#: gnu/packages/audio.scm:3307 +msgid "Sound editor" +msgstr "Lydredigeringsprogram" + +#: gnu/packages/audio.scm:3310 +msgid "" +"Snd is a sound editor modelled loosely after Emacs. It can be\n" +"customized and extended using either the s7 Scheme implementation (included in\n" +"the Snd sources), Ruby, or Forth." +msgstr "" + +#: gnu/packages/audio.scm:3343 +msgid "LV2 plugin for broadband noise reduction" +msgstr "" + +#: gnu/packages/audio.scm:3344 +msgid "" +"Noise Repellent is an LV2 plugin to reduce noise. It has\n" +"the following features:\n" +"\n" +"@enumerate\n" +"@item Spectral gating and spectral subtraction suppression rule\n" +"@item Adaptive and manual noise thresholds estimation\n" +"@item Adjustable noise floor\n" +"@item Adjustable offset of thresholds to perform over-subtraction\n" +"@item Time smoothing and a masking estimation to reduce artifacts\n" +"@item Basic onset detector to avoid transients suppression\n" +"@item Whitening of the noise floor to mask artifacts and to recover higher\n" +" frequencies\n" +"@item Option to listen to the residual signal\n" +"@item Soft bypass\n" +"@item Noise profile saved with the session\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/audio.scm:3412 +msgid "Command-line audio visualizer" +msgstr "" + +#: gnu/packages/audio.scm:3413 +msgid "" +"@code{cli-visualizer} displays fast-Fourier\n" +"transforms (FFTs) of the sound being played, as well as other graphical\n" +"representations." +msgstr "" + +#: gnu/packages/audio.scm:3464 +msgid "Console audio visualizer for ALSA, MPD, and PulseAudio" +msgstr "" + +#: gnu/packages/audio.scm:3465 +msgid "" +"C.A.V.A. is a bar audio spectrum visualizer for the terminal\n" +"using ALSA, MPD, PulseAudio, or a FIFO buffer as its input." +msgstr "" + +#: gnu/packages/audio.scm:3497 +msgid "Pro-quality GM soundfont" +msgstr "" + +#: gnu/packages/audio.scm:3498 +msgid "Fluid-3 is Frank Wen's pro-quality GM soundfont." +msgstr "" + +#: gnu/packages/backup.scm:115 msgid "Encrypted backup using rsync algorithm" msgstr "Krypteret sikkerhedskopiering via brug af rsync-algoritmen" -#: gnu/packages/backup.scm:110 +#: gnu/packages/backup.scm:117 msgid "" "Duplicity backs up directories by producing encrypted tar-format volumes\n" "and uploading them to a remote or local file server. Because duplicity uses\n" @@ -889,22 +1051,27 @@ msgstr "" "underskrive disse arkiver, så vil de være sikret mod spionage og/eller\n" "ændring af serveren." +#: gnu/packages/backup.scm:146 +msgid "File verification and repair tools" +msgstr "" + #: gnu/packages/backup.scm:147 -msgid "File verification and repair tool" -msgstr "" - -#: gnu/packages/backup.scm:148 msgid "" -"Par2cmdline is a tool for generating RAID-like PAR2 recovery\n" -"files using Reed-Solomon coding. PAR2 files can be stored along side backups\n" -"or distributed files for recovering from bitrot." +"Par2cmdline uses Reed-Solomon error-correcting codes to\n" +"generate and verify PAR2 recovery files. These files can be distributed\n" +"alongside the source files or stored together with back-ups to protect against\n" +"transmission errors or @dfn{bit rot}, the degradation of storage media over\n" +"time.\n" +"Unlike a simple checksum, PAR2 doesn't merely detect errors: as long as the\n" +"damage isn't too extensive (and smaller than the size of the recovery file), it\n" +"can even repair them." msgstr "" -#: gnu/packages/backup.scm:179 +#: gnu/packages/backup.scm:183 msgid "Simple incremental backup tool" msgstr "Simpelt værktøj til trinvis sikkerhedskopiering" -#: gnu/packages/backup.scm:181 +#: gnu/packages/backup.scm:185 msgid "" "Hdup2 is a backup utility, its aim is to make backup really simple. The\n" "backup scheduling is done by means of a cron job. It supports an\n" @@ -917,11 +1084,11 @@ msgstr "" "sikkerhedskopier, krypterede sikkerhedskopier og opdelte sikkerhedskopier\n" "(kaldt klumper) så der nemt kan brændes til cd/dvd." -#: gnu/packages/backup.scm:235 +#: gnu/packages/backup.scm:239 msgid "Multi-format archive and compression library" msgstr "Arkiv- og komprimeringsbibliotek for flere formater" -#: gnu/packages/backup.scm:237 +#: gnu/packages/backup.scm:241 msgid "" "Libarchive provides a flexible interface for reading and writing\n" "archives in various formats such as tar and cpio. Libarchive also supports\n" @@ -939,11 +1106,11 @@ msgstr "" "Bemærk venligst at der i øjeblikket ikke er indbygget understøttelse\n" "for vilkårlig vilkårlig adgang eller for direkte modifikation i arkivet." -#: gnu/packages/backup.scm:314 +#: gnu/packages/backup.scm:302 msgid "Provide a list of files to backup" msgstr "Tilbyder en liste af filer til sikkerhedskopiering" -#: gnu/packages/backup.scm:316 +#: gnu/packages/backup.scm:304 msgid "" "Rdup is a utility inspired by rsync and the plan9 way of doing backups.\n" "Rdup itself does not backup anything, it only print a list of absolute\n" @@ -956,11 +1123,11 @@ msgstr "" "skripter er krævet til for det videre arbejde med denne liste og\n" "implementering af sikkerhedskopistrategien." -#: gnu/packages/backup.scm:346 +#: gnu/packages/backup.scm:334 msgid "Tar-compatible archiver" msgstr "Tar-kompatibelt arkivprogram" -#: gnu/packages/backup.scm:348 +#: gnu/packages/backup.scm:336 msgid "" "Btar is a tar-compatible archiver which allows arbitrary compression and\n" "ciphering, redundancy, differential backup, indexed extraction, multicore\n" @@ -972,11 +1139,11 @@ msgstr "" "indekseret udtrækning, komprimering med flere kerner, inddata- og uddata-\n" "serialisering, og tolerance for delvise arkivfejl." -#: gnu/packages/backup.scm:374 +#: gnu/packages/backup.scm:362 msgid "Local/remote mirroring+incremental backup" msgstr "Lokal/ekstern spejlning+trinvis sikkerhedskopiering" -#: gnu/packages/backup.scm:376 +#: gnu/packages/backup.scm:364 msgid "" "Rdiff-backup backs up one directory to another, possibly over a network.\n" "The target directory ends up a copy of the source directory, but extra reverse\n" @@ -1004,23 +1171,23 @@ msgstr "" "placering og kun forskellene vil blive overført. Endelig er rdiff-backup\n" "nem at bruge og startopsætningen er lavet med fornuftige standarder." -#: gnu/packages/backup.scm:418 +#: gnu/packages/backup.scm:406 msgid "Deduplicating snapshot backup utility based on rsync" msgstr "" -#: gnu/packages/backup.scm:419 +#: gnu/packages/backup.scm:407 msgid "" -"rsnapshot is a filesystem snapshot utility based on rsync.\n" +"rsnapshot is a file system snapshot utility based on rsync.\n" "rsnapshot makes it easy to make periodic snapshots of local machines, and\n" "remote machines over SSH. To reduce the disk space required for each backup,\n" "rsnapshot uses hard links to deduplicate identical files." msgstr "" -#: gnu/packages/backup.scm:454 +#: gnu/packages/backup.scm:442 msgid "Tools & library for data backup and distributed storage" msgstr "" -#: gnu/packages/backup.scm:456 +#: gnu/packages/backup.scm:444 msgid "" "Libchop is a set of utilities and library for data backup and\n" "distributed storage. Its main application is @command{chop-backup}, an\n" @@ -1031,11 +1198,11 @@ msgid "" "detection, and lossless compression." msgstr "" -#: gnu/packages/backup.scm:553 +#: gnu/packages/backup.scm:566 msgid "Deduplicated, encrypted, authenticated and compressed backups" msgstr "" -#: gnu/packages/backup.scm:554 +#: gnu/packages/backup.scm:567 msgid "" "Borg is a deduplicating backup program. Optionally, it\n" "supports compression and authenticated encryption. The main goal of Borg is to\n" @@ -1045,11 +1212,11 @@ msgid "" "to not fully trusted targets. Borg is a fork of Attic." msgstr "" -#: gnu/packages/backup.scm:600 +#: gnu/packages/backup.scm:613 msgid "Deduplicating backup program" msgstr "" -#: gnu/packages/backup.scm:601 +#: gnu/packages/backup.scm:614 msgid "" "Attic is a deduplicating backup program. The main goal of\n" "Attic is to provide an efficient and secure way to backup data. The data\n" @@ -1057,11 +1224,11 @@ msgid "" "changes are stored." msgstr "" -#: gnu/packages/backup.scm:631 +#: gnu/packages/backup.scm:644 msgid "WIM file manipulation library and utilities" msgstr "" -#: gnu/packages/backup.scm:632 +#: gnu/packages/backup.scm:645 msgid "" "wimlib is a C library and set of command-line utilities for\n" "creating, modifying, extracting, and mounting archives in the Windows Imaging\n" @@ -1069,11 +1236,11 @@ msgid "" "NTFS volumes using @code{ntfs-3g}, preserving NTFS-specific attributes." msgstr "" -#: gnu/packages/backup.scm:689 +#: gnu/packages/backup.scm:702 msgid "Easy and secure backup program" msgstr "" -#: gnu/packages/backup.scm:690 +#: gnu/packages/backup.scm:703 msgid "" "Obnam is an easy, secure backup program. Features\n" "include snapshot backups, data de-duplication and encrypted backups\n" @@ -1082,11 +1249,22 @@ msgid "" "any special software, on top of SSH." msgstr "" -#: gnu/packages/base.scm:71 +#: gnu/packages/backup.scm:809 +msgid "Fast, disk based, rotating network backup system" +msgstr "" + +#: gnu/packages/backup.scm:811 +msgid "" +"With dirvish you can maintain a set of complete images of your\n" +"file systems with unattended creation and expiration. A dirvish backup vault\n" +"is like a time machine for your data. " +msgstr "" + +#: gnu/packages/base.scm:77 msgid "Hello, GNU world: An example GNU package" msgstr "Hej, GNU-verden: Et eksempel på en GNU-pakke" -#: gnu/packages/base.scm:73 +#: gnu/packages/base.scm:79 msgid "" "GNU Hello prints the message \"Hello, world!\" and then exits. It\n" "serves as an example of standard GNU coding practices. As such, it supports\n" @@ -1097,11 +1275,11 @@ msgstr "" "sådan understøtter programmer parametre på kommandolinjen, flere\n" "sprog og så videre." -#: gnu/packages/base.scm:107 +#: gnu/packages/base.scm:114 msgid "Print lines matching a pattern" msgstr "Udskriv linjer der matcher et mønster" -#: gnu/packages/base.scm:109 +#: gnu/packages/base.scm:116 msgid "" "grep is a tool for finding text inside files. Text is found by\n" "matching a pattern provided by the user in one or many files. The pattern\n" @@ -1120,11 +1298,11 @@ msgstr "" "grep tilbyder mange udvidelser i forhold til standardredskabet,\n" "inklusiv rekursiv mappesøgning." -#: gnu/packages/base.scm:131 +#: gnu/packages/base.scm:138 msgid "Stream editor" msgstr "Strømredigeringsprogram" -#: gnu/packages/base.scm:153 +#: gnu/packages/base.scm:160 msgid "" "Sed is a non-interactive, text stream editor. It receives a text\n" "input from a file or from standard input and it then applies a series of text\n" @@ -1138,11 +1316,11 @@ msgstr "" "tekstmønster i en strøm. GNU-implementeringen tilbyder flere\n" "udvidelser i forhold til standardredskabet." -#: gnu/packages/base.scm:193 +#: gnu/packages/base.scm:200 msgid "Managing tar archives" msgstr "Håndtering af tar-arkiver" -#: gnu/packages/base.scm:195 +#: gnu/packages/base.scm:202 msgid "" "Tar provides the ability to create tar archives, as well as the\n" "ability to extract, update or list files in an existing archive. It is\n" @@ -1157,11 +1335,11 @@ msgstr "" "mappestruktur og filinformation såsom rettigheder og oprettelse/ændrings-\n" "datoer bevares. GNU tar tilbyder mange udvidelser over standardredskabet." -#: gnu/packages/base.scm:218 +#: gnu/packages/base.scm:225 msgid "Apply differences to originals, with optional backups" msgstr "Anvend forskelle på originaler, med valgfri sikkerhedskopiering" -#: gnu/packages/base.scm:220 +#: gnu/packages/base.scm:227 msgid "" "Patch is a program that applies changes to files based on differences\n" "laid out as by the program \"diff\". The changes may be applied to one or more\n" @@ -1175,11 +1353,11 @@ msgstr "" "forskellige diff-formater. Det kan også bruges til at tilbageføre\n" "tidligere anvendte forskelle." -#: gnu/packages/base.scm:240 +#: gnu/packages/base.scm:248 msgid "Comparing and merging files" msgstr "Sammenligning og sammenføjning af filer" -#: gnu/packages/base.scm:242 +#: gnu/packages/base.scm:250 msgid "" "GNU Diffutils is a package containing tools for finding the\n" "differences between files. The \"diff\" command is used to show how two files\n" @@ -1193,11 +1371,11 @@ msgstr "" "de er forskellige. »diff3« giver dig mulighed for at sammenligne tre filer.\n" "Endelig tilbyder »sdiff« en interaktiv måde at sammenføje to filer." -#: gnu/packages/base.scm:274 +#: gnu/packages/base.scm:293 msgid "Operating on files matching given criteria" msgstr "Operation på filer der matcher angivne kriterier" -#: gnu/packages/base.scm:276 +#: gnu/packages/base.scm:295 msgid "" "Findutils supplies the basic file directory searching utilities of the\n" "GNU system. It consists of two primary searching utilities: \"find\"\n" @@ -1213,11 +1391,11 @@ msgstr "" "ekstra værktøjer er inkluderet: »updatedb« opdaterer filnavnsdatabasen\n" "og »xargs« kan bruges til at anvende kommandoer med arbitrært lange argumenter." -#: gnu/packages/base.scm:356 +#: gnu/packages/base.scm:353 msgid "Core GNU utilities (file, text, shell)" msgstr "Core GNU-redskaber (file, text, shell)" -#: gnu/packages/base.scm:358 +#: gnu/packages/base.scm:355 msgid "" "GNU Coreutils includes all of the basic command-line tools that are\n" "expected in a POSIX system. These provide the basic file, shell and text\n" @@ -1230,11 +1408,11 @@ msgstr "" "af disse værktøjer tilbyder udvidet funktionalitet udover det skitseret\n" "i POSIX-standarden." -#: gnu/packages/base.scm:423 +#: gnu/packages/base.scm:397 msgid "Remake files automatically" msgstr "Gendan filer automatisk" -#: gnu/packages/base.scm:425 +#: gnu/packages/base.scm:399 msgid "" "Make is a program that is used to control the production of\n" "executables or other files from their source files. The process is\n" @@ -1251,11 +1429,11 @@ msgstr "" "gendannes efter at deres kilder har ændret sig. GNU make tilbyder\n" "mange funktionsrige udvidelser der ligger udover standardredskabet." -#: gnu/packages/base.scm:471 +#: gnu/packages/base.scm:440 msgid "Binary utilities: bfd gas gprof ld" msgstr "Binære redskaber: bfd gas gprof ld" -#: gnu/packages/base.scm:473 +#: gnu/packages/base.scm:442 msgid "" "GNU Binutils is a collection of tools for working with binary files.\n" "Perhaps the most notable are \"ld\", a linker, and \"as\", an assembler.\n" @@ -1265,22 +1443,22 @@ msgid "" "included." msgstr "" -#: gnu/packages/base.scm:547 +#: gnu/packages/base.scm:516 msgid "The linker wrapper" msgstr "" -#: gnu/packages/base.scm:549 +#: gnu/packages/base.scm:518 msgid "" "The linker wrapper (or 'ld-wrapper') wraps the linker to add any\n" "missing '-rpath' flags, and to detect any misuse of libraries outside of the\n" "store." msgstr "" -#: gnu/packages/base.scm:744 +#: gnu/packages/base.scm:746 msgid "The GNU C Library" msgstr "" -#: gnu/packages/base.scm:746 +#: gnu/packages/base.scm:748 msgid "" "Any Unix-like operating system needs a C library: the library which\n" "defines the \"system calls\" and other basic facilities such as open, malloc,\n" @@ -1294,43 +1472,43 @@ msgstr "" msgid "The GNU C Library (GNU Hurd variant)" msgstr "GNU C-biblioteket (GNU Hurd-variant)" -#: gnu/packages/base.scm:910 +#: gnu/packages/base.scm:953 msgid "All the locales supported by the GNU C Library" msgstr "" -#: gnu/packages/base.scm:912 +#: gnu/packages/base.scm:955 msgid "" "This package provides all the locales supported by the GNU C Library,\n" "more than 400 in total. To use them set the 'LOCPATH' environment variable to\n" "the 'share/locale' sub-directory of this package." msgstr "" -#: gnu/packages/base.scm:980 +#: gnu/packages/base.scm:1025 msgid "Small sample of UTF-8 locales" msgstr "" -#: gnu/packages/base.scm:982 +#: gnu/packages/base.scm:1027 msgid "" "This package provides a small sample of UTF-8 locales mostly useful in\n" "test environments." msgstr "" -#: gnu/packages/base.scm:1000 +#: gnu/packages/base.scm:1045 msgid "Find full path of shell commands" msgstr "" -#: gnu/packages/base.scm:1002 +#: gnu/packages/base.scm:1047 msgid "" "The which program finds the location of executables in PATH, with a\n" "variety of options. It is an alternative to the shell \"type\" built-in\n" "command." msgstr "" -#: gnu/packages/base.scm:1107 +#: gnu/packages/base.scm:1153 msgid "Database of current and historical time zones" msgstr "" -#: gnu/packages/base.scm:1108 +#: gnu/packages/base.scm:1154 msgid "" "The Time Zone Database (often called tz or zoneinfo)\n" "contains code and data that represent the history of local time for many\n" @@ -1339,22 +1517,22 @@ msgid "" "and daylight-saving rules." msgstr "" -#: gnu/packages/base.scm:1159 +#: gnu/packages/base.scm:1244 msgid "Character set conversion library" msgstr "Bibliotek til konvertering af tegnsæt" -#: gnu/packages/base.scm:1161 +#: gnu/packages/base.scm:1246 msgid "" "libiconv provides an implementation of the iconv function for systems\n" "that lack it. iconv is used to convert between character encodings in a\n" "program. It supports a wide variety of different encodings." msgstr "" -#: gnu/packages/bittorrent.scm:107 +#: gnu/packages/bittorrent.scm:110 msgid "Fast and easy BitTorrent client" msgstr "" -#: gnu/packages/bittorrent.scm:109 +#: gnu/packages/bittorrent.scm:112 msgid "" "Transmission is a BitTorrent client that comes with graphical,\n" "textual, and Web user interfaces. Transmission also has a daemon for\n" @@ -1362,129 +1540,143 @@ msgid "" "DHT, µTP, PEX and Magnet Links." msgstr "" -#: gnu/packages/bittorrent.scm:141 +#: gnu/packages/bittorrent.scm:144 msgid "BitTorrent library of rtorrent" msgstr "BitTorrent-bibliotek for rtorrent" -#: gnu/packages/bittorrent.scm:143 +#: gnu/packages/bittorrent.scm:146 msgid "" "LibTorrent is a BitTorrent library used by and developed in parallel\n" "with the BitTorrent client rtorrent. It is written in C++ with emphasis on\n" "speed and efficiency." msgstr "" -#: gnu/packages/bittorrent.scm:170 +#: gnu/packages/bittorrent.scm:173 msgid "BitTorrent client with ncurses interface" msgstr "" -#: gnu/packages/bittorrent.scm:172 +#: gnu/packages/bittorrent.scm:175 msgid "" "rTorrent is a BitTorrent client with an ncurses interface. It supports\n" "full encryption, DHT, PEX, and Magnet Links. It can also be controlled via\n" "XML-RPC over SCGI." msgstr "" -#: gnu/packages/bittorrent.scm:215 gnu/packages/bittorrent.scm:256 +#: gnu/packages/bittorrent.scm:208 gnu/packages/bittorrent.scm:249 msgid "Console client for the Transmission BitTorrent daemon" msgstr "" -#: gnu/packages/bittorrent.scm:216 +#: gnu/packages/bittorrent.scm:209 msgid "" "Tremc is a console client, with a curses interface, for the\n" "Transmission BitTorrent daemon." msgstr "" -#: gnu/packages/bittorrent.scm:257 +#: gnu/packages/bittorrent.scm:250 msgid "" "Transmission-remote-cli is a console client, with a curses\n" "interface, for the Transmission BitTorrent daemon. This package is no longer\n" "maintained upstream." msgstr "" -#: gnu/packages/bittorrent.scm:305 +#: gnu/packages/bittorrent.scm:298 msgid "Utility for parallel downloading files" msgstr "Redskab for parallel overførsel af filer" -#: gnu/packages/bittorrent.scm:307 +#: gnu/packages/bittorrent.scm:300 msgid "" "Aria2 is a lightweight, multi-protocol & multi-source command-line\n" "download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.\n" "Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces." msgstr "" -#: gnu/packages/bittorrent.scm:340 +#: gnu/packages/bittorrent.scm:331 msgid "Universal download manager with GTK+ interface" msgstr "" -#: gnu/packages/bittorrent.scm:342 +#: gnu/packages/bittorrent.scm:333 msgid "" "uGet is portable download manager with GTK+ interface supporting\n" "HTTP, HTTPS, BitTorrent and Metalink, supporting multi-connection\n" "downloads, download scheduling, download rate limiting." msgstr "" -#: gnu/packages/bittorrent.scm:370 +#: gnu/packages/bittorrent.scm:362 msgid "Utility to create BitTorrent metainfo files" msgstr "Redskab til at oprette BitTorrent-metainfofiler" -#: gnu/packages/bittorrent.scm:371 +#: gnu/packages/bittorrent.scm:364 msgid "" -"mktorrent is a simple command-line utility to create\n" -"BitTorrent @dfn{metainfo} files, often known simply as @dfn{torrents}, from\n" -"both single files and whole directories. It can add multiple trackers and web\n" -"seed URLs, and set the @code{private} flag to disallow advertisement through\n" -"the distributed hash table (DHT) and Peer Exchange. Hashing is multi-threaded\n" +"mktorrent is a simple command-line utility to create BitTorrent\n" +"@dfn{metainfo} files, often known simply as @dfn{torrents}, from both single\n" +"files and whole directories. It can add multiple trackers and web seed URLs,\n" +"and set the @code{private} flag to disallow advertisement through the\n" +"distributed hash table (@dfn{DHT}) and Peer Exchange. Hashing is multi-threaded\n" "and will take advantage of multiple processor cores where possible." msgstr "" -#: gnu/packages/bittorrent.scm:412 +#: gnu/packages/bittorrent.scm:404 msgid "Feature complete BitTorrent implementation" msgstr "" -#: gnu/packages/bittorrent.scm:414 +#: gnu/packages/bittorrent.scm:406 msgid "" "libtorrent-rasterbar is a feature complete C++ BitTorrent implementation\n" "focusing on efficiency and scalability. It runs on embedded devices as well as\n" "desktops." msgstr "" -#: gnu/packages/certs.scm:66 +#: gnu/packages/bittorrent.scm:444 +msgid "Graphical BitTorrent client" +msgstr "" + +#: gnu/packages/bittorrent.scm:446 +msgid "" +"qBittorrent is a BitTorrent client programmed in C++/Qt that uses\n" +"libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.\n" +"\n" +"It aims to be a good alternative to all other BitTorrent clients out there.\n" +"qBittorrent is fast, stable and provides unicode support as well as many\n" +"features." +msgstr "" + +#: gnu/packages/certs.scm:67 msgid "Python script to extract .pem data from certificate collection" msgstr "" -#: gnu/packages/certs.scm:68 +#: gnu/packages/certs.scm:69 msgid "" "certdata2pem.py is a Python script to transform X.509 certificate\n" "\"source code\" as contained, for example, in the Mozilla sources, into\n" ".pem formatted certificates." msgstr "" -#: gnu/packages/certs.scm:137 +#: gnu/packages/certs.scm:139 msgid "CA certificates from Mozilla" msgstr "" -#: gnu/packages/certs.scm:139 +#: gnu/packages/certs.scm:141 msgid "" "This package provides certificates for Certification Authorities (CA)\n" "taken from the NSS package and thus ultimately from the Mozilla project." msgstr "" -#: gnu/packages/certs.scm:195 +#: gnu/packages/certs.scm:210 msgid "Let's Encrypt root and intermediate certificates" msgstr "" -#: gnu/packages/certs.scm:196 +#: gnu/packages/certs.scm:211 msgid "" "This package provides a certificate store containing only the\n" "Let's Encrypt root and intermediate certificates. It is intended to be used\n" "within Guix." msgstr "" -#: gnu/packages/compression.scm:88 +#: gnu/packages/compression.scm:104 msgid "Compression library" msgstr "" -#: gnu/packages/compression.scm:90 +#: gnu/packages/compression.scm:106 msgid "" "zlib is designed to be a free, general-purpose, legally unencumbered --\n" "that is, not covered by any patents -- lossless data-compression library for\n" @@ -1497,11 +1689,11 @@ msgid "" "in compression." msgstr "" -#: gnu/packages/compression.scm:121 +#: gnu/packages/compression.scm:137 msgid "Zip Compression library" msgstr "Zip-komprimeringsbibliotek" -#: gnu/packages/compression.scm:123 +#: gnu/packages/compression.scm:139 msgid "" "Minizip is a minimalistic library that supports compressing,\n" "extracting and viewing ZIP archives. This version is extracted from\n" @@ -1511,31 +1703,31 @@ msgstr "" "udtrækning og visning af ZIP-arkiver. Denne version er udtrækket fra\n" "kilden @code{zlib}." -#: gnu/packages/compression.scm:142 +#: gnu/packages/compression.scm:158 msgid "Replacement for Sun's 'jar' utility" msgstr "Erstatning for Suns redskab »jar«" -#: gnu/packages/compression.scm:144 +#: gnu/packages/compression.scm:160 msgid "" "FastJar is an attempt to create a much faster replacement for Sun's 'jar'\n" "utility. Instead of being written in Java, FastJar is written in C." msgstr "" -#: gnu/packages/compression.scm:178 +#: gnu/packages/compression.scm:194 msgid "C library for manipulating POSIX tar files" msgstr "C-bibliotek til at manipulere POSIX-tar-filer" -#: gnu/packages/compression.scm:180 +#: gnu/packages/compression.scm:196 msgid "" "libtar is a C library for manipulating POSIX tar files. It handles\n" "adding and extracting files to/from a tar archive." msgstr "" -#: gnu/packages/compression.scm:197 +#: gnu/packages/compression.scm:213 msgid "General file (de)compression (using lzw)" msgstr "" -#: gnu/packages/compression.scm:202 +#: gnu/packages/compression.scm:227 msgid "" "GNU Gzip provides data compression and decompression utilities; the\n" "typical extension is \".gz\". Unlike the \"zip\" format, it compresses a single\n" @@ -1543,11 +1735,11 @@ msgid "" "\".tar.gz\" or \".tgz\", etc." msgstr "" -#: gnu/packages/compression.scm:278 +#: gnu/packages/compression.scm:297 msgid "High-quality data compression program" msgstr "" -#: gnu/packages/compression.scm:280 +#: gnu/packages/compression.scm:299 msgid "" "bzip2 is a freely available, patent free (see below), high-quality data\n" "compressor. It typically compresses files to within 10% to 15% of the best\n" @@ -1556,11 +1748,11 @@ msgid "" "decompression." msgstr "" -#: gnu/packages/compression.scm:301 +#: gnu/packages/compression.scm:320 msgid "Parallel bzip2 compression utility" msgstr "" -#: gnu/packages/compression.scm:303 +#: gnu/packages/compression.scm:322 msgid "" "lbzip2 is a multi-threaded compression utility with support for the\n" "bzip2 compressed file format. lbzip2 can process standard bz2 files in\n" @@ -1570,11 +1762,11 @@ msgid "" "compatible with bzip2 – both at file format and command line level." msgstr "" -#: gnu/packages/compression.scm:333 +#: gnu/packages/compression.scm:352 msgid "Parallel bzip2 implementation" msgstr "" -#: gnu/packages/compression.scm:335 +#: gnu/packages/compression.scm:354 msgid "" "Pbzip2 is a parallel implementation of the bzip2 block-sorting file\n" "compressor that uses pthreads and achieves near-linear speedup on SMP machines.\n" @@ -1582,11 +1774,11 @@ msgid "" "compressed with pbzip2 can be decompressed with bzip2)." msgstr "" -#: gnu/packages/compression.scm:356 +#: gnu/packages/compression.scm:375 msgid "General-purpose data compression" msgstr "" -#: gnu/packages/compression.scm:358 +#: gnu/packages/compression.scm:377 msgid "" "XZ Utils is free general-purpose data compression software with high\n" "compression ratio. XZ Utils were written for POSIX-like systems, but also\n" @@ -1599,11 +1791,11 @@ msgid "" "than gzip and 15 % smaller output than bzip2." msgstr "" -#: gnu/packages/compression.scm:386 +#: gnu/packages/compression.scm:405 msgid "Data compression library suitable for real-time data de-/compression" msgstr "" -#: gnu/packages/compression.scm:388 +#: gnu/packages/compression.scm:407 msgid "" "LZO is a data compression library which is suitable for data\n" "de-/compression in real-time. This means it favours speed over\n" @@ -1613,22 +1805,22 @@ msgid "" "format are designed to be portable across platforms." msgstr "" -#: gnu/packages/compression.scm:424 +#: gnu/packages/compression.scm:443 msgid "Python bindings for the LZO data compression library" msgstr "Pythonbindinger for LZO-datakomprimeringsbiblioteket" -#: gnu/packages/compression.scm:426 +#: gnu/packages/compression.scm:445 msgid "" "Python-LZO provides Python bindings for LZO, i.e. you can access\n" "the LZO library from your Python scripts thereby compressing ordinary\n" "Python strings." msgstr "" -#: gnu/packages/compression.scm:449 +#: gnu/packages/compression.scm:468 msgid "Compress or expand files" msgstr "Komprimer eller udvid filer" -#: gnu/packages/compression.scm:451 +#: gnu/packages/compression.scm:470 msgid "" "Lzop is a file compressor which is very similar to gzip. Lzop uses the\n" "LZO data compression library for compression services, and its main advantages\n" @@ -1636,23 +1828,43 @@ msgid "" "some compression ratio)." msgstr "" -#: gnu/packages/compression.scm:470 +#: gnu/packages/compression.scm:489 msgid "Lossless data compressor based on the LZMA algorithm" msgstr "" -#: gnu/packages/compression.scm:472 +#: gnu/packages/compression.scm:491 msgid "" "Lzip is a lossless data compressor with a user interface similar to the\n" "one of gzip or bzip2. Lzip decompresses almost as fast as gzip and compresses\n" -"more than bzip2, which makes it well suited for software distribution and data\n" +"more than bzip2, which makes it well-suited for software distribution and data\n" "archiving. Lzip is a clean implementation of the LZMA algorithm." msgstr "" -#: gnu/packages/compression.scm:504 +#: gnu/packages/compression.scm:510 +msgid "Recover and decompress data from damaged lzip files" +msgstr "" + +#: gnu/packages/compression.scm:512 +msgid "" +"Lziprecover is a data recovery tool and decompressor for files in the lzip\n" +"compressed data format (.lz). It can test the integrity of lzip files, extract\n" +"data from damaged ones, and repair most files with small errors (up to one\n" +"single-byte error per member) entirely.\n" +"\n" +"Lziprecover is not a replacement for regular backups, but a last line of defence\n" +"when even the backups are corrupt. It can recover files by merging the good\n" +"parts of two or more damaged copies, such as can be easily produced by running\n" +"@command{ddrescue} on a failing device.\n" +"\n" +"This package also includes @command{unzcrash}, a tool to test the robustness of\n" +"decompressors when faced with corrupted input." +msgstr "" + +#: gnu/packages/compression.scm:554 msgid "Archives in shell scripts, uuencode/uudecode" msgstr "" -#: gnu/packages/compression.scm:506 +#: gnu/packages/compression.scm:556 msgid "" "GNU sharutils is a package for creating and manipulating shell\n" "archives that can be readily emailed. A shell archive is a file that can be\n" @@ -1660,71 +1872,71 @@ msgid "" "This package is mostly for compatibility and historical interest." msgstr "" -#: gnu/packages/compression.scm:537 +#: gnu/packages/compression.scm:587 msgid "Library for SoundFont decompression" msgstr "" -#: gnu/packages/compression.scm:539 +#: gnu/packages/compression.scm:589 msgid "" "SfArkLib is a C++ library for decompressing SoundFont files compressed\n" "with the sfArk algorithm." msgstr "" -#: gnu/packages/compression.scm:572 +#: gnu/packages/compression.scm:623 msgid "Basic sfArk decompressor" msgstr "" -#: gnu/packages/compression.scm:573 +#: gnu/packages/compression.scm:624 msgid "" "SfArk extractor converts SoundFonts in the compressed legacy\n" "sfArk file format to the uncompressed sf2 format." msgstr "" -#: gnu/packages/compression.scm:590 +#: gnu/packages/compression.scm:641 msgid "Compression tools for some formats used by Microsoft" msgstr "" -#: gnu/packages/compression.scm:592 +#: gnu/packages/compression.scm:643 msgid "" "The purpose of libmspack is to provide both compression and\n" "decompression of some loosely related file formats used by Microsoft." msgstr "" -#: gnu/packages/compression.scm:611 +#: gnu/packages/compression.scm:662 msgid "Low-level interface to bzip2 compression library" msgstr "" -#: gnu/packages/compression.scm:612 +#: gnu/packages/compression.scm:663 msgid "" "This module provides a Perl interface to the bzip2\n" "compression library." msgstr "" -#: gnu/packages/compression.scm:646 +#: gnu/packages/compression.scm:697 msgid "Low-level interface to zlib compression library" msgstr "" -#: gnu/packages/compression.scm:647 +#: gnu/packages/compression.scm:698 msgid "" "This module provides a Perl interface to the zlib\n" "compression library." msgstr "" -#: gnu/packages/compression.scm:668 +#: gnu/packages/compression.scm:719 msgid "IO Interface to compressed files/buffers" msgstr "" -#: gnu/packages/compression.scm:669 +#: gnu/packages/compression.scm:720 msgid "" "IO-Compress provides a Perl interface to allow reading and\n" "writing of compressed data created with the zlib and bzip2 libraries." msgstr "" -#: gnu/packages/compression.scm:697 +#: gnu/packages/compression.scm:746 msgid "Compression algorithm focused on speed" msgstr "" -#: gnu/packages/compression.scm:698 +#: gnu/packages/compression.scm:747 msgid "" "LZ4 is a lossless compression algorithm, providing\n" "compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an\n" @@ -1733,22 +1945,30 @@ msgid "" "time for compression ratio." msgstr "" -#: gnu/packages/compression.scm:722 -msgid "LZ4 Bindings for Python" -msgstr "" +#: gnu/packages/compression.scm:772 +msgid "LZ4 bindings for Python" +msgstr "LZ4-bindinger for Python" -#: gnu/packages/compression.scm:724 +#: gnu/packages/compression.scm:774 msgid "" "This package provides python bindings for the lz4 compression library\n" "by Yann Collet. The project contains bindings for the LZ4 block format and\n" "the LZ4 frame format." msgstr "" -#: gnu/packages/compression.scm:764 +#: gnu/packages/compression.scm:797 +msgid "String compression" +msgstr "Strengkomprimering" + +#: gnu/packages/compression.scm:798 +msgid "Lz-string is a string compressor library for Python." +msgstr "" + +#: gnu/packages/compression.scm:836 msgid "Tools to create and extract squashfs file systems" msgstr "" -#: gnu/packages/compression.scm:766 +#: gnu/packages/compression.scm:838 msgid "" "Squashfs is a highly compressed read-only file system for Linux. It uses\n" "zlib to compress files, inodes, and directories. All blocks are packed to\n" @@ -1758,21 +1978,21 @@ msgid "" "extract such file systems." msgstr "" -#: gnu/packages/compression.scm:803 +#: gnu/packages/compression.scm:875 msgid "Parallel implementation of gzip" msgstr "" -#: gnu/packages/compression.scm:805 +#: gnu/packages/compression.scm:877 msgid "" "This package provides a parallel implementation of gzip that exploits\n" "multiple processors and multiple cores when compressing data." msgstr "" -#: gnu/packages/compression.scm:829 +#: gnu/packages/compression.scm:901 msgid "Parallel indexing implementation of LZMA" msgstr "" -#: gnu/packages/compression.scm:831 +#: gnu/packages/compression.scm:903 msgid "" "The existing XZ Utils provide great compression in the .xz file format,\n" "but they produce just one big block of compressed data. Pixz instead produces\n" @@ -1781,11 +2001,11 @@ msgid "" "tarballs." msgstr "" -#: gnu/packages/compression.scm:872 +#: gnu/packages/compression.scm:944 msgid "Implementation of the Brotli compression algorithm" msgstr "" -#: gnu/packages/compression.scm:874 +#: gnu/packages/compression.scm:946 msgid "" "Brotli is a general-purpose lossless compression algorithm. It is\n" "similar in speed to deflate but offers denser compression. This package\n" @@ -1793,19 +2013,19 @@ msgid "" "respectively, based on the reference implementation from Google." msgstr "" -#: gnu/packages/compression.scm:898 +#: gnu/packages/compression.scm:970 msgid "Tool to unpack Cabinet archives" msgstr "" -#: gnu/packages/compression.scm:899 +#: gnu/packages/compression.scm:971 msgid "Extracts files out of Microsoft Cabinet (.cab) archives" msgstr "" -#: gnu/packages/compression.scm:931 +#: gnu/packages/compression.scm:1003 msgid "Delta encoder for binary files" msgstr "" -#: gnu/packages/compression.scm:932 +#: gnu/packages/compression.scm:1004 msgid "" "xdelta encodes only the differences between two binary files\n" "using the VCDIFF algorithm and patch file format described in RFC 3284. It can\n" @@ -1814,11 +2034,11 @@ msgid "" "human-readable output." msgstr "" -#: gnu/packages/compression.scm:964 +#: gnu/packages/compression.scm:1037 msgid "Large file compressor with a very high compression ratio" msgstr "" -#: gnu/packages/compression.scm:965 +#: gnu/packages/compression.scm:1038 msgid "" "lrzip is a compression utility that uses long-range\n" "redundancy reduction to improve the subsequent compression ratio of\n" @@ -1829,45 +2049,88 @@ msgid "" "well as bzip2." msgstr "" -#: gnu/packages/compression.scm:989 +#: gnu/packages/compression.scm:1068 +msgid "Filter for improving compression of typed binary data" +msgstr "" + +#: gnu/packages/compression.scm:1069 +msgid "" +"Bitshuffle is an algorithm that rearranges typed, binary data\n" +"for improving compression, as well as a python/C package that implements this\n" +"algorithm within the Numpy framework." +msgstr "" + +#: gnu/packages/compression.scm:1090 msgid "Fast compressor/decompressor" msgstr "" -#: gnu/packages/compression.scm:990 +#: gnu/packages/compression.scm:1091 msgid "" -"Snappy is a compression/decompression library. It does not\n" +"Snappy is a compression/decompression library. It does not\n" "aim for maximum compression, or compatibility with any other compression library;\n" -"instead, it aims for very high speeds and reasonable compression. For instance,\n" +"instead, it aims for very high speeds and reasonable compression. For instance,\n" "compared to the fastest mode of zlib, Snappy is an order of magnitude faster\n" "for most inputs, but the resulting compressed files are anywhere from 20% to\n" "100% bigger." msgstr "" -#: gnu/packages/compression.scm:1058 -msgid "Command-line file archiver with high compression ratio" +#: gnu/packages/compression.scm:1220 +msgid "Compression/decompression algorithm in Java" msgstr "" -#: gnu/packages/compression.scm:1059 +#: gnu/packages/compression.scm:1221 +msgid "" +"Snappy-java is a Java port of the snappy, a fast C++\n" +"compresser/decompresser." +msgstr "" + +#: gnu/packages/compression.scm:1327 +msgid "Java port of the Snappy (de)compressor" +msgstr "" + +#: gnu/packages/compression.scm:1329 +msgid "" +"Iq80-snappy is a port of the Snappy compressor and decompressor rewritten\n" +"in pure Java. This compression code produces a byte-for-byte exact copy of the\n" +"output created by the original C++ code, and is extremely fast." +msgstr "" + +#: gnu/packages/compression.scm:1368 +msgid "Java bzip2 compression/decompression library" +msgstr "Java bzip2-komprimerings/dekomprimeringsbibliotek" + +#: gnu/packages/compression.scm:1369 +msgid "" +"Jbzip2 is a Java bzip2 compression/decompression library.\n" +"It can be used as a replacement for the Apache @code{CBZip2InputStream} /\n" +"@code{CBZip2OutputStream} classes." +msgstr "" + +#: gnu/packages/compression.scm:1435 +msgid "Command-line file archiver with high compression ratio" +msgstr "Filarkivprogram for kommandolinjen med høje komprimeringsforhold" + +#: gnu/packages/compression.scm:1436 msgid "" "p7zip is a command-line port of 7-Zip, a file archiver that\n" "handles the 7z format which features very high compression ratios." msgstr "" -#: gnu/packages/compression.scm:1098 +#: gnu/packages/compression.scm:1475 msgid "Compressed C++ iostream" msgstr "" -#: gnu/packages/compression.scm:1099 +#: gnu/packages/compression.scm:1476 msgid "" "gzstream is a small library for providing zlib\n" "functionality in a C++ iostream." msgstr "" -#: gnu/packages/compression.scm:1146 +#: gnu/packages/compression.scm:1523 msgid "Incremental journaling archiver" msgstr "" -#: gnu/packages/compression.scm:1147 +#: gnu/packages/compression.scm:1524 msgid "" "ZPAQ is a command-line archiver for realistic situations with\n" "many duplicate and already compressed files. It backs up only those files\n" @@ -1881,21 +2144,21 @@ msgid "" "or junctions, and always follows hard links." msgstr "" -#: gnu/packages/compression.scm:1175 -msgid "RAR archive extraction tool" +#: gnu/packages/compression.scm:1606 +msgid "Extract CAB files from InstallShield installers" msgstr "" -#: gnu/packages/compression.scm:1176 +#: gnu/packages/compression.scm:1608 msgid "" -"Unrar is a simple command-line program to list and extract\n" -"RAR archives." +"@command{unshield} is a tool and library for extracting @file{.cab}\n" +" archives from InstallShield installers." msgstr "" -#: gnu/packages/compression.scm:1212 +#: gnu/packages/compression.scm:1639 msgid "Zstandard real-time compression algorithm" msgstr "" -#: gnu/packages/compression.scm:1213 +#: gnu/packages/compression.scm:1640 msgid "" "Zstandard (@command{zstd}) is a lossless compression algorithm\n" "that combines very fast operation with a compression ratio comparable to that of\n" @@ -1905,11 +2168,11 @@ msgid "" "speed." msgstr "" -#: gnu/packages/compression.scm:1252 +#: gnu/packages/compression.scm:1682 msgid "Threaded implementation of the Zstandard compression algorithm" msgstr "" -#: gnu/packages/compression.scm:1253 +#: gnu/packages/compression.scm:1683 msgid "" "Parallel Zstandard (PZstandard or @command{pzstd}) is a\n" "multi-threaded implementation of the @uref{http://zstd.net/, Zstandard\n" @@ -1922,73 +2185,301 @@ msgid "" "the actual decompression, the other input and output." msgstr "" -#: gnu/packages/databases.scm:120 +#: gnu/packages/compression.scm:1724 +msgid "Compression and file packing utility" +msgstr "Komprimerings- og filpakningsredskab" + +#: gnu/packages/compression.scm:1726 +msgid "" +"Zip is a compression and file packaging/archive utility. Zip is useful\n" +"for packaging a set of files for distribution, for archiving files, and for\n" +"saving disk space by temporarily compressing unused files or directories.\n" +"Zip puts one or more compressed files into a single ZIP archive, along with\n" +"information about the files (name, path, date, time of last modification,\n" +"protection, and check information to verify file integrity). An entire\n" +"directory structure can be packed into a ZIP archive with a single command.\n" +"\n" +"Zip has one compression method (deflation) and can also store files without\n" +"compression. Zip automatically chooses the better of the two for each file.\n" +"Compression ratios of 2:1 to 3:1 are common for text files." +msgstr "" + +#: gnu/packages/compression.scm:1782 +msgid "Decompression and file extraction utility" +msgstr "" + +#: gnu/packages/compression.scm:1784 +msgid "" +"UnZip is an extraction utility for archives compressed in .zip format,\n" +"also called \"zipfiles\".\n" +"\n" +"UnZip lists, tests, or extracts files from a .zip archive. The default\n" +"behaviour (with no options) is to extract into the current directory, and\n" +"subdirectories below it, all files from the specified zipfile. UnZip\n" +"recreates the stored directory structure by default." +msgstr "" + +#: gnu/packages/compression.scm:1829 +msgid "Library for accessing zip files" +msgstr "Bibliotek til at tilgå zip-filer" + +#: gnu/packages/compression.scm:1831 +msgid "ZZipLib is a library based on zlib for accessing zip files." +msgstr "ZZipLib er et bibliotek baseret på zlib for adgang til zip-filer." + +#: gnu/packages/compression.scm:1853 +msgid "Provides an interface to Zip archive files" +msgstr "Tilbyder en grænseflade til zip-arkivfiler" + +#: gnu/packages/compression.scm:1854 +msgid "" +"The @code{Archive::Zip} module allows a Perl program to\n" +"create, manipulate, read, and write Zip archive files." +msgstr "" + +#: gnu/packages/compression.scm:1876 +msgid "C library for reading, creating, and modifying zip archives" +msgstr "C-bibliotek til at læse, oprette og ændre zip-arkiver" + +#: gnu/packages/compression.scm:1877 +msgid "" +"Libzip is a C library for reading, creating, and modifying\n" +"zip archives. Files can be added from data buffers, files, or compressed data\n" +"copied directly from other zip archives. Changes made without closing the\n" +"archive can be reverted." +msgstr "" + +#: gnu/packages/compression.scm:1910 +msgid "Universal tool to manage file archives of various types" +msgstr "Universelt værktøj til at håndtere filarkiver af diverse typer" + +#: gnu/packages/compression.scm:1911 +msgid "" +"The main command is @command{aunpack} which extracts files\n" +"from an archive. The other commands provided are @command{apack} (to create\n" +"archives), @command{als} (to list files in archives), and @command{acat} (to\n" +"extract files to standard out). As @command{atool} invokes external programs\n" +"to handle the archives, not all commands may be supported for a certain type\n" +"of archives." +msgstr "" + +#: gnu/packages/compression.scm:1933 +msgid "Generic archive extracting mechanism" +msgstr "" + +#: gnu/packages/compression.scm:1934 +msgid "" +"It allows you to extract any archive file of the type .tar,\n" +".tar.gz, .gz, .Z, tar.bz2, .tbz, .bz2, .zip, .xz,, .txz, .tar.xz or .lzma\n" +"without having to worry how it does so, or use different interfaces for each\n" +"type by using either Perl modules, or command-line tools on your system." +msgstr "" + +#: gnu/packages/compression.scm:1970 +msgid "XZ in Java" +msgstr "" + +#: gnu/packages/compression.scm:1971 +msgid "" +"Tukaani-xz is an implementation of xz compression/decompression\n" +"algorithms in Java." +msgstr "" + +#: gnu/packages/compression.scm:1991 +msgid "Small, stand-alone lzip decompressor" +msgstr "" + +#: gnu/packages/compression.scm:1993 +msgid "" +"Lunzip is a decompressor for files in the lzip compression format (.lz),\n" +"written as a single small C tool with no dependencies. This makes it\n" +"well-suited to embedded and other systems without a C++ compiler, or for use in\n" +"applications such as software installers that need only to decompress files,\n" +"not compress them.\n" +"Lunzip is intended to be fully compatible with the regular lzip package." +msgstr "" + +#: gnu/packages/compression.scm:2018 +msgid "Small, stand-alone lzip compressor and decompressor" +msgstr "" + +#: gnu/packages/compression.scm:2020 +msgid "" +"Clzip is a compressor and decompressor for files in the lzip compression\n" +"format (.lz), written as a single small C tool with no dependencies. This makes\n" +"it well-suited to embedded and other systems without a C++ compiler, or for use\n" +"in other applications like package managers.\n" +"Clzip is intended to be fully compatible with the regular lzip package." +msgstr "" + +#: gnu/packages/compression.scm:2047 +msgid "Lzip data compression C library" +msgstr "Lzip-datakomprimerings-C-bibliotek" + +#: gnu/packages/compression.scm:2049 +msgid "" +"Lzlib is a C library for in-memory LZMA compression and decompression in\n" +"the lzip format. It supports integrity checking of the decompressed data, and\n" +"all functions are thread-safe. The library should never crash, even in case of\n" +"corrupted input." +msgstr "" + +#: gnu/packages/compression.scm:2071 +msgid "Parallel lossless data compressor for the lzip format" +msgstr "" + +#: gnu/packages/compression.scm:2073 +msgid "" +"Plzip is a massively parallel (multi-threaded) lossless data compressor\n" +"and decompressor that uses the lzip file format (.lz). Files produced by plzip\n" +"are fully compatible with lzip and can be rescued with lziprecover.\n" +"On multiprocessor machines, plzip can compress and decompress large files much\n" +"faster than lzip, at the cost of a slightly reduced compression ratio (0.4% to\n" +"2%). The number of usable threads is limited by file size: on files of only a\n" +"few MiB, plzip is no faster than lzip.\n" +"Files that were compressed with regular lzip will also not be decompressed\n" +"faster by plzip, unless the @code{-b} option was used: lzip usually produces\n" +"single-member files which can't be decompressed in parallel." +msgstr "" + +#: gnu/packages/compression.scm:2107 +msgid "Tool for extracting Inno Setup installers" +msgstr "" + +#: gnu/packages/compression.scm:2108 +msgid "" +"innoextract allows extracting Inno Setup installers under\n" +"non-Windows systems without running the actual installer using wine." +msgstr "" + +#: gnu/packages/compression.scm:2144 +msgid "General-purpose lossless compression" +msgstr "" + +#: gnu/packages/compression.scm:2145 +msgid "" +"This package provides the reference implementation of Brotli,\n" +"a generic-purpose lossless compression algorithm that compresses data using a\n" +"combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd\n" +"order context modeling, with a compression ratio comparable to the best\n" +"currently available general-purpose compression methods. It is similar in speed\n" +"with @code{deflate} but offers more dense compression.\n" +"\n" +"The specification of the Brotli Compressed Data Format is defined in RFC 7932." +msgstr "" + +#: gnu/packages/databases.scm:158 msgid "Clustered RDF storage and query engine" msgstr "" -#: gnu/packages/databases.scm:121 +#: gnu/packages/databases.scm:159 msgid "" "4store is a RDF/SPARQL store written in C, supporting\n" "either single machines or networked clusters." msgstr "" -#: gnu/packages/databases.scm:140 +#: gnu/packages/databases.scm:178 msgid "Hash library of database functions compatible with traditional dbm" msgstr "" -#: gnu/packages/databases.scm:142 +#: gnu/packages/databases.scm:180 msgid "" "GDBM is a library for manipulating hashed databases. It is used to\n" "store key/value pairs in a file in a manner similar to the Unix dbm library\n" "and provides interfaces to the traditional file format." msgstr "" -#: gnu/packages/databases.scm:193 +#: gnu/packages/databases.scm:221 +msgid "@code{mgo} offers a rich MongoDB driver for Go." +msgstr "" + +#: gnu/packages/databases.scm:223 +msgid "" +"@code{mgo} (pronounced as mango) is a MongoDB driver for the Go language.\n" +"It implements a rich selection of features under a simple API following\n" +"standard Go idioms." +msgstr "" + +#: gnu/packages/databases.scm:274 msgid "Berkeley database" msgstr "" -#: gnu/packages/databases.scm:195 +#: gnu/packages/databases.scm:276 msgid "" "Berkeley DB is an embeddable database allowing developers the choice of\n" "SQL, Key/Value, XML/XQuery or Java Object storage for their data model." msgstr "" -#: gnu/packages/databases.scm:286 +#: gnu/packages/databases.scm:354 +msgid "Utility for dumping and restoring ElasticSearch indexes" +msgstr "" + +#: gnu/packages/databases.scm:356 +msgid "" +"This package provides a utility for dumping the contents of an\n" +"ElasticSearch index to a compressed file and restoring the dumpfile back to an\n" +"ElasticSearch server" +msgstr "" + +#: gnu/packages/databases.scm:394 msgid "Fast key-value storage library" msgstr "" -#: gnu/packages/databases.scm:288 +#: gnu/packages/databases.scm:396 msgid "" "LevelDB is a fast key-value storage library that provides an ordered\n" "mapping from string keys to string values." msgstr "" -#: gnu/packages/databases.scm:365 +#: gnu/packages/databases.scm:417 +msgid "In memory caching service" +msgstr "" + +#: gnu/packages/databases.scm:418 +msgid "" +"Memcached is a in memory key value store. It has a small\n" +"and generic API, and was originally intended for use with dynamic web\n" +"applications." +msgstr "" + +#: gnu/packages/databases.scm:542 +msgid "High performance and high availability document database" +msgstr "" + +#: gnu/packages/databases.scm:544 +msgid "" +"Mongo is a high-performance, high availability, schema-free\n" +"document-oriented database. A key goal of MongoDB is to bridge the gap\n" +"between key/value stores (which are fast and highly scalable) and traditional\n" +"RDBMS systems (which are deep in functionality)." +msgstr "" + +#: gnu/packages/databases.scm:620 msgid "Fast, easy to use, and popular database" msgstr "" -#: gnu/packages/databases.scm:367 +#: gnu/packages/databases.scm:622 msgid "" "MySQL is a fast, reliable, and easy to use relational database\n" "management system that supports the standardized Structured Query\n" "Language." msgstr "" -#: gnu/packages/databases.scm:443 +#: gnu/packages/databases.scm:698 msgid "SQL database server" msgstr "" -#: gnu/packages/databases.scm:445 +#: gnu/packages/databases.scm:700 msgid "" "MariaDB is a multi-user and multi-threaded SQL database server, designed\n" "as a drop-in replacement of MySQL." msgstr "" -#: gnu/packages/databases.scm:475 +#: gnu/packages/databases.scm:738 msgid "Powerful object-relational database system" msgstr "" -#: gnu/packages/databases.scm:477 +#: gnu/packages/databases.scm:740 msgid "" "PostgreSQL is a powerful object-relational database system. It is fully\n" "ACID compliant, has full support for foreign keys, joins, views, triggers, and\n" @@ -1998,11 +2489,11 @@ msgid "" "pictures, sounds, or video." msgstr "" -#: gnu/packages/databases.scm:503 +#: gnu/packages/databases.scm:779 msgid "Key-value database" msgstr "" -#: gnu/packages/databases.scm:504 +#: gnu/packages/databases.scm:780 msgid "" "QDBM is a library of routines for managing a\n" "database. The database is a simple data file containing key-value\n" @@ -2012,11 +2503,11 @@ msgid "" "organized in a hash table or B+ tree." msgstr "" -#: gnu/packages/databases.scm:559 +#: gnu/packages/databases.scm:835 msgid "Manipulate plain text files as databases" msgstr "" -#: gnu/packages/databases.scm:561 +#: gnu/packages/databases.scm:837 msgid "" "GNU Recutils is a set of tools and libraries for creating and\n" "manipulating text-based, human-editable databases. Despite being text-based,\n" @@ -2025,11 +2516,11 @@ msgid "" "types are supported, as is encryption." msgstr "" -#: gnu/packages/databases.scm:637 +#: gnu/packages/databases.scm:933 msgid "Persistent key-value store for fast storage" msgstr "" -#: gnu/packages/databases.scm:639 +#: gnu/packages/databases.scm:935 msgid "" "RocksDB is a library that forms the core building block for a fast\n" "key-value server, especially suited for storing data on flash drives. It\n" @@ -2040,11 +2531,11 @@ msgid "" "data in a single database. RocksDB is partially based on @code{LevelDB}." msgstr "" -#: gnu/packages/databases.scm:698 +#: gnu/packages/databases.scm:995 msgid "Command-line tool for accessing SPARQL endpoints over HTTP" msgstr "" -#: gnu/packages/databases.scm:699 +#: gnu/packages/databases.scm:996 msgid "" "Sparql-query is a command-line tool for accessing SPARQL\n" "endpoints over HTTP. It has been intentionally designed to 'feel' similar to\n" @@ -2055,11 +2546,11 @@ msgid "" "for example from a shell script." msgstr "" -#: gnu/packages/databases.scm:741 +#: gnu/packages/databases.scm:1038 msgid "The SQLite database management system" msgstr "" -#: gnu/packages/databases.scm:743 +#: gnu/packages/databases.scm:1040 msgid "" "SQLite is a software library that implements a self-contained, serverless,\n" "zero-configuration, transactional SQL database engine. SQLite is the most\n" @@ -2067,11 +2558,11 @@ msgid "" "is in the public domain." msgstr "" -#: gnu/packages/databases.scm:778 +#: gnu/packages/databases.scm:1098 msgid "Trivial database" msgstr "" -#: gnu/packages/databases.scm:780 +#: gnu/packages/databases.scm:1100 msgid "" "TDB is a Trivial Database. In concept, it is very much like GDBM,\n" "and BSD's DB except that it allows multiple simultaneous writers and uses\n" @@ -2079,19 +2570,19 @@ msgid "" "extremely small." msgstr "" -#: gnu/packages/databases.scm:799 +#: gnu/packages/databases.scm:1119 msgid "Database independent interface for Perl" msgstr "" -#: gnu/packages/databases.scm:800 +#: gnu/packages/databases.scm:1120 msgid "This package provides an database interface for Perl." msgstr "" -#: gnu/packages/databases.scm:847 +#: gnu/packages/databases.scm:1168 msgid "Extensible and flexible object <-> relational mapper" msgstr "" -#: gnu/packages/databases.scm:848 +#: gnu/packages/databases.scm:1169 msgid "" "An SQL to OO mapper with an object API inspired by\n" "Class::DBI (with a compatibility layer as a springboard for porting) and a\n" @@ -2103,21 +2594,21 @@ msgid "" "\"ORDER BY\" and \"HAVING\" support." msgstr "" -#: gnu/packages/databases.scm:878 +#: gnu/packages/databases.scm:1200 msgid "Cursor with built-in caching support" msgstr "" -#: gnu/packages/databases.scm:879 +#: gnu/packages/databases.scm:1201 msgid "" "DBIx::Class::Cursor::Cached provides a cursor class with\n" "built-in caching support." msgstr "" -#: gnu/packages/databases.scm:899 +#: gnu/packages/databases.scm:1223 msgid "Introspect many-to-many relationships" msgstr "" -#: gnu/packages/databases.scm:900 +#: gnu/packages/databases.scm:1224 msgid "" "Because the many-to-many relationships are not real\n" "relationships, they can not be introspected with DBIx::Class. Many-to-many\n" @@ -2127,22 +2618,22 @@ msgid "" "introspected and examined." msgstr "" -#: gnu/packages/databases.scm:957 +#: gnu/packages/databases.scm:1282 msgid "Create a DBIx::Class::Schema based on a database" msgstr "Opret et DBIx::Class::Schema baseret på en database" -#: gnu/packages/databases.scm:958 +#: gnu/packages/databases.scm:1283 msgid "" "DBIx::Class::Schema::Loader automates the definition of a\n" "DBIx::Class::Schema by scanning database table definitions and setting up the\n" "columns, primary keys, unique constraints and relationships." msgstr "" -#: gnu/packages/databases.scm:982 +#: gnu/packages/databases.scm:1307 msgid "DBI PostgreSQL interface" msgstr "DBI PostgreSQL-grænseflade" -#: gnu/packages/databases.scm:983 +#: gnu/packages/databases.scm:1308 msgid "" "This package provides a PostgreSQL driver for the Perl5\n" "@dfn{Database Interface} (DBI)." @@ -2150,11 +2641,11 @@ msgstr "" "Denne pakke tilbyder en PostgreSQL-driver for Perl5-\n" "@dfn{Database Interface} (DBI)." -#: gnu/packages/databases.scm:1006 +#: gnu/packages/databases.scm:1332 msgid "DBI MySQL interface" msgstr "DBI MySQL-grænseflade" -#: gnu/packages/databases.scm:1007 +#: gnu/packages/databases.scm:1333 msgid "" "This package provides a MySQL driver for the Perl5\n" "@dfn{Database Interface} (DBI)." @@ -2162,11 +2653,11 @@ msgstr "" "Denne pakke tilbyder en MySQL-driver for Perl5-\n" "@dfn{Database Interface} (DBI)." -#: gnu/packages/databases.scm:1026 +#: gnu/packages/databases.scm:1352 msgid "SQlite interface for Perl" msgstr "SQlite-grænseflade for Perl" -#: gnu/packages/databases.scm:1027 +#: gnu/packages/databases.scm:1353 msgid "" "DBD::SQLite is a Perl DBI driver for SQLite, that includes\n" "the entire thing in the distribution. So in order to get a fast transaction\n" @@ -2174,11 +2665,11 @@ msgid "" "module, and nothing else." msgstr "" -#: gnu/packages/databases.scm:1057 +#: gnu/packages/databases.scm:1384 msgid "Generate SQL from Perl data structures" msgstr "Opret SQL fra Perldatastrukturer" -#: gnu/packages/databases.scm:1058 +#: gnu/packages/databases.scm:1385 msgid "" "This module was inspired by the excellent DBIx::Abstract.\n" "While based on the concepts used by DBIx::Abstract, the concepts used have\n" @@ -2188,43 +2679,43 @@ msgid "" "time your data changes." msgstr "" -#: gnu/packages/databases.scm:1087 +#: gnu/packages/databases.scm:1414 msgid "Split SQL code into atomic statements" msgstr "" -#: gnu/packages/databases.scm:1088 +#: gnu/packages/databases.scm:1415 msgid "" "This module tries to split any SQL code, even including\n" "non-standard extensions, into the atomic statements it is composed of." msgstr "" -#: gnu/packages/databases.scm:1106 +#: gnu/packages/databases.scm:1433 msgid "SQL tokenizer" msgstr "" -#: gnu/packages/databases.scm:1107 +#: gnu/packages/databases.scm:1434 msgid "" "SQL::Tokenizer is a tokenizer for SQL queries. It does not\n" "claim to be a parser or query verifier. It just creates sane tokens from a\n" "valid SQL query." msgstr "" -#: gnu/packages/databases.scm:1125 +#: gnu/packages/databases.scm:1452 msgid "Data source abstraction library" msgstr "Abstraktionsbibliotek for datakilde" -#: gnu/packages/databases.scm:1126 +#: gnu/packages/databases.scm:1453 msgid "" "Unixodbc is a library providing an API with which to access\n" "data sources. Data sources include SQL Servers and any software with an ODBC\n" "Driver." msgstr "" -#: gnu/packages/databases.scm:1150 +#: gnu/packages/databases.scm:1477 msgid "In-memory key/value and document store" msgstr "" -#: gnu/packages/databases.scm:1152 +#: gnu/packages/databases.scm:1479 msgid "" "UnQLite is an in-process software library which implements a\n" "self-contained, serverless, zero-configuration, transactional NoSQL\n" @@ -2233,33 +2724,33 @@ msgid "" "similar to BerkeleyDB, LevelDB, etc." msgstr "" -#: gnu/packages/databases.scm:1180 +#: gnu/packages/databases.scm:1507 msgid "Key-value cache and store" msgstr "" -#: gnu/packages/databases.scm:1181 +#: gnu/packages/databases.scm:1508 msgid "" "Redis is an advanced key-value cache and store. Redis\n" "supports many data structures including strings, hashes, lists, sets, sorted\n" "sets, bitmaps and hyperloglogs." msgstr "" -#: gnu/packages/databases.scm:1207 +#: gnu/packages/databases.scm:1535 msgid "Kyoto Cabinet is a modern implementation of the DBM database" msgstr "" -#: gnu/packages/databases.scm:1209 +#: gnu/packages/databases.scm:1537 msgid "" "Kyoto Cabinet is a standalone file-based database that supports Hash\n" "and B+ Tree data storage models. It is a fast key-value lightweight\n" "database and supports many programming languages. It is a NoSQL database." msgstr "" -#: gnu/packages/databases.scm:1235 +#: gnu/packages/databases.scm:1563 msgid "Tokyo Cabinet is a modern implementation of the DBM database" msgstr "" -#: gnu/packages/databases.scm:1237 +#: gnu/packages/databases.scm:1565 msgid "" "Tokyo Cabinet is a library of routines for managing a database.\n" "The database is a simple data file containing records, each is a pair of a\n" @@ -2269,11 +2760,11 @@ msgid "" "organized in hash table, B+ tree, or fixed-length array." msgstr "" -#: gnu/packages/databases.scm:1272 +#: gnu/packages/databases.scm:1601 msgid "NoSQL data engine" msgstr "" -#: gnu/packages/databases.scm:1274 +#: gnu/packages/databases.scm:1603 msgid "" "WiredTiger is an extensible platform for data management. It supports\n" "row-oriented storage (where all columns of a row are stored together),\n" @@ -2282,38 +2773,59 @@ msgid "" "trees (LSM), for sustained throughput under random insert workloads." msgstr "" -#: gnu/packages/databases.scm:1310 -msgid "Perl5 access to Berkeley DB version 1.x" -msgstr "" +#: gnu/packages/databases.scm:1648 +msgid "WiredTiger bindings for GNU Guile" +msgstr "WiredTiger-bindinger for GNU Guile" -#: gnu/packages/databases.scm:1312 +#: gnu/packages/databases.scm:1650 +msgid "" +"This package provides Guile bindings to the WiredTiger ``NoSQL''\n" +"database. Various higher level database abstractions." +msgstr "" +"Denne pakke tilbyder Guilebindinger til WiredTiger ``NoSQL''-\n" +"databasen. Diverse databaseabstraktioner på højere niveau." + +#: gnu/packages/databases.scm:1682 +msgid "Perl5 access to Berkeley DB version 1.x" +msgstr "Perl5-adgang til Berkeley DB version 1.x" + +#: gnu/packages/databases.scm:1684 msgid "The DB::File module provides Perl bindings to the Berkeley DB version 1.x." msgstr "" -#: gnu/packages/databases.scm:1339 -msgid "Lightning memory-mapped database library" +#: gnu/packages/databases.scm:1711 +msgid "Lightning Memory-Mapped Database library" msgstr "" -#: gnu/packages/databases.scm:1340 -msgid "Lightning memory-mapped database library." +#: gnu/packages/databases.scm:1713 +msgid "" +"The @dfn{Lightning Memory-Mapped Database} (LMDB) is a high-performance\n" +"transactional database. Unlike more complex relational databases, LMDB handles\n" +"only key-value pairs (stored as arbitrary byte arrays) and relies on the\n" +"underlying operating system for caching and locking, keeping the code small and\n" +"simple.\n" +"The use of ‘zero-copy’ memory-mapped files combines the persistence of classic\n" +"disk-based databases with high read performance that scales linearly over\n" +"multiple cores. The size of each database is limited only by the size of the\n" +"virtual address space — not physical RAM." msgstr "" -#: gnu/packages/databases.scm:1369 +#: gnu/packages/databases.scm:1750 msgid "C++ connector for PostgreSQL" msgstr "" -#: gnu/packages/databases.scm:1371 +#: gnu/packages/databases.scm:1752 msgid "" "Libpqxx is a C++ library to enable user programs to communicate with the\n" "PostgreSQL database back-end. The database back-end can be local or it may be\n" "on another machine, accessed via TCP/IP." msgstr "" -#: gnu/packages/databases.scm:1394 +#: gnu/packages/databases.scm:1775 msgid "Small object-relational mapping utility" msgstr "" -#: gnu/packages/databases.scm:1396 +#: gnu/packages/databases.scm:1777 msgid "" "Peewee is a simple and small ORM (object-relation mapping) tool. Peewee\n" "handles converting between pythonic values and those used by databases, so you\n" @@ -2322,11 +2834,11 @@ msgid "" "can autogenerate peewee models using @code{pwiz}, a model generator." msgstr "" -#: gnu/packages/databases.scm:1443 +#: gnu/packages/databases.scm:1824 msgid "Library providing transparent encryption of SQLite database files" msgstr "" -#: gnu/packages/databases.scm:1444 +#: gnu/packages/databases.scm:1825 msgid "" "SQLCipher is an implementation of SQLite, extended to\n" "provide transparent 256-bit AES encryption of database files. Pages are\n" @@ -2335,21 +2847,27 @@ msgid "" "development." msgstr "" -#: gnu/packages/databases.scm:1476 +#: gnu/packages/databases.scm:1857 gnu/packages/databases.scm:1884 msgid "Python ODBC Library" msgstr "" -#: gnu/packages/databases.scm:1477 +#: gnu/packages/databases.scm:1858 msgid "" "@code{python-pyodbc-c} provides a Python DB-API driver\n" "for ODBC." msgstr "" -#: gnu/packages/databases.scm:1514 +#: gnu/packages/databases.scm:1885 +msgid "" +"@code{python-pyodbc} provides a Python DB-API driver\n" +"for ODBC." +msgstr "" + +#: gnu/packages/databases.scm:1922 msgid "Read Microsoft Access databases" msgstr "" -#: gnu/packages/databases.scm:1515 +#: gnu/packages/databases.scm:1923 msgid "" "MDB Tools is a set of tools and applications to read the\n" "proprietary MDB file format used in Microsoft's Access database package. This\n" @@ -2358,11 +2876,334 @@ msgid "" "etc., and an SQL engine for performing simple SQL queries." msgstr "" -#: gnu/packages/debug.scm:78 -msgid "Heuristical file minimizer" +#: gnu/packages/databases.scm:1964 +msgid "Python binding for the ‘Lightning’ database (LMDB)" +msgstr "" + +#: gnu/packages/databases.scm:1966 +msgid "" +"python-lmdb or py-lmdb is a Python binding for the @dfn{Lightning\n" +"Memory-Mapped Database} (LMDB), a high-performance key-value store." +msgstr "" + +#: gnu/packages/databases.scm:2020 +msgid "ActiveRecord ORM for Python" +msgstr "" + +#: gnu/packages/databases.scm:2022 +msgid "" +"Orator provides a simple ActiveRecord-like Object Relational Mapping\n" +"implementation for Python." +msgstr "" + +#: gnu/packages/databases.scm:2055 +msgid "Multi-model database system" +msgstr "" + +#: gnu/packages/databases.scm:2056 +msgid "" +"Virtuoso is a scalable cross-platform server that combines\n" +"relational, graph, and document data management with web application server\n" +"and web services platform functionality." +msgstr "" + +#: gnu/packages/databases.scm:2084 +msgid "Database interface and MySQL driver for R" +msgstr "" + +#: gnu/packages/databases.scm:2086 +msgid "" +"This package provides a DBI interface to MySQL / MariaDB. The RMySQL\n" +"package contains an old implementation based on legacy code from S-PLUS which\n" +"is being phased out. A modern MySQL client based on Rcpp is available from\n" +"the RMariaDB package." +msgstr "" + +#: gnu/packages/databases.scm:2111 +msgid "" +"Cassandra Cluster Manager for Apache Cassandra clusters on\n" +"localhost" +msgstr "" + +#: gnu/packages/databases.scm:2113 +msgid "" +"Cassandra Cluster Manager is a development tool for testing\n" +"local Cassandra clusters. It creates, launches and removes Cassandra clusters\n" +"on localhost." +msgstr "" + +#: gnu/packages/databases.scm:2139 +msgid "SQLite bindings for Python" +msgstr "SQLite-bindinger for Python" + +#: gnu/packages/databases.scm:2141 +msgid "" +"Pysqlite provides SQLite bindings for Python that comply to the\n" +"Database API 2.0T." +msgstr "" +"Pysqlite tilbyder SQLite-bindinger for Python som overholder\n" +"Database API 2.OT'en." + +#: gnu/packages/databases.scm:2168 +msgid "Database abstraction library" +msgstr "Abstraktionsbibliotek for database" + +#: gnu/packages/databases.scm:2170 +msgid "" +"SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that\n" +"gives application developers the full power and flexibility of SQL. It\n" +"provides a full suite of well known enterprise-level persistence patterns,\n" +"designed for efficient and high-performing database access, adapted into a\n" +"simple and Pythonic domain language." +msgstr "" + +#: gnu/packages/databases.scm:2209 +msgid "Various utility functions for SQLAlchemy" +msgstr "Diverse redskabsfunktioner for SQLAlchemy" + +#: gnu/packages/databases.scm:2211 +msgid "" +"SQLAlchemy-utils provides various utility functions and custom data types\n" +"for SQLAlchemy. SQLAlchemy is an SQL database abstraction library for Python.\n" +"\n" +"You might also want to install the following optional dependencies:\n" +"@enumerate\n" +"@item @code{python-passlib}\n" +"@item @code{python-babel}\n" +"@item @code{python-cryptography}\n" +"@item @code{python-pytz}\n" +"@item @code{python-psycopg2}\n" +"@item @code{python-furl}\n" +"@item @code{python-flask-babel}\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/databases.scm:2252 +msgid "Database migration tool for SQLAlchemy" +msgstr "" + +#: gnu/packages/databases.scm:2254 +msgid "" +"Alembic is a lightweight database migration tool for usage with the\n" +"SQLAlchemy Database Toolkit for Python." +msgstr "" + +#: gnu/packages/databases.scm:2280 +msgid "Tiny key value database with concurrency support" +msgstr "" + +#: gnu/packages/databases.scm:2282 +msgid "" +"PickleShare is a small ‘shelve’-like datastore with concurrency support.\n" +"Like shelve, a PickleShareDB object acts like a normal dictionary. Unlike\n" +"shelve, many processes can access the database simultaneously. Changing a\n" +"value in database is immediately visible to other processes accessing the same\n" +"database. Concurrency is possible because the values are stored in separate\n" +"files. Hence the “database” is a directory where all files are governed by\n" +"PickleShare." +msgstr "" + +#: gnu/packages/databases.scm:2334 +msgid "Another Python SQLite Wrapper" +msgstr "" + +#: gnu/packages/databases.scm:2335 +msgid "" +"APSW is a Python wrapper for the SQLite\n" +"embedded relational database engine. In contrast to other wrappers such as\n" +"pysqlite it focuses on being a minimal layer over SQLite attempting just to\n" +"translate the complete SQLite API into Python." +msgstr "" + +#: gnu/packages/databases.scm:2359 +msgid "Neo4j driver code written in Python" +msgstr "Neo4j-driverkode skrevet i Python" + +#: gnu/packages/databases.scm:2360 +msgid "" +"This package provides the Neo4j Python driver that connects\n" +"to the database using Neo4j's binary protocol. It aims to be minimal, while\n" +"being idiomatic to Python." +msgstr "" + +#: gnu/packages/databases.scm:2379 +msgid "Library and toolkit for working with Neo4j in Python" +msgstr "Bibliotek og værktøjssæt for arbejde med neo4j i Python" + +#: gnu/packages/databases.scm:2380 +msgid "" +"This package provides a client library and toolkit for\n" +"working with Neo4j from within Python applications and from the command\n" +"line. The core library has no external dependencies and has been carefully\n" +"designed to be easy and intuitive to use." +msgstr "" + +#: gnu/packages/databases.scm:2405 +msgid "Python PostgreSQL adapter" +msgstr "Python PostgreSQL-adapter" + +#: gnu/packages/databases.scm:2407 +msgid "psycopg2 is a thread-safe PostgreSQL adapter that implements DB-API 2.0. " +msgstr "psycopg2 er en trådsikker PostgreSQL-adapter som implementerer DB-API 2.0. " + +#: gnu/packages/databases.scm:2431 +msgid "SQLAlchemy schema displayer" +msgstr "" + +#: gnu/packages/databases.scm:2432 +msgid "" +"This package provides a program to build Entity\n" +"Relationship diagrams from a SQLAlchemy model (or directly from the\n" +"database)." +msgstr "" + +#: gnu/packages/databases.scm:2462 +msgid "MySQLdb is an interface to the popular MySQL database server for Python" +msgstr "" + +#: gnu/packages/databases.scm:2463 +msgid "" +"MySQLdb is an interface to the popular MySQL database server\n" +"for Python. The design goals are:\n" +"@enumerate\n" +"@item Compliance with Python database API version 2.0 [PEP-0249],\n" +"@item Thread-safety,\n" +"@item Thread-friendliness (threads will not block each other).\n" +"@end enumerate" +msgstr "" + +#: gnu/packages/databases.scm:2491 +msgid "Python extension that wraps protocol parsing code in hiredis" +msgstr "" + +#: gnu/packages/databases.scm:2492 +msgid "" +"Python-hiredis is a python extension that wraps protocol\n" +"parsing code in hiredis. It primarily speeds up parsing of multi bulk replies." +msgstr "" + +#: gnu/packages/databases.scm:2515 +msgid "Fake implementation of redis API for testing purposes" +msgstr "" + +#: gnu/packages/databases.scm:2516 +msgid "" +"Fakeredis is a pure python implementation of the redis-py\n" +"python client that simulates talking to a redis server. This was created for a\n" +"single purpose: to write unittests. Setting up redis is not hard, but many time\n" +" you want to write unittests that do not talk to an external server (such as\n" +"redis). This module now allows tests to simply use this module as a reasonable\n" +"substitute for redis." +msgstr "" + +#: gnu/packages/databases.scm:2544 +msgid "Redis Python client" +msgstr "" + +#: gnu/packages/databases.scm:2546 +msgid "This package provides a Python interface to the Redis key-value store." +msgstr "Denne pakke tilbyder en Pythongrænseflade til Redis' nøgle-værdi-lager." + +#: gnu/packages/databases.scm:2567 +msgid "Simple job queues for Python" +msgstr "Simple jobkøer for Python" + +#: gnu/packages/databases.scm:2569 +msgid "" +"RQ (Redis Queue) is a simple Python library for queueing jobs and\n" +"processing them in the background with workers. It is backed by Redis and it\n" +"is designed to have a low barrier to entry." +msgstr "" + +#: gnu/packages/databases.scm:2592 +msgid "Port of asyncio-redis to trollius" +msgstr "" + +#: gnu/packages/databases.scm:2593 +msgid "" +"@code{trollius-redis} is a Redis client for Python\n" +" trollius. It is an asynchronious IO (PEP 3156) implementation of the\n" +" Redis protocol." +msgstr "" + +#: gnu/packages/databases.scm:2620 +msgid "Non-validating SQL parser" +msgstr "" + +#: gnu/packages/databases.scm:2621 +msgid "" +"Sqlparse is a non-validating SQL parser for Python. It\n" +"provides support for parsing, splitting and formatting SQL statements." +msgstr "" + +#: gnu/packages/databases.scm:2641 +msgid "Library to write SQL queries in a pythonic way" +msgstr "" + +#: gnu/packages/databases.scm:2642 +msgid "" +"@code{python-sql} is a library to write SQL queries, that\n" +"transforms idiomatic python function calls to well-formed SQL queries." +msgstr "" + +#: gnu/packages/databases.scm:2727 +msgid "Various tools for interacting with MongoDB and BSON" +msgstr "" + +#: gnu/packages/databases.scm:2729 +msgid "" +"This package includes a collection of tools related to MongoDB.\n" +"@table @code\n" +"@item bsondump\n" +"Display BSON files in a human-readable format\n" +"@item mongoimport\n" +"Convert data from JSON, TSV or CSV and insert them into a collection\n" +"@item mongoexport\n" +"Write an existing collection to CSV or JSON format\n" +"@item mongodump/mongorestore\n" +"Dump MongoDB backups to disk in the BSON format\n" +"@item mongorestore\n" +"Read MongoDB backups in the BSON format, and restore them to a live database\n" +"@item mongostat\n" +"Monitor live MongoDB servers, replica sets, or sharded clusters\n" +"@item mongofiles\n" +"Read, write, delete, or update files in GridFS\n" +"@item mongooplog\n" +"Replay oplog entries between MongoDB servers\n" +"@item mongotop\n" +"Monitor read/write activity on a mongo server\n" +"@end table" +msgstr "" + +#: gnu/packages/databases.scm:2815 +msgid "Columnar in-memory analytics" +msgstr "" + +#: gnu/packages/databases.scm:2816 +msgid "" +"Apache Arrow is a columnar in-memory analytics layer\n" +"designed to accelerate big data. It houses a set of canonical in-memory\n" +"representations of flat and hierarchical data along with multiple\n" +"language-bindings for structure manipulation. It also provides IPC and common\n" +"algorithm implementations." +msgstr "" + +#: gnu/packages/databases.scm:2860 +msgid "Python bindings for Apache Arrow" +msgstr "Pythonbindinger for Apache Arrow" + +#: gnu/packages/databases.scm:2861 +msgid "" +"This library provides a Pythonic API wrapper for the reference\n" +"Arrow C++ implementation, along with tools for interoperability with pandas,\n" +"NumPy, and other traditional Python scientific computing packages." msgstr "" #: gnu/packages/debug.scm:80 +msgid "Heuristical file minimizer" +msgstr "" + +#: gnu/packages/debug.scm:82 msgid "" "Delta assists you in minimizing \"interesting\" files subject to a test\n" "of their interestingness. A common such situation is when attempting to\n" @@ -2370,11 +3211,11 @@ msgid "" "program to exhibit a bug." msgstr "" -#: gnu/packages/debug.scm:134 +#: gnu/packages/debug.scm:138 msgid "Reducer for interesting code" msgstr "" -#: gnu/packages/debug.scm:136 +#: gnu/packages/debug.scm:140 msgid "" "C-Reduce is a tool that takes a large C or C++ program that has a\n" "property of interest (such as triggering a compiler bug) and automatically\n" @@ -2383,11 +3224,11 @@ msgid "" "tools that process C/C++ code." msgstr "" -#: gnu/packages/debug.scm:251 +#: gnu/packages/debug.scm:248 msgid "Security-oriented fuzzer" msgstr "Sikkerhedsorienteret fuzzer" -#: gnu/packages/debug.scm:253 +#: gnu/packages/debug.scm:250 msgid "" "American fuzzy lop is a security-oriented fuzzer that employs a novel\n" "type of compile-time instrumentation and genetic algorithms to automatically\n" @@ -2398,11 +3239,11 @@ msgid "" "down the road." msgstr "" -#: gnu/packages/debug.scm:305 +#: gnu/packages/debug.scm:308 msgid "Expose race conditions in Makefiles" msgstr "" -#: gnu/packages/debug.scm:307 +#: gnu/packages/debug.scm:310 msgid "" "Stress Make is a customized GNU Make that explicitely manages the order\n" "in which concurrent jobs are run to provoke erroneous behavior into becoming\n" @@ -2412,11 +3253,11 @@ msgid "" "conditions." msgstr "" -#: gnu/packages/debug.scm:334 +#: gnu/packages/debug.scm:337 msgid "Transparent application input fuzzer" msgstr "" -#: gnu/packages/debug.scm:335 +#: gnu/packages/debug.scm:338 msgid "" "Zzuf is a transparent application input fuzzer. It works by\n" "intercepting file operations and changing random bits in the program's\n" @@ -2434,11 +3275,52 @@ msgid "" "multiple test suites, which are then all managed by a single harness." msgstr "" -#: gnu/packages/games.scm:196 +#: gnu/packages/games.scm:168 +msgid "Tron clone in 3D" +msgstr "" + +#: gnu/packages/games.scm:169 +msgid "" +"Armagetron is a multiplayer game in 3d that attempts to\n" +"emulate and expand on the lightcycle sequence from the movie Tron. It's\n" +"an old school arcade game slung into the 21st century. Highlights include\n" +"a customizable playing arena, HUD, unique graphics, and AI bots. For the\n" +"more advanced player there are new game modes and a wide variety of physics\n" +"settings to tweak as well." +msgstr "" + +#: gnu/packages/games.scm:242 +msgid "Survival horror roguelike video game" +msgstr "" + +#: gnu/packages/games.scm:244 +msgid "" +"Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic world.\n" +"Struggle to survive in a harsh, persistent, procedurally generated world.\n" +"Scavenge the remnants of a dead civilization for food, equipment, or, if you are\n" +"lucky, a vehicle with a full tank of gas to get you out of Dodge. Fight to\n" +"defeat or escape from a wide variety of powerful monstrosities, from zombies to\n" +"giant insects to killer robots and things far stranger and deadlier, and against\n" +"the others like yourself, that want what you have." +msgstr "" + +#: gnu/packages/games.scm:285 +msgid "Speaking cow text filter" +msgstr "" + +#: gnu/packages/games.scm:286 +msgid "" +"Cowsay is basically a text filter. Send some text into it,\n" +"and you get a cow saying your text. If you think a talking cow isn't enough,\n" +"cows can think too: all you have to do is run @command{cowthink}. If you're\n" +"tired of cows, a variety of other ASCII-art messengers are available." +msgstr "" + +#: gnu/packages/games.scm:352 msgid "Free content game based on the Doom engine" msgstr "" -#: gnu/packages/games.scm:198 +#: gnu/packages/games.scm:361 msgid "" "The Freedoom project aims to create a complete free content first person\n" "shooter game. Freedoom by itself is just the raw material for a game: it must\n" @@ -2447,11 +3329,64 @@ msgid "" "effects and music to make a completely free game." msgstr "" -#: gnu/packages/games.scm:229 +#: gnu/packages/games.scm:435 +msgid "Software for exploring cellular automata" +msgstr "" + +#: gnu/packages/games.scm:437 +msgid "" +"Golly simulates Conway's Game of Life and many other types of cellular\n" +"automata. The following features are available:\n" +"@enumerate\n" +"@item Support for bounded and unbounded universes, with cells of up to 256\n" +" states.\n" +"@item Support for multiple algorithms, including Bill Gosper's Hashlife\n" +" algorithm.\n" +"@item Loading patterns from BMP, PNG, GIF and TIFF image files.\n" +"@item Reading RLE, macrocell, Life 1.05/1.06, dblife and MCell files.\n" +"@item Scriptable via Lua or Python.\n" +"@item Extracting patterns, rules and scripts from zip files.\n" +"@item Downloading patterns, rules and scripts from online archives.\n" +"@item Pasting patterns from the clipboard.\n" +"@item Unlimited undo/redo.\n" +"@item Configurable keyboard shortcuts.\n" +"@item Auto fit option to keep patterns within the view.\n" +"@end enumerate" +msgstr "" + +#: gnu/packages/games.scm:499 +msgid "Puzzle/platform game" +msgstr "Puslespil/platformsspil" + +#: gnu/packages/games.scm:500 +msgid "" +"Me and My Shadow is a puzzle/platform game in which you try\n" +"to reach the exit by solving puzzles. Spikes, moving blocks, fragile blocks\n" +"and much more stand between you and the exit. Record your moves and let your\n" +"shadow mimic them to reach blocks you couldn't reach alone." +msgstr "" + +#: gnu/packages/games.scm:535 +msgid "Multiplayer dungeon game involving knights and quests" +msgstr "" + +#: gnu/packages/games.scm:536 +msgid "" +"Knights is a multiplayer game involving several knights who\n" +"must run around a dungeon and complete various quests. Each game revolves\n" +"around a quest – for example, you might have to find some items and carry them\n" +"back to your starting point. This may sound easy, but as there are only\n" +"enough items in the dungeon for one player to win, you may end up having to\n" +"kill your opponents to get their stuff! Other quests involve escaping from\n" +"the dungeon, fighting a duel to the death against the enemy knights, or\n" +"destroying an ancient book using a special wand." +msgstr "" + +#: gnu/packages/games.scm:573 msgid "Backgammon game" msgstr "Backgammonspil" -#: gnu/packages/games.scm:230 +#: gnu/packages/games.scm:574 msgid "" "The GNU backgammon application can be used for playing, analyzing and\n" "teaching the game. It has an advanced evaluation engine based on artificial\n" @@ -2465,11 +3400,11 @@ msgstr "" "avancerede spillere. Udover grænsefladen for kommandolinjen har\n" "spillet også en attraktiv 3D-repræsentation af brættet." -#: gnu/packages/games.scm:259 +#: gnu/packages/games.scm:603 msgid "3d Rubik's cube game" msgstr "" -#: gnu/packages/games.scm:261 +#: gnu/packages/games.scm:605 msgid "" "GNUbik is a puzzle game in which you must manipulate a cube to make\n" "each of its faces have a uniform color. The game is customizable, allowing\n" @@ -2478,37 +3413,79 @@ msgid "" "scriptable with Guile." msgstr "" -#: gnu/packages/games.scm:283 +#: gnu/packages/games.scm:627 msgid "The game of Shogi (Japanese chess)" -msgstr "" +msgstr "Spillet Shogi (japansk skak)" -#: gnu/packages/games.scm:284 +#: gnu/packages/games.scm:628 msgid "" "GNU Shogi is a program that plays the game Shogi (Japanese\n" "Chess). It is similar to standard chess but this variant is far more complicated." msgstr "" -#: gnu/packages/games.scm:327 -msgid "Version of the classic 3D shoot'em'up game Doom" +#: gnu/packages/games.scm:659 +msgid "Tetris clone based on the SDL library" msgstr "" -#: gnu/packages/games.scm:329 +#: gnu/packages/games.scm:661 +msgid "" +"LTris is a tetris clone: differently shaped blocks are falling down the\n" +"rectangular playing field and can be moved sideways or rotated by 90 degree\n" +"units with the aim of building lines without gaps which then disappear (causing\n" +"any block above the deleted line to fall down). LTris has three game modes: In\n" +"Classic you play until the stack of blocks reaches the top of the playing field\n" +"and no new blocks can enter. In Figures the playing field is reset to a new\n" +"figure each level and later on tiles and lines suddenly appear. In Multiplayer\n" +"up to three players (either human or CPU) compete with each other sending\n" +"removed lines to all opponents. There is also a Demo mode in which you can\n" +"watch your CPU playing while enjoying a cup of tea!" +msgstr "" + +#: gnu/packages/games.scm:712 +msgid "Version of the classic 3D shoot'em'up game Doom" +msgstr "Version af det klassiske 3D-skydespil Doom" + +#: gnu/packages/games.scm:714 msgid "PrBoom+ is a Doom source port developed from the original PrBoom project." msgstr "PrBoom+ er en Doom-kildeport udviklet fra det oprindelige PrBoom-projekt." -#: gnu/packages/games.scm:349 +#: gnu/packages/games.scm:761 +msgid "Action platformer game" +msgstr "Platformsspil" + +#: gnu/packages/games.scm:763 +msgid "" +"ReTux is an action platformer loosely inspired by the Mario games,\n" +"utilizing the art assets from the @code{SuperTux} project." +msgstr "" +"ReTux er et platformspil løst inspireret af Mariospillene,\n" +"der udnytter grafikken fra projektet @code{SuperTux}." + +#: gnu/packages/games.scm:849 +msgid "A classical roguelike/sandbox game" +msgstr "" + +#: gnu/packages/games.scm:851 +msgid "" +"RogueBox Adventures is a graphical roguelike with strong influences\n" +"from sandbox games like Minecraft or Terraria. The main idea of RogueBox\n" +"Adventures is to offer the player a kind of roguelike toy-world. This world\n" +"can be explored and changed freely." +msgstr "" + +#: gnu/packages/games.scm:878 msgid "User interface for gnushogi" msgstr "Brugergrænseflade for gnushogi" -#: gnu/packages/games.scm:350 +#: gnu/packages/games.scm:879 msgid "A graphical user interface for the package @code{gnushogi}." msgstr "En grafisk brugerflade for pakken @code{gnushogi}." -#: gnu/packages/games.scm:399 +#: gnu/packages/games.scm:928 msgid "GNU/Linux port of the indie game \"l'Abbaye des Morts\"" msgstr "GNU/Linux-port af indiespillet »l'Abbaye des Morts«" -#: gnu/packages/games.scm:400 +#: gnu/packages/games.scm:929 msgid "" "L'Abbaye des Morts is a 2D platform game set in 13th century\n" "France. The Cathars, who preach about good Christian beliefs, were being\n" @@ -2517,22 +3494,22 @@ msgid "" "that beneath its ruins lay buried an ancient evil." msgstr "" -#: gnu/packages/games.scm:452 +#: gnu/packages/games.scm:981 msgid "Dungeon exploration roguelike" msgstr "" -#: gnu/packages/games.scm:453 +#: gnu/packages/games.scm:982 msgid "" "Angband is a Classic dungeon exploration roguelike. Explore\n" "the depths below Angband, seeking riches, fighting monsters, and preparing to\n" "fight Morgoth, the Lord of Darkness." msgstr "" -#: gnu/packages/games.scm:493 +#: gnu/packages/games.scm:1018 msgid "Lemmings clone" msgstr "Lemmingsklon" -#: gnu/packages/games.scm:495 +#: gnu/packages/games.scm:1020 msgid "" "Pingus is a free Lemmings-like puzzle game in which the player takes\n" "command of a bunch of small animals and has to guide them through levels.\n" @@ -2542,22 +3519,22 @@ msgid "" "level's exit. The game is presented in a 2D side view." msgstr "" -#: gnu/packages/games.scm:517 +#: gnu/packages/games.scm:1042 msgid "Convert English text to humorous dialects" msgstr "" -#: gnu/packages/games.scm:518 +#: gnu/packages/games.scm:1043 msgid "" "The GNU Talk Filters are programs that convert English text\n" "into stereotyped or otherwise humorous dialects. The filters are provided as\n" "a C library, so they can easily be integrated into other programs." msgstr "" -#: gnu/packages/games.scm:550 +#: gnu/packages/games.scm:1075 msgid "Simulate the display from \"The Matrix\"" -msgstr "" +msgstr "Simuler skærmen fra »The Matrix«" -#: gnu/packages/games.scm:551 +#: gnu/packages/games.scm:1076 msgid "" "CMatrix simulates the display from \"The Matrix\" and is\n" "based on the screensaver from the movie's website. It works with terminal\n" @@ -2565,22 +3542,22 @@ msgid "" "asynchronously and at a user-defined speed." msgstr "" -#: gnu/packages/games.scm:571 +#: gnu/packages/games.scm:1096 msgid "Full chess implementation" msgstr "Fuld skakimplementering" -#: gnu/packages/games.scm:572 +#: gnu/packages/games.scm:1097 msgid "" "GNU Chess is a chess engine. It allows you to compete\n" "against the computer in a game of chess, either through the default terminal\n" "interface or via an external visual interface such as GNU XBoard." msgstr "" -#: gnu/packages/games.scm:600 +#: gnu/packages/games.scm:1125 msgid "Twisted adventures of young pig farmer Dink Smallwood" msgstr "" -#: gnu/packages/games.scm:602 +#: gnu/packages/games.scm:1127 msgid "" "GNU FreeDink is a free and portable re-implementation of the engine\n" "for the role-playing game Dink Smallwood. It supports not only the original\n" @@ -2588,19 +3565,19 @@ msgid "" "To that extent, it also includes a front-end for managing all of your D-Mods." msgstr "" -#: gnu/packages/games.scm:627 +#: gnu/packages/games.scm:1152 msgid "Game data for GNU Freedink" msgstr "Spildata for GNU Freedink" -#: gnu/packages/games.scm:629 +#: gnu/packages/games.scm:1154 msgid "This package contains the game data of GNU Freedink." msgstr "Denne pakke indeholder spildataen for GNU Freedink." -#: gnu/packages/games.scm:681 +#: gnu/packages/games.scm:1206 msgid "Graphical user interface for chess programs" msgstr "Grafisk brugerflade for skakprogrammer" -#: gnu/packages/games.scm:682 +#: gnu/packages/games.scm:1207 msgid "" "GNU XBoard is a graphical board for all varieties of chess,\n" "including international chess, xiangqi (Chinese chess), shogi (Japanese chess)\n" @@ -2609,11 +3586,11 @@ msgid "" "Portable Game Notation." msgstr "" -#: gnu/packages/games.scm:735 +#: gnu/packages/games.scm:1261 msgid "Ball and paddle game" msgstr "" -#: gnu/packages/games.scm:736 +#: gnu/packages/games.scm:1262 msgid "" "XBoing is a blockout type game where you have a paddle which\n" "you control to bounce a ball around the game zone destroying blocks with a\n" @@ -2621,11 +3598,11 @@ msgid "" "destroy, the better your score. The person with the highest score wins." msgstr "" -#: gnu/packages/games.scm:768 +#: gnu/packages/games.scm:1294 msgid "Typing tutor" msgstr "" -#: gnu/packages/games.scm:770 +#: gnu/packages/games.scm:1296 msgid "" "GNU Typist is a universal typing tutor. It can be used to learn and\n" "practice touch-typing. Several tutorials are included; in addition to\n" @@ -2634,11 +3611,11 @@ msgid "" "are primarily in English, however some in other languages are provided." msgstr "" -#: gnu/packages/games.scm:817 +#: gnu/packages/games.scm:1343 msgid "3D game engine written in C++" msgstr "3D-spilmotor skrevet i C++" -#: gnu/packages/games.scm:819 +#: gnu/packages/games.scm:1345 msgid "" "The Irrlicht Engine is a high performance realtime 3D engine written in\n" "C++. Features include an OpenGL renderer, extensible materials, scene graph\n" @@ -2646,11 +3623,11 @@ msgid "" "for common mesh file formats, and collision detection." msgstr "" -#: gnu/packages/games.scm:871 +#: gnu/packages/games.scm:1397 msgid "2D space shooter" msgstr "2D-rumskyder" -#: gnu/packages/games.scm:873 +#: gnu/packages/games.scm:1399 msgid "" "M.A.R.S. is a 2D space shooter with pretty visual effects and\n" "attractive physics. Players can battle each other or computer controlled\n" @@ -2658,19 +3635,19 @@ msgid "" "match, cannon keep, and grave-itation pit." msgstr "" -#: gnu/packages/games.scm:914 +#: gnu/packages/games.scm:1440 msgid "Main game data for the Minetest game engine" msgstr "Spildata for spilmotoren Minetest" -#: gnu/packages/games.scm:916 +#: gnu/packages/games.scm:1442 msgid "Game data for the Minetest infinite-world block sandox game." msgstr "" -#: gnu/packages/games.scm:968 +#: gnu/packages/games.scm:1494 msgid "Infinite-world block sandbox game" msgstr "" -#: gnu/packages/games.scm:970 +#: gnu/packages/games.scm:1496 msgid "" "Minetest is a sandbox construction game. Players can create and destroy\n" "various types of blocks in a three-dimensional open world. This allows\n" @@ -2679,11 +3656,11 @@ msgid "" "in different ways." msgstr "" -#: gnu/packages/games.scm:1009 +#: gnu/packages/games.scm:1535 msgid "Curses Implementation of the Glk API" -msgstr "" +msgstr "Curses-implementering af Glk-API'en" -#: gnu/packages/games.scm:1011 +#: gnu/packages/games.scm:1537 msgid "" "Glk defines a portable API for applications with text UIs. It was\n" "primarily designed for interactive fiction, but it should be suitable for many\n" @@ -2692,11 +3669,11 @@ msgid "" "using the @code{curses.h} library for screen control." msgstr "" -#: gnu/packages/games.scm:1049 +#: gnu/packages/games.scm:1575 msgid "Interpreter for Glulx VM" msgstr "Fortolker for Glulx VM" -#: gnu/packages/games.scm:1051 +#: gnu/packages/games.scm:1577 msgid "" "Glulx is a 32-bit portable virtual machine intended for writing and\n" "playing interactive fiction. It was designed by Andrew Plotkin to relieve\n" @@ -2704,35 +3681,22 @@ msgid "" "reference interpreter, using the Glk API." msgstr "" -#: gnu/packages/games.scm:1087 +#: gnu/packages/games.scm:1614 msgid "Z-machine interpreter" msgstr "" -#: gnu/packages/games.scm:1089 +#: gnu/packages/games.scm:1616 msgid "" "Fizmo is a console-based Z-machine interpreter. It is used to play\n" "interactive fiction, also known as text adventures, which were implemented\n" "either by Infocom or created using the Inform compiler." msgstr "" -#: gnu/packages/games.scm:1142 -msgid "Reference frontend for the libretro API" -msgstr "" - -#: gnu/packages/games.scm:1144 -msgid "" -"Libretro is a simple but powerful development interface that allows for\n" -"the easy creation of emulators, games and multimedia applications that can plug\n" -"straight into any libretro-compatible frontend. RetroArch is the official\n" -"reference frontend for the libretro API, currently used by most as a modular\n" -"multi-system game/emulator system." -msgstr "" - -#: gnu/packages/games.scm:1164 +#: gnu/packages/games.scm:1634 msgid "Play the game of Go" msgstr "Spil Go" -#: gnu/packages/games.scm:1166 +#: gnu/packages/games.scm:1636 msgid "" "GNU Go is a program that plays the game of Go, in which players\n" "place stones on a grid to form territory or capture other stones. While\n" @@ -2743,11 +3707,11 @@ msgid "" "Protocol)." msgstr "" -#: gnu/packages/games.scm:1194 +#: gnu/packages/games.scm:1664 msgid "High speed arctic racing game based on Tux Racer" msgstr "" -#: gnu/packages/games.scm:1196 +#: gnu/packages/games.scm:1666 msgid "" "Extreme Tux Racer, or etracer as it is called for short, is\n" "a simple OpenGL racing game featuring Tux, the Linux mascot. The goal of the\n" @@ -2760,11 +3724,11 @@ msgid "" "This game is based on the GPL version of the famous game TuxRacer." msgstr "" -#: gnu/packages/games.scm:1276 +#: gnu/packages/games.scm:1748 msgid "3D kart racing game" msgstr "" -#: gnu/packages/games.scm:1277 +#: gnu/packages/games.scm:1749 msgid "" "SuperTuxKart is a 3D kart racing game, with a focus on\n" "having fun over realism. You can play with up to 4 friends on one PC, racing\n" @@ -2772,11 +3736,11 @@ msgid "" "also available." msgstr "" -#: gnu/packages/games.scm:1309 +#: gnu/packages/games.scm:1781 msgid "Game of jumping to the next floor, trying not to fall" msgstr "" -#: gnu/packages/games.scm:1311 +#: gnu/packages/games.scm:1783 msgid "" "GNUjump is a simple, yet addictive game in which you must jump from\n" "platform to platform to avoid falling, while the platforms drop at faster rates\n" @@ -2784,11 +3748,11 @@ msgid "" "falling, themeable graphics and sounds, and replays." msgstr "" -#: gnu/packages/games.scm:1354 +#: gnu/packages/games.scm:1826 msgid "Turn-based strategy game" msgstr "" -#: gnu/packages/games.scm:1356 +#: gnu/packages/games.scm:1828 msgid "" "The Battle for Wesnoth is a fantasy, turn based tactical strategy game,\n" "with several single player campaigns, and multiplayer games (both networked and\n" @@ -2800,35 +3764,34 @@ msgid "" "next campaign." msgstr "" -#: gnu/packages/games.scm:1400 -msgid "X86 emulator with CGA/EGA/VGA/etc. graphics and sound" -msgstr "X86-emulator med CGA/EGA/VGA/etc. grafik og lyd" +#: gnu/packages/games.scm:1857 +msgid "Dedicated @emph{Battle for Wesnoth} server" +msgstr "Dedikeret @emph{Battle for Wesnoth}-server" -#: gnu/packages/games.scm:1401 +#: gnu/packages/games.scm:1858 msgid "" -"DOSBox is a DOS-emulator that uses the SDL library. DOSBox\n" -"also emulates CPU:286/386 realmode/protected mode, Directory\n" -"FileSystem/XMS/EMS, Tandy/Hercules/CGA/EGA/VGA/VESA graphics, a\n" -"SoundBlaster/Gravis Ultra Sound card for excellent sound compatibility with\n" -"older games." +"This package contains a dedicated server for @emph{The\n" +"Battle for Wesnoth}." msgstr "" +"Denne pakke indeholder en dedikeret server for @emph{The\n" +"Battle for Wesnoth}." -#: gnu/packages/games.scm:1446 +#: gnu/packages/games.scm:1899 msgid "Mouse and keyboard discovery for children" msgstr "" -#: gnu/packages/games.scm:1448 +#: gnu/packages/games.scm:1901 msgid "" "Gamine is a game designed for young children who are learning to use the\n" "mouse and keyboard. The child uses the mouse to draw colored dots and lines\n" "on the screen and keyboard to display letters." msgstr "" -#: gnu/packages/games.scm:1480 +#: gnu/packages/games.scm:1933 msgid "Puzzle game with a cat in lead role" -msgstr "" +msgstr "Puslespil med en kat i hovedrollen" -#: gnu/packages/games.scm:1481 +#: gnu/packages/games.scm:1934 msgid "" "Project Raincat is a game developed by Carnegie Mellon\n" "students through GCS during the Fall 2008 semester. Raincat features game\n" @@ -2837,11 +3800,11 @@ msgid "" "is programmed in Haskell." msgstr "" -#: gnu/packages/games.scm:1516 +#: gnu/packages/games.scm:1968 msgid "Client for 'The Mana World' and similar games" msgstr "" -#: gnu/packages/games.scm:1518 +#: gnu/packages/games.scm:1970 msgid "" "ManaPlus is a 2D MMORPG client for game servers. It is the only\n" "fully supported client for @uref{http://www.themanaworld.org, The mana\n" @@ -2849,185 +3812,112 @@ msgid "" "@uref{http://landoffire.org, Land of fire}." msgstr "" -#: gnu/packages/games.scm:1568 -msgid "Nintendo 64 emulator core library" -msgstr "Nintendo 64-emulator - grundlæggende bibliotek" - -#: gnu/packages/games.scm:1570 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"core library." -msgstr "" - -#: gnu/packages/games.scm:1614 gnu/packages/games.scm:1659 -#: gnu/packages/games.scm:1701 gnu/packages/games.scm:1743 -#: gnu/packages/games.scm:2059 -msgid "Mupen64Plus SDL input plugin" -msgstr "" - -#: gnu/packages/games.scm:1616 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"SDL audio plugin." -msgstr "" - -#: gnu/packages/games.scm:1661 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"SDL input plugin." -msgstr "" - -#: gnu/packages/games.scm:1703 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"high-level emulation (HLE) RSP processor plugin." -msgstr "" - -#: gnu/packages/games.scm:1745 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Z64 RSP processor plugin." -msgstr "" - -#: gnu/packages/games.scm:1789 gnu/packages/games.scm:1843 -#: gnu/packages/games.scm:1893 gnu/packages/games.scm:1941 -msgid "Mupen64Plus Rice Video plugin" -msgstr "" - -#: gnu/packages/games.scm:1791 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Arachnoid video plugin." -msgstr "" - -#: gnu/packages/games.scm:1845 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Glide64 video plugin." -msgstr "" - -#: gnu/packages/games.scm:1895 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Glide64MK2 video plugin." -msgstr "" - -#: gnu/packages/games.scm:1943 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Rice Video plugin." -msgstr "" - -#: gnu/packages/games.scm:1995 -msgid "Mupen64Plus Z64 video plugin" -msgstr "" - -#: gnu/packages/games.scm:1997 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Z64 video plugin." -msgstr "" - -#: gnu/packages/games.scm:2061 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"command line user interface. Installing this package is the easiest way\n" -"towards a working Mupen64Plus for casual users." -msgstr "" - -#: gnu/packages/games.scm:2118 -msgid "Nintendo Entertainment System (NES/Famicom) emulator" -msgstr "" - -#: gnu/packages/games.scm:2120 -msgid "" -"Nestopia UE (Undead Edition) is a fork of the Nintendo Entertainment\n" -"System (NES/Famicom) emulator Nestopia, with enhancements from members of the\n" -"emulation community. It provides highly accurate emulation." -msgstr "" - -#: gnu/packages/games.scm:2150 -msgid "Video game console emulator front-end" -msgstr "" - -#: gnu/packages/games.scm:2151 -msgid "" -"EmulationStation provides a graphical front-end to a large\n" -"number of video game console emulators. It features an interface that is\n" -"usable with any game controller that has at least 4 buttons, theming support,\n" -"and a game metadata scraper." -msgstr "" - -#: gnu/packages/games.scm:2203 +#: gnu/packages/games.scm:2026 msgid "Transportation economics simulator" msgstr "" -#: gnu/packages/games.scm:2204 +#: gnu/packages/games.scm:2027 msgid "" "OpenTTD is a game in which you transport goods and\n" "passengers by land, water and air. It is a re-implementation of Transport\n" "Tycoon Deluxe with many enhancements including multiplayer mode,\n" "internationalization support, conditional orders and the ability to clone,\n" -"autoreplace and autoupdate vehicles. This package only includes the game engine. When you start\n" -"it you will be prompted to download a graphics set." +"autoreplace and autoupdate vehicles. This package only includes the game\n" +"engine. When you start it you will be prompted to download a graphics set." msgstr "" -#: gnu/packages/games.scm:2259 +#: gnu/packages/games.scm:2084 +msgid "Base graphics set for OpenTTD" +msgstr "" + +#: gnu/packages/games.scm:2086 +msgid "" +"The OpenGFX projects is an implementation of the OpenTTD base grahics\n" +"set that aims to ensure the best possible out-of-the-box experience.\n" +"\n" +"OpenGFX provides you with...\n" +"@enumerate\n" +"@item All graphics you need to enjoy OpenTTD.\n" +"@item Uniquely drawn rail vehicles for every climate.\n" +"@item Completely snow-aware rivers.\n" +"@item Different river and sea water.\n" +"@item Snow-aware buoys.\n" +"@end enumerate" +msgstr "" + +#: gnu/packages/games.scm:2131 +msgid "Base sounds for OpenTTD" +msgstr "" + +#: gnu/packages/games.scm:2132 +msgid "" +"OpenSFX is a set of free base sounds for OpenTTD which make\n" +"it possible to play OpenTTD without requiring the proprietary sound files from\n" +"the original Transport Tycoon Deluxe." +msgstr "" + +#: gnu/packages/games.scm:2169 +msgid "Music set for OpenTTD" +msgstr "" + +#: gnu/packages/games.scm:2170 +msgid "" +"OpenMSX is a music set for OpenTTD which makes it possible\n" +"to play OpenTTD without requiring the proprietary music from the original\n" +"Transport Tycoon Deluxe." +msgstr "" + +#: gnu/packages/games.scm:2248 +msgid "Free software re-implementation of RollerCoaster Tycoon 2" +msgstr "" + +#: gnu/packages/games.scm:2249 +msgid "" +"OpenRCT2 is a free software re-implementation of\n" +"RollerCoaster Tycoon 2 (RCT2). The gameplay revolves around building and\n" +"maintaining an amusement park containing attractions, shops and facilities.\n" +"\n" +"Note that this package does @emph{not} provide the game assets (sounds,\n" +"images, etc.)" +msgstr "" + +#: gnu/packages/games.scm:2291 msgid "Pinball simulator" msgstr "Pinball-simulator" -#: gnu/packages/games.scm:2260 +#: gnu/packages/games.scm:2292 msgid "" "The Emilia Pinball Project is a pinball simulator. There\n" "are only two levels to play with, but they are very addictive." msgstr "" -#: gnu/packages/games.scm:2281 +#: gnu/packages/games.scm:2313 msgid "Board game inspired by The Settlers of Catan" msgstr "Brætspil inspireret af The Settlers of Catan" -#: gnu/packages/games.scm:2282 +#: gnu/packages/games.scm:2314 msgid "" "Pioneers is an emulation of the board game The Settlers of\n" "Catan. It can be played on a local network, on the internet, and with AI\n" "players." msgstr "" -#: gnu/packages/games.scm:2316 -msgid "Nintendo DS emulator" -msgstr "Nintendo DS-emulator" - -#: gnu/packages/games.scm:2318 -msgid "DeSmuME is an emulator for the Nintendo DS handheld gaming console." -msgstr "DeSmuME er en emulator for den håndholdte spilkonsol Nintendo DS." - -#: gnu/packages/games.scm:2356 +#: gnu/packages/games.scm:2355 gnu/packages/gnome.scm:2651 msgid "Logic puzzle game" msgstr "" -#: gnu/packages/games.scm:2357 +#: gnu/packages/games.scm:2356 msgid "" "The goal of this logic game is to open all cards in a 6x6\n" "grid, using a number of hints as to their relative position. The game idea\n" "is attributed to Albert Einstein." msgstr "" -#: gnu/packages/games.scm:2386 +#: gnu/packages/games.scm:2385 msgid "MUD and telnet client" msgstr "" -#: gnu/packages/games.scm:2388 +#: gnu/packages/games.scm:2387 msgid "" "POWWOW is a client software which can be used for telnet as well as for\n" "@dfn{Multi-User Dungeon} (MUD). Additionally it can serve as a nice client for\n" @@ -3035,46 +3925,62 @@ msgid "" "http://lavachat.symlynx.com/unix/" msgstr "" -#: gnu/packages/games.scm:2533 +#: gnu/packages/games.scm:2562 msgid "Arena shooter derived from the Cube 2 engine" msgstr "Arenaskydespil afledt fra Cube 2-motoren" -#: gnu/packages/games.scm:2535 +#: gnu/packages/games.scm:2564 msgid "" "Red Eclipse is an arena shooter, created from the Cube2 engine.\n" "Offering an innovative parkour system and distinct but all potent weapons,\n" "Red Eclipse provides fast paced and accessible gameplay." msgstr "" -#: gnu/packages/games.scm:2629 -msgid "Nintendo multi-system emulator" -msgstr "Nintendo multi-system-emulator" - -#: gnu/packages/games.scm:2631 -msgid "" -"higan (formerly bsnes) is an emulator for multiple Nintendo video game\n" -"consoles, including the Nintendo Entertainment System (NES/Famicom), Super\n" -"Nintendo Entertainment System (SNES/Super Famicom), Game Boy, Game Boy\n" -"Color (GBC), and Game Boy Advance (GBA). It also supports the subsystems\n" -"Super Game Boy, BS-X Satellaview, and Sufami Turbo." -msgstr "" - -#: gnu/packages/games.scm:2689 +#: gnu/packages/games.scm:2623 msgid "Text adventure game" msgstr "" -#: gnu/packages/games.scm:2691 +#: gnu/packages/games.scm:2625 msgid "" "Grue Hunter is a text adventure game written in Perl. You must make\n" "your way through an underground cave system in search of the Grue. Can you\n" "capture it and get out alive?" msgstr "" -#: gnu/packages/games.scm:2740 +#: gnu/packages/games.scm:2667 +msgid "Old-school earthworm action game" +msgstr "" + +#: gnu/packages/games.scm:2669 +msgid "" +"lierolibre is an earthworm action game where you fight another player\n" +"(or the computer) underground using a wide array of weapons.\n" +"\n" +"Features:\n" +"@itemize\n" +"@item 2 worms, 40 weapons, great playability, two game modes: Kill'em All\n" +"and Game of Tag, plus AI-players without true intelligence!\n" +"@item Dat nostalgia.\n" +"@item Extensions via a hidden F1 menu:\n" +"@itemize\n" +"@item Replays\n" +"@item Game controller support\n" +"@item Powerlevel palettes\n" +"@end itemize\n" +"@item Ability to write game variables to plain text files.\n" +"@item Ability to load game variables from both EXE and plain text files.\n" +"@item Scripts to extract and repack graphics, sounds and levels.\n" +"@end itemize\n" +"\n" +"To switch between different window sizes, use F6, F7 and F8, to switch to\n" +"fullscreen, use F5 or Alt+Enter." +msgstr "" + +#: gnu/packages/games.scm:2744 msgid "3D Real-time strategy and real-time tactics game" msgstr "" -#: gnu/packages/games.scm:2742 +#: gnu/packages/games.scm:2746 msgid "" "Warzone 2100 offers campaign, multi-player, and single-player skirmish\n" "modes. An extensive tech tree with over 400 different technologies, combined\n" @@ -3082,11 +3988,11 @@ msgid "" "tactics." msgstr "" -#: gnu/packages/games.scm:2775 +#: gnu/packages/games.scm:2779 msgid "2D scrolling shooter game" msgstr "2D-rullende skydespil" -#: gnu/packages/games.scm:2777 +#: gnu/packages/games.scm:2781 msgid "" "In the year 2579, the intergalactic weapons corporation, WEAPCO, has\n" "dominated the galaxy. Guide Chris Bainfield and his friend Sid Wilson on\n" @@ -3095,11 +4001,11 @@ msgid "" "in strikes against the evil corporation." msgstr "" -#: gnu/packages/games.scm:2808 +#: gnu/packages/games.scm:2812 msgid "Fast-paced, arcade-style, top-scrolling space shooter" msgstr "" -#: gnu/packages/games.scm:2810 +#: gnu/packages/games.scm:2814 msgid "" "In this game you are the captain of the cargo ship Chromium B.S.U. and\n" "are responsible for delivering supplies to the troops on the front line. Your\n" @@ -3107,11 +4013,11 @@ msgid "" "safety of the Chromium vessel." msgstr "" -#: gnu/packages/games.scm:2885 +#: gnu/packages/games.scm:2889 msgid "Drawing software for children" msgstr "" -#: gnu/packages/games.scm:2887 +#: gnu/packages/games.scm:2891 msgid "" "Tux Paint is a free drawing program designed for young children (kids\n" "ages 3 and up). It has a simple, easy-to-use interface; fun sound effects;\n" @@ -3120,40 +4026,40 @@ msgid "" "your child be creative." msgstr "" -#: gnu/packages/games.scm:2925 +#: gnu/packages/games.scm:2929 msgid "Stamp images for Tux Paint" msgstr "" -#: gnu/packages/games.scm:2927 +#: gnu/packages/games.scm:2931 msgid "" "This package contains a set of \"Rubber Stamp\" images which can be used\n" "with the \"Stamp\" tool within Tux Paint." msgstr "" -#: gnu/packages/games.scm:2974 +#: gnu/packages/games.scm:2978 msgid "Configure Tux Paint" msgstr "Konfigurer Tux Paint" -#: gnu/packages/games.scm:2976 +#: gnu/packages/games.scm:2980 msgid "Tux Paint Config is a graphical configuration editor for Tux Paint." msgstr "Tux Paint Config er et grafisk redigeringsprogram til konfigurationen for Tux Paint." -#: gnu/packages/games.scm:3008 +#: gnu/packages/games.scm:3012 msgid "2D platformer game" msgstr "2D-platformsspil" -#: gnu/packages/games.scm:3009 +#: gnu/packages/games.scm:3013 msgid "" "SuperTux is a free classic 2D jump'n run sidescroller game\n" "in a style similar to the original Super Mario games covered under\n" "the GNU GPL." msgstr "" -#: gnu/packages/games.scm:3043 +#: gnu/packages/games.scm:3047 msgid "MUD client" msgstr "MUD-klient" -#: gnu/packages/games.scm:3045 +#: gnu/packages/games.scm:3049 msgid "" "TinTin++ is a MUD client which supports MCCP (Mud Client Compression Protocol),\n" "MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used by MUDs,\n" @@ -3161,11 +4067,11 @@ msgid "" "auto mapper with a VT100 map display." msgstr "" -#: gnu/packages/games.scm:3082 +#: gnu/packages/games.scm:3086 msgid "Programming game" msgstr "Programmeringsspil" -#: gnu/packages/games.scm:3083 +#: gnu/packages/games.scm:3087 msgid "" "Learn programming, playing with ants and spider webs ;-)\n" "Your robot ant can be programmed in many languages: OCaml, Python, C, C++,\n" @@ -3173,22 +4079,22 @@ msgid "" "programmers may also add their own favorite language." msgstr "" -#: gnu/packages/games.scm:3127 +#: gnu/packages/games.scm:3131 msgid "Keyboard mashing and doodling game for babies" msgstr "" -#: gnu/packages/games.scm:3128 +#: gnu/packages/games.scm:3132 msgid "" "Bambam is a simple baby keyboard (and gamepad) masher\n" "application that locks the keyboard and mouse and instead displays bright\n" "colors, pictures, and sounds." msgstr "" -#: gnu/packages/games.scm:3171 +#: gnu/packages/games.scm:3175 msgid "Arcade-style fire fighting game" msgstr "" -#: gnu/packages/games.scm:3173 +#: gnu/packages/games.scm:3177 msgid "" "Mr. Rescue is an arcade styled 2d action game centered around evacuating\n" "civilians from burning buildings. The game features fast paced fire\n" @@ -3196,11 +4102,11 @@ msgid "" "throwing people around in pseudo-randomly generated buildings." msgstr "" -#: gnu/packages/games.scm:3279 +#: gnu/packages/games.scm:3284 msgid "Non-euclidean graphical rogue-like game" msgstr "" -#: gnu/packages/games.scm:3281 +#: gnu/packages/games.scm:3286 msgid "" "HyperRogue is a game in which the player collects treasures and fights\n" "monsters -- rogue-like but for the fact that it is played on the hyperbolic\n" @@ -3214,21 +4120,21 @@ msgid "" "symbols, it still needs graphics to render the non-euclidean world." msgstr "" -#: gnu/packages/games.scm:3324 +#: gnu/packages/games.scm:3329 msgid "Shooter with space station destruction" msgstr "" -#: gnu/packages/games.scm:3326 +#: gnu/packages/games.scm:3331 msgid "" "Kobo Deluxe is an enhanced version of Akira Higuchi's XKobo graphical game\n" "for Un*x systems with X11." msgstr "" -#: gnu/packages/games.scm:3354 +#: gnu/packages/games.scm:3363 msgid "Turn based empire building strategy game" msgstr "" -#: gnu/packages/games.scm:3355 +#: gnu/packages/games.scm:3364 msgid "" "Freeciv is a turn based empire building strategy game\n" "inspired by the history of human civilization. The game commences in\n" @@ -3236,11 +4142,11 @@ msgid "" "to the Space Age." msgstr "" -#: gnu/packages/games.scm:3386 +#: gnu/packages/games.scm:3395 msgid "Recreation of data decryption effect in \"Sneakers\"" msgstr "" -#: gnu/packages/games.scm:3388 +#: gnu/packages/games.scm:3397 msgid "" "@code{No More Secrets} provides a command line tool called \"nms\"\n" "that recreates the famous data decryption effect seen on screen in the 1992\n" @@ -3251,41 +4157,41 @@ msgid "" "starting a decryption sequence to reveal the original plaintext characters." msgstr "" -#: gnu/packages/games.scm:3415 +#: gnu/packages/games.scm:3424 msgid "Data files for MegaGlest" msgstr "Datafiler for MegaClest" -#: gnu/packages/games.scm:3416 +#: gnu/packages/games.scm:3425 msgid "This package contains the data files required for MegaGlest." msgstr "Denne pakke indeholder spildataene krævet for MegaGlest." -#: gnu/packages/games.scm:3469 +#: gnu/packages/games.scm:3478 msgid "3D real-time strategy (RTS) game" msgstr "" -#: gnu/packages/games.scm:3470 +#: gnu/packages/games.scm:3479 msgid "" "MegaGlest is a cross-platform 3D real-time strategy (RTS)\n" "game, where you control the armies of one of seven different factions: Tech,\n" "Magic, Egypt, Indians, Norsemen, Persian or Romans." msgstr "" -#: gnu/packages/games.scm:3520 +#: gnu/packages/games.scm:3530 msgid "Side-scrolling physics platformer with a ball of tar" msgstr "" -#: gnu/packages/games.scm:3521 +#: gnu/packages/games.scm:3531 msgid "" "In FreeGish you control Gish, a ball of tar who lives\n" "happily with his girlfriend Brea, until one day a mysterious dark creature\n" "emerges from a sewer hole and pulls her below ground." msgstr "" -#: gnu/packages/games.scm:3555 +#: gnu/packages/games.scm:3570 msgid "Classic overhead run-and-gun game" msgstr "" -#: gnu/packages/games.scm:3556 +#: gnu/packages/games.scm:3571 msgid "" "C-Dogs SDL is a classic overhead run-and-gun game,\n" "supporting up to 4 players in co-op and deathmatch modes. Customize your\n" @@ -3293,33 +4199,33 @@ msgid "" "over 100 user-created campaigns." msgstr "" -#: gnu/packages/games.scm:3656 +#: gnu/packages/games.scm:3671 msgid "3D puzzle game" msgstr "3D-puslespil" -#: gnu/packages/games.scm:3657 +#: gnu/packages/games.scm:3672 msgid "" "Kiki the nano bot is a 3D puzzle game. It is basically a\n" "mixture of the games Sokoban and Kula-World. Your task is to help Kiki, a\n" "small robot living in the nano world, repair its maker." msgstr "" -#: gnu/packages/games.scm:3747 +#: gnu/packages/games.scm:3762 msgid "2D retro multiplayer shooter game" msgstr "2D-retro skydespil for flere spillere" -#: gnu/packages/games.scm:3748 +#: gnu/packages/games.scm:3763 msgid "" "Teeworlds is an online multiplayer game. Battle with up to\n" "16 players in a variety of game modes, including Team Deathmatch and Capture\n" "The Flag. You can even design your own maps!" msgstr "" -#: gnu/packages/games.scm:3801 +#: gnu/packages/games.scm:3816 msgid "Puzzle game with a dexterity component" msgstr "" -#: gnu/packages/games.scm:3802 +#: gnu/packages/games.scm:3817 msgid "" "Enigma is a puzzle game with 550 unique levels. The object\n" "of the game is to find and uncover pairs of identically colored ‘Oxyd’ stones.\n" @@ -3331,11 +4237,11 @@ msgid "" "with the mouse isn’t always trivial." msgstr "" -#: gnu/packages/games.scm:3873 +#: gnu/packages/games.scm:3888 msgid "Puzzle game" msgstr "" -#: gnu/packages/games.scm:3874 +#: gnu/packages/games.scm:3889 msgid "" "Fish Fillets NG is strictly a puzzle game. The goal in\n" "every of the seventy levels is always the same: find a safe way out. The fish\n" @@ -3344,22 +4250,26 @@ msgid "" "fish. The whole game is accompanied by quiet, comforting music." msgstr "" -#: gnu/packages/games.scm:3938 +#: gnu/packages/games.scm:3953 msgid "Roguelike dungeon crawler game" msgstr "" -#: gnu/packages/games.scm:3939 +#: gnu/packages/games.scm:3954 msgid "" "Dungeon Crawl Stone Soup is a roguelike adventure through\n" "dungeons filled with dangerous monsters in a quest to find the mystifyingly\n" "fabulous Orb of Zot." msgstr "" -#: gnu/packages/games.scm:3979 +#: gnu/packages/games.scm:4000 +msgid "Graphical roguelike dungeon crawler game" +msgstr "" + +#: gnu/packages/games.scm:4030 msgid "Cross-platform third-person action game" msgstr "" -#: gnu/packages/games.scm:3980 +#: gnu/packages/games.scm:4031 msgid "" "Lugaru is a third-person action game. The main character,\n" "Turner, is an anthropomorphic rebel bunny rabbit with impressive combat skills.\n" @@ -3369,19 +4279,19 @@ msgid "" "fight against their plot and save his fellow rabbits from slavery." msgstr "" -#: gnu/packages/games.scm:4031 +#: gnu/packages/games.scm:4082 msgid "Data files for 0ad" msgstr "" -#: gnu/packages/games.scm:4032 +#: gnu/packages/games.scm:4083 msgid "0ad-data provides the data files required by the game 0ad." msgstr "" -#: gnu/packages/games.scm:4154 +#: gnu/packages/games.scm:4201 msgid "3D real-time strategy game of ancient warfare" msgstr "" -#: gnu/packages/games.scm:4155 +#: gnu/packages/games.scm:4202 msgid "" "0 A.D. is a real-time strategy (RTS) game of ancient\n" "warfare. It's a historically-based war/economy game that allows players to\n" @@ -3391,34 +4301,172 @@ msgid "" "0ad needs a window manager that supports 'Extended Window Manager Hints'." msgstr "" -#: gnu/packages/gcc.scm:337 +#: gnu/packages/games.scm:4277 +msgid "Colossal Cave Adventure" +msgstr "" + +#: gnu/packages/games.scm:4278 +msgid "" +"The original Colossal Cave Adventure from 1976 was the\n" +"origin of all text adventures, dungeon-crawl (computer) games, and\n" +"computer-hosted roleplaying games. This is the last version released by\n" +"Crowther & Woods, its original authors, in 1995. It has been known as\n" +"\"adventure 2.5\" and \"430-point adventure\"." +msgstr "" + +#: gnu/packages/games.scm:4289 +msgid "Single-player, RPG roguelike game set in the world of Eyal" +msgstr "" + +#: gnu/packages/games.scm:4394 +msgid "" +"Tales of Maj’Eyal (ToME) RPG, featuring tactical turn-based\n" +"combat and advanced character building. Play as one of many unique races and\n" +"classes in the lore-filled world of Eyal, exploring random dungeons, facing\n" +"challenging battles, and developing characters with your own tailored mix of\n" +"abilities and powers. With a modern graphical and customisable interface,\n" +"intuitive mouse control, streamlined mechanics and deep, challenging combat,\n" +"Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century." +msgstr "" + +#: gnu/packages/games.scm:4440 +msgid "First person shooter engine for Quake 1" +msgstr "" + +#: gnu/packages/games.scm:4441 +msgid "" +"Quakespasm is a modern engine for id software's Quake 1.\n" +"It includes support for 64 bit CPUs, custom music playback, a new sound driver,\n" +"some graphical niceities, and numerous bug-fixes and other improvements." +msgstr "" + +#: gnu/packages/games.scm:4490 +msgid "" +"vkquake is a modern engine for id software's Quake 1.\n" +"It includes support for 64 bit CPUs, custom music playback, a new sound driver,\n" +"some graphical niceities, and numerous bug-fixes and other improvements." +msgstr "" + +#: gnu/packages/games.scm:4541 +msgid "First person shooter engine based on quake2" +msgstr "" + +#: gnu/packages/games.scm:4542 +msgid "" +"Yamagi Quake II is an enhanced client for id Software's Quake II.\n" +"The main focus is an unchanged single player experience like back in 1997,\n" +"thus the gameplay and the graphics are unaltered. However the user may use one\n" +"of the unofficial retexturing packs. In comparison with the official client,\n" +"over 1000 bugs were fixed and an extensive code audit done,\n" +"making Yamagi Quake II one of the most solid Quake II implementations available." +msgstr "" + +#: gnu/packages/games.scm:4598 +msgid "Realistic physics puzzle game" +msgstr "" + +#: gnu/packages/games.scm:4599 +msgid "" +"The Butterfly Effect (tbe) is a game that uses\n" +"realistic physics simulations to combine lots of simple mechanical\n" +"elements to achieve a simple goal in the most complex way possible." +msgstr "" + +#: gnu/packages/games.scm:4652 +msgid "Game of lonely space adventure" +msgstr "" + +#: gnu/packages/games.scm:4654 +msgid "" +"Pioneer is a space adventure game set in our galaxy at the turn of the\n" +"31st century. The game is open-ended, and you are free to eke out whatever\n" +"kind of space-faring existence you can think of. Look for fame or fortune by\n" +"exploring the millions of star systems. Turn to a life of crime as a pirate,\n" +"smuggler or bounty hunter. Forge and break alliances with the various\n" +"factions fighting for power, freedom or self-determination. The universe is\n" +"whatever you make of it." +msgstr "" + +#: gnu/packages/games.scm:4681 +msgid "Hacking contribution graphs in git" +msgstr "" + +#: gnu/packages/games.scm:4683 +msgid "" +"Badass generates false commits for a range of dates, essentially\n" +"hacking the gamification of contribution graphs on platforms such as\n" +"Github or Gitlab." +msgstr "" + +#: gnu/packages/games.scm:4761 +msgid "Educational programming strategy game" +msgstr "" + +#: gnu/packages/games.scm:4762 +msgid "" +"Colobot: Gold Edition is a real-time strategy game, where\n" +"you can program your units (bots) in a language called CBOT, which is similar\n" +"to C++ and Java. Your mission is to find a new planet to live and survive.\n" +"You can save humanity and get programming skills!" +msgstr "" + +#: gnu/packages/games.scm:4844 +msgid "Modern Doom 2 source port" +msgstr "" + +#: gnu/packages/games.scm:4845 +msgid "" +"GZdoom is a port of the Doom 2 game engine, with a modern\n" +"renderer. It improves modding support with ZDoom's advanced mapping features\n" +"and the new ZScript language. In addition to Doom, it supports Heretic, Hexen,\n" +"Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom." +msgstr "" + +#: gnu/packages/games.scm:4906 +msgid "The Fortune Cookie program from BSD games" +msgstr "" + +#: gnu/packages/games.scm:4907 +msgid "" +"Fortune is a command-line utility which displays a random\n" +"quotation from a collection of quotes." +msgstr "" + +#: gnu/packages/gcc.scm:346 msgid "GNU Compiler Collection" msgstr "" -#: gnu/packages/gcc.scm:339 +#: gnu/packages/gcc.scm:348 msgid "" "GCC is the GNU Compiler Collection. It provides compiler front-ends\n" "for several languages, including C, C++, Objective-C, Fortran, Java, Ada, and\n" "Go. It also includes runtime support libraries for these languages." msgstr "" -#: gnu/packages/gcc.scm:442 +#: gnu/packages/gcc.scm:495 +msgid "" +"GCC is the GNU Compiler Collection. It provides compiler front-ends\n" +"for several languages, including C, C++, Objective-C, Fortran, Ada, and Go.\n" +"It also includes runtime support libraries for these languages." +msgstr "" + +#: gnu/packages/gcc.scm:525 msgid "GNU C++ standard library" msgstr "GNU C++-standardbibliotek" -#: gnu/packages/gcc.scm:477 +#: gnu/packages/gcc.scm:560 msgid "Collection of subroutines used by various GNU programs" msgstr "Samling af underrutiner brugt af diverse GNU-programmer" -#: gnu/packages/gcc.scm:742 +#: gnu/packages/gcc.scm:745 msgid "GNU libstdc++ documentation" msgstr "" -#: gnu/packages/gcc.scm:811 +#: gnu/packages/gcc.scm:813 msgid "Manipulating sets and relations of integer points bounded by linear constraints" msgstr "" -#: gnu/packages/gcc.scm:814 +#: gnu/packages/gcc.scm:816 msgid "" "isl is a library for manipulating sets and relations of integer points\n" "bounded by linear constraints. Supported operations on sets include\n" @@ -3430,11 +4478,11 @@ msgid "" "dependence analysis and bounds on piecewise step-polynomials." msgstr "" -#: gnu/packages/gcc.scm:846 +#: gnu/packages/gcc.scm:866 msgid "Library to generate code for scanning Z-polyhedra" msgstr "" -#: gnu/packages/gcc.scm:848 +#: gnu/packages/gcc.scm:868 msgid "" "CLooG is a free software library to generate code for scanning\n" "Z-polyhedra. That is, it finds a code (e.g., in C, FORTRAN...) that\n" @@ -3449,11 +4497,11 @@ msgid "" "effective code." msgstr "" -#: gnu/packages/gcc.scm:903 +#: gnu/packages/gcc.scm:923 msgid "Reference manual for the C programming language" msgstr "" -#: gnu/packages/gcc.scm:905 +#: gnu/packages/gcc.scm:925 msgid "" "This is a reference manual for the C programming language, as\n" "implemented by the GNU C Compiler (gcc). As a reference, it is not intended\n" @@ -3461,11 +4509,11 @@ msgid "" "of the language. Library functions are not included." msgstr "" -#: gnu/packages/gettext.scm:91 +#: gnu/packages/gettext.scm:105 msgid "Tools and documentation for translation (used to build other packages)" msgstr "Værktøjer og dokumentation for oversættelse (brugt til at bygge andre pakker)" -#: gnu/packages/gettext.scm:93 +#: gnu/packages/gettext.scm:107 msgid "" "GNU Gettext is a package providing a framework for translating the\n" "textual output of programs into multiple languages. It provides translators\n" @@ -3473,52 +4521,52 @@ msgid "" "translated messages from the catalogs. Nearly all GNU packages use Gettext." msgstr "" -#: gnu/packages/gettext.scm:123 +#: gnu/packages/gettext.scm:137 msgid "Tools and documentation for translation" msgstr "Værktøjer og dokumentation for oversættelse" -#: gnu/packages/gettext.scm:181 +#: gnu/packages/gettext.scm:202 msgid "Scripts to ease maintenance of translations" msgstr "" -#: gnu/packages/gettext.scm:183 +#: gnu/packages/gettext.scm:204 msgid "" "The po4a (PO for anything) project goal is to ease translations (and\n" "more interestingly, the maintenance of translations) using gettext tools on\n" "areas where they were not expected like documentation." msgstr "" -#: gnu/packages/gimp.scm:60 +#: gnu/packages/gimp.scm:64 msgid "Image pixel format conversion library" msgstr "" -#: gnu/packages/gimp.scm:62 +#: gnu/packages/gimp.scm:66 msgid "" -"Babl is a dynamic, any to any, pixel format translation library.\n" -"It allows converting between different methods of storing pixels known as\n" -"pixel formats that have with different bitdepths and other data\n" -"representations, color models and component permutations.\n" +"Babl is a dynamic, any-to-any pixel format translation library.\n" +"It allows converting between different methods of storing pixels, known as\n" +"@dfn{pixel formats}, that have different bit depths and other data\n" +"representations, color models, and component permutations.\n" "\n" "A vocabulary to formulate new pixel formats from existing primitives is\n" -"provided as well as the framework to add new color models and data types." +"provided, as well as a framework to add new color models and data types." msgstr "" -#: gnu/packages/gimp.scm:118 +#: gnu/packages/gimp.scm:123 msgid "Graph based image processing framework" msgstr "Grafbaseret billedbehandlingsramme" -#: gnu/packages/gimp.scm:119 +#: gnu/packages/gimp.scm:124 msgid "" "GEGL (Generic Graphics Library) provides infrastructure to\n" "do demand based cached non destructive image editing on larger than RAM\n" "buffers." msgstr "" -#: gnu/packages/gimp.scm:179 +#: gnu/packages/gimp.scm:189 msgid "GNU Image Manipulation Program" msgstr "" -#: gnu/packages/gimp.scm:181 +#: gnu/packages/gimp.scm:191 msgid "" "GIMP is an application for image manipulation tasks such as photo\n" "retouching, composition and authoring. It supports all common image formats\n" @@ -3526,11 +4574,11 @@ msgid "" "that is extensible via a plugin system." msgstr "" -#: gnu/packages/gimp.scm:229 +#: gnu/packages/gimp.scm:239 msgid "GIMP plug-in to edit image in fourier space" msgstr "" -#: gnu/packages/gimp.scm:231 +#: gnu/packages/gimp.scm:241 msgid "" "This package provides a simple plug-in to apply the fourier transform on\n" "an image, allowing you to work with the transformed image inside GIMP. You\n" @@ -3538,22 +4586,33 @@ msgid "" "inverse fourier transform." msgstr "" -#: gnu/packages/gnome.scm:184 +#: gnu/packages/gnome.scm:202 msgid "CD/DVD burning tool for Gnome" msgstr "Cd/dvd-brændeværktøj for GNOME" -#: gnu/packages/gnome.scm:185 +#: gnu/packages/gnome.scm:203 msgid "" "Brasero is an application to burn CD/DVD for the Gnome\n" "Desktop. It is designed to be as simple as possible and has some unique\n" "features to enable users to create their discs easily and quickly." msgstr "" -#: gnu/packages/gnome.scm:232 +#: gnu/packages/gnome.scm:278 +msgid "Simple backup tool, for regular encrypted backups" +msgstr "" + +#: gnu/packages/gnome.scm:280 +msgid "" +"Déjà Dup is a simple backup tool, for regular encrypted backups. It\n" +"uses duplicity as the backend, which supports incremental backups and storage\n" +"either on a local, or remote machine via a number of methods." +msgstr "" + +#: gnu/packages/gnome.scm:327 msgid "Diagram creation for GNOME" msgstr "Diagramoprettelse for GNOME" -#: gnu/packages/gnome.scm:233 +#: gnu/packages/gnome.scm:328 msgid "" "Dia can be used to draw different types of diagrams, and\n" "includes support for UML static structure diagrams (class diagrams), entity\n" @@ -3561,11 +4620,33 @@ msgid "" "formats like PNG, SVG, PDF and EPS." msgstr "" -#: gnu/packages/gnome.scm:254 +#: gnu/packages/gnome.scm:384 +msgid "Library for accessing online service APIs" +msgstr "Bibliotek til at tilgå API'er for nettjenester" + +#: gnu/packages/gnome.scm:386 +msgid "" +"libgdata is a GLib-based library for accessing online service APIs using\n" +"the GData protocol — most notably, Google's services. It provides APIs to\n" +"access the common Google services, and has full asynchronous support." +msgstr "" + +#: gnu/packages/gnome.scm:417 +msgid "GObject-based library for handling and rendering XPS documents" +msgstr "GObject-baseret bibliotek til at håndtere og optegne XPS-dokumenter" + +#: gnu/packages/gnome.scm:419 +msgid "" +"libgxps is a GObject-based library for handling and rendering XPS\n" +"documents. This package also contains binaries that can convert XPS documents\n" +"to other formats." +msgstr "" + +#: gnu/packages/gnome.scm:439 msgid "Bootstrap GNOME modules built from Git" msgstr "Bootstrap GNOME-moduler kompileret fra Git" -#: gnu/packages/gnome.scm:255 +#: gnu/packages/gnome.scm:440 msgid "" "gnome-common contains various files needed to bootstrap\n" "GNOME modules built from Git. It contains a common \"autogen.sh\" script that\n" @@ -3573,11 +4654,11 @@ msgid "" "commonly used macros." msgstr "" -#: gnu/packages/gnome.scm:296 +#: gnu/packages/gnome.scm:491 msgid "Libgnome-desktop, gnome-about, and desktop-wide documents" msgstr "" -#: gnu/packages/gnome.scm:298 +#: gnu/packages/gnome.scm:493 msgid "" "The libgnome-desktop library provides API shared by several applications\n" "on the desktop, but that cannot live in the platform for various reasons.\n" @@ -3587,49 +4668,49 @@ msgid "" "The gnome-about program helps find which version of GNOME is installed." msgstr "" -#: gnu/packages/gnome.scm:331 +#: gnu/packages/gnome.scm:526 msgid "Documentation utilities for the Gnome project" msgstr "Dokumentationsredskaber for GNOME-projektet" -#: gnu/packages/gnome.scm:333 +#: gnu/packages/gnome.scm:528 msgid "" "Gnome-doc-utils is a collection of documentation utilities for the\n" "Gnome project. It includes xml2po tool which makes it easier to translate\n" "and keep up to date translations of documentation." msgstr "" -#: gnu/packages/gnome.scm:371 +#: gnu/packages/gnome.scm:567 msgid "Disk management utility for GNOME" msgstr "Diskhåndteringsredskab for GNOME" -#: gnu/packages/gnome.scm:372 +#: gnu/packages/gnome.scm:568 msgid "Disk management utility for GNOME." msgstr "Diskhåndteringsredskab for GNOME." -#: gnu/packages/gnome.scm:414 +#: gnu/packages/gnome.scm:611 msgid "Libraries for displaying certificates and accessing key stores" msgstr "Biblioteker til at vise certifikater og tilgå nøglelagre" -#: gnu/packages/gnome.scm:416 +#: gnu/packages/gnome.scm:613 msgid "" "The GCR package contains libraries used for displaying certificates and\n" "accessing key stores. It also provides the viewer for crypto files on the\n" "GNOME Desktop." msgstr "" -#: gnu/packages/gnome.scm:445 +#: gnu/packages/gnome.scm:642 msgid "Accessing passwords from the GNOME keyring" msgstr "" -#: gnu/packages/gnome.scm:447 +#: gnu/packages/gnome.scm:644 msgid "Client library to access passwords from the GNOME keyring." msgstr "" -#: gnu/packages/gnome.scm:509 +#: gnu/packages/gnome.scm:714 msgid "Daemon to store passwords and encryption keys" msgstr "Dæmon til at lagre adgandskoder og krypteringsnøgler" -#: gnu/packages/gnome.scm:511 +#: gnu/packages/gnome.scm:716 msgid "" "gnome-keyring is a program that keeps passwords and other secrets for\n" "users. It is run as a daemon in the session, similar to ssh-agent, and other\n" @@ -3640,11 +4721,11 @@ msgid "" "forgotten when the session ends." msgstr "" -#: gnu/packages/gnome.scm:584 +#: gnu/packages/gnome.scm:790 msgid "GNOME's document viewer" msgstr "" -#: gnu/packages/gnome.scm:586 +#: gnu/packages/gnome.scm:792 msgid "" "Evince is a document viewer for multiple document formats. It\n" "currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal\n" @@ -3652,59 +4733,40 @@ msgid "" "on the GNOME Desktop with a single simple application." msgstr "" -#: gnu/packages/gnome.scm:615 +#: gnu/packages/gnome.scm:821 msgid "GNOME settings for various desktop components" msgstr "" -#: gnu/packages/gnome.scm:617 +#: gnu/packages/gnome.scm:823 msgid "" "Gsettings-desktop-schemas contains a collection of GSettings schemas\n" "for settings shared by various components of the GNOME desktop." msgstr "" -#: gnu/packages/gnome.scm:651 +#: gnu/packages/gnome.scm:857 msgid "Utility to implement the Freedesktop Icon Naming Specification" msgstr "" -#: gnu/packages/gnome.scm:653 +#: gnu/packages/gnome.scm:859 msgid "" "To help with the transition to the Freedesktop Icon Naming\n" "Specification, the icon naming utility maps the icon names used by the\n" "GNOME and KDE desktops to the icon names proposed in the specification." msgstr "" -#: gnu/packages/gnome.scm:675 -msgid "Utilities for working with desktop entries" -msgstr "" - -#: gnu/packages/gnome.scm:677 -msgid "" -"This package contains a few command line utilities for working with\n" -"desktop entries:\n" -"\n" -"desktop-file-validate: validates a desktop file and prints warnings/errors\n" -" about desktop entry specification violations.\n" -"\n" -"desktop-file-install: installs a desktop file to the applications directory,\n" -" optionally munging it a bit in transit.\n" -"\n" -"update-desktop-database: updates the database containing a cache of MIME types\n" -" handled by desktop files." -msgstr "" - -#: gnu/packages/gnome.scm:716 +#: gnu/packages/gnome.scm:890 msgid "GNOME icon theme" msgstr "GNOME-ikontema" -#: gnu/packages/gnome.scm:718 +#: gnu/packages/gnome.scm:892 msgid "Icons for the GNOME desktop." msgstr "Ikoner for GNOME-skrivebordet." -#: gnu/packages/gnome.scm:755 +#: gnu/packages/gnome.scm:929 msgid "Tango icon theme" msgstr "Tango-ikontema" -#: gnu/packages/gnome.scm:756 +#: gnu/packages/gnome.scm:930 msgid "" "This is an icon theme that follows the Tango visual\n" "guidelines." @@ -3712,11 +4774,11 @@ msgstr "" "Dette er et ikontema, som følger de visuelle\n" "retningslinjer fra Tango." -#: gnu/packages/gnome.scm:782 +#: gnu/packages/gnome.scm:956 msgid "Database of common MIME types" msgstr "Database med gængse MIME-typer" -#: gnu/packages/gnome.scm:784 +#: gnu/packages/gnome.scm:958 msgid "" "The shared-mime-info package contains the core database of common types\n" "and the update-mime-database command used to extend it. It requires glib2 to\n" @@ -3725,19 +4787,19 @@ msgid "" "database is translated at Transifex." msgstr "" -#: gnu/packages/gnome.scm:808 +#: gnu/packages/gnome.scm:982 msgid "Freedesktop icon theme" msgstr "Freedesktop-ikontema" -#: gnu/packages/gnome.scm:810 +#: gnu/packages/gnome.scm:984 msgid "Freedesktop icon theme." msgstr "Freedesktop-ikondtema." -#: gnu/packages/gnome.scm:838 +#: gnu/packages/gnome.scm:1012 msgid "GNOME desktop notification library" msgstr "" -#: gnu/packages/gnome.scm:840 +#: gnu/packages/gnome.scm:1014 msgid "" "Libnotify is a library that sends desktop notifications to a\n" "notification daemon, as defined in the Desktop Notifications spec. These\n" @@ -3745,11 +4807,11 @@ msgid "" "some form of information without getting in the user's way." msgstr "" -#: gnu/packages/gnome.scm:872 +#: gnu/packages/gnome.scm:1048 msgid "GObject plugin system" msgstr "" -#: gnu/packages/gnome.scm:874 +#: gnu/packages/gnome.scm:1050 msgid "" "Libpeas is a gobject-based plugin engine, targeted at giving every\n" "application the chance to assume its own extensibility. It also has a set of\n" @@ -3758,33 +4820,33 @@ msgid "" "API." msgstr "" -#: gnu/packages/gnome.scm:903 +#: gnu/packages/gnome.scm:1079 msgid "OpenGL extension to GTK+" msgstr "OpenGL-udvidelse til GTK+" -#: gnu/packages/gnome.scm:904 +#: gnu/packages/gnome.scm:1080 msgid "" "GtkGLExt is an OpenGL extension to GTK+. It provides\n" "additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget\n" "API add-ons to make GTK+ widgets OpenGL-capable." msgstr "" -#: gnu/packages/gnome.scm:947 +#: gnu/packages/gnome.scm:1123 msgid "GTK+ rapid application development tool" msgstr "" -#: gnu/packages/gnome.scm:948 +#: gnu/packages/gnome.scm:1124 msgid "" "Glade is a rapid application development (RAD) tool to\n" "enable quick & easy development of user interfaces for the GTK+ toolkit and\n" "the GNOME desktop environment." msgstr "" -#: gnu/packages/gnome.scm:974 +#: gnu/packages/gnome.scm:1152 msgid "CSS2 parsing and manipulation library" msgstr "CSS2-fortolknings- og manipuleringsbibliotek" -#: gnu/packages/gnome.scm:976 +#: gnu/packages/gnome.scm:1154 msgid "" "Libcroco is a standalone CSS2 parsing and manipulation library.\n" "The parser provides a low level event driven SAC-like API and a CSS object\n" @@ -3792,31 +4854,31 @@ msgid "" "XML/CSS rendering engine." msgstr "" -#: gnu/packages/gnome.scm:1022 +#: gnu/packages/gnome.scm:1187 msgid "GNOME's Structured File Library" msgstr "" -#: gnu/packages/gnome.scm:1024 +#: gnu/packages/gnome.scm:1189 msgid "" "Libgsf aims to provide an efficient extensible I/O abstraction for\n" "dealing with different structured file formats." msgstr "" -#: gnu/packages/gnome.scm:1075 +#: gnu/packages/gnome.scm:1254 msgid "Render SVG files using Cairo" msgstr "" -#: gnu/packages/gnome.scm:1077 +#: gnu/packages/gnome.scm:1256 msgid "" "Librsvg is a C library to render SVG files using the Cairo 2D graphics\n" "library." msgstr "" -#: gnu/packages/gnome.scm:1101 +#: gnu/packages/gnome.scm:1280 msgid "Create trees of CORBA Interface Definition Language files" msgstr "" -#: gnu/packages/gnome.scm:1102 +#: gnu/packages/gnome.scm:1281 msgid "" "Libidl is a library for creating trees of CORBA Interface\n" "Definition Language (idl) files, which is a specification for defining\n" @@ -3825,144 +4887,144 @@ msgid "" "functionality was designed to be as reusable and portable as possible." msgstr "" -#: gnu/packages/gnome.scm:1142 +#: gnu/packages/gnome.scm:1321 msgid "CORBA 2.4-compliant Object Request Broker" msgstr "" -#: gnu/packages/gnome.scm:1143 +#: gnu/packages/gnome.scm:1322 msgid "" "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)\n" "featuring mature C, C++ and Python bindings." msgstr "" -#: gnu/packages/gnome.scm:1190 +#: gnu/packages/gnome.scm:1369 msgid "Framework for creating reusable components for use in GNOME applications" msgstr "" -#: gnu/packages/gnome.scm:1191 +#: gnu/packages/gnome.scm:1370 msgid "" "Bonobo is a framework for creating reusable components for\n" "use in GNOME applications, built on top of CORBA." msgstr "" -#: gnu/packages/gnome.scm:1222 +#: gnu/packages/gnome.scm:1401 msgid "Store application preferences" msgstr "" -#: gnu/packages/gnome.scm:1223 +#: gnu/packages/gnome.scm:1402 msgid "" "Gconf is a system for storing application preferences. It\n" "is intended for user preferences; not arbitrary data storage." msgstr "" -#: gnu/packages/gnome.scm:1246 +#: gnu/packages/gnome.scm:1436 msgid "Base MIME and Application database for GNOME" msgstr "" -#: gnu/packages/gnome.scm:1247 +#: gnu/packages/gnome.scm:1437 msgid "" "GNOME Mime Data is a module which contains the base MIME\n" "and Application database for GNOME. The data stored by this module is\n" "designed to be accessed through the MIME functions in GnomeVFS." msgstr "" -#: gnu/packages/gnome.scm:1291 +#: gnu/packages/gnome.scm:1480 msgid "Access files and folders in GNOME applications" msgstr "" -#: gnu/packages/gnome.scm:1293 +#: gnu/packages/gnome.scm:1482 msgid "" "GnomeVFS is the core library used to access files and folders in GNOME\n" "applications. It provides a file system abstraction which allows applications\n" "to access local and remote files with a single consistent API." msgstr "" -#: gnu/packages/gnome.scm:1337 +#: gnu/packages/gnome.scm:1527 msgid "Useful routines for building applications" msgstr "" -#: gnu/packages/gnome.scm:1338 +#: gnu/packages/gnome.scm:1528 msgid "" "The libgnome library provides a number of useful routines\n" "for building modern applications, including session management, activation of\n" "files and URIs, and displaying help." msgstr "" -#: gnu/packages/gnome.scm:1361 +#: gnu/packages/gnome.scm:1551 msgid "2D drawing library" msgstr "2D-tegnebibliotek" -#: gnu/packages/gnome.scm:1362 +#: gnu/packages/gnome.scm:1552 msgid "" "Libart is a 2D drawing library intended as a\n" "high-quality vector-based 2D library with antialiasing and alpha composition." msgstr "" -#: gnu/packages/gnome.scm:1389 +#: gnu/packages/gnome.scm:1579 msgid "Flexible widget for creating interactive structured graphics" msgstr "" -#: gnu/packages/gnome.scm:1390 +#: gnu/packages/gnome.scm:1580 msgid "" "The GnomeCanvas widget provides a flexible widget for\n" "creating interactive structured graphics." msgstr "" -#: gnu/packages/gnome.scm:1414 +#: gnu/packages/gnome.scm:1604 msgid "C++ bindings to the GNOME Canvas library" msgstr "" -#: gnu/packages/gnome.scm:1415 +#: gnu/packages/gnome.scm:1605 msgid "C++ bindings to the GNOME Canvas library." msgstr "" -#: gnu/packages/gnome.scm:1446 +#: gnu/packages/gnome.scm:1637 msgid "Additional widgets for applications" msgstr "" -#: gnu/packages/gnome.scm:1447 +#: gnu/packages/gnome.scm:1638 msgid "" "The libgnomeui library provides additional widgets for\n" "applications. Many of the widgets from libgnomeui have already been\n" "ported to GTK+." msgstr "" -#: gnu/packages/gnome.scm:1473 +#: gnu/packages/gnome.scm:1664 msgid "Load glade interfaces and access the glade built widgets" msgstr "" -#: gnu/packages/gnome.scm:1474 +#: gnu/packages/gnome.scm:1665 msgid "" "Libglade is a library that provides interfaces for loading\n" "graphical interfaces described in glade files and for accessing the\n" "widgets built in the loading process." msgstr "" -#: gnu/packages/gnome.scm:1504 gnu/packages/gnome.scm:1536 +#: gnu/packages/gnome.scm:1695 gnu/packages/gnome.scm:1727 msgid "Printing framework for GNOME" msgstr "" -#: gnu/packages/gnome.scm:1506 +#: gnu/packages/gnome.scm:1697 msgid "" "GNOME-print was a printing framework for GNOME. It has been deprecated\n" "since ca. 2006, when GTK+ itself incorporated printing support." msgstr "" -#: gnu/packages/gnome.scm:1581 +#: gnu/packages/gnome.scm:1771 msgid "Some user interface controls using Bonobo" msgstr "" -#: gnu/packages/gnome.scm:1582 +#: gnu/packages/gnome.scm:1772 msgid "" "The Bonobo UI library provides a number of user interface\n" "controls using the Bonobo component framework." msgstr "" -#: gnu/packages/gnome.scm:1606 +#: gnu/packages/gnome.scm:1797 msgid "Window Navigator Construction Kit" msgstr "" -#: gnu/packages/gnome.scm:1608 +#: gnu/packages/gnome.scm:1799 msgid "" "Libwnck is the Window Navigator Construction Kit, a library for use in\n" "writing pagers, tasklists, and more generally applications that are dealing\n" @@ -3970,19 +5032,19 @@ msgid "" "Hints specification (EWMH)." msgstr "" -#: gnu/packages/gnome.scm:1661 +#: gnu/packages/gnome.scm:1852 msgid "Document-centric objects and utilities" msgstr "" -#: gnu/packages/gnome.scm:1662 +#: gnu/packages/gnome.scm:1853 msgid "A GLib/GTK+ set of document-centric objects and utilities." msgstr "" -#: gnu/packages/gnome.scm:1745 +#: gnu/packages/gnome.scm:1937 msgid "Spreadsheet application" msgstr "" -#: gnu/packages/gnome.scm:1747 +#: gnu/packages/gnome.scm:1939 msgid "" "GNUmeric is a GNU spreadsheet application, running under GNOME. It is\n" "interoperable with other spreadsheet applications. It has a vast array of\n" @@ -3991,29 +5053,29 @@ msgid "" "engineering." msgstr "" -#: gnu/packages/gnome.scm:1787 +#: gnu/packages/gnome.scm:1979 msgid "Default GNOME 3 themes" msgstr "Standardtemaer for GNOME 3" -#: gnu/packages/gnome.scm:1789 +#: gnu/packages/gnome.scm:1981 msgid "The default GNOME 3 themes (Adwaita and some accessibility themes)." msgstr "" -#: gnu/packages/gnome.scm:1822 +#: gnu/packages/gnome.scm:2014 msgid "Manage encryption keys and passwords in the GNOME keyring" msgstr "Håndter krypteringsnøgler og adgangskoder i GNOME keyring" -#: gnu/packages/gnome.scm:1824 +#: gnu/packages/gnome.scm:2016 msgid "" "Seahorse is a GNOME application for managing encryption keys and\n" "passwords in the GNOME keyring." msgstr "" -#: gnu/packages/gnome.scm:1862 gnu/packages/gnome.scm:2102 +#: gnu/packages/gnome.scm:2054 gnu/packages/gnome.scm:2292 msgid "Compiler for the GObject type system" msgstr "" -#: gnu/packages/gnome.scm:1864 +#: gnu/packages/gnome.scm:2056 msgid "" "Vala is a programming language that aims to bring modern programming\n" "language features to GNOME developers without imposing any additional runtime\n" @@ -4021,11 +5083,11 @@ msgid "" "libraries written in C." msgstr "" -#: gnu/packages/gnome.scm:1896 +#: gnu/packages/gnome.scm:2088 msgid "Virtual Terminal Emulator" msgstr "" -#: gnu/packages/gnome.scm:1898 +#: gnu/packages/gnome.scm:2090 msgid "" "VTE is a library (libvte) implementing a terminal emulator widget for\n" "GTK+, and a minimal sample application (vte) using that. Vte is mainly used in\n" @@ -4033,39 +5095,39 @@ msgid "" "editors, IDEs, etc." msgstr "" -#: gnu/packages/gnome.scm:1931 +#: gnu/packages/gnome.scm:2123 msgid "Enhanced VTE terminal widget" msgstr "" -#: gnu/packages/gnome.scm:1933 +#: gnu/packages/gnome.scm:2125 msgid "" "VTE is a library (libvte) implementing a terminal emulator widget for\n" "GTK+, this fork provides additional functions exposed for keyboard text\n" "selection and URL hints." msgstr "" -#: gnu/packages/gnome.scm:2016 +#: gnu/packages/gnome.scm:2211 msgid "Remote desktop viewer for GNOME" msgstr "" -#: gnu/packages/gnome.scm:2017 +#: gnu/packages/gnome.scm:2212 msgid "" "Vinagre is a remote display client supporting the VNC, SPICE\n" "and RDP protocols." msgstr "" -#: gnu/packages/gnome.scm:2069 +#: gnu/packages/gnome.scm:2264 msgid "Low-level GNOME configuration system" msgstr "" -#: gnu/packages/gnome.scm:2070 +#: gnu/packages/gnome.scm:2265 msgid "" "Dconf is a low-level configuration system. Its main purpose\n" "is to provide a backend to GSettings on platforms that don't already have\n" "configuration storage systems." msgstr "" -#: gnu/packages/gnome.scm:2104 +#: gnu/packages/gnome.scm:2294 msgid "" "JSON-GLib is a C library based on GLib providing serialization and\n" "deserialization support for the JavaScript Object Notation (JSON) format\n" @@ -4074,11 +5136,11 @@ msgid "" "and objects." msgstr "" -#: gnu/packages/gnome.scm:2143 +#: gnu/packages/gnome.scm:2333 msgid "High-level API for X Keyboard Extension" msgstr "" -#: gnu/packages/gnome.scm:2145 +#: gnu/packages/gnome.scm:2335 msgid "" "LibXklavier is a library providing high-level API for X Keyboard\n" "Extension known as XKB. This library is intended to support XFree86 and other\n" @@ -4086,72 +5148,80 @@ msgid "" "indicators etc)." msgstr "" -#: gnu/packages/gnome.scm:2173 +#: gnu/packages/gnome.scm:2363 msgid "Python bindings to librsvg" msgstr "" -#: gnu/packages/gnome.scm:2175 +#: gnu/packages/gnome.scm:2365 msgid "" "This packages provides Python bindings to librsvg, the SVG rendering\n" "library." msgstr "" -#: gnu/packages/gnome.scm:2224 +#: gnu/packages/gnome.scm:2415 msgid "Network-related GIO modules" msgstr "" -#: gnu/packages/gnome.scm:2226 +#: gnu/packages/gnome.scm:2417 msgid "" "This package contains various network related extensions for the GIO\n" "library." msgstr "" -#: gnu/packages/gnome.scm:2257 +#: gnu/packages/gnome.scm:2448 msgid "RESTful web api query library" msgstr "" -#: gnu/packages/gnome.scm:2259 +#: gnu/packages/gnome.scm:2450 msgid "" "This library was designed to make it easier to access web services that\n" "claim to be \"RESTful\". It includes convenience wrappers for libsoup and\n" "libxml to ease remote use of the RESTful API." msgstr "" -#: gnu/packages/gnome.scm:2328 +#: gnu/packages/gnome.scm:2573 msgid "GLib-based HTTP Library" msgstr "" -#: gnu/packages/gnome.scm:2330 +#: gnu/packages/gnome.scm:2575 msgid "" "LibSoup is an HTTP client/server library for GNOME. It uses GObjects\n" "and the GLib main loop, to integrate well with GNOME applications." msgstr "" -#: gnu/packages/gnome.scm:2376 +#: gnu/packages/gnome.scm:2621 msgid "GObject bindings for \"Secret Service\" API" msgstr "GObject-bindinger for »Secret Service«-API'en" -#: gnu/packages/gnome.scm:2378 +#: gnu/packages/gnome.scm:2623 msgid "" "Libsecret is a GObject based library for storing and retrieving passwords\n" "and other secrets. It communicates with the \"Secret Service\" using DBus." msgstr "" -#: gnu/packages/gnome.scm:2414 +#: gnu/packages/gnome.scm:2652 +msgid "" +"Five or More is a game where you try to align\n" +" five or more objects of the same color and shape causing them to disappear.\n" +" On every turn more objects will appear, until the board is full.\n" +" Try to last as long as possible." +msgstr "" + +#: gnu/packages/gnome.scm:2690 msgid "Minesweeper game" msgstr "Minestrygerspil" -#: gnu/packages/gnome.scm:2416 +#: gnu/packages/gnome.scm:2692 msgid "" "Mines (previously gnomine) is a puzzle game where you locate mines\n" "floating in an ocean using only your brain and a little bit of luck." msgstr "" -#: gnu/packages/gnome.scm:2447 +#: gnu/packages/gnome.scm:2723 msgid "Japanese logic game" msgstr "" -#: gnu/packages/gnome.scm:2449 +#: gnu/packages/gnome.scm:2725 msgid "" "Sudoku is a Japanese logic game that exploded in popularity in 2005.\n" "GNOME Sudoku is meant to have an interface as simple and unobstrusive as\n" @@ -4159,11 +5229,11 @@ msgid "" "more fun." msgstr "" -#: gnu/packages/gnome.scm:2495 +#: gnu/packages/gnome.scm:2771 msgid "Terminal emulator" msgstr "Terminalemulator" -#: gnu/packages/gnome.scm:2497 +#: gnu/packages/gnome.scm:2773 msgid "" "GNOME Terminal is a terminal emulator application for accessing a\n" "UNIX shell environment which can be used to run programs available on\n" @@ -4173,22 +5243,22 @@ msgid "" "keyboard shortcuts." msgstr "" -#: gnu/packages/gnome.scm:2563 +#: gnu/packages/gnome.scm:2839 msgid "Color management service" msgstr "" -#: gnu/packages/gnome.scm:2564 +#: gnu/packages/gnome.scm:2840 msgid "" "Colord is a system service that makes it easy to manage,\n" "install and generate color profiles to accurately color manage input and\n" "output devices." msgstr "" -#: gnu/packages/gnome.scm:2607 +#: gnu/packages/gnome.scm:2884 msgid "Geolocation service" msgstr "" -#: gnu/packages/gnome.scm:2608 +#: gnu/packages/gnome.scm:2885 msgid "" "Geoclue is a D-Bus service that provides location\n" "information. The primary goal of the Geoclue project is to make creating\n" @@ -4197,11 +5267,11 @@ msgid "" "permission from user." msgstr "" -#: gnu/packages/gnome.scm:2643 +#: gnu/packages/gnome.scm:2920 msgid "Geocoding and reverse-geocoding library" msgstr "" -#: gnu/packages/gnome.scm:2645 +#: gnu/packages/gnome.scm:2922 msgid "" "geocode-glib is a convenience library for geocoding (finding longitude,\n" "and latitude from an address) and reverse geocoding (finding an address from\n" @@ -4209,11 +5279,11 @@ msgid "" "faster results and to avoid unnecessary server load." msgstr "" -#: gnu/packages/gnome.scm:2698 +#: gnu/packages/gnome.scm:2975 msgid "System daemon for managing power devices" msgstr "Systemdæmon til håndtering af strømenheder" -#: gnu/packages/gnome.scm:2700 +#: gnu/packages/gnome.scm:2977 msgid "" "UPower is an abstraction for enumerating power devices,\n" "listening to device events and querying history and statistics. Any\n" @@ -4221,21 +5291,21 @@ msgid "" "service via the system message bus." msgstr "" -#: gnu/packages/gnome.scm:2755 +#: gnu/packages/gnome.scm:3035 msgid "Location, time zone, and weather library for GNOME" msgstr "" -#: gnu/packages/gnome.scm:2757 +#: gnu/packages/gnome.scm:3037 msgid "" "libgweather is a library to access weather information from online\n" "services for numerous locations." msgstr "" -#: gnu/packages/gnome.scm:2808 +#: gnu/packages/gnome.scm:3088 msgid "GNOME settings daemon" msgstr "" -#: gnu/packages/gnome.scm:2810 +#: gnu/packages/gnome.scm:3090 msgid "" "This package contains the daemon responsible for setting the various\n" "parameters of a GNOME session and the applications that run under it. It\n" @@ -4243,42 +5313,42 @@ msgid "" "settings, themes, mouse settings, and startup of other daemons." msgstr "" -#: gnu/packages/gnome.scm:2847 +#: gnu/packages/gnome.scm:3127 msgid "Library to parse and save media playlists for GNOME" msgstr "" -#: gnu/packages/gnome.scm:2848 +#: gnu/packages/gnome.scm:3128 msgid "" "Totem-pl-parser is a GObjects-based library to parse and save\n" "playlists in a variety of formats." msgstr "" -#: gnu/packages/gnome.scm:2882 +#: gnu/packages/gnome.scm:3162 msgid "Solitaire card games" msgstr "" -#: gnu/packages/gnome.scm:2884 +#: gnu/packages/gnome.scm:3164 msgid "" "Aisleriot (also known as Solitaire or sol) is a collection of card games\n" "which are easy to play with the aid of a mouse." msgstr "" -#: gnu/packages/gnome.scm:2908 +#: gnu/packages/gnome.scm:3188 msgid "API documentation browser for GNOME" msgstr "" -#: gnu/packages/gnome.scm:2910 +#: gnu/packages/gnome.scm:3190 msgid "" "Devhelp is an API documentation browser for GTK+ and GNOME. It works\n" "natively with GTK-Doc (the API reference system developed for GTK+ and used\n" "throughout GNOME for API documentation)." msgstr "" -#: gnu/packages/gnome.scm:2973 +#: gnu/packages/gnome.scm:3257 msgid "Object oriented GL/GLES Abstraction/Utility Layer" msgstr "" -#: gnu/packages/gnome.scm:2975 +#: gnu/packages/gnome.scm:3259 msgid "" "Cogl is a small library for using 3D graphics hardware to draw pretty\n" "pictures. The API departs from the flat state machine style of OpenGL and is\n" @@ -4286,26 +5356,26 @@ msgid "" "without stepping on each others toes." msgstr "" -#: gnu/packages/gnome.scm:3032 +#: gnu/packages/gnome.scm:3316 msgid "Open GL based interactive canvas library" msgstr "" -#: gnu/packages/gnome.scm:3034 gnu/packages/gnome.scm:3063 +#: gnu/packages/gnome.scm:3318 gnu/packages/gnome.scm:3347 msgid "" "Clutter is an Open GL based interactive canvas library, designed for\n" "creating fast, mainly 2D single window applications such as media box UIs,\n" "presentations, kiosk style applications and so on." msgstr "" -#: gnu/packages/gnome.scm:3061 +#: gnu/packages/gnome.scm:3345 msgid "Open GL based interactive canvas library GTK+ widget" msgstr "" -#: gnu/packages/gnome.scm:3091 +#: gnu/packages/gnome.scm:3375 msgid "Integration library for using GStreamer with Clutter" msgstr "" -#: gnu/packages/gnome.scm:3093 +#: gnu/packages/gnome.scm:3377 msgid "" "Clutter-Gst is an integration library for using GStreamer with Clutter.\n" "It provides a GStreamer sink to upload frames to GL and an actor that\n" @@ -4313,11 +5383,11 @@ msgid "" "GL based interactive canvas library." msgstr "" -#: gnu/packages/gnome.scm:3127 +#: gnu/packages/gnome.scm:3411 msgid "C library providing a ClutterActor to display maps" msgstr "" -#: gnu/packages/gnome.scm:3129 +#: gnu/packages/gnome.scm:3413 msgid "" "libchamplain is a C library providing a ClutterActor to display maps.\n" "It also provides a Gtk+ widget to display maps in Gtk+ applications. Python\n" @@ -4325,32 +5395,32 @@ msgid "" "such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free." msgstr "" -#: gnu/packages/gnome.scm:3160 +#: gnu/packages/gnome.scm:3444 msgid "Object mapper from GObjects to SQLite" msgstr "" -#: gnu/packages/gnome.scm:3162 +#: gnu/packages/gnome.scm:3446 msgid "" "Gom provides an object mapper from GObjects to SQLite. It helps you\n" "write applications that need to store structured data as well as make complex\n" "queries upon that data." msgstr "" -#: gnu/packages/gnome.scm:3197 +#: gnu/packages/gnome.scm:3481 msgid "Useful functionality shared among GNOME games" msgstr "" -#: gnu/packages/gnome.scm:3199 +#: gnu/packages/gnome.scm:3483 msgid "" -"libgames-support is a small library intended for internal use by\n" +"libgnome-games-support is a small library intended for internal use by\n" "GNOME Games, but it may be used by others." msgstr "" -#: gnu/packages/gnome.scm:3241 +#: gnu/packages/gnome.scm:3511 msgid "Sliding block puzzles" msgstr "" -#: gnu/packages/gnome.scm:3243 +#: gnu/packages/gnome.scm:3513 msgid "" "GNOME Klotski is a set of block sliding puzzles. The objective is to move\n" "the patterned block to the area bordered by green markers. To do so, you will\n" @@ -4358,65 +5428,82 @@ msgid "" "as possible!" msgstr "" -#: gnu/packages/gnome.scm:3295 +#: gnu/packages/gnome.scm:3566 msgid "Framework for discovering and browsing media" msgstr "" -#: gnu/packages/gnome.scm:3297 gnu/packages/gnome.scm:3350 +#: gnu/packages/gnome.scm:3568 gnu/packages/gnome.scm:3621 msgid "" "Grilo is a framework focused on making media discovery and browsing easy\n" "for application developers." msgstr "" -#: gnu/packages/gnome.scm:3348 +#: gnu/packages/gnome.scm:3619 msgid "Plugins for the Grilo media discovery library" msgstr "" -#: gnu/packages/gnome.scm:3425 +#: gnu/packages/gnome.scm:3722 msgid "Simple media player for GNOME based on GStreamer" msgstr "" -#: gnu/packages/gnome.scm:3426 +#: gnu/packages/gnome.scm:3723 msgid "" "Totem is a simple yet featureful media player for GNOME\n" "which can read a large number of file formats." msgstr "" -#: gnu/packages/gnome.scm:3516 +#: gnu/packages/gnome.scm:3813 msgid "Music player for GNOME" msgstr "" -#: gnu/packages/gnome.scm:3517 +#: gnu/packages/gnome.scm:3814 msgid "" "Rhythmbox is a music playing application for GNOME. It\n" "supports playlists, song ratings, and any codecs installed through gstreamer." msgstr "" -#: gnu/packages/gnome.scm:3567 +#: gnu/packages/gnome.scm:3864 msgid "GNOME image viewer" msgstr "" -#: gnu/packages/gnome.scm:3568 +#: gnu/packages/gnome.scm:3865 msgid "" "Eye of GNOME is the GNOME image viewer. It\n" "supports image conversion, rotation, and slideshows." msgstr "" -#: gnu/packages/gnome.scm:3593 +#: gnu/packages/gnome.scm:3887 +msgid "Extensions for the Eye of GNOME image viewer" +msgstr "" + +#: gnu/packages/gnome.scm:3899 +msgid "" +"This package provides plugins for the Eye of GNOME (EOG) image viewer,\n" +"notably:\n" +"\n" +"@itemize\n" +"@item @dfn{EXIF Display}, which displays camera (EXIF) information;\n" +"@item @dfn{Map}, which displays a map of where the picture was taken on the\n" +"side panel;\n" +"@item @dfn{Slideshow Shuffle}, to shuffle images in slideshow mode.\n" +"@end itemize\n" +msgstr "" + +#: gnu/packages/gnome.scm:3935 msgid "GObject bindings for libudev" msgstr "" -#: gnu/packages/gnome.scm:3595 +#: gnu/packages/gnome.scm:3937 msgid "" "This library provides GObject bindings for libudev. It was originally\n" "part of udev-extras, then udev, then systemd. It's now a project on its own." msgstr "" -#: gnu/packages/gnome.scm:3643 +#: gnu/packages/gnome.scm:3985 msgid "Userspace virtual file system for GIO" msgstr "" -#: gnu/packages/gnome.scm:3645 +#: gnu/packages/gnome.scm:3987 msgid "" "GVFS is a userspace virtual file system designed to work with the I/O\n" "abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support\n" @@ -4427,11 +5514,11 @@ msgid "" "DAV, and others." msgstr "" -#: gnu/packages/gnome.scm:3691 +#: gnu/packages/gnome.scm:4033 msgid "GLib binding for libusb1" msgstr "GLib-binding for libusb1" -#: gnu/packages/gnome.scm:3693 +#: gnu/packages/gnome.scm:4035 msgid "" "GUsb is a GObject wrapper for libusb1 that makes it easy to do\n" "asynchronous control, bulk and interrupt transfers with proper cancellation\n" @@ -4439,11 +5526,11 @@ msgid "" "USB transfers with your high-level application or system daemon." msgstr "" -#: gnu/packages/gnome.scm:3744 +#: gnu/packages/gnome.scm:4086 msgid "Document and image scanner" msgstr "Dokument- og billedskanner" -#: gnu/packages/gnome.scm:3745 +#: gnu/packages/gnome.scm:4087 msgid "" "Simple Scan is an easy-to-use application, designed to let\n" "users connect their scanner and quickly have the image/document in an\n" @@ -4452,52 +5539,65 @@ msgid "" "work and the interface is well tested." msgstr "" -#: gnu/packages/gnome.scm:3793 +#: gnu/packages/gnome.scm:4160 +msgid "Web browser for GNOME" +msgstr "Internetbrowser for GNOME" + +#: gnu/packages/gnome.scm:4162 +msgid "" +"Eolie is a new web browser for GNOME. It features Firefox sync support,\n" +"a secret password store, an adblocker, and a modern UI." +msgstr "" +"Eolie er en ny internetbrowser for GNOME. Den har Firefox-\n" +"synkroniseringsunderstøttelse, et hemmeligt lager for adgangskoder, en\n" +"reklameblokering og en moderne brugerflade." + +#: gnu/packages/gnome.scm:4214 msgid "GNOME web browser" msgstr "GNOME-internetbrowser" -#: gnu/packages/gnome.scm:3795 +#: gnu/packages/gnome.scm:4216 msgid "" "Epiphany is a GNOME web browser targeted at non-technical users. Its\n" "principles are simplicity and standards compliance." msgstr "" -#: gnu/packages/gnome.scm:3851 +#: gnu/packages/gnome.scm:4272 msgid "D-Bus debugger" msgstr "D-Bus-fejlsøger" -#: gnu/packages/gnome.scm:3853 +#: gnu/packages/gnome.scm:4274 msgid "" "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces\n" "of running programs and invoke methods on those interfaces." msgstr "" -#: gnu/packages/gnome.scm:3875 +#: gnu/packages/gnome.scm:4296 msgid "XSL stylesheets for Yelp" msgstr "XSL-stilark for Yelp" -#: gnu/packages/gnome.scm:3877 +#: gnu/packages/gnome.scm:4298 msgid "" "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser\n" "to format Docbook and Mallard documents." msgstr "" -#: gnu/packages/gnome.scm:3908 +#: gnu/packages/gnome.scm:4329 msgid "GNOME help browser" msgstr "" -#: gnu/packages/gnome.scm:3910 +#: gnu/packages/gnome.scm:4331 msgid "" "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,\n" "man, info, and HTML documents. It can locate documents according to the\n" "freedesktop.org help system specification." msgstr "" -#: gnu/packages/gnome.scm:3938 +#: gnu/packages/gnome.scm:4359 msgid "Yelp documentation tools" msgstr "Yelp-dokumentationsværktøjer" -#: gnu/packages/gnome.scm:3940 +#: gnu/packages/gnome.scm:4361 msgid "" "Yelp-tools is a collection of scripts and build utilities to help create,\n" "manage, and publish documentation for Yelp and the web. Most of the heavy\n" @@ -4505,32 +5605,32 @@ msgid "" "wraps things up in a developer-friendly way." msgstr "" -#: gnu/packages/gnome.scm:3977 +#: gnu/packages/gnome.scm:4398 msgid "GObject collection library" msgstr "GObject-samlingsbibliotek" -#: gnu/packages/gnome.scm:3979 +#: gnu/packages/gnome.scm:4400 msgid "" "Libgee is a utility library providing GObject-based interfaces and\n" "classes for commonly used data structures." msgstr "" -#: gnu/packages/gnome.scm:4006 +#: gnu/packages/gnome.scm:4427 msgid "GObject wrapper around the Exiv2 photo metadata library" msgstr "" -#: gnu/packages/gnome.scm:4008 +#: gnu/packages/gnome.scm:4429 msgid "" "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It\n" "allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP\n" "metadata in photo and video files of various formats." msgstr "" -#: gnu/packages/gnome.scm:4051 +#: gnu/packages/gnome.scm:4473 msgid "Photo manager for GNOME 3" msgstr "Billedhåndtering for GNOME 3" -#: gnu/packages/gnome.scm:4053 +#: gnu/packages/gnome.scm:4475 msgid "" "Shotwell is a digital photo manager designed for the GNOME desktop\n" "environment. It allows you to import photos from disk or camera, organize\n" @@ -4538,42 +5638,42 @@ msgid "" "share them with others via social networking and more." msgstr "" -#: gnu/packages/gnome.scm:4094 +#: gnu/packages/gnome.scm:4516 msgid "Graphical archive manager for GNOME" msgstr "Grafisk arkivhåndtering for GNOME" -#: gnu/packages/gnome.scm:4095 +#: gnu/packages/gnome.scm:4517 msgid "" "File Roller is an archive manager for the GNOME desktop\n" "environment that allows users to view, unpack, and create compressed archives\n" "such as gzip tarballs." msgstr "" -#: gnu/packages/gnome.scm:4173 +#: gnu/packages/gnome.scm:4595 msgid "Session manager for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4175 +#: gnu/packages/gnome.scm:4597 msgid "" "This package contains the GNOME session manager, as well as a\n" "configuration program to choose applications starting on login." msgstr "" -#: gnu/packages/gnome.scm:4230 +#: gnu/packages/gnome.scm:4650 msgid "Javascript bindings for GNOME" msgstr "Javascript-bindinger for GNOME" -#: gnu/packages/gnome.scm:4233 +#: gnu/packages/gnome.scm:4653 msgid "" "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey\n" "javascript engine and the GObject introspection framework." msgstr "" -#: gnu/packages/gnome.scm:4292 +#: gnu/packages/gnome.scm:4712 msgid "GNOME text editor" msgstr "GNOME-tesktredigeringsprogram" -#: gnu/packages/gnome.scm:4293 +#: gnu/packages/gnome.scm:4713 msgid "" "While aiming at simplicity and ease of use, gedit is a\n" "powerful general purpose text editor." @@ -4581,21 +5681,21 @@ msgstr "" "Selv om den forsøger at være enkel og nem at bruge, så\n" "er gedit et funktionsrigt og alment tekstredigeringsprogram." -#: gnu/packages/gnome.scm:4317 +#: gnu/packages/gnome.scm:4737 msgid "Display graphical dialog boxes from shell scripts" msgstr "Vis grafiske dialogbokse fra skalskripter" -#: gnu/packages/gnome.scm:4320 +#: gnu/packages/gnome.scm:4740 msgid "" "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you\n" "to display dialog boxes from the commandline and shell scripts." msgstr "" -#: gnu/packages/gnome.scm:4414 +#: gnu/packages/gnome.scm:4839 msgid "Window and compositing manager" msgstr "" -#: gnu/packages/gnome.scm:4417 +#: gnu/packages/gnome.scm:4842 msgid "" "Mutter is a window and compositing manager that displays and manages your\n" "desktop via OpenGL. Mutter combines a sophisticated display engine using the\n" @@ -4603,11 +5703,11 @@ msgid "" "window manager." msgstr "" -#: gnu/packages/gnome.scm:4452 +#: gnu/packages/gnome.scm:4876 msgid "Single sign-on framework for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4455 +#: gnu/packages/gnome.scm:4879 msgid "" "GNOME Online Accounts provides interfaces so that applications and\n" "libraries in GNOME can access the user's online accounts. It has providers for\n" @@ -4615,32 +5715,32 @@ msgid "" "Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos." msgstr "" -#: gnu/packages/gnome.scm:4517 +#: gnu/packages/gnome.scm:4957 msgid "Store address books and calendars" msgstr "" -#: gnu/packages/gnome.scm:4520 +#: gnu/packages/gnome.scm:4960 msgid "" "This package provides a unified backend for programs that work with\n" "contacts, tasks, and calendar information. It was originally developed for\n" "Evolution (hence the name), but is now used by other packages as well." msgstr "" -#: gnu/packages/gnome.scm:4583 +#: gnu/packages/gnome.scm:5023 msgid "Text entry and UI navigation application" msgstr "" -#: gnu/packages/gnome.scm:4586 +#: gnu/packages/gnome.scm:5026 msgid "" "Caribou is an input assistive technology intended for switch and pointer\n" "users." msgstr "" -#: gnu/packages/gnome.scm:4699 +#: gnu/packages/gnome.scm:5143 msgid "Network connection manager" msgstr "" -#: gnu/packages/gnome.scm:4702 +#: gnu/packages/gnome.scm:5146 msgid "" "NetworkManager is a system network service that manages your network\n" "devices and connections, attempting to keep active network connectivity when\n" @@ -4649,29 +5749,39 @@ msgid "" "services." msgstr "" -#: gnu/packages/gnome.scm:4727 +#: gnu/packages/gnome.scm:5180 +msgid "OpenVPN plug-in for NetworkManager" +msgstr "" + +#: gnu/packages/gnome.scm:5182 +msgid "" +"This extension of NetworkManager allows it to take care of connections\n" +"to virtual private networks (VPNs) via OpenVPN." +msgstr "" + +#: gnu/packages/gnome.scm:5204 msgid "Database of broadband connection configuration" msgstr "" -#: gnu/packages/gnome.scm:4728 +#: gnu/packages/gnome.scm:5205 msgid "Database of broadband connection configuration." msgstr "" -#: gnu/packages/gnome.scm:4763 +#: gnu/packages/gnome.scm:5239 msgid "Applet for managing network connections" msgstr "" -#: gnu/packages/gnome.scm:4766 +#: gnu/packages/gnome.scm:5242 msgid "" "This package contains a systray applet for NetworkManager. It displays\n" "the available networks and allows users to easily switch between them." msgstr "" -#: gnu/packages/gnome.scm:4791 +#: gnu/packages/gnome.scm:5267 msgid "C++ wrapper for XML parser library libxml2" msgstr "C++-omslag for XML-fortolkerbiblioteket libxml2" -#: gnu/packages/gnome.scm:4793 +#: gnu/packages/gnome.scm:5269 msgid "" "This package provides a C++ wrapper for the XML parser library\n" "libxml2." @@ -4679,41 +5789,41 @@ msgstr "" "Denne pakke tilbyder et C++-omslag for XML-fortolkerbiblioteket\n" "libxml2." -#: gnu/packages/gnome.scm:4864 +#: gnu/packages/gnome.scm:5405 msgid "Display manager for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4867 +#: gnu/packages/gnome.scm:5408 msgid "" "GNOME Display Manager is a system service that is responsible for\n" "providing graphical log-ins and managing local and remote displays." msgstr "" -#: gnu/packages/gnome.scm:4891 +#: gnu/packages/gnome.scm:5432 msgid "Portable system access library" msgstr "" -#: gnu/packages/gnome.scm:4894 +#: gnu/packages/gnome.scm:5435 msgid "" "LibGTop is a library to get system specific data such as CPU and memory\n" "usage and information about running processes." msgstr "" -#: gnu/packages/gnome.scm:4924 +#: gnu/packages/gnome.scm:5465 msgid "GNOME Bluetooth subsystem" msgstr "" -#: gnu/packages/gnome.scm:4927 +#: gnu/packages/gnome.scm:5468 msgid "" "This package contains tools for managing and manipulating Bluetooth\n" "devices using the GNOME desktop." msgstr "" -#: gnu/packages/gnome.scm:4993 +#: gnu/packages/gnome.scm:5534 msgid "Utilities to configure the GNOME desktop" msgstr "" -#: gnu/packages/gnome.scm:4996 +#: gnu/packages/gnome.scm:5537 msgid "" "This package contains configuration applets for the GNOME desktop,\n" "allowing to set accessibility configuration, desktop fonts, keyboard and mouse\n" @@ -4721,21 +5831,21 @@ msgid "" "properties, screen resolution, and other GNOME parameters." msgstr "" -#: gnu/packages/gnome.scm:5078 +#: gnu/packages/gnome.scm:5622 msgid "Desktop shell for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5081 +#: gnu/packages/gnome.scm:5625 msgid "" "GNOME Shell provides core user interface functions for the GNOME desktop,\n" "like switching to windows and launching applications." msgstr "" -#: gnu/packages/gnome.scm:5115 +#: gnu/packages/gnome.scm:5660 msgid "VNC viewer widget for GTK+" msgstr "" -#: gnu/packages/gnome.scm:5117 +#: gnu/packages/gnome.scm:5662 msgid "" "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing\n" "applications, for instance the Vinagre client, GNOME Boxes and virt-viewer.\n" @@ -4743,43 +5853,43 @@ msgid "" "as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions." msgstr "" -#: gnu/packages/gnome.scm:5145 +#: gnu/packages/gnome.scm:5690 msgid "Archives integration support for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5148 +#: gnu/packages/gnome.scm:5693 msgid "" "GNOME Autoar is a library which makes creating and extracting archives\n" "easy, safe, and automatic." msgstr "" -#: gnu/packages/gnome.scm:5199 +#: gnu/packages/gnome.scm:5745 msgid "Metadata database, indexer and search tool" msgstr "" -#: gnu/packages/gnome.scm:5202 +#: gnu/packages/gnome.scm:5748 msgid "" "Tracker is an advanced framework for first class objects with associated\n" "metadata and tags. It provides a one stop solution for all metadata, tags,\n" "shared object databases, search tools and indexing." msgstr "" -#: gnu/packages/gnome.scm:5251 +#: gnu/packages/gnome.scm:5799 msgid "File manager for GNOME" msgstr "Filhåndtering for GNOME" -#: gnu/packages/gnome.scm:5254 +#: gnu/packages/gnome.scm:5802 msgid "" "Nautilus (Files) is a file manager designed to fit the GNOME desktop\n" "design and behaviour, giving the user a simple way to navigate and manage its\n" "files." msgstr "" -#: gnu/packages/gnome.scm:5282 +#: gnu/packages/gnome.scm:5830 msgid "Disk usage analyzer for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5284 +#: gnu/packages/gnome.scm:5832 msgid "" "Baobab (Disk Usage Analyzer) is a graphical application to analyse disk\n" "usage in the GNOME desktop environment. It can easily scan device volumes or\n" @@ -4787,11 +5897,11 @@ msgid "" "is complete it provides a graphical representation of each selected folder." msgstr "" -#: gnu/packages/gnome.scm:5308 +#: gnu/packages/gnome.scm:5856 msgid "Background images for the GNOME desktop" msgstr "" -#: gnu/packages/gnome.scm:5310 +#: gnu/packages/gnome.scm:5858 msgid "" "GNOME backgrounds package contains a collection of graphics files which\n" "can be used as backgrounds in the GNOME Desktop environment. Additionally,\n" @@ -4799,85 +5909,129 @@ msgid "" "can add your own files to the collection." msgstr "" -#: gnu/packages/gnome.scm:5343 +#: gnu/packages/gnome.scm:5891 msgid "Take pictures of your screen" msgstr "" -#: gnu/packages/gnome.scm:5345 +#: gnu/packages/gnome.scm:5893 msgid "" "GNOME Screenshot is a utility used for taking screenshots of the entire\n" "screen, a window or a user defined area of the screen, with optional\n" "beautifying border effects." msgstr "" -#: gnu/packages/gnome.scm:5382 +#: gnu/packages/gnome.scm:5930 msgid "Graphical editor for GNOME's dconf configuration system" msgstr "" -#: gnu/packages/gnome.scm:5384 +#: gnu/packages/gnome.scm:5932 msgid "" "Dconf-editor is a graphical tool for browsing and editing the dconf\n" "configuration system for GNOME. It allows users to configure desktop\n" "software that do not provide their own configuration interface." msgstr "" -#: gnu/packages/gnome.scm:5429 +#: gnu/packages/gnome.scm:5961 +msgid "Default MIME type associations for the GNOME desktop" +msgstr "MIME-typeassociatoner for GNOME-skrivebordet." + +#: gnu/packages/gnome.scm:5963 +msgid "" +"Given many installed packages which might handle a given MIME type, a\n" +"user running the GNOME desktop probably has some preferences: for example,\n" +"that folders be opened by default by the Nautilus file manager, not the Baobab\n" +"disk usage analyzer. This package establishes that set of default MIME type\n" +"associations for GNOME." +msgstr "" + +#: gnu/packages/gnome.scm:6022 msgid "The GNU desktop environment" msgstr "GNU-skrivebordsmiljøet" -#: gnu/packages/gnome.scm:5432 +#: gnu/packages/gnome.scm:6025 msgid "" "GNOME is the graphical desktop for GNU. It includes a wide variety of\n" "applications for browsing the web, editing text and images, creating\n" "documents and diagrams, playing media, scanning, and much more." msgstr "" -#: gnu/packages/gnome.scm:5483 +#: gnu/packages/gnome.scm:6077 msgid "Desktop recording program" msgstr "Skrivebordsoptagelsesprogram" -#: gnu/packages/gnome.scm:5484 +#: gnu/packages/gnome.scm:6078 msgid "" "Byzanz is a simple desktop recording program with a\n" "command-line interface. It can record part or all of an X display for a\n" "specified duration and save it as a GIF encoded animated image file." msgstr "" -#: gnu/packages/gnome.scm:5512 +#: gnu/packages/gnome.scm:6105 +msgid "GObject wrapper for libcanberra" +msgstr "GObject-omslag for libcanberra" + +#: gnu/packages/gnome.scm:6107 +msgid "" +"GSound is a small library for playing system sounds. It's designed to be\n" +"used via GObject Introspection, and is a thin wrapper around the libcanberra C\n" +"library." +msgstr "" + +#: gnu/packages/gnome.scm:6134 msgid "Library for accessing SkyDrive and Hotmail" msgstr "Bibliotek til at tilgå SkyDrive og Hotmail" -#: gnu/packages/gnome.scm:5514 +#: gnu/packages/gnome.scm:6136 msgid "" "Libzapojit is a GLib-based library for accessing online service APIs of\n" "Microsoft SkyDrive and Hotmail, using their REST protocols." msgstr "" -#: gnu/packages/gnome.scm:5541 +#: gnu/packages/gnome.scm:6172 +msgid "GNOME's clock application" +msgstr "GNOME's urprogram" + +#: gnu/packages/gnome.scm:6174 +msgid "" +"GNOME Clocks is a simple clocks application designed to fit the GNOME\n" +"desktop. It supports world clock, stop watch, alarms, and count down timer." +msgstr "" + +#: gnu/packages/gnome.scm:6206 msgid "GNOME's calendar application" msgstr "GNOME's kalenderprogram" -#: gnu/packages/gnome.scm:5543 +#: gnu/packages/gnome.scm:6208 msgid "" "GNOME Calendar is a simple calendar application designed to fit the GNOME\n" -"desktop. It supports multiple calendars, monthly view and yearly view." +"desktop. It supports multiple calendars, month, week and year view." msgstr "" -#: gnu/packages/gnome.scm:5571 +#: gnu/packages/gnome.scm:6258 +msgid "GNOME's ToDo Application" +msgstr "GNOME's huskeseddelprogram" + +#: gnu/packages/gnome.scm:6260 +msgid "" +"GNOME To Do is a simplistic personal task manager designed to perfectly\n" +"fit the GNOME desktop." +msgstr "" + +#: gnu/packages/gnome.scm:6288 msgid "Look up words in dictionary sources" msgstr "" -#: gnu/packages/gnome.scm:5573 +#: gnu/packages/gnome.scm:6290 msgid "" "GNOME Dictionary can look for the definition or translation of a word in\n" "existing databases over the internet." msgstr "" -#: gnu/packages/gnome.scm:5619 +#: gnu/packages/gnome.scm:6350 msgid "Customize advanced GNOME 3 options" msgstr "Tilpas avancerede GNOME 3-indstillinger" -#: gnu/packages/gnome.scm:5622 +#: gnu/packages/gnome.scm:6353 msgid "" "GNOME Tweak Tool allows adjusting advanced configuration settings in\n" "GNOME 3. This includes things like the fonts used in user interface elements,\n" @@ -4885,53 +6039,65 @@ msgid "" "GNOME Shell appearance and extension, etc." msgstr "" -#: gnu/packages/gnome.scm:5649 +#: gnu/packages/gnome.scm:6380 msgid "Extensions for GNOME Shell" msgstr "" -#: gnu/packages/gnome.scm:5650 +#: gnu/packages/gnome.scm:6381 msgid "" "GNOME Shell extensions modify and extend GNOME Shell\n" "functionality and behavior." msgstr "" -#: gnu/packages/gnome.scm:5680 +#: gnu/packages/gnome.scm:6411 msgid "A flat GTK+ theme with transparent elements" msgstr "" -#: gnu/packages/gnome.scm:5681 +#: gnu/packages/gnome.scm:6412 msgid "" "Arc is a flat theme with transparent elements for GTK 3, GTK\n" "2, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments\n" "like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc." msgstr "" -#: gnu/packages/gnome.scm:5717 +#: gnu/packages/gnome.scm:6448 +msgid "Faba icon theme" +msgstr "Faba-ikontema" + +#: gnu/packages/gnome.scm:6450 +msgid "" +"Faba is a minimal icon set used as a basis for other themes such as\n" +"Moka" +msgstr "" +"Faba er et minimalt ikonsæt brugt som grundlag for andre temaer\n" +"såsom Moka" + +#: gnu/packages/gnome.scm:6474 msgid "Moka icon theme" msgstr "Moka-ikontema" -#: gnu/packages/gnome.scm:5718 +#: gnu/packages/gnome.scm:6475 msgid "" "Moka is a stylized desktop icon set, designed to be clear,\n" "simple and consistent." msgstr "" -#: gnu/packages/gnome.scm:5748 +#: gnu/packages/gnome.scm:6505 msgid "Arc icon theme" msgstr "Arc-ikontema" -#: gnu/packages/gnome.scm:5749 +#: gnu/packages/gnome.scm:6506 msgid "" "The Arc icon theme provides a set of icons matching the\n" "style of the Arc GTK theme. Icons missing from the Arc theme are provided by\n" "the Moka icon theme." msgstr "" -#: gnu/packages/gnome.scm:5781 +#: gnu/packages/gnome.scm:6538 msgid "Library to aggregate data about people" msgstr "Bibliotek til at aggregere data om folk" -#: gnu/packages/gnome.scm:5782 +#: gnu/packages/gnome.scm:6539 msgid "" "Libfolks is a library that aggregates information about people\n" "from multiple sources (e.g., Telepathy connection managers for IM contacts,\n" @@ -4940,31 +6106,31 @@ msgid "" "compiled." msgstr "" -#: gnu/packages/gnome.scm:5817 +#: gnu/packages/gnome.scm:6574 msgid "GLib/GObject wrapper for the Facebook API" msgstr "GLib/GObject-omslag for Facebook-API'en" -#: gnu/packages/gnome.scm:5818 +#: gnu/packages/gnome.scm:6575 msgid "" "This library allows you to use the Facebook API from\n" "GLib/GObject code." msgstr "" -#: gnu/packages/gnome.scm:5846 +#: gnu/packages/gnome.scm:6603 msgid "GNOME keyboard configuration library" msgstr "Konfigurationsbibliotek for GNOME-tastatur" -#: gnu/packages/gnome.scm:5848 +#: gnu/packages/gnome.scm:6605 msgid "" "Libgnomekbd is a keyboard configuration library for the GNOME desktop\n" "environment, which can notably display keyboard layouts." msgstr "" -#: gnu/packages/gnome.scm:5882 +#: gnu/packages/gnome.scm:6639 msgid "Library for writing single instance applications" msgstr "Bibliotek til at skrive enkel instans-programmer" -#: gnu/packages/gnome.scm:5884 +#: gnu/packages/gnome.scm:6641 msgid "" "Libunique is a library for writing single instance applications. If you\n" "launch a single instance application twice, the second instance will either just\n" @@ -4974,32 +6140,32 @@ msgid "" "handling the startup notification side." msgstr "" -#: gnu/packages/gnome.scm:5916 +#: gnu/packages/gnome.scm:6674 msgid "Desktop calculator" msgstr "Skrivebordslommeregner" -#: gnu/packages/gnome.scm:5918 +#: gnu/packages/gnome.scm:6676 msgid "" "Calculator is an application that solves mathematical equations and\n" "is suitable as a default application in a Desktop environment." msgstr "" -#: gnu/packages/gnome.scm:5943 +#: gnu/packages/gnome.scm:6710 msgid "Virtual sticky note" msgstr "" -#: gnu/packages/gnome.scm:5945 +#: gnu/packages/gnome.scm:6712 msgid "" "Xpad is a sticky note that strives to be simple, fault tolerant,\n" "and customizable. Xpad consists of independent pad windows, each is\n" "basically a text box in which notes can be written." msgstr "" -#: gnu/packages/gnome.scm:5975 +#: gnu/packages/gnome.scm:6742 msgid "Unicode character picker and font browser" msgstr "" -#: gnu/packages/gnome.scm:5977 +#: gnu/packages/gnome.scm:6744 msgid "" "This program allows you to browse through all the available Unicode\n" "characters and categories for the installed fonts, and to examine their\n" @@ -5007,22 +6173,22 @@ msgid "" "only know by its Unicode name or code point." msgstr "" -#: gnu/packages/gnome.scm:6007 +#: gnu/packages/gnome.scm:6774 msgid "Web development studio" msgstr "" -#: gnu/packages/gnome.scm:6009 +#: gnu/packages/gnome.scm:6776 msgid "" "Bluefish is an editor targeted towards programmers and web developers,\n" "with many options to write web sites, scripts and other code.\n" "Bluefish supports many programming and markup languages." msgstr "" -#: gnu/packages/gnome.scm:6041 +#: gnu/packages/gnome.scm:6808 msgid "Process viewer and system resource monitor for GNOME" msgstr "" -#: gnu/packages/gnome.scm:6043 +#: gnu/packages/gnome.scm:6810 msgid "" "GNOME System Monitor is a GNOME process viewer and system monitor with\n" "an attractive, easy-to-use interface. It has features, such as a tree view\n" @@ -5031,11 +6197,11 @@ msgid "" "kill/reinice processes." msgstr "" -#: gnu/packages/gnome.scm:6069 +#: gnu/packages/gnome.scm:6836 msgid "Python client bindings for D-Bus AT-SPI" msgstr "Pythonklientbindinger for D-Bus AT-SPI" -#: gnu/packages/gnome.scm:6073 +#: gnu/packages/gnome.scm:6840 msgid "" "This package includes a python client library for the AT-SPI D-Bus\n" "accessibility infrastructure." @@ -5043,17 +6209,88 @@ msgstr "" "Denne pakke indeholder et Pythonklientbibliotek for AT-SPI D-Bus-\n" "tilgængelighedsinfrastrukturen." -#: gnu/packages/gnome.scm:6132 +#: gnu/packages/gnome.scm:6899 msgid "Screen reader for individuals who are blind or visually impaired" msgstr "Skærmlæser for personer som er blinde eller har synsnedsættelse" -#: gnu/packages/gnome.scm:6135 +#: gnu/packages/gnome.scm:6902 msgid "" "Orca is a screen reader that provides access to the graphical desktop\n" "via speech and refreshable braille. Orca works with applications and toolkits\n" "that support the Assistive Technology Service Provider Interface (AT-SPI)." msgstr "" +#: gnu/packages/gnome.scm:6954 +msgid "GNOME's alternative spell checker" +msgstr "" + +#: gnu/packages/gnome.scm:6956 +msgid "" +"gspell provides a flexible API to add spell-checking to a GTK+\n" +"application. It provides a GObject API, spell-checking to text entries and\n" +"text views, and buttons to choose the language." +msgstr "" + +#: gnu/packages/gnome.scm:6998 +msgid "Project management software for the GNOME desktop" +msgstr "Projekthåndteringsprogram for GNOME-skrivebordet" + +#: gnu/packages/gnome.scm:7000 +msgid "" +"GNOME Planner is a project management tool based on the Work Breakdown\n" +"Structure (WBS). Its goal is to enable you to easily plan projects. Based on\n" +"the resources, tasks, and constraints that you define, Planner generates\n" +"various views into a project. For example, Planner can show a Gantt chart of\n" +"the project. It can show a detailed summary of tasks including their\n" +"duration, cost, and current progress. It can also show a report of resource\n" +"utilization that highlights under-utilized and over-utilized resources. These\n" +"views can be printed as PDF or PostScript files, or exported to HTML." +msgstr "" + +#: gnu/packages/gnome.scm:7066 +msgid "GNOME music playing application" +msgstr "GNOME's musikafspilningsprogram" + +#: gnu/packages/gnome.scm:7068 +msgid "" +"Lollypop is a music player designed to play well with GNOME desktop.\n" +"Lollypop plays audio formats such as mp3, mp4, ogg and flac and gets information\n" +"from artists and tracks from the web. It also fetches cover artworks\n" +"automatically and it can stream songs from online music services and charts." +msgstr "" + +#: gnu/packages/gnome.scm:7095 +msgid "Video effects for Cheese and other GNOME applications" +msgstr "Videoeffekter for Cheese og andre GNOME-programmer" + +#: gnu/packages/gnome.scm:7097 +msgid "" +"A collection of GStreamer video filters and effects to be used in\n" +"photo-booth-like software, such as Cheese." +msgstr "" + +#: gnu/packages/gnome.scm:7157 +msgid "Webcam photo booth software for GNOME" +msgstr "" + +#: gnu/packages/gnome.scm:7159 +msgid "" +"Cheese uses your webcam to take photos and videos. Cheese can also\n" +"apply fancy special effects and lets you share the fun with others." +msgstr "" + +#: gnu/packages/gnome.scm:7196 +msgid "Audio music cd ripper" +msgstr "" + +#: gnu/packages/gnome.scm:7197 +msgid "" +"Sound Juicer extracts audio from compact discs and convert it\n" +"into audio files that a personal computer or digital audio player can play.\n" +"It supports ripping to any audio codec supported by a GStreamer plugin, such as\n" +"mp3, Ogg Vorbis and FLAC" +msgstr "" + #: gnu/packages/gnuzilla.scm:118 msgid "Mozilla javascript engine" msgstr "Mozillas javascriptmotor" @@ -5066,57 +6303,57 @@ msgstr "" "SpiderMonkey er Mozillas JavaScript-motor skrevet\n" "i C/C++." -#: gnu/packages/gnuzilla.scm:276 +#: gnu/packages/gnuzilla.scm:280 msgid "Netscape API for system level and libc-like functions" msgstr "" -#: gnu/packages/gnuzilla.scm:277 +#: gnu/packages/gnuzilla.scm:281 msgid "" -"Netscape Portable Runtime (NSPR) provides a\n" +"Netscape Portable Runtime (@dfn{NSPR}) provides a\n" "platform-neutral API for system level and libc-like functions. It is used\n" "in the Mozilla clients." msgstr "" -#: gnu/packages/gnuzilla.scm:393 +#: gnu/packages/gnuzilla.scm:387 msgid "Network Security Services" msgstr "" -#: gnu/packages/gnuzilla.scm:395 +#: gnu/packages/gnuzilla.scm:389 msgid "" -"Network Security Services (NSS) is a set of libraries designed to support\n" -"cross-platform development of security-enabled client and server applications.\n" -"Applications built with NSS can support SSL v2 and v3, TLS, PKCS #5, PKCS #7,\n" -"PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other security\n" -"standards." +"Network Security Services (@dfn{NSS}) is a set of libraries designed to\n" +"support cross-platform development of security-enabled client and server\n" +"applications. Applications built with NSS can support SSL v2 and v3, TLS,\n" +"PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other\n" +"security standards." msgstr "" -#: gnu/packages/gnuzilla.scm:737 +#: gnu/packages/gnuzilla.scm:762 msgid "Entirely free browser derived from Mozilla Firefox" msgstr "" -#: gnu/packages/gnuzilla.scm:739 +#: gnu/packages/gnuzilla.scm:764 msgid "" "IceCat is the GNU version of the Firefox browser. It is entirely free\n" "software, which does not recommend non-free plugins and addons. It also\n" "features built-in privacy-protecting features." msgstr "" -#: gnu/packages/gtk.scm:96 +#: gnu/packages/gtk.scm:101 msgid "GNOME accessibility toolkit" msgstr "" -#: gnu/packages/gtk.scm:98 +#: gnu/packages/gtk.scm:103 msgid "" "ATK provides the set of accessibility interfaces that are implemented\n" "by other toolkits and applications. Using the ATK interfaces, accessibility\n" "tools have full access to view and control running applications." msgstr "" -#: gnu/packages/gtk.scm:138 +#: gnu/packages/gtk.scm:143 msgid "2D graphics library" msgstr "2D-grafikbibliotek" -#: gnu/packages/gtk.scm:140 +#: gnu/packages/gtk.scm:145 msgid "" "Cairo is a 2D graphics library with support for multiple output devices.\n" "Currently supported output targets include the X Window System (via both\n" @@ -5134,56 +6371,56 @@ msgid "" "affine transformation (scale, rotation, shear, etc.)." msgstr "" -#: gnu/packages/gtk.scm:168 +#: gnu/packages/gtk.scm:173 msgid "2D graphics library (with X11 support)" msgstr "2D-grafikbibliotek (med X11-understøttelse)" -#: gnu/packages/gtk.scm:201 +#: gnu/packages/gtk.scm:206 msgid "OpenType text shaping engine" msgstr "OpenType-tekstformningsmotor" -#: gnu/packages/gtk.scm:203 +#: gnu/packages/gtk.scm:208 msgid "HarfBuzz is an OpenType text shaping engine." msgstr "HarfBuzz er et OpenType-tekstformningsmotor." -#: gnu/packages/gtk.scm:234 +#: gnu/packages/gtk.scm:239 msgid "GNOME text and font handling library" msgstr "" -#: gnu/packages/gtk.scm:236 +#: gnu/packages/gtk.scm:241 msgid "" "Pango is the core text and font handling library used in GNOME\n" "applications. It has extensive support for the different writing systems\n" "used throughout the world." msgstr "" -#: gnu/packages/gtk.scm:262 +#: gnu/packages/gtk.scm:267 msgid "Obsolete pango functions" msgstr "" -#: gnu/packages/gtk.scm:263 +#: gnu/packages/gtk.scm:268 msgid "" "Pangox was a X backend to pango. It is now obsolete and no\n" "longer provided by recent pango releases. pangox-compat provides the\n" "functions which were removed." msgstr "" -#: gnu/packages/gtk.scm:299 +#: gnu/packages/gtk.scm:305 msgid "GTK+ widget for interactive graph-like environments" msgstr "" -#: gnu/packages/gtk.scm:301 +#: gnu/packages/gtk.scm:307 msgid "" "Ganv is an interactive GTK+ widget for interactive “boxes and lines” or\n" "graph-like environments, e.g. modular synths or finite state machine\n" "diagrams." msgstr "" -#: gnu/packages/gtk.scm:369 +#: gnu/packages/gtk.scm:376 msgid "Widget that extends the standard GTK+ 2.x 'GtkTextView' widget" msgstr "" -#: gnu/packages/gtk.scm:371 +#: gnu/packages/gtk.scm:378 msgid "" "GtkSourceView is a portable C library that extends the standard GTK+\n" "framework for multiline text editing with support for configurable syntax\n" @@ -5191,56 +6428,56 @@ msgid "" "printing and other features typical of a source code editor." msgstr "" -#: gnu/packages/gtk.scm:420 +#: gnu/packages/gtk.scm:427 msgid "GNOME source code widget" msgstr "" -#: gnu/packages/gtk.scm:421 +#: gnu/packages/gtk.scm:428 msgid "" "GtkSourceView is a text widget that extends the standard\n" "GTK+ text widget GtkTextView. It improves GtkTextView by implementing syntax\n" "highlighting and other features typical of a source code editor." msgstr "" -#: gnu/packages/gtk.scm:472 +#: gnu/packages/gtk.scm:478 msgid "GNOME image loading and manipulation library" msgstr "" -#: gnu/packages/gtk.scm:474 +#: gnu/packages/gtk.scm:480 msgid "" "GdkPixbuf is a library for image loading and manipulation developed\n" "in the GNOME project." msgstr "" -#: gnu/packages/gtk.scm:506 +#: gnu/packages/gtk.scm:512 msgid "GNOME image loading and manipulation library, with SVG support" msgstr "GNOME-billedindlæsnings- og manipuleringsbibliotek, med SVG-understøttelse" -#: gnu/packages/gtk.scm:546 +#: gnu/packages/gtk.scm:552 msgid "Assistive Technology Service Provider Interface, core components" msgstr "" -#: gnu/packages/gtk.scm:548 +#: gnu/packages/gtk.scm:554 msgid "" "The Assistive Technology Service Provider Interface, core components,\n" "is part of the GNOME accessibility project." msgstr "" -#: gnu/packages/gtk.scm:581 +#: gnu/packages/gtk.scm:587 msgid "Assistive Technology Service Provider Interface, ATK bindings" msgstr "" -#: gnu/packages/gtk.scm:583 +#: gnu/packages/gtk.scm:589 msgid "" "The Assistive Technology Service Provider Interface\n" "is part of the GNOME accessibility project." msgstr "" -#: gnu/packages/gtk.scm:642 +#: gnu/packages/gtk.scm:648 msgid "Cross-platform toolkit for creating graphical user interfaces" msgstr "" -#: gnu/packages/gtk.scm:644 +#: gnu/packages/gtk.scm:650 msgid "" "GTK+, or the GIMP Toolkit, is a multi-platform toolkit for creating\n" "graphical user interfaces. Offering a complete set of widgets, GTK+ is\n" @@ -5248,11 +6485,11 @@ msgid "" "application suites." msgstr "" -#: gnu/packages/gtk.scm:795 +#: gnu/packages/gtk.scm:812 msgid "Cairo bindings for GNU Guile" msgstr "" -#: gnu/packages/gtk.scm:797 +#: gnu/packages/gtk.scm:814 msgid "" "Guile-Cairo wraps the Cairo graphics library for Guile Scheme.\n" "Guile-Cairo is complete, wrapping almost all of the Cairo API. It is API\n" @@ -5262,21 +6499,21 @@ msgid "" "exceptions, macros, and a dynamic programming environment." msgstr "" -#: gnu/packages/gtk.scm:837 +#: gnu/packages/gtk.scm:860 msgid "Render SVG images using Cairo from Guile" msgstr "" -#: gnu/packages/gtk.scm:839 +#: gnu/packages/gtk.scm:862 msgid "" "Guile-RSVG wraps the RSVG library for Guile, allowing you to render SVG\n" "images onto Cairo surfaces." msgstr "" -#: gnu/packages/gtk.scm:883 +#: gnu/packages/gtk.scm:907 msgid "Create SVG or PDF presentations in Guile" msgstr "Opret SVG- eller PDF-præsentationer i Guile" -#: gnu/packages/gtk.scm:885 +#: gnu/packages/gtk.scm:909 msgid "" "Guile-Present defines a declarative vocabulary for presentations,\n" "together with tools to render presentation documents as SVG or PDF.\n" @@ -5285,51 +6522,51 @@ msgid "" "documents." msgstr "" -#: gnu/packages/gtk.scm:939 +#: gnu/packages/gtk.scm:963 msgid "Guile interface for GTK+ programming for GNOME" msgstr "Guile brugerflade til GTK+-programmering for GNOME" -#: gnu/packages/gtk.scm:941 +#: gnu/packages/gtk.scm:965 msgid "" "Includes guile-clutter, guile-gnome-gstreamer,\n" "guile-gnome-platform (GNOME developer libraries), and guile-gtksourceview." msgstr "" -#: gnu/packages/gtk.scm:972 +#: gnu/packages/gtk.scm:998 msgid "C++ bindings to the Cairo 2D graphics library" msgstr "C++-bindinger til CAiro 2D-grafikbiblioteket" -#: gnu/packages/gtk.scm:974 +#: gnu/packages/gtk.scm:1000 msgid "" "Cairomm provides a C++ programming interface to the Cairo 2D graphics\n" "library." msgstr "" -#: gnu/packages/gtk.scm:998 +#: gnu/packages/gtk.scm:1024 msgid "C++ interface to the Pango text rendering library" msgstr "C++-grænseflade til tekstoptegningsbiblioteket Pango" -#: gnu/packages/gtk.scm:1000 +#: gnu/packages/gtk.scm:1026 msgid "" "Pangomm provides a C++ programming interface to the Pango text rendering\n" "library." msgstr "" -#: gnu/packages/gtk.scm:1021 +#: gnu/packages/gtk.scm:1047 msgid "C++ interface to the ATK accessibility library" msgstr "C++-grænseflade til ATK-tilgængelighedsbiblioteket" -#: gnu/packages/gtk.scm:1023 +#: gnu/packages/gtk.scm:1049 msgid "" "ATKmm provides a C++ programming interface to the ATK accessibility\n" "toolkit." msgstr "" -#: gnu/packages/gtk.scm:1063 +#: gnu/packages/gtk.scm:1093 msgid "C++ interface to the GTK+ graphical user interface library" msgstr "" -#: gnu/packages/gtk.scm:1065 +#: gnu/packages/gtk.scm:1095 msgid "" "gtkmm is the official C++ interface for the popular GUI library GTK+.\n" "Highlights include typesafe callbacks, and a comprehensive set of widgets that\n" @@ -5338,30 +6575,86 @@ msgid "" "extensive documentation, including API reference and a tutorial." msgstr "" -#: gnu/packages/gtk.scm:1124 +#: gnu/packages/gtk.scm:1144 +msgid "C++ interface to the GTK+ 'GtkTextView' widget" +msgstr "C++-grænseflade til GTK+ »GtkTextView«-kontrollen" + +#: gnu/packages/gtk.scm:1146 +msgid "" +"gtksourceviewmm is a portable C++ library that extends the standard GTK+\n" +"framework for multiline text editing with support for configurable syntax\n" +"highlighting, unlimited undo/redo, search and replace, a completion framework,\n" +"printing and other features typical of a source code editor." +msgstr "" + +#: gnu/packages/gtk.scm:1186 msgid "Python bindings for cairo" msgstr "Pythonbindinger for cairo" -#: gnu/packages/gtk.scm:1126 +#: gnu/packages/gtk.scm:1188 msgid "Pycairo is a set of Python bindings for the Cairo graphics library." msgstr "Pycairo er et sæt af Pythonbindinger for grafikbiblioteket Cairo." -#: gnu/packages/gtk.scm:1210 +#: gnu/packages/gtk.scm:1272 msgid "Python bindings for GTK+" msgstr "Pythonbindinger for GTK+" -#: gnu/packages/gtk.scm:1212 +#: gnu/packages/gtk.scm:1274 msgid "" "PyGTK allows you to write full featured GTK programs in Python. It is\n" "targeted at GTK 2.x, and can be used in conjunction with gnome-python to\n" "write GNOME applications." msgstr "" -#: gnu/packages/gtk.scm:1243 +#: gnu/packages/gtk.scm:1298 +msgid "Perl interface to the cairo 2d vector graphics library" +msgstr "Perlgrænseflade til cairo 2D-vektorgrafikbiblioteket" + +#: gnu/packages/gtk.scm:1299 +msgid "" +"Cairo provides Perl bindings for the vector graphics library\n" +"cairo. It supports multiple output targets, including PNG, PDF and SVG. Cairo\n" +"produces identical output on all those targets." +msgstr "" + +#: gnu/packages/gtk.scm:1324 +msgid "Perl interface to the 2.x series of the Gimp Toolkit library" +msgstr "Perlgrænseflade til 2.x-serien for Gimp Toolkit-biblioteket" + +#: gnu/packages/gtk.scm:1325 +msgid "" +"Perl bindings to the 2.x series of the Gtk+ widget set.\n" +"This module allows you to write graphical user interfaces in a Perlish and\n" +"object-oriented way, freeing you from the casting and memory management in C,\n" +"yet remaining very close in spirit to original API." +msgstr "" + +#: gnu/packages/gtk.scm:1352 +msgid "Layout and render international text" +msgstr "" + +#: gnu/packages/gtk.scm:1353 +msgid "" +"Pango is a library for laying out and rendering text, with an\n" +"emphasis on internationalization. Pango can be used anywhere that text layout\n" +"is needed, but using Pango in conjunction with Cairo and/or Gtk2 provides a\n" +"complete solution with high quality text handling and graphics rendering.\n" +"\n" +"Dynamically loaded modules handle text layout for particular combinations of\n" +"script and font backend. Pango provides a wide selection of modules, including\n" +"modules for Hebrew, Arabic, Hangul, Thai, and a number of Indic scripts.\n" +"Virtually all of the world's major scripts are supported.\n" +"\n" +"In addition to the low level layout rendering routines, Pango includes\n" +"@code{Pango::Layout}, a high level driver for laying out entire blocks of text,\n" +"and routines to assist in editing internationalized text." +msgstr "" + +#: gnu/packages/gtk.scm:1412 msgid "Library for minimalistic gtk+3 user interfaces" msgstr "" -#: gnu/packages/gtk.scm:1244 +#: gnu/packages/gtk.scm:1413 msgid "" "Girara is a library that implements a user interface that\n" "focuses on simplicity and minimalism. Currently based on GTK+, a\n" @@ -5372,75 +6665,75 @@ msgid "" "information." msgstr "" -#: gnu/packages/gtk.scm:1306 +#: gnu/packages/gtk.scm:1480 msgid "Documentation generator from C source code" msgstr "" -#: gnu/packages/gtk.scm:1308 +#: gnu/packages/gtk.scm:1482 msgid "" "GTK-Doc generates API documentation from comments added to C code. It is\n" "typically used to document the public API of GTK+ and GNOME libraries, but it\n" "can also be used to document application code." msgstr "" -#: gnu/packages/gtk.scm:1336 +#: gnu/packages/gtk.scm:1510 msgid "Theming engines for GTK+ 2.x" msgstr "" -#: gnu/packages/gtk.scm:1338 +#: gnu/packages/gtk.scm:1512 msgid "" "This package contains the standard GTK+ 2.x theming engines including\n" "Clearlooks, Crux, High Contrast, Industrial, LighthouseBlue, Metal, Mist,\n" "Redmond95 and ThinIce." msgstr "" -#: gnu/packages/gtk.scm:1366 +#: gnu/packages/gtk.scm:1540 msgid "Cairo-based theming engine for GTK+ 2.x" msgstr "" -#: gnu/packages/gtk.scm:1368 +#: gnu/packages/gtk.scm:1542 msgid "" "Murrine is a cairo-based GTK+ theming engine. It is named after the\n" "glass artworks done by Venicians glass blowers." msgstr "" -#: gnu/packages/gtk.scm:1393 +#: gnu/packages/gtk.scm:1569 msgid "Spell-checking addon for GTK's TextView widget" msgstr "" -#: gnu/packages/gtk.scm:1395 +#: gnu/packages/gtk.scm:1571 msgid "" "GtkSpell provides word-processor-style highlighting and replacement of\n" "misspelled words in a GtkTextView widget." msgstr "" -#: gnu/packages/gtk.scm:1418 +#: gnu/packages/gtk.scm:1594 msgid "Lightweight GTK+ clipboard manager" msgstr "" -#: gnu/packages/gtk.scm:1420 +#: gnu/packages/gtk.scm:1596 msgid "" "ClipIt is a clipboard manager with features such as a history, search\n" "thereof, global hotkeys and clipboard item actions. It was forked from\n" "Parcellite and adds bugfixes and features." msgstr "" -#: gnu/packages/gtk.scm:1457 +#: gnu/packages/gtk.scm:1633 msgid "Thin layer of graphic data types" msgstr "" -#: gnu/packages/gtk.scm:1458 +#: gnu/packages/gtk.scm:1634 msgid "" "This library provides graphic types and their relative API;\n" "it does not deal with windowing system surfaces, drawing, scene graphs, or\n" "input." msgstr "" -#: gnu/packages/guile.scm:130 gnu/packages/guile.scm:205 +#: gnu/packages/guile.scm:134 gnu/packages/guile.scm:212 msgid "Scheme implementation intended especially for extensions" msgstr "" -#: gnu/packages/guile.scm:132 gnu/packages/guile.scm:207 +#: gnu/packages/guile.scm:136 gnu/packages/guile.scm:214 msgid "" "Guile is the GNU Ubiquitous Intelligent Language for Extensions, the\n" "official extension language of the GNU system. It is an implementation of\n" @@ -5449,11 +6742,22 @@ msgid "" "without requiring the source code to be rewritten." msgstr "" -#: gnu/packages/guile.scm:366 +#: gnu/packages/guile.scm:350 +msgid "Line editing support for GNU Guile" +msgstr "" + +#: gnu/packages/guile.scm:352 +msgid "" +"This module provides line editing support via the Readline library for\n" +"GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its\n" +"@code{activate-readline} procedure to enable it." +msgstr "" + +#: gnu/packages/guile.scm:471 msgid "Package manager for Guile" msgstr "Pakkehåndtering for Guile" -#: gnu/packages/guile.scm:368 +#: gnu/packages/guile.scm:473 msgid "" "Guildhall is a package manager written for Guile Scheme. A guild is\n" "an association of independent craftspeople. A guildhall is where they meet.\n" @@ -5467,11 +6771,11 @@ msgid "" "program can be installed in one go." msgstr "" -#: gnu/packages/guile.scm:425 +#: gnu/packages/guile.scm:565 msgid "Web application framework written in Guile" msgstr "" -#: gnu/packages/guile.scm:426 +#: gnu/packages/guile.scm:566 msgid "" "GNU Artanis is a web application framework written in Guile\n" "Scheme. A web application framework (WAF) is a software framework that is\n" @@ -5483,11 +6787,11 @@ msgid "" "more." msgstr "" -#: gnu/packages/guile.scm:452 +#: gnu/packages/guile.scm:592 msgid "Framework for building readers for GNU Guile" msgstr "Ramme til at bygge læsere for GNU Guile" -#: gnu/packages/guile.scm:454 +#: gnu/packages/guile.scm:594 msgid "" "Guile-Reader is a simple framework for building readers for GNU Guile.\n" "\n" @@ -5502,11 +6806,11 @@ msgid "" "many readers as needed)." msgstr "" -#: gnu/packages/guile.scm:508 +#: gnu/packages/guile.scm:648 msgid "Guile bindings to ncurses" msgstr "Guilebindinger til ncurses" -#: gnu/packages/guile.scm:510 +#: gnu/packages/guile.scm:650 msgid "" "guile-ncurses provides Guile language bindings for the ncurses\n" "library." @@ -5514,11 +6818,11 @@ msgstr "" "guile-ncurses tilbyder Guile-sprogbindinger for biblioteket\n" "ncurses." -#: gnu/packages/guile.scm:530 +#: gnu/packages/guile.scm:708 msgid "Run jobs at scheduled times" msgstr "Afvikl job på planlagte tidspunkter" -#: gnu/packages/guile.scm:532 +#: gnu/packages/guile.scm:710 msgid "" "GNU Mcron is a complete replacement for Vixie cron. It is used to run\n" "tasks on a schedule, such as every hour or every Monday. Mcron is written in\n" @@ -5526,11 +6830,11 @@ msgid "" "format is also supported." msgstr "" -#: gnu/packages/guile.scm:619 +#: gnu/packages/guile.scm:752 msgid "Guile parser library for the iCalendar format" msgstr "Guile-fortolkerbibliotek for iCalendar-formatet" -#: gnu/packages/guile.scm:621 +#: gnu/packages/guile.scm:754 msgid "" "Guile-ICS is an iCalendar (RFC5545) format parser library written in\n" "pure Scheme. The library can be used to read and write iCalendar data.\n" @@ -5538,11 +6842,11 @@ msgid "" "The library is shipped with documentation in Info format and usage examples." msgstr "" -#: gnu/packages/guile.scm:656 +#: gnu/packages/guile.scm:789 msgid "Collection of useful Guile Scheme modules" msgstr "" -#: gnu/packages/guile.scm:658 +#: gnu/packages/guile.scm:791 msgid "" "Guile-Lib is intended as an accumulation place for pure-scheme Guile\n" "modules, allowing for people to cooperate integrating their generic Guile\n" @@ -5550,11 +6854,11 @@ msgid "" "for Guile\"." msgstr "" -#: gnu/packages/guile.scm:696 +#: gnu/packages/guile.scm:832 msgid "JSON module for Guile" msgstr "JSON-modul for Guile" -#: gnu/packages/guile.scm:698 +#: gnu/packages/guile.scm:834 msgid "" "Guile-JSON supports parsing and building JSON documents according to the\n" "specification. These are the main features:\n" @@ -5567,11 +6871,11 @@ msgid "" "@end itemize\n" msgstr "" -#: gnu/packages/guile.scm:782 +#: gnu/packages/guile.scm:921 msgid "MiniKanren declarative logic system, packaged for Guile" msgstr "" -#: gnu/packages/guile.scm:784 +#: gnu/packages/guile.scm:923 msgid "" "MiniKanren is a relational programming extension to the Scheme\n" "programming Language, written as a smaller version of Kanren suitable for\n" @@ -5584,13 +6888,13 @@ msgid "" "See http://minikanren.org/ for more on miniKanren generally." msgstr "" -#: gnu/packages/guile.scm:855 +#: gnu/packages/guile.scm:994 msgid "" "Minimal implementation of incremental computation in Guile\n" "Scheme" msgstr "" -#: gnu/packages/guile.scm:857 +#: gnu/packages/guile.scm:996 msgid "" "This package provides a complete Scheme implementation of\n" "miniAdapton, which implements the core functionality of the Adapton system for\n" @@ -5601,51 +6905,51 @@ msgid "" "understand, extend, and port to host languages other than Scheme." msgstr "" -#: gnu/packages/guile.scm:941 +#: gnu/packages/guile.scm:1080 msgid "S-expression based regular expressions" msgstr "" -#: gnu/packages/guile.scm:943 +#: gnu/packages/guile.scm:1082 msgid "" "Irregex is an s-expression based alternative to your classic\n" "string-based regular expressions. It implements SRFI 115 and is deeply\n" "inspired by the SCSH regular expression system." msgstr "" -#: gnu/packages/guile.scm:1024 +#: gnu/packages/guile.scm:1166 msgid "Guile bindings to the GDBM library via Guile's FFI" msgstr "" -#: gnu/packages/guile.scm:1026 +#: gnu/packages/guile.scm:1168 msgid "" "Guile bindings to the GDBM key-value storage system, using\n" "Guile's foreign function interface." msgstr "" -#: gnu/packages/guile.scm:1079 +#: gnu/packages/guile.scm:1225 msgid "Access SQLite databases from Guile" msgstr "Tilgå SQLite-databaser fra Guile" -#: gnu/packages/guile.scm:1081 +#: gnu/packages/guile.scm:1227 msgid "This package provides Guile bindings to the SQLite database system." msgstr "Denne pakke tilbyder Guilebindinger til SQLite-databasesystemet." -#: gnu/packages/guile.scm:1126 +#: gnu/packages/guile.scm:1275 msgid "Functional static site generator" msgstr "" -#: gnu/packages/guile.scm:1127 +#: gnu/packages/guile.scm:1276 msgid "" "Haunt is a static site generator written in Guile\n" "Scheme. Haunt features a functional build system and an extensible\n" "interface for reading articles in any format." msgstr "" -#: gnu/packages/guile.scm:1154 +#: gnu/packages/guile.scm:1314 msgid "Guile application configuration parsing library" msgstr "" -#: gnu/packages/guile.scm:1156 +#: gnu/packages/guile.scm:1316 msgid "" "Guile Config is a library providing a declarative approach to\n" "application configuration specification. The library provides clean\n" @@ -5656,43 +6960,43 @@ msgid "" "above command-line parameters." msgstr "" -#: gnu/packages/guile.scm:1194 +#: gnu/packages/guile.scm:1354 msgid "Redis client library for Guile" msgstr "" -#: gnu/packages/guile.scm:1195 +#: gnu/packages/guile.scm:1355 msgid "" "Guile-redis provides a Scheme interface to the Redis\n" "key-value cache and store." msgstr "" -#: gnu/packages/guile.scm:1272 +#: gnu/packages/guile.scm:1429 msgid "Whitespace to lisp syntax for Guile" msgstr "" -#: gnu/packages/guile.scm:1273 +#: gnu/packages/guile.scm:1430 msgid "" "Wisp is a syntax for Guile which provides a Python-like\n" "whitespace-significant language. It may be easier on the eyes for some\n" "users and in some situations." msgstr "" -#: gnu/packages/guile.scm:1306 +#: gnu/packages/guile.scm:1480 msgid "2D/3D game engine for GNU Guile" msgstr "" -#: gnu/packages/guile.scm:1307 +#: gnu/packages/guile.scm:1481 msgid "" "Sly is a 2D/3D game engine written in Guile Scheme. Sly\n" "features a functional reactive programming interface and live coding\n" "capabilities." msgstr "" -#: gnu/packages/guile.scm:1342 +#: gnu/packages/guile.scm:1517 msgid "Generate C bindings for Guile" msgstr "" -#: gnu/packages/guile.scm:1343 +#: gnu/packages/guile.scm:1518 msgid "" "G-Wrap is a tool and Guile library for generating function\n" "wrappers for inter-language calls. It currently only supports generating Guile\n" @@ -5701,11 +7005,11 @@ msgid "" "provides access to that interface and its types from the Scheme level." msgstr "" -#: gnu/packages/guile.scm:1380 +#: gnu/packages/guile.scm:1555 msgid "Guile database abstraction layer" msgstr "Guile-databaseabstraktionslag" -#: gnu/packages/guile.scm:1383 +#: gnu/packages/guile.scm:1558 msgid "" "guile-dbi is a library for Guile that provides a convenient interface to\n" "SQL databases. Database programming with guile-dbi is generic in that the same\n" @@ -5713,43 +7017,54 @@ msgid "" "It currently supports MySQL, Postgres and SQLite3." msgstr "" -#: gnu/packages/guile.scm:1409 +#: gnu/packages/guile.scm:1584 msgid "Guile DBI driver for SQLite" msgstr "Guile DBI-driver for SQLite" -#: gnu/packages/guile.scm:1412 +#: gnu/packages/guile.scm:1587 msgid "" "guile-dbi is a library for Guile that provides a convenient interface to\n" "SQL databases. This package implements the interface for SQLite." msgstr "" -#: gnu/packages/guile.scm:1438 +#: gnu/packages/guile.scm:1633 +msgid "DSV module for Guile" +msgstr "DSV-modul for Guile" + +#: gnu/packages/guile.scm:1635 +msgid "" +"Guile-DSV is a GNU Guile module for working with the\n" +"delimiter-separated values (DSV) data format. Guile-DSV supports the\n" +"Unix-style DSV format and RFC 4180 format." +msgstr "" + +#: gnu/packages/guile.scm:1662 msgid "XOSD bindings for Guile" msgstr "XOSD-bindinger for Guile" -#: gnu/packages/guile.scm:1440 +#: gnu/packages/guile.scm:1664 msgid "" "Guile-XOSD provides Guile bindings for @code{libxosd},\n" "@uref{http://sourceforge.net/projects/libxosd/, the X On Screen Display\n" "library}." msgstr "" -#: gnu/packages/guile.scm:1463 +#: gnu/packages/guile.scm:1687 msgid "Evaluate code in a running Guile process" msgstr "Evaluer kode i en kørende Guileproces" -#: gnu/packages/guile.scm:1465 +#: gnu/packages/guile.scm:1689 msgid "" "Guile-Daemon is a small Guile program that loads your initial\n" "configuration file, and then reads and evaluates Guile expressions that\n" "you send to a FIFO file." msgstr "" -#: gnu/packages/guile.scm:1496 +#: gnu/packages/guile.scm:1720 msgid "CommonMark parser for Guile" -msgstr "" +msgstr "CommonMark-fortolker for Guile" -#: gnu/packages/guile.scm:1498 +#: gnu/packages/guile.scm:1722 msgid "" "guile-commonmark is a library for parsing CommonMark, a fully specified\n" "variant of Markdown. The library is written in Guile Scheme and is designed\n" @@ -5758,11 +7073,11 @@ msgid "" "is no support for parsing block and inline level HTML." msgstr "" -#: gnu/packages/guile.scm:1584 +#: gnu/packages/guile.scm:1753 msgid "Structured access to bytevector contents for Guile" msgstr "" -#: gnu/packages/guile.scm:1586 +#: gnu/packages/guile.scm:1755 msgid "" "Guile bytestructures offers a system imitating the type system\n" "of the C programming language, to be used on bytevectors. C's type\n" @@ -5771,21 +7086,21 @@ msgid "" "type system, elevating types to first-class status." msgstr "" -#: gnu/packages/guile.scm:1627 +#: gnu/packages/guile.scm:1799 msgid "Spell-checking from Guile" msgstr "" -#: gnu/packages/guile.scm:1629 +#: gnu/packages/guile.scm:1801 msgid "" "guile-aspell is a Guile Scheme library for comparing a string against a\n" "dictionary and suggesting spelling corrections." msgstr "" -#: gnu/packages/guile.scm:1679 +#: gnu/packages/guile.scm:1855 msgid "Extend Bash using Guile" msgstr "" -#: gnu/packages/guile.scm:1681 +#: gnu/packages/guile.scm:1857 #, scheme-format msgid "" "Guile-Bash provides a shared library and set of Guile modules,\n" @@ -5810,11 +7125,11 @@ msgid "" "and then run @command{scm example.scm}." msgstr "" -#: gnu/packages/guile.scm:1728 +#: gnu/packages/guile.scm:1904 msgid "Asynchronous actor model library for Guile" msgstr "" -#: gnu/packages/guile.scm:1730 +#: gnu/packages/guile.scm:1906 msgid "" "GNU 8sync (pronounced \"eight-sync\") is an asynchronous programming\n" "library for GNU Guile based on the actor model.\n" @@ -5822,11 +7137,11 @@ msgid "" "Note that 8sync is only available for Guile 2.2." msgstr "" -#: gnu/packages/guile.scm:1753 +#: gnu/packages/guile.scm:1929 msgid "Lightweight concurrency facility for Guile" msgstr "" -#: gnu/packages/guile.scm:1755 +#: gnu/packages/guile.scm:1931 msgid "" "Fibers is a Guile library that implements a a lightweight concurrency\n" "facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber is\n" @@ -5840,11 +7155,11 @@ msgid "" "is not available for Guile 2.0." msgstr "" -#: gnu/packages/guile.scm:1797 +#: gnu/packages/guile.scm:1987 msgid "Guile bindings for libgit2" msgstr "Guilebindinger for libgit2" -#: gnu/packages/guile.scm:1799 +#: gnu/packages/guile.scm:1989 msgid "" "This package provides Guile bindings to libgit2, a library to\n" "manipulate repositories of the Git version control system." @@ -5852,11 +7167,11 @@ msgstr "" "Denne pakke tilbyder Guilebindinger til libgit2, et bibliotek\n" "til at manipulere arkiver i versionskontrolsystemet Git." -#: gnu/packages/guile.scm:1830 +#: gnu/packages/guile.scm:2014 msgid "General-purpose syntax highlighter for GNU Guile" msgstr "" -#: gnu/packages/guile.scm:1831 +#: gnu/packages/guile.scm:2015 msgid "" "Guile-syntax-highlight is a general-purpose syntax\n" "highlighting library for GNU Guile. It can parse code written in various\n" @@ -5864,21 +7179,29 @@ msgid "" "HTML (via SXML) or any other format for rendering." msgstr "" -#: gnu/packages/guile.scm:1862 +#: gnu/packages/guile.scm:2046 msgid "S-expression based json reader/writer for Guile" msgstr "S-udtryksbaseret json læser/skriver for Guile" -#: gnu/packages/guile.scm:1863 +#: gnu/packages/guile.scm:2047 msgid "" "guile-sjson is a json reader/writer for Guile.\n" "It has a nice, simple s-expression based syntax." msgstr "" -#: gnu/packages/imagemagick.scm:109 gnu/packages/imagemagick.scm:214 +#: gnu/packages/guile.scm:2091 +msgid "Colorized REPL for Guile" +msgstr "" + +#: gnu/packages/guile.scm:2093 +msgid "Guile-colorized provides you with a colorized REPL for GNU Guile." +msgstr "" + +#: gnu/packages/imagemagick.scm:110 gnu/packages/imagemagick.scm:211 msgid "Create, edit, compose, or convert bitmap images" msgstr "Opret, rediger, komponer eller konverter bitmap-billeder" -#: gnu/packages/imagemagick.scm:111 +#: gnu/packages/imagemagick.scm:112 msgid "" "ImageMagick is a software suite to create, edit, compose, or convert\n" "bitmap images. It can read and write images in a variety of formats (over 100)\n" @@ -5888,11 +7211,11 @@ msgid "" "text, lines, polygons, ellipses and Bézier curves." msgstr "" -#: gnu/packages/imagemagick.scm:156 +#: gnu/packages/imagemagick.scm:157 msgid "Perl interface to ImageMagick" msgstr "Perlgrænseflade til ImageMagick" -#: gnu/packages/imagemagick.scm:157 +#: gnu/packages/imagemagick.scm:158 msgid "" "This Perl extension allows the reading, manipulation and\n" "writing of a large number of image file formats using the ImageMagick library.\n" @@ -5900,49 +7223,60 @@ msgid "" "script." msgstr "" -#: gnu/packages/imagemagick.scm:216 +#: gnu/packages/imagemagick.scm:213 msgid "" "GraphicsMagick provides a comprehensive collection of utilities,\n" "programming interfaces, and GUIs, to support file format conversion, image\n" "processing, and 2D vector rendering." msgstr "" -#: gnu/packages/image.scm:88 +#: gnu/packages/image.scm:97 msgid "Library for handling PNG files" msgstr "Bibliotek for håndtering af PNG-filer" -#: gnu/packages/image.scm:90 +#: gnu/packages/image.scm:99 msgid "" "Libpng is the official PNG (Portable Network Graphics) reference\n" "library. It supports almost all PNG features and is extensible." msgstr "" -#: gnu/packages/image.scm:134 +#: gnu/packages/image.scm:163 msgid "APNG patch for libpng" msgstr "" -#: gnu/packages/image.scm:136 +#: gnu/packages/image.scm:165 msgid "" "APNG (Animated Portable Network Graphics) is an unofficial\n" "extension of the APNG (Portable Network Graphics) format.\n" "APNG patch provides APNG support to libpng." msgstr "" -#: gnu/packages/image.scm:189 +#: gnu/packages/image.scm:205 +msgid "Read and write PNG images" +msgstr "" + +#: gnu/packages/image.scm:207 +msgid "" +"This package provides an easy and simple way to read, write and display\n" +"bitmap images stored in the PNG format. It can read and write both files and\n" +"in-memory raw vectors." +msgstr "" + +#: gnu/packages/image.scm:242 msgid "Utility to compress PNG files" msgstr "Redskab til at komprimere PNG-filer" -#: gnu/packages/image.scm:190 +#: gnu/packages/image.scm:243 msgid "" "pngcrusqh is an optimizer for PNG (Portable Network Graphics)\n" "files. It can compress them as much as 40% losslessly." msgstr "" -#: gnu/packages/image.scm:205 +#: gnu/packages/image.scm:262 msgid "Library for handling JPEG files" msgstr "Bibliotek for håndtering af JPEG-filer" -#: gnu/packages/image.scm:207 +#: gnu/packages/image.scm:264 msgid "" "Libjpeg implements JPEG image encoding, decoding, and transcoding.\n" "JPEG is a standardized compression method for full-color and gray-scale\n" @@ -5951,32 +7285,32 @@ msgid "" "image files in PBMPLUS PPM/PGM, GIF, BMP, and Targa file formats." msgstr "" -#: gnu/packages/image.scm:272 +#: gnu/packages/image.scm:329 msgid "Implementation of the JPEG XR standard" msgstr "" -#: gnu/packages/image.scm:273 +#: gnu/packages/image.scm:330 msgid "" "JPEG XR is an approved ISO/IEC International standard (its\n" "official designation is ISO/IEC 29199-2). This library is an implementation of that standard." msgstr "" -#: gnu/packages/image.scm:296 +#: gnu/packages/image.scm:353 msgid "Optimize JPEG images" msgstr "Optimer JPEG-billeder" -#: gnu/packages/image.scm:298 +#: gnu/packages/image.scm:355 msgid "" "jpegoptim provides lossless optimization (based on optimizing\n" "the Huffman tables) and \"lossy\" optimization based on setting\n" "maximum quality factor." msgstr "" -#: gnu/packages/image.scm:323 +#: gnu/packages/image.scm:380 msgid "Library for handling Mac OS icns resource files" msgstr "Bibliotek for håndtering af Mac OS-ikonressourcefiler" -#: gnu/packages/image.scm:325 +#: gnu/packages/image.scm:382 msgid "" "Libicns is a library for the manipulation of Mac OS IconFamily resource\n" "type files (ICNS). @command{icns2png} and @command{png2icns} are provided to\n" @@ -5986,11 +7320,11 @@ msgid "" "extracting icontainer icon files." msgstr "" -#: gnu/packages/image.scm:377 +#: gnu/packages/image.scm:416 msgid "Library for handling TIFF files" msgstr "Bibliotek for håndtering af TIFF-filer" -#: gnu/packages/image.scm:379 +#: gnu/packages/image.scm:418 msgid "" "Libtiff provides support for the Tag Image File Format (TIFF), a format\n" "used for storing image data.\n" @@ -5998,23 +7332,11 @@ msgid "" "collection of tools for doing simple manipulations of TIFF images." msgstr "" -#: gnu/packages/image.scm:435 -msgid "Library for reading images in the Microsoft WMF format" -msgstr "Bibliotek for læsning af billeder i Microsoft WMF-formatet" - -#: gnu/packages/image.scm:437 -msgid "" -"libwmf is a library for reading vector images in Microsoft's native\n" -"Windows Metafile Format (WMF) and for either (a) displaying them in, e.g., an X\n" -"window; or (b) converting them to more standard/free file formats such as, e.g.,\n" -"the W3C's XML-based Scaleable Vector Graphic (SVG) format." -msgstr "" - -#: gnu/packages/image.scm:490 +#: gnu/packages/image.scm:481 msgid "Library and tools for image processing and analysis" msgstr "Bibliotek og værktøjer for billedbehandling og analyse" -#: gnu/packages/image.scm:492 +#: gnu/packages/image.scm:483 msgid "" "Leptonica is a C library and set of command-line tools for efficient\n" "image processing and image analysis operations. It supports rasterop, affine\n" @@ -6024,11 +7346,11 @@ msgid "" "arithmetic ops." msgstr "" -#: gnu/packages/image.scm:515 +#: gnu/packages/image.scm:504 msgid "Decoder of the JBIG2 image compression format" msgstr "" -#: gnu/packages/image.scm:517 +#: gnu/packages/image.scm:506 msgid "" "JBIG2 is designed for lossy or lossless encoding of 'bilevel' (1-bit\n" "monochrome) images at moderately high resolution, and in particular scanned\n" @@ -6041,11 +7363,11 @@ msgid "" "work." msgstr "" -#: gnu/packages/image.scm:554 +#: gnu/packages/image.scm:541 msgid "JPEG 2000 codec" msgstr "JPEG 2000-kodning" -#: gnu/packages/image.scm:556 +#: gnu/packages/image.scm:543 msgid "" "The OpenJPEG library is a JPEG 2000 codec written in C. It has\n" "been developed in order to promote the use of JPEG 2000, the new\n" @@ -6058,11 +7380,11 @@ msgid "" "error-resilience, a Java-viewer for j2k-images, ..." msgstr "" -#: gnu/packages/image.scm:619 +#: gnu/packages/image.scm:608 msgid "Tools and library for working with GIF images" msgstr "Værktøjer og bibliotek for arbejde med GIF-billeder" -#: gnu/packages/image.scm:621 +#: gnu/packages/image.scm:610 msgid "" "GIFLIB is a library for reading and writing GIF images. It is API and\n" "ABI compatible with libungif which was in wide use while the LZW compression\n" @@ -6070,19 +7392,19 @@ msgid "" "compose, and analyze GIF images." msgstr "" -#: gnu/packages/image.scm:643 +#: gnu/packages/image.scm:632 msgid "GIF decompression library" msgstr "GIF-dekomprimeringsbibliotek" -#: gnu/packages/image.scm:645 +#: gnu/packages/image.scm:634 msgid "libungif is the old GIF decompression library by the GIFLIB project." msgstr "libungif er det gamle GIF-dekomprimeringsbibliotek af GIFLIB-projektet." -#: gnu/packages/image.scm:674 +#: gnu/packages/image.scm:663 msgid "Loading, saving, rendering and manipulating image files" msgstr "Indlæs, gem, optegn og manipuler billedfiler" -#: gnu/packages/image.scm:676 +#: gnu/packages/image.scm:665 msgid "" "Imlib2 is a library that does image file loading and saving as well as\n" "rendering, manipulation, arbitrary polygon support, etc.\n" @@ -6095,32 +7417,32 @@ msgid "" "more modular, simple, and flexible." msgstr "" -#: gnu/packages/image.scm:708 +#: gnu/packages/image.scm:697 msgid "Wrapper library for imlib2" msgstr "Omslagsbibliotek for imlib2" -#: gnu/packages/image.scm:710 +#: gnu/packages/image.scm:699 msgid "" "Giblib is a simple library which wraps imlib2's context API, avoiding\n" "all the context_get/set calls, adds fontstyles to the truetype renderer and\n" "supplies a generic doubly-linked list and some string functions." msgstr "" -#: gnu/packages/image.scm:752 +#: gnu/packages/image.scm:780 msgid "Library for handling popular graphics image formats" msgstr "Bibliotek til håndtering af populære grafiske billedformater" -#: gnu/packages/image.scm:754 +#: gnu/packages/image.scm:782 msgid "" "FreeImage is a library for developers who would like to support popular\n" "graphics image formats like PNG, BMP, JPEG, TIFF and others." msgstr "" -#: gnu/packages/image.scm:809 +#: gnu/packages/image.scm:837 msgid "Computer vision library" msgstr "" -#: gnu/packages/image.scm:811 +#: gnu/packages/image.scm:839 msgid "" "VIGRA stands for Vision with Generic Algorithms. It is an image\n" "processing and analysis library that puts its main emphasis on customizable\n" @@ -6128,11 +7450,11 @@ msgid "" "multi-dimensional image processing." msgstr "" -#: gnu/packages/image.scm:843 +#: gnu/packages/image.scm:881 msgid "Lossless and lossy image compression" msgstr "Billedkomprimering med og uden kvalitetetstab" -#: gnu/packages/image.scm:845 +#: gnu/packages/image.scm:883 msgid "" "WebP is a new image format that provides lossless and lossy compression\n" "for images. WebP lossless images are 26% smaller in size compared to\n" @@ -6144,52 +7466,52 @@ msgid "" "channels." msgstr "" -#: gnu/packages/image.scm:873 +#: gnu/packages/image.scm:911 msgid "Library for handling MNG files" msgstr "Bibliotek for håndtering af MNG-filer" -#: gnu/packages/image.scm:875 +#: gnu/packages/image.scm:913 msgid "Libmng is the MNG (Multiple-image Network Graphics) reference library." msgstr "Libmng er MNG-referencebiblioteket (Multiple-image Network Graphics)." -#: gnu/packages/image.scm:899 +#: gnu/packages/image.scm:941 msgid "Library and command-line utility to manage image metadata" msgstr "Bibliotek og kommandolinjeredskab til at håndtere billedmetadata" -#: gnu/packages/image.scm:901 +#: gnu/packages/image.scm:943 msgid "" "Exiv2 is a C++ library and a command line utility to manage image\n" "metadata. It provides fast and easy read and write access to the Exif, IPTC\n" "and XMP metadata of images in various formats." msgstr "" -#: gnu/packages/image.scm:941 +#: gnu/packages/image.scm:983 msgid "Library for manipulating many image formats" msgstr "Bibliotek for manipulering af mange billedformater" -#: gnu/packages/image.scm:942 +#: gnu/packages/image.scm:984 msgid "" "Developer's Image Library (DevIL) is a library to develop\n" "applications with support for many types of images. DevIL can load, save,\n" "convert, manipulate, filter and display a wide variety of image formats." msgstr "" -#: gnu/packages/image.scm:962 +#: gnu/packages/image.scm:1004 msgid "JPEG-2000 library" msgstr "JPEG-2000-bibliotek" -#: gnu/packages/image.scm:963 +#: gnu/packages/image.scm:1005 msgid "" "The JasPer Project is an initiative to provide a reference\n" "implementation of the codec specified in the JPEG-2000 Part-1 standard (i.e.,\n" "ISO/IEC 15444-1)." msgstr "" -#: gnu/packages/image.scm:993 +#: gnu/packages/image.scm:1035 msgid "Scaling, colorspace conversion, and dithering library" msgstr "" -#: gnu/packages/image.scm:994 +#: gnu/packages/image.scm:1036 msgid "" "Zimg implements the commonly required image processing basics\n" "of scaling, colorspace conversion, and depth conversion. A simple API enables\n" @@ -6197,11 +7519,11 @@ msgid "" "the programmer." msgstr "" -#: gnu/packages/image.scm:1027 +#: gnu/packages/image.scm:1069 msgid "Perceptual image comparison utility" msgstr "" -#: gnu/packages/image.scm:1028 +#: gnu/packages/image.scm:1070 msgid "" "PerceptualDiff visually compares two images to determine\n" "whether they look alike. It uses a computational model of the human visual\n" @@ -6209,36 +7531,33 @@ msgid "" "differences in file encoding, image quality, and other small variations." msgstr "" -#: gnu/packages/image.scm:1059 +#: gnu/packages/image.scm:1110 msgid "Image and audio steganography" msgstr "" -#: gnu/packages/image.scm:1061 +#: gnu/packages/image.scm:1112 msgid "" -"Steghide is a steganography program that is able to hide data in various\n" -"kinds of image- and audio-files. The color- respectivly sample-frequencies\n" -"are not changed thus making the embedding resistant against first-order\n" -"statistical tests." +"Steghide is a program to hide data in various kinds of image and audio\n" +"files (known as @dfn{steganography}). Neither color nor sample frequencies are\n" +"changed, making the embedding resistant against first-order statistical tests." msgstr "" -#: gnu/packages/image.scm:1087 +#: gnu/packages/image.scm:1137 msgid "Image library for Extempore" msgstr "Billedbibliotek for Extempore" -#: gnu/packages/image.scm:1089 +#: gnu/packages/image.scm:1139 msgid "" "This package is a collection of assorted single-file libraries. Of\n" "all included libraries only the image loading and decoding library is\n" "installed as @code{stb_image}." msgstr "" -#: gnu/packages/image.scm:1117 -msgid "" -"Optimizer that recompresses PNG image files to a\n" -"smaller size" +#: gnu/packages/image.scm:1168 +msgid "Optimizer that recompresses PNG image files to a smaller size" msgstr "" -#: gnu/packages/image.scm:1119 +#: gnu/packages/image.scm:1169 msgid "" "OptiPNG is a PNG optimizer that recompresses image\n" "files to a smaller size, without losing any information. This program\n" @@ -6246,11 +7565,11 @@ msgid "" "PNG, and performs PNG integrity checks and corrections." msgstr "" -#: gnu/packages/image.scm:1153 +#: gnu/packages/image.scm:1194 msgid "SIMD-accelerated JPEG image handling library" msgstr "SIMD-accelereret JPEG-billedbehandlingsbibliotek" -#: gnu/packages/image.scm:1154 +#: gnu/packages/image.scm:1195 msgid "" "libjpeg-turbo is a JPEG image codec that accelerates baseline\n" "JPEG compression and decompression using SIMD instructions: MMX on x86, SSE2 on\n" @@ -6263,11 +7582,11 @@ msgid "" "and decompress to 32-bit and big-endian pixel buffers (RGBX, XBGR, etc.)." msgstr "" -#: gnu/packages/image.scm:1202 +#: gnu/packages/image.scm:1243 msgid "Library for reading and writing files in the nifti-1 format" msgstr "Bibliotek til at læse og skrive filer i nifti-1-formatet" -#: gnu/packages/image.scm:1203 +#: gnu/packages/image.scm:1244 msgid "" "Niftilib is a set of i/o libraries for reading and writing\n" "files in the nifti-1 data format - a binary file format for storing\n" @@ -6275,11 +7594,61 @@ msgid "" "(fMRI) brain images." msgstr "" -#: gnu/packages/image-viewers.scm:78 +#: gnu/packages/image.scm:1283 +msgid "Color picker" +msgstr "Farvevælger" + +#: gnu/packages/image.scm:1284 +msgid "Gpick is an advanced color picker and palette editing tool." +msgstr "Gpick er en avanceret farvevælger og paletredigeringsværktøj." + +#: gnu/packages/image.scm:1300 +msgid "IPTC metadata manipulation library" +msgstr "IPTCmetadatamanipuleringsbibliotek" + +#: gnu/packages/image.scm:1301 +msgid "" +"Libiptcdata is a C library for manipulating the International\n" +"Press Telecommunications Council (IPTC) metadata stored within multimedia files\n" +"such as images. This metadata can include captions and keywords, often used by\n" +"popular photo management applications. The library provides routines for\n" +"parsing, viewing, modifying, and saving this metadata." +msgstr "" + +#: gnu/packages/image.scm:1337 +msgid "Powerful yet simple to use screenshot software" +msgstr "" + +#: gnu/packages/image.scm:1338 +msgid "" +"Flameshot is a screenshot program.\n" +"Features:\n" +"\n" +"@itemize\n" +"@item Customizable appearance.\n" +"@item Easy to use.\n" +"@item In-app screenshot edition.\n" +"@item DBus interface.\n" +"@item Upload to Imgur.\n" +"@end itemize\n" +msgstr "" + +#: gnu/packages/image.scm:1364 +msgid "Read and write JPEG images with R" +msgstr "" + +#: gnu/packages/image.scm:1365 +msgid "" +"This package provides a way to read, write and display bitmap\n" +"images stored in the JPEG format with R. It can read and write both files and\n" +"in-memory raw vectors." +msgstr "" + +#: gnu/packages/image-viewers.scm:90 msgid "Fast and light imlib2-based image viewer" msgstr "Hurtig og simpel imlib2-baseret billedfremviser" -#: gnu/packages/image-viewers.scm:80 +#: gnu/packages/image-viewers.scm:92 msgid "" "feh is an X11 image viewer aimed mostly at console users.\n" "Unlike most other viewers, it does not have a fancy GUI, but simply\n" @@ -6288,11 +7657,11 @@ msgid "" "actions." msgstr "" -#: gnu/packages/image-viewers.scm:126 +#: gnu/packages/image-viewers.scm:153 msgid "Lightweight GTK+ based image viewer" msgstr "" -#: gnu/packages/image-viewers.scm:128 +#: gnu/packages/image-viewers.scm:155 msgid "" "Geeqie is a lightweight GTK+ based image viewer for Unix like operating\n" "systems. It features: EXIF, IPTC and XMP metadata browsing and editing\n" @@ -6302,21 +7671,21 @@ msgid "" "collection. Geeqie was initially based on GQview." msgstr "" -#: gnu/packages/image-viewers.scm:153 +#: gnu/packages/image-viewers.scm:180 msgid "Simple and fast image viewer for X" msgstr "Simpel og hurtig billedfremviser for X" -#: gnu/packages/image-viewers.scm:154 +#: gnu/packages/image-viewers.scm:181 msgid "" "gpicview is a lightweight GTK+ 2.x based image viewer.\n" "It is the default image viewer on LXDE desktop environment." msgstr "" -#: gnu/packages/image-viewers.scm:186 +#: gnu/packages/image-viewers.scm:222 msgid "Simple X Image Viewer" msgstr "Simpel X-billedfremviser" -#: gnu/packages/image-viewers.scm:188 +#: gnu/packages/image-viewers.scm:224 msgid "" "sxiv is an alternative to feh and qiv. Its primary goal is to\n" "provide the most basic features required for fast image viewing. It has\n" @@ -6325,11 +7694,11 @@ msgid "" "it and customize it for your needs." msgstr "" -#: gnu/packages/image-viewers.scm:229 +#: gnu/packages/image-viewers.scm:271 msgid "Simple, fast and elegant image viewer" msgstr "Simpel, hurtig og elegant billedfremviser" -#: gnu/packages/image-viewers.scm:230 +#: gnu/packages/image-viewers.scm:272 msgid "" "Viewnior is an image viewer program. Created to be simple,\n" "fast and elegant. Its minimalistic interface provides more screenspace for\n" @@ -6347,21 +7716,21 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/image-viewers.scm:298 +#: gnu/packages/image-viewers.scm:340 msgid "Render images in the terminal" msgstr "" -#: gnu/packages/image-viewers.scm:300 +#: gnu/packages/image-viewers.scm:342 msgid "" "Catimg is a little program that prints images in the terminal.\n" "It supports JPEG, PNG and GIF formats." msgstr "" -#: gnu/packages/image-viewers.scm:351 +#: gnu/packages/image-viewers.scm:393 msgid "High dynamic range (HDR) imaging application" msgstr "" -#: gnu/packages/image-viewers.scm:353 +#: gnu/packages/image-viewers.scm:395 msgid "" "Luminance HDR (formerly QtPFSGui) is a graphical user interface\n" "application that aims to provide a workflow for high dynamic range (HDR)\n" @@ -6377,33 +7746,33 @@ msgid "" "@end itemize\n" msgstr "" -#: gnu/packages/image-viewers.scm:400 +#: gnu/packages/image-viewers.scm:443 msgid "Image viewer for comics" msgstr "" -#: gnu/packages/image-viewers.scm:401 +#: gnu/packages/image-viewers.scm:444 msgid "" "MComix is a customizable image viewer that specializes as\n" "a comic and manga reader. It supports a variety of container formats\n" "including CBZ, CB7, CBT, LHA." msgstr "" -#: gnu/packages/inkscape.scm:80 +#: gnu/packages/inkscape.scm:86 msgid "Vector graphics editor" msgstr "Redigeringsprogram for vektorgrafik" -#: gnu/packages/inkscape.scm:81 +#: gnu/packages/inkscape.scm:87 msgid "" "Inkscape is a vector graphics editor. What sets Inkscape\n" "apart is its use of Scalable Vector Graphics (SVG), an XML-based W3C standard,\n" "as the native format." msgstr "" -#: gnu/packages/jemalloc.scm:60 +#: gnu/packages/jemalloc.scm:64 msgid "General-purpose scalable concurrent malloc implementation" msgstr "" -#: gnu/packages/jemalloc.scm:62 +#: gnu/packages/jemalloc.scm:66 msgid "" "This library providing a malloc(3) implementation that emphasizes\n" "fragmentation avoidance and scalable concurrency support." @@ -6440,11 +7809,11 @@ msgstr "" msgid "Clone of the Motif toolkit for the X window system." msgstr "" -#: gnu/packages/libreoffice.scm:89 +#: gnu/packages/libreoffice.scm:96 msgid "General purpose formula parser and interpreter" msgstr "" -#: gnu/packages/libreoffice.scm:90 +#: gnu/packages/libreoffice.scm:97 msgid "" "Ixion is a library for calculating the results of formula\n" "expressions stored in multiple named targets, or \"cells\". The cells can\n" @@ -6452,11 +7821,11 @@ msgid "" "their dependencies automatically upon calculation." msgstr "" -#: gnu/packages/libreoffice.scm:116 +#: gnu/packages/libreoffice.scm:123 msgid "File import filter library for spreadsheet documents" msgstr "" -#: gnu/packages/libreoffice.scm:117 +#: gnu/packages/libreoffice.scm:124 msgid "" "Orcus is a library that provides a collection of standalone\n" "file processing filters. It is currently focused on providing filters for\n" @@ -6466,33 +7835,33 @@ msgid "" "CSV, CSS and XML." msgstr "" -#: gnu/packages/libreoffice.scm:151 +#: gnu/packages/libreoffice.scm:158 msgid "Document importer for office suites" msgstr "" -#: gnu/packages/libreoffice.scm:152 +#: gnu/packages/libreoffice.scm:159 msgid "" "Librevenge is a base library for writing document import\n" "filters. It has interfaces for text documents, vector graphics,\n" "spreadsheets and presentations." msgstr "" -#: gnu/packages/libreoffice.scm:177 +#: gnu/packages/libreoffice.scm:184 msgid "Library for importing WordPerfect documents" msgstr "Bibliotek til import af WordPerfect-dokumenter" -#: gnu/packages/libreoffice.scm:178 +#: gnu/packages/libreoffice.scm:185 msgid "" "Libwpd is a C++ library designed to help process\n" "WordPerfect documents. It is most commonly used to import such documents\n" "into other word processors." msgstr "" -#: gnu/packages/libreoffice.scm:210 +#: gnu/packages/libreoffice.scm:218 msgid "Library for import of reflowable e-book formats" msgstr "" -#: gnu/packages/libreoffice.scm:211 +#: gnu/packages/libreoffice.scm:219 msgid "" "Libe-book is a library and a set of tools for reading and\n" "converting various reflowable e-book formats. Currently supported are:\n" @@ -6502,42 +7871,42 @@ msgid "" "ZVR (simple compressed text format)." msgstr "" -#: gnu/packages/libreoffice.scm:240 +#: gnu/packages/libreoffice.scm:248 msgid "Library and tools for the WordPerfect Graphics format" msgstr "" -#: gnu/packages/libreoffice.scm:241 +#: gnu/packages/libreoffice.scm:249 msgid "" "The libwpg project provides a library and tools for\n" "working with graphics in the WPG (WordPerfect Graphics) format." msgstr "" -#: gnu/packages/libreoffice.scm:282 +#: gnu/packages/libreoffice.scm:290 msgid "CMIS client library" msgstr "" -#: gnu/packages/libreoffice.scm:283 +#: gnu/packages/libreoffice.scm:291 msgid "" "LibCMIS is a C++ client library for the CMIS interface. It\n" "allows C++ applications to connect to any ECM behaving as a CMIS server such\n" "as Alfresco or Nuxeo." msgstr "" -#: gnu/packages/libreoffice.scm:314 +#: gnu/packages/libreoffice.scm:322 msgid "Library for parsing the AbiWord format" msgstr "" -#: gnu/packages/libreoffice.scm:315 +#: gnu/packages/libreoffice.scm:323 msgid "" "Libabw is a library that parses the file format of\n" "AbiWord documents." msgstr "" -#: gnu/packages/libreoffice.scm:345 +#: gnu/packages/libreoffice.scm:354 msgid "Library for parsing the CorelDRAW format" msgstr "Bibliotek til fortolkning af CorelDRAW-formatet" -#: gnu/packages/libreoffice.scm:346 +#: gnu/packages/libreoffice.scm:355 msgid "" "Libcdr is a library that parses the file format of\n" "CorelDRAW documents of all versions." @@ -6545,21 +7914,21 @@ msgstr "" "Libcdr er et bibliotek, som fortolker filformatet\n" "for CorelDraw-dokumenter for alle versioner." -#: gnu/packages/libreoffice.scm:384 +#: gnu/packages/libreoffice.scm:387 msgid "Library for parsing the Apple Keynote format" msgstr "Bibliotek for fortolkning af Apple Keynote-formatet" -#: gnu/packages/libreoffice.scm:385 +#: gnu/packages/libreoffice.scm:388 msgid "" "Libetonyek is a library that parses the file format of\n" "Apple Keynote documents. It currently supports Keynote versions 2 to 5." msgstr "" -#: gnu/packages/libreoffice.scm:408 +#: gnu/packages/libreoffice.scm:412 msgid "Library to access tags for identifying languages" msgstr "Bibliotek til at tilgå mærker for identifikation af sprog" -#: gnu/packages/libreoffice.scm:409 +#: gnu/packages/libreoffice.scm:413 msgid "" "Liblangtag implements an interface to work with tags\n" "for identifying languages as described in RFC 5646. It supports the\n" @@ -6568,41 +7937,41 @@ msgid "" "standard 21.0.2." msgstr "" -#: gnu/packages/libreoffice.scm:429 +#: gnu/packages/libreoffice.scm:433 msgid "Text Categorization library" msgstr "Tekstkategoriseringsbibliotek" -#: gnu/packages/libreoffice.scm:430 +#: gnu/packages/libreoffice.scm:434 msgid "" "Libexttextcat is an N-Gram-Based Text Categorization\n" "library primarily intended for language guessing." msgstr "" -#: gnu/packages/libreoffice.scm:456 +#: gnu/packages/libreoffice.scm:464 msgid "Library for parsing the FreeHand format" msgstr "Bibliotek til at fortolke FreeHand-formatet" -#: gnu/packages/libreoffice.scm:457 +#: gnu/packages/libreoffice.scm:465 msgid "" "Libfreehand is a library that parses the file format of\n" "Aldus/Macromedia/Adobe FreeHand documents." msgstr "" -#: gnu/packages/libreoffice.scm:483 +#: gnu/packages/libreoffice.scm:491 msgid "Library for parsing the Microsoft Publisher format" msgstr "" -#: gnu/packages/libreoffice.scm:484 +#: gnu/packages/libreoffice.scm:492 msgid "" "Libmspub is a library that parses the file format of\n" "Microsoft Publisher documents of all versions." msgstr "" -#: gnu/packages/libreoffice.scm:512 +#: gnu/packages/libreoffice.scm:517 msgid "Library for parsing the PageMaker format" msgstr "Bibliotek til fortolkning af PageMaker-formatet" -#: gnu/packages/libreoffice.scm:513 +#: gnu/packages/libreoffice.scm:518 msgid "" "Libpagemaker is a library that parses the file format of\n" "Aldus/Adobe PageMaker documents. Currently it only understands documents\n" @@ -6631,42 +8000,42 @@ msgid "" "text documents, vector drawings, presentations and spreadsheets." msgstr "" -#: gnu/packages/libreoffice.scm:608 +#: gnu/packages/libreoffice.scm:605 msgid "Import library for some old Macintosh text documents" msgstr "" -#: gnu/packages/libreoffice.scm:609 +#: gnu/packages/libreoffice.scm:606 msgid "" "Libmwaw contains some import filters for old Macintosh\n" "text documents (MacWrite, ClarisWorks, ... ) and for some graphics and\n" "spreadsheet documents." msgstr "" -#: gnu/packages/libreoffice.scm:632 +#: gnu/packages/libreoffice.scm:629 msgid "Provides LibreOffice support for old StarOffice documents" msgstr "" -#: gnu/packages/libreoffice.scm:633 +#: gnu/packages/libreoffice.scm:630 msgid "" "@code{libstaroffice} is an import filter for the document formats\n" "from the old StarOffice (.sdc, .sdw, ...)." msgstr "" -#: gnu/packages/libreoffice.scm:661 +#: gnu/packages/libreoffice.scm:655 msgid "Import library for Microsoft Works text documents" msgstr "Importbibliotek for Microsoft Works-tekstdokumenter" -#: gnu/packages/libreoffice.scm:662 +#: gnu/packages/libreoffice.scm:656 msgid "" "Libwps is a library for importing files in the Microsoft\n" "Works word processor file format." msgstr "" -#: gnu/packages/libreoffice.scm:689 +#: gnu/packages/libreoffice.scm:683 msgid "Parses file format of Zoner Callisto/Draw documents" msgstr "Fortolker filformat for Zoner Callisto/Draw-dokumenter" -#: gnu/packages/libreoffice.scm:690 +#: gnu/packages/libreoffice.scm:684 msgid "" "Libzmf is a library that parses the file format of Zoner\n" "Callisto/Draw documents. Currently it only understands documents created by\n" @@ -6676,39 +8045,57 @@ msgstr "" "Callisto/Draw-dokumenter. I øjeblikket understøttes kun dokumenter oprettet\n" "af Zoner Draw version 4 og 5." -#: gnu/packages/libreoffice.scm:712 +#: gnu/packages/libreoffice.scm:719 msgid "" "Hunspell is a spell checker and morphological analyzer\n" "library and program designed for languages with rich morphology and complex\n" "word compounding or character encoding." msgstr "" -#: gnu/packages/libreoffice.scm:734 +#. TRANSLATORS: In French, this is "Français classique". +#: gnu/packages/libreoffice.scm:782 +msgid "Hunspell dictionary for ``classic'' French (recommended)" +msgstr "" + +#. TRANSLATORS: In French, this is "Français moderne". +#: gnu/packages/libreoffice.scm:787 +msgid "Hunspell dictionary for ``modern'' French" +msgstr "" + +#: gnu/packages/libreoffice.scm:791 +msgid "Hunspell dictionary for the post @dfn{1990 réforme} French" +msgstr "" + +#: gnu/packages/libreoffice.scm:795 +msgid "Hunspell dictionary for all variants of French" +msgstr "" + +#: gnu/packages/libreoffice.scm:813 msgid "Hyphenation library" msgstr "Orddelingsbibliotek" -#: gnu/packages/libreoffice.scm:735 +#: gnu/packages/libreoffice.scm:814 msgid "" "Hyphen is a hyphenation library using TeX hyphenation\n" "patterns, which are pre-processed by a perl script." msgstr "" -#: gnu/packages/libreoffice.scm:758 +#: gnu/packages/libreoffice.scm:837 msgid "Thesaurus" msgstr "" -#: gnu/packages/libreoffice.scm:759 +#: gnu/packages/libreoffice.scm:838 msgid "" "MyThes is a simple thesaurus that uses a structured text\n" "data file and an index file with binary search to look up words and phrases\n" "and to return information on pronunciations, meanings and synonyms." msgstr "" -#: gnu/packages/libreoffice.scm:929 +#: gnu/packages/libreoffice.scm:1043 msgid "Office suite" msgstr "" -#: gnu/packages/libreoffice.scm:930 +#: gnu/packages/libreoffice.scm:1044 msgid "" "LibreOffice is a comprehensive office suite. It contains\n" "a number of components: Writer, a word processor; Calc, a spreadsheet\n" @@ -6717,29 +8104,29 @@ msgid "" "Math for editing mathematics." msgstr "" -#: gnu/packages/linux.scm:196 +#: gnu/packages/linux.scm:214 msgid "GNU Linux-Libre kernel headers" msgstr "GNU Linux-LIbre - kerneteksthoveder" -#: gnu/packages/linux.scm:197 +#: gnu/packages/linux.scm:215 msgid "Headers of the Linux-Libre kernel." msgstr "Teksthoveder for Linux-Libre-kernen." -#: gnu/packages/linux.scm:348 +#: gnu/packages/linux.scm:382 msgid "100% free redistribution of a cleaned Linux kernel" msgstr "" -#: gnu/packages/linux.scm:350 +#: gnu/packages/linux.scm:384 msgid "" "GNU Linux-Libre is a free (as in freedom) variant of the Linux kernel.\n" "It has been modified to remove all non-free binary blobs." msgstr "" -#: gnu/packages/linux.scm:439 +#: gnu/packages/linux.scm:505 msgid "Pluggable authentication modules for Linux" msgstr "" -#: gnu/packages/linux.scm:441 +#: gnu/packages/linux.scm:507 msgid "" "A *Free* project to implement OSF's RFC 86.0.\n" "Pluggable authentication modules are small shared object files that can\n" @@ -6747,33 +8134,44 @@ msgid "" "at login. Local and dynamic reconfiguration are its key features." msgstr "" -#: gnu/packages/linux.scm:483 +#: gnu/packages/linux.scm:549 msgid "Small utilities that use the proc file system" msgstr "Små redskaber som bruger filsystemet proc" -#: gnu/packages/linux.scm:485 +#: gnu/packages/linux.scm:551 msgid "" "This PSmisc package is a set of some small useful utilities that\n" "use the proc file system. We're not about changing the world, but\n" "providing the system administrator with some help in common tasks." msgstr "" -#: gnu/packages/linux.scm:562 +#: gnu/packages/linux.scm:635 msgid "Collection of utilities for the Linux kernel" msgstr "Samling af redskaber for Linuxkernen" -#: gnu/packages/linux.scm:563 +#: gnu/packages/linux.scm:636 msgid "" "Util-linux is a diverse collection of Linux kernel\n" "utilities. It provides dmesg and includes tools for working with file systems,\n" "block devices, UUIDs, TTYs, and many other tools." msgstr "" -#: gnu/packages/linux.scm:613 +#: gnu/packages/linux.scm:686 +msgid "PERPETUAL DATE CONVERTER FROM GREGORIAN TO POEE CALENDAR" +msgstr "" + +#: gnu/packages/linux.scm:688 +msgid "" +"ddate displays the Discordian date and holidays of a given date.\n" +"The Discordian calendar was made popular by the \"Illuminatus!\" trilogy\n" +"by Robert Shea and Robert Anton Wilson." +msgstr "" + +#: gnu/packages/linux.scm:733 msgid "Utilities that give information about processes" msgstr "Redskaber som giver information om processer" -#: gnu/packages/linux.scm:615 +#: gnu/packages/linux.scm:735 msgid "" "Procps is the package that has a bunch of small useful utilities\n" "that give information about processes using the Linux /proc file system.\n" @@ -6781,93 +8179,94 @@ msgid "" "slabtop, and skill." msgstr "" -#: gnu/packages/linux.scm:641 +#: gnu/packages/linux.scm:761 msgid "Tools for working with USB devices, such as lsusb" msgstr "Værktøjer for arbejde med USB-enheder, såsom lsusb" -#: gnu/packages/linux.scm:643 +#: gnu/packages/linux.scm:763 msgid "Tools for working with USB devices, such as lsusb." msgstr "Værktøjer for arbejde med USB-enheder, såsom lsusb." -#: gnu/packages/linux.scm:719 +#: gnu/packages/linux.scm:839 msgid "Creating and checking ext2/ext3/ext4 file systems" msgstr "Oprettelse og kontrol af ext2/ext3/ext4-filsystemer" -#: gnu/packages/linux.scm:721 +#: gnu/packages/linux.scm:841 msgid "This package provides tools for manipulating ext2/ext3/ext4 file systems." msgstr "Denne pakke tilbyder værktøjer til manipulering af ext2/ext3/ext4-filsystemer." -#: gnu/packages/linux.scm:762 +#: gnu/packages/linux.scm:882 msgid "Statically-linked e2fsck command from e2fsprogs" msgstr "" -#: gnu/packages/linux.scm:763 +#: gnu/packages/linux.scm:883 msgid "" "This package provides statically-linked e2fsck command taken\n" "from the e2fsprogs package. It is meant to be used in initrds." msgstr "" -#: gnu/packages/linux.scm:782 +#: gnu/packages/linux.scm:902 msgid "Recover deleted files from ext2/3/4 partitions" msgstr "Gendan slettede filer fra ext2/3/4-partitioner" -#: gnu/packages/linux.scm:784 +#: gnu/packages/linux.scm:904 msgid "" "Extundelete is a set of tools that can recover deleted files from an\n" "ext3 or ext4 partition." msgstr "" -#: gnu/packages/linux.scm:816 +#: gnu/packages/linux.scm:935 msgid "Zero non-allocated regions in ext2/ext3/ext4 file systems" msgstr "" -#: gnu/packages/linux.scm:818 +#: gnu/packages/linux.scm:937 msgid "" -"The zerofree command scans the free blocks in an ext2 file system and\n" -"fills any non-zero blocks with zeroes. This is a useful way to make disk\n" -"images more compressible." +"Zerofree finds the unallocated blocks with non-zero value content in an\n" +"ext2, ext3, or ext4 file system and fills them with zeroes (or another value).\n" +"This is a simple way to make disk images more compressible.\n" +"Zerofree requires the file system to be unmounted or mounted read-only." msgstr "" -#: gnu/packages/linux.scm:845 +#: gnu/packages/linux.scm:965 msgid "System call tracer for Linux" msgstr "" -#: gnu/packages/linux.scm:847 +#: gnu/packages/linux.scm:967 msgid "" "strace is a system call tracer, i.e. a debugging tool which prints out a\n" "trace of all the system calls made by a another process/program." msgstr "" -#: gnu/packages/linux.scm:868 +#: gnu/packages/linux.scm:988 msgid "Library call tracer for Linux" msgstr "" -#: gnu/packages/linux.scm:870 +#: gnu/packages/linux.scm:990 msgid "" "ltrace intercepts and records dynamic library calls which are called by\n" "an executed process and the signals received by that process. It can also\n" "intercept and print the system calls executed by the program." msgstr "" -#: gnu/packages/linux.scm:889 +#: gnu/packages/linux.scm:1009 msgid "The Advanced Linux Sound Architecture libraries" msgstr "" -#: gnu/packages/linux.scm:891 gnu/packages/linux.scm:935 +#: gnu/packages/linux.scm:1011 gnu/packages/linux.scm:1055 msgid "" "The Advanced Linux Sound Architecture (ALSA) provides audio and\n" "MIDI functionality to the Linux-based operating system." msgstr "" -#: gnu/packages/linux.scm:933 +#: gnu/packages/linux.scm:1053 msgid "Utilities for the Advanced Linux Sound Architecture (ALSA)" msgstr "" -#: gnu/packages/linux.scm:993 +#: gnu/packages/linux.scm:1113 msgid "Plugins for the Advanced Linux Sound Architecture (ALSA)" msgstr "" -#: gnu/packages/linux.scm:995 +#: gnu/packages/linux.scm:1115 msgid "" "The Advanced Linux Sound Architecture (ALSA) provides audio and\n" "MIDI functionality to the Linux-based operating system. This package enhances ALSA\n" @@ -6876,73 +8275,78 @@ msgid "" "external rate conversion." msgstr "" -#: gnu/packages/linux.scm:1029 -msgid "Program to configure the Linux IP packet filtering rules" +#: gnu/packages/linux.scm:1149 +msgid "Programs to configure Linux IP packet filtering rules" msgstr "" -#: gnu/packages/linux.scm:1031 +#: gnu/packages/linux.scm:1151 msgid "" -"iptables is the userspace command line program used to configure the\n" -"Linux 2.4.x and later IPv4 packet filtering ruleset (firewall). It is targeted at\n" -"system administrators. Since Network Address Translation is also configured\n" -"from the packet filter ruleset, iptables is used for this, too. The iptables\n" -"package also includes ip6tables. ip6tables is used for configuring the IPv6\n" -"packet filter." +"@command{iptables} is the user-space command line program used to\n" +"configure the Linux 2.4.x and later IPv4 packet filtering ruleset\n" +"(@dfn{firewall}), including @dfn{NAT} (Network Address Translation).\n" +"\n" +"This package also includes @command{ip6tables}, which is used to configure the\n" +"IPv6 packet filter.\n" +"\n" +"Both commands are targeted at system administrators." msgstr "" -#: gnu/packages/linux.scm:1081 +#: gnu/packages/linux.scm:1207 +msgid "Ethernet bridge frame table administration" +msgstr "" + +#: gnu/packages/linux.scm:1210 +msgid "" +"ebtables is an application program used to set up and maintain the\n" +"tables of rules (inside the Linux kernel) that inspect Ethernet frames. It is\n" +"analogous to the iptables application, but less complicated, due to the fact\n" +"that the Ethernet protocol is much simpler than the IP protocol." +msgstr "" + +#: gnu/packages/linux.scm:1258 msgid "Utilities for controlling TCP/IP networking and traffic in Linux" msgstr "Redskaber for kontrol af TCP/IP-netværk og trafik i Linux" -#: gnu/packages/linux.scm:1083 +#: gnu/packages/linux.scm:1260 msgid "" -"Iproute2 is a collection of utilities for controlling TCP/IP\n" -"networking and traffic with the Linux kernel.\n" +"Iproute2 is a collection of utilities for controlling TCP/IP networking\n" +"and traffic with the Linux kernel. The most important of these are\n" +"@command{ip}, which configures IPv4 and IPv6, and @command{tc} for traffic\n" +"control.\n" "\n" "Most network configuration manuals still refer to ifconfig and route as the\n" "primary network configuration tools, but ifconfig is known to behave\n" -"inadequately in modern network environments. They should be deprecated, but\n" -"most distros still include them. Most network configuration systems make use\n" -"of ifconfig and thus provide a limited feature set. The /etc/net project aims\n" -"to support most modern network technologies, as it doesn't use ifconfig and\n" -"allows a system administrator to make use of all iproute2 features, including\n" -"traffic control.\n" -"\n" -"iproute2 is usually shipped in a package called iproute or iproute2 and\n" -"consists of several tools, of which the most important are @command{ip} and\n" -"@command{tc}. @command{ip} controls IPv4 and IPv6 configuration and\n" -"@command{tc} stands for traffic control. Both tools print detailed usage\n" -"messages and are accompanied by a set of manpages." +"inadequately in modern network environments, and both should be deprecated." msgstr "" -#: gnu/packages/linux.scm:1194 +#: gnu/packages/linux.scm:1336 msgid "Tools for controlling the network subsystem in Linux" msgstr "" -#: gnu/packages/linux.scm:1196 +#: gnu/packages/linux.scm:1338 msgid "" "This package includes the important tools for controlling the network\n" -"subsystem of the Linux kernel. This includes arp, hostname, ifconfig,\n" -"netstat, rarp and route. Additionally, this package contains utilities\n" -"relating to particular network hardware types (plipconfig, slattach) and\n" -"advanced aspects of IP configuration (iptunnel, ipmaddr)." +"subsystem of the Linux kernel. This includes arp, ifconfig, netstat, rarp and\n" +"route. Additionally, this package contains utilities relating to particular\n" +"network hardware types (plipconfig, slattach) and advanced aspects of IP\n" +"configuration (iptunnel, ipmaddr)." msgstr "" -#: gnu/packages/linux.scm:1233 +#: gnu/packages/linux.scm:1375 msgid "Library for working with POSIX capabilities" msgstr "Bibliotek til arbejde med POSIX-funktioner" -#: gnu/packages/linux.scm:1235 +#: gnu/packages/linux.scm:1377 msgid "" "Libcap2 provides a programming interface to POSIX capabilities on\n" "Linux-based operating systems." msgstr "" -#: gnu/packages/linux.scm:1278 +#: gnu/packages/linux.scm:1420 msgid "Manipulate Ethernet bridges" msgstr "" -#: gnu/packages/linux.scm:1280 +#: gnu/packages/linux.scm:1422 msgid "" "Utilities for Linux's Ethernet bridging facilities. A bridge is a way\n" "to connect two Ethernet segments together in a protocol independent way.\n" @@ -6951,11 +8355,11 @@ msgid "" "transparently through a bridge." msgstr "" -#: gnu/packages/linux.scm:1302 +#: gnu/packages/linux.scm:1490 msgid "NetLink protocol library suite" msgstr "" -#: gnu/packages/linux.scm:1304 +#: gnu/packages/linux.scm:1492 msgid "" "The libnl suite is a collection of libraries providing APIs to netlink\n" "protocol based Linux kernel interfaces. Netlink is an IPC mechanism primarily\n" @@ -6964,21 +8368,21 @@ msgid "" "configuration and monitoring interfaces." msgstr "" -#: gnu/packages/linux.scm:1334 +#: gnu/packages/linux.scm:1522 msgid "Tool for configuring wireless devices" msgstr "Værktøj til konfiguration af trådløse enheder" -#: gnu/packages/linux.scm:1336 +#: gnu/packages/linux.scm:1524 msgid "" "iw is a new nl80211 based CLI configuration utility for wireless\n" "devices. It replaces @code{iwconfig}, which is deprecated." msgstr "" -#: gnu/packages/linux.scm:1382 +#: gnu/packages/linux.scm:1570 msgid "Analyze power consumption on Intel-based laptops" msgstr "Analyser strømforbrug på Intelbaserede bærbare" -#: gnu/packages/linux.scm:1384 +#: gnu/packages/linux.scm:1572 msgid "" "PowerTOP is a Linux tool to diagnose issues with power consumption and\n" "power management. In addition to being a diagnostic tool, PowerTOP also has\n" @@ -6987,31 +8391,31 @@ msgid "" "settings." msgstr "" -#: gnu/packages/linux.scm:1406 +#: gnu/packages/linux.scm:1594 msgid "Audio mixer for X and the console" msgstr "" -#: gnu/packages/linux.scm:1408 +#: gnu/packages/linux.scm:1596 msgid "" "Aumix adjusts an audio mixer from X, the console, a terminal,\n" "the command line or a script." msgstr "" -#: gnu/packages/linux.scm:1432 +#: gnu/packages/linux.scm:1620 msgid "Displays the IO activity of running processes" msgstr "Viser IO-aktivet for kørende processer" -#: gnu/packages/linux.scm:1434 +#: gnu/packages/linux.scm:1622 msgid "" "Iotop is a Python program with a top like user interface to show the\n" "processes currently causing I/O." msgstr "" -#: gnu/packages/linux.scm:1487 +#: gnu/packages/linux.scm:1676 msgid "Support file systems implemented in user space" msgstr "" -#: gnu/packages/linux.scm:1489 +#: gnu/packages/linux.scm:1678 msgid "" "As a consequence of its monolithic design, file system code for Linux\n" "normally goes into the kernel itself---which is not only a robustness issue,\n" @@ -7021,11 +8425,11 @@ msgid "" "user-space processes." msgstr "" -#: gnu/packages/linux.scm:1523 +#: gnu/packages/linux.scm:1709 msgid "User-space union file system" msgstr "" -#: gnu/packages/linux.scm:1525 +#: gnu/packages/linux.scm:1711 msgid "" "UnionFS-FUSE is a flexible union file system implementation in user\n" "space, using the FUSE library. Mounting a union file system allows you to\n" @@ -7033,15 +8437,15 @@ msgid "" "UnionFS-FUSE additionally supports copy-on-write." msgstr "" -#: gnu/packages/linux.scm:1550 +#: gnu/packages/linux.scm:1736 msgid "User-space union file system (statically linked)" msgstr "" -#: gnu/packages/linux.scm:1593 +#: gnu/packages/linux.scm:1784 msgid "Mount remote file systems over SSH" msgstr "" -#: gnu/packages/linux.scm:1595 +#: gnu/packages/linux.scm:1786 msgid "" "This is a file system client based on the SSH File Transfer Protocol.\n" "Since most SSH servers already support this protocol it is very easy to set\n" @@ -7049,11 +8453,24 @@ msgid "" "file system is as easy as logging into the server with an SSH client." msgstr "" -#: gnu/packages/linux.scm:1624 +#: gnu/packages/linux.scm:1809 +msgid "Tool for mounting archive files with FUSE" +msgstr "" + +#: gnu/packages/linux.scm:1810 +msgid "" +"archivemount is a FUSE-based file system for Unix variants,\n" +"including Linux. Its purpose is to mount archives (i.e. tar, tar.gz, etc.) to a\n" +"mount point where it can be read from or written to as with any other file\n" +"system. This makes accessing the contents of the archive, which may be\n" +"compressed, transparent to other programs, without decompressing them." +msgstr "" + +#: gnu/packages/linux.scm:1840 msgid "Tools for non-uniform memory access (NUMA) machines" msgstr "" -#: gnu/packages/linux.scm:1626 +#: gnu/packages/linux.scm:1842 msgid "" "NUMA stands for Non-Uniform Memory Access, in other words a system whose\n" "memory is not all in one place. The numactl program allows you to run your\n" @@ -7066,32 +8483,42 @@ msgid "" "system." msgstr "" -#: gnu/packages/linux.scm:1688 +#: gnu/packages/linux.scm:1878 +msgid "Neo2 console layout" +msgstr "" + +#: gnu/packages/linux.scm:1880 +msgid "" +"Kbd-neo provides the Neo2 keyboard layout for use with\n" +"@command{loadkeys(1)} from @code{kbd(4)}." +msgstr "" + +#: gnu/packages/linux.scm:1943 msgid "Linux keyboard utilities and keyboard maps" msgstr "" -#: gnu/packages/linux.scm:1690 +#: gnu/packages/linux.scm:1945 msgid "" "This package contains keytable files and keyboard utilities compatible\n" "for systems using the Linux kernel. This includes commands such as\n" "'loadkeys', 'setfont', 'kbdinfo', and 'chvt'." msgstr "" -#: gnu/packages/linux.scm:1709 +#: gnu/packages/linux.scm:1964 msgid "Monitor file accesses" msgstr "" -#: gnu/packages/linux.scm:1711 +#: gnu/packages/linux.scm:1966 msgid "" "The inotify-tools packages provides a C library and command-line tools\n" "to use Linux' inotify mechanism, which allows file accesses to be monitored." msgstr "" -#: gnu/packages/linux.scm:1749 +#: gnu/packages/linux.scm:2004 msgid "Kernel module tools" msgstr "" -#: gnu/packages/linux.scm:1750 +#: gnu/packages/linux.scm:2005 msgid "" "Kmod is a set of tools to handle common tasks with Linux\n" "kernel modules like insert, remove, list, check properties, resolve\n" @@ -7102,37 +8529,37 @@ msgid "" "from the module-init-tools project." msgstr "" -#: gnu/packages/linux.scm:1786 +#: gnu/packages/linux.scm:2069 msgid "Userspace device management" msgstr "" -#: gnu/packages/linux.scm:1787 +#: gnu/packages/linux.scm:2070 msgid "" "Udev is a daemon which dynamically creates and removes\n" "device nodes from /dev/, handles hotplug events and loads drivers at boot\n" "time." msgstr "" -#: gnu/packages/linux.scm:1874 +#: gnu/packages/linux.scm:2136 msgid "Logical volume management for Linux" msgstr "" -#: gnu/packages/linux.scm:1876 +#: gnu/packages/linux.scm:2138 msgid "" "LVM2 is the logical volume management tool set for Linux-based systems.\n" "This package includes the user-space libraries and tools, including the device\n" "mapper. Kernel components are part of Linux-libre." msgstr "" -#: gnu/packages/linux.scm:1898 +#: gnu/packages/linux.scm:2160 msgid "Logical volume management for Linux (statically linked)" msgstr "" -#: gnu/packages/linux.scm:1928 +#: gnu/packages/linux.scm:2190 msgid "Tools for manipulating Linux Wireless Extensions" msgstr "" -#: gnu/packages/linux.scm:1929 +#: gnu/packages/linux.scm:2191 msgid "" "Wireless Tools are used to manipulate the now-deprecated\n" "Linux Wireless Extensions; consider using 'iw' instead. The Wireless\n" @@ -7141,44 +8568,55 @@ msgid "" "interface." msgstr "" -#: gnu/packages/linux.scm:2001 +#: gnu/packages/linux.scm:2263 msgid "Central regulatory domain agent (CRDA) for WiFi" msgstr "" -#: gnu/packages/linux.scm:2003 +#: gnu/packages/linux.scm:2265 msgid "" "The Central Regulatory Domain Agent (CRDA) acts as the udev helper for\n" "communication between the kernel Linux and user space for regulatory\n" "compliance." msgstr "" -#: gnu/packages/linux.scm:2049 +#: gnu/packages/linux.scm:2311 msgid "Wireless regulatory database" msgstr "" -#: gnu/packages/linux.scm:2051 +#: gnu/packages/linux.scm:2313 msgid "" "This package contains the wireless regulatory database Central\n" "Regulatory Database Agent (CRDA) daemon. The database contains information on\n" "country-specific regulations for the wireless spectrum." msgstr "" -#: gnu/packages/linux.scm:2124 +#: gnu/packages/linux.scm:2390 msgid "Utilities to read temperature/voltage/fan sensors" msgstr "" -#: gnu/packages/linux.scm:2126 +#: gnu/packages/linux.scm:2392 msgid "" "Lm-sensors is a hardware health monitoring package for Linux. It allows\n" "you to access information from temperature, voltage, and fan speed sensors.\n" "It works with most newer systems." msgstr "" -#: gnu/packages/linux.scm:2153 +#: gnu/packages/linux.scm:2410 +msgid "Manipulate Intel microcode bundles" +msgstr "" + +#: gnu/packages/linux.scm:2412 +msgid "" +"@command{iucode_tool} is a utility to work with microcode packages for\n" +"Intel processors. It can convert between formats, extract specific versions,\n" +"create a firmware image suitable for the Linux kernel, and more." +msgstr "" + +#: gnu/packages/linux.scm:2441 msgid "I2C tools for Linux" msgstr "I2C-værktøjer for Linux" -#: gnu/packages/linux.scm:2155 +#: gnu/packages/linux.scm:2443 msgid "" "The i2c-tools package contains a heterogeneous set of I2C tools for\n" "Linux: a bus probing tool, a chip dumper, register-level SMBus access helpers,\n" @@ -7186,22 +8624,22 @@ msgid "" "SMBus access." msgstr "" -#: gnu/packages/linux.scm:2191 +#: gnu/packages/linux.scm:2480 msgid "Hardware health information viewer" msgstr "" -#: gnu/packages/linux.scm:2193 +#: gnu/packages/linux.scm:2482 msgid "" "Xsensors reads data from the libsensors library regarding hardware\n" "health such as temperature, voltage and fan speed and displays the information\n" "in a digital read-out." msgstr "" -#: gnu/packages/linux.scm:2240 +#: gnu/packages/linux.scm:2532 msgid "Linux profiling with performance counters" msgstr "" -#: gnu/packages/linux.scm:2242 +#: gnu/packages/linux.scm:2534 msgid "" "perf is a tool suite for profiling using hardware performance counters,\n" "with support in the Linux kernel. perf can instrument CPU performance\n" @@ -7210,11 +8648,11 @@ msgid "" "particular the 'perf' command." msgstr "" -#: gnu/packages/linux.scm:2265 +#: gnu/packages/linux.scm:2557 msgid "Simple tool for creating Linux namespace containers" msgstr "Simpelt værktøj til oprettelse af naverumscontainere under Linux" -#: gnu/packages/linux.scm:2266 +#: gnu/packages/linux.scm:2558 msgid "" "pflask is a simple tool for creating Linux namespace\n" "containers. It can be used for running a command or even booting an OS inside\n" @@ -7223,11 +8661,11 @@ msgid "" "thanks to the use of namespaces." msgstr "" -#: gnu/packages/linux.scm:2295 +#: gnu/packages/linux.scm:2587 msgid "View and tune ATA disk drive parameters" msgstr "" -#: gnu/packages/linux.scm:2297 +#: gnu/packages/linux.scm:2589 msgid "" "@command{hdparm} is a command-line utility to control ATA controllers and\n" "disk drives. It can increase performance and/or reliability by careful tuning\n" @@ -7237,26 +8675,26 @@ msgid "" "\n" "@command{hdparm} provides a command line interface to various Linux kernel\n" "interfaces provided by the SATA/ATA/SAS @code{libata} subsystem, and the older\n" -"IDE driver subsystem. Many external USB drive enclosures with @dfn{SCSI-ATA\n" -"Command Translation} (SAT) are also supported." +"IDE driver subsystem. Many external USB drive enclosures with SCSI-ATA Command\n" +"Translation (@dfn{SAT}) are also supported." msgstr "" -#: gnu/packages/linux.scm:2328 +#: gnu/packages/linux.scm:2620 msgid "Tool for enabling and disabling wireless devices" msgstr "Værktøj til aktivering og deaktivering af trådløse enheder" -#: gnu/packages/linux.scm:2330 +#: gnu/packages/linux.scm:2622 msgid "" "rfkill is a simple tool for accessing the rfkill device interface,\n" "which is used to enable and disable wireless networking devices, typically\n" "WLAN, Bluetooth and mobile broadband." msgstr "" -#: gnu/packages/linux.scm:2349 +#: gnu/packages/linux.scm:2643 msgid "Display information on ACPI devices" msgstr "" -#: gnu/packages/linux.scm:2350 +#: gnu/packages/linux.scm:2644 msgid "" "@code{acpi} attempts to replicate the functionality of the\n" "\"old\" @code{apm} command on ACPI systems, including battery and thermal\n" @@ -7264,11 +8702,11 @@ msgid "" "about ACPI devices." msgstr "" -#: gnu/packages/linux.scm:2369 +#: gnu/packages/linux.scm:2663 msgid "Daemon for delivering ACPI events to user-space programs" msgstr "" -#: gnu/packages/linux.scm:2371 +#: gnu/packages/linux.scm:2665 msgid "" "acpid is designed to notify user-space programs of Advanced\n" "Configuration and Power Interface (ACPI) events. acpid should be started\n" @@ -7277,37 +8715,37 @@ msgid "" "specified in /etc/acpi/events and execute the rules that match the event." msgstr "" -#: gnu/packages/linux.scm:2393 +#: gnu/packages/linux.scm:2687 msgid "System utilities based on Linux sysfs" msgstr "" -#: gnu/packages/linux.scm:2395 +#: gnu/packages/linux.scm:2689 msgid "" "These are a set of utilities built upon sysfs, a virtual file system in\n" "Linux kernel versions 2.5+ that exposes a system's device tree. The package\n" "also contains the libsysfs library." msgstr "" -#: gnu/packages/linux.scm:2424 +#: gnu/packages/linux.scm:2718 msgid "System utilities based on Linux sysfs (version 1.x)" msgstr "" -#: gnu/packages/linux.scm:2447 +#: gnu/packages/linux.scm:2741 msgid "Utilities to get and set CPU frequency on Linux" msgstr "" -#: gnu/packages/linux.scm:2449 +#: gnu/packages/linux.scm:2743 msgid "" "The cpufrequtils suite contains utilities to retrieve CPU frequency\n" "information, and set the CPU frequency if supported, using the cpufreq\n" "capabilities of the Linux kernel." msgstr "" -#: gnu/packages/linux.scm:2468 +#: gnu/packages/linux.scm:2762 msgid "Interface library for the Linux IEEE1394 drivers" msgstr "" -#: gnu/packages/linux.scm:2470 +#: gnu/packages/linux.scm:2764 msgid "" "Libraw1394 is the only supported interface to the kernel side raw1394 of\n" "the Linux IEEE-1394 subsystem, which provides direct access to the connected\n" @@ -7316,46 +8754,46 @@ msgid "" "protocol in question." msgstr "" -#: gnu/packages/linux.scm:2494 +#: gnu/packages/linux.scm:2788 msgid "AV/C protocol library for IEEE 1394" msgstr "" -#: gnu/packages/linux.scm:2496 +#: gnu/packages/linux.scm:2790 msgid "" "Libavc1394 is a programming interface to the AV/C specification from\n" "the 1394 Trade Association. AV/C stands for Audio/Video Control." msgstr "" -#: gnu/packages/linux.scm:2518 +#: gnu/packages/linux.scm:2812 msgid "Isochronous streaming media library for IEEE 1394" msgstr "" -#: gnu/packages/linux.scm:2520 +#: gnu/packages/linux.scm:2814 msgid "" "The libiec61883 library provides a higher level API for streaming DV,\n" "MPEG-2 and audio over Linux IEEE 1394." msgstr "" -#: gnu/packages/linux.scm:2568 +#: gnu/packages/linux.scm:2863 msgid "Tool for managing Linux Software RAID arrays" msgstr "" -#: gnu/packages/linux.scm:2570 +#: gnu/packages/linux.scm:2865 msgid "" "mdadm is a tool for managing Linux Software RAID arrays. It can create,\n" "assemble, report on, and monitor arrays. It can also move spares between raid\n" "arrays when needed." msgstr "" -#: gnu/packages/linux.scm:2602 +#: gnu/packages/linux.scm:2897 msgid "Statically-linked 'mdadm' command for use in an initrd" msgstr "" -#: gnu/packages/linux.scm:2667 +#: gnu/packages/linux.scm:2962 msgid "Access block devices through multiple paths" msgstr "" -#: gnu/packages/linux.scm:2669 +#: gnu/packages/linux.scm:2964 msgid "" "This package provides the following binaries to drive the\n" "Linux Device Mapper multipathing driver:\n" @@ -7368,84 +8806,95 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/linux.scm:2703 +#: gnu/packages/linux.scm:2996 msgid "Linux-native asynchronous I/O access library" msgstr "" -#: gnu/packages/linux.scm:2705 +#: gnu/packages/linux.scm:2998 msgid "" "This library enables userspace to use Linux kernel asynchronous I/O\n" "system calls, important for the performance of databases and other advanced\n" "applications." msgstr "" -#: gnu/packages/linux.scm:2727 +#: gnu/packages/linux.scm:3020 msgid "Bluetooth subband audio codec" msgstr "Bluetooth subband-lydkodning" -#: gnu/packages/linux.scm:2729 +#: gnu/packages/linux.scm:3022 msgid "" "The SBC is a digital audio encoder and decoder used to transfer data to\n" "Bluetooth audio output devices like headphones or loudspeakers." msgstr "" -#: gnu/packages/linux.scm:2787 +#: gnu/packages/linux.scm:3088 msgid "Linux Bluetooth protocol stack" msgstr "" -#: gnu/packages/linux.scm:2789 +#: gnu/packages/linux.scm:3090 msgid "" "BlueZ provides support for the core Bluetooth layers and protocols. It\n" "is flexible, efficient and uses a modular implementation." msgstr "" -#: gnu/packages/linux.scm:2811 +#: gnu/packages/linux.scm:3112 msgid "Mount exFAT file systems" msgstr "" -#: gnu/packages/linux.scm:2813 +#: gnu/packages/linux.scm:3114 msgid "" "This package provides a FUSE-based file system that provides read and\n" "write access to exFAT devices." msgstr "" -#: gnu/packages/linux.scm:2853 +#: gnu/packages/linux.scm:3157 msgid "Mouse support for the Linux console" msgstr "Museunderstøttelse for Linuxkonsollen" -#: gnu/packages/linux.scm:2855 +#: gnu/packages/linux.scm:3159 msgid "" "The GPM (general-purpose mouse) daemon is a mouse server for\n" "applications running on the Linux console. It allows users to select items\n" "and copy/paste text in the console and in xterm." msgstr "" -#: gnu/packages/linux.scm:2904 +#: gnu/packages/linux.scm:3218 msgid "Create and manage btrfs copy-on-write file systems" msgstr "" -#: gnu/packages/linux.scm:2905 +#: gnu/packages/linux.scm:3219 msgid "" "Btrfs is a @dfn{copy-on-write} (CoW) file system for Linux\n" "aimed at implementing advanced features while focusing on fault tolerance,\n" "repair and easy administration." msgstr "" -#: gnu/packages/linux.scm:2937 +#: gnu/packages/linux.scm:3251 msgid "Statically-linked btrfs command from btrfs-progs" msgstr "" -#: gnu/packages/linux.scm:2938 +#: gnu/packages/linux.scm:3252 msgid "" "This package provides the statically-linked @command{btrfs}\n" "from the btrfs-progs package. It is meant to be used in initrds." msgstr "" -#: gnu/packages/linux.scm:2964 +#: gnu/packages/linux.scm:3283 +msgid "Userland tools for f2fs" +msgstr "" + +#: gnu/packages/linux.scm:3285 +msgid "" +"F2FS, the Flash-Friendly File System, is a modern file system\n" +"designed to be fast and durable on flash devices such as solid-state\n" +"disks and SD cards. This package provides the userland utilities." +msgstr "" + +#: gnu/packages/linux.scm:3315 msgid "Free-fall protection for spinning laptop hard drives" msgstr "" -#: gnu/packages/linux.scm:2966 +#: gnu/packages/linux.scm:3317 msgid "" "Prevents shock damage to the internal spinning hard drive(s) of some\n" "HP and Dell laptops. When sudden movement is detected, all input/output\n" @@ -7455,11 +8904,11 @@ msgid "" "feature, and a laptop with an accelerometer. It has no effect on SSDs." msgstr "" -#: gnu/packages/linux.scm:3020 +#: gnu/packages/linux.scm:3371 msgid "Simple fan control program" msgstr "Simpelt kontrolprogram til blæseren" -#: gnu/packages/linux.scm:3022 +#: gnu/packages/linux.scm:3373 msgid "" "Thinkfan is a simple fan control program. It reads temperatures,\n" "checks them against configured limits and switches to appropriate (also\n" @@ -7468,22 +8917,22 @@ msgid "" "from userspace." msgstr "" -#: gnu/packages/linux.scm:3058 +#: gnu/packages/linux.scm:3408 msgid "Read-write access to NTFS file systems" msgstr "Læs/skriv adgang til NTFS-filsystemer" -#: gnu/packages/linux.scm:3060 +#: gnu/packages/linux.scm:3410 msgid "" "NTFS-3G provides read-write access to NTFS file systems, which are\n" "commonly found on Microsoft Windows. It is implemented as a FUSE file system.\n" "The package provides additional NTFS tools." msgstr "" -#: gnu/packages/linux.scm:3105 +#: gnu/packages/linux.scm:3452 msgid "Utilities and libraries for working with RDMA devices" msgstr "Redskaber og bibliotek for arbejde med RDMA-enheder" -#: gnu/packages/linux.scm:3107 +#: gnu/packages/linux.scm:3454 msgid "" "This package provides userspace components for the InfiniBand\n" "subsystem of the Linux kernel. Specifically it contains userspace\n" @@ -7503,32 +8952,32 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/linux.scm:3146 +#: gnu/packages/linux.scm:3507 msgid "Random number generator daemon" msgstr "" -#: gnu/packages/linux.scm:3148 +#: gnu/packages/linux.scm:3509 msgid "" "Monitor a hardware random number generator, and supply entropy\n" "from that to the system kernel's @file{/dev/random} machinery." msgstr "" -#: gnu/packages/linux.scm:3186 +#: gnu/packages/linux.scm:3547 msgid "CPU frequency and voltage scaling tools for Linux" msgstr "" -#: gnu/packages/linux.scm:3188 +#: gnu/packages/linux.scm:3549 msgid "" "cpupower is a set of user-space tools that use the cpufreq feature of the\n" "Linux kernel to retrieve and control processor features related to power saving,\n" "such as frequency and voltage scaling." msgstr "" -#: gnu/packages/linux.scm:3207 +#: gnu/packages/linux.scm:3568 msgid "Entropy source for the Linux random number generator" msgstr "" -#: gnu/packages/linux.scm:3209 +#: gnu/packages/linux.scm:3570 msgid "" "haveged generates an unpredictable stream of random numbers for use by\n" "Linux's @file{/dev/random} and @file{/dev/urandom} devices. The kernel's\n" @@ -7541,11 +8990,11 @@ msgid "" "as used on certified hardware security devices." msgstr "" -#: gnu/packages/linux.scm:3248 +#: gnu/packages/linux.scm:3609 msgid "eCryptfs cryptographic file system utilities" msgstr "" -#: gnu/packages/linux.scm:3250 +#: gnu/packages/linux.scm:3611 msgid "" "eCryptfs is a POSIX-compliant stacked cryptographic file system for Linux.\n" "Each file's cryptographic meta-data is stored inside the file itself, along\n" @@ -7555,11 +9004,11 @@ msgid "" "2.6.19. This package contains the userland utilities to manage it." msgstr "" -#: gnu/packages/linux.scm:3281 +#: gnu/packages/linux.scm:3642 msgid "NFSv4 support library for name/ID mapping" msgstr "" -#: gnu/packages/linux.scm:3282 +#: gnu/packages/linux.scm:3643 msgid "" "Libnfsidmap is a library holding mulitiple methods of\n" "mapping names to ids and visa versa, mainly for NFSv4. It provides an\n" @@ -7567,21 +9016,21 @@ msgid "" "the default @code{nsswitch} and the experimental @code{umich_ldap}." msgstr "" -#: gnu/packages/linux.scm:3315 +#: gnu/packages/linux.scm:3677 msgid "Tools for loading and managing Linux kernel modules" msgstr "Værktøjer til at indlæse og håndtere Linuxkernemoduler" -#: gnu/packages/linux.scm:3317 +#: gnu/packages/linux.scm:3679 msgid "" "Tools for loading and managing Linux kernel modules, such as `modprobe',\n" "`insmod', `lsmod', and more." msgstr "" -#: gnu/packages/linux.scm:3351 +#: gnu/packages/linux.scm:3713 msgid "Machine check monitor for x86 Linux systems" msgstr "" -#: gnu/packages/linux.scm:3353 +#: gnu/packages/linux.scm:3715 msgid "" "The mcelog daemon is required by the Linux kernel to log memory, I/O, CPU,\n" "and other hardware errors on x86 systems. It can also perform user-defined\n" @@ -7589,11 +9038,11 @@ msgid "" "are exceeded." msgstr "" -#: gnu/packages/linux.scm:3382 +#: gnu/packages/linux.scm:3744 msgid "MTD Flash Storage Utilities" msgstr "Lagerredskaber for MTD-flash" -#: gnu/packages/linux.scm:3383 +#: gnu/packages/linux.scm:3745 msgid "" "This package provides utilities for testing, partitioning, etc\n" "of flash storage." @@ -7601,11 +9050,11 @@ msgstr "" "Denne pakke tilbyder redskaber til test, partitionering, etc.\n" "for flashlager." -#: gnu/packages/linux.scm:3406 +#: gnu/packages/linux.scm:3768 msgid "Interface to Linux's seccomp syscall filtering mechanism" msgstr "" -#: gnu/packages/linux.scm:3407 +#: gnu/packages/linux.scm:3769 msgid "" "The libseccomp library provides an easy to use, platform\n" "independent, interface to the Linux Kernel's syscall filtering mechanism. The\n" @@ -7615,11 +9064,11 @@ msgid "" "developers." msgstr "" -#: gnu/packages/linux.scm:3449 +#: gnu/packages/linux.scm:3811 msgid "Usage monitor for AMD Radeon graphics" msgstr "" -#: gnu/packages/linux.scm:3450 +#: gnu/packages/linux.scm:3812 msgid "" "RadeonTop monitors resource consumption on supported AMD\n" "Radeon Graphics Processing Units (GPUs), either in real time as bar graphs on\n" @@ -7629,11 +9078,11 @@ msgid "" "under OpenGL graphics workloads." msgstr "" -#: gnu/packages/linux.scm:3485 +#: gnu/packages/linux.scm:3848 msgid "Tool and library to manipulate EFI variables" msgstr "Værktøj og bibliotek til at manipulere EFI-variabler" -#: gnu/packages/linux.scm:3486 +#: gnu/packages/linux.scm:3849 msgid "" "This package provides a library and a command line\n" "interface to the variable facility of UEFI boot firmware." @@ -7641,11 +9090,11 @@ msgstr "" "Denne pakke tilbyder et bibliotek og en kommandolinje-\n" "grænseflade til variabelfaciliteten for UEFI-opstartsfirmware." -#: gnu/packages/linux.scm:3527 +#: gnu/packages/linux.scm:3887 msgid "Modify the Extensible Firmware Interface (EFI) boot manager" msgstr "" -#: gnu/packages/linux.scm:3529 +#: gnu/packages/linux.scm:3889 msgid "" "@code{efibootmgr} is a user-space application to modify the Intel\n" "Extensible Firmware Interface (EFI) Boot Manager. This application can\n" @@ -7653,11 +9102,11 @@ msgid "" "running boot option, and more." msgstr "" -#: gnu/packages/linux.scm:3565 +#: gnu/packages/linux.scm:3925 msgid "Performance monitoring tools for Linux" msgstr "" -#: gnu/packages/linux.scm:3566 +#: gnu/packages/linux.scm:3926 msgid "" "The sysstat utilities are a collection of performance\n" "monitoring tools for Linux. These include @code{mpstat}, @code{iostat},\n" @@ -7665,11 +9114,11 @@ msgid "" "@code{sadf} and @code{sa}." msgstr "" -#: gnu/packages/linux.scm:3598 +#: gnu/packages/linux.scm:3958 msgid "GNU/Linux application to control backlights" msgstr "" -#: gnu/packages/linux.scm:3600 +#: gnu/packages/linux.scm:3960 msgid "" "Light is a program to send commands to screen backlight controllers\n" "under GNU/Linux. Features include:\n" @@ -7685,11 +9134,11 @@ msgid "" "Light is the successor of lightscript." msgstr "" -#: gnu/packages/linux.scm:3702 +#: gnu/packages/linux.scm:4064 msgid "Power management tool for Linux" msgstr "Strømhåndteringsværktøj for Linux" -#: gnu/packages/linux.scm:3703 +#: gnu/packages/linux.scm:4065 msgid "" "TLP is a power management tool for Linux. It comes with\n" "a default configuration already optimized for battery life. Nevertheless,\n" @@ -7697,11 +9146,11 @@ msgid "" "every time the power supply source is changed." msgstr "" -#: gnu/packages/linux.scm:3730 +#: gnu/packages/linux.scm:4092 msgid "List hardware information" msgstr "Vis udstyrsinformation" -#: gnu/packages/linux.scm:3732 +#: gnu/packages/linux.scm:4094 msgid "" "@command{lshw} (Hardware Lister) is a small tool to provide\n" "detailed information on the hardware configuration of the machine.\n" @@ -7711,11 +9160,11 @@ msgid "" "machines (PowerMac G4 is known to work)." msgstr "" -#: gnu/packages/linux.scm:3755 +#: gnu/packages/linux.scm:4117 msgid "Netlink utility library" msgstr "" -#: gnu/packages/linux.scm:3756 +#: gnu/packages/linux.scm:4118 msgid "" "Libmnl is a minimalistic user-space library oriented to\n" "Netlink developers. There are a lot of common tasks in parsing, validating,\n" @@ -7724,11 +9173,11 @@ msgid "" "re-use code and to avoid re-inventing the wheel." msgstr "" -#: gnu/packages/linux.scm:3781 +#: gnu/packages/linux.scm:4143 msgid "Netlink programming interface to the Linux nf_tables subsystem" msgstr "" -#: gnu/packages/linux.scm:3782 +#: gnu/packages/linux.scm:4144 msgid "" "Libnftnl is a userspace library providing a low-level netlink\n" "programming interface to the in-kernel nf_tables subsystem. The library\n" @@ -7736,11 +9185,192 @@ msgid "" "used by nftables." msgstr "" -#: gnu/packages/lout.scm:109 +#: gnu/packages/linux.scm:4171 +msgid "Userspace utility for Linux packet filtering" +msgstr "" + +#: gnu/packages/linux.scm:4172 +msgid "" +"nftables is the project that aims to replace the existing\n" +"{ip,ip6,arp,eb}tables framework. Basically, this project provides a new packet\n" +"filtering framework, a new userspace utility and also a compatibility layer for\n" +"{ip,ip6}tables. nftables is built upon the building blocks of the Netfilter\n" +"infrastructure such as the existing hooks, the connection tracking system, the\n" +"userspace queueing component and the logging subsystem." +msgstr "" + +#: gnu/packages/linux.scm:4270 +msgid "Unprivileged chroot, bind mount, and binfmt_misc" +msgstr "" + +#: gnu/packages/linux.scm:4272 +msgid "" +"PRoot is a user-space implementation of @code{chroot}, @code{mount --bind},\n" +"and @code{binfmt_misc}. This means that users don't need any privileges or\n" +"setup to do things like using an arbitrary directory as the new root\n" +"file system, making files accessible somewhere else in the file system\n" +"hierarchy, or executing programs built for another CPU architecture\n" +"transparently through QEMU user-mode. Also, developers can use PRoot as a\n" +"generic process instrumentation engine thanks to its extension mechanism.\n" +"Technically PRoot relies on @code{ptrace}, an unprivileged system-call\n" +"available in the kernel Linux." +msgstr "" + +#: gnu/packages/linux.scm:4288 +msgid "Unprivileged chroot, bind mount, and binfmt_misc (statically linked)" +msgstr "" + +#: gnu/packages/linux.scm:4334 +msgid "Linux tool to dump x86 CPUID information about the CPU(s)" +msgstr "" + +#: gnu/packages/linux.scm:4335 +msgid "" +"cpuid dumps detailed information about the CPU(s) gathered\n" +"from the CPUID instruction, and also determines the exact model of CPU(s). It\n" +"supports Intel, AMD, and VIA CPUs, as well as older Transmeta, Cyrix, UMC,\n" +"NexGen, Rise, and SiS CPUs." +msgstr "" + +#: gnu/packages/linux.scm:4362 +msgid "Use a FUSE file system to access data over MTP" +msgstr "" + +#: gnu/packages/linux.scm:4363 +msgid "" +"jmtpfs uses FUSE (file system in userspace) to provide access\n" +"to data over the Media Transfer Protocol (MTP). Unprivileged users can mount\n" +"the MTP device as a file system." +msgstr "" + +#: gnu/packages/linux.scm:4386 +msgid "Utility to show process environment" +msgstr "Redskab til at vise procesmiljø" + +#: gnu/packages/linux.scm:4387 +msgid "" +"Procenv is a command-line tool that displays as much detail about\n" +"itself and its environment as possible. It can be used as a test\n" +"tool, to understand the type of environment a process runs in, and for\n" +"comparing system environments." +msgstr "" + +#: gnu/packages/linux.scm:4414 +msgid "Open Fabric Interfaces" +msgstr "" + +#: gnu/packages/linux.scm:4416 +msgid "" +"OpenFabrics Interfaces (OFI) is a framework focused on exporting fabric\n" +"communication services to applications. OFI is best described as a collection\n" +"of libraries and applications used to export fabric services. The key\n" +"components of OFI are: application interfaces, provider libraries, kernel\n" +"services, daemons, and test applications.\n" +"\n" +"Libfabric is a core component of OFI. It is the library that defines and\n" +"exports the user-space API of OFI, and is typically the only software that\n" +"applications deal with directly. It works in conjunction with provider\n" +"libraries, which are often integrated directly into libfabric." +msgstr "" + +#: gnu/packages/linux.scm:4462 +msgid "Intel Performance Scaled Messaging (PSM) Libraries" +msgstr "" + +#: gnu/packages/linux.scm:4464 +msgid "" +"The PSM Messaging API, or PSM API, is Intel's low-level user-level\n" +"communications interface for the True Scale family of products. PSM users are\n" +"enabled with mechanisms necessary to implement higher level communications\n" +"interfaces in parallel environments." +msgstr "" + +#: gnu/packages/linux.scm:4505 +msgid "Take screenshots of one or more Linux text consoles" +msgstr "" + +#: gnu/packages/linux.scm:4507 +msgid "" +"snapscreenshot saves a screenshot of one or more Linux text consoles as a\n" +"Targa (@dfn{.tga}) image. It can be used by anyone with read access to the\n" +"relevant @file{/dev/vcs*} file(s)." +msgstr "" + +#: gnu/packages/linux.scm:4561 +msgid "Take a screenshot of the contents of the Linux framebuffer" +msgstr "" + +#: gnu/packages/linux.scm:4563 +msgid "" +"fbcat saves the contents of the Linux framebuffer (@file{/dev/fb*}), or\n" +"a dump therof. It supports a wide range of drivers and pixel formats.\n" +"@command{fbcat} can take screenshots of virtually any application that can be\n" +"made to write its output to the framebuffer, including (but not limited to)\n" +"text-mode or graphical applications that don't use a display server.\n" +"\n" +"Also included is @command{fbgrab}, a wrapper around @command{fbcat} that\n" +"emulates the behaviour of Gunnar Monell's older fbgrab utility." +msgstr "" + +#: gnu/packages/linux.scm:4594 +msgid "Control groups management tools" +msgstr "" + +#: gnu/packages/linux.scm:4595 +msgid "" +"Control groups is Linux kernel method for process resource\n" +"restriction, permission handling and more. This package provides userspace\n" +"interface to this kernel feature." +msgstr "" + +#: gnu/packages/linux.scm:4628 +msgid "Control fan speed on Macbooks" +msgstr "" + +#: gnu/packages/linux.scm:4630 +msgid "" +"mbpfan is a fan control daemon for Apple Macbooks. It uses input from\n" +"the @code{coretemp} module and sets the fan speed using the @code{applesmc}\n" +"module. It can be executed as a daemon or in the foreground with root\n" +"privileges." +msgstr "" + +#: gnu/packages/linux.scm:4673 +msgid "Intel Performance Scaled Messaging 2 (PSM2) library" +msgstr "" + +#: gnu/packages/linux.scm:4675 +msgid "" +"This package is low-level user-level Intel's communications interface.\n" +"The PSM2 API is a high-performance vendor-specific protocol that provides a\n" +"low-level communications interface for the Intel Omni-Path family of\n" +"high-speed networking devices." +msgstr "" + +#: gnu/packages/linux.scm:4715 +msgid "Performance event monitoring library" +msgstr "Bibliotek til at overvåge ydelseshændelser" + +#: gnu/packages/linux.scm:4717 +msgid "" +"This package provides a library called libpfm4, which is used to develop\n" +"monitoring tools exploiting the performance monitoring events such as those\n" +"provided by the Performance Monitoring Unit (PMU) of modern processors.\n" +"\n" +"Libpfm4 helps convert from an event name, expressed as a string, to the event\n" +"encoding that is either the raw event as documented by the hardware vendor or\n" +"the OS-specific encoding. In the latter case, the library is able to prepare\n" +"the OS-specific data structures needed by the kernel to setup the event.\n" +"\n" +"libpfm4 provides support for the @code{perf_events} interface, which was\n" +"introduced in Linux 2.6.31." +msgstr "" + +#: gnu/packages/lout.scm:100 msgid "Document layout system" msgstr "" -#: gnu/packages/lout.scm:111 +#: gnu/packages/lout.scm:102 msgid "" "The Lout document formatting system reads a high-level description of\n" "a document similar in style to LaTeX and produces a PostScript or plain text\n" @@ -7759,11 +9389,11 @@ msgid "" "beginning." msgstr "" -#: gnu/packages/messaging.scm:109 +#: gnu/packages/messaging.scm:117 msgid "Off-the-Record (OTR) Messaging Library and Toolkit" msgstr "" -#: gnu/packages/messaging.scm:111 +#: gnu/packages/messaging.scm:119 msgid "" "OTR allows you to have private conversations over instant messaging by\n" "providing: (1) Encryption: No one else can read your instant messages. (2)\n" @@ -7776,11 +9406,23 @@ msgid "" "keys, no previous conversation is compromised." msgstr "" -#: gnu/packages/messaging.scm:156 +#: gnu/packages/messaging.scm:153 +msgid "Implementation of a ratcheting forward secrecy protocol" +msgstr "" + +#: gnu/packages/messaging.scm:154 +msgid "" +"libsignal-protocol-c is an implementation of a ratcheting\n" +"forward secrecy protocol that works in synchronous and asynchronous\n" +"messaging environments. It can be used with messaging software to provide\n" +"end-to-end encryption." +msgstr "" + +#: gnu/packages/messaging.scm:192 msgid "IRC to instant messaging gateway" msgstr "" -#: gnu/packages/messaging.scm:157 +#: gnu/packages/messaging.scm:193 msgid "" "BitlBee brings IM (instant messaging) to IRC clients, for\n" "people who have an IRC client running all the time and don't want to run an\n" @@ -7790,11 +9432,11 @@ msgid "" "identi.ca and status.net)." msgstr "" -#: gnu/packages/messaging.scm:218 +#: gnu/packages/messaging.scm:244 msgid "Graphical IRC Client" msgstr "" -#: gnu/packages/messaging.scm:220 +#: gnu/packages/messaging.scm:246 msgid "" "HexChat lets you connect to multiple IRC networks at once. The main\n" "window shows the list of currently connected networks and their channels, the\n" @@ -7803,11 +9445,11 @@ msgid "" "dictionaries. HexChat can be extended with multiple addons." msgstr "" -#: gnu/packages/messaging.scm:285 +#: gnu/packages/messaging.scm:311 msgid "Lightweight Internet Relay Chat server for small networks" msgstr "" -#: gnu/packages/messaging.scm:287 +#: gnu/packages/messaging.scm:313 msgid "" "ngIRCd is a lightweight @dfn{Internet Relay Chat} (IRC) server for small\n" "or private networks. It is easy to configure, can cope with dynamic IP\n" @@ -7815,21 +9457,21 @@ msgid "" "authentication." msgstr "" -#: gnu/packages/messaging.scm:359 +#: gnu/packages/messaging.scm:385 msgid "Graphical multi-protocol instant messaging client" msgstr "" -#: gnu/packages/messaging.scm:361 +#: gnu/packages/messaging.scm:387 msgid "" "Pidgin is a modular instant messaging client that supports many popular\n" "chat protocols." msgstr "" -#: gnu/packages/messaging.scm:399 +#: gnu/packages/messaging.scm:425 msgid "Off-the-Record Messaging plugin for Pidgin" msgstr "" -#: gnu/packages/messaging.scm:401 +#: gnu/packages/messaging.scm:427 msgid "" "Pidgin-OTR is a plugin that adds support for OTR to the Pidgin instant\n" "messaging client. OTR (Off-the-Record) Messaging allows you to have private\n" @@ -7844,11 +9486,11 @@ msgid "" "compromised." msgstr "" -#: gnu/packages/messaging.scm:452 +#: gnu/packages/messaging.scm:478 msgid "IRC network bouncer" msgstr "" -#: gnu/packages/messaging.scm:453 +#: gnu/packages/messaging.scm:479 msgid "" "ZNC is an IRC network bouncer or BNC. It can detach the\n" "client from the actual IRC server, and also from selected channels. Multiple\n" @@ -7856,22 +9498,22 @@ msgid "" "simultaneously and therefore appear under the same nickname on IRC." msgstr "" -#: gnu/packages/messaging.scm:474 +#: gnu/packages/messaging.scm:500 msgid "Non-blocking Jabber/XMPP module" msgstr "" -#: gnu/packages/messaging.scm:476 +#: gnu/packages/messaging.scm:502 msgid "" "The goal of this python library is to provide a way for Python\n" "applications to use Jabber/XMPP networks in a non-blocking way. This library\n" "was initially a fork of xmpppy, but uses non-blocking sockets." msgstr "" -#: gnu/packages/messaging.scm:525 +#: gnu/packages/messaging.scm:590 msgid "Jabber (XMPP) client" msgstr "" -#: gnu/packages/messaging.scm:526 +#: gnu/packages/messaging.scm:591 msgid "" "Gajim is a feature-rich and easy to use Jabber/XMPP client.\n" "Among its features are: a tabbed chat window and single window modes; support\n" @@ -7880,11 +9522,21 @@ msgid "" "end-to-end encryption support; XML console." msgstr "" -#: gnu/packages/messaging.scm:615 +#: gnu/packages/messaging.scm:660 +msgid "Graphical Jabber (XMPP) client" +msgstr "" + +#: gnu/packages/messaging.scm:661 +msgid "" +"Dino is a Jabber (XMPP) client which aims to fit well into\n" +"a graphical desktop environment like GNOME." +msgstr "" + +#: gnu/packages/messaging.scm:750 msgid "Jabber (XMPP) server" msgstr "" -#: gnu/packages/messaging.scm:616 +#: gnu/packages/messaging.scm:751 msgid "" "Prosody is a modern XMPP communication server. It aims to\n" "be easy to set up and configure, and efficient with system resources.\n" @@ -7893,58 +9545,58 @@ msgid "" "protocols." msgstr "" -#: gnu/packages/messaging.scm:658 gnu/packages/messaging.scm:699 +#: gnu/packages/messaging.scm:793 gnu/packages/messaging.scm:826 msgid "Library for the Tox encrypted messenger protocol" msgstr "" -#: gnu/packages/messaging.scm:660 +#: gnu/packages/messaging.scm:795 msgid "C library implementation of the Tox encrypted messenger protocol." msgstr "C-biblioteksimplementering for den Tox-krypterede messengerprotokol." -#: gnu/packages/messaging.scm:701 +#: gnu/packages/messaging.scm:828 msgid "" -"Official fork of the C library implementation of the Tox\n" -"encrypted messenger protocol." +"Official fork of the C library implementation of the Tox encrypted\n" +"messenger protocol." msgstr "" "Officel forgrening af C-biblioteksimplementering for den\n" "Tox-krypterede messengerprotokol." -#: gnu/packages/messaging.scm:749 +#: gnu/packages/messaging.scm:883 msgid "Lightweight Tox client" msgstr "Simpel Tox-klient" -#: gnu/packages/messaging.scm:751 +#: gnu/packages/messaging.scm:885 msgid "" "Utox is a lightweight Tox client. Tox is a distributed and secure\n" "instant messenger with audio and video chat capabilities." msgstr "" -#: gnu/packages/messaging.scm:802 +#: gnu/packages/messaging.scm:942 msgid "Tox chat client using Qt" msgstr "Tox-snakkeklient der bruger Qt" -#: gnu/packages/messaging.scm:803 +#: gnu/packages/messaging.scm:943 msgid "" "qTox is a Tox client that follows the Tox design\n" "guidelines. It provides an easy to use application that allows you to\n" "connect with friends and family without anyone else listening in." msgstr "" -#: gnu/packages/messaging.scm:900 +#: gnu/packages/messaging.scm:1036 msgid "" "Distributed and trustless peer-to-peer communications protocol\n" "for sending encrypted messages to one person or many subscribers." msgstr "" -#: gnu/packages/messaging.scm:902 +#: gnu/packages/messaging.scm:1038 msgid "Distributed peer-to-peer communication" msgstr "" -#: gnu/packages/messaging.scm:921 +#: gnu/packages/messaging.scm:1057 msgid "Multi-user chat program" msgstr "" -#: gnu/packages/messaging.scm:922 +#: gnu/packages/messaging.scm:1058 msgid "" "Ytalk is a replacement for the BSD talk program. Its main\n" "advantage is the ability to communicate with any arbitrary number of users at\n" @@ -7952,11 +9604,11 @@ msgid "" "with several different talk daemons at the same time." msgstr "" -#: gnu/packages/messaging.scm:947 +#: gnu/packages/messaging.scm:1083 msgid "Portable high-level Jabber/XMPP library for C++" msgstr "" -#: gnu/packages/messaging.scm:949 +#: gnu/packages/messaging.scm:1085 msgid "" "gloox is a full-featured Jabber/XMPP client library,\n" "written in ANSI C++. It makes writing spec-compliant clients easy\n" @@ -7964,7 +9616,7 @@ msgid "" "into existing applications." msgstr "" -#: gnu/packages/messaging.scm:1022 +#: gnu/packages/messaging.scm:1158 msgid "" "@code{Net::PSYC} with support for TCP, UDP, Event.pm, @code{IO::Select} and\n" "Gtk2 event loops. This package includes 12 applications and additional scripts:\n" @@ -7972,26 +9624,26 @@ msgid "" "for @uref{https://torproject.org,tor} router) and many more." msgstr "" -#: gnu/packages/messaging.scm:1026 +#: gnu/packages/messaging.scm:1162 msgid "Perl implementation of PSYC protocol" msgstr "Perlimplementering af PSYC-protokollen" -#: gnu/packages/messaging.scm:1065 +#: gnu/packages/messaging.scm:1201 msgid "" "@code{libpsyc} is a PSYC library in C which implements\n" "core aspects of PSYC, useful for all kinds of clients and servers\n" "including psyced." msgstr "" -#: gnu/packages/messaging.scm:1068 +#: gnu/packages/messaging.scm:1204 msgid "PSYC library in C" msgstr "" -#: gnu/packages/messaging.scm:1135 +#: gnu/packages/messaging.scm:1271 msgid "psycLPC is a multi-user network server programming language" msgstr "" -#: gnu/packages/messaging.scm:1137 +#: gnu/packages/messaging.scm:1273 msgid "" "LPC is a bytecode language, invented to specifically implement\n" "multi user virtual environments on the internet. This technology is used for\n" @@ -8000,7 +9652,7 @@ msgid "" "many bug fixes." msgstr "" -#: gnu/packages/messaging.scm:1168 +#: gnu/packages/messaging.scm:1304 msgid "" "Loudmouth is a lightweight and easy-to-use C library for programming\n" "with the XMPP (formerly known as Jabber) protocol. It is designed to be\n" @@ -8008,11 +9660,11 @@ msgid "" "protocol allows." msgstr "" -#: gnu/packages/messaging.scm:1172 +#: gnu/packages/messaging.scm:1308 msgid "Asynchronous XMPP library" msgstr "" -#: gnu/packages/messaging.scm:1204 +#: gnu/packages/messaging.scm:1340 msgid "" "Mcabber is a small XMPP (Jabber) console client, which includes features\n" "such as SASL and TLS support, @dfn{Multi-User Chat} (MUC) support, logging,\n" @@ -8020,15 +9672,15 @@ msgid "" "support, and more." msgstr "" -#: gnu/packages/messaging.scm:1208 +#: gnu/packages/messaging.scm:1344 msgid "Small XMPP console client" msgstr "Lille XMPP-konsolklient" -#: gnu/packages/messaging.scm:1254 +#: gnu/packages/messaging.scm:1390 msgid "Extensible console-based Jabber client" msgstr "" -#: gnu/packages/messaging.scm:1256 +#: gnu/packages/messaging.scm:1392 msgid "" "GNU Freetalk is a command-line Jabber/XMPP chat client. It notably uses\n" "the Readline library to handle input, so it features convenient navigation of\n" @@ -8036,39 +9688,39 @@ msgid "" "is also scriptable and extensible via Guile." msgstr "" -#: gnu/packages/messaging.scm:1290 gnu/packages/messaging.scm:1325 +#: gnu/packages/messaging.scm:1426 gnu/packages/messaging.scm:1461 msgid "C library for writing XMPP clients" msgstr "C-bibliotek til at skrive XMPP-klienter" -#: gnu/packages/messaging.scm:1291 +#: gnu/packages/messaging.scm:1427 msgid "" "Libmesode is a fork of libstrophe for use with Profanity\n" "XMPP Client. In particular, libmesode provides extra TLS functionality such as\n" "manual SSL certificate verification." msgstr "" -#: gnu/packages/messaging.scm:1326 +#: gnu/packages/messaging.scm:1462 msgid "" "Libstrophe is a minimal XMPP library written in C. It has\n" "almost no external dependencies, only an XML parsing library (expat or libxml\n" "are both supported)." msgstr "" -#: gnu/packages/messaging.scm:1362 +#: gnu/packages/messaging.scm:1498 msgid "Console-based XMPP client" msgstr "" -#: gnu/packages/messaging.scm:1363 +#: gnu/packages/messaging.scm:1499 msgid "" "Profanity is a console based XMPP client written in C\n" "using ncurses and libmesode, inspired by Irssi." msgstr "" -#: gnu/packages/messaging.scm:1393 +#: gnu/packages/messaging.scm:1529 msgid "Library implementing the client IRC protocol" msgstr "Bibliotek der implementerer IRC-protokollen for klienten" -#: gnu/packages/messaging.scm:1394 +#: gnu/packages/messaging.scm:1530 msgid "" "Libircclient is a library which implements the client IRC\n" "protocol. It is designed to be small, fast, portable and compatible with the\n" @@ -8076,21 +9728,32 @@ msgid "" "building the IRC clients and bots." msgstr "" -#: gnu/packages/mpd.scm:69 +#: gnu/packages/messaging.scm:1580 +msgid "Tox chat client using ncurses" +msgstr "Tox-snakkeklient der bruger ncurses" + +#: gnu/packages/messaging.scm:1581 +msgid "" +"Toxic is a console-based instant messaging client, using\n" +"c-toxcore and ncurses. It provides audio calls, sound and desktop\n" +"notifications, and Python scripting support." +msgstr "" + +#: gnu/packages/mpd.scm:82 msgid "Music Player Daemon client library" msgstr "Klientbibliotek for Music Player Daemon" -#: gnu/packages/mpd.scm:70 +#: gnu/packages/mpd.scm:83 msgid "" "A stable, documented, asynchronous API library for\n" "interfacing MPD in the C, C++ & Objective C languages." msgstr "" -#: gnu/packages/mpd.scm:142 +#: gnu/packages/mpd.scm:154 msgid "Music Player Daemon" msgstr "Music Player Daemon" -#: gnu/packages/mpd.scm:143 +#: gnu/packages/mpd.scm:155 msgid "" "Music Player Daemon (MPD) is a flexible, powerful,\n" "server-side application for playing music. Through plugins and libraries it\n" @@ -8098,11 +9761,11 @@ msgid "" "protocol." msgstr "" -#: gnu/packages/mpd.scm:166 +#: gnu/packages/mpd.scm:178 msgid "Music Player Daemon client" msgstr "Music Player - dæmonklient" -#: gnu/packages/mpd.scm:167 +#: gnu/packages/mpd.scm:179 msgid "" "MPC is a minimalist command line interface to MPD, the music\n" "player daemon." @@ -8110,21 +9773,21 @@ msgstr "" "MPC er en minimalistisk kommandolinjegrænseflade til MPD,\n" "musikafspillerdæmonen." -#: gnu/packages/mpd.scm:190 +#: gnu/packages/mpd.scm:202 msgid "Curses Music Player Daemon client" msgstr "" -#: gnu/packages/mpd.scm:191 +#: gnu/packages/mpd.scm:203 msgid "" "ncmpc is a fully featured MPD client, which runs in a\n" "terminal using ncurses." msgstr "" -#: gnu/packages/mpd.scm:220 +#: gnu/packages/mpd.scm:233 msgid "Featureful ncurses based MPD client inspired by ncmpc" msgstr "" -#: gnu/packages/mpd.scm:221 +#: gnu/packages/mpd.scm:234 msgid "" "Ncmpcpp is an mpd client with a UI very similar to ncmpc,\n" "but it provides new useful features such as support for regular expressions\n" @@ -8132,42 +9795,42 @@ msgid "" "sort playlists, and a local file system browser." msgstr "" -#: gnu/packages/mpd.scm:244 +#: gnu/packages/mpd.scm:257 msgid "MPD client for track scrobbling" msgstr "" -#: gnu/packages/mpd.scm:245 +#: gnu/packages/mpd.scm:258 msgid "" "mpdscribble is a Music Player Daemon client which submits\n" "information about tracks being played to a scrobbler, such as Libre.FM." msgstr "" -#: gnu/packages/mpd.scm:270 +#: gnu/packages/mpd.scm:281 msgid "Python MPD client library" msgstr "" -#: gnu/packages/mpd.scm:271 +#: gnu/packages/mpd.scm:282 msgid "" "Python-mpd2 is a Python library which provides a client\n" "interface for the Music Player Daemon." msgstr "" -#: gnu/packages/mpd.scm:320 +#: gnu/packages/mpd.scm:331 msgid "Elegant client for the Music Player Daemon" msgstr "" -#: gnu/packages/mpd.scm:321 +#: gnu/packages/mpd.scm:332 msgid "" "Sonata is an elegant graphical client for the Music Player\n" "Daemon (MPD). It supports playlists, multiple profiles (connecting to different\n" "MPD servers, search and multimedia key support." msgstr "" -#: gnu/packages/netpbm.scm:167 +#: gnu/packages/netpbm.scm:178 msgid "Toolkit for manipulation of images" msgstr "" -#: gnu/packages/netpbm.scm:169 +#: gnu/packages/netpbm.scm:180 msgid "" "Netpbm is a toolkit for the manipulation of graphic images, including\n" "the conversion of images between a variety of different formats.\n" @@ -8175,11 +9838,11 @@ msgid "" "about 100 graphics formats." msgstr "" -#: gnu/packages/nettle.scm:51 +#: gnu/packages/nettle.scm:52 msgid "C library for low-level cryptographic functionality" msgstr "" -#: gnu/packages/nettle.scm:53 +#: gnu/packages/nettle.scm:54 msgid "" "GNU Nettle is a low-level cryptographic library. It is designed to\n" "fit in easily in almost any context. It can be easily included in\n" @@ -8187,11 +9850,11 @@ msgid "" "themselves." msgstr "" -#: gnu/packages/networking.scm:81 +#: gnu/packages/networking.scm:108 msgid "Viewing and manipulating MAC addresses of network interfaces" msgstr "" -#: gnu/packages/networking.scm:82 +#: gnu/packages/networking.scm:109 msgid "" "GNU MAC Changer is a utility for viewing and changing MAC\n" "addresses of networking devices. New addresses may be set explicitly or\n" @@ -8199,22 +9862,22 @@ msgid "" "or, more generally, MAC addresses of the same category of hardware." msgstr "" -#: gnu/packages/networking.scm:110 +#: gnu/packages/networking.scm:137 msgid "Teredo IPv6 tunneling software" msgstr "" -#: gnu/packages/networking.scm:112 +#: gnu/packages/networking.scm:139 msgid "" "Miredo is an implementation (client, relay, server) of the Teredo\n" "specification, which provides IPv6 Internet connectivity to IPv6 enabled hosts\n" "residing in IPv4-only networks, even when they are behind a NAT device." msgstr "" -#: gnu/packages/networking.scm:134 +#: gnu/packages/networking.scm:161 msgid "Open bidirectional communication channels from the command line" msgstr "" -#: gnu/packages/networking.scm:136 +#: gnu/packages/networking.scm:163 msgid "" "socat is a relay for bidirectional data transfer between two independent\n" "data channels---files, pipes, devices, sockets, etc. It can create\n" @@ -8227,22 +9890,22 @@ msgid "" "or server shell scripts with network connections." msgstr "" -#: gnu/packages/networking.scm:217 +#: gnu/packages/networking.scm:244 msgid "Monitor and filter incoming requests for network services" msgstr "" -#: gnu/packages/networking.scm:218 +#: gnu/packages/networking.scm:245 msgid "" "With this package you can monitor and filter incoming requests for\n" "network services. It includes a library which may be used by daemons to\n" "transparently check connection attempts against an access control list." msgstr "" -#: gnu/packages/networking.scm:238 +#: gnu/packages/networking.scm:265 msgid "Library for message-based applications" msgstr "" -#: gnu/packages/networking.scm:240 +#: gnu/packages/networking.scm:267 msgid "" "The 0MQ lightweight messaging kernel is a library which extends the\n" "standard socket interfaces with features traditionally provided by specialized\n" @@ -8252,43 +9915,53 @@ msgid "" "more." msgstr "" -#: gnu/packages/networking.scm:279 -msgid "Apache Kafka C/C++ client library" +#: gnu/packages/networking.scm:305 +msgid "High-level C bindings for ØMQ" +msgstr "C-bindinger for ØMQ på højere niveau" + +#: gnu/packages/networking.scm:307 +msgid "" +"czmq provides bindings for the ØMQ core API that hides the differences\n" +"between different versions of ØMQ." msgstr "" -#: gnu/packages/networking.scm:281 +#: gnu/packages/networking.scm:342 +msgid "Apache Kafka C/C++ client library" +msgstr "Apache Kafka C/C++-klientbibliotek" + +#: gnu/packages/networking.scm:344 msgid "" "librdkafka is a C library implementation of the Apache Kafka protocol,\n" "containing both Producer and Consumer support." msgstr "" -#: gnu/packages/networking.scm:298 +#: gnu/packages/networking.scm:361 msgid "Library for Neighbor Discovery Protocol" -msgstr "" +msgstr "Bibliotek for Neighbor Discovery Protocol" -#: gnu/packages/networking.scm:300 +#: gnu/packages/networking.scm:363 msgid "" "libndp contains a library which provides a wrapper for IPv6 Neighbor\n" "Discovery Protocol. It also provides a tool named ndptool for sending and\n" "receiving NDP messages." msgstr "" -#: gnu/packages/networking.scm:318 +#: gnu/packages/networking.scm:381 msgid "Display or change Ethernet device settings" msgstr "" -#: gnu/packages/networking.scm:320 +#: gnu/packages/networking.scm:383 msgid "" "ethtool can be used to query and change settings such as speed,\n" "auto-negotiation and checksum offload on many network devices, especially\n" "Ethernet devices." msgstr "" -#: gnu/packages/networking.scm:357 +#: gnu/packages/networking.scm:420 msgid "Text based network interface status monitor" msgstr "" -#: gnu/packages/networking.scm:359 +#: gnu/packages/networking.scm:422 msgid "" "IFStatus is a simple, easy-to-use program for displaying commonly\n" "needed/wanted real-time traffic statistics of multiple network\n" @@ -8296,11 +9969,11 @@ msgid "" "intended as a substitute for the PPPStatus and EthStatus projects." msgstr "" -#: gnu/packages/networking.scm:379 +#: gnu/packages/networking.scm:442 msgid "Realtime console network usage monitor" msgstr "" -#: gnu/packages/networking.scm:381 +#: gnu/packages/networking.scm:444 msgid "" "Nload is a console application which monitors network traffic and\n" "bandwidth usage in real time. It visualizes the in- and outgoing traffic using\n" @@ -8308,11 +9981,11 @@ msgid "" "and min/max network usage." msgstr "" -#: gnu/packages/networking.scm:424 +#: gnu/packages/networking.scm:487 msgid "Tunnel IPv4 data through a DNS server" msgstr "" -#: gnu/packages/networking.scm:425 +#: gnu/packages/networking.scm:488 msgid "" "Iodine tunnels IPv4 data through a DNS server. This\n" "can be useful in different situations where internet access is firewalled, but\n" @@ -8320,34 +9993,53 @@ msgid "" "and up to 1 Mbit/s downstream." msgstr "" -#: gnu/packages/networking.scm:463 -msgid "Improved whois client" +#: gnu/packages/networking.scm:526 +msgid "Intelligent client for the WHOIS directory service" msgstr "" -#: gnu/packages/networking.scm:464 +#: gnu/packages/networking.scm:528 msgid "" -"This whois client is intelligent and can\n" -"automatically select the appropriate whois server for most queries.\n" -"Because of historical reasons this also includes a tool called mkpasswd\n" -"which can be used to encrypt a password with @code{crypt(3)}." +"whois searches for an object in a @dfn{WHOIS} (RFC 3912) database.\n" +"It is commonly used to look up the registered users or assignees of an Internet\n" +"resource, such as a domain name, an IP address block, or an autonomous system.\n" +"It can automatically select the appropriate server for most queries.\n" +"\n" +"For historical reasons, this package also includes @command{mkpasswd}, which\n" +"encrypts passwords using @code{crypt(3)} and is unrelated to the Expect command\n" +"of the same name." msgstr "" -#: gnu/packages/networking.scm:475 +#: gnu/packages/networking.scm:585 msgid "Network traffic analyzer" msgstr "" -#: gnu/packages/networking.scm:516 +#: gnu/packages/networking.scm:586 msgid "" "Wireshark is a network protocol analyzer, or @dfn{packet\n" "sniffer}, that lets you capture and interactively browse the contents of\n" "network frames." msgstr "" -#: gnu/packages/networking.scm:547 +#: gnu/packages/networking.scm:606 +msgid "Send ICMP ECHO_REQUEST packets to network hosts" +msgstr "" + +#: gnu/packages/networking.scm:608 +msgid "" +"fping is a ping like program which uses the Internet Control Message\n" +"Protocol (ICMP) echo request to determine if a target host is responding.\n" +"fping differs from ping in that you can specify any number of targets on the\n" +"command line, or specify a file containing the lists of targets to ping.\n" +"Instead of sending to one target until it times out or replies, fping will\n" +"send out a ping packet and move on to the next target in a round-robin\n" +"fashion." +msgstr "" + +#: gnu/packages/networking.scm:642 msgid "Web server latency and throughput monitor" msgstr "" -#: gnu/packages/networking.scm:549 +#: gnu/packages/networking.scm:644 msgid "" "httping measures how long it takes to connect to a web server, send an\n" "HTTP(S) request, and receive the reply headers. It is somewhat similar to\n" @@ -8356,11 +10048,11 @@ msgid "" "application stack itself." msgstr "" -#: gnu/packages/networking.scm:580 +#: gnu/packages/networking.scm:675 msgid "Visualize curl statistics" msgstr "" -#: gnu/packages/networking.scm:582 +#: gnu/packages/networking.scm:677 msgid "" "@command{httpstat} is a tool to visualize statistics from the\n" "@command{curl} HTTP client. It acts as a wrapper for @command{curl} and\n" @@ -8368,21 +10060,21 @@ msgid "" "TCP connection, TLS handshake and so on) in the terminal." msgstr "" -#: gnu/packages/networking.scm:602 +#: gnu/packages/networking.scm:697 msgid "Console based live network and disk I/O bandwidth monitor" msgstr "" -#: gnu/packages/networking.scm:603 +#: gnu/packages/networking.scm:698 msgid "" "Bandwidth Monitor NG is a small and simple console based\n" "live network and disk I/O bandwidth monitor." msgstr "" -#: gnu/packages/networking.scm:652 +#: gnu/packages/networking.scm:752 msgid "Assess WiFi network security" msgstr "" -#: gnu/packages/networking.scm:654 +#: gnu/packages/networking.scm:754 msgid "" "Aircrack-ng is a complete suite of tools to assess WiFi network\n" "security. It focuses on different areas of WiFi security: monitoring,\n" @@ -8390,94 +10082,105 @@ msgid "" "allows for heavy scripting." msgstr "" -#: gnu/packages/networking.scm:679 +#: gnu/packages/networking.scm:779 msgid "Perl Interface to the Domain Name System" msgstr "" -#: gnu/packages/networking.scm:680 +#: gnu/packages/networking.scm:780 msgid "Net::DNS is the Perl Interface to the Domain Name System." msgstr "" -#: gnu/packages/networking.scm:711 +#: gnu/packages/networking.scm:811 msgid "IPv6 related part of the C socket.h defines and structure manipulators for Perl" msgstr "" -#: gnu/packages/networking.scm:712 +#: gnu/packages/networking.scm:812 msgid "" "Socket6 binds the IPv6 related part of the C socket header\n" "definitions and structure manipulators for Perl." msgstr "" -#: gnu/packages/networking.scm:738 +#: gnu/packages/networking.scm:838 msgid "Programmable DNS resolver class for offline emulation of DNS" msgstr "" -#: gnu/packages/networking.scm:739 +#: gnu/packages/networking.scm:839 msgid "" "Net::DNS::Resolver::Programmable is a programmable DNS resolver for\n" "offline emulation of DNS." msgstr "" -#: gnu/packages/networking.scm:772 +#: gnu/packages/networking.scm:872 msgid "Manages IPv4 and IPv6 addresses and subnets" msgstr "" -#: gnu/packages/networking.scm:773 +#: gnu/packages/networking.scm:873 msgid "NetAddr::IP manages IPv4 and IPv6 addresses and subsets." msgstr "" -#: gnu/packages/networking.scm:797 +#: gnu/packages/networking.scm:897 msgid "Patricia Trie Perl module for fast IP address lookups" msgstr "" -#: gnu/packages/networking.scm:799 +#: gnu/packages/networking.scm:899 msgid "Net::Patricia does IP address lookups quickly in Perl." msgstr "" -#: gnu/packages/networking.scm:822 +#: gnu/packages/networking.scm:922 msgid "Perl extension for merging IPv4 or IPv6 CIDR addresses" msgstr "" -#: gnu/packages/networking.scm:823 +#: gnu/packages/networking.scm:923 msgid "Net::CIDR::Lite merges IPv4 or IPv6 CIDR addresses." msgstr "" -#: gnu/packages/networking.scm:845 +#: gnu/packages/networking.scm:945 msgid "Look up location and network information by IP Address in Perl" msgstr "" -#: gnu/packages/networking.scm:846 +#: gnu/packages/networking.scm:946 msgid "" "The Perl module 'Geo::IP'. It looks up location and network\n" "information by IP Address." msgstr "" -#: gnu/packages/networking.scm:875 +#: gnu/packages/networking.scm:975 msgid "Perl object interface for AF_INET/AF_INET6 domain sockets" msgstr "" -#: gnu/packages/networking.scm:876 +#: gnu/packages/networking.scm:976 msgid "" "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain\n" "sockets in Perl." msgstr "" -#: gnu/packages/networking.scm:907 +#: gnu/packages/networking.scm:1005 +msgid "Library providing automatic proxy configuration management" +msgstr "" + +#: gnu/packages/networking.scm:1006 +msgid "" +"Libproxy handles the details of HTTP/HTTPS proxy\n" +"configuration for applications across all scenarios. Applications using\n" +"libproxy only have to specify which proxy to use." +msgstr "" + +#: gnu/packages/networking.scm:1039 msgid "Redirect any TCP connection through a proxy or proxy chain" msgstr "" -#: gnu/packages/networking.scm:908 +#: gnu/packages/networking.scm:1040 msgid "" "Proxychains-ng is a preloader which hooks calls to sockets\n" "in dynamically linked programs and redirects them through one or more SOCKS or\n" "HTTP proxies." msgstr "" -#: gnu/packages/networking.scm:929 +#: gnu/packages/networking.scm:1061 msgid "Network communication layer on top of UDP" msgstr "" -#: gnu/packages/networking.scm:931 +#: gnu/packages/networking.scm:1063 msgid "" "ENet's purpose is to provide a relatively thin, simple and robust network\n" "communication layer on top of UDP. The primary feature it provides is optional\n" @@ -8487,11 +10190,11 @@ msgid "" "library remains flexible, portable, and easily embeddable." msgstr "" -#: gnu/packages/networking.scm:994 +#: gnu/packages/networking.scm:1127 msgid "Applicative network protocol demultiplexer" msgstr "" -#: gnu/packages/networking.scm:996 +#: gnu/packages/networking.scm:1129 msgid "" "sslh is a network protocol demultiplexer. It acts like a switchboard,\n" "accepting connections from clients on one port and forwarding them to different\n" @@ -8503,11 +10206,11 @@ msgid "" "that block port 22." msgstr "" -#: gnu/packages/networking.scm:1019 +#: gnu/packages/networking.scm:1152 msgid "TCP, UDP and SCTP bandwidth measurement tool" msgstr "" -#: gnu/packages/networking.scm:1021 +#: gnu/packages/networking.scm:1154 msgid "" "iPerf is a tool to measure achievable bandwidth on IP networks. It\n" "supports tuning of various parameters related to timing, buffers and\n" @@ -8515,11 +10218,11 @@ msgid "" "the bandwidth, loss, and other parameters." msgstr "" -#: gnu/packages/networking.scm:1054 +#: gnu/packages/networking.scm:1187 msgid "Per-process bandwidth monitor" msgstr "" -#: gnu/packages/networking.scm:1055 +#: gnu/packages/networking.scm:1188 msgid "" "NetHogs is a small 'net top' tool for Linux. Instead of\n" "breaking the traffic down per protocol or per subnet, like most tools do, it\n" @@ -8531,11 +10234,25 @@ msgid "" "gone wild and are suddenly taking up your bandwidth." msgstr "" -#: gnu/packages/networking.scm:1111 +#: gnu/packages/networking.scm:1234 +msgid "Usenet binary file downloader" +msgstr "" + +#: gnu/packages/networking.scm:1236 +msgid "" +"NZBGet is a binary newsgrabber, which downloads files from Usenet based\n" +"on information given in @code{nzb} files. NZBGet can be used in standalone\n" +"and in server/client modes. In standalone mode, you pass NZBGet @command{nzb}\n" +"files as command-line parameters and it downloads them and exits. NZBGet also\n" +"contains a Web interface. Its server can be controlled through remote\n" +"procedure calls (RPCs)." +msgstr "" + +#: gnu/packages/networking.scm:1290 msgid "Virtual network switch" msgstr "" -#: gnu/packages/networking.scm:1114 +#: gnu/packages/networking.scm:1293 msgid "" "Open vSwitch is a multilayer virtual switch. It is designed to enable\n" "massive network automation through programmatic extension, while still\n" @@ -8543,69 +10260,171 @@ msgid "" "IPFIX, RSPAN, CLI, LACP, 802.1ag)." msgstr "" -#: gnu/packages/networking.scm:1136 +#: gnu/packages/networking.scm:1315 msgid "Python class and tools for handling IP addresses and networks" msgstr "" -#: gnu/packages/networking.scm:1137 +#: gnu/packages/networking.scm:1316 msgid "" "The @code{IP} class allows a comfortable parsing and\n" "handling for most notations in use for IPv4 and IPv6 addresses and\n" "networks." msgstr "" -#: gnu/packages/networking.scm:1157 +#: gnu/packages/networking.scm:1339 msgid "Internet bandwidth tester" msgstr "" -#: gnu/packages/networking.scm:1159 +#: gnu/packages/networking.scm:1341 msgid "" "Command line interface for testing internet bandwidth using\n" "speedtest.net." msgstr "" -#: gnu/packages/networking.scm:1177 +#: gnu/packages/networking.scm:1359 msgid "HPA's tftp client" msgstr "" -#: gnu/packages/networking.scm:1179 +#: gnu/packages/networking.scm:1361 msgid "" "This is a tftp client derived from OpenBSD tftp with some extra options\n" "added and bugs fixed. The source includes readline support but it is not\n" "enabled due to license conflicts between the BSD advertising clause and the GPL." msgstr "" -#: gnu/packages/pdf.scm:126 +#: gnu/packages/networking.scm:1389 +msgid "Small Ident Daemon" +msgstr "" + +#: gnu/packages/networking.scm:1391 +msgid "" +"@dfn{Pidentd} (Peter's Ident Daemon) is a identd, which implements a\n" +"identification server. Pidentd looks up specific TCP/IP connections and\n" +"returns the user name and other information about the connection." +msgstr "" + +#: gnu/packages/networking.scm:1438 +msgid "Create secure pipes between sockets" +msgstr "" + +#: gnu/packages/networking.scm:1439 +msgid "" +"Spiped (pronounced \"ess-pipe-dee\") is a utility for creating\n" +"symmetrically encrypted and authenticated pipes between socket addresses, so\n" +"that one may connect to one address (e.g., a UNIX socket on localhost) and\n" +"transparently have a connection established to another address (e.g., a UNIX\n" +"socket on a different system). This is similar to 'ssh -L' functionality, but\n" +"does not use SSH and requires a pre-shared symmetric key." +msgstr "" + +#: gnu/packages/networking.scm:1466 +msgid "Routing Software Suite" +msgstr "" + +#: gnu/packages/networking.scm:1467 +msgid "" +"Quagga is a routing software suite, providing implementations\n" +"of OSPFv2, OSPFv3, RIP v1 and v2, RIPng and BGP-4 for Unix platforms.\n" +"\n" +"The Quagga architecture consists of a core daemon, @command{zebra}, which\n" +"acts as an abstraction layer to the underlying Unix kernel and presents the\n" +"Zserv API over a Unix or TCP stream to Quagga clients. It is these Zserv\n" +"clients which typically implement a routing protocol and communicate routing\n" +"updates to the zebra daemon." +msgstr "" + +#: gnu/packages/networking.scm:1518 +msgid "IPv6 security research toolkit" +msgstr "" + +#: gnu/packages/networking.scm:1519 +msgid "" +"The THC IPv6 Toolkit provides command-line tools and a library\n" +"for researching IPv6 implementations and deployments. It requires Linux 2.6 or\n" +"newer and only works on Ethernet network interfaces." +msgstr "" + +#: gnu/packages/networking.scm:1545 +msgid "Bandwidth monitor" +msgstr "" + +#: gnu/packages/networking.scm:1546 +msgid "" +"bmon is a monitoring and debugging tool to capture\n" +"networking-related statistics and prepare them visually in a human-friendly\n" +"way. It features various output methods including an interactive curses user\n" +"interface and a programmable text output for scripting." +msgstr "" + +#: gnu/packages/networking.scm:1588 +msgid "Framework for low-level network packet construction" +msgstr "" + +#: gnu/packages/networking.scm:1590 +msgid "" +"Libnet provides a fairly portable framework for network packet\n" +"construction and injection. It features portable packet creation interfaces\n" +"at the IP layer and link layer, as well as a host of supplementary\n" +"functionality. Using libnet, quick and simple packet assembly applications\n" +"can be whipped up with little effort." +msgstr "" + +#: gnu/packages/networking.scm:1618 +msgid "Network diagnostic tool" +msgstr "" + +#: gnu/packages/networking.scm:1620 +msgid "" +"@dfn{mtr} (My TraceRoute) combines the functionality of the\n" +"@command{traceroute} and @command{ping} programs in a single network diagnostic\n" +"tool. @command{mtr} can use several network protocols to detect intermediate\n" +"routers (or @dfn{hops}) between the local host and a user-specified destination.\n" +"It then continually measures the response time and packet loss at each hop, and\n" +"displays the results in real time." +msgstr "" + +#: gnu/packages/networking.scm:1672 +msgid "IKEv1/v2 keying daemon" +msgstr "" + +#: gnu/packages/networking.scm:1673 +msgid "" +"StrongSwan is an IPsec implementation originally based upon\n" +"the FreeS/WAN project. It contains support for IKEv1, IKEv2, MOBIKE, IPv6,\n" +"NAT-T and more." +msgstr "" + +#: gnu/packages/pdf.scm:121 msgid "PDF rendering library" msgstr "PDF-optegningsbibliotek" -#: gnu/packages/pdf.scm:128 +#: gnu/packages/pdf.scm:123 msgid "Poppler is a PDF rendering library based on the xpdf-3.0 code base." msgstr "Poppler er et PDF-optegningsbibliotek baseret på xpdf-3.0-kodebasen." -#: gnu/packages/pdf.scm:137 +#: gnu/packages/pdf.scm:132 msgid "Qt4 frontend for the Poppler PDF rendering library" msgstr "Qt4-brugeflade for Poppler PDF-optegningsbiblioteket" -#: gnu/packages/pdf.scm:148 +#: gnu/packages/pdf.scm:139 msgid "Qt5 frontend for the Poppler PDF rendering library" msgstr "Qt5-brugeflade for Poppler PDF-optegningsbiblioteket" -#: gnu/packages/pdf.scm:181 +#: gnu/packages/pdf.scm:172 msgid "Python bindings for Poppler-Qt4" msgstr "Pythonbindinger for Poppler-Qt4" -#: gnu/packages/pdf.scm:183 +#: gnu/packages/pdf.scm:174 msgid "" "This package provides Python bindings for the Qt4 interface of the\n" "Poppler PDF rendering library." msgstr "" -#: gnu/packages/pdf.scm:228 +#: gnu/packages/pdf.scm:219 msgid "Python bindings for Poppler-Qt5" msgstr "Pythonbindinger for Poppler-Qt5" -#: gnu/packages/pdf.scm:230 +#: gnu/packages/pdf.scm:221 msgid "" "This package provides Python bindings for the Qt5 interface of the\n" "Poppler PDF rendering library." @@ -8613,80 +10432,92 @@ msgstr "" "Denne pakke tilbyder Pythonbindinger til Qt5-grænsefladen for\n" "Poppler PDF-optegningsbiblioteket." -#: gnu/packages/pdf.scm:267 +#: gnu/packages/pdf.scm:258 msgid "Library for generating PDF files" msgstr "Bibliotek til at oprette PDF-filer" -#: gnu/packages/pdf.scm:269 +#: gnu/packages/pdf.scm:260 msgid "" "libHaru is a library for generating PDF files. libHaru does not support\n" "reading and editing of existing PDF files." msgstr "" -#: gnu/packages/pdf.scm:316 +#: gnu/packages/pdf.scm:307 msgid "Viewer for PDF files based on the Motif toolkit" msgstr "" -#: gnu/packages/pdf.scm:318 +#: gnu/packages/pdf.scm:309 msgid "Xpdf is a viewer for Portable Document Format (PDF) files." msgstr "Xpdf er en fremviser for Portable Document Format-filer (PDF)." -#: gnu/packages/pdf.scm:348 +#: gnu/packages/pdf.scm:337 msgid "Comic book support for zathura (libarchive backend)" msgstr "Understøttelse af tegneserier i zathura (libarchive-motor)" -#: gnu/packages/pdf.scm:349 +#: gnu/packages/pdf.scm:338 msgid "" "The zathura-cb plugin adds comic book support to zathura\n" "using libarchive." msgstr "" -#: gnu/packages/pdf.scm:379 +#: gnu/packages/pdf.scm:366 msgid "PS support for zathura (libspectre backend)" msgstr "" -#: gnu/packages/pdf.scm:380 +#: gnu/packages/pdf.scm:367 msgid "" "The zathura-ps plugin adds PS support to zathura\n" "using libspectre." msgstr "" -#: gnu/packages/pdf.scm:411 +#: gnu/packages/pdf.scm:396 msgid "DjVu support for zathura (DjVuLibre backend)" msgstr "" -#: gnu/packages/pdf.scm:412 +#: gnu/packages/pdf.scm:397 msgid "" "The zathura-djvu plugin adds DjVu support to zathura\n" "using the DjVuLibre library." msgstr "" -#: gnu/packages/pdf.scm:444 -msgid "PDF support for zathura (poppler backend)" -msgstr "" +#: gnu/packages/pdf.scm:429 +msgid "PDF support for zathura (mupdf backend)" +msgstr "PDF-understøttelse for zathura (mupdf-motor)" -#: gnu/packages/pdf.scm:445 +#: gnu/packages/pdf.scm:430 +msgid "" +"The zathura-pdf-mupdf plugin adds PDF support to zathura\n" +"by using the @code{mupdf} rendering library." +msgstr "" +"Udvidelsesmodulet zathura-pdf-mupdf tilføjer PDF-understøttelse\n" +"til zathura ved at brug optegningsbiblioteket @code{mupdf}." + +#: gnu/packages/pdf.scm:459 +msgid "PDF support for zathura (poppler backend)" +msgstr "PDF-understøttelse for zathura (poppler-motor)" + +#: gnu/packages/pdf.scm:460 msgid "" "The zathura-pdf-poppler plugin adds PDF support to zathura\n" "by using the poppler rendering engine." msgstr "" -#: gnu/packages/pdf.scm:482 +#: gnu/packages/pdf.scm:518 msgid "Lightweight keyboard-driven PDF viewer" msgstr "" -#: gnu/packages/pdf.scm:483 +#: gnu/packages/pdf.scm:519 msgid "" "Zathura is a customizable document viewer. It provides a\n" "minimalistic interface and an interface that mainly focuses on keyboard\n" "interaction." msgstr "" -#: gnu/packages/pdf.scm:522 +#: gnu/packages/pdf.scm:558 msgid "Tools to work with the PDF file format" msgstr "" -#: gnu/packages/pdf.scm:524 +#: gnu/packages/pdf.scm:560 msgid "" "PoDoFo is a C++ library and set of command-line tools to work with the\n" "PDF file format. It can parse PDF files and load them into memory, and makes\n" @@ -8695,11 +10526,11 @@ msgid "" "extracting content or merging files." msgstr "" -#: gnu/packages/pdf.scm:580 +#: gnu/packages/pdf.scm:609 msgid "Lightweight PDF viewer and toolkit" msgstr "" -#: gnu/packages/pdf.scm:582 +#: gnu/packages/pdf.scm:611 msgid "" "MuPDF is a C library that implements a PDF and XPS parsing and\n" "rendering engine. It is used primarily to render pages into bitmaps,\n" @@ -8707,15 +10538,15 @@ msgid "" "listing the table of contents and hyperlinks.\n" "\n" "The library ships with a rudimentary X11 viewer, and a set of command\n" -"line tools for batch rendering (pdfdraw), rewriting files (pdfclean),\n" -"and examining the file structure (pdfshow)." +"line tools for batch rendering @command{pdfdraw}, rewriting files\n" +"@command{pdfclean}, and examining the file structure @command{pdfshow}." msgstr "" -#: gnu/packages/pdf.scm:634 +#: gnu/packages/pdf.scm:663 msgid "Command-line tools and library for transforming PDF files" msgstr "" -#: gnu/packages/pdf.scm:636 +#: gnu/packages/pdf.scm:665 msgid "" "QPDF is a command-line program that does structural, content-preserving\n" "transformations on PDF files. It could have been called something like\n" @@ -8724,32 +10555,32 @@ msgid "" "program capable of converting PDF into other formats." msgstr "" -#: gnu/packages/pdf.scm:666 +#: gnu/packages/pdf.scm:695 msgid "Notetaking using a stylus" msgstr "" -#: gnu/packages/pdf.scm:668 +#: gnu/packages/pdf.scm:697 msgid "" "Xournal is an application for notetaking, sketching, keeping a journal\n" "using a stylus." msgstr "" -#: gnu/packages/pdf.scm:690 +#: gnu/packages/pdf.scm:719 msgid "Python library for generating PDFs and graphics" msgstr "Pythonbibliotek til at oprette PDF-filer og grafik" -#: gnu/packages/pdf.scm:691 +#: gnu/packages/pdf.scm:720 msgid "" "This is the ReportLab PDF Toolkit. It allows rapid creation\n" "of rich PDF documents, and also creation of charts in a variety of bitmap and\n" "vector formats." msgstr "" -#: gnu/packages/pdf.scm:744 +#: gnu/packages/pdf.scm:773 msgid "PDF presentation tool with visual effects" msgstr "PDF-præsentationsværktøj med visuelle effekter" -#: gnu/packages/pdf.scm:746 +#: gnu/packages/pdf.scm:775 msgid "" "Impressive is a tool to display PDF files that provides visual effects\n" "such as smooth alpha-blended slide transitions. It provides additional tools\n" @@ -8757,31 +10588,31 @@ msgid "" "the PDF pages." msgstr "" -#: gnu/packages/pdf.scm:793 +#: gnu/packages/pdf.scm:823 msgid "Framebuffer and drm-based image viewer" msgstr "Framebuffer og drm-baseret billedfremviser" -#: gnu/packages/pdf.scm:795 +#: gnu/packages/pdf.scm:825 msgid "" "fbida contains a few applications for viewing and editing images on\n" "the framebuffer." msgstr "" -#: gnu/packages/pdf.scm:820 +#: gnu/packages/pdf.scm:850 msgid "PDF to SVG converter" msgstr "PDF- til SVG-konverteringsprogram" -#: gnu/packages/pdf.scm:821 +#: gnu/packages/pdf.scm:851 msgid "" "@command{pdf2svg} is a simple command-line PDF to SVG\n" "converter using the Poppler and Cairo libraries." msgstr "" -#: gnu/packages/pdf.scm:852 gnu/packages/pdf.scm:889 +#: gnu/packages/pdf.scm:882 gnu/packages/pdf.scm:919 msgid "Pure Python PDF toolkit" msgstr "Pure Python PDF-værktøjssæt" -#: gnu/packages/pdf.scm:853 +#: gnu/packages/pdf.scm:883 msgid "" "PyPDF2 is a pure Python PDF library capable of:\n" "\n" @@ -8801,7 +10632,7 @@ msgid "" "manage or manipulate PDFs." msgstr "" -#: gnu/packages/pdf.scm:890 +#: gnu/packages/pdf.scm:920 msgid "" "PyPDF2 is a pure Python PDF toolkit.\n" "\n" @@ -8809,11 +10640,11 @@ msgid "" "python-pypdf2 instead." msgstr "" -#: gnu/packages/pdf.scm:914 +#: gnu/packages/pdf.scm:944 msgid "Scale and tile PDF images/pages to print on multiple pages" msgstr "" -#: gnu/packages/pdf.scm:915 +#: gnu/packages/pdf.scm:945 msgid "" "@command{pdfposter} can be used to create a large poster by\n" "building it from multple pages and/or printing it on large media. It expects\n" @@ -8826,11 +10657,11 @@ msgid "" "PDF. Indeed @command{pdfposter} was inspired by @command{poster}." msgstr "" -#: gnu/packages/pdf.scm:946 +#: gnu/packages/pdf.scm:976 msgid "Command-line utility to search text in PDF files" msgstr "" -#: gnu/packages/pdf.scm:948 +#: gnu/packages/pdf.scm:978 msgid "" "Pdfgrep searches in pdf files for strings matching a regular expression.\n" "Support some GNU grep options as file name output, page number output,\n" @@ -8851,31 +10682,31 @@ msgid "" "feature." msgstr "" -#: gnu/packages/perl.scm:143 +#: gnu/packages/perl.scm:155 msgid "Implementation of the Perl programming language" msgstr "" -#: gnu/packages/perl.scm:145 +#: gnu/packages/perl.scm:157 msgid "" "Perl 5 is a highly capable, feature-rich programming language with over\n" "24 years of development." msgstr "" -#: gnu/packages/perl.scm:164 +#: gnu/packages/perl.scm:209 msgid "Module for merging hierarchies using the C3 algorithm" msgstr "" -#: gnu/packages/perl.scm:165 +#: gnu/packages/perl.scm:210 msgid "" "This module implements the C3 algorithm, which aims to\n" "provide a sane method resolution order under multiple inheritance." msgstr "" -#: gnu/packages/perl.scm:183 +#: gnu/packages/perl.scm:228 msgid "Compute differences between two files or lists" msgstr "" -#: gnu/packages/perl.scm:184 +#: gnu/packages/perl.scm:229 msgid "" "This is a module for computing the difference between two\n" "files, two strings, or any other two lists of things. It uses an intelligent\n" @@ -8884,11 +10715,11 @@ msgid "" "differences." msgstr "" -#: gnu/packages/perl.scm:206 +#: gnu/packages/perl.scm:251 msgid "Use shorter versions of class names" msgstr "" -#: gnu/packages/perl.scm:207 +#: gnu/packages/perl.scm:252 msgid "" "The alias module loads the class you specify and exports\n" "into your namespace a subroutine that returns the class name. You can\n" @@ -8896,11 +10727,11 @@ msgid "" "implicitly." msgstr "" -#: gnu/packages/perl.scm:229 +#: gnu/packages/perl.scm:274 msgid "Transparently use Moose or Mouse modules" msgstr "" -#: gnu/packages/perl.scm:231 +#: gnu/packages/perl.scm:276 msgid "" "This module facilitates using @code{Moose} or @code{Mouse} modules\n" "without changing the code. By default, Mouse will be provided to libraries,\n" @@ -8909,41 +10740,31 @@ msgid "" "variable ANY_MOOSE to be Moose or Mouse." msgstr "" -#: gnu/packages/perl.scm:254 +#: gnu/packages/perl.scm:299 msgid "Configuration files and command line parsing" msgstr "" -#: gnu/packages/perl.scm:255 +#: gnu/packages/perl.scm:300 msgid "" "AppConfig is a bundle of Perl5 modules for reading\n" "configuration files and parsing command line arguments." msgstr "" -#: gnu/packages/perl.scm:273 -msgid "Perl API to zip files" -msgstr "" - -#: gnu/packages/perl.scm:274 gnu/packages/zip.scm:174 -msgid "" -"The Archive::Zip module allows a Perl program to create,\n" -"manipulate, read, and write Zip archive files." -msgstr "" - -#: gnu/packages/perl.scm:295 +#: gnu/packages/perl.scm:320 msgid "Small utils for array manipulation" msgstr "" -#: gnu/packages/perl.scm:296 +#: gnu/packages/perl.scm:321 msgid "" "@code{Array::Utils} is a small pure-perl module containing\n" "list manipulation routines." msgstr "" -#: gnu/packages/perl.scm:315 +#: gnu/packages/perl.scm:340 msgid "Allow C/XS libraries to interrupt perl asynchronously" msgstr "" -#: gnu/packages/perl.scm:317 +#: gnu/packages/perl.scm:342 msgid "" "@code{Async::Interrupt} implements a single feature only of interest\n" "to advanced perl modules, namely asynchronous interruptions (think \"UNIX\n" @@ -8961,11 +10782,11 @@ msgid "" "sometimes even without using a single syscall." msgstr "" -#: gnu/packages/perl.scm:347 +#: gnu/packages/perl.scm:372 msgid "Lexically disable autovivification" msgstr "" -#: gnu/packages/perl.scm:348 +#: gnu/packages/perl.scm:373 msgid "" "When an undefined variable is dereferenced, it gets silently\n" "upgraded to an array or hash reference (depending of the type of the\n" @@ -8979,11 +10800,19 @@ msgid "" "error when it would have happened." msgstr "" -#: gnu/packages/perl.scm:374 gnu/packages/perl.scm:5464 +#: gnu/packages/perl.scm:406 +msgid "Disables bareword filehandles" +msgstr "" + +#: gnu/packages/perl.scm:407 +msgid "This module disables bareword filehandles." +msgstr "" + +#: gnu/packages/perl.scm:424 gnu/packages/perl.scm:6805 msgid "Establish an ISA relationship with base classes at compile time" msgstr "" -#: gnu/packages/perl.scm:375 +#: gnu/packages/perl.scm:425 msgid "" "Allows you to both load one or more modules, while setting\n" "up inheritance from those modules at the same time. Unless you are using the\n" @@ -8991,21 +10820,53 @@ msgid "" "parent." msgstr "" -#: gnu/packages/perl.scm:400 +#: gnu/packages/perl.scm:445 +msgid "Open a browser in a given URL" +msgstr "" + +#: gnu/packages/perl.scm:446 +msgid "" +"The functions exported by this module allow you to open URLs\n" +"in the user's browser. A set of known commands per OS-name is tested for\n" +"presence, and the first one found is executed. With an optional parameter,\n" +"all known commands are checked." +msgstr "" + +#: gnu/packages/perl.scm:471 msgid "Execute code after a scope finished compilation" msgstr "" -#: gnu/packages/perl.scm:401 +#: gnu/packages/perl.scm:472 msgid "" "This module allows you to execute code when perl finished\n" "compiling the surrounding scope." msgstr "" -#: gnu/packages/perl.scm:419 +#: gnu/packages/perl.scm:493 +msgid "Wrap OP check callbacks" +msgstr "" + +#: gnu/packages/perl.scm:494 +msgid "This module allows you to wrap OP check callbacks." +msgstr "" + +#: gnu/packages/perl.scm:511 +msgid "Lists of reserved barewords and symbol names" +msgstr "" + +#: gnu/packages/perl.scm:512 +msgid "" +"@code{B::Keywords} supplies several arrays of exportable\n" +"keywords: @code{@@Scalars, @@Arrays, @@Hashes, @@Filehandles, @@Symbols,\n" +"@@Functions, @@Barewords, @@TieIOMethods, @@UNIVERSALMethods and\n" +"@@ExporterSymbols}." +msgstr "" + +#: gnu/packages/perl.scm:535 msgid "Benchmarking with statistical confidence" msgstr "" -#: gnu/packages/perl.scm:421 +#: gnu/packages/perl.scm:537 msgid "" "The Benchmark::Timer class allows you to time portions of code\n" "conveniently, as well as benchmark code by allowing timings of repeated\n" @@ -9014,11 +10875,11 @@ msgid "" "but don't want to go all out and profile your code." msgstr "" -#: gnu/packages/perl.scm:446 +#: gnu/packages/perl.scm:562 msgid "Bit vector library" msgstr "" -#: gnu/packages/perl.scm:447 +#: gnu/packages/perl.scm:563 msgid "" "Bit::Vector is an efficient C library which allows you to\n" "handle bit vectors, sets (of integers), \"big integer arithmetic\" and boolean\n" @@ -9028,62 +10889,62 @@ msgid "" "library can nevertheless be used stand-alone, without Perl." msgstr "" -#: gnu/packages/perl.scm:469 +#: gnu/packages/perl.scm:585 msgid "Boolean support for Perl" msgstr "" -#: gnu/packages/perl.scm:470 +#: gnu/packages/perl.scm:586 msgid "" "This module provides basic Boolean support, by defining two\n" "special objects: true and false." msgstr "" -#: gnu/packages/perl.scm:488 +#: gnu/packages/perl.scm:604 msgid "Data files for Business::ISBN" msgstr "" -#: gnu/packages/perl.scm:489 +#: gnu/packages/perl.scm:605 msgid "" "This package provides a data pack for @code{Business::ISBN}.\n" "These data are generated from the RangeMessage.xml file provided by the ISBN\n" "Agency." msgstr "" -#: gnu/packages/perl.scm:511 +#: gnu/packages/perl.scm:627 msgid "Work with International Standard Book Numbers" msgstr "" -#: gnu/packages/perl.scm:512 +#: gnu/packages/perl.scm:628 msgid "" "This modules provides tools to deal with International\n" "Standard Book Numbers, including ISBN-10 and ISBN-13." msgstr "" -#: gnu/packages/perl.scm:530 +#: gnu/packages/perl.scm:646 msgid "Work with International Standard Serial Numbers" msgstr "" -#: gnu/packages/perl.scm:531 +#: gnu/packages/perl.scm:647 msgid "" "This modules provides tools to deal with International\n" "Standard Serial Numbers." msgstr "" -#: gnu/packages/perl.scm:551 +#: gnu/packages/perl.scm:667 msgid "Work with International Standard Music Numbers" msgstr "" -#: gnu/packages/perl.scm:552 +#: gnu/packages/perl.scm:668 msgid "" "This modules provides tools to deal with International\n" "Standard Music Numbers." msgstr "" -#: gnu/packages/perl.scm:573 +#: gnu/packages/perl.scm:689 msgid "Cache interface for Perl" msgstr "" -#: gnu/packages/perl.scm:574 +#: gnu/packages/perl.scm:690 msgid "" "The Cache modules are designed to assist a developer in\n" "persisting data for a specified period of time. Often these modules are used\n" @@ -9094,11 +10955,11 @@ msgid "" "easy to use abstraction of the file system or shared memory." msgstr "" -#: gnu/packages/perl.scm:597 +#: gnu/packages/perl.scm:713 msgid "Shared memory interprocess cache via mmap" msgstr "" -#: gnu/packages/perl.scm:598 +#: gnu/packages/perl.scm:714 msgid "" "A shared memory cache through an mmap'ed file. It's core is\n" "written in C for performance. It uses fcntl locking to ensure multiple\n" @@ -9106,11 +10967,11 @@ msgid "" "algorithm to keep the most used entries in the cache." msgstr "" -#: gnu/packages/perl.scm:619 +#: gnu/packages/perl.scm:735 msgid "Capture STDOUT and STDERR from Perl, XS or external programs" msgstr "" -#: gnu/packages/perl.scm:621 +#: gnu/packages/perl.scm:737 msgid "" "Capture::Tiny provides a simple, portable way to capture almost anything\n" "sent to STDOUT or STDERR, regardless of whether it comes from Perl, from XS\n" @@ -9118,41 +10979,68 @@ msgid "" "is captured while being passed through to the original file handles." msgstr "" -#: gnu/packages/perl.scm:640 +#: gnu/packages/perl.scm:756 msgid "Check compatibility with the installed perl version" msgstr "" -#: gnu/packages/perl.scm:642 +#: gnu/packages/perl.scm:758 msgid "" "This module is used by Schmorp's modules during configuration stage\n" "to test the installed perl for compatibility with his modules." msgstr "" -#: gnu/packages/perl.scm:660 +#: gnu/packages/perl.scm:776 +msgid "Alternative warn and die for modules" +msgstr "" + +#: gnu/packages/perl.scm:777 +msgid "" +"The @code{Carp} routines are useful in your own modules\n" +"because they act like @code{die()} or @code{warn()}, but with a message\n" +"which is more likely to be useful to a user of your module. In the case\n" +"of @code{cluck}, @code{confess}, and @code{longmess} that context is a\n" +"summary of every call in the call-stack. For a shorter message you can use\n" +"@code{carp} or @code{croak} which report the error as being from where your\n" +"module was called. There is no guarantee that that is where the error was,\n" +"but it is a good educated guess." +msgstr "" + +#: gnu/packages/perl.scm:803 +msgid "Warns and dies noisily with stack backtraces/" +msgstr "" + +#: gnu/packages/perl.scm:804 +msgid "" +"This module is meant as a debugging aid. It can be used to\n" +"make a script complain loudly with stack backtraces when @code{warn()}-ing or\n" +"@code{die()}ing." +msgstr "" + +#: gnu/packages/perl.scm:823 msgid "Executable comments for Perl" msgstr "" -#: gnu/packages/perl.scm:661 +#: gnu/packages/perl.scm:824 msgid "" "Carp::Assert is intended for a purpose like the ANSI C\n" "library assert.h." msgstr "" -#: gnu/packages/perl.scm:683 +#: gnu/packages/perl.scm:846 msgid "Convenience wrappers around Carp::Assert" msgstr "" -#: gnu/packages/perl.scm:684 +#: gnu/packages/perl.scm:847 msgid "" "Carp::Assert::More is a set of handy assertion functions for\n" "Perl." msgstr "" -#: gnu/packages/perl.scm:704 +#: gnu/packages/perl.scm:867 msgid "Report errors from a \"clan\" of modules" msgstr "" -#: gnu/packages/perl.scm:705 +#: gnu/packages/perl.scm:868 msgid "" "This module allows errors from a clan (or family) of modules\n" "to appear to originate from the caller of the clan. This is necessary in\n" @@ -9160,29 +11048,29 @@ msgid "" "the Carp.pm module doesn't help." msgstr "" -#: gnu/packages/perl.scm:725 +#: gnu/packages/perl.scm:888 msgid "Read the CDDB entry for an audio CD in your drive" msgstr "" -#: gnu/packages/perl.scm:726 +#: gnu/packages/perl.scm:889 msgid "This module can retrieve information from the CDDB." msgstr "" -#: gnu/packages/perl.scm:748 +#: gnu/packages/perl.scm:911 msgid "Automated accessor generation" msgstr "" -#: gnu/packages/perl.scm:749 +#: gnu/packages/perl.scm:912 msgid "" "This module automagically generates accessors/mutators for\n" "your class." msgstr "" -#: gnu/packages/perl.scm:771 +#: gnu/packages/perl.scm:934 msgid "Faster, but less expandable, chained accessors" msgstr "" -#: gnu/packages/perl.scm:772 +#: gnu/packages/perl.scm:935 msgid "" "A chained accessor is one that always returns the object\n" "when called with parameters (to set), and the value of the field when called\n" @@ -9190,52 +11078,52 @@ msgid "" "the same mk_accessors interface." msgstr "" -#: gnu/packages/perl.scm:798 +#: gnu/packages/perl.scm:962 msgid "Build groups of accessors" msgstr "" -#: gnu/packages/perl.scm:799 +#: gnu/packages/perl.scm:963 msgid "" "This class lets you build groups of accessors that will call\n" "different getters and setters." msgstr "" -#: gnu/packages/perl.scm:819 +#: gnu/packages/perl.scm:983 msgid "Pragma to use the C3 method resolution order algorithm" msgstr "" -#: gnu/packages/perl.scm:820 +#: gnu/packages/perl.scm:984 msgid "" "This is pragma to change Perl 5's standard method resolution\n" "order from depth-first left-to-right (a.k.a - pre-order) to the more\n" "sophisticated C3 method resolution order." msgstr "" -#: gnu/packages/perl.scm:844 +#: gnu/packages/perl.scm:1008 msgid "Drop-in replacement for NEXT" msgstr "" -#: gnu/packages/perl.scm:845 +#: gnu/packages/perl.scm:1009 msgid "" "This module is intended as a drop-in replacement for NEXT,\n" "supporting the same interface, but using Class::C3 to do the hard work." msgstr "" -#: gnu/packages/perl.scm:869 +#: gnu/packages/perl.scm:1034 msgid "Load mix-ins or components to your C3-based class" msgstr "" -#: gnu/packages/perl.scm:870 +#: gnu/packages/perl.scm:1035 msgid "" "This module will inject base classes to your module using\n" "the Class::C3 method resolution order." msgstr "" -#: gnu/packages/perl.scm:888 +#: gnu/packages/perl.scm:1053 msgid "Inheritable, overridable class data" msgstr "" -#: gnu/packages/perl.scm:889 +#: gnu/packages/perl.scm:1054 msgid "" "Class::Data::Inheritable is for creating accessor/mutators\n" "to class data. That is, if you want to store something about your class as a\n" @@ -9243,21 +11131,21 @@ msgid "" "subclasses and can be overridden." msgstr "" -#: gnu/packages/perl.scm:910 +#: gnu/packages/perl.scm:1075 msgid "Class for easy date and time manipulation" msgstr "" -#: gnu/packages/perl.scm:911 +#: gnu/packages/perl.scm:1076 msgid "" "This module provides a general-purpose date and datetime\n" "type for perl." msgstr "" -#: gnu/packages/perl.scm:928 +#: gnu/packages/perl.scm:1093 msgid "Base class for error handling" msgstr "" -#: gnu/packages/perl.scm:930 +#: gnu/packages/perl.scm:1095 msgid "" "@code{Class::ErrorHandler} provides an error-handling mechanism that is generic\n" "enough to be used as the base class for a variety of OO classes. Subclasses inherit\n" @@ -9265,60 +11153,60 @@ msgid "" "to the calling program." msgstr "" -#: gnu/packages/perl.scm:951 +#: gnu/packages/perl.scm:1116 msgid "Utility methods for factory classes" msgstr "" -#: gnu/packages/perl.scm:952 +#: gnu/packages/perl.scm:1117 msgid "This module exports methods useful for factory classes." msgstr "" -#: gnu/packages/perl.scm:969 +#: gnu/packages/perl.scm:1134 msgid "Get information about a class and its structure" msgstr "" -#: gnu/packages/perl.scm:970 +#: gnu/packages/perl.scm:1135 msgid "" "Class::Inspector allows you to get information about a\n" "loaded class." msgstr "" -#: gnu/packages/perl.scm:998 +#: gnu/packages/perl.scm:1163 msgid "Working (require \"Class::Name\") and more" msgstr "" -#: gnu/packages/perl.scm:999 +#: gnu/packages/perl.scm:1164 msgid "" "\"require EXPR\" only accepts Class/Name.pm style module\n" "names, not Class::Name. For that, this module provides \"load_class\n" "'Class::Name'\"." msgstr "" -#: gnu/packages/perl.scm:1022 +#: gnu/packages/perl.scm:1187 msgid "XS implementation of parts of Class::Load" msgstr "" -#: gnu/packages/perl.scm:1023 +#: gnu/packages/perl.scm:1188 msgid "" "This module provides an XS implementation for portions of\n" "Class::Load." msgstr "" -#: gnu/packages/perl.scm:1042 +#: gnu/packages/perl.scm:1207 msgid "Create generic methods for OO Perl" msgstr "" -#: gnu/packages/perl.scm:1043 +#: gnu/packages/perl.scm:1208 msgid "" "This module solves the problem of having to continually\n" "write accessor methods for your objects that perform standard tasks." msgstr "" -#: gnu/packages/perl.scm:1064 +#: gnu/packages/perl.scm:1229 msgid "Moose-like method modifiers" msgstr "" -#: gnu/packages/perl.scm:1065 +#: gnu/packages/perl.scm:1230 msgid "" "Class::Method::Modifiers provides three modifiers: 'before',\n" "'around', and 'after'. 'before' and 'after' are run just before and after the\n" @@ -9327,42 +11215,42 @@ msgid "" "original method." msgstr "" -#: gnu/packages/perl.scm:1086 +#: gnu/packages/perl.scm:1251 msgid "Implementation of a singleton class for Perl" msgstr "" -#: gnu/packages/perl.scm:1087 +#: gnu/packages/perl.scm:1252 msgid "" "This module implements a Singleton class from which other\n" "classes can be derived. By itself, the Class::Singleton module does very\n" "little other than manage the instantiation of a single object." msgstr "" -#: gnu/packages/perl.scm:1106 +#: gnu/packages/perl.scm:1271 msgid "Minimalist class construction" msgstr "" -#: gnu/packages/perl.scm:1107 +#: gnu/packages/perl.scm:1272 msgid "" "This module offers a minimalist class construction kit. It\n" "uses no non-core modules for any recent Perl." msgstr "" -#: gnu/packages/perl.scm:1127 +#: gnu/packages/perl.scm:1292 msgid "Unload a class" msgstr "" -#: gnu/packages/perl.scm:1128 +#: gnu/packages/perl.scm:1293 msgid "" "Class:Unload unloads a given class by clearing out its\n" "symbol table and removing it from %INC." msgstr "" -#: gnu/packages/perl.scm:1146 +#: gnu/packages/perl.scm:1311 msgid "Generate fast XS accessors without runtime compilation" msgstr "" -#: gnu/packages/perl.scm:1147 +#: gnu/packages/perl.scm:1312 msgid "" "Class::XSAccessor implements fast read, write, and\n" "read/write accessors in XS. Additionally, it can provide predicates such as\n" @@ -9372,53 +11260,61 @@ msgid "" "arrays for their internal representation." msgstr "" -#: gnu/packages/perl.scm:1167 +#: gnu/packages/perl.scm:1332 gnu/packages/perl.scm:1355 msgid "Recursively copy Perl datatypes" msgstr "" -#: gnu/packages/perl.scm:1169 +#: gnu/packages/perl.scm:1334 msgid "" "This module provides a clone() method which makes recursive copies of\n" "nested hash, array, scalar and reference types, including tied variables and\n" "objects." msgstr "" -#: gnu/packages/perl.scm:1190 +#: gnu/packages/perl.scm:1356 +msgid "" +"This module provides a general-purpose @code{clone} function\n" +"to make deep copies of Perl data structures. It calls itself recursively to\n" +"copy nested hash, array, scalar and reference types, including tied variables\n" +"and objects." +msgstr "" + +#: gnu/packages/perl.scm:1376 msgid "Sane defaults for Perl programs" msgstr "" -#: gnu/packages/perl.scm:1191 +#: gnu/packages/perl.scm:1377 msgid "" "This module implements some sane defaults for Perl programs,\n" "as defined by two typical specimens of Perl coders." msgstr "" -#: gnu/packages/perl.scm:1211 +#: gnu/packages/perl.scm:1397 msgid "Load configuration from different file formats" msgstr "" -#: gnu/packages/perl.scm:1212 +#: gnu/packages/perl.scm:1398 msgid "" "Config::Any provides a facility for Perl applications and\n" "libraries to load configuration data from multiple different file formats. It\n" "supports XML, YAML, JSON, Apache-style configuration, and Perl code." msgstr "" -#: gnu/packages/perl.scm:1233 +#: gnu/packages/perl.scm:1419 msgid "Module to implement some AutoConf macros in Perl" msgstr "" -#: gnu/packages/perl.scm:1234 +#: gnu/packages/perl.scm:1420 msgid "" "Config::AutoConf is intended to provide the same\n" "opportunities to Perl developers as GNU Autoconf does for Shell developers." msgstr "" -#: gnu/packages/perl.scm:1252 +#: gnu/packages/perl.scm:1438 msgid "Generic Config Module" msgstr "" -#: gnu/packages/perl.scm:1253 +#: gnu/packages/perl.scm:1439 msgid "" "This module opens a config file and parses its contents for\n" "you. The format of config files supported by Config::General is inspired by\n" @@ -9429,52 +11325,64 @@ msgid "" "options." msgstr "" -#: gnu/packages/perl.scm:1280 +#: gnu/packages/perl.scm:1466 msgid "Simple .ini-file format reader and writer" msgstr "" -#: gnu/packages/perl.scm:1281 +#: gnu/packages/perl.scm:1467 msgid "" "@code{Config::INI} is a module that facilates the reading\n" "and writing of @code{.ini}-style configuration files." msgstr "" -#: gnu/packages/perl.scm:1302 +#: gnu/packages/perl.scm:1488 msgid "Preserve context during subroutine call" msgstr "" -#: gnu/packages/perl.scm:1303 +#: gnu/packages/perl.scm:1489 msgid "" "This module runs code after a subroutine call, preserving\n" "the context the subroutine would have seen if it were the last statement in\n" "the caller." msgstr "" -#: gnu/packages/perl.scm:1324 +#: gnu/packages/perl.scm:1514 +msgid "Extract data from Macintosh BinHex files" +msgstr "" + +#: gnu/packages/perl.scm:1516 +msgid "" +"BinHex is a format for transporting files safely through electronic\n" +"mail, as short-lined, 7-bit, semi-compressed data streams. Ths module\n" +"provides a means of converting those data streams back into into binary\n" +"data." +msgstr "" + +#: gnu/packages/perl.scm:1538 msgid "Verify requirements in a CPAN::Meta object" msgstr "" -#: gnu/packages/perl.scm:1325 +#: gnu/packages/perl.scm:1539 msgid "" "This module verifies if requirements described in a\n" "CPAN::Meta object are present." msgstr "" -#: gnu/packages/perl.scm:1345 +#: gnu/packages/perl.scm:1559 msgid "JSON::XS for Cpanel" msgstr "" -#: gnu/packages/perl.scm:1346 gnu/packages/perl.scm:3777 +#: gnu/packages/perl.scm:1560 gnu/packages/perl.scm:4463 msgid "" "This module converts Perl data structures to JSON and vice\n" "versa." msgstr "" -#: gnu/packages/perl.scm:1364 +#: gnu/packages/perl.scm:1578 msgid "Random password generator" msgstr "" -#: gnu/packages/perl.scm:1365 +#: gnu/packages/perl.scm:1579 msgid "" "Crypt::RandPasswd provides three functions that can be used\n" "to generate random passwords, constructed from words, letters, or characters.\n" @@ -9485,90 +11393,103 @@ msgid "" "Password Generator\"." msgstr "" -#: gnu/packages/perl.scm:1390 +#: gnu/packages/perl.scm:1604 msgid "Perl implementation of the RC4 encryption algorithm" msgstr "Perlimplementering af RC4-krypteringsalgoritmen" -#: gnu/packages/perl.scm:1391 +#: gnu/packages/perl.scm:1605 msgid "A pure Perl implementation of the RC4 algorithm." msgstr "En pure Perl-implementering af RC4-algoritmen." -#: gnu/packages/perl.scm:1410 +#: gnu/packages/perl.scm:1624 msgid "Temporarily change working directory" msgstr "Skift midlertidigt arbejdsmappe" -#: gnu/packages/perl.scm:1412 +#: gnu/packages/perl.scm:1626 msgid "" "@code{Cwd::Guard} changes the current directory using a limited scope.\n" "It returns to the previous working directory when the object is destroyed." msgstr "" -#: gnu/packages/perl.scm:1450 +#: gnu/packages/perl.scm:1664 msgid "Library for genomic analysis" msgstr "" -#: gnu/packages/perl.scm:1451 +#: gnu/packages/perl.scm:1665 msgid "" "Chaolin Zhang's Perl Library (czplib) contains assorted\n" "functions and data structures for processing and analysing genomic and\n" "bioinformatics data." msgstr "" -#: gnu/packages/perl.scm:1472 +#: gnu/packages/perl.scm:1694 gnu/packages/perl.scm:1860 +msgid "Base classes wrapping fundamental Perl data types" +msgstr "" + +#: gnu/packages/perl.scm:1695 +msgid "" +"Collection of classes that wrap fundamental data types that\n" +"exist in Perl. These classes and methods as they exist today are an attempt\n" +"to mirror functionality provided by Moose's Native Traits. One important\n" +"thing to note is all classes currently do no validation on constructor\n" +"input." +msgstr "" + +#: gnu/packages/perl.scm:1718 msgid "Compare Perl data structures" msgstr "Sammenlign Perldatastrukturer" -#: gnu/packages/perl.scm:1473 +#: gnu/packages/perl.scm:1719 msgid "" "This module compares arbitrary data structures to see if\n" "they are copies of each other." msgstr "" -#: gnu/packages/perl.scm:1491 +#: gnu/packages/perl.scm:1737 msgid "Perl extension for generating unique identifiers" msgstr "" -#: gnu/packages/perl.scm:1492 +#: gnu/packages/perl.scm:1738 msgid "" "@code{Data::Uniqid} provides three simple routines for\n" "generating unique ids. These ids are coded with a Base62 systen to make them\n" "short and handy (e.g. to use it as part of a URL)." msgstr "" -#: gnu/packages/perl.scm:1511 +#: gnu/packages/perl.scm:1757 msgid "Pretty printing of data structures" msgstr "" -#: gnu/packages/perl.scm:1512 +#: gnu/packages/perl.scm:1758 msgid "" "This module provide functions that takes a list of values as\n" "their argument and produces a string as its result. The string contains Perl\n" "code that, when \"eval\"ed, produces a deep copy of the original arguments." msgstr "" -#: gnu/packages/perl.scm:1531 +#: gnu/packages/perl.scm:1777 msgid "Concise data dumper" msgstr "" -#: gnu/packages/perl.scm:1532 +#: gnu/packages/perl.scm:1778 msgid "" "Data::Dumper::Concise provides a dumper with Less\n" "indentation and newlines plus sub deparsing." msgstr "" -#: gnu/packages/perl.scm:1554 +#: gnu/packages/perl.scm:1800 msgid "Parse and validate simple name/value option pairs" msgstr "" -#: gnu/packages/perl.scm:1556 +#: gnu/packages/perl.scm:1802 msgid "Data::OptList provides a simple syntax for name/value option pairs." msgstr "" -#: gnu/packages/perl.scm:1578 +#: gnu/packages/perl.scm:1824 msgid "Help when paging through sets of results" msgstr "" -#: gnu/packages/perl.scm:1579 +#: gnu/packages/perl.scm:1825 msgid "" "When searching through large amounts of data, it is often\n" "the case that a result set is returned that is larger than we want to display\n" @@ -9576,11 +11497,60 @@ msgid "" "The maths behind this is unfortunately fiddly, hence this module." msgstr "" -#: gnu/packages/perl.scm:1601 +#: gnu/packages/perl.scm:1862 +msgid "" +"@code{Data::Perl} is a container class for the following classes:\n" +"@itemize\n" +"@item @code{Data::Perl::Collection::Hash}\n" +"@item @code{Data::Perl::Collection::Array}\n" +"@item @code{Data::Perl::String}\n" +"@item @code{Data::Perl::Number}\n" +"@item @code{Data::Perl::Counter}\n" +"@item @code{Data::Perl::Bool}\n" +"@item @code{Data::Perl::Code}\n" +"@end itemize" +msgstr "" + +#: gnu/packages/perl.scm:1893 +msgid "Colored pretty-print of Perl data structures and objects" +msgstr "Farvelagte forskønnede udskrivning af Perldatastrukturer og -objekter" + +#: gnu/packages/perl.scm:1894 +msgid "" +"Display Perl variables and objects on screen, properly\n" +"formatted (to be inspected by a human)." +msgstr "" +"Vis Perlvariabler og -objekter på skærmen, korrekt\n" +"formateret (til inspektion af et menneske)." + +#: gnu/packages/perl.scm:1917 +msgid "Conditionally split data into records" +msgstr "" + +#: gnu/packages/perl.scm:1918 +msgid "" +"This Perl module allows you to split data into records by\n" +"not only specifying what you wish to split the data on, but also by specifying\n" +"an \"unless\" regular expression. If the text in question matches the\n" +"\"unless\" regex, it will not be split there. This allows us to do things\n" +"like split on newlines unless newlines are embedded in quotes." +msgstr "" + +#: gnu/packages/perl.scm:1946 +msgid "Read multiple hunks of data out of your DATA section" +msgstr "" + +#: gnu/packages/perl.scm:1947 +msgid "" +"This package provides a Perl library to read multiple hunks\n" +"of data out of your DATA section." +msgstr "" + +#: gnu/packages/perl.scm:1967 msgid "Structured tags datastructures" msgstr "" -#: gnu/packages/perl.scm:1603 +#: gnu/packages/perl.scm:1969 msgid "" "This module is for manipulating data as hierarchical tag/value\n" "pairs (Structured TAGs or Simple Tree AGgregates). These datastructures can\n" @@ -9588,11 +11558,11 @@ msgid "" "Perl." msgstr "" -#: gnu/packages/perl.scm:1630 +#: gnu/packages/perl.scm:1996 msgid "N at a time iteration API" msgstr "" -#: gnu/packages/perl.scm:1631 +#: gnu/packages/perl.scm:1997 msgid "" "This module tries to find middle ground between one at a\n" "time and all at once processing of data sets. The purpose of this module is\n" @@ -9601,21 +11571,21 @@ msgid "" "necessary later on." msgstr "" -#: gnu/packages/perl.scm:1656 +#: gnu/packages/perl.scm:2022 msgid "Dynamic generation of nested combinations of variants" msgstr "" -#: gnu/packages/perl.scm:1657 +#: gnu/packages/perl.scm:2023 msgid "" "Data::Tumbler - Dynamic generation of nested combinations of\n" "variants." msgstr "" -#: gnu/packages/perl.scm:1683 +#: gnu/packages/perl.scm:2049 msgid "Visitor style traversal of Perl data structures" msgstr "" -#: gnu/packages/perl.scm:1684 +#: gnu/packages/perl.scm:2050 msgid "" "This module is a simple visitor implementation for Perl\n" "values. It has a main dispatcher method, visit, which takes a single perl\n" @@ -9625,11 +11595,11 @@ msgid "" "structures, and all ref types (hashes, arrays, scalars, code, globs)." msgstr "" -#: gnu/packages/perl.scm:1709 +#: gnu/packages/perl.scm:2075 msgid "Gregorian calendar date calculations" msgstr "" -#: gnu/packages/perl.scm:1710 +#: gnu/packages/perl.scm:2076 msgid "" "This package consists of a Perl module for date calculations\n" "based on the Gregorian calendar, thereby complying with all relevant norms and\n" @@ -9637,32 +11607,32 @@ msgid "" "applicable)." msgstr "" -#: gnu/packages/perl.scm:1734 +#: gnu/packages/perl.scm:2100 msgid "XS wrapper for Date::Calc" msgstr "" -#: gnu/packages/perl.scm:1735 +#: gnu/packages/perl.scm:2101 msgid "" "Date::Calc::XS is an XS wrapper and C library plug-in for\n" "Date::Calc." msgstr "" -#: gnu/packages/perl.scm:1759 +#: gnu/packages/perl.scm:2125 msgid "Date manipulation routines" msgstr "" -#: gnu/packages/perl.scm:1760 +#: gnu/packages/perl.scm:2126 msgid "" "Date::Manip is a series of modules for common date/time\n" "operations, such as comparing two times, determining a date a given amount of\n" "time from another, or parsing international times." msgstr "" -#: gnu/packages/perl.scm:1779 +#: gnu/packages/perl.scm:2145 msgid "Simple date handling" msgstr "" -#: gnu/packages/perl.scm:1780 +#: gnu/packages/perl.scm:2146 msgid "" "Dates are complex enough without times and timezones. This\n" "module may be used to create simple date objects. It handles validation,\n" @@ -9670,22 +11640,22 @@ msgid "" "hours, minutes, seconds, and time zones." msgstr "" -#: gnu/packages/perl.scm:1810 +#: gnu/packages/perl.scm:2178 msgid "Date and time object for Perl" msgstr "" -#: gnu/packages/perl.scm:1811 +#: gnu/packages/perl.scm:2179 msgid "" "DateTime is a class for the representation of date/time\n" "combinations. It represents the Gregorian calendar, extended backwards in\n" "time before its creation (in 1582)." msgstr "" -#: gnu/packages/perl.scm:1833 +#: gnu/packages/perl.scm:2201 msgid "Dates in the Julian calendar" msgstr "" -#: gnu/packages/perl.scm:1834 +#: gnu/packages/perl.scm:2202 msgid "" "This package is a companion module to @code{DateTime.pm}.\n" "It implements the Julian calendar. It supports everything that\n" @@ -9693,11 +11663,11 @@ msgid "" "precise." msgstr "" -#: gnu/packages/perl.scm:1860 +#: gnu/packages/perl.scm:2228 msgid "DateTime set objects" msgstr "" -#: gnu/packages/perl.scm:1861 +#: gnu/packages/perl.scm:2229 msgid "" "The DateTime::Set module provides a date/time sets\n" "implementation. It allows, for example, the generation of groups of dates,\n" @@ -9705,21 +11675,21 @@ msgid "" "within a time range." msgstr "" -#: gnu/packages/perl.scm:1884 +#: gnu/packages/perl.scm:2252 msgid "DateTime rfc2445 recurrences" msgstr "" -#: gnu/packages/perl.scm:1885 +#: gnu/packages/perl.scm:2253 msgid "" "This module provides convenience methods that let you easily\n" "create DateTime::Set objects for RFC 2445 style recurrences." msgstr "" -#: gnu/packages/perl.scm:1906 +#: gnu/packages/perl.scm:2274 msgid "DateTime::Set extension for basic recurrences" msgstr "" -#: gnu/packages/perl.scm:1907 +#: gnu/packages/perl.scm:2275 msgid "" "This module provides convenience methods that let you easily\n" "create DateTime::Set objects for various recurrences, such as \"once a month\"\n" @@ -9727,11 +11697,11 @@ msgid "" "\"every Monday, Wednesday and Thursday at 10:00 AM and 2:00 PM\"." msgstr "" -#: gnu/packages/perl.scm:1932 +#: gnu/packages/perl.scm:2300 msgid "Create DateTime parser classes and objects" msgstr "" -#: gnu/packages/perl.scm:1933 +#: gnu/packages/perl.scm:2301 msgid "" "DateTime::Format::Builder creates DateTime parsers. Many\n" "string formats of dates and times are simple and just require a basic regular\n" @@ -9739,43 +11709,43 @@ msgid "" "to do this without writing reams of structural code." msgstr "" -#: gnu/packages/perl.scm:1960 +#: gnu/packages/perl.scm:2328 msgid "Parse data/time strings" msgstr "" -#: gnu/packages/perl.scm:1961 +#: gnu/packages/perl.scm:2329 msgid "" "DateTime::Format::Flexible attempts to take any string you\n" "give it and parse it into a DateTime object." msgstr "" -#: gnu/packages/perl.scm:1987 +#: gnu/packages/perl.scm:2355 msgid "Parse and format iCal datetime and duration strings" msgstr "" -#: gnu/packages/perl.scm:1988 +#: gnu/packages/perl.scm:2356 msgid "" "This module understands the ICal date/time and duration\n" "formats, as defined in RFC 2445. It can be used to parse these formats in\n" "order to create the appropriate objects." msgstr "" -#: gnu/packages/perl.scm:2020 +#: gnu/packages/perl.scm:2388 msgid "Machine-readable date/time with natural parsing" msgstr "" -#: gnu/packages/perl.scm:2021 +#: gnu/packages/perl.scm:2389 msgid "" "DateTime::Format::Natural takes a string with a human\n" "readable date/time and creates a machine readable one by applying natural\n" "parsing logic." msgstr "" -#: gnu/packages/perl.scm:2045 +#: gnu/packages/perl.scm:2416 msgid "Parse and format strp and strf time patterns" msgstr "" -#: gnu/packages/perl.scm:2046 +#: gnu/packages/perl.scm:2417 msgid "" "This module implements most of `strptime(3)`, the POSIX\n" "function that is the reverse of `strftime(3)`, for `DateTime`. While\n" @@ -9783,21 +11753,21 @@ msgid "" "takes a string and a pattern and returns the `DateTime` object associated." msgstr "" -#: gnu/packages/perl.scm:2071 +#: gnu/packages/perl.scm:2449 msgid "Localization support for DateTime.pm" msgstr "" -#: gnu/packages/perl.scm:2072 +#: gnu/packages/perl.scm:2450 msgid "" "The DateTime::Locale modules provide localization data for\n" "the DateTime.pm class." msgstr "" -#: gnu/packages/perl.scm:2099 +#: gnu/packages/perl.scm:2478 msgid "Time zone object for Perl" msgstr "" -#: gnu/packages/perl.scm:2100 +#: gnu/packages/perl.scm:2479 msgid "" "This class is the base class for all time zone objects. A\n" "time zone is represented internally as a set of observances, each of which\n" @@ -9807,32 +11777,32 @@ msgid "" "DateTime::TimeZone methods." msgstr "" -#: gnu/packages/perl.scm:2130 +#: gnu/packages/perl.scm:2509 msgid "Parse date/time strings" msgstr "" -#: gnu/packages/perl.scm:2131 +#: gnu/packages/perl.scm:2510 msgid "" "DateTimeX::Easy uses a variety of DateTime::Format packages\n" "to create DateTime objects, with some custom tweaks to smooth out the rough\n" "edges (mainly concerning timezone detection and selection)." msgstr "" -#: gnu/packages/perl.scm:2152 +#: gnu/packages/perl.scm:2531 msgid "Convert between DateTime and RFC2822/822 formats" msgstr "" -#: gnu/packages/perl.scm:2153 +#: gnu/packages/perl.scm:2532 msgid "" "RFCs 2822 and 822 specify date formats to be used by email.\n" "This module parses and emits such dates." msgstr "" -#: gnu/packages/perl.scm:2175 +#: gnu/packages/perl.scm:2554 msgid "Parse and format W3CDTF datetime strings" msgstr "" -#: gnu/packages/perl.scm:2177 +#: gnu/packages/perl.scm:2556 msgid "" "This module understands the W3CDTF date/time format, an ISO 8601 profile,\n" "defined at https://www.w3.org/TR/NOTE-datetime. This format is the native date\n" @@ -9840,81 +11810,103 @@ msgid "" "the appropriate objects." msgstr "" -#: gnu/packages/perl.scm:2199 +#: gnu/packages/perl.scm:2578 msgid "Meatier version of caller" msgstr "" -#: gnu/packages/perl.scm:2200 +#: gnu/packages/perl.scm:2579 msgid "Devel::Caller provides meatier version of caller." msgstr "" -#: gnu/packages/perl.scm:2218 +#: gnu/packages/perl.scm:2597 msgid "Check that a command is available" msgstr "" -#: gnu/packages/perl.scm:2219 +#: gnu/packages/perl.scm:2598 msgid "" "Devel::CheckBin is a perl module that checks whether a\n" "particular command is available." msgstr "" -#: gnu/packages/perl.scm:2238 +#: gnu/packages/perl.scm:2617 msgid "Check compiler availability" msgstr "" -#: gnu/packages/perl.scm:2239 +#: gnu/packages/perl.scm:2618 msgid "" "@code{Devel::CheckCompiler} is a tiny module to check\n" "whether a compiler is available. It can test for a C99 compiler, or\n" "you can tell it to compile a C source file with optional linker flags." msgstr "" -#: gnu/packages/perl.scm:2260 +#: gnu/packages/perl.scm:2640 +msgid "Find memory cycles in objects" +msgstr "" + +#: gnu/packages/perl.scm:2642 +msgid "" +"@code{Devel::Cycle} This is a tool for finding circular references in\n" +"objects and other types of references. Because of Perl's reference-count\n" +"based memory management, circular references will cause memory leaks." +msgstr "" + +#: gnu/packages/perl.scm:2663 msgid "Provides equivalent of ${^GLOBAL_PHASE} eq 'DESTRUCT' for older perls" msgstr "" -#: gnu/packages/perl.scm:2261 +#: gnu/packages/perl.scm:2664 msgid "" "Devel::GlobalDestruction provides a function returning the\n" "equivalent of \"$@{^GLOBAL_PHASE@} eq 'DESTRUCT'\" for older perls." msgstr "" -#: gnu/packages/perl.scm:2281 +#: gnu/packages/perl.scm:2685 +msgid "Forces the unavailability of specified Perl modules (for testing)" +msgstr "" + +#: gnu/packages/perl.scm:2686 +msgid "" +"Given a list of Perl modules/filenames, this module makes\n" +"@code{require} and @code{use} statements fail (no matter whether the specified\n" +"files/modules are installed or not)." +msgstr "" + +#: gnu/packages/perl.scm:2707 msgid "Alias lexical variables" msgstr "" -#: gnu/packages/perl.scm:2282 +#: gnu/packages/perl.scm:2708 msgid "" "Devel::LexAlias provides the ability to alias a lexical\n" "variable in a subroutines scope to one of your choosing." msgstr "" -#: gnu/packages/perl.scm:2306 +#: gnu/packages/perl.scm:2732 msgid "Introspect overloaded operators" msgstr "" -#: gnu/packages/perl.scm:2307 +#: gnu/packages/perl.scm:2733 msgid "" "Devel::OverloadInfo returns information about overloaded\n" "operators for a given class (or object), including where in the inheritance\n" "hierarchy the overloads are declared and where the code implementing it is." msgstr "" -#: gnu/packages/perl.scm:2334 +#: gnu/packages/perl.scm:2760 msgid "Partial dumping of data structures" msgstr "" -#: gnu/packages/perl.scm:2335 +#: gnu/packages/perl.scm:2761 msgid "" "This module is a data dumper optimized for logging of\n" "arbitrary parameters." msgstr "" -#: gnu/packages/perl.scm:2353 +#: gnu/packages/perl.scm:2779 msgid "Object representing a stack trace" msgstr "" -#: gnu/packages/perl.scm:2354 +#: gnu/packages/perl.scm:2780 msgid "" "The Devel::StackTrace module contains two classes,\n" "Devel::StackTrace and Devel::StackTrace::Frame. These objects encapsulate the\n" @@ -9922,11 +11914,11 @@ msgid "" "providing a simple interface to this data." msgstr "" -#: gnu/packages/perl.scm:2376 +#: gnu/packages/perl.scm:2802 msgid "Displays stack trace in HTML" msgstr "" -#: gnu/packages/perl.scm:2377 +#: gnu/packages/perl.scm:2803 msgid "" "Devel::StackTrace::AsHTML adds as_html method to\n" "Devel::StackTrace which displays the stack trace in beautiful HTML, with code\n" @@ -9935,29 +11927,29 @@ msgid "" "each stack frame." msgstr "" -#: gnu/packages/perl.scm:2398 +#: gnu/packages/perl.scm:2824 msgid "Dump symbol names or the symbol table" msgstr "" -#: gnu/packages/perl.scm:2399 +#: gnu/packages/perl.scm:2825 msgid "Devel::Symdump provides access to the perl symbol table." msgstr "" -#: gnu/packages/perl.scm:2416 +#: gnu/packages/perl.scm:2842 msgid "Keyed-Hashing for Message Authentication" msgstr "" -#: gnu/packages/perl.scm:2417 +#: gnu/packages/perl.scm:2843 msgid "" "The Digest::HMAC module follows the common Digest::\n" "interface for the RFC 2104 HMAC mechanism." msgstr "" -#: gnu/packages/perl.scm:2442 +#: gnu/packages/perl.scm:2868 msgid "Perl interface to the MD-5 algorithm" msgstr "Perlgrænseflade til MD-5-algoritmen" -#: gnu/packages/perl.scm:2444 +#: gnu/packages/perl.scm:2870 msgid "" "The @code{Digest::MD5} module allows you to use the MD5 Message Digest\n" "algorithm from within Perl programs. The algorithm takes as\n" @@ -9965,41 +11957,41 @@ msgid "" "128-bit \"fingerprint\" or \"message digest\" of the input." msgstr "" -#: gnu/packages/perl.scm:2462 +#: gnu/packages/perl.scm:2888 msgid "Perl implementation of the SHA-1 message digest algorithm" msgstr "" -#: gnu/packages/perl.scm:2464 +#: gnu/packages/perl.scm:2890 msgid "" "This package provides 'Digest::SHA1', an implementation of the NIST\n" "SHA-1 message digest algorithm for use by Perl programs." msgstr "" -#: gnu/packages/perl.scm:2486 +#: gnu/packages/perl.scm:2912 msgid "Declare version conflicts for your dist" msgstr "" -#: gnu/packages/perl.scm:2487 +#: gnu/packages/perl.scm:2913 msgid "" "This module allows you to specify conflicting versions of\n" "modules separately and deal with them after the module is done installing." msgstr "" -#: gnu/packages/perl.scm:2507 +#: gnu/packages/perl.scm:2933 msgid "Detect the encoding of data" msgstr "" -#: gnu/packages/perl.scm:2508 +#: gnu/packages/perl.scm:2934 msgid "" "This package provides a class @code{Encode::Detect} to detect\n" "the encoding of data." msgstr "" -#: gnu/packages/perl.scm:2526 +#: gnu/packages/perl.scm:2952 msgid "ASCII mapping for eucJP encoding" msgstr "ASCII-oversættelse for eucJP-kodning" -#: gnu/packages/perl.scm:2527 +#: gnu/packages/perl.scm:2953 msgid "" "This package provides an ASCII mapping for the eucJP\n" "encoding." @@ -10007,21 +11999,21 @@ msgstr "" "Denne pakke tilbyder en ASCII-oversættelse for eucJP-\n" "kodningen." -#: gnu/packages/perl.scm:2545 +#: gnu/packages/perl.scm:2971 msgid "JIS X 0212 (aka JIS 2000) encodings" msgstr "JIS X 0212-kodninger (aka JIS 2000)" -#: gnu/packages/perl.scm:2546 +#: gnu/packages/perl.scm:2972 msgid "" "This package provides encodings for JIS X 0212, which is\n" "also known as JIS 2000." msgstr "" -#: gnu/packages/perl.scm:2564 +#: gnu/packages/perl.scm:2995 msgid "Additional Chinese encodings" msgstr "Yderligere kinesiske kodninger" -#: gnu/packages/perl.scm:2565 +#: gnu/packages/perl.scm:2996 msgid "" "This Perl module provides Chinese encodings that are not\n" "part of Perl by default, including \"BIG5-1984\", \"BIG5-2003\", \"BIG5PLUS\",\n" @@ -10029,11 +12021,11 @@ msgid "" "\"UNISYS\"." msgstr "" -#: gnu/packages/perl.scm:2587 +#: gnu/packages/perl.scm:3018 msgid "Advanced operations on path variables" msgstr "" -#: gnu/packages/perl.scm:2588 +#: gnu/packages/perl.scm:3019 msgid "" "@code{Env::Path} presents an object-oriented interface to\n" "path variables, defined as that subclass of environment variables which name\n" @@ -10041,11 +12033,11 @@ msgid "" "separator." msgstr "" -#: gnu/packages/perl.scm:2608 +#: gnu/packages/perl.scm:3039 msgid "OO-ish Error/Exception handling for Perl" msgstr "" -#: gnu/packages/perl.scm:2609 +#: gnu/packages/perl.scm:3040 msgid "" "The Error package provides two interfaces. Firstly Error\n" "provides a procedural interface to exception handling. Secondly Error is a\n" @@ -10053,11 +12045,11 @@ msgid "" "catch, or can simply be recorded." msgstr "" -#: gnu/packages/perl.scm:2634 +#: gnu/packages/perl.scm:3065 msgid "Safely and cleanly create closures via string eval" msgstr "" -#: gnu/packages/perl.scm:2635 +#: gnu/packages/perl.scm:3066 msgid "" "String eval is often used for dynamic code generation. For\n" "instance, Moose uses it heavily, to generate inlined versions of accessors and\n" @@ -10071,32 +12063,32 @@ msgid "" "errors are rethrown automatically." msgstr "" -#: gnu/packages/perl.scm:2664 +#: gnu/packages/perl.scm:3095 msgid "Allows you to declare real exception classes in Perl" msgstr "" -#: gnu/packages/perl.scm:2665 +#: gnu/packages/perl.scm:3096 msgid "" "Exception::Class allows you to declare exception hierarchies\n" "in your modules in a \"Java-esque\" manner." msgstr "" -#: gnu/packages/perl.scm:2681 +#: gnu/packages/perl.scm:3112 msgid "Lightweight exporting of functions and variables" msgstr "" -#: gnu/packages/perl.scm:2683 +#: gnu/packages/perl.scm:3114 msgid "" "Exporter::Lite is an alternative to Exporter, intended to provide a\n" "lightweight subset of the most commonly-used functionality. It supports\n" "import(), @@EXPORT and @@EXPORT_OK and not a whole lot else." msgstr "" -#: gnu/packages/perl.scm:2703 +#: gnu/packages/perl.scm:3134 msgid "Exporter with the features of Sub::Exporter but only core dependencies" msgstr "" -#: gnu/packages/perl.scm:2704 +#: gnu/packages/perl.scm:3135 msgid "" "Exporter::Tiny supports many of Sub::Exporter's\n" "external-facing features including renaming imported functions with the `-as`,\n" @@ -10105,32 +12097,38 @@ msgid "" "only about 40% as many lines of code and with zero non-core dependencies." msgstr "" -#: gnu/packages/perl.scm:2727 +#: gnu/packages/perl.scm:3161 gnu/packages/perl.scm:3222 +msgid "Easily build XS extensions that depend on XS extensions" +msgstr "" + +#: gnu/packages/perl.scm:3162 +msgid "" +"ExtUtils::Depends builds XS extensions that depend on XS\n" +"extensions" +msgstr "" + +#: gnu/packages/perl.scm:3182 msgid "Build.PL install path logic made easy" msgstr "" -#: gnu/packages/perl.scm:2728 +#: gnu/packages/perl.scm:3183 msgid "" "This module tries to make install path resolution as easy as\n" "possible." msgstr "" -#: gnu/packages/perl.scm:2746 +#: gnu/packages/perl.scm:3201 msgid "Wrapper for perl's configuration" msgstr "" -#: gnu/packages/perl.scm:2747 +#: gnu/packages/perl.scm:3202 msgid "" "ExtUtils::Config is an abstraction around the %Config hash.\n" "By itself it is not a particularly interesting module by any measure, however\n" "it ties together a family of modern toolchain modules." msgstr "" -#: gnu/packages/perl.scm:2767 -msgid "Easily build XS extensions that depend on XS extensions" -msgstr "" - -#: gnu/packages/perl.scm:2769 +#: gnu/packages/perl.scm:3224 msgid "" "This module tries to make it easy to build Perl extensions that use\n" "functions and typemaps provided by other perl extensions. This means that a\n" @@ -10138,21 +12136,21 @@ msgid "" "XS interface besides the perl one." msgstr "" -#: gnu/packages/perl.scm:2789 +#: gnu/packages/perl.scm:3244 msgid "Various portability utilities for module builders" msgstr "" -#: gnu/packages/perl.scm:2790 +#: gnu/packages/perl.scm:3245 msgid "" "This module provides various portable helper functions for\n" "module building modules." msgstr "" -#: gnu/packages/perl.scm:2810 +#: gnu/packages/perl.scm:3265 msgid "Tool to build C libraries" msgstr "Værktøj til at bygge C-biblioteker" -#: gnu/packages/perl.scm:2811 +#: gnu/packages/perl.scm:3266 msgid "" "Some Perl modules need to ship C libraries together with\n" "their Perl code. Although there are mechanisms to compile and link (or glue)\n" @@ -10160,11 +12158,11 @@ msgid "" "self-contained C libraries. This module main goal is to help in that task." msgstr "" -#: gnu/packages/perl.scm:2832 +#: gnu/packages/perl.scm:3287 msgid "Simplistic interface to pkg-config" msgstr "" -#: gnu/packages/perl.scm:2834 +#: gnu/packages/perl.scm:3289 msgid "" "@code{ExtUtils::PkgConfig} is a very simplistic interface to the\n" "@command{pkg-config} utility, intended for use in the @file{Makefile.PL}\n" @@ -10172,54 +12170,66 @@ msgid "" "It is really just boilerplate code that you would have written yourself." msgstr "" -#: gnu/packages/perl.scm:2866 +#: gnu/packages/perl.scm:3321 msgid "Watch for changes to files" msgstr "" -#: gnu/packages/perl.scm:2867 +#: gnu/packages/perl.scm:3322 msgid "" "This module provides a class to monitor a directory for\n" "changes made to any file." msgstr "" -#: gnu/packages/perl.scm:2885 +#: gnu/packages/perl.scm:3343 +msgid "Get directories of configuration files" +msgstr "" + +#: gnu/packages/perl.scm:3344 +msgid "" +"This module is a helper for installing, reading and finding\n" +"configuration file locations. @code{File::ConfigDir} is a module to help out\n" +"when Perl modules (especially applications) need to read and store\n" +"configuration files from more than one location." +msgstr "" + +#: gnu/packages/perl.scm:3364 msgid "Recursively copy files and directories" msgstr "" -#: gnu/packages/perl.scm:2886 +#: gnu/packages/perl.scm:3365 msgid "" "This module has 3 functions: one to copy files only, one to\n" "copy directories only, and one to do either depending on the argument's\n" "type." msgstr "" -#: gnu/packages/perl.scm:2908 +#: gnu/packages/perl.scm:3387 msgid "Alternative interface to File::Find" msgstr "" -#: gnu/packages/perl.scm:2909 +#: gnu/packages/perl.scm:3388 msgid "" "File::Find::Rule is a friendlier interface to File::Find.\n" "It allows you to build rules which specify the desired files and\n" "directories." msgstr "" -#: gnu/packages/perl.scm:2932 +#: gnu/packages/perl.scm:3411 msgid "Common rules for searching for Perl things" msgstr "Gængse regler til at søge efter Perlsager" -#: gnu/packages/perl.scm:2933 +#: gnu/packages/perl.scm:3412 msgid "" "File::Find::Rule::Perl provides methods for finding various\n" "types Perl-related files, or replicating search queries run on a distribution\n" "in various parts of the CPAN ecosystem." msgstr "" -#: gnu/packages/perl.scm:2954 +#: gnu/packages/perl.scm:3433 msgid "Matches patterns in a series of files" msgstr "" -#: gnu/packages/perl.scm:2955 +#: gnu/packages/perl.scm:3434 msgid "" "@code{File::Grep} provides similar functionality as perl's\n" "builtin @code{grep}, @code{map}, and @code{foreach} commands, but iterating\n" @@ -10227,11 +12237,11 @@ msgid "" "provide a quick dropin when such functionality is needed." msgstr "" -#: gnu/packages/perl.scm:2979 +#: gnu/packages/perl.scm:3457 msgid "Find your home and other directories on any platform" msgstr "" -#: gnu/packages/perl.scm:2980 +#: gnu/packages/perl.scm:3458 msgid "" "File::HomeDir is a module for locating the directories that\n" "are \"owned\" by a user (typically your user) and to solve the various issues\n" @@ -10239,22 +12249,22 @@ msgid "" "platforms." msgstr "" -#: gnu/packages/perl.scm:3002 +#: gnu/packages/perl.scm:3480 msgid "Create or remove directory trees" msgstr "" -#: gnu/packages/perl.scm:3003 +#: gnu/packages/perl.scm:3481 msgid "" "This module provide a convenient way to create directories\n" "of arbitrary depth and to delete an entire directory subtree from the\n" "file system." msgstr "" -#: gnu/packages/perl.scm:3026 +#: gnu/packages/perl.scm:3504 msgid "Change directory temporarily for a limited scope" msgstr "" -#: gnu/packages/perl.scm:3027 +#: gnu/packages/perl.scm:3505 msgid "" "@code{File::pushd} does a temporary @code{chdir} that is\n" "easily and automatically reverted, similar to @code{pushd} in some Unix\n" @@ -10265,24 +12275,40 @@ msgid "" "at the end of the scope." msgstr "" -#: gnu/packages/perl.scm:3057 +#: gnu/packages/perl.scm:3533 msgid "" "Perl extension for crawling directory trees and compiling\n" "lists of files" msgstr "" -#: gnu/packages/perl.scm:3060 +#: gnu/packages/perl.scm:3536 msgid "" "The File::List module crawls the directory tree starting at the\n" "provided base directory and can return files (and/or directories if desired)\n" "matching a regular expression." msgstr "" -#: gnu/packages/perl.scm:3079 +#: gnu/packages/perl.scm:3557 +msgid "Read a file backwards by lines" +msgstr "" + +#: gnu/packages/perl.scm:3558 +msgid "" +"This module reads a file backwards line by line. It is\n" +"simple to use, memory efficient and fast. It supports both an object and a\n" +"tied handle interface.\n" +"\n" +"It is intended for processing log and other similar text files which typically\n" +"have their newest entries appended to them. By default files are assumed to\n" +"be plain text and have a line ending appropriate to the OS. But you can set\n" +"the input record separator string on a per file basis." +msgstr "" + +#: gnu/packages/perl.scm:3582 msgid "Remove files and directories in Perl" msgstr "" -#: gnu/packages/perl.scm:3080 +#: gnu/packages/perl.scm:3583 msgid "" "File::Remove::remove removes files and directories. It acts\n" "like /bin/rm, for the most part. Although \"unlink\" can be given a list of\n" @@ -10290,11 +12316,11 @@ msgid "" "accepts wildcards, * and ?, as arguments for file names." msgstr "" -#: gnu/packages/perl.scm:3104 +#: gnu/packages/perl.scm:3607 msgid "Locate per-dist and per-module shared files" msgstr "" -#: gnu/packages/perl.scm:3105 +#: gnu/packages/perl.scm:3608 msgid "" "The intent of File::ShareDir is to provide a companion to\n" "Class::Inspector and File::HomeDir. Quite often you want or need your Perl\n" @@ -10304,83 +12330,93 @@ msgid "" "the installation." msgstr "" -#: gnu/packages/perl.scm:3127 -msgid "Install shared files" +#: gnu/packages/perl.scm:3630 +msgid "Locate per-dist shared files" +msgstr "Lokaliser per-dist-delte filer" + +#: gnu/packages/perl.scm:3631 +msgid "" +"File::ShareDir::Dist finds share directories for\n" +"distributions. It is a companion module to File::ShareDir." msgstr "" -#: gnu/packages/perl.scm:3128 +#: gnu/packages/perl.scm:3651 +msgid "Install shared files" +msgstr "Installer delte filer" + +#: gnu/packages/perl.scm:3652 msgid "" "File::ShareDir::Install allows you to install read-only data\n" "files from a distribution. It is a companion module to File::ShareDir, which\n" "allows you to locate these files after installation." msgstr "" -#: gnu/packages/perl.scm:3147 +#: gnu/packages/perl.scm:3671 msgid "Reading/Writing/Modifying of complete files" msgstr "" -#: gnu/packages/perl.scm:3148 +#: gnu/packages/perl.scm:3672 msgid "" "File::Slurp provides subroutines to read or write entire\n" "files with a simple call. It also has a subroutine for reading the list of\n" "file names in a directory." msgstr "" -#: gnu/packages/perl.scm:3171 +#: gnu/packages/perl.scm:3695 msgid "Simple, sane and efficient module to slurp a file" msgstr "" -#: gnu/packages/perl.scm:3172 +#: gnu/packages/perl.scm:3696 msgid "" "This module provides functions for fast and correct file\n" "slurping and spewing. All functions are optionally exported." msgstr "" -#: gnu/packages/perl.scm:3189 +#: gnu/packages/perl.scm:3713 msgid "Simple file reader and writer" msgstr "Simpel fillæser og skriver" -#: gnu/packages/perl.scm:3191 +#: gnu/packages/perl.scm:3715 msgid "This module provides functions for fast reading and writing of files." msgstr "Dette modul tilbyder funktioner til hurtig læsning og skrivning af filer." -#: gnu/packages/perl.scm:3210 +#: gnu/packages/perl.scm:3734 msgid "Return name and handle of a temporary file safely" msgstr "" -#: gnu/packages/perl.scm:3211 +#: gnu/packages/perl.scm:3735 msgid "" "File::Temp can be used to create and open temporary files in\n" "a safe way." msgstr "" -#: gnu/packages/perl.scm:3228 +#: gnu/packages/perl.scm:3752 msgid "Portable implementation of the `which' utility" msgstr "" -#: gnu/packages/perl.scm:3230 +#: gnu/packages/perl.scm:3754 msgid "" "File::Which was created to be able to get the paths to executable\n" "programs on systems under which the `which' program wasn't implemented in the\n" "shell." msgstr "" -#: gnu/packages/perl.scm:3251 +#: gnu/packages/perl.scm:3777 msgid "Extended Unix style glob functionality" msgstr "" -#: gnu/packages/perl.scm:3252 +#: gnu/packages/perl.scm:3778 msgid "" "@code{File::Zglob} provides a traditional Unix @code{glob}\n" "functionality; it returns a list of file names that match the given pattern.\n" "For instance, it supports the @code{**/*.pm} form." msgstr "" -#: gnu/packages/perl.scm:3271 +#: gnu/packages/perl.scm:3797 msgid "Module to handle parsing command line options" msgstr "" -#: gnu/packages/perl.scm:3272 +#: gnu/packages/perl.scm:3798 msgid "" "The @code{Getopt::Long} module implements an extended getopt\n" "function called @code{GetOptions()}. It parses the command line from\n" @@ -10394,11 +12430,11 @@ msgid "" "single-letter approach, is provided but not enabled by default." msgstr "" -#: gnu/packages/perl.scm:3305 +#: gnu/packages/perl.scm:3832 msgid "Getopt::Long, but simpler and more powerful" msgstr "" -#: gnu/packages/perl.scm:3306 +#: gnu/packages/perl.scm:3833 msgid "" "Getopt::Long::Descriptive is yet another Getopt library.\n" "It's built atop Getopt::Long, and gets a lot of its features, but tries to\n" @@ -10406,31 +12442,31 @@ msgid "" "usage (help) messages, data validation, and a few other useful features." msgstr "" -#: gnu/packages/perl.scm:3324 +#: gnu/packages/perl.scm:3851 msgid "Table-driven argument parsing for Perl" msgstr "" -#: gnu/packages/perl.scm:3326 +#: gnu/packages/perl.scm:3853 msgid "" "Getopt::Tabular is a Perl 5 module for table-driven argument parsing,\n" "vaguely inspired by John Ousterhout's Tk_ParseArgv." msgstr "" -#: gnu/packages/perl.scm:3348 +#: gnu/packages/perl.scm:3875 msgid "Graph data structures and algorithms" msgstr "" -#: gnu/packages/perl.scm:3349 +#: gnu/packages/perl.scm:3876 msgid "" "This is @code{Graph}, a Perl module for dealing with graphs,\n" "the abstract data structures." msgstr "" -#: gnu/packages/perl.scm:3366 +#: gnu/packages/perl.scm:3893 msgid "Safe cleanup blocks implemented as guards" msgstr "" -#: gnu/packages/perl.scm:3367 +#: gnu/packages/perl.scm:3894 msgid "" "@code{Guard} implements so-called @dfn{guards}. A guard is\n" "something (usually an object) that \"guards\" a resource, ensuring that it is\n" @@ -10441,11 +12477,23 @@ msgid "" "which are tied to the scope exit." msgstr "" -#: gnu/packages/perl.scm:3390 +#: gnu/packages/perl.scm:3930 +msgid "Lightweight field hash for inside-out objects" +msgstr "" + +#: gnu/packages/perl.scm:3931 +msgid "" +"@code{Hash::FieldHash} provides the field hash mechanism\n" +"which supports the inside-out technique. It is an alternative to\n" +"@code{Hash::Util::FieldHash} with a simpler interface, higher performance, and\n" +"relic support." +msgstr "" + +#: gnu/packages/perl.scm:3951 msgid "Merge arbitrarily deep hashes into a single hash" msgstr "" -#: gnu/packages/perl.scm:3391 +#: gnu/packages/perl.scm:3952 msgid "" "Hash::Merge merges two arbitrarily deep hashes into a single\n" "hash. That is, at any level, it will add non-conflicting key-value pairs from\n" @@ -10455,21 +12503,35 @@ msgid "" "merged." msgstr "" -#: gnu/packages/perl.scm:3413 +#: gnu/packages/perl.scm:3974 msgid "Store multiple values per key" msgstr "" -#: gnu/packages/perl.scm:3414 +#: gnu/packages/perl.scm:3975 msgid "" "Hash::MultiValue is an object (and a plain hash reference)\n" "that may contain multiple values per key, inspired by MultiDict of WebOb." msgstr "" -#: gnu/packages/perl.scm:3434 +#: gnu/packages/perl.scm:3993 +msgid "Alternative but compatible interface to modules that export symbols" +msgstr "" + +#: gnu/packages/perl.scm:3994 +msgid "" +"This module acts as a layer between Exporter and modules which\n" +"consume exports. It is feature-compatible with Exporter, plus some much needed\n" +"extras. You can use this to import symbols from any exporter that follows\n" +"Exporters specification. The exporter modules themselves do not need to use or\n" +"inherit from the Exporter module, they just need to set @@EXPORT and/or other\n" +"variables." +msgstr "" + +#: gnu/packages/perl.scm:4018 msgid "Import packages into other packages" msgstr "Importer pakker ind i andre pakker" -#: gnu/packages/perl.scm:3435 +#: gnu/packages/perl.scm:4019 msgid "" "Writing exporters is a pain. Some use Exporter, some use\n" "Sub::Exporter, some use Moose::Exporter, some use Exporter::Declare ... and\n" @@ -10479,22 +12541,67 @@ msgid "" "compilation. Import::Into provides global methods to make this painless." msgstr "" -#: gnu/packages/perl.scm:3457 +#: gnu/packages/perl.scm:4041 msgid "Use modules in inc/ if newer than installed" msgstr "" -#: gnu/packages/perl.scm:3458 +#: gnu/packages/perl.scm:4042 msgid "" "The inc::latest module helps bootstrap configure-time\n" "dependencies for CPAN distributions. These dependencies get bundled into the\n" "inc directory within a distribution and are used by Makefile.PL or Build.PL." msgstr "" -#: gnu/packages/perl.scm:3479 +#: gnu/packages/perl.scm:4062 +msgid "Lexically warn about using the indirect method call syntax" +msgstr "" + +#: gnu/packages/perl.scm:4064 +msgid "Indirect warns about using the indirect method call syntax." +msgstr "" + +#: gnu/packages/perl.scm:4084 +msgid "Write Perl subroutines in other programming languages" +msgstr "" + +#: gnu/packages/perl.scm:4085 +msgid "" +"The @code{Inline} module allows you to put source code\n" +"from other programming languages directly (inline) in a Perl script or\n" +"module. The code is automatically compiled as needed, and then loaded\n" +"for immediate access from Perl." +msgstr "" + +#: gnu/packages/perl.scm:4115 +msgid "C Language Support for Inline" +msgstr "" + +#: gnu/packages/perl.scm:4116 +msgid "" +"The @code{Inline::C} module allows you to write Perl\n" +"subroutines in C. Since version 0.30 the @code{Inline} module supports\n" +"multiple programming languages and each language has its own support module.\n" +"This document describes how to use Inline with the C programming language.\n" +"It also goes a bit into Perl C internals." +msgstr "" + +#: gnu/packages/perl.scm:4142 +msgid "@code{IO::All} to Larry Wall!" +msgstr "" + +#: gnu/packages/perl.scm:4143 +msgid "" +"@code{IO::All} combines all of the best Perl IO modules into\n" +"a single nifty object oriented interface to greatly simplify your everyday\n" +"Perl IO idioms. It exports a single function called io, which returns a new\n" +"@code{IO::All} object. And that object can do it all!" +msgstr "" + +#: gnu/packages/perl.scm:4165 msgid "Capture STDOUT and STDERR from Perl code, subprocesses or XS" msgstr "" -#: gnu/packages/perl.scm:3480 +#: gnu/packages/perl.scm:4166 msgid "" "@code{IO::CaptureOutput} provides routines for capturing\n" "@code{STDOUT} and @code{STDERR} from perl subroutines, forked system\n" @@ -10504,64 +12611,64 @@ msgid "" "try @code{Capture::Tiny} instead." msgstr "" -#: gnu/packages/perl.scm:3502 +#: gnu/packages/perl.scm:4188 msgid "Utilities for interactive I/O" msgstr "" -#: gnu/packages/perl.scm:3503 +#: gnu/packages/perl.scm:4189 msgid "" "This module provides three utility subroutines that make it\n" "easier to develop interactive applications: is_interactive(), interactive(),\n" "and busy()." msgstr "" -#: gnu/packages/perl.scm:3522 +#: gnu/packages/perl.scm:4208 msgid "Emulate file interface for in-core strings" msgstr "" -#: gnu/packages/perl.scm:3523 +#: gnu/packages/perl.scm:4209 msgid "" "IO::String is an IO::File (and IO::Handle) compatible class\n" "that reads or writes data from in-core strings." msgstr "" -#: gnu/packages/perl.scm:3541 +#: gnu/packages/perl.scm:4227 msgid "IO:: interface for reading/writing an array of lines" msgstr "" -#: gnu/packages/perl.scm:3542 +#: gnu/packages/perl.scm:4228 msgid "" "This toolkit primarily provides modules for performing both\n" "traditional and object-oriented i/o) on things *other* than normal\n" "filehandles; in particular, IO::Scalar, IO::ScalarArray, and IO::Lines." msgstr "" -#: gnu/packages/perl.scm:3560 +#: gnu/packages/perl.scm:4246 msgid "Perl interface to pseudo ttys" msgstr "" -#: gnu/packages/perl.scm:3562 +#: gnu/packages/perl.scm:4248 msgid "" "This package provides the 'IO::Pty' and 'IO::Tty' Perl interfaces to\n" "pseudo ttys." msgstr "" -#: gnu/packages/perl.scm:3580 +#: gnu/packages/perl.scm:4266 msgid "Run interactive command-line programs" msgstr "" -#: gnu/packages/perl.scm:3581 +#: gnu/packages/perl.scm:4267 msgid "" "@code{IPC::Cmd} allows for the searching and execution of\n" "any binary on your system. It adheres to verbosity settings and is able to\n" "run interactively. It also has an option to capture output/error buffers." msgstr "" -#: gnu/packages/perl.scm:3610 +#: gnu/packages/perl.scm:4296 msgid "Run system() and background procs w/ piping, redirs, ptys" msgstr "" -#: gnu/packages/perl.scm:3611 +#: gnu/packages/perl.scm:4297 msgid "" "IPC::Run allows you run and interact with child processes\n" "using files, pipes, and pseudo-ttys. Both system()-style and scripted usages\n" @@ -10569,11 +12676,11 @@ msgid "" "both supported and may be mixed." msgstr "" -#: gnu/packages/perl.scm:3629 +#: gnu/packages/perl.scm:4315 msgid "Run a subprocess with input/output redirection" msgstr "Afvikl en underproces med inddata/uddata-videresendelse" -#: gnu/packages/perl.scm:3631 +#: gnu/packages/perl.scm:4317 msgid "" "The IPC::Run3 module allows you to run a subprocess and redirect stdin,\n" "stdout, and/or stderr to files and perl data structures. It aims to satisfy\n" @@ -10581,21 +12688,21 @@ msgid "" "Perlish API and none of the bloat and rarely used features of IPC::Run." msgstr "" -#: gnu/packages/perl.scm:3655 +#: gnu/packages/perl.scm:4341 msgid "Lightweight interface to shared memory" msgstr "" -#: gnu/packages/perl.scm:3656 +#: gnu/packages/perl.scm:4342 msgid "" "IPC::ShareLite provides a simple interface to shared memory,\n" "allowing data to be efficiently communicated between processes." msgstr "" -#: gnu/packages/perl.scm:3674 +#: gnu/packages/perl.scm:4360 msgid "Run commands simply, with detailed diagnostics" msgstr "" -#: gnu/packages/perl.scm:3675 +#: gnu/packages/perl.scm:4361 msgid "" "Calling Perl's in-built @code{system} function is easy,\n" "determining if it was successful is hard. Let's face it, @code{$?} isn't the\n" @@ -10606,21 +12713,21 @@ msgid "" "commands." msgstr "" -#: gnu/packages/perl.scm:3700 +#: gnu/packages/perl.scm:4386 msgid "JSON encoder/decoder for Perl" msgstr "" -#: gnu/packages/perl.scm:3701 +#: gnu/packages/perl.scm:4387 msgid "" "This module converts Perl data structures to JSON and vice\n" "versa using either JSON::XS or JSON::PP." msgstr "" -#: gnu/packages/perl.scm:3726 +#: gnu/packages/perl.scm:4412 msgid "Wrapper for Perl JSON classes" msgstr "" -#: gnu/packages/perl.scm:3728 +#: gnu/packages/perl.scm:4414 msgid "" "This module tries to provide a coherent API to bring together the\n" "various JSON modules currently on CPAN. This module will allow you to code to\n" @@ -10628,11 +12735,11 @@ msgid "" "installed." msgstr "" -#: gnu/packages/perl.scm:3752 +#: gnu/packages/perl.scm:4438 msgid "Cpanel::JSON::XS with fallback" msgstr "" -#: gnu/packages/perl.scm:3753 +#: gnu/packages/perl.scm:4439 msgid "" "This module first checks to see if either Cpanel::JSON::XS\n" "or JSON::XS is already loaded, in which case it uses that module. Otherwise\n" @@ -10640,15 +12747,23 @@ msgid "" "either uses the first module it finds or throws an error." msgstr "" -#: gnu/packages/perl.scm:3776 +#: gnu/packages/perl.scm:4462 msgid "JSON serialising/deserialising for Perl" msgstr "" -#: gnu/packages/perl.scm:3795 +#: gnu/packages/perl.scm:4485 +msgid "Prevent leakage of lexical hints" +msgstr "" + +#: gnu/packages/perl.scm:4487 +msgid "Lexical::SealRequireHints prevents leakage of lexical hints" +msgstr "" + +#: gnu/packages/perl.scm:4504 msgid "Bringing loggers and listeners together" msgstr "" -#: gnu/packages/perl.scm:3796 +#: gnu/packages/perl.scm:4505 msgid "" "@code{Log::Any} provides a standard log production API for\n" "modules. @code{Log::Any::Adapter} allows applications to choose the mechanism\n" @@ -10666,32 +12781,32 @@ msgid "" "logging mechanism." msgstr "" -#: gnu/packages/perl.scm:3832 +#: gnu/packages/perl.scm:4541 msgid "Log::Any adapter for Log::Log4perl" msgstr "" -#: gnu/packages/perl.scm:3833 +#: gnu/packages/perl.scm:4542 msgid "" "@code{Log::Any::Adapter::Log4perl} provides a\n" "@code{Log::Any} adapter using @code{Log::Log4perl} for logging." msgstr "" -#: gnu/packages/perl.scm:3854 +#: gnu/packages/perl.scm:4563 msgid "Log4j implementation for Perl" msgstr "" -#: gnu/packages/perl.scm:3855 +#: gnu/packages/perl.scm:4564 msgid "" "@code{Log::Log4perl} lets you remote-control and fine-tune\n" "the logging behaviour of your system from the outside. It implements the\n" "widely popular (Java-based) Log4j logging package in pure Perl." msgstr "" -#: gnu/packages/perl.scm:3875 +#: gnu/packages/perl.scm:4584 msgid "Log::Report in the lightest form" msgstr "" -#: gnu/packages/perl.scm:3877 +#: gnu/packages/perl.scm:4586 msgid "" "This module allows libraries to have a dependency to a small module\n" "instead of the full Log-Report distribution. The full power of\n" @@ -10701,59 +12816,81 @@ msgid "" "version." msgstr "" -#: gnu/packages/perl.scm:3902 +#: gnu/packages/perl.scm:4611 msgid "Get messages to users and logs" msgstr "" -#: gnu/packages/perl.scm:3904 +#: gnu/packages/perl.scm:4613 msgid "" "@code{Log::Report} combines three tasks which are closely related in\n" "one: logging, exceptions, and translations." msgstr "" -#: gnu/packages/perl.scm:3922 +#: gnu/packages/perl.scm:4642 +msgid "High-level interface to Uniforum message translation" +msgstr "" + +#: gnu/packages/perl.scm:4643 +msgid "" +"This package is an internationalization library for Perl\n" +"that aims to be compatible with the Uniforum message translations system as\n" +"implemented for example in GNU gettext." +msgstr "" + +#: gnu/packages/perl.scm:4662 msgid "Transliterate text between writing systems" msgstr "" -#: gnu/packages/perl.scm:3923 +#: gnu/packages/perl.scm:4663 msgid "" "@code{Lingua::Translit} can be used to convert text from one\n" "writing system to another, based on national or international transliteration\n" "tables. Where possible a reverse transliteration is supported." msgstr "" -#: gnu/packages/perl.scm:3947 +#: gnu/packages/perl.scm:4687 msgid "Combination of List::Util and List::MoreUtils" msgstr "" -#: gnu/packages/perl.scm:3948 +#: gnu/packages/perl.scm:4688 msgid "" "This module exports all of the functions that either\n" "List::Util or List::MoreUtils defines, with preference to List::Util." msgstr "" -#: gnu/packages/perl.scm:3970 +#: gnu/packages/perl.scm:4710 msgid "Compare elements of two or more lists" msgstr "" -#: gnu/packages/perl.scm:3971 +#: gnu/packages/perl.scm:4711 msgid "" "@code{List::Compare} provides a module to perform\n" "comparative operations on two or more lists. Provided operations include\n" "intersections, unions, unique elements, complements and many more." msgstr "" -#: gnu/packages/perl.scm:3996 gnu/packages/perl.scm:4023 +#: gnu/packages/perl.scm:4746 gnu/packages/perl.scm:4797 msgid "Provide the stuff missing in List::Util" msgstr "" -#: gnu/packages/perl.scm:3997 +#: gnu/packages/perl.scm:4747 msgid "" "List::MoreUtils provides some trivial but commonly needed\n" "functionality on lists which is not going to go into List::Util." msgstr "" -#: gnu/packages/perl.scm:4024 +#: gnu/packages/perl.scm:4769 +msgid "Provide the stuff missing in List::Util in XS" +msgstr "" + +#: gnu/packages/perl.scm:4770 +msgid "" +"@code{List::MoreUtils::XS} provides some trivial but\n" +"commonly needed functionality on lists which is not going to go into\n" +"@code{List::Util}." +msgstr "" + +#: gnu/packages/perl.scm:4798 msgid "" "@code{List::SomeUtils} provides some trivial but commonly\n" "needed functionality on lists which is not going to go into @code{List::Util}.\n" @@ -10765,43 +12902,116 @@ msgid "" "portions of this module couldn't be compiled on this machine." msgstr "" -#: gnu/packages/perl.scm:4048 +#: gnu/packages/perl.scm:4827 +msgid "Bundle of ancient email modules" +msgstr "" + +#: gnu/packages/perl.scm:4828 +msgid "" +"MailTools contains the following modules:\n" +"@table @asis\n" +"@item Mail::Address\n" +"Parse email address from a header line.\n" +"@item Mail::Cap\n" +"Interpret mailcap files: mappings of file-types to applications as used by\n" +"many command-line email programs.\n" +"@item Mail::Field\n" +"Simplifies access to (some) email header fields. Used by Mail::Header.\n" +"@item Mail::Filter\n" +"Process Mail::Internet messages.\n" +"@item Mail::Header\n" +"Collection of Mail::Field objects, representing the header of a Mail::Internet\n" +"object.\n" +"@item Mail::Internet\n" +"Represents a single email message, with header and body.\n" +"@item Mail::Mailer\n" +"Send Mail::Internet emails via direct smtp or local MTA's.\n" +"@item Mail::Send\n" +"Build a Mail::Internet object, and then send it out using Mail::Mailer.\n" +"@item Mail::Util\n" +"\"Smart functions\" you should not depend on.\n" +"@end table" +msgstr "" + +#: gnu/packages/perl.scm:4867 +msgid "Solution of bezier curves" +msgstr "" + +#: gnu/packages/perl.scm:4868 +msgid "" +"This module implements the algorithm for the solution of Bezier\n" +"curves as presented by Robert D Miller in Graphics Gems V, \"Quick and Simple\n" +"Bezier Curve Drawing\"." +msgstr "" + +#: gnu/packages/perl.scm:4887 +msgid "Perl extension for rounding numbers" +msgstr "Perludvidelse til afrundingstal" + +#: gnu/packages/perl.scm:4888 +msgid "" +"@code{Math::Round} provides functions to round numbers,\n" +"both positive and negative, in various ways." +msgstr "" + +#: gnu/packages/perl.scm:4906 +msgid "Make functions faster by trading space for time" +msgstr "" + +#: gnu/packages/perl.scm:4907 +msgid "" +"This package transparently speeds up functions by caching\n" +"return values, trading space for time." +msgstr "" + +#: gnu/packages/perl.scm:4925 msgid "Expiry plug-in for Memoize that adds LRU cache expiration" msgstr "" -#: gnu/packages/perl.scm:4049 +#: gnu/packages/perl.scm:4926 msgid "" "This module implements an expiry policy for Memoize that\n" "follows LRU semantics, that is, the last n results, where n is specified as\n" "the argument to the CACHESIZE parameter, will be cached." msgstr "" -#: gnu/packages/perl.scm:4067 +#: gnu/packages/perl.scm:4944 msgid "Charset information for MIME messages" msgstr "" -#: gnu/packages/perl.scm:4069 +#: gnu/packages/perl.scm:4946 msgid "" "@code{MIME::Charset} provides information about character sets used for\n" "MIME messages on Internet." msgstr "" -#: gnu/packages/perl.scm:4087 -msgid "Definition of MIME types" +#: gnu/packages/perl.scm:4973 +msgid "Tools to manipulate MIME messages" +msgstr "Værktøj til at manipulere MIME-beskeder" + +#: gnu/packages/perl.scm:4975 +msgid "" +"MIME-tools is a collection of Perl5 MIME:: modules for parsing,\n" +"decoding, and generating single- or multipart (even nested multipart) MIME\n" +"messages." msgstr "" -#: gnu/packages/perl.scm:4088 +#: gnu/packages/perl.scm:4994 +msgid "Definition of MIME types" +msgstr "Definition af MIME-typer" + +#: gnu/packages/perl.scm:4995 msgid "" "This module provides a list of known mime-types, combined\n" "from various sources. For instance, it contains all IANA types and the\n" "knowledge of Apache." msgstr "" -#: gnu/packages/perl.scm:4110 +#: gnu/packages/perl.scm:5017 msgid "Write your linewise code for handles; this does the rest" msgstr "" -#: gnu/packages/perl.scm:4111 +#: gnu/packages/perl.scm:5018 msgid "" "It's boring to deal with opening files for IO, converting\n" "strings to handle-like objects, and all that. With\n" @@ -10810,21 +13020,21 @@ msgid "" "file names are added for you." msgstr "" -#: gnu/packages/perl.scm:4138 +#: gnu/packages/perl.scm:5044 msgid "Enable all of the features of Modern Perl with one import" msgstr "" -#: gnu/packages/perl.scm:4139 +#: gnu/packages/perl.scm:5045 msgid "" "@code{Modern::Perl} provides a simple way to enable\n" "multiple, by now, standard libraries in a Perl program." msgstr "" -#: gnu/packages/perl.scm:4167 +#: gnu/packages/perl.scm:5073 msgid "Tiny replacement for Module::Build" msgstr "" -#: gnu/packages/perl.scm:4168 +#: gnu/packages/perl.scm:5074 msgid "" "Many Perl distributions use a Build.PL file instead of a\n" "Makefile.PL file to drive distribution configuration, build, test and\n" @@ -10834,11 +13044,11 @@ msgid "" "has less than 120, yet supports the features needed by most distributions." msgstr "" -#: gnu/packages/perl.scm:4196 +#: gnu/packages/perl.scm:5102 msgid "Module::Build class for building XS modules" msgstr "" -#: gnu/packages/perl.scm:4198 +#: gnu/packages/perl.scm:5104 msgid "" "@code{Module::Build::XSUtil} is subclass of @code{Module::Build}\n" "for support building XS modules.\n" @@ -10862,11 +13072,11 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/perl.scm:4234 +#: gnu/packages/perl.scm:5140 msgid "Find and use installed modules in a (sub)category" msgstr "" -#: gnu/packages/perl.scm:4235 +#: gnu/packages/perl.scm:5141 msgid "" "Module::Find lets you find and use modules in categories.\n" "This can be useful for auto-detecting driver or plugin modules. You can\n" @@ -10874,11 +13084,11 @@ msgid "" "subcategories." msgstr "" -#: gnu/packages/perl.scm:4261 +#: gnu/packages/perl.scm:5167 msgid "Loads alternate underlying implementations for a module" msgstr "" -#: gnu/packages/perl.scm:4262 +#: gnu/packages/perl.scm:5168 msgid "" "This module abstracts out the process of choosing one of\n" "several underlying implementations for a module. This can be used to provide\n" @@ -10887,11 +13097,11 @@ msgid "" "implementations." msgstr "" -#: gnu/packages/perl.scm:4300 +#: gnu/packages/perl.scm:5206 msgid "Standalone, extensible Perl module installer" msgstr "" -#: gnu/packages/perl.scm:4301 +#: gnu/packages/perl.scm:5207 msgid "" "Module::Install is a package for writing installers for\n" "CPAN (or CPAN-like) distributions that are clean, simple, minimalist, act in a\n" @@ -10899,52 +13109,52 @@ msgid "" "installation version 5.005 or newer." msgstr "" -#: gnu/packages/perl.scm:4322 +#: gnu/packages/perl.scm:5228 msgid "Give your Perl module the ability to have plugins" msgstr "" -#: gnu/packages/perl.scm:4323 +#: gnu/packages/perl.scm:5229 msgid "" "This module provides a simple but extensible way of having\n" "'plugins' for your Perl module." msgstr "" -#: gnu/packages/perl.scm:4342 +#: gnu/packages/perl.scm:5248 msgid "Perl runtime module handling" msgstr "" -#: gnu/packages/perl.scm:4343 +#: gnu/packages/perl.scm:5249 msgid "" "The functions exported by this module deal with runtime\n" "handling of Perl modules, which are normally handled at compile time." msgstr "" -#: gnu/packages/perl.scm:4366 +#: gnu/packages/perl.scm:5272 msgid "Provide information on conflicts for Module::Runtime" msgstr "" -#: gnu/packages/perl.scm:4367 +#: gnu/packages/perl.scm:5273 msgid "" "This module provides conflicts checking for Module::Runtime,\n" "which had a recent release that broke some versions of Moose. It is called\n" "from Moose::Conflicts and moose-outdated." msgstr "" -#: gnu/packages/perl.scm:4388 +#: gnu/packages/perl.scm:5294 msgid "Recursively scan Perl code for dependencies" msgstr "" -#: gnu/packages/perl.scm:4389 +#: gnu/packages/perl.scm:5295 msgid "" "Module::ScanDeps is a module to recursively scan Perl\n" "programs for dependencies." msgstr "" -#: gnu/packages/perl.scm:4409 +#: gnu/packages/perl.scm:5315 msgid "Module name tools and transformations" msgstr "" -#: gnu/packages/perl.scm:4410 +#: gnu/packages/perl.scm:5316 msgid "" "This module provides a few useful functions for manipulating\n" "module names. Its main aim is to centralise some of the functions commonly\n" @@ -10952,11 +13162,11 @@ msgid "" "module names to relative paths." msgstr "" -#: gnu/packages/perl.scm:4440 +#: gnu/packages/perl.scm:5346 msgid "Minimalist Object Orientation (with Moose compatibility)" msgstr "" -#: gnu/packages/perl.scm:4441 +#: gnu/packages/perl.scm:5347 msgid "" "Moo is an extremely light-weight Object Orientation system.\n" "It allows one to concisely define objects and roles with a convenient syntax\n" @@ -10964,11 +13174,11 @@ msgid "" "Moose and is optimised for rapid startup." msgstr "" -#: gnu/packages/perl.scm:4517 +#: gnu/packages/perl.scm:5454 msgid "Postmodern object system for Perl 5" msgstr "" -#: gnu/packages/perl.scm:4519 +#: gnu/packages/perl.scm:5456 msgid "" "Moose is a complete object system for Perl 5. It provides keywords for\n" "attribute declaration, object construction, inheritance, and maybe more. With\n" @@ -10979,11 +13189,11 @@ msgid "" "sentences." msgstr "" -#: gnu/packages/perl.scm:4547 +#: gnu/packages/perl.scm:5485 msgid "Emulate Class::Accessor::Fast behavior using Moose attributes" msgstr "" -#: gnu/packages/perl.scm:4548 +#: gnu/packages/perl.scm:5486 msgid "" "This module attempts to emulate the behavior of\n" "Class::Accessor::Fast as accurately as possible using the Moose attribute\n" @@ -10991,21 +13201,21 @@ msgid "" "private methods are not." msgstr "" -#: gnu/packages/perl.scm:4580 +#: gnu/packages/perl.scm:5518 msgid "Moose role for processing command line options" msgstr "" -#: gnu/packages/perl.scm:4581 +#: gnu/packages/perl.scm:5519 msgid "" "This is a Moose role which provides an alternate constructor\n" "for creating objects using parameters passed in from the command line." msgstr "" -#: gnu/packages/perl.scm:4602 +#: gnu/packages/perl.scm:5540 msgid "Mark overload code symbols as methods" msgstr "" -#: gnu/packages/perl.scm:4603 +#: gnu/packages/perl.scm:5541 msgid "" "MooseX::MarkAsMethods allows one to easily mark certain\n" "functions as Moose methods. This will allow other packages such as\n" @@ -11015,21 +13225,21 @@ msgid "" "overloads will \"just work\"." msgstr "" -#: gnu/packages/perl.scm:4633 +#: gnu/packages/perl.scm:5571 msgid "Code attribute introspection" msgstr "" -#: gnu/packages/perl.scm:4634 +#: gnu/packages/perl.scm:5572 msgid "" "This module allows code attributes of methods to be\n" "introspected using Moose meta method objects." msgstr "" -#: gnu/packages/perl.scm:4660 +#: gnu/packages/perl.scm:5598 msgid "Subclassing of non-Moose classes" msgstr "" -#: gnu/packages/perl.scm:4661 +#: gnu/packages/perl.scm:5599 msgid "" "MooseX::NonMoose allows for easily subclassing non-Moose\n" "classes with Moose, taking care of the details connected with doing this, such\n" @@ -11038,31 +13248,31 @@ msgid "" "BUILD methods are called. It tries to be as non-intrusive as possible." msgstr "" -#: gnu/packages/perl.scm:4690 +#: gnu/packages/perl.scm:5628 msgid "Extension of Params::Validate using Moose's types" msgstr "" -#: gnu/packages/perl.scm:4691 +#: gnu/packages/perl.scm:5629 msgid "" "This module fills a gap in Moose by adding method parameter\n" "validation to Moose." msgstr "" -#: gnu/packages/perl.scm:4712 +#: gnu/packages/perl.scm:5650 msgid "Apply roles to a related Perl class" msgstr "" -#: gnu/packages/perl.scm:4713 +#: gnu/packages/perl.scm:5651 msgid "" "This module applies roles to make a subclass instead of\n" "manually setting up a subclass." msgstr "" -#: gnu/packages/perl.scm:4740 +#: gnu/packages/perl.scm:5678 msgid "Moose roles with composition parameters" msgstr "" -#: gnu/packages/perl.scm:4741 +#: gnu/packages/perl.scm:5679 msgid "" "Because Moose roles serve many different masters, they\n" "usually provide only the least common denominator of functionality. To\n" @@ -11072,11 +13282,11 @@ msgid "" "Parameterized roles offer a solution to these (and other) kinds of problems." msgstr "" -#: gnu/packages/perl.scm:4767 +#: gnu/packages/perl.scm:5705 msgid "Roles which support overloading" msgstr "" -#: gnu/packages/perl.scm:4768 +#: gnu/packages/perl.scm:5706 msgid "" "MooseX::Role::WithOverloading allows you to write a\n" "Moose::Role which defines overloaded operators and allows those overload\n" @@ -11084,11 +13294,11 @@ msgid "" "where plain Moose::Roles would lose the overloading." msgstr "" -#: gnu/packages/perl.scm:4790 +#: gnu/packages/perl.scm:5728 msgid "Name your accessors foo() and set_foo()" msgstr "" -#: gnu/packages/perl.scm:4791 +#: gnu/packages/perl.scm:5729 msgid "" "This module does not provide any methods. Simply loading it\n" "changes the default naming policy for the loading class so that accessors are\n" @@ -11096,95 +13306,181 @@ msgid "" "accessor, while set methods are prefixed with \"_set_\"." msgstr "" -#: gnu/packages/perl.scm:4817 +#: gnu/packages/perl.scm:5755 msgid "Strict object constructors for Moose" msgstr "" -#: gnu/packages/perl.scm:4818 +#: gnu/packages/perl.scm:5756 msgid "" "Simply loading this module makes your constructors\n" "\"strict\". If your constructor is called with an attribute init argument\n" "that your class does not declare, then it calls Moose->throw_error()." msgstr "" -#: gnu/packages/perl.scm:4846 +#: gnu/packages/perl.scm:5784 msgid "Trait loading and resolution for Moose" msgstr "" -#: gnu/packages/perl.scm:4847 +#: gnu/packages/perl.scm:5785 msgid "" "Adds support on top of MooseX::Traits for class precedence\n" "search for traits and some extra attributes." msgstr "" -#: gnu/packages/perl.scm:4873 +#: gnu/packages/perl.scm:5811 msgid "Organise your Moose types in libraries" msgstr "" -#: gnu/packages/perl.scm:4874 +#: gnu/packages/perl.scm:5812 msgid "" "This package lets you declare types using short names, but\n" "behind the scenes it namespaces all your type declarations, effectively\n" "prevent name clashes between packages." msgstr "" -#: gnu/packages/perl.scm:4905 +#: gnu/packages/perl.scm:5843 msgid "DateTime related constraints and coercions for Moose" msgstr "" -#: gnu/packages/perl.scm:4906 +#: gnu/packages/perl.scm:5844 msgid "" "This module packages several Moose::Util::TypeConstraints\n" "with coercions, designed to work with the DateTime suite of objects." msgstr "" -#: gnu/packages/perl.scm:4938 +#: gnu/packages/perl.scm:5876 msgid "Extensions to MooseX::Types::DateTime" msgstr "" -#: gnu/packages/perl.scm:4939 +#: gnu/packages/perl.scm:5877 msgid "" "This module builds on MooseX::Types::DateTime to add\n" "additional custom types and coercions. Since it builds on an existing type,\n" "all coercions and constraints are inherited." msgstr "" -#: gnu/packages/perl.scm:4968 +#: gnu/packages/perl.scm:5906 msgid "ClassName type constraints for Moose" msgstr "" -#: gnu/packages/perl.scm:4969 +#: gnu/packages/perl.scm:5907 msgid "" "MooseX::Types::LoadableClass provides a ClassName type\n" "constraint with coercion to load the class." msgstr "" -#: gnu/packages/perl.scm:4993 +#: gnu/packages/perl.scm:5933 +msgid "Using Moo and MooX:: packages the most lazy way" +msgstr "" + +#: gnu/packages/perl.scm:5934 +msgid "Contains the MooX and MooX::Role packages." +msgstr "" + +#: gnu/packages/perl.scm:5961 +msgid "Giving an easy Moo style way to make command organized CLI apps" +msgstr "" + +#: gnu/packages/perl.scm:5962 +msgid "" +"This package eases the writing of command line utilities,\n" +"accepting commands and subcommands and so on. These commands can form a tree,\n" +"which is mirrored in the package structure. On invocation, each command along\n" +"the path through the tree (starting from the top-level command through to the\n" +"most specific one) is instantiated." +msgstr "" + +#: gnu/packages/perl.scm:5995 +msgid "Moo eXtension for initializing objects from config file" +msgstr "" + +#: gnu/packages/perl.scm:5996 +msgid "" +"This module is intended to easily load initialization values\n" +"for attributes on object construction from an appropriate config file. The\n" +"building is done in @code{MooX::ConfigFromFile::Role}---using\n" +"@code{MooX::ConfigFromFile} ensures that the role is applied." +msgstr "" + +#: gnu/packages/perl.scm:6020 +msgid "Moo eXtension for @code{File::ConfigDir}" +msgstr "" + +#: gnu/packages/perl.scm:6021 +msgid "" +"This module is a helper for easily finding configuration\n" +"file locations. This information can be used to find a suitable place for\n" +"installing configuration files or for finding any piece of settings." +msgstr "" + +#: gnu/packages/perl.scm:6056 +msgid "NativeTrait-like behavior for Moo" +msgstr "" + +#: gnu/packages/perl.scm:6058 +msgid "" +"@code{MooX::HandlesVia} is an extension of Moo's @code{handles}\n" +"attribute functionality. It provides a means of proxying functionality from\n" +"an external class to the given atttribute." +msgstr "" + +#: gnu/packages/perl.scm:6089 +msgid "Easily translate Moose code to Moo" +msgstr "" + +#: gnu/packages/perl.scm:6091 +msgid "" +"MooX::late does the following:\n" +"@enumerate\n" +"@item Supports isa => $stringytype\n" +"@item Supports does => $rolename\n" +"@item Supports lazy_build => 1\n" +"@item Exports blessed and confess functions to your namespace.\n" +"@item Handles certain attribute traits\n" +"Currently Hash, Array and Code are supported. This feature requires\n" +"MooX::HandlesVia.\n" +"@end enumerate" +msgstr "" + +#: gnu/packages/perl.scm:6146 +msgid "Explicit Options eXtension for Object Class" +msgstr "" + +#: gnu/packages/perl.scm:6147 +msgid "" +"Create a command line tool with your Mo, Moo, Moose objects.\n" +"You have an @code{option} keyword to replace the usual @code{has} to\n" +"explicitly use your attribute on the command line. The @code{option} keyword\n" +"takes additional parameters and uses @code{Getopt::Long::Descriptive} to\n" +"generate a command line tool." +msgstr "" + +#: gnu/packages/perl.scm:6174 msgid "Moosish types and type builder" msgstr "" -#: gnu/packages/perl.scm:4994 +#: gnu/packages/perl.scm:6175 msgid "" "MooX::Types::MooseLike provides a possibility to build your\n" "own set of Moose-like types. These custom types can then be used to describe\n" "fields in Moo-based classes." msgstr "" -#: gnu/packages/perl.scm:5023 +#: gnu/packages/perl.scm:6204 msgid "Fast Moose-compatible object system for perl5" msgstr "" -#: gnu/packages/perl.scm:5025 +#: gnu/packages/perl.scm:6206 msgid "" "Mouse is a @code{Moose} compatible object system that implements a\n" "subset of the functionality for reduced startup time." msgstr "" -#: gnu/packages/perl.scm:5047 +#: gnu/packages/perl.scm:6229 msgid "Extend attribute interfaces for Mouse" msgstr "Udvid attributgrænseflader for Mouse" -#: gnu/packages/perl.scm:5049 +#: gnu/packages/perl.scm:6231 msgid "" "While @code{Mouse} attributes provide a way to name your accessors,\n" "readers, writers, clearers and predicates, @code{MouseX::NativeTraits}\n" @@ -11192,22 +13488,30 @@ msgid "" "of data." msgstr "" -#: gnu/packages/perl.scm:5069 +#: gnu/packages/perl.scm:6251 msgid "Mozilla's CA cert bundle in PEM format" msgstr "" -#: gnu/packages/perl.scm:5070 +#: gnu/packages/perl.scm:6252 msgid "" "@code{Mozilla::CA} provides a copy of Mozilla's bundle of\n" "Certificate Authority certificates in a form that can be consumed by modules\n" "and libraries based on OpenSSL." msgstr "" -#: gnu/packages/perl.scm:5089 +#: gnu/packages/perl.scm:6278 +msgid "Disable multidimensional array emulation" +msgstr "" + +#: gnu/packages/perl.scm:6280 +msgid "Multidimensional disables multidimensional array emulation." +msgstr "" + +#: gnu/packages/perl.scm:6297 msgid "MRO interface compatibility for Perls < 5.9.5" msgstr "" -#: gnu/packages/perl.scm:5090 +#: gnu/packages/perl.scm:6298 msgid "" "The \"mro\" namespace provides several utilities for dealing\n" "with method resolution order and method caching in general in Perl 5.9.5 and\n" @@ -11215,11 +13519,11 @@ msgid "" "Perl (back to 5.6.0)." msgstr "" -#: gnu/packages/perl.scm:5117 +#: gnu/packages/perl.scm:6325 msgid "Keep imports out of your namespace" msgstr "" -#: gnu/packages/perl.scm:5118 +#: gnu/packages/perl.scm:6326 msgid "" "The namespace::autoclean pragma will remove all imported\n" "symbols at the end of the current package's compile cycle. Functions called\n" @@ -11230,11 +13534,11 @@ msgid "" "anything that looks like a method." msgstr "" -#: gnu/packages/perl.scm:5144 +#: gnu/packages/perl.scm:6352 msgid "Keep imports and functions out of your namespace" msgstr "" -#: gnu/packages/perl.scm:5145 +#: gnu/packages/perl.scm:6353 msgid "" "The namespace::clean pragma will remove all previously\n" "declared or imported symbols at the end of the current package's compile\n" @@ -11242,11 +13546,39 @@ msgid "" "name, but they won't show up as methods on your class or instances." msgstr "" -#: gnu/packages/perl.scm:5168 +#: gnu/packages/perl.scm:6373 +msgid "Non-blocking system DNS resolver" +msgstr "" + +#: gnu/packages/perl.scm:6375 +msgid "" +"This class provides several methods for host name resolution. It is\n" +"designed to be used with event loops. Names are resolved by your system's\n" +"native @code{getaddrinfo(3)} implementation, called in a separate thread to\n" +"avoid blocking the entire application. Threading overhead is limited by using\n" +"system threads instead of Perl threads." +msgstr "" + +#: gnu/packages/perl.scm:6403 +msgid "Internationalizing Domain Names in Applications (IDNA)" +msgstr "" + +#: gnu/packages/perl.scm:6405 +msgid "" +"Internationalized Domain Names (IDNs) use characters drawn from a large\n" +"repertoire (Unicode), but IDNA allows the non-ASCII characters to be\n" +"represented using only the ASCII characters already allowed in so-called host\n" +"names today (letter-digit-hyphen, /[A-Z0-9-]/i).\n" +"\n" +"Use this module if you just want to convert domain names (or email addresses),\n" +"using whatever IDNA standard is the best choice at the moment." +msgstr "" + +#: gnu/packages/perl.scm:6431 msgid "Perl client for Etsy's statsd daemon" msgstr "Perlklient for Etsy's statsd-dæmonen" -#: gnu/packages/perl.scm:5169 +#: gnu/packages/perl.scm:6432 msgid "" "This module implement a UDP client for the statsd statistics\n" "collector daemon in use at Etsy.com." @@ -11254,32 +13586,57 @@ msgstr "" "Dette modul implementerer en UDP-klient for statsd-statistik\n" "indsamlingsdæmonen i brug på Etsy.com." -#: gnu/packages/perl.scm:5187 +#: gnu/packages/perl.scm:6450 msgid "Numeric comparisons" msgstr "Numeriske sammenligninger" -#: gnu/packages/perl.scm:5188 +#: gnu/packages/perl.scm:6451 msgid "" "Number::Compare compiles a simple comparison to an anonymous\n" "subroutine, which you can call with a value to be tested against." msgstr "" -#: gnu/packages/perl.scm:5206 +#: gnu/packages/perl.scm:6469 +msgid "Convert numbers to strings with pretty formatting" +msgstr "" + +#: gnu/packages/perl.scm:6470 +msgid "" +"@code{Number::Format} is a library for formatting numbers.\n" +"Functions are provided for converting numbers to strings in a variety of ways,\n" +"and to convert strings that contain numbers back into numeric form. The\n" +"output formats may include thousands separators - characters inserted between\n" +"each group of three characters counting right to left from the decimal point.\n" +"The characters used for the decimal point and the thousands separator come from\n" +"the locale information or can be specified by the user." +msgstr "" + +#: gnu/packages/perl.scm:6494 +msgid "Perl extension defining ranges of numbers" +msgstr "Perludvidelse der definerer talintervaller" + +#: gnu/packages/perl.scm:6495 +msgid "" +"Number::Range is an object-oriented interface to test if a\n" +"number exists in a given range, and to be able to manipulate the range." +msgstr "" + +#: gnu/packages/perl.scm:6515 msgid "Generate cryptographic signatures for objects" msgstr "Opret kryptografiske underskrifter for objekter" -#: gnu/packages/perl.scm:5207 +#: gnu/packages/perl.scm:6516 msgid "" "Object::Signature is an abstract base class that you can\n" "inherit from in order to allow your objects to generate unique cryptographic\n" "signatures." msgstr "" -#: gnu/packages/perl.scm:5228 +#: gnu/packages/perl.scm:6537 msgid "Read and write OLE storage files" msgstr "" -#: gnu/packages/perl.scm:5229 +#: gnu/packages/perl.scm:6538 msgid "" "This module allows you to read and write\n" "an OLE-Structured file. @dfn{OLE} (Object Linking and Embedding) is a\n" @@ -11287,43 +13644,43 @@ msgid "" "documents within a single file." msgstr "" -#: gnu/packages/perl.scm:5252 +#: gnu/packages/perl.scm:6561 msgid "Anonymous packages" msgstr "Anonyme pakker" -#: gnu/packages/perl.scm:5253 +#: gnu/packages/perl.scm:6562 msgid "" "This module allows for anonymous packages that are\n" "independent of the main namespace and only available through an object\n" "instance, not by name." msgstr "" -#: gnu/packages/perl.scm:5281 +#: gnu/packages/perl.scm:6590 msgid "Manage deprecation warnings for your distribution" msgstr "Håndter forældelsesadvarseler for din distribution" -#: gnu/packages/perl.scm:5282 +#: gnu/packages/perl.scm:6591 msgid "" "This module allows you to manage a set of deprecations for\n" "one or more modules." msgstr "" -#: gnu/packages/perl.scm:5309 +#: gnu/packages/perl.scm:6618 msgid "Routines for manipulating stashes" msgstr "" -#: gnu/packages/perl.scm:5310 +#: gnu/packages/perl.scm:6619 msgid "" "Manipulating stashes (Perl's symbol tables) is occasionally\n" "necessary, but incredibly messy, and easy to get wrong. This module hides all\n" "of that behind a simple API." msgstr "" -#: gnu/packages/perl.scm:5333 +#: gnu/packages/perl.scm:6642 msgid "Faster implementation of the Package::Stash API" msgstr "" -#: gnu/packages/perl.scm:5334 +#: gnu/packages/perl.scm:6643 msgid "" "This is a backend for Package::Stash, which provides the\n" "functionality in a way that's less buggy and much faster. It will be used by\n" @@ -11331,11 +13688,11 @@ msgid "" "compiler." msgstr "" -#: gnu/packages/perl.scm:5354 +#: gnu/packages/perl.scm:6663 msgid "Play with other peoples' lexical variables" msgstr "" -#: gnu/packages/perl.scm:5355 +#: gnu/packages/perl.scm:6664 msgid "" "PadWalker is a module which allows you to inspect (and even\n" "change) lexical variables in any subroutine which called you. It will only\n" @@ -11343,42 +13700,55 @@ msgid "" "is particularly useful for debugging." msgstr "" -#: gnu/packages/perl.scm:5379 +#: gnu/packages/perl.scm:6688 msgid "Simple parallel processing fork manager" msgstr "Simpel prallel behandlingsforgreningshåndtering" -#: gnu/packages/perl.scm:5380 +#: gnu/packages/perl.scm:6689 msgid "" "@code{Parallel::ForkManager} is intended for use in\n" "operations that can be done in parallel where the number of\n" "processes to be forked off should be limited." msgstr "" -#: gnu/packages/perl.scm:5400 +#: gnu/packages/perl.scm:6709 msgid "Simple, compact and correct param-checking functions" msgstr "" -#: gnu/packages/perl.scm:5402 +#: gnu/packages/perl.scm:6711 msgid "" "Params::Util provides a basic set of importable functions that makes\n" "checking parameters easier." msgstr "" -#: gnu/packages/perl.scm:5426 +#: gnu/packages/perl.scm:6735 msgid "Validate method/function parameters" msgstr "" -#: gnu/packages/perl.scm:5427 +#: gnu/packages/perl.scm:6736 msgid "" "The Params::Validate module allows you to validate method or\n" "function call parameters to an arbitrary level of specificity." msgstr "" -#: gnu/packages/perl.scm:5445 +#: gnu/packages/perl.scm:6764 +msgid "Build an optimized subroutine parameter validator" +msgstr "" + +#: gnu/packages/perl.scm:6765 +msgid "" +"This module creates a customized, highly efficient\n" +"parameter checking subroutine. It can handle named or positional\n" +"parameters, and can return the parameters as key/value pairs or a list\n" +"of values. In addition to type checks, it also supports parameter\n" +"defaults, optional parameters, and extra \"slurpy\" parameters." +msgstr "" + +#: gnu/packages/perl.scm:6786 msgid "Create and manipulate PAR distributions" msgstr "Opret og manipuler PAR-distributioner" -#: gnu/packages/perl.scm:5446 +#: gnu/packages/perl.scm:6787 msgid "" "PAR::Dist is a toolkit to create and manipulate PAR\n" "distributions." @@ -11386,69 +13756,97 @@ msgstr "" "PAR::Dist er et værktøjssæt til at oprette og manipulere PAR-\n" "distributioner." -#: gnu/packages/perl.scm:5465 +#: gnu/packages/perl.scm:6806 msgid "" "Allows you to both load one or more modules, while setting\n" "up inheritance from those modules at the same time." msgstr "" -#: gnu/packages/perl.scm:5484 +#: gnu/packages/perl.scm:6825 msgid "Path specification manipulation" msgstr "" -#: gnu/packages/perl.scm:5485 +#: gnu/packages/perl.scm:6826 msgid "" "Path::Class is a module for manipulation of file and\n" "directory specifications in a cross-platform manner." msgstr "" -#: gnu/packages/perl.scm:5509 -msgid "File path utility" -msgstr "" +#: gnu/packages/perl.scm:6855 +msgid "Tools for working with directory and file names" +msgstr "Værktøjer for arbejde med mapper og filnavne" -#: gnu/packages/perl.scm:5510 +#: gnu/packages/perl.scm:6856 +msgid "" +"This package provides functions to work with directory and\n" +"file names." +msgstr "" +"Denne pakke tilbyder funktioner til arbejde med mappe- og\n" +"filnavne." + +#: gnu/packages/perl.scm:6880 +msgid "File path utility" +msgstr "Filstiredskab" + +#: gnu/packages/perl.scm:6881 msgid "" "This module provides a small, fast utility for working\n" "with file paths." msgstr "" +"Dette modul tilbyder et lille, hurtigt redskab til arbejdet\n" +"med filstier." -#: gnu/packages/perl.scm:5531 +#: gnu/packages/perl.scm:6902 msgid "Fast and correct UTF-8 IO" -msgstr "" +msgstr "Hurtig og korrekt UTF-8 IO" -#: gnu/packages/perl.scm:5532 +#: gnu/packages/perl.scm:6903 msgid "" "@code{PerlIO::utf8_strict} provides a fast and correct UTF-8\n" "PerlIO layer. Unlike Perl's default @code{:utf8} layer it checks the input\n" "for correctness." msgstr "" -#: gnu/packages/perl.scm:5553 +#: gnu/packages/perl.scm:6926 +msgid "Acmeist PEG Parser Framework" +msgstr "" + +#: gnu/packages/perl.scm:6927 +msgid "" +"Pegex is an Acmeist parser framework. It allows you to easily\n" +"create parsers that will work equivalently in lots of programming languages.\n" +"The inspiration for Pegex comes from the parsing engine upon which the\n" +"postmodern programming language Perl 6 is based on. Pegex brings this beauty\n" +"to the other justmodern languages that have a normal regular expression engine\n" +"available." +msgstr "" + +#: gnu/packages/perl.scm:6951 msgid "Check for comprehensive documentation of a module" msgstr "" -#: gnu/packages/perl.scm:5554 +#: gnu/packages/perl.scm:6952 msgid "" "This module provides a mechanism for determining if the pod\n" "for a given module is comprehensive." msgstr "" -#: gnu/packages/perl.scm:5571 +#: gnu/packages/perl.scm:6969 msgid "Parsing library for text in Pod format" msgstr "" -#: gnu/packages/perl.scm:5572 +#: gnu/packages/perl.scm:6970 msgid "" -"Pod::Simple is a Perl library for parsing text in\n" -"the Pod (plain old documentation) markup language that is typically\n" +"@code{Pod::Simple} is a Perl library for parsing text in\n" +"the @dfn{Pod} (plain old documentation) markup language that is typically\n" "used for writing documentation for Perl and for Perl modules." msgstr "" -#: gnu/packages/perl.scm:5593 +#: gnu/packages/perl.scm:6991 msgid "GNU C library compatible strftime for loggers and servers" msgstr "" -#: gnu/packages/perl.scm:5594 +#: gnu/packages/perl.scm:6992 msgid "" "POSIX::strftime::Compiler provides GNU C library compatible\n" "strftime(3). But this module is not affected by the system locale. This\n" @@ -11456,22 +13854,32 @@ msgid "" "applications." msgstr "" -#: gnu/packages/perl.scm:5612 +#: gnu/packages/perl.scm:7010 msgid "Information about the currently running perl" msgstr "" -#: gnu/packages/perl.scm:5614 +#: gnu/packages/perl.scm:7012 msgid "" "Probe::Perl provides methods for obtaining information about the\n" "currently running perl interpreter. It originally began life as code in the\n" "Module::Build project, but has been externalized here for general use." msgstr "" -#: gnu/packages/perl.scm:5636 +#: gnu/packages/perl.scm:7040 +msgid "Interface to external editor from Perl" +msgstr "" + +#: gnu/packages/perl.scm:7041 +msgid "" +"This module provides the ability to supply some text to an\n" +"external text editor, have it edited by the user, and retrieve the results." +msgstr "" + +#: gnu/packages/perl.scm:7060 msgid "Create read-only scalars, arrays, hashes" msgstr "" -#: gnu/packages/perl.scm:5637 +#: gnu/packages/perl.scm:7061 msgid "" "This module provides a facility for creating non-modifiable\n" "variables in Perl. This is useful for configuration files, headers, etc. It\n" @@ -11479,11 +13887,23 @@ msgid "" "variables that should not be changed." msgstr "" -#: gnu/packages/perl.scm:5655 +#: gnu/packages/perl.scm:7081 +msgid "XS implementation for Ref::Util" +msgstr "" + +#: gnu/packages/perl.scm:7082 +msgid "" +"@code{Ref::Util::XS} is the XS implementation of\n" +"@code{Ref::Util}, which provides several functions to help identify references\n" +"in a more convenient way than the usual approach of examining the return value\n" +"of @code{ref}." +msgstr "" + +#: gnu/packages/perl.scm:7100 msgid "Provide commonly requested regular expressions" msgstr "" -#: gnu/packages/perl.scm:5657 +#: gnu/packages/perl.scm:7102 msgid "" "This module exports a single hash (`%RE') that stores or generates\n" "commonly needed regular expressions. Patterns currently provided include:\n" @@ -11493,29 +13913,41 @@ msgid "" "codes." msgstr "" -#: gnu/packages/perl.scm:5687 +#: gnu/packages/perl.scm:7127 +msgid "Selection of general-utility regexp subroutines" +msgstr "" + +#: gnu/packages/perl.scm:7128 +msgid "" +"This package provides a selection of regular expression\n" +"subroutines including @code{is_regexp}, @code{regexp_seen_evals},\n" +"@code{regexp_is_foreign}, @code{regexp_is_anchored}, @code{serialize_regexp},\n" +"and @code{deserialize_regexp}." +msgstr "" + +#: gnu/packages/perl.scm:7153 msgid "Roles, as a slice of Moose" msgstr "" -#: gnu/packages/perl.scm:5688 +#: gnu/packages/perl.scm:7154 msgid "Role::Tiny is a minimalist role composition tool." msgstr "" -#: gnu/packages/perl.scm:5705 +#: gnu/packages/perl.scm:7185 msgid "Call isa, can, does, and DOES safely" msgstr "" -#: gnu/packages/perl.scm:5706 +#: gnu/packages/perl.scm:7186 msgid "" "This module allows you to call isa, can, does, and DOES\n" "safely on things that may not be objects." msgstr "" -#: gnu/packages/perl.scm:5724 +#: gnu/packages/perl.scm:7204 msgid "Lexically-scoped resource management" msgstr "" -#: gnu/packages/perl.scm:5725 +#: gnu/packages/perl.scm:7205 msgid "" "This module provides a convenient way to perform cleanup or\n" "other forms of resource management at the end of a scope. It is particularly\n" @@ -11526,29 +13958,39 @@ msgid "" "collector." msgstr "" -#: gnu/packages/perl.scm:5748 +#: gnu/packages/perl.scm:7228 msgid "Infinite sets" msgstr "" -#: gnu/packages/perl.scm:5749 +#: gnu/packages/perl.scm:7229 msgid "Set::Infinite is a set theory module for infinite sets." msgstr "" -#: gnu/packages/perl.scm:5769 +#: gnu/packages/perl.scm:7246 +msgid "Manage sets of integers" +msgstr "" + +#: gnu/packages/perl.scm:7247 +msgid "" +"@code{Set::IntSpan} manages sets of integers. It is\n" +"optimized for sets that have long runs of consecutive integers." +msgstr "" + +#: gnu/packages/perl.scm:7268 msgid "Unordered collections of Perl Objects" msgstr "" -#: gnu/packages/perl.scm:5770 +#: gnu/packages/perl.scm:7269 msgid "" "Set::Object provides efficient sets, unordered collections\n" "of Perl objects without duplicates for scalars and references." msgstr "" -#: gnu/packages/perl.scm:5788 +#: gnu/packages/perl.scm:7287 msgid "Set operations for Perl" msgstr "" -#: gnu/packages/perl.scm:5789 +#: gnu/packages/perl.scm:7288 msgid "" "The first priority of Set::Scalar is to be a convenient\n" "interface to sets (as in: unordered collections of Perl scalars). While not\n" @@ -11556,21 +13998,48 @@ msgid "" "compact." msgstr "" -#: gnu/packages/perl.scm:5809 +#: gnu/packages/perl.scm:7308 msgid "Sort arrays by one or multiple calculated keys" msgstr "" -#: gnu/packages/perl.scm:5810 +#: gnu/packages/perl.scm:7309 msgid "" "This Perl module provides various functions to quickly sort\n" "arrays by one or multiple calculated keys." msgstr "" -#: gnu/packages/perl.scm:5828 +#: gnu/packages/perl.scm:7327 +msgid "Sort lexically, but sort numeral parts numerically" +msgstr "" + +#: gnu/packages/perl.scm:7328 +msgid "" +"This module exports two functions, @code{nsort} and\n" +"@code{ncmp}; they are used in implementing a \"natural sorting\" algorithm.\n" +"Under natural sorting, numeric substrings are compared numerically, and other\n" +"word-characters are compared lexically." +msgstr "" + +#: gnu/packages/perl.scm:7356 +msgid "Classes for representing type constraints and coercion" +msgstr "" + +#: gnu/packages/perl.scm:7357 +msgid "" +"The Specio distribution provides classes for representing type\n" +"constraints and coercion, along with syntax sugar for declaring them. Note that\n" +"this is not a proper type system for Perl. Nothing in this distribution will\n" +"magically make the Perl interpreter start checking a value's type on assignment\n" +"to a variable. In fact, there's no built-in way to apply a type to a variable at\n" +"all. Instead, you can explicitly check a value against a type, and optionally\n" +"coerce values to that type." +msgstr "" + +#: gnu/packages/perl.scm:7380 msgid "Spiffy Perl Interface Framework For You" msgstr "" -#: gnu/packages/perl.scm:5829 +#: gnu/packages/perl.scm:7381 msgid "" "Spiffy is a framework and methodology for doing object\n" "oriented (OO) programming in Perl. Spiffy combines the best parts of\n" @@ -11580,11 +14049,21 @@ msgid "" "other OO languages like Python, Ruby, Java and Perl 6." msgstr "" -#: gnu/packages/perl.scm:5851 +#: gnu/packages/perl.scm:7405 +msgid "Collection of very basic statistics modules" +msgstr "" + +#: gnu/packages/perl.scm:7406 +msgid "" +"This package provides basic statistics functions like\n" +"@code{median()}, @code{mean()}, @code{variance()} and @code{stddev()}." +msgstr "" + +#: gnu/packages/perl.scm:7424 msgid "Temporary buffer to save bytes" msgstr "" -#: gnu/packages/perl.scm:5852 +#: gnu/packages/perl.scm:7425 msgid "" "Stream::Buffered is a buffer class to store arbitrary length\n" "of byte strings and then get a seekable filehandle once everything is\n" @@ -11592,62 +14071,75 @@ msgid "" "on the length of the size." msgstr "" -#: gnu/packages/perl.scm:5872 +#: gnu/packages/perl.scm:7445 msgid "Turn on strict and make all warnings fatal" msgstr "" -#: gnu/packages/perl.scm:5873 +#: gnu/packages/perl.scm:7446 msgid "" "Strictures turns on strict and make all warnings fatal when\n" "run from within a source-controlled directory." msgstr "" -#: gnu/packages/perl.scm:5891 +#: gnu/packages/perl.scm:7488 msgid "Camelcase and de-camelcase" msgstr "" -#: gnu/packages/perl.scm:5892 +#: gnu/packages/perl.scm:7489 msgid "" "This module may be used to convert from under_score text to\n" "CamelCase and back again." msgstr "" -#: gnu/packages/perl.scm:5912 +#: gnu/packages/perl.scm:7508 +msgid "Backslash escapes, quoted phrase, word elision, etc." +msgstr "" + +#: gnu/packages/perl.scm:7509 +msgid "" +"This module provides a flexible calling interface to some\n" +"frequently-performed string conversion functions, including applying and\n" +"expanding standard C/Unix-style backslash escapes like \n" +" and \t, wrapping and\n" +"removing double-quotes, and truncating to fit within a desired length." +msgstr "" + +#: gnu/packages/perl.scm:7531 msgid "Rewrite strings based on a set of known prefixes" msgstr "" -#: gnu/packages/perl.scm:5913 +#: gnu/packages/perl.scm:7532 msgid "" "This module allows you to rewrite strings based on a set of\n" "known prefixes." msgstr "" -#: gnu/packages/perl.scm:5932 +#: gnu/packages/perl.scm:7551 msgid "String printing alternatives to printf" msgstr "" -#: gnu/packages/perl.scm:5934 +#: gnu/packages/perl.scm:7553 msgid "" "This module inserts values into (translated) strings. It provides\n" "@code{printf} and @code{sprintf} alternatives via both an object-oriented and\n" "a functional interface." msgstr "" -#: gnu/packages/perl.scm:5957 +#: gnu/packages/perl.scm:7576 msgid "Sophisticated exporter for custom-built routines" msgstr "" -#: gnu/packages/perl.scm:5959 +#: gnu/packages/perl.scm:7578 msgid "" "Sub::Exporter provides a sophisticated alternative to Exporter.pm for\n" "custom-built routines." msgstr "" -#: gnu/packages/perl.scm:5978 +#: gnu/packages/perl.scm:7597 msgid "Only use Sub::Exporter if you need it" msgstr "" -#: gnu/packages/perl.scm:5979 +#: gnu/packages/perl.scm:7598 msgid "" "Sub::Exporter is an incredibly powerful module, but with\n" "that power comes great responsibility, as well as some runtime penalties.\n" @@ -11657,54 +14149,89 @@ msgid "" "renaming exports, if they try to use them." msgstr "" -#: gnu/packages/perl.scm:6001 +#: gnu/packages/perl.scm:7620 msgid "Retrieve names of code references" msgstr "" -#: gnu/packages/perl.scm:6002 +#: gnu/packages/perl.scm:7621 msgid "" "Sub::Identify allows you to retrieve the real name of code\n" "references." msgstr "" -#: gnu/packages/perl.scm:6021 +#: gnu/packages/perl.scm:7641 +msgid "Tool to inspect subroutines" +msgstr "Værktøj til at inspicere underrutiner" + +#: gnu/packages/perl.scm:7642 +msgid "" +"This package provides tools for inspecting subroutines\n" +"in Perl." +msgstr "" +"Denne pakke tilbyder værktøjer til at inspicere underrutiner\n" +"i Perl." + +#: gnu/packages/perl.scm:7661 msgid "Install subroutines into packages easily" msgstr "" -#: gnu/packages/perl.scm:6023 +#: gnu/packages/perl.scm:7663 msgid "" "Sub::Install makes it easy to install subroutines into packages without\n" "the unsightly mess of C or typeglobs lying about where just anyone\n" "can see them." msgstr "" -#: gnu/packages/perl.scm:6044 +#: gnu/packages/perl.scm:7684 msgid "(Re)name a sub" msgstr "" -#: gnu/packages/perl.scm:6045 +#: gnu/packages/perl.scm:7685 msgid "" "Assigns a new name to referenced sub. If package\n" "specification is omitted in the name, then the current package is used. The\n" "return value is the sub." msgstr "" -#: gnu/packages/perl.scm:6064 +#: gnu/packages/perl.scm:7709 +msgid "Efficient generation of subroutines via string eval" +msgstr "" + +#: gnu/packages/perl.scm:7710 +msgid "" +"Sub::Quote provides an efficient generation of subroutines\n" +"via string eval." +msgstr "" + +#: gnu/packages/perl.scm:7728 msgid "Apparently run a function in a higher stack frame" msgstr "" -#: gnu/packages/perl.scm:6065 +#: gnu/packages/perl.scm:7729 msgid "" "Like Tcl's uplevel() function, but not quite so dangerous.\n" "The idea is just to fool caller(). All the really naughty bits of Tcl's\n" "uplevel() are avoided." msgstr "" -#: gnu/packages/perl.scm:6084 +#: gnu/packages/perl.scm:7751 +msgid "Control superclass method dispatching" +msgstr "" + +#: gnu/packages/perl.scm:7753 +msgid "" +"When subclassing a class, you may occasionally want to dispatch control to\n" +"the superclass---at least conditionally and temporarily. This module provides\n" +"nicer equivalents to the native Perl syntax for calling superclasses, along with\n" +"a universal @code{super} method to determine a class' own superclass, and better\n" +"support for run-time mix-ins and roles." +msgstr "" + +#: gnu/packages/perl.scm:7774 msgid "Perl extension for generating SVG documents" msgstr "" -#: gnu/packages/perl.scm:6085 +#: gnu/packages/perl.scm:7775 msgid "" "SVG is a Perl module which generates a nested data structure\n" "containing the DOM representation of an SVG (Scalable Vector Graphics) image.\n" @@ -11713,42 +14240,42 @@ msgid "" "animation content." msgstr "" -#: gnu/packages/perl.scm:6106 +#: gnu/packages/perl.scm:7796 msgid "Switch statement for Perl" msgstr "Skift udtryk for Perl" -#: gnu/packages/perl.scm:6107 +#: gnu/packages/perl.scm:7797 msgid "" "Switch is a Perl module which implements a generalized case\n" "mechanism. The module augments the standard Perl syntax with two new\n" "statements: @code{switch} and @code{case}." msgstr "" -#: gnu/packages/perl.scm:6124 +#: gnu/packages/perl.scm:7843 msgid "Perl extension for getting CPU information" msgstr "Perludvidelse til at indhente cpu-information" -#: gnu/packages/perl.scm:6126 +#: gnu/packages/perl.scm:7845 msgid "" "Sys::CPU is a module for counting the number of CPUs on a system, and\n" "determining their type and clock speed." msgstr "" -#: gnu/packages/perl.scm:6147 +#: gnu/packages/perl.scm:7866 msgid "Get full hostname in Perl" msgstr "" -#: gnu/packages/perl.scm:6148 +#: gnu/packages/perl.scm:7867 msgid "" "Sys::Hostname::Long tries very hard to get the full hostname\n" "of a system." msgstr "" -#: gnu/packages/perl.scm:6166 +#: gnu/packages/perl.scm:7894 msgid "Ensure that a platform has weaken support" msgstr "" -#: gnu/packages/perl.scm:6167 +#: gnu/packages/perl.scm:7895 msgid "" "One recurring problem in modules that use Scalar::Util's\n" "weaken function is that it is not present in the pure-perl variant. If\n" @@ -11758,11 +14285,11 @@ msgid "" "error encouraging the user to seek support." msgstr "" -#: gnu/packages/perl.scm:6192 +#: gnu/packages/perl.scm:7920 msgid "Template processing system for Perl" msgstr "" -#: gnu/packages/perl.scm:6193 +#: gnu/packages/perl.scm:7921 msgid "" "The Template Toolkit is a collection of modules which\n" "implement an extensible template processing system. It was originally\n" @@ -11771,42 +14298,42 @@ msgid "" "documents: HTML, XML, POD, PostScript, LaTeX, and so on." msgstr "" -#: gnu/packages/perl.scm:6216 +#: gnu/packages/perl.scm:7944 msgid "Profiling for Template Toolkit" msgstr "" -#: gnu/packages/perl.scm:6217 +#: gnu/packages/perl.scm:7945 msgid "" "Template::Timer provides inline profiling of the template\n" "processing in Perl code." msgstr "" -#: gnu/packages/perl.scm:6235 +#: gnu/packages/perl.scm:7965 msgid "Detect encoding of the current terminal" msgstr "" -#: gnu/packages/perl.scm:6236 +#: gnu/packages/perl.scm:7966 msgid "" "Term::Encoding is a simple module to detect the encoding of\n" "the current terminal expects in various ways." msgstr "" -#: gnu/packages/perl.scm:6260 +#: gnu/packages/perl.scm:7990 msgid "Progress meter on a standard terminal" msgstr "" -#: gnu/packages/perl.scm:6261 +#: gnu/packages/perl.scm:7991 msgid "" "Term::ProgressBar provides a simple progress bar on the\n" "terminal, to let the user know that something is happening, roughly how much\n" "stuff has been done, and maybe an estimate at how long remains." msgstr "" -#: gnu/packages/perl.scm:6284 +#: gnu/packages/perl.scm:8014 msgid "Progress meter if run interactively" msgstr "" -#: gnu/packages/perl.scm:6285 +#: gnu/packages/perl.scm:8015 msgid "" "Term::ProgressBar is a wonderful module for showing progress\n" "bars on the terminal. This module acts very much like that module when it is\n" @@ -11814,21 +14341,21 @@ msgid "" "a cron job) then it does not show the progress bar." msgstr "" -#: gnu/packages/perl.scm:6307 +#: gnu/packages/perl.scm:8037 msgid "Simple progress bars" msgstr "" -#: gnu/packages/perl.scm:6308 +#: gnu/packages/perl.scm:8038 msgid "" "Term::ProgressBar::Simple tells you how much work has been\n" "done, how much is left to do, and estimate how long it will take." msgstr "" -#: gnu/packages/perl.scm:6326 +#: gnu/packages/perl.scm:8056 msgid "Simple terminal control" msgstr "Simpel terminalkontrol" -#: gnu/packages/perl.scm:6327 +#: gnu/packages/perl.scm:8057 msgid "" "This module, ReadKey, provides ioctl control for terminals\n" "so the input modes can be changed (thus allowing reads of a single character\n" @@ -11837,437 +14364,74 @@ msgid "" "screen size, and retrieval/modification of the control characters." msgstr "" -#: gnu/packages/perl.scm:6354 -msgid "Data-driven testing framework for Perl" +#: gnu/packages/perl.scm:8082 +msgid "Retrieve terminal size" msgstr "" -#: gnu/packages/perl.scm:6355 +#: gnu/packages/perl.scm:8083 msgid "" -"Test::Base gives a way to trivially write your own test\n" -"framework base class. It concentrates on offering reusable data driven\n" -"patterns, so that you can write tests with a minimum of code." +"This is a unified interface to retrieve terminal size. It\n" +"loads one module of a list of known alternatives, each implementing some way\n" +"to get the desired terminal information. This loaded module will actually do\n" +"the job on behalf of @code{Term::Size::Any}." msgstr "" -#: gnu/packages/perl.scm:6382 -msgid "Easily create test classes in an xUnit/JUnit style" -msgstr "" +#: gnu/packages/perl.scm:8103 +msgid "Perl extension for retrieving terminal size (Perl version)" +msgstr "Perludvidelse til at indhente terminalstørrelse (Perlversion)" -#: gnu/packages/perl.scm:6383 +#: gnu/packages/perl.scm:8104 msgid "" -"@code{Test::Class} provides a simple way of creating classes\n" -"and objects to test your code in an xUnit style.\n" -"\n" -"Built using @code{Test::Builder}, it was designed to work with other\n" -"@code{Test::Builder} based modules (@code{Test::More},\n" -"@code{Test::Differences}, @code{Test::Exception}, etc.)." +"This is yet another implementation of @code{Term::Size}.\n" +"Now in pure Perl, with the exception of a C probe run at build time." msgstr "" -#: gnu/packages/perl.scm:6415 -msgid "Test classes the easy way" +#: gnu/packages/perl.scm:8124 +msgid "Format a header and rows into a table" msgstr "" -#: gnu/packages/perl.scm:6416 +#: gnu/packages/perl.scm:8125 msgid "" -"@code{Test::Class::Most} provides some more convenience when\n" -"using @code{Test::Class}." +"This module is able to generically format rows of data\n" +"into tables." msgstr "" -#: gnu/packages/perl.scm:6448 -msgid "Check for uncleaned imports" -msgstr "" - -#: gnu/packages/perl.scm:6449 -msgid "" -"This module lets you check your module's namespaces for\n" -"imported functions you might have forgotten to remove with\n" -"namespace::autoclean or namespace::clean and are therefore available to be\n" -"called as methods, which usually isn't want you want." -msgstr "" - -#: gnu/packages/perl.scm:6469 -msgid "Flexible deep comparison for the Test::Builder framework" -msgstr "" - -#: gnu/packages/perl.scm:6471 -msgid "" -"Test::Deep compares two structures by going through each level, ensuring\n" -"that the values match, that arrays and hashes have the same elements and that\n" -"references are blessed into the correct class. It also handles circular data\n" -"structures without getting caught in an infinite loop." -msgstr "" - -#: gnu/packages/perl.scm:6497 -msgid "Test strings and data structures and show differences" -msgstr "" - -#: gnu/packages/perl.scm:6498 -msgid "" -"This module exports three test functions and four diff-style\n" -"functions." -msgstr "" - -#: gnu/packages/perl.scm:6519 -msgid "Perl extension for maintaining test directories" -msgstr "" - -#: gnu/packages/perl.scm:6520 -msgid "" -"Testing code can involve making sure that files are created\n" -"and deleted as expected. Doing this manually can be error prone, as it's easy\n" -"to forget a file, or miss that some unexpected file was added. This module\n" -"simplifies maintaining test directories by tracking their status as they are\n" -"modified or tested with this API, making it simple to test both individual\n" -"files, as well as to verify that there are no missing or unknown files." -msgstr "" - -#: gnu/packages/perl.scm:6546 -msgid "Test exception based code" -msgstr "" - -#: gnu/packages/perl.scm:6547 -msgid "" -"This module provides a few convenience methods for testing\n" -"exception based code. It is built with Test::Builder and plays happily with\n" -"Test::More and friends." -msgstr "" - -#: gnu/packages/perl.scm:6567 -msgid "Simple helpers for testing code with exceptions" -msgstr "" - -#: gnu/packages/perl.scm:6568 -msgid "" -"Test::Fatal is an alternative to the popular\n" -"Test::Exception. It does much less, but should allow greater flexibility in\n" -"testing exception-throwing code with about the same amount of typing." -msgstr "" - -#: gnu/packages/perl.scm:6592 -msgid "Ease software testing with files and directories" -msgstr "" - -#: gnu/packages/perl.scm:6593 -msgid "" -"This library provides functions to enable testing of files\n" -"and directories. For instance, the @code{file_ok} helper can test whether the\n" -"contents of a file is equal to a particular string." -msgstr "" - -#: gnu/packages/perl.scm:6623 -msgid "Run Perl standard test scripts with statistics" -msgstr "" - -#: gnu/packages/perl.scm:6624 -msgid "" -"Simple test harness which allows tests to be run and results\n" -"automatically aggregated and output to STDOUT." -msgstr "" - -#: gnu/packages/perl.scm:6642 -msgid "Traces memory leaks in Perl" -msgstr "" - -#: gnu/packages/perl.scm:6643 -msgid "" -"Test::LeakTrace provides several functions that trace memory\n" -"leaks. This module scans arenas, the memory allocation system, so it can\n" -"detect any leaked SVs in given blocks." -msgstr "" - -#: gnu/packages/perl.scm:6662 -msgid "Tests strings for equality, with more helpful failures" -msgstr "" - -#: gnu/packages/perl.scm:6663 -msgid "" -"This module provides some drop-in replacements for the\n" -"string comparison functions of Test::More, but which are more suitable when\n" -"you test against long strings." -msgstr "" - -#: gnu/packages/perl.scm:6684 -msgid "Interact with a t/test_manifest file" -msgstr "" - -#: gnu/packages/perl.scm:6685 -msgid "" -"@code{Test::Manifest} overrides the default test file order. Instead of\n" -"running all of the t/*.t files in ASCII-betical order, it looks in the t/test_manifest\n" -"file to find out which tests you want to run and the order in which you want to run them.\n" -"It constructs the right value for the build system to do the right thing." -msgstr "" - -#: gnu/packages/perl.scm:6714 -msgid "Emulate troublesome interfaces in Perl" -msgstr "" - -#: gnu/packages/perl.scm:6715 -msgid "" -"Test::MockObject allows you to create objects that conform\n" -"to particular interfaces with very little code. You don't have to reimplement\n" -"the behavior, just the input and the output." -msgstr "" - -#: gnu/packages/perl.scm:6734 -msgid "Replaces actual time with simulated time" -msgstr "" - -#: gnu/packages/perl.scm:6735 -msgid "" -"This module was created to enable test suites to test code\n" -"at specific points in time. Specifically it overrides localtime, gmtime and\n" -"time at compile time and then relies on the user supplying a mock time via\n" -"set_relative_time, set_absolute_time or set_fixed_time to alter future calls\n" -"to gmtime,time or localtime." -msgstr "" - -#: gnu/packages/perl.scm:6762 -msgid "Most commonly needed test functions and features" -msgstr "" - -#: gnu/packages/perl.scm:6763 -msgid "" -"This module provides the most commonly used testing\n" -"functions, along with automatically turning on strict and warning and gives a\n" -"bit more fine-grained control over test suites." -msgstr "" - -#: gnu/packages/perl.scm:6786 -msgid "Skip tests when modules not available" -msgstr "" - -#: gnu/packages/perl.scm:6787 -msgid "" -"@code{Test::Needs} allows you to skip test scripts if\n" -"modules are not available. The requested modules will be loaded, and\n" -"optionally have their versions checked. If the module is missing, the test\n" -"script will be skipped. Modules that are found but fail to compile will exit\n" -"with an error rather than skip.\n" -"\n" -"If used in a subtest, the remainder of the subtest will be skipped." -msgstr "" - -#: gnu/packages/perl.scm:6809 -msgid "Ensure no warnings are produced while testing" -msgstr "" - -#: gnu/packages/perl.scm:6811 -msgid "" -"This modules causes any warnings during testing to be captured and\n" -"stored. It automatically adds an extra test that will run when your script\n" -"ends to check that there were no warnings. If there were any warnings, the\n" -"test will fail and output diagnostics of where, when and what the warning was,\n" -"including a stack trace of what was going on when it occurred." -msgstr "" - -#: gnu/packages/perl.scm:6834 -msgid "Compare the difference between numbers against a given tolerance" -msgstr "" - -#: gnu/packages/perl.scm:6836 -msgid "" -"At some point or another, most programmers find they need to compare\n" -"floating-point numbers for equality. The typical idiom is to test if the\n" -"absolute value of the difference of the numbers is within a desired tolerance,\n" -"usually called epsilon. This module provides such a function for use with\n" -"@code{Test::More}." -msgstr "" - -#: gnu/packages/perl.scm:6859 -msgid "Utilities to test STDOUT and STDERR messages" -msgstr "" - -#: gnu/packages/perl.scm:6861 -msgid "" -"Test::Output provides a simple interface for testing output sent to\n" -"STDOUT or STDERR. A number of different utilities are included to try and be\n" -"as flexible as possible to the tester." -msgstr "" - -#: gnu/packages/perl.scm:6883 -msgid "Check for POD errors in files" -msgstr "" - -#: gnu/packages/perl.scm:6884 -msgid "" -"Check POD files for errors or warnings in a test file, using\n" -"Pod::Simple to do the heavy lifting." -msgstr "" - -#: gnu/packages/perl.scm:6904 -msgid "Check for pod coverage" -msgstr "" - -#: gnu/packages/perl.scm:6905 -msgid "" -"This module adds a test to your Perl distribution which\n" -"checks for pod coverage of all appropriate files." -msgstr "" - -#: gnu/packages/perl.scm:6923 -msgid "Checks to see if the module can be loaded" -msgstr "" - -#: gnu/packages/perl.scm:6924 -msgid "" -"Test::Requires checks to see if the module can be loaded.\n" -"If this fails, then rather than failing tests this skips all tests." -msgstr "" - -#: gnu/packages/perl.scm:6943 -msgid "Basic cross-platform tests for scripts" -msgstr "" - -#: gnu/packages/perl.scm:6945 -msgid "" -"The intent of the Test::Script module is to provide a series of basic\n" -"tests for 80% of the testing you will need to do for scripts in the script (or\n" -"bin as is also commonly used) paths of your Perl distribution." -msgstr "" - -#: gnu/packages/perl.scm:6968 -msgid "Fork test in Perl" -msgstr "" - -#: gnu/packages/perl.scm:6969 -msgid "" -"Test::SharedFork is a utility module for Test::Builder. It\n" -"makes fork(2) safe to use in test cases." -msgstr "" - -#: gnu/packages/perl.scm:6985 -msgid "Basic utilities for writing tests" -msgstr "" - -#: gnu/packages/perl.scm:6987 -msgid "Test::Simple contains basic utilities for writing tests." -msgstr "" - -#: gnu/packages/perl.scm:7004 -msgid "Simplify running Test::Builder tests" -msgstr "" - -#: gnu/packages/perl.scm:7006 -msgid "" -"Test::Tester allows testing of test modules based on Test::Builder with\n" -"a minimum of effort." -msgstr "" - -#: gnu/packages/perl.scm:7032 -msgid "Trap exit codes, exceptions, output, and so on" -msgstr "" - -#: gnu/packages/perl.scm:7033 -msgid "" -"This module is primarily (but not exclusively) for use in\n" -"test scripts: A block eval configurable and extensible but by default trapping\n" -"STDOUT, STDERR, warnings, exceptions, would-be exit codes, and return values\n" -"from boxed blocks of test code." -msgstr "" - -#: gnu/packages/perl.scm:7053 -msgid "UTF-8 testing in Perl" -msgstr "" - -#: gnu/packages/perl.scm:7054 -msgid "" -"This module is a collection of tests useful for dealing with\n" -"UTF-8 strings in Perl. This module has two types of tests: The validity tests\n" -"check if a string is valid and not corrupt, whereas the characteristics tests\n" -"will check that string has a given set of characteristics." -msgstr "" - -#: gnu/packages/perl.scm:7076 -msgid "Perl extension to test methods for warnings" -msgstr "" - -#: gnu/packages/perl.scm:7077 -msgid "" -"This module provides a few convenience methods for testing\n" -"warning based code." -msgstr "" - -#: gnu/packages/perl.scm:7095 -msgid "Test for warnings and the lack of them" -msgstr "" - -#: gnu/packages/perl.scm:7096 -msgid "" -"This module is intended to be used as a drop-in replacement\n" -"for Test::NoWarnings. It also adds an extra test, but runs this test before\n" -"done_testing calculates the test count, rather than after. It does this by\n" -"hooking into done_testing as well as via an END block. You can declare a\n" -"plan, or not, and things will still Just Work." -msgstr "" - -#: gnu/packages/perl.scm:7117 -msgid "Test fallback behaviour in absence of modules" -msgstr "" - -#: gnu/packages/perl.scm:7118 -msgid "" -"This module allows you to deliberately hide modules from a\n" -"program even though they are installed. This is mostly useful for testing\n" -"modules that have a fallback when a certain dependency module is not\n" -"installed." -msgstr "" - -#: gnu/packages/perl.scm:7145 -msgid "Dynamic generation of tests" -msgstr "" - -#: gnu/packages/perl.scm:7146 -msgid "" -"The Test::WriteVariants module provides for the dynamic\n" -"generation of tests in nested combinations of contexts." -msgstr "" - -#: gnu/packages/perl.scm:7166 -msgid "Testing module for YAML implementations" -msgstr "" - -#: gnu/packages/perl.scm:7167 -msgid "" -"Test::YAML is a subclass of Test::Base with YAML specific\n" -"support." -msgstr "" - -#: gnu/packages/perl.scm:7186 +#: gnu/packages/perl.scm:8144 msgid "Align text" -msgstr "" +msgstr "Juster tekst" -#: gnu/packages/perl.scm:7187 +#: gnu/packages/perl.scm:8145 msgid "" "Text::Aligner exports a single function, align(), which is\n" "used to justify strings to various alignment styles." msgstr "" -#: gnu/packages/perl.scm:7205 +#: gnu/packages/perl.scm:8163 msgid "Extract delimited text sequences from strings" msgstr "" -#: gnu/packages/perl.scm:7206 +#: gnu/packages/perl.scm:8164 msgid "" "The Text::Balanced module can be used to extract delimited\n" "text sequences from strings." msgstr "" -#: gnu/packages/perl.scm:7224 +#: gnu/packages/perl.scm:8182 msgid "Manipulate comma-separated values" msgstr "" -#: gnu/packages/perl.scm:7225 +#: gnu/packages/perl.scm:8183 msgid "" "Text::CSV provides facilities for the composition and\n" "decomposition of comma-separated values. An instance of the Text::CSV class\n" "can combine fields into a CSV string and parse a CSV string into fields." msgstr "" -#: gnu/packages/perl.scm:7244 +#: gnu/packages/perl.scm:8202 msgid "Rountines for manipulating CSV files" msgstr "" -#: gnu/packages/perl.scm:7245 +#: gnu/packages/perl.scm:8203 msgid "" "@code{Text::CSV_XS} provides facilities for the composition\n" "and decomposition of comma-separated values. An instance of the\n" @@ -12277,11 +14441,11 @@ msgid "" "and escapes." msgstr "" -#: gnu/packages/perl.scm:7269 +#: gnu/packages/perl.scm:8227 msgid "Perform diffs on files and record sets" msgstr "" -#: gnu/packages/perl.scm:7270 +#: gnu/packages/perl.scm:8228 msgid "" "Text::Diff provides a basic set of services akin to the GNU\n" "diff utility. It is not anywhere near as feature complete as GNU diff, but it\n" @@ -12290,33 +14454,44 @@ msgid "" "generally slower on larger files." msgstr "" -#: gnu/packages/perl.scm:7292 +#: gnu/packages/perl.scm:8253 +msgid "Various subroutines to format text" +msgstr "" + +#: gnu/packages/perl.scm:8254 +msgid "" +"This package provides functions to format text in various\n" +"ways like centering, paragraphing, and converting tabs to spaces and spaces\n" +"to tabs." +msgstr "" + +#: gnu/packages/perl.scm:8274 msgid "Match globbing patterns against text" msgstr "" -#: gnu/packages/perl.scm:7293 +#: gnu/packages/perl.scm:8275 msgid "" "Text::Glob implements glob(3) style matching that can be\n" "used to match against text, rather than fetching names from a file system. If\n" "you want to do full file globbing use the File::Glob module instead." msgstr "" -#: gnu/packages/perl.scm:7316 +#: gnu/packages/perl.scm:8298 msgid "Fast, middleweight template engine" msgstr "" -#: gnu/packages/perl.scm:7318 +#: gnu/packages/perl.scm:8300 msgid "" "Text::NeatTemplate provides a simple, middleweight but fast\n" "template engine, for when you need speed rather than complex features,\n" "yet need more features than simple variable substitution." msgstr "" -#: gnu/packages/perl.scm:7337 +#: gnu/packages/perl.scm:8319 msgid "Convert between Roman and Arabic algorisms" msgstr "" -#: gnu/packages/perl.scm:7338 +#: gnu/packages/perl.scm:8320 msgid "" "This package provides functions to convert between Roman and\n" "Arabic algorisms. It supports both conventional Roman algorisms (which range\n" @@ -12324,27 +14499,39 @@ msgid "" "algorism to indicate multiplication by 1000." msgstr "" -#: gnu/packages/perl.scm:7358 +#: gnu/packages/perl.scm:8340 msgid "Simple ASCII tables" msgstr "" -#: gnu/packages/perl.scm:7359 +#: gnu/packages/perl.scm:8341 msgid "Text::SimpleTable draws simple ASCII tables." msgstr "" -#: gnu/packages/perl.scm:7380 +#: gnu/packages/perl.scm:8362 msgid "Organize Data in Tables" msgstr "" -#: gnu/packages/perl.scm:7381 +#: gnu/packages/perl.scm:8363 msgid "Text::Table renders plaintext tables." msgstr "" -#: gnu/packages/perl.scm:7398 +#: gnu/packages/perl.scm:8384 +msgid "Expand template text with embedded Perl" +msgstr "" + +#: gnu/packages/perl.scm:8386 +msgid "" +"This is a library for generating letters, building HTML pages, or\n" +"filling in templates generally. A template is a piece of text that has little\n" +"Perl programs embedded in it here and there. When you fill in a template, you\n" +"evaluate the little programs and replace them with their values." +msgstr "" + +#: gnu/packages/perl.scm:8406 msgid "Provide plain ASCII transliterations of Unicode text" msgstr "" -#: gnu/packages/perl.scm:7399 +#: gnu/packages/perl.scm:8407 msgid "" "Text::Unidecode provides a function, unidecode(...) that\n" "takes Unicode data and tries to represent it in US-ASCII characters (i.e., the\n" @@ -12354,21 +14541,29 @@ msgid "" "system." msgstr "" -#: gnu/packages/perl.scm:7427 +#: gnu/packages/perl.scm:8428 +msgid "Perl interpreter-based threads" +msgstr "" + +#: gnu/packages/perl.scm:8429 +msgid "This module exposes interpreter threads to the Perl level." +msgstr "" + +#: gnu/packages/perl.scm:8452 msgid "Role for classes that can be thrown" msgstr "" -#: gnu/packages/perl.scm:7428 +#: gnu/packages/perl.scm:8453 msgid "" "Throwable is a role for classes that are meant to be thrown\n" "as exceptions to standard program flow." msgstr "" -#: gnu/packages/perl.scm:7445 +#: gnu/packages/perl.scm:8470 msgid "Perl script tidier" msgstr "" -#: gnu/packages/perl.scm:7446 +#: gnu/packages/perl.scm:8471 msgid "" "This package contains a Perl script which indents and\n" "reformats Perl scripts to make them easier to read. The formatting can be\n" @@ -12376,21 +14571,21 @@ msgid "" "approximately follow the suggestions in the Perl Style Guide." msgstr "" -#: gnu/packages/perl.scm:7466 +#: gnu/packages/perl.scm:8491 msgid "Cycle through a list of values" msgstr "" -#: gnu/packages/perl.scm:7467 +#: gnu/packages/perl.scm:8492 msgid "" "You use @code{Tie::Cycle} to go through a list over and over\n" "again. Once you get to the end of the list, you go back to the beginning." msgstr "" -#: gnu/packages/perl.scm:7486 +#: gnu/packages/perl.scm:8511 msgid "Ordered associative arrays for Perl" msgstr "" -#: gnu/packages/perl.scm:7487 +#: gnu/packages/perl.scm:8512 msgid "" "This Perl module implements Perl hashes that preserve the\n" "order in which the hash elements were added. The order is not affected when\n" @@ -12399,42 +14594,53 @@ msgid "" "operations can also be performed on the IxHash." msgstr "" -#: gnu/packages/perl.scm:7510 +#: gnu/packages/perl.scm:8535 msgid "Tie to an existing Perl object" msgstr "" -#: gnu/packages/perl.scm:7511 +#: gnu/packages/perl.scm:8536 msgid "" "This class provides a tie constructor that returns the\n" "object it was given as it's first argument. This way side effects of calling\n" "$object->TIEHASH are avoided." msgstr "" -#: gnu/packages/perl.scm:7533 +#: gnu/packages/perl.scm:8559 msgid "English expression of durations" msgstr "" -#: gnu/packages/perl.scm:7534 +#: gnu/packages/perl.scm:8560 msgid "" "This module provides functions for expressing durations in\n" "rounded or exact terms." msgstr "" -#: gnu/packages/perl.scm:7556 +#: gnu/packages/perl.scm:8582 msgid "Parse time duration strings" msgstr "" -#: gnu/packages/perl.scm:7557 +#: gnu/packages/perl.scm:8583 msgid "" "Time::Duration::Parse is a module to parse human readable\n" "duration strings like \"2 minutes\" and \"3 seconds\" to seconds." msgstr "" -#: gnu/packages/perl.scm:7575 +#: gnu/packages/perl.scm:8601 +msgid "High resolution alarm, sleep, gettimeofday, interval timers" +msgstr "" + +#: gnu/packages/perl.scm:8602 +msgid "" +"This package implements @code{usleep}, @code{ualarm}, and\n" +"@code{gettimeofday} for Perl, as well as wrappers to implement @code{time},\n" +"@code{sleep}, and @code{alarm} that know about non-integral seconds." +msgstr "" + +#: gnu/packages/perl.scm:8621 msgid "Efficiently compute time from local and GMT time" msgstr "" -#: gnu/packages/perl.scm:7576 +#: gnu/packages/perl.scm:8622 msgid "" "This module provides functions that are the inverse of\n" "built-in perl functions localtime() and gmtime(). They accept a date as a\n" @@ -12442,80 +14648,142 @@ msgid "" "the system epoch." msgstr "" -#: gnu/packages/perl.scm:7596 +#: gnu/packages/perl.scm:8642 +msgid "Object-Oriented time objects" +msgstr "" + +#: gnu/packages/perl.scm:8644 +msgid "" +"This module replaces the standard @code{localtime} and @code{gmtime}\n" +"functions with implementations that return objects. It does so in a\n" +"backwards-compatible manner, so that using these functions as documented will\n" +"still work as expected." +msgstr "" + +#: gnu/packages/perl.scm:8664 msgid "Date parsing/formatting subroutines" msgstr "" -#: gnu/packages/perl.scm:7597 +#: gnu/packages/perl.scm:8665 msgid "" "This module provides routines for parsing date string into\n" "time values and formatting dates into ASCII strings." msgstr "" -#: gnu/packages/perl.scm:7619 +#: gnu/packages/perl.scm:8687 msgid "Shift and scale time" msgstr "" -#: gnu/packages/perl.scm:7620 +#: gnu/packages/perl.scm:8688 msgid "" "This module allows you to speed up your sleep(), alarm(),\n" "and time() calls." msgstr "" -#: gnu/packages/perl.scm:7643 +#: gnu/packages/perl.scm:8711 msgid "Simple tree object" msgstr "" -#: gnu/packages/perl.scm:7644 +#: gnu/packages/perl.scm:8712 msgid "" "This module in a fully object-oriented implementation of a\n" "simple n-ary tree." msgstr "" -#: gnu/packages/perl.scm:7668 +#: gnu/packages/perl.scm:8736 msgid "Factory object for dispensing Visitor objects" msgstr "" -#: gnu/packages/perl.scm:7669 +#: gnu/packages/perl.scm:8737 msgid "" "This module is a factory for dispensing\n" "Tree::Simple::Visitor::* objects." msgstr "" -#: gnu/packages/perl.scm:7687 +#: gnu/packages/perl.scm:8755 msgid "Minimal try/catch with proper preservation of $@@" msgstr "" -#: gnu/packages/perl.scm:7688 +#: gnu/packages/perl.scm:8756 msgid "" "This module provides bare bones try/catch/finally statements\n" "that are designed to minimize common mistakes with eval blocks, and nothing\n" "else." msgstr "" -#: gnu/packages/perl.scm:7709 +#: gnu/packages/perl.scm:8781 +msgid "Tie a variable to a type constraint" +msgstr "" + +#: gnu/packages/perl.scm:8782 +msgid "" +"This module exports a single function: @code{ttie}. It ties\n" +"a variable to a type constraint, ensuring that whatever values stored in the\n" +"variable will conform to the type constraint. If the type constraint has\n" +"coercions, these will be used if necessary to ensure values assigned to the\n" +"variable conform." +msgstr "" + +#: gnu/packages/perl.scm:8815 +msgid "Tiny, yet Moo(se)-compatible type constraint" +msgstr "" + +#: gnu/packages/perl.scm:8816 +msgid "" +"@code{Type::Tiny} is a small class for writing type\n" +"constraints, inspired by Moose's type constraint API. It has only one\n" +"non-core dependency (and even that is simply a module that was previously\n" +"distributed as part of @code{Type::Tiny} but has since been spun off), and can\n" +"be used with Moose, Mouse and Moo (or none of the above)." +msgstr "" + +#: gnu/packages/perl.scm:8837 +msgid "Provides an XS boost for some of Type::Tiny's built-in type constraints" +msgstr "" + +#: gnu/packages/perl.scm:8838 +msgid "" +"This module is optionally used by @code{Type::Tiny} to\n" +"provide faster, C-based implementations of some type constraints. This\n" +"package has only core dependencies, and does not depend on @code{Type::Tiny},\n" +"so other data validation frameworks might also consider using it." +msgstr "" + +#: gnu/packages/perl.scm:8863 +msgid "Types and coercions for Moose and Moo" +msgstr "" + +#: gnu/packages/perl.scm:8864 +msgid "" +"This module provides @code{Path::Tiny} types for Moose, Moo,\n" +"etc. It handles two important types of coercion: coercing objects with\n" +"overloaded stringification, and coercing to absolute paths. It also can check\n" +"to ensure that files or directories exist." +msgstr "" + +#: gnu/packages/perl.scm:8886 msgid "Data types for common serialisation formats" msgstr "" -#: gnu/packages/perl.scm:7710 +#: gnu/packages/perl.scm:8887 msgid "" "This module provides some extra datatypes that are used by\n" "common serialisation formats such as JSON or CBOR." msgstr "" -#: gnu/packages/perl.scm:7728 +#: gnu/packages/perl.scm:8914 msgid "Unicode normalization forms" msgstr "" -#: gnu/packages/perl.scm:7729 +#: gnu/packages/perl.scm:8915 msgid "This Perl module provides Unicode normalization forms." msgstr "" -#: gnu/packages/perl.scm:7748 +#: gnu/packages/perl.scm:8944 msgid "Unicode collation algorithm" msgstr "" -#: gnu/packages/perl.scm:7749 +#: gnu/packages/perl.scm:8945 msgid "" "This package provides tools for sorting and comparing\n" "Unicode data." @@ -12523,52 +14791,63 @@ msgstr "" "Denne pakke tilbyder værktøjer for sortering og sammenligning\n" "af Uniocodedata." -#: gnu/packages/perl.scm:7770 +#: gnu/packages/perl.scm:8966 msgid "Unicode line breaking algorithm" msgstr "" -#: gnu/packages/perl.scm:7772 +#: gnu/packages/perl.scm:8968 msgid "" "@code{Unicode::LineBreak} implements the line breaking algorithm\n" "described in Unicode Standard Annex #14. The @code{East_Asian_Width} property\n" "defined by Annex #11 is used to determine breaking positions." msgstr "" -#: gnu/packages/perl.scm:7795 +#: gnu/packages/perl.scm:8991 msgid "Encoding and decoding of UTF-8 encoding form" msgstr "" -#: gnu/packages/perl.scm:7797 +#: gnu/packages/perl.scm:8993 msgid "" "This module provides functions to encode and decode UTF-8 encoding form\n" "as specified by Unicode and ISO/IEC 10646:2011." msgstr "" -#: gnu/packages/perl.scm:7815 +#: gnu/packages/perl.scm:9011 msgid "UNIVERSAL::can() reimplementation" msgstr "" -#: gnu/packages/perl.scm:7816 +#: gnu/packages/perl.scm:9012 msgid "" "This module attempts to work around people calling\n" "UNIVERSAL::can() as a function, which it is not." msgstr "" -#: gnu/packages/perl.scm:7836 +#: gnu/packages/perl.scm:9032 msgid "UNIVERSAL::isa() reimplementation" msgstr "" -#: gnu/packages/perl.scm:7837 +#: gnu/packages/perl.scm:9033 msgid "" "This module attempts to recover from people calling\n" "UNIVERSAL::isa as a function." msgstr "" -#: gnu/packages/perl.scm:7855 +#: gnu/packages/perl.scm:9052 +msgid "Require modules from a variable" +msgstr "" + +#: gnu/packages/perl.scm:9053 +msgid "" +"This module lets you require other modules where the module\n" +"name is in a variable, something you can't do with the @code{require}\n" +"built-in." +msgstr "" + +#: gnu/packages/perl.scm:9072 msgid "Associate user-defined magic to variables from Perl" msgstr "" -#: gnu/packages/perl.scm:7856 +#: gnu/packages/perl.scm:9073 msgid "" "Magic is Perl's way of enhancing variables. This mechanism\n" "lets the user add extra data to any variable and hook syntactical\n" @@ -12577,11 +14856,11 @@ msgid "" "having to write a single line of XS." msgstr "" -#: gnu/packages/perl.scm:7879 +#: gnu/packages/perl.scm:9096 msgid "Easily generate well-formed, namespace-aware XML" msgstr "" -#: gnu/packages/perl.scm:7880 +#: gnu/packages/perl.scm:9097 msgid "" "@code{XML::Writer} is a simple Perl module for writing XML\n" "documents: it takes care of constructing markup and escaping data correctly.\n" @@ -12591,11 +14870,11 @@ msgid "" "attribute names." msgstr "" -#: gnu/packages/perl.scm:7906 +#: gnu/packages/perl.scm:9124 msgid "Opaque, extensible XS pointer backed objects using sv_magic" msgstr "" -#: gnu/packages/perl.scm:7908 +#: gnu/packages/perl.scm:9126 msgid "" "This way of associating structs with Perl space objects is designed to\n" "supersede Perl's builtin @code{T_PTROBJ} with something that is extensible\n" @@ -12603,42 +14882,62 @@ msgid "" "neither visible nor modifiable from Perl space)." msgstr "" -#: gnu/packages/perl.scm:7930 +#: gnu/packages/perl.scm:9148 msgid "YAML for Perl" msgstr "" -#: gnu/packages/perl.scm:7931 +#: gnu/packages/perl.scm:9149 msgid "" "The YAML.pm module implements a YAML Loader and Dumper based\n" "on the YAML 1.0 specification." msgstr "" -#: gnu/packages/perl.scm:7954 +#: gnu/packages/perl.scm:9171 +msgid "Perl YAML Serialization using XS and libyaml" +msgstr "" + +#: gnu/packages/perl.scm:9173 +msgid "" +"@code{YAML::XS} is a Perl XS binding to libyaml which offers Perl the\n" +"best YAML support to date." +msgstr "" + +#: gnu/packages/perl.scm:9196 msgid "Read/Write YAML files" msgstr "" -#: gnu/packages/perl.scm:7955 +#: gnu/packages/perl.scm:9197 msgid "" "YAML::Tiny is a perl class for reading and writing\n" "YAML-style files, written with as little code as possible, reducing load time\n" "and memory overhead." msgstr "" -#: gnu/packages/perl.scm:7976 +#: gnu/packages/perl.scm:9221 +msgid "Generate recursive-descent parsers" +msgstr "" + +#: gnu/packages/perl.scm:9223 +msgid "" +"@code{Parse::RecDescent} can incrementally generate top-down\n" +"recursive-descent text parsers from simple yacc-like grammar specifications." +msgstr "" + +#: gnu/packages/perl.scm:9243 msgid "Generate and use LALR parsers" msgstr "" -#: gnu/packages/perl.scm:7977 +#: gnu/packages/perl.scm:9244 msgid "" "This package compiles yacc-like @dfn{Look Ahead LR} (LALR)\n" "grammars to generate Perl object oriented parser modules." msgstr "" -#: gnu/packages/perl.scm:8003 +#: gnu/packages/perl.scm:9270 msgid "Distribution metadata for a CPAN dist" msgstr "" -#: gnu/packages/perl.scm:8004 +#: gnu/packages/perl.scm:9271 msgid "" "Software distributions released to the CPAN include a\n" "META.json or, for older distributions, META.yml, which describes the\n" @@ -12649,11 +14948,11 @@ msgid "" "methods for interrogating that data." msgstr "" -#: gnu/packages/perl.scm:8027 +#: gnu/packages/perl.scm:9294 msgid "Set of version requirements for a CPAN dist" msgstr "" -#: gnu/packages/perl.scm:8028 +#: gnu/packages/perl.scm:9295 msgid "" "A CPAN::Meta::Requirements object models a set of version\n" "constraints like those specified in the META.yml or META.json files in CPAN\n" @@ -12662,22 +14961,22 @@ msgid "" "representation." msgstr "" -#: gnu/packages/perl.scm:8051 +#: gnu/packages/perl.scm:9318 msgid "Read and write a subset of YAML for CPAN Meta files" msgstr "" -#: gnu/packages/perl.scm:8052 +#: gnu/packages/perl.scm:9319 msgid "" "This module implements a subset of the YAML specification\n" "for use in reading and writing CPAN metadata files like META.yml and\n" "MYMETA.yml." msgstr "" -#: gnu/packages/perl.scm:8073 +#: gnu/packages/perl.scm:9340 msgid "Build and install Perl modules" msgstr "" -#: gnu/packages/perl.scm:8074 +#: gnu/packages/perl.scm:9341 msgid "" "@code{Module::Build} is a system for building, testing, and\n" "installing Perl modules; it used to be part of Perl itself until version 5.22,\n" @@ -12688,21 +14987,21 @@ msgid "" "system---most of the @code{Module::Build} code is pure-Perl." msgstr "" -#: gnu/packages/perl.scm:8100 +#: gnu/packages/perl.scm:9367 msgid "Parse META.yml and META.json CPAN metadata files" msgstr "" -#: gnu/packages/perl.scm:8101 +#: gnu/packages/perl.scm:9368 msgid "" "Parse::CPAN::Meta is a parser for META.json and META.yml\n" "files, using JSON::PP and/or CPAN::Meta::YAML." msgstr "" -#: gnu/packages/perl.scm:8119 +#: gnu/packages/perl.scm:9386 msgid "Common Scalar and List utility subroutines" msgstr "" -#: gnu/packages/perl.scm:8120 +#: gnu/packages/perl.scm:9387 msgid "" "This package contains a selection of subroutines that people\n" "have expressed would be nice to have in the perl core, but the usage would not\n" @@ -12710,124 +15009,209 @@ msgid "" "such that being individual extensions would be wasteful." msgstr "" -#: gnu/packages/perl.scm:8144 +#: gnu/packages/perl.scm:9411 msgid "Cross-platform functions emulating common shell commands" msgstr "" -#: gnu/packages/perl.scm:8146 +#: gnu/packages/perl.scm:9413 msgid "Shell::Command is a thin wrapper around ExtUtils::Command." msgstr "" -#: gnu/packages/perl.scm:8173 +#: gnu/packages/perl.scm:9440 msgid "Object-oriented File::Find replacement in Perl" msgstr "" -#: gnu/packages/perl.scm:8174 +#: gnu/packages/perl.scm:9441 msgid "" "File::Find::Object is an object-oriented\n" "File::Find replacement in Perl." msgstr "" -#: gnu/packages/perl.scm:8203 +#: gnu/packages/perl.scm:9470 msgid "Alternative interface to File::Find::Object" msgstr "" -#: gnu/packages/perl.scm:8204 +#: gnu/packages/perl.scm:9471 msgid "" "File::Find::Object::Rule is an alternative Perl\n" "interface to File::Find::Object." msgstr "" -#: gnu/packages/perl.scm:8234 -msgid "Test for trailing space in Perl source files" +#: gnu/packages/perl.scm:9491 +msgid "TTF font support for Perl" msgstr "" -#: gnu/packages/perl.scm:8235 +#: gnu/packages/perl.scm:9492 msgid "" -"Test::TrailingSpace tests for trailing spaces\n" -"in Perl source files." +"This package provides a Perl module for TrueType/OpenType\n" +"font hacking. It supports reading, processing and writing of the following\n" +"tables: GDEF, GPOS, GSUB, LTSH, OS/2, PCLT, bsln, cmap, cvt, fdsc, feat,\n" +"fpgm, glyf, hdmx, head, hhea, hmtx, kern, loca, maxp, mort, name, post, prep,\n" +"prop, vhea, vmtx and the reading and writing of all other table types." msgstr "" -#: gnu/packages/photo.scm:72 +#: gnu/packages/perl.scm:9530 +msgid "Collection of Perl modules for time/date manipulation" +msgstr "" + +#: gnu/packages/perl.scm:9531 +msgid "" +"Provides several perl modules for date/time manipulation:\n" +"@code{Time::CTime.pm}, @code{Time::JulianDay.pm}, @code{Time::ParseDate.pm},\n" +"@code{Time::Timezone.pm}, and @code{Time::DaysInMonth.pm}." +msgstr "" + +#: gnu/packages/perl.scm:9560 +msgid "Perl library for testing if a time() is in a specific period" +msgstr "" + +#: gnu/packages/perl.scm:9561 +msgid "" +"This Perl library provides a function which tells whether a\n" +"specific time falls within a specified time period. Its syntax for specifying\n" +"time periods allows you to test for conditions like \"Monday to Friday, 9am\n" +"till 5pm\" and \"on the second Tuesday of the month\" and \"between 4pm and\n" +"4:15pm\" and \"in the first half of each minute\" and \"in January of\n" +"1998\"." +msgstr "" + +#: gnu/packages/perl.scm:9593 +msgid "Iterative, recursive file finder" +msgstr "" + +#: gnu/packages/perl.scm:9594 +msgid "" +"Path::Iterator::Rule iterates over files and directories to\n" +"identify ones matching a user-defined set of rules. The API is based heavily\n" +"on File::Find::Rule, but with more explicit distinction between matching rules\n" +"and options that influence how directories are searched. A\n" +"Path::Iterator::Rule object is a collection of rules (match criteria) with\n" +"methods to add additional criteria. Options that control directory traversal\n" +"are given as arguments to the method that generates an iterator.\n" +"\n" +"A summary of features for comparison to other file finding modules:\n" +"\n" +"@itemize\n" +"@item provides many helper methods for specifying rules\n" +"@item offers (lazy) iterator and flattened list interfaces\n" +"@item custom rules implemented with callbacks\n" +"@item breadth-first (default) or pre- or post-order depth-first searching\n" +"@item follows symlinks (by default, but can be disabled)\n" +"@item directories visited only once (no infinite loop; can be disabled)\n" +"@item doesn't chdir during operation\n" +"@item provides an API for extensions\n" +"@end itemize\n" +"\n" +"As a convenience, the PIR module is an empty subclass of this one that is less\n" +"arduous to type for one-liners." +msgstr "" + +#: gnu/packages/perl.scm:9634 +msgid "Include constants from POD" +msgstr "" + +#: gnu/packages/perl.scm:9635 +msgid "" +"This module allows you to specify those constants that\n" +"should be documented in your POD, and pull them out a run time in a fairly\n" +"arbitrary fashion.\n" +"\n" +"Pod::Constants uses Pod::Parser to do the parsing of the source file. It has\n" +"to open the source file it is called from, and does so directly either by\n" +"lookup in %INC or by assuming it is $0 if the caller is @code{main}\n" +"(or it can't find %INC{caller()})." +msgstr "" + +#: gnu/packages/perl.scm:9662 +msgid "Collection of regexp patterns" +msgstr "" + +#: gnu/packages/perl.scm:9663 +msgid "" +"Regexp::Pattern is a convention for organizing reusable\n" +"regexp patterns in modules." +msgstr "" + +#: gnu/packages/photo.scm:82 msgid "Raw image decoder" msgstr "" -#: gnu/packages/photo.scm:74 +#: gnu/packages/photo.scm:84 msgid "" "LibRaw is a library for reading RAW files obtained from digital photo\n" "cameras (CRW/CR2, NEF, RAF, DNG, and others)." msgstr "" -#: gnu/packages/photo.scm:91 +#: gnu/packages/photo.scm:103 msgid "Read and manipulate EXIF data in digital photographs" msgstr "" -#: gnu/packages/photo.scm:93 +#: gnu/packages/photo.scm:105 msgid "" "The libexif C library allows applications to read, edit, and save EXIF\n" "data as produced by digital cameras." msgstr "" -#: gnu/packages/photo.scm:119 +#: gnu/packages/photo.scm:131 msgid "Accessing digital cameras" msgstr "" -#: gnu/packages/photo.scm:121 +#: gnu/packages/photo.scm:133 msgid "" "This is the library backend for gphoto2. It contains the code for PTP,\n" "MTP, and other vendor specific protocols for controlling and transferring data\n" "from digital cameras." msgstr "" -#: gnu/packages/photo.scm:162 +#: gnu/packages/photo.scm:175 msgid "Command-line tools to access digital cameras" msgstr "" -#: gnu/packages/photo.scm:164 +#: gnu/packages/photo.scm:177 msgid "" "Gphoto2 is a set of command line utilities for manipulating a large\n" "number of different digital cameras. Through libgphoto2, it supports PTP,\n" "MTP, and much more." msgstr "" -#: gnu/packages/photo.scm:197 +#: gnu/packages/photo.scm:210 msgid "Program and Perl library to manipulate EXIF and other metadata" msgstr "Program og Perlbibliotek til at manipulere EXIF og andre metadata" -#: gnu/packages/photo.scm:198 +#: gnu/packages/photo.scm:211 msgid "" "This package provides the @code{exiftool} command and the\n" "@code{Image::ExifTool} Perl library to manipulate EXIF tags of digital images\n" "and a wide variety of other metadata." msgstr "" -#: gnu/packages/photo.scm:222 +#: gnu/packages/photo.scm:235 msgid "Library for panoramic images" msgstr "" -#: gnu/packages/photo.scm:224 +#: gnu/packages/photo.scm:237 msgid "" "The libpano13 package contains the backend library written by the\n" "Panorama Tools project for building panoramic images from a set of\n" "overlapping images, as well as some command line tools." msgstr "" -#: gnu/packages/photo.scm:268 +#: gnu/packages/photo.scm:281 msgid "Tools for combining and blending images" msgstr "" -#: gnu/packages/photo.scm:270 +#: gnu/packages/photo.scm:283 msgid "" "Enblend blends away the seams in a panoramic image mosaic using a\n" "multi-resolution spline. Enfuse merges different exposures of the same\n" "scene to produce an image that looks much like a tone-mapped image." msgstr "" -#: gnu/packages/photo.scm:294 +#: gnu/packages/photo.scm:314 msgid "Library to correct optical lens defects with a lens database" msgstr "" -#: gnu/packages/photo.scm:295 +#: gnu/packages/photo.scm:315 msgid "" "Digital photographs are not ideal. Of course, the better is\n" "your camera, the better the results will be, but in any case if you look\n" @@ -12841,11 +15225,11 @@ msgid "" "photographic equipment." msgstr "" -#: gnu/packages/photo.scm:371 +#: gnu/packages/photo.scm:391 msgid "Virtual lighttable and darkroom for photographers" msgstr "" -#: gnu/packages/photo.scm:372 +#: gnu/packages/photo.scm:392 msgid "" "Darktable is a photography workflow application and RAW\n" "developer. It manages your digital negatives in a database, lets you view\n" @@ -12853,94 +15237,29 @@ msgid "" "and enhance them." msgstr "" -#: gnu/packages/qemu.scm:161 -msgid "Machine emulator and virtualizer" +#: gnu/packages/photo.scm:463 +msgid "Panorama photo stitcher" msgstr "" -#: gnu/packages/qemu.scm:163 +#: gnu/packages/photo.scm:465 msgid "" -"QEMU is a generic machine emulator and virtualizer.\n" -"\n" -"When used as a machine emulator, QEMU can run OSes and programs made for one\n" -"machine (e.g. an ARM board) on a different machine---e.g., your own PC. By\n" -"using dynamic translation, it achieves very good performance.\n" -"\n" -"When used as a virtualizer, QEMU achieves near native performances by\n" -"executing the guest code directly on the host CPU. QEMU supports\n" -"virtualization when executing under the Xen hypervisor or using\n" -"the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86,\n" -"server and embedded PowerPC, and S390 guests." +"Hugin is an easy to use panoramic imaging toolchain with a graphical\n" +"user interface. It can be used to assemble a mosaic of photographs into\n" +"a complete panorama and stitch any series of overlapping pictures." msgstr "" -#: gnu/packages/qemu.scm:185 -msgid "Machine emulator and virtualizer (without GUI)" +#: gnu/packages/photo.scm:516 +msgid "Raw image developing and processing" msgstr "" -#: gnu/packages/qemu.scm:251 -msgid "Operating system information database" -msgstr "" - -#: gnu/packages/qemu.scm:252 +#: gnu/packages/photo.scm:517 msgid "" -"libosinfo is a GObject based library API for managing\n" -"information about operating systems, hypervisors and the (virtual) hardware\n" -"devices they can support. It includes a database containing device metadata\n" -"and provides APIs to match/identify optimal devices for deploying an operating\n" -"system on a hypervisor. Via GObject Introspection, the API is available in\n" -"all common programming languages. Vala bindings are also provided." -msgstr "" - -#: gnu/packages/qemu.scm:326 -msgid "Simple API for virtualization" -msgstr "" - -#: gnu/packages/qemu.scm:327 -msgid "" -"Libvirt is a C toolkit to interact with the virtualization\n" -"capabilities of recent versions of Linux. The library aims at providing long\n" -"term stable C API initially for the Xen paravirtualization but should be able\n" -"to integrate other virtualization mechanisms if needed." -msgstr "" - -#: gnu/packages/qemu.scm:368 -msgid "GLib wrapper around libvirt" -msgstr "" - -#: gnu/packages/qemu.scm:369 -msgid "" -"libvirt-glib wraps the libvirt library to provide a\n" -"high-level object-oriented API better suited for glib-based applications, via\n" -"three libraries:\n" -"\n" -"@enumerate\n" -"@item libvirt-glib - GLib main loop integration & misc helper APIs\n" -"@item libvirt-gconfig - GObjects for manipulating libvirt XML documents\n" -"@item libvirt-gobject - GObjects for managing libvirt objects\n" -"@end enumerate\n" -msgstr "" - -#: gnu/packages/qemu.scm:411 -msgid "Python bindings to libvirt" -msgstr "Pythonbindinger for libvirt" - -#: gnu/packages/qemu.scm:412 -msgid "" -"This package provides Python bindings to the libvirt\n" -"virtualization library." -msgstr "" -"Denne pakke tilbyder Pythonbindinger til virtualiseringsbiblioteket\n" -"libvirt." - -#: gnu/packages/qemu.scm:488 -msgid "Manage virtual machines" -msgstr "Håndter virtuelle maskiner" - -#: gnu/packages/qemu.scm:490 -msgid "" -"The virt-manager application is a desktop user interface for managing\n" -"virtual machines through libvirt. It primarily targets KVM VMs, but also\n" -"manages Xen and LXC (Linux containers). It presents a summary view of running\n" -"domains, their live performance and resource utilization statistics." +"RawTherapee is a raw image processing suite. It comprises a\n" +"subset of image editing operations specifically aimed at non-destructive raw\n" +"photo post-production and is primarily focused on improving a photographer's\n" +"workflow by facilitating the handling of large numbers of images. Most raw\n" +"formats are supported, including Pentax Pixel Shift, Canon Dual-Pixel, and those\n" +"from Foveon and X-Trans sensors." msgstr "" #: gnu/packages/ratpoison.scm:86 @@ -12963,11 +15282,11 @@ msgid "" "cripples Emacs and other quality pieces of software." msgstr "" -#: gnu/packages/readline.scm:82 +#: gnu/packages/readline.scm:92 msgid "Edit command lines while typing, with history support" msgstr "" -#: gnu/packages/readline.scm:84 +#: gnu/packages/readline.scm:94 msgid "" "The GNU readline library allows users to edit command lines as they\n" "are typed in. It can maintain a searchable history of previously entered\n" @@ -12976,11 +15295,11 @@ msgid "" "comfortable for anyone." msgstr "" -#: gnu/packages/readline.scm:121 +#: gnu/packages/readline.scm:133 msgid "Wrapper to allow the editing of keyboard commands" msgstr "" -#: gnu/packages/readline.scm:123 +#: gnu/packages/readline.scm:135 msgid "" "Rlwrap is a 'readline wrapper', a small utility that uses the GNU\n" "readline library to allow the editing of keyboard input for any command. You\n" @@ -12989,11 +15308,11 @@ msgid "" "'special effects' using the filter mechanism." msgstr "" -#: gnu/packages/scanner.scm:84 +#: gnu/packages/scanner.scm:87 msgid "Raster image scanner library and drivers, without scanner support" msgstr "" -#: gnu/packages/scanner.scm:85 +#: gnu/packages/scanner.scm:88 msgid "" "SANE stands for \"Scanner Access Now Easy\" and is an API\n" "proving access to any raster image scanner hardware (flatbed scanner,\n" @@ -13001,11 +15320,11 @@ msgid "" "package contains the library, but no drivers." msgstr "" -#: gnu/packages/scanner.scm:123 +#: gnu/packages/scanner.scm:126 msgid "Raster image scanner library and drivers, with scanner support" msgstr "" -#: gnu/packages/scanner.scm:124 +#: gnu/packages/scanner.scm:127 msgid "" "SANE stands for \"Scanner Access Now Easy\" and is an API\n" "proving access to any raster image scanner hardware (flatbed scanner,\n" @@ -13013,22 +15332,22 @@ msgid "" "package contains the library and drivers." msgstr "" -#: gnu/packages/scheme.scm:187 +#: gnu/packages/scheme.scm:193 msgid "A Scheme implementation with integrated editor and debugger" msgstr "" -#: gnu/packages/scheme.scm:189 +#: gnu/packages/scheme.scm:195 msgid "" "GNU/MIT Scheme is an implementation of the Scheme programming\n" "language. It provides an interpreter, a compiler and a debugger. It also\n" "features an integrated Emacs-like editor and a large runtime library." msgstr "" -#: gnu/packages/scheme.scm:273 +#: gnu/packages/scheme.scm:281 msgid "Efficient Scheme compiler" msgstr "" -#: gnu/packages/scheme.scm:275 +#: gnu/packages/scheme.scm:283 msgid "" "Bigloo is a Scheme implementation devoted to one goal: enabling\n" "Scheme based programming style where C(++) is usually\n" @@ -13040,11 +15359,11 @@ msgid "" "Scheme and C programs and between Scheme and Java programs." msgstr "" -#: gnu/packages/scheme.scm:317 +#: gnu/packages/scheme.scm:332 msgid "Multi-tier programming language for the Web 2.0" msgstr "" -#: gnu/packages/scheme.scm:319 +#: gnu/packages/scheme.scm:334 msgid "" "HOP is a multi-tier programming language for the Web 2.0 and the\n" "so-called diffuse Web. It is designed for programming interactive web\n" @@ -13053,33 +15372,33 @@ msgid "" "mashups, office (web agendas, mail clients, ...), etc." msgstr "" -#: gnu/packages/scheme.scm:362 +#: gnu/packages/scheme.scm:375 msgid "R5RS Scheme implementation that compiles native code via C" msgstr "" -#: gnu/packages/scheme.scm:364 +#: gnu/packages/scheme.scm:377 msgid "" "CHICKEN is a compiler for the Scheme programming language. CHICKEN\n" "produces portable and efficient C, supports almost all of the R5RS Scheme\n" "language standard, and includes many enhancements and extensions." msgstr "" -#: gnu/packages/scheme.scm:383 +#: gnu/packages/scheme.scm:396 msgid "Scheme implementation using a bytecode interpreter" msgstr "" -#: gnu/packages/scheme.scm:385 +#: gnu/packages/scheme.scm:398 msgid "" "Scheme 48 is an implementation of Scheme based on a byte-code\n" "interpreter and is designed to be used as a testbed for experiments in\n" "implementation techniques and as an expository tool." msgstr "" -#: gnu/packages/scheme.scm:498 +#: gnu/packages/scheme.scm:515 msgid "Implementation of Scheme and related languages" msgstr "" -#: gnu/packages/scheme.scm:500 +#: gnu/packages/scheme.scm:517 msgid "" "Racket is an implementation of the Scheme programming language (R5RS and\n" "R6RS) and related languages, such as Typed Racket. It features a compiler and\n" @@ -13087,11 +15406,11 @@ msgid "" "of libraries." msgstr "" -#: gnu/packages/scheme.scm:538 +#: gnu/packages/scheme.scm:555 msgid "Efficient Scheme interpreter and compiler" msgstr "" -#: gnu/packages/scheme.scm:540 +#: gnu/packages/scheme.scm:557 msgid "" "Gambit consists of two main programs: gsi, the Gambit Scheme\n" "interpreter, and gsc, the Gambit Scheme compiler. The interpreter contains\n" @@ -13102,11 +15421,11 @@ msgid "" "mixed." msgstr "" -#: gnu/packages/scheme.scm:574 +#: gnu/packages/scheme.scm:591 msgid "Small embeddable Scheme implementation" msgstr "" -#: gnu/packages/scheme.scm:576 +#: gnu/packages/scheme.scm:593 msgid "" "Chibi-Scheme is a very small library with no external dependencies\n" "intended for use as an extension and scripting language in C programs. In\n" @@ -13115,11 +15434,11 @@ msgid "" "threads." msgstr "" -#: gnu/packages/scheme.scm:746 +#: gnu/packages/scheme.scm:763 msgid "Scmutils library for MIT Scheme" msgstr "" -#: gnu/packages/scheme.scm:747 +#: gnu/packages/scheme.scm:764 msgid "" "The Scmutils system is an integrated library of\n" "procedures, embedded in the programming language Scheme, and intended to\n" @@ -13127,11 +15446,11 @@ msgid "" "engineering." msgstr "" -#: gnu/packages/scheme.scm:795 +#: gnu/packages/scheme.scm:814 msgid "Structure and Interpretation of Computer Programs" msgstr "" -#: gnu/packages/scheme.scm:796 +#: gnu/packages/scheme.scm:815 msgid "" "Structure and Interpretation of Computer Programs (SICP) is\n" "a textbook aiming to teach the principles of computer programming.\n" @@ -13141,31 +15460,31 @@ msgid "" "metalinguistic abstraction, recursion, interpreters, and modular programming." msgstr "" -#: gnu/packages/scheme.scm:837 +#: gnu/packages/scheme.scm:856 msgid "SRE String pattern-matching library for scheme48" msgstr "" -#: gnu/packages/scheme.scm:839 +#: gnu/packages/scheme.scm:858 msgid "" "String pattern-matching library for scheme48 based on the SRE\n" "regular-expression notation." msgstr "" -#: gnu/packages/scheme.scm:871 +#: gnu/packages/scheme.scm:890 msgid "Compatibility and utility library for Scheme" msgstr "" -#: gnu/packages/scheme.scm:872 +#: gnu/packages/scheme.scm:891 msgid "" "SLIB is a portable Scheme library providing compatibility and\n" "utility functions for all standard Scheme implementations." msgstr "" -#: gnu/packages/scheme.scm:933 +#: gnu/packages/scheme.scm:952 msgid "Scheme implementation conforming to R5RS and IEEE P1178" msgstr "" -#: gnu/packages/scheme.scm:934 +#: gnu/packages/scheme.scm:953 msgid "" "GNU SCM is an implementation of Scheme. This\n" "implementation includes Hobbit, a Scheme-to-C compiler, which can\n" @@ -13173,11 +15492,31 @@ msgid "" "linked with a SCM executable." msgstr "" -#: gnu/packages/search.scm:64 +#: gnu/packages/scheme.scm:1010 +msgid "Light-weight interpreter for the Scheme programming language" +msgstr "" + +#: gnu/packages/scheme.scm:1012 +msgid "" +"TinyScheme is a light-weight Scheme interpreter that implements as large a\n" +"subset of R5RS as was possible without getting very large and complicated.\n" +"\n" +"It's meant to be used as an embedded scripting interpreter for other programs.\n" +"As such, it does not offer an Integrated Development Environment (@dfn{IDE}) or\n" +"extensive toolkits, although it does sport a small (and optional) top-level\n" +"loop.\n" +"\n" +"As an embedded interpreter, it allows multiple interpreter states to coexist in\n" +"the same program, without any interference between them. Foreign functions in C\n" +"can be added and values can be defined in the Scheme environment. Being quite a\n" +"small program, it is easy to comprehend, get to grips with, and use." +msgstr "" + +#: gnu/packages/search.scm:72 msgid "Search Engine Library" msgstr "" -#: gnu/packages/search.scm:66 +#: gnu/packages/search.scm:74 msgid "" "Xapian is a highly adaptable toolkit which allows developers to easily\n" "add advanced indexing and search facilities to their own applications. It\n" @@ -13185,11 +15524,15 @@ msgid "" "rich set of boolean query operators." msgstr "" -#: gnu/packages/search.scm:109 -msgid "Tool for Obsessive Compulsive Classifiers" -msgstr "" +#: gnu/packages/search.scm:106 +msgid "Python bindings for the Xapian search engine library" +msgstr "Pythonbindinger for Xapian-søgemotorbiblioteket" -#: gnu/packages/search.scm:111 +#: gnu/packages/search.scm:145 +msgid "Tool for Obsessive Compulsive Classifiers" +msgstr "Værktøjt for Obsessive Compulsive Classifiers" + +#: gnu/packages/search.scm:147 msgid "" "libtocc is the engine of the Tocc project, a tag-based file management\n" "system. The goal of Tocc is to provide a better system for classifying files\n" @@ -13197,21 +15540,21 @@ msgid "" "files and directories." msgstr "" -#: gnu/packages/search.scm:133 +#: gnu/packages/search.scm:169 msgid "Command-line interface to libtocc" msgstr "Kommandolinjegrænseflade til libtocc" -#: gnu/packages/search.scm:135 +#: gnu/packages/search.scm:171 msgid "" "Tocc is a tag-based file management system. This package contains the\n" "command line tool for interacting with libtocc." msgstr "" -#: gnu/packages/search.scm:153 +#: gnu/packages/search.scm:189 msgid "Finding text and HTML files that match boolean expressions" msgstr "Find tekst- og HTML-filer som matcher booleske udtryk" -#: gnu/packages/search.scm:155 +#: gnu/packages/search.scm:191 msgid "" "GNU Bool is a utility to perform text searches on files using Boolean\n" "expressions. For example, a search for \"hello AND world\" would return a\n" @@ -13222,22 +15565,22 @@ msgid "" "for parsing HTML files." msgstr "" -#: gnu/packages/search.scm:185 +#: gnu/packages/search.scm:221 msgid "Full-text search system" msgstr "" -#: gnu/packages/search.scm:186 +#: gnu/packages/search.scm:222 msgid "" "Hyper Estraier can be used to integrate full-text\n" "search into applications, using either the provided command line and CGI\n" "interfaces, or a C API." msgstr "" -#: gnu/packages/search.scm:204 +#: gnu/packages/search.scm:240 msgid "Locate files on the file system" msgstr "Lokaliser filer på filsystemet" -#: gnu/packages/search.scm:206 +#: gnu/packages/search.scm:242 msgid "" "mlocate is a locate/updatedb implementation. The 'm' stands for\n" "\"merging\": @code{updatedb} reuses the existing database to avoid rereading\n" @@ -13247,22 +15590,35 @@ msgid "" "conflict with slocate compatibility." msgstr "" -#: gnu/packages/search.scm:269 +#: gnu/packages/search.scm:307 msgid "Web indexing system" msgstr "" -#: gnu/packages/search.scm:271 +#: gnu/packages/search.scm:309 msgid "" "Swish-e is Simple Web Indexing System for Humans - Enhanced. Swish-e\n" "can quickly and easily index directories of files or remote web sites and\n" "search the generated indexes." msgstr "" -#: gnu/packages/serveez.scm:51 +#: gnu/packages/search.scm:351 +msgid "Personal document indexing system" +msgstr "" + +#: gnu/packages/search.scm:353 +msgid "" +"Xapers is a personal document indexing system,\n" +"geared towards academic journal articles build on the Xapian search engine.\n" +"Think of it as your own personal document search engine, or a local cache of\n" +"online libraries. It provides fast search of document text and\n" +"bibliographic data and simple document and bibtex retrieval." +msgstr "" + +#: gnu/packages/serveez.scm:52 msgid "Framework for implementing IP-based servers" msgstr "Ramme for implementering af IP-baserede servere" -#: gnu/packages/serveez.scm:53 +#: gnu/packages/serveez.scm:54 msgid "" "GNU Serveez is a server framework providing the routines necessary to\n" "easily implement IP-based servers in your application. It\n" @@ -13273,11 +15629,11 @@ msgid "" "server and an IRC server." msgstr "" -#: gnu/packages/shells.scm:89 +#: gnu/packages/shells.scm:79 msgid "POSIX-compliant shell optimised for size" msgstr "" -#: gnu/packages/shells.scm:91 +#: gnu/packages/shells.scm:81 msgid "" "dash is a POSIX-compliant @command{/bin/sh} implementation that aims to be\n" "as small as possible, often without sacrificing speed. It is faster than the\n" @@ -13285,45 +15641,37 @@ msgid "" "direct descendant of NetBSD's Almquist Shell (@command{ash})." msgstr "" -#: gnu/packages/shells.scm:141 +#: gnu/packages/shells.scm:136 msgid "The friendly interactive shell" msgstr "" -#: gnu/packages/shells.scm:143 +#: gnu/packages/shells.scm:138 msgid "" "Fish (friendly interactive shell) is a shell focused on interactive use,\n" "discoverability, and friendliness. Fish has very user-friendly and powerful\n" "tab-completion, including descriptions of every completion, completion of\n" "strings with wildcards, and many completions for specific commands. It also\n" -"has extensive and discoverable help. A special help command gives access to\n" -"all the fish documentation in your web browser. Other features include smart\n" -"terminal handling based on terminfo, an easy to search history, and syntax\n" -"highlighting." +"has extensive and discoverable help. A special @command{help} command gives\n" +"access to all the fish documentation in your web browser. Other features\n" +"include smart terminal handling based on terminfo, an easy to search history,\n" +"and syntax highlighting." msgstr "" -#: gnu/packages/shells.scm:175 -msgid "Fish completions for Guix" -msgstr "" - -#: gnu/packages/shells.scm:177 -msgid "Fish-guix provides completions for Guix for users of the fish shell." -msgstr "" - -#: gnu/packages/shells.scm:218 +#: gnu/packages/shells.scm:187 msgid "Alternative implementation of the rc shell by Byron Rakitzis" msgstr "" -#: gnu/packages/shells.scm:220 +#: gnu/packages/shells.scm:189 msgid "" "This is a reimplementation by Byron Rakitzis of the Plan 9 shell. It\n" "has a small feature set similar to a traditional Bourne shell." msgstr "" -#: gnu/packages/shells.scm:251 +#: gnu/packages/shells.scm:220 msgid "Extensible shell with higher-order functions" msgstr "" -#: gnu/packages/shells.scm:253 +#: gnu/packages/shells.scm:222 msgid "" "Es is an extensible shell. The language was derived from the Plan 9\n" "shell, rc, and was influenced by functional programming languages, such as\n" @@ -13332,11 +15680,11 @@ msgid "" "written by Paul Haahr and Byron Rakitzis." msgstr "" -#: gnu/packages/shells.scm:313 +#: gnu/packages/shells.scm:282 msgid "Unix shell based on csh" msgstr "" -#: gnu/packages/shells.scm:315 +#: gnu/packages/shells.scm:284 msgid "" "Tcsh is an enhanced, but completely compatible version of the Berkeley\n" "UNIX C shell (csh). It is a command language interpreter usable both as an\n" @@ -13345,11 +15693,11 @@ msgid "" "history mechanism, job control and a C-like syntax." msgstr "" -#: gnu/packages/shells.scm:364 +#: gnu/packages/shells.scm:343 msgid "Powerful shell for interactive use and scripting" msgstr "Funktionsrig skal for interaktiv brug og skriptopbygning" -#: gnu/packages/shells.scm:365 +#: gnu/packages/shells.scm:344 msgid "" "The Z shell (zsh) is a Unix shell that can be used\n" "as an interactive login shell and as a powerful command interpreter\n" @@ -13358,11 +15706,11 @@ msgid "" "ksh, and tcsh." msgstr "" -#: gnu/packages/shells.scm:404 +#: gnu/packages/shells.scm:383 msgid "Python-ish shell" msgstr "" -#: gnu/packages/shells.scm:406 +#: gnu/packages/shells.scm:385 msgid "" "Xonsh is a Python-ish, BASHwards-looking shell language and command\n" "prompt. The language is a superset of Python 3.4+ with additional shell\n" @@ -13371,11 +15719,11 @@ msgid "" "use of experts and novices alike." msgstr "" -#: gnu/packages/shells.scm:453 +#: gnu/packages/shells.scm:432 msgid "Unix shell embedded in Scheme" msgstr "" -#: gnu/packages/shells.scm:455 +#: gnu/packages/shells.scm:434 msgid "" "Scsh is a Unix shell embedded in Scheme. Scsh has two main\n" "components: a process notation for running programs and setting up pipelines\n" @@ -13383,11 +15731,90 @@ msgid "" "operating system." msgstr "" -#: gnu/packages/telephony.scm:66 +#: gnu/packages/shells.scm:473 +msgid "Minimal zero-config readline replacement" +msgstr "" + +#: gnu/packages/shells.scm:475 +msgid "" +"Linenoise is a minimal, zero-config, readline replacement.\n" +"Its features include:\n" +"\n" +"@enumerate\n" +"@item Single and multi line editing mode with the usual key bindings\n" +"@item History handling\n" +"@item Completion\n" +"@item Hints (suggestions at the right of the prompt as you type)\n" +"@item A subset of VT100 escapes, ANSI.SYS compatible\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/shells.scm:537 +msgid "Extremely minimal shell with the simplest syntax possible" +msgstr "" + +#: gnu/packages/shells.scm:539 +msgid "" +"S is a new shell that aims to be extremely simple.\n" +"S does not implemnt the POSIX shell standard.\n" +"There are no globs or \"splatting\" where a variable $FOO turns into multiple\n" +"command line arguments. One token stays one token forever.\n" +"This is a \"no surprises\" straightforward approach.\n" +"\n" +"There are no redirection operators > in the shell language, they are added as\n" +"extra programs. > is just another unix command, < is essentially cat(1).\n" +"A @code{andglob} program is also provided along with s." +msgstr "" + +#: gnu/packages/shells.scm:567 +msgid "Port of OpenBSD Korn Shell" +msgstr "" + +#: gnu/packages/shells.scm:569 +msgid "" +"Oksh is a port of the OpenBSD Korn Shell.\n" +"The OpenBSD Korn Shell is a cleaned up and enhanced ksh." +msgstr "" + +#: gnu/packages/shells.scm:601 +msgid "Korn Shell from OpenBSD" +msgstr "" + +#: gnu/packages/shells.scm:603 +msgid "" +"loksh is a Linux port of OpenBSD's @command{ksh}. It is a small,\n" +"interactive POSIX shell targeted at resource-constrained systems." +msgstr "" + +#: gnu/packages/shells.scm:641 +msgid "Korn Shell from MirBSD" +msgstr "" + +#: gnu/packages/shells.scm:642 +msgid "" +"mksh is an actively developed free implementation of the\n" +"Korn Shell programming language and a successor to the Public Domain Korn\n" +"Shell (pdksh)." +msgstr "" + +#: gnu/packages/shells.scm:684 +msgid "Bash-compatible Unix shell" +msgstr "Bash-kompatibel Unixskal" + +#: gnu/packages/shells.scm:685 +msgid "" +"Oil is a Unix / POSIX shell, compatible with Bash. It\n" +"implements the Oil language, which is a new shell language to which Bash can be\n" +"automatically translated. The Oil language is a superset of Bash. It also\n" +"implements the OSH language, a statically-parseable language based on Bash as it\n" +"is commonly written." +msgstr "" + +#: gnu/packages/telephony.scm:69 msgid "(u)Common C++ framework for threaded applications" msgstr "(u)Common C++-ramme for trådede programmer" -#: gnu/packages/telephony.scm:67 +#: gnu/packages/telephony.scm:70 msgid "" "GNU Common C++ is an portable, optimized class framework for\n" "threaded applications, supporting concurrent synchronization, inter-process\n" @@ -13396,11 +15823,11 @@ msgid "" "reimplementation." msgstr "" -#: gnu/packages/telephony.scm:87 +#: gnu/packages/telephony.scm:90 msgid "Common C++ framework for threaded applications" msgstr "" -#: gnu/packages/telephony.scm:88 +#: gnu/packages/telephony.scm:91 msgid "" "GNU uCommon C++ is meant as a very light-weight C++ library\n" "to facilitate using C++ design patterns even for very deeply embedded\n" @@ -13408,11 +15835,11 @@ msgid "" "support." msgstr "" -#: gnu/packages/telephony.scm:110 +#: gnu/packages/telephony.scm:113 msgid "Implementation of RTP (real-time transport protocol)" msgstr "" -#: gnu/packages/telephony.scm:111 +#: gnu/packages/telephony.scm:114 msgid "" "GNU ccRTP is an implementation of RTP, the real-time transport\n" "protocol from the IETF. It is suitable both for high capacity servers and\n" @@ -13421,22 +15848,22 @@ msgid "" "packet-manipulation library." msgstr "" -#: gnu/packages/telephony.scm:131 +#: gnu/packages/telephony.scm:136 msgid "Library implementing SIP (RFC-3261)" msgstr "" -#: gnu/packages/telephony.scm:132 +#: gnu/packages/telephony.scm:137 msgid "" "GNU oSIP is an implementation of the SIP protocol. It is\n" "used to provide multimedia and telecom software developers with an interface\n" "to initiate and control SIP sessions." msgstr "" -#: gnu/packages/telephony.scm:151 +#: gnu/packages/telephony.scm:156 msgid "Sip abstraction library" msgstr "" -#: gnu/packages/telephony.scm:152 +#: gnu/packages/telephony.scm:157 msgid "" "EXosip is a library that hides the complexity of using the\n" "SIP protocol for multimedia session establishment. This protocol is mainly to\n" @@ -13445,11 +15872,11 @@ msgid "" "multiplayer games." msgstr "" -#: gnu/packages/telephony.scm:195 +#: gnu/packages/telephony.scm:200 msgid "Secure peer-to-peer VoIP server for the SIP protocol" msgstr "" -#: gnu/packages/telephony.scm:196 +#: gnu/packages/telephony.scm:201 msgid "" "GNU SIP Witch is a peer-to-peer Voice-over-IP server that\n" "uses the SIP protocol. Calls can be made from behind NAT firewalls and\n" @@ -13459,32 +15886,56 @@ msgid "" "internet." msgstr "" -#: gnu/packages/telephony.scm:241 +#: gnu/packages/telephony.scm:246 msgid "Secure RTP (SRTP) Reference Implementation" msgstr "" -#: gnu/packages/telephony.scm:242 +#: gnu/packages/telephony.scm:248 msgid "" -"This package provides an implementation of the Secure\n" -"Real-time Transport Protocol (SRTP), the Universal Security Transform (UST),\n" -"and a supporting cryptographic kernel." +"This package provides an implementation of the Secure Real-time Transport\n" +"Protocol (@dfn{SRTP}), the Universal Security Transform (@dfn{UST}), and a\n" +"supporting cryptographic kernel." msgstr "" -#: gnu/packages/telephony.scm:277 +#: gnu/packages/telephony.scm:272 +msgid "Utilities library for linphone software" +msgstr "Redskabsbibliotek for programmet linphone" + +#: gnu/packages/telephony.scm:273 +msgid "" +"BCtoolbox is a utilities library used by Belledonne\n" +"Communications softwares like linphone." +msgstr "" +"BCtoolbox er et redskabsbibliotek brugt af Belledonne\n" +"Communications-programmer såsom linphone." + +#: gnu/packages/telephony.scm:295 +msgid "Implementation of the Real-time transport protocol" +msgstr "Implementering af realtids transportprotokollen" + +#: gnu/packages/telephony.scm:296 +msgid "" +"oRTP is a library implementing the Real-time transport\n" +"protocol (RFC 3550)." +msgstr "" +"ORTP er et bibliotek, der implementerer realtids\n" +"transportprotokollen (RFC 3550)." + +#: gnu/packages/telephony.scm:329 msgid "Inter-Asterisk-Protocol library" msgstr "" -#: gnu/packages/telephony.scm:278 +#: gnu/packages/telephony.scm:330 msgid "" "LibIAX2 implements the Inter-Asterisk-Protocol for relaying\n" "Voice-over-IP (VoIP) communications." msgstr "" -#: gnu/packages/telephony.scm:309 +#: gnu/packages/telephony.scm:361 msgid "Simple VoIP program to create conferences from the terminal" msgstr "" -#: gnu/packages/telephony.scm:311 +#: gnu/packages/telephony.scm:363 msgid "" "Seren is a simple VoIP program based on the Opus codec that allows you\n" "to create a voice conference from the terminal, with up to 10 participants,\n" @@ -13493,11 +15944,11 @@ msgid "" "address of one of the participants." msgstr "" -#: gnu/packages/telephony.scm:423 +#: gnu/packages/telephony.scm:475 msgid "Low-latency, high quality voice chat software" msgstr "" -#: gnu/packages/telephony.scm:425 +#: gnu/packages/telephony.scm:477 msgid "" "Mumble is an low-latency, high quality voice chat\n" "software primarily intended for use while gaming.\n" @@ -13505,11 +15956,12 @@ msgid "" "@code{mumble} for the client, and @code{murmur} for the server." msgstr "" -#: gnu/packages/tex.scm:171 gnu/packages/tex.scm:243 gnu/packages/tex.scm:305 +#: gnu/packages/tex.scm:200 gnu/packages/tex.scm:3967 +#: gnu/packages/tex.scm:4029 msgid "TeX Live, a package of the TeX typesetting system" msgstr "" -#: gnu/packages/tex.scm:173 +#: gnu/packages/tex.scm:202 msgid "" "TeX Live provides a comprehensive TeX document production system.\n" "It includes all the major TeX-related programs, macro packages, and fonts\n" @@ -13519,7 +15971,1377 @@ msgid "" "This package contains the binaries." msgstr "" -#: gnu/packages/tex.scm:245 +#: gnu/packages/tex.scm:270 +msgid "DVI to PostScript drivers" +msgstr "DVI- til PostScript-drivere" + +#: gnu/packages/tex.scm:271 +msgid "" +"This package provides files needed for converting DVI files\n" +"to PostScript." +msgstr "" +"Denne pakke tilbyder filer krævet for at konvertere DVI-filer\n" +"til PostScript." + +#: gnu/packages/tex.scm:305 +msgid "Unicode data and loaders for TeX" +msgstr "" + +#: gnu/packages/tex.scm:306 +msgid "" +"This bundle provides generic access to Unicode Consortium\n" +"data for TeX use. It contains a set of text files provided by the Unicode\n" +"Consortium which are currently all from Unicode 8.0.0, with the exception of\n" +"@code{MathClass.txt} which is not currently part of the Unicode Character\n" +"Database. Accompanying these source data are generic TeX loader files\n" +"allowing this data to be used as part of TeX runs, in particular in building\n" +"format files. Currently there are two loader files: one for general character\n" +"set up and one for initializing XeTeX character classes as has been carried\n" +"out to date by @code{unicode-letters.tex}. " +msgstr "" + +#: gnu/packages/tex.scm:344 +msgid "Hyphenation patterns for German" +msgstr "Orddelingsmønstre for tysk" + +#: gnu/packages/tex.scm:345 +msgid "" +"The package provides experimental hyphenation patterns for\n" +"the German language, covering both traditional and reformed orthography. The\n" +"patterns can be used with packages Babel and hyphsubst from the Oberdiek\n" +"bundle." +msgstr "" + +#: gnu/packages/tex.scm:380 +msgid "Files for creating TeX formats" +msgstr "Filer til at oprette TeX-formater" + +#: gnu/packages/tex.scm:381 +msgid "" +"This bundle provides a collection of model \".ini\" files\n" +"for creating TeX formats. These files are commonly used to introduced\n" +"distribution-dependent variations in formats. They are also used to\n" +"allow existing format source files to be used with newer engines, for example\n" +"to adapt the plain e-TeX source file to work with XeTeX and LuaTeX." +msgstr "" + +#: gnu/packages/tex.scm:415 +msgid "Hyphenation patterns expressed in UTF-8" +msgstr "Orddelingsmønstre udtrykt i UTF-8" + +#: gnu/packages/tex.scm:416 +msgid "" +"Modern native UTF-8 engines such as XeTeX and LuaTeX need\n" +"hyphenation patterns in UTF-8 format, whereas older systems require\n" +"hyphenation patterns in the 8-bit encoding of the font in use (such encodings\n" +"are codified in the LaTeX scheme with names like OT1, T2A, TS1, OML, LY1,\n" +"etc). The present package offers a collection of conversions of existing\n" +"patterns to UTF-8 format, together with converters for use with 8-bit fonts in\n" +"older systems. Since hyphenation patterns for Knuthian-style TeX systems are\n" +"only read at iniTeX time, it is hoped that the UTF-8 patterns, with their\n" +"converters, will completely supplant the older patterns." +msgstr "" + +#: gnu/packages/tex.scm:492 +msgid "Metafont base files" +msgstr "" + +#: gnu/packages/tex.scm:493 +msgid "" +"This package provides the Metafont base files needed to\n" +"build fonts using the Metafont system." +msgstr "" + +#: gnu/packages/tex.scm:524 +msgid "Scheme for naming fonts in TeX" +msgstr "" + +#: gnu/packages/tex.scm:525 +msgid "" +"This is Fontname, a naming scheme for (the base part of)\n" +"external TeX font filenames. This makes at most eight-character names\n" +"from (almost) arbitrarily complex font names, thus helping portability of TeX\n" +"documents." +msgstr "" + +#: gnu/packages/tex.scm:593 +msgid "Computer Modern fonts for TeX" +msgstr "" + +#: gnu/packages/tex.scm:594 +msgid "" +"This package provides the Computer Modern fonts by Donald\n" +"Knuth. The Computer Modern font family is a large collection of text,\n" +"display, and mathematical fonts in a range of styles, based on Monotype Modern\n" +"8A." +msgstr "" + +#: gnu/packages/tex.scm:658 +msgid "Small library of METAFONT sources" +msgstr "" + +#: gnu/packages/tex.scm:659 +msgid "" +"This is a collection of core TeX and METAFONT macro files\n" +"from Donald Knuth, including the plain format, plain base, and the MF logo\n" +"fonts." +msgstr "" + +#: gnu/packages/tex.scm:732 +msgid "Collection of fonts used in LaTeX distributions" +msgstr "" + +#: gnu/packages/tex.scm:733 +msgid "" +"This is a collection of fonts for use with standard LaTeX\n" +"packages and classes. It includes invisible fonts (for use with the slides\n" +"class), line and circle fonts (for use in the picture environment) and LaTeX\n" +"symbol fonts." +msgstr "" + +#: gnu/packages/tex.scm:813 gnu/packages/tex.scm:844 +msgid "TeX fonts from the American Mathematical Society" +msgstr "" + +#: gnu/packages/tex.scm:815 +msgid "" +"This package provides an extended set of fonts for use in mathematics,\n" +"including: extra mathematical symbols; blackboard bold letters (uppercase\n" +"only); fraktur letters; subscript sizes of bold math italic and bold Greek\n" +"letters; subscript sizes of large symbols such as sum and product; added sizes\n" +"of the Computer Modern small caps font; cyrillic fonts (from the University of\n" +"Washington); Euler mathematical fonts. All fonts are provided as Adobe Type 1\n" +"files, and all except the Euler fonts are provided as Metafont source. The\n" +"distribution also includes the canonical Type 1 versions of the Computer\n" +"Modern family of fonts. The Euler fonts are supported by separate packages;\n" +"details can be found in the documentation." +msgstr "" + +#: gnu/packages/tex.scm:846 +msgid "" +"This package provides basic LaTeX support for the symbol fonts provides\n" +"by the amsfonts package. It provides @code{amsfonts.sty}, with names of\n" +"individual symbols defined in @code{amssymb.sty}." +msgstr "" + +#: gnu/packages/tex.scm:880 +msgid "Plain TeX format and supporting files" +msgstr "" + +#: gnu/packages/tex.scm:882 +msgid "" +"Contains files used to build the Plain TeX format, as described in the\n" +"TeXbook, together with various supporting files (some also discussed in the\n" +"book)." +msgstr "" + +#: gnu/packages/tex.scm:1032 +msgid "Base sources of LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1034 +msgid "" +"This bundle comprises the source of LaTeX itself, together with several\n" +"packages which are considered \"part of the kernel\". This bundle, together\n" +"with the required packages, constitutes what every LaTeX distribution should\n" +"contain." +msgstr "" + +#: gnu/packages/tex.scm:1054 +msgid "Extended filecontents and filecontents* environments" +msgstr "" + +#: gnu/packages/tex.scm:1056 +msgid "" +"LaTeX2e's @code{filecontents} and @code{filecontents*} environments\n" +"enable a LaTeX source file to generate external files as it runs through\n" +"LaTeX. However, there are two limitations of these environments: they refuse\n" +"to overwrite existing files, and they can only be used in the preamble of a\n" +"document. The filecontents package removes these limitations, letting you\n" +"overwrite existing files and letting you use @code{filecontents} /\n" +"@code{filecontents*} anywhere." +msgstr "" + +#: gnu/packages/tex.scm:1083 +msgid "Am I running under XeTeX?" +msgstr "" + +#: gnu/packages/tex.scm:1085 +msgid "" +"This is a simple package which provides an @code{\\ifxetex} conditional,\n" +"so that other code can determine that it is running under XeTeX. The package\n" +"requires the e-TeX extensions to the TeX primitive set." +msgstr "" + +#: gnu/packages/tex.scm:1117 +msgid "Simple macros for EPS inclusion" +msgstr "" + +#: gnu/packages/tex.scm:1119 +msgid "" +"This package provides the original (and now obsolescent) graphics\n" +"inclusion macros for use with dvips, still widely used by Plain TeX users (in\n" +"particular). For LaTeX users, the package is nowadays (rather strongly)\n" +"deprecated in favour of the more sophisticated standard LaTeX latex-graphics\n" +"bundle of packages. (The latex-graphics bundle is also available to Plain TeX\n" +"users, via its Plain TeX version.)" +msgstr "" + +#: gnu/packages/tex.scm:1145 +msgid "Sophisticated verbatim text" +msgstr "" + +#: gnu/packages/tex.scm:1147 +msgid "" +"This package provides tools for the flexible handling of verbatim text\n" +"including: verbatim commands in footnotes; a variety of verbatim environments\n" +"with many parameters; ability to define new customized verbatim environments;\n" +"save and restore verbatim text and environments; write and read files in\n" +"verbatim mode; build \"example\" environments (showing both result and\n" +"verbatim source)." +msgstr "" + +#: gnu/packages/tex.scm:1216 +msgid "LaTeX standard graphics bundle" +msgstr "" + +#: gnu/packages/tex.scm:1218 +msgid "" +"This is a collection of LaTeX packages for producing color, including\n" +"graphics (e.g. PostScript) files, and rotation and scaling of text in LaTeX\n" +"documents. It comprises the packages color, graphics, graphicx, trig, epsfig,\n" +"keyval, and lscape." +msgstr "" + +#: gnu/packages/tex.scm:1240 +msgid "Driver-independent color extensions for LaTeX and pdfLaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1242 +msgid "" +"The package starts from the basic facilities of the colorcolor package,\n" +"and provides easy driver-independent access to several kinds of color tints,\n" +"shades, tones, and mixes of arbitrary colors. It allows a user to select a\n" +"document-wide target color model and offers complete tools for conversion\n" +"between eight color models. Additionally, there is a command for alternating\n" +"row colors plus repeated non-aligned material (like horizontal lines) in\n" +"tables." +msgstr "" + +#: gnu/packages/tex.scm:1268 +msgid "Extensive support for hypertext in LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1270 +msgid "" +"The @code{hyperref} package is used to handle cross-referencing commands\n" +"in LaTeX to produce hypertext links in the document. The package provides\n" +"backends for the @code{\\special} set defined for HyperTeX DVI processors; for\n" +"embedded @code{pdfmark} commands for processing by Acrobat\n" +"Distiller (@code{dvips} and Y&Y's @code{dvipsone}); for Y&Y's @code{dviwindo};\n" +"for PDF control within pdfTeX and @code{dvipdfm}; for TeX4ht; and for VTeX's\n" +"pdf and HTML backends. The package is distributed with the @code{backref} and\n" +"@code{nameref} packages, which make use of the facilities of @code{hyperref}." +msgstr "" + +#: gnu/packages/tex.scm:1304 +msgid "Bundle of packages submitted by Heiko Oberdiek" +msgstr "" + +#: gnu/packages/tex.scm:1306 +msgid "" +"The bundle comprises various LaTeX packages, providing among others:\n" +"better accessibility support for PDF files; extensible chemists reaction\n" +"arrows; record information about document class(es) used; and many more." +msgstr "" + +#: gnu/packages/tex.scm:1327 +msgid "LaTeX standard tools bundle" +msgstr "" + +#: gnu/packages/tex.scm:1329 +msgid "" +"This package is a collection of (variously) simple tools provided as\n" +"part of the LaTeX required tools distribution, comprising the following\n" +"packages: afterpage, array, bm, calc, dcolumn, delarray, enumerate, fileerr,\n" +"fontsmpl, ftnright, hhline, indentfirst, layout, longtable, multicol,\n" +"rawfonts, showkeys, somedefs, tabularx, theorem, trace, varioref, verbatim,\n" +"xr, and xspace." +msgstr "" + +#: gnu/packages/tex.scm:1364 +msgid "Verbatim with URL-sensitive line breaks" +msgstr "" + +#: gnu/packages/tex.scm:1365 +msgid "" +"The command @code{\\url} is a form of verbatim command that\n" +"allows linebreaks at certain characters or combinations of characters, accepts\n" +"reconfiguration, and can usually be used in the argument to another command.\n" +"The command is intended for email addresses, hypertext links,\n" +"directories/paths, etc., which normally have no spaces, so by default the\n" +"package ignores spaces in its argument. However, a package option allows\n" +"spaces, which is useful for operating systems where spaces are a common part\n" +"of file names." +msgstr "" + +#: gnu/packages/tex.scm:1392 +msgid "LaTeX3 programmers’ interface" +msgstr "" + +#: gnu/packages/tex.scm:1394 +msgid "" +"The l3kernel bundle provides an implementation of the LaTeX3\n" +"programmers’ interface, as a set of packages that run under LaTeX 2e. The\n" +"interface provides the foundation on which the LaTeX3 kernel and other future\n" +"code are built: it is an API for TeX programmers. The packages are set up so\n" +"that the LaTeX3 conventions can be used with regular LaTeX 2e packages." +msgstr "" + +#: gnu/packages/tex.scm:1432 +msgid "High-level LaTeX3 concepts" +msgstr "" + +#: gnu/packages/tex.scm:1434 +msgid "" +"This bundle holds prototype implementations of concepts for a LaTeX\n" +"designer interface, to be used with the experimental LaTeX kernel as\n" +"programming tools and kernel sup­port. Packages provided in this release are:\n" +"\n" +"@enumerate\n" +"@item l3keys2e, which makes the facilities of the kernel module l3keys\n" +" available for use by LaTeX 2e packages;\n" +"@item xfrac, which provides flexible splitlevel fractions;\n" +"@item xparse, which provides a high-level interface for declaring document\n" +" commands; and\n" +"@item xtemplate, which provides a means of defining generic functions using a\n" +" key-value syntax.\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/tex.scm:1467 +msgid "Advanced font selection in XeLaTeX and LuaLaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1469 +msgid "" +"Fontspec is a package for XeLaTeX and LuaLaTeX. It provides an\n" +"automatic and unified interface to feature-rich AAT and OpenType fonts through\n" +"the NFSS in LaTeX running on XeTeX or LuaTeX engines. The package requires\n" +"the l3kernel and xparse bundles from the LaTeX 3 development team." +msgstr "" + +#: gnu/packages/tex.scm:1505 +msgid "Lua modules for general programming (in the (La)TeX world)" +msgstr "" + +#: gnu/packages/tex.scm:1507 +msgid "" +"Lualibs is a collection of Lua modules useful for general programming.\n" +"The bundle is based on Lua modules shipped with ConTeXt, and made available in\n" +"this bundle for use independent of ConTeXt." +msgstr "" + +#: gnu/packages/tex.scm:1527 +msgid "AMS mathematical facilities for LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1529 +msgid "" +"This is the principal package in the AMS-LaTeX distribution. It adapts\n" +"for use in LaTeX most of the mathematical features found in AMS-TeX; it is\n" +"highly recommended as an adjunct to serious mathematical typesetting in LaTeX.\n" +"When amsmath is loaded, AMS-LaTeX packages @code{amsbsyamsbsy} (for bold\n" +"symbols), @code{amsopnamsopn} (for operator names) and\n" +"@code{amstextamstext} (for text embedded in mathematics) are also loaded.\n" +"This package is part of the LaTeX required distribution; however, several\n" +"contributed packages add still further to its appeal; examples are\n" +"@code{empheqempheq}, which provides functions for decorating and highlighting\n" +"mathematics, and @code{ntheoremntheorem}, for specifying theorem (and similar)\n" +"definitions." +msgstr "" + +#: gnu/packages/tex.scm:1557 +msgid "AMS document classes for LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1559 +msgid "" +"This bundle contains three AMS classes: @code{amsartamsart} (for writing\n" +"articles for the AMS), @code{amsbookamsbook} (for books) and\n" +"@code{amsprocamsproc} (for proceedings), together with some supporting\n" +"material. The material is made available as part of the AMS-LaTeX\n" +"distribution." +msgstr "" + +#: gnu/packages/tex.scm:1590 +msgid "Multilingual support for Plain TeX or LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1592 +msgid "" +"The package manages culturally-determined typographical (and other)\n" +"rules, and hyphenation patterns for a wide range of languages. A document may\n" +"select a single language to be supported, or it may select several, in which\n" +"case the document may switch from one language to another in a variety of\n" +"ways. Babel uses contributed configuration files that provide the detail of\n" +"what has to be done for each language. Users of XeTeX are advised to use the\n" +"polyglossia package rather than Babel." +msgstr "" + +#: gnu/packages/tex.scm:1615 +msgid "Babel support for English" +msgstr "" + +#: gnu/packages/tex.scm:1617 +msgid "" +"This package provides the language definition file for support of\n" +"English in @code{babel}. Care is taken to select British hyphenation patterns\n" +"for British English and Australian text, and default (\"american\") patterns\n" +"for Canadian and USA text." +msgstr "" + +#: gnu/packages/tex.scm:1638 +msgid "Support for Cyrillic fonts in LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1640 +msgid "" +"This bundle of macros files provides macro support (including font\n" +"encoding macros) for the use of Cyrillic characters in fonts encoded under the\n" +"T2* and X2 encodings. These encodings cover (between them) pretty much every\n" +"language that is written in a Cyrillic alphabet." +msgstr "" + +#: gnu/packages/tex.scm:1660 +msgid "Font support for common PostScript fonts" +msgstr "" + +#: gnu/packages/tex.scm:1662 +msgid "" +"The PSNFSS collection includes a set of files that provide a complete\n" +"working setup of the LaTeX font selection scheme (NFSS2) for use with common\n" +"PostScript fonts. It covers the so-called \"Base\" fonts (which are built\n" +"into any Level 2 PostScript printing device and the Ghostscript interpreter)\n" +"and a number of free fonts. It provides font definition files, macros and\n" +"font metrics. The bundle as a whole is part of the LaTeX required set of\n" +"packages." +msgstr "" + +#: gnu/packages/tex.scm:1747 +msgid "Union of TeX Live packages" +msgstr "" + +#: gnu/packages/tex.scm:1748 +msgid "" +"This package provides a subset of the TeX Live\n" +"distribution." +msgstr "" +"Denne pakke tilbyder et undersæt af TeX Live-\n" +"distributionen." + +#: gnu/packages/tex.scm:1763 +msgid "" +"This is a very limited subset of the TeX Live distribution.\n" +"It includes little more than the required set of LaTeX packages." +msgstr "" + +#: gnu/packages/tex.scm:1780 +msgid "LaTeX-based replacement for BibTeX" +msgstr "LaTeX-baseret erstatning for BibTeX" + +#: gnu/packages/tex.scm:1782 +msgid "" +"Amsrefs is a LaTeX package for bibliographies that provides an archival\n" +"data format similar to the format of BibTeX database files, but adapted to\n" +"make direct processing by LaTeX easier. The package can be used either in\n" +"conjunction with BibTeX or as a replacement for BibTeX." +msgstr "" + +#: gnu/packages/tex.scm:1809 +msgid "Footnotes for critical editions" +msgstr "" + +#: gnu/packages/tex.scm:1811 +msgid "" +"This package aims to provide a one-stop solution to requirements for\n" +"footnotes. It offers: Multiple footnote apparatus superior to that of\n" +"@code{manyfoot}. Footnotes can be formatted in separate paragraphs, or be run\n" +"into a single paragraph (this choice may be selected per footnote series);\n" +"Things you might have expected (such as @code{\\verb}-like material in\n" +"footnotes, and color selections over page breaks) now work. Note that the\n" +"majority of the bigfoot package's interface is identical to that of\n" +"@code{manyfoot}; users should seek information from that package's\n" +"documentation. The bigfoot bundle also provides the @code{perpage} and\n" +"@code{suffix} packages." +msgstr "" + +#: gnu/packages/tex.scm:1837 +msgid "Producing 'blind' text for testing" +msgstr "" + +#: gnu/packages/tex.scm:1839 +msgid "" +"The package provides the commands @code{\\blindtext} and\n" +"@code{\\Blindtext} for creating \"blind\" text useful in testing new classes\n" +"and packages, and @code{\\blinddocument}, @code{\\Blinddocument} for creating\n" +"an entire random document with sections, lists, mathematics, etc. The package\n" +"supports three languages, @code{english}, @code{(n)german} and @code{latin};\n" +"the @code{latin} option provides a short \"lorem ipsum\" (for a fuller \"lorem\n" +"ipsum\" text, see the @code{lipsum} package)." +msgstr "" + +#: gnu/packages/tex.scm:1869 +msgid "German letter DIN style" +msgstr "" + +#: gnu/packages/tex.scm:1871 +msgid "" +"This package implements a document layout for writing letters according\n" +"to the rules of DIN (Deutsches Institut für Normung, German standardisation\n" +"institute). A style file for LaTeX 2.09 (with limited support of the\n" +"features) is part of the package. Since the letter layout is based on a\n" +"German standard, the user guide is written in German, but most macros have\n" +"English names from which the user can recognize what they are used for. In\n" +"addition there are example files showing how letters may be created with the\n" +"package." +msgstr "" + +#: gnu/packages/tex.scm:1895 +msgid "Put a grey textual watermark on document pages" +msgstr "" + +#: gnu/packages/tex.scm:1897 +msgid "" +"This package provides a means to add a textual, light grey watermark on\n" +"every page or on the first page of a document. Typical usage may consist in\n" +"writing words such as DRAFT or CONFIDENTIAL across document pages. The\n" +"package performs a similar function to that of @code{draftcopy}, but its\n" +"implementation is output device independent, and made very simple by relying\n" +"on everypage." +msgstr "" + +#: gnu/packages/tex.scm:1919 +msgid "New interface for environments in LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:1921 +msgid "" +"This package provides the @code{\\collect@@body} command (as in\n" +"@code{amsmath}), as well as a @code{\\long} version @code{\\Collect@@Body},\n" +"for collecting the body text of an environment. These commands are used to\n" +"define a new author interface to creating new environments." +msgstr "" + +#: gnu/packages/tex.scm:1941 +msgid "Create equal-widthed parboxes" +msgstr "" + +#: gnu/packages/tex.scm:1943 +msgid "" +"LaTeX users sometimes need to ensure that two or more blocks of text\n" +"occupy the same amount of horizontal space on the page. To that end, the\n" +"@code{eqparbox} package defines a new command, @code{\\eqparbox}, which works\n" +"just like @code{\\parbox}, except that instead of specifying a width, one\n" +"specifies a tag. All @code{eqparbox}es with the same tag---regardless of\n" +"where they are in the document---will stretch to fit the widest\n" +"@code{eqparbox} with that tag. This simple, equal-width mechanism can be used\n" +"for a variety of alignment purposes, as is evidenced by the examples in\n" +"@code{eqparbox}'s documentation. Various derivatives of @code{\\eqparbox} are\n" +"also provided." +msgstr "" + +#: gnu/packages/tex.scm:1977 +msgid "Expanded description environments" +msgstr "Udvidede beskrivelsesmiljøer" + +#: gnu/packages/tex.scm:1979 +msgid "" +"The package provides additional features for the LaTeX\n" +"@code{description} environment, including adjustable left margin. The package\n" +"also allows the user to \"break\" a list (for example, to interpose a comment)\n" +"without affecting the structure of the list (this works for @code{itemize} and\n" +"@code{enumerate} lists, and numbered lists remain in sequence)." +msgstr "" + +#: gnu/packages/tex.scm:2013 +msgid "Provide file modification times, and compare them" +msgstr "" + +#: gnu/packages/tex.scm:2015 +msgid "" +"This package provides macros to read and compare the modification dates\n" +"of files. The files may be @code{.tex} files, images or other files (as long\n" +"as they can be found by LaTeX). It uses the @code{\\pdffilemoddate} primitive\n" +"of pdfLaTeX to find the file modification date as PDF date string, parses the\n" +"string and returns the value to the user. The package will also work for DVI\n" +"output with recent versions of the LaTeX compiler which uses pdfLaTeX in DVI\n" +"mode. The functionality is provided by purely expandable macros or by faster\n" +"but non-expandable ones." +msgstr "" + +#: gnu/packages/tex.scm:2039 +msgid "Conditionals to test which platform is being used" +msgstr "" + +#: gnu/packages/tex.scm:2041 +msgid "" +"This package uses the (La)TeX extension @code{-shell-escape} to\n" +"establish whether the document is being processed on a Windows or on a\n" +"Unix-like system, or on Cygwin (Unix environment over a Windows system).\n" +"Booleans provided are: @code{\\ifwindows}, @code{\\iflinux}, @code{\\ifmacosx}\n" +"and @code{\\ifcygwin}. The package also preserves the output of @code{uname}\n" +"on a Unix-like system, which may be used to distinguish between various\n" +"classes of systems." +msgstr "" + +#: gnu/packages/tex.scm:2064 +msgid "Flexible bibliography support" +msgstr "" + +#: gnu/packages/tex.scm:2066 +msgid "" +"This bundle provides a package that implements both author-year and\n" +"numbered references, as well as much detailed of support for other\n" +"bibliography use. Also provided are versions of the standard BibTeX styles\n" +"that are compatible with @code{natbib}: @code{plainnat}, @code{unsrtnat},\n" +"@code{abbrnat}. The bibliography styles produced by @code{custom-bib} are\n" +"designed from the start to be compatible with @code{natbib}." +msgstr "" + +#: gnu/packages/tex.scm:2088 +msgid "Replace strings in encapsulated PostScript figures" +msgstr "" + +#: gnu/packages/tex.scm:2090 +msgid "" +"This package allows LaTeX constructions (equations, picture\n" +"environments, etc.) to be precisely superimposed over Encapsulated PostScript\n" +"figures, using your own favorite drawing tool to create an EPS figure and\n" +"placing simple text \"tags\" where each replacement is to be placed, with\n" +"PSfrag automatically removing these tags from the figure and replacing them\n" +"with a user specified LaTeX construction, properly aligned, scaled, and/or\n" +"rotated." +msgstr "" + +#: gnu/packages/tex.scm:2126 +msgid "Process PostScript graphisc within pdfLaTeX documents" +msgstr "" + +#: gnu/packages/tex.scm:2128 +msgid "" +"This is a package for processing PostScript graphics with @code{psfrag}\n" +"labels within pdfLaTeX documents. Every graphic is compiled individually,\n" +"drastically speeding up compilation time when only a single figure needs\n" +"re-processing." +msgstr "" + +#: gnu/packages/tex.scm:2152 +msgid "Make overhead slides" +msgstr "" + +#: gnu/packages/tex.scm:2155 +msgid "" +"This package provides a class that produces overhead\n" +"slides (transparencies), with many facilities. Seminar is not nowadays\n" +"reckoned a good basis for a presentation — users are advised to use more\n" +"recent classes such as powerdot or beamer, both of which are tuned to\n" +"21st-century presentation styles." +msgstr "" + +#: gnu/packages/tex.scm:2188 +msgid "Trim spaces around an argument or within a macro" +msgstr "" + +#: gnu/packages/tex.scm:2190 +msgid "" +"This very short package allows you to expandably remove spaces around a\n" +"token list (commands are provided to remove spaces before, spaces after, or\n" +"both); or to remove surrounding spaces within a macro definition, or to define\n" +"space-stripped macros." +msgstr "" + +#: gnu/packages/tex.scm:2223 +msgid "Captions on more than floats" +msgstr "" + +#: gnu/packages/tex.scm:2225 +msgid "" +"This package defines a command @code{\\captionof} for putting a caption\n" +"to something that's not a float." +msgstr "" + +#: gnu/packages/tex.scm:2256 +msgid "e-TeX tools for LaTeX" +msgstr "e-TeX-værktøjer for LaTeX" + +#: gnu/packages/tex.scm:2258 +msgid "" +"This package is a toolbox of programming facilities geared primarily\n" +"towards LaTeX class and package authors. It provides LaTeX frontends to some\n" +"of the new primitives provided by e-TeX as well as some generic tools which\n" +"are not strictly related to e-TeX but match the profile of this package. The\n" +"package provides functions that seem to offer alternative ways of implementing\n" +"some LaTeX kernel commands; nevertheless, the package will not modify any part\n" +"of the LaTeX kernel." +msgstr "" + +#: gnu/packages/tex.scm:2294 +msgid "Seven predefined chapter heading styles" +msgstr "" + +#: gnu/packages/tex.scm:2296 +msgid "" +"This package provides seven predefined chapter heading styles. Each\n" +"style can be modified using a set of simple commands. Optionally one can\n" +"modify the formatting routines in order to create additional chapter\n" +"headings." +msgstr "" + +#: gnu/packages/tex.scm:2329 +msgid "Framed or shaded regions that can break across pages" +msgstr "" + +#: gnu/packages/tex.scm:2331 +msgid "" +"The package creates three environments: @code{framed}, which puts an\n" +"ordinary frame box around the region, @code{shaded}, which shades the region,\n" +"and @code{leftbar}, which places a line at the left side. The environments\n" +"allow a break at their start (the @code{\\FrameCommand} enables creation of a\n" +"title that is “attached” to the environment); breaks are also allowed in the\n" +"course of the framed/shaded matter. There is also a command\n" +"@code{\\MakeFramed} to make your own framed-style environments." +msgstr "" + +#: gnu/packages/tex.scm:2363 +msgid "Letter document class" +msgstr "" + +#: gnu/packages/tex.scm:2365 +msgid "" +"This package is designed for formatting formless letters in German; it\n" +"can also be used for English (by those who can read the documentation). There\n" +"are LaTeX 2.09 @code{documentstyle} and LaTeX 2e class files for both an\n" +"\"old\" and a \"new\" version of g-brief." +msgstr "" + +#: gnu/packages/tex.scm:2385 +msgid "Typeset Galois connections" +msgstr "" + +#: gnu/packages/tex.scm:2387 +msgid "" +"The package deals with connections in two-dimensional style, optionally\n" +"in colour." +msgstr "" + +#: gnu/packages/tex.scm:2405 +msgid "Citations in a reader-friendly style" +msgstr "" + +#: gnu/packages/tex.scm:2407 +msgid "" +"The package allows citations in the German style, which is considered by\n" +"many to be particularly reader-friendly. The citation provides a small amount\n" +"of bibliographic information in a footnote on the page where each citation is\n" +"made. It combines a desire to eliminate unnecessary page-turning with the\n" +"look-up efficiency afforded by numeric citations. The package makes use of\n" +"BibLaTeX, and is considered experimental." +msgstr "" + +#: gnu/packages/tex.scm:2429 +msgid "Flexible and complete interface to document dimensions" +msgstr "" + +#: gnu/packages/tex.scm:2431 +msgid "" +"This package provides an easy and flexible user interface to customize\n" +"page layout, implementing auto-centering and auto-balancing mechanisms so that\n" +"the users have only to give the least description for the page layout. The\n" +"package knows about all the standard paper sizes, so that the user need not\n" +"know what the nominal \"real\" dimensions of the paper are, just its standard\n" +"name (such as a4, letter, etc.). An important feature is the package's\n" +"ability to communicate the paper size it's set up to the output." +msgstr "" + +#: gnu/packages/tex.scm:2454 +msgid "Miscellaneous tools by Mark Wooding" +msgstr "" + +#: gnu/packages/tex.scm:2456 +msgid "" +"This collection of tools includes: @code{atsupport} for short commands\n" +"starting with @code{@@}, macros to sanitize the OT1 encoding of the\n" +"@code{cmtt} fonts; a @code{doafter} command; improved @code{footnote} support;\n" +"@code{mathenv} for various alignment in maths; list handling; @code{mdwmath}\n" +"which adds some minor changes to LaTeX maths; a rewrite of LaTeX's tabular and\n" +"array environments; verbatim handling; and syntax diagrams." +msgstr "" + +#: gnu/packages/tex.scm:2478 +msgid "Alternative to babel for XeLaTeX and LuaLaTeX" +msgstr "" + +#: gnu/packages/tex.scm:2480 +msgid "" +"This package provides a complete Babel replacement for users of LuaLaTeX\n" +"and XeLaTeX; it relies on the @code{fontspec} package, version 2.0 at least." +msgstr "" + +#: gnu/packages/tex.scm:2498 +msgid "Multi-page tables package" +msgstr "" + +#: gnu/packages/tex.scm:2500 +msgid "" +"This package was a predecessor of @code{longtable}; the newer\n" +"package (designed on quite different principles) is easier to use and more\n" +"flexible, in many cases, but supertabular retains its usefulness in a few\n" +"situations where longtable has problems." +msgstr "" + +#: gnu/packages/tex.scm:2533 +msgid "TeX macros to handle Texinfo files" +msgstr "" + +#: gnu/packages/tex.scm:2535 +msgid "" +"Texinfo is the preferred format for documentation in the GNU project;\n" +"the format may be used to produce online or printed output from a single\n" +"source. The Texinfo macros may be used to produce printable output using TeX;\n" +"other programs in the distribution offer online interactive use (with\n" +"hypertext linkages in some cases)." +msgstr "" + +#: gnu/packages/tex.scm:2556 +msgid "Show \"realistic\" quotes in verbatim" +msgstr "" + +#: gnu/packages/tex.scm:2558 +msgid "" +"Typewriter-style fonts are best for program listings, but Computer\n" +"Modern Typewriter prints @code{`} and @code{'} as bent opening and closing\n" +"single quotes. Other fonts, and most programming languages, print @code{`} as\n" +"a grave accent and @code{'} upright; @code{'} is used both to open and to\n" +"close quoted strings. The package switches the typewriter font to Computer\n" +"Modern Typewriter in OT1 encoding, and modifies the behaviour of\n" +"@code{verbatim}, @code{verbatim*}, @code{\\verb}, and @code{\\verb*} to print\n" +"in the expected way. It does this regardless of other fonts or encodings in\n" +"use, so long as the package is loaded after the other fonts were. The package\n" +"does not affect @code{\\tt}, @code{\\texttt}, etc." +msgstr "" + +#: gnu/packages/tex.scm:2597 +msgid "Simple package to set up document margins" +msgstr "" + +#: gnu/packages/tex.scm:2599 +msgid "" +"This is a simple package to set up document margins. This package is\n" +"considered obsolete; alternatives are the @code{typearea} package from the\n" +"@code{koma-script} bundle, or the @code{geometry} package." +msgstr "" + +#: gnu/packages/tex.scm:2618 +msgid "Extra control of appendices" +msgstr "" + +#: gnu/packages/tex.scm:2620 +msgid "" +"The appendix package provides various ways of formatting the titles of\n" +"appendices. Also (sub)appendices environments are provided that can be used,\n" +"for example, for per chapter/section appendices. An @code{appendices}\n" +"environment is provided which can be used instead of the @code{\\appendix}\n" +"command." +msgstr "" + +#: gnu/packages/tex.scm:2641 +msgid "Generate changebars in LaTeX documents" +msgstr "" + +#: gnu/packages/tex.scm:2643 +msgid "" +"Identify areas of text to be marked with changebars with the\n" +"@code{\\cbstart} and @code{\\cbend} commands; the bars may be coloured. The\n" +"package uses 'drivers' to place the bars; the available drivers can work with\n" +"@code{dvitoln03}, @code{dvitops}, @code{dvips}, the emTeX and TeXtures DVI\n" +"drivers, and VTeX and pdfTeX." +msgstr "" + +#: gnu/packages/tex.scm:2678 +msgid "CMap support for PDF files" +msgstr "" + +#: gnu/packages/tex.scm:2680 +msgid "" +"This package embeds CMap tables into PDF files to make search and\n" +"copy-and-paste functions work properly." +msgstr "" + +#: gnu/packages/tex.scm:2698 +msgid "Add colour to LaTeX tables" +msgstr "" + +#: gnu/packages/tex.scm:2700 +msgid "" +"This package allows rows, columns, and even individual cells in LaTeX\n" +"tables to be coloured." +msgstr "" + +#: gnu/packages/tex.scm:2731 +msgid "Variants of \\fbox and other games with boxes" +msgstr "" + +#: gnu/packages/tex.scm:2733 +msgid "" +"This package provides variants of @code{\\fbox}: @code{\\shadowbox},\n" +"@code{\\doublebox}, @code{\\ovalbox}, @code{\\Ovalbox}, with helpful tools for\n" +"using box macros and flexible verbatim macros. You can box mathematics,\n" +"floats, center, flushleft, and flushright, lists, and pages." +msgstr "" + +#: gnu/packages/tex.scm:2766 +msgid "Extensive control of page headers and footers in LaTeX2e" +msgstr "" + +#: gnu/packages/tex.scm:2768 +msgid "" +"The package provides extensive facilities, both for constructing headers\n" +"and footers, and for controlling their use (for example, at times when LaTeX\n" +"would automatically change the heading style in use)." +msgstr "" + +#: gnu/packages/tex.scm:2787 +msgid "Improved interface for floating objects" +msgstr "" + +#: gnu/packages/tex.scm:2789 +msgid "" +"This package improves the interface for defining floating objects such\n" +"as figures and tables. It introduces the boxed float, the ruled float and the\n" +"plaintop float. You can define your own floats and improve the behaviour of\n" +"the old ones. The package also provides the @code{H} float modifier option of\n" +"the obsolete @code{here} package. You can select this as automatic default\n" +"with @code{\\floatplacement{figure}{H}}." +msgstr "" + +#: gnu/packages/tex.scm:2811 +msgid "Range of footnote options" +msgstr "" + +#: gnu/packages/tex.scm:2813 +msgid "" +"This is a collection of ways to change the typesetting of footnotes.\n" +"The package provides means of changing the layout of the footnotes themselves,\n" +"a way to number footnotes per page, to make footnotes disappear in a\n" +"\"moving\" argument, and to deal with multiple references to footnotes from\n" +"the same place. The package also has a range of techniques for labelling\n" +"footnotes with symbols rather than numbers." +msgstr "" + +#: gnu/packages/tex.scm:2837 +msgid "Typeset source code listings using LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:2839 +msgid "" +"The package enables the user to typeset programs (programming code)\n" +"within LaTeX; the source code is read directly by TeX---no front-end processor\n" +"is needed. Keywords, comments and strings can be typeset using different\n" +"styles. Support for @code{hyperref} is provided." +msgstr "" + +#: gnu/packages/tex.scm:2872 +msgid "Miscellaneous packages by Joerg Knappen" +msgstr "" + +#: gnu/packages/tex.scm:2874 +msgid "" +"This package provides miscellaneous macros by Joerg Knappen, including:\n" +"represent counters in greek; Maxwell's non-commutative division;\n" +"@code{latin1jk}, @code{latin2jk} and @code{latin3jk}, which are\n" +"@code{inputenc} definition files that allow verbatim input in the respective\n" +"ISO Latin codes; blackboard bold fonts in maths; use of RSFS fonts in maths;\n" +"extra alignments for @code{\\parboxes}; swap Roman and Sans fonts;\n" +"transliterate semitic languages; patches to make (La)TeX formulae embeddable\n" +"in SGML; use maths minus in text as appropriate; simple Young tableaux." +msgstr "" + +#: gnu/packages/tex.scm:2948 +msgid "Computer modern fonts in T1 and TS1 encodings" +msgstr "" + +#: gnu/packages/tex.scm:2950 +msgid "" +"The EC fonts are European Computer Modern Fonts, supporting the complete\n" +"LaTeX T1 encoding defined at the 1990 TUG conference hold at Cork/Ireland.\n" +"These fonts are intended to be stable with no changes being made to the tfm\n" +"files. The set also contains a Text Companion Symbol font, called @code{tc},\n" +"featuring many useful characters needed in text typesetting, for example\n" +"oldstyle digits, currency symbols (including the newly created Euro symbol),\n" +"the permille sign, copyright, trade mark and servicemark as well as a copyleft\n" +"sign, and many others. Recent releases of LaTeX2e support the EC fonts. The\n" +"EC fonts supersede the preliminary version released as the DC fonts. The\n" +"fonts are available in (traced) Adobe Type 1 format, as part of the\n" +"@code{cm-super} bundle. The other Computer Modern-style T1-encoded Type 1\n" +"set, Latin Modern, is not actually a direct development of the EC set, and\n" +"differs from the EC in a number of particulars." +msgstr "" + +#: gnu/packages/tex.scm:3030 +msgid "Ralph Smith's Formal Script font" +msgstr "" + +#: gnu/packages/tex.scm:3032 +msgid "" +"The fonts provide uppercase formal script letters for use as symbols in\n" +"scientific and mathematical typesetting (in contrast to the informal script\n" +"fonts such as that used for the calligraphic symbols in the TeX maths symbol\n" +"font). The fonts are provided as Metafont source, and as derived Adobe Type 1\n" +"format. LaTeX support, for using these fonts in mathematics, is available via\n" +"one of the packages @code{calrsfs} and @code{mathrsfs}." +msgstr "" + +#: gnu/packages/tex.scm:3054 +msgid "Add picture commands (or backgrounds) to every page" +msgstr "" + +#: gnu/packages/tex.scm:3056 +msgid "" +"The package adds one or more user commands to LaTeX's @code{shipout}\n" +"routine, which may be used to place the output at fixed positions. The\n" +"@code{grid} option may be used to find the correct places." +msgstr "" + +#: gnu/packages/tex.scm:3088 +msgid "Extensions to epic and the LaTeX drawing tools" +msgstr "" + +#: gnu/packages/tex.scm:3090 +msgid "" +"Extensions to @code{epic} and the LaTeX picture drawing environment,\n" +"include the drawing of lines at any slope, the drawing of circles in any\n" +"radii, and the drawing of dotted and dashed lines much faster with much less\n" +"TeX memory, and providing several new commands for drawing ellipses, arcs,\n" +"splines, and filled circles and ellipses. The package uses @code{tpic}\n" +"@code{\\special} commands." +msgstr "" + +#: gnu/packages/tex.scm:3125 +msgid "Customize basic list environments" +msgstr "" + +#: gnu/packages/tex.scm:3127 +msgid "" +"This package is intended to ease customizing the three basic list\n" +"environments: @code{enumerate}, @code{itemize} and @code{description}. It\n" +"extends their syntax to allow an optional argument where a set of parameters\n" +"in the form @code{key=value} are available, for example:\n" +"@code{\\begin{itemize}[itemsep=1ex,leftmargin=1cm]}." +msgstr "" + +#: gnu/packages/tex.scm:3148 +msgid "Create tabular cells spanning multiple rows" +msgstr "" + +#: gnu/packages/tex.scm:3150 +msgid "" +"The package provides tools for creating tabular cells spanning multiple\n" +"rows. It has a lot of flexibility, including an option for specifying an\n" +"entry at the \"natural\" width of its text." +msgstr "" + +#: gnu/packages/tex.scm:3182 +msgid "Combine LaTeX commands over included graphics" +msgstr "" + +#: gnu/packages/tex.scm:3184 +msgid "" +"The @code{overpic} environment is a cross between the LaTeX\n" +"@code{picture} environment and the @code{\\includegraphics} command of\n" +"@code{graphicx}. The resulting picture environment has the same dimensions as\n" +"the included graphic. LaTeX commands can be placed on the graphic at defined\n" +"positions; a grid for orientation is available." +msgstr "" + +#: gnu/packages/tex.scm:3218 +msgid "Layout with zero \\parindent, non-zero \\parskip" +msgstr "" + +#: gnu/packages/tex.scm:3220 +msgid "" +"Simply changing @code{\\parskip} and @code{\\parindent} leaves a layout\n" +"that is untidy; this package (though it is no substitute for a properly\n" +"designed class) helps alleviate this untidiness." +msgstr "" + +#: gnu/packages/tex.scm:3239 +msgid "Include PDF documents in LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:3241 +msgid "" +"This package simplifies the inclusion of external multi-page PDF\n" +"documents in LaTeX documents. Pages may be freely selected and it is possible\n" +"to put several logical pages onto each sheet of paper. Furthermore a lot of\n" +"hypertext features like hyperlinks and article threads are provided. The\n" +"package supports pdfTeX (pdfLaTeX) and VTeX. With VTeX it is even possible to\n" +"use this package to insert PostScript files, in addition to PDF files." +msgstr "" + +#: gnu/packages/tex.scm:3273 +msgid "St Mary Road symbols for theoretical computer science" +msgstr "" + +#: gnu/packages/tex.scm:3275 +msgid "" +"The fonts were originally distributed as Metafont sources only, but\n" +"Adobe Type 1 versions are also now available. Macro support is provided for\n" +"use under LaTeX; the package supports the @code{only} option (provided by the\n" +"@code{somedefs} package) to restrict what is loaded, for those who don't need\n" +"the whole font." +msgstr "" + +#: gnu/packages/tex.scm:3296 +msgid "Figures divided into subfigures" +msgstr "" + +#: gnu/packages/tex.scm:3298 +msgid "" +"This (deprecated) package provides support for the manipulation and\n" +"reference of small or \"sub\" figures and tables within a single figure or\n" +"table environment. It is convenient to use this package when your subfigures\n" +"are to be separately captioned, referenced, or are to be included in the\n" +"List-of-Figures. A new @code{\\subfigure} command is introduced which can be\n" +"used inside a figure environment for each subfigure. An optional first\n" +"argument is used as the caption for that subfigure. The package is now\n" +"considered obsolete: it was superseded by @code{subfig}, but users may find\n" +"the more recent @code{subcaption} package more satisfactory." +msgstr "" + +#: gnu/packages/tex.scm:3323 +msgid "Tabular with variable width columns balanced" +msgstr "" + +#: gnu/packages/tex.scm:3325 +msgid "" +"The package defines a @code{tabular*}-like environment, @code{tabulary},\n" +"taking a \"total width\" argument as well as the column specifications. The\n" +"environment uses column types @code{L}, @code{C}, @code{R} and @code{J} for\n" +"variable width columns (@code{\\raggedright}, @code{\\centering},\n" +"@code{\\raggedleft}, and normally justified). In contrast to\n" +"@code{tabularx}'s @code{X} columns, the width of each column is weighted\n" +"according to the natural width of the widest cell in the column." +msgstr "" + +#: gnu/packages/tex.scm:3361 +msgid "Tables with captions and notes all the same width" +msgstr "" + +#: gnu/packages/tex.scm:3363 +msgid "" +"This package facilitates tables with titles (captions) and notes. The\n" +"title and notes are given a width equal to the body of the table (a\n" +"@code{tabular} environment). By itself, a @code{threeparttable} does not\n" +"float, but you can put it in a @code{table} or a @code{table*} or some other\n" +"environment." +msgstr "" + +#: gnu/packages/tex.scm:3484 +msgid "Times-like fonts in support of mathematics" +msgstr "" + +#: gnu/packages/tex.scm:3486 +msgid "" +"Txfonts supplies virtual text roman fonts using Adobe Times (or URW\n" +"NimbusRomNo9L) with some modified and additional text symbols in the OT1, T1,\n" +"and TS1 encodings; maths alphabets using Times/URW Nimbus; maths fonts\n" +"providing all the symbols of the Computer Modern and AMS fonts, including all\n" +"the Greek capital letters from CMR; and additional maths fonts of various\n" +"other symbols.\n" +"\n" +"The set is complemented by a sans-serif set of text fonts, based on\n" +"Helvetica/NimbusSanL, and a monospace set.\n" +"\n" +"All the fonts are in Type 1 format (AFM and PFB files), and are supported by\n" +"TeX metrics (VF and TFM files) and macros for use with LaTeX." +msgstr "" + +#: gnu/packages/tex.scm:3532 +msgid "Sans-serif typeface for TeX" +msgstr "" + +#: gnu/packages/tex.scm:3533 +msgid "" +"Iwona is a two-element sans-serif typeface. It was created\n" +"as an alternative version of the Kurier typeface, which was designed in 1975\n" +"for a diploma in typeface design at the Warsaw Academy of Fine Arts under the\n" +"supervision of Roman Tomaszewski. Kurier was designed for linotype\n" +"typesetting of newspapers and similar periodicals. The Iwona fonts are an\n" +"alternative version of the Kurier fonts. The difference lies in the absence\n" +"of ink traps which typify the Kurier font." +msgstr "" + +#: gnu/packages/tex.scm:3569 +msgid "Select alternative section titles" +msgstr "" + +#: gnu/packages/tex.scm:3571 +msgid "" +"This package provides an interface to sectioning commands for selection\n" +"from various title styles, e.g. for marginal titles and to change the font of\n" +"all headings with a single command, also providing simple one-step page\n" +"styles. It also includes a package to change the page styles when there are\n" +"floats in a page. You may assign headers/footers to individual floats, too." +msgstr "" + +#: gnu/packages/tex.scm:3592 +msgid "Arbitrary size font selection in LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:3594 +msgid "" +"LaTeX, by default, restricts the sizes at which you can use its default\n" +"computer modern fonts, to a fixed set of discrete sizes (effectively, a set\n" +"specified by Knuth). The @code{type1cm} package removes this restriction;\n" +"this is particularly useful when using scalable versions of the CM\n" +"fonts (Bakoma, or the versions from BSR/Y&Y, or True Type versions from Kinch,\n" +"PCTeX, etc.). In fact, since modern distributions will automatically generate\n" +"any bitmap font you might need, @code{type1cm} has wider application than just\n" +"those using scalable versions of the fonts. Note that the LaTeX distribution\n" +"now contains a package @code{fix-cm},f which performs the task of\n" +"@code{type1cm}, as well as doing the same job for T1- and TS1-encoded\n" +"@code{ec} fonts." +msgstr "" + +#: gnu/packages/tex.scm:3621 +msgid "Cyrillic fonts that support LaTeX standard encodings" +msgstr "" + +#: gnu/packages/tex.scm:3623 +msgid "" +"The LH fonts address the problem of the wide variety of alphabets that\n" +"are written with Cyrillic-style characters. The fonts are the original basis\n" +"of the set of T2* and X2 encodings that are now used when LaTeX users need to\n" +"write in Cyrillic languages. Macro support in standard LaTeX encodings is\n" +"offered through the latex-cyrillic and t2 bundles, and the package itself\n" +"offers support for other (more traditional) encodings. The fonts, in the\n" +"standard T2* and X2 encodings are available in Adobe Type 1 format, in the\n" +"CM-Super family of fonts. The package also offers its own LaTeX support for\n" +"OT2 encoded fonts, CM bright shaped fonts and Concrete shaped fonts." +msgstr "" + +#: gnu/packages/tex.scm:3661 +msgid "Create scalable illustrations" +msgstr "Opret skalerbare illustrationer" + +#: gnu/packages/tex.scm:3663 +msgid "" +"MetaPost uses a language based on that of Metafont to produce precise\n" +"technical illustrations. Its output is scalable PostScript or SVG, rather\n" +"than the bitmaps Metafont creates." +msgstr "" + +#: gnu/packages/tex.scm:3682 +msgid "Class for typesetting publications of ACM" +msgstr "Klasse til opsætning af ACM-udgivelser" + +#: gnu/packages/tex.scm:3684 +msgid "" +"This package provides a class for typesetting publications of the\n" +"Association for Computing Machinery (ACM)." +msgstr "" + +#: gnu/packages/tex.scm:3715 +msgid "Variable-width minipage" +msgstr "" + +#: gnu/packages/tex.scm:3717 +msgid "" +"The @code{varwidth} environment is superficially similar to\n" +"@code{minipage}, but the specified width is just a maximum value — the box may\n" +"get a narrower “natural” width." +msgstr "" + +#: gnu/packages/tex.scm:3736 +msgid "LaTeX support file to use the WASY2 fonts" +msgstr "" + +#: gnu/packages/tex.scm:3738 +msgid "" +"The wasy2WASY2 (Waldi Symbol) font by Roland Waldi provides many glyphs\n" +"like male and female symbols and astronomical symbols, as well as the complete\n" +"lasy font set and other odds and ends. The wasysym package implements an easy\n" +"to use interface for these symbols." +msgstr "" + +#: gnu/packages/tex.scm:3771 +msgid "Produces figures which text can flow around" +msgstr "" + +#: gnu/packages/tex.scm:3773 +msgid "" +"This package allows figures or tables to have text wrapped around them.\n" +"It does not work in combination with list environments, but can be used in a\n" +"@code{parbox} or @code{minipage}, and in two-column format." +msgstr "" + +#: gnu/packages/tex.scm:3805 +msgid "Extended UTF-8 input encoding support for LaTeX" +msgstr "" + +#: gnu/packages/tex.scm:3807 +msgid "" +"The bundle provides the @code{ucs} package, and @code{utf8x.def},\n" +"together with a large number of support files. The @code{utf8x.def}\n" +"definition file for use with @code{inputenc} covers a wider range of Unicode\n" +"characters than does @code{utf8.def} in the LaTeX distribution. The package\n" +"provides facilities for efficient use of its large sets of Unicode characters.\n" +"Glyph production may be controlled by various options, which permits use of\n" +"non-ASCII characters when coding mathematical formulae. Note that the bundle\n" +"previously had an alias “unicode”; that alias has now been withdrawn, and no\n" +"package of that name now exists." +msgstr "" + +#: gnu/packages/tex.scm:3839 +msgid "Extract bits of a LaTeX source for output" +msgstr "" + +#: gnu/packages/tex.scm:3841 +msgid "" +"The main purpose of the preview package is the extraction of selected\n" +"elements from a LaTeX source, like formulas or graphics, into separate\n" +"pages of a DVI file. A flexible and convenient interface allows it to\n" +"specify what commands and constructs should be extracted. This works\n" +"with DVI files postprocessed by either Dvips and Ghostscript or\n" +"dvipng, but it also works when you are using PDFTeX for generating PDF\n" +"files." +msgstr "" + +#: gnu/packages/tex.scm:3864 +msgid "Expand acronyms at least once" +msgstr "" + +#: gnu/packages/tex.scm:3866 +msgid "" +"This package ensures that all acronyms used in the text are spelled out\n" +"in full at least once. It also provides an environment to build a list of\n" +"acronyms used. The package is compatible with PDF bookmarks. The package\n" +"requires the suffix package, which in turn requires that it runs under\n" +"e-TeX." +msgstr "" + +#: gnu/packages/tex.scm:3900 +msgid "TeX extension for direct creation of PDF" +msgstr "TeX-udvidelse for direkte oprettelse af PDF" + +#: gnu/packages/tex.scm:3902 +msgid "" +"This package provides an extension of TeX which can be configured to\n" +"directly generate PDF documents instead of DVI." +msgstr "" + +#: gnu/packages/tex.scm:3969 msgid "" "TeX Live provides a comprehensive TeX document production system.\n" "It includes all the major TeX-related programs, macro packages, and fonts\n" @@ -13529,7 +17351,7 @@ msgid "" "This package contains the complete tree of texmf-dist data." msgstr "" -#: gnu/packages/tex.scm:307 +#: gnu/packages/tex.scm:4031 msgid "" "TeX Live provides a comprehensive TeX document production system.\n" "It includes all the major TeX-related programs, macro packages, and fonts\n" @@ -13539,31 +17361,11 @@ msgid "" "This package contains the complete TeX Live distribution." msgstr "" -#: gnu/packages/tex.scm:362 -msgid "" -"TeX Live provides a comprehensive TeX document production system.\n" -"It includes all the major TeX-related programs, macro packages, and fonts\n" -"that are free software, including support for many languages around the\n" -"world.\n" -"\n" -"This package contains a small subset of the texmf-dist data." -msgstr "" - -#: gnu/packages/tex.scm:384 -msgid "" -"TeX Live provides a comprehensive TeX document production system.\n" -"It includes all the major TeX-related programs, macro packages, and fonts\n" -"that are free software, including support for many languages around the\n" -"world.\n" -"\n" -"This package contains a small working part of the TeX Live distribution." -msgstr "" - -#: gnu/packages/tex.scm:425 +#: gnu/packages/tex.scm:4074 msgid "Interface to read and parse BibTeX files" msgstr "" -#: gnu/packages/tex.scm:426 +#: gnu/packages/tex.scm:4075 msgid "" "@code{Text::BibTeX} is a Perl library for reading, parsing,\n" "and processing BibTeX files. @code{Text::BibTeX} gives you access to the data\n" @@ -13572,21 +17374,21 @@ msgid "" "values (strings, macros, or numbers) pasted together." msgstr "" -#: gnu/packages/tex.scm:508 +#: gnu/packages/tex.scm:4157 msgid "Backend for the BibLaTeX citation management tool" msgstr "" -#: gnu/packages/tex.scm:509 +#: gnu/packages/tex.scm:4158 msgid "" "Biber is a BibTeX replacement for users of biblatex. Among\n" "other things it comes with full Unicode support." msgstr "" -#: gnu/packages/tex.scm:560 +#: gnu/packages/tex.scm:4182 msgid "Wrapper for LaTeX and friends" msgstr "" -#: gnu/packages/tex.scm:562 +#: gnu/packages/tex.scm:4184 msgid "" "Rubber is a program whose purpose is to handle all tasks related to the\n" "compilation of LaTeX documents. This includes compiling the document itself,\n" @@ -13596,32 +17398,45 @@ msgid "" "PDF documents." msgstr "" -#: gnu/packages/tex.scm:604 +#: gnu/packages/tex.scm:4226 msgid "LaTeX editor" msgstr "LaTeX-redigeringsprogram" -#: gnu/packages/tex.scm:605 +#: gnu/packages/tex.scm:4227 msgid "" "Texmaker is a program that integrates many tools needed to\n" "develop documents with LaTeX, in a single application." msgstr "" -#: gnu/packages/tex.scm:644 +#: gnu/packages/tex.scm:4266 msgid "Book on TeX, plain TeX and Eplain" msgstr "" -#: gnu/packages/tex.scm:645 +#: gnu/packages/tex.scm:4267 msgid "" "@i{TeX for the Impatient} is a ~350 page book on TeX,\n" "plain TeX, and Eplain, originally written by Paul Abrahams, Kathryn Hargreaves,\n" "and Karl Berry." msgstr "" -#: gnu/packages/texinfo.scm:55 +#: gnu/packages/tex.scm:4351 +msgid "Document preparation system with GUI" +msgstr "" + +#: gnu/packages/tex.scm:4352 +msgid "" +"LyX is a document preparation system. It excels at letting\n" +"you create complex technical and scientific articles with mathematics,\n" +"cross-references, bibliographies, indexes, etc. It is very good for working\n" +"with documents of any length in which the usual processing abilities are\n" +"required: automatic sectioning and pagination, spell checking and so forth." +msgstr "" + +#: gnu/packages/texinfo.scm:54 msgid "The GNU documentation format" msgstr "" -#: gnu/packages/texinfo.scm:57 +#: gnu/packages/texinfo.scm:56 msgid "" "Texinfo is the official documentation format of the GNU project. It\n" "uses a single source file using explicit commands to produce a final document\n" @@ -13631,15 +17446,15 @@ msgid "" "is on expressing the content semantically, avoiding physical markup commands." msgstr "" -#: gnu/packages/texinfo.scm:125 +#: gnu/packages/texinfo.scm:124 msgid "Standalone Info documentation reader" msgstr "" -#: gnu/packages/texinfo.scm:155 +#: gnu/packages/texinfo.scm:154 msgid "Convert Texinfo to HTML" msgstr "" -#: gnu/packages/texinfo.scm:157 +#: gnu/packages/texinfo.scm:156 msgid "" "Texi2HTML is a Perl script which converts Texinfo source files to HTML\n" "output. It now supports many advanced features, such as internationalization\n" @@ -13654,11 +17469,21 @@ msgid "" "Texi2HTML." msgstr "" -#: gnu/packages/textutils.scm:76 +#: gnu/packages/textutils.scm:77 +msgid "DOS/Mac to Unix and vice versa text file format converter" +msgstr "" + +#: gnu/packages/textutils.scm:79 +msgid "" +"dos2unix is a tool to convert line breaks in a text file from Unix format\n" +"to DOS format and vice versa." +msgstr "" + +#: gnu/packages/textutils.scm:105 msgid "Text encoding converter" msgstr "" -#: gnu/packages/textutils.scm:77 +#: gnu/packages/textutils.scm:106 msgid "" "The Recode library converts files between character sets and\n" "usages. It recognises or produces over 200 different character sets (or about\n" @@ -13668,61 +17493,61 @@ msgid "" "handy front-end to the library." msgstr "" -#: gnu/packages/textutils.scm:105 +#: gnu/packages/textutils.scm:130 msgid "Text encoding detection tool" msgstr "" -#: gnu/packages/textutils.scm:106 +#: gnu/packages/textutils.scm:131 msgid "" "Enca (Extremely Naive Charset Analyser) consists of libenca,\n" "an encoding detection library, and enca, a command line frontend, integrating\n" "libenca and several charset conversion libraries and tools." msgstr "" -#: gnu/packages/textutils.scm:156 +#: gnu/packages/textutils.scm:181 msgid "C library for processing UTF-8 Unicode data" msgstr "" -#: gnu/packages/textutils.scm:157 +#: gnu/packages/textutils.scm:182 msgid "" "utf8proc is a small C library that provides Unicode\n" "normalization, case-folding, and other operations for data in the UTF-8\n" "encoding, supporting Unicode version 9.0.0." msgstr "" -#: gnu/packages/textutils.scm:186 +#: gnu/packages/textutils.scm:210 msgid "Gordon's text utils library" msgstr "" -#: gnu/packages/textutils.scm:188 +#: gnu/packages/textutils.scm:212 msgid "" "libgtextutils is a text utilities library used by the fastx toolkit from\n" "the Hannon Lab." msgstr "" -#: gnu/packages/textutils.scm:220 +#: gnu/packages/textutils.scm:244 msgid "C++ hash functions for strings" msgstr "" -#: gnu/packages/textutils.scm:222 +#: gnu/packages/textutils.scm:246 msgid "" "CityHash provides hash functions for strings. The functions mix the\n" "input bits thoroughly but are not suitable for cryptography." msgstr "" -#: gnu/packages/textutils.scm:260 +#: gnu/packages/textutils.scm:284 msgid "String library with very low memory overhead" msgstr "" -#: gnu/packages/textutils.scm:262 +#: gnu/packages/textutils.scm:286 msgid "Ustr is a string library for C with very low memory overhead." msgstr "" -#: gnu/packages/textutils.scm:283 +#: gnu/packages/textutils.scm:307 msgid "C/C++ configuration file library" msgstr "" -#: gnu/packages/textutils.scm:285 +#: gnu/packages/textutils.scm:309 msgid "" "Libconfig is a simple library for manipulating structured configuration\n" "files. This file format is more compact and more readable than XML. And\n" @@ -13730,11 +17555,11 @@ msgid "" "application code." msgstr "" -#: gnu/packages/textutils.scm:305 +#: gnu/packages/textutils.scm:329 msgid "Probabilistic fast file fingerprinting tool" msgstr "" -#: gnu/packages/textutils.scm:307 +#: gnu/packages/textutils.scm:331 msgid "" "pfff is a tool for calculating a compact digital fingerprint of a file\n" "by sampling randomly from the file instead of reading it in full.\n" @@ -13743,22 +17568,22 @@ msgid "" "as existing hashing techniques, with provably negligible risk of collisions." msgstr "" -#: gnu/packages/textutils.scm:328 +#: gnu/packages/textutils.scm:352 msgid "Regular expression library" msgstr "Regulært udtryksbibliotek" -#: gnu/packages/textutils.scm:329 +#: gnu/packages/textutils.scm:353 msgid "" "Oniguruma is a regular expressions library. The special\n" "characteristic of this library is that different character encoding for every\n" "regular expression object can be specified." msgstr "" -#: gnu/packages/textutils.scm:362 +#: gnu/packages/textutils.scm:393 msgid "Microsoft Word document reader" msgstr "Microsoft Word-dokumentlæser" -#: gnu/packages/textutils.scm:363 +#: gnu/packages/textutils.scm:394 msgid "" "Antiword is an application for displaying Microsoft Word\n" "documents. It can also convert the document to PostScript or XML. Only\n" @@ -13768,21 +17593,41 @@ msgid "" "runs Word\"." msgstr "" -#: gnu/packages/textutils.scm:405 +#: gnu/packages/textutils.scm:427 +msgid "MS-Word to TeX or plain text converter" +msgstr "" + +#: gnu/packages/textutils.scm:428 +msgid "" +"@command{catdoc} extracts text from MS-Word files, trying to\n" +"preserve as many special printable characters as possible. It supports\n" +"everything up to Word-97. Also supported are MS Write documents and RTF files.\n" +"\n" +"@command{catdoc} does not preserve complex word formatting, but it can\n" +"translate some non-ASCII characters into TeX escape codes. It's goal is to\n" +"extract plain text and allow you to read it and, probably, reformat with TeX,\n" +"according to TeXnical rules.\n" +"\n" +"This package also provides @command{xls2csv}, which extracts data from Excel\n" +"spreadsheets and outputs it in comma-separated-value format, and\n" +"@command{catppt}, which extracts data from PowerPoint presentations." +msgstr "" + +#: gnu/packages/textutils.scm:469 msgid "Portable C++ library for handling UTF-8" msgstr "Flytbart C++-bibliotek til håndtering af UTF-8" -#: gnu/packages/textutils.scm:406 +#: gnu/packages/textutils.scm:470 msgid "" "UTF8-CPP is a C++ library for handling UTF-8 encoded text\n" "in a portable way." msgstr "" -#: gnu/packages/textutils.scm:472 +#: gnu/packages/textutils.scm:538 msgid "Bayesian text and email classifier" msgstr "" -#: gnu/packages/textutils.scm:474 +#: gnu/packages/textutils.scm:540 msgid "" "dbacl is a fast Bayesian text and email classifier. It builds a variety\n" "of language models using maximum entropy (minimum divergence) principles, and\n" @@ -13790,51 +17635,84 @@ msgid "" "categories." msgstr "" -#: gnu/packages/textutils.scm:516 +#: gnu/packages/textutils.scm:582 msgid "Configuration file parser library" msgstr "" -#: gnu/packages/textutils.scm:518 +#: gnu/packages/textutils.scm:584 msgid "C library for creating and parsing configuration files." msgstr "" -#: gnu/packages/version-control.scm:110 +#: gnu/packages/textutils.scm:612 +msgid "Syntax highlighting text component for Java Swing" +msgstr "" + +#: gnu/packages/textutils.scm:613 +msgid "" +"RSyntaxTextArea is a syntax highlighting, code folding text\n" +"component for Java Swing. It extends @code{JTextComponent} so it integrates\n" +"completely with the standard @code{javax.swing.text} package. It is fast and\n" +"efficient, and can be used in any application that needs to edit or view\n" +"source code." +msgstr "" + +#: gnu/packages/textutils.scm:651 +msgid "Fast implementation of the edit distance (Levenshtein distance)" +msgstr "" + +#: gnu/packages/textutils.scm:653 +msgid "" +"This library simply implements Levenshtein distance algorithm with C++\n" +"and Cython." +msgstr "" + +#: gnu/packages/textutils.scm:673 +msgid "@code{runewidth} provides Go functions to work with string widths" +msgstr "" + +#: gnu/packages/textutils.scm:675 +msgid "" +"The @code{runewidth} library provides Go functions for padding,\n" +"measuring and checking the width of strings, with support east asian text." +msgstr "" + +#: gnu/packages/version-control.scm:132 msgid "Version control system supporting both distributed and centralized workflows" msgstr "" -#: gnu/packages/version-control.scm:112 +#: gnu/packages/version-control.scm:134 msgid "" "GNU Bazaar is a version control system that allows you to record\n" "changes to project files over time. It supports both a distributed workflow\n" "as well as the classic centralized workflow." msgstr "" -#: gnu/packages/version-control.scm:306 +#: gnu/packages/version-control.scm:372 msgid "Distributed version control system" msgstr "" -#: gnu/packages/version-control.scm:308 +#: gnu/packages/version-control.scm:374 msgid "" "Git is a free distributed version control system designed to handle\n" "everything from small to very large projects with speed and efficiency." msgstr "" -#: gnu/packages/version-control.scm:377 +#: gnu/packages/version-control.scm:424 msgid "Library providing Git core methods" msgstr "" -#: gnu/packages/version-control.scm:379 +#: gnu/packages/version-control.scm:426 msgid "" "Libgit2 is a portable, pure C implementation of the Git core methods\n" "provided as a re-entrant linkable library with a solid API, allowing you to\n" "write native speed custom Git applications in any language with bindings." msgstr "" -#: gnu/packages/version-control.scm:415 +#: gnu/packages/version-control.scm:462 msgid "Transparent encryption of files in a git repository" msgstr "" -#: gnu/packages/version-control.scm:416 +#: gnu/packages/version-control.scm:463 msgid "" "git-crypt enables transparent encryption and decryption of\n" "files in a git repository. Files which you choose to protect are encrypted when\n" @@ -13846,21 +17724,81 @@ msgid "" "to lock down your entire repository." msgstr "" -#: gnu/packages/version-control.scm:477 +#: gnu/packages/version-control.scm:498 +msgid "Whole remote repository encryption" +msgstr "" + +#: gnu/packages/version-control.scm:499 +msgid "" +"git-remote-gcrypt is a Git remote helper to push and pull from\n" +"repositories encrypted with GnuPG. It works with the standard Git transports,\n" +"including repository hosting services like GitLab.\n" +"\n" +"Remote helper programs are invoked by Git to handle network transport. This\n" +"helper handles @code{gcrypt:} URLs that access a remote repository encrypted\n" +"with GPG, using our custom format.\n" +"\n" +"Supported locations are local, @code{rsync://} and @code{sftp://}, where the\n" +"repository is stored as a set of files, or instead any Git URL where gcrypt\n" +"will store the same representation in a Git repository, bridged over arbitrary\n" +"Git transport.\n" +"\n" +"The aim is to provide confidential, authenticated Git storage and\n" +"collaboration using typical untrusted file hosts or services." +msgstr "" + +#: gnu/packages/version-control.scm:593 msgid "Web frontend for git repositories" msgstr "" -#: gnu/packages/version-control.scm:479 +#: gnu/packages/version-control.scm:595 msgid "" "CGit is an attempt to create a fast web interface for the Git SCM, using\n" "a built-in cache to decrease server I/O pressure." msgstr "" -#: gnu/packages/version-control.scm:516 +#: gnu/packages/version-control.scm:624 +msgid "Copy directory to the gh-pages branch" +msgstr "Kopier mappe til gh-pages-grenen" + +#: gnu/packages/version-control.scm:625 +msgid "" +"Script that copies a directory to the gh-pages branch (by\n" +"default) of the repository." +msgstr "" + +#: gnu/packages/version-control.scm:683 +msgid "Python implementation of the Git object database" +msgstr "Pythonimplementering af Git-objektdatabasen" + +#: gnu/packages/version-control.scm:685 +msgid "" +"GitDB allows you to access @dfn{bare} Git repositories for reading and\n" +"writing. It aims at allowing full access to loose objects as well as packs\n" +"with performance and scalability in mind. It operates exclusively on streams,\n" +"allowing to handle large objects with a small memory footprint." +msgstr "" + +#: gnu/packages/version-control.scm:724 +msgid "Python library for interacting with Git repositories" +msgstr "Pythonbibliotek til at interagere med Git-arkiver" + +#: gnu/packages/version-control.scm:726 +msgid "" +"GitPython is a python library used to interact with Git repositories,\n" +"high-level like git-porcelain, or low-level like git-plumbing.\n" +"\n" +"It provides abstractions of Git objects for easy access of repository data,\n" +"and additionally allows you to access the Git repository more directly using\n" +"either a pure Python implementation, or the faster, but more resource intensive\n" +"@command{git} command implementation." +msgstr "" + +#: gnu/packages/version-control.scm:766 msgid "Command-line flags library for shell scripts" msgstr "" -#: gnu/packages/version-control.scm:518 +#: gnu/packages/version-control.scm:768 msgid "" "Shell Flags (shFlags) is a library written to greatly simplify the\n" "handling of command-line flags in Bourne based Unix shell scripts (bash, dash,\n" @@ -13871,11 +17809,11 @@ msgid "" "will work." msgstr "" -#: gnu/packages/version-control.scm:561 +#: gnu/packages/version-control.scm:812 msgid "Git extensions for Vincent Driessen's branching model" msgstr "" -#: gnu/packages/version-control.scm:563 +#: gnu/packages/version-control.scm:814 msgid "" "Vincent Driessen's branching model is a git branching and release\n" "management strategy that helps developers keep track of features, hotfixes,\n" @@ -13884,43 +17822,69 @@ msgid "" "lot easier." msgstr "" -#: gnu/packages/version-control.scm:598 +#: gnu/packages/version-control.scm:847 +msgid "Stacked Git" +msgstr "" + +#: gnu/packages/version-control.scm:849 +msgid "" +"StGit is a command-line application that provides functionality similar\n" +"to Quilt (i.e., pushing/popping patches to/from a stack), but using Git\n" +"instead of @command{diff} and @command{patch}. StGit stores its patches in a\n" +"Git repository as normal Git commits, and provides a number of commands to\n" +"manipulate them in various ways." +msgstr "" + +#: gnu/packages/version-control.scm:885 +msgid "Version control system for @code{$HOME}" +msgstr "" + +#: gnu/packages/version-control.scm:887 +msgid "" +"vcsh version-controls configuration files in several Git repositories,\n" +"all in one single directory. They all maintain their working trees without\n" +"clobbering each other or interfering otherwise. By default, all Git\n" +"repositories maintained via vcsh store the actual files in @code{$HOME},\n" +"though this can be overridden." +msgstr "" + +#: gnu/packages/version-control.scm:923 msgid "Run a command over a sequence of commits" msgstr "" -#: gnu/packages/version-control.scm:600 +#: gnu/packages/version-control.scm:925 msgid "" "git-test-sequence is similar to an automated git bisect except it’s\n" "linear. It will test every change between two points in the DAG. It will\n" "also walk each side of a merge and test those changes individually." msgstr "" -#: gnu/packages/version-control.scm:661 +#: gnu/packages/version-control.scm:987 msgid "Git access control layer" msgstr "" -#: gnu/packages/version-control.scm:663 +#: gnu/packages/version-control.scm:989 msgid "" "Gitolite is an access control layer on top of Git, providing fine access\n" "control to Git repositories." msgstr "" -#: gnu/packages/version-control.scm:687 +#: gnu/packages/version-control.scm:1013 msgid "Decentralized version control system" msgstr "" -#: gnu/packages/version-control.scm:689 +#: gnu/packages/version-control.scm:1015 msgid "" "Mercurial is a free, distributed source control management tool.\n" "It efficiently handles projects of any size\n" "and offers an easy and intuitive interface." msgstr "" -#: gnu/packages/version-control.scm:723 +#: gnu/packages/version-control.scm:1049 msgid "HTTP and WebDAV client library" msgstr "" -#: gnu/packages/version-control.scm:725 +#: gnu/packages/version-control.scm:1051 msgid "" "Neon is an HTTP and WebDAV client library, with a C interface and the\n" "following features:\n" @@ -13942,11 +17906,11 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/version-control.scm:804 +#: gnu/packages/version-control.scm:1142 msgid "Revision control system" msgstr "" -#: gnu/packages/version-control.scm:806 +#: gnu/packages/version-control.scm:1144 msgid "" "Subversion exists to be universally recognized and adopted as a\n" "centralized version control system characterized by its\n" @@ -13955,11 +17919,11 @@ msgid "" "projects, from individuals to large-scale enterprise operations." msgstr "" -#: gnu/packages/version-control.scm:828 +#: gnu/packages/version-control.scm:1166 msgid "Per-file local revision control system" msgstr "" -#: gnu/packages/version-control.scm:830 +#: gnu/packages/version-control.scm:1168 msgid "" "RCS is the original Revision Control System. It works on a\n" "file-by-file basis, in contrast to subsequent version control systems such as\n" @@ -13968,11 +17932,11 @@ msgid "" "machine." msgstr "" -#: gnu/packages/version-control.scm:857 +#: gnu/packages/version-control.scm:1196 msgid "Historical centralized version control system" msgstr "" -#: gnu/packages/version-control.scm:859 +#: gnu/packages/version-control.scm:1198 msgid "" "CVS is a version control system, an important component of Source\n" "Configuration Management (SCM). Using it, you can record the history of\n" @@ -13980,11 +17944,11 @@ msgid "" "RCS, PRCS, and Aegis packages." msgstr "" -#: gnu/packages/version-control.scm:888 +#: gnu/packages/version-control.scm:1239 msgid "Export an RCS or CVS history as a fast-import stream" msgstr "" -#: gnu/packages/version-control.scm:889 +#: gnu/packages/version-control.scm:1240 msgid "" "This program analyzes a collection of RCS files in a CVS\n" "repository (or outside of one) and, when possible, emits an equivalent history\n" @@ -13997,11 +17961,11 @@ msgid "" "masters from remote CVS hosts." msgstr "" -#: gnu/packages/version-control.scm:916 +#: gnu/packages/version-control.scm:1267 msgid "Version-control-agnostic ChangeLog diff and commit tool" msgstr "" -#: gnu/packages/version-control.scm:918 +#: gnu/packages/version-control.scm:1269 msgid "" "The vc-dwim package contains two tools, \"vc-dwim\" and \"vc-chlog\".\n" "vc-dwim is a tool that simplifies the task of maintaining a ChangeLog and\n" @@ -14011,33 +17975,33 @@ msgid "" "standards-compliant ChangeLog entries based on the changes that it detects." msgstr "" -#: gnu/packages/version-control.scm:943 +#: gnu/packages/version-control.scm:1294 msgid "Make histograms from the output of @command{diff}" msgstr "" -#: gnu/packages/version-control.scm:945 +#: gnu/packages/version-control.scm:1296 msgid "" "Diffstat reads the output of @command{diff} and displays a histogram of\n" "the insertions, deletions, and modifications per file. It is useful for\n" "reviewing large, complex patch files." msgstr "" -#: gnu/packages/version-control.scm:984 +#: gnu/packages/version-control.scm:1335 msgid "File-based version control like SCCS" msgstr "" -#: gnu/packages/version-control.scm:985 +#: gnu/packages/version-control.scm:1336 msgid "" "GNU CSSC provides a replacement for the legacy Unix source\n" "code control system SCCS. This allows old code still under that system to be\n" "accessed and migrated on modern systems." msgstr "" -#: gnu/packages/version-control.scm:1064 +#: gnu/packages/version-control.scm:1415 msgid "Project change supervisor" msgstr "" -#: gnu/packages/version-control.scm:1065 +#: gnu/packages/version-control.scm:1416 msgid "" "Aegis is a project change supervisor, and performs some of\n" "the Software Configuration Management needed in a CASE environment. Aegis\n" @@ -14048,11 +18012,11 @@ msgid "" "any project with more than one developer, is one of Aegis's major functions." msgstr "" -#: gnu/packages/version-control.scm:1114 +#: gnu/packages/version-control.scm:1489 msgid "Edit version-control repository history" msgstr "" -#: gnu/packages/version-control.scm:1115 +#: gnu/packages/version-control.scm:1490 msgid "" "Reposurgeon enables risky operations that version-control\n" "systems don't want to let you do, such as editing past comments and metadata\n" @@ -14063,32 +18027,32 @@ msgid "" "from Subversion to any supported Distributed Version Control System (DVCS)." msgstr "" -#: gnu/packages/version-control.scm:1154 +#: gnu/packages/version-control.scm:1529 msgid "Ncurses-based text user interface for Git" msgstr "" -#: gnu/packages/version-control.scm:1156 +#: gnu/packages/version-control.scm:1531 msgid "" "Tig is an ncurses text user interface for Git, primarily intended as\n" "a history browser. It can also stage hunks for commit, or colorize the\n" "output of the 'git' command." msgstr "" -#: gnu/packages/version-control.scm:1182 +#: gnu/packages/version-control.scm:1557 msgid "Print the modification time of the latest file" msgstr "" -#: gnu/packages/version-control.scm:1184 +#: gnu/packages/version-control.scm:1559 msgid "" "Recursively find the newest file in a file tree and print its\n" "modification time." msgstr "" -#: gnu/packages/version-control.scm:1209 +#: gnu/packages/version-control.scm:1584 msgid "Multiple repository management tool" msgstr "" -#: gnu/packages/version-control.scm:1211 +#: gnu/packages/version-control.scm:1586 msgid "" "Myrepos provides the @code{mr} command, which maps an operation (e.g.,\n" "fetching updates) over a collection of version control repositories. It\n" @@ -14096,42 +18060,42 @@ msgid "" "Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity." msgstr "" -#: gnu/packages/version-control.scm:1241 +#: gnu/packages/version-control.scm:1616 msgid "Use hubic as a git-annex remote" msgstr "" -#: gnu/packages/version-control.scm:1243 +#: gnu/packages/version-control.scm:1618 msgid "" "This package allows you to use your hubic account as a \"special\n" "repository\" with git-annex." msgstr "" -#: gnu/packages/version-control.scm:1293 +#: gnu/packages/version-control.scm:1671 msgid "Software configuration management system" msgstr "" -#: gnu/packages/version-control.scm:1295 +#: gnu/packages/version-control.scm:1673 msgid "" "Fossil is a distributed source control management system which supports\n" "access and administration over HTTP CGI or via a built-in HTTP server. It has\n" "a built-in wiki, built-in file browsing, built-in tickets system, etc." msgstr "" -#: gnu/packages/version-control.scm:1323 +#: gnu/packages/version-control.scm:1701 msgid "Static git page generator" msgstr "" -#: gnu/packages/version-control.scm:1324 +#: gnu/packages/version-control.scm:1702 msgid "" "Stagit creates static pages for git repositories, the results can\n" "be served with a HTTP file server of your choice." msgstr "" -#: gnu/packages/version-control.scm:1412 +#: gnu/packages/version-control.scm:1787 msgid "Distributed Revision Control System" msgstr "" -#: gnu/packages/version-control.scm:1414 +#: gnu/packages/version-control.scm:1789 msgid "" "Darcs is a revision control system. It is:\n" "\n" @@ -14148,22 +18112,210 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/webkit.scm:123 +#: gnu/packages/version-control.scm:1841 +msgid "Java library implementing the Git version control system" +msgstr "Javabibliotek der implementerer Git-versionskontrolsystemet" + +#: gnu/packages/version-control.scm:1842 +msgid "" +"JGit is a lightweight, pure Java library implementing the\n" +"Git version control system, providing repository access routines, support for\n" +"network protocols, and core version control algorithms." +msgstr "" + +#: gnu/packages/version-control.scm:1909 +msgid "3D visualisation tool for source control repositories" +msgstr "" + +#: gnu/packages/version-control.scm:1910 +msgid "" +"@code{gource} provides a software version control\n" +"visualization. The repository is displayed as a tree where the root of the\n" +"repository is the centre, directories are branches and files are leaves.\n" +"Contributors to the source code appear and disappear as they contribute to\n" +"specific files and directories." +msgstr "" + +#: gnu/packages/version-control.scm:1956 +msgid "Simple revision control" +msgstr "Simpel revisionskontrol" + +#: gnu/packages/version-control.scm:1959 +#, scheme-format +msgid "" +"SRC (or src) is simple revision control, a version-control system for\n" +"single-file projects by solo developers and authors. It modernizes the\n" +"venerable RCS, hence the anagrammatic acronym. The design is tuned for use\n" +"cases like all those little scripts in your @file{~/bin} directory, or a\n" +"directory full of HOWTOs." +msgstr "" + +#: gnu/packages/virtualization.scm:206 +msgid "Machine emulator and virtualizer" +msgstr "" + +#: gnu/packages/virtualization.scm:208 +msgid "" +"QEMU is a generic machine emulator and virtualizer.\n" +"\n" +"When used as a machine emulator, QEMU can run OSes and programs made for one\n" +"machine (e.g. an ARM board) on a different machine---e.g., your own PC. By\n" +"using dynamic translation, it achieves very good performance.\n" +"\n" +"When used as a virtualizer, QEMU achieves near native performances by\n" +"executing the guest code directly on the host CPU. QEMU supports\n" +"virtualization when executing under the Xen hypervisor or using\n" +"the KVM kernel module in Linux. When using KVM, QEMU can virtualize x86,\n" +"server and embedded PowerPC, and S390 guests." +msgstr "" + +#: gnu/packages/virtualization.scm:230 +msgid "Machine emulator and virtualizer (without GUI)" +msgstr "" + +#: gnu/packages/virtualization.scm:320 +msgid "Operating system information database" +msgstr "" + +#: gnu/packages/virtualization.scm:321 +msgid "" +"libosinfo is a GObject based library API for managing\n" +"information about operating systems, hypervisors and the (virtual) hardware\n" +"devices they can support. It includes a database containing device metadata\n" +"and provides APIs to match/identify optimal devices for deploying an operating\n" +"system on a hypervisor. Via GObject Introspection, the API is available in\n" +"all common programming languages. Vala bindings are also provided." +msgstr "" + +#: gnu/packages/virtualization.scm:369 +msgid "Linux container tools" +msgstr "" + +#: gnu/packages/virtualization.scm:372 +msgid "" +"LXC is a userspace interface for the Linux kernel containment features.\n" +"Through a powerful API and simple tools, it lets Linux users easily create and\n" +"manage system or application containers." +msgstr "" + +#: gnu/packages/virtualization.scm:455 +msgid "Simple API for virtualization" +msgstr "" + +#: gnu/packages/virtualization.scm:456 +msgid "" +"Libvirt is a C toolkit to interact with the virtualization\n" +"capabilities of recent versions of Linux. The library aims at providing long\n" +"term stable C API initially for the Xen paravirtualization but should be able\n" +"to integrate other virtualization mechanisms if needed." +msgstr "" + +#: gnu/packages/virtualization.scm:497 +msgid "GLib wrapper around libvirt" +msgstr "" + +#: gnu/packages/virtualization.scm:498 +msgid "" +"libvirt-glib wraps the libvirt library to provide a\n" +"high-level object-oriented API better suited for glib-based applications, via\n" +"three libraries:\n" +"\n" +"@enumerate\n" +"@item libvirt-glib - GLib main loop integration & misc helper APIs\n" +"@item libvirt-gconfig - GObjects for manipulating libvirt XML documents\n" +"@item libvirt-gobject - GObjects for managing libvirt objects\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/virtualization.scm:540 +msgid "Python bindings to libvirt" +msgstr "Pythonbindinger for libvirt" + +#: gnu/packages/virtualization.scm:541 +msgid "" +"This package provides Python bindings to the libvirt\n" +"virtualization library." +msgstr "" +"Denne pakke tilbyder Pythonbindinger til virtualiseringsbiblioteket\n" +"libvirt." + +#: gnu/packages/virtualization.scm:636 +msgid "Manage virtual machines" +msgstr "Håndter virtuelle maskiner" + +#: gnu/packages/virtualization.scm:638 +msgid "" +"The virt-manager application is a desktop user interface for managing\n" +"virtual machines through libvirt. It primarily targets KVM VMs, but also\n" +"manages Xen and LXC (Linux containers). It presents a summary view of running\n" +"domains, their live performance and resource utilization statistics." +msgstr "" + +#: gnu/packages/virtualization.scm:728 +msgid "Checkpoint and restore in user space" +msgstr "" + +#: gnu/packages/virtualization.scm:729 +msgid "" +"Using this tool, you can freeze a running application (or\n" +"part of it) and checkpoint it to a hard drive as a collection of files. You\n" +"can then use the files to restore and run the application from the point it\n" +"was frozen at. The distinctive feature of the CRIU project is that it is\n" +"mainly implemented in user space." +msgstr "" + +#: gnu/packages/virtualization.scm:754 +msgid "Backup and restore QEMU machines" +msgstr "" + +#: gnu/packages/virtualization.scm:755 +msgid "" +"qmpbackup is designed to create and restore full and\n" +"incremental backups of running QEMU virtual machines via QMP, the QEMU\n" +"Machine Protocol." +msgstr "" + +#: gnu/packages/virtualization.scm:796 +msgid "KVM Frame Relay (KVMFR) implementation" +msgstr "" + +#: gnu/packages/virtualization.scm:797 +msgid "" +"Looking Glass allows the use of a KVM (Kernel-based Virtual\n" +"Machine) configured for VGA PCI Pass-through without an attached physical\n" +"monitor, keyboard or mouse. It displays the VM's rendered contents on your main\n" +"monitor/GPU." +msgstr "" + +#: gnu/packages/virtualization.scm:852 +msgid "Open container initiative runtime" +msgstr "" + +#: gnu/packages/virtualization.scm:855 +msgid "" +"@command{runc} is a command line client for running applications\n" +"packaged according to the\n" +"@uref{https://github.com/opencontainers/runtime-spec/blob/master/spec.md, Open\n" +"Container Initiative (OCI) format} and is a compliant implementation of the\n" +"Open Container Initiative specification." +msgstr "" + +#: gnu/packages/webkit.scm:140 msgid "Web content engine for GTK+" msgstr "" -#: gnu/packages/webkit.scm:125 +#: gnu/packages/webkit.scm:142 msgid "" "WebKitGTK+ is a full-featured port of the WebKit rendering engine,\n" "suitable for projects requiring any kind of web integration, from hybrid\n" "HTML/CSS applications to full-fledged web browsers." msgstr "" -#: gnu/packages/web.scm:119 +#: gnu/packages/web.scm:142 msgid "Featureful HTTP server" msgstr "" -#: gnu/packages/web.scm:121 +#: gnu/packages/web.scm:144 msgid "" "The Apache HTTP Server Project is a collaborative software development\n" "effort aimed at creating a robust, commercial-grade, featureful, and\n" @@ -14173,76 +18325,129 @@ msgid "" "and its related documentation." msgstr "" -#: gnu/packages/web.scm:199 +#: gnu/packages/web.scm:176 +msgid "Apache HTTPD module for Python WSGI applications" +msgstr "" + +#: gnu/packages/web.scm:178 +msgid "" +"The mod_wsgi module for the Apache HTTPD Server adds support for running\n" +"applications that support the Python @acronym{WSGI, Web Server Gateway\n" +"Interface} specification." +msgstr "" + +#: gnu/packages/web.scm:265 msgid "HTTP and reverse proxy server" msgstr "" -#: gnu/packages/web.scm:201 +#: gnu/packages/web.scm:267 msgid "" "Nginx (\"engine X\") is a high-performance web and reverse proxy server\n" -"created by Igor Sysoev. It can be used both as a standalone web server\n" +"created by Igor Sysoev. It can be used both as a stand-alone web server\n" "and as a proxy to reduce the load on back-end HTTP or mail servers." msgstr "" -#: gnu/packages/web.scm:230 -msgid "Language-independent, high-performant extension to CGI" +#: gnu/packages/web.scm:312 +msgid "XSLScript with NGinx specific modifications" msgstr "" -#: gnu/packages/web.scm:231 +#: gnu/packages/web.scm:314 msgid "" -"FastCGI is a language independent, scalable extension to CGI\n" +"XSLScript is a terse notation for writing complex XSLT stylesheets.\n" +"This is modified version, specifically intended for use with the NGinx\n" +"documentation." +msgstr "" + +#: gnu/packages/web.scm:368 +msgid "Documentation for the nginx web server" +msgstr "Dokumentation for nginx-internetserveren" + +#: gnu/packages/web.scm:370 +msgid "This package provides HTML documentation for the nginx web server." +msgstr "Denne pakke tilbyder HTML-dokumentation for nginx-internetserveren." + +#: gnu/packages/web.scm:393 +msgid "Language-independent, high-performant extension to CGI" +msgstr "Sproguafhængig, højtydende udvidelse til CGI" + +#: gnu/packages/web.scm:394 +msgid "" +"FastCGI is a language-independent, scalable extension to CGI\n" "that provides high performance without the limitations of server specific\n" "APIs." msgstr "" -#: gnu/packages/web.scm:267 +#: gnu/packages/web.scm:430 msgid "Simple server for running CGI applications over FastCGI" -msgstr "" +msgstr "Simpel server til at afvikle CGI-programmer over FastCGI" -#: gnu/packages/web.scm:268 +#: gnu/packages/web.scm:431 msgid "" "Fcgiwrap is a simple server for running CGI applications\n" "over FastCGI. It hopes to provide clean CGI support to Nginx (and other web\n" "servers that may need it)." msgstr "" -#: gnu/packages/web.scm:299 +#: gnu/packages/web.scm:462 msgid "PSGI/Plack web server" msgstr "" -#: gnu/packages/web.scm:300 +#: gnu/packages/web.scm:463 msgid "" "Starman is a PSGI perl web server that has unique features\n" "such as high performance, preforking, signal support, superdaemon awareness,\n" "and UNIX socket support." msgstr "" -#: gnu/packages/web.scm:319 +#: gnu/packages/web.scm:495 +msgid "Java Web Start" +msgstr "" + +#: gnu/packages/web.scm:497 +msgid "" +"IcedTea-Web is an implementation of the @dfn{Java Network Launching\n" +"Protocol}, also known as Java Web Start. This package provides tools and\n" +"libraries for working with JNLP applets." +msgstr "" + +#: gnu/packages/web.scm:518 msgid "JSON C library" msgstr "" -#: gnu/packages/web.scm:321 +#: gnu/packages/web.scm:520 msgid "" "Jansson is a C library for encoding, decoding and manipulating JSON\n" "data." msgstr "" -#: gnu/packages/web.scm:353 +#: gnu/packages/web.scm:552 msgid "JSON implementation in C" msgstr "" -#: gnu/packages/web.scm:355 +#: gnu/packages/web.scm:554 msgid "" "JSON-C implements a reference counting object model that allows you to\n" -"easily construct JSON objects in C, output them as JSON formatted strings and\n" -"parse JSON formatted strings back into the C representation of JSON objects." +"easily construct JSON objects in C, output them as JSON-formatted strings and\n" +"parse JSON-formatted strings back into the C representation of JSON objects.\n" +"It aims to conform to RFC 7159." msgstr "" -#: gnu/packages/web.scm:438 +#: gnu/packages/web.scm:618 +msgid "Library that maps JSON data to QVariant objects" +msgstr "" + +#: gnu/packages/web.scm:619 +msgid "" +"QJson is a Qt-based library that maps JSON data to\n" +"@code{QVariant} objects. JSON arrays will be mapped to @code{QVariantList}\n" +"instances, while JSON's objects will be mapped to @code{QVariantMap}." +msgstr "" + +#: gnu/packages/web.scm:703 msgid "Hierarchical data exploration with zoomable HTML5 pie charts" msgstr "" -#: gnu/packages/web.scm:440 +#: gnu/packages/web.scm:705 msgid "" "Krona is a flexible tool for exploring the relative proportions of\n" "hierarchical data, such as metagenomic classifications, using a radial,\n" @@ -14251,42 +18456,42 @@ msgid "" "current version of any major web browser." msgstr "" -#: gnu/packages/web.scm:479 +#: gnu/packages/web.scm:738 msgid "JSON parser/generator for C++ with both SAX/DOM style API" msgstr "" -#: gnu/packages/web.scm:481 +#: gnu/packages/web.scm:740 msgid "" "RapidJSON is a fast JSON parser/generator for C++ with both SAX/DOM\n" "style API." msgstr "" -#: gnu/packages/web.scm:499 +#: gnu/packages/web.scm:758 msgid "C library for parsing JSON" msgstr "" -#: gnu/packages/web.scm:501 +#: gnu/packages/web.scm:760 msgid "" "Yet Another JSON Library (YAJL) is a small event-driven (SAX-style) JSON\n" "parser written in ANSI C and a small validating JSON generator." msgstr "" -#: gnu/packages/web.scm:531 +#: gnu/packages/web.scm:790 msgid "WebSockets library written in C" msgstr "" -#: gnu/packages/web.scm:533 +#: gnu/packages/web.scm:792 msgid "" "Libwebsockets is a library that allows C programs to establish client\n" "and server WebSockets connections---a protocol layered above HTTP that allows\n" "for efficient socket-like bidirectional reliable communication channels." msgstr "" -#: gnu/packages/web.scm:558 +#: gnu/packages/web.scm:820 msgid "C library for the Publix Suffix List" msgstr "" -#: gnu/packages/web.scm:560 +#: gnu/packages/web.scm:822 msgid "" "A \"public suffix\" is a domain name under which Internet users can\n" "directly register own names.\n" @@ -14304,21 +18509,21 @@ msgid "" "UTS#46." msgstr "" -#: gnu/packages/web.scm:605 +#: gnu/packages/web.scm:868 msgid "HTML validator and tidier" msgstr "" -#: gnu/packages/web.scm:606 +#: gnu/packages/web.scm:869 msgid "" "HTML Tidy is a command-line tool and C library that can be\n" "used to validate and fix HTML data." msgstr "" -#: gnu/packages/web.scm:642 +#: gnu/packages/web.scm:904 msgid "Light-weight HTTP/HTTPS proxy daemon" msgstr "" -#: gnu/packages/web.scm:643 +#: gnu/packages/web.scm:905 msgid "" "Tinyproxy is a light-weight HTTP/HTTPS proxy\n" "daemon. Designed from the ground up to be fast and yet small, it is an ideal\n" @@ -14327,22 +18532,34 @@ msgid "" "unavailable." msgstr "" -#: gnu/packages/web.scm:676 +#: gnu/packages/web.scm:938 msgid "Small caching web proxy" msgstr "" -#: gnu/packages/web.scm:678 +#: gnu/packages/web.scm:940 msgid "" "Polipo is a small caching web proxy (web cache, HTTP proxy, and proxy\n" "server). It was primarily designed to be used by one person or a small group\n" "of people." msgstr "" -#: gnu/packages/web.scm:703 +#: gnu/packages/web.scm:967 +msgid "WebSockets support for any application/server" +msgstr "" + +#: gnu/packages/web.scm:968 +msgid "" +"Websockify translates WebSockets traffic to normal socket\n" +"traffic. Websockify accepts the WebSockets handshake, parses it, and then\n" +"begins forwarding traffic between the client and the target in both\n" +"directions." +msgstr "" + +#: gnu/packages/web.scm:994 msgid "Caching web proxy optimized for intermittent internet links" msgstr "" -#: gnu/packages/web.scm:704 +#: gnu/packages/web.scm:995 msgid "" "WWWOFFLE is a proxy web server that is especially good for\n" "intermittent internet links. It can cache HTTP, HTTPS, FTP, and finger\n" @@ -14351,41 +18568,55 @@ msgid "" "changes, and much more." msgstr "" -#: gnu/packages/web.scm:727 +#: gnu/packages/web.scm:1020 +msgid "C library implementing the OAuth API" +msgstr "C-bibliotek der implementerer OAuth API'en" + +#: gnu/packages/web.scm:1022 +msgid "" +"liboauth is a collection of C functions implementing the OAuth API.\n" +"liboauth provides functions to escape and encode strings according to OAuth\n" +"specifications and offers high-level functionality built on top to sign\n" +"requests or verify signatures using either NSS or OpenSSL for calculating the\n" +"hash/signatures." +msgstr "" + +#: gnu/packages/web.scm:1046 msgid "YAML 1.1 parser and emitter written in C" msgstr "" -#: gnu/packages/web.scm:729 +#: gnu/packages/web.scm:1048 msgid "LibYAML is a YAML 1.1 parser and emitter written in C." msgstr "" -#: gnu/packages/web.scm:746 gnu/packages/web.scm:780 gnu/packages/web.scm:803 +#: gnu/packages/web.scm:1065 gnu/packages/web.scm:1099 +#: gnu/packages/web.scm:1122 msgid "Media stream URL parser" msgstr "" -#: gnu/packages/web.scm:747 +#: gnu/packages/web.scm:1066 msgid "" "This package contains support scripts called by libquvi to\n" "parse media stream properties." msgstr "" -#: gnu/packages/web.scm:781 +#: gnu/packages/web.scm:1100 msgid "" "libquvi is a library with a C API for parsing media stream\n" "URLs and extracting their actual media files." msgstr "" -#: gnu/packages/web.scm:804 +#: gnu/packages/web.scm:1123 msgid "" "quvi is a command-line-tool suite to extract media files\n" "from streaming URLs. It is a command-line wrapper for the libquvi library." msgstr "" -#: gnu/packages/web.scm:894 +#: gnu/packages/web.scm:1195 msgid "High-performance asynchronous HTTP client library" msgstr "" -#: gnu/packages/web.scm:896 +#: gnu/packages/web.scm:1197 msgid "" "serf is a C-based HTTP client library built upon the Apache Portable\n" "Runtime (APR) library. It multiplexes connections, running the read/write\n" @@ -14393,49 +18624,49 @@ msgid "" "minimum to provide high performance operation." msgstr "" -#: gnu/packages/web.scm:951 +#: gnu/packages/web.scm:1251 msgid "CSS pre-processor" msgstr "" -#: gnu/packages/web.scm:952 +#: gnu/packages/web.scm:1252 msgid "" "SassC is a compiler written in C for the CSS pre-processor\n" "language known as SASS." msgstr "" -#: gnu/packages/web.scm:981 +#: gnu/packages/web.scm:1281 msgid "Compile a log format string to perl-code" msgstr "" -#: gnu/packages/web.scm:982 +#: gnu/packages/web.scm:1282 msgid "" "This module provides methods to compile a log format string\n" "to perl-code, for faster generation of access_log lines." msgstr "" -#: gnu/packages/web.scm:1003 +#: gnu/packages/web.scm:1310 msgid "SASL authentication framework" msgstr "" -#: gnu/packages/web.scm:1004 +#: gnu/packages/web.scm:1311 msgid "Authen::SASL provides an SASL authentication framework." msgstr "" -#: gnu/packages/web.scm:1028 +#: gnu/packages/web.scm:1336 msgid "Sensible default Catalyst action" msgstr "" -#: gnu/packages/web.scm:1029 +#: gnu/packages/web.scm:1337 msgid "" "This Catalyst action implements a sensible default end\n" "action, which will forward to the first available view." msgstr "" -#: gnu/packages/web.scm:1060 +#: gnu/packages/web.scm:1369 msgid "Automated REST Method Dispatching" msgstr "" -#: gnu/packages/web.scm:1061 +#: gnu/packages/web.scm:1370 msgid "" "This Action handles doing automatic method dispatching for\n" "REST requests. It takes a normal Catalyst action, and changes the dispatch to\n" @@ -14444,32 +18675,32 @@ msgid "" "regular method." msgstr "" -#: gnu/packages/web.scm:1097 +#: gnu/packages/web.scm:1407 msgid "Storage class for Catalyst authentication using DBIx::Class" msgstr "" -#: gnu/packages/web.scm:1098 +#: gnu/packages/web.scm:1408 msgid "" "The Catalyst::Authentication::Store::DBIx::Class class\n" "provides access to authentication information stored in a database via\n" "DBIx::Class." msgstr "" -#: gnu/packages/web.scm:1122 +#: gnu/packages/web.scm:1434 msgid "Create only one instance of Moose component per context" msgstr "" -#: gnu/packages/web.scm:1123 +#: gnu/packages/web.scm:1435 msgid "" "Catalyst::Component::InstancePerContext returns a new\n" "instance of a component on each request." msgstr "" -#: gnu/packages/web.scm:1160 +#: gnu/packages/web.scm:1472 msgid "Catalyst Development Tools" msgstr "" -#: gnu/packages/web.scm:1161 +#: gnu/packages/web.scm:1473 msgid "" "The Catalyst-Devel distribution includes a variety of\n" "modules useful for the development of Catalyst applications, but not required\n" @@ -14479,11 +18710,11 @@ msgid "" "modules." msgstr "" -#: gnu/packages/web.scm:1190 +#: gnu/packages/web.scm:1502 msgid "Regex DispatchType for Catalyst" msgstr "" -#: gnu/packages/web.scm:1191 +#: gnu/packages/web.scm:1503 msgid "" "Dispatch type managing path-matching behaviour using\n" "regexes. Regex dispatch types have been deprecated and removed from Catalyst\n" @@ -14493,32 +18724,32 @@ msgid "" "when the dispatch type is first seen in your application." msgstr "" -#: gnu/packages/web.scm:1239 +#: gnu/packages/web.scm:1552 msgid "DBIx::Class::Schema Model Class" msgstr "" -#: gnu/packages/web.scm:1240 +#: gnu/packages/web.scm:1553 msgid "" "This is a Catalyst Model for DBIx::Class::Schema-based\n" "Models." msgstr "" -#: gnu/packages/web.scm:1263 +#: gnu/packages/web.scm:1576 msgid "Request logging from within Catalyst" msgstr "" -#: gnu/packages/web.scm:1264 +#: gnu/packages/web.scm:1577 msgid "" "This Catalyst plugin enables you to create \"access logs\"\n" "from within a Catalyst application instead of requiring a webserver to do it\n" "for you. It will work even with Catalyst debug logging turned off." msgstr "" -#: gnu/packages/web.scm:1296 +#: gnu/packages/web.scm:1611 msgid "Infrastructure plugin for the Catalyst authentication framework" msgstr "" -#: gnu/packages/web.scm:1297 +#: gnu/packages/web.scm:1612 msgid "" "The authentication plugin provides generic user support for\n" "Catalyst apps. It is the basis for both authentication (checking the user is\n" @@ -14526,52 +18757,52 @@ msgid "" "system authorises them to do)." msgstr "" -#: gnu/packages/web.scm:1327 +#: gnu/packages/web.scm:1643 msgid "Role-based authorization for Catalyst" msgstr "" -#: gnu/packages/web.scm:1328 +#: gnu/packages/web.scm:1644 msgid "" "Catalyst::Plugin::Authorization::Roles provides role-based\n" "authorization for Catalyst based on Catalyst::Plugin::Authentication." msgstr "" -#: gnu/packages/web.scm:1351 +#: gnu/packages/web.scm:1667 msgid "Captchas for Catalyst" msgstr "" -#: gnu/packages/web.scm:1352 +#: gnu/packages/web.scm:1668 msgid "" "This plugin creates and validates Captcha images for\n" "Catalyst." msgstr "" -#: gnu/packages/web.scm:1378 +#: gnu/packages/web.scm:1695 msgid "Load config files of various types" msgstr "" -#: gnu/packages/web.scm:1379 +#: gnu/packages/web.scm:1696 msgid "" "This module will attempt to load find and load configuration\n" "files of various types. Currently it supports YAML, JSON, XML, INI and Perl\n" "formats." msgstr "" -#: gnu/packages/web.scm:1410 +#: gnu/packages/web.scm:1728 msgid "Catalyst generic session plugin" msgstr "" -#: gnu/packages/web.scm:1411 +#: gnu/packages/web.scm:1729 msgid "" "This plugin links the two pieces required for session\n" "management in web applications together: the state, and the store." msgstr "" -#: gnu/packages/web.scm:1437 +#: gnu/packages/web.scm:1757 msgid "Maintain session IDs using cookies" msgstr "" -#: gnu/packages/web.scm:1438 +#: gnu/packages/web.scm:1758 msgid "" "In order for Catalyst::Plugin::Session to work, the session\n" "ID needs to be stored on the client, and the session data needs to be stored\n" @@ -14579,22 +18810,22 @@ msgid "" "cookie mechanism." msgstr "" -#: gnu/packages/web.scm:1468 +#: gnu/packages/web.scm:1788 msgid "FastMmap session storage backend" msgstr "" -#: gnu/packages/web.scm:1469 +#: gnu/packages/web.scm:1789 msgid "" "Catalyst::Plugin::Session::Store::FastMmap is a fast session\n" "storage plugin for Catalyst that uses an mmap'ed file to act as a shared\n" "memory interprocess cache. It is based on Cache::FastMmap." msgstr "" -#: gnu/packages/web.scm:1492 +#: gnu/packages/web.scm:1814 msgid "Stack trace on the Catalyst debug screen" msgstr "" -#: gnu/packages/web.scm:1493 +#: gnu/packages/web.scm:1815 msgid "" "This plugin enhances the standard Catalyst debug screen by\n" "including a stack trace of your application up to the point where the error\n" @@ -14602,11 +18833,11 @@ msgid "" "number, file name, and code context surrounding the line number." msgstr "" -#: gnu/packages/web.scm:1519 +#: gnu/packages/web.scm:1843 msgid "Simple serving of static pages" msgstr "" -#: gnu/packages/web.scm:1520 +#: gnu/packages/web.scm:1844 msgid "" "The Static::Simple plugin is designed to make serving static\n" "content in your application during development quick and easy, without\n" @@ -14617,11 +18848,11 @@ msgid "" "MIME type directly to the browser, without being processed through Catalyst." msgstr "" -#: gnu/packages/web.scm:1587 +#: gnu/packages/web.scm:1912 msgid "The Catalyst Framework Runtime" msgstr "" -#: gnu/packages/web.scm:1588 +#: gnu/packages/web.scm:1913 msgid "" "Catalyst is a modern framework for making web applications.\n" "It is designed to make it easy to manage the various tasks you need to do to\n" @@ -14629,11 +18860,11 @@ msgid "" "\"plug in\" existing Perl modules that do what you need." msgstr "" -#: gnu/packages/web.scm:1618 +#: gnu/packages/web.scm:1944 msgid "Replace request base with value passed by HTTP proxy" msgstr "" -#: gnu/packages/web.scm:1619 +#: gnu/packages/web.scm:1945 msgid "" "This module is a Moose::Role which allows you more\n" "flexibility in your application's deployment configurations when deployed\n" @@ -14641,42 +18872,42 @@ msgid "" "replaced with the contents of the X-Request-Base header." msgstr "" -#: gnu/packages/web.scm:1645 +#: gnu/packages/web.scm:1972 msgid "Download data in many formats" msgstr "" -#: gnu/packages/web.scm:1646 +#: gnu/packages/web.scm:1973 msgid "" "The purpose of this module is to provide a method for\n" "downloading data into many supportable formats. For example, downloading a\n" "table based report in a variety of formats (CSV, HTML, etc.)." msgstr "" -#: gnu/packages/web.scm:1671 +#: gnu/packages/web.scm:1999 msgid "Catalyst JSON view" msgstr "" -#: gnu/packages/web.scm:1672 +#: gnu/packages/web.scm:2000 msgid "" "Catalyst::View::JSON is a Catalyst View handler that returns\n" "stash data in JSON format." msgstr "" -#: gnu/packages/web.scm:1698 +#: gnu/packages/web.scm:2026 msgid "Template View Class" msgstr "" -#: gnu/packages/web.scm:1699 +#: gnu/packages/web.scm:2027 msgid "" "This module is a Catalyst view class for the Template\n" "Toolkit." msgstr "" -#: gnu/packages/web.scm:1728 +#: gnu/packages/web.scm:2056 msgid "Trait Loading and Resolution for Catalyst Components" msgstr "" -#: gnu/packages/web.scm:1729 +#: gnu/packages/web.scm:2057 msgid "" "Adds a \"COMPONENT\" in Catalyst::Component method to your\n" "Catalyst component base class that reads the optional \"traits\" parameter\n" @@ -14685,31 +18916,31 @@ msgid "" "MooseX::Traits::Pluggable." msgstr "" -#: gnu/packages/web.scm:1754 +#: gnu/packages/web.scm:2082 msgid "Apply roles to Catalyst classes" msgstr "" -#: gnu/packages/web.scm:1755 +#: gnu/packages/web.scm:2083 msgid "" "CatalystX::RoleApplicator applies roles to Catalyst\n" "application classes." msgstr "" -#: gnu/packages/web.scm:1781 +#: gnu/packages/web.scm:2110 msgid "Catalyst development server with Starman" msgstr "" -#: gnu/packages/web.scm:1782 +#: gnu/packages/web.scm:2111 msgid "" "This module provides a Catalyst extension to replace the\n" "development server with Starman." msgstr "" -#: gnu/packages/web.scm:1806 +#: gnu/packages/web.scm:2135 msgid "Handle Common Gateway Interface requests and responses" msgstr "" -#: gnu/packages/web.scm:1807 +#: gnu/packages/web.scm:2136 msgid "" "CGI.pm is a stable, complete and mature solution for\n" "processing and preparing HTTP requests and responses. Major features include\n" @@ -14718,52 +18949,62 @@ msgid "" "headers." msgstr "" -#: gnu/packages/web.scm:1831 +#: gnu/packages/web.scm:2164 +msgid "Persistent session data in CGI applications" +msgstr "" + +#: gnu/packages/web.scm:2166 +msgid "" +"@code{CGI::Session} provides modular session management system across\n" +"HTTP requests." +msgstr "" + +#: gnu/packages/web.scm:2187 msgid "CGI interface that is CGI.pm compliant" msgstr "" -#: gnu/packages/web.scm:1832 +#: gnu/packages/web.scm:2188 msgid "" "CGI::Simple provides a relatively lightweight drop in\n" "replacement for CGI.pm. It shares an identical OO interface to CGI.pm for\n" "parameter parsing, file upload, cookie handling and header generation." msgstr "" -#: gnu/packages/web.scm:1853 +#: gnu/packages/web.scm:2209 msgid "Build structures from CGI data" msgstr "" -#: gnu/packages/web.scm:1854 +#: gnu/packages/web.scm:2210 msgid "" "This is a module for building structured data from CGI\n" "inputs, in a manner reminiscent of how PHP does." msgstr "" -#: gnu/packages/web.scm:1877 +#: gnu/packages/web.scm:2233 msgid "Date conversion routines" msgstr "" -#: gnu/packages/web.scm:1878 +#: gnu/packages/web.scm:2234 msgid "" "This module provides functions that deal with the date\n" "formats used by the HTTP protocol." msgstr "" -#: gnu/packages/web.scm:1898 +#: gnu/packages/web.scm:2254 msgid "MD5 sums for files and urls" msgstr "" -#: gnu/packages/web.scm:1899 +#: gnu/packages/web.scm:2255 msgid "" "Digest::MD5::File is a Perl extension for getting MD5 sums\n" "for files and urls." msgstr "" -#: gnu/packages/web.scm:1917 +#: gnu/packages/web.scm:2273 msgid "Perl locale encoding determination" msgstr "" -#: gnu/packages/web.scm:1919 +#: gnu/packages/web.scm:2275 msgid "" "The POSIX locale system is used to specify both the language\n" "conventions requested by the user and the preferred character set to\n" @@ -14775,102 +19016,110 @@ msgid "" "with Encode::decode(locale => $string)." msgstr "" -#: gnu/packages/web.scm:1950 +#: gnu/packages/web.scm:2310 msgid "Syndication feed auto-discovery" msgstr "" -#: gnu/packages/web.scm:1951 +#: gnu/packages/web.scm:2311 msgid "" "@code{Feed::Find} implements feed auto-discovery for finding\n" "syndication feeds, given a URI. It will discover the following feed formats:\n" "RSS 0.91, RSS 1.0, RSS 2.0, Atom." msgstr "" -#: gnu/packages/web.scm:1972 +#: gnu/packages/web.scm:2332 msgid "Perl directory listing parser" msgstr "" -#: gnu/packages/web.scm:1974 +#: gnu/packages/web.scm:2334 msgid "" "The File::Listing module exports a single function called parse_dir(),\n" "which can be used to parse directory listings." msgstr "" -#: gnu/packages/web.scm:2006 +#: gnu/packages/web.scm:2366 msgid "Stock and mutual fund quotes" msgstr "" -#: gnu/packages/web.scm:2008 +#: gnu/packages/web.scm:2368 msgid "" "Finance::Quote gets stock quotes from various internet sources, including\n" "Yahoo! Finance, Fidelity Investments, and the Australian Stock Exchange." msgstr "" -#: gnu/packages/web.scm:2030 +#: gnu/packages/web.scm:2390 msgid "Perl extension providing access to the GSSAPIv2 library" msgstr "" -#: gnu/packages/web.scm:2031 +#: gnu/packages/web.scm:2391 msgid "" "This is a Perl extension for using GSSAPI C bindings as\n" "described in RFC 2744." msgstr "" -#: gnu/packages/web.scm:2051 +#: gnu/packages/web.scm:2411 msgid "Manipulate tables of HTML::Element" msgstr "" -#: gnu/packages/web.scm:2053 +#: gnu/packages/web.scm:2413 msgid "" "HTML::Element::Extended is a Perl extension for manipulating a table\n" "composed of HTML::Element style components." msgstr "" -#: gnu/packages/web.scm:2077 +#: gnu/packages/web.scm:2437 msgid "Perl class representing an HTML form element" msgstr "" -#: gnu/packages/web.scm:2078 +#: gnu/packages/web.scm:2438 msgid "" "Objects of the HTML::Form class represents a single HTML\n" "
      ...
      instance." msgstr "" -#: gnu/packages/web.scm:2100 +#: gnu/packages/web.scm:2468 +msgid "Perl extension for scrubbing/sanitizing html" +msgstr "" + +#: gnu/packages/web.scm:2470 +msgid "@code{HTML::Scrubber} Perl extension for scrubbing/sanitizing HTML." +msgstr "" + +#: gnu/packages/web.scm:2491 msgid "Check for HTML errors in a string or file" msgstr "Kontroller for HTML-fejl i en streng eller fil" -#: gnu/packages/web.scm:2101 +#: gnu/packages/web.scm:2492 msgid "" "HTML::Lint is a pure-Perl HTML parser and checker for\n" "syntactic legitmacy." msgstr "" -#: gnu/packages/web.scm:2122 +#: gnu/packages/web.scm:2513 msgid "Extract contents from HTML tables" msgstr "Udtræk indhold fra HTML-tabeller" -#: gnu/packages/web.scm:2124 +#: gnu/packages/web.scm:2515 msgid "" "HTML::TableExtract is a Perl module for extracting the content contained\n" "in tables within an HTML document, either as text or encoded element trees." msgstr "" -#: gnu/packages/web.scm:2149 +#: gnu/packages/web.scm:2540 msgid "Work with HTML in a DOM-like tree structure" msgstr "Arbejd med HTML i en DOM-lignende træstruktur" -#: gnu/packages/web.scm:2150 +#: gnu/packages/web.scm:2541 msgid "" "This distribution contains a suite of modules for\n" "representing, creating, and extracting information from HTML syntax trees." msgstr "" -#: gnu/packages/web.scm:2171 +#: gnu/packages/web.scm:2562 msgid "Perl HTML parser class" msgstr "" -#: gnu/packages/web.scm:2173 +#: gnu/packages/web.scm:2564 msgid "" "Objects of the HTML::Parser class will recognize markup and separate\n" "it from plain text (alias data content) in HTML documents. As different\n" @@ -14878,21 +19127,21 @@ msgid "" "are invoked." msgstr "" -#: gnu/packages/web.scm:2193 +#: gnu/packages/web.scm:2584 msgid "Perl data tables useful in parsing HTML" msgstr "" -#: gnu/packages/web.scm:2195 +#: gnu/packages/web.scm:2586 msgid "" "The HTML::Tagset module contains several data tables useful in various\n" "kinds of HTML parsing operations." msgstr "" -#: gnu/packages/web.scm:2214 +#: gnu/packages/web.scm:2605 msgid "HTML-like templates" msgstr "" -#: gnu/packages/web.scm:2216 +#: gnu/packages/web.scm:2607 msgid "" "This module attempts to make using HTML templates simple and natural.\n" "It extends standard HTML with a few new HTML-esque tags: @code{},\n" @@ -14903,72 +19152,72 @@ msgid "" "you to separate design from the data." msgstr "" -#: gnu/packages/web.scm:2244 +#: gnu/packages/web.scm:2635 msgid "HTTP Body Parser" msgstr "" -#: gnu/packages/web.scm:2245 +#: gnu/packages/web.scm:2636 msgid "" "HTTP::Body parses chunks of HTTP POST data and supports\n" "application/octet-stream, application/json, application/x-www-form-urlencoded,\n" "and multipart/form-data." msgstr "" -#: gnu/packages/web.scm:2272 +#: gnu/packages/web.scm:2663 msgid "Minimalist HTTP user agent cookie jar" msgstr "" -#: gnu/packages/web.scm:2273 +#: gnu/packages/web.scm:2664 msgid "" "This module implements a minimalist HTTP user agent cookie\n" "jar in conformance with RFC 6265 ." msgstr "" -#: gnu/packages/web.scm:2293 +#: gnu/packages/web.scm:2684 msgid "Perl HTTP cookie jars" msgstr "" -#: gnu/packages/web.scm:2295 +#: gnu/packages/web.scm:2686 msgid "" "The HTTP::Cookies class is for objects that represent a cookie jar,\n" "that is, a database of all the HTTP cookies that a given LWP::UserAgent\n" "object knows about." msgstr "" -#: gnu/packages/web.scm:2317 +#: gnu/packages/web.scm:2708 msgid "Perl simple http server class" msgstr "" -#: gnu/packages/web.scm:2319 +#: gnu/packages/web.scm:2710 msgid "" "Instances of the HTTP::Daemon class are HTTP/1.1 servers that listen\n" "on a socket for incoming requests. The HTTP::Daemon is a subclass of\n" "IO::Socket::INET, so you can perform socket operations directly on it too." msgstr "" -#: gnu/packages/web.scm:2338 +#: gnu/packages/web.scm:2729 msgid "Perl date conversion routines" msgstr "" -#: gnu/packages/web.scm:2340 +#: gnu/packages/web.scm:2731 msgid "" "The HTTP::Date module provides functions that deal with date formats\n" "used by the HTTP protocol (and then some more)." msgstr "" -#: gnu/packages/web.scm:2364 +#: gnu/packages/web.scm:2755 msgid "Perl HTTP style message" msgstr "" -#: gnu/packages/web.scm:2366 +#: gnu/packages/web.scm:2757 msgid "An HTTP::Message object contains some headers and a content body." msgstr "" -#: gnu/packages/web.scm:2385 +#: gnu/packages/web.scm:2776 msgid "Perl http content negotiation" msgstr "" -#: gnu/packages/web.scm:2387 +#: gnu/packages/web.scm:2778 msgid "" "The HTTP::Negotiate module provides a complete implementation of the\n" "HTTP content negotiation algorithm specified in\n" @@ -14978,11 +19227,11 @@ msgid "" "fields in the request." msgstr "" -#: gnu/packages/web.scm:2412 +#: gnu/packages/web.scm:2803 msgid "Parse HTTP/1.1 requests" msgstr "" -#: gnu/packages/web.scm:2413 +#: gnu/packages/web.scm:2804 msgid "" "This is an HTTP request parser. It takes chunks of text as\n" "received and returns a 'hint' as to what is required, or returns the\n" @@ -14990,74 +19239,74 @@ msgid "" "supported." msgstr "" -#: gnu/packages/web.scm:2433 +#: gnu/packages/web.scm:2826 msgid "Fast HTTP request parser" msgstr "" -#: gnu/packages/web.scm:2434 +#: gnu/packages/web.scm:2827 msgid "" "HTTP::Parser::XS is a fast, primitive HTTP request/response\n" "parser." msgstr "" -#: gnu/packages/web.scm:2455 +#: gnu/packages/web.scm:2848 msgid "Set up a CGI environment from an HTTP::Request" msgstr "" -#: gnu/packages/web.scm:2456 +#: gnu/packages/web.scm:2849 msgid "" "This module provides a convenient way to set up a CGI\n" "environment from an HTTP::Request." msgstr "" -#: gnu/packages/web.scm:2480 +#: gnu/packages/web.scm:2882 msgid "Lightweight HTTP server" msgstr "Simpel HTTP-server" -#: gnu/packages/web.scm:2481 +#: gnu/packages/web.scm:2883 msgid "" "HTTP::Server::Simple is a simple standalone HTTP daemon with\n" "no non-core module dependencies. It can be used for building a standalone\n" "http-based UI to your existing tools." msgstr "" -#: gnu/packages/web.scm:2506 +#: gnu/packages/web.scm:2908 msgid "HTTP/1.1 client" msgstr "" -#: gnu/packages/web.scm:2507 +#: gnu/packages/web.scm:2909 msgid "" "This is a very simple HTTP/1.1 client, designed for doing\n" "simple requests without the overhead of a large framework like LWP::UserAgent.\n" "It supports proxies and redirection. It also correctly resumes after EINTR." msgstr "" -#: gnu/packages/web.scm:2526 +#: gnu/packages/web.scm:2928 msgid "Perl module to open an HTML file with automatic charset detection" msgstr "" -#: gnu/packages/web.scm:2528 +#: gnu/packages/web.scm:2930 msgid "" "IO::HTML provides an easy way to open a file containing HTML while\n" "automatically determining its encoding. It uses the HTML5 encoding sniffing\n" "algorithm specified in section 8.2.2.1 of the draft standard." msgstr "" -#: gnu/packages/web.scm:2548 +#: gnu/packages/web.scm:2950 msgid "Family-neutral IP socket supporting both IPv4 and IPv6" msgstr "" -#: gnu/packages/web.scm:2549 +#: gnu/packages/web.scm:2951 msgid "" "This module provides a protocol-independent way to use IPv4\n" "and IPv6 sockets, intended as a replacement for IO::Socket::INET." msgstr "" -#: gnu/packages/web.scm:2571 +#: gnu/packages/web.scm:2973 msgid "Nearly transparent SSL encapsulation for IO::Socket::INET" msgstr "" -#: gnu/packages/web.scm:2573 +#: gnu/packages/web.scm:2975 msgid "" "IO::Socket::SSL makes using SSL/TLS much easier by wrapping the\n" "necessary functionality into the familiar IO::Socket interface and providing\n" @@ -15066,11 +19315,11 @@ msgid "" "select or poll." msgstr "" -#: gnu/packages/web.scm:2607 +#: gnu/packages/web.scm:3009 msgid "Perl modules for the WWW" msgstr "Perlmoduler for www" -#: gnu/packages/web.scm:2609 +#: gnu/packages/web.scm:3011 msgid "" "The libwww-perl collection is a set of Perl modules which provides a\n" "simple and consistent application programming interface to the\n" @@ -15080,11 +19329,25 @@ msgid "" "help you implement simple HTTP servers." msgstr "" -#: gnu/packages/web.scm:2631 +#: gnu/packages/web.scm:3039 +msgid "Checks whether your process has access to the web" +msgstr "" + +#: gnu/packages/web.scm:3040 +msgid "" +"This module attempts to answer, as accurately as it can, one\n" +"of the nastiest technical questions there is: am I on the internet?\n" +"\n" +"A host of networking and security issues make this problem very difficult.\n" +"There are firewalls, proxies (both well behaved and badly behaved). We might\n" +"not have DNS. We might not have a network card at all!" +msgstr "" + +#: gnu/packages/web.scm:3062 msgid "Perl module to guess the media type for a file or a URL" msgstr "" -#: gnu/packages/web.scm:2633 +#: gnu/packages/web.scm:3064 #, scheme-format msgid "" "The LWP::MediaTypes module provides functions for handling media (also\n" @@ -15093,21 +19356,21 @@ msgid "" "exists it is used instead." msgstr "" -#: gnu/packages/web.scm:2659 +#: gnu/packages/web.scm:3090 msgid "HTTPS support for LWP::UserAgent" msgstr "" -#: gnu/packages/web.scm:2660 +#: gnu/packages/web.scm:3091 msgid "" "The LWP::Protocol::https module provides support for using\n" "https schemed URLs with LWP." msgstr "" -#: gnu/packages/web.scm:2680 +#: gnu/packages/web.scm:3111 msgid "Virtual browser that retries errors" msgstr "" -#: gnu/packages/web.scm:2681 +#: gnu/packages/web.scm:3112 msgid "" "LWP::UserAgent::Determined works just like LWP::UserAgent,\n" "except that when you use it to get a web page but run into a\n" @@ -15115,19 +19378,19 @@ msgid "" "and retry a few times." msgstr "" -#: gnu/packages/web.scm:2726 +#: gnu/packages/web.scm:3157 msgid "Perl interface to Amazon S3" msgstr "" -#: gnu/packages/web.scm:2727 +#: gnu/packages/web.scm:3158 msgid "This module provides a Perlish interface to Amazon S3." msgstr "" -#: gnu/packages/web.scm:2747 +#: gnu/packages/web.scm:3178 msgid "Perl low-level HTTP connection (client)" msgstr "" -#: gnu/packages/web.scm:2749 +#: gnu/packages/web.scm:3180 msgid "" "The Net::HTTP class is a low-level HTTP client. An instance of the\n" "Net::HTTP class represents a connection to an HTTP server. The HTTP protocol\n" @@ -15135,11 +19398,11 @@ msgid "" "HTTP/1.1." msgstr "" -#: gnu/packages/web.scm:2769 +#: gnu/packages/web.scm:3200 msgid "Extensible Perl server engine" msgstr "" -#: gnu/packages/web.scm:2770 +#: gnu/packages/web.scm:3201 msgid "" "Net::Server is an extensible, generic Perl server engine.\n" "It attempts to be a generic server as in Net::Daemon and NetServer::Generic.\n" @@ -15153,19 +19416,19 @@ msgid "" "or to multiple server ports." msgstr "" -#: gnu/packages/web.scm:2798 +#: gnu/packages/web.scm:3229 msgid "SSL support for Net::SMTP" msgstr "SSL-understøttelse for Net::SMTP" -#: gnu/packages/web.scm:2799 +#: gnu/packages/web.scm:3230 msgid "SSL support for Net::SMTP." msgstr "SSL-understøttelse for Net::SMTP." -#: gnu/packages/web.scm:2833 +#: gnu/packages/web.scm:3264 msgid "Perl Superglue for Web frameworks and servers (PSGI toolkit)" msgstr "" -#: gnu/packages/web.scm:2834 +#: gnu/packages/web.scm:3265 msgid "" "Plack is a set of tools for using the PSGI stack. It\n" "contains middleware components, a reference server, and utilities for Web\n" @@ -15173,21 +19436,21 @@ msgid "" "WSGI." msgstr "" -#: gnu/packages/web.scm:2860 +#: gnu/packages/web.scm:3291 msgid "Plack::Middleware which sets body for redirect response" msgstr "" -#: gnu/packages/web.scm:2861 +#: gnu/packages/web.scm:3292 msgid "" "This module sets the body in redirect response, if it's not\n" "already set." msgstr "" -#: gnu/packages/web.scm:2884 +#: gnu/packages/web.scm:3315 msgid "Override REST methods to Plack apps via POST" msgstr "" -#: gnu/packages/web.scm:2885 +#: gnu/packages/web.scm:3316 msgid "" "This middleware allows for POST requests that pretend to be\n" "something else: by adding either a header named X-HTTP-Method-Override to the\n" @@ -15195,72 +19458,72 @@ msgid "" "can say what method it actually meant." msgstr "" -#: gnu/packages/web.scm:2909 +#: gnu/packages/web.scm:3340 msgid "Plack::Middleware which removes body for HTTP response" msgstr "" -#: gnu/packages/web.scm:2910 +#: gnu/packages/web.scm:3341 msgid "" "This module removes the body in an HTTP response if it's not\n" "required." msgstr "" -#: gnu/packages/web.scm:2931 +#: gnu/packages/web.scm:3364 msgid "Supports app to run as a reverse proxy backend" msgstr "" -#: gnu/packages/web.scm:2932 +#: gnu/packages/web.scm:3365 msgid "" "Plack::Middleware::ReverseProxy resets some HTTP headers,\n" "which are changed by reverse-proxy. You can specify the reverse proxy address\n" "and stop fake requests using 'enable_if' directive in your app.psgi." msgstr "" -#: gnu/packages/web.scm:2953 +#: gnu/packages/web.scm:3386 msgid "Run HTTP tests on external live servers" msgstr "" -#: gnu/packages/web.scm:2954 +#: gnu/packages/web.scm:3387 msgid "" "This module allows your to run your Plack::Test tests\n" "against an external server instead of just against a local application through\n" "either mocked HTTP or a locally spawned server." msgstr "" -#: gnu/packages/web.scm:2976 +#: gnu/packages/web.scm:3409 msgid "Testing TCP programs" msgstr "Testning af TCP-programmer" -#: gnu/packages/web.scm:2977 +#: gnu/packages/web.scm:3410 msgid "Test::TCP is test utilities for TCP/IP programs." msgstr "Test::TCP er testredskaber for TCP/IP-programmer." -#: gnu/packages/web.scm:3005 +#: gnu/packages/web.scm:3440 msgid "Testing-specific WWW::Mechanize subclass" msgstr "" -#: gnu/packages/web.scm:3006 +#: gnu/packages/web.scm:3441 msgid "" "Test::WWW::Mechanize is a subclass of the Perl module\n" "WWW::Mechanize that incorporates features for web application testing." msgstr "" -#: gnu/packages/web.scm:3039 +#: gnu/packages/web.scm:3475 msgid "Test::WWW::Mechanize for Catalyst" msgstr "Test::WWW::Mechanize for Catalyst" -#: gnu/packages/web.scm:3040 +#: gnu/packages/web.scm:3476 msgid "" "The Test::WWW::Mechanize::Catalyst module meshes the\n" "Test::WWW:Mechanize module and the Catalyst web application framework to allow\n" "testing of Catalyst applications without needing to start up a web server." msgstr "" -#: gnu/packages/web.scm:3064 +#: gnu/packages/web.scm:3500 msgid "Test PSGI programs using WWW::Mechanize" msgstr "" -#: gnu/packages/web.scm:3065 +#: gnu/packages/web.scm:3501 msgid "" "PSGI is a specification to decouple web server environments\n" "from web application framework code. Test::WWW::Mechanize is a subclass of\n" @@ -15269,33 +19532,33 @@ msgid "" "applications." msgstr "" -#: gnu/packages/web.scm:3085 +#: gnu/packages/web.scm:3524 msgid "Perl Uniform Resource Identifiers (absolute and relative)" msgstr "" -#: gnu/packages/web.scm:3087 +#: gnu/packages/web.scm:3526 msgid "" "The URI module implements the URI class. Objects of this class\n" "represent \"Uniform Resource Identifier references\" as specified in RFC 2396\n" "and updated by RFC 2732." msgstr "" -#: gnu/packages/web.scm:3111 +#: gnu/packages/web.scm:3550 msgid "Smart URI fetching/caching" msgstr "" -#: gnu/packages/web.scm:3112 +#: gnu/packages/web.scm:3551 msgid "" "@code{URI::Fetch} is a smart client for fetching HTTP pages,\n" "notably syndication feeds (RSS, Atom, and others), in an intelligent, bandwidth-\n" "and time-saving way." msgstr "" -#: gnu/packages/web.scm:3135 +#: gnu/packages/web.scm:3574 msgid "Find URIs in arbitrary text" msgstr "" -#: gnu/packages/web.scm:3136 +#: gnu/packages/web.scm:3575 msgid "" "This module finds URIs and URLs (according to what URI.pm\n" "considers a URI) in plain text. It only finds URIs which include a\n" @@ -15303,11 +19566,11 @@ msgid "" "URI::Find::Schemeless. For a command-line interface, urifind is provided." msgstr "" -#: gnu/packages/web.scm:3158 +#: gnu/packages/web.scm:3597 msgid "WebSocket support for URI package" msgstr "" -#: gnu/packages/web.scm:3159 +#: gnu/packages/web.scm:3598 msgid "" "With this module, the URI package provides the same set of\n" "methods for WebSocket URIs as it does for HTTP URIs." @@ -15315,51 +19578,51 @@ msgstr "" "Med dette modul tilbyder URI-pakken det samme sæt af\n" "metoder for WebSocket URI'er som den gør for HTTP URI'er." -#: gnu/packages/web.scm:3182 +#: gnu/packages/web.scm:3622 msgid "Object for handling URI templates" msgstr "Objekt til håndtering af URI-skabeloner" -#: gnu/packages/web.scm:3183 +#: gnu/packages/web.scm:3623 msgid "" "This perl module provides a wrapper around URI templates as described in\n" "RFC 6570." msgstr "" -#: gnu/packages/web.scm:3204 +#: gnu/packages/web.scm:3655 msgid "Perl extension interface for libcurl" msgstr "Perludvidelsesgrænseflade for libcurl" -#: gnu/packages/web.scm:3206 +#: gnu/packages/web.scm:3657 msgid "" "This is a Perl extension interface for the libcurl file downloading\n" "library." msgstr "" -#: gnu/packages/web.scm:3235 +#: gnu/packages/web.scm:3691 msgid "Web browsing in a Perl object" msgstr "" -#: gnu/packages/web.scm:3236 +#: gnu/packages/web.scm:3692 msgid "" "WWW::Mechanize is a Perl module for stateful programmatic\n" "web browsing, used for automating interaction with websites." msgstr "" -#: gnu/packages/web.scm:3262 +#: gnu/packages/web.scm:3728 msgid "Search A9 OpenSearch compatible engines" msgstr "" -#: gnu/packages/web.scm:3264 +#: gnu/packages/web.scm:3730 msgid "" "@code{WWW::OpenSearch} is a module to search @url{A9's OpenSearch,\n" "http://opensearch.a9.com} compatible search engines." msgstr "" -#: gnu/packages/web.scm:3284 +#: gnu/packages/web.scm:3750 msgid "Perl database of robots.txt-derived permissions" msgstr "" -#: gnu/packages/web.scm:3286 +#: gnu/packages/web.scm:3752 msgid "" "The WWW::RobotRules module parses /robots.txt files as specified in\n" "\"A Standard for Robot Exclusion\", at\n" @@ -15368,21 +19631,21 @@ msgid "" "their web site." msgstr "" -#: gnu/packages/web.scm:3309 +#: gnu/packages/web.scm:3775 msgid "Parse feeds in Python" msgstr "" -#: gnu/packages/web.scm:3311 +#: gnu/packages/web.scm:3777 msgid "" "Universal feed parser which handles RSS 0.9x, RSS 1.0, RSS 2.0,\n" "CDF, Atom 0.3, and Atom 1.0 feeds." msgstr "" -#: gnu/packages/web.scm:3332 +#: gnu/packages/web.scm:3802 msgid "HTTP and WebSocket server library for R" msgstr "" -#: gnu/packages/web.scm:3334 +#: gnu/packages/web.scm:3804 msgid "" "The httpuv package provides low-level socket and protocol support for\n" "handling HTTP and WebSocket requests directly from within R. It is primarily\n" @@ -15390,11 +19653,11 @@ msgid "" "particularly easy to create complete web applications using httpuv alone." msgstr "" -#: gnu/packages/web.scm:3355 +#: gnu/packages/web.scm:3825 msgid "Robust, high performance JSON parser and generator for R" msgstr "" -#: gnu/packages/web.scm:3357 +#: gnu/packages/web.scm:3827 msgid "" "The jsonlite package provides a fast JSON parser and generator optimized\n" "for statistical data and the web. It offers flexible, robust, high\n" @@ -15406,41 +19669,41 @@ msgid "" "in systems and applications." msgstr "" -#: gnu/packages/web.scm:3385 +#: gnu/packages/web.scm:3856 msgid "Simple HTTP server to serve static files or dynamic documents" msgstr "" -#: gnu/packages/web.scm:3387 +#: gnu/packages/web.scm:3858 msgid "" "Servr provides an HTTP server in R to serve static files, or dynamic\n" "documents that can be converted to HTML files (e.g., R Markdown) under a given\n" "directory." msgstr "" -#: gnu/packages/web.scm:3421 +#: gnu/packages/web.scm:3892 msgid "R tools for HTML" msgstr "R-værktøjer for HTML" -#: gnu/packages/web.scm:3423 +#: gnu/packages/web.scm:3894 msgid "This package provides tools for HTML generation and output in R." msgstr "Denne pakke tilbyder værktøjer for HTML-oprettelse og uddata i R." -#: gnu/packages/web.scm:3442 +#: gnu/packages/web.scm:3913 msgid "HTML Widgets for R" msgstr "HTML-kontroller for R" -#: gnu/packages/web.scm:3444 +#: gnu/packages/web.scm:3915 msgid "" "HTML widgets is a framework for creating HTML widgets that render in\n" "various contexts including the R console, R Markdown documents, and Shiny web\n" "applications." msgstr "" -#: gnu/packages/web.scm:3469 +#: gnu/packages/web.scm:3942 msgid "Advanced tables for Markdown/HTML" msgstr "" -#: gnu/packages/web.scm:3471 +#: gnu/packages/web.scm:3944 msgid "" "This package provides functions to build tables with advanced layout\n" "elements such as row spanners, column spanners, table spanners, zebra\n" @@ -15451,11 +19714,11 @@ msgid "" "LaTeX." msgstr "" -#: gnu/packages/web.scm:3508 +#: gnu/packages/web.scm:3981 msgid "HTTP client for R" msgstr "HTTP-klient for R" -#: gnu/packages/web.scm:3510 +#: gnu/packages/web.scm:3983 msgid "" "The @code{curl()} and @code{curl_download()} functions provide highly\n" "configurable drop-in replacements for base @code{url()} and\n" @@ -15466,31 +19729,31 @@ msgid "" "callback or connection interfaces." msgstr "" -#: gnu/packages/web.scm:3532 +#: gnu/packages/web.scm:4005 msgid "Output R objects in HTML format" msgstr "" -#: gnu/packages/web.scm:3534 +#: gnu/packages/web.scm:4007 msgid "" "This package provides easy-to-use and versatile functions to output R\n" "objects in HTML format." msgstr "" -#: gnu/packages/web.scm:3551 +#: gnu/packages/web.scm:4024 msgid "JSON library for R" msgstr "" -#: gnu/packages/web.scm:3553 +#: gnu/packages/web.scm:4026 msgid "" "This package provides functions to convert R objects into JSON objects\n" "and vice-versa." msgstr "" -#: gnu/packages/web.scm:3582 +#: gnu/packages/web.scm:4055 msgid "HTML5 parsing library" msgstr "HTML5-fortolkningsbibliotek" -#: gnu/packages/web.scm:3584 +#: gnu/packages/web.scm:4057 msgid "" "Gumbo is an implementation of the HTML5 parsing algorithm implemented as\n" "a pure C99 library." @@ -15498,22 +19761,22 @@ msgstr "" "Gumbo er en implementering af HTML5-fortolkningsalgoritmen implenteret\n" "som et rent C99-bibliotek." -#: gnu/packages/web.scm:3655 +#: gnu/packages/web.scm:4128 msgid "Application container server" msgstr "" -#: gnu/packages/web.scm:3657 +#: gnu/packages/web.scm:4130 msgid "" "uWSGI presents a complete stack for networked/clustered web applications,\n" "implementing message/object passing, caching, RPC and process management.\n" "It uses the uwsgi protocol for all the networking/interprocess communications." msgstr "" -#: gnu/packages/web.scm:3687 +#: gnu/packages/web.scm:4160 msgid "Command-line JSON processor" msgstr "" -#: gnu/packages/web.scm:3688 +#: gnu/packages/web.scm:4161 msgid "" "jq is like sed for JSON data – you can use it to slice and\n" "filter and map and transform structured data with the same ease that sed, awk,\n" @@ -15523,95 +19786,106 @@ msgid "" "you'd expect." msgstr "" -#: gnu/packages/web.scm:3727 +#: gnu/packages/web.scm:4200 msgid "Library for mocking web service APIs which use HTTP or HTTPS" msgstr "" -#: gnu/packages/web.scm:3729 +#: gnu/packages/web.scm:4202 msgid "" "Uhttpmock is a project for mocking web service APIs which use HTTP or\n" "HTTPS. It provides a library, libuhttpmock, which implements recording and\n" "playback of HTTP request/response traces." msgstr "" -#: gnu/packages/web.scm:3764 +#: gnu/packages/web.scm:4237 msgid "Single file web server" msgstr "" -#: gnu/packages/web.scm:3765 +#: gnu/packages/web.scm:4238 msgid "" "Woof (Web Offer One File) is a small simple web server that\n" "can easily be invoked on a single file. Your partner can access the file with\n" "tools they trust (e.g. wget)." msgstr "" -#: gnu/packages/web.scm:3791 +#: gnu/packages/web.scm:4264 msgid "Build system for the Netsurf project" msgstr "" -#: gnu/packages/web.scm:3793 +#: gnu/packages/web.scm:4266 msgid "" "This package provides the shared build system for Netsurf project\n" "libraries." msgstr "" -#: gnu/packages/web.scm:3828 +#: gnu/packages/web.scm:4301 msgid "Parser building library" msgstr "Fortolkerkompileringsbibliotek" -#: gnu/packages/web.scm:3830 +#: gnu/packages/web.scm:4303 msgid "" "LibParserUtils is a library for building efficient parsers, written in\n" "C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:3858 +#: gnu/packages/web.scm:4331 msgid "HTML5 compliant parsing library" msgstr "HTML5-overholdnede fortolkningsbibliotek" -#: gnu/packages/web.scm:3860 +#: gnu/packages/web.scm:4333 msgid "" "Hubbub is an HTML5 compliant parsing library, written in C, which can\n" "parse both valid and invalid web content. It is developed as part of the\n" "NetSurf project." msgstr "" -#: gnu/packages/web.scm:3884 +#: gnu/packages/web.scm:4408 +msgid "Wiki compiler, capable of generating HTML" +msgstr "" + +#: gnu/packages/web.scm:4410 +msgid "" +"Ikiwiki is a wiki compiler, capable of generating a static set of web\n" +"pages, but also incorporating dynamic features like a web based editor and\n" +"commenting." +msgstr "" + +#: gnu/packages/web.scm:4434 msgid "String internment library" msgstr "" -#: gnu/packages/web.scm:3886 +#: gnu/packages/web.scm:4436 msgid "" "LibWapcaplet provides a reference counted string internment system\n" "designed to store small strings and allow rapid comparison of them. It is\n" "developed as part of the Netsurf project." msgstr "" -#: gnu/packages/web.scm:3913 +#: gnu/packages/web.scm:4463 msgid "CSS parser and selection library" msgstr "CSS-fortolker- og markeringsbibliotek" -#: gnu/packages/web.scm:3915 +#: gnu/packages/web.scm:4465 msgid "" "LibCSS is a CSS (Cascading Style Sheet) parser and selection engine,\n" "written in C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:3949 +#: gnu/packages/web.scm:4499 msgid "Implementation of the W3C DOM" msgstr "Implementering af W3C DOM" -#: gnu/packages/web.scm:3951 +#: gnu/packages/web.scm:4501 msgid "" "LibDOM is an implementation of the W3C DOM, written in C. It is\n" "developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:3978 +#: gnu/packages/web.scm:4528 msgid "Library for parsing SVG files" msgstr "Bibliotek til at håndtere SVG-filer" -#: gnu/packages/web.scm:3980 +#: gnu/packages/web.scm:4530 msgid "" "Libsvgtiny takes some SVG as input and returns a list of paths and texts\n" "which can be rendered easily, as defined in\n" @@ -15619,94 +19893,94 @@ msgid "" "project." msgstr "" -#: gnu/packages/web.scm:4003 +#: gnu/packages/web.scm:4553 msgid "Decoding library for BMP and ICO files" msgstr "Afkodningsbibliotek for BMP- og ICO-filer" -#: gnu/packages/web.scm:4005 +#: gnu/packages/web.scm:4555 msgid "" "Libnsbmp is a decoding library for BMP and ICO image file formats,\n" "written in C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4026 +#: gnu/packages/web.scm:4576 msgid "Decoding library for GIF files" msgstr "Afkodningsbibliotek for GIF-filer" -#: gnu/packages/web.scm:4028 +#: gnu/packages/web.scm:4578 msgid "" "Libnsgif is a decoding library for the GIF image file format, written in\n" "C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4049 +#: gnu/packages/web.scm:4599 msgid "Utility library for NetSurf" msgstr "Redskabsbibliotek for NetSurf" -#: gnu/packages/web.scm:4051 +#: gnu/packages/web.scm:4601 msgid "" "Libnsutils provides a small number of useful utility routines. It is\n" "developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4072 +#: gnu/packages/web.scm:4622 msgid "Library to generate a static Public Suffix List" msgstr "Bibliotek til at oprette en statisk Public Suffix-liste" -#: gnu/packages/web.scm:4074 +#: gnu/packages/web.scm:4624 msgid "" "Libnspsl is a library to generate a static code representation of the\n" "Public Suffix List. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4100 +#: gnu/packages/web.scm:4650 msgid "Generate JavaScript to DOM bindings" msgstr "" -#: gnu/packages/web.scm:4102 +#: gnu/packages/web.scm:4652 msgid "" "@code{nsgenbind} is a tool to generate JavaScript to DOM bindings from\n" "w3c webidl files and a binding configuration file." msgstr "" -#: gnu/packages/web.scm:4213 +#: gnu/packages/web.scm:4763 msgid "Web browser" msgstr "Internetbrowser" -#: gnu/packages/web.scm:4215 +#: gnu/packages/web.scm:4765 msgid "" "NetSurf is a lightweight web browser that has its own layout and\n" "rendering engine entirely written from scratch. It is small and capable of\n" "handling many of the web standards in use today." msgstr "" -#: gnu/packages/web.scm:4237 +#: gnu/packages/web.scm:4805 msgid "Unix command line interface to the www" msgstr "Unix-kommandolinjegrænseflade til www" -#: gnu/packages/web.scm:4238 +#: gnu/packages/web.scm:4806 msgid "" "Surfraw (Shell Users' Revolutionary Front Rage Against the Web)\n" "provides a unix command line interface to a variety of popular www search engines\n" "and similar services." msgstr "" -#: gnu/packages/web.scm:4269 +#: gnu/packages/web.scm:4837 msgid "Simple static web server" msgstr "Simpel statisk internetserver" -#: gnu/packages/web.scm:4270 +#: gnu/packages/web.scm:4838 msgid "" "darkhttpd is a simple static web server. It is\n" "standalone and does not need inetd or ucspi-tcp. It does not need any\n" "config files---you only have to specify the www root." msgstr "" -#: gnu/packages/web.scm:4300 +#: gnu/packages/web.scm:4868 msgid "Analyze Web server logs in real time" msgstr "" -#: gnu/packages/web.scm:4302 +#: gnu/packages/web.scm:4870 msgid "" "GoAccess is a real-time web log analyzer and interactive viewer that\n" "runs in a terminal or through your browser. It provides fast and valuable\n" @@ -15714,11 +19988,11 @@ msgid "" "on the fly." msgstr "" -#: gnu/packages/web.scm:4337 +#: gnu/packages/web.scm:4905 msgid "Tunnel data connections through HTTP requests" msgstr "" -#: gnu/packages/web.scm:4338 +#: gnu/packages/web.scm:4906 msgid "" "httptunnel creates a bidirectional virtual data connection\n" "tunnelled through HTTP (HyperText Transfer Protocol) requests. This can be\n" @@ -15727,11 +20001,11 @@ msgid "" "tools like SSH (Secure Shell) to reach the outside world." msgstr "" -#: gnu/packages/web.scm:4363 +#: gnu/packages/web.scm:4931 msgid "TLS proxy for clients or servers" msgstr "" -#: gnu/packages/web.scm:4364 +#: gnu/packages/web.scm:4932 msgid "" "Stunnel is a proxy designed to add TLS encryption\n" "functionality to existing clients and servers without any changes in the\n" @@ -15740,11 +20014,11 @@ msgid "" "deployments." msgstr "" -#: gnu/packages/web.scm:4388 +#: gnu/packages/web.scm:4959 msgid "Internet services daemon" msgstr "" -#: gnu/packages/web.scm:4389 +#: gnu/packages/web.scm:4960 msgid "" "@code{xinetd}, a more secure replacement for @code{inetd},\n" "listens for incoming requests over a network and launches the appropriate\n" @@ -15753,11 +20027,11 @@ msgid "" "used to start services with both privileged and non-privileged port numbers." msgstr "" -#: gnu/packages/web.scm:4433 +#: gnu/packages/web.scm:5004 msgid "HTML Tidy with HTML5 support" msgstr "" -#: gnu/packages/web.scm:4435 +#: gnu/packages/web.scm:5006 msgid "" "Tidy is a console application which corrects and cleans up\n" "HTML and XML documents by fixing markup errors and upgrading\n" @@ -15768,22 +20042,22 @@ msgid "" "functions of Tidy." msgstr "" -#: gnu/packages/web.scm:4491 +#: gnu/packages/web.scm:5062 msgid "Webserver with focus on security" msgstr "" -#: gnu/packages/web.scm:4493 +#: gnu/packages/web.scm:5064 msgid "" "Hiawatha has been written with security in mind.\n" "Features include the ability to stop SQL injections, XSS and CSRF attacks and\n" "exploit attempts." msgstr "" -#: gnu/packages/web.scm:4517 +#: gnu/packages/web.scm:5088 msgid "HTTP request and response service" msgstr "" -#: gnu/packages/web.scm:4518 +#: gnu/packages/web.scm:5089 msgid "" "Testing an HTTP Library can become difficult sometimes.\n" "@code{RequestBin} is fantastic for testing POST requests, but doesn't let you control the\n" @@ -15791,22 +20065,367 @@ msgid "" "JSON-encoded." msgstr "" -#: gnu/packages/web.scm:4546 +#: gnu/packages/web.scm:5117 msgid "Test your HTTP library against a local copy of httpbin" msgstr "" -#: gnu/packages/web.scm:4548 +#: gnu/packages/web.scm:5119 msgid "" "@code{Pytest-httpbin} creates a @code{pytest} fixture that is dependency-injected\n" "into your tests. It automatically starts up a HTTP server in a separate thread running\n" "@code{httpbin} and provides your test with the URL in the fixture." msgstr "" -#: gnu/packages/wordnet.scm:86 +#: gnu/packages/web.scm:5150 +msgid "HTTP request/response parser for C" +msgstr "" + +#: gnu/packages/web.scm:5151 +msgid "" +"This is a parser for HTTP messages written in C. It parses\n" +"both requests and responses. The parser is designed to be used in\n" +"high-performance HTTP applications. It does not make any syscalls nor\n" +"allocations, it does not buffer data, it can be interrupted at anytime.\n" +"Depending on your architecture, it only requires about 40 bytes of data per\n" +"message stream (in a web server that is per connection)." +msgstr "" + +#: gnu/packages/web.scm:5203 +msgid "HTTP client mock for Python" +msgstr "HTTP-klientmock for Python" + +#: gnu/packages/web.scm:5204 +msgid "" +"@code{httpretty} is a helper for faking web requests,\n" +"inspired by Ruby's @code{fakeweb}." +msgstr "" + +#: gnu/packages/web.scm:5222 +msgid "Output JSON from a shell" +msgstr "" + +#: gnu/packages/web.scm:5223 +msgid "" +"jo is a command-line utility to create JSON objects or\n" +"arrays. It creates a JSON string on stdout from words provided as\n" +"command-line arguments or read from stdin." +msgstr "" + +#: gnu/packages/web.scm:5271 +msgid "Command-line interface to archive.org" +msgstr "Kommandolinjegrænseflade til archive.org" + +#: gnu/packages/web.scm:5272 +msgid "" +"@code{ia} is a command-line tool for using\n" +"@url{archive.org} from the command-line. It also emplements the\n" +"internetarchive python module for programatic access to archive.org." +msgstr "" + +#: gnu/packages/web.scm:5327 +msgid "Search code snippets on @url{https://commandlinefu.com}" +msgstr "" + +#: gnu/packages/web.scm:5328 +msgid "" +"@code{clf} is a command line tool for searching code\n" +"snippets on @url{https://commandlinefu.com}." +msgstr "" + +#: gnu/packages/web.scm:5430 +msgid "Easy interactive web applications with R" +msgstr "" + +#: gnu/packages/web.scm:5432 +msgid "" +"Makes it incredibly easy to build interactive web applications\n" +"with R. Automatic \"reactive\" binding between inputs and outputs and\n" +"extensive prebuilt widgets make it possible to build beautiful,\n" +"responsive, and powerful applications with minimal effort." +msgstr "" + +#: gnu/packages/web.scm:5471 +msgid "Create dashboards with shiny" +msgstr "" + +#: gnu/packages/web.scm:5472 +msgid "" +"This package provides an extension to the Shiny web\n" +"application framework for R, making it easy to create attractive dashboards." +msgstr "" + +#: gnu/packages/web.scm:5499 +msgid "Inter-widget interactivity for HTML widgets" +msgstr "" + +#: gnu/packages/web.scm:5501 +msgid "" +"This package provides building blocks for allowing HTML widgets to\n" +"communicate with each other, with Shiny or without (i.e. static @code{.html}\n" +"files). It currently supports linked brushing and filtering." +msgstr "" + +#: gnu/packages/web.scm:5521 +msgid "Web server interface for R" +msgstr "Internetservergrænseflade for R" + +#: gnu/packages/web.scm:5523 +msgid "" +"This package contains the Rook specification and convenience software\n" +"for building and running Rook applications. A Rook application is an R\n" +"reference class object that implements a @code{call} method or an R closure\n" +"that takes exactly one argument, an environment, and returns a list with three\n" +"named elements: the @code{status}, the @code{headers}, and the @code{body}." +msgstr "" + +#: gnu/packages/web.scm:5563 +msgid "Generate Atom feeds for social networking websites" +msgstr "" + +#: gnu/packages/web.scm:5564 +msgid "" +"rss-bridge generates Atom feeds for social networking\n" +"websites lacking feeds. Supported websites include Facebook, Twitter,\n" +"Instagram and YouTube." +msgstr "" + +#: gnu/packages/web.scm:5596 +msgid "Check websites for broken links" +msgstr "Kontroller hjemmesider for afbrudte henvisninger" + +#: gnu/packages/web.scm:5597 +msgid "" +"LinkChecker is a website validator. It checks for broken\n" +"links in websites. It is recursive and multithreaded providing output in\n" +"colored or normal text, HTML, SQL, CSV, XML or as a sitemap graph. It\n" +"supports checking HTTP/1.1, HTTPS, FTP, mailto, news, nntp, telnet and local\n" +"file links." +msgstr "" + +#: gnu/packages/web.scm:5638 +msgid "Command-line WebDAV client" +msgstr "WebDAV-klient for kommandolinjen" + +#: gnu/packages/web.scm:5640 +msgid "" +"Cadaver is a command-line WebDAV client for Unix. It supports\n" +"file upload, download, on-screen display, namespace operations (move/copy),\n" +"collection creation and deletion, and locking operations." +msgstr "" + +#: gnu/packages/web.scm:5658 +msgid "Universal Binary JSON encoder/decoder" +msgstr "" + +#: gnu/packages/web.scm:5660 +msgid "" +"Py-ubjson is a Python module providing an Universal Binary JSON\n" +"encoder/decoder based on the draft-12 specification for UBJSON." +msgstr "" + +#: gnu/packages/web.scm:5708 +msgid "" +"Java Servlet, JavaServer Pages, Java Expression Language and Java\n" +"WebSocket" +msgstr "" + +#: gnu/packages/web.scm:5710 +msgid "" +"Apache Tomcat is a free implementation of the Java\n" +"Servlet, JavaServer Pages, Java Expression Language and Java WebSocket\n" +"technologies." +msgstr "" + +#: gnu/packages/web.scm:5760 +msgid "Helper classes for jetty tests" +msgstr "" + +#: gnu/packages/web.scm:5761 +msgid "" +"This packages contains helper classes for testing the Jetty\n" +"Web Server." +msgstr "" + +#: gnu/packages/web.scm:5823 +msgid "Utility classes for Jetty" +msgstr "Redskabsklasser for Jetty" + +#: gnu/packages/web.scm:5824 +msgid "" +"The Jetty Web Server provides an HTTP server and Servlet\n" +"container capable of serving static and dynamic content either from a standalone\n" +"or embedded instantiation. This package provides utility classes." +msgstr "" + +#: gnu/packages/web.scm:5895 +msgid "Jetty :: IO Utility" +msgstr "Jetty :: IO-redskab" + +#: gnu/packages/web.scm:5896 +msgid "" +"The Jetty Web Server provides an HTTP server and Servlet\n" +"container capable of serving static and dynamic content either from a standalone\n" +"or embedded instantiation. This package provides IO-related utility classes." +msgstr "" + +#: gnu/packages/web.scm:5939 +msgid "Jetty :: Http Utility" +msgstr "" + +#: gnu/packages/web.scm:5940 +msgid "" +"The Jetty Web Server provides an HTTP server and Servlet\n" +"container capable of serving static and dynamic content either from a standalone\n" +"or embedded instantiation. This package provides HTTP-related utility classes." +msgstr "" + +#: gnu/packages/web.scm:5973 +msgid "Jetty :: JMX Management" +msgstr "" + +#: gnu/packages/web.scm:5974 +msgid "" +"The Jetty Web Server provides an HTTP server and Servlet\n" +"container capable of serving static and dynamic content either from a standalone\n" +"or embedded instantiation. This package provides the JMX management." +msgstr "" + +#: gnu/packages/web.scm:6060 +msgid "Core jetty server artifact" +msgstr "" + +#: gnu/packages/web.scm:6061 +msgid "" +"The Jetty Web Server provides an HTTP server and Servlet\n" +"container capable of serving static and dynamic content either from a standalone\n" +"or embedded instantiation. This package provides the core jetty server\n" +"artifact." +msgstr "" + +#: gnu/packages/web.scm:6104 +msgid "Jetty security infrastructure" +msgstr "" + +#: gnu/packages/web.scm:6105 +msgid "" +"The Jetty Web Server provides an HTTP server and Servlet\n" +"container capable of serving static and dynamic content either from a standalone\n" +"or embedded instantiation. This package provides the core jetty security\n" +"infrastructure" +msgstr "" + +#: gnu/packages/web.scm:6148 +msgid "Jetty Servlet Container" +msgstr "" + +#: gnu/packages/web.scm:6149 +msgid "" +"The Jetty Web Server provides an HTTP server and Servlet\n" +"container capable of serving static and dynamic content either from a standalone\n" +"or embedded instantiation. This package provides the core jetty servlet\n" +"container." +msgstr "" + +#: gnu/packages/web.scm:6212 +msgid "HTML parser" +msgstr "HTML-fortolker" + +#: gnu/packages/web.scm:6213 +msgid "" +"Jsoup is a Java library for working with real-world HTML. It\n" +"provides a very convenient API for extracting and manipulating data, using the\n" +"best of DOM, CSS, and jQuery-like methods." +msgstr "" + +#: gnu/packages/web.scm:6234 +msgid "Validate HTML" +msgstr "" + +#: gnu/packages/web.scm:6235 +msgid "" +"Tidyp is a program that can validate your HTML, as well as\n" +"modify it to be more clean and standard. tidyp does not validate HTML 5.\n" +"\n" +"libtidyp is the library on which the program is based. It can be used by any\n" +"other program that can interface to it. The Perl module @code{HTML::Tidy} is\n" +"based on this library, allowing Perl programmers to easily validate HTML." +msgstr "" + +#: gnu/packages/web.scm:6276 +msgid "(X)HTML validation in a Perl object" +msgstr "" + +#: gnu/packages/web.scm:6277 +msgid "" +"@code{HTML::Tidy} is an HTML checker in a handy dandy\n" +"object. It's meant as a replacement for @code{HTML::Lint}, which is written\n" +"in Perl but is not nearly as capable as @code{HTML::Tidy}." +msgstr "" + +#: gnu/packages/web.scm:6303 +msgid "Small Gopher server" +msgstr "" + +#: gnu/packages/web.scm:6305 +msgid "" +"Geomyidae is a server for distributed hypertext protocol Gopher. Its\n" +"features include:\n" +"\n" +"@enumerate\n" +"@item Gopher menus (see @file{index.gph} for an example);\n" +"@item directory listings (if no @file{index.gph} was found);\n" +"@item CGI support (@file{.cgi} files are executed);\n" +"@item search support in CGI files;\n" +"@item logging with multiple log levels.\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/web.scm:6352 +msgid "Random avatar generator" +msgstr "" + +#: gnu/packages/web.scm:6353 +msgid "" +"Cat avatar generator is a generator of cat pictures optimised\n" +"to generate random avatars, or defined avatar from a \"seed\". This is a\n" +"derivation by David Revoy from the original MonsterID by Andreas Gohr." +msgstr "" + +#: gnu/packages/web.scm:6415 +msgid "HTTP/2 protocol client, proxy, server, and library" +msgstr "" + +#: gnu/packages/web.scm:6417 +msgid "" +"nghttp2 implements the Hypertext Transfer Protocol, version\n" +"2 (@dfn{HTTP/2}).\n" +"\n" +"A reusable C library provides the HTTP/2 framing layer, with several tools built\n" +"on top of it:\n" +"\n" +"@itemize\n" +"@item @command{nghttp}, a command-line HTTP/2 client. It exposes many advanced\n" +"and low-level aspects of the protocol and is useful for debugging.\n" +"@item @command{nghttpd}, a fast, multi-threaded HTTP/2 static web server that\n" +"serves files from a local directory.\n" +"@item @command{nghttpx}, a fast, multi-threaded HTTP/2 reverse proxy that can be\n" +"deployed in front of existing web servers that don't support HTTP/2.\n" +"Both @command{nghttpd} and @command{nghttpx} can fall back to HTTP/1.1 for\n" +"backwards compatibilty with clients that don't speak HTTP/2.\n" +"@item @command{h2load} for benchmarking (only!) your own HTTP/2 servers.\n" +"@item HTTP/2 uses a header compression method called @dfn{HPACK}.\n" +"nghttp2 provides a HPACK encoder and decoder as part of its public API.\n" +"@item @command{deflatehd} converts JSON data or HTTP/1-style header fields to\n" +"compressed JSON header blocks.\n" +"@item @command{inflatehd} converts such compressed headers back to JSON pairs.\n" +"@end itemize\n" +msgstr "" + +#: gnu/packages/wordnet.scm:92 msgid "Lexical database for the English language" msgstr "Leksikal database for det engelske sprog" -#: gnu/packages/wordnet.scm:88 +#: gnu/packages/wordnet.scm:94 msgid "" "WordNet is a large lexical database of English. Nouns, verbs,\n" "adjectives and adverbs are grouped into sets of cognitive synonyms (synsets),\n" @@ -15818,11 +20437,11 @@ msgid "" "language processing." msgstr "" -#: gnu/packages/xiph.scm:68 +#: gnu/packages/xiph.scm:69 msgid "Library for manipulating the ogg multimedia format" msgstr "" -#: gnu/packages/xiph.scm:70 +#: gnu/packages/xiph.scm:71 msgid "" "The libogg library allows to manipulate the ogg multimedia container\n" "format, which encapsulates raw compressed data and allows the interleaving of\n" @@ -15831,11 +20450,11 @@ msgid "" "periodic timestamps for seeking." msgstr "" -#: gnu/packages/xiph.scm:94 +#: gnu/packages/xiph.scm:98 msgid "Library implementing the vorbis audio format" msgstr "" -#: gnu/packages/xiph.scm:96 +#: gnu/packages/xiph.scm:100 msgid "" "The libvorbis library implements the ogg vorbis audio format,\n" "a fully open, non-proprietary, patent-and-royalty-free, general-purpose\n" @@ -15844,22 +20463,22 @@ msgid "" "128 kbps/channel." msgstr "" -#: gnu/packages/xiph.scm:121 +#: gnu/packages/xiph.scm:137 msgid "Library implementing the Theora video format" msgstr "Bibliotek der implementerer videoformatet Theora" -#: gnu/packages/xiph.scm:123 +#: gnu/packages/xiph.scm:139 msgid "" "The libtheora library implements the ogg theora video format,\n" "a fully open, non-proprietary, patent-and-royalty-free, general-purpose\n" "compressed video format." msgstr "" -#: gnu/packages/xiph.scm:144 +#: gnu/packages/xiph.scm:164 msgid "Library for patent-free audio compression format" msgstr "Bibliotek for det patentfrie lydkomprimeringsformat" -#: gnu/packages/xiph.scm:146 +#: gnu/packages/xiph.scm:166 msgid "" "GNU Speex is a patent-free audio compression codec specially designed\n" "for speech. It is well-adapted to internet applications, such as VoIP. It\n" @@ -15867,21 +20486,21 @@ msgid "" "stereo encoding, and voice activity detection." msgstr "" -#: gnu/packages/xiph.scm:167 +#: gnu/packages/xiph.scm:192 msgid "Speex processing library" msgstr "Speex-behandlingsbibliotek" -#: gnu/packages/xiph.scm:169 +#: gnu/packages/xiph.scm:194 msgid "" "SpeexDSP is a @dfn{DSP} (Digital Signal Processing) library based on\n" "work from the @code{speex} codec." msgstr "" -#: gnu/packages/xiph.scm:196 +#: gnu/packages/xiph.scm:221 msgid "Cross platform audio library" msgstr "" -#: gnu/packages/xiph.scm:198 +#: gnu/packages/xiph.scm:223 msgid "" "Libao is a cross-platform audio library that allows programs to\n" "output audio using a simple API on a wide variety of platforms.\n" @@ -15907,21 +20526,21 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/xiph.scm:240 +#: gnu/packages/xiph.scm:265 msgid "Free lossless audio codec" msgstr "Fri lydkodning uden kvalitetstab" -#: gnu/packages/xiph.scm:242 +#: gnu/packages/xiph.scm:267 msgid "" "FLAC stands for Free Lossless Audio Codec, an audio format that is lossless,\n" "meaning that audio is compressed in FLAC without any loss in quality." msgstr "" -#: gnu/packages/xiph.scm:268 +#: gnu/packages/xiph.scm:293 msgid "Karaoke and text codec for embedding in ogg" msgstr "" -#: gnu/packages/xiph.scm:270 +#: gnu/packages/xiph.scm:295 msgid "" "Kate is an overlay codec, originally designed for karaoke and text,\n" "that can be multiplixed in Ogg. Text and images can be carried by a Kate\n" @@ -15936,11 +20555,11 @@ msgid "" "Kate stream." msgstr "" -#: gnu/packages/xiph.scm:308 +#: gnu/packages/xiph.scm:333 msgid "Ogg vorbis tools" msgstr "Ogg vorbis-værktøjer" -#: gnu/packages/xiph.scm:310 +#: gnu/packages/xiph.scm:335 msgid "" "Ogg vorbis is a non-proprietary, patent-and-royalty-free,\n" "general-purpose compressed audio format.\n" @@ -15953,11 +20572,11 @@ msgid "" " an ogg vorbis file." msgstr "" -#: gnu/packages/xiph.scm:335 gnu/packages/xiph.scm:398 +#: gnu/packages/xiph.scm:359 gnu/packages/xiph.scm:422 msgid "Versatile audio codec" msgstr "Alsidig lydkodning" -#: gnu/packages/xiph.scm:337 +#: gnu/packages/xiph.scm:361 msgid "" "Opus is a totally open, royalty-free, highly versatile audio codec. Opus\n" "is unmatched for interactive speech and music transmission over the Internet,\n" @@ -15966,29 +20585,29 @@ msgid "" "incorporated technology from Skype's SILK codec and Xiph.Org's CELT codec." msgstr "" -#: gnu/packages/xiph.scm:371 +#: gnu/packages/xiph.scm:395 msgid "Command line utilities to encode, inspect, and decode .opus files" msgstr "" -#: gnu/packages/xiph.scm:372 +#: gnu/packages/xiph.scm:396 msgid "" "Opus is a royalty-free, highly versatile audio codec.\n" "Opus-tools provide command line utilities for creating, inspecting and\n" "decoding .opus files." msgstr "" -#: gnu/packages/xiph.scm:400 +#: gnu/packages/xiph.scm:424 msgid "" "The opusfile library provides seeking, decode, and playback of Opus\n" "streams in the Ogg container (.opus files) including over http(s) on posix and\n" "windows systems." msgstr "" -#: gnu/packages/xiph.scm:430 +#: gnu/packages/xiph.scm:454 msgid "Streaming media server" msgstr "Strøm-medieserver" -#: gnu/packages/xiph.scm:431 +#: gnu/packages/xiph.scm:455 msgid "" "Icecast is a streaming media server which currently supports\n" "Ogg (Vorbis and Theora), Opus, WebM and MP3 audio streams. It can be used to\n" @@ -15996,62 +20615,208 @@ msgid "" "things in between." msgstr "" -#: gnu/packages/xiph.scm:459 +#: gnu/packages/xiph.scm:483 msgid "Audio streaming library for icecast encoders" msgstr "" -#: gnu/packages/xiph.scm:461 +#: gnu/packages/xiph.scm:485 msgid "" "Libshout is a library for communicating with and sending data to an\n" "icecast server. It handles the socket connection, the timing of the data,\n" "and prevents bad data from getting to the icecast server." msgstr "" -#: gnu/packages/zip.scm:61 -msgid "Compression and file packing utility" -msgstr "Komprimerings- og filpakningsredskab" - -#: gnu/packages/zip.scm:63 +#: gnu/services/base.scm:282 msgid "" -"Zip is a compression and file packaging/archive utility. Zip is useful\n" -"for packaging a set of files for distribution, for archiving files, and for\n" -"saving disk space by temporarily compressing unused files or directories.\n" -"Zip puts one or more compressed files into a single ZIP archive, along with\n" -"information about the files (name, path, date, time of last modification,\n" -"protection, and check information to verify file integrity). An entire\n" -"directory structure can be packed into a ZIP archive with a single command.\n" -"\n" -"Zip has one compression method (deflation) and can also store files without\n" -"compression. Zip automatically chooses the better of the two for each file.\n" -"Compression ratios of 2:1 to 3:1 are common for text files." +"The @code{user-processes} service is responsible for\n" +"terminating all the processes so that the root file system can be re-mounted\n" +"read-only, just before rebooting/halting. Processes still running after a few\n" +"seconds after @code{SIGTERM} has been sent are terminated with\n" +"@code{SIGKILL}." msgstr "" -#: gnu/packages/zip.scm:117 -msgid "Decompression and file extraction utility" -msgstr "" - -#: gnu/packages/zip.scm:119 +#: gnu/services/base.scm:335 msgid "" -"UnZip is an extraction utility for archives compressed in .zip format,\n" -"also called \"zipfiles\".\n" -"\n" -"UnZip lists, tests, or extracts files from a .zip archive. The default\n" -"behaviour (with no options) is to extract into the current directory, and\n" -"subdirectories below it, all files from the specified zipfile. UnZip\n" -"recreates the stored directory structure by default." +"Populate the @file{/etc/fstab} based on the given file\n" +"system objects." msgstr "" -#: gnu/packages/zip.scm:153 -msgid "Library for accessing zip files" -msgstr "Bibliotek til at tilgå zip-filer" +#: gnu/services/base.scm:512 +msgid "" +"Provide Shepherd services to mount and unmount the given\n" +"file systems, as well as corresponding @file{/etc/fstab} entries." +msgstr "" -#: gnu/packages/zip.scm:155 -msgid "ZZipLib is a library based on zlib for accessing zip files." -msgstr "ZZipLib er et bibliotek baseret på zlib for adgang til zip-filer." +#: gnu/services/base.scm:602 +msgid "" +"Seed the @file{/dev/urandom} pseudo-random number\n" +"generator (RNG) with the value recorded when the system was last shut\n" +"down." +msgstr "" -#: gnu/packages/zip.scm:173 -msgid "Provides an interface to ZIP archive files" -msgstr "Tilbyder en grænseflade til ZIP-arkivfiler" +#: gnu/services/base.scm:763 +msgid "" +"Install the given fonts on the specified ttys (fonts are per\n" +"virtual console on GNU/Linux). The value of this service is a list of\n" +"tty/font pairs like:\n" +"\n" +"@example\n" +"'((\"tty1\" . \"LatGrkCyr-8x16\"))\n" +"@end example\n" +msgstr "" + +#: gnu/services/base.scm:806 +msgid "" +"Provide a console log-in service as specified by its\n" +"configuration value, a @code{login-configuration} object." +msgstr "" + +#: gnu/services/base.scm:1069 +msgid "" +"Provide console login using the @command{agetty}\n" +"program." +msgstr "" + +#: gnu/services/base.scm:1123 +msgid "" +"Provide console login using the @command{mingetty}\n" +"program." +msgstr "" + +#: gnu/services/base.scm:1295 +msgid "" +"Runs libc's @dfn{name service cache daemon} (nscd) with the\n" +"given configuration---an @code{} object. @xref{Name\n" +"Service Switch}, for an example." +msgstr "" + +#: gnu/services/base.scm:1395 +msgid "" +"Install the specified resource usage limits by populating\n" +"@file{/etc/security/limits.conf} and using the @code{pam_limits}\n" +"authentication module." +msgstr "" + +#: gnu/services/base.scm:1613 +msgid "Run the build daemon of GNU@tie{}Guix, aka. @command{guix-daemon}." +msgstr "" + +#: gnu/services/base.scm:1713 +msgid "" +"Add a Shepherd service running @command{guix publish}, a\n" +"command that allows you to share pre-built binaries with others over HTTP." +msgstr "" + +#: gnu/services/base.scm:1918 +msgid "" +"Run @command{udev}, which populates the @file{/dev}\n" +"directory dynamically. Get extra rules from the packages listed in the\n" +"@code{rules} field of its value, @code{udev-configuration} object." +msgstr "" + +#: gnu/services/base.scm:1993 +msgid "" +"Run GPM, the general-purpose mouse daemon, with the given\n" +"command-line options. GPM allows users to use the mouse in the console,\n" +"notably to select, copy, and paste text. The default options use the\n" +"@code{ps2} protocol, which works for both USB and PS/2 mice." +msgstr "" + +#: gnu/services/certbot.scm:168 +msgid "" +"Automatically renew @url{https://letsencrypt.org, Let's\n" +"Encrypt} HTTPS certificates by adjusting the nginx web server configuration\n" +"and periodically invoking @command{certbot}." +msgstr "" + +#: gnu/services/networking.scm:270 +msgid "" +"Turn up the specified network interfaces upon startup,\n" +"with the given IP address, gateway, netmask, and so on. The value for\n" +"services of this type is a list of @code{static-networking} objects, one per\n" +"network interface." +msgstr "" + +#: gnu/services/networking.scm:513 +msgid "" +"Run the @command{ntpd}, the Network Time Protocol (NTP)\n" +"daemon of the @uref{http://www.ntp.org, Network Time Foundation}. The daemon\n" +"will keep the system clock synchronized with that of the given servers." +msgstr "" + +#: gnu/services/networking.scm:623 +msgid "" +"Run the @command{ntpd}, the Network Time Protocol (NTP)\n" +"daemon, as implemented by @uref{http://www.openntpd.org, OpenNTPD}. The\n" +"daemon will keep the system clock synchronized with that of the given servers." +msgstr "" + +#: gnu/services/networking.scm:711 +msgid "" +"Start @command{inetd}, the @dfn{Internet superserver}. It is responsible\n" +"for listening on Internet sockets and spawning the corresponding services on\n" +"demand." +msgstr "" + +#: gnu/services/networking.scm:866 +msgid "" +"Run the @uref{https://torproject.org, Tor} anonymous\n" +"networking daemon." +msgstr "" + +#: gnu/services/networking.scm:889 +msgid "Define a new Tor @dfn{hidden service}." +msgstr "" + +#: gnu/services/networking.scm:957 +msgid "" +"Run @url{https://launchpad.net/wicd,Wicd}, a network\n" +"management daemon that aims to simplify wired and wireless networking." +msgstr "" + +#: gnu/services/networking.scm:1046 +msgid "" +"Run @uref{https://wiki.gnome.org/Projects/NetworkManager,\n" +"NetworkManager}, a network management daemon that aims to simplify wired and\n" +"wireless networking." +msgstr "" + +#: gnu/services/networking.scm:1104 +msgid "" +"Run @url{https://01.org/connman,Connman},\n" +"a network connection manager." +msgstr "" + +#: gnu/services/networking.scm:1193 +msgid "" +"Run @uref{http://www.openvswitch.org, Open vSwitch}, a multilayer virtual\n" +"switch designed to enable massive network automation through programmatic\n" +"extension." +msgstr "" + +#: gnu/services/version-control.scm:142 +msgid "" +"Expose Git respositories over the insecure @code{git://} TCP-based\n" +"protocol." +msgstr "" + +#~ msgid "X86 emulator with CGA/EGA/VGA/etc. graphics and sound" +#~ msgstr "X86-emulator med CGA/EGA/VGA/etc. grafik og lyd" + +#~ msgid "Nintendo 64 emulator core library" +#~ msgstr "Nintendo 64-emulator - grundlæggende bibliotek" + +#~ msgid "Nintendo DS emulator" +#~ msgstr "Nintendo DS-emulator" + +#~ msgid "DeSmuME is an emulator for the Nintendo DS handheld gaming console." +#~ msgstr "DeSmuME er en emulator for den håndholdte spilkonsol Nintendo DS." + +#~ msgid "Nintendo multi-system emulator" +#~ msgstr "Nintendo multi-system-emulator" + +#~ msgid "Library for reading images in the Microsoft WMF format" +#~ msgstr "Bibliotek for læsning af billeder i Microsoft WMF-formatet" #~ msgid "Tune hard disk parameters for high performance" #~ msgstr "Finjuster harddiskparametre for høj ydelse" diff --git a/po/packages/fr.po b/po/packages/fr.po index 758f2d3eec..96bfe759b8 100644 --- a/po/packages/fr.po +++ b/po/packages/fr.po @@ -4,19 +4,19 @@ # Rémy Chevalier , 2014. msgid "" msgstr "" -"Project-Id-Version: guix-packages 0.14.0\n" +"Project-Id-Version: guix-packages 0.15.0\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" -"POT-Creation-Date: 2017-11-28 08:56+0100\n" -"PO-Revision-Date: 2018-02-18 18:53+0100\n" +"POT-Creation-Date: 2018-06-22 14:08+0200\n" +"PO-Revision-Date: 2018-06-23 14:14+0200\n" "Last-Translator: Julien Lepiller \n" "Language-Team: French \n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Bugs: Report translation errors to the Language-Team address.\n" -"X-Generator: Poedit 2.0.6\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Bugs: Report translation errors to the Language-Team address.\n" +"X-Generator: Offlate 0.1\n" #: gnu/packages/abiword.scm:114 msgid "Word processing program" @@ -37,11 +37,11 @@ msgstr "" "pour votre travail quotidien, vos besoins personnels ou juste pour\n" "le plaisir de taper." -#: gnu/packages/aspell.scm:70 gnu/packages/libreoffice.scm:715 +#: gnu/packages/aspell.scm:71 gnu/packages/libreoffice.scm:743 msgid "Spell checker" msgstr "Correcteur orthographique" -#: gnu/packages/aspell.scm:72 +#: gnu/packages/aspell.scm:73 msgid "" "Aspell is a spell-checker which can be used either as a library or as\n" "a standalone program. Notable features of Aspell include its full support of\n" @@ -53,13 +53,13 @@ msgstr "" "des documents encodés UTF-8 et la possibilité d'utiliser plusieurs dictionnaires\n" "y compris personnels." -#: gnu/packages/aspell.scm:114 +#: gnu/packages/aspell.scm:115 msgid "This package provides a dictionary for the GNU Aspell spell checker." msgstr "" "Ce paquet fournit un dictionnaire pour le correcteur orthographique\n" "GNU Aspell." -#: gnu/packages/aspell.scm:285 gnu/packages/libreoffice.scm:765 +#: gnu/packages/aspell.scm:296 gnu/packages/libreoffice.scm:793 msgid "" "This package provides a dictionary for the Hunspell spell-checking\n" "library." @@ -67,35 +67,35 @@ msgstr "" "Ce paquet fournit un dictionnaire pour le correcteur orthographique\n" "Hunspell." -#: gnu/packages/aspell.scm:303 +#: gnu/packages/aspell.scm:314 msgid "Hunspell dictionary for English" msgstr "Dictionnaire Hunspell pour l'anglais" -#: gnu/packages/aspell.scm:307 +#: gnu/packages/aspell.scm:318 msgid "Hunspell dictionary for Australian English" msgstr "Dictionnaire Hunspell pour l'anglais australien" -#: gnu/packages/aspell.scm:311 +#: gnu/packages/aspell.scm:322 msgid "Hunspell dictionary for Canadian English" msgstr "Dictionnaire Hunspell pour l'anglais canadien" -#: gnu/packages/aspell.scm:315 +#: gnu/packages/aspell.scm:326 msgid "Hunspell dictionary for British English, with -ise endings" msgstr "Dictionnaire Hunspell pour l'anglais britannique, avec des terminaisons en -ise" -#: gnu/packages/aspell.scm:319 +#: gnu/packages/aspell.scm:330 msgid "Hunspell dictionary for British English, with -ize endings" msgstr "Dictionnaire Hunspell pour l'anglais britannique, avec des terminaisons en -ize" -#: gnu/packages/aspell.scm:323 +#: gnu/packages/aspell.scm:334 msgid "Hunspell dictionary for United States English" msgstr "Dictionnaire Hunspell pour l'anglais états-unien" -#: gnu/packages/audio.scm:128 +#: gnu/packages/audio.scm:136 msgid "Realtime modular synthesizer and effect processor" msgstr "Synthétiseur modulaire en temps réel et traitement d'effets" -#: gnu/packages/audio.scm:130 +#: gnu/packages/audio.scm:138 msgid "" "AlsaModularSynth is a digital implementation of a classical analog\n" "modular synthesizer system. It uses virtual control voltages to control the\n" @@ -109,11 +109,11 @@ msgstr "" "fréquence, par exemple du VCO (Oscillateur commandé en tension) ou du VCF\n" "(Filtre contrôlé en tension) suivent la convention de 1 V / Octave." -#: gnu/packages/audio.scm:167 +#: gnu/packages/audio.scm:175 msgid "Library for audio labelling" msgstr "Bibliothèque pour l'étiquetage de fichiers audio" -#: gnu/packages/audio.scm:169 +#: gnu/packages/audio.scm:177 msgid "" "aubio is a tool designed for the extraction of annotations from audio\n" "signals. Its features include segmenting a sound file before each of its\n" @@ -125,11 +125,11 @@ msgstr "" "chaque attaque, à la détection de ton, en passant par l'écoute du rythme\n" "et la production de fichiers MIDI à partir d'audio en direct." -#: gnu/packages/audio.scm:270 +#: gnu/packages/audio.scm:279 msgid "Digital audio workstation" msgstr "Station de travail audio numérique" -#: gnu/packages/audio.scm:272 +#: gnu/packages/audio.scm:281 msgid "" "Ardour is a multi-channel digital audio workstation, allowing users to\n" "record, edit, mix and master audio and MIDI projects. It is targeted at audio\n" @@ -140,11 +140,11 @@ msgstr "" "conçu pour les ingénieurs du son, les musiciens, les éditeurs de bandes son et\n" "les compositeurs." -#: gnu/packages/audio.scm:407 +#: gnu/packages/audio.scm:417 msgid "Software for recording and editing sounds" msgstr "Logiciel pour enregistrer et modifier des sons" -#: gnu/packages/audio.scm:409 +#: gnu/packages/audio.scm:419 msgid "" "Audacity is a multi-track audio editor designed for recording, playing\n" "and editing digital audio. It features digital effects and spectrum analysis\n" @@ -154,11 +154,11 @@ msgstr "" "et modifier des sons numériques. Il propose des effets numériques et des\n" "outils d'analyse spectrale." -#: gnu/packages/audio.scm:444 +#: gnu/packages/audio.scm:454 msgid "Tonewheel organ synthesizer" -msgstr "" +msgstr "Synthétiseur d'organe tonewheel" -#: gnu/packages/audio.scm:446 +#: gnu/packages/audio.scm:456 msgid "" "AZR-3 is a port of the free VST plugin AZR-3. It is a tonewheel organ\n" "with drawbars, distortion and rotating speakers. The organ has three\n" @@ -167,11 +167,11 @@ msgid "" "plugins are provided." msgstr "" -#: gnu/packages/audio.scm:483 +#: gnu/packages/audio.scm:493 msgid "Audio plug-in pack for LV2 and JACK environments" msgstr "" -#: gnu/packages/audio.scm:485 +#: gnu/packages/audio.scm:495 msgid "" "Calf Studio Gear is an audio plug-in pack for LV2 and JACK environments.\n" "The suite contains lots of effects (delay, modulation, signal processing,\n" @@ -180,11 +180,11 @@ msgid "" "tools (analyzer, mono/stereo tools, crossovers)." msgstr "" -#: gnu/packages/audio.scm:537 +#: gnu/packages/audio.scm:549 msgid "Software speech synthesizer" msgstr "" -#: gnu/packages/audio.scm:538 +#: gnu/packages/audio.scm:550 msgid "" "eSpeak is a software speech synthesizer for English and\n" "other languages. eSpeak uses a \"formant synthesis\" method. This allows many\n" @@ -193,22 +193,22 @@ msgid "" "based on human speech recordings." msgstr "" -#: gnu/packages/audio.scm:585 +#: gnu/packages/audio.scm:588 msgid "LV2 plugins for live use" msgstr "" -#: gnu/packages/audio.scm:587 +#: gnu/packages/audio.scm:590 msgid "" "The infamous plugins are a collection of LV2 audio plugins for live\n" "performances. The plugins include a cellular automaton synthesizer, an\n" "envelope follower, distortion effects, tape effects and more." msgstr "" -#: gnu/packages/audio.scm:628 +#: gnu/packages/audio.scm:631 msgid "SWH plugins in LV2 format" msgstr "" -#: gnu/packages/audio.scm:630 +#: gnu/packages/audio.scm:633 msgid "" "Swh-plugins-lv2 is a collection of audio plugins in LV2 format. Plugin\n" "classes include: dynamics (compressor, limiter), time (delay, chorus,\n" @@ -216,42 +216,42 @@ msgid "" "emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc." msgstr "" -#: gnu/packages/audio.scm:664 +#: gnu/packages/audio.scm:667 msgid "Sound and music computing system" msgstr "" -#: gnu/packages/audio.scm:666 +#: gnu/packages/audio.scm:669 msgid "" "Csound is a user-programmable and user-extensible sound processing\n" "language and software synthesizer." msgstr "" -#: gnu/packages/audio.scm:707 gnu/packages/audio.scm:2808 +#: gnu/packages/audio.scm:710 gnu/packages/audio.scm:2974 msgid "C++ wrapper around the ALSA API" msgstr "" -#: gnu/packages/audio.scm:709 +#: gnu/packages/audio.scm:712 msgid "" "clalsadrv is a C++ wrapper around the ALSA API simplifying access to\n" "ALSA PCM devices." msgstr "" -#: gnu/packages/audio.scm:746 +#: gnu/packages/audio.scm:749 msgid "LADSPA ambisonics plugins" msgstr "" -#: gnu/packages/audio.scm:748 +#: gnu/packages/audio.scm:751 msgid "" "The AMB plugins are a set of LADSPA ambisonics plugins, mainly to be\n" "used within Ardour. Features include: mono and stereo to B-format panning,\n" "horizontal rotator, square, hexagon and cube decoders." msgstr "" -#: gnu/packages/audio.scm:783 +#: gnu/packages/audio.scm:786 msgid "Chorus, phaser, and vintage high-pass and low-pass filters" msgstr "" -#: gnu/packages/audio.scm:785 +#: gnu/packages/audio.scm:788 msgid "" "This package provides various LADSPA plugins. @code{cs_chorus} and\n" "@code{cs_phaser} provide chorus and phaser effects, respectively;\n" @@ -261,21 +261,21 @@ msgid "" "the non-linear circuit elements of their original analog counterparts." msgstr "" -#: gnu/packages/audio.scm:823 +#: gnu/packages/audio.scm:826 msgid "LADSPA reverb plugin" msgstr "" -#: gnu/packages/audio.scm:825 +#: gnu/packages/audio.scm:828 msgid "" "This package provides a stereo reverb LADSPA plugin based on the\n" "well-known greverb." msgstr "" -#: gnu/packages/audio.scm:859 +#: gnu/packages/audio.scm:862 msgid "LADSPA four-band parametric equalizer plugin" msgstr "" -#: gnu/packages/audio.scm:861 +#: gnu/packages/audio.scm:864 msgid "" "This package provides a LADSPA plugin for a four-band parametric\n" "equalizer. Each section has an active/bypass switch, frequency, bandwidth and\n" @@ -290,11 +290,11 @@ msgid "" "for stage use." msgstr "" -#: gnu/packages/audio.scm:904 +#: gnu/packages/audio.scm:907 msgid "LADSPA stereo width plugin" msgstr "" -#: gnu/packages/audio.scm:906 +#: gnu/packages/audio.scm:909 msgid "" "This package provides a LADSPA plugin to manipulate the stereo width of\n" "audio signals." @@ -302,11 +302,11 @@ msgstr "" "Ce paquet fournit des un greffon LADSPA pour manipuler la profondeur\n" "des signaux audio." -#: gnu/packages/audio.scm:941 +#: gnu/packages/audio.scm:944 msgid "LADSPA plugin for synthesizer oscillators" msgstr "" -#: gnu/packages/audio.scm:943 +#: gnu/packages/audio.scm:946 msgid "" "The @code{blvco} LADSPA plugin provides three anti-aliased oscillators:\n" "\n" @@ -321,11 +321,11 @@ msgid "" "output of analog synthesizers such as the Moog Voyager." msgstr "" -#: gnu/packages/audio.scm:985 +#: gnu/packages/audio.scm:988 msgid "LADSPA Autowah effect plugin" msgstr "" -#: gnu/packages/audio.scm:987 +#: gnu/packages/audio.scm:990 msgid "" "This package provides a LADSPA plugin for a Wah effect with envelope\n" "follower." @@ -333,19 +333,19 @@ msgstr "" "Ce paquet fournit un greffon LADSPA pour l'effet Wah avec un suiveur\n" "d'enveloppe." -#: gnu/packages/audio.scm:1021 +#: gnu/packages/audio.scm:1024 msgid "LADSPA stereo reverb plugin" msgstr "" -#: gnu/packages/audio.scm:1023 +#: gnu/packages/audio.scm:1026 msgid "This package provides a LADSPA plugin for a stereo reverb effect." msgstr "Ce paquet fournit un greffon LADSPA pour l'effet stereo reverb." -#: gnu/packages/audio.scm:1061 +#: gnu/packages/audio.scm:1065 msgid "SoundFont synthesizer" msgstr "" -#: gnu/packages/audio.scm:1063 +#: gnu/packages/audio.scm:1067 msgid "" "FluidSynth is a real-time software synthesizer based on the SoundFont 2\n" "specifications. FluidSynth reads and handles MIDI events from the MIDI input\n" @@ -353,39 +353,39 @@ msgid "" "also play midifiles using a Soundfont." msgstr "" -#: gnu/packages/audio.scm:1094 +#: gnu/packages/audio.scm:1098 msgid "MPEG-4 and MPEG-2 AAC decoder" msgstr "" -#: gnu/packages/audio.scm:1096 +#: gnu/packages/audio.scm:1100 msgid "" "FAAD2 is an MPEG-4 and MPEG-2 AAC decoder supporting LC, Main, LTP, SBR,\n" "PS, and DAB+." msgstr "" -#: gnu/packages/audio.scm:1125 +#: gnu/packages/audio.scm:1140 msgid "Signal processing language" msgstr "" -#: gnu/packages/audio.scm:1127 +#: gnu/packages/audio.scm:1142 msgid "Faust is a programming language for realtime audio signal processing." msgstr "" -#: gnu/packages/audio.scm:1207 +#: gnu/packages/audio.scm:1213 msgid "GUS compatible patches for MIDI players" msgstr "" -#: gnu/packages/audio.scm:1209 +#: gnu/packages/audio.scm:1215 msgid "" "FreePats is a project to create a free and open set of GUS compatible\n" "patches that can be used with softsynths such as Timidity and WildMidi." msgstr "" -#: gnu/packages/audio.scm:1261 +#: gnu/packages/audio.scm:1267 msgid "Virtual guitar amplifier" msgstr "" -#: gnu/packages/audio.scm:1262 +#: gnu/packages/audio.scm:1268 msgid "" "Guitarix is a virtual guitar amplifier running JACK.\n" "Guitarix takes the signal from your guitar as a mono-signal from your sound\n" @@ -396,11 +396,11 @@ msgid "" "auto-wah." msgstr "" -#: gnu/packages/audio.scm:1316 +#: gnu/packages/audio.scm:1322 msgid "Audio effects processor" msgstr "" -#: gnu/packages/audio.scm:1318 +#: gnu/packages/audio.scm:1324 msgid "" "Rakarrack is a richly featured multi-effects processor emulating a\n" "guitar effects pedalboard. Effects include compressor, expander, noise gate,\n" @@ -412,22 +412,22 @@ msgid "" "well suited to all musical instruments and vocals." msgstr "" -#: gnu/packages/audio.scm:1369 +#: gnu/packages/audio.scm:1375 msgid "LV2 convolution reverb" msgstr "" -#: gnu/packages/audio.scm:1371 +#: gnu/packages/audio.scm:1377 msgid "" "IR is a low-latency, real-time, high performance signal convolver\n" "especially for creating reverb effects. It supports impulse responses with 1,\n" "2 or 4 channels, in any soundfile format supported by libsndfile." msgstr "" -#: gnu/packages/audio.scm:1401 +#: gnu/packages/audio.scm:1407 msgid "JACK audio connection kit" msgstr "" -#: gnu/packages/audio.scm:1403 +#: gnu/packages/audio.scm:1409 msgid "" "JACK is a low-latency audio server. It can connect a number of\n" "different applications to an audio device, as well as allowing them to share\n" @@ -437,32 +437,32 @@ msgid "" "synchronous execution of all clients, and low latency operation." msgstr "" -#: gnu/packages/audio.scm:1509 +#: gnu/packages/audio.scm:1505 msgid "Simple LV2 host for JACK" msgstr "" -#: gnu/packages/audio.scm:1511 +#: gnu/packages/audio.scm:1507 msgid "" "Jalv is a simple but fully featured LV2 host for JACK. It runs LV2\n" "plugins and exposes their ports as JACK ports, essentially making any LV2\n" "plugin function as a JACK application." msgstr "" -#: gnu/packages/audio.scm:1554 +#: gnu/packages/audio.scm:1550 msgid "Linux Audio Developer's Simple Plugin API (LADSPA)" msgstr "" -#: gnu/packages/audio.scm:1556 +#: gnu/packages/audio.scm:1552 msgid "" "LADSPA is a standard that allows software audio processors and effects\n" "to be plugged into a wide range of audio synthesis and recording packages." msgstr "" -#: gnu/packages/audio.scm:1602 +#: gnu/packages/audio.scm:1598 msgid "Audio application session manager" msgstr "" -#: gnu/packages/audio.scm:1604 +#: gnu/packages/audio.scm:1600 msgid "" "LASH is a session management system for audio applications. It allows\n" "you to save and restore audio sessions consisting of multiple interconneced\n" @@ -470,11 +470,11 @@ msgid "" "connections between them." msgstr "" -#: gnu/packages/audio.scm:1625 +#: gnu/packages/audio.scm:1621 msgid "Bauer stereophonic-to-binaural DSP" msgstr "" -#: gnu/packages/audio.scm:1627 +#: gnu/packages/audio.scm:1623 msgid "" "The Bauer stereophonic-to-binaural DSP (bs2b) library and plugins is\n" "designed to improve headphone listening of stereo audio records. Recommended\n" @@ -482,21 +482,33 @@ msgid "" "essential distortions." msgstr "" -#: gnu/packages/audio.scm:1650 +#: gnu/packages/audio.scm:1646 msgid "Implementation of the Open Sound Control protocol" msgstr "Implantation du protocole Open Sound Control" -#: gnu/packages/audio.scm:1652 +#: gnu/packages/audio.scm:1648 msgid "" "liblo is a lightweight library that provides an easy to use\n" -"implementation of the Open Sound Control (OSC) protocol." +"implementation of the Open Sound Control (@dfn{OSC}) protocol." msgstr "" -#: gnu/packages/audio.scm:1674 +#: gnu/packages/audio.scm:1671 +msgid "Bindings for PortAudio v19" +msgstr "Liaisons pour PortAudio v19" + +#: gnu/packages/audio.scm:1672 +msgid "" +"This package provides bindings for PortAudio v19, the\n" +"cross-platform audio input/output stream library." +msgstr "" +"Ce paquet fournit les liaisons Python pour PortAudio v19, la\n" +"bibliothèque de flux audio d'entrée/sortie multiplateforme." + +#: gnu/packages/audio.scm:1697 msgid "Python bindings for liblo" msgstr "" -#: gnu/packages/audio.scm:1676 +#: gnu/packages/audio.scm:1699 msgid "" "Pyliblo is a Python wrapper for the liblo Open Sound Control (OSC)\n" "library. It supports almost the complete functionality of liblo, allowing you\n" @@ -504,22 +516,22 @@ msgid "" "included are the command line utilities @code{send_osc} and @code{dump_osc}." msgstr "" -#: gnu/packages/audio.scm:1717 +#: gnu/packages/audio.scm:1741 msgid "Library to simplify use of LV2 plugins in applications" msgstr "" -#: gnu/packages/audio.scm:1719 +#: gnu/packages/audio.scm:1743 msgid "" "Lilv is a C library to make the use of LV2 plugins as simple as possible\n" "for applications. Lilv is the successor to SLV2, rewritten to be\n" "significantly faster and have minimal dependencies." msgstr "" -#: gnu/packages/audio.scm:1745 +#: gnu/packages/audio.scm:1769 msgid "LV2 audio plugin specification" msgstr "" -#: gnu/packages/audio.scm:1747 +#: gnu/packages/audio.scm:1771 msgid "" "LV2 is an open specification for audio plugins and host applications.\n" "At its core, LV2 is a simple stable interface, accompanied by extensions which\n" @@ -527,38 +539,38 @@ msgid "" "software." msgstr "" -#: gnu/packages/audio.scm:1797 +#: gnu/packages/audio.scm:1823 msgid "LV2 port of the mda Piano plugin" msgstr "Port LV2 du greffon mda Piano" -#: gnu/packages/audio.scm:1798 +#: gnu/packages/audio.scm:1824 msgid "An LV2 port of the mda Piano VSTi." msgstr "Un port LV2 du VSTi mda Piano." -#: gnu/packages/audio.scm:1811 +#: gnu/packages/audio.scm:1837 msgid "LV2 port of the mda EPiano plugin" msgstr "Port LV2 du greffon mda EPiano" -#: gnu/packages/audio.scm:1812 +#: gnu/packages/audio.scm:1838 msgid "An LV2 port of the mda EPiano VSTi." msgstr "Un port LV2 du VSTi mda EPiano." -#: gnu/packages/audio.scm:1857 +#: gnu/packages/audio.scm:1883 msgid "C++ libraries for LV2 plugins" msgstr "" -#: gnu/packages/audio.scm:1859 +#: gnu/packages/audio.scm:1885 msgid "" "The LV2 Toolkit (LVTK) contains libraries that wrap the LV2 C API and\n" "extensions into easy to use C++ classes. It is the successor of\n" "lv2-c++-tools." msgstr "" -#: gnu/packages/audio.scm:1900 +#: gnu/packages/audio.scm:1926 msgid "3D audio API" msgstr "" -#: gnu/packages/audio.scm:1902 +#: gnu/packages/audio.scm:1928 msgid "" "OpenAL provides capabilities for playing audio in a virtual 3D\n" "environment. Distance attenuation, doppler shift, and directional sound\n" @@ -568,80 +580,107 @@ msgid "" "buffers, and audio capture." msgstr "" -#: gnu/packages/audio.scm:1932 +#: gnu/packages/audio.scm:1958 msgid "Free implementation of OpenAL's ALUT standard" msgstr "" -#: gnu/packages/audio.scm:1933 +#: gnu/packages/audio.scm:1959 msgid "freealut is the OpenAL Utility Toolkit." msgstr "" -#: gnu/packages/audio.scm:1962 +#: gnu/packages/audio.scm:1988 msgid "Modular patch bay for audio and MIDI systems" msgstr "" -#: gnu/packages/audio.scm:1964 +#: gnu/packages/audio.scm:1990 msgid "" "Patchage is a modular patch bay for audio and MIDI systems based on JACK\n" "and ALSA." msgstr "" -#: gnu/packages/audio.scm:1990 +#: gnu/packages/audio.scm:2017 msgid "Jack server control application" msgstr "" -#: gnu/packages/audio.scm:1991 +#: gnu/packages/audio.scm:2018 msgid "" "Control a Jack server. Allows you to plug various sources\n" "into various outputs and to start, stop and configure jackd" msgstr "" -#: gnu/packages/audio.scm:2017 +#: gnu/packages/audio.scm:2051 +msgid "Stereo audio recorder for JACK" +msgstr "" + +#: gnu/packages/audio.scm:2052 +msgid "" +"QJackRcd is a simple graphical stereo recorder for JACK\n" +"supporting silence processing for automatic pause, file splitting, and\n" +"background file post-processing." +msgstr "" + +#: gnu/packages/audio.scm:2149 +msgid "Synthesis engine and programming language" +msgstr "Moteur de synthèse et langage de programmation" + +#: gnu/packages/audio.scm:2150 +msgid "" +"SuperCollider is a synthesis engine (@code{scsynth} or\n" +"@code{supernova}) and programming language (@code{sclang}). It can be used\n" +"for experimenting with sound synthesis and algorithmic composition.\n" +"\n" +"SuperCollider requires jackd to be installed in your user profile and your\n" +"user must be allowed to access the realtime features of the kernel. Search\n" +"for \"realtime\" in the index of the Guix manual to learn how to achieve this\n" +"using GuixSD." +msgstr "" + +#: gnu/packages/audio.scm:2181 msgid "Real-time audio utility library" msgstr "" -#: gnu/packages/audio.scm:2019 +#: gnu/packages/audio.scm:2183 msgid "" "Raul (Real-time Audio Utility Library) is a C++ utility library primarily\n" "aimed at audio/musical applications." msgstr "" -#: gnu/packages/audio.scm:2062 +#: gnu/packages/audio.scm:2227 msgid "Audio time-stretching and pitch-shifting library" msgstr "" -#: gnu/packages/audio.scm:2064 +#: gnu/packages/audio.scm:2229 msgid "" "Rubber Band is a library and utility program that permits changing the\n" "tempo and pitch of an audio recording independently of one another." msgstr "" -#: gnu/packages/audio.scm:2112 +#: gnu/packages/audio.scm:2277 msgid "Cross-platform MIDI library for C++" msgstr "" -#: gnu/packages/audio.scm:2114 +#: gnu/packages/audio.scm:2279 msgid "" "RtMidi is a set of C++ classes (RtMidiIn, RtMidiOut, and API specific\n" "classes) that provide a common cross-platform API for realtime MIDI\n" "input/output." msgstr "" -#: gnu/packages/audio.scm:2139 +#: gnu/packages/audio.scm:2304 msgid "Library for serialising LV2 atoms to/from RDF" msgstr "" -#: gnu/packages/audio.scm:2141 +#: gnu/packages/audio.scm:2306 msgid "" "Sratom is a library for serialising LV2 atoms to/from RDF, particularly\n" "the Turtle syntax." msgstr "" -#: gnu/packages/audio.scm:2169 +#: gnu/packages/audio.scm:2334 msgid "Library for loading and wrapping LV2 plugin UIs" msgstr "" -#: gnu/packages/audio.scm:2171 +#: gnu/packages/audio.scm:2336 msgid "" "Suil is a lightweight C library for loading and wrapping LV2 plugin UIs.\n" "\n" @@ -653,11 +692,11 @@ msgid "" "Suil currently supports every combination of Gtk, Qt, and X11." msgstr "" -#: gnu/packages/audio.scm:2228 +#: gnu/packages/audio.scm:2393 msgid "Software synthesizer for playing MIDI files" msgstr "" -#: gnu/packages/audio.scm:2230 +#: gnu/packages/audio.scm:2395 msgid "" "TiMidity++ is a software synthesizer. It can play MIDI files by\n" "converting them into PCM waveform data; give it a MIDI data along with digital\n" @@ -666,43 +705,43 @@ msgid "" "disks as various audio file formats." msgstr "" -#: gnu/packages/audio.scm:2268 +#: gnu/packages/audio.scm:2433 msgid "Modular and extensible audio processing system" msgstr "" -#: gnu/packages/audio.scm:2270 +#: gnu/packages/audio.scm:2435 msgid "" "Vamp is an audio processing plugin system for plugins that extract\n" "descriptive information from audio data — typically referred to as audio\n" "analysis plugins or audio feature extraction plugins." msgstr "" -#: gnu/packages/audio.scm:2309 +#: gnu/packages/audio.scm:2474 msgid "Library for time stretching and pitch scaling of audio" msgstr "" -#: gnu/packages/audio.scm:2311 +#: gnu/packages/audio.scm:2476 msgid "" "SBSMS (Subband Sinusoidal Modeling Synthesis) is software for time\n" "stretching and pitch scaling of audio. This package contains the library." msgstr "" -#: gnu/packages/audio.scm:2330 +#: gnu/packages/audio.scm:2498 msgid "Hybrid lossless audio codec" msgstr "" -#: gnu/packages/audio.scm:2332 +#: gnu/packages/audio.scm:2500 msgid "" "WavPack is an audio compression format with lossless, lossy and hybrid\n" "compression modes. This package contains command-line programs and library to\n" "encode and decode wavpack files." msgstr "" -#: gnu/packages/audio.scm:2351 +#: gnu/packages/audio.scm:2519 msgid "Mod file playing library" msgstr "" -#: gnu/packages/audio.scm:2353 +#: gnu/packages/audio.scm:2521 msgid "" "Libmodplug renders mod music files as raw audio data, for playing or\n" "conversion. mod, .s3m, .it, .xm, and a number of lesser-known formats are\n" @@ -710,33 +749,33 @@ msgid "" "surround and reverb." msgstr "" -#: gnu/packages/audio.scm:2372 +#: gnu/packages/audio.scm:2540 msgid "Module player library" msgstr "" -#: gnu/packages/audio.scm:2374 +#: gnu/packages/audio.scm:2542 msgid "" "Libxmp is a library that renders module files to PCM data. It supports\n" "over 90 mainstream and obscure module formats including Protracker (MOD),\n" "Scream Tracker 3 (S3M), Fast Tracker II (XM), and Impulse Tracker (IT)." msgstr "" -#: gnu/packages/audio.scm:2397 +#: gnu/packages/audio.scm:2565 msgid "Extended module player" msgstr "" -#: gnu/packages/audio.scm:2399 +#: gnu/packages/audio.scm:2567 msgid "" "Xmp is a portable module player that plays over 90 mainstream and\n" "obscure module formats, including Protracker MOD, Fasttracker II XM, Scream\n" "Tracker 3 S3M and Impulse Tracker IT files." msgstr "" -#: gnu/packages/audio.scm:2430 +#: gnu/packages/audio.scm:2592 msgid "Audio processing library for changing tempo, pitch and playback rate" msgstr "" -#: gnu/packages/audio.scm:2432 +#: gnu/packages/audio.scm:2594 msgid "" "SoundTouch is an audio processing library for changing the tempo, pitch\n" "and playback rates of audio streams or audio files. It is intended for\n" @@ -744,11 +783,11 @@ msgid "" "control functionality, or just for playing around with the sound effects." msgstr "" -#: gnu/packages/audio.scm:2469 +#: gnu/packages/audio.scm:2631 msgid "Sound processing utility" msgstr "" -#: gnu/packages/audio.scm:2471 +#: gnu/packages/audio.scm:2633 msgid "" "SoX (Sound eXchange) is a command line utility that can convert\n" "various formats of computer audio files to other formats. It can also\n" @@ -756,92 +795,92 @@ msgid "" "can play and record audio files." msgstr "" -#: gnu/packages/audio.scm:2494 +#: gnu/packages/audio.scm:2656 msgid "One-dimensional sample-rate conversion library" msgstr "" -#: gnu/packages/audio.scm:2496 +#: gnu/packages/audio.scm:2658 msgid "" "The SoX Resampler library (libsoxr) performs one-dimensional sample-rate\n" "conversion. It may be used, for example, to resample PCM-encoded audio." msgstr "" -#: gnu/packages/audio.scm:2526 +#: gnu/packages/audio.scm:2688 msgid "MPEG Audio Layer 2 (MP2) encoder" msgstr "" -#: gnu/packages/audio.scm:2528 +#: gnu/packages/audio.scm:2690 msgid "" "TwoLAME is an optimised MPEG Audio Layer 2 (MP2) encoder based on\n" "tooLAME by Mike Cheng, which in turn is based upon the ISO dist10 code and\n" "portions of LAME." msgstr "" -#: gnu/packages/audio.scm:2567 +#: gnu/packages/audio.scm:2729 msgid "Audio I/O library" msgstr "" -#: gnu/packages/audio.scm:2569 +#: gnu/packages/audio.scm:2731 msgid "" "PortAudio is a portable C/C++ audio I/O library providing a simple API\n" "to record and/or play sound using a callback function or a blocking read/write\n" "interface." msgstr "" -#: gnu/packages/audio.scm:2599 +#: gnu/packages/audio.scm:2761 msgid "Graphical user interface for FluidSynth" msgstr "" -#: gnu/packages/audio.scm:2601 +#: gnu/packages/audio.scm:2763 msgid "" "Qsynth is a GUI front-end application for the FluidSynth SoundFont\n" "synthesizer written in C++." msgstr "" -#: gnu/packages/audio.scm:2638 +#: gnu/packages/audio.scm:2800 msgid "Networked audio system" msgstr "" -#: gnu/packages/audio.scm:2640 +#: gnu/packages/audio.scm:2802 msgid "" "RSound allows you to send audio from an application and transfer it\n" "directly to a different computer on your LAN network. It is an audio daemon\n" "with a much different focus than most other audio daemons." msgstr "" -#: gnu/packages/audio.scm:2671 +#: gnu/packages/audio.scm:2833 msgid "JACK audio frequency analyzer and display" msgstr "" -#: gnu/packages/audio.scm:2673 +#: gnu/packages/audio.scm:2835 msgid "" "XJackFreak is an audio analysis and equalizing tool for the Jack Audio\n" "Connection Kit. It can display the FFT of any input, modify it and output the\n" "result." msgstr "" -#: gnu/packages/audio.scm:2717 +#: gnu/packages/audio.scm:2881 msgid "Fast, partitioned convolution engine library" msgstr "" -#: gnu/packages/audio.scm:2719 +#: gnu/packages/audio.scm:2883 msgid "" "Zita convolver is a C++ library providing a real-time convolution\n" "engine." msgstr "" -#: gnu/packages/audio.scm:2764 +#: gnu/packages/audio.scm:2930 msgid "C++ library for resampling audio signals" msgstr "Bibliothèque C++ pour ré-échantillonner des signaux audio" -#: gnu/packages/audio.scm:2766 +#: gnu/packages/audio.scm:2932 msgid "" "Libzita-resampler is a C++ library for resampling audio signals. It is\n" "designed to be used within a real-time processing context, to be fast, and to\n" "provide high-quality sample rate conversion." msgstr "" -#: gnu/packages/audio.scm:2810 +#: gnu/packages/audio.scm:2976 msgid "" "Zita-alsa-pcmi is a C++ wrapper around the ALSA API. It provides easy\n" "access to ALSA PCM devices, taking care of the many functions required to\n" @@ -849,11 +888,11 @@ msgid "" "point audio data." msgstr "" -#: gnu/packages/audio.scm:2841 +#: gnu/packages/audio.scm:3001 msgid "Cue and toc file parsers and utilities" msgstr "" -#: gnu/packages/audio.scm:2842 +#: gnu/packages/audio.scm:3002 msgid "" "Cuetools is a set of programs that are useful for manipulating\n" "and using CUE sheet (cue) files and Table of Contents (toc) files. CUE and TOC\n" @@ -861,11 +900,11 @@ msgid "" "machine-readable ASCII format." msgstr "" -#: gnu/packages/audio.scm:2861 +#: gnu/packages/audio.scm:3021 msgid "WAVE audio data processing tool" msgstr "" -#: gnu/packages/audio.scm:2862 +#: gnu/packages/audio.scm:3022 msgid "" "shntool is a multi-purpose WAVE data processing and reporting\n" "utility. File formats are abstracted from its core, so it can process any file\n" @@ -874,74 +913,144 @@ msgid "" "use them split WAVE data into multiple files." msgstr "" -#: gnu/packages/audio.scm:2900 +#: gnu/packages/audio.scm:3060 msgid "DTS Coherent Acoustics decoder" msgstr "" -#: gnu/packages/audio.scm:2901 +#: gnu/packages/audio.scm:3061 msgid "" "Dcadec is a DTS Coherent Acoustics surround sound decoder\n" "with support for HD extensions." msgstr "" -#: gnu/packages/audio.scm:2922 +#: gnu/packages/audio.scm:3082 msgid "Tool to adjust loudness of media files" msgstr "" -#: gnu/packages/audio.scm:2924 +#: gnu/packages/audio.scm:3084 msgid "" "BS1770GAIN is a loudness scanner compliant with ITU-R BS.1770 and its\n" "flavors EBU R128, ATSC A/85, and ReplayGain 2.0. It helps normalizing the\n" "loudness of audio and video files to the same level." msgstr "" -#: gnu/packages/audio.scm:2955 +#: gnu/packages/audio.scm:3115 msgid "Lightweight audio filtering library" msgstr "" -#: gnu/packages/audio.scm:2956 +#: gnu/packages/audio.scm:3116 msgid "" "An easy to use audio filtering library made from webrtc\n" "code, used in @code{libtoxcore}." msgstr "" -#: gnu/packages/audio.scm:3000 +#: gnu/packages/audio.scm:3160 msgid "GSM 06.10 lossy speech compression library" msgstr "Bibliothèque de compression de la voix avec perte GSM 06.10" -#: gnu/packages/audio.scm:3001 +#: gnu/packages/audio.scm:3161 msgid "" "This C library provides an encoder and a decoder for the GSM\n" "06.10 RPE-LTP lossy speech compression algorithm." msgstr "" -#: gnu/packages/audio.scm:3022 +#: gnu/packages/audio.scm:3182 msgid "ALSA wrappers for Python" msgstr "" -#: gnu/packages/audio.scm:3024 +#: gnu/packages/audio.scm:3184 msgid "" "This package contains wrappers for accessing the ALSA API from Python.\n" "It is currently fairly complete for PCM devices, and has some support for\n" "mixers." msgstr "" -#: gnu/packages/audio.scm:3083 +#: gnu/packages/audio.scm:3222 +msgid "Bluetooth ALSA backend" +msgstr "" + +#: gnu/packages/audio.scm:3223 +msgid "" +"This project is a rebirth of a direct integration between\n" +"Bluez and ALSA. Since Bluez >= 5, the build-in integration has been removed\n" +"in favor of 3rd party audio applications. From now on, Bluez acts as a\n" +"middleware between an audio application, which implements Bluetooth audio\n" +"profile, and a Bluetooth audio device. BlueALSA registers all known Bluetooth\n" +"audio profiles in Bluez, so in theory every Bluetooth device (with audio\n" +"capabilities) can be connected. In order to access the audio stream, one has\n" +"to connect to the ALSA PCM device called @code{bluealsa}. The device is based\n" +"on the ALSA software PCM plugin." +msgstr "" + +#: gnu/packages/audio.scm:3285 msgid "Sound editor" msgstr "Éditeur de son" -#: gnu/packages/audio.scm:3086 +#: gnu/packages/audio.scm:3288 msgid "" "Snd is a sound editor modelled loosely after Emacs. It can be\n" "customized and extended using either the s7 Scheme implementation (included in\n" "the Snd sources), Ruby, or Forth." msgstr "" -#: gnu/packages/backup.scm:112 +#: gnu/packages/audio.scm:3321 +msgid "LV2 plugin for broadband noise reduction" +msgstr "" + +#: gnu/packages/audio.scm:3322 +msgid "" +"Noise Repellent is an LV2 plugin to reduce noise. It has\n" +"the following features:\n" +"\n" +"@enumerate\n" +"@item Spectral gating and spectral subtraction suppression rule\n" +"@item Adaptive and manual noise thresholds estimation\n" +"@item Adjustable noise floor\n" +"@item Adjustable offset of thresholds to perform over-subtraction\n" +"@item Time smoothing and a masking estimation to reduce artifacts\n" +"@item Basic onset detector to avoid transients suppression\n" +"@item Whitening of the noise floor to mask artifacts and to recover higher\n" +" frequencies\n" +"@item Option to listen to the residual signal\n" +"@item Soft bypass\n" +"@item Noise profile saved with the session\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/audio.scm:3390 +msgid "Command-line audio visualizer" +msgstr "Visionneuse audio en ligne de commande" + +#: gnu/packages/audio.scm:3391 +msgid "" +"@code{cli-visualizer} displays fast-Fourier\n" +"transforms (FFTs) of the sound being played, as well as other graphical\n" +"representations." +msgstr "" + +#: gnu/packages/audio.scm:3442 +msgid "Console audio visualizer for ALSA, MPD, and PulseAudio" +msgstr "" + +#: gnu/packages/audio.scm:3443 +msgid "" +"C.A.V.A. is a bar audio spectrum visualizer for the terminal\n" +"using ALSA, MPD, PulseAudio, or a FIFO buffer as its input." +msgstr "" + +#: gnu/packages/audio.scm:3476 +msgid "Pro-quality GM soundfont" +msgstr "" + +#: gnu/packages/audio.scm:3477 +msgid "Fluid-3 is Frank Wen's pro-quality GM soundfont." +msgstr "" + +#: gnu/packages/backup.scm:120 msgid "Encrypted backup using rsync algorithm" msgstr "Système de sauvegarde chiffrée utilisant l'algorithme rsync" -#: gnu/packages/backup.scm:114 +#: gnu/packages/backup.scm:122 msgid "" "Duplicity backs up directories by producing encrypted tar-format volumes\n" "and uploading them to a remote or local file server. Because duplicity uses\n" @@ -957,11 +1066,11 @@ msgstr "" "dernière sauvegarde. L'utilisation de GnuPG pour chiffrer ou signer ces archives\n" "permet de prévenir tout rique d'espionnage ou d'altération par le serveur." -#: gnu/packages/backup.scm:143 +#: gnu/packages/backup.scm:151 msgid "File verification and repair tools" msgstr "" -#: gnu/packages/backup.scm:144 +#: gnu/packages/backup.scm:152 msgid "" "Par2cmdline uses Reed-Solomon error-correcting codes to\n" "generate and verify PAR2 recovery files. These files can be distributed\n" @@ -973,11 +1082,11 @@ msgid "" "can even repair them." msgstr "" -#: gnu/packages/backup.scm:180 +#: gnu/packages/backup.scm:188 msgid "Simple incremental backup tool" msgstr "Outil simple de sauvegarde incrémentale" -#: gnu/packages/backup.scm:182 +#: gnu/packages/backup.scm:190 msgid "" "Hdup2 is a backup utility, its aim is to make backup really simple. The\n" "backup scheduling is done by means of a cron job. It supports an\n" @@ -989,11 +1098,11 @@ msgstr "" "supporte un mécanisme d'inclusion et d'exclusion, les sauvegardes distantes,\n" "chiffrées ou morcelées (appelées chunks) permettant un gravure sur CD/DVD aisée." -#: gnu/packages/backup.scm:236 +#: gnu/packages/backup.scm:264 msgid "Multi-format archive and compression library" msgstr "Bibliothèque de compression et d'archivage multi-format" -#: gnu/packages/backup.scm:238 +#: gnu/packages/backup.scm:266 msgid "" "Libarchive provides a flexible interface for reading and writing\n" "archives in various formats such as tar and cpio. Libarchive also supports\n" @@ -1011,11 +1120,11 @@ msgstr "" "l'archive en continu. Notez qu'il n'existe pour l'instant aucun support intégré\n" "pour les accès aléatoires ou les modifications ponctuelles." -#: gnu/packages/backup.scm:315 +#: gnu/packages/backup.scm:324 msgid "Provide a list of files to backup" msgstr "Fournit une liste des fichiers à sauvegarder" -#: gnu/packages/backup.scm:317 +#: gnu/packages/backup.scm:326 msgid "" "Rdup is a utility inspired by rsync and the plan9 way of doing backups.\n" "Rdup itself does not backup anything, it only print a list of absolute\n" @@ -1027,11 +1136,11 @@ msgstr "" "liste de fichiers sur la sortie standard. Des scripts auxiliaires utilisant\n" "cette liste et implantant la stratégie de sauvegarde sont nécessaires." -#: gnu/packages/backup.scm:347 +#: gnu/packages/backup.scm:356 msgid "Tar-compatible archiver" msgstr "Archiveur compatible avec le format tar" -#: gnu/packages/backup.scm:349 +#: gnu/packages/backup.scm:358 msgid "" "Btar is a tar-compatible archiver which allows arbitrary compression and\n" "ciphering, redundancy, differential backup, indexed extraction, multicore\n" @@ -1043,11 +1152,11 @@ msgstr "" "l'extraction indexée, la compression multi-coeurs, la sérialisation des entrées-\n" "sorties et la tolérance aux erreurs d'archivage partielles." -#: gnu/packages/backup.scm:375 +#: gnu/packages/backup.scm:384 msgid "Local/remote mirroring+incremental backup" msgstr "Sauvegarde mirroir/incrémentales, locales ou distantes" -#: gnu/packages/backup.scm:377 +#: gnu/packages/backup.scm:386 msgid "" "Rdiff-backup backs up one directory to another, possibly over a network.\n" "The target directory ends up a copy of the source directory, but extra reverse\n" @@ -1074,13 +1183,13 @@ msgstr "" "différence sera transmise. Enfin, rdiff-backup est simple d'utilisation et la\n" "configuration par défaut sera généralement suffisante." -#: gnu/packages/backup.scm:419 +#: gnu/packages/backup.scm:428 msgid "Deduplicating snapshot backup utility based on rsync" msgstr "Utilitaire de sauvegarde dédupliquées basé sur rsync" -#: gnu/packages/backup.scm:420 +#: gnu/packages/backup.scm:429 msgid "" -"rsnapshot is a filesystem snapshot utility based on rsync.\n" +"rsnapshot is a file system snapshot utility based on rsync.\n" "rsnapshot makes it easy to make periodic snapshots of local machines, and\n" "remote machines over SSH. To reduce the disk space required for each backup,\n" "rsnapshot uses hard links to deduplicate identical files." @@ -1091,11 +1200,11 @@ msgstr "" "pour chaque sauvegarde, rsnapshot utilise des liens en dur pour dédupliquer\n" "les fichiers identiques." -#: gnu/packages/backup.scm:455 +#: gnu/packages/backup.scm:464 msgid "Tools & library for data backup and distributed storage" msgstr "Outils et bibliothèque pour la sauvegarde de données et le stockage distribué" -#: gnu/packages/backup.scm:457 +#: gnu/packages/backup.scm:466 msgid "" "Libchop is a set of utilities and library for data backup and\n" "distributed storage. Its main application is @command{chop-backup}, an\n" @@ -1114,11 +1223,11 @@ msgstr "" "le stockage adressable par contenu, le clefs de hash, les arbres de Merkle,\n" "la détection de similarité et la compression sans perte." -#: gnu/packages/backup.scm:556 +#: gnu/packages/backup.scm:578 msgid "Deduplicated, encrypted, authenticated and compressed backups" msgstr "Sauvegardes dédupliquées, chiffrées, authentifiées et compressées" -#: gnu/packages/backup.scm:557 +#: gnu/packages/backup.scm:579 msgid "" "Borg is a deduplicating backup program. Optionally, it\n" "supports compression and authenticated encryption. The main goal of Borg is to\n" @@ -1135,11 +1244,11 @@ msgstr "" "chiffrement authentifié le rend adapté aux sauvegardes vers des cibles qui ne\n" "sont pas de confiance. Borg est un fork de Attic." -#: gnu/packages/backup.scm:603 +#: gnu/packages/backup.scm:625 msgid "Deduplicating backup program" msgstr "Programme de sauvegardes dédupliquées" -#: gnu/packages/backup.scm:604 +#: gnu/packages/backup.scm:626 msgid "" "Attic is a deduplicating backup program. The main goal of\n" "Attic is to provide an efficient and secure way to backup data. The data\n" @@ -1151,28 +1260,28 @@ msgstr "" "technique de déduplication de données utilisée par Attic le rend adapté aux\n" "sauvegardes quotidiennes car seuls les changements sont stockés." -#: gnu/packages/backup.scm:634 +#: gnu/packages/backup.scm:656 msgid "WIM file manipulation library and utilities" msgstr "Bibliothèque et utilitaires de manipulation de fichiers WIM" -#: gnu/packages/backup.scm:635 +#: gnu/packages/backup.scm:657 msgid "" "wimlib is a C library and set of command-line utilities for\n" "creating, modifying, extracting, and mounting archives in the Windows Imaging\n" "Format (@dfn{WIM files}). It can capture and apply WIMs directly from and to\n" "NTFS volumes using @code{ntfs-3g}, preserving NTFS-specific attributes." msgstr "" -"Wimlib est une bibliothèque C et un ensemble d'outils en ligne de commande\n" +"wimlib est une bibliothèque C et un ensemble d'outils en ligne de commande\n" "pour créer, modifier, extraire et monter des archives dans le Format d'Image\n" "Windows (@dfn{fichiers WIM}). Il peut capturer et appliquer des WIM\n" "directement depuis ou sur des volumes NTFS avec @code{ntfs-3g}, et préserve\n" "les attributs spécifiques à NTFS." -#: gnu/packages/backup.scm:692 +#: gnu/packages/backup.scm:714 msgid "Easy and secure backup program" msgstr "Programme de sauvegarde sécurisées et faciles" -#: gnu/packages/backup.scm:693 +#: gnu/packages/backup.scm:715 msgid "" "Obnam is an easy, secure backup program. Features\n" "include snapshot backups, data de-duplication and encrypted backups\n" @@ -1186,22 +1295,58 @@ msgstr "" "ou en ligne avec le protocole SSH SFTP. Le serveur de sauvegarde, s'il est\n" "utilisé, ne requiert aucun programme spécifique en dehors de SSH." -#: gnu/packages/backup.scm:799 +#: gnu/packages/backup.scm:821 msgid "Fast, disk based, rotating network backup system" msgstr "" -#: gnu/packages/backup.scm:801 +#: gnu/packages/backup.scm:823 msgid "" "With dirvish you can maintain a set of complete images of your\n" -"filesystems with unattended creation and expiration. A dirvish backup vault\n" +"file systems with unattended creation and expiration. A dirvish backup vault\n" "is like a time machine for your data. " msgstr "" -#: gnu/packages/base.scm:73 +#: gnu/packages/backup.scm:909 +msgid "Backup program with multiple revisions, encryption and more" +msgstr "" + +#: gnu/packages/backup.scm:910 +msgid "" +"Restic is a program that does backups right and was designed\n" +"with the following principles in mind:\n" +"\n" +"@itemize\n" +"@item Easy: Doing backups should be a frictionless process, otherwise you\n" +"might be tempted to skip it. Restic should be easy to configure and use, so\n" +"that, in the event of a data loss, you can just restore it. Likewise,\n" +"restoring data should not be complicated.\n" +"\n" +"@item Fast: Backing up your data with restic should only be limited by your\n" +"network or hard disk bandwidth so that you can backup your files every day.\n" +"Nobody does backups if it takes too much time. Restoring backups should only\n" +"transfer data that is needed for the files that are to be restored, so that\n" +"this process is also fast.\n" +"\n" +"@item Verifiable: Much more important than backup is restore, so restic\n" +"enables you to easily verify that all data can be restored. @item Secure:\n" +"Restic uses cryptography to guarantee confidentiality and integrity of your\n" +"data. The location the backup data is stored is assumed not to be a trusted\n" +"environment (e.g. a shared space where others like system administrators are\n" +"able to access your backups). Restic is built to secure your data against\n" +"such attackers.\n" +"\n" +"@item Efficient: With the growth of data, additional snapshots should only\n" +"take the storage of the actual increment. Even more, duplicate data should be\n" +"de-duplicated before it is actually written to the storage back end to save\n" +"precious backup space.\n" +"@end itemize" +msgstr "" + +#: gnu/packages/base.scm:79 msgid "Hello, GNU world: An example GNU package" msgstr "Hello, GNU world: Un exemple de paquet GNU" -#: gnu/packages/base.scm:75 +#: gnu/packages/base.scm:81 msgid "" "GNU Hello prints the message \"Hello, world!\" and then exits. It\n" "serves as an example of standard GNU coding practices. As such, it supports\n" @@ -1211,11 +1356,11 @@ msgstr "" "d'exemple pour les pratiques de programmation GNU standard. Il supporte\n" "les arguments en ligne de commande, plusieurs langages, etc." -#: gnu/packages/base.scm:110 +#: gnu/packages/base.scm:116 msgid "Print lines matching a pattern" msgstr "Affiche les lignes correspondant à un pattern donné" -#: gnu/packages/base.scm:112 +#: gnu/packages/base.scm:118 msgid "" "grep is a tool for finding text inside files. Text is found by\n" "matching a pattern provided by the user in one or many files. The pattern\n" @@ -1233,7 +1378,7 @@ msgstr "" "les numéros de ligne. GNU grep offre de nombreuses extensions, incluant par exemple\n" "la recherche récursive sur des répertoires." -#: gnu/packages/base.scm:134 +#: gnu/packages/base.scm:140 msgid "Stream editor" msgstr "Éditeur de flux" @@ -1251,11 +1396,11 @@ msgstr "" "des morceaux de texte dans un flux. L'implantation GNU ajoute plusieurs extensions\n" "à l'utilitaire standard." -#: gnu/packages/base.scm:196 +#: gnu/packages/base.scm:216 msgid "Managing tar archives" msgstr "Gestion d'archives tar" -#: gnu/packages/base.scm:198 +#: gnu/packages/base.scm:218 msgid "" "Tar provides the ability to create tar archives, as well as the\n" "ability to extract, update or list files in an existing archive. It is\n" @@ -1271,11 +1416,11 @@ msgstr "" "les permissions et les dates de création/modification. GNU tar ajoute de\n" "nombreuses extensions à l'utilaire standard." -#: gnu/packages/base.scm:221 +#: gnu/packages/base.scm:247 msgid "Apply differences to originals, with optional backups" msgstr "Applique les différences aux originaux, avec sauvegardes optionnelles" -#: gnu/packages/base.scm:223 +#: gnu/packages/base.scm:249 msgid "" "Patch is a program that applies changes to files based on differences\n" "laid out as by the program \"diff\". The changes may be applied to one or more\n" @@ -1289,11 +1434,11 @@ msgstr "" "accepte différents formats diff. Il peut aussi être utilisé pour annuler des\n" "différences appliquées antérieurement." -#: gnu/packages/base.scm:243 +#: gnu/packages/base.scm:270 msgid "Comparing and merging files" msgstr "Comparaison et fusion des fichiers" -#: gnu/packages/base.scm:245 +#: gnu/packages/base.scm:272 msgid "" "GNU Diffutils is a package containing tools for finding the\n" "differences between files. The \"diff\" command is used to show how two files\n" @@ -1307,11 +1452,11 @@ msgstr "" "numéros de lignes et décalages où ils diffèrent. « diff3 » permet de comparer\n" "trois fichiers. Enfin, « sdiff » offre un moyen interactif de fusionner deux fichiers." -#: gnu/packages/base.scm:282 +#: gnu/packages/base.scm:315 msgid "Operating on files matching given criteria" msgstr "Opération sur les fichiers correspondant au critère donné" -#: gnu/packages/base.scm:284 +#: gnu/packages/base.scm:317 msgid "" "Findutils supplies the basic file directory searching utilities of the\n" "GNU system. It consists of two primary searching utilities: \"find\"\n" @@ -1327,11 +1472,11 @@ msgstr "" "sont inclus : \"updatedb\" met à jour la base de données et \"xargs\" peut être utilisé \n" "pour appliquer des commandes avec des arguments longs et arbitraires." -#: gnu/packages/base.scm:340 +#: gnu/packages/base.scm:375 msgid "Core GNU utilities (file, text, shell)" msgstr "Utilitaires GNU (fichier, texte, shell)" -#: gnu/packages/base.scm:342 +#: gnu/packages/base.scm:377 msgid "" "GNU Coreutils includes all of the basic command-line tools that are\n" "expected in a POSIX system. These provide the basic file, shell and text\n" @@ -1343,11 +1488,11 @@ msgstr "" "de fichiers, du shell et de textes d'un système GNU. Ils offrent pour la plupart\n" "des fonctionnalités étendues au-delà de ce qui est défini dans le standard POSIX." -#: gnu/packages/base.scm:384 +#: gnu/packages/base.scm:424 msgid "Remake files automatically" msgstr "Recompiler les fichiers automatiquement" -#: gnu/packages/base.scm:386 +#: gnu/packages/base.scm:426 msgid "" "Make is a program that is used to control the production of\n" "executables or other files from their source files. The process is\n" @@ -1364,11 +1509,11 @@ msgstr "" "regénérés. GNU make possède beaucoup d'extensions en plus de\n" "l'utilitaire standard." -#: gnu/packages/base.scm:428 +#: gnu/packages/base.scm:472 msgid "Binary utilities: bfd gas gprof ld" msgstr "Utilitaires binaires: bfd gas gprof ld" -#: gnu/packages/base.scm:430 +#: gnu/packages/base.scm:474 msgid "" "GNU Binutils is a collection of tools for working with binary files.\n" "Perhaps the most notable are \"ld\", a linker, and \"as\", an assembler.\n" @@ -1384,11 +1529,11 @@ msgstr "" "des archives. La bibliothèque \"bfd\", permettant de travailler avec des exécutables et des\n" "des formats objet, est aussi incluse." -#: gnu/packages/base.scm:517 +#: gnu/packages/base.scm:560 msgid "The linker wrapper" msgstr "L'enveloppe de l'éditeur de lien" -#: gnu/packages/base.scm:519 +#: gnu/packages/base.scm:562 msgid "" "The linker wrapper (or 'ld-wrapper') wraps the linker to add any\n" "missing '-rpath' flags, and to detect any misuse of libraries outside of the\n" @@ -1398,11 +1543,11 @@ msgstr "" "liens pour ajouter les drapeaux « -rpath » manquants et pour détecter la\n" "mauvaise utilisation de bibliothèques en dehors du store." -#: gnu/packages/base.scm:695 +#: gnu/packages/base.scm:782 msgid "The GNU C Library" msgstr "La bibliothèque GNU C" -#: gnu/packages/base.scm:697 +#: gnu/packages/base.scm:784 msgid "" "Any Unix-like operating system needs a C library: the library which\n" "defines the \"system calls\" and other basic facilities such as open, malloc,\n" @@ -1416,47 +1561,47 @@ msgstr "" "telles que open, malloc, printf, exit, ... La bibliothèque GNU C est utilisée comme\n" "bibliothèque C dans les systèmes GNU et la plupart des systèmes basés sur le noyau Linux." -#: gnu/packages/base.scm:775 +#: gnu/packages/base.scm:861 msgid "The GNU C Library (GNU Hurd variant)" msgstr "La bibliothèque GNU C (variante GNU Hurd)" -#: gnu/packages/base.scm:887 +#: gnu/packages/base.scm:998 msgid "All the locales supported by the GNU C Library" msgstr "" -#: gnu/packages/base.scm:889 +#: gnu/packages/base.scm:1000 msgid "" "This package provides all the locales supported by the GNU C Library,\n" "more than 400 in total. To use them set the 'LOCPATH' environment variable to\n" "the 'share/locale' sub-directory of this package." msgstr "" -#: gnu/packages/base.scm:957 +#: gnu/packages/base.scm:1069 msgid "Small sample of UTF-8 locales" msgstr "" -#: gnu/packages/base.scm:959 +#: gnu/packages/base.scm:1071 msgid "" "This package provides a small sample of UTF-8 locales mostly useful in\n" "test environments." msgstr "" -#: gnu/packages/base.scm:977 +#: gnu/packages/base.scm:1089 msgid "Find full path of shell commands" msgstr "" -#: gnu/packages/base.scm:979 +#: gnu/packages/base.scm:1091 msgid "" "The which program finds the location of executables in PATH, with a\n" "variety of options. It is an alternative to the shell \"type\" built-in\n" "command." msgstr "" -#: gnu/packages/base.scm:1084 +#: gnu/packages/base.scm:1194 msgid "Database of current and historical time zones" msgstr "Base de données des fuseaux horaires courant et historiques" -#: gnu/packages/base.scm:1085 +#: gnu/packages/base.scm:1195 msgid "" "The Time Zone Database (often called tz or zoneinfo)\n" "contains code and data that represent the history of local time for many\n" @@ -1470,22 +1615,22 @@ msgstr "" "pour refléter les changements effectués par les entités politiques aux limites de ces zones,\n" "les décalages UTC et les changements d'heures." -#: gnu/packages/base.scm:1136 +#: gnu/packages/base.scm:1231 msgid "Character set conversion library" msgstr "Bibliothèque de conversion de jeux de caractères" -#: gnu/packages/base.scm:1138 +#: gnu/packages/base.scm:1233 msgid "" "libiconv provides an implementation of the iconv function for systems\n" "that lack it. iconv is used to convert between character encodings in a\n" "program. It supports a wide variety of different encodings." msgstr "" -#: gnu/packages/bittorrent.scm:108 +#: gnu/packages/bittorrent.scm:110 msgid "Fast and easy BitTorrent client" msgstr "" -#: gnu/packages/bittorrent.scm:110 +#: gnu/packages/bittorrent.scm:112 msgid "" "Transmission is a BitTorrent client that comes with graphical,\n" "textual, and Web user interfaces. Transmission also has a daemon for\n" @@ -1493,129 +1638,143 @@ msgid "" "DHT, µTP, PEX and Magnet Links." msgstr "" -#: gnu/packages/bittorrent.scm:142 +#: gnu/packages/bittorrent.scm:144 msgid "BitTorrent library of rtorrent" msgstr "" -#: gnu/packages/bittorrent.scm:144 +#: gnu/packages/bittorrent.scm:146 msgid "" "LibTorrent is a BitTorrent library used by and developed in parallel\n" "with the BitTorrent client rtorrent. It is written in C++ with emphasis on\n" "speed and efficiency." msgstr "" -#: gnu/packages/bittorrent.scm:171 +#: gnu/packages/bittorrent.scm:173 msgid "BitTorrent client with ncurses interface" msgstr "" -#: gnu/packages/bittorrent.scm:173 +#: gnu/packages/bittorrent.scm:175 msgid "" "rTorrent is a BitTorrent client with an ncurses interface. It supports\n" "full encryption, DHT, PEX, and Magnet Links. It can also be controlled via\n" "XML-RPC over SCGI." msgstr "" -#: gnu/packages/bittorrent.scm:217 gnu/packages/bittorrent.scm:258 +#: gnu/packages/bittorrent.scm:208 gnu/packages/bittorrent.scm:249 msgid "Console client for the Transmission BitTorrent daemon" msgstr "" -#: gnu/packages/bittorrent.scm:218 +#: gnu/packages/bittorrent.scm:209 msgid "" "Tremc is a console client, with a curses interface, for the\n" "Transmission BitTorrent daemon." msgstr "" -#: gnu/packages/bittorrent.scm:259 +#: gnu/packages/bittorrent.scm:250 msgid "" "Transmission-remote-cli is a console client, with a curses\n" "interface, for the Transmission BitTorrent daemon. This package is no longer\n" "maintained upstream." msgstr "" -#: gnu/packages/bittorrent.scm:307 +#: gnu/packages/bittorrent.scm:298 msgid "Utility for parallel downloading files" msgstr "" -#: gnu/packages/bittorrent.scm:309 +#: gnu/packages/bittorrent.scm:300 msgid "" "Aria2 is a lightweight, multi-protocol & multi-source command-line\n" "download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.\n" "Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces." msgstr "" -#: gnu/packages/bittorrent.scm:342 +#: gnu/packages/bittorrent.scm:331 msgid "Universal download manager with GTK+ interface" msgstr "" -#: gnu/packages/bittorrent.scm:344 +#: gnu/packages/bittorrent.scm:333 msgid "" "uGet is portable download manager with GTK+ interface supporting\n" "HTTP, HTTPS, BitTorrent and Metalink, supporting multi-connection\n" "downloads, download scheduling, download rate limiting." msgstr "" -#: gnu/packages/bittorrent.scm:372 +#: gnu/packages/bittorrent.scm:362 msgid "Utility to create BitTorrent metainfo files" msgstr "" -#: gnu/packages/bittorrent.scm:373 +#: gnu/packages/bittorrent.scm:364 msgid "" -"mktorrent is a simple command-line utility to create\n" -"BitTorrent @dfn{metainfo} files, often known simply as @dfn{torrents}, from\n" -"both single files and whole directories. It can add multiple trackers and web\n" -"seed URLs, and set the @code{private} flag to disallow advertisement through\n" -"the distributed hash table (DHT) and Peer Exchange. Hashing is multi-threaded\n" +"mktorrent is a simple command-line utility to create BitTorrent\n" +"@dfn{metainfo} files, often known simply as @dfn{torrents}, from both single\n" +"files and whole directories. It can add multiple trackers and web seed URLs,\n" +"and set the @code{private} flag to disallow advertisement through the\n" +"distributed hash table (@dfn{DHT}) and Peer Exchange. Hashing is multi-threaded\n" "and will take advantage of multiple processor cores where possible." msgstr "" -#: gnu/packages/bittorrent.scm:414 +#: gnu/packages/bittorrent.scm:404 msgid "Feature complete BitTorrent implementation" msgstr "" -#: gnu/packages/bittorrent.scm:416 +#: gnu/packages/bittorrent.scm:406 msgid "" "libtorrent-rasterbar is a feature complete C++ BitTorrent implementation\n" "focusing on efficiency and scalability. It runs on embedded devices as well as\n" "desktops." msgstr "" -#: gnu/packages/certs.scm:66 -msgid "Python script to extract .pem data from certificate collection" +#: gnu/packages/bittorrent.scm:444 +msgid "Graphical BitTorrent client" +msgstr "" + +#: gnu/packages/bittorrent.scm:446 +msgid "" +"qBittorrent is a BitTorrent client programmed in C++/Qt that uses\n" +"libtorrent (sometimes called libtorrent-rasterbar) by Arvid Norberg.\n" +"\n" +"It aims to be a good alternative to all other BitTorrent clients out there.\n" +"qBittorrent is fast, stable and provides unicode support as well as many\n" +"features." msgstr "" #: gnu/packages/certs.scm:68 +msgid "Python script to extract .pem data from certificate collection" +msgstr "" + +#: gnu/packages/certs.scm:70 msgid "" "certdata2pem.py is a Python script to transform X.509 certificate\n" "\"source code\" as contained, for example, in the Mozilla sources, into\n" ".pem formatted certificates." msgstr "" -#: gnu/packages/certs.scm:137 +#: gnu/packages/certs.scm:140 msgid "CA certificates from Mozilla" msgstr "" -#: gnu/packages/certs.scm:139 +#: gnu/packages/certs.scm:142 msgid "" "This package provides certificates for Certification Authorities (CA)\n" "taken from the NSS package and thus ultimately from the Mozilla project." msgstr "" -#: gnu/packages/certs.scm:208 +#: gnu/packages/certs.scm:210 msgid "Let's Encrypt root and intermediate certificates" msgstr "" -#: gnu/packages/certs.scm:209 +#: gnu/packages/certs.scm:211 msgid "" "This package provides a certificate store containing only the\n" "Let's Encrypt root and intermediate certificates. It is intended to be used\n" "within Guix." msgstr "" -#: gnu/packages/compression.scm:100 +#: gnu/packages/compression.scm:104 msgid "Compression library" msgstr "Bibliothèque de compression" -#: gnu/packages/compression.scm:102 +#: gnu/packages/compression.scm:106 msgid "" "zlib is designed to be a free, general-purpose, legally unencumbered --\n" "that is, not covered by any patents -- lossless data-compression library for\n" @@ -1628,42 +1787,42 @@ msgid "" "in compression." msgstr "" -#: gnu/packages/compression.scm:133 +#: gnu/packages/compression.scm:137 msgid "Zip Compression library" msgstr "" -#: gnu/packages/compression.scm:135 +#: gnu/packages/compression.scm:139 msgid "" "Minizip is a minimalistic library that supports compressing,\n" "extracting and viewing ZIP archives. This version is extracted from\n" "the @code{zlib} source." msgstr "" -#: gnu/packages/compression.scm:154 +#: gnu/packages/compression.scm:158 msgid "Replacement for Sun's 'jar' utility" msgstr "" -#: gnu/packages/compression.scm:156 +#: gnu/packages/compression.scm:160 msgid "" "FastJar is an attempt to create a much faster replacement for Sun's 'jar'\n" "utility. Instead of being written in Java, FastJar is written in C." msgstr "" -#: gnu/packages/compression.scm:190 +#: gnu/packages/compression.scm:194 msgid "C library for manipulating POSIX tar files" msgstr "Bibliothèque C pour manipuler des fichiers tar POSIX" -#: gnu/packages/compression.scm:192 +#: gnu/packages/compression.scm:196 msgid "" "libtar is a C library for manipulating POSIX tar files. It handles\n" "adding and extracting files to/from a tar archive." msgstr "" -#: gnu/packages/compression.scm:209 +#: gnu/packages/compression.scm:213 msgid "General file (de)compression (using lzw)" msgstr "" -#: gnu/packages/compression.scm:214 +#: gnu/packages/compression.scm:227 msgid "" "GNU Gzip provides data compression and decompression utilities; the\n" "typical extension is \".gz\". Unlike the \"zip\" format, it compresses a single\n" @@ -1671,11 +1830,11 @@ msgid "" "\".tar.gz\" or \".tgz\", etc." msgstr "" -#: gnu/packages/compression.scm:284 +#: gnu/packages/compression.scm:310 msgid "High-quality data compression program" msgstr "" -#: gnu/packages/compression.scm:286 +#: gnu/packages/compression.scm:312 msgid "" "bzip2 is a freely available, patent free (see below), high-quality data\n" "compressor. It typically compresses files to within 10% to 15% of the best\n" @@ -1684,11 +1843,11 @@ msgid "" "decompression." msgstr "" -#: gnu/packages/compression.scm:307 +#: gnu/packages/compression.scm:333 msgid "Parallel bzip2 compression utility" msgstr "" -#: gnu/packages/compression.scm:309 +#: gnu/packages/compression.scm:335 msgid "" "lbzip2 is a multi-threaded compression utility with support for the\n" "bzip2 compressed file format. lbzip2 can process standard bz2 files in\n" @@ -1698,11 +1857,11 @@ msgid "" "compatible with bzip2 – both at file format and command line level." msgstr "" -#: gnu/packages/compression.scm:339 +#: gnu/packages/compression.scm:365 msgid "Parallel bzip2 implementation" msgstr "" -#: gnu/packages/compression.scm:341 +#: gnu/packages/compression.scm:367 msgid "" "Pbzip2 is a parallel implementation of the bzip2 block-sorting file\n" "compressor that uses pthreads and achieves near-linear speedup on SMP machines.\n" @@ -1710,11 +1869,11 @@ msgid "" "compressed with pbzip2 can be decompressed with bzip2)." msgstr "" -#: gnu/packages/compression.scm:362 +#: gnu/packages/compression.scm:388 msgid "General-purpose data compression" msgstr "" -#: gnu/packages/compression.scm:364 +#: gnu/packages/compression.scm:390 msgid "" "XZ Utils is free general-purpose data compression software with high\n" "compression ratio. XZ Utils were written for POSIX-like systems, but also\n" @@ -1727,11 +1886,11 @@ msgid "" "than gzip and 15 % smaller output than bzip2." msgstr "" -#: gnu/packages/compression.scm:392 +#: gnu/packages/compression.scm:418 msgid "Data compression library suitable for real-time data de-/compression" msgstr "" -#: gnu/packages/compression.scm:394 +#: gnu/packages/compression.scm:420 msgid "" "LZO is a data compression library which is suitable for data\n" "de-/compression in real-time. This means it favours speed over\n" @@ -1741,22 +1900,22 @@ msgid "" "format are designed to be portable across platforms." msgstr "" -#: gnu/packages/compression.scm:430 +#: gnu/packages/compression.scm:456 msgid "Python bindings for the LZO data compression library" msgstr "Liaisons python pour la bibliothèque de compression LZO" -#: gnu/packages/compression.scm:432 +#: gnu/packages/compression.scm:458 msgid "" "Python-LZO provides Python bindings for LZO, i.e. you can access\n" "the LZO library from your Python scripts thereby compressing ordinary\n" "Python strings." msgstr "" -#: gnu/packages/compression.scm:455 +#: gnu/packages/compression.scm:481 msgid "Compress or expand files" msgstr "Compresse et décompresse des fichiers" -#: gnu/packages/compression.scm:457 +#: gnu/packages/compression.scm:483 msgid "" "Lzop is a file compressor which is very similar to gzip. Lzop uses the\n" "LZO data compression library for compression services, and its main advantages\n" @@ -1764,11 +1923,11 @@ msgid "" "some compression ratio)." msgstr "" -#: gnu/packages/compression.scm:476 +#: gnu/packages/compression.scm:502 msgid "Lossless data compressor based on the LZMA algorithm" msgstr "" -#: gnu/packages/compression.scm:478 +#: gnu/packages/compression.scm:504 msgid "" "Lzip is a lossless data compressor with a user interface similar to the\n" "one of gzip or bzip2. Lzip decompresses almost as fast as gzip and compresses\n" @@ -1776,11 +1935,11 @@ msgid "" "archiving. Lzip is a clean implementation of the LZMA algorithm." msgstr "" -#: gnu/packages/compression.scm:497 +#: gnu/packages/compression.scm:523 msgid "Recover and decompress data from damaged lzip files" msgstr "" -#: gnu/packages/compression.scm:499 +#: gnu/packages/compression.scm:525 msgid "" "Lziprecover is a data recovery tool and decompressor for files in the lzip\n" "compressed data format (.lz). It can test the integrity of lzip files, extract\n" @@ -1796,11 +1955,11 @@ msgid "" "decompressors when faced with corrupted input." msgstr "" -#: gnu/packages/compression.scm:540 +#: gnu/packages/compression.scm:567 msgid "Archives in shell scripts, uuencode/uudecode" msgstr "" -#: gnu/packages/compression.scm:542 +#: gnu/packages/compression.scm:569 msgid "" "GNU sharutils is a package for creating and manipulating shell\n" "archives that can be readily emailed. A shell archive is a file that can be\n" @@ -1808,71 +1967,71 @@ msgid "" "This package is mostly for compatibility and historical interest." msgstr "" -#: gnu/packages/compression.scm:573 +#: gnu/packages/compression.scm:600 msgid "Library for SoundFont decompression" msgstr "" -#: gnu/packages/compression.scm:575 +#: gnu/packages/compression.scm:602 msgid "" "SfArkLib is a C++ library for decompressing SoundFont files compressed\n" "with the sfArk algorithm." msgstr "" -#: gnu/packages/compression.scm:608 +#: gnu/packages/compression.scm:636 msgid "Basic sfArk decompressor" msgstr "" -#: gnu/packages/compression.scm:609 +#: gnu/packages/compression.scm:637 msgid "" "SfArk extractor converts SoundFonts in the compressed legacy\n" "sfArk file format to the uncompressed sf2 format." msgstr "" -#: gnu/packages/compression.scm:626 +#: gnu/packages/compression.scm:654 msgid "Compression tools for some formats used by Microsoft" msgstr "" -#: gnu/packages/compression.scm:628 +#: gnu/packages/compression.scm:656 msgid "" "The purpose of libmspack is to provide both compression and\n" "decompression of some loosely related file formats used by Microsoft." msgstr "" -#: gnu/packages/compression.scm:647 +#: gnu/packages/compression.scm:675 msgid "Low-level interface to bzip2 compression library" msgstr "" -#: gnu/packages/compression.scm:648 +#: gnu/packages/compression.scm:676 msgid "" "This module provides a Perl interface to the bzip2\n" "compression library." msgstr "" -#: gnu/packages/compression.scm:682 +#: gnu/packages/compression.scm:710 msgid "Low-level interface to zlib compression library" msgstr "" -#: gnu/packages/compression.scm:683 +#: gnu/packages/compression.scm:711 msgid "" "This module provides a Perl interface to the zlib\n" "compression library." msgstr "" -#: gnu/packages/compression.scm:704 +#: gnu/packages/compression.scm:732 msgid "IO Interface to compressed files/buffers" msgstr "" -#: gnu/packages/compression.scm:705 +#: gnu/packages/compression.scm:733 msgid "" "IO-Compress provides a Perl interface to allow reading and\n" "writing of compressed data created with the zlib and bzip2 libraries." msgstr "" -#: gnu/packages/compression.scm:732 +#: gnu/packages/compression.scm:759 msgid "Compression algorithm focused on speed" msgstr "" -#: gnu/packages/compression.scm:733 +#: gnu/packages/compression.scm:760 msgid "" "LZ4 is a lossless compression algorithm, providing\n" "compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an\n" @@ -1881,30 +2040,30 @@ msgid "" "time for compression ratio." msgstr "" -#: gnu/packages/compression.scm:758 +#: gnu/packages/compression.scm:785 msgid "LZ4 bindings for Python" msgstr "Liaisons LZ4 pour Python" -#: gnu/packages/compression.scm:760 +#: gnu/packages/compression.scm:787 msgid "" "This package provides python bindings for the lz4 compression library\n" "by Yann Collet. The project contains bindings for the LZ4 block format and\n" "the LZ4 frame format." msgstr "" -#: gnu/packages/compression.scm:783 +#: gnu/packages/compression.scm:810 msgid "String compression" msgstr "" -#: gnu/packages/compression.scm:784 +#: gnu/packages/compression.scm:811 msgid "Lz-string is a string compressor library for Python." msgstr "" -#: gnu/packages/compression.scm:822 +#: gnu/packages/compression.scm:849 msgid "Tools to create and extract squashfs file systems" msgstr "" -#: gnu/packages/compression.scm:824 +#: gnu/packages/compression.scm:851 msgid "" "Squashfs is a highly compressed read-only file system for Linux. It uses\n" "zlib to compress files, inodes, and directories. All blocks are packed to\n" @@ -1914,21 +2073,21 @@ msgid "" "extract such file systems." msgstr "" -#: gnu/packages/compression.scm:861 +#: gnu/packages/compression.scm:905 msgid "Parallel implementation of gzip" msgstr "" -#: gnu/packages/compression.scm:863 +#: gnu/packages/compression.scm:907 msgid "" "This package provides a parallel implementation of gzip that exploits\n" "multiple processors and multiple cores when compressing data." msgstr "" -#: gnu/packages/compression.scm:887 +#: gnu/packages/compression.scm:931 msgid "Parallel indexing implementation of LZMA" msgstr "" -#: gnu/packages/compression.scm:889 +#: gnu/packages/compression.scm:933 msgid "" "The existing XZ Utils provide great compression in the .xz file format,\n" "but they produce just one big block of compressed data. Pixz instead produces\n" @@ -1937,11 +2096,11 @@ msgid "" "tarballs." msgstr "" -#: gnu/packages/compression.scm:930 +#: gnu/packages/compression.scm:975 msgid "Implementation of the Brotli compression algorithm" msgstr "" -#: gnu/packages/compression.scm:932 +#: gnu/packages/compression.scm:977 msgid "" "Brotli is a general-purpose lossless compression algorithm. It is\n" "similar in speed to deflate but offers denser compression. This package\n" @@ -1949,19 +2108,19 @@ msgid "" "respectively, based on the reference implementation from Google." msgstr "" -#: gnu/packages/compression.scm:956 +#: gnu/packages/compression.scm:1001 msgid "Tool to unpack Cabinet archives" msgstr "" -#: gnu/packages/compression.scm:957 +#: gnu/packages/compression.scm:1002 msgid "Extracts files out of Microsoft Cabinet (.cab) archives" msgstr "" -#: gnu/packages/compression.scm:989 +#: gnu/packages/compression.scm:1036 msgid "Delta encoder for binary files" msgstr "" -#: gnu/packages/compression.scm:990 +#: gnu/packages/compression.scm:1037 msgid "" "xdelta encodes only the differences between two binary files\n" "using the VCDIFF algorithm and patch file format described in RFC 3284. It can\n" @@ -1970,11 +2129,11 @@ msgid "" "human-readable output." msgstr "" -#: gnu/packages/compression.scm:1022 +#: gnu/packages/compression.scm:1070 msgid "Large file compressor with a very high compression ratio" msgstr "" -#: gnu/packages/compression.scm:1023 +#: gnu/packages/compression.scm:1071 msgid "" "lrzip is a compression utility that uses long-range\n" "redundancy reduction to improve the subsequent compression ratio of\n" @@ -1985,88 +2144,88 @@ msgid "" "well as bzip2." msgstr "" -#: gnu/packages/compression.scm:1059 +#: gnu/packages/compression.scm:1101 msgid "Filter for improving compression of typed binary data" msgstr "" -#: gnu/packages/compression.scm:1060 +#: gnu/packages/compression.scm:1102 msgid "" "Bitshuffle is an algorithm that rearranges typed, binary data\n" "for improving compression, as well as a python/C package that implements this\n" "algorithm within the Numpy framework." msgstr "" -#: gnu/packages/compression.scm:1079 +#: gnu/packages/compression.scm:1123 msgid "Fast compressor/decompressor" msgstr "" -#: gnu/packages/compression.scm:1080 +#: gnu/packages/compression.scm:1124 msgid "" -"Snappy is a compression/decompression library. It does not\n" +"Snappy is a compression/decompression library. It does not\n" "aim for maximum compression, or compatibility with any other compression library;\n" -"instead, it aims for very high speeds and reasonable compression. For instance,\n" +"instead, it aims for very high speeds and reasonable compression. For instance,\n" "compared to the fastest mode of zlib, Snappy is an order of magnitude faster\n" "for most inputs, but the resulting compressed files are anywhere from 20% to\n" "100% bigger." msgstr "" -#: gnu/packages/compression.scm:1204 +#: gnu/packages/compression.scm:1253 msgid "Compression/decompression algorithm in Java" msgstr "" -#: gnu/packages/compression.scm:1205 +#: gnu/packages/compression.scm:1254 msgid "" "Snappy-java is a Java port of the snappy, a fast C++\n" "compresser/decompresser." msgstr "" -#: gnu/packages/compression.scm:1311 -msgid "Java port of snappy" +#: gnu/packages/compression.scm:1359 +msgid "Java port of the Snappy (de)compressor" msgstr "" -#: gnu/packages/compression.scm:1312 +#: gnu/packages/compression.scm:1361 msgid "" -"Iq80-snappy is a rewrite (port) of Snappy writen in pure\n" -"Java. This compression code produces a byte-for-byte exact copy of the output\n" -"created by the original C++ code, and extremely fast." +"Iq80-snappy is a port of the Snappy compressor and decompressor rewritten\n" +"in pure Java. This compression code produces a byte-for-byte exact copy of the\n" +"output created by the original C++ code, and is extremely fast." msgstr "" -#: gnu/packages/compression.scm:1351 +#: gnu/packages/compression.scm:1400 msgid "Java bzip2 compression/decompression library" msgstr "Bibliothèque de compression et décompression bzip2 pour Java" -#: gnu/packages/compression.scm:1352 +#: gnu/packages/compression.scm:1401 msgid "" "Jbzip2 is a Java bzip2 compression/decompression library.\n" "It can be used as a replacement for the Apache @code{CBZip2InputStream} /\n" "@code{CBZip2OutputStream} classes." msgstr "" -#: gnu/packages/compression.scm:1417 +#: gnu/packages/compression.scm:1467 msgid "Command-line file archiver with high compression ratio" msgstr "" -#: gnu/packages/compression.scm:1418 +#: gnu/packages/compression.scm:1468 msgid "" "p7zip is a command-line port of 7-Zip, a file archiver that\n" "handles the 7z format which features very high compression ratios." msgstr "" -#: gnu/packages/compression.scm:1457 +#: gnu/packages/compression.scm:1509 msgid "Compressed C++ iostream" msgstr "" -#: gnu/packages/compression.scm:1458 +#: gnu/packages/compression.scm:1510 msgid "" "gzstream is a small library for providing zlib\n" "functionality in a C++ iostream." msgstr "" -#: gnu/packages/compression.scm:1505 +#: gnu/packages/compression.scm:1559 msgid "Incremental journaling archiver" msgstr "" -#: gnu/packages/compression.scm:1506 +#: gnu/packages/compression.scm:1560 msgid "" "ZPAQ is a command-line archiver for realistic situations with\n" "many duplicate and already compressed files. It backs up only those files\n" @@ -2080,21 +2239,21 @@ msgid "" "or junctions, and always follows hard links." msgstr "" -#: gnu/packages/compression.scm:1587 +#: gnu/packages/compression.scm:1642 msgid "Extract CAB files from InstallShield installers" msgstr "" -#: gnu/packages/compression.scm:1589 +#: gnu/packages/compression.scm:1644 msgid "" "@command{unshield} is a tool and library for extracting @file{.cab}\n" " archives from InstallShield installers." msgstr "" -#: gnu/packages/compression.scm:1615 +#: gnu/packages/compression.scm:1675 msgid "Zstandard real-time compression algorithm" msgstr "" -#: gnu/packages/compression.scm:1616 +#: gnu/packages/compression.scm:1676 msgid "" "Zstandard (@command{zstd}) is a lossless compression algorithm\n" "that combines very fast operation with a compression ratio comparable to that of\n" @@ -2104,11 +2263,11 @@ msgid "" "speed." msgstr "" -#: gnu/packages/compression.scm:1658 +#: gnu/packages/compression.scm:1718 msgid "Threaded implementation of the Zstandard compression algorithm" msgstr "" -#: gnu/packages/compression.scm:1659 +#: gnu/packages/compression.scm:1719 msgid "" "Parallel Zstandard (PZstandard or @command{pzstd}) is a\n" "multi-threaded implementation of the @uref{http://zstd.net/, Zstandard\n" @@ -2121,11 +2280,11 @@ msgid "" "the actual decompression, the other input and output." msgstr "" -#: gnu/packages/compression.scm:1700 +#: gnu/packages/compression.scm:1757 msgid "Compression and file packing utility" msgstr "Utilitaire de compression et de paquetage de fichiers" -#: gnu/packages/compression.scm:1702 +#: gnu/packages/compression.scm:1759 msgid "" "Zip is a compression and file packaging/archive utility. Zip is useful\n" "for packaging a set of files for distribution, for archiving files, and for\n" @@ -2153,11 +2312,11 @@ msgstr "" "pour chaque fichier.Des ratios de compression de 2 à 3 sont généralement\n" "atteignables pour les fichiers texte." -#: gnu/packages/compression.scm:1757 +#: gnu/packages/compression.scm:1821 msgid "Decompression and file extraction utility" msgstr "Utilitaire de décompression et d'extraction de fichiers" -#: gnu/packages/compression.scm:1759 +#: gnu/packages/compression.scm:1823 msgid "" "UnZip is an extraction utility for archives compressed in .zip format,\n" "also called \"zipfiles\".\n" @@ -2174,31 +2333,31 @@ msgstr "" "vers le répertoire courant et ses sous-répertoires. Unzip recrée par défaut la\n" "structure des répertoires contenus dans l'archive." -#: gnu/packages/compression.scm:1800 +#: gnu/packages/compression.scm:1854 msgid "Library for accessing zip files" msgstr "Bibliothèque de manipulation des fichiers zip" -#: gnu/packages/compression.scm:1802 +#: gnu/packages/compression.scm:1856 msgid "ZZipLib is a library based on zlib for accessing zip files." msgstr "ZZipLib est une bibliothèque basée sur zlip pour la manipulation de fichiers zip." -#: gnu/packages/compression.scm:1819 -msgid "Provides an interface to ZIP archive files" -msgstr "Fournit une interface pour les archives ZIP" +#: gnu/packages/compression.scm:1878 +msgid "Provides an interface to Zip archive files" +msgstr "Fournit une interface pour les fichiers d'archives ZIP" -#: gnu/packages/compression.scm:1820 gnu/packages/perl.scm:279 +#: gnu/packages/compression.scm:1879 msgid "" -"The Archive::Zip module allows a Perl program to create,\n" -"manipulate, read, and write Zip archive files." +"The @code{Archive::Zip} module allows a Perl program to\n" +"create, manipulate, read, and write Zip archive files." msgstr "" -"Le module Archive::Zip permet à un programme Perl de créer,\n" -"manipuler, lire et écrire des archives Zip." +"Le module @code{Archive::Zip} permet à un programme Perl de créer,\n" +"manipuler, lire et écrire des fichiers d'archives Zip." -#: gnu/packages/compression.scm:1842 +#: gnu/packages/compression.scm:1901 msgid "C library for reading, creating, and modifying zip archives" msgstr "" -#: gnu/packages/compression.scm:1843 +#: gnu/packages/compression.scm:1902 msgid "" "Libzip is a C library for reading, creating, and modifying\n" "zip archives. Files can be added from data buffers, files, or compressed data\n" @@ -2206,11 +2365,11 @@ msgid "" "archive can be reverted." msgstr "" -#: gnu/packages/compression.scm:1876 +#: gnu/packages/compression.scm:1935 msgid "Universal tool to manage file archives of various types" msgstr "" -#: gnu/packages/compression.scm:1877 +#: gnu/packages/compression.scm:1936 msgid "" "The main command is @command{aunpack} which extracts files\n" "from an archive. The other commands provided are @command{apack} (to create\n" @@ -2220,11 +2379,11 @@ msgid "" "of archives." msgstr "" -#: gnu/packages/compression.scm:1899 +#: gnu/packages/compression.scm:1958 msgid "Generic archive extracting mechanism" msgstr "" -#: gnu/packages/compression.scm:1900 +#: gnu/packages/compression.scm:1959 msgid "" "It allows you to extract any archive file of the type .tar,\n" ".tar.gz, .gz, .Z, tar.bz2, .tbz, .bz2, .zip, .xz,, .txz, .tar.xz or .lzma\n" @@ -2232,42 +2391,162 @@ msgid "" "type by using either Perl modules, or command-line tools on your system." msgstr "" -#: gnu/packages/compression.scm:1936 +#: gnu/packages/compression.scm:1995 msgid "XZ in Java" msgstr "" -#: gnu/packages/compression.scm:1937 +#: gnu/packages/compression.scm:1996 msgid "" "Tukaani-xz is an implementation of xz compression/decompression\n" "algorithms in Java." msgstr "" -#: gnu/packages/databases.scm:147 +#: gnu/packages/compression.scm:2016 +msgid "Small, stand-alone lzip decompressor" +msgstr "" + +#: gnu/packages/compression.scm:2018 +msgid "" +"Lunzip is a decompressor for files in the lzip compression format (.lz),\n" +"written as a single small C tool with no dependencies. This makes it\n" +"well-suited to embedded and other systems without a C++ compiler, or for use in\n" +"applications such as software installers that need only to decompress files,\n" +"not compress them.\n" +"Lunzip is intended to be fully compatible with the regular lzip package." +msgstr "" + +#: gnu/packages/compression.scm:2043 +msgid "Small, stand-alone lzip compressor and decompressor" +msgstr "Compresseur et décompresseur lzip léger et autonome" + +#: gnu/packages/compression.scm:2045 +msgid "" +"Clzip is a compressor and decompressor for files in the lzip compression\n" +"format (.lz), written as a single small C tool with no dependencies. This makes\n" +"it well-suited to embedded and other systems without a C++ compiler, or for use\n" +"in other applications like package managers.\n" +"Clzip is intended to be fully compatible with the regular lzip package." +msgstr "" + +#: gnu/packages/compression.scm:2072 +msgid "Lzip data compression C library" +msgstr "Bibliothèque C de compression lzip" + +#: gnu/packages/compression.scm:2074 +msgid "" +"Lzlib is a C library for in-memory LZMA compression and decompression in\n" +"the lzip format. It supports integrity checking of the decompressed data, and\n" +"all functions are thread-safe. The library should never crash, even in case of\n" +"corrupted input." +msgstr "" + +#: gnu/packages/compression.scm:2096 +msgid "Parallel lossless data compressor for the lzip format" +msgstr "" + +#: gnu/packages/compression.scm:2098 +msgid "" +"Plzip is a massively parallel (multi-threaded) lossless data compressor\n" +"and decompressor that uses the lzip file format (.lz). Files produced by plzip\n" +"are fully compatible with lzip and can be rescued with lziprecover.\n" +"On multiprocessor machines, plzip can compress and decompress large files much\n" +"faster than lzip, at the cost of a slightly reduced compression ratio (0.4% to\n" +"2%). The number of usable threads is limited by file size: on files of only a\n" +"few MiB, plzip is no faster than lzip.\n" +"Files that were compressed with regular lzip will also not be decompressed\n" +"faster by plzip, unless the @code{-b} option was used: lzip usually produces\n" +"single-member files which can't be decompressed in parallel." +msgstr "" + +#: gnu/packages/compression.scm:2132 +msgid "Tool for extracting Inno Setup installers" +msgstr "" + +#: gnu/packages/compression.scm:2133 +msgid "" +"innoextract allows extracting Inno Setup installers under\n" +"non-Windows systems without running the actual installer using wine." +msgstr "" + +#: gnu/packages/compression.scm:2169 +msgid "General-purpose lossless compression" +msgstr "" + +#: gnu/packages/compression.scm:2170 +msgid "" +"This package provides the reference implementation of Brotli,\n" +"a generic-purpose lossless compression algorithm that compresses data using a\n" +"combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd\n" +"order context modeling, with a compression ratio comparable to the best\n" +"currently available general-purpose compression methods. It is similar in speed\n" +"with @code{deflate} but offers more dense compression.\n" +"\n" +"The specification of the Brotli Compressed Data Format is defined in RFC 7932." +msgstr "" + +#: gnu/packages/compression.scm:2193 +msgid "Portable lossless data compression library" +msgstr "Bibliothèque de compression de données sans perte portable" + +#: gnu/packages/compression.scm:2194 +msgid "" +"UCL implements a number of compression algorithms that\n" +"achieve an excellent compression ratio while allowing fast decompression.\n" +"Decompression requires no additional memory.\n" +"\n" +"Compared to LZO, the UCL algorithms achieve a better compression ratio but\n" +"decompression is a little bit slower." +msgstr "" + +#: gnu/packages/compression.scm:2250 +msgid "Compression tool for executables" +msgstr "Outil de compression pour les exécutables" + +#: gnu/packages/compression.scm:2252 +msgid "" +"The Ultimate Packer for eXecutables (UPX) is an executable file\n" +"compressor. UPX typically reduces the file size of programs and shared\n" +"libraries by around 50%--70%, thus reducing disk space, network load times,\n" +"download times, and other distribution and storage costs." +msgstr "" + +#: gnu/packages/databases.scm:158 msgid "Clustered RDF storage and query engine" msgstr "" -#: gnu/packages/databases.scm:148 +#: gnu/packages/databases.scm:159 msgid "" "4store is a RDF/SPARQL store written in C, supporting\n" "either single machines or networked clusters." msgstr "" -#: gnu/packages/databases.scm:167 +#: gnu/packages/databases.scm:178 msgid "Hash library of database functions compatible with traditional dbm" msgstr "" -#: gnu/packages/databases.scm:169 +#: gnu/packages/databases.scm:180 msgid "" "GDBM is a library for manipulating hashed databases. It is used to\n" "store key/value pairs in a file in a manner similar to the Unix dbm library\n" "and provides interfaces to the traditional file format." msgstr "" -#: gnu/packages/databases.scm:219 +#: gnu/packages/databases.scm:221 +msgid "@code{mgo} offers a rich MongoDB driver for Go." +msgstr "" + +#: gnu/packages/databases.scm:223 +msgid "" +"@code{mgo} (pronounced as mango) is a MongoDB driver for the Go language.\n" +"It implements a rich selection of features under a simple API following\n" +"standard Go idioms." +msgstr "" + +#: gnu/packages/databases.scm:273 msgid "Berkeley database" msgstr "Base de données Berkeley" -#: gnu/packages/databases.scm:221 +#: gnu/packages/databases.scm:275 msgid "" "Berkeley DB is an embeddable database allowing developers the choice of\n" "SQL, Key/Value, XML/XQuery or Java Object storage for their data model." @@ -2276,43 +2555,43 @@ msgstr "" "le choix de SQL, clé/valeur, XML/XQuery ou Java Object Storage pour leur\n" "modèle de données." -#: gnu/packages/databases.scm:310 +#: gnu/packages/databases.scm:352 msgid "Utility for dumping and restoring ElasticSearch indexes" msgstr "" -#: gnu/packages/databases.scm:312 +#: gnu/packages/databases.scm:354 msgid "" "This package provides a utility for dumping the contents of an\n" "ElasticSearch index to a compressed file and restoring the dumpfile back to an\n" "ElasticSearch server" msgstr "" -#: gnu/packages/databases.scm:350 +#: gnu/packages/databases.scm:392 msgid "Fast key-value storage library" msgstr "" -#: gnu/packages/databases.scm:352 +#: gnu/packages/databases.scm:394 msgid "" "LevelDB is a fast key-value storage library that provides an ordered\n" "mapping from string keys to string values." msgstr "" -#: gnu/packages/databases.scm:372 +#: gnu/packages/databases.scm:415 msgid "In memory caching service" msgstr "" -#: gnu/packages/databases.scm:373 +#: gnu/packages/databases.scm:416 msgid "" "Memcached is a in memory key value store. It has a small\n" "and generic API, and was originally intended for use with dynamic web\n" "applications." msgstr "" -#: gnu/packages/databases.scm:478 +#: gnu/packages/databases.scm:541 msgid "High performance and high availability document database" msgstr "" -#: gnu/packages/databases.scm:480 +#: gnu/packages/databases.scm:543 msgid "" "Mongo is a high-performance, high availability, schema-free\n" "document-oriented database. A key goal of MongoDB is to bridge the gap\n" @@ -2320,11 +2599,11 @@ msgid "" "RDBMS systems (which are deep in functionality)." msgstr "" -#: gnu/packages/databases.scm:556 +#: gnu/packages/databases.scm:620 msgid "Fast, easy to use, and popular database" msgstr "Base de données rapide, facile d'utilisation et populaire" -#: gnu/packages/databases.scm:558 +#: gnu/packages/databases.scm:622 msgid "" "MySQL is a fast, reliable, and easy to use relational database\n" "management system that supports the standardized Structured Query\n" @@ -2333,21 +2612,21 @@ msgstr "" "MySQL est un système de gestion de base de données relationnelle rapide,\n" " fiable et facile d'emploi, supportant le SQL standardisé." -#: gnu/packages/databases.scm:634 +#: gnu/packages/databases.scm:699 msgid "SQL database server" msgstr "" -#: gnu/packages/databases.scm:636 +#: gnu/packages/databases.scm:701 msgid "" "MariaDB is a multi-user and multi-threaded SQL database server, designed\n" "as a drop-in replacement of MySQL." msgstr "" -#: gnu/packages/databases.scm:674 +#: gnu/packages/databases.scm:739 msgid "Powerful object-relational database system" msgstr "Système de base de données relationnelle puissant" -#: gnu/packages/databases.scm:676 +#: gnu/packages/databases.scm:741 msgid "" "PostgreSQL is a powerful object-relational database system. It is fully\n" "ACID compliant, has full support for foreign keys, joins, views, triggers, and\n" @@ -2363,11 +2642,11 @@ msgstr "" "INTERVAL et TIMESTAMP. Il supporte aussi le stockage binaire de grands objets, dont\n" "les images, le son et la vidéo." -#: gnu/packages/databases.scm:715 +#: gnu/packages/databases.scm:780 msgid "Key-value database" msgstr "Base de données clef-valeur" -#: gnu/packages/databases.scm:716 +#: gnu/packages/databases.scm:781 msgid "" "QDBM is a library of routines for managing a\n" "database. The database is a simple data file containing key-value\n" @@ -2377,11 +2656,11 @@ msgid "" "organized in a hash table or B+ tree." msgstr "" -#: gnu/packages/databases.scm:771 +#: gnu/packages/databases.scm:836 msgid "Manipulate plain text files as databases" msgstr "Manipule les fichiers texte comme des bases de données" -#: gnu/packages/databases.scm:773 +#: gnu/packages/databases.scm:838 msgid "" "GNU Recutils is a set of tools and libraries for creating and\n" "manipulating text-based, human-editable databases. Despite being text-based,\n" @@ -2396,11 +2675,11 @@ msgstr "" "les timestamps et plus encore. De nombreux types de champs sont supportés, tout comme\n" "le chiffrement." -#: gnu/packages/databases.scm:860 +#: gnu/packages/databases.scm:934 msgid "Persistent key-value store for fast storage" msgstr "" -#: gnu/packages/databases.scm:862 +#: gnu/packages/databases.scm:936 msgid "" "RocksDB is a library that forms the core building block for a fast\n" "key-value server, especially suited for storing data on flash drives. It\n" @@ -2411,11 +2690,11 @@ msgid "" "data in a single database. RocksDB is partially based on @code{LevelDB}." msgstr "" -#: gnu/packages/databases.scm:921 +#: gnu/packages/databases.scm:996 msgid "Command-line tool for accessing SPARQL endpoints over HTTP" msgstr "" -#: gnu/packages/databases.scm:922 +#: gnu/packages/databases.scm:997 msgid "" "Sparql-query is a command-line tool for accessing SPARQL\n" "endpoints over HTTP. It has been intentionally designed to 'feel' similar to\n" @@ -2426,11 +2705,11 @@ msgid "" "for example from a shell script." msgstr "" -#: gnu/packages/databases.scm:964 +#: gnu/packages/databases.scm:1039 msgid "The SQLite database management system" msgstr "Le système de gestion de bases de données SQLite" -#: gnu/packages/databases.scm:966 +#: gnu/packages/databases.scm:1041 msgid "" "SQLite is a software library that implements a self-contained, serverless,\n" "zero-configuration, transactional SQL database engine. SQLite is the most\n" @@ -2442,11 +2721,11 @@ msgstr "" "SQLite est le moteur de bases de données SQL le plus déployé de part le monde.\n" "Le code source de SQLite est dans le domaine public." -#: gnu/packages/databases.scm:1015 +#: gnu/packages/databases.scm:1099 msgid "Trivial database" msgstr "Base de données triviale" -#: gnu/packages/databases.scm:1017 +#: gnu/packages/databases.scm:1101 msgid "" "TDB is a Trivial Database. In concept, it is very much like GDBM,\n" "and BSD's DB except that it allows multiple simultaneous writers and uses\n" @@ -2458,19 +2737,19 @@ msgstr "" "accès simultanés en écriture et utilise un verrouillage interne pour éviter les\n" "empiétements. Notez que TDB est aussi très léger." -#: gnu/packages/databases.scm:1036 +#: gnu/packages/databases.scm:1120 msgid "Database independent interface for Perl" msgstr "Interface de base de données pour Perl" -#: gnu/packages/databases.scm:1037 +#: gnu/packages/databases.scm:1121 msgid "This package provides an database interface for Perl." msgstr "Ce paquet fournit une interface de base de données pour Perl." -#: gnu/packages/databases.scm:1085 +#: gnu/packages/databases.scm:1169 msgid "Extensible and flexible object <-> relational mapper" msgstr "" -#: gnu/packages/databases.scm:1086 +#: gnu/packages/databases.scm:1170 msgid "" "An SQL to OO mapper with an object API inspired by\n" "Class::DBI (with a compatibility layer as a springboard for porting) and a\n" @@ -2482,21 +2761,21 @@ msgid "" "\"ORDER BY\" and \"HAVING\" support." msgstr "" -#: gnu/packages/databases.scm:1117 +#: gnu/packages/databases.scm:1201 msgid "Cursor with built-in caching support" msgstr "" -#: gnu/packages/databases.scm:1118 +#: gnu/packages/databases.scm:1202 msgid "" "DBIx::Class::Cursor::Cached provides a cursor class with\n" "built-in caching support." msgstr "" -#: gnu/packages/databases.scm:1140 +#: gnu/packages/databases.scm:1224 msgid "Introspect many-to-many relationships" msgstr "" -#: gnu/packages/databases.scm:1141 +#: gnu/packages/databases.scm:1225 msgid "" "Because the many-to-many relationships are not real\n" "relationships, they can not be introspected with DBIx::Class. Many-to-many\n" @@ -2506,22 +2785,22 @@ msgid "" "introspected and examined." msgstr "" -#: gnu/packages/databases.scm:1199 +#: gnu/packages/databases.scm:1283 msgid "Create a DBIx::Class::Schema based on a database" msgstr "" -#: gnu/packages/databases.scm:1200 +#: gnu/packages/databases.scm:1284 msgid "" "DBIx::Class::Schema::Loader automates the definition of a\n" "DBIx::Class::Schema by scanning database table definitions and setting up the\n" "columns, primary keys, unique constraints and relationships." msgstr "" -#: gnu/packages/databases.scm:1224 +#: gnu/packages/databases.scm:1308 msgid "DBI PostgreSQL interface" msgstr "Interface DBI PostgreSQL" -#: gnu/packages/databases.scm:1225 +#: gnu/packages/databases.scm:1309 msgid "" "This package provides a PostgreSQL driver for the Perl5\n" "@dfn{Database Interface} (DBI)." @@ -2529,11 +2808,11 @@ msgstr "" "Ce paquet fournit un pilote PostgreSQL pour la @dfn{Database Interface}\n" "(DBI) de Perl5." -#: gnu/packages/databases.scm:1249 +#: gnu/packages/databases.scm:1333 msgid "DBI MySQL interface" msgstr "Interface DBI MySQL" -#: gnu/packages/databases.scm:1250 +#: gnu/packages/databases.scm:1334 msgid "" "This package provides a MySQL driver for the Perl5\n" "@dfn{Database Interface} (DBI)." @@ -2541,11 +2820,11 @@ msgstr "" "Ce paquet fournit un pilote MySQL pour la @dfn{Database Interface}\n" "(DBI) de Perl5." -#: gnu/packages/databases.scm:1269 +#: gnu/packages/databases.scm:1353 msgid "SQlite interface for Perl" msgstr "Interface SQLite pour Perl" -#: gnu/packages/databases.scm:1270 +#: gnu/packages/databases.scm:1354 msgid "" "DBD::SQLite is a Perl DBI driver for SQLite, that includes\n" "the entire thing in the distribution. So in order to get a fast transaction\n" @@ -2556,11 +2835,11 @@ msgstr "" "de la distribution. Donc il suffit d'installer ce module dans votre projet\n" "pour obtenir un RDBMS capable de transactions rapides et rien d'autre." -#: gnu/packages/databases.scm:1301 +#: gnu/packages/databases.scm:1385 msgid "Generate SQL from Perl data structures" msgstr "" -#: gnu/packages/databases.scm:1302 +#: gnu/packages/databases.scm:1386 msgid "" "This module was inspired by the excellent DBIx::Abstract.\n" "While based on the concepts used by DBIx::Abstract, the concepts used have\n" @@ -2570,32 +2849,32 @@ msgid "" "time your data changes." msgstr "" -#: gnu/packages/databases.scm:1331 +#: gnu/packages/databases.scm:1415 msgid "Split SQL code into atomic statements" msgstr "" -#: gnu/packages/databases.scm:1332 +#: gnu/packages/databases.scm:1416 msgid "" "This module tries to split any SQL code, even including\n" "non-standard extensions, into the atomic statements it is composed of." msgstr "" -#: gnu/packages/databases.scm:1350 +#: gnu/packages/databases.scm:1434 msgid "SQL tokenizer" msgstr "" -#: gnu/packages/databases.scm:1351 +#: gnu/packages/databases.scm:1435 msgid "" "SQL::Tokenizer is a tokenizer for SQL queries. It does not\n" "claim to be a parser or query verifier. It just creates sane tokens from a\n" "valid SQL query." msgstr "" -#: gnu/packages/databases.scm:1369 +#: gnu/packages/databases.scm:1453 msgid "Data source abstraction library" msgstr "Bibliothèque d'abstraction de source de données" -#: gnu/packages/databases.scm:1370 +#: gnu/packages/databases.scm:1454 msgid "" "Unixodbc is a library providing an API with which to access\n" "data sources. Data sources include SQL Servers and any software with an ODBC\n" @@ -2605,11 +2884,11 @@ msgstr "" "d'accéder à des sources de données. Ces sources incluent des serveurs SQL\n" "où tout logiciel avec un driver ODBC." -#: gnu/packages/databases.scm:1394 +#: gnu/packages/databases.scm:1478 msgid "In-memory key/value and document store" msgstr "" -#: gnu/packages/databases.scm:1396 +#: gnu/packages/databases.scm:1480 msgid "" "UnQLite is an in-process software library which implements a\n" "self-contained, serverless, zero-configuration, transactional NoSQL\n" @@ -2618,33 +2897,33 @@ msgid "" "similar to BerkeleyDB, LevelDB, etc." msgstr "" -#: gnu/packages/databases.scm:1424 +#: gnu/packages/databases.scm:1508 msgid "Key-value cache and store" msgstr "" -#: gnu/packages/databases.scm:1425 +#: gnu/packages/databases.scm:1509 msgid "" "Redis is an advanced key-value cache and store. Redis\n" "supports many data structures including strings, hashes, lists, sets, sorted\n" "sets, bitmaps and hyperloglogs." msgstr "" -#: gnu/packages/databases.scm:1452 +#: gnu/packages/databases.scm:1536 msgid "Kyoto Cabinet is a modern implementation of the DBM database" msgstr "" -#: gnu/packages/databases.scm:1454 +#: gnu/packages/databases.scm:1538 msgid "" "Kyoto Cabinet is a standalone file-based database that supports Hash\n" "and B+ Tree data storage models. It is a fast key-value lightweight\n" "database and supports many programming languages. It is a NoSQL database." msgstr "" -#: gnu/packages/databases.scm:1480 +#: gnu/packages/databases.scm:1564 msgid "Tokyo Cabinet is a modern implementation of the DBM database" msgstr "" -#: gnu/packages/databases.scm:1482 +#: gnu/packages/databases.scm:1566 msgid "" "Tokyo Cabinet is a library of routines for managing a database.\n" "The database is a simple data file containing records, each is a pair of a\n" @@ -2654,11 +2933,11 @@ msgid "" "organized in hash table, B+ tree, or fixed-length array." msgstr "" -#: gnu/packages/databases.scm:1517 +#: gnu/packages/databases.scm:1602 msgid "NoSQL data engine" msgstr "" -#: gnu/packages/databases.scm:1519 +#: gnu/packages/databases.scm:1604 msgid "" "WiredTiger is an extensible platform for data management. It supports\n" "row-oriented storage (where all columns of a row are stored together),\n" @@ -2667,31 +2946,32 @@ msgid "" "trees (LSM), for sustained throughput under random insert workloads." msgstr "" -#: gnu/packages/databases.scm:1570 -msgid "Wired Tiger bindings for GNU Guile" -msgstr "Liaisons Wired Tiger pour GNU Guile" +#: gnu/packages/databases.scm:1644 +msgid "WiredTiger bindings for GNU Guile" +msgstr "Liaisons WiredTiger pour GNU Guile" -#: gnu/packages/databases.scm:1572 +#: gnu/packages/databases.scm:1646 msgid "" "This package provides Guile bindings to the WiredTiger ``NoSQL''\n" -"database." +"database. Various higher level database abstractions." msgstr "" "Ce paquet fournit les liaisons Guile pour le système de base de données\n" -"``NoSQL`` WiredTiger." +"``NoSQL`` WiredTiger. Diverses abstractions de bases de données plus haut\n" +"niveau." -#: gnu/packages/databases.scm:1604 +#: gnu/packages/databases.scm:1678 msgid "Perl5 access to Berkeley DB version 1.x" msgstr "" -#: gnu/packages/databases.scm:1606 +#: gnu/packages/databases.scm:1680 msgid "The DB::File module provides Perl bindings to the Berkeley DB version 1.x." msgstr "" -#: gnu/packages/databases.scm:1633 +#: gnu/packages/databases.scm:1707 msgid "Lightning Memory-Mapped Database library" msgstr "" -#: gnu/packages/databases.scm:1635 +#: gnu/packages/databases.scm:1709 msgid "" "The @dfn{Lightning Memory-Mapped Database} (LMDB) is a high-performance\n" "transactional database. Unlike more complex relational databases, LMDB handles\n" @@ -2704,22 +2984,22 @@ msgid "" "virtual address space — not physical RAM." msgstr "" -#: gnu/packages/databases.scm:1672 +#: gnu/packages/databases.scm:1746 msgid "C++ connector for PostgreSQL" msgstr "" -#: gnu/packages/databases.scm:1674 +#: gnu/packages/databases.scm:1748 msgid "" "Libpqxx is a C++ library to enable user programs to communicate with the\n" "PostgreSQL database back-end. The database back-end can be local or it may be\n" "on another machine, accessed via TCP/IP." msgstr "" -#: gnu/packages/databases.scm:1697 +#: gnu/packages/databases.scm:1771 msgid "Small object-relational mapping utility" msgstr "" -#: gnu/packages/databases.scm:1699 +#: gnu/packages/databases.scm:1773 msgid "" "Peewee is a simple and small ORM (object-relation mapping) tool. Peewee\n" "handles converting between pythonic values and those used by databases, so you\n" @@ -2728,11 +3008,11 @@ msgid "" "can autogenerate peewee models using @code{pwiz}, a model generator." msgstr "" -#: gnu/packages/databases.scm:1746 +#: gnu/packages/databases.scm:1820 msgid "Library providing transparent encryption of SQLite database files" msgstr "" -#: gnu/packages/databases.scm:1747 +#: gnu/packages/databases.scm:1821 msgid "" "SQLCipher is an implementation of SQLite, extended to\n" "provide transparent 256-bit AES encryption of database files. Pages are\n" @@ -2741,27 +3021,27 @@ msgid "" "development." msgstr "" -#: gnu/packages/databases.scm:1779 gnu/packages/databases.scm:1806 +#: gnu/packages/databases.scm:1853 gnu/packages/databases.scm:1880 msgid "Python ODBC Library" msgstr "La bibliothèque Python ODBC" -#: gnu/packages/databases.scm:1780 +#: gnu/packages/databases.scm:1854 msgid "" "@code{python-pyodbc-c} provides a Python DB-API driver\n" "for ODBC." msgstr "" -#: gnu/packages/databases.scm:1807 +#: gnu/packages/databases.scm:1881 msgid "" "@code{python-pyodbc} provides a Python DB-API driver\n" "for ODBC." msgstr "" -#: gnu/packages/databases.scm:1844 +#: gnu/packages/databases.scm:1918 msgid "Read Microsoft Access databases" msgstr "" -#: gnu/packages/databases.scm:1845 +#: gnu/packages/databases.scm:1919 msgid "" "MDB Tools is a set of tools and applications to read the\n" "proprietary MDB file format used in Microsoft's Access database package. This\n" @@ -2770,42 +3050,42 @@ msgid "" "etc., and an SQL engine for performing simple SQL queries." msgstr "" -#: gnu/packages/databases.scm:1886 +#: gnu/packages/databases.scm:1962 msgid "Python binding for the ‘Lightning’ database (LMDB)" msgstr "" -#: gnu/packages/databases.scm:1888 +#: gnu/packages/databases.scm:1964 msgid "" "python-lmdb or py-lmdb is a Python binding for the @dfn{Lightning\n" "Memory-Mapped Database} (LMDB), a high-performance key-value store." msgstr "" -#: gnu/packages/databases.scm:1942 +#: gnu/packages/databases.scm:2018 msgid "ActiveRecord ORM for Python" msgstr "" -#: gnu/packages/databases.scm:1944 +#: gnu/packages/databases.scm:2020 msgid "" "Orator provides a simple ActiveRecord-like Object Relational Mapping\n" "implementation for Python." msgstr "" -#: gnu/packages/databases.scm:1971 +#: gnu/packages/databases.scm:2053 msgid "Multi-model database system" msgstr "Système de base de données multi-modèles" -#: gnu/packages/databases.scm:1972 +#: gnu/packages/databases.scm:2054 msgid "" "Virtuoso is a scalable cross-platform server that combines\n" "relational, graph, and document data management with web application server\n" "and web services platform functionality." msgstr "" -#: gnu/packages/databases.scm:2000 +#: gnu/packages/databases.scm:2082 msgid "Database interface and MySQL driver for R" msgstr "Interface de base de données et pilote MySQL pour R" -#: gnu/packages/databases.scm:2002 +#: gnu/packages/databases.scm:2084 msgid "" "This package provides a DBI interface to MySQL / MariaDB. The RMySQL\n" "package contains an old implementation based on legacy code from S-PLUS which\n" @@ -2813,34 +3093,34 @@ msgid "" "the RMariaDB package." msgstr "" -#: gnu/packages/databases.scm:2027 +#: gnu/packages/databases.scm:2109 msgid "" "Cassandra Cluster Manager for Apache Cassandra clusters on\n" "localhost" msgstr "" -#: gnu/packages/databases.scm:2029 +#: gnu/packages/databases.scm:2111 msgid "" "Cassandra Cluster Manager is a development tool for testing\n" "local Cassandra clusters. It creates, launches and removes Cassandra clusters\n" "on localhost." msgstr "" -#: gnu/packages/databases.scm:2055 +#: gnu/packages/databases.scm:2137 msgid "SQLite bindings for Python" msgstr "Liaisons SQLite pour Python" -#: gnu/packages/databases.scm:2057 +#: gnu/packages/databases.scm:2139 msgid "" "Pysqlite provides SQLite bindings for Python that comply to the\n" "Database API 2.0T." msgstr "" -#: gnu/packages/databases.scm:2084 +#: gnu/packages/databases.scm:2166 msgid "Database abstraction library" msgstr "Bibliothèque d'abstraction de bases de données" -#: gnu/packages/databases.scm:2086 +#: gnu/packages/databases.scm:2168 msgid "" "SQLAlchemy is the Python SQL toolkit and Object Relational Mapper that\n" "gives application developers the full power and flexibility of SQL. It\n" @@ -2849,11 +3129,11 @@ msgid "" "simple and Pythonic domain language." msgstr "" -#: gnu/packages/databases.scm:2125 +#: gnu/packages/databases.scm:2207 msgid "Various utility functions for SQLAlchemy" msgstr "" -#: gnu/packages/databases.scm:2127 +#: gnu/packages/databases.scm:2209 msgid "" "SQLAlchemy-utils provides various utility functions and custom data types\n" "for SQLAlchemy. SQLAlchemy is an SQL database abstraction library for Python.\n" @@ -2870,21 +3150,21 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/databases.scm:2168 +#: gnu/packages/databases.scm:2250 msgid "Database migration tool for SQLAlchemy" msgstr "" -#: gnu/packages/databases.scm:2170 +#: gnu/packages/databases.scm:2252 msgid "" "Alembic is a lightweight database migration tool for usage with the\n" "SQLAlchemy Database Toolkit for Python." msgstr "" -#: gnu/packages/databases.scm:2192 +#: gnu/packages/databases.scm:2278 msgid "Tiny key value database with concurrency support" msgstr "" -#: gnu/packages/databases.scm:2194 +#: gnu/packages/databases.scm:2280 msgid "" "PickleShare is a small ‘shelve’-like datastore with concurrency support.\n" "Like shelve, a PickleShareDB object acts like a normal dictionary. Unlike\n" @@ -2895,11 +3175,11 @@ msgid "" "PickleShare." msgstr "" -#: gnu/packages/databases.scm:2239 +#: gnu/packages/databases.scm:2332 msgid "Another Python SQLite Wrapper" msgstr "" -#: gnu/packages/databases.scm:2240 +#: gnu/packages/databases.scm:2333 msgid "" "APSW is a Python wrapper for the SQLite\n" "embedded relational database engine. In contrast to other wrappers such as\n" @@ -2907,22 +3187,22 @@ msgid "" "translate the complete SQLite API into Python." msgstr "" -#: gnu/packages/databases.scm:2264 +#: gnu/packages/databases.scm:2357 msgid "Neo4j driver code written in Python" msgstr "" -#: gnu/packages/databases.scm:2265 +#: gnu/packages/databases.scm:2358 msgid "" "This package provides the Neo4j Python driver that connects\n" "to the database using Neo4j's binary protocol. It aims to be minimal, while\n" "being idiomatic to Python." msgstr "" -#: gnu/packages/databases.scm:2284 +#: gnu/packages/databases.scm:2377 msgid "Library and toolkit for working with Neo4j in Python" msgstr "" -#: gnu/packages/databases.scm:2285 +#: gnu/packages/databases.scm:2378 msgid "" "This package provides a client library and toolkit for\n" "working with Neo4j from within Python applications and from the command\n" @@ -2930,30 +3210,30 @@ msgid "" "designed to be easy and intuitive to use." msgstr "" -#: gnu/packages/databases.scm:2310 +#: gnu/packages/databases.scm:2403 msgid "Python PostgreSQL adapter" msgstr "Adaptateur Python pour PostgreSQL" -#: gnu/packages/databases.scm:2312 +#: gnu/packages/databases.scm:2405 msgid "psycopg2 is a thread-safe PostgreSQL adapter that implements DB-API 2.0. " msgstr "" -#: gnu/packages/databases.scm:2335 +#: gnu/packages/databases.scm:2429 msgid "SQLAlchemy schema displayer" msgstr "" -#: gnu/packages/databases.scm:2336 +#: gnu/packages/databases.scm:2430 msgid "" "This package provides a program to build Entity\n" "Relationship diagrams from a SQLAlchemy model (or directly from the\n" "database)." msgstr "" -#: gnu/packages/databases.scm:2366 +#: gnu/packages/databases.scm:2460 msgid "MySQLdb is an interface to the popular MySQL database server for Python" msgstr "" -#: gnu/packages/databases.scm:2367 +#: gnu/packages/databases.scm:2461 msgid "" "MySQLdb is an interface to the popular MySQL database server\n" "for Python. The design goals are:\n" @@ -2964,21 +3244,21 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/databases.scm:2395 +#: gnu/packages/databases.scm:2489 msgid "Python extension that wraps protocol parsing code in hiredis" msgstr "" -#: gnu/packages/databases.scm:2396 +#: gnu/packages/databases.scm:2490 msgid "" "Python-hiredis is a python extension that wraps protocol\n" "parsing code in hiredis. It primarily speeds up parsing of multi bulk replies." msgstr "" -#: gnu/packages/databases.scm:2419 +#: gnu/packages/databases.scm:2513 msgid "Fake implementation of redis API for testing purposes" msgstr "" -#: gnu/packages/databases.scm:2420 +#: gnu/packages/databases.scm:2514 msgid "" "Fakeredis is a pure python implementation of the redis-py\n" "python client that simulates talking to a redis server. This was created for a\n" @@ -2988,56 +3268,109 @@ msgid "" "substitute for redis." msgstr "" -#: gnu/packages/databases.scm:2448 +#: gnu/packages/databases.scm:2542 msgid "Redis Python client" msgstr "" -#: gnu/packages/databases.scm:2450 +#: gnu/packages/databases.scm:2544 msgid "This package provides a Python interface to the Redis key-value store." msgstr "Ce paquet fournit une interface Python pour le dépôt clef-valeur Redis." -#: gnu/packages/databases.scm:2471 +#: gnu/packages/databases.scm:2565 msgid "Simple job queues for Python" msgstr "" -#: gnu/packages/databases.scm:2473 +#: gnu/packages/databases.scm:2567 msgid "" "RQ (Redis Queue) is a simple Python library for queueing jobs and\n" "processing them in the background with workers. It is backed by Redis and it\n" "is designed to have a low barrier to entry." msgstr "" -#: gnu/packages/databases.scm:2496 +#: gnu/packages/databases.scm:2590 msgid "Port of asyncio-redis to trollius" msgstr "" -#: gnu/packages/databases.scm:2497 +#: gnu/packages/databases.scm:2591 msgid "" "@code{trollius-redis} is a Redis client for Python\n" " trollius. It is an asynchronious IO (PEP 3156) implementation of the\n" " Redis protocol." msgstr "" -#: gnu/packages/databases.scm:2524 +#: gnu/packages/databases.scm:2618 msgid "Non-validating SQL parser" msgstr "" -#: gnu/packages/databases.scm:2525 +#: gnu/packages/databases.scm:2619 msgid "" "Sqlparse is a non-validating SQL parser for Python. It\n" "provides support for parsing, splitting and formatting SQL statements." msgstr "" -#: gnu/packages/databases.scm:2545 +#: gnu/packages/databases.scm:2639 msgid "Library to write SQL queries in a pythonic way" msgstr "" -#: gnu/packages/databases.scm:2546 +#: gnu/packages/databases.scm:2640 msgid "" "@code{python-sql} is a library to write SQL queries, that\n" "transforms idiomatic python function calls to well-formed SQL queries." msgstr "" +#: gnu/packages/databases.scm:2725 +msgid "Various tools for interacting with MongoDB and BSON" +msgstr "" + +#: gnu/packages/databases.scm:2727 +msgid "" +"This package includes a collection of tools related to MongoDB.\n" +"@table @code\n" +"@item bsondump\n" +"Display BSON files in a human-readable format\n" +"@item mongoimport\n" +"Convert data from JSON, TSV or CSV and insert them into a collection\n" +"@item mongoexport\n" +"Write an existing collection to CSV or JSON format\n" +"@item mongodump/mongorestore\n" +"Dump MongoDB backups to disk in the BSON format\n" +"@item mongorestore\n" +"Read MongoDB backups in the BSON format, and restore them to a live database\n" +"@item mongostat\n" +"Monitor live MongoDB servers, replica sets, or sharded clusters\n" +"@item mongofiles\n" +"Read, write, delete, or update files in GridFS\n" +"@item mongooplog\n" +"Replay oplog entries between MongoDB servers\n" +"@item mongotop\n" +"Monitor read/write activity on a mongo server\n" +"@end table" +msgstr "" + +#: gnu/packages/databases.scm:2813 +msgid "Columnar in-memory analytics" +msgstr "" + +#: gnu/packages/databases.scm:2814 +msgid "" +"Apache Arrow is a columnar in-memory analytics layer\n" +"designed to accelerate big data. It houses a set of canonical in-memory\n" +"representations of flat and hierarchical data along with multiple\n" +"language-bindings for structure manipulation. It also provides IPC and common\n" +"algorithm implementations." +msgstr "" + +#: gnu/packages/databases.scm:2858 +msgid "Python bindings for Apache Arrow" +msgstr "Liaisons python pour Apache Arrow" + +#: gnu/packages/databases.scm:2859 +msgid "" +"This library provides a Pythonic API wrapper for the reference\n" +"Arrow C++ implementation, along with tools for interoperability with pandas,\n" +"NumPy, and other traditional Python scientific computing packages." +msgstr "" + #: gnu/packages/debug.scm:80 msgid "Heuristical file minimizer" msgstr "" @@ -3050,11 +3383,11 @@ msgid "" "program to exhibit a bug." msgstr "" -#: gnu/packages/debug.scm:137 +#: gnu/packages/debug.scm:138 msgid "Reducer for interesting code" msgstr "" -#: gnu/packages/debug.scm:139 +#: gnu/packages/debug.scm:140 msgid "" "C-Reduce is a tool that takes a large C or C++ program that has a\n" "property of interest (such as triggering a compiler bug) and automatically\n" @@ -3063,11 +3396,11 @@ msgid "" "tools that process C/C++ code." msgstr "" -#: gnu/packages/debug.scm:268 +#: gnu/packages/debug.scm:248 msgid "Security-oriented fuzzer" msgstr "" -#: gnu/packages/debug.scm:270 +#: gnu/packages/debug.scm:250 msgid "" "American fuzzy lop is a security-oriented fuzzer that employs a novel\n" "type of compile-time instrumentation and genetic algorithms to automatically\n" @@ -3078,11 +3411,11 @@ msgid "" "down the road." msgstr "" -#: gnu/packages/debug.scm:328 +#: gnu/packages/debug.scm:305 msgid "Expose race conditions in Makefiles" msgstr "" -#: gnu/packages/debug.scm:330 +#: gnu/packages/debug.scm:307 msgid "" "Stress Make is a customized GNU Make that explicitely manages the order\n" "in which concurrent jobs are run to provoke erroneous behavior into becoming\n" @@ -3092,33 +3425,33 @@ msgid "" "conditions." msgstr "" -#: gnu/packages/debug.scm:357 +#: gnu/packages/debug.scm:334 msgid "Transparent application input fuzzer" msgstr "" -#: gnu/packages/debug.scm:358 +#: gnu/packages/debug.scm:335 msgid "" "Zzuf is a transparent application input fuzzer. It works by\n" "intercepting file operations and changing random bits in the program's\n" "input. Zzuf's behaviour is deterministic, making it easy to reproduce bugs." msgstr "" -#: gnu/packages/dejagnu.scm:77 +#: gnu/packages/dejagnu.scm:78 msgid "GNU software testing framework" msgstr "" -#: gnu/packages/dejagnu.scm:79 +#: gnu/packages/dejagnu.scm:80 msgid "" "DejaGnu is a framework for testing software. In effect, it serves as\n" "a front-end for all tests written for a program. Thus, each program can have\n" "multiple test suites, which are then all managed by a single harness." msgstr "" -#: gnu/packages/games.scm:164 +#: gnu/packages/games.scm:170 msgid "Tron clone in 3D" msgstr "" -#: gnu/packages/games.scm:165 +#: gnu/packages/games.scm:171 msgid "" "Armagetron is a multiplayer game in 3d that attempts to\n" "emulate and expand on the lightcycle sequence from the movie Tron. It's\n" @@ -3128,11 +3461,11 @@ msgid "" "settings to tweak as well." msgstr "" -#: gnu/packages/games.scm:238 +#: gnu/packages/games.scm:246 msgid "Survival horror roguelike video game" msgstr "" -#: gnu/packages/games.scm:240 +#: gnu/packages/games.scm:248 msgid "" "Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic world.\n" "Struggle to survive in a harsh, persistent, procedurally generated world.\n" @@ -3143,11 +3476,11 @@ msgid "" "the others like yourself, that want what you have." msgstr "" -#: gnu/packages/games.scm:281 +#: gnu/packages/games.scm:289 msgid "Speaking cow text filter" msgstr "" -#: gnu/packages/games.scm:282 +#: gnu/packages/games.scm:290 msgid "" "Cowsay is basically a text filter. Send some text into it,\n" "and you get a cow saying your text. If you think a talking cow isn't enough,\n" @@ -3155,11 +3488,11 @@ msgid "" "tired of cows, a variety of other ASCII-art messengers are available." msgstr "" -#: gnu/packages/games.scm:348 +#: gnu/packages/games.scm:357 msgid "Free content game based on the Doom engine" msgstr "Jeu au contenu libre basé sur le moteur Doom" -#: gnu/packages/games.scm:350 +#: gnu/packages/games.scm:366 msgid "" "The Freedoom project aims to create a complete free content first person\n" "shooter game. Freedoom by itself is just the raw material for a game: it must\n" @@ -3173,11 +3506,64 @@ msgstr "" "pour être jouable. Freedoom complète le moteur Doom sur trois niveaux : les\n" "graphismes, les effets sonores et la musique pour faire un jeu entièrement libre." -#: gnu/packages/games.scm:381 +#: gnu/packages/games.scm:440 +msgid "Software for exploring cellular automata" +msgstr "" + +#: gnu/packages/games.scm:442 +msgid "" +"Golly simulates Conway's Game of Life and many other types of cellular\n" +"automata. The following features are available:\n" +"@enumerate\n" +"@item Support for bounded and unbounded universes, with cells of up to 256\n" +" states.\n" +"@item Support for multiple algorithms, including Bill Gosper's Hashlife\n" +" algorithm.\n" +"@item Loading patterns from BMP, PNG, GIF and TIFF image files.\n" +"@item Reading RLE, macrocell, Life 1.05/1.06, dblife and MCell files.\n" +"@item Scriptable via Lua or Python.\n" +"@item Extracting patterns, rules and scripts from zip files.\n" +"@item Downloading patterns, rules and scripts from online archives.\n" +"@item Pasting patterns from the clipboard.\n" +"@item Unlimited undo/redo.\n" +"@item Configurable keyboard shortcuts.\n" +"@item Auto fit option to keep patterns within the view.\n" +"@end enumerate" +msgstr "" + +#: gnu/packages/games.scm:504 +msgid "Puzzle/platform game" +msgstr "" + +#: gnu/packages/games.scm:505 +msgid "" +"Me and My Shadow is a puzzle/platform game in which you try\n" +"to reach the exit by solving puzzles. Spikes, moving blocks, fragile blocks\n" +"and much more stand between you and the exit. Record your moves and let your\n" +"shadow mimic them to reach blocks you couldn't reach alone." +msgstr "" + +#: gnu/packages/games.scm:540 +msgid "Multiplayer dungeon game involving knights and quests" +msgstr "" + +#: gnu/packages/games.scm:541 +msgid "" +"Knights is a multiplayer game involving several knights who\n" +"must run around a dungeon and complete various quests. Each game revolves\n" +"around a quest – for example, you might have to find some items and carry them\n" +"back to your starting point. This may sound easy, but as there are only\n" +"enough items in the dungeon for one player to win, you may end up having to\n" +"kill your opponents to get their stuff! Other quests involve escaping from\n" +"the dungeon, fighting a duel to the death against the enemy knights, or\n" +"destroying an ancient book using a special wand." +msgstr "" + +#: gnu/packages/games.scm:578 msgid "Backgammon game" msgstr "Jeu de backgammon" -#: gnu/packages/games.scm:382 +#: gnu/packages/games.scm:579 msgid "" "The GNU backgammon application can be used for playing, analyzing and\n" "teaching the game. It has an advanced evaluation engine based on artificial\n" @@ -3191,11 +3577,11 @@ msgstr "" "d'une interface en ligne de commande, il possède aussi une représentation 3D\n" "attractive du plateau de jeu." -#: gnu/packages/games.scm:411 +#: gnu/packages/games.scm:608 msgid "3d Rubik's cube game" msgstr "Jeu de Rubik's cube en 3d" -#: gnu/packages/games.scm:413 +#: gnu/packages/games.scm:610 msgid "" "GNUbik is a puzzle game in which you must manipulate a cube to make\n" "each of its faces have a uniform color. The game is customizable, allowing\n" @@ -3209,11 +3595,11 @@ msgstr "" "pouvez même utiliser des photos pour les faces à la place des couleurs. Le jeu\n" "peut être scripté avec Guile." -#: gnu/packages/games.scm:435 +#: gnu/packages/games.scm:632 msgid "The game of Shogi (Japanese chess)" msgstr "Le jeu de Shōgi (les échecs japonais)" -#: gnu/packages/games.scm:436 +#: gnu/packages/games.scm:633 msgid "" "GNU Shogi is a program that plays the game Shogi (Japanese\n" "Chess). It is similar to standard chess but this variant is far more complicated." @@ -3221,11 +3607,11 @@ msgstr "" "GNU Shogi est un programme qui joue au Shōgi (les échecs japonais).\n" "Il est similaire aux échecs standards mais cette variante est bien plus complexe." -#: gnu/packages/games.scm:467 +#: gnu/packages/games.scm:664 msgid "Tetris clone based on the SDL library" msgstr "" -#: gnu/packages/games.scm:469 +#: gnu/packages/games.scm:666 msgid "" "LTris is a tetris clone: differently shaped blocks are falling down the\n" "rectangular playing field and can be moved sideways or rotated by 90 degree\n" @@ -3239,39 +3625,51 @@ msgid "" "watch your CPU playing while enjoying a cup of tea!" msgstr "" -#: gnu/packages/games.scm:520 +#: gnu/packages/games.scm:719 msgid "Version of the classic 3D shoot'em'up game Doom" msgstr "Version du jeu classique de shoot'em'up Doom en 3D" -#: gnu/packages/games.scm:522 +#: gnu/packages/games.scm:721 msgid "PrBoom+ is a Doom source port developed from the original PrBoom project." msgstr "" "PrBoom+ est un port des sources de Doom développé à partir du projet\n" "PrBoom original." -#: gnu/packages/games.scm:569 +#: gnu/packages/games.scm:768 msgid "Action platformer game" msgstr "" -#: gnu/packages/games.scm:571 +#: gnu/packages/games.scm:770 msgid "" "ReTux is an action platformer loosely inspired by the Mario games,\n" "utilizing the art assets from the @code{SuperTux} project." msgstr "" -#: gnu/packages/games.scm:600 +#: gnu/packages/games.scm:876 +msgid "A classical roguelike/sandbox game" +msgstr "" + +#: gnu/packages/games.scm:878 +msgid "" +"RogueBox Adventures is a graphical roguelike with strong influences\n" +"from sandbox games like Minecraft or Terraria. The main idea of RogueBox\n" +"Adventures is to offer the player a kind of roguelike toy-world. This world\n" +"can be explored and changed freely." +msgstr "" + +#: gnu/packages/games.scm:905 msgid "User interface for gnushogi" msgstr "Interface pour gnushogi" -#: gnu/packages/games.scm:601 +#: gnu/packages/games.scm:906 msgid "A graphical user interface for the package @code{gnushogi}." msgstr "Une interface utilisateur graphique pour le paquet @code{gnushogi}" -#: gnu/packages/games.scm:650 +#: gnu/packages/games.scm:957 msgid "GNU/Linux port of the indie game \"l'Abbaye des Morts\"" msgstr "Port GNU/Linux du jeu indépendant « l'Abbaye des Morts »" -#: gnu/packages/games.scm:651 +#: gnu/packages/games.scm:958 msgid "" "L'Abbaye des Morts is a 2D platform game set in 13th century\n" "France. The Cathars, who preach about good Christian beliefs, were being\n" @@ -3280,11 +3678,11 @@ msgid "" "that beneath its ruins lay buried an ancient evil." msgstr "" -#: gnu/packages/games.scm:703 +#: gnu/packages/games.scm:1010 msgid "Dungeon exploration roguelike" msgstr "Roguelike d'exploration de donjon" -#: gnu/packages/games.scm:704 +#: gnu/packages/games.scm:1011 msgid "" "Angband is a Classic dungeon exploration roguelike. Explore\n" "the depths below Angband, seeking riches, fighting monsters, and preparing to\n" @@ -3294,11 +3692,11 @@ msgstr "" "en dessous d'Angband, cherchez des richesses, combattez des montres et préparez-vous\n" "à combattre Morgoth, le Seigneur des Ténèbres." -#: gnu/packages/games.scm:744 +#: gnu/packages/games.scm:1047 msgid "Lemmings clone" msgstr "Clone de Lemmings" -#: gnu/packages/games.scm:746 +#: gnu/packages/games.scm:1049 msgid "" "Pingus is a free Lemmings-like puzzle game in which the player takes\n" "command of a bunch of small animals and has to guide them through levels.\n" @@ -3313,11 +3711,11 @@ msgstr "" "leur donnant des ordres. Plusieurs de ces ordres sont nécessaires pour atteindre\n" "la fin du niveau. Le jeu est présenté en 2D, en vue de côté." -#: gnu/packages/games.scm:768 +#: gnu/packages/games.scm:1071 msgid "Convert English text to humorous dialects" msgstr "Convertit du texte en anglais vers des dialectes rigolos" -#: gnu/packages/games.scm:769 +#: gnu/packages/games.scm:1072 msgid "" "The GNU Talk Filters are programs that convert English text\n" "into stereotyped or otherwise humorous dialects. The filters are provided as\n" @@ -3327,11 +3725,11 @@ msgstr "" "vers des dialectes stéréotypés ou rigolos. Les filtres sont fournis en tant que\n" "bibliothèques C, pour qu'ils puissent être facilement intégrés à d'autres programmes." -#: gnu/packages/games.scm:801 +#: gnu/packages/games.scm:1104 msgid "Simulate the display from \"The Matrix\"" msgstr "Simule l'affichage comme dans « Matrix »" -#: gnu/packages/games.scm:802 +#: gnu/packages/games.scm:1105 msgid "" "CMatrix simulates the display from \"The Matrix\" and is\n" "based on the screensaver from the movie's website. It works with terminal\n" @@ -3343,11 +3741,11 @@ msgstr "" "peut faire défiler les lignes à la même vitesse ou de manière asynchrone\n" "à une vitesse définie par l'utilisateur." -#: gnu/packages/games.scm:822 +#: gnu/packages/games.scm:1125 msgid "Full chess implementation" msgstr "Implémentation complète du jeu d'échecs" -#: gnu/packages/games.scm:823 +#: gnu/packages/games.scm:1126 msgid "" "GNU Chess is a chess engine. It allows you to compete\n" "against the computer in a game of chess, either through the default terminal\n" @@ -3358,11 +3756,11 @@ msgstr "" "textuelle par défaut soit via une interface visuelle externe comme\n" "GNU XBoard." -#: gnu/packages/games.scm:851 +#: gnu/packages/games.scm:1154 msgid "Twisted adventures of young pig farmer Dink Smallwood" msgstr "" -#: gnu/packages/games.scm:853 +#: gnu/packages/games.scm:1156 msgid "" "GNU FreeDink is a free and portable re-implementation of the engine\n" "for the role-playing game Dink Smallwood. It supports not only the original\n" @@ -3370,19 +3768,19 @@ msgid "" "To that extent, it also includes a front-end for managing all of your D-Mods." msgstr "" -#: gnu/packages/games.scm:878 +#: gnu/packages/games.scm:1181 msgid "Game data for GNU Freedink" msgstr "Données de jeu pour GNU Freedink" -#: gnu/packages/games.scm:880 +#: gnu/packages/games.scm:1183 msgid "This package contains the game data of GNU Freedink." msgstr "Ce paquet continet les données du jeu GNU Freedink." -#: gnu/packages/games.scm:932 +#: gnu/packages/games.scm:1236 msgid "Graphical user interface for chess programs" msgstr "Interface utilisateur Graphique pour les programmes d'échecs" -#: gnu/packages/games.scm:933 +#: gnu/packages/games.scm:1237 msgid "" "GNU XBoard is a graphical board for all varieties of chess,\n" "including international chess, xiangqi (Chinese chess), shogi (Japanese chess)\n" @@ -3396,11 +3794,11 @@ msgstr "" "supportées. Il présente une interface utilisateur complètement interactive et\n" "peut charger et sauvegarder les jeux dans la Notation de Jeu Universelle." -#: gnu/packages/games.scm:986 +#: gnu/packages/games.scm:1291 msgid "Ball and paddle game" msgstr "" -#: gnu/packages/games.scm:987 +#: gnu/packages/games.scm:1292 msgid "" "XBoing is a blockout type game where you have a paddle which\n" "you control to bounce a ball around the game zone destroying blocks with a\n" @@ -3408,11 +3806,11 @@ msgid "" "destroy, the better your score. The person with the highest score wins." msgstr "" -#: gnu/packages/games.scm:1019 +#: gnu/packages/games.scm:1326 msgid "Typing tutor" msgstr "Tutorial pour apprendre à taper" -#: gnu/packages/games.scm:1021 +#: gnu/packages/games.scm:1328 msgid "" "GNU Typist is a universal typing tutor. It can be used to learn and\n" "practice touch-typing. Several tutorials are included; in addition to\n" @@ -3421,11 +3819,11 @@ msgid "" "are primarily in English, however some in other languages are provided." msgstr "" -#: gnu/packages/games.scm:1068 +#: gnu/packages/games.scm:1375 msgid "3D game engine written in C++" msgstr "Moteur de jeu 3D écrit en C++" -#: gnu/packages/games.scm:1070 +#: gnu/packages/games.scm:1377 msgid "" "The Irrlicht Engine is a high performance realtime 3D engine written in\n" "C++. Features include an OpenGL renderer, extensible materials, scene graph\n" @@ -3438,11 +3836,11 @@ msgstr "" "effets spéciaux, le support pour des formats de fichiers graphiques usuels et la\n" "détection de collision." -#: gnu/packages/games.scm:1122 +#: gnu/packages/games.scm:1429 msgid "2D space shooter" msgstr "Jeu de tir spatial en 2D" -#: gnu/packages/games.scm:1124 +#: gnu/packages/games.scm:1431 msgid "" "M.A.R.S. is a 2D space shooter with pretty visual effects and\n" "attractive physics. Players can battle each other or computer controlled\n" @@ -3450,19 +3848,19 @@ msgid "" "match, cannon keep, and grave-itation pit." msgstr "" -#: gnu/packages/games.scm:1165 +#: gnu/packages/games.scm:1473 msgid "Main game data for the Minetest game engine" msgstr "Données principales du jeu pour le moteur de jeu Minetest" -#: gnu/packages/games.scm:1167 +#: gnu/packages/games.scm:1475 msgid "Game data for the Minetest infinite-world block sandox game." msgstr "" -#: gnu/packages/games.scm:1219 +#: gnu/packages/games.scm:1527 msgid "Infinite-world block sandbox game" msgstr "" -#: gnu/packages/games.scm:1221 +#: gnu/packages/games.scm:1529 msgid "" "Minetest is a sandbox construction game. Players can create and destroy\n" "various types of blocks in a three-dimensional open world. This allows\n" @@ -3471,11 +3869,11 @@ msgid "" "in different ways." msgstr "" -#: gnu/packages/games.scm:1260 +#: gnu/packages/games.scm:1568 msgid "Curses Implementation of the Glk API" msgstr "Implémentation en Curses de l'API Glk" -#: gnu/packages/games.scm:1262 +#: gnu/packages/games.scm:1570 msgid "" "Glk defines a portable API for applications with text UIs. It was\n" "primarily designed for interactive fiction, but it should be suitable for many\n" @@ -3490,11 +3888,11 @@ msgstr "" "tourne dans une fenêtre de terminal et qui utilise la bibliothèque @code{curses.h}\n" "pour le contrôle de l'écran." -#: gnu/packages/games.scm:1300 +#: gnu/packages/games.scm:1608 msgid "Interpreter for Glulx VM" msgstr "Interpréteur pour Glulx VM" -#: gnu/packages/games.scm:1302 +#: gnu/packages/games.scm:1610 msgid "" "Glulx is a 32-bit portable virtual machine intended for writing and\n" "playing interactive fiction. It was designed by Andrew Plotkin to relieve\n" @@ -3506,11 +3904,11 @@ msgstr "" "relacher certaines contraintes du vénérable format Z-machine. C'est l'interpréteur\n" "de référence, qui utilise l'API Glk." -#: gnu/packages/games.scm:1339 +#: gnu/packages/games.scm:1644 msgid "Z-machine interpreter" msgstr "Interpréteur Z-machine" -#: gnu/packages/games.scm:1341 +#: gnu/packages/games.scm:1646 msgid "" "Fizmo is a console-based Z-machine interpreter. It is used to play\n" "interactive fiction, also known as text adventures, which were implemented\n" @@ -3520,29 +3918,11 @@ msgstr "" "à des fictions interactives, aussi connues sous le nom d'aventures textuelles,\n" "qui étaient implémentées soit par Infocom ou crées avec le compilateur Inform." -#: gnu/packages/games.scm:1395 -msgid "Reference frontend for the libretro API" -msgstr "Interface de référence pour l'API libretro" - -#: gnu/packages/games.scm:1397 -msgid "" -"Libretro is a simple but powerful development interface that allows for\n" -"the easy creation of emulators, games and multimedia applications that can plug\n" -"straight into any libretro-compatible frontend. RetroArch is the official\n" -"reference frontend for the libretro API, currently used by most as a modular\n" -"multi-system game/emulator system." -msgstr "" -"Libretro est une interface de développement simple mais puissante qui permet\n" -"de créer facilement des émulateurs, des jeux et des applications multimédia qui peuvent\n" -"se brancher directement sur une interface compatible avec libretro. RetroArch est\n" -"l'interface de référence officielle pour l'API libretro, actuellement utilisée par la plupart comme\n" -"un système de jeu/d'émulateur multi-système modulaire." - -#: gnu/packages/games.scm:1417 +#: gnu/packages/games.scm:1664 msgid "Play the game of Go" msgstr "Jouer au jeu de Go" -#: gnu/packages/games.scm:1419 +#: gnu/packages/games.scm:1666 msgid "" "GNU Go is a program that plays the game of Go, in which players\n" "place stones on a grid to form territory or capture other stones. While\n" @@ -3560,11 +3940,11 @@ msgstr "" "de stockage standard pour les jeux (SGF, Smart Game Format) et le format\n" "de communication inter-processus (GMP, Go Modem Protocol)." -#: gnu/packages/games.scm:1447 -msgid "High speed arctic racing game based on Tux Racer" +#: gnu/packages/games.scm:1694 +msgid "High-speed arctic racing game based on Tux Racer" msgstr "" -#: gnu/packages/games.scm:1449 +#: gnu/packages/games.scm:1696 msgid "" "Extreme Tux Racer, or etracer as it is called for short, is\n" "a simple OpenGL racing game featuring Tux, the Linux mascot. The goal of the\n" @@ -3577,11 +3957,11 @@ msgid "" "This game is based on the GPL version of the famous game TuxRacer." msgstr "" -#: gnu/packages/games.scm:1531 +#: gnu/packages/games.scm:1778 msgid "3D kart racing game" msgstr "Jeu de course de karts en 3D" -#: gnu/packages/games.scm:1532 +#: gnu/packages/games.scm:1779 msgid "" "SuperTuxKart is a 3D kart racing game, with a focus on\n" "having fun over realism. You can play with up to 4 friends on one PC, racing\n" @@ -3593,12 +3973,12 @@ msgstr "" "la courses les uns contre les autres ou d'essayer de battre l'ordinateur. Un\n" "mode solo est aussi disponible." -#: gnu/packages/games.scm:1564 +#: gnu/packages/games.scm:1811 msgid "Game of jumping to the next floor, trying not to fall" msgstr "Un jeu où on saute à l'étage au dessus en essayent de ne pas tomber" # replay en français ? -#: gnu/packages/games.scm:1566 +#: gnu/packages/games.scm:1813 msgid "" "GNUjump is a simple, yet addictive game in which you must jump from\n" "platform to platform to avoid falling, while the platforms drop at faster rates\n" @@ -3611,11 +3991,11 @@ msgstr "" "propose du multijoueur, des FPS illimités, une chute douce du sol des\n" "graphismes et des sons personnalisables et des replays." -#: gnu/packages/games.scm:1609 +#: gnu/packages/games.scm:1847 msgid "Turn-based strategy game" msgstr "Jeu de stratégie en tour par tour" -#: gnu/packages/games.scm:1611 +#: gnu/packages/games.scm:1849 msgid "" "The Battle for Wesnoth is a fantasy, turn based tactical strategy game,\n" "with several single player campaigns, and multiplayer games (both networked and\n" @@ -3635,29 +4015,23 @@ msgstr "" "gagnent de l'expérience et augmentent de niveau, et sont rejoués d'un scénario\n" "à la campagne suivante." -#: gnu/packages/games.scm:1655 -msgid "X86 emulator with CGA/EGA/VGA/etc. graphics and sound" -msgstr "Émulateur X86 avec CGA/EGA/VGA/etc. graphiques et sons" +#: gnu/packages/games.scm:1871 +msgid "Dedicated @emph{Battle for Wesnoth} server" +msgstr "Serveur dédié pour la @emph{Bataille pour Wesnoth}" -#: gnu/packages/games.scm:1656 +#: gnu/packages/games.scm:1872 msgid "" -"DOSBox is a DOS-emulator that uses the SDL library. DOSBox\n" -"also emulates CPU:286/386 realmode/protected mode, Directory\n" -"FileSystem/XMS/EMS, Tandy/Hercules/CGA/EGA/VGA/VESA graphics, a\n" -"SoundBlaster/Gravis Ultra Sound card for excellent sound compatibility with\n" -"older games." +"This package contains a dedicated server for @emph{The\n" +"Battle for Wesnoth}." msgstr "" -"DOSBox est un émulateur DOS qui utilise la bibliothèque SDL. DOSBox\n" -"émule aussi les modes réels et protégés des CPU 286 et 386, Directory\n" -"FileSystem/XMS/EMS, les graphiques Tandy/Hercules/CGA/EGA/VGA/VESA,\n" -"une carte SoundBlaster/Gravis Ultra pour une excellente compatibilité du son\n" -"avec les plus vieux jeux." +"Ce paquet contient un serveur dédié pour @emph{La bataille\n" +"pour Wesnoth}." -#: gnu/packages/games.scm:1701 +#: gnu/packages/games.scm:1913 msgid "Mouse and keyboard discovery for children" msgstr "Découverte de la souris et du clavier pour les enfants" -#: gnu/packages/games.scm:1703 +#: gnu/packages/games.scm:1915 msgid "" "Gamine is a game designed for young children who are learning to use the\n" "mouse and keyboard. The child uses the mouse to draw colored dots and lines\n" @@ -3667,11 +4041,11 @@ msgstr "" "souris et le clavier. L'enfant utilise la souris pour dessiner des points colorés\n" "et des lignes sur l'écran et le clavier pour afficher des lettres." -#: gnu/packages/games.scm:1735 +#: gnu/packages/games.scm:1947 msgid "Puzzle game with a cat in lead role" msgstr "" -#: gnu/packages/games.scm:1736 +#: gnu/packages/games.scm:1948 msgid "" "Project Raincat is a game developed by Carnegie Mellon\n" "students through GCS during the Fall 2008 semester. Raincat features game\n" @@ -3681,11 +4055,11 @@ msgid "" msgstr "" # Traductino officielle du nom du jeu ? -#: gnu/packages/games.scm:1770 +#: gnu/packages/games.scm:1982 msgid "Client for 'The Mana World' and similar games" msgstr "Client pour « the Mana World » et des jeux similaires" -#: gnu/packages/games.scm:1772 +#: gnu/packages/games.scm:1984 msgid "" "ManaPlus is a 2D MMORPG client for game servers. It is the only\n" "fully supported client for @uref{http://www.themanaworld.org, The mana\n" @@ -3696,172 +4070,11 @@ msgstr "" "client entièrement supporté par @uref{http://www.themanaworld.org, the Mana World},\n" "@uref{http://evolonline.org, Evol Online} et @uref{http://landoffire.org, Land of fire}." -#: gnu/packages/games.scm:1822 -msgid "Nintendo 64 emulator core library" -msgstr "Bibliothèque de cœur de l'émulateur de Nintendo 64" - -#: gnu/packages/games.scm:1824 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"core library." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient la\n" -"bibliothèque de cœur." - -#: gnu/packages/games.scm:1868 gnu/packages/games.scm:1913 -#: gnu/packages/games.scm:1955 gnu/packages/games.scm:1997 -#: gnu/packages/games.scm:2313 -msgid "Mupen64Plus SDL input plugin" -msgstr "Greffon d'entrée SDL de Mupen64Plus" - -#: gnu/packages/games.scm:1870 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"SDL audio plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon SDL audio." - -#: gnu/packages/games.scm:1915 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"SDL input plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon d'entrée SDL." - -#: gnu/packages/games.scm:1957 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"high-level emulation (HLE) RSP processor plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon de traitement RSP d'émulation haut-niveau (HLE)." - -#: gnu/packages/games.scm:1999 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Z64 RSP processor plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon de traitement RSP Z64." - -#: gnu/packages/games.scm:2043 gnu/packages/games.scm:2097 -#: gnu/packages/games.scm:2147 gnu/packages/games.scm:2195 -msgid "Mupen64Plus Rice Video plugin" -msgstr "Greffon vidéo Rice pour Mupen64Plus" - -#: gnu/packages/games.scm:2045 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Arachnoid video plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon vidéo Arachnoid." - -#: gnu/packages/games.scm:2099 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Glide64 video plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon vidéo Glide64." - -#: gnu/packages/games.scm:2149 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Glide64MK2 video plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon vidéo Glide64MK2." - -#: gnu/packages/games.scm:2197 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Rice Video plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon vidéo Rice." - -#: gnu/packages/games.scm:2249 -msgid "Mupen64Plus Z64 video plugin" -msgstr "Greffon vidéo Z64 pour Mupen64Plus" - -#: gnu/packages/games.scm:2251 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"Z64 video plugin." -msgstr "" -"Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"greffon vidéo Z64." - -#: gnu/packages/games.scm:2315 -msgid "" -"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" -"which is capable of accurately playing many games. This package contains the\n" -"command line user interface. Installing this package is the easiest way\n" -"towards a working Mupen64Plus for casual users." -msgstr "" -"Mupens64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" -"greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" -"l'interface en ligne de commande. L'installation de ce paquet est la meilleure\n" -"manière d'avoir un Mupen64Plus fonctionnel pour les utilisateurs occasionnels." - -#: gnu/packages/games.scm:2372 -msgid "Nintendo Entertainment System (NES/Famicom) emulator" -msgstr "Émulateur Nintendo Entertainement System (NES/Famicom)" - -#: gnu/packages/games.scm:2374 -msgid "" -"Nestopia UE (Undead Edition) is a fork of the Nintendo Entertainment\n" -"System (NES/Famicom) emulator Nestopia, with enhancements from members of the\n" -"emulation community. It provides highly accurate emulation." -msgstr "" -"Nestopia UE (Undead Edition) est un fork de l'émulateur NES/Famicom Nestopia, avec\n" -"des améliorations des membres de la communauté de l'émulation. Il fournit\n" -"une émulation très fidèle." - -#: gnu/packages/games.scm:2404 -msgid "Video game console emulator front-end" -msgstr "Interface d'émulateur de jeux en console" - -#: gnu/packages/games.scm:2405 -msgid "" -"EmulationStation provides a graphical front-end to a large\n" -"number of video game console emulators. It features an interface that is\n" -"usable with any game controller that has at least 4 buttons, theming support,\n" -"and a game metadata scraper." -msgstr "" -"EmulationStation fournit une interface graphique pour un grand\n" -"nombre d'émulateurs de jeux vidéos en console. Il fournit une interface\n" -"utilisable avec n'importe quelle manette de jeu avec au moins 4 boutons et\n" -"qui permet la personnalisation et un recycleur de métadonnées de jeux." - -#: gnu/packages/games.scm:2459 +#: gnu/packages/games.scm:2052 msgid "Transportation economics simulator" msgstr "Simulateur de l'économie du transport" -#: gnu/packages/games.scm:2460 +#: gnu/packages/games.scm:2053 msgid "" "OpenTTD is a game in which you transport goods and\n" "passengers by land, water and air. It is a re-implementation of Transport\n" @@ -3878,11 +4091,11 @@ msgstr "" "ne contient que le moteur de jeu. Lorsque vous le démarrez, il vous sera demandé de télécharger\n" "un thème graphique." -#: gnu/packages/games.scm:2517 +#: gnu/packages/games.scm:2110 msgid "Base graphics set for OpenTTD" msgstr "" -#: gnu/packages/games.scm:2519 +#: gnu/packages/games.scm:2112 msgid "" "The OpenGFX projects is an implementation of the OpenTTD base grahics\n" "set that aims to ensure the best possible out-of-the-box experience.\n" @@ -3897,33 +4110,49 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/games.scm:2564 +#: gnu/packages/games.scm:2157 msgid "Base sounds for OpenTTD" msgstr "" -#: gnu/packages/games.scm:2565 +#: gnu/packages/games.scm:2158 msgid "" "OpenSFX is a set of free base sounds for OpenTTD which make\n" "it possible to play OpenTTD without requiring the proprietary sound files from\n" "the original Transport Tycoon Deluxe." msgstr "" -#: gnu/packages/games.scm:2602 +#: gnu/packages/games.scm:2195 msgid "Music set for OpenTTD" msgstr "" -#: gnu/packages/games.scm:2603 +#: gnu/packages/games.scm:2196 msgid "" "OpenMSX is a music set for OpenTTD which makes it possible\n" "to play OpenTTD without requiring the proprietary music from the original\n" "Transport Tycoon Deluxe." msgstr "" -#: gnu/packages/games.scm:2681 +#: gnu/packages/games.scm:2265 +msgid "Title sequences for OpenRCT2" +msgstr "" + +#: gnu/packages/games.scm:2267 +msgid "openrct2-title-sequences is a set of title sequences for OpenRCT2." +msgstr "" + +#: gnu/packages/games.scm:2306 +msgid "Objects for OpenRCT2" +msgstr "" + +#: gnu/packages/games.scm:2308 +msgid "openrct2-objects is a set of objects for OpenRCT2." +msgstr "" + +#: gnu/packages/games.scm:2360 msgid "Free software re-implementation of RollerCoaster Tycoon 2" msgstr "" -#: gnu/packages/games.scm:2682 +#: gnu/packages/games.scm:2361 msgid "" "OpenRCT2 is a free software re-implementation of\n" "RollerCoaster Tycoon 2 (RCT2). The gameplay revolves around building and\n" @@ -3933,51 +4162,43 @@ msgid "" "images, etc.)" msgstr "" -#: gnu/packages/games.scm:2724 +#: gnu/packages/games.scm:2403 msgid "Pinball simulator" msgstr "" -#: gnu/packages/games.scm:2725 +#: gnu/packages/games.scm:2404 msgid "" "The Emilia Pinball Project is a pinball simulator. There\n" "are only two levels to play with, but they are very addictive." msgstr "" -#: gnu/packages/games.scm:2746 +#: gnu/packages/games.scm:2427 msgid "Board game inspired by The Settlers of Catan" msgstr "" -#: gnu/packages/games.scm:2747 +#: gnu/packages/games.scm:2428 msgid "" "Pioneers is an emulation of the board game The Settlers of\n" "Catan. It can be played on a local network, on the internet, and with AI\n" "players." msgstr "" -#: gnu/packages/games.scm:2781 -msgid "Nintendo DS emulator" -msgstr "" - -#: gnu/packages/games.scm:2783 -msgid "DeSmuME is an emulator for the Nintendo DS handheld gaming console." -msgstr "" - -#: gnu/packages/games.scm:2821 gnu/packages/gnome.scm:2617 +#: gnu/packages/games.scm:2469 gnu/packages/gnome.scm:2663 msgid "Logic puzzle game" msgstr "" -#: gnu/packages/games.scm:2822 +#: gnu/packages/games.scm:2470 msgid "" "The goal of this logic game is to open all cards in a 6x6\n" "grid, using a number of hints as to their relative position. The game idea\n" "is attributed to Albert Einstein." msgstr "" -#: gnu/packages/games.scm:2851 +#: gnu/packages/games.scm:2499 msgid "MUD and telnet client" msgstr "" -#: gnu/packages/games.scm:2853 +#: gnu/packages/games.scm:2501 msgid "" "POWWOW is a client software which can be used for telnet as well as for\n" "@dfn{Multi-User Dungeon} (MUD). Additionally it can serve as a nice client for\n" @@ -3985,58 +4206,33 @@ msgid "" "http://lavachat.symlynx.com/unix/" msgstr "" -#: gnu/packages/games.scm:3023 +#: gnu/packages/games.scm:2676 msgid "Arena shooter derived from the Cube 2 engine" msgstr "" -#: gnu/packages/games.scm:3025 +#: gnu/packages/games.scm:2678 msgid "" "Red Eclipse is an arena shooter, created from the Cube2 engine.\n" "Offering an innovative parkour system and distinct but all potent weapons,\n" "Red Eclipse provides fast paced and accessible gameplay." msgstr "" -#: gnu/packages/games.scm:3119 -msgid "Nintendo multi-system emulator" -msgstr "" - -#: gnu/packages/games.scm:3121 -msgid "" -"higan (formerly bsnes) is an emulator for multiple Nintendo video game\n" -"consoles, including the Nintendo Entertainment System (NES/Famicom), Super\n" -"Nintendo Entertainment System (SNES/Super Famicom), Game Boy, Game Boy\n" -"Color (GBC), and Game Boy Advance (GBA). It also supports the subsystems\n" -"Super Game Boy, BS-X Satellaview, and Sufami Turbo." -msgstr "" - -#: gnu/packages/games.scm:3179 -msgid "Game Boy Advance emulator" -msgstr "" - -#: gnu/packages/games.scm:3181 -msgid "" -"mGBA is an emulator for running Game Boy Advance games. It aims to be\n" -"faster and more accurate than many existing Game Boy Advance emulators, as\n" -"well as adding features that other emulators lack. It also supports Game Boy\n" -"and Game Boy Color games." -msgstr "" - -#: gnu/packages/games.scm:3237 +#: gnu/packages/games.scm:2738 msgid "Text adventure game" msgstr "" -#: gnu/packages/games.scm:3239 +#: gnu/packages/games.scm:2740 msgid "" "Grue Hunter is a text adventure game written in Perl. You must make\n" "your way through an underground cave system in search of the Grue. Can you\n" "capture it and get out alive?" msgstr "" -#: gnu/packages/games.scm:3281 +#: gnu/packages/games.scm:2782 msgid "Old-school earthworm action game" msgstr "" -#: gnu/packages/games.scm:3283 +#: gnu/packages/games.scm:2784 msgid "" "lierolibre is an earthworm action game where you fight another player\n" "(or the computer) underground using a wide array of weapons.\n" @@ -4061,11 +4257,11 @@ msgid "" "fullscreen, use F5 or Alt+Enter." msgstr "" -#: gnu/packages/games.scm:3358 +#: gnu/packages/games.scm:2859 msgid "3D Real-time strategy and real-time tactics game" msgstr "" -#: gnu/packages/games.scm:3360 +#: gnu/packages/games.scm:2861 msgid "" "Warzone 2100 offers campaign, multi-player, and single-player skirmish\n" "modes. An extensive tech tree with over 400 different technologies, combined\n" @@ -4073,11 +4269,11 @@ msgid "" "tactics." msgstr "" -#: gnu/packages/games.scm:3393 +#: gnu/packages/games.scm:2894 msgid "2D scrolling shooter game" msgstr "" -#: gnu/packages/games.scm:3395 +#: gnu/packages/games.scm:2896 msgid "" "In the year 2579, the intergalactic weapons corporation, WEAPCO, has\n" "dominated the galaxy. Guide Chris Bainfield and his friend Sid Wilson on\n" @@ -4086,11 +4282,11 @@ msgid "" "in strikes against the evil corporation." msgstr "" -#: gnu/packages/games.scm:3426 +#: gnu/packages/games.scm:2927 msgid "Fast-paced, arcade-style, top-scrolling space shooter" msgstr "" -#: gnu/packages/games.scm:3428 +#: gnu/packages/games.scm:2929 msgid "" "In this game you are the captain of the cargo ship Chromium B.S.U. and\n" "are responsible for delivering supplies to the troops on the front line. Your\n" @@ -4098,11 +4294,11 @@ msgid "" "safety of the Chromium vessel." msgstr "" -#: gnu/packages/games.scm:3503 +#: gnu/packages/games.scm:3005 msgid "Drawing software for children" msgstr "" -#: gnu/packages/games.scm:3505 +#: gnu/packages/games.scm:3007 msgid "" "Tux Paint is a free drawing program designed for young children (kids\n" "ages 3 and up). It has a simple, easy-to-use interface; fun sound effects;\n" @@ -4111,40 +4307,40 @@ msgid "" "your child be creative." msgstr "" -#: gnu/packages/games.scm:3543 +#: gnu/packages/games.scm:3046 msgid "Stamp images for Tux Paint" msgstr "" -#: gnu/packages/games.scm:3545 +#: gnu/packages/games.scm:3048 msgid "" "This package contains a set of \"Rubber Stamp\" images which can be used\n" "with the \"Stamp\" tool within Tux Paint." msgstr "" -#: gnu/packages/games.scm:3592 +#: gnu/packages/games.scm:3095 msgid "Configure Tux Paint" msgstr "" -#: gnu/packages/games.scm:3594 +#: gnu/packages/games.scm:3097 msgid "Tux Paint Config is a graphical configuration editor for Tux Paint." msgstr "" -#: gnu/packages/games.scm:3626 +#: gnu/packages/games.scm:3129 msgid "2D platformer game" msgstr "" -#: gnu/packages/games.scm:3627 +#: gnu/packages/games.scm:3130 msgid "" "SuperTux is a free classic 2D jump'n run sidescroller game\n" "in a style similar to the original Super Mario games covered under\n" "the GNU GPL." msgstr "" -#: gnu/packages/games.scm:3661 +#: gnu/packages/games.scm:3164 msgid "MUD client" msgstr "" -#: gnu/packages/games.scm:3663 +#: gnu/packages/games.scm:3166 msgid "" "TinTin++ is a MUD client which supports MCCP (Mud Client Compression Protocol),\n" "MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used by MUDs,\n" @@ -4152,11 +4348,11 @@ msgid "" "auto mapper with a VT100 map display." msgstr "" -#: gnu/packages/games.scm:3700 +#: gnu/packages/games.scm:3203 msgid "Programming game" msgstr "" -#: gnu/packages/games.scm:3701 +#: gnu/packages/games.scm:3204 msgid "" "Learn programming, playing with ants and spider webs ;-)\n" "Your robot ant can be programmed in many languages: OCaml, Python, C, C++,\n" @@ -4164,34 +4360,34 @@ msgid "" "programmers may also add their own favorite language." msgstr "" -#: gnu/packages/games.scm:3745 +#: gnu/packages/games.scm:3248 msgid "Keyboard mashing and doodling game for babies" msgstr "" -#: gnu/packages/games.scm:3746 +#: gnu/packages/games.scm:3249 msgid "" "Bambam is a simple baby keyboard (and gamepad) masher\n" "application that locks the keyboard and mouse and instead displays bright\n" "colors, pictures, and sounds." msgstr "" -#: gnu/packages/games.scm:3789 +#: gnu/packages/games.scm:3313 msgid "Arcade-style fire fighting game" msgstr "" -#: gnu/packages/games.scm:3791 +#: gnu/packages/games.scm:3315 msgid "" "Mr. Rescue is an arcade styled 2d action game centered around evacuating\n" -"civilians from burning buildings. The game features fast paced fire\n" -"extinguishing action, intense boss battles, a catchy soundtrack and lots of\n" +"civilians from burning buildings. The game features fast-paced fire\n" +"extinguishing action, intense boss battles, a catchy soundtrack, and lots of\n" "throwing people around in pseudo-randomly generated buildings." msgstr "" -#: gnu/packages/games.scm:3898 +#: gnu/packages/games.scm:3422 msgid "Non-euclidean graphical rogue-like game" msgstr "" -#: gnu/packages/games.scm:3900 +#: gnu/packages/games.scm:3424 msgid "" "HyperRogue is a game in which the player collects treasures and fights\n" "monsters -- rogue-like but for the fact that it is played on the hyperbolic\n" @@ -4205,21 +4401,21 @@ msgid "" "symbols, it still needs graphics to render the non-euclidean world." msgstr "" -#: gnu/packages/games.scm:3943 +#: gnu/packages/games.scm:3467 msgid "Shooter with space station destruction" msgstr "" -#: gnu/packages/games.scm:3945 +#: gnu/packages/games.scm:3469 msgid "" "Kobo Deluxe is an enhanced version of Akira Higuchi's XKobo graphical game\n" "for Un*x systems with X11." msgstr "" -#: gnu/packages/games.scm:3977 +#: gnu/packages/games.scm:3501 msgid "Turn based empire building strategy game" msgstr "" -#: gnu/packages/games.scm:3978 +#: gnu/packages/games.scm:3502 msgid "" "Freeciv is a turn based empire building strategy game\n" "inspired by the history of human civilization. The game commences in\n" @@ -4227,11 +4423,11 @@ msgid "" "to the Space Age." msgstr "" -#: gnu/packages/games.scm:4009 +#: gnu/packages/games.scm:3533 msgid "Recreation of data decryption effect in \"Sneakers\"" msgstr "" -#: gnu/packages/games.scm:4011 +#: gnu/packages/games.scm:3535 msgid "" "@code{No More Secrets} provides a command line tool called \"nms\"\n" "that recreates the famous data decryption effect seen on screen in the 1992\n" @@ -4242,41 +4438,41 @@ msgid "" "starting a decryption sequence to reveal the original plaintext characters." msgstr "" -#: gnu/packages/games.scm:4038 +#: gnu/packages/games.scm:3562 msgid "Data files for MegaGlest" msgstr "Fichiers de données pour MegaGlest" -#: gnu/packages/games.scm:4039 +#: gnu/packages/games.scm:3563 msgid "This package contains the data files required for MegaGlest." msgstr "Ce paquet contient les fichiers de données requis par MegaGlest." -#: gnu/packages/games.scm:4092 +#: gnu/packages/games.scm:3616 msgid "3D real-time strategy (RTS) game" msgstr "" -#: gnu/packages/games.scm:4093 +#: gnu/packages/games.scm:3617 msgid "" "MegaGlest is a cross-platform 3D real-time strategy (RTS)\n" "game, where you control the armies of one of seven different factions: Tech,\n" "Magic, Egypt, Indians, Norsemen, Persian or Romans." msgstr "" -#: gnu/packages/games.scm:4143 +#: gnu/packages/games.scm:3668 msgid "Side-scrolling physics platformer with a ball of tar" msgstr "" -#: gnu/packages/games.scm:4144 +#: gnu/packages/games.scm:3669 msgid "" "In FreeGish you control Gish, a ball of tar who lives\n" "happily with his girlfriend Brea, until one day a mysterious dark creature\n" "emerges from a sewer hole and pulls her below ground." msgstr "" -#: gnu/packages/games.scm:4179 +#: gnu/packages/games.scm:3708 msgid "Classic overhead run-and-gun game" msgstr "" -#: gnu/packages/games.scm:4180 +#: gnu/packages/games.scm:3709 msgid "" "C-Dogs SDL is a classic overhead run-and-gun game,\n" "supporting up to 4 players in co-op and deathmatch modes. Customize your\n" @@ -4284,33 +4480,33 @@ msgid "" "over 100 user-created campaigns." msgstr "" -#: gnu/packages/games.scm:4280 +#: gnu/packages/games.scm:3809 msgid "3D puzzle game" msgstr "" -#: gnu/packages/games.scm:4281 +#: gnu/packages/games.scm:3810 msgid "" "Kiki the nano bot is a 3D puzzle game. It is basically a\n" "mixture of the games Sokoban and Kula-World. Your task is to help Kiki, a\n" "small robot living in the nano world, repair its maker." msgstr "" -#: gnu/packages/games.scm:4371 +#: gnu/packages/games.scm:3900 msgid "2D retro multiplayer shooter game" msgstr "" -#: gnu/packages/games.scm:4372 +#: gnu/packages/games.scm:3901 msgid "" "Teeworlds is an online multiplayer game. Battle with up to\n" "16 players in a variety of game modes, including Team Deathmatch and Capture\n" "The Flag. You can even design your own maps!" msgstr "" -#: gnu/packages/games.scm:4425 +#: gnu/packages/games.scm:3954 msgid "Puzzle game with a dexterity component" msgstr "" -#: gnu/packages/games.scm:4426 +#: gnu/packages/games.scm:3955 msgid "" "Enigma is a puzzle game with 550 unique levels. The object\n" "of the game is to find and uncover pairs of identically colored ‘Oxyd’ stones.\n" @@ -4322,11 +4518,11 @@ msgid "" "with the mouse isn’t always trivial." msgstr "" -#: gnu/packages/games.scm:4497 +#: gnu/packages/games.scm:4026 msgid "Puzzle game" msgstr "" -#: gnu/packages/games.scm:4498 +#: gnu/packages/games.scm:4027 msgid "" "Fish Fillets NG is strictly a puzzle game. The goal in\n" "every of the seventy levels is always the same: find a safe way out. The fish\n" @@ -4335,26 +4531,26 @@ msgid "" "fish. The whole game is accompanied by quiet, comforting music." msgstr "" -#: gnu/packages/games.scm:4562 +#: gnu/packages/games.scm:4091 msgid "Roguelike dungeon crawler game" msgstr "" -#: gnu/packages/games.scm:4563 +#: gnu/packages/games.scm:4092 msgid "" "Dungeon Crawl Stone Soup is a roguelike adventure through\n" "dungeons filled with dangerous monsters in a quest to find the mystifyingly\n" "fabulous Orb of Zot." msgstr "" -#: gnu/packages/games.scm:4609 +#: gnu/packages/games.scm:4138 msgid "Graphical roguelike dungeon crawler game" msgstr "" -#: gnu/packages/games.scm:4639 +#: gnu/packages/games.scm:4168 msgid "Cross-platform third-person action game" msgstr "" -#: gnu/packages/games.scm:4640 +#: gnu/packages/games.scm:4169 msgid "" "Lugaru is a third-person action game. The main character,\n" "Turner, is an anthropomorphic rebel bunny rabbit with impressive combat skills.\n" @@ -4364,19 +4560,19 @@ msgid "" "fight against their plot and save his fellow rabbits from slavery." msgstr "" -#: gnu/packages/games.scm:4691 +#: gnu/packages/games.scm:4219 msgid "Data files for 0ad" msgstr "" -#: gnu/packages/games.scm:4692 +#: gnu/packages/games.scm:4220 msgid "0ad-data provides the data files required by the game 0ad." msgstr "" -#: gnu/packages/games.scm:4814 +#: gnu/packages/games.scm:4338 msgid "3D real-time strategy game of ancient warfare" msgstr "" -#: gnu/packages/games.scm:4815 +#: gnu/packages/games.scm:4339 msgid "" "0 A.D. is a real-time strategy (RTS) game of ancient\n" "warfare. It's a historically-based war/economy game that allows players to\n" @@ -4386,11 +4582,11 @@ msgid "" "0ad needs a window manager that supports 'Extended Window Manager Hints'." msgstr "" -#: gnu/packages/games.scm:4891 +#: gnu/packages/games.scm:4414 msgid "Colossal Cave Adventure" msgstr "" -#: gnu/packages/games.scm:4892 +#: gnu/packages/games.scm:4415 msgid "" "The original Colossal Cave Adventure from 1976 was the\n" "origin of all text adventures, dungeon-crawl (computer) games, and\n" @@ -4399,11 +4595,11 @@ msgid "" "\"adventure 2.5\" and \"430-point adventure\"." msgstr "" -#: gnu/packages/games.scm:4903 +#: gnu/packages/games.scm:4426 msgid "Single-player, RPG roguelike game set in the world of Eyal" msgstr "" -#: gnu/packages/games.scm:5008 +#: gnu/packages/games.scm:4533 msgid "" "Tales of Maj’Eyal (ToME) RPG, featuring tactical turn-based\n" "combat and advanced character building. Play as one of many unique races and\n" @@ -4414,11 +4610,136 @@ msgid "" "Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century." msgstr "" -#: gnu/packages/gcc.scm:336 +#: gnu/packages/games.scm:4579 +msgid "First person shooter engine for Quake 1" +msgstr "" + +#: gnu/packages/games.scm:4580 +msgid "" +"Quakespasm is a modern engine for id software's Quake 1.\n" +"It includes support for 64 bit CPUs, custom music playback, a new sound driver,\n" +"some graphical niceities, and numerous bug-fixes and other improvements." +msgstr "" + +#: gnu/packages/games.scm:4629 +msgid "" +"vkquake is a modern engine for id software's Quake 1.\n" +"It includes support for 64 bit CPUs, custom music playback, a new sound driver,\n" +"some graphical niceities, and numerous bug-fixes and other improvements." +msgstr "" + +#: gnu/packages/games.scm:4680 +msgid "First person shooter engine based on quake2" +msgstr "" + +#: gnu/packages/games.scm:4681 +msgid "" +"Yamagi Quake II is an enhanced client for id Software's Quake II.\n" +"The main focus is an unchanged single player experience like back in 1997,\n" +"thus the gameplay and the graphics are unaltered. However the user may use one\n" +"of the unofficial retexturing packs. In comparison with the official client,\n" +"over 1000 bugs were fixed and an extensive code audit done,\n" +"making Yamagi Quake II one of the most solid Quake II implementations available." +msgstr "" + +#: gnu/packages/games.scm:4737 +msgid "Realistic physics puzzle game" +msgstr "" + +#: gnu/packages/games.scm:4738 +msgid "" +"The Butterfly Effect (tbe) is a game that uses\n" +"realistic physics simulations to combine lots of simple mechanical\n" +"elements to achieve a simple goal in the most complex way possible." +msgstr "" + +#: gnu/packages/games.scm:4789 +msgid "Game of lonely space adventure" +msgstr "" + +#: gnu/packages/games.scm:4791 +msgid "" +"Pioneer is a space adventure game set in our galaxy at the turn of the\n" +"31st century. The game is open-ended, and you are free to eke out whatever\n" +"kind of space-faring existence you can think of. Look for fame or fortune by\n" +"exploring the millions of star systems. Turn to a life of crime as a pirate,\n" +"smuggler or bounty hunter. Forge and break alliances with the various\n" +"factions fighting for power, freedom or self-determination. The universe is\n" +"whatever you make of it." +msgstr "" + +#: gnu/packages/games.scm:4818 +msgid "Hacking contribution graphs in git" +msgstr "" + +#: gnu/packages/games.scm:4820 +msgid "" +"Badass generates false commits for a range of dates, essentially\n" +"hacking the gamification of contribution graphs on platforms such as\n" +"Github or Gitlab." +msgstr "" + +#: gnu/packages/games.scm:4898 +msgid "Educational programming strategy game" +msgstr "" + +#: gnu/packages/games.scm:4899 +msgid "" +"Colobot: Gold Edition is a real-time strategy game, where\n" +"you can program your units (bots) in a language called CBOT, which is similar\n" +"to C++ and Java. Your mission is to find a new planet to live and survive.\n" +"You can save humanity and get programming skills!" +msgstr "" + +#: gnu/packages/games.scm:4982 +msgid "Modern Doom 2 source port" +msgstr "" + +#: gnu/packages/games.scm:4983 +msgid "" +"GZdoom is a port of the Doom 2 game engine, with a modern\n" +"renderer. It improves modding support with ZDoom's advanced mapping features\n" +"and the new ZScript language. In addition to Doom, it supports Heretic, Hexen,\n" +"Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom." +msgstr "" + +#: gnu/packages/games.scm:5044 +msgid "The Fortune Cookie program from BSD games" +msgstr "" + +#: gnu/packages/games.scm:5045 +msgid "" +"Fortune is a command-line utility which displays a random\n" +"quotation from a collection of quotes." +msgstr "" + +#: gnu/packages/games.scm:5085 +msgid "Data files for Xonotic" +msgstr "Fichiers de données pour Xonotic" + +#: gnu/packages/games.scm:5087 +msgid "Xonotic-data provides the data files required by the game Xonotic." +msgstr "Ce paquet contient les fichiers de données requis par le jeu Xonotic." + +#: gnu/packages/games.scm:5278 +msgid "Fast-paced first-person shooter game" +msgstr "" + +#: gnu/packages/games.scm:5280 +msgid "" +"Xonotic is a free, fast-paced first-person shooter.\n" +"The project is geared towards providing addictive arena shooter\n" +"gameplay which is all spawned and driven by the community itself.\n" +"Xonotic is a direct successor of the Nexuiz project with years of\n" +"development between them, and it aims to become the best possible\n" +"open-source FPS of its kind." +msgstr "" + +#: gnu/packages/gcc.scm:347 msgid "GNU Compiler Collection" msgstr "GNU Compiler Collection" -#: gnu/packages/gcc.scm:338 +#: gnu/packages/gcc.scm:349 msgid "" "GCC is the GNU Compiler Collection. It provides compiler front-ends\n" "for several languages, including C, C++, Objective-C, Fortran, Java, Ada, and\n" @@ -4428,7 +4749,7 @@ msgstr "" "pour plusieurs langages, dont C, C++, Objective-C, Fortran, Java, Ada,\n" "et Go. Il inclut également le support de bibliothèques pour ces langages." -#: gnu/packages/gcc.scm:432 +#: gnu/packages/gcc.scm:514 msgid "" "GCC is the GNU Compiler Collection. It provides compiler front-ends\n" "for several languages, including C, C++, Objective-C, Fortran, Ada, and Go.\n" @@ -4438,25 +4759,25 @@ msgstr "" "pour plusieurs langages, dont C, C++, Objective-C, Fortran, Ada et Go.\n" "Il inclut également le support de bibliothèques pour ces langages." -#: gnu/packages/gcc.scm:462 +#: gnu/packages/gcc.scm:545 msgid "GNU C++ standard library" msgstr "Bibliothèque standard C++ GNU" -#: gnu/packages/gcc.scm:497 +#: gnu/packages/gcc.scm:580 msgid "Collection of subroutines used by various GNU programs" msgstr "Collection de sous-routines utilisées par divers programmes GNU" -#: gnu/packages/gcc.scm:682 +#: gnu/packages/gcc.scm:765 msgid "GNU libstdc++ documentation" msgstr "Documentation de GNU libstdc++" -#: gnu/packages/gcc.scm:750 +#: gnu/packages/gcc.scm:835 msgid "Manipulating sets and relations of integer points bounded by linear constraints" msgstr "" "Manipulation des ensembles et relations d'entiers liés par des\n" "contraintes linéaires" -#: gnu/packages/gcc.scm:753 +#: gnu/packages/gcc.scm:838 msgid "" "isl is a library for manipulating sets and relations of integer points\n" "bounded by linear constraints. Supported operations on sets include\n" @@ -4468,11 +4789,11 @@ msgid "" "dependence analysis and bounds on piecewise step-polynomials." msgstr "" -#: gnu/packages/gcc.scm:803 +#: gnu/packages/gcc.scm:888 msgid "Library to generate code for scanning Z-polyhedra" msgstr "Bibliothèque poru générer du code pour analyser des Z-polyhèdres" -#: gnu/packages/gcc.scm:805 +#: gnu/packages/gcc.scm:890 msgid "" "CLooG is a free software library to generate code for scanning\n" "Z-polyhedra. That is, it finds a code (e.g., in C, FORTRAN...) that\n" @@ -4498,11 +4819,11 @@ msgstr "" "contrôle complet de la qualité du code généré, mais CLooG est conçu pour\n" "éviter le sur-coût des contrôles et pour produire un code très efficace." -#: gnu/packages/gcc.scm:860 +#: gnu/packages/gcc.scm:945 msgid "Reference manual for the C programming language" msgstr "Manuel de référence pour le langage de programmation C" -#: gnu/packages/gcc.scm:862 +#: gnu/packages/gcc.scm:947 msgid "" "This is a reference manual for the C programming language, as\n" "implemented by the GNU C Compiler (gcc). As a reference, it is not intended\n" @@ -4514,11 +4835,11 @@ msgstr "" "n'est pas conçu comme un tutoriel du langage. Il précise plutôt les\n" "constructions du langage. Les fonctions des bibliothèques ne sont pas incluses." -#: gnu/packages/gettext.scm:98 +#: gnu/packages/gettext.scm:108 msgid "Tools and documentation for translation (used to build other packages)" msgstr "Outils et documentation pour la traduction (utilisés pour construire d'autres paquets)" -#: gnu/packages/gettext.scm:100 +#: gnu/packages/gettext.scm:110 msgid "" "GNU Gettext is a package providing a framework for translating the\n" "textual output of programs into multiple languages. It provides translators\n" @@ -4531,15 +4852,15 @@ msgstr "" "bibliothèque pour charger les messages traduits depuis les catalogues.\n" "Presque tous les paquets GNU utilisent Gettext." -#: gnu/packages/gettext.scm:130 +#: gnu/packages/gettext.scm:140 msgid "Tools and documentation for translation" msgstr "Outils et documentation pour la traduction" -#: gnu/packages/gettext.scm:195 +#: gnu/packages/gettext.scm:213 msgid "Scripts to ease maintenance of translations" msgstr "Scripts pour faciliter la maintenance des traductions" -#: gnu/packages/gettext.scm:197 +#: gnu/packages/gettext.scm:215 msgid "" "The po4a (PO for anything) project goal is to ease translations (and\n" "more interestingly, the maintenance of translations) using gettext tools on\n" @@ -4549,19 +4870,19 @@ msgstr "" "la maintenance des traductions) en utilisant les outils gettext dans des domaines\n" "pour lesquels ils n'étaient pas conçus, comme la documentation." -#: gnu/packages/gimp.scm:60 +#: gnu/packages/gimp.scm:68 msgid "Image pixel format conversion library" msgstr "Bibliothèque de conversion des formats d'images pixelisés" -#: gnu/packages/gimp.scm:62 +#: gnu/packages/gimp.scm:70 msgid "" -"Babl is a dynamic, any to any, pixel format translation library.\n" -"It allows converting between different methods of storing pixels known as\n" -"pixel formats that have with different bitdepths and other data\n" -"representations, color models and component permutations.\n" +"Babl is a dynamic, any-to-any pixel format translation library.\n" +"It allows converting between different methods of storing pixels, known as\n" +"@dfn{pixel formats}, that have different bit depths and other data\n" +"representations, color models, and component permutations.\n" "\n" "A vocabulary to formulate new pixel formats from existing primitives is\n" -"provided as well as the framework to add new color models and data types." +"provided, as well as a framework to add new color models and data types." msgstr "" "Babl est une bibliothèque de traduction de n'importe quel format pixelisé vers\n" "n'importe quel format pixelisé. Elle permet la conversion entre différentes méthodes\n" @@ -4573,22 +4894,22 @@ msgstr "" "existantes est aussi fournit ainsi que le cadre pour ajouter de nouveaux modèles\n" "de couleurs et des types de données." -#: gnu/packages/gimp.scm:119 +#: gnu/packages/gimp.scm:109 msgid "Graph based image processing framework" msgstr "" -#: gnu/packages/gimp.scm:120 +#: gnu/packages/gimp.scm:110 msgid "" "GEGL (Generic Graphics Library) provides infrastructure to\n" "do demand based cached non destructive image editing on larger than RAM\n" "buffers." msgstr "" -#: gnu/packages/gimp.scm:180 +#: gnu/packages/gimp.scm:176 msgid "GNU Image Manipulation Program" msgstr "Programme de Manipulation d'Image GNU" -#: gnu/packages/gimp.scm:182 +#: gnu/packages/gimp.scm:178 msgid "" "GIMP is an application for image manipulation tasks such as photo\n" "retouching, composition and authoring. It supports all common image formats\n" @@ -4596,11 +4917,11 @@ msgid "" "that is extensible via a plugin system." msgstr "" -#: gnu/packages/gimp.scm:230 +#: gnu/packages/gimp.scm:238 msgid "GIMP plug-in to edit image in fourier space" msgstr "Greffon GIMP pour éditer des images en espace de fourier" -#: gnu/packages/gimp.scm:232 +#: gnu/packages/gimp.scm:240 msgid "" "This package provides a simple plug-in to apply the fourier transform on\n" "an image, allowing you to work with the transformed image inside GIMP. You\n" @@ -4612,33 +4933,53 @@ msgstr "" "pouvez dessiner ou appliquer des filtres en espace de fourier et récupérer l'image\n" "modifiée avec n'importe quel transformée de fourier inverse." -#: gnu/packages/gnome.scm:200 +#: gnu/packages/gimp.scm:268 +msgid "Artistic brushes library" +msgstr "" + +#: gnu/packages/gimp.scm:269 +msgid "" +"Libmypaint, also called \"brushlib\", is a library for making\n" +"brushstrokes which is used by MyPaint and GIMP." +msgstr "" + +#: gnu/packages/gimp.scm:300 +msgid "Default brushes for MyPaint" +msgstr "" + +#: gnu/packages/gimp.scm:301 +msgid "" +"This package provides the default set of brushes for\n" +"MyPaint." +msgstr "Ce paquet fournit les pinceaux par défaut de MyPaint." + +#: gnu/packages/gnome.scm:205 msgid "CD/DVD burning tool for Gnome" msgstr "" -#: gnu/packages/gnome.scm:201 +#: gnu/packages/gnome.scm:206 msgid "" "Brasero is an application to burn CD/DVD for the Gnome\n" "Desktop. It is designed to be as simple as possible and has some unique\n" "features to enable users to create their discs easily and quickly." msgstr "" -#: gnu/packages/gnome.scm:276 +#: gnu/packages/gnome.scm:281 msgid "Simple backup tool, for regular encrypted backups" msgstr "" -#: gnu/packages/gnome.scm:278 +#: gnu/packages/gnome.scm:283 msgid "" "Déjà Dup is a simple backup tool, for regular encrypted backups. It\n" "uses duplicity as the backend, which supports incremental backups and storage\n" "either on a local, or remote machine via a number of methods." msgstr "" -#: gnu/packages/gnome.scm:325 +#: gnu/packages/gnome.scm:330 msgid "Diagram creation for GNOME" msgstr "" -#: gnu/packages/gnome.scm:326 +#: gnu/packages/gnome.scm:331 msgid "" "Dia can be used to draw different types of diagrams, and\n" "includes support for UML static structure diagrams (class diagrams), entity\n" @@ -4646,33 +4987,33 @@ msgid "" "formats like PNG, SVG, PDF and EPS." msgstr "" -#: gnu/packages/gnome.scm:382 +#: gnu/packages/gnome.scm:387 msgid "Library for accessing online service APIs" msgstr "Bibliothèque d'accès à des API de services en ligne" -#: gnu/packages/gnome.scm:384 +#: gnu/packages/gnome.scm:389 msgid "" "libgdata is a GLib-based library for accessing online service APIs using\n" "the GData protocol — most notably, Google's services. It provides APIs to\n" "access the common Google services, and has full asynchronous support." msgstr "" -#: gnu/packages/gnome.scm:414 +#: gnu/packages/gnome.scm:420 msgid "GObject-based library for handling and rendering XPS documents" msgstr "" -#: gnu/packages/gnome.scm:416 +#: gnu/packages/gnome.scm:422 msgid "" "libgxps is a GObject-based library for handling and rendering XPS\n" "documents. This package also contains binaries that can convert XPS documents\n" "to other formats." msgstr "" -#: gnu/packages/gnome.scm:436 +#: gnu/packages/gnome.scm:442 msgid "Bootstrap GNOME modules built from Git" msgstr "" -#: gnu/packages/gnome.scm:437 +#: gnu/packages/gnome.scm:443 msgid "" "gnome-common contains various files needed to bootstrap\n" "GNOME modules built from Git. It contains a common \"autogen.sh\" script that\n" @@ -4680,11 +5021,11 @@ msgid "" "commonly used macros." msgstr "" -#: gnu/packages/gnome.scm:488 +#: gnu/packages/gnome.scm:494 msgid "Libgnome-desktop, gnome-about, and desktop-wide documents" msgstr "" -#: gnu/packages/gnome.scm:490 +#: gnu/packages/gnome.scm:496 msgid "" "The libgnome-desktop library provides API shared by several applications\n" "on the desktop, but that cannot live in the platform for various reasons.\n" @@ -4694,49 +5035,49 @@ msgid "" "The gnome-about program helps find which version of GNOME is installed." msgstr "" -#: gnu/packages/gnome.scm:523 +#: gnu/packages/gnome.scm:529 msgid "Documentation utilities for the Gnome project" msgstr "Utilitaires de documentation pour le projet Gnome" -#: gnu/packages/gnome.scm:525 +#: gnu/packages/gnome.scm:531 msgid "" "Gnome-doc-utils is a collection of documentation utilities for the\n" "Gnome project. It includes xml2po tool which makes it easier to translate\n" "and keep up to date translations of documentation." msgstr "" -#: gnu/packages/gnome.scm:564 +#: gnu/packages/gnome.scm:570 msgid "Disk management utility for GNOME" msgstr "" -#: gnu/packages/gnome.scm:565 +#: gnu/packages/gnome.scm:571 msgid "Disk management utility for GNOME." msgstr "" -#: gnu/packages/gnome.scm:608 +#: gnu/packages/gnome.scm:614 msgid "Libraries for displaying certificates and accessing key stores" msgstr "" -#: gnu/packages/gnome.scm:610 +#: gnu/packages/gnome.scm:616 msgid "" "The GCR package contains libraries used for displaying certificates and\n" "accessing key stores. It also provides the viewer for crypto files on the\n" "GNOME Desktop." msgstr "" -#: gnu/packages/gnome.scm:639 +#: gnu/packages/gnome.scm:645 msgid "Accessing passwords from the GNOME keyring" msgstr "" -#: gnu/packages/gnome.scm:641 +#: gnu/packages/gnome.scm:647 msgid "Client library to access passwords from the GNOME keyring." msgstr "" -#: gnu/packages/gnome.scm:703 +#: gnu/packages/gnome.scm:717 msgid "Daemon to store passwords and encryption keys" msgstr "" -#: gnu/packages/gnome.scm:705 +#: gnu/packages/gnome.scm:719 msgid "" "gnome-keyring is a program that keeps passwords and other secrets for\n" "users. It is run as a daemon in the session, similar to ssh-agent, and other\n" @@ -4747,11 +5088,11 @@ msgid "" "forgotten when the session ends." msgstr "" -#: gnu/packages/gnome.scm:774 +#: gnu/packages/gnome.scm:793 msgid "GNOME's document viewer" msgstr "" -#: gnu/packages/gnome.scm:776 +#: gnu/packages/gnome.scm:795 msgid "" "Evince is a document viewer for multiple document formats. It\n" "currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal\n" @@ -4759,50 +5100,50 @@ msgid "" "on the GNOME Desktop with a single simple application." msgstr "" -#: gnu/packages/gnome.scm:805 +#: gnu/packages/gnome.scm:824 msgid "GNOME settings for various desktop components" msgstr "" -#: gnu/packages/gnome.scm:807 +#: gnu/packages/gnome.scm:826 msgid "" "Gsettings-desktop-schemas contains a collection of GSettings schemas\n" "for settings shared by various components of the GNOME desktop." msgstr "" -#: gnu/packages/gnome.scm:841 +#: gnu/packages/gnome.scm:860 msgid "Utility to implement the Freedesktop Icon Naming Specification" msgstr "" -#: gnu/packages/gnome.scm:843 +#: gnu/packages/gnome.scm:862 msgid "" "To help with the transition to the Freedesktop Icon Naming\n" "Specification, the icon naming utility maps the icon names used by the\n" "GNOME and KDE desktops to the icon names proposed in the specification." msgstr "" -#: gnu/packages/gnome.scm:874 +#: gnu/packages/gnome.scm:893 msgid "GNOME icon theme" msgstr "" -#: gnu/packages/gnome.scm:876 +#: gnu/packages/gnome.scm:895 msgid "Icons for the GNOME desktop." msgstr "" -#: gnu/packages/gnome.scm:913 +#: gnu/packages/gnome.scm:932 msgid "Tango icon theme" msgstr "" -#: gnu/packages/gnome.scm:914 +#: gnu/packages/gnome.scm:933 msgid "" "This is an icon theme that follows the Tango visual\n" "guidelines." msgstr "" -#: gnu/packages/gnome.scm:940 +#: gnu/packages/gnome.scm:959 msgid "Database of common MIME types" msgstr "" -#: gnu/packages/gnome.scm:942 +#: gnu/packages/gnome.scm:961 msgid "" "The shared-mime-info package contains the core database of common types\n" "and the update-mime-database command used to extend it. It requires glib2 to\n" @@ -4811,19 +5152,19 @@ msgid "" "database is translated at Transifex." msgstr "" -#: gnu/packages/gnome.scm:966 +#: gnu/packages/gnome.scm:985 msgid "Freedesktop icon theme" msgstr "" -#: gnu/packages/gnome.scm:968 +#: gnu/packages/gnome.scm:987 msgid "Freedesktop icon theme." msgstr "" -#: gnu/packages/gnome.scm:996 +#: gnu/packages/gnome.scm:1015 msgid "GNOME desktop notification library" msgstr "" -#: gnu/packages/gnome.scm:998 +#: gnu/packages/gnome.scm:1017 msgid "" "Libnotify is a library that sends desktop notifications to a\n" "notification daemon, as defined in the Desktop Notifications spec. These\n" @@ -4831,11 +5172,11 @@ msgid "" "some form of information without getting in the user's way." msgstr "" -#: gnu/packages/gnome.scm:1032 +#: gnu/packages/gnome.scm:1051 msgid "GObject plugin system" msgstr "" -#: gnu/packages/gnome.scm:1034 +#: gnu/packages/gnome.scm:1053 msgid "" "Libpeas is a gobject-based plugin engine, targeted at giving every\n" "application the chance to assume its own extensibility. It also has a set of\n" @@ -4844,33 +5185,33 @@ msgid "" "API." msgstr "" -#: gnu/packages/gnome.scm:1063 +#: gnu/packages/gnome.scm:1092 msgid "OpenGL extension to GTK+" msgstr "" -#: gnu/packages/gnome.scm:1064 +#: gnu/packages/gnome.scm:1093 msgid "" "GtkGLExt is an OpenGL extension to GTK+. It provides\n" "additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget\n" "API add-ons to make GTK+ widgets OpenGL-capable." msgstr "" -#: gnu/packages/gnome.scm:1107 +#: gnu/packages/gnome.scm:1136 msgid "GTK+ rapid application development tool" msgstr "" -#: gnu/packages/gnome.scm:1108 +#: gnu/packages/gnome.scm:1137 msgid "" "Glade is a rapid application development (RAD) tool to\n" "enable quick & easy development of user interfaces for the GTK+ toolkit and\n" "the GNOME desktop environment." msgstr "" -#: gnu/packages/gnome.scm:1136 +#: gnu/packages/gnome.scm:1165 msgid "CSS2 parsing and manipulation library" msgstr "" -#: gnu/packages/gnome.scm:1138 +#: gnu/packages/gnome.scm:1167 msgid "" "Libcroco is a standalone CSS2 parsing and manipulation library.\n" "The parser provides a low level event driven SAC-like API and a CSS object\n" @@ -4878,31 +5219,31 @@ msgid "" "XML/CSS rendering engine." msgstr "" -#: gnu/packages/gnome.scm:1171 +#: gnu/packages/gnome.scm:1200 msgid "GNOME's Structured File Library" msgstr "" -#: gnu/packages/gnome.scm:1173 +#: gnu/packages/gnome.scm:1202 msgid "" "Libgsf aims to provide an efficient extensible I/O abstraction for\n" "dealing with different structured file formats." msgstr "" -#: gnu/packages/gnome.scm:1224 +#: gnu/packages/gnome.scm:1267 msgid "Render SVG files using Cairo" msgstr "" -#: gnu/packages/gnome.scm:1226 +#: gnu/packages/gnome.scm:1269 msgid "" "Librsvg is a C library to render SVG files using the Cairo 2D graphics\n" "library." msgstr "" -#: gnu/packages/gnome.scm:1250 +#: gnu/packages/gnome.scm:1293 msgid "Create trees of CORBA Interface Definition Language files" msgstr "" -#: gnu/packages/gnome.scm:1251 +#: gnu/packages/gnome.scm:1294 msgid "" "Libidl is a library for creating trees of CORBA Interface\n" "Definition Language (idl) files, which is a specification for defining\n" @@ -4911,144 +5252,144 @@ msgid "" "functionality was designed to be as reusable and portable as possible." msgstr "" -#: gnu/packages/gnome.scm:1291 +#: gnu/packages/gnome.scm:1334 msgid "CORBA 2.4-compliant Object Request Broker" msgstr "" -#: gnu/packages/gnome.scm:1292 +#: gnu/packages/gnome.scm:1335 msgid "" "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)\n" "featuring mature C, C++ and Python bindings." msgstr "" -#: gnu/packages/gnome.scm:1339 +#: gnu/packages/gnome.scm:1382 msgid "Framework for creating reusable components for use in GNOME applications" msgstr "" -#: gnu/packages/gnome.scm:1340 +#: gnu/packages/gnome.scm:1383 msgid "" "Bonobo is a framework for creating reusable components for\n" "use in GNOME applications, built on top of CORBA." msgstr "" -#: gnu/packages/gnome.scm:1371 +#: gnu/packages/gnome.scm:1414 msgid "Store application preferences" msgstr "" -#: gnu/packages/gnome.scm:1372 +#: gnu/packages/gnome.scm:1415 msgid "" "Gconf is a system for storing application preferences. It\n" "is intended for user preferences; not arbitrary data storage." msgstr "" -#: gnu/packages/gnome.scm:1406 +#: gnu/packages/gnome.scm:1449 msgid "Base MIME and Application database for GNOME" msgstr "" -#: gnu/packages/gnome.scm:1407 +#: gnu/packages/gnome.scm:1450 msgid "" "GNOME Mime Data is a module which contains the base MIME\n" "and Application database for GNOME. The data stored by this module is\n" "designed to be accessed through the MIME functions in GnomeVFS." msgstr "" -#: gnu/packages/gnome.scm:1450 +#: gnu/packages/gnome.scm:1493 msgid "Access files and folders in GNOME applications" msgstr "" -#: gnu/packages/gnome.scm:1452 +#: gnu/packages/gnome.scm:1495 msgid "" "GnomeVFS is the core library used to access files and folders in GNOME\n" "applications. It provides a file system abstraction which allows applications\n" "to access local and remote files with a single consistent API." msgstr "" -#: gnu/packages/gnome.scm:1496 +#: gnu/packages/gnome.scm:1540 msgid "Useful routines for building applications" msgstr "" -#: gnu/packages/gnome.scm:1497 +#: gnu/packages/gnome.scm:1541 msgid "" "The libgnome library provides a number of useful routines\n" "for building modern applications, including session management, activation of\n" "files and URIs, and displaying help." msgstr "" -#: gnu/packages/gnome.scm:1520 +#: gnu/packages/gnome.scm:1564 msgid "2D drawing library" msgstr "Bibliothèque de dessin 2D" -#: gnu/packages/gnome.scm:1521 +#: gnu/packages/gnome.scm:1565 msgid "" "Libart is a 2D drawing library intended as a\n" "high-quality vector-based 2D library with antialiasing and alpha composition." msgstr "" -#: gnu/packages/gnome.scm:1548 +#: gnu/packages/gnome.scm:1592 msgid "Flexible widget for creating interactive structured graphics" msgstr "" -#: gnu/packages/gnome.scm:1549 +#: gnu/packages/gnome.scm:1593 msgid "" "The GnomeCanvas widget provides a flexible widget for\n" "creating interactive structured graphics." msgstr "" -#: gnu/packages/gnome.scm:1573 +#: gnu/packages/gnome.scm:1617 msgid "C++ bindings to the GNOME Canvas library" msgstr "" -#: gnu/packages/gnome.scm:1574 +#: gnu/packages/gnome.scm:1618 msgid "C++ bindings to the GNOME Canvas library." msgstr "" -#: gnu/packages/gnome.scm:1605 +#: gnu/packages/gnome.scm:1650 msgid "Additional widgets for applications" msgstr "" -#: gnu/packages/gnome.scm:1606 +#: gnu/packages/gnome.scm:1651 msgid "" "The libgnomeui library provides additional widgets for\n" "applications. Many of the widgets from libgnomeui have already been\n" "ported to GTK+." msgstr "" -#: gnu/packages/gnome.scm:1632 +#: gnu/packages/gnome.scm:1677 msgid "Load glade interfaces and access the glade built widgets" msgstr "" -#: gnu/packages/gnome.scm:1633 +#: gnu/packages/gnome.scm:1678 msgid "" "Libglade is a library that provides interfaces for loading\n" "graphical interfaces described in glade files and for accessing the\n" "widgets built in the loading process." msgstr "" -#: gnu/packages/gnome.scm:1663 gnu/packages/gnome.scm:1695 +#: gnu/packages/gnome.scm:1708 gnu/packages/gnome.scm:1740 msgid "Printing framework for GNOME" msgstr "" -#: gnu/packages/gnome.scm:1665 +#: gnu/packages/gnome.scm:1710 msgid "" "GNOME-print was a printing framework for GNOME. It has been deprecated\n" "since ca. 2006, when GTK+ itself incorporated printing support." msgstr "" -#: gnu/packages/gnome.scm:1739 +#: gnu/packages/gnome.scm:1784 msgid "Some user interface controls using Bonobo" msgstr "" -#: gnu/packages/gnome.scm:1740 +#: gnu/packages/gnome.scm:1785 msgid "" "The Bonobo UI library provides a number of user interface\n" "controls using the Bonobo component framework." msgstr "" -#: gnu/packages/gnome.scm:1765 +#: gnu/packages/gnome.scm:1810 msgid "Window Navigator Construction Kit" msgstr "" -#: gnu/packages/gnome.scm:1767 +#: gnu/packages/gnome.scm:1812 msgid "" "Libwnck is the Window Navigator Construction Kit, a library for use in\n" "writing pagers, tasklists, and more generally applications that are dealing\n" @@ -5056,19 +5397,19 @@ msgid "" "Hints specification (EWMH)." msgstr "" -#: gnu/packages/gnome.scm:1820 +#: gnu/packages/gnome.scm:1865 msgid "Document-centric objects and utilities" msgstr "" -#: gnu/packages/gnome.scm:1821 +#: gnu/packages/gnome.scm:1866 msgid "A GLib/GTK+ set of document-centric objects and utilities." msgstr "" -#: gnu/packages/gnome.scm:1905 +#: gnu/packages/gnome.scm:1950 msgid "Spreadsheet application" msgstr "" -#: gnu/packages/gnome.scm:1907 +#: gnu/packages/gnome.scm:1952 msgid "" "GNUmeric is a GNU spreadsheet application, running under GNOME. It is\n" "interoperable with other spreadsheet applications. It has a vast array of\n" @@ -5077,29 +5418,29 @@ msgid "" "engineering." msgstr "" -#: gnu/packages/gnome.scm:1947 +#: gnu/packages/gnome.scm:1992 msgid "Default GNOME 3 themes" msgstr "" -#: gnu/packages/gnome.scm:1949 +#: gnu/packages/gnome.scm:1994 msgid "The default GNOME 3 themes (Adwaita and some accessibility themes)." msgstr "" -#: gnu/packages/gnome.scm:1982 +#: gnu/packages/gnome.scm:2027 msgid "Manage encryption keys and passwords in the GNOME keyring" msgstr "" -#: gnu/packages/gnome.scm:1984 +#: gnu/packages/gnome.scm:2029 msgid "" "Seahorse is a GNOME application for managing encryption keys and\n" "passwords in the GNOME keyring." msgstr "" -#: gnu/packages/gnome.scm:2022 gnu/packages/gnome.scm:2258 +#: gnu/packages/gnome.scm:2067 gnu/packages/gnome.scm:2305 msgid "Compiler for the GObject type system" msgstr "" -#: gnu/packages/gnome.scm:2024 +#: gnu/packages/gnome.scm:2069 msgid "" "Vala is a programming language that aims to bring modern programming\n" "language features to GNOME developers without imposing any additional runtime\n" @@ -5107,11 +5448,11 @@ msgid "" "libraries written in C." msgstr "" -#: gnu/packages/gnome.scm:2056 +#: gnu/packages/gnome.scm:2101 msgid "Virtual Terminal Emulator" msgstr "" -#: gnu/packages/gnome.scm:2058 +#: gnu/packages/gnome.scm:2103 msgid "" "VTE is a library (libvte) implementing a terminal emulator widget for\n" "GTK+, and a minimal sample application (vte) using that. Vte is mainly used in\n" @@ -5119,39 +5460,39 @@ msgid "" "editors, IDEs, etc." msgstr "" -#: gnu/packages/gnome.scm:2091 +#: gnu/packages/gnome.scm:2136 msgid "Enhanced VTE terminal widget" msgstr "" -#: gnu/packages/gnome.scm:2093 +#: gnu/packages/gnome.scm:2138 msgid "" "VTE is a library (libvte) implementing a terminal emulator widget for\n" "GTK+, this fork provides additional functions exposed for keyboard text\n" "selection and URL hints." msgstr "" -#: gnu/packages/gnome.scm:2179 +#: gnu/packages/gnome.scm:2224 msgid "Remote desktop viewer for GNOME" msgstr "" -#: gnu/packages/gnome.scm:2180 +#: gnu/packages/gnome.scm:2225 msgid "" "Vinagre is a remote display client supporting the VNC, SPICE\n" "and RDP protocols." msgstr "" -#: gnu/packages/gnome.scm:2232 +#: gnu/packages/gnome.scm:2277 msgid "Low-level GNOME configuration system" msgstr "" -#: gnu/packages/gnome.scm:2233 +#: gnu/packages/gnome.scm:2278 msgid "" "Dconf is a low-level configuration system. Its main purpose\n" "is to provide a backend to GSettings on platforms that don't already have\n" "configuration storage systems." msgstr "" -#: gnu/packages/gnome.scm:2260 +#: gnu/packages/gnome.scm:2307 msgid "" "JSON-GLib is a C library based on GLib providing serialization and\n" "deserialization support for the JavaScript Object Notation (JSON) format\n" @@ -5160,11 +5501,11 @@ msgid "" "and objects." msgstr "" -#: gnu/packages/gnome.scm:2299 +#: gnu/packages/gnome.scm:2346 msgid "High-level API for X Keyboard Extension" msgstr "" -#: gnu/packages/gnome.scm:2301 +#: gnu/packages/gnome.scm:2348 msgid "" "LibXklavier is a library providing high-level API for X Keyboard\n" "Extension known as XKB. This library is intended to support XFree86 and other\n" @@ -5172,58 +5513,58 @@ msgid "" "indicators etc)." msgstr "" -#: gnu/packages/gnome.scm:2329 +#: gnu/packages/gnome.scm:2376 msgid "Python bindings to librsvg" msgstr "" -#: gnu/packages/gnome.scm:2331 +#: gnu/packages/gnome.scm:2378 msgid "" "This packages provides Python bindings to librsvg, the SVG rendering\n" "library." msgstr "" -#: gnu/packages/gnome.scm:2381 +#: gnu/packages/gnome.scm:2428 msgid "Network-related GIO modules" msgstr "" -#: gnu/packages/gnome.scm:2383 +#: gnu/packages/gnome.scm:2430 msgid "" "This package contains various network related extensions for the GIO\n" "library." msgstr "" -#: gnu/packages/gnome.scm:2414 +#: gnu/packages/gnome.scm:2461 msgid "RESTful web api query library" msgstr "" -#: gnu/packages/gnome.scm:2416 +#: gnu/packages/gnome.scm:2463 msgid "" "This library was designed to make it easier to access web services that\n" "claim to be \"RESTful\". It includes convenience wrappers for libsoup and\n" "libxml to ease remote use of the RESTful API." msgstr "" -#: gnu/packages/gnome.scm:2539 +#: gnu/packages/gnome.scm:2585 msgid "GLib-based HTTP Library" msgstr "" -#: gnu/packages/gnome.scm:2541 +#: gnu/packages/gnome.scm:2587 msgid "" "LibSoup is an HTTP client/server library for GNOME. It uses GObjects\n" "and the GLib main loop, to integrate well with GNOME applications." msgstr "" -#: gnu/packages/gnome.scm:2587 +#: gnu/packages/gnome.scm:2633 msgid "GObject bindings for \"Secret Service\" API" msgstr "" -#: gnu/packages/gnome.scm:2589 +#: gnu/packages/gnome.scm:2635 msgid "" "Libsecret is a GObject based library for storing and retrieving passwords\n" "and other secrets. It communicates with the \"Secret Service\" using DBus." msgstr "" -#: gnu/packages/gnome.scm:2618 +#: gnu/packages/gnome.scm:2664 msgid "" "Five or More is a game where you try to align\n" " five or more objects of the same color and shape causing them to disappear.\n" @@ -5231,21 +5572,21 @@ msgid "" " Try to last as long as possible." msgstr "" -#: gnu/packages/gnome.scm:2656 +#: gnu/packages/gnome.scm:2702 msgid "Minesweeper game" msgstr "" -#: gnu/packages/gnome.scm:2658 +#: gnu/packages/gnome.scm:2704 msgid "" "Mines (previously gnomine) is a puzzle game where you locate mines\n" "floating in an ocean using only your brain and a little bit of luck." msgstr "" -#: gnu/packages/gnome.scm:2689 +#: gnu/packages/gnome.scm:2735 msgid "Japanese logic game" msgstr "" -#: gnu/packages/gnome.scm:2691 +#: gnu/packages/gnome.scm:2737 msgid "" "Sudoku is a Japanese logic game that exploded in popularity in 2005.\n" "GNOME Sudoku is meant to have an interface as simple and unobstrusive as\n" @@ -5253,11 +5594,11 @@ msgid "" "more fun." msgstr "" -#: gnu/packages/gnome.scm:2737 +#: gnu/packages/gnome.scm:2783 msgid "Terminal emulator" msgstr "" -#: gnu/packages/gnome.scm:2739 +#: gnu/packages/gnome.scm:2785 msgid "" "GNOME Terminal is a terminal emulator application for accessing a\n" "UNIX shell environment which can be used to run programs available on\n" @@ -5267,22 +5608,22 @@ msgid "" "keyboard shortcuts." msgstr "" -#: gnu/packages/gnome.scm:2805 +#: gnu/packages/gnome.scm:2851 msgid "Color management service" msgstr "" -#: gnu/packages/gnome.scm:2806 +#: gnu/packages/gnome.scm:2852 msgid "" "Colord is a system service that makes it easy to manage,\n" "install and generate color profiles to accurately color manage input and\n" "output devices." msgstr "" -#: gnu/packages/gnome.scm:2850 +#: gnu/packages/gnome.scm:2897 msgid "Geolocation service" msgstr "" -#: gnu/packages/gnome.scm:2851 +#: gnu/packages/gnome.scm:2898 msgid "" "Geoclue is a D-Bus service that provides location\n" "information. The primary goal of the Geoclue project is to make creating\n" @@ -5291,11 +5632,11 @@ msgid "" "permission from user." msgstr "" -#: gnu/packages/gnome.scm:2886 +#: gnu/packages/gnome.scm:2933 msgid "Geocoding and reverse-geocoding library" msgstr "" -#: gnu/packages/gnome.scm:2888 +#: gnu/packages/gnome.scm:2935 msgid "" "geocode-glib is a convenience library for geocoding (finding longitude,\n" "and latitude from an address) and reverse geocoding (finding an address from\n" @@ -5303,11 +5644,11 @@ msgid "" "faster results and to avoid unnecessary server load." msgstr "" -#: gnu/packages/gnome.scm:2941 +#: gnu/packages/gnome.scm:2988 msgid "System daemon for managing power devices" msgstr "" -#: gnu/packages/gnome.scm:2943 +#: gnu/packages/gnome.scm:2990 msgid "" "UPower is an abstraction for enumerating power devices,\n" "listening to device events and querying history and statistics. Any\n" @@ -5315,21 +5656,21 @@ msgid "" "service via the system message bus." msgstr "" -#: gnu/packages/gnome.scm:3001 +#: gnu/packages/gnome.scm:3048 msgid "Location, time zone, and weather library for GNOME" msgstr "" -#: gnu/packages/gnome.scm:3003 +#: gnu/packages/gnome.scm:3050 msgid "" "libgweather is a library to access weather information from online\n" "services for numerous locations." msgstr "" -#: gnu/packages/gnome.scm:3054 +#: gnu/packages/gnome.scm:3101 msgid "GNOME settings daemon" msgstr "" -#: gnu/packages/gnome.scm:3056 +#: gnu/packages/gnome.scm:3103 msgid "" "This package contains the daemon responsible for setting the various\n" "parameters of a GNOME session and the applications that run under it. It\n" @@ -5337,42 +5678,42 @@ msgid "" "settings, themes, mouse settings, and startup of other daemons." msgstr "" -#: gnu/packages/gnome.scm:3093 +#: gnu/packages/gnome.scm:3140 msgid "Library to parse and save media playlists for GNOME" msgstr "" -#: gnu/packages/gnome.scm:3094 +#: gnu/packages/gnome.scm:3141 msgid "" "Totem-pl-parser is a GObjects-based library to parse and save\n" "playlists in a variety of formats." msgstr "" -#: gnu/packages/gnome.scm:3128 +#: gnu/packages/gnome.scm:3175 msgid "Solitaire card games" msgstr "" -#: gnu/packages/gnome.scm:3130 +#: gnu/packages/gnome.scm:3177 msgid "" "Aisleriot (also known as Solitaire or sol) is a collection of card games\n" "which are easy to play with the aid of a mouse." msgstr "" -#: gnu/packages/gnome.scm:3154 +#: gnu/packages/gnome.scm:3201 msgid "API documentation browser for GNOME" msgstr "" -#: gnu/packages/gnome.scm:3156 +#: gnu/packages/gnome.scm:3203 msgid "" "Devhelp is an API documentation browser for GTK+ and GNOME. It works\n" "natively with GTK-Doc (the API reference system developed for GTK+ and used\n" "throughout GNOME for API documentation)." msgstr "" -#: gnu/packages/gnome.scm:3223 +#: gnu/packages/gnome.scm:3270 msgid "Object oriented GL/GLES Abstraction/Utility Layer" msgstr "" -#: gnu/packages/gnome.scm:3225 +#: gnu/packages/gnome.scm:3272 msgid "" "Cogl is a small library for using 3D graphics hardware to draw pretty\n" "pictures. The API departs from the flat state machine style of OpenGL and is\n" @@ -5380,26 +5721,26 @@ msgid "" "without stepping on each others toes." msgstr "" -#: gnu/packages/gnome.scm:3282 +#: gnu/packages/gnome.scm:3329 msgid "Open GL based interactive canvas library" msgstr "" -#: gnu/packages/gnome.scm:3284 gnu/packages/gnome.scm:3313 +#: gnu/packages/gnome.scm:3331 gnu/packages/gnome.scm:3360 msgid "" "Clutter is an Open GL based interactive canvas library, designed for\n" "creating fast, mainly 2D single window applications such as media box UIs,\n" "presentations, kiosk style applications and so on." msgstr "" -#: gnu/packages/gnome.scm:3311 +#: gnu/packages/gnome.scm:3358 msgid "Open GL based interactive canvas library GTK+ widget" msgstr "" -#: gnu/packages/gnome.scm:3341 +#: gnu/packages/gnome.scm:3388 msgid "Integration library for using GStreamer with Clutter" msgstr "" -#: gnu/packages/gnome.scm:3343 +#: gnu/packages/gnome.scm:3390 msgid "" "Clutter-Gst is an integration library for using GStreamer with Clutter.\n" "It provides a GStreamer sink to upload frames to GL and an actor that\n" @@ -5407,11 +5748,11 @@ msgid "" "GL based interactive canvas library." msgstr "" -#: gnu/packages/gnome.scm:3377 +#: gnu/packages/gnome.scm:3424 msgid "C library providing a ClutterActor to display maps" msgstr "" -#: gnu/packages/gnome.scm:3379 +#: gnu/packages/gnome.scm:3426 msgid "" "libchamplain is a C library providing a ClutterActor to display maps.\n" "It also provides a Gtk+ widget to display maps in Gtk+ applications. Python\n" @@ -5419,32 +5760,32 @@ msgid "" "such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free." msgstr "" -#: gnu/packages/gnome.scm:3410 +#: gnu/packages/gnome.scm:3457 msgid "Object mapper from GObjects to SQLite" msgstr "" -#: gnu/packages/gnome.scm:3412 +#: gnu/packages/gnome.scm:3459 msgid "" "Gom provides an object mapper from GObjects to SQLite. It helps you\n" "write applications that need to store structured data as well as make complex\n" "queries upon that data." msgstr "" -#: gnu/packages/gnome.scm:3447 +#: gnu/packages/gnome.scm:3494 msgid "Useful functionality shared among GNOME games" msgstr "" -#: gnu/packages/gnome.scm:3449 +#: gnu/packages/gnome.scm:3496 msgid "" "libgnome-games-support is a small library intended for internal use by\n" "GNOME Games, but it may be used by others." msgstr "" -#: gnu/packages/gnome.scm:3477 +#: gnu/packages/gnome.scm:3524 msgid "Sliding block puzzles" msgstr "" -#: gnu/packages/gnome.scm:3479 +#: gnu/packages/gnome.scm:3526 msgid "" "GNOME Klotski is a set of block sliding puzzles. The objective is to move\n" "the patterned block to the area bordered by green markers. To do so, you will\n" @@ -5452,55 +5793,55 @@ msgid "" "as possible!" msgstr "" -#: gnu/packages/gnome.scm:3532 +#: gnu/packages/gnome.scm:3580 msgid "Framework for discovering and browsing media" msgstr "" -#: gnu/packages/gnome.scm:3534 gnu/packages/gnome.scm:3587 +#: gnu/packages/gnome.scm:3582 gnu/packages/gnome.scm:3635 msgid "" "Grilo is a framework focused on making media discovery and browsing easy\n" "for application developers." msgstr "" -#: gnu/packages/gnome.scm:3585 +#: gnu/packages/gnome.scm:3633 msgid "Plugins for the Grilo media discovery library" msgstr "" -#: gnu/packages/gnome.scm:3683 +#: gnu/packages/gnome.scm:3736 msgid "Simple media player for GNOME based on GStreamer" msgstr "" -#: gnu/packages/gnome.scm:3684 +#: gnu/packages/gnome.scm:3737 msgid "" "Totem is a simple yet featureful media player for GNOME\n" "which can read a large number of file formats." msgstr "" -#: gnu/packages/gnome.scm:3774 +#: gnu/packages/gnome.scm:3838 msgid "Music player for GNOME" msgstr "" -#: gnu/packages/gnome.scm:3775 +#: gnu/packages/gnome.scm:3839 msgid "" "Rhythmbox is a music playing application for GNOME. It\n" "supports playlists, song ratings, and any codecs installed through gstreamer." msgstr "" -#: gnu/packages/gnome.scm:3825 +#: gnu/packages/gnome.scm:3889 msgid "GNOME image viewer" msgstr "" -#: gnu/packages/gnome.scm:3826 +#: gnu/packages/gnome.scm:3890 msgid "" "Eye of GNOME is the GNOME image viewer. It\n" "supports image conversion, rotation, and slideshows." msgstr "" -#: gnu/packages/gnome.scm:3848 +#: gnu/packages/gnome.scm:3912 msgid "Extensions for the Eye of GNOME image viewer" msgstr "" -#: gnu/packages/gnome.scm:3860 +#: gnu/packages/gnome.scm:3924 msgid "" "This package provides plugins for the Eye of GNOME (EOG) image viewer,\n" "notably:\n" @@ -5513,21 +5854,21 @@ msgid "" "@end itemize\n" msgstr "" -#: gnu/packages/gnome.scm:3896 +#: gnu/packages/gnome.scm:3960 msgid "GObject bindings for libudev" msgstr "Liaisons GObject pour libudev" -#: gnu/packages/gnome.scm:3898 +#: gnu/packages/gnome.scm:3962 msgid "" "This library provides GObject bindings for libudev. It was originally\n" "part of udev-extras, then udev, then systemd. It's now a project on its own." msgstr "" -#: gnu/packages/gnome.scm:3946 +#: gnu/packages/gnome.scm:4010 msgid "Userspace virtual file system for GIO" msgstr "" -#: gnu/packages/gnome.scm:3948 +#: gnu/packages/gnome.scm:4012 msgid "" "GVFS is a userspace virtual file system designed to work with the I/O\n" "abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support\n" @@ -5538,11 +5879,11 @@ msgid "" "DAV, and others." msgstr "" -#: gnu/packages/gnome.scm:3994 +#: gnu/packages/gnome.scm:4058 msgid "GLib binding for libusb1" msgstr "Liaisons GLib pour libusb1" -#: gnu/packages/gnome.scm:3996 +#: gnu/packages/gnome.scm:4060 msgid "" "GUsb is a GObject wrapper for libusb1 that makes it easy to do\n" "asynchronous control, bulk and interrupt transfers with proper cancellation\n" @@ -5550,11 +5891,11 @@ msgid "" "USB transfers with your high-level application or system daemon." msgstr "" -#: gnu/packages/gnome.scm:4047 +#: gnu/packages/gnome.scm:4111 msgid "Document and image scanner" msgstr "" -#: gnu/packages/gnome.scm:4048 +#: gnu/packages/gnome.scm:4112 msgid "" "Simple Scan is an easy-to-use application, designed to let\n" "users connect their scanner and quickly have the image/document in an\n" @@ -5563,62 +5904,62 @@ msgid "" "work and the interface is well tested." msgstr "" -#: gnu/packages/gnome.scm:4121 +#: gnu/packages/gnome.scm:4185 msgid "Web browser for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4123 +#: gnu/packages/gnome.scm:4187 msgid "" "Eolie is a new web browser for GNOME. It features Firefox sync support,\n" "a secret password store, an adblocker, and a modern UI." msgstr "" -#: gnu/packages/gnome.scm:4170 +#: gnu/packages/gnome.scm:4239 msgid "GNOME web browser" msgstr "" -#: gnu/packages/gnome.scm:4172 +#: gnu/packages/gnome.scm:4241 msgid "" "Epiphany is a GNOME web browser targeted at non-technical users. Its\n" "principles are simplicity and standards compliance." msgstr "" -#: gnu/packages/gnome.scm:4228 +#: gnu/packages/gnome.scm:4297 msgid "D-Bus debugger" msgstr "" -#: gnu/packages/gnome.scm:4230 +#: gnu/packages/gnome.scm:4299 msgid "" "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces\n" "of running programs and invoke methods on those interfaces." msgstr "" -#: gnu/packages/gnome.scm:4252 +#: gnu/packages/gnome.scm:4321 msgid "XSL stylesheets for Yelp" msgstr "" -#: gnu/packages/gnome.scm:4254 +#: gnu/packages/gnome.scm:4323 msgid "" "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser\n" "to format Docbook and Mallard documents." msgstr "" -#: gnu/packages/gnome.scm:4285 +#: gnu/packages/gnome.scm:4354 msgid "GNOME help browser" msgstr "" -#: gnu/packages/gnome.scm:4287 +#: gnu/packages/gnome.scm:4356 msgid "" "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,\n" "man, info, and HTML documents. It can locate documents according to the\n" "freedesktop.org help system specification." msgstr "" -#: gnu/packages/gnome.scm:4315 +#: gnu/packages/gnome.scm:4384 msgid "Yelp documentation tools" msgstr "" -#: gnu/packages/gnome.scm:4317 +#: gnu/packages/gnome.scm:4386 msgid "" "Yelp-tools is a collection of scripts and build utilities to help create,\n" "manage, and publish documentation for Yelp and the web. Most of the heavy\n" @@ -5626,32 +5967,32 @@ msgid "" "wraps things up in a developer-friendly way." msgstr "" -#: gnu/packages/gnome.scm:4354 +#: gnu/packages/gnome.scm:4423 msgid "GObject collection library" msgstr "" -#: gnu/packages/gnome.scm:4356 +#: gnu/packages/gnome.scm:4425 msgid "" "Libgee is a utility library providing GObject-based interfaces and\n" "classes for commonly used data structures." msgstr "" -#: gnu/packages/gnome.scm:4383 +#: gnu/packages/gnome.scm:4452 msgid "GObject wrapper around the Exiv2 photo metadata library" msgstr "" -#: gnu/packages/gnome.scm:4385 +#: gnu/packages/gnome.scm:4454 msgid "" "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It\n" "allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP\n" "metadata in photo and video files of various formats." msgstr "" -#: gnu/packages/gnome.scm:4429 +#: gnu/packages/gnome.scm:4498 msgid "Photo manager for GNOME 3" msgstr "" -#: gnu/packages/gnome.scm:4431 +#: gnu/packages/gnome.scm:4500 msgid "" "Shotwell is a digital photo manager designed for the GNOME desktop\n" "environment. It allows you to import photos from disk or camera, organize\n" @@ -5659,62 +6000,62 @@ msgid "" "share them with others via social networking and more." msgstr "" -#: gnu/packages/gnome.scm:4472 +#: gnu/packages/gnome.scm:4541 msgid "Graphical archive manager for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4473 +#: gnu/packages/gnome.scm:4542 msgid "" "File Roller is an archive manager for the GNOME desktop\n" "environment that allows users to view, unpack, and create compressed archives\n" "such as gzip tarballs." msgstr "" -#: gnu/packages/gnome.scm:4551 +#: gnu/packages/gnome.scm:4620 msgid "Session manager for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4553 +#: gnu/packages/gnome.scm:4622 msgid "" "This package contains the GNOME session manager, as well as a\n" "configuration program to choose applications starting on login." msgstr "" -#: gnu/packages/gnome.scm:4606 +#: gnu/packages/gnome.scm:4687 msgid "Javascript bindings for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4609 +#: gnu/packages/gnome.scm:4690 msgid "" "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey\n" "javascript engine and the GObject introspection framework." msgstr "" -#: gnu/packages/gnome.scm:4668 +#: gnu/packages/gnome.scm:4749 msgid "GNOME text editor" msgstr "Éditeur de texte GNOME" -#: gnu/packages/gnome.scm:4669 +#: gnu/packages/gnome.scm:4750 msgid "" "While aiming at simplicity and ease of use, gedit is a\n" "powerful general purpose text editor." msgstr "" -#: gnu/packages/gnome.scm:4693 +#: gnu/packages/gnome.scm:4774 msgid "Display graphical dialog boxes from shell scripts" msgstr "" -#: gnu/packages/gnome.scm:4696 +#: gnu/packages/gnome.scm:4777 msgid "" "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you\n" "to display dialog boxes from the commandline and shell scripts." msgstr "" -#: gnu/packages/gnome.scm:4790 +#: gnu/packages/gnome.scm:4876 msgid "Window and compositing manager" msgstr "" -#: gnu/packages/gnome.scm:4793 +#: gnu/packages/gnome.scm:4879 msgid "" "Mutter is a window and compositing manager that displays and manages your\n" "desktop via OpenGL. Mutter combines a sophisticated display engine using the\n" @@ -5722,11 +6063,11 @@ msgid "" "window manager." msgstr "" -#: gnu/packages/gnome.scm:4828 +#: gnu/packages/gnome.scm:4913 msgid "Single sign-on framework for GNOME" msgstr "" -#: gnu/packages/gnome.scm:4831 +#: gnu/packages/gnome.scm:4916 msgid "" "GNOME Online Accounts provides interfaces so that applications and\n" "libraries in GNOME can access the user's online accounts. It has providers for\n" @@ -5734,32 +6075,32 @@ msgid "" "Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos." msgstr "" -#: gnu/packages/gnome.scm:4889 +#: gnu/packages/gnome.scm:5000 msgid "Store address books and calendars" msgstr "" -#: gnu/packages/gnome.scm:4892 +#: gnu/packages/gnome.scm:5003 msgid "" "This package provides a unified backend for programs that work with\n" "contacts, tasks, and calendar information. It was originally developed for\n" "Evolution (hence the name), but is now used by other packages as well." msgstr "" -#: gnu/packages/gnome.scm:4955 +#: gnu/packages/gnome.scm:5066 msgid "Text entry and UI navigation application" msgstr "" -#: gnu/packages/gnome.scm:4958 +#: gnu/packages/gnome.scm:5069 msgid "" "Caribou is an input assistive technology intended for switch and pointer\n" "users." msgstr "" -#: gnu/packages/gnome.scm:5075 +#: gnu/packages/gnome.scm:5187 msgid "Network connection manager" msgstr "" -#: gnu/packages/gnome.scm:5078 +#: gnu/packages/gnome.scm:5190 msgid "" "NetworkManager is a system network service that manages your network\n" "devices and connections, attempting to keep active network connectivity when\n" @@ -5768,39 +6109,39 @@ msgid "" "services." msgstr "" -#: gnu/packages/gnome.scm:5112 +#: gnu/packages/gnome.scm:5224 msgid "OpenVPN plug-in for NetworkManager" msgstr "" -#: gnu/packages/gnome.scm:5114 +#: gnu/packages/gnome.scm:5226 msgid "" "This extension of NetworkManager allows it to take care of connections\n" "to virtual private networks (VPNs) via OpenVPN." msgstr "" -#: gnu/packages/gnome.scm:5136 +#: gnu/packages/gnome.scm:5248 msgid "Database of broadband connection configuration" msgstr "" -#: gnu/packages/gnome.scm:5137 +#: gnu/packages/gnome.scm:5249 msgid "Database of broadband connection configuration." msgstr "" -#: gnu/packages/gnome.scm:5171 +#: gnu/packages/gnome.scm:5283 msgid "Applet for managing network connections" msgstr "" -#: gnu/packages/gnome.scm:5174 +#: gnu/packages/gnome.scm:5286 msgid "" "This package contains a systray applet for NetworkManager. It displays\n" "the available networks and allows users to easily switch between them." msgstr "" -#: gnu/packages/gnome.scm:5199 +#: gnu/packages/gnome.scm:5311 msgid "C++ wrapper for XML parser library libxml2" msgstr "" -#: gnu/packages/gnome.scm:5201 +#: gnu/packages/gnome.scm:5313 msgid "" "This package provides a C++ wrapper for the XML parser library\n" "libxml2." @@ -5808,31 +6149,31 @@ msgstr "" "Ce paquet fournit une enveloppe C++ autour de la bibliothèque d'analyseur XML\n" "libxml2." -#: gnu/packages/gnome.scm:5337 +#: gnu/packages/gnome.scm:5449 msgid "Display manager for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5340 +#: gnu/packages/gnome.scm:5452 msgid "" "GNOME Display Manager is a system service that is responsible for\n" "providing graphical log-ins and managing local and remote displays." msgstr "" -#: gnu/packages/gnome.scm:5364 +#: gnu/packages/gnome.scm:5476 msgid "Portable system access library" msgstr "" -#: gnu/packages/gnome.scm:5367 +#: gnu/packages/gnome.scm:5479 msgid "" "LibGTop is a library to get system specific data such as CPU and memory\n" "usage and information about running processes." msgstr "" -#: gnu/packages/gnome.scm:5397 +#: gnu/packages/gnome.scm:5509 msgid "GNOME Bluetooth subsystem" msgstr "" -#: gnu/packages/gnome.scm:5400 +#: gnu/packages/gnome.scm:5512 msgid "" "This package contains tools for managing and manipulating Bluetooth\n" "devices using the GNOME desktop." @@ -5840,11 +6181,11 @@ msgstr "" "Ce paquet contient des outils pour gérer et manipuler des appareils bluetooth\n" "depuis le bureau GNOME." -#: gnu/packages/gnome.scm:5466 +#: gnu/packages/gnome.scm:5578 msgid "Utilities to configure the GNOME desktop" msgstr "" -#: gnu/packages/gnome.scm:5469 +#: gnu/packages/gnome.scm:5581 msgid "" "This package contains configuration applets for the GNOME desktop,\n" "allowing to set accessibility configuration, desktop fonts, keyboard and mouse\n" @@ -5852,21 +6193,21 @@ msgid "" "properties, screen resolution, and other GNOME parameters." msgstr "" -#: gnu/packages/gnome.scm:5554 +#: gnu/packages/gnome.scm:5666 msgid "Desktop shell for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5557 +#: gnu/packages/gnome.scm:5669 msgid "" "GNOME Shell provides core user interface functions for the GNOME desktop,\n" "like switching to windows and launching applications." msgstr "" -#: gnu/packages/gnome.scm:5591 +#: gnu/packages/gnome.scm:5704 msgid "VNC viewer widget for GTK+" msgstr "" -#: gnu/packages/gnome.scm:5593 +#: gnu/packages/gnome.scm:5706 msgid "" "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing\n" "applications, for instance the Vinagre client, GNOME Boxes and virt-viewer.\n" @@ -5874,43 +6215,43 @@ msgid "" "as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions." msgstr "" -#: gnu/packages/gnome.scm:5621 +#: gnu/packages/gnome.scm:5734 msgid "Archives integration support for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5624 +#: gnu/packages/gnome.scm:5737 msgid "" "GNOME Autoar is a library which makes creating and extracting archives\n" "easy, safe, and automatic." msgstr "" -#: gnu/packages/gnome.scm:5676 +#: gnu/packages/gnome.scm:5789 msgid "Metadata database, indexer and search tool" msgstr "" -#: gnu/packages/gnome.scm:5679 +#: gnu/packages/gnome.scm:5792 msgid "" "Tracker is an advanced framework for first class objects with associated\n" "metadata and tags. It provides a one stop solution for all metadata, tags,\n" "shared object databases, search tools and indexing." msgstr "" -#: gnu/packages/gnome.scm:5728 +#: gnu/packages/gnome.scm:5843 msgid "File manager for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5731 +#: gnu/packages/gnome.scm:5846 msgid "" "Nautilus (Files) is a file manager designed to fit the GNOME desktop\n" "design and behaviour, giving the user a simple way to navigate and manage its\n" "files." msgstr "" -#: gnu/packages/gnome.scm:5759 +#: gnu/packages/gnome.scm:5878 msgid "Disk usage analyzer for GNOME" msgstr "" -#: gnu/packages/gnome.scm:5761 +#: gnu/packages/gnome.scm:5880 msgid "" "Baobab (Disk Usage Analyzer) is a graphical application to analyse disk\n" "usage in the GNOME desktop environment. It can easily scan device volumes or\n" @@ -5918,11 +6259,11 @@ msgid "" "is complete it provides a graphical representation of each selected folder." msgstr "" -#: gnu/packages/gnome.scm:5785 +#: gnu/packages/gnome.scm:5904 msgid "Background images for the GNOME desktop" msgstr "" -#: gnu/packages/gnome.scm:5787 +#: gnu/packages/gnome.scm:5906 msgid "" "GNOME backgrounds package contains a collection of graphics files which\n" "can be used as backgrounds in the GNOME Desktop environment. Additionally,\n" @@ -5930,33 +6271,33 @@ msgid "" "can add your own files to the collection." msgstr "" -#: gnu/packages/gnome.scm:5820 +#: gnu/packages/gnome.scm:5939 msgid "Take pictures of your screen" msgstr "" -#: gnu/packages/gnome.scm:5822 +#: gnu/packages/gnome.scm:5941 msgid "" "GNOME Screenshot is a utility used for taking screenshots of the entire\n" "screen, a window or a user defined area of the screen, with optional\n" "beautifying border effects." msgstr "" -#: gnu/packages/gnome.scm:5859 +#: gnu/packages/gnome.scm:5978 msgid "Graphical editor for GNOME's dconf configuration system" msgstr "" -#: gnu/packages/gnome.scm:5861 +#: gnu/packages/gnome.scm:5980 msgid "" "Dconf-editor is a graphical tool for browsing and editing the dconf\n" "configuration system for GNOME. It allows users to configure desktop\n" "software that do not provide their own configuration interface." msgstr "" -#: gnu/packages/gnome.scm:5887 +#: gnu/packages/gnome.scm:6009 msgid "Default MIME type associations for the GNOME desktop" msgstr "" -#: gnu/packages/gnome.scm:5889 +#: gnu/packages/gnome.scm:6011 msgid "" "Given many installed packages which might handle a given MIME type, a\n" "user running the GNOME desktop probably has some preferences: for example,\n" @@ -5965,94 +6306,94 @@ msgid "" "associations for GNOME." msgstr "" -#: gnu/packages/gnome.scm:5948 +#: gnu/packages/gnome.scm:6070 msgid "The GNU desktop environment" msgstr "" -#: gnu/packages/gnome.scm:5951 +#: gnu/packages/gnome.scm:6073 msgid "" "GNOME is the graphical desktop for GNU. It includes a wide variety of\n" "applications for browsing the web, editing text and images, creating\n" "documents and diagrams, playing media, scanning, and much more." msgstr "" -#: gnu/packages/gnome.scm:6003 +#: gnu/packages/gnome.scm:6125 msgid "Desktop recording program" msgstr "" -#: gnu/packages/gnome.scm:6004 +#: gnu/packages/gnome.scm:6126 msgid "" "Byzanz is a simple desktop recording program with a\n" "command-line interface. It can record part or all of an X display for a\n" "specified duration and save it as a GIF encoded animated image file." msgstr "" -#: gnu/packages/gnome.scm:6031 +#: gnu/packages/gnome.scm:6153 msgid "GObject wrapper for libcanberra" msgstr "" -#: gnu/packages/gnome.scm:6033 +#: gnu/packages/gnome.scm:6155 msgid "" "GSound is a small library for playing system sounds. It's designed to be\n" "used via GObject Introspection, and is a thin wrapper around the libcanberra C\n" "library." msgstr "" -#: gnu/packages/gnome.scm:6060 +#: gnu/packages/gnome.scm:6182 msgid "Library for accessing SkyDrive and Hotmail" msgstr "Bibliothèque pour accéder à SkyDrive et Hotmail" -#: gnu/packages/gnome.scm:6062 +#: gnu/packages/gnome.scm:6184 msgid "" "Libzapojit is a GLib-based library for accessing online service APIs of\n" "Microsoft SkyDrive and Hotmail, using their REST protocols." msgstr "" -#: gnu/packages/gnome.scm:6098 +#: gnu/packages/gnome.scm:6220 msgid "GNOME's clock application" msgstr "" -#: gnu/packages/gnome.scm:6100 +#: gnu/packages/gnome.scm:6222 msgid "" "GNOME Clocks is a simple clocks application designed to fit the GNOME\n" "desktop. It supports world clock, stop watch, alarms, and count down timer." msgstr "" -#: gnu/packages/gnome.scm:6132 +#: gnu/packages/gnome.scm:6254 msgid "GNOME's calendar application" msgstr "" -#: gnu/packages/gnome.scm:6134 +#: gnu/packages/gnome.scm:6256 msgid "" "GNOME Calendar is a simple calendar application designed to fit the GNOME\n" "desktop. It supports multiple calendars, month, week and year view." msgstr "" -#: gnu/packages/gnome.scm:6183 +#: gnu/packages/gnome.scm:6306 msgid "GNOME's ToDo Application" msgstr "" -#: gnu/packages/gnome.scm:6185 +#: gnu/packages/gnome.scm:6308 msgid "" "GNOME To Do is a simplistic personal task manager designed to perfectly\n" "fit the GNOME desktop." msgstr "" -#: gnu/packages/gnome.scm:6213 +#: gnu/packages/gnome.scm:6337 msgid "Look up words in dictionary sources" msgstr "" -#: gnu/packages/gnome.scm:6215 +#: gnu/packages/gnome.scm:6339 msgid "" "GNOME Dictionary can look for the definition or translation of a word in\n" "existing databases over the internet." msgstr "" -#: gnu/packages/gnome.scm:6261 +#: gnu/packages/gnome.scm:6399 msgid "Customize advanced GNOME 3 options" msgstr "" -#: gnu/packages/gnome.scm:6264 +#: gnu/packages/gnome.scm:6402 msgid "" "GNOME Tweak Tool allows adjusting advanced configuration settings in\n" "GNOME 3. This includes things like the fonts used in user interface elements,\n" @@ -6060,63 +6401,63 @@ msgid "" "GNOME Shell appearance and extension, etc." msgstr "" -#: gnu/packages/gnome.scm:6291 +#: gnu/packages/gnome.scm:6429 msgid "Extensions for GNOME Shell" msgstr "" -#: gnu/packages/gnome.scm:6292 +#: gnu/packages/gnome.scm:6430 msgid "" "GNOME Shell extensions modify and extend GNOME Shell\n" "functionality and behavior." msgstr "" -#: gnu/packages/gnome.scm:6322 +#: gnu/packages/gnome.scm:6460 msgid "A flat GTK+ theme with transparent elements" msgstr "" -#: gnu/packages/gnome.scm:6323 +#: gnu/packages/gnome.scm:6461 msgid "" "Arc is a flat theme with transparent elements for GTK 3, GTK\n" "2, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments\n" "like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc." msgstr "" -#: gnu/packages/gnome.scm:6359 +#: gnu/packages/gnome.scm:6500 msgid "Faba icon theme" msgstr "" -#: gnu/packages/gnome.scm:6361 +#: gnu/packages/gnome.scm:6502 msgid "" "Faba is a minimal icon set used as a basis for other themes such as\n" "Moka" msgstr "" -#: gnu/packages/gnome.scm:6385 +#: gnu/packages/gnome.scm:6526 msgid "Moka icon theme" msgstr "" -#: gnu/packages/gnome.scm:6386 +#: gnu/packages/gnome.scm:6527 msgid "" "Moka is a stylized desktop icon set, designed to be clear,\n" "simple and consistent." msgstr "" -#: gnu/packages/gnome.scm:6416 +#: gnu/packages/gnome.scm:6559 msgid "Arc icon theme" msgstr "" -#: gnu/packages/gnome.scm:6417 +#: gnu/packages/gnome.scm:6560 msgid "" "The Arc icon theme provides a set of icons matching the\n" "style of the Arc GTK theme. Icons missing from the Arc theme are provided by\n" "the Moka icon theme." msgstr "" -#: gnu/packages/gnome.scm:6449 +#: gnu/packages/gnome.scm:6592 msgid "Library to aggregate data about people" msgstr "" -#: gnu/packages/gnome.scm:6450 +#: gnu/packages/gnome.scm:6593 msgid "" "Libfolks is a library that aggregates information about people\n" "from multiple sources (e.g., Telepathy connection managers for IM contacts,\n" @@ -6125,31 +6466,31 @@ msgid "" "compiled." msgstr "" -#: gnu/packages/gnome.scm:6485 +#: gnu/packages/gnome.scm:6628 msgid "GLib/GObject wrapper for the Facebook API" msgstr "" -#: gnu/packages/gnome.scm:6486 +#: gnu/packages/gnome.scm:6629 msgid "" "This library allows you to use the Facebook API from\n" "GLib/GObject code." msgstr "" -#: gnu/packages/gnome.scm:6514 +#: gnu/packages/gnome.scm:6657 msgid "GNOME keyboard configuration library" msgstr "" -#: gnu/packages/gnome.scm:6516 +#: gnu/packages/gnome.scm:6659 msgid "" "Libgnomekbd is a keyboard configuration library for the GNOME desktop\n" "environment, which can notably display keyboard layouts." msgstr "" -#: gnu/packages/gnome.scm:6550 +#: gnu/packages/gnome.scm:6693 msgid "Library for writing single instance applications" msgstr "Bibliothèque pour écrire des applications à instance unique" -#: gnu/packages/gnome.scm:6552 +#: gnu/packages/gnome.scm:6695 msgid "" "Libunique is a library for writing single instance applications. If you\n" "launch a single instance application twice, the second instance will either just\n" @@ -6159,32 +6500,32 @@ msgid "" "handling the startup notification side." msgstr "" -#: gnu/packages/gnome.scm:6585 +#: gnu/packages/gnome.scm:6728 msgid "Desktop calculator" msgstr "" -#: gnu/packages/gnome.scm:6587 +#: gnu/packages/gnome.scm:6730 msgid "" "Calculator is an application that solves mathematical equations and\n" "is suitable as a default application in a Desktop environment." msgstr "" -#: gnu/packages/gnome.scm:6612 +#: gnu/packages/gnome.scm:6764 msgid "Virtual sticky note" msgstr "" -#: gnu/packages/gnome.scm:6614 +#: gnu/packages/gnome.scm:6766 msgid "" "Xpad is a sticky note that strives to be simple, fault tolerant,\n" "and customizable. Xpad consists of independent pad windows, each is\n" "basically a text box in which notes can be written." msgstr "" -#: gnu/packages/gnome.scm:6644 +#: gnu/packages/gnome.scm:6796 msgid "Unicode character picker and font browser" msgstr "" -#: gnu/packages/gnome.scm:6646 +#: gnu/packages/gnome.scm:6798 msgid "" "This program allows you to browse through all the available Unicode\n" "characters and categories for the installed fonts, and to examine their\n" @@ -6192,22 +6533,22 @@ msgid "" "only know by its Unicode name or code point." msgstr "" -#: gnu/packages/gnome.scm:6676 +#: gnu/packages/gnome.scm:6828 msgid "Web development studio" msgstr "" -#: gnu/packages/gnome.scm:6678 +#: gnu/packages/gnome.scm:6830 msgid "" "Bluefish is an editor targeted towards programmers and web developers,\n" "with many options to write web sites, scripts and other code.\n" "Bluefish supports many programming and markup languages." msgstr "" -#: gnu/packages/gnome.scm:6710 +#: gnu/packages/gnome.scm:6862 msgid "Process viewer and system resource monitor for GNOME" msgstr "" -#: gnu/packages/gnome.scm:6712 +#: gnu/packages/gnome.scm:6864 msgid "" "GNOME System Monitor is a GNOME process viewer and system monitor with\n" "an attractive, easy-to-use interface. It has features, such as a tree view\n" @@ -6216,43 +6557,43 @@ msgid "" "kill/reinice processes." msgstr "" -#: gnu/packages/gnome.scm:6738 +#: gnu/packages/gnome.scm:6890 msgid "Python client bindings for D-Bus AT-SPI" msgstr "" -#: gnu/packages/gnome.scm:6742 +#: gnu/packages/gnome.scm:6894 msgid "" "This package includes a python client library for the AT-SPI D-Bus\n" "accessibility infrastructure." msgstr "" -#: gnu/packages/gnome.scm:6801 +#: gnu/packages/gnome.scm:6953 msgid "Screen reader for individuals who are blind or visually impaired" msgstr "" -#: gnu/packages/gnome.scm:6804 +#: gnu/packages/gnome.scm:6956 msgid "" "Orca is a screen reader that provides access to the graphical desktop\n" "via speech and refreshable braille. Orca works with applications and toolkits\n" "that support the Assistive Technology Service Provider Interface (AT-SPI)." msgstr "" -#: gnu/packages/gnome.scm:6856 +#: gnu/packages/gnome.scm:7008 msgid "GNOME's alternative spell checker" msgstr "" -#: gnu/packages/gnome.scm:6858 +#: gnu/packages/gnome.scm:7010 msgid "" "gspell provides a flexible API to add spell-checking to a GTK+\n" "application. It provides a GObject API, spell-checking to text entries and\n" "text views, and buttons to choose the language." msgstr "" -#: gnu/packages/gnome.scm:6900 +#: gnu/packages/gnome.scm:7052 msgid "Project management software for the GNOME desktop" msgstr "" -#: gnu/packages/gnome.scm:6902 +#: gnu/packages/gnome.scm:7054 msgid "" "GNOME Planner is a project management tool based on the Work Breakdown\n" "Structure (WBS). Its goal is to enable you to easily plan projects. Based on\n" @@ -6264,11 +6605,11 @@ msgid "" "views can be printed as PDF or PostScript files, or exported to HTML." msgstr "" -#: gnu/packages/gnome.scm:6980 +#: gnu/packages/gnome.scm:7120 msgid "GNOME music playing application" msgstr "" -#: gnu/packages/gnome.scm:6982 +#: gnu/packages/gnome.scm:7122 msgid "" "Lollypop is a music player designed to play well with GNOME desktop.\n" "Lollypop plays audio formats such as mp3, mp4, ogg and flac and gets information\n" @@ -6276,52 +6617,85 @@ msgid "" "automatically and it can stream songs from online music services and charts." msgstr "" -#: gnu/packages/gnome.scm:7009 +#: gnu/packages/gnome.scm:7149 msgid "Video effects for Cheese and other GNOME applications" msgstr "" -#: gnu/packages/gnome.scm:7011 +#: gnu/packages/gnome.scm:7151 msgid "" "A collection of GStreamer video filters and effects to be used in\n" "photo-booth-like software, such as Cheese." msgstr "" -#: gnu/packages/gnome.scm:7071 +#: gnu/packages/gnome.scm:7211 msgid "Webcam photo booth software for GNOME" msgstr "" -#: gnu/packages/gnome.scm:7073 +#: gnu/packages/gnome.scm:7213 msgid "" "Cheese uses your webcam to take photos and videos. Cheese can also\n" "apply fancy special effects and lets you share the fun with others." msgstr "" -#: gnu/packages/gnuzilla.scm:118 +#: gnu/packages/gnome.scm:7250 +msgid "Audio music cd ripper" +msgstr "" + +#: gnu/packages/gnome.scm:7251 +msgid "" +"Sound Juicer extracts audio from compact discs and convert it\n" +"into audio files that a personal computer or digital audio player can play.\n" +"It supports ripping to any audio codec supported by a GStreamer plugin, such as\n" +"mp3, Ogg Vorbis and FLAC" +msgstr "" + +#: gnu/packages/gnome.scm:7304 +msgid "Tool to help prevent repetitive strain injury (RSI)" +msgstr "" + +#: gnu/packages/gnome.scm:7305 +msgid "" +"Workrave is a program that assists in the recovery and\n" +"prevention of repetitive strain injury (RSI). The program frequently alerts\n" +"you to take micro-pauses, rest breaks and restricts you to your daily limit" +msgstr "" + +#: gnu/packages/gnome.scm:7334 +msgid "GNOME hexadecimal editor" +msgstr "Éditeur hexadécimal de GNOME" + +#: gnu/packages/gnome.scm:7335 +msgid "" +"The GHex program can view and edit files in two ways:\n" +"hexadecimal or ASCII. It is useful for editing binary files in general." +msgstr "" + +#: gnu/packages/gnuzilla.scm:121 msgid "Mozilla javascript engine" msgstr "" -#: gnu/packages/gnuzilla.scm:119 +#: gnu/packages/gnuzilla.scm:122 msgid "" "SpiderMonkey is Mozilla's JavaScript engine written\n" "in C/C++." msgstr "" -#: gnu/packages/gnuzilla.scm:276 +#: gnu/packages/gnuzilla.scm:285 msgid "Netscape API for system level and libc-like functions" msgstr "" -#: gnu/packages/gnuzilla.scm:277 +#: gnu/packages/gnuzilla.scm:286 msgid "" -"Netscape Portable Runtime (NSPR) provides a\n" +"Netscape Portable Runtime (@dfn{NSPR}) provides a\n" "platform-neutral API for system level and libc-like functions. It is used\n" "in the Mozilla clients." msgstr "" -#: gnu/packages/gnuzilla.scm:383 +#: gnu/packages/gnuzilla.scm:392 msgid "Network Security Services" msgstr "" -#: gnu/packages/gnuzilla.scm:385 +#: gnu/packages/gnuzilla.scm:394 msgid "" "Network Security Services (@dfn{NSS}) is a set of libraries designed to\n" "support cross-platform development of security-enabled client and server\n" @@ -6330,33 +6704,33 @@ msgid "" "security standards." msgstr "" -#: gnu/packages/gnuzilla.scm:767 +#: gnu/packages/gnuzilla.scm:783 msgid "Entirely free browser derived from Mozilla Firefox" msgstr "" -#: gnu/packages/gnuzilla.scm:769 +#: gnu/packages/gnuzilla.scm:785 msgid "" "IceCat is the GNU version of the Firefox browser. It is entirely free\n" "software, which does not recommend non-free plugins and addons. It also\n" "features built-in privacy-protecting features." msgstr "" -#: gnu/packages/gtk.scm:97 +#: gnu/packages/gtk.scm:103 msgid "GNOME accessibility toolkit" msgstr "" -#: gnu/packages/gtk.scm:99 +#: gnu/packages/gtk.scm:105 msgid "" "ATK provides the set of accessibility interfaces that are implemented\n" "by other toolkits and applications. Using the ATK interfaces, accessibility\n" "tools have full access to view and control running applications." msgstr "" -#: gnu/packages/gtk.scm:139 +#: gnu/packages/gtk.scm:145 msgid "2D graphics library" msgstr "Bibliothèque graphique 2D" -#: gnu/packages/gtk.scm:141 +#: gnu/packages/gtk.scm:147 msgid "" "Cairo is a 2D graphics library with support for multiple output devices.\n" "Currently supported output targets include the X Window System (via both\n" @@ -6374,56 +6748,56 @@ msgid "" "affine transformation (scale, rotation, shear, etc.)." msgstr "" -#: gnu/packages/gtk.scm:169 +#: gnu/packages/gtk.scm:175 msgid "2D graphics library (with X11 support)" msgstr "" -#: gnu/packages/gtk.scm:202 +#: gnu/packages/gtk.scm:209 msgid "OpenType text shaping engine" msgstr "" -#: gnu/packages/gtk.scm:204 +#: gnu/packages/gtk.scm:211 msgid "HarfBuzz is an OpenType text shaping engine." msgstr "" -#: gnu/packages/gtk.scm:235 +#: gnu/packages/gtk.scm:247 msgid "GNOME text and font handling library" msgstr "" -#: gnu/packages/gtk.scm:237 +#: gnu/packages/gtk.scm:249 msgid "" "Pango is the core text and font handling library used in GNOME\n" "applications. It has extensive support for the different writing systems\n" "used throughout the world." msgstr "" -#: gnu/packages/gtk.scm:263 +#: gnu/packages/gtk.scm:275 msgid "Obsolete pango functions" msgstr "" -#: gnu/packages/gtk.scm:264 +#: gnu/packages/gtk.scm:276 msgid "" "Pangox was a X backend to pango. It is now obsolete and no\n" "longer provided by recent pango releases. pangox-compat provides the\n" "functions which were removed." msgstr "" -#: gnu/packages/gtk.scm:301 +#: gnu/packages/gtk.scm:313 msgid "GTK+ widget for interactive graph-like environments" msgstr "" -#: gnu/packages/gtk.scm:303 +#: gnu/packages/gtk.scm:315 msgid "" "Ganv is an interactive GTK+ widget for interactive “boxes and lines” or\n" "graph-like environments, e.g. modular synths or finite state machine\n" "diagrams." msgstr "" -#: gnu/packages/gtk.scm:371 +#: gnu/packages/gtk.scm:384 msgid "Widget that extends the standard GTK+ 2.x 'GtkTextView' widget" msgstr "" -#: gnu/packages/gtk.scm:373 +#: gnu/packages/gtk.scm:386 msgid "" "GtkSourceView is a portable C library that extends the standard GTK+\n" "framework for multiline text editing with support for configurable syntax\n" @@ -6431,56 +6805,56 @@ msgid "" "printing and other features typical of a source code editor." msgstr "" -#: gnu/packages/gtk.scm:422 +#: gnu/packages/gtk.scm:435 msgid "GNOME source code widget" msgstr "" -#: gnu/packages/gtk.scm:423 +#: gnu/packages/gtk.scm:436 msgid "" "GtkSourceView is a text widget that extends the standard\n" "GTK+ text widget GtkTextView. It improves GtkTextView by implementing syntax\n" "highlighting and other features typical of a source code editor." msgstr "" -#: gnu/packages/gtk.scm:473 +#: gnu/packages/gtk.scm:486 msgid "GNOME image loading and manipulation library" msgstr "" -#: gnu/packages/gtk.scm:475 +#: gnu/packages/gtk.scm:488 msgid "" "GdkPixbuf is a library for image loading and manipulation developed\n" "in the GNOME project." msgstr "" -#: gnu/packages/gtk.scm:507 +#: gnu/packages/gtk.scm:522 msgid "GNOME image loading and manipulation library, with SVG support" msgstr "" -#: gnu/packages/gtk.scm:547 +#: gnu/packages/gtk.scm:562 msgid "Assistive Technology Service Provider Interface, core components" msgstr "" -#: gnu/packages/gtk.scm:549 +#: gnu/packages/gtk.scm:564 msgid "" "The Assistive Technology Service Provider Interface, core components,\n" "is part of the GNOME accessibility project." msgstr "" -#: gnu/packages/gtk.scm:582 +#: gnu/packages/gtk.scm:597 msgid "Assistive Technology Service Provider Interface, ATK bindings" msgstr "" -#: gnu/packages/gtk.scm:584 +#: gnu/packages/gtk.scm:599 msgid "" "The Assistive Technology Service Provider Interface\n" "is part of the GNOME accessibility project." msgstr "" -#: gnu/packages/gtk.scm:643 +#: gnu/packages/gtk.scm:659 msgid "Cross-platform toolkit for creating graphical user interfaces" msgstr "" -#: gnu/packages/gtk.scm:645 +#: gnu/packages/gtk.scm:661 msgid "" "GTK+, or the GIMP Toolkit, is a multi-platform toolkit for creating\n" "graphical user interfaces. Offering a complete set of widgets, GTK+ is\n" @@ -6488,11 +6862,11 @@ msgid "" "application suites." msgstr "" -#: gnu/packages/gtk.scm:805 +#: gnu/packages/gtk.scm:823 msgid "Cairo bindings for GNU Guile" msgstr "Liaisons Cairo pour GNU Guile" -#: gnu/packages/gtk.scm:807 +#: gnu/packages/gtk.scm:825 msgid "" "Guile-Cairo wraps the Cairo graphics library for Guile Scheme.\n" "Guile-Cairo is complete, wrapping almost all of the Cairo API. It is API\n" @@ -6502,21 +6876,21 @@ msgid "" "exceptions, macros, and a dynamic programming environment." msgstr "" -#: gnu/packages/gtk.scm:853 +#: gnu/packages/gtk.scm:873 msgid "Render SVG images using Cairo from Guile" msgstr "" -#: gnu/packages/gtk.scm:855 +#: gnu/packages/gtk.scm:875 msgid "" "Guile-RSVG wraps the RSVG library for Guile, allowing you to render SVG\n" "images onto Cairo surfaces." msgstr "" -#: gnu/packages/gtk.scm:900 +#: gnu/packages/gtk.scm:922 msgid "Create SVG or PDF presentations in Guile" msgstr "Création de SVG et de présentations PDF en Guile" -#: gnu/packages/gtk.scm:902 +#: gnu/packages/gtk.scm:924 msgid "" "Guile-Present defines a declarative vocabulary for presentations,\n" "together with tools to render presentation documents as SVG or PDF.\n" @@ -6525,51 +6899,51 @@ msgid "" "documents." msgstr "" -#: gnu/packages/gtk.scm:956 +#: gnu/packages/gtk.scm:978 msgid "Guile interface for GTK+ programming for GNOME" msgstr "" -#: gnu/packages/gtk.scm:958 +#: gnu/packages/gtk.scm:980 msgid "" "Includes guile-clutter, guile-gnome-gstreamer,\n" "guile-gnome-platform (GNOME developer libraries), and guile-gtksourceview." msgstr "" -#: gnu/packages/gtk.scm:991 +#: gnu/packages/gtk.scm:1013 msgid "C++ bindings to the Cairo 2D graphics library" msgstr "" -#: gnu/packages/gtk.scm:993 +#: gnu/packages/gtk.scm:1015 msgid "" "Cairomm provides a C++ programming interface to the Cairo 2D graphics\n" "library." msgstr "" -#: gnu/packages/gtk.scm:1017 +#: gnu/packages/gtk.scm:1039 msgid "C++ interface to the Pango text rendering library" msgstr "" -#: gnu/packages/gtk.scm:1019 +#: gnu/packages/gtk.scm:1041 msgid "" "Pangomm provides a C++ programming interface to the Pango text rendering\n" "library." msgstr "" -#: gnu/packages/gtk.scm:1040 +#: gnu/packages/gtk.scm:1062 msgid "C++ interface to the ATK accessibility library" msgstr "" -#: gnu/packages/gtk.scm:1042 +#: gnu/packages/gtk.scm:1064 msgid "" "ATKmm provides a C++ programming interface to the ATK accessibility\n" "toolkit." msgstr "" -#: gnu/packages/gtk.scm:1082 +#: gnu/packages/gtk.scm:1108 msgid "C++ interface to the GTK+ graphical user interface library" msgstr "" -#: gnu/packages/gtk.scm:1084 +#: gnu/packages/gtk.scm:1110 msgid "" "gtkmm is the official C++ interface for the popular GUI library GTK+.\n" "Highlights include typesafe callbacks, and a comprehensive set of widgets that\n" @@ -6578,30 +6952,86 @@ msgid "" "extensive documentation, including API reference and a tutorial." msgstr "" -#: gnu/packages/gtk.scm:1143 +#: gnu/packages/gtk.scm:1159 +msgid "C++ interface to the GTK+ 'GtkTextView' widget" +msgstr "" + +#: gnu/packages/gtk.scm:1161 +msgid "" +"gtksourceviewmm is a portable C++ library that extends the standard GTK+\n" +"framework for multiline text editing with support for configurable syntax\n" +"highlighting, unlimited undo/redo, search and replace, a completion framework,\n" +"printing and other features typical of a source code editor." +msgstr "" + +#: gnu/packages/gtk.scm:1191 msgid "Python bindings for cairo" msgstr "" -#: gnu/packages/gtk.scm:1145 +#: gnu/packages/gtk.scm:1193 msgid "Pycairo is a set of Python bindings for the Cairo graphics library." msgstr "" -#: gnu/packages/gtk.scm:1229 +#: gnu/packages/gtk.scm:1266 msgid "Python bindings for GTK+" msgstr "" -#: gnu/packages/gtk.scm:1231 +#: gnu/packages/gtk.scm:1268 msgid "" "PyGTK allows you to write full featured GTK programs in Python. It is\n" "targeted at GTK 2.x, and can be used in conjunction with gnome-python to\n" "write GNOME applications." msgstr "" -#: gnu/packages/gtk.scm:1262 +#: gnu/packages/gtk.scm:1292 +msgid "Perl interface to the cairo 2d vector graphics library" +msgstr "" + +#: gnu/packages/gtk.scm:1293 +msgid "" +"Cairo provides Perl bindings for the vector graphics library\n" +"cairo. It supports multiple output targets, including PNG, PDF and SVG. Cairo\n" +"produces identical output on all those targets." +msgstr "" + +#: gnu/packages/gtk.scm:1318 +msgid "Perl interface to the 2.x series of the Gimp Toolkit library" +msgstr "" + +#: gnu/packages/gtk.scm:1319 +msgid "" +"Perl bindings to the 2.x series of the Gtk+ widget set.\n" +"This module allows you to write graphical user interfaces in a Perlish and\n" +"object-oriented way, freeing you from the casting and memory management in C,\n" +"yet remaining very close in spirit to original API." +msgstr "" + +#: gnu/packages/gtk.scm:1346 +msgid "Layout and render international text" +msgstr "" + +#: gnu/packages/gtk.scm:1347 +msgid "" +"Pango is a library for laying out and rendering text, with an\n" +"emphasis on internationalization. Pango can be used anywhere that text layout\n" +"is needed, but using Pango in conjunction with Cairo and/or Gtk2 provides a\n" +"complete solution with high quality text handling and graphics rendering.\n" +"\n" +"Dynamically loaded modules handle text layout for particular combinations of\n" +"script and font backend. Pango provides a wide selection of modules, including\n" +"modules for Hebrew, Arabic, Hangul, Thai, and a number of Indic scripts.\n" +"Virtually all of the world's major scripts are supported.\n" +"\n" +"In addition to the low level layout rendering routines, Pango includes\n" +"@code{Pango::Layout}, a high level driver for laying out entire blocks of text,\n" +"and routines to assist in editing internationalized text." +msgstr "" + +#: gnu/packages/gtk.scm:1406 msgid "Library for minimalistic gtk+3 user interfaces" msgstr "" -#: gnu/packages/gtk.scm:1263 +#: gnu/packages/gtk.scm:1407 msgid "" "Girara is a library that implements a user interface that\n" "focuses on simplicity and minimalism. Currently based on GTK+, a\n" @@ -6612,75 +7042,75 @@ msgid "" "information." msgstr "" -#: gnu/packages/gtk.scm:1330 +#: gnu/packages/gtk.scm:1474 msgid "Documentation generator from C source code" msgstr "" -#: gnu/packages/gtk.scm:1332 +#: gnu/packages/gtk.scm:1476 msgid "" "GTK-Doc generates API documentation from comments added to C code. It is\n" "typically used to document the public API of GTK+ and GNOME libraries, but it\n" "can also be used to document application code." msgstr "" -#: gnu/packages/gtk.scm:1360 +#: gnu/packages/gtk.scm:1504 msgid "Theming engines for GTK+ 2.x" msgstr "" -#: gnu/packages/gtk.scm:1362 +#: gnu/packages/gtk.scm:1506 msgid "" "This package contains the standard GTK+ 2.x theming engines including\n" "Clearlooks, Crux, High Contrast, Industrial, LighthouseBlue, Metal, Mist,\n" "Redmond95 and ThinIce." msgstr "" -#: gnu/packages/gtk.scm:1390 +#: gnu/packages/gtk.scm:1534 msgid "Cairo-based theming engine for GTK+ 2.x" msgstr "" -#: gnu/packages/gtk.scm:1392 +#: gnu/packages/gtk.scm:1536 msgid "" "Murrine is a cairo-based GTK+ theming engine. It is named after the\n" "glass artworks done by Venicians glass blowers." msgstr "" -#: gnu/packages/gtk.scm:1417 +#: gnu/packages/gtk.scm:1563 msgid "Spell-checking addon for GTK's TextView widget" msgstr "" -#: gnu/packages/gtk.scm:1419 +#: gnu/packages/gtk.scm:1565 msgid "" "GtkSpell provides word-processor-style highlighting and replacement of\n" "misspelled words in a GtkTextView widget." msgstr "" -#: gnu/packages/gtk.scm:1442 +#: gnu/packages/gtk.scm:1588 msgid "Lightweight GTK+ clipboard manager" msgstr "" -#: gnu/packages/gtk.scm:1444 +#: gnu/packages/gtk.scm:1590 msgid "" "ClipIt is a clipboard manager with features such as a history, search\n" "thereof, global hotkeys and clipboard item actions. It was forked from\n" "Parcellite and adds bugfixes and features." msgstr "" -#: gnu/packages/gtk.scm:1481 +#: gnu/packages/gtk.scm:1627 msgid "Thin layer of graphic data types" msgstr "" -#: gnu/packages/gtk.scm:1482 +#: gnu/packages/gtk.scm:1628 msgid "" "This library provides graphic types and their relative API;\n" "it does not deal with windowing system surfaces, drawing, scene graphs, or\n" "input." msgstr "" -#: gnu/packages/guile.scm:132 gnu/packages/guile.scm:211 +#: gnu/packages/guile.scm:138 gnu/packages/guile.scm:217 msgid "Scheme implementation intended especially for extensions" msgstr "Implantation de Scheme spécialement destinée aux extensions" -#: gnu/packages/guile.scm:134 gnu/packages/guile.scm:213 +#: gnu/packages/guile.scm:140 gnu/packages/guile.scm:219 msgid "" "Guile is the GNU Ubiquitous Intelligent Language for Extensions, the\n" "official extension language of the GNU system. It is an implementation of\n" @@ -6693,11 +7123,22 @@ msgstr "" "Scheme qui peut être facilement incluse dans d'autres applications pour faciliter\n" "l'ajout de fonctionnalités sans avoir à réécrire le code source." -#: gnu/packages/guile.scm:379 +#: gnu/packages/guile.scm:356 +msgid "Line editing support for GNU Guile" +msgstr "Support de l'édition de ligne pour GNU Guile" + +#: gnu/packages/guile.scm:358 +msgid "" +"This module provides line editing support via the Readline library for\n" +"GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its\n" +"@code{activate-readline} procedure to enable it." +msgstr "" + +#: gnu/packages/guile.scm:477 msgid "Package manager for Guile" msgstr "" -#: gnu/packages/guile.scm:381 +#: gnu/packages/guile.scm:479 msgid "" "Guildhall is a package manager written for Guile Scheme. A guild is\n" "an association of independent craftspeople. A guildhall is where they meet.\n" @@ -6711,11 +7152,11 @@ msgid "" "program can be installed in one go." msgstr "" -#: gnu/packages/guile.scm:473 +#: gnu/packages/guile.scm:572 msgid "Web application framework written in Guile" msgstr "" -#: gnu/packages/guile.scm:474 +#: gnu/packages/guile.scm:573 msgid "" "GNU Artanis is a web application framework written in Guile\n" "Scheme. A web application framework (WAF) is a software framework that is\n" @@ -6727,11 +7168,11 @@ msgid "" "more." msgstr "" -#: gnu/packages/guile.scm:500 +#: gnu/packages/guile.scm:599 msgid "Framework for building readers for GNU Guile" msgstr "Framework pour la construction de lecteurs GNU Guile" -#: gnu/packages/guile.scm:502 +#: gnu/packages/guile.scm:601 msgid "" "Guile-Reader is a simple framework for building readers for GNU Guile.\n" "\n" @@ -6755,21 +7196,21 @@ msgstr "" "plus puissante et plus flexible (il est par exemple possible d'instancier autant\n" "de lecteurs que nécessaires)." -#: gnu/packages/guile.scm:556 +#: gnu/packages/guile.scm:655 msgid "Guile bindings to ncurses" msgstr "Bindings Guile pour ncurses" -#: gnu/packages/guile.scm:558 +#: gnu/packages/guile.scm:657 msgid "" "guile-ncurses provides Guile language bindings for the ncurses\n" "library." msgstr "guile-ncurses fournit un binding Guile pour la biliothèque ncurses." -#: gnu/packages/guile.scm:585 +#: gnu/packages/guile.scm:715 msgid "Run jobs at scheduled times" msgstr "Plannification de tâches" -#: gnu/packages/guile.scm:587 +#: gnu/packages/guile.scm:717 msgid "" "GNU Mcron is a complete replacement for Vixie cron. It is used to run\n" "tasks on a schedule, such as every hour or every Monday. Mcron is written in\n" @@ -6781,11 +7222,11 @@ msgstr "" "Mcron est écrit en Guile et peut donc être configuré en Scheme ; le format cron\n" "original est aussi supporté." -#: gnu/packages/guile.scm:674 +#: gnu/packages/guile.scm:759 msgid "Guile parser library for the iCalendar format" msgstr "" -#: gnu/packages/guile.scm:676 +#: gnu/packages/guile.scm:761 msgid "" "Guile-ICS is an iCalendar (RFC5545) format parser library written in\n" "pure Scheme. The library can be used to read and write iCalendar data.\n" @@ -6793,11 +7234,11 @@ msgid "" "The library is shipped with documentation in Info format and usage examples." msgstr "" -#: gnu/packages/guile.scm:711 +#: gnu/packages/guile.scm:796 msgid "Collection of useful Guile Scheme modules" msgstr "Collection de modules Scheme utiles pour Guile" -#: gnu/packages/guile.scm:713 +#: gnu/packages/guile.scm:798 msgid "" "Guile-Lib is intended as an accumulation place for pure-scheme Guile\n" "modules, allowing for people to cooperate integrating their generic Guile\n" @@ -6808,11 +7249,11 @@ msgstr "" "aux utilisateurs d'intégrer leurs modules Guile au sein d'une bilbiothéque commune\n" "et cohérente. Voyez Guile-Lib comme une version plus simple de CPAN limitée à Guile." -#: gnu/packages/guile.scm:754 +#: gnu/packages/guile.scm:844 msgid "JSON module for Guile" msgstr "Module JSON pour Guile" -#: gnu/packages/guile.scm:756 +#: gnu/packages/guile.scm:846 msgid "" "Guile-JSON supports parsing and building JSON documents according to the\n" "specification. These are the main features:\n" @@ -6834,11 +7275,11 @@ msgstr "" "@item formatage élégant.\n" "@end itemize\n" -#: gnu/packages/guile.scm:843 +#: gnu/packages/guile.scm:932 msgid "MiniKanren declarative logic system, packaged for Guile" msgstr "" -#: gnu/packages/guile.scm:845 +#: gnu/packages/guile.scm:934 msgid "" "MiniKanren is a relational programming extension to the Scheme\n" "programming Language, written as a smaller version of Kanren suitable for\n" @@ -6851,13 +7292,13 @@ msgid "" "See http://minikanren.org/ for more on miniKanren generally." msgstr "" -#: gnu/packages/guile.scm:916 +#: gnu/packages/guile.scm:1008 msgid "" "Minimal implementation of incremental computation in Guile\n" "Scheme" msgstr "" -#: gnu/packages/guile.scm:918 +#: gnu/packages/guile.scm:1010 msgid "" "This package provides a complete Scheme implementation of\n" "miniAdapton, which implements the core functionality of the Adapton system for\n" @@ -6868,51 +7309,51 @@ msgid "" "understand, extend, and port to host languages other than Scheme." msgstr "" -#: gnu/packages/guile.scm:1002 +#: gnu/packages/guile.scm:1092 msgid "S-expression based regular expressions" msgstr "" -#: gnu/packages/guile.scm:1004 +#: gnu/packages/guile.scm:1094 msgid "" "Irregex is an s-expression based alternative to your classic\n" "string-based regular expressions. It implements SRFI 115 and is deeply\n" "inspired by the SCSH regular expression system." msgstr "" -#: gnu/packages/guile.scm:1085 +#: gnu/packages/guile.scm:1196 msgid "Guile bindings to the GDBM library via Guile's FFI" msgstr "" -#: gnu/packages/guile.scm:1087 +#: gnu/packages/guile.scm:1198 msgid "" "Guile bindings to the GDBM key-value storage system, using\n" "Guile's foreign function interface." msgstr "" -#: gnu/packages/guile.scm:1140 +#: gnu/packages/guile.scm:1257 msgid "Access SQLite databases from Guile" msgstr "" -#: gnu/packages/guile.scm:1142 +#: gnu/packages/guile.scm:1259 msgid "This package provides Guile bindings to the SQLite database system." msgstr "Ce paquet fournit les liaisons Guile pour le système de base de données SQLite." -#: gnu/packages/guile.scm:1187 +#: gnu/packages/guile.scm:1307 msgid "Functional static site generator" msgstr "" -#: gnu/packages/guile.scm:1188 +#: gnu/packages/guile.scm:1308 msgid "" "Haunt is a static site generator written in Guile\n" "Scheme. Haunt features a functional build system and an extensible\n" "interface for reading articles in any format." msgstr "" -#: gnu/packages/guile.scm:1215 +#: gnu/packages/guile.scm:1346 msgid "Guile application configuration parsing library" msgstr "" -#: gnu/packages/guile.scm:1217 +#: gnu/packages/guile.scm:1348 msgid "" "Guile Config is a library providing a declarative approach to\n" "application configuration specification. The library provides clean\n" @@ -6923,43 +7364,43 @@ msgid "" "above command-line parameters." msgstr "" -#: gnu/packages/guile.scm:1255 +#: gnu/packages/guile.scm:1387 msgid "Redis client library for Guile" msgstr "" -#: gnu/packages/guile.scm:1256 +#: gnu/packages/guile.scm:1388 msgid "" "Guile-redis provides a Scheme interface to the Redis\n" "key-value cache and store." msgstr "" -#: gnu/packages/guile.scm:1330 +#: gnu/packages/guile.scm:1465 msgid "Whitespace to lisp syntax for Guile" msgstr "" -#: gnu/packages/guile.scm:1331 +#: gnu/packages/guile.scm:1466 msgid "" "Wisp is a syntax for Guile which provides a Python-like\n" "whitespace-significant language. It may be easier on the eyes for some\n" "users and in some situations." msgstr "" -#: gnu/packages/guile.scm:1381 +#: gnu/packages/guile.scm:1517 msgid "2D/3D game engine for GNU Guile" msgstr "" -#: gnu/packages/guile.scm:1382 +#: gnu/packages/guile.scm:1518 msgid "" "Sly is a 2D/3D game engine written in Guile Scheme. Sly\n" "features a functional reactive programming interface and live coding\n" "capabilities." msgstr "" -#: gnu/packages/guile.scm:1418 +#: gnu/packages/guile.scm:1554 msgid "Generate C bindings for Guile" msgstr "Génère des liaisons C pour Guile" -#: gnu/packages/guile.scm:1419 +#: gnu/packages/guile.scm:1555 msgid "" "G-Wrap is a tool and Guile library for generating function\n" "wrappers for inter-language calls. It currently only supports generating Guile\n" @@ -6968,11 +7409,11 @@ msgid "" "provides access to that interface and its types from the Scheme level." msgstr "" -#: gnu/packages/guile.scm:1456 +#: gnu/packages/guile.scm:1597 msgid "Guile database abstraction layer" msgstr "Couche d'abstraction de base de données pour Guile" -#: gnu/packages/guile.scm:1459 +#: gnu/packages/guile.scm:1600 msgid "" "guile-dbi is a library for Guile that provides a convenient interface to\n" "SQL databases. Database programming with guile-dbi is generic in that the same\n" @@ -6980,54 +7421,54 @@ msgid "" "It currently supports MySQL, Postgres and SQLite3." msgstr "" -#: gnu/packages/guile.scm:1485 +#: gnu/packages/guile.scm:1634 msgid "Guile DBI driver for SQLite" msgstr "" -#: gnu/packages/guile.scm:1488 +#: gnu/packages/guile.scm:1637 msgid "" "guile-dbi is a library for Guile that provides a convenient interface to\n" "SQL databases. This package implements the interface for SQLite." msgstr "" -#: gnu/packages/guile.scm:1534 +#: gnu/packages/guile.scm:1683 msgid "DSV module for Guile" msgstr "Module DSV pour Guile" -#: gnu/packages/guile.scm:1536 +#: gnu/packages/guile.scm:1685 msgid "" "Guile-DSV is a GNU Guile module for working with the\n" "delimiter-separated values (DSV) data format. Guile-DSV supports the\n" "Unix-style DSV format and RFC 4180 format." msgstr "" -#: gnu/packages/guile.scm:1563 +#: gnu/packages/guile.scm:1712 msgid "XOSD bindings for Guile" msgstr "" -#: gnu/packages/guile.scm:1565 +#: gnu/packages/guile.scm:1714 msgid "" "Guile-XOSD provides Guile bindings for @code{libxosd},\n" "@uref{http://sourceforge.net/projects/libxosd/, the X On Screen Display\n" "library}." msgstr "" -#: gnu/packages/guile.scm:1588 +#: gnu/packages/guile.scm:1737 msgid "Evaluate code in a running Guile process" msgstr "" -#: gnu/packages/guile.scm:1590 +#: gnu/packages/guile.scm:1739 msgid "" "Guile-Daemon is a small Guile program that loads your initial\n" "configuration file, and then reads and evaluates Guile expressions that\n" "you send to a FIFO file." msgstr "" -#: gnu/packages/guile.scm:1621 +#: gnu/packages/guile.scm:1771 msgid "CommonMark parser for Guile" msgstr "" -#: gnu/packages/guile.scm:1623 +#: gnu/packages/guile.scm:1773 msgid "" "guile-commonmark is a library for parsing CommonMark, a fully specified\n" "variant of Markdown. The library is written in Guile Scheme and is designed\n" @@ -7036,11 +7477,11 @@ msgid "" "is no support for parsing block and inline level HTML." msgstr "" -#: gnu/packages/guile.scm:1726 +#: gnu/packages/guile.scm:1804 msgid "Structured access to bytevector contents for Guile" msgstr "" -#: gnu/packages/guile.scm:1728 +#: gnu/packages/guile.scm:1806 msgid "" "Guile bytestructures offers a system imitating the type system\n" "of the C programming language, to be used on bytevectors. C's type\n" @@ -7049,21 +7490,21 @@ msgid "" "type system, elevating types to first-class status." msgstr "" -#: gnu/packages/guile.scm:1772 +#: gnu/packages/guile.scm:1850 msgid "Spell-checking from Guile" msgstr "" -#: gnu/packages/guile.scm:1774 +#: gnu/packages/guile.scm:1852 msgid "" "guile-aspell is a Guile Scheme library for comparing a string against a\n" "dictionary and suggesting spelling corrections." msgstr "" -#: gnu/packages/guile.scm:1828 +#: gnu/packages/guile.scm:1901 msgid "Extend Bash using Guile" msgstr "" -#: gnu/packages/guile.scm:1830 +#: gnu/packages/guile.scm:1903 #, scheme-format msgid "" "Guile-Bash provides a shared library and set of Guile modules,\n" @@ -7088,11 +7529,11 @@ msgid "" "and then run @command{scm example.scm}." msgstr "" -#: gnu/packages/guile.scm:1877 +#: gnu/packages/guile.scm:1950 msgid "Asynchronous actor model library for Guile" msgstr "" -#: gnu/packages/guile.scm:1879 +#: gnu/packages/guile.scm:1952 msgid "" "GNU 8sync (pronounced \"eight-sync\") is an asynchronous programming\n" "library for GNU Guile based on the actor model.\n" @@ -7100,11 +7541,11 @@ msgid "" "Note that 8sync is only available for Guile 2.2." msgstr "" -#: gnu/packages/guile.scm:1902 +#: gnu/packages/guile.scm:1975 msgid "Lightweight concurrency facility for Guile" msgstr "" -#: gnu/packages/guile.scm:1904 +#: gnu/packages/guile.scm:1977 msgid "" "Fibers is a Guile library that implements a a lightweight concurrency\n" "facility, inspired by systems like Concurrent ML, Go, and Erlang. A fiber is\n" @@ -7118,21 +7559,21 @@ msgid "" "is not available for Guile 2.0." msgstr "" -#: gnu/packages/guile.scm:1959 +#: gnu/packages/guile.scm:2015 msgid "Guile bindings for libgit2" msgstr "Liaisons Guile pour libgit2" -#: gnu/packages/guile.scm:1961 +#: gnu/packages/guile.scm:2017 msgid "" "This package provides Guile bindings to libgit2, a library to\n" "manipulate repositories of the Git version control system." msgstr "" -#: gnu/packages/guile.scm:1996 +#: gnu/packages/guile.scm:2042 msgid "General-purpose syntax highlighter for GNU Guile" msgstr "" -#: gnu/packages/guile.scm:1997 +#: gnu/packages/guile.scm:2043 msgid "" "Guile-syntax-highlight is a general-purpose syntax\n" "highlighting library for GNU Guile. It can parse code written in various\n" @@ -7140,29 +7581,62 @@ msgid "" "HTML (via SXML) or any other format for rendering." msgstr "" -#: gnu/packages/guile.scm:2028 +#: gnu/packages/guile.scm:2069 msgid "S-expression based json reader/writer for Guile" msgstr "" -#: gnu/packages/guile.scm:2029 +#: gnu/packages/guile.scm:2070 msgid "" "guile-sjson is a json reader/writer for Guile.\n" "It has a nice, simple s-expression based syntax." msgstr "" -#: gnu/packages/guile.scm:2073 +#: gnu/packages/guile.scm:2114 msgid "Colorized REPL for Guile" msgstr "" -#: gnu/packages/guile.scm:2075 +#: gnu/packages/guile.scm:2116 msgid "Guile-colorized provides you with a colorized REPL for GNU Guile." msgstr "" -#: gnu/packages/imagemagick.scm:109 gnu/packages/imagemagick.scm:220 +#: gnu/packages/guile.scm:2202 +msgid "Guile wrapper over ZeroMQ library" +msgstr "" + +#: gnu/packages/guile.scm:2204 +msgid "" +"This package provides a Guile programming interface to the ZeroMQ\n" +"messaging library." +msgstr "" +"Ce paquet fournit une interface de programmation Guile pour la bibliothèque\n" +"de messages ZeroMQ." + +#: gnu/packages/guile.scm:2329 +msgid "Guile kernel for the Jupyter Notebook" +msgstr "" + +#: gnu/packages/guile.scm:2331 +msgid "" +"This package provides a Guile 2.x kernel for the Jupyter Notebook. It\n" +"allows users to interact with the Guile REPL through Jupyter." +msgstr "" + +#: gnu/packages/guile.scm:2354 +msgid "SPARQL module for Guile" +msgstr "Module SPARQL pour Guile" + +#: gnu/packages/guile.scm:2355 +msgid "" +"This package provides the functionality to query a SPARQL\n" +"endpoint. Additionally, it provides an interface to write SPARQL queries\n" +"using S-expressions." +msgstr "" + +#: gnu/packages/imagemagick.scm:112 gnu/packages/imagemagick.scm:215 msgid "Create, edit, compose, or convert bitmap images" msgstr "" -#: gnu/packages/imagemagick.scm:111 +#: gnu/packages/imagemagick.scm:114 msgid "" "ImageMagick is a software suite to create, edit, compose, or convert\n" "bitmap images. It can read and write images in a variety of formats (over 100)\n" @@ -7172,11 +7646,11 @@ msgid "" "text, lines, polygons, ellipses and Bézier curves." msgstr "" -#: gnu/packages/imagemagick.scm:156 +#: gnu/packages/imagemagick.scm:161 msgid "Perl interface to ImageMagick" msgstr "" -#: gnu/packages/imagemagick.scm:157 +#: gnu/packages/imagemagick.scm:162 msgid "" "This Perl extension allows the reading, manipulation and\n" "writing of a large number of image file formats using the ImageMagick library.\n" @@ -7184,60 +7658,60 @@ msgid "" "script." msgstr "" -#: gnu/packages/imagemagick.scm:222 +#: gnu/packages/imagemagick.scm:217 msgid "" "GraphicsMagick provides a comprehensive collection of utilities,\n" "programming interfaces, and GUIs, to support file format conversion, image\n" "processing, and 2D vector rendering." msgstr "" -#: gnu/packages/image.scm:94 +#: gnu/packages/image.scm:99 msgid "Library for handling PNG files" msgstr "Bibliothèque pour manipuler des fichiers PNG" -#: gnu/packages/image.scm:96 +#: gnu/packages/image.scm:101 msgid "" "Libpng is the official PNG (Portable Network Graphics) reference\n" "library. It supports almost all PNG features and is extensible." msgstr "" -#: gnu/packages/image.scm:160 +#: gnu/packages/image.scm:165 msgid "APNG patch for libpng" msgstr "" -#: gnu/packages/image.scm:162 +#: gnu/packages/image.scm:167 msgid "" "APNG (Animated Portable Network Graphics) is an unofficial\n" "extension of the APNG (Portable Network Graphics) format.\n" "APNG patch provides APNG support to libpng." msgstr "" -#: gnu/packages/image.scm:202 +#: gnu/packages/image.scm:207 msgid "Read and write PNG images" msgstr "" -#: gnu/packages/image.scm:204 +#: gnu/packages/image.scm:209 msgid "" "This package provides an easy and simple way to read, write and display\n" "bitmap images stored in the PNG format. It can read and write both files and\n" "in-memory raw vectors." msgstr "" -#: gnu/packages/image.scm:239 +#: gnu/packages/image.scm:244 msgid "Utility to compress PNG files" msgstr "" -#: gnu/packages/image.scm:240 +#: gnu/packages/image.scm:245 msgid "" "pngcrusqh is an optimizer for PNG (Portable Network Graphics)\n" "files. It can compress them as much as 40% losslessly." msgstr "" -#: gnu/packages/image.scm:259 +#: gnu/packages/image.scm:264 msgid "Library for handling JPEG files" msgstr "Bibliothèque de manipulation des fichiers JPEG" -#: gnu/packages/image.scm:261 +#: gnu/packages/image.scm:266 msgid "" "Libjpeg implements JPEG image encoding, decoding, and transcoding.\n" "JPEG is a standardized compression method for full-color and gray-scale\n" @@ -7246,32 +7720,32 @@ msgid "" "image files in PBMPLUS PPM/PGM, GIF, BMP, and Targa file formats." msgstr "" -#: gnu/packages/image.scm:326 +#: gnu/packages/image.scm:331 msgid "Implementation of the JPEG XR standard" msgstr "Implémentation du standard JPEG XR" -#: gnu/packages/image.scm:327 +#: gnu/packages/image.scm:332 msgid "" "JPEG XR is an approved ISO/IEC International standard (its\n" "official designation is ISO/IEC 29199-2). This library is an implementation of that standard." msgstr "" -#: gnu/packages/image.scm:350 +#: gnu/packages/image.scm:355 msgid "Optimize JPEG images" msgstr "" -#: gnu/packages/image.scm:352 +#: gnu/packages/image.scm:357 msgid "" "jpegoptim provides lossless optimization (based on optimizing\n" "the Huffman tables) and \"lossy\" optimization based on setting\n" "maximum quality factor." msgstr "" -#: gnu/packages/image.scm:377 +#: gnu/packages/image.scm:382 msgid "Library for handling Mac OS icns resource files" msgstr "Bibliothèque de manipulation des fichiers de resources d'icones Mac OS" -#: gnu/packages/image.scm:379 +#: gnu/packages/image.scm:384 msgid "" "Libicns is a library for the manipulation of Mac OS IconFamily resource\n" "type files (ICNS). @command{icns2png} and @command{png2icns} are provided to\n" @@ -7281,11 +7755,11 @@ msgid "" "extracting icontainer icon files." msgstr "" -#: gnu/packages/image.scm:418 +#: gnu/packages/image.scm:419 msgid "Library for handling TIFF files" msgstr "Bibliothèque de manipulation de fichiers TIFF" -#: gnu/packages/image.scm:420 +#: gnu/packages/image.scm:421 msgid "" "Libtiff provides support for the Tag Image File Format (TIFF), a format\n" "used for storing image data.\n" @@ -7293,11 +7767,11 @@ msgid "" "collection of tools for doing simple manipulations of TIFF images." msgstr "" -#: gnu/packages/image.scm:472 +#: gnu/packages/image.scm:473 msgid "Library and tools for image processing and analysis" msgstr "" -#: gnu/packages/image.scm:474 +#: gnu/packages/image.scm:475 msgid "" "Leptonica is a C library and set of command-line tools for efficient\n" "image processing and image analysis operations. It supports rasterop, affine\n" @@ -7307,11 +7781,11 @@ msgid "" "arithmetic ops." msgstr "" -#: gnu/packages/image.scm:500 +#: gnu/packages/image.scm:497 msgid "Decoder of the JBIG2 image compression format" msgstr "" -#: gnu/packages/image.scm:502 +#: gnu/packages/image.scm:499 msgid "" "JBIG2 is designed for lossy or lossless encoding of 'bilevel' (1-bit\n" "monochrome) images at moderately high resolution, and in particular scanned\n" @@ -7324,11 +7798,11 @@ msgid "" "work." msgstr "" -#: gnu/packages/image.scm:537 +#: gnu/packages/image.scm:534 msgid "JPEG 2000 codec" msgstr "" -#: gnu/packages/image.scm:539 +#: gnu/packages/image.scm:536 msgid "" "The OpenJPEG library is a JPEG 2000 codec written in C. It has\n" "been developed in order to promote the use of JPEG 2000, the new\n" @@ -7341,11 +7815,11 @@ msgid "" "error-resilience, a Java-viewer for j2k-images, ..." msgstr "" -#: gnu/packages/image.scm:602 +#: gnu/packages/image.scm:603 msgid "Tools and library for working with GIF images" msgstr "Outils et bibliothèque pour travailler avec les images GIF" -#: gnu/packages/image.scm:604 +#: gnu/packages/image.scm:605 msgid "" "GIFLIB is a library for reading and writing GIF images. It is API and\n" "ABI compatible with libungif which was in wide use while the LZW compression\n" @@ -7353,19 +7827,19 @@ msgid "" "compose, and analyze GIF images." msgstr "" -#: gnu/packages/image.scm:626 +#: gnu/packages/image.scm:627 msgid "GIF decompression library" msgstr "Bibliothèque de décompression GIF" -#: gnu/packages/image.scm:628 +#: gnu/packages/image.scm:629 msgid "libungif is the old GIF decompression library by the GIFLIB project." msgstr "" -#: gnu/packages/image.scm:657 +#: gnu/packages/image.scm:658 msgid "Loading, saving, rendering and manipulating image files" msgstr "" -#: gnu/packages/image.scm:659 +#: gnu/packages/image.scm:660 msgid "" "Imlib2 is a library that does image file loading and saving as well as\n" "rendering, manipulation, arbitrary polygon support, etc.\n" @@ -7378,32 +7852,32 @@ msgid "" "more modular, simple, and flexible." msgstr "" -#: gnu/packages/image.scm:691 +#: gnu/packages/image.scm:692 msgid "Wrapper library for imlib2" msgstr "" -#: gnu/packages/image.scm:693 +#: gnu/packages/image.scm:694 msgid "" "Giblib is a simple library which wraps imlib2's context API, avoiding\n" "all the context_get/set calls, adds fontstyles to the truetype renderer and\n" "supplies a generic doubly-linked list and some string functions." msgstr "" -#: gnu/packages/image.scm:735 +#: gnu/packages/image.scm:775 msgid "Library for handling popular graphics image formats" msgstr "" -#: gnu/packages/image.scm:737 +#: gnu/packages/image.scm:777 msgid "" "FreeImage is a library for developers who would like to support popular\n" "graphics image formats like PNG, BMP, JPEG, TIFF and others." msgstr "" -#: gnu/packages/image.scm:792 +#: gnu/packages/image.scm:839 msgid "Computer vision library" msgstr "" -#: gnu/packages/image.scm:794 +#: gnu/packages/image.scm:841 msgid "" "VIGRA stands for Vision with Generic Algorithms. It is an image\n" "processing and analysis library that puts its main emphasis on customizable\n" @@ -7411,11 +7885,22 @@ msgid "" "multi-dimensional image processing." msgstr "" -#: gnu/packages/image.scm:826 +#: gnu/packages/image.scm:874 +msgid "C interface to the VIGRA computer vision library" +msgstr "Interface C à la bibliothèque de vision par ordinateur VIGRA" + +#: gnu/packages/image.scm:876 +msgid "" +"This package provides a C interface to the VIGRA C++ computer vision\n" +"library. It is designed primarily to ease the implementation of higher-level\n" +"language bindings to VIGRA." +msgstr "" + +#: gnu/packages/image.scm:916 msgid "Lossless and lossy image compression" msgstr "" -#: gnu/packages/image.scm:828 +#: gnu/packages/image.scm:918 msgid "" "WebP is a new image format that provides lossless and lossy compression\n" "for images. WebP lossless images are 26% smaller in size compared to\n" @@ -7427,52 +7912,52 @@ msgid "" "channels." msgstr "" -#: gnu/packages/image.scm:856 +#: gnu/packages/image.scm:946 msgid "Library for handling MNG files" msgstr "Bibliothèque de manipulation des fichiers MNG" -#: gnu/packages/image.scm:858 +#: gnu/packages/image.scm:948 msgid "Libmng is the MNG (Multiple-image Network Graphics) reference library." msgstr "" -#: gnu/packages/image.scm:886 +#: gnu/packages/image.scm:976 msgid "Library and command-line utility to manage image metadata" msgstr "" -#: gnu/packages/image.scm:888 +#: gnu/packages/image.scm:978 msgid "" "Exiv2 is a C++ library and a command line utility to manage image\n" "metadata. It provides fast and easy read and write access to the Exif, IPTC\n" "and XMP metadata of images in various formats." msgstr "" -#: gnu/packages/image.scm:928 +#: gnu/packages/image.scm:1018 msgid "Library for manipulating many image formats" msgstr "" -#: gnu/packages/image.scm:929 +#: gnu/packages/image.scm:1019 msgid "" "Developer's Image Library (DevIL) is a library to develop\n" "applications with support for many types of images. DevIL can load, save,\n" "convert, manipulate, filter and display a wide variety of image formats." msgstr "" -#: gnu/packages/image.scm:949 +#: gnu/packages/image.scm:1039 msgid "JPEG-2000 library" msgstr "" -#: gnu/packages/image.scm:950 +#: gnu/packages/image.scm:1040 msgid "" "The JasPer Project is an initiative to provide a reference\n" "implementation of the codec specified in the JPEG-2000 Part-1 standard (i.e.,\n" "ISO/IEC 15444-1)." msgstr "" -#: gnu/packages/image.scm:980 +#: gnu/packages/image.scm:1070 msgid "Scaling, colorspace conversion, and dithering library" msgstr "" -#: gnu/packages/image.scm:981 +#: gnu/packages/image.scm:1071 msgid "" "Zimg implements the commonly required image processing basics\n" "of scaling, colorspace conversion, and depth conversion. A simple API enables\n" @@ -7480,11 +7965,11 @@ msgid "" "the programmer." msgstr "" -#: gnu/packages/image.scm:1014 +#: gnu/packages/image.scm:1104 msgid "Perceptual image comparison utility" msgstr "" -#: gnu/packages/image.scm:1015 +#: gnu/packages/image.scm:1105 msgid "" "PerceptualDiff visually compares two images to determine\n" "whether they look alike. It uses a computational model of the human visual\n" @@ -7492,35 +7977,33 @@ msgid "" "differences in file encoding, image quality, and other small variations." msgstr "" -#: gnu/packages/image.scm:1055 +#: gnu/packages/image.scm:1145 msgid "Image and audio steganography" msgstr "" -#: gnu/packages/image.scm:1057 +#: gnu/packages/image.scm:1147 msgid "" "Steghide is a program to hide data in various kinds of image and audio\n" "files (known as @dfn{steganography}). Neither color nor sample frequencies are\n" "changed, making the embedding resistant against first-order statistical tests." msgstr "" -#: gnu/packages/image.scm:1082 +#: gnu/packages/image.scm:1172 msgid "Image library for Extempore" msgstr "" -#: gnu/packages/image.scm:1084 +#: gnu/packages/image.scm:1174 msgid "" "This package is a collection of assorted single-file libraries. Of\n" "all included libraries only the image loading and decoding library is\n" "installed as @code{stb_image}." msgstr "" -#: gnu/packages/image.scm:1112 -msgid "" -"Optimizer that recompresses PNG image files to a\n" -"smaller size" +#: gnu/packages/image.scm:1203 +msgid "Optimizer that recompresses PNG image files to a smaller size" msgstr "" -#: gnu/packages/image.scm:1114 +#: gnu/packages/image.scm:1204 msgid "" "OptiPNG is a PNG optimizer that recompresses image\n" "files to a smaller size, without losing any information. This program\n" @@ -7528,11 +8011,11 @@ msgid "" "PNG, and performs PNG integrity checks and corrections." msgstr "" -#: gnu/packages/image.scm:1139 +#: gnu/packages/image.scm:1229 msgid "SIMD-accelerated JPEG image handling library" msgstr "" -#: gnu/packages/image.scm:1140 +#: gnu/packages/image.scm:1230 msgid "" "libjpeg-turbo is a JPEG image codec that accelerates baseline\n" "JPEG compression and decompression using SIMD instructions: MMX on x86, SSE2 on\n" @@ -7545,11 +8028,11 @@ msgid "" "and decompress to 32-bit and big-endian pixel buffers (RGBX, XBGR, etc.)." msgstr "" -#: gnu/packages/image.scm:1188 +#: gnu/packages/image.scm:1278 msgid "Library for reading and writing files in the nifti-1 format" msgstr "" -#: gnu/packages/image.scm:1189 +#: gnu/packages/image.scm:1279 msgid "" "Niftilib is a set of i/o libraries for reading and writing\n" "files in the nifti-1 data format - a binary file format for storing\n" @@ -7557,14 +8040,79 @@ msgid "" "(fMRI) brain images." msgstr "" -#: gnu/packages/image.scm:1235 +#: gnu/packages/image.scm:1318 msgid "Color picker" msgstr "" -#: gnu/packages/image.scm:1236 +#: gnu/packages/image.scm:1319 msgid "Gpick is an advanced color picker and palette editing tool." msgstr "" +#: gnu/packages/image.scm:1335 +msgid "IPTC metadata manipulation library" +msgstr "Bibliothèque de manipulation de métadonnées IPTC" + +#: gnu/packages/image.scm:1336 +msgid "" +"Libiptcdata is a C library for manipulating the International\n" +"Press Telecommunications Council (IPTC) metadata stored within multimedia files\n" +"such as images. This metadata can include captions and keywords, often used by\n" +"popular photo management applications. The library provides routines for\n" +"parsing, viewing, modifying, and saving this metadata." +msgstr "" + +#: gnu/packages/image.scm:1372 +msgid "Powerful yet simple to use screenshot software" +msgstr "" + +#: gnu/packages/image.scm:1373 +msgid "" +"Flameshot is a screenshot program.\n" +"Features:\n" +"\n" +"@itemize\n" +"@item Customizable appearance.\n" +"@item Easy to use.\n" +"@item In-app screenshot edition.\n" +"@item DBus interface.\n" +"@item Upload to Imgur.\n" +"@end itemize\n" +msgstr "" + +#: gnu/packages/image.scm:1399 +msgid "Read and write JPEG images with R" +msgstr "" + +#: gnu/packages/image.scm:1400 +msgid "" +"This package provides a way to read, write and display bitmap\n" +"images stored in the JPEG format with R. It can read and write both files and\n" +"in-memory raw vectors." +msgstr "" + +#: gnu/packages/image.scm:1434 +msgid "Edit GIF images and animations" +msgstr "" + +#: gnu/packages/image.scm:1435 +msgid "" +"Gifsicle is a command-line GIF image manipulation tool that:\n" +"\n" +"@itemize\n" +"@item Provides a batch mode for changing GIFs in place.\n" +"@item Prints detailed information about GIFs, including comments.\n" +"@item Control over interlacing, comments, looping, transparency, etc.\n" +"@item Creates well-behaved GIFs: removes redundant colors, only uses local color\n" +"tables, etc.\n" +"@item Shrinks colormaps and change images to use the Web-safe palette.\n" +"@item Optimizes GIF animations, or unoptimizes them for easier editing.\n" +"@end itemize\n" +"\n" +"Two other programs are included with Gifsicle: @command{gifview} is a\n" +"lightweight animated-GIF viewer, and @command{gifdiff} compares two GIFs for\n" +"identical visual appearance." +msgstr "" + #: gnu/packages/image-viewers.scm:91 msgid "Fast and light imlib2-based image viewer" msgstr "" @@ -7578,11 +8126,11 @@ msgid "" "actions." msgstr "" -#: gnu/packages/image-viewers.scm:143 +#: gnu/packages/image-viewers.scm:154 msgid "Lightweight GTK+ based image viewer" msgstr "" -#: gnu/packages/image-viewers.scm:145 +#: gnu/packages/image-viewers.scm:156 msgid "" "Geeqie is a lightweight GTK+ based image viewer for Unix like operating\n" "systems. It features: EXIF, IPTC and XMP metadata browsing and editing\n" @@ -7592,21 +8140,21 @@ msgid "" "collection. Geeqie was initially based on GQview." msgstr "" -#: gnu/packages/image-viewers.scm:170 +#: gnu/packages/image-viewers.scm:181 msgid "Simple and fast image viewer for X" msgstr "" -#: gnu/packages/image-viewers.scm:171 +#: gnu/packages/image-viewers.scm:182 msgid "" "gpicview is a lightweight GTK+ 2.x based image viewer.\n" "It is the default image viewer on LXDE desktop environment." msgstr "" -#: gnu/packages/image-viewers.scm:202 +#: gnu/packages/image-viewers.scm:223 msgid "Simple X Image Viewer" msgstr "" -#: gnu/packages/image-viewers.scm:204 +#: gnu/packages/image-viewers.scm:225 msgid "" "sxiv is an alternative to feh and qiv. Its primary goal is to\n" "provide the most basic features required for fast image viewing. It has\n" @@ -7615,11 +8163,11 @@ msgid "" "it and customize it for your needs." msgstr "" -#: gnu/packages/image-viewers.scm:251 +#: gnu/packages/image-viewers.scm:265 msgid "Simple, fast and elegant image viewer" msgstr "" -#: gnu/packages/image-viewers.scm:252 +#: gnu/packages/image-viewers.scm:266 msgid "" "Viewnior is an image viewer program. Created to be simple,\n" "fast and elegant. Its minimalistic interface provides more screenspace for\n" @@ -7637,21 +8185,21 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/image-viewers.scm:320 +#: gnu/packages/image-viewers.scm:334 msgid "Render images in the terminal" msgstr "" -#: gnu/packages/image-viewers.scm:322 +#: gnu/packages/image-viewers.scm:336 msgid "" "Catimg is a little program that prints images in the terminal.\n" "It supports JPEG, PNG and GIF formats." msgstr "" -#: gnu/packages/image-viewers.scm:373 +#: gnu/packages/image-viewers.scm:387 msgid "High dynamic range (HDR) imaging application" msgstr "" -#: gnu/packages/image-viewers.scm:375 +#: gnu/packages/image-viewers.scm:389 msgid "" "Luminance HDR (formerly QtPFSGui) is a graphical user interface\n" "application that aims to provide a workflow for high dynamic range (HDR)\n" @@ -7667,11 +8215,11 @@ msgid "" "@end itemize\n" msgstr "" -#: gnu/packages/image-viewers.scm:422 +#: gnu/packages/image-viewers.scm:437 msgid "Image viewer for comics" msgstr "" -#: gnu/packages/image-viewers.scm:423 +#: gnu/packages/image-viewers.scm:438 msgid "" "MComix is a customizable image viewer that specializes as\n" "a comic and manga reader. It supports a variety of container formats\n" @@ -7691,11 +8239,11 @@ msgstr "" "Inkscape est un éditeur graphique vectoriel. Ce qui différencie Inkscape\n" "est son utilisation du format SVG, un standard W3C basé sur XML, comme format natif." -#: gnu/packages/jemalloc.scm:60 +#: gnu/packages/jemalloc.scm:64 msgid "General-purpose scalable concurrent malloc implementation" msgstr "" -#: gnu/packages/jemalloc.scm:62 +#: gnu/packages/jemalloc.scm:66 msgid "" "This library providing a malloc(3) implementation that emphasizes\n" "fragmentation avoidance and scalable concurrency support." @@ -7732,11 +8280,11 @@ msgstr "" msgid "Clone of the Motif toolkit for the X window system." msgstr "" -#: gnu/packages/libreoffice.scm:95 +#: gnu/packages/libreoffice.scm:98 msgid "General purpose formula parser and interpreter" msgstr "" -#: gnu/packages/libreoffice.scm:96 +#: gnu/packages/libreoffice.scm:99 msgid "" "Ixion is a library for calculating the results of formula\n" "expressions stored in multiple named targets, or \"cells\". The cells can\n" @@ -7744,11 +8292,11 @@ msgid "" "their dependencies automatically upon calculation." msgstr "" -#: gnu/packages/libreoffice.scm:122 +#: gnu/packages/libreoffice.scm:126 msgid "File import filter library for spreadsheet documents" msgstr "" -#: gnu/packages/libreoffice.scm:123 +#: gnu/packages/libreoffice.scm:127 msgid "" "Orcus is a library that provides a collection of standalone\n" "file processing filters. It is currently focused on providing filters for\n" @@ -7758,33 +8306,33 @@ msgid "" "CSV, CSS and XML." msgstr "" -#: gnu/packages/libreoffice.scm:157 +#: gnu/packages/libreoffice.scm:161 msgid "Document importer for office suites" msgstr "" -#: gnu/packages/libreoffice.scm:158 +#: gnu/packages/libreoffice.scm:162 msgid "" "Librevenge is a base library for writing document import\n" "filters. It has interfaces for text documents, vector graphics,\n" "spreadsheets and presentations." msgstr "" -#: gnu/packages/libreoffice.scm:183 +#: gnu/packages/libreoffice.scm:187 msgid "Library for importing WordPerfect documents" msgstr "" -#: gnu/packages/libreoffice.scm:184 +#: gnu/packages/libreoffice.scm:188 msgid "" "Libwpd is a C++ library designed to help process\n" "WordPerfect documents. It is most commonly used to import such documents\n" "into other word processors." msgstr "" -#: gnu/packages/libreoffice.scm:216 +#: gnu/packages/libreoffice.scm:221 msgid "Library for import of reflowable e-book formats" msgstr "" -#: gnu/packages/libreoffice.scm:217 +#: gnu/packages/libreoffice.scm:222 msgid "" "Libe-book is a library and a set of tools for reading and\n" "converting various reflowable e-book formats. Currently supported are:\n" @@ -7794,62 +8342,73 @@ msgid "" "ZVR (simple compressed text format)." msgstr "" -#: gnu/packages/libreoffice.scm:246 +#: gnu/packages/libreoffice.scm:252 +msgid "EPUB generator library for librevenge" +msgstr "" + +#: gnu/packages/libreoffice.scm:253 +msgid "" +"libepubgen is an EPUB generator for librevenge. It supports\n" +"librevenge's text document interface and--currently in a very limited\n" +"way--presentation and vector drawing interfaces." +msgstr "" + +#: gnu/packages/libreoffice.scm:279 msgid "Library and tools for the WordPerfect Graphics format" msgstr "" -#: gnu/packages/libreoffice.scm:247 +#: gnu/packages/libreoffice.scm:280 msgid "" "The libwpg project provides a library and tools for\n" "working with graphics in the WPG (WordPerfect Graphics) format." msgstr "" -#: gnu/packages/libreoffice.scm:288 +#: gnu/packages/libreoffice.scm:321 msgid "CMIS client library" msgstr "" -#: gnu/packages/libreoffice.scm:289 +#: gnu/packages/libreoffice.scm:322 msgid "" "LibCMIS is a C++ client library for the CMIS interface. It\n" "allows C++ applications to connect to any ECM behaving as a CMIS server such\n" "as Alfresco or Nuxeo." msgstr "" -#: gnu/packages/libreoffice.scm:320 +#: gnu/packages/libreoffice.scm:353 msgid "Library for parsing the AbiWord format" msgstr "Bibliothèque d'analyse du format AbiWord" -#: gnu/packages/libreoffice.scm:321 +#: gnu/packages/libreoffice.scm:354 msgid "" "Libabw is a library that parses the file format of\n" "AbiWord documents." msgstr "" -#: gnu/packages/libreoffice.scm:352 +#: gnu/packages/libreoffice.scm:385 msgid "Library for parsing the CorelDRAW format" msgstr "" -#: gnu/packages/libreoffice.scm:353 +#: gnu/packages/libreoffice.scm:386 msgid "" "Libcdr is a library that parses the file format of\n" "CorelDRAW documents of all versions." msgstr "" -#: gnu/packages/libreoffice.scm:385 +#: gnu/packages/libreoffice.scm:418 msgid "Library for parsing the Apple Keynote format" msgstr "" -#: gnu/packages/libreoffice.scm:386 +#: gnu/packages/libreoffice.scm:419 msgid "" "Libetonyek is a library that parses the file format of\n" "Apple Keynote documents. It currently supports Keynote versions 2 to 5." msgstr "" -#: gnu/packages/libreoffice.scm:409 +#: gnu/packages/libreoffice.scm:443 msgid "Library to access tags for identifying languages" msgstr "Bibliothèque pour accéder aux étiquettes qui identifient les langues" -#: gnu/packages/libreoffice.scm:410 +#: gnu/packages/libreoffice.scm:444 msgid "" "Liblangtag implements an interface to work with tags\n" "for identifying languages as described in RFC 5646. It supports the\n" @@ -7858,62 +8417,62 @@ msgid "" "standard 21.0.2." msgstr "" -#: gnu/packages/libreoffice.scm:430 +#: gnu/packages/libreoffice.scm:464 msgid "Text Categorization library" msgstr "Bibliothèque de catégorisation de textes" -#: gnu/packages/libreoffice.scm:431 +#: gnu/packages/libreoffice.scm:465 msgid "" "Libexttextcat is an N-Gram-Based Text Categorization\n" "library primarily intended for language guessing." msgstr "" -#: gnu/packages/libreoffice.scm:461 +#: gnu/packages/libreoffice.scm:495 msgid "Library for parsing the FreeHand format" msgstr "" -#: gnu/packages/libreoffice.scm:462 +#: gnu/packages/libreoffice.scm:496 msgid "" "Libfreehand is a library that parses the file format of\n" "Aldus/Macromedia/Adobe FreeHand documents." msgstr "" -#: gnu/packages/libreoffice.scm:488 +#: gnu/packages/libreoffice.scm:522 msgid "Library for parsing the Microsoft Publisher format" msgstr "" -#: gnu/packages/libreoffice.scm:489 +#: gnu/packages/libreoffice.scm:523 msgid "" "Libmspub is a library that parses the file format of\n" "Microsoft Publisher documents of all versions." msgstr "" -#: gnu/packages/libreoffice.scm:514 +#: gnu/packages/libreoffice.scm:548 msgid "Library for parsing the PageMaker format" msgstr "" -#: gnu/packages/libreoffice.scm:515 +#: gnu/packages/libreoffice.scm:549 msgid "" "Libpagemaker is a library that parses the file format of\n" "Aldus/Adobe PageMaker documents. Currently it only understands documents\n" "created by PageMaker version 6.x and 7." msgstr "" -#: gnu/packages/libreoffice.scm:545 +#: gnu/packages/libreoffice.scm:579 msgid "Library for parsing the Microsoft Visio format" msgstr "" -#: gnu/packages/libreoffice.scm:546 +#: gnu/packages/libreoffice.scm:580 msgid "" "Libvisio is a library that parses the file format of\n" "Microsoft Visio documents of all versions." msgstr "" -#: gnu/packages/libreoffice.scm:574 +#: gnu/packages/libreoffice.scm:608 msgid "ODF (Open Document Format) library" msgstr "" -#: gnu/packages/libreoffice.scm:575 +#: gnu/packages/libreoffice.scm:609 msgid "" "Libodfgen is a library for generating documents in the\n" "Open Document Format (ODF). It provides generator implementations for all\n" @@ -7921,49 +8480,49 @@ msgid "" "text documents, vector drawings, presentations and spreadsheets." msgstr "" -#: gnu/packages/libreoffice.scm:602 +#: gnu/packages/libreoffice.scm:636 msgid "Import library for some old Macintosh text documents" msgstr "" -#: gnu/packages/libreoffice.scm:603 +#: gnu/packages/libreoffice.scm:637 msgid "" "Libmwaw contains some import filters for old Macintosh\n" "text documents (MacWrite, ClarisWorks, ... ) and for some graphics and\n" "spreadsheet documents." msgstr "" -#: gnu/packages/libreoffice.scm:626 +#: gnu/packages/libreoffice.scm:660 msgid "Provides LibreOffice support for old StarOffice documents" msgstr "" -#: gnu/packages/libreoffice.scm:627 +#: gnu/packages/libreoffice.scm:661 msgid "" "@code{libstaroffice} is an import filter for the document formats\n" "from the old StarOffice (.sdc, .sdw, ...)." msgstr "" -#: gnu/packages/libreoffice.scm:652 +#: gnu/packages/libreoffice.scm:686 msgid "Import library for Microsoft Works text documents" msgstr "" -#: gnu/packages/libreoffice.scm:653 +#: gnu/packages/libreoffice.scm:687 msgid "" "Libwps is a library for importing files in the Microsoft\n" "Works word processor file format." msgstr "" -#: gnu/packages/libreoffice.scm:680 +#: gnu/packages/libreoffice.scm:714 msgid "Parses file format of Zoner Callisto/Draw documents" msgstr "" -#: gnu/packages/libreoffice.scm:681 +#: gnu/packages/libreoffice.scm:715 msgid "" "Libzmf is a library that parses the file format of Zoner\n" "Callisto/Draw documents. Currently it only understands documents created by\n" "Zoner Draw version 4 and 5." msgstr "" -#: gnu/packages/libreoffice.scm:716 +#: gnu/packages/libreoffice.scm:744 msgid "" "Hunspell is a spell checker and morphological analyzer\n" "library and program designed for languages with rich morphology and complex\n" @@ -7971,49 +8530,59 @@ msgid "" msgstr "" #. TRANSLATORS: In French, this is "Français classique". -#: gnu/packages/libreoffice.scm:779 +#: gnu/packages/libreoffice.scm:807 msgid "Hunspell dictionary for ``classic'' French (recommended)" msgstr "" #. TRANSLATORS: In French, this is "Français moderne". -#: gnu/packages/libreoffice.scm:784 +#: gnu/packages/libreoffice.scm:812 msgid "Hunspell dictionary for ``modern'' French" msgstr "" -#: gnu/packages/libreoffice.scm:788 +#: gnu/packages/libreoffice.scm:816 msgid "Hunspell dictionary for the post @dfn{1990 réforme} French" msgstr "" -#: gnu/packages/libreoffice.scm:792 +#: gnu/packages/libreoffice.scm:820 msgid "Hunspell dictionary for all variants of French" msgstr "" -#: gnu/packages/libreoffice.scm:810 +#: gnu/packages/libreoffice.scm:838 msgid "Hyphenation library" msgstr "Bibliothèque de césures" -#: gnu/packages/libreoffice.scm:811 +#: gnu/packages/libreoffice.scm:839 msgid "" "Hyphen is a hyphenation library using TeX hyphenation\n" "patterns, which are pre-processed by a perl script." msgstr "" -#: gnu/packages/libreoffice.scm:834 +#: gnu/packages/libreoffice.scm:862 msgid "Thesaurus" msgstr "" -#: gnu/packages/libreoffice.scm:835 +#: gnu/packages/libreoffice.scm:863 msgid "" "MyThes is a simple thesaurus that uses a structured text\n" "data file and an index file with binary search to look up words and phrases\n" "and to return information on pronunciations, meanings and synonyms." msgstr "" -#: gnu/packages/libreoffice.scm:1042 +#: gnu/packages/libreoffice.scm:891 +msgid "Library and tools for the QuarkXPress file format" +msgstr "" + +#: gnu/packages/libreoffice.scm:892 +msgid "" +"libqxp is a library and a set of tools for reading and\n" +"converting QuarkXPress file format. It supports versions 3.1 to 4.1." +msgstr "" + +#: gnu/packages/libreoffice.scm:1087 msgid "Office suite" msgstr "" -#: gnu/packages/libreoffice.scm:1043 +#: gnu/packages/libreoffice.scm:1088 msgid "" "LibreOffice is a comprehensive office suite. It contains\n" "a number of components: Writer, a word processor; Calc, a spreadsheet\n" @@ -8022,19 +8591,19 @@ msgid "" "Math for editing mathematics." msgstr "" -#: gnu/packages/linux.scm:211 +#: gnu/packages/linux.scm:215 msgid "GNU Linux-Libre kernel headers" msgstr "Fichiers d'en-tête pour le noyau GNU Linux-Libre" -#: gnu/packages/linux.scm:212 +#: gnu/packages/linux.scm:216 msgid "Headers of the Linux-Libre kernel." msgstr "Fichiers d'en-tête pour le noyau Linux-Libre." -#: gnu/packages/linux.scm:363 +#: gnu/packages/linux.scm:391 msgid "100% free redistribution of a cleaned Linux kernel" msgstr "Redistribution 100% libre d'un noyau Linux propre" -#: gnu/packages/linux.scm:365 +#: gnu/packages/linux.scm:393 msgid "" "GNU Linux-Libre is a free (as in freedom) variant of the Linux kernel.\n" "It has been modified to remove all non-free binary blobs." @@ -8042,11 +8611,11 @@ msgstr "" "GNU Linux-Libre est une variante libre du noyau Linux.\n" "Il a été modifié pour en retirer toutes les composantes non-libres." -#: gnu/packages/linux.scm:463 +#: gnu/packages/linux.scm:514 msgid "Pluggable authentication modules for Linux" msgstr "Modules d'authentification pour Linux" -#: gnu/packages/linux.scm:465 +#: gnu/packages/linux.scm:516 msgid "" "A *Free* project to implement OSF's RFC 86.0.\n" "Pluggable authentication modules are small shared object files that can\n" @@ -8059,11 +8628,11 @@ msgstr "" "d'un utilisateur au moment de la connexion. Ses principales fonctionnalités sont\n" "la reconfiguration locale et dynamique." -#: gnu/packages/linux.scm:507 +#: gnu/packages/linux.scm:558 msgid "Small utilities that use the proc file system" msgstr "Petits utilitaires utilisant le système de fichier proc" -#: gnu/packages/linux.scm:509 +#: gnu/packages/linux.scm:560 msgid "" "This PSmisc package is a set of some small useful utilities that\n" "use the proc file system. We're not about changing the world, but\n" @@ -8074,33 +8643,33 @@ msgstr "" "mais simplement de fournir de l'aide à l'administrateur système dans ses\n" "tâches les plus courantes." -#: gnu/packages/linux.scm:591 +#: gnu/packages/linux.scm:645 msgid "Collection of utilities for the Linux kernel" msgstr "Collection d'utilitaires pour le noyau Linux" -#: gnu/packages/linux.scm:592 +#: gnu/packages/linux.scm:646 msgid "" "Util-linux is a diverse collection of Linux kernel\n" "utilities. It provides dmesg and includes tools for working with file systems,\n" "block devices, UUIDs, TTYs, and many other tools." msgstr "" -#: gnu/packages/linux.scm:616 +#: gnu/packages/linux.scm:670 msgid "PERPETUAL DATE CONVERTER FROM GREGORIAN TO POEE CALENDAR" msgstr "" -#: gnu/packages/linux.scm:618 +#: gnu/packages/linux.scm:672 msgid "" "ddate displays the Discordian date and holidays of a given date.\n" "The Discordian calendar was made popular by the \"Illuminatus!\" trilogy\n" "by Robert Shea and Robert Anton Wilson." msgstr "" -#: gnu/packages/linux.scm:663 +#: gnu/packages/linux.scm:708 msgid "Utilities that give information about processes" msgstr "Utilitaires fournissant des informations sur les processus" -#: gnu/packages/linux.scm:665 +#: gnu/packages/linux.scm:710 msgid "" "Procps is the package that has a bunch of small useful utilities\n" "that give information about processes using the Linux /proc file system.\n" @@ -8112,27 +8681,27 @@ msgstr "" "Le paquet inclut les programmes ps, top, vmstat, w, kill, free,\n" "slabtop et skill." -#: gnu/packages/linux.scm:691 +#: gnu/packages/linux.scm:736 msgid "Tools for working with USB devices, such as lsusb" msgstr "Outils de manipulation des périphériques USB, tels que lsusb" -#: gnu/packages/linux.scm:693 +#: gnu/packages/linux.scm:738 msgid "Tools for working with USB devices, such as lsusb." msgstr "Outils de manipulation des périphériques USB, tels que lsusb." -#: gnu/packages/linux.scm:769 +#: gnu/packages/linux.scm:815 msgid "Creating and checking ext2/ext3/ext4 file systems" msgstr "Création et vérification de systèmes de fichiers ext1/ext3/ext4" -#: gnu/packages/linux.scm:771 +#: gnu/packages/linux.scm:817 msgid "This package provides tools for manipulating ext2/ext3/ext4 file systems." msgstr "Ce paquet fournit des outils pour manipuler les systèmes de fichiers ext2/ext3/ext4." -#: gnu/packages/linux.scm:812 +#: gnu/packages/linux.scm:859 msgid "Statically-linked e2fsck command from e2fsprogs" msgstr "Commandes de e2fsck liées statiquement provenant de e2fsprogs" -#: gnu/packages/linux.scm:813 +#: gnu/packages/linux.scm:860 msgid "" "This package provides statically-linked e2fsck command taken\n" "from the e2fsprogs package. It is meant to be used in initrds." @@ -8140,21 +8709,21 @@ msgstr "" "Ce paquet fournit la commande e2fsck liée statiquement issue\n" "du paquet e2fsprogs. Il est censé être utilisé dans les initrds." -#: gnu/packages/linux.scm:832 +#: gnu/packages/linux.scm:879 msgid "Recover deleted files from ext2/3/4 partitions" msgstr "" -#: gnu/packages/linux.scm:834 +#: gnu/packages/linux.scm:881 msgid "" "Extundelete is a set of tools that can recover deleted files from an\n" "ext3 or ext4 partition." msgstr "" -#: gnu/packages/linux.scm:865 +#: gnu/packages/linux.scm:912 msgid "Zero non-allocated regions in ext2/ext3/ext4 file systems" msgstr "Remet à zéro les régions non allouées dans les systèmes de fichiers ext2/ext3/ext4" -#: gnu/packages/linux.scm:867 +#: gnu/packages/linux.scm:914 msgid "" "Zerofree finds the unallocated blocks with non-zero value content in an\n" "ext2, ext3, or ext4 file system and fills them with zeroes (or another value).\n" @@ -8162,11 +8731,11 @@ msgid "" "Zerofree requires the file system to be unmounted or mounted read-only." msgstr "" -#: gnu/packages/linux.scm:895 +#: gnu/packages/linux.scm:942 msgid "System call tracer for Linux" msgstr "Traceur d'appel système pour Linux" -#: gnu/packages/linux.scm:897 +#: gnu/packages/linux.scm:944 msgid "" "strace is a system call tracer, i.e. a debugging tool which prints out a\n" "trace of all the system calls made by a another process/program." @@ -8174,22 +8743,22 @@ msgstr "" "strace est un traceur d'appels système, c-à-d un outil de débogage affichant\n" "les appels système effectués par un autre processus/programme." -#: gnu/packages/linux.scm:918 +#: gnu/packages/linux.scm:965 msgid "Library call tracer for Linux" msgstr "Traceur d'appel système pour Linux" -#: gnu/packages/linux.scm:920 +#: gnu/packages/linux.scm:967 msgid "" "ltrace intercepts and records dynamic library calls which are called by\n" "an executed process and the signals received by that process. It can also\n" "intercept and print the system calls executed by the program." msgstr "" -#: gnu/packages/linux.scm:939 +#: gnu/packages/linux.scm:993 msgid "The Advanced Linux Sound Architecture libraries" msgstr "Bibliothèques ALSA (Advanced Linux Sound Architecture)" -#: gnu/packages/linux.scm:941 gnu/packages/linux.scm:985 +#: gnu/packages/linux.scm:995 gnu/packages/linux.scm:1039 msgid "" "The Advanced Linux Sound Architecture (ALSA) provides audio and\n" "MIDI functionality to the Linux-based operating system." @@ -8197,15 +8766,15 @@ msgstr "" "ALSA fournit des fonctionnalités audio et MIDI pour les sytèmes\n" "basés sur Linux." -#: gnu/packages/linux.scm:983 +#: gnu/packages/linux.scm:1037 msgid "Utilities for the Advanced Linux Sound Architecture (ALSA)" msgstr "Utilitaires pour ALSA (Advanced Linux Sound Architecture)" -#: gnu/packages/linux.scm:1043 +#: gnu/packages/linux.scm:1097 msgid "Plugins for the Advanced Linux Sound Architecture (ALSA)" msgstr "Greffons pour ALSA (Advanced Linux Sound Architecture)" -#: gnu/packages/linux.scm:1045 +#: gnu/packages/linux.scm:1099 msgid "" "The Advanced Linux Sound Architecture (ALSA) provides audio and\n" "MIDI functionality to the Linux-based operating system. This package enhances ALSA\n" @@ -8214,31 +8783,35 @@ msgid "" "external rate conversion." msgstr "" -#: gnu/packages/linux.scm:1079 -msgid "Program to configure the Linux IP packet filtering rules" -msgstr "Programme de configuration de règles de filtrage des paquets IP pour Linux" - -#: gnu/packages/linux.scm:1081 -msgid "" -"iptables is the userspace command line program used to configure the\n" -"Linux 2.4.x and later IPv4 packet filtering ruleset (firewall). It is targeted at\n" -"system administrators. Since Network Address Translation is also configured\n" -"from the packet filter ruleset, iptables is used for this, too. The iptables\n" -"package also includes ip6tables. ip6tables is used for configuring the IPv6\n" -"packet filter." -msgstr "" -"iptables est un programme utilisateur en ligne de commande utilisé pour\n" -"configurer le filtrage des paquets IPv4 sur Linux depuis la version 2.4.x (pare-feu).\n" -"Il s'adresse aux administrateurs systèmes. Comme le « Network Address\n" -"Translation » (NAT) est aussi configuré par un ensemble de règles « packet filter »,\n" -"il est utilisé pour cela aussi. Le paquet inclut aussi ip6tables, utilisé pour\n" -"configurer le filtrage IPv6." +#: gnu/packages/linux.scm:1133 +msgid "Programs to configure Linux IP packet filtering rules" +msgstr "Programmes de configuration de règles de filtrage des paquets IP pour Linux" #: gnu/packages/linux.scm:1135 +msgid "" +"@command{iptables} is the user-space command line program used to\n" +"configure the Linux 2.4.x and later IPv4 packet filtering ruleset\n" +"(@dfn{firewall}), including @dfn{NAT} (Network Address Translation).\n" +"\n" +"This package also includes @command{ip6tables}, which is used to configure the\n" +"IPv6 packet filter.\n" +"\n" +"Both commands are targeted at system administrators." +msgstr "" +"@command{iptables} est un programme utilisateur en ligne de commande utilisé pour\n" +"configurer le filtrage des paquets IPv4 sur Linux depuis la version 2.4.x (@dfn{pare-feu}),\n" +"dont le « Network Address Translation » (@dfn{NAT}).\n" +"\n" +"Ce paquet inclut aussi @command{ip6tables}, utilisé pour\n" +"configurer le filtrage IPv6.\n" +"\n" +"Les deux commandes sont destinées aux administrateurs système." + +#: gnu/packages/linux.scm:1191 msgid "Ethernet bridge frame table administration" msgstr "" -#: gnu/packages/linux.scm:1138 +#: gnu/packages/linux.scm:1194 msgid "" "ebtables is an application program used to set up and maintain the\n" "tables of rules (inside the Linux kernel) that inspect Ethernet frames. It is\n" @@ -8246,11 +8819,11 @@ msgid "" "that the Ethernet protocol is much simpler than the IP protocol." msgstr "" -#: gnu/packages/linux.scm:1186 +#: gnu/packages/linux.scm:1242 msgid "Utilities for controlling TCP/IP networking and traffic in Linux" msgstr "Utilitaires de contrôle du traffic TCP/IP pour Linux" -#: gnu/packages/linux.scm:1188 +#: gnu/packages/linux.scm:1244 msgid "" "Iproute2 is a collection of utilities for controlling TCP/IP networking\n" "and traffic with the Linux kernel. The most important of these are\n" @@ -8262,11 +8835,11 @@ msgid "" "inadequately in modern network environments, and both should be deprecated." msgstr "" -#: gnu/packages/linux.scm:1274 +#: gnu/packages/linux.scm:1321 msgid "Tools for controlling the network subsystem in Linux" msgstr "Outils pour contrôler le sous-système réseau dans Linux" -#: gnu/packages/linux.scm:1276 +#: gnu/packages/linux.scm:1323 msgid "" "This package includes the important tools for controlling the network\n" "subsystem of the Linux kernel. This includes arp, ifconfig, netstat, rarp and\n" @@ -8280,21 +8853,21 @@ msgstr "" "particulières (pliconfig, slattach) et à des aspects avancés de la configuration\n" "réseau (iptunnel, ipmaddr)." -#: gnu/packages/linux.scm:1415 +#: gnu/packages/linux.scm:1361 msgid "Library for working with POSIX capabilities" msgstr "Bibliothèque pour travailler avec les possibilités de POSIX" -#: gnu/packages/linux.scm:1417 +#: gnu/packages/linux.scm:1363 msgid "" "Libcap2 provides a programming interface to POSIX capabilities on\n" "Linux-based operating systems." msgstr "Libcap2 fournit une interface de programmation POSIX aux systèmes basés sur Linux." -#: gnu/packages/linux.scm:1460 +#: gnu/packages/linux.scm:1406 msgid "Manipulate Ethernet bridges" msgstr "Manipulation des ponts Ethernet" -#: gnu/packages/linux.scm:1462 +#: gnu/packages/linux.scm:1408 msgid "" "Utilities for Linux's Ethernet bridging facilities. A bridge is a way\n" "to connect two Ethernet segments together in a protocol independent way.\n" @@ -8309,11 +8882,11 @@ msgstr "" "niveau 2, tous les protocoles peuvent transiter de manière transparente sur un\n" "un pont." -#: gnu/packages/linux.scm:1530 +#: gnu/packages/linux.scm:1476 msgid "NetLink protocol library suite" msgstr "Bibliothèqye pour le protocole NetLink" -#: gnu/packages/linux.scm:1532 +#: gnu/packages/linux.scm:1478 msgid "" "The libnl suite is a collection of libraries providing APIs to netlink\n" "protocol based Linux kernel interfaces. Netlink is an IPC mechanism primarily\n" @@ -8327,21 +8900,21 @@ msgstr "" "est conçu pour être un successeur plus flexible à ioctl permettant de configurer\n" "le réseau au niveau noyau et surveiller les interfaces." -#: gnu/packages/linux.scm:1562 +#: gnu/packages/linux.scm:1508 msgid "Tool for configuring wireless devices" msgstr "Outils de configuration d'extensions sans fil" -#: gnu/packages/linux.scm:1564 +#: gnu/packages/linux.scm:1510 msgid "" "iw is a new nl80211 based CLI configuration utility for wireless\n" "devices. It replaces @code{iwconfig}, which is deprecated." msgstr "" -#: gnu/packages/linux.scm:1610 +#: gnu/packages/linux.scm:1556 msgid "Analyze power consumption on Intel-based laptops" msgstr "Analyse de la consommation des portables basés sur Intel" -#: gnu/packages/linux.scm:1612 +#: gnu/packages/linux.scm:1558 msgid "" "PowerTOP is a Linux tool to diagnose issues with power consumption and\n" "power management. In addition to being a diagnostic tool, PowerTOP also has\n" @@ -8356,11 +8929,11 @@ msgstr "" "l'énergie pour des cas où le système d'exploitation n'a pas activé ces\n" "paramètres." -#: gnu/packages/linux.scm:1634 +#: gnu/packages/linux.scm:1580 msgid "Audio mixer for X and the console" msgstr "Table de mixage audio basée sur X et la console" -#: gnu/packages/linux.scm:1636 +#: gnu/packages/linux.scm:1582 msgid "" "Aumix adjusts an audio mixer from X, the console, a terminal,\n" "the command line or a script." @@ -8368,11 +8941,11 @@ msgstr "" "Aumix ajuste un mixer audio depuis X, la console, un terminal,\n" "la ligne de commande ou un script." -#: gnu/packages/linux.scm:1660 +#: gnu/packages/linux.scm:1606 msgid "Displays the IO activity of running processes" msgstr "Affiche l'activité des entrées-sorties des processus en cours d'exécution" -#: gnu/packages/linux.scm:1662 +#: gnu/packages/linux.scm:1608 msgid "" "Iotop is a Python program with a top like user interface to show the\n" "processes currently causing I/O." @@ -8380,11 +8953,11 @@ msgstr "" "Iotop est un programme Python doté d'une interface utilisateur affichant les\n" "entrées-sorties en cours des processus." -#: gnu/packages/linux.scm:1716 +#: gnu/packages/linux.scm:1662 msgid "Support file systems implemented in user space" msgstr "Support des systèmes de fichiers implantés dans l'espace utilisateur" -#: gnu/packages/linux.scm:1718 +#: gnu/packages/linux.scm:1664 msgid "" "As a consequence of its monolithic design, file system code for Linux\n" "normally goes into the kernel itself---which is not only a robustness issue,\n" @@ -8401,11 +8974,11 @@ msgstr "" "ce problème en permettant aux utilisateurs de lancer les implantations de\n" "systèmes de fichiers comme des processus utilisateur." -#: gnu/packages/linux.scm:1752 +#: gnu/packages/linux.scm:1695 msgid "User-space union file system" msgstr "" -#: gnu/packages/linux.scm:1754 +#: gnu/packages/linux.scm:1697 msgid "" "UnionFS-FUSE is a flexible union file system implementation in user\n" "space, using the FUSE library. Mounting a union file system allows you to\n" @@ -8413,15 +8986,15 @@ msgid "" "UnionFS-FUSE additionally supports copy-on-write." msgstr "" -#: gnu/packages/linux.scm:1779 +#: gnu/packages/linux.scm:1725 msgid "User-space union file system (statically linked)" msgstr "" -#: gnu/packages/linux.scm:1827 +#: gnu/packages/linux.scm:1775 msgid "Mount remote file systems over SSH" msgstr "Montage de systèmes de fichier distants avec SSH" -#: gnu/packages/linux.scm:1829 +#: gnu/packages/linux.scm:1777 msgid "" "This is a file system client based on the SSH File Transfer Protocol.\n" "Since most SSH servers already support this protocol it is very easy to set\n" @@ -8434,11 +9007,11 @@ msgstr "" "aussi facile de monter le système de fichiers que de se connecter avec un client\n" "SSH." -#: gnu/packages/linux.scm:1852 +#: gnu/packages/linux.scm:1800 msgid "Tool for mounting archive files with FUSE" msgstr "" -#: gnu/packages/linux.scm:1853 +#: gnu/packages/linux.scm:1801 msgid "" "archivemount is a FUSE-based file system for Unix variants,\n" "including Linux. Its purpose is to mount archives (i.e. tar, tar.gz, etc.) to a\n" @@ -8447,11 +9020,11 @@ msgid "" "compressed, transparent to other programs, without decompressing them." msgstr "" -#: gnu/packages/linux.scm:1883 +#: gnu/packages/linux.scm:1831 msgid "Tools for non-uniform memory access (NUMA) machines" msgstr "Outils pour les machines basées sur NUMA (non-uniform memory access)" -#: gnu/packages/linux.scm:1885 +#: gnu/packages/linux.scm:1833 msgid "" "NUMA stands for Non-Uniform Memory Access, in other words a system whose\n" "memory is not all in one place. The numactl program allows you to run your\n" @@ -8468,32 +9041,32 @@ msgstr "" "une application sur des noeuds CPU et mémoire spécifiques au moyen de politiques\n" "fournies au système d'exploitation avant le lancement du programme." -#: gnu/packages/linux.scm:1921 +#: gnu/packages/linux.scm:1869 msgid "Neo2 console layout" msgstr "" -#: gnu/packages/linux.scm:1923 +#: gnu/packages/linux.scm:1871 msgid "" "Kbd-neo provides the Neo2 keyboard layout for use with\n" "@command{loadkeys(1)} from @code{kbd(4)}." msgstr "" -#: gnu/packages/linux.scm:1986 +#: gnu/packages/linux.scm:1937 msgid "Linux keyboard utilities and keyboard maps" msgstr "" -#: gnu/packages/linux.scm:1988 +#: gnu/packages/linux.scm:1939 msgid "" "This package contains keytable files and keyboard utilities compatible\n" "for systems using the Linux kernel. This includes commands such as\n" "'loadkeys', 'setfont', 'kbdinfo', and 'chvt'." msgstr "" -#: gnu/packages/linux.scm:2007 +#: gnu/packages/linux.scm:1968 msgid "Monitor file accesses" msgstr "Surveillance des accès fichier" -#: gnu/packages/linux.scm:2009 +#: gnu/packages/linux.scm:1970 msgid "" "The inotify-tools packages provides a C library and command-line tools\n" "to use Linux' inotify mechanism, which allows file accesses to be monitored." @@ -8502,11 +9075,11 @@ msgstr "" "permettant d'utiliser le mécanisme inotify de Linux qui autorise la surveillance\n" "des accès fichier." -#: gnu/packages/linux.scm:2047 +#: gnu/packages/linux.scm:2009 msgid "Kernel module tools" msgstr "Outils de module noyau" -#: gnu/packages/linux.scm:2048 +#: gnu/packages/linux.scm:2010 msgid "" "Kmod is a set of tools to handle common tasks with Linux\n" "kernel modules like insert, remove, list, check properties, resolve\n" @@ -8524,11 +9097,11 @@ msgstr "" "kmod. L'objectif est d'être compatible avec les outils, les configurations et\n" "les indices du projet module-init-tools." -#: gnu/packages/linux.scm:2092 +#: gnu/packages/linux.scm:2073 msgid "Userspace device management" msgstr "Gestion de périphériques utilisateurs" -#: gnu/packages/linux.scm:2093 +#: gnu/packages/linux.scm:2074 msgid "" "Udev is a daemon which dynamically creates and removes\n" "device nodes from /dev/, handles hotplug events and loads drivers at boot\n" @@ -8538,26 +9111,26 @@ msgstr "" "des noeuds de périphériques dans /dev/, gérer leur branchement à chaud\n" "et charger leur pilotes au démarrage." -#: gnu/packages/linux.scm:2168 +#: gnu/packages/linux.scm:2141 msgid "Logical volume management for Linux" msgstr "Gestion de volumes logiques pour Linux" -#: gnu/packages/linux.scm:2170 +#: gnu/packages/linux.scm:2143 msgid "" "LVM2 is the logical volume management tool set for Linux-based systems.\n" "This package includes the user-space libraries and tools, including the device\n" "mapper. Kernel components are part of Linux-libre." msgstr "" -#: gnu/packages/linux.scm:2192 +#: gnu/packages/linux.scm:2165 msgid "Logical volume management for Linux (statically linked)" msgstr "Gestion de volumes logiques pour Linux (lié statiquement)" -#: gnu/packages/linux.scm:2222 +#: gnu/packages/linux.scm:2195 msgid "Tools for manipulating Linux Wireless Extensions" msgstr "Outils de manipulation d'extensions sans fil pour Linux" -#: gnu/packages/linux.scm:2223 +#: gnu/packages/linux.scm:2196 msgid "" "Wireless Tools are used to manipulate the now-deprecated\n" "Linux Wireless Extensions; consider using 'iw' instead. The Wireless\n" @@ -8566,33 +9139,33 @@ msgid "" "interface." msgstr "" -#: gnu/packages/linux.scm:2295 +#: gnu/packages/linux.scm:2273 msgid "Central regulatory domain agent (CRDA) for WiFi" msgstr "" -#: gnu/packages/linux.scm:2297 +#: gnu/packages/linux.scm:2275 msgid "" "The Central Regulatory Domain Agent (CRDA) acts as the udev helper for\n" "communication between the kernel Linux and user space for regulatory\n" "compliance." msgstr "" -#: gnu/packages/linux.scm:2343 +#: gnu/packages/linux.scm:2328 msgid "Wireless regulatory database" msgstr "Base de données sans fil réglementaire" -#: gnu/packages/linux.scm:2345 +#: gnu/packages/linux.scm:2330 msgid "" "This package contains the wireless regulatory database Central\n" "Regulatory Database Agent (CRDA) daemon. The database contains information on\n" "country-specific regulations for the wireless spectrum." msgstr "" -#: gnu/packages/linux.scm:2422 +#: gnu/packages/linux.scm:2407 msgid "Utilities to read temperature/voltage/fan sensors" msgstr "Utilitaires pour la lecture de capteurs de tempéture/voltage/ventilateur" -#: gnu/packages/linux.scm:2424 +#: gnu/packages/linux.scm:2409 msgid "" "Lm-sensors is a hardware health monitoring package for Linux. It allows\n" "you to access information from temperature, voltage, and fan speed sensors.\n" @@ -8603,11 +9176,22 @@ msgstr "" "le voltage ou la vitesse des ventilatuers. Il fonctionne avec la plupart des\n" "systèmes les plus récents." -#: gnu/packages/linux.scm:2451 +#: gnu/packages/linux.scm:2427 +msgid "Manipulate Intel microcode bundles" +msgstr "Manipulation des lots de microcodes Intel" + +#: gnu/packages/linux.scm:2429 +msgid "" +"@command{iucode_tool} is a utility to work with microcode packages for\n" +"Intel processors. It can convert between formats, extract specific versions,\n" +"create a firmware image suitable for the Linux kernel, and more." +msgstr "" + +#: gnu/packages/linux.scm:2458 msgid "I2C tools for Linux" msgstr "" -#: gnu/packages/linux.scm:2453 +#: gnu/packages/linux.scm:2460 msgid "" "The i2c-tools package contains a heterogeneous set of I2C tools for\n" "Linux: a bus probing tool, a chip dumper, register-level SMBus access helpers,\n" @@ -8615,11 +9199,11 @@ msgid "" "SMBus access." msgstr "" -#: gnu/packages/linux.scm:2490 +#: gnu/packages/linux.scm:2497 msgid "Hardware health information viewer" msgstr "Utiltaire de monitoring hardware" -#: gnu/packages/linux.scm:2492 +#: gnu/packages/linux.scm:2499 msgid "" "Xsensors reads data from the libsensors library regarding hardware\n" "health such as temperature, voltage and fan speed and displays the information\n" @@ -8629,11 +9213,11 @@ msgstr "" "la vitesse des ventilateurs depuis la bibliothèque libsensors et affiche les informations\n" "numériquement." -#: gnu/packages/linux.scm:2542 +#: gnu/packages/linux.scm:2551 msgid "Linux profiling with performance counters" msgstr "" -#: gnu/packages/linux.scm:2544 +#: gnu/packages/linux.scm:2553 msgid "" "perf is a tool suite for profiling using hardware performance counters,\n" "with support in the Linux kernel. perf can instrument CPU performance\n" @@ -8642,11 +9226,11 @@ msgid "" "particular the 'perf' command." msgstr "" -#: gnu/packages/linux.scm:2567 +#: gnu/packages/linux.scm:2576 msgid "Simple tool for creating Linux namespace containers" msgstr "" -#: gnu/packages/linux.scm:2568 +#: gnu/packages/linux.scm:2577 msgid "" "pflask is a simple tool for creating Linux namespace\n" "containers. It can be used for running a command or even booting an OS inside\n" @@ -8655,11 +9239,23 @@ msgid "" "thanks to the use of namespaces." msgstr "" -#: gnu/packages/linux.scm:2597 +#: gnu/packages/linux.scm:2623 +msgid "Container platform" +msgstr "" + +#: gnu/packages/linux.scm:2624 +msgid "" +"Singularity is a container platform supporting a number of\n" +"container image formats. It can build SquashFS container images or import\n" +"existing Docker images. Singularity requires kernel support for container\n" +"isolation or root privileges." +msgstr "" + +#: gnu/packages/linux.scm:2652 msgid "View and tune ATA disk drive parameters" msgstr "" -#: gnu/packages/linux.scm:2599 +#: gnu/packages/linux.scm:2654 msgid "" "@command{hdparm} is a command-line utility to control ATA controllers and\n" "disk drives. It can increase performance and/or reliability by careful tuning\n" @@ -8669,26 +9265,26 @@ msgid "" "\n" "@command{hdparm} provides a command line interface to various Linux kernel\n" "interfaces provided by the SATA/ATA/SAS @code{libata} subsystem, and the older\n" -"IDE driver subsystem. Many external USB drive enclosures with @dfn{SCSI-ATA\n" -"Command Translation} (SAT) are also supported." +"IDE driver subsystem. Many external USB drive enclosures with SCSI-ATA Command\n" +"Translation (@dfn{SAT}) are also supported." msgstr "" -#: gnu/packages/linux.scm:2630 +#: gnu/packages/linux.scm:2685 msgid "Tool for enabling and disabling wireless devices" msgstr "Outils pour activer ou désactiver des périphériques sans fil" -#: gnu/packages/linux.scm:2632 +#: gnu/packages/linux.scm:2687 msgid "" "rfkill is a simple tool for accessing the rfkill device interface,\n" "which is used to enable and disable wireless networking devices, typically\n" "WLAN, Bluetooth and mobile broadband." msgstr "" -#: gnu/packages/linux.scm:2651 +#: gnu/packages/linux.scm:2708 msgid "Display information on ACPI devices" msgstr "" -#: gnu/packages/linux.scm:2652 +#: gnu/packages/linux.scm:2709 msgid "" "@code{acpi} attempts to replicate the functionality of the\n" "\"old\" @code{apm} command on ACPI systems, including battery and thermal\n" @@ -8696,11 +9292,11 @@ msgid "" "about ACPI devices." msgstr "" -#: gnu/packages/linux.scm:2671 +#: gnu/packages/linux.scm:2728 msgid "Daemon for delivering ACPI events to user-space programs" msgstr "" -#: gnu/packages/linux.scm:2673 +#: gnu/packages/linux.scm:2730 msgid "" "acpid is designed to notify user-space programs of Advanced\n" "Configuration and Power Interface (ACPI) events. acpid should be started\n" @@ -8709,37 +9305,37 @@ msgid "" "specified in /etc/acpi/events and execute the rules that match the event." msgstr "" -#: gnu/packages/linux.scm:2695 +#: gnu/packages/linux.scm:2752 msgid "System utilities based on Linux sysfs" msgstr "" -#: gnu/packages/linux.scm:2697 +#: gnu/packages/linux.scm:2754 msgid "" "These are a set of utilities built upon sysfs, a virtual file system in\n" "Linux kernel versions 2.5+ that exposes a system's device tree. The package\n" "also contains the libsysfs library." msgstr "" -#: gnu/packages/linux.scm:2726 +#: gnu/packages/linux.scm:2784 msgid "System utilities based on Linux sysfs (version 1.x)" msgstr "" -#: gnu/packages/linux.scm:2749 +#: gnu/packages/linux.scm:2807 msgid "Utilities to get and set CPU frequency on Linux" msgstr "" -#: gnu/packages/linux.scm:2751 +#: gnu/packages/linux.scm:2809 msgid "" "The cpufrequtils suite contains utilities to retrieve CPU frequency\n" "information, and set the CPU frequency if supported, using the cpufreq\n" "capabilities of the Linux kernel." msgstr "" -#: gnu/packages/linux.scm:2770 +#: gnu/packages/linux.scm:2828 msgid "Interface library for the Linux IEEE1394 drivers" msgstr "" -#: gnu/packages/linux.scm:2772 +#: gnu/packages/linux.scm:2830 msgid "" "Libraw1394 is the only supported interface to the kernel side raw1394 of\n" "the Linux IEEE-1394 subsystem, which provides direct access to the connected\n" @@ -8748,46 +9344,46 @@ msgid "" "protocol in question." msgstr "" -#: gnu/packages/linux.scm:2796 +#: gnu/packages/linux.scm:2854 msgid "AV/C protocol library for IEEE 1394" msgstr "" -#: gnu/packages/linux.scm:2798 +#: gnu/packages/linux.scm:2856 msgid "" "Libavc1394 is a programming interface to the AV/C specification from\n" "the 1394 Trade Association. AV/C stands for Audio/Video Control." msgstr "" -#: gnu/packages/linux.scm:2820 +#: gnu/packages/linux.scm:2878 msgid "Isochronous streaming media library for IEEE 1394" msgstr "" -#: gnu/packages/linux.scm:2822 +#: gnu/packages/linux.scm:2880 msgid "" "The libiec61883 library provides a higher level API for streaming DV,\n" "MPEG-2 and audio over Linux IEEE 1394." msgstr "" -#: gnu/packages/linux.scm:2871 +#: gnu/packages/linux.scm:2929 msgid "Tool for managing Linux Software RAID arrays" msgstr "" -#: gnu/packages/linux.scm:2873 +#: gnu/packages/linux.scm:2931 msgid "" "mdadm is a tool for managing Linux Software RAID arrays. It can create,\n" "assemble, report on, and monitor arrays. It can also move spares between raid\n" "arrays when needed." msgstr "" -#: gnu/packages/linux.scm:2905 +#: gnu/packages/linux.scm:2963 msgid "Statically-linked 'mdadm' command for use in an initrd" msgstr "Commandes mdadm liées statiquement à utiliser dans un initrd" -#: gnu/packages/linux.scm:2970 +#: gnu/packages/linux.scm:3031 msgid "Access block devices through multiple paths" msgstr "" -#: gnu/packages/linux.scm:2972 +#: gnu/packages/linux.scm:3033 msgid "" "This package provides the following binaries to drive the\n" "Linux Device Mapper multipathing driver:\n" @@ -8800,74 +9396,74 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/linux.scm:3004 +#: gnu/packages/linux.scm:3065 msgid "Linux-native asynchronous I/O access library" msgstr "" -#: gnu/packages/linux.scm:3006 +#: gnu/packages/linux.scm:3067 msgid "" "This library enables userspace to use Linux kernel asynchronous I/O\n" "system calls, important for the performance of databases and other advanced\n" "applications." msgstr "" -#: gnu/packages/linux.scm:3028 +#: gnu/packages/linux.scm:3089 msgid "Bluetooth subband audio codec" msgstr "" -#: gnu/packages/linux.scm:3030 +#: gnu/packages/linux.scm:3091 msgid "" "The SBC is a digital audio encoder and decoder used to transfer data to\n" "Bluetooth audio output devices like headphones or loudspeakers." msgstr "" -#: gnu/packages/linux.scm:3098 +#: gnu/packages/linux.scm:3157 msgid "Linux Bluetooth protocol stack" msgstr "" -#: gnu/packages/linux.scm:3100 +#: gnu/packages/linux.scm:3159 msgid "" "BlueZ provides support for the core Bluetooth layers and protocols. It\n" "is flexible, efficient and uses a modular implementation." msgstr "" -#: gnu/packages/linux.scm:3122 +#: gnu/packages/linux.scm:3181 msgid "Mount exFAT file systems" msgstr "Montage de systèmes de fichier exFAT" -#: gnu/packages/linux.scm:3124 +#: gnu/packages/linux.scm:3183 msgid "" "This package provides a FUSE-based file system that provides read and\n" "write access to exFAT devices." msgstr "" -#: gnu/packages/linux.scm:3166 +#: gnu/packages/linux.scm:3225 msgid "Mouse support for the Linux console" msgstr "" -#: gnu/packages/linux.scm:3168 +#: gnu/packages/linux.scm:3227 msgid "" "The GPM (general-purpose mouse) daemon is a mouse server for\n" "applications running on the Linux console. It allows users to select items\n" "and copy/paste text in the console and in xterm." msgstr "" -#: gnu/packages/linux.scm:3225 +#: gnu/packages/linux.scm:3290 msgid "Create and manage btrfs copy-on-write file systems" msgstr "" -#: gnu/packages/linux.scm:3226 +#: gnu/packages/linux.scm:3291 msgid "" "Btrfs is a @dfn{copy-on-write} (CoW) file system for Linux\n" "aimed at implementing advanced features while focusing on fault tolerance,\n" "repair and easy administration." msgstr "" -#: gnu/packages/linux.scm:3258 +#: gnu/packages/linux.scm:3324 msgid "Statically-linked btrfs command from btrfs-progs" msgstr "Commandes btrfs de btrfs-progs liées statiquement" -#: gnu/packages/linux.scm:3259 +#: gnu/packages/linux.scm:3325 msgid "" "This package provides the statically-linked @command{btrfs}\n" "from the btrfs-progs package. It is meant to be used in initrds." @@ -8875,22 +9471,22 @@ msgstr "" "Ce paquet fournit la commande liée statiquement @command{btrfs}\n" "issue du paquet btrfs-progs. Il est censé être utilisé dans les initrd." -#: gnu/packages/linux.scm:3290 +#: gnu/packages/linux.scm:3362 msgid "Userland tools for f2fs" msgstr "" -#: gnu/packages/linux.scm:3292 +#: gnu/packages/linux.scm:3364 msgid "" "F2FS, the Flash-Friendly File System, is a modern file system\n" "designed to be fast and durable on flash devices such as solid-state\n" "disks and SD cards. This package provides the userland utilities." msgstr "" -#: gnu/packages/linux.scm:3321 +#: gnu/packages/linux.scm:3412 msgid "Free-fall protection for spinning laptop hard drives" msgstr "" -#: gnu/packages/linux.scm:3323 +#: gnu/packages/linux.scm:3414 msgid "" "Prevents shock damage to the internal spinning hard drive(s) of some\n" "HP and Dell laptops. When sudden movement is detected, all input/output\n" @@ -8900,11 +9496,11 @@ msgid "" "feature, and a laptop with an accelerometer. It has no effect on SSDs." msgstr "" -#: gnu/packages/linux.scm:3377 +#: gnu/packages/linux.scm:3469 msgid "Simple fan control program" msgstr "" -#: gnu/packages/linux.scm:3379 +#: gnu/packages/linux.scm:3471 msgid "" "Thinkfan is a simple fan control program. It reads temperatures,\n" "checks them against configured limits and switches to appropriate (also\n" @@ -8913,22 +9509,22 @@ msgid "" "from userspace." msgstr "" -#: gnu/packages/linux.scm:3414 +#: gnu/packages/linux.scm:3519 msgid "Read-write access to NTFS file systems" msgstr "" -#: gnu/packages/linux.scm:3416 +#: gnu/packages/linux.scm:3521 msgid "" "NTFS-3G provides read-write access to NTFS file systems, which are\n" "commonly found on Microsoft Windows. It is implemented as a FUSE file system.\n" "The package provides additional NTFS tools." msgstr "" -#: gnu/packages/linux.scm:3461 +#: gnu/packages/linux.scm:3563 msgid "Utilities and libraries for working with RDMA devices" msgstr "" -#: gnu/packages/linux.scm:3463 +#: gnu/packages/linux.scm:3565 msgid "" "This package provides userspace components for the InfiniBand\n" "subsystem of the Linux kernel. Specifically it contains userspace\n" @@ -8948,32 +9544,32 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/linux.scm:3502 +#: gnu/packages/linux.scm:3613 msgid "Random number generator daemon" msgstr "" -#: gnu/packages/linux.scm:3504 +#: gnu/packages/linux.scm:3615 msgid "" "Monitor a hardware random number generator, and supply entropy\n" "from that to the system kernel's @file{/dev/random} machinery." msgstr "" -#: gnu/packages/linux.scm:3542 +#: gnu/packages/linux.scm:3653 msgid "CPU frequency and voltage scaling tools for Linux" msgstr "" -#: gnu/packages/linux.scm:3544 +#: gnu/packages/linux.scm:3655 msgid "" "cpupower is a set of user-space tools that use the cpufreq feature of the\n" "Linux kernel to retrieve and control processor features related to power saving,\n" "such as frequency and voltage scaling." msgstr "" -#: gnu/packages/linux.scm:3563 +#: gnu/packages/linux.scm:3674 msgid "Entropy source for the Linux random number generator" msgstr "" -#: gnu/packages/linux.scm:3565 +#: gnu/packages/linux.scm:3676 msgid "" "haveged generates an unpredictable stream of random numbers for use by\n" "Linux's @file{/dev/random} and @file{/dev/urandom} devices. The kernel's\n" @@ -8986,11 +9582,11 @@ msgid "" "as used on certified hardware security devices." msgstr "" -#: gnu/packages/linux.scm:3604 +#: gnu/packages/linux.scm:3715 msgid "eCryptfs cryptographic file system utilities" msgstr "" -#: gnu/packages/linux.scm:3606 +#: gnu/packages/linux.scm:3717 msgid "" "eCryptfs is a POSIX-compliant stacked cryptographic file system for Linux.\n" "Each file's cryptographic meta-data is stored inside the file itself, along\n" @@ -9000,11 +9596,11 @@ msgid "" "2.6.19. This package contains the userland utilities to manage it." msgstr "" -#: gnu/packages/linux.scm:3637 +#: gnu/packages/linux.scm:3748 msgid "NFSv4 support library for name/ID mapping" msgstr "" -#: gnu/packages/linux.scm:3638 +#: gnu/packages/linux.scm:3749 msgid "" "Libnfsidmap is a library holding mulitiple methods of\n" "mapping names to ids and visa versa, mainly for NFSv4. It provides an\n" @@ -9012,11 +9608,11 @@ msgid "" "the default @code{nsswitch} and the experimental @code{umich_ldap}." msgstr "" -#: gnu/packages/linux.scm:3672 +#: gnu/packages/linux.scm:3783 msgid "Tools for loading and managing Linux kernel modules" msgstr "Outils de chargement et de gestion de modules noyau pour Linux" -#: gnu/packages/linux.scm:3674 +#: gnu/packages/linux.scm:3785 msgid "" "Tools for loading and managing Linux kernel modules, such as `modprobe',\n" "`insmod', `lsmod', and more." @@ -9024,11 +9620,11 @@ msgstr "" "Outils pour le chargement et la gestion des modules noyau Linux, tels que\n" "\"modprob\", \"insmod\", \"lsmod\" et plus." -#: gnu/packages/linux.scm:3708 +#: gnu/packages/linux.scm:3822 msgid "Machine check monitor for x86 Linux systems" msgstr "" -#: gnu/packages/linux.scm:3710 +#: gnu/packages/linux.scm:3824 msgid "" "The mcelog daemon is required by the Linux kernel to log memory, I/O, CPU,\n" "and other hardware errors on x86 systems. It can also perform user-defined\n" @@ -9036,11 +9632,11 @@ msgid "" "are exceeded." msgstr "" -#: gnu/packages/linux.scm:3739 +#: gnu/packages/linux.scm:3853 msgid "MTD Flash Storage Utilities" msgstr "" -#: gnu/packages/linux.scm:3740 +#: gnu/packages/linux.scm:3854 msgid "" "This package provides utilities for testing, partitioning, etc\n" "of flash storage." @@ -9048,11 +9644,11 @@ msgstr "" "Ce paquet fournit des outils pour tester, partitionner, etc\n" "les périphériques flash." -#: gnu/packages/linux.scm:3763 +#: gnu/packages/linux.scm:3877 msgid "Interface to Linux's seccomp syscall filtering mechanism" msgstr "" -#: gnu/packages/linux.scm:3764 +#: gnu/packages/linux.scm:3878 msgid "" "The libseccomp library provides an easy to use, platform\n" "independent, interface to the Linux Kernel's syscall filtering mechanism. The\n" @@ -9062,11 +9658,11 @@ msgid "" "developers." msgstr "" -#: gnu/packages/linux.scm:3806 +#: gnu/packages/linux.scm:3920 msgid "Usage monitor for AMD Radeon graphics" msgstr "" -#: gnu/packages/linux.scm:3807 +#: gnu/packages/linux.scm:3921 msgid "" "RadeonTop monitors resource consumption on supported AMD\n" "Radeon Graphics Processing Units (GPUs), either in real time as bar graphs on\n" @@ -9076,21 +9672,21 @@ msgid "" "under OpenGL graphics workloads." msgstr "" -#: gnu/packages/linux.scm:3842 +#: gnu/packages/linux.scm:3957 msgid "Tool and library to manipulate EFI variables" msgstr "" -#: gnu/packages/linux.scm:3843 +#: gnu/packages/linux.scm:3958 msgid "" "This package provides a library and a command line\n" "interface to the variable facility of UEFI boot firmware." msgstr "" -#: gnu/packages/linux.scm:3884 +#: gnu/packages/linux.scm:3996 msgid "Modify the Extensible Firmware Interface (EFI) boot manager" msgstr "" -#: gnu/packages/linux.scm:3886 +#: gnu/packages/linux.scm:3998 msgid "" "@code{efibootmgr} is a user-space application to modify the Intel\n" "Extensible Firmware Interface (EFI) Boot Manager. This application can\n" @@ -9098,11 +9694,11 @@ msgid "" "running boot option, and more." msgstr "" -#: gnu/packages/linux.scm:3922 +#: gnu/packages/linux.scm:4034 msgid "Performance monitoring tools for Linux" msgstr "" -#: gnu/packages/linux.scm:3923 +#: gnu/packages/linux.scm:4035 msgid "" "The sysstat utilities are a collection of performance\n" "monitoring tools for Linux. These include @code{mpstat}, @code{iostat},\n" @@ -9110,11 +9706,11 @@ msgid "" "@code{sadf} and @code{sa}." msgstr "" -#: gnu/packages/linux.scm:3955 +#: gnu/packages/linux.scm:4068 msgid "GNU/Linux application to control backlights" msgstr "" -#: gnu/packages/linux.scm:3957 +#: gnu/packages/linux.scm:4070 msgid "" "Light is a program to send commands to screen backlight controllers\n" "under GNU/Linux. Features include:\n" @@ -9130,11 +9726,11 @@ msgid "" "Light is the successor of lightscript." msgstr "" -#: gnu/packages/linux.scm:4059 +#: gnu/packages/linux.scm:4174 msgid "Power management tool for Linux" msgstr "Outil de gestion de l'énergie pour Linux" -#: gnu/packages/linux.scm:4060 +#: gnu/packages/linux.scm:4175 msgid "" "TLP is a power management tool for Linux. It comes with\n" "a default configuration already optimized for battery life. Nevertheless,\n" @@ -9142,11 +9738,11 @@ msgid "" "every time the power supply source is changed." msgstr "" -#: gnu/packages/linux.scm:4087 +#: gnu/packages/linux.scm:4202 msgid "List hardware information" msgstr "Liste les informations sur le matériel" -#: gnu/packages/linux.scm:4089 +#: gnu/packages/linux.scm:4204 msgid "" "@command{lshw} (Hardware Lister) is a small tool to provide\n" "detailed information on the hardware configuration of the machine.\n" @@ -9156,11 +9752,11 @@ msgid "" "machines (PowerMac G4 is known to work)." msgstr "" -#: gnu/packages/linux.scm:4112 +#: gnu/packages/linux.scm:4227 msgid "Netlink utility library" msgstr "Bibliothèque pour le protocole NetLink" -#: gnu/packages/linux.scm:4113 +#: gnu/packages/linux.scm:4228 msgid "" "Libmnl is a minimalistic user-space library oriented to\n" "Netlink developers. There are a lot of common tasks in parsing, validating,\n" @@ -9169,11 +9765,11 @@ msgid "" "re-use code and to avoid re-inventing the wheel." msgstr "" -#: gnu/packages/linux.scm:4138 +#: gnu/packages/linux.scm:4253 msgid "Netlink programming interface to the Linux nf_tables subsystem" msgstr "" -#: gnu/packages/linux.scm:4139 +#: gnu/packages/linux.scm:4254 msgid "" "Libnftnl is a userspace library providing a low-level netlink\n" "programming interface to the in-kernel nf_tables subsystem. The library\n" @@ -9181,11 +9777,11 @@ msgid "" "used by nftables." msgstr "" -#: gnu/packages/linux.scm:4166 +#: gnu/packages/linux.scm:4281 msgid "Userspace utility for Linux packet filtering" msgstr "Utilitaire en espcae utilisateur pour les règles de filtrage des paquets IP pour Linux" -#: gnu/packages/linux.scm:4167 +#: gnu/packages/linux.scm:4282 msgid "" "nftables is the project that aims to replace the existing\n" "{ip,ip6,arp,eb}tables framework. Basically, this project provides a new packet\n" @@ -9195,16 +9791,16 @@ msgid "" "userspace queueing component and the logging subsystem." msgstr "" -#: gnu/packages/linux.scm:4265 +#: gnu/packages/linux.scm:4379 msgid "Unprivileged chroot, bind mount, and binfmt_misc" msgstr "" -#: gnu/packages/linux.scm:4267 +#: gnu/packages/linux.scm:4381 msgid "" "PRoot is a user-space implementation of @code{chroot}, @code{mount --bind},\n" "and @code{binfmt_misc}. This means that users don't need any privileges or\n" "setup to do things like using an arbitrary directory as the new root\n" -"filesystem, making files accessible somewhere else in the file system\n" +"file system, making files accessible somewhere else in the file system\n" "hierarchy, or executing programs built for another CPU architecture\n" "transparently through QEMU user-mode. Also, developers can use PRoot as a\n" "generic process instrumentation engine thanks to its extension mechanism.\n" @@ -9212,15 +9808,15 @@ msgid "" "available in the kernel Linux." msgstr "" -#: gnu/packages/linux.scm:4283 +#: gnu/packages/linux.scm:4397 msgid "Unprivileged chroot, bind mount, and binfmt_misc (statically linked)" msgstr "" -#: gnu/packages/linux.scm:4329 +#: gnu/packages/linux.scm:4443 msgid "Linux tool to dump x86 CPUID information about the CPU(s)" msgstr "" -#: gnu/packages/linux.scm:4330 +#: gnu/packages/linux.scm:4444 msgid "" "cpuid dumps detailed information about the CPU(s) gathered\n" "from the CPUID instruction, and also determines the exact model of CPU(s). It\n" @@ -9228,22 +9824,22 @@ msgid "" "NexGen, Rise, and SiS CPUs." msgstr "" -#: gnu/packages/linux.scm:4357 -msgid "Use a FUSE filesystem to access data over MTP" +#: gnu/packages/linux.scm:4471 +msgid "Use a FUSE file system to access data over MTP" msgstr "" -#: gnu/packages/linux.scm:4358 +#: gnu/packages/linux.scm:4472 msgid "" -"jmtpfs uses FUSE (filesystem in userspace) to provide access\n" +"jmtpfs uses FUSE (file system in userspace) to provide access\n" "to data over the Media Transfer Protocol (MTP). Unprivileged users can mount\n" -"the MTP device as a filesystem." +"the MTP device as a file system." msgstr "" -#: gnu/packages/linux.scm:4380 +#: gnu/packages/linux.scm:4495 msgid "Utility to show process environment" msgstr "" -#: gnu/packages/linux.scm:4381 +#: gnu/packages/linux.scm:4496 msgid "" "Procenv is a command-line tool that displays as much detail about\n" "itself and its environment as possible. It can be used as a test\n" @@ -9251,11 +9847,11 @@ msgid "" "comparing system environments." msgstr "" -#: gnu/packages/linux.scm:4408 +#: gnu/packages/linux.scm:4523 msgid "Open Fabric Interfaces" msgstr "" -#: gnu/packages/linux.scm:4410 +#: gnu/packages/linux.scm:4525 msgid "" "OpenFabrics Interfaces (OFI) is a framework focused on exporting fabric\n" "communication services to applications. OFI is best described as a collection\n" @@ -9269,11 +9865,11 @@ msgid "" "libraries, which are often integrated directly into libfabric." msgstr "" -#: gnu/packages/linux.scm:4456 +#: gnu/packages/linux.scm:4571 msgid "Intel Performance Scaled Messaging (PSM) Libraries" msgstr "" -#: gnu/packages/linux.scm:4458 +#: gnu/packages/linux.scm:4573 msgid "" "The PSM Messaging API, or PSM API, is Intel's low-level user-level\n" "communications interface for the True Scale family of products. PSM users are\n" @@ -9281,11 +9877,105 @@ msgid "" "interfaces in parallel environments." msgstr "" -#: gnu/packages/lout.scm:109 +#: gnu/packages/linux.scm:4614 +msgid "Take screenshots of one or more Linux text consoles" +msgstr "" + +#: gnu/packages/linux.scm:4616 +msgid "" +"snapscreenshot saves a screenshot of one or more Linux text consoles as a\n" +"Targa (@dfn{.tga}) image. It can be used by anyone with read access to the\n" +"relevant @file{/dev/vcs*} file(s)." +msgstr "" + +#: gnu/packages/linux.scm:4670 +msgid "Take a screenshot of the contents of the Linux framebuffer" +msgstr "" + +#: gnu/packages/linux.scm:4672 +msgid "" +"fbcat saves the contents of the Linux framebuffer (@file{/dev/fb*}), or\n" +"a dump therof. It supports a wide range of drivers and pixel formats.\n" +"@command{fbcat} can take screenshots of virtually any application that can be\n" +"made to write its output to the framebuffer, including (but not limited to)\n" +"text-mode or graphical applications that don't use a display server.\n" +"\n" +"Also included is @command{fbgrab}, a wrapper around @command{fbcat} that\n" +"emulates the behaviour of Gunnar Monell's older fbgrab utility." +msgstr "" + +#: gnu/packages/linux.scm:4703 +msgid "Control groups management tools" +msgstr "" + +#: gnu/packages/linux.scm:4704 +msgid "" +"Control groups is Linux kernel method for process resource\n" +"restriction, permission handling and more. This package provides userspace\n" +"interface to this kernel feature." +msgstr "" + +#: gnu/packages/linux.scm:4737 +msgid "Control fan speed on Macbooks" +msgstr "" + +#: gnu/packages/linux.scm:4739 +msgid "" +"mbpfan is a fan control daemon for Apple Macbooks. It uses input from\n" +"the @code{coretemp} module and sets the fan speed using the @code{applesmc}\n" +"module. It can be executed as a daemon or in the foreground with root\n" +"privileges." +msgstr "" + +#: gnu/packages/linux.scm:4782 +msgid "Intel Performance Scaled Messaging 2 (PSM2) library" +msgstr "" + +#: gnu/packages/linux.scm:4784 +msgid "" +"This package is low-level user-level Intel's communications interface.\n" +"The PSM2 API is a high-performance vendor-specific protocol that provides a\n" +"low-level communications interface for the Intel Omni-Path family of\n" +"high-speed networking devices." +msgstr "" + +#: gnu/packages/linux.scm:4824 +msgid "Performance event monitoring library" +msgstr "Bibliothèque de surveillance d'événements de performance" + +#: gnu/packages/linux.scm:4826 +msgid "" +"This package provides a library called libpfm4, which is used to develop\n" +"monitoring tools exploiting the performance monitoring events such as those\n" +"provided by the Performance Monitoring Unit (PMU) of modern processors.\n" +"\n" +"Libpfm4 helps convert from an event name, expressed as a string, to the event\n" +"encoding that is either the raw event as documented by the hardware vendor or\n" +"the OS-specific encoding. In the latter case, the library is able to prepare\n" +"the OS-specific data structures needed by the kernel to setup the event.\n" +"\n" +"libpfm4 provides support for the @code{perf_events} interface, which was\n" +"introduced in Linux 2.6.31." +msgstr "" + +#: gnu/packages/linux.scm:4854 +msgid "Low-level netfilter netlink communication library" +msgstr "" + +#: gnu/packages/linux.scm:4856 +msgid "" +"@code{libnfnetlink} is the low-level library for netfilter related\n" +"kernel/userspace communication. It provides a generic messaging\n" +"infrastructure for in-kernel netfilter subsystems (such as nfnetlink_log,\n" +"nfnetlink_queue, nfnetlink_conntrack) and their respective users and/or\n" +"management tools in userspace." +msgstr "" + +#: gnu/packages/lout.scm:100 msgid "Document layout system" msgstr "" -#: gnu/packages/lout.scm:111 +#: gnu/packages/lout.scm:102 msgid "" "The Lout document formatting system reads a high-level description of\n" "a document similar in style to LaTeX and produces a PostScript or plain text\n" @@ -9304,11 +9994,11 @@ msgid "" "beginning." msgstr "" -#: gnu/packages/messaging.scm:115 +#: gnu/packages/messaging.scm:118 msgid "Off-the-Record (OTR) Messaging Library and Toolkit" msgstr "" -#: gnu/packages/messaging.scm:117 +#: gnu/packages/messaging.scm:120 msgid "" "OTR allows you to have private conversations over instant messaging by\n" "providing: (1) Encryption: No one else can read your instant messages. (2)\n" @@ -9321,11 +10011,11 @@ msgid "" "keys, no previous conversation is compromised." msgstr "" -#: gnu/packages/messaging.scm:151 +#: gnu/packages/messaging.scm:154 msgid "Implementation of a ratcheting forward secrecy protocol" msgstr "Implémentation d'un protocole de confidentialité persistante ajustable" -#: gnu/packages/messaging.scm:152 +#: gnu/packages/messaging.scm:155 msgid "" "libsignal-protocol-c is an implementation of a ratcheting\n" "forward secrecy protocol that works in synchronous and asynchronous\n" @@ -9333,11 +10023,11 @@ msgid "" "end-to-end encryption." msgstr "" -#: gnu/packages/messaging.scm:190 +#: gnu/packages/messaging.scm:196 msgid "IRC to instant messaging gateway" msgstr "" -#: gnu/packages/messaging.scm:191 +#: gnu/packages/messaging.scm:197 msgid "" "BitlBee brings IM (instant messaging) to IRC clients, for\n" "people who have an IRC client running all the time and don't want to run an\n" @@ -9347,11 +10037,21 @@ msgid "" "identi.ca and status.net)." msgstr "" -#: gnu/packages/messaging.scm:252 +#: gnu/packages/messaging.scm:243 +msgid "Discord plugin for Bitlbee" +msgstr "" + +#: gnu/packages/messaging.scm:244 +msgid "" +"Bitlbee-discord is a plugin for Bitlbee witch provides\n" +"access to servers running the Discord protocol." +msgstr "" + +#: gnu/packages/messaging.scm:291 msgid "Graphical IRC Client" msgstr "" -#: gnu/packages/messaging.scm:254 +#: gnu/packages/messaging.scm:293 msgid "" "HexChat lets you connect to multiple IRC networks at once. The main\n" "window shows the list of currently connected networks and their channels, the\n" @@ -9360,11 +10060,11 @@ msgid "" "dictionaries. HexChat can be extended with multiple addons." msgstr "" -#: gnu/packages/messaging.scm:319 +#: gnu/packages/messaging.scm:358 msgid "Lightweight Internet Relay Chat server for small networks" msgstr "" -#: gnu/packages/messaging.scm:321 +#: gnu/packages/messaging.scm:360 msgid "" "ngIRCd is a lightweight @dfn{Internet Relay Chat} (IRC) server for small\n" "or private networks. It is easy to configure, can cope with dynamic IP\n" @@ -9372,21 +10072,21 @@ msgid "" "authentication." msgstr "" -#: gnu/packages/messaging.scm:393 +#: gnu/packages/messaging.scm:432 msgid "Graphical multi-protocol instant messaging client" msgstr "" -#: gnu/packages/messaging.scm:395 +#: gnu/packages/messaging.scm:434 msgid "" "Pidgin is a modular instant messaging client that supports many popular\n" "chat protocols." msgstr "" -#: gnu/packages/messaging.scm:433 +#: gnu/packages/messaging.scm:472 msgid "Off-the-Record Messaging plugin for Pidgin" msgstr "" -#: gnu/packages/messaging.scm:435 +#: gnu/packages/messaging.scm:474 msgid "" "Pidgin-OTR is a plugin that adds support for OTR to the Pidgin instant\n" "messaging client. OTR (Off-the-Record) Messaging allows you to have private\n" @@ -9401,34 +10101,34 @@ msgid "" "compromised." msgstr "" -#: gnu/packages/messaging.scm:486 +#: gnu/packages/messaging.scm:541 msgid "IRC network bouncer" msgstr "" -#: gnu/packages/messaging.scm:487 +#: gnu/packages/messaging.scm:542 msgid "" -"ZNC is an IRC network bouncer or BNC. It can detach the\n" -"client from the actual IRC server, and also from selected channels. Multiple\n" -"clients from different locations can connect to a single ZNC account\n" +"ZNC is an @dfn{IRC network bouncer} or @dfn{BNC}. It can\n" +"detach the client from the actual IRC server, and also from selected channels.\n" +"Multiple clients from different locations can connect to a single ZNC account\n" "simultaneously and therefore appear under the same nickname on IRC." msgstr "" -#: gnu/packages/messaging.scm:508 +#: gnu/packages/messaging.scm:563 msgid "Non-blocking Jabber/XMPP module" msgstr "" -#: gnu/packages/messaging.scm:510 +#: gnu/packages/messaging.scm:565 msgid "" "The goal of this python library is to provide a way for Python\n" "applications to use Jabber/XMPP networks in a non-blocking way. This library\n" "was initially a fork of xmpppy, but uses non-blocking sockets." msgstr "" -#: gnu/packages/messaging.scm:560 +#: gnu/packages/messaging.scm:661 msgid "Jabber (XMPP) client" msgstr "" -#: gnu/packages/messaging.scm:561 +#: gnu/packages/messaging.scm:662 msgid "" "Gajim is a feature-rich and easy to use Jabber/XMPP client.\n" "Among its features are: a tabbed chat window and single window modes; support\n" @@ -9437,21 +10137,21 @@ msgid "" "end-to-end encryption support; XML console." msgstr "" -#: gnu/packages/messaging.scm:630 +#: gnu/packages/messaging.scm:731 msgid "Graphical Jabber (XMPP) client" msgstr "" -#: gnu/packages/messaging.scm:631 +#: gnu/packages/messaging.scm:732 msgid "" "Dino is a Jabber (XMPP) client which aims to fit well into\n" "a graphical desktop environment like GNOME." msgstr "" -#: gnu/packages/messaging.scm:720 +#: gnu/packages/messaging.scm:821 msgid "Jabber (XMPP) server" msgstr "" -#: gnu/packages/messaging.scm:721 +#: gnu/packages/messaging.scm:822 msgid "" "Prosody is a modern XMPP communication server. It aims to\n" "be easy to set up and configure, and efficient with system resources.\n" @@ -9460,56 +10160,56 @@ msgid "" "protocols." msgstr "" -#: gnu/packages/messaging.scm:763 gnu/packages/messaging.scm:793 +#: gnu/packages/messaging.scm:864 gnu/packages/messaging.scm:897 msgid "Library for the Tox encrypted messenger protocol" msgstr "" -#: gnu/packages/messaging.scm:765 +#: gnu/packages/messaging.scm:866 msgid "C library implementation of the Tox encrypted messenger protocol." msgstr "" -#: gnu/packages/messaging.scm:795 +#: gnu/packages/messaging.scm:899 msgid "" "Official fork of the C library implementation of the Tox encrypted\n" "messenger protocol." msgstr "" -#: gnu/packages/messaging.scm:847 +#: gnu/packages/messaging.scm:954 msgid "Lightweight Tox client" msgstr "Client Tox léger" -#: gnu/packages/messaging.scm:849 +#: gnu/packages/messaging.scm:956 msgid "" "Utox is a lightweight Tox client. Tox is a distributed and secure\n" "instant messenger with audio and video chat capabilities." msgstr "" -#: gnu/packages/messaging.scm:898 +#: gnu/packages/messaging.scm:1013 msgid "Tox chat client using Qt" msgstr "" -#: gnu/packages/messaging.scm:899 +#: gnu/packages/messaging.scm:1014 msgid "" "qTox is a Tox client that follows the Tox design\n" "guidelines. It provides an easy to use application that allows you to\n" "connect with friends and family without anyone else listening in." msgstr "" -#: gnu/packages/messaging.scm:991 +#: gnu/packages/messaging.scm:1107 msgid "" "Distributed and trustless peer-to-peer communications protocol\n" "for sending encrypted messages to one person or many subscribers." msgstr "" -#: gnu/packages/messaging.scm:993 +#: gnu/packages/messaging.scm:1109 msgid "Distributed peer-to-peer communication" msgstr "" -#: gnu/packages/messaging.scm:1012 +#: gnu/packages/messaging.scm:1128 msgid "Multi-user chat program" msgstr "" -#: gnu/packages/messaging.scm:1013 +#: gnu/packages/messaging.scm:1129 msgid "" "Ytalk is a replacement for the BSD talk program. Its main\n" "advantage is the ability to communicate with any arbitrary number of users at\n" @@ -9517,11 +10217,11 @@ msgid "" "with several different talk daemons at the same time." msgstr "" -#: gnu/packages/messaging.scm:1038 +#: gnu/packages/messaging.scm:1154 msgid "Portable high-level Jabber/XMPP library for C++" msgstr "" -#: gnu/packages/messaging.scm:1040 +#: gnu/packages/messaging.scm:1156 msgid "" "gloox is a full-featured Jabber/XMPP client library,\n" "written in ANSI C++. It makes writing spec-compliant clients easy\n" @@ -9529,7 +10229,7 @@ msgid "" "into existing applications." msgstr "" -#: gnu/packages/messaging.scm:1113 +#: gnu/packages/messaging.scm:1231 msgid "" "@code{Net::PSYC} with support for TCP, UDP, Event.pm, @code{IO::Select} and\n" "Gtk2 event loops. This package includes 12 applications and additional scripts:\n" @@ -9537,26 +10237,26 @@ msgid "" "for @uref{https://torproject.org,tor} router) and many more." msgstr "" -#: gnu/packages/messaging.scm:1117 +#: gnu/packages/messaging.scm:1235 msgid "Perl implementation of PSYC protocol" msgstr "" -#: gnu/packages/messaging.scm:1156 +#: gnu/packages/messaging.scm:1274 msgid "" "@code{libpsyc} is a PSYC library in C which implements\n" "core aspects of PSYC, useful for all kinds of clients and servers\n" "including psyced." msgstr "" -#: gnu/packages/messaging.scm:1159 +#: gnu/packages/messaging.scm:1277 msgid "PSYC library in C" msgstr "" -#: gnu/packages/messaging.scm:1226 +#: gnu/packages/messaging.scm:1344 msgid "psycLPC is a multi-user network server programming language" msgstr "" -#: gnu/packages/messaging.scm:1228 +#: gnu/packages/messaging.scm:1346 msgid "" "LPC is a bytecode language, invented to specifically implement\n" "multi user virtual environments on the internet. This technology is used for\n" @@ -9565,7 +10265,7 @@ msgid "" "many bug fixes." msgstr "" -#: gnu/packages/messaging.scm:1259 +#: gnu/packages/messaging.scm:1377 msgid "" "Loudmouth is a lightweight and easy-to-use C library for programming\n" "with the XMPP (formerly known as Jabber) protocol. It is designed to be\n" @@ -9573,11 +10273,11 @@ msgid "" "protocol allows." msgstr "" -#: gnu/packages/messaging.scm:1263 +#: gnu/packages/messaging.scm:1381 msgid "Asynchronous XMPP library" msgstr "" -#: gnu/packages/messaging.scm:1295 +#: gnu/packages/messaging.scm:1413 msgid "" "Mcabber is a small XMPP (Jabber) console client, which includes features\n" "such as SASL and TLS support, @dfn{Multi-User Chat} (MUC) support, logging,\n" @@ -9585,15 +10285,15 @@ msgid "" "support, and more." msgstr "" -#: gnu/packages/messaging.scm:1299 +#: gnu/packages/messaging.scm:1417 msgid "Small XMPP console client" msgstr "" -#: gnu/packages/messaging.scm:1345 +#: gnu/packages/messaging.scm:1463 msgid "Extensible console-based Jabber client" msgstr "" -#: gnu/packages/messaging.scm:1347 +#: gnu/packages/messaging.scm:1465 msgid "" "GNU Freetalk is a command-line Jabber/XMPP chat client. It notably uses\n" "the Readline library to handle input, so it features convenient navigation of\n" @@ -9601,39 +10301,39 @@ msgid "" "is also scriptable and extensible via Guile." msgstr "" -#: gnu/packages/messaging.scm:1381 gnu/packages/messaging.scm:1416 +#: gnu/packages/messaging.scm:1493 gnu/packages/messaging.scm:1522 msgid "C library for writing XMPP clients" msgstr "Bibliothèque C pour écrire des clients XMPP" -#: gnu/packages/messaging.scm:1382 +#: gnu/packages/messaging.scm:1494 msgid "" "Libmesode is a fork of libstrophe for use with Profanity\n" "XMPP Client. In particular, libmesode provides extra TLS functionality such as\n" "manual SSL certificate verification." msgstr "" -#: gnu/packages/messaging.scm:1417 +#: gnu/packages/messaging.scm:1523 msgid "" "Libstrophe is a minimal XMPP library written in C. It has\n" "almost no external dependencies, only an XML parsing library (expat or libxml\n" "are both supported)." msgstr "" -#: gnu/packages/messaging.scm:1453 +#: gnu/packages/messaging.scm:1559 msgid "Console-based XMPP client" msgstr "" -#: gnu/packages/messaging.scm:1454 +#: gnu/packages/messaging.scm:1560 msgid "" "Profanity is a console based XMPP client written in C\n" "using ncurses and libmesode, inspired by Irssi." msgstr "" -#: gnu/packages/messaging.scm:1484 +#: gnu/packages/messaging.scm:1590 msgid "Library implementing the client IRC protocol" msgstr "" -#: gnu/packages/messaging.scm:1485 +#: gnu/packages/messaging.scm:1591 msgid "" "Libircclient is a library which implements the client IRC\n" "protocol. It is designed to be small, fast, portable and compatible with the\n" @@ -9641,32 +10341,32 @@ msgid "" "building the IRC clients and bots." msgstr "" -#: gnu/packages/messaging.scm:1535 +#: gnu/packages/messaging.scm:1641 msgid "Tox chat client using ncurses" msgstr "" -#: gnu/packages/messaging.scm:1536 +#: gnu/packages/messaging.scm:1642 msgid "" "Toxic is a console-based instant messaging client, using\n" "c-toxcore and ncurses. It provides audio calls, sound and desktop\n" "notifications, and Python scripting support." msgstr "" -#: gnu/packages/mpd.scm:70 +#: gnu/packages/mpd.scm:82 msgid "Music Player Daemon client library" msgstr "" -#: gnu/packages/mpd.scm:71 +#: gnu/packages/mpd.scm:83 msgid "" "A stable, documented, asynchronous API library for\n" "interfacing MPD in the C, C++ & Objective C languages." msgstr "" -#: gnu/packages/mpd.scm:142 +#: gnu/packages/mpd.scm:155 msgid "Music Player Daemon" msgstr "" -#: gnu/packages/mpd.scm:143 +#: gnu/packages/mpd.scm:156 msgid "" "Music Player Daemon (MPD) is a flexible, powerful,\n" "server-side application for playing music. Through plugins and libraries it\n" @@ -9674,31 +10374,31 @@ msgid "" "protocol." msgstr "" -#: gnu/packages/mpd.scm:166 +#: gnu/packages/mpd.scm:179 msgid "Music Player Daemon client" msgstr "" -#: gnu/packages/mpd.scm:167 +#: gnu/packages/mpd.scm:180 msgid "" "MPC is a minimalist command line interface to MPD, the music\n" "player daemon." msgstr "" -#: gnu/packages/mpd.scm:190 +#: gnu/packages/mpd.scm:203 msgid "Curses Music Player Daemon client" msgstr "" -#: gnu/packages/mpd.scm:191 +#: gnu/packages/mpd.scm:204 msgid "" "ncmpc is a fully featured MPD client, which runs in a\n" "terminal using ncurses." msgstr "" -#: gnu/packages/mpd.scm:221 +#: gnu/packages/mpd.scm:234 msgid "Featureful ncurses based MPD client inspired by ncmpc" msgstr "" -#: gnu/packages/mpd.scm:222 +#: gnu/packages/mpd.scm:235 msgid "" "Ncmpcpp is an mpd client with a UI very similar to ncmpc,\n" "but it provides new useful features such as support for regular expressions\n" @@ -9706,42 +10406,42 @@ msgid "" "sort playlists, and a local file system browser." msgstr "" -#: gnu/packages/mpd.scm:245 +#: gnu/packages/mpd.scm:258 msgid "MPD client for track scrobbling" msgstr "" -#: gnu/packages/mpd.scm:246 +#: gnu/packages/mpd.scm:259 msgid "" "mpdscribble is a Music Player Daemon client which submits\n" "information about tracks being played to a scrobbler, such as Libre.FM." msgstr "" -#: gnu/packages/mpd.scm:271 +#: gnu/packages/mpd.scm:282 msgid "Python MPD client library" msgstr "" -#: gnu/packages/mpd.scm:272 +#: gnu/packages/mpd.scm:283 msgid "" "Python-mpd2 is a Python library which provides a client\n" "interface for the Music Player Daemon." msgstr "" -#: gnu/packages/mpd.scm:321 +#: gnu/packages/mpd.scm:332 msgid "Elegant client for the Music Player Daemon" msgstr "" -#: gnu/packages/mpd.scm:322 +#: gnu/packages/mpd.scm:333 msgid "" "Sonata is an elegant graphical client for the Music Player\n" "Daemon (MPD). It supports playlists, multiple profiles (connecting to different\n" "MPD servers, search and multimedia key support." msgstr "" -#: gnu/packages/netpbm.scm:178 +#: gnu/packages/netpbm.scm:179 msgid "Toolkit for manipulation of images" msgstr "Outils de manipulation d'images" -#: gnu/packages/netpbm.scm:180 +#: gnu/packages/netpbm.scm:181 msgid "" "Netpbm is a toolkit for the manipulation of graphic images, including\n" "the conversion of images between a variety of different formats.\n" @@ -9749,11 +10449,11 @@ msgid "" "about 100 graphics formats." msgstr "" -#: gnu/packages/nettle.scm:51 +#: gnu/packages/nettle.scm:52 msgid "C library for low-level cryptographic functionality" msgstr "" -#: gnu/packages/nettle.scm:53 +#: gnu/packages/nettle.scm:54 msgid "" "GNU Nettle is a low-level cryptographic library. It is designed to\n" "fit in easily in almost any context. It can be easily included in\n" @@ -9761,11 +10461,11 @@ msgid "" "themselves." msgstr "" -#: gnu/packages/networking.scm:99 +#: gnu/packages/networking.scm:115 msgid "Viewing and manipulating MAC addresses of network interfaces" msgstr "" -#: gnu/packages/networking.scm:100 +#: gnu/packages/networking.scm:116 msgid "" "GNU MAC Changer is a utility for viewing and changing MAC\n" "addresses of networking devices. New addresses may be set explicitly or\n" @@ -9773,22 +10473,22 @@ msgid "" "or, more generally, MAC addresses of the same category of hardware." msgstr "" -#: gnu/packages/networking.scm:128 +#: gnu/packages/networking.scm:144 msgid "Teredo IPv6 tunneling software" msgstr "" -#: gnu/packages/networking.scm:130 +#: gnu/packages/networking.scm:146 msgid "" "Miredo is an implementation (client, relay, server) of the Teredo\n" "specification, which provides IPv6 Internet connectivity to IPv6 enabled hosts\n" "residing in IPv4-only networks, even when they are behind a NAT device." msgstr "" -#: gnu/packages/networking.scm:152 +#: gnu/packages/networking.scm:168 msgid "Open bidirectional communication channels from the command line" msgstr "" -#: gnu/packages/networking.scm:154 +#: gnu/packages/networking.scm:170 msgid "" "socat is a relay for bidirectional data transfer between two independent\n" "data channels---files, pipes, devices, sockets, etc. It can create\n" @@ -9801,22 +10501,22 @@ msgid "" "or server shell scripts with network connections." msgstr "" -#: gnu/packages/networking.scm:235 +#: gnu/packages/networking.scm:251 msgid "Monitor and filter incoming requests for network services" msgstr "" -#: gnu/packages/networking.scm:236 +#: gnu/packages/networking.scm:252 msgid "" "With this package you can monitor and filter incoming requests for\n" "network services. It includes a library which may be used by daemons to\n" "transparently check connection attempts against an access control list." msgstr "" -#: gnu/packages/networking.scm:256 +#: gnu/packages/networking.scm:272 msgid "Library for message-based applications" msgstr "" -#: gnu/packages/networking.scm:258 +#: gnu/packages/networking.scm:274 msgid "" "The 0MQ lightweight messaging kernel is a library which extends the\n" "standard socket interfaces with features traditionally provided by specialized\n" @@ -9826,43 +10526,53 @@ msgid "" "more." msgstr "" -#: gnu/packages/networking.scm:297 +#: gnu/packages/networking.scm:312 +msgid "High-level C bindings for ØMQ" +msgstr "Liaisons de haut-niveau pour ØMQ" + +#: gnu/packages/networking.scm:314 +msgid "" +"czmq provides bindings for the ØMQ core API that hides the differences\n" +"between different versions of ØMQ." +msgstr "" + +#: gnu/packages/networking.scm:349 msgid "Apache Kafka C/C++ client library" msgstr "" -#: gnu/packages/networking.scm:299 +#: gnu/packages/networking.scm:351 msgid "" "librdkafka is a C library implementation of the Apache Kafka protocol,\n" "containing both Producer and Consumer support." msgstr "" -#: gnu/packages/networking.scm:316 +#: gnu/packages/networking.scm:368 msgid "Library for Neighbor Discovery Protocol" msgstr "" -#: gnu/packages/networking.scm:318 +#: gnu/packages/networking.scm:370 msgid "" "libndp contains a library which provides a wrapper for IPv6 Neighbor\n" "Discovery Protocol. It also provides a tool named ndptool for sending and\n" "receiving NDP messages." msgstr "" -#: gnu/packages/networking.scm:336 +#: gnu/packages/networking.scm:388 msgid "Display or change Ethernet device settings" msgstr "" -#: gnu/packages/networking.scm:338 +#: gnu/packages/networking.scm:390 msgid "" "ethtool can be used to query and change settings such as speed,\n" "auto-negotiation and checksum offload on many network devices, especially\n" "Ethernet devices." msgstr "" -#: gnu/packages/networking.scm:375 +#: gnu/packages/networking.scm:429 msgid "Text based network interface status monitor" msgstr "" -#: gnu/packages/networking.scm:377 +#: gnu/packages/networking.scm:431 msgid "" "IFStatus is a simple, easy-to-use program for displaying commonly\n" "needed/wanted real-time traffic statistics of multiple network\n" @@ -9870,11 +10580,11 @@ msgid "" "intended as a substitute for the PPPStatus and EthStatus projects." msgstr "" -#: gnu/packages/networking.scm:397 +#: gnu/packages/networking.scm:451 msgid "Realtime console network usage monitor" msgstr "" -#: gnu/packages/networking.scm:399 +#: gnu/packages/networking.scm:453 msgid "" "Nload is a console application which monitors network traffic and\n" "bandwidth usage in real time. It visualizes the in- and outgoing traffic using\n" @@ -9882,11 +10592,11 @@ msgid "" "and min/max network usage." msgstr "" -#: gnu/packages/networking.scm:442 +#: gnu/packages/networking.scm:496 msgid "Tunnel IPv4 data through a DNS server" msgstr "" -#: gnu/packages/networking.scm:443 +#: gnu/packages/networking.scm:497 msgid "" "Iodine tunnels IPv4 data through a DNS server. This\n" "can be useful in different situations where internet access is firewalled, but\n" @@ -9894,34 +10604,38 @@ msgid "" "and up to 1 Mbit/s downstream." msgstr "" -#: gnu/packages/networking.scm:481 -msgid "Improved whois client" -msgstr "" - -#: gnu/packages/networking.scm:482 -msgid "" -"This whois client is intelligent and can\n" -"automatically select the appropriate whois server for most queries.\n" -"Because of historical reasons this also includes a tool called mkpasswd\n" -"which can be used to encrypt a password with @code{crypt(3)}." -msgstr "" - -#: gnu/packages/networking.scm:535 -msgid "Network traffic analyzer" +#: gnu/packages/networking.scm:534 +msgid "Intelligent client for the WHOIS directory service" msgstr "" #: gnu/packages/networking.scm:536 msgid "" +"whois searches for an object in a @dfn{WHOIS} (RFC 3912) database.\n" +"It is commonly used to look up the registered users or assignees of an Internet\n" +"resource, such as a domain name, an IP address block, or an autonomous system.\n" +"It can automatically select the appropriate server for most queries.\n" +"\n" +"For historical reasons, this package also includes @command{mkpasswd}, which\n" +"encrypts passwords using @code{crypt(3)} and is unrelated to the Expect command\n" +"of the same name." +msgstr "" + +#: gnu/packages/networking.scm:611 +msgid "Network traffic analyzer" +msgstr "" + +#: gnu/packages/networking.scm:612 +msgid "" "Wireshark is a network protocol analyzer, or @dfn{packet\n" "sniffer}, that lets you capture and interactively browse the contents of\n" "network frames." msgstr "" -#: gnu/packages/networking.scm:556 +#: gnu/packages/networking.scm:632 msgid "Send ICMP ECHO_REQUEST packets to network hosts" msgstr "" -#: gnu/packages/networking.scm:558 +#: gnu/packages/networking.scm:634 msgid "" "fping is a ping like program which uses the Internet Control Message\n" "Protocol (ICMP) echo request to determine if a target host is responding.\n" @@ -9932,11 +10646,11 @@ msgid "" "fashion." msgstr "" -#: gnu/packages/networking.scm:592 +#: gnu/packages/networking.scm:668 msgid "Web server latency and throughput monitor" msgstr "" -#: gnu/packages/networking.scm:594 +#: gnu/packages/networking.scm:670 msgid "" "httping measures how long it takes to connect to a web server, send an\n" "HTTP(S) request, and receive the reply headers. It is somewhat similar to\n" @@ -9945,11 +10659,11 @@ msgid "" "application stack itself." msgstr "" -#: gnu/packages/networking.scm:625 +#: gnu/packages/networking.scm:701 msgid "Visualize curl statistics" msgstr "" -#: gnu/packages/networking.scm:627 +#: gnu/packages/networking.scm:703 msgid "" "@command{httpstat} is a tool to visualize statistics from the\n" "@command{curl} HTTP client. It acts as a wrapper for @command{curl} and\n" @@ -9957,21 +10671,21 @@ msgid "" "TCP connection, TLS handshake and so on) in the terminal." msgstr "" -#: gnu/packages/networking.scm:647 +#: gnu/packages/networking.scm:723 msgid "Console based live network and disk I/O bandwidth monitor" msgstr "" -#: gnu/packages/networking.scm:648 +#: gnu/packages/networking.scm:724 msgid "" "Bandwidth Monitor NG is a small and simple console based\n" "live network and disk I/O bandwidth monitor." msgstr "" -#: gnu/packages/networking.scm:702 +#: gnu/packages/networking.scm:778 msgid "Assess WiFi network security" msgstr "" -#: gnu/packages/networking.scm:704 +#: gnu/packages/networking.scm:780 msgid "" "Aircrack-ng is a complete suite of tools to assess WiFi network\n" "security. It focuses on different areas of WiFi security: monitoring,\n" @@ -9979,105 +10693,105 @@ msgid "" "allows for heavy scripting." msgstr "" -#: gnu/packages/networking.scm:729 +#: gnu/packages/networking.scm:805 msgid "Perl Interface to the Domain Name System" msgstr "" -#: gnu/packages/networking.scm:730 +#: gnu/packages/networking.scm:806 msgid "Net::DNS is the Perl Interface to the Domain Name System." msgstr "" -#: gnu/packages/networking.scm:761 +#: gnu/packages/networking.scm:837 msgid "IPv6 related part of the C socket.h defines and structure manipulators for Perl" msgstr "" -#: gnu/packages/networking.scm:762 +#: gnu/packages/networking.scm:838 msgid "" "Socket6 binds the IPv6 related part of the C socket header\n" "definitions and structure manipulators for Perl." msgstr "" -#: gnu/packages/networking.scm:788 +#: gnu/packages/networking.scm:864 msgid "Programmable DNS resolver class for offline emulation of DNS" msgstr "" -#: gnu/packages/networking.scm:789 +#: gnu/packages/networking.scm:865 msgid "" "Net::DNS::Resolver::Programmable is a programmable DNS resolver for\n" "offline emulation of DNS." msgstr "" -#: gnu/packages/networking.scm:822 +#: gnu/packages/networking.scm:898 msgid "Manages IPv4 and IPv6 addresses and subnets" msgstr "" -#: gnu/packages/networking.scm:823 +#: gnu/packages/networking.scm:899 msgid "NetAddr::IP manages IPv4 and IPv6 addresses and subsets." msgstr "" -#: gnu/packages/networking.scm:847 +#: gnu/packages/networking.scm:923 msgid "Patricia Trie Perl module for fast IP address lookups" msgstr "" -#: gnu/packages/networking.scm:849 +#: gnu/packages/networking.scm:925 msgid "Net::Patricia does IP address lookups quickly in Perl." msgstr "" -#: gnu/packages/networking.scm:872 +#: gnu/packages/networking.scm:948 msgid "Perl extension for merging IPv4 or IPv6 CIDR addresses" msgstr "" -#: gnu/packages/networking.scm:873 +#: gnu/packages/networking.scm:949 msgid "Net::CIDR::Lite merges IPv4 or IPv6 CIDR addresses." msgstr "" -#: gnu/packages/networking.scm:895 +#: gnu/packages/networking.scm:971 msgid "Look up location and network information by IP Address in Perl" msgstr "" -#: gnu/packages/networking.scm:896 +#: gnu/packages/networking.scm:972 msgid "" "The Perl module 'Geo::IP'. It looks up location and network\n" "information by IP Address." msgstr "" -#: gnu/packages/networking.scm:925 +#: gnu/packages/networking.scm:1001 msgid "Perl object interface for AF_INET/AF_INET6 domain sockets" msgstr "" -#: gnu/packages/networking.scm:926 +#: gnu/packages/networking.scm:1002 msgid "" "IO::Socket::INET6 is an interface for AF_INET/AF_INET6 domain\n" "sockets in Perl." msgstr "" -#: gnu/packages/networking.scm:955 +#: gnu/packages/networking.scm:1031 msgid "Library providing automatic proxy configuration management" msgstr "" -#: gnu/packages/networking.scm:956 +#: gnu/packages/networking.scm:1032 msgid "" "Libproxy handles the details of HTTP/HTTPS proxy\n" "configuration for applications across all scenarios. Applications using\n" "libproxy only have to specify which proxy to use." msgstr "" -#: gnu/packages/networking.scm:989 +#: gnu/packages/networking.scm:1065 msgid "Redirect any TCP connection through a proxy or proxy chain" msgstr "" -#: gnu/packages/networking.scm:990 +#: gnu/packages/networking.scm:1066 msgid "" "Proxychains-ng is a preloader which hooks calls to sockets\n" "in dynamically linked programs and redirects them through one or more SOCKS or\n" "HTTP proxies." msgstr "" -#: gnu/packages/networking.scm:1011 +#: gnu/packages/networking.scm:1087 msgid "Network communication layer on top of UDP" msgstr "" -#: gnu/packages/networking.scm:1013 +#: gnu/packages/networking.scm:1089 msgid "" "ENet's purpose is to provide a relatively thin, simple and robust network\n" "communication layer on top of UDP. The primary feature it provides is optional\n" @@ -10087,11 +10801,11 @@ msgid "" "library remains flexible, portable, and easily embeddable." msgstr "" -#: gnu/packages/networking.scm:1076 +#: gnu/packages/networking.scm:1153 msgid "Applicative network protocol demultiplexer" msgstr "" -#: gnu/packages/networking.scm:1078 +#: gnu/packages/networking.scm:1155 msgid "" "sslh is a network protocol demultiplexer. It acts like a switchboard,\n" "accepting connections from clients on one port and forwarding them to different\n" @@ -10103,11 +10817,11 @@ msgid "" "that block port 22." msgstr "" -#: gnu/packages/networking.scm:1101 +#: gnu/packages/networking.scm:1178 msgid "TCP, UDP and SCTP bandwidth measurement tool" msgstr "" -#: gnu/packages/networking.scm:1103 +#: gnu/packages/networking.scm:1180 msgid "" "iPerf is a tool to measure achievable bandwidth on IP networks. It\n" "supports tuning of various parameters related to timing, buffers and\n" @@ -10115,11 +10829,11 @@ msgid "" "the bandwidth, loss, and other parameters." msgstr "" -#: gnu/packages/networking.scm:1136 +#: gnu/packages/networking.scm:1213 msgid "Per-process bandwidth monitor" msgstr "" -#: gnu/packages/networking.scm:1137 +#: gnu/packages/networking.scm:1214 msgid "" "NetHogs is a small 'net top' tool for Linux. Instead of\n" "breaking the traffic down per protocol or per subnet, like most tools do, it\n" @@ -10131,11 +10845,11 @@ msgid "" "gone wild and are suddenly taking up your bandwidth." msgstr "" -#: gnu/packages/networking.scm:1183 +#: gnu/packages/networking.scm:1260 msgid "Usenet binary file downloader" msgstr "" -#: gnu/packages/networking.scm:1185 +#: gnu/packages/networking.scm:1262 msgid "" "NZBGet is a binary newsgrabber, which downloads files from Usenet based\n" "on information given in @code{nzb} files. NZBGet can be used in standalone\n" @@ -10145,11 +10859,11 @@ msgid "" "procedure calls (RPCs)." msgstr "" -#: gnu/packages/networking.scm:1239 +#: gnu/packages/networking.scm:1316 msgid "Virtual network switch" msgstr "" -#: gnu/packages/networking.scm:1242 +#: gnu/packages/networking.scm:1319 msgid "" "Open vSwitch is a multilayer virtual switch. It is designed to enable\n" "massive network automation through programmatic extension, while still\n" @@ -10157,54 +10871,54 @@ msgid "" "IPFIX, RSPAN, CLI, LACP, 802.1ag)." msgstr "" -#: gnu/packages/networking.scm:1264 +#: gnu/packages/networking.scm:1341 msgid "Python class and tools for handling IP addresses and networks" msgstr "" -#: gnu/packages/networking.scm:1265 +#: gnu/packages/networking.scm:1342 msgid "" "The @code{IP} class allows a comfortable parsing and\n" "handling for most notations in use for IPv4 and IPv6 addresses and\n" "networks." msgstr "" -#: gnu/packages/networking.scm:1285 +#: gnu/packages/networking.scm:1366 msgid "Internet bandwidth tester" msgstr "" -#: gnu/packages/networking.scm:1287 +#: gnu/packages/networking.scm:1368 msgid "" "Command line interface for testing internet bandwidth using\n" "speedtest.net." msgstr "" -#: gnu/packages/networking.scm:1305 +#: gnu/packages/networking.scm:1386 msgid "HPA's tftp client" msgstr "" -#: gnu/packages/networking.scm:1307 +#: gnu/packages/networking.scm:1388 msgid "" "This is a tftp client derived from OpenBSD tftp with some extra options\n" "added and bugs fixed. The source includes readline support but it is not\n" "enabled due to license conflicts between the BSD advertising clause and the GPL." msgstr "" -#: gnu/packages/networking.scm:1335 +#: gnu/packages/networking.scm:1416 msgid "Small Ident Daemon" msgstr "" -#: gnu/packages/networking.scm:1337 +#: gnu/packages/networking.scm:1418 msgid "" "@dfn{Pidentd} (Peter's Ident Daemon) is a identd, which implements a\n" "identification server. Pidentd looks up specific TCP/IP connections and\n" "returns the user name and other information about the connection." msgstr "" -#: gnu/packages/networking.scm:1384 +#: gnu/packages/networking.scm:1465 msgid "Create secure pipes between sockets" msgstr "" -#: gnu/packages/networking.scm:1385 +#: gnu/packages/networking.scm:1466 msgid "" "Spiped (pronounced \"ess-pipe-dee\") is a utility for creating\n" "symmetrically encrypted and authenticated pipes between socket addresses, so\n" @@ -10214,11 +10928,11 @@ msgid "" "does not use SSH and requires a pre-shared symmetric key." msgstr "" -#: gnu/packages/networking.scm:1412 +#: gnu/packages/networking.scm:1493 msgid "Routing Software Suite" msgstr "" -#: gnu/packages/networking.scm:1413 +#: gnu/packages/networking.scm:1494 msgid "" "Quagga is a routing software suite, providing implementations\n" "of OSPFv2, OSPFv3, RIP v1 and v2, RIPng and BGP-4 for Unix platforms.\n" @@ -10230,22 +10944,22 @@ msgid "" "updates to the zebra daemon." msgstr "" -#: gnu/packages/networking.scm:1461 +#: gnu/packages/networking.scm:1545 msgid "IPv6 security research toolkit" msgstr "" -#: gnu/packages/networking.scm:1462 +#: gnu/packages/networking.scm:1546 msgid "" "The THC IPv6 Toolkit provides command-line tools and a library\n" "for researching IPv6 implementations and deployments. It requires Linux 2.6 or\n" "newer and only works on Ethernet network interfaces." msgstr "" -#: gnu/packages/networking.scm:1488 +#: gnu/packages/networking.scm:1572 msgid "Bandwidth monitor" msgstr "" -#: gnu/packages/networking.scm:1489 +#: gnu/packages/networking.scm:1573 msgid "" "bmon is a monitoring and debugging tool to capture\n" "networking-related statistics and prepare them visually in a human-friendly\n" @@ -10253,11 +10967,11 @@ msgid "" "interface and a programmable text output for scripting." msgstr "" -#: gnu/packages/networking.scm:1531 +#: gnu/packages/networking.scm:1613 msgid "Framework for low-level network packet construction" msgstr "" -#: gnu/packages/networking.scm:1533 +#: gnu/packages/networking.scm:1615 msgid "" "Libnet provides a fairly portable framework for network packet\n" "construction and injection. It features portable packet creation interfaces\n" @@ -10266,27 +10980,145 @@ msgid "" "can be whipped up with little effort." msgstr "" -#: gnu/packages/pdf.scm:127 +#: gnu/packages/networking.scm:1643 +msgid "Network diagnostic tool" +msgstr "" + +#: gnu/packages/networking.scm:1645 +msgid "" +"@dfn{mtr} (My TraceRoute) combines the functionality of the\n" +"@command{traceroute} and @command{ping} programs in a single network diagnostic\n" +"tool. @command{mtr} can use several network protocols to detect intermediate\n" +"routers (or @dfn{hops}) between the local host and a user-specified destination.\n" +"It then continually measures the response time and packet loss at each hop, and\n" +"displays the results in real time." +msgstr "" + +#: gnu/packages/networking.scm:1697 +msgid "IKEv1/v2 keying daemon" +msgstr "" + +#: gnu/packages/networking.scm:1698 +msgid "" +"StrongSwan is an IPsec implementation originally based upon\n" +"the FreeS/WAN project. It contains support for IKEv1, IKEv2, MOBIKE, IPv6,\n" +"NAT-T and more." +msgstr "" + +#: gnu/packages/networking.scm:1781 +msgid "Peer-to-peer client for the eD2K and Kademlia networks" +msgstr "" + +#: gnu/packages/networking.scm:1783 +msgid "" +"aMule is an eMule-like client for the eD2k and Kademlia peer-to-peer\n" +"file sharing networks. It includes a graphical user interface (GUI), a daemon\n" +"allowing you to run a client with no graphical interface, and a Web GUI for\n" +"remote access. The @command{amulecmd} command allows you to control aMule\n" +"remotely." +msgstr "" + +#: gnu/packages/networking.scm:1806 +msgid "Framework for proximity-based peer-to-peer applications" +msgstr "" + +#: gnu/packages/networking.scm:1807 +msgid "" +"Zyre provides reliable group messaging over local area\n" +"networks using zeromq. It has these key characteristics:\n" +"\n" +"@itemize\n" +"@item Zyre needs no administration or configuration.\n" +"@item Peers may join and leave the network at any time.\n" +"@item Peers talk to each other without any central brokers or servers.\n" +"@item Peers can talk directly to each other.\n" +"@item Peers can join groups, and then talk to groups.\n" +"@item Zyre is reliable, and loses no messages even when the network is heavily loaded.\n" +"@item Zyre is fast and has low latency, requiring no consensus protocols.\n" +"@item Zyre is designed for WiFi networks, yet also works well on Ethernet networks.\n" +"@end itemize" +msgstr "" + +#: gnu/packages/networking.scm:1847 +msgid "CAN utilities" +msgstr "" + +#: gnu/packages/networking.scm:1848 +msgid "" +"This package provides CAN utilities in the following areas:\n" +"\n" +"@itemize\n" +"@item Basic tools to display, record, generate and replay CAN traffic\n" +"@item CAN access via IP sockets\n" +"@item CAN in-kernel gateway configuration\n" +"@item CAN bus measurement and testing\n" +"@item ISO-TP (ISO15765-2:2016 - this means messages with a body larger than\n" +"eight bytes) tools\n" +"@item Log file converters\n" +"@item Serial Line Discipline configuration for slcan driver\n" +"@end itemize" +msgstr "" + +#: gnu/packages/networking.scm:1900 +msgid "C++ library for ASynchronous network I/O" +msgstr "" + +#: gnu/packages/networking.scm:1901 +msgid "" +"Asio is a cross-platform C++ library for network and\n" +"low-level I/O programming that provides developers with a consistent\n" +"asynchronous model using a modern C++ approach." +msgstr "" + +#: gnu/packages/networking.scm:1925 +msgid "Fast tunnel proxy that helps you bypass firewalls" +msgstr "" + +#: gnu/packages/networking.scm:1927 +msgid "" +"This package is a fast tunnel proxy that helps you bypass firewalls.\n" +"\n" +"Features:\n" +"@itemize\n" +"@item TCP & UDP support\n" +"@item User management API\n" +"@item TCP Fast Open\n" +"@item Workers and graceful restart\n" +"@item Destination IP blacklist\n" +"@end itemize" +msgstr "" + +#: gnu/packages/pdf.scm:121 msgid "PDF rendering library" msgstr "Bibliothèque de rendu PDF" -#: gnu/packages/pdf.scm:129 +#: gnu/packages/pdf.scm:123 msgid "Poppler is a PDF rendering library based on the xpdf-3.0 code base." msgstr "" -#: gnu/packages/pdf.scm:138 -msgid "Qt4 frontend for the Poppler PDF rendering library" +#: gnu/packages/pdf.scm:148 +msgid "Poppler encoding files for rendering of CJK and Cyrillic text" msgstr "" #: gnu/packages/pdf.scm:149 +msgid "" +"This package provides optional encoding files for Poppler.\n" +"When present, Poppler is able to correctly render CJK and Cyrillic text." +msgstr "" + +#: gnu/packages/pdf.scm:162 +msgid "Qt4 frontend for the Poppler PDF rendering library" +msgstr "" + +#: gnu/packages/pdf.scm:169 msgid "Qt5 frontend for the Poppler PDF rendering library" msgstr "" -#: gnu/packages/pdf.scm:182 +#: gnu/packages/pdf.scm:202 msgid "Python bindings for Poppler-Qt4" msgstr "" -#: gnu/packages/pdf.scm:184 +#: gnu/packages/pdf.scm:204 msgid "" "This package provides Python bindings for the Qt4 interface of the\n" "Poppler PDF rendering library." @@ -10294,11 +11126,11 @@ msgstr "" "Ce paquet fournit les liaisons Python pour l'interface Qt4 de la\n" "bibliothèque de rendu de PDF Poppler." -#: gnu/packages/pdf.scm:229 +#: gnu/packages/pdf.scm:249 msgid "Python bindings for Poppler-Qt5" msgstr "" -#: gnu/packages/pdf.scm:231 +#: gnu/packages/pdf.scm:251 msgid "" "This package provides Python bindings for the Qt5 interface of the\n" "Poppler PDF rendering library." @@ -10306,90 +11138,90 @@ msgstr "" "Ce paquet fournit les liaisons Python pour l'interface Qt5 de la\n" "bibliothèque de rendu de PDF Poppler." -#: gnu/packages/pdf.scm:268 +#: gnu/packages/pdf.scm:288 msgid "Library for generating PDF files" msgstr "Bibliothèque de génération de fichiers PDF" -#: gnu/packages/pdf.scm:270 +#: gnu/packages/pdf.scm:290 msgid "" "libHaru is a library for generating PDF files. libHaru does not support\n" "reading and editing of existing PDF files." msgstr "" -#: gnu/packages/pdf.scm:317 +#: gnu/packages/pdf.scm:337 msgid "Viewer for PDF files based on the Motif toolkit" msgstr "Visionneuse pour fichiers PDF basée sur la boîte à outil Motif" -#: gnu/packages/pdf.scm:319 +#: gnu/packages/pdf.scm:339 msgid "Xpdf is a viewer for Portable Document Format (PDF) files." msgstr "Xpdf est une visionneuse pour fichiers PDF (Portable Document Format)" -#: gnu/packages/pdf.scm:349 +#: gnu/packages/pdf.scm:367 msgid "Comic book support for zathura (libarchive backend)" msgstr "" -#: gnu/packages/pdf.scm:350 +#: gnu/packages/pdf.scm:368 msgid "" "The zathura-cb plugin adds comic book support to zathura\n" "using libarchive." msgstr "" -#: gnu/packages/pdf.scm:380 +#: gnu/packages/pdf.scm:396 msgid "PS support for zathura (libspectre backend)" msgstr "" -#: gnu/packages/pdf.scm:381 +#: gnu/packages/pdf.scm:397 msgid "" "The zathura-ps plugin adds PS support to zathura\n" "using libspectre." msgstr "" -#: gnu/packages/pdf.scm:412 +#: gnu/packages/pdf.scm:426 msgid "DjVu support for zathura (DjVuLibre backend)" msgstr "" -#: gnu/packages/pdf.scm:413 +#: gnu/packages/pdf.scm:427 msgid "" "The zathura-djvu plugin adds DjVu support to zathura\n" "using the DjVuLibre library." msgstr "" -#: gnu/packages/pdf.scm:447 +#: gnu/packages/pdf.scm:459 msgid "PDF support for zathura (mupdf backend)" msgstr "" -#: gnu/packages/pdf.scm:448 +#: gnu/packages/pdf.scm:460 msgid "" "The zathura-pdf-mupdf plugin adds PDF support to zathura\n" "by using the @code{mupdf} rendering library." msgstr "" -#: gnu/packages/pdf.scm:480 +#: gnu/packages/pdf.scm:489 msgid "PDF support for zathura (poppler backend)" msgstr "" -#: gnu/packages/pdf.scm:481 +#: gnu/packages/pdf.scm:490 msgid "" "The zathura-pdf-poppler plugin adds PDF support to zathura\n" "by using the poppler rendering engine." msgstr "" -#: gnu/packages/pdf.scm:518 +#: gnu/packages/pdf.scm:548 msgid "Lightweight keyboard-driven PDF viewer" msgstr "Visionneuse de PDF légère gérée au clavier" -#: gnu/packages/pdf.scm:519 +#: gnu/packages/pdf.scm:549 msgid "" "Zathura is a customizable document viewer. It provides a\n" "minimalistic interface and an interface that mainly focuses on keyboard\n" "interaction." msgstr "" -#: gnu/packages/pdf.scm:558 +#: gnu/packages/pdf.scm:588 msgid "Tools to work with the PDF file format" msgstr "Outils de manipulation de fichiers PDF" -#: gnu/packages/pdf.scm:560 +#: gnu/packages/pdf.scm:590 msgid "" "PoDoFo is a C++ library and set of command-line tools to work with the\n" "PDF file format. It can parse PDF files and load them into memory, and makes\n" @@ -10398,11 +11230,11 @@ msgid "" "extracting content or merging files." msgstr "" -#: gnu/packages/pdf.scm:609 +#: gnu/packages/pdf.scm:635 msgid "Lightweight PDF viewer and toolkit" msgstr "Boite à outils légère pour la visualisation de documents PDF" -#: gnu/packages/pdf.scm:611 +#: gnu/packages/pdf.scm:637 msgid "" "MuPDF is a C library that implements a PDF and XPS parsing and\n" "rendering engine. It is used primarily to render pages into bitmaps,\n" @@ -10422,11 +11254,11 @@ msgstr "" "d'outils en ligne de commande pour le rendu par lots (@command{pdfdraw}),\n" "la réécriture de fichiers (pdfclean) et l'analyse de structure (@command{pdfshow})." -#: gnu/packages/pdf.scm:663 +#: gnu/packages/pdf.scm:692 msgid "Command-line tools and library for transforming PDF files" msgstr "" -#: gnu/packages/pdf.scm:665 +#: gnu/packages/pdf.scm:694 msgid "" "QPDF is a command-line program that does structural, content-preserving\n" "transformations on PDF files. It could have been called something like\n" @@ -10435,32 +11267,32 @@ msgid "" "program capable of converting PDF into other formats." msgstr "" -#: gnu/packages/pdf.scm:695 +#: gnu/packages/pdf.scm:724 msgid "Notetaking using a stylus" msgstr "" -#: gnu/packages/pdf.scm:697 +#: gnu/packages/pdf.scm:726 msgid "" "Xournal is an application for notetaking, sketching, keeping a journal\n" "using a stylus." msgstr "" -#: gnu/packages/pdf.scm:719 +#: gnu/packages/pdf.scm:748 msgid "Python library for generating PDFs and graphics" msgstr "" -#: gnu/packages/pdf.scm:720 +#: gnu/packages/pdf.scm:749 msgid "" "This is the ReportLab PDF Toolkit. It allows rapid creation\n" "of rich PDF documents, and also creation of charts in a variety of bitmap and\n" "vector formats." msgstr "" -#: gnu/packages/pdf.scm:773 +#: gnu/packages/pdf.scm:802 msgid "PDF presentation tool with visual effects" msgstr "" -#: gnu/packages/pdf.scm:775 +#: gnu/packages/pdf.scm:804 msgid "" "Impressive is a tool to display PDF files that provides visual effects\n" "such as smooth alpha-blended slide transitions. It provides additional tools\n" @@ -10468,31 +11300,31 @@ msgid "" "the PDF pages." msgstr "" -#: gnu/packages/pdf.scm:823 +#: gnu/packages/pdf.scm:852 msgid "Framebuffer and drm-based image viewer" msgstr "" -#: gnu/packages/pdf.scm:825 +#: gnu/packages/pdf.scm:854 msgid "" "fbida contains a few applications for viewing and editing images on\n" "the framebuffer." msgstr "" -#: gnu/packages/pdf.scm:850 +#: gnu/packages/pdf.scm:879 msgid "PDF to SVG converter" msgstr "" -#: gnu/packages/pdf.scm:851 +#: gnu/packages/pdf.scm:880 msgid "" "@command{pdf2svg} is a simple command-line PDF to SVG\n" "converter using the Poppler and Cairo libraries." msgstr "" -#: gnu/packages/pdf.scm:882 gnu/packages/pdf.scm:919 +#: gnu/packages/pdf.scm:911 gnu/packages/pdf.scm:948 msgid "Pure Python PDF toolkit" msgstr "" -#: gnu/packages/pdf.scm:883 +#: gnu/packages/pdf.scm:912 msgid "" "PyPDF2 is a pure Python PDF library capable of:\n" "\n" @@ -10512,7 +11344,7 @@ msgid "" "manage or manipulate PDFs." msgstr "" -#: gnu/packages/pdf.scm:920 +#: gnu/packages/pdf.scm:949 msgid "" "PyPDF2 is a pure Python PDF toolkit.\n" "\n" @@ -10520,11 +11352,11 @@ msgid "" "python-pypdf2 instead." msgstr "" -#: gnu/packages/pdf.scm:944 +#: gnu/packages/pdf.scm:973 msgid "Scale and tile PDF images/pages to print on multiple pages" msgstr "" -#: gnu/packages/pdf.scm:945 +#: gnu/packages/pdf.scm:974 msgid "" "@command{pdfposter} can be used to create a large poster by\n" "building it from multple pages and/or printing it on large media. It expects\n" @@ -10537,11 +11369,11 @@ msgid "" "PDF. Indeed @command{pdfposter} was inspired by @command{poster}." msgstr "" -#: gnu/packages/pdf.scm:976 +#: gnu/packages/pdf.scm:1005 msgid "Command-line utility to search text in PDF files" msgstr "" -#: gnu/packages/pdf.scm:978 +#: gnu/packages/pdf.scm:1007 msgid "" "Pdfgrep searches in pdf files for strings matching a regular expression.\n" "Support some GNU grep options as file name output, page number output,\n" @@ -10562,31 +11394,31 @@ msgid "" "feature." msgstr "" -#: gnu/packages/perl.scm:148 +#: gnu/packages/perl.scm:157 msgid "Implementation of the Perl programming language" msgstr "Implémentation du langage de programmation Perl" -#: gnu/packages/perl.scm:150 +#: gnu/packages/perl.scm:159 msgid "" "Perl 5 is a highly capable, feature-rich programming language with over\n" "24 years of development." msgstr "" -#: gnu/packages/perl.scm:169 +#: gnu/packages/perl.scm:213 msgid "Module for merging hierarchies using the C3 algorithm" msgstr "" -#: gnu/packages/perl.scm:170 +#: gnu/packages/perl.scm:214 msgid "" "This module implements the C3 algorithm, which aims to\n" "provide a sane method resolution order under multiple inheritance." msgstr "" -#: gnu/packages/perl.scm:188 +#: gnu/packages/perl.scm:232 msgid "Compute differences between two files or lists" msgstr "" -#: gnu/packages/perl.scm:189 +#: gnu/packages/perl.scm:233 msgid "" "This is a module for computing the difference between two\n" "files, two strings, or any other two lists of things. It uses an intelligent\n" @@ -10595,11 +11427,11 @@ msgid "" "differences." msgstr "" -#: gnu/packages/perl.scm:211 +#: gnu/packages/perl.scm:255 msgid "Use shorter versions of class names" msgstr "" -#: gnu/packages/perl.scm:212 +#: gnu/packages/perl.scm:256 msgid "" "The alias module loads the class you specify and exports\n" "into your namespace a subroutine that returns the class name. You can\n" @@ -10607,11 +11439,11 @@ msgid "" "implicitly." msgstr "" -#: gnu/packages/perl.scm:234 +#: gnu/packages/perl.scm:278 msgid "Transparently use Moose or Mouse modules" msgstr "" -#: gnu/packages/perl.scm:236 +#: gnu/packages/perl.scm:280 msgid "" "This module facilitates using @code{Moose} or @code{Mouse} modules\n" "without changing the code. By default, Mouse will be provided to libraries,\n" @@ -10620,35 +11452,31 @@ msgid "" "variable ANY_MOOSE to be Moose or Mouse." msgstr "" -#: gnu/packages/perl.scm:259 +#: gnu/packages/perl.scm:303 msgid "Configuration files and command line parsing" msgstr "" -#: gnu/packages/perl.scm:260 +#: gnu/packages/perl.scm:304 msgid "" "AppConfig is a bundle of Perl5 modules for reading\n" "configuration files and parsing command line arguments." msgstr "" -#: gnu/packages/perl.scm:278 -msgid "Perl API to zip files" -msgstr "" - -#: gnu/packages/perl.scm:300 +#: gnu/packages/perl.scm:324 msgid "Small utils for array manipulation" msgstr "" -#: gnu/packages/perl.scm:301 +#: gnu/packages/perl.scm:325 msgid "" "@code{Array::Utils} is a small pure-perl module containing\n" "list manipulation routines." msgstr "" -#: gnu/packages/perl.scm:320 +#: gnu/packages/perl.scm:344 msgid "Allow C/XS libraries to interrupt perl asynchronously" msgstr "" -#: gnu/packages/perl.scm:322 +#: gnu/packages/perl.scm:346 msgid "" "@code{Async::Interrupt} implements a single feature only of interest\n" "to advanced perl modules, namely asynchronous interruptions (think \"UNIX\n" @@ -10666,11 +11494,11 @@ msgid "" "sometimes even without using a single syscall." msgstr "" -#: gnu/packages/perl.scm:352 +#: gnu/packages/perl.scm:376 msgid "Lexically disable autovivification" msgstr "" -#: gnu/packages/perl.scm:353 +#: gnu/packages/perl.scm:377 msgid "" "When an undefined variable is dereferenced, it gets silently\n" "upgraded to an array or hash reference (depending of the type of the\n" @@ -10684,11 +11512,19 @@ msgid "" "error when it would have happened." msgstr "" -#: gnu/packages/perl.scm:379 gnu/packages/perl.scm:6328 +#: gnu/packages/perl.scm:410 +msgid "Disables bareword filehandles" +msgstr "" + +#: gnu/packages/perl.scm:411 +msgid "This module disables bareword filehandles." +msgstr "" + +#: gnu/packages/perl.scm:428 gnu/packages/perl.scm:6862 msgid "Establish an ISA relationship with base classes at compile time" msgstr "" -#: gnu/packages/perl.scm:380 +#: gnu/packages/perl.scm:429 msgid "" "Allows you to both load one or more modules, while setting\n" "up inheritance from those modules at the same time. Unless you are using the\n" @@ -10696,11 +11532,11 @@ msgid "" "parent." msgstr "" -#: gnu/packages/perl.scm:400 +#: gnu/packages/perl.scm:449 msgid "Open a browser in a given URL" msgstr "" -#: gnu/packages/perl.scm:401 +#: gnu/packages/perl.scm:450 msgid "" "The functions exported by this module allow you to open URLs\n" "in the user's browser. A set of known commands per OS-name is tested for\n" @@ -10708,21 +11544,29 @@ msgid "" "all known commands are checked." msgstr "" -#: gnu/packages/perl.scm:426 +#: gnu/packages/perl.scm:475 msgid "Execute code after a scope finished compilation" msgstr "" -#: gnu/packages/perl.scm:427 +#: gnu/packages/perl.scm:476 msgid "" "This module allows you to execute code when perl finished\n" "compiling the surrounding scope." msgstr "" -#: gnu/packages/perl.scm:445 +#: gnu/packages/perl.scm:497 +msgid "Wrap OP check callbacks" +msgstr "" + +#: gnu/packages/perl.scm:498 +msgid "This module allows you to wrap OP check callbacks." +msgstr "" + +#: gnu/packages/perl.scm:515 msgid "Lists of reserved barewords and symbol names" msgstr "" -#: gnu/packages/perl.scm:446 +#: gnu/packages/perl.scm:516 msgid "" "@code{B::Keywords} supplies several arrays of exportable\n" "keywords: @code{@@Scalars, @@Arrays, @@Hashes, @@Filehandles, @@Symbols,\n" @@ -10730,11 +11574,11 @@ msgid "" "@@ExporterSymbols}." msgstr "" -#: gnu/packages/perl.scm:469 +#: gnu/packages/perl.scm:539 msgid "Benchmarking with statistical confidence" msgstr "" -#: gnu/packages/perl.scm:471 +#: gnu/packages/perl.scm:541 msgid "" "The Benchmark::Timer class allows you to time portions of code\n" "conveniently, as well as benchmark code by allowing timings of repeated\n" @@ -10743,11 +11587,11 @@ msgid "" "but don't want to go all out and profile your code." msgstr "" -#: gnu/packages/perl.scm:496 +#: gnu/packages/perl.scm:566 msgid "Bit vector library" msgstr "" -#: gnu/packages/perl.scm:497 +#: gnu/packages/perl.scm:567 msgid "" "Bit::Vector is an efficient C library which allows you to\n" "handle bit vectors, sets (of integers), \"big integer arithmetic\" and boolean\n" @@ -10757,62 +11601,62 @@ msgid "" "library can nevertheless be used stand-alone, without Perl." msgstr "" -#: gnu/packages/perl.scm:519 +#: gnu/packages/perl.scm:589 msgid "Boolean support for Perl" msgstr "" -#: gnu/packages/perl.scm:520 +#: gnu/packages/perl.scm:590 msgid "" "This module provides basic Boolean support, by defining two\n" "special objects: true and false." msgstr "" -#: gnu/packages/perl.scm:538 +#: gnu/packages/perl.scm:608 msgid "Data files for Business::ISBN" msgstr "" -#: gnu/packages/perl.scm:539 +#: gnu/packages/perl.scm:609 msgid "" "This package provides a data pack for @code{Business::ISBN}.\n" "These data are generated from the RangeMessage.xml file provided by the ISBN\n" "Agency." msgstr "" -#: gnu/packages/perl.scm:561 +#: gnu/packages/perl.scm:631 msgid "Work with International Standard Book Numbers" msgstr "" -#: gnu/packages/perl.scm:562 +#: gnu/packages/perl.scm:632 msgid "" "This modules provides tools to deal with International\n" "Standard Book Numbers, including ISBN-10 and ISBN-13." msgstr "" -#: gnu/packages/perl.scm:580 +#: gnu/packages/perl.scm:650 msgid "Work with International Standard Serial Numbers" msgstr "" -#: gnu/packages/perl.scm:581 +#: gnu/packages/perl.scm:651 msgid "" "This modules provides tools to deal with International\n" "Standard Serial Numbers." msgstr "" -#: gnu/packages/perl.scm:601 +#: gnu/packages/perl.scm:671 msgid "Work with International Standard Music Numbers" msgstr "" -#: gnu/packages/perl.scm:602 +#: gnu/packages/perl.scm:672 msgid "" "This modules provides tools to deal with International\n" "Standard Music Numbers." msgstr "" -#: gnu/packages/perl.scm:623 +#: gnu/packages/perl.scm:693 msgid "Cache interface for Perl" msgstr "Interface de cache pour Perl" -#: gnu/packages/perl.scm:624 +#: gnu/packages/perl.scm:694 msgid "" "The Cache modules are designed to assist a developer in\n" "persisting data for a specified period of time. Often these modules are used\n" @@ -10823,11 +11667,11 @@ msgid "" "easy to use abstraction of the file system or shared memory." msgstr "" -#: gnu/packages/perl.scm:647 +#: gnu/packages/perl.scm:717 msgid "Shared memory interprocess cache via mmap" msgstr "" -#: gnu/packages/perl.scm:648 +#: gnu/packages/perl.scm:718 msgid "" "A shared memory cache through an mmap'ed file. It's core is\n" "written in C for performance. It uses fcntl locking to ensure multiple\n" @@ -10835,11 +11679,11 @@ msgid "" "algorithm to keep the most used entries in the cache." msgstr "" -#: gnu/packages/perl.scm:669 +#: gnu/packages/perl.scm:739 msgid "Capture STDOUT and STDERR from Perl, XS or external programs" msgstr "" -#: gnu/packages/perl.scm:671 +#: gnu/packages/perl.scm:741 msgid "" "Capture::Tiny provides a simple, portable way to capture almost anything\n" "sent to STDOUT or STDERR, regardless of whether it comes from Perl, from XS\n" @@ -10847,52 +11691,68 @@ msgid "" "is captured while being passed through to the original file handles." msgstr "" -#: gnu/packages/perl.scm:690 +#: gnu/packages/perl.scm:760 msgid "Check compatibility with the installed perl version" msgstr "" -#: gnu/packages/perl.scm:692 +#: gnu/packages/perl.scm:762 msgid "" "This module is used by Schmorp's modules during configuration stage\n" "to test the installed perl for compatibility with his modules." msgstr "" -#: gnu/packages/perl.scm:712 +#: gnu/packages/perl.scm:780 +msgid "Alternative warn and die for modules" +msgstr "" + +#: gnu/packages/perl.scm:781 +msgid "" +"The @code{Carp} routines are useful in your own modules\n" +"because they act like @code{die()} or @code{warn()}, but with a message\n" +"which is more likely to be useful to a user of your module. In the case\n" +"of @code{cluck}, @code{confess}, and @code{longmess} that context is a\n" +"summary of every call in the call-stack. For a shorter message you can use\n" +"@code{carp} or @code{croak} which report the error as being from where your\n" +"module was called. There is no guarantee that that is where the error was,\n" +"but it is a good educated guess." +msgstr "" + +#: gnu/packages/perl.scm:807 msgid "Warns and dies noisily with stack backtraces/" msgstr "" -#: gnu/packages/perl.scm:713 +#: gnu/packages/perl.scm:808 msgid "" "This module is meant as a debugging aid. It can be used to\n" "make a script complain loudly with stack backtraces when @code{warn()}-ing or\n" "@code{die()}ing." msgstr "" -#: gnu/packages/perl.scm:732 +#: gnu/packages/perl.scm:827 msgid "Executable comments for Perl" msgstr "" -#: gnu/packages/perl.scm:733 +#: gnu/packages/perl.scm:828 msgid "" "Carp::Assert is intended for a purpose like the ANSI C\n" "library assert.h." msgstr "" -#: gnu/packages/perl.scm:755 +#: gnu/packages/perl.scm:850 msgid "Convenience wrappers around Carp::Assert" msgstr "" -#: gnu/packages/perl.scm:756 +#: gnu/packages/perl.scm:851 msgid "" "Carp::Assert::More is a set of handy assertion functions for\n" "Perl." msgstr "" -#: gnu/packages/perl.scm:776 +#: gnu/packages/perl.scm:871 msgid "Report errors from a \"clan\" of modules" msgstr "" -#: gnu/packages/perl.scm:777 +#: gnu/packages/perl.scm:872 msgid "" "This module allows errors from a clan (or family) of modules\n" "to appear to originate from the caller of the clan. This is necessary in\n" @@ -10900,29 +11760,29 @@ msgid "" "the Carp.pm module doesn't help." msgstr "" -#: gnu/packages/perl.scm:797 +#: gnu/packages/perl.scm:892 msgid "Read the CDDB entry for an audio CD in your drive" msgstr "" -#: gnu/packages/perl.scm:798 +#: gnu/packages/perl.scm:893 msgid "This module can retrieve information from the CDDB." msgstr "" -#: gnu/packages/perl.scm:820 +#: gnu/packages/perl.scm:915 msgid "Automated accessor generation" msgstr "" -#: gnu/packages/perl.scm:821 +#: gnu/packages/perl.scm:916 msgid "" "This module automagically generates accessors/mutators for\n" "your class." msgstr "" -#: gnu/packages/perl.scm:843 +#: gnu/packages/perl.scm:938 msgid "Faster, but less expandable, chained accessors" msgstr "" -#: gnu/packages/perl.scm:844 +#: gnu/packages/perl.scm:939 msgid "" "A chained accessor is one that always returns the object\n" "when called with parameters (to set), and the value of the field when called\n" @@ -10930,52 +11790,52 @@ msgid "" "the same mk_accessors interface." msgstr "" -#: gnu/packages/perl.scm:871 +#: gnu/packages/perl.scm:966 msgid "Build groups of accessors" msgstr "" -#: gnu/packages/perl.scm:872 +#: gnu/packages/perl.scm:967 msgid "" "This class lets you build groups of accessors that will call\n" "different getters and setters." msgstr "" -#: gnu/packages/perl.scm:892 +#: gnu/packages/perl.scm:987 msgid "Pragma to use the C3 method resolution order algorithm" msgstr "" -#: gnu/packages/perl.scm:893 +#: gnu/packages/perl.scm:988 msgid "" "This is pragma to change Perl 5's standard method resolution\n" "order from depth-first left-to-right (a.k.a - pre-order) to the more\n" "sophisticated C3 method resolution order." msgstr "" -#: gnu/packages/perl.scm:917 +#: gnu/packages/perl.scm:1012 msgid "Drop-in replacement for NEXT" msgstr "" -#: gnu/packages/perl.scm:918 +#: gnu/packages/perl.scm:1013 msgid "" "This module is intended as a drop-in replacement for NEXT,\n" "supporting the same interface, but using Class::C3 to do the hard work." msgstr "" -#: gnu/packages/perl.scm:943 +#: gnu/packages/perl.scm:1038 msgid "Load mix-ins or components to your C3-based class" msgstr "" -#: gnu/packages/perl.scm:944 +#: gnu/packages/perl.scm:1039 msgid "" "This module will inject base classes to your module using\n" "the Class::C3 method resolution order." msgstr "" -#: gnu/packages/perl.scm:962 +#: gnu/packages/perl.scm:1057 msgid "Inheritable, overridable class data" msgstr "" -#: gnu/packages/perl.scm:963 +#: gnu/packages/perl.scm:1058 msgid "" "Class::Data::Inheritable is for creating accessor/mutators\n" "to class data. That is, if you want to store something about your class as a\n" @@ -10983,21 +11843,21 @@ msgid "" "subclasses and can be overridden." msgstr "" -#: gnu/packages/perl.scm:984 +#: gnu/packages/perl.scm:1079 msgid "Class for easy date and time manipulation" msgstr "" -#: gnu/packages/perl.scm:985 +#: gnu/packages/perl.scm:1080 msgid "" "This module provides a general-purpose date and datetime\n" "type for perl." msgstr "" -#: gnu/packages/perl.scm:1002 +#: gnu/packages/perl.scm:1097 msgid "Base class for error handling" msgstr "" -#: gnu/packages/perl.scm:1004 +#: gnu/packages/perl.scm:1099 msgid "" "@code{Class::ErrorHandler} provides an error-handling mechanism that is generic\n" "enough to be used as the base class for a variety of OO classes. Subclasses inherit\n" @@ -11005,60 +11865,60 @@ msgid "" "to the calling program." msgstr "" -#: gnu/packages/perl.scm:1025 +#: gnu/packages/perl.scm:1120 msgid "Utility methods for factory classes" msgstr "" -#: gnu/packages/perl.scm:1026 +#: gnu/packages/perl.scm:1121 msgid "This module exports methods useful for factory classes." msgstr "" -#: gnu/packages/perl.scm:1043 +#: gnu/packages/perl.scm:1138 msgid "Get information about a class and its structure" msgstr "" -#: gnu/packages/perl.scm:1044 +#: gnu/packages/perl.scm:1139 msgid "" "Class::Inspector allows you to get information about a\n" "loaded class." msgstr "" -#: gnu/packages/perl.scm:1072 +#: gnu/packages/perl.scm:1168 msgid "Working (require \"Class::Name\") and more" msgstr "" -#: gnu/packages/perl.scm:1073 +#: gnu/packages/perl.scm:1169 msgid "" "\"require EXPR\" only accepts Class/Name.pm style module\n" "names, not Class::Name. For that, this module provides \"load_class\n" "'Class::Name'\"." msgstr "" -#: gnu/packages/perl.scm:1096 +#: gnu/packages/perl.scm:1193 msgid "XS implementation of parts of Class::Load" msgstr "" -#: gnu/packages/perl.scm:1097 +#: gnu/packages/perl.scm:1194 msgid "" "This module provides an XS implementation for portions of\n" "Class::Load." msgstr "" -#: gnu/packages/perl.scm:1116 +#: gnu/packages/perl.scm:1213 msgid "Create generic methods for OO Perl" msgstr "" -#: gnu/packages/perl.scm:1117 +#: gnu/packages/perl.scm:1214 msgid "" "This module solves the problem of having to continually\n" "write accessor methods for your objects that perform standard tasks." msgstr "" -#: gnu/packages/perl.scm:1138 +#: gnu/packages/perl.scm:1235 msgid "Moose-like method modifiers" msgstr "" -#: gnu/packages/perl.scm:1139 +#: gnu/packages/perl.scm:1236 msgid "" "Class::Method::Modifiers provides three modifiers: 'before',\n" "'around', and 'after'. 'before' and 'after' are run just before and after the\n" @@ -11067,42 +11927,42 @@ msgid "" "original method." msgstr "" -#: gnu/packages/perl.scm:1160 +#: gnu/packages/perl.scm:1257 msgid "Implementation of a singleton class for Perl" msgstr "" -#: gnu/packages/perl.scm:1161 +#: gnu/packages/perl.scm:1258 msgid "" "This module implements a Singleton class from which other\n" "classes can be derived. By itself, the Class::Singleton module does very\n" "little other than manage the instantiation of a single object." msgstr "" -#: gnu/packages/perl.scm:1180 +#: gnu/packages/perl.scm:1277 msgid "Minimalist class construction" msgstr "" -#: gnu/packages/perl.scm:1181 +#: gnu/packages/perl.scm:1278 msgid "" "This module offers a minimalist class construction kit. It\n" "uses no non-core modules for any recent Perl." msgstr "" -#: gnu/packages/perl.scm:1201 +#: gnu/packages/perl.scm:1298 msgid "Unload a class" msgstr "" -#: gnu/packages/perl.scm:1202 +#: gnu/packages/perl.scm:1299 msgid "" "Class:Unload unloads a given class by clearing out its\n" "symbol table and removing it from %INC." msgstr "" -#: gnu/packages/perl.scm:1220 +#: gnu/packages/perl.scm:1317 msgid "Generate fast XS accessors without runtime compilation" msgstr "" -#: gnu/packages/perl.scm:1221 +#: gnu/packages/perl.scm:1318 msgid "" "Class::XSAccessor implements fast read, write, and\n" "read/write accessors in XS. Additionally, it can provide predicates such as\n" @@ -11112,18 +11972,18 @@ msgid "" "arrays for their internal representation." msgstr "" -#: gnu/packages/perl.scm:1241 gnu/packages/perl.scm:1264 +#: gnu/packages/perl.scm:1338 gnu/packages/perl.scm:1361 msgid "Recursively copy Perl datatypes" msgstr "" -#: gnu/packages/perl.scm:1243 +#: gnu/packages/perl.scm:1340 msgid "" "This module provides a clone() method which makes recursive copies of\n" "nested hash, array, scalar and reference types, including tied variables and\n" "objects." msgstr "" -#: gnu/packages/perl.scm:1265 +#: gnu/packages/perl.scm:1362 msgid "" "This module provides a general-purpose @code{clone} function\n" "to make deep copies of Perl data structures. It calls itself recursively to\n" @@ -11131,42 +11991,42 @@ msgid "" "and objects." msgstr "" -#: gnu/packages/perl.scm:1285 +#: gnu/packages/perl.scm:1382 msgid "Sane defaults for Perl programs" msgstr "" -#: gnu/packages/perl.scm:1286 +#: gnu/packages/perl.scm:1383 msgid "" "This module implements some sane defaults for Perl programs,\n" "as defined by two typical specimens of Perl coders." msgstr "" -#: gnu/packages/perl.scm:1306 +#: gnu/packages/perl.scm:1403 msgid "Load configuration from different file formats" msgstr "" -#: gnu/packages/perl.scm:1307 +#: gnu/packages/perl.scm:1404 msgid "" "Config::Any provides a facility for Perl applications and\n" "libraries to load configuration data from multiple different file formats. It\n" "supports XML, YAML, JSON, Apache-style configuration, and Perl code." msgstr "" -#: gnu/packages/perl.scm:1328 +#: gnu/packages/perl.scm:1425 msgid "Module to implement some AutoConf macros in Perl" msgstr "" -#: gnu/packages/perl.scm:1329 +#: gnu/packages/perl.scm:1426 msgid "" "Config::AutoConf is intended to provide the same\n" "opportunities to Perl developers as GNU Autoconf does for Shell developers." msgstr "" -#: gnu/packages/perl.scm:1347 +#: gnu/packages/perl.scm:1444 msgid "Generic Config Module" msgstr "" -#: gnu/packages/perl.scm:1348 +#: gnu/packages/perl.scm:1445 msgid "" "This module opens a config file and parses its contents for\n" "you. The format of config files supported by Config::General is inspired by\n" @@ -11177,32 +12037,32 @@ msgid "" "options." msgstr "" -#: gnu/packages/perl.scm:1375 +#: gnu/packages/perl.scm:1472 msgid "Simple .ini-file format reader and writer" msgstr "" -#: gnu/packages/perl.scm:1376 +#: gnu/packages/perl.scm:1473 msgid "" "@code{Config::INI} is a module that facilates the reading\n" "and writing of @code{.ini}-style configuration files." msgstr "" -#: gnu/packages/perl.scm:1397 +#: gnu/packages/perl.scm:1494 msgid "Preserve context during subroutine call" msgstr "" -#: gnu/packages/perl.scm:1398 +#: gnu/packages/perl.scm:1495 msgid "" "This module runs code after a subroutine call, preserving\n" "the context the subroutine would have seen if it were the last statement in\n" "the caller." msgstr "" -#: gnu/packages/perl.scm:1423 +#: gnu/packages/perl.scm:1520 msgid "Extract data from Macintosh BinHex files" msgstr "" -#: gnu/packages/perl.scm:1425 +#: gnu/packages/perl.scm:1522 msgid "" "BinHex is a format for transporting files safely through electronic\n" "mail, as short-lined, 7-bit, semi-compressed data streams. Ths module\n" @@ -11210,31 +12070,41 @@ msgid "" "data." msgstr "" -#: gnu/packages/perl.scm:1447 +#: gnu/packages/perl.scm:1543 +msgid "Read and write @file{Changes} files" +msgstr "" + +#: gnu/packages/perl.scm:1545 +msgid "" +"@code{CPAN::Changes} helps users programmatically read and write\n" +"@file{Changes} files that conform to a common specification." +msgstr "" + +#: gnu/packages/perl.scm:1565 msgid "Verify requirements in a CPAN::Meta object" msgstr "" -#: gnu/packages/perl.scm:1448 +#: gnu/packages/perl.scm:1566 msgid "" "This module verifies if requirements described in a\n" "CPAN::Meta object are present." msgstr "" -#: gnu/packages/perl.scm:1468 +#: gnu/packages/perl.scm:1586 msgid "JSON::XS for Cpanel" msgstr "" -#: gnu/packages/perl.scm:1469 gnu/packages/perl.scm:4193 +#: gnu/packages/perl.scm:1587 gnu/packages/perl.scm:4490 msgid "" "This module converts Perl data structures to JSON and vice\n" "versa." msgstr "" -#: gnu/packages/perl.scm:1487 +#: gnu/packages/perl.scm:1605 msgid "Random password generator" msgstr "" -#: gnu/packages/perl.scm:1488 +#: gnu/packages/perl.scm:1606 msgid "" "Crypt::RandPasswd provides three functions that can be used\n" "to generate random passwords, constructed from words, letters, or characters.\n" @@ -11245,40 +12115,40 @@ msgid "" "Password Generator\"." msgstr "" -#: gnu/packages/perl.scm:1513 +#: gnu/packages/perl.scm:1631 msgid "Perl implementation of the RC4 encryption algorithm" msgstr "" -#: gnu/packages/perl.scm:1514 +#: gnu/packages/perl.scm:1632 msgid "A pure Perl implementation of the RC4 algorithm." msgstr "" -#: gnu/packages/perl.scm:1533 +#: gnu/packages/perl.scm:1651 msgid "Temporarily change working directory" msgstr "" -#: gnu/packages/perl.scm:1535 +#: gnu/packages/perl.scm:1653 msgid "" "@code{Cwd::Guard} changes the current directory using a limited scope.\n" "It returns to the previous working directory when the object is destroyed." msgstr "" -#: gnu/packages/perl.scm:1573 +#: gnu/packages/perl.scm:1691 msgid "Library for genomic analysis" msgstr "Bibliothèque d'analyse génomique" -#: gnu/packages/perl.scm:1574 +#: gnu/packages/perl.scm:1692 msgid "" "Chaolin Zhang's Perl Library (czplib) contains assorted\n" "functions and data structures for processing and analysing genomic and\n" "bioinformatics data." msgstr "" -#: gnu/packages/perl.scm:1603 gnu/packages/perl.scm:1769 +#: gnu/packages/perl.scm:1721 gnu/packages/perl.scm:1887 msgid "Base classes wrapping fundamental Perl data types" msgstr "" -#: gnu/packages/perl.scm:1604 +#: gnu/packages/perl.scm:1722 msgid "" "Collection of classes that wrap fundamental data types that\n" "exist in Perl. These classes and methods as they exist today are an attempt\n" @@ -11287,61 +12157,61 @@ msgid "" "input." msgstr "" -#: gnu/packages/perl.scm:1627 +#: gnu/packages/perl.scm:1745 msgid "Compare Perl data structures" msgstr "" -#: gnu/packages/perl.scm:1628 +#: gnu/packages/perl.scm:1746 msgid "" "This module compares arbitrary data structures to see if\n" "they are copies of each other." msgstr "" -#: gnu/packages/perl.scm:1646 +#: gnu/packages/perl.scm:1764 msgid "Perl extension for generating unique identifiers" msgstr "" -#: gnu/packages/perl.scm:1647 +#: gnu/packages/perl.scm:1765 msgid "" "@code{Data::Uniqid} provides three simple routines for\n" "generating unique ids. These ids are coded with a Base62 systen to make them\n" "short and handy (e.g. to use it as part of a URL)." msgstr "" -#: gnu/packages/perl.scm:1666 +#: gnu/packages/perl.scm:1784 msgid "Pretty printing of data structures" msgstr "" -#: gnu/packages/perl.scm:1667 +#: gnu/packages/perl.scm:1785 msgid "" "This module provide functions that takes a list of values as\n" "their argument and produces a string as its result. The string contains Perl\n" "code that, when \"eval\"ed, produces a deep copy of the original arguments." msgstr "" -#: gnu/packages/perl.scm:1686 +#: gnu/packages/perl.scm:1804 msgid "Concise data dumper" msgstr "" -#: gnu/packages/perl.scm:1687 +#: gnu/packages/perl.scm:1805 msgid "" "Data::Dumper::Concise provides a dumper with Less\n" "indentation and newlines plus sub deparsing." msgstr "" -#: gnu/packages/perl.scm:1709 +#: gnu/packages/perl.scm:1827 msgid "Parse and validate simple name/value option pairs" msgstr "" -#: gnu/packages/perl.scm:1711 +#: gnu/packages/perl.scm:1829 msgid "Data::OptList provides a simple syntax for name/value option pairs." msgstr "" -#: gnu/packages/perl.scm:1733 +#: gnu/packages/perl.scm:1851 msgid "Help when paging through sets of results" msgstr "" -#: gnu/packages/perl.scm:1734 +#: gnu/packages/perl.scm:1852 msgid "" "When searching through large amounts of data, it is often\n" "the case that a result set is returned that is larger than we want to display\n" @@ -11349,7 +12219,7 @@ msgid "" "The maths behind this is unfortunately fiddly, hence this module." msgstr "" -#: gnu/packages/perl.scm:1771 +#: gnu/packages/perl.scm:1889 msgid "" "@code{Data::Perl} is a container class for the following classes:\n" "@itemize\n" @@ -11363,21 +12233,21 @@ msgid "" "@end itemize" msgstr "" -#: gnu/packages/perl.scm:1802 +#: gnu/packages/perl.scm:1920 msgid "Colored pretty-print of Perl data structures and objects" msgstr "" -#: gnu/packages/perl.scm:1803 +#: gnu/packages/perl.scm:1921 msgid "" "Display Perl variables and objects on screen, properly\n" "formatted (to be inspected by a human)." msgstr "" -#: gnu/packages/perl.scm:1826 +#: gnu/packages/perl.scm:1944 msgid "Conditionally split data into records" msgstr "" -#: gnu/packages/perl.scm:1827 +#: gnu/packages/perl.scm:1945 msgid "" "This Perl module allows you to split data into records by\n" "not only specifying what you wish to split the data on, but also by specifying\n" @@ -11386,11 +12256,21 @@ msgid "" "like split on newlines unless newlines are embedded in quotes." msgstr "" -#: gnu/packages/perl.scm:1850 +#: gnu/packages/perl.scm:1973 +msgid "Read multiple hunks of data out of your DATA section" +msgstr "" + +#: gnu/packages/perl.scm:1974 +msgid "" +"This package provides a Perl library to read multiple hunks\n" +"of data out of your DATA section." +msgstr "" + +#: gnu/packages/perl.scm:1994 msgid "Structured tags datastructures" msgstr "" -#: gnu/packages/perl.scm:1852 +#: gnu/packages/perl.scm:1996 msgid "" "This module is for manipulating data as hierarchical tag/value\n" "pairs (Structured TAGs or Simple Tree AGgregates). These datastructures can\n" @@ -11398,11 +12278,11 @@ msgid "" "Perl." msgstr "" -#: gnu/packages/perl.scm:1879 +#: gnu/packages/perl.scm:2023 msgid "N at a time iteration API" msgstr "" -#: gnu/packages/perl.scm:1880 +#: gnu/packages/perl.scm:2024 msgid "" "This module tries to find middle ground between one at a\n" "time and all at once processing of data sets. The purpose of this module is\n" @@ -11411,21 +12291,21 @@ msgid "" "necessary later on." msgstr "" -#: gnu/packages/perl.scm:1905 +#: gnu/packages/perl.scm:2049 msgid "Dynamic generation of nested combinations of variants" msgstr "" -#: gnu/packages/perl.scm:1906 +#: gnu/packages/perl.scm:2050 msgid "" "Data::Tumbler - Dynamic generation of nested combinations of\n" "variants." msgstr "" -#: gnu/packages/perl.scm:1932 +#: gnu/packages/perl.scm:2076 msgid "Visitor style traversal of Perl data structures" msgstr "" -#: gnu/packages/perl.scm:1933 +#: gnu/packages/perl.scm:2077 msgid "" "This module is a simple visitor implementation for Perl\n" "values. It has a main dispatcher method, visit, which takes a single perl\n" @@ -11435,11 +12315,11 @@ msgid "" "structures, and all ref types (hashes, arrays, scalars, code, globs)." msgstr "" -#: gnu/packages/perl.scm:1958 +#: gnu/packages/perl.scm:2102 msgid "Gregorian calendar date calculations" msgstr "" -#: gnu/packages/perl.scm:1959 +#: gnu/packages/perl.scm:2103 msgid "" "This package consists of a Perl module for date calculations\n" "based on the Gregorian calendar, thereby complying with all relevant norms and\n" @@ -11447,32 +12327,32 @@ msgid "" "applicable)." msgstr "" -#: gnu/packages/perl.scm:1983 +#: gnu/packages/perl.scm:2127 msgid "XS wrapper for Date::Calc" msgstr "" -#: gnu/packages/perl.scm:1984 +#: gnu/packages/perl.scm:2128 msgid "" "Date::Calc::XS is an XS wrapper and C library plug-in for\n" "Date::Calc." msgstr "" -#: gnu/packages/perl.scm:2008 +#: gnu/packages/perl.scm:2152 msgid "Date manipulation routines" msgstr "" -#: gnu/packages/perl.scm:2009 +#: gnu/packages/perl.scm:2153 msgid "" "Date::Manip is a series of modules for common date/time\n" "operations, such as comparing two times, determining a date a given amount of\n" "time from another, or parsing international times." msgstr "" -#: gnu/packages/perl.scm:2028 +#: gnu/packages/perl.scm:2172 msgid "Simple date handling" msgstr "" -#: gnu/packages/perl.scm:2029 +#: gnu/packages/perl.scm:2173 msgid "" "Dates are complex enough without times and timezones. This\n" "module may be used to create simple date objects. It handles validation,\n" @@ -11480,22 +12360,22 @@ msgid "" "hours, minutes, seconds, and time zones." msgstr "" -#: gnu/packages/perl.scm:2061 +#: gnu/packages/perl.scm:2205 msgid "Date and time object for Perl" msgstr "" -#: gnu/packages/perl.scm:2062 +#: gnu/packages/perl.scm:2206 msgid "" "DateTime is a class for the representation of date/time\n" "combinations. It represents the Gregorian calendar, extended backwards in\n" "time before its creation (in 1582)." msgstr "" -#: gnu/packages/perl.scm:2084 +#: gnu/packages/perl.scm:2228 msgid "Dates in the Julian calendar" msgstr "" -#: gnu/packages/perl.scm:2085 +#: gnu/packages/perl.scm:2229 msgid "" "This package is a companion module to @code{DateTime.pm}.\n" "It implements the Julian calendar. It supports everything that\n" @@ -11503,11 +12383,11 @@ msgid "" "precise." msgstr "" -#: gnu/packages/perl.scm:2111 +#: gnu/packages/perl.scm:2255 msgid "DateTime set objects" msgstr "" -#: gnu/packages/perl.scm:2112 +#: gnu/packages/perl.scm:2256 msgid "" "The DateTime::Set module provides a date/time sets\n" "implementation. It allows, for example, the generation of groups of dates,\n" @@ -11515,21 +12395,21 @@ msgid "" "within a time range." msgstr "" -#: gnu/packages/perl.scm:2135 +#: gnu/packages/perl.scm:2279 msgid "DateTime rfc2445 recurrences" msgstr "" -#: gnu/packages/perl.scm:2136 +#: gnu/packages/perl.scm:2280 msgid "" "This module provides convenience methods that let you easily\n" "create DateTime::Set objects for RFC 2445 style recurrences." msgstr "" -#: gnu/packages/perl.scm:2157 +#: gnu/packages/perl.scm:2301 msgid "DateTime::Set extension for basic recurrences" msgstr "" -#: gnu/packages/perl.scm:2158 +#: gnu/packages/perl.scm:2302 msgid "" "This module provides convenience methods that let you easily\n" "create DateTime::Set objects for various recurrences, such as \"once a month\"\n" @@ -11537,11 +12417,11 @@ msgid "" "\"every Monday, Wednesday and Thursday at 10:00 AM and 2:00 PM\"." msgstr "" -#: gnu/packages/perl.scm:2183 +#: gnu/packages/perl.scm:2327 msgid "Create DateTime parser classes and objects" msgstr "" -#: gnu/packages/perl.scm:2184 +#: gnu/packages/perl.scm:2328 msgid "" "DateTime::Format::Builder creates DateTime parsers. Many\n" "string formats of dates and times are simple and just require a basic regular\n" @@ -11549,43 +12429,43 @@ msgid "" "to do this without writing reams of structural code." msgstr "" -#: gnu/packages/perl.scm:2211 +#: gnu/packages/perl.scm:2355 msgid "Parse data/time strings" msgstr "" -#: gnu/packages/perl.scm:2212 +#: gnu/packages/perl.scm:2356 msgid "" "DateTime::Format::Flexible attempts to take any string you\n" "give it and parse it into a DateTime object." msgstr "" -#: gnu/packages/perl.scm:2238 +#: gnu/packages/perl.scm:2382 msgid "Parse and format iCal datetime and duration strings" msgstr "" -#: gnu/packages/perl.scm:2239 +#: gnu/packages/perl.scm:2383 msgid "" "This module understands the ICal date/time and duration\n" "formats, as defined in RFC 2445. It can be used to parse these formats in\n" "order to create the appropriate objects." msgstr "" -#: gnu/packages/perl.scm:2271 +#: gnu/packages/perl.scm:2415 msgid "Machine-readable date/time with natural parsing" msgstr "" -#: gnu/packages/perl.scm:2272 +#: gnu/packages/perl.scm:2416 msgid "" "DateTime::Format::Natural takes a string with a human\n" "readable date/time and creates a machine readable one by applying natural\n" "parsing logic." msgstr "" -#: gnu/packages/perl.scm:2299 +#: gnu/packages/perl.scm:2443 msgid "Parse and format strp and strf time patterns" msgstr "" -#: gnu/packages/perl.scm:2300 +#: gnu/packages/perl.scm:2444 msgid "" "This module implements most of `strptime(3)`, the POSIX\n" "function that is the reverse of `strftime(3)`, for `DateTime`. While\n" @@ -11593,21 +12473,21 @@ msgid "" "takes a string and a pattern and returns the `DateTime` object associated." msgstr "" -#: gnu/packages/perl.scm:2332 +#: gnu/packages/perl.scm:2476 msgid "Localization support for DateTime.pm" msgstr "" -#: gnu/packages/perl.scm:2333 +#: gnu/packages/perl.scm:2477 msgid "" "The DateTime::Locale modules provide localization data for\n" "the DateTime.pm class." msgstr "" -#: gnu/packages/perl.scm:2361 +#: gnu/packages/perl.scm:2505 msgid "Time zone object for Perl" msgstr "Objet de fuseau horaire pour Perl" -#: gnu/packages/perl.scm:2362 +#: gnu/packages/perl.scm:2506 msgid "" "This class is the base class for all time zone objects. A\n" "time zone is represented internally as a set of observances, each of which\n" @@ -11623,11 +12503,11 @@ msgstr "" "est l'objet DateTime et la plupart des utilisateurs n'aura pas besoin d'utiliser les\n" "méthodes DateTime::TimeZone directement." -#: gnu/packages/perl.scm:2392 +#: gnu/packages/perl.scm:2536 msgid "Parse date/time strings" msgstr "Analyse des chaînes de date et temps" -#: gnu/packages/perl.scm:2393 +#: gnu/packages/perl.scm:2537 msgid "" "DateTimeX::Easy uses a variety of DateTime::Format packages\n" "to create DateTime objects, with some custom tweaks to smooth out the rough\n" @@ -11637,11 +12517,11 @@ msgstr "" "pour créer des objets DateTime, avec certains ajustements pour arrondir\n" "les angles (surtout dans la détection des fuseaux horaires et de leur sélection)." -#: gnu/packages/perl.scm:2414 +#: gnu/packages/perl.scm:2558 msgid "Convert between DateTime and RFC2822/822 formats" msgstr "Convertit entre les formats DateTime et RFC2822/822" -#: gnu/packages/perl.scm:2415 +#: gnu/packages/perl.scm:2559 msgid "" "RFCs 2822 and 822 specify date formats to be used by email.\n" "This module parses and emits such dates." @@ -11649,11 +12529,11 @@ msgstr "" "Les RFC 2822 et 822 spécifient les formats de date utilisés par les\n" "courriels. Ce module analyse et émet ces dates." -#: gnu/packages/perl.scm:2437 +#: gnu/packages/perl.scm:2581 msgid "Parse and format W3CDTF datetime strings" msgstr "Analyse et formate les chaînes de date W3CDTF" -#: gnu/packages/perl.scm:2439 +#: gnu/packages/perl.scm:2583 msgid "" "This module understands the W3CDTF date/time format, an ISO 8601 profile,\n" "defined at https://www.w3.org/TR/NOTE-datetime. This format is the native date\n" @@ -11665,19 +12545,19 @@ msgstr "" "pour RSS 1.0. Il peut être utilisé pour analyser ces formats pour créer les\n" "objets appropriés." -#: gnu/packages/perl.scm:2461 +#: gnu/packages/perl.scm:2605 msgid "Meatier version of caller" msgstr "" -#: gnu/packages/perl.scm:2462 +#: gnu/packages/perl.scm:2606 msgid "Devel::Caller provides meatier version of caller." msgstr "" -#: gnu/packages/perl.scm:2480 +#: gnu/packages/perl.scm:2624 msgid "Check that a command is available" msgstr "Vérifie qu'une commande est disponible" -#: gnu/packages/perl.scm:2481 +#: gnu/packages/perl.scm:2625 msgid "" "Devel::CheckBin is a perl module that checks whether a\n" "particular command is available." @@ -11685,11 +12565,11 @@ msgstr "" "Devel::CheckBin est un module perl qui vérifie si une commande\n" "particulière est disponible." -#: gnu/packages/perl.scm:2500 +#: gnu/packages/perl.scm:2644 msgid "Check compiler availability" msgstr "Vérifie la disponibilité d'un compilateur" -#: gnu/packages/perl.scm:2501 +#: gnu/packages/perl.scm:2645 msgid "" "@code{Devel::CheckCompiler} is a tiny module to check\n" "whether a compiler is available. It can test for a C99 compiler, or\n" @@ -11700,22 +12580,22 @@ msgstr "" "C99 ou vous pouvez lui dire de compiler un fichier source C avec des\n" "drapeaux de l'éditeur de liens particuliers." -#: gnu/packages/perl.scm:2523 +#: gnu/packages/perl.scm:2667 msgid "Find memory cycles in objects" msgstr "" -#: gnu/packages/perl.scm:2525 +#: gnu/packages/perl.scm:2669 msgid "" "@code{Devel::Cycle} This is a tool for finding circular references in\n" "objects and other types of references. Because of Perl's reference-count\n" "based memory management, circular references will cause memory leaks." msgstr "" -#: gnu/packages/perl.scm:2546 +#: gnu/packages/perl.scm:2690 msgid "Provides equivalent of ${^GLOBAL_PHASE} eq 'DESTRUCT' for older perls" msgstr "Fournit un équivalent de ${^GLOBAL_PHASE} eq 'DESTRUCT' pour les perls plus vieux" -#: gnu/packages/perl.scm:2547 +#: gnu/packages/perl.scm:2691 msgid "" "Devel::GlobalDestruction provides a function returning the\n" "equivalent of \"$@{^GLOBAL_PHASE@} eq 'DESTRUCT'\" for older perls." @@ -11723,53 +12603,53 @@ msgstr "" "Devel::GlobalDestruction fournit une fonction qui renvoie l'équivalent\n" "de « $@{^GLOBAL_PHASE@} eq 'DESTRUCT' » pour les vieux perls." -#: gnu/packages/perl.scm:2568 +#: gnu/packages/perl.scm:2712 msgid "Forces the unavailability of specified Perl modules (for testing)" msgstr "" -#: gnu/packages/perl.scm:2569 +#: gnu/packages/perl.scm:2713 msgid "" "Given a list of Perl modules/filenames, this module makes\n" "@code{require} and @code{use} statements fail (no matter whether the specified\n" "files/modules are installed or not)." msgstr "" -#: gnu/packages/perl.scm:2590 +#: gnu/packages/perl.scm:2734 msgid "Alias lexical variables" msgstr "" -#: gnu/packages/perl.scm:2591 +#: gnu/packages/perl.scm:2735 msgid "" "Devel::LexAlias provides the ability to alias a lexical\n" "variable in a subroutines scope to one of your choosing." msgstr "" -#: gnu/packages/perl.scm:2615 +#: gnu/packages/perl.scm:2759 msgid "Introspect overloaded operators" msgstr "" -#: gnu/packages/perl.scm:2616 +#: gnu/packages/perl.scm:2760 msgid "" "Devel::OverloadInfo returns information about overloaded\n" "operators for a given class (or object), including where in the inheritance\n" "hierarchy the overloads are declared and where the code implementing it is." msgstr "" -#: gnu/packages/perl.scm:2643 +#: gnu/packages/perl.scm:2787 msgid "Partial dumping of data structures" msgstr "" -#: gnu/packages/perl.scm:2644 +#: gnu/packages/perl.scm:2788 msgid "" "This module is a data dumper optimized for logging of\n" "arbitrary parameters." msgstr "" -#: gnu/packages/perl.scm:2662 +#: gnu/packages/perl.scm:2806 msgid "Object representing a stack trace" msgstr "" -#: gnu/packages/perl.scm:2663 +#: gnu/packages/perl.scm:2807 msgid "" "The Devel::StackTrace module contains two classes,\n" "Devel::StackTrace and Devel::StackTrace::Frame. These objects encapsulate the\n" @@ -11777,11 +12657,11 @@ msgid "" "providing a simple interface to this data." msgstr "" -#: gnu/packages/perl.scm:2685 +#: gnu/packages/perl.scm:2829 msgid "Displays stack trace in HTML" msgstr "" -#: gnu/packages/perl.scm:2686 +#: gnu/packages/perl.scm:2830 msgid "" "Devel::StackTrace::AsHTML adds as_html method to\n" "Devel::StackTrace which displays the stack trace in beautiful HTML, with code\n" @@ -11790,29 +12670,29 @@ msgid "" "each stack frame." msgstr "" -#: gnu/packages/perl.scm:2707 +#: gnu/packages/perl.scm:2851 msgid "Dump symbol names or the symbol table" msgstr "" -#: gnu/packages/perl.scm:2708 +#: gnu/packages/perl.scm:2852 msgid "Devel::Symdump provides access to the perl symbol table." msgstr "" -#: gnu/packages/perl.scm:2725 +#: gnu/packages/perl.scm:2869 msgid "Keyed-Hashing for Message Authentication" msgstr "" -#: gnu/packages/perl.scm:2726 +#: gnu/packages/perl.scm:2870 msgid "" "The Digest::HMAC module follows the common Digest::\n" "interface for the RFC 2104 HMAC mechanism." msgstr "" -#: gnu/packages/perl.scm:2751 +#: gnu/packages/perl.scm:2895 msgid "Perl interface to the MD-5 algorithm" msgstr "" -#: gnu/packages/perl.scm:2753 +#: gnu/packages/perl.scm:2897 msgid "" "The @code{Digest::MD5} module allows you to use the MD5 Message Digest\n" "algorithm from within Perl programs. The algorithm takes as\n" @@ -11820,41 +12700,41 @@ msgid "" "128-bit \"fingerprint\" or \"message digest\" of the input." msgstr "" -#: gnu/packages/perl.scm:2771 +#: gnu/packages/perl.scm:2915 msgid "Perl implementation of the SHA-1 message digest algorithm" msgstr "" -#: gnu/packages/perl.scm:2773 +#: gnu/packages/perl.scm:2917 msgid "" "This package provides 'Digest::SHA1', an implementation of the NIST\n" "SHA-1 message digest algorithm for use by Perl programs." msgstr "" -#: gnu/packages/perl.scm:2795 +#: gnu/packages/perl.scm:2939 msgid "Declare version conflicts for your dist" msgstr "" -#: gnu/packages/perl.scm:2796 +#: gnu/packages/perl.scm:2940 msgid "" "This module allows you to specify conflicting versions of\n" "modules separately and deal with them after the module is done installing." msgstr "" -#: gnu/packages/perl.scm:2816 +#: gnu/packages/perl.scm:2960 msgid "Detect the encoding of data" msgstr "" -#: gnu/packages/perl.scm:2817 +#: gnu/packages/perl.scm:2961 msgid "" "This package provides a class @code{Encode::Detect} to detect\n" "the encoding of data." msgstr "" -#: gnu/packages/perl.scm:2835 +#: gnu/packages/perl.scm:2979 msgid "ASCII mapping for eucJP encoding" msgstr "" -#: gnu/packages/perl.scm:2836 +#: gnu/packages/perl.scm:2980 msgid "" "This package provides an ASCII mapping for the eucJP\n" "encoding." @@ -11862,21 +12742,21 @@ msgstr "" "Ce paquet fournit une correspondance entre ASCII et l'encodage\n" "eucJP." -#: gnu/packages/perl.scm:2854 +#: gnu/packages/perl.scm:2998 msgid "JIS X 0212 (aka JIS 2000) encodings" msgstr "" -#: gnu/packages/perl.scm:2855 +#: gnu/packages/perl.scm:2999 msgid "" "This package provides encodings for JIS X 0212, which is\n" "also known as JIS 2000." msgstr "" -#: gnu/packages/perl.scm:2878 +#: gnu/packages/perl.scm:3022 msgid "Additional Chinese encodings" msgstr "" -#: gnu/packages/perl.scm:2879 +#: gnu/packages/perl.scm:3023 msgid "" "This Perl module provides Chinese encodings that are not\n" "part of Perl by default, including \"BIG5-1984\", \"BIG5-2003\", \"BIG5PLUS\",\n" @@ -11884,11 +12764,11 @@ msgid "" "\"UNISYS\"." msgstr "" -#: gnu/packages/perl.scm:2901 +#: gnu/packages/perl.scm:3045 msgid "Advanced operations on path variables" msgstr "" -#: gnu/packages/perl.scm:2902 +#: gnu/packages/perl.scm:3046 msgid "" "@code{Env::Path} presents an object-oriented interface to\n" "path variables, defined as that subclass of environment variables which name\n" @@ -11896,11 +12776,11 @@ msgid "" "separator." msgstr "" -#: gnu/packages/perl.scm:2922 +#: gnu/packages/perl.scm:3066 msgid "OO-ish Error/Exception handling for Perl" msgstr "" -#: gnu/packages/perl.scm:2923 +#: gnu/packages/perl.scm:3067 msgid "" "The Error package provides two interfaces. Firstly Error\n" "provides a procedural interface to exception handling. Secondly Error is a\n" @@ -11908,11 +12788,11 @@ msgid "" "catch, or can simply be recorded." msgstr "" -#: gnu/packages/perl.scm:2948 +#: gnu/packages/perl.scm:3092 msgid "Safely and cleanly create closures via string eval" msgstr "" -#: gnu/packages/perl.scm:2949 +#: gnu/packages/perl.scm:3093 msgid "" "String eval is often used for dynamic code generation. For\n" "instance, Moose uses it heavily, to generate inlined versions of accessors and\n" @@ -11926,32 +12806,32 @@ msgid "" "errors are rethrown automatically." msgstr "" -#: gnu/packages/perl.scm:2978 +#: gnu/packages/perl.scm:3122 msgid "Allows you to declare real exception classes in Perl" msgstr "" -#: gnu/packages/perl.scm:2979 +#: gnu/packages/perl.scm:3123 msgid "" "Exception::Class allows you to declare exception hierarchies\n" "in your modules in a \"Java-esque\" manner." msgstr "" -#: gnu/packages/perl.scm:2995 +#: gnu/packages/perl.scm:3139 msgid "Lightweight exporting of functions and variables" msgstr "" -#: gnu/packages/perl.scm:2997 +#: gnu/packages/perl.scm:3141 msgid "" "Exporter::Lite is an alternative to Exporter, intended to provide a\n" "lightweight subset of the most commonly-used functionality. It supports\n" "import(), @@EXPORT and @@EXPORT_OK and not a whole lot else." msgstr "" -#: gnu/packages/perl.scm:3017 +#: gnu/packages/perl.scm:3161 msgid "Exporter with the features of Sub::Exporter but only core dependencies" msgstr "" -#: gnu/packages/perl.scm:3018 +#: gnu/packages/perl.scm:3162 msgid "" "Exporter::Tiny supports many of Sub::Exporter's\n" "external-facing features including renaming imported functions with the `-as`,\n" @@ -11960,32 +12840,38 @@ msgid "" "only about 40% as many lines of code and with zero non-core dependencies." msgstr "" -#: gnu/packages/perl.scm:3041 +#: gnu/packages/perl.scm:3188 gnu/packages/perl.scm:3249 +msgid "Easily build XS extensions that depend on XS extensions" +msgstr "" + +#: gnu/packages/perl.scm:3189 +msgid "" +"ExtUtils::Depends builds XS extensions that depend on XS\n" +"extensions" +msgstr "" + +#: gnu/packages/perl.scm:3209 msgid "Build.PL install path logic made easy" msgstr "" -#: gnu/packages/perl.scm:3042 +#: gnu/packages/perl.scm:3210 msgid "" "This module tries to make install path resolution as easy as\n" "possible." msgstr "" -#: gnu/packages/perl.scm:3060 +#: gnu/packages/perl.scm:3228 msgid "Wrapper for perl's configuration" msgstr "" -#: gnu/packages/perl.scm:3061 +#: gnu/packages/perl.scm:3229 msgid "" "ExtUtils::Config is an abstraction around the %Config hash.\n" "By itself it is not a particularly interesting module by any measure, however\n" "it ties together a family of modern toolchain modules." msgstr "" -#: gnu/packages/perl.scm:3081 -msgid "Easily build XS extensions that depend on XS extensions" -msgstr "" - -#: gnu/packages/perl.scm:3083 +#: gnu/packages/perl.scm:3251 msgid "" "This module tries to make it easy to build Perl extensions that use\n" "functions and typemaps provided by other perl extensions. This means that a\n" @@ -11993,21 +12879,21 @@ msgid "" "XS interface besides the perl one." msgstr "" -#: gnu/packages/perl.scm:3103 +#: gnu/packages/perl.scm:3271 msgid "Various portability utilities for module builders" msgstr "" -#: gnu/packages/perl.scm:3104 +#: gnu/packages/perl.scm:3272 msgid "" "This module provides various portable helper functions for\n" "module building modules." msgstr "" -#: gnu/packages/perl.scm:3124 +#: gnu/packages/perl.scm:3292 msgid "Tool to build C libraries" msgstr "" -#: gnu/packages/perl.scm:3125 +#: gnu/packages/perl.scm:3293 msgid "" "Some Perl modules need to ship C libraries together with\n" "their Perl code. Although there are mechanisms to compile and link (or glue)\n" @@ -12015,11 +12901,11 @@ msgid "" "self-contained C libraries. This module main goal is to help in that task." msgstr "" -#: gnu/packages/perl.scm:3146 +#: gnu/packages/perl.scm:3314 msgid "Simplistic interface to pkg-config" msgstr "" -#: gnu/packages/perl.scm:3148 +#: gnu/packages/perl.scm:3316 msgid "" "@code{ExtUtils::PkgConfig} is a very simplistic interface to the\n" "@command{pkg-config} utility, intended for use in the @file{Makefile.PL}\n" @@ -12027,21 +12913,21 @@ msgid "" "It is really just boilerplate code that you would have written yourself." msgstr "" -#: gnu/packages/perl.scm:3180 +#: gnu/packages/perl.scm:3348 msgid "Watch for changes to files" msgstr "" -#: gnu/packages/perl.scm:3181 +#: gnu/packages/perl.scm:3349 msgid "" "This module provides a class to monitor a directory for\n" "changes made to any file." msgstr "" -#: gnu/packages/perl.scm:3202 +#: gnu/packages/perl.scm:3370 msgid "Get directories of configuration files" msgstr "" -#: gnu/packages/perl.scm:3203 +#: gnu/packages/perl.scm:3371 msgid "" "This module is a helper for installing, reading and finding\n" "configuration file locations. @code{File::ConfigDir} is a module to help out\n" @@ -12049,44 +12935,44 @@ msgid "" "configuration files from more than one location." msgstr "" -#: gnu/packages/perl.scm:3223 +#: gnu/packages/perl.scm:3391 msgid "Recursively copy files and directories" msgstr "" -#: gnu/packages/perl.scm:3224 +#: gnu/packages/perl.scm:3392 msgid "" "This module has 3 functions: one to copy files only, one to\n" "copy directories only, and one to do either depending on the argument's\n" "type." msgstr "" -#: gnu/packages/perl.scm:3246 +#: gnu/packages/perl.scm:3414 msgid "Alternative interface to File::Find" msgstr "" -#: gnu/packages/perl.scm:3247 +#: gnu/packages/perl.scm:3415 msgid "" "File::Find::Rule is a friendlier interface to File::Find.\n" "It allows you to build rules which specify the desired files and\n" "directories." msgstr "" -#: gnu/packages/perl.scm:3270 +#: gnu/packages/perl.scm:3438 msgid "Common rules for searching for Perl things" msgstr "" -#: gnu/packages/perl.scm:3271 +#: gnu/packages/perl.scm:3439 msgid "" "File::Find::Rule::Perl provides methods for finding various\n" "types Perl-related files, or replicating search queries run on a distribution\n" "in various parts of the CPAN ecosystem." msgstr "" -#: gnu/packages/perl.scm:3292 +#: gnu/packages/perl.scm:3460 msgid "Matches patterns in a series of files" msgstr "" -#: gnu/packages/perl.scm:3293 +#: gnu/packages/perl.scm:3461 msgid "" "@code{File::Grep} provides similar functionality as perl's\n" "builtin @code{grep}, @code{map}, and @code{foreach} commands, but iterating\n" @@ -12094,11 +12980,11 @@ msgid "" "provide a quick dropin when such functionality is needed." msgstr "" -#: gnu/packages/perl.scm:3316 +#: gnu/packages/perl.scm:3484 msgid "Find your home and other directories on any platform" msgstr "" -#: gnu/packages/perl.scm:3317 +#: gnu/packages/perl.scm:3485 msgid "" "File::HomeDir is a module for locating the directories that\n" "are \"owned\" by a user (typically your user) and to solve the various issues\n" @@ -12106,22 +12992,22 @@ msgid "" "platforms." msgstr "" -#: gnu/packages/perl.scm:3339 +#: gnu/packages/perl.scm:3507 msgid "Create or remove directory trees" msgstr "" -#: gnu/packages/perl.scm:3340 +#: gnu/packages/perl.scm:3508 msgid "" "This module provide a convenient way to create directories\n" "of arbitrary depth and to delete an entire directory subtree from the\n" "file system." msgstr "" -#: gnu/packages/perl.scm:3363 +#: gnu/packages/perl.scm:3531 msgid "Change directory temporarily for a limited scope" msgstr "" -#: gnu/packages/perl.scm:3364 +#: gnu/packages/perl.scm:3532 msgid "" "@code{File::pushd} does a temporary @code{chdir} that is\n" "easily and automatically reverted, similar to @code{pushd} in some Unix\n" @@ -12132,24 +13018,40 @@ msgid "" "at the end of the scope." msgstr "" -#: gnu/packages/perl.scm:3392 +#: gnu/packages/perl.scm:3560 msgid "" "Perl extension for crawling directory trees and compiling\n" "lists of files" msgstr "" -#: gnu/packages/perl.scm:3395 +#: gnu/packages/perl.scm:3563 msgid "" "The File::List module crawls the directory tree starting at the\n" "provided base directory and can return files (and/or directories if desired)\n" "matching a regular expression." msgstr "" -#: gnu/packages/perl.scm:3414 +#: gnu/packages/perl.scm:3584 +msgid "Read a file backwards by lines" +msgstr "" + +#: gnu/packages/perl.scm:3585 +msgid "" +"This module reads a file backwards line by line. It is\n" +"simple to use, memory efficient and fast. It supports both an object and a\n" +"tied handle interface.\n" +"\n" +"It is intended for processing log and other similar text files which typically\n" +"have their newest entries appended to them. By default files are assumed to\n" +"be plain text and have a line ending appropriate to the OS. But you can set\n" +"the input record separator string on a per file basis." +msgstr "" + +#: gnu/packages/perl.scm:3609 msgid "Remove files and directories in Perl" msgstr "" -#: gnu/packages/perl.scm:3415 +#: gnu/packages/perl.scm:3610 msgid "" "File::Remove::remove removes files and directories. It acts\n" "like /bin/rm, for the most part. Although \"unlink\" can be given a list of\n" @@ -12157,11 +13059,11 @@ msgid "" "accepts wildcards, * and ?, as arguments for file names." msgstr "" -#: gnu/packages/perl.scm:3439 +#: gnu/packages/perl.scm:3634 msgid "Locate per-dist and per-module shared files" msgstr "" -#: gnu/packages/perl.scm:3440 +#: gnu/packages/perl.scm:3635 msgid "" "The intent of File::ShareDir is to provide a companion to\n" "Class::Inspector and File::HomeDir. Quite often you want or need your Perl\n" @@ -12171,93 +13073,93 @@ msgid "" "the installation." msgstr "" -#: gnu/packages/perl.scm:3462 +#: gnu/packages/perl.scm:3657 msgid "Locate per-dist shared files" msgstr "" -#: gnu/packages/perl.scm:3463 +#: gnu/packages/perl.scm:3658 msgid "" "File::ShareDir::Dist finds share directories for\n" "distributions. It is a companion module to File::ShareDir." msgstr "" -#: gnu/packages/perl.scm:3483 +#: gnu/packages/perl.scm:3678 msgid "Install shared files" msgstr "" -#: gnu/packages/perl.scm:3484 +#: gnu/packages/perl.scm:3679 msgid "" "File::ShareDir::Install allows you to install read-only data\n" "files from a distribution. It is a companion module to File::ShareDir, which\n" "allows you to locate these files after installation." msgstr "" -#: gnu/packages/perl.scm:3503 +#: gnu/packages/perl.scm:3698 msgid "Reading/Writing/Modifying of complete files" msgstr "" -#: gnu/packages/perl.scm:3504 +#: gnu/packages/perl.scm:3699 msgid "" "File::Slurp provides subroutines to read or write entire\n" "files with a simple call. It also has a subroutine for reading the list of\n" "file names in a directory." msgstr "" -#: gnu/packages/perl.scm:3527 +#: gnu/packages/perl.scm:3722 msgid "Simple, sane and efficient module to slurp a file" msgstr "" -#: gnu/packages/perl.scm:3528 +#: gnu/packages/perl.scm:3723 msgid "" "This module provides functions for fast and correct file\n" "slurping and spewing. All functions are optionally exported." msgstr "" -#: gnu/packages/perl.scm:3545 +#: gnu/packages/perl.scm:3740 msgid "Simple file reader and writer" msgstr "" -#: gnu/packages/perl.scm:3547 +#: gnu/packages/perl.scm:3742 msgid "This module provides functions for fast reading and writing of files." msgstr "" -#: gnu/packages/perl.scm:3566 +#: gnu/packages/perl.scm:3761 msgid "Return name and handle of a temporary file safely" msgstr "" -#: gnu/packages/perl.scm:3567 +#: gnu/packages/perl.scm:3762 msgid "" "File::Temp can be used to create and open temporary files in\n" "a safe way." msgstr "" -#: gnu/packages/perl.scm:3584 +#: gnu/packages/perl.scm:3779 msgid "Portable implementation of the `which' utility" msgstr "" -#: gnu/packages/perl.scm:3586 +#: gnu/packages/perl.scm:3781 msgid "" "File::Which was created to be able to get the paths to executable\n" "programs on systems under which the `which' program wasn't implemented in the\n" "shell." msgstr "" -#: gnu/packages/perl.scm:3609 +#: gnu/packages/perl.scm:3804 msgid "Extended Unix style glob functionality" msgstr "" -#: gnu/packages/perl.scm:3610 +#: gnu/packages/perl.scm:3805 msgid "" "@code{File::Zglob} provides a traditional Unix @code{glob}\n" "functionality; it returns a list of file names that match the given pattern.\n" "For instance, it supports the @code{**/*.pm} form." msgstr "" -#: gnu/packages/perl.scm:3629 +#: gnu/packages/perl.scm:3824 msgid "Module to handle parsing command line options" msgstr "" -#: gnu/packages/perl.scm:3630 +#: gnu/packages/perl.scm:3825 msgid "" "The @code{Getopt::Long} module implements an extended getopt\n" "function called @code{GetOptions()}. It parses the command line from\n" @@ -12271,11 +13173,11 @@ msgid "" "single-letter approach, is provided but not enabled by default." msgstr "" -#: gnu/packages/perl.scm:3664 +#: gnu/packages/perl.scm:3859 msgid "Getopt::Long, but simpler and more powerful" msgstr "" -#: gnu/packages/perl.scm:3665 +#: gnu/packages/perl.scm:3860 msgid "" "Getopt::Long::Descriptive is yet another Getopt library.\n" "It's built atop Getopt::Long, and gets a lot of its features, but tries to\n" @@ -12283,31 +13185,31 @@ msgid "" "usage (help) messages, data validation, and a few other useful features." msgstr "" -#: gnu/packages/perl.scm:3683 +#: gnu/packages/perl.scm:3878 msgid "Table-driven argument parsing for Perl" msgstr "" -#: gnu/packages/perl.scm:3685 +#: gnu/packages/perl.scm:3880 msgid "" "Getopt::Tabular is a Perl 5 module for table-driven argument parsing,\n" "vaguely inspired by John Ousterhout's Tk_ParseArgv." msgstr "" -#: gnu/packages/perl.scm:3707 +#: gnu/packages/perl.scm:3902 msgid "Graph data structures and algorithms" msgstr "" -#: gnu/packages/perl.scm:3708 +#: gnu/packages/perl.scm:3903 msgid "" "This is @code{Graph}, a Perl module for dealing with graphs,\n" "the abstract data structures." msgstr "" -#: gnu/packages/perl.scm:3725 +#: gnu/packages/perl.scm:3920 msgid "Safe cleanup blocks implemented as guards" msgstr "" -#: gnu/packages/perl.scm:3726 +#: gnu/packages/perl.scm:3921 msgid "" "@code{Guard} implements so-called @dfn{guards}. A guard is\n" "something (usually an object) that \"guards\" a resource, ensuring that it is\n" @@ -12318,11 +13220,11 @@ msgid "" "which are tied to the scope exit." msgstr "" -#: gnu/packages/perl.scm:3762 +#: gnu/packages/perl.scm:3957 msgid "Lightweight field hash for inside-out objects" msgstr "" -#: gnu/packages/perl.scm:3763 +#: gnu/packages/perl.scm:3958 msgid "" "@code{Hash::FieldHash} provides the field hash mechanism\n" "which supports the inside-out technique. It is an alternative to\n" @@ -12330,11 +13232,11 @@ msgid "" "relic support." msgstr "" -#: gnu/packages/perl.scm:3783 +#: gnu/packages/perl.scm:3978 msgid "Merge arbitrarily deep hashes into a single hash" msgstr "" -#: gnu/packages/perl.scm:3784 +#: gnu/packages/perl.scm:3979 msgid "" "Hash::Merge merges two arbitrarily deep hashes into a single\n" "hash. That is, at any level, it will add non-conflicting key-value pairs from\n" @@ -12344,21 +13246,21 @@ msgid "" "merged." msgstr "" -#: gnu/packages/perl.scm:3806 +#: gnu/packages/perl.scm:4001 msgid "Store multiple values per key" msgstr "" -#: gnu/packages/perl.scm:3807 +#: gnu/packages/perl.scm:4002 msgid "" "Hash::MultiValue is an object (and a plain hash reference)\n" "that may contain multiple values per key, inspired by MultiDict of WebOb." msgstr "" -#: gnu/packages/perl.scm:3825 +#: gnu/packages/perl.scm:4020 msgid "Alternative but compatible interface to modules that export symbols" msgstr "" -#: gnu/packages/perl.scm:3826 +#: gnu/packages/perl.scm:4021 msgid "" "This module acts as a layer between Exporter and modules which\n" "consume exports. It is feature-compatible with Exporter, plus some much needed\n" @@ -12368,11 +13270,11 @@ msgid "" "variables." msgstr "" -#: gnu/packages/perl.scm:3850 +#: gnu/packages/perl.scm:4045 msgid "Import packages into other packages" msgstr "" -#: gnu/packages/perl.scm:3851 +#: gnu/packages/perl.scm:4046 msgid "" "Writing exporters is a pain. Some use Exporter, some use\n" "Sub::Exporter, some use Moose::Exporter, some use Exporter::Declare ... and\n" @@ -12382,22 +13284,67 @@ msgid "" "compilation. Import::Into provides global methods to make this painless." msgstr "" -#: gnu/packages/perl.scm:3873 +#: gnu/packages/perl.scm:4068 msgid "Use modules in inc/ if newer than installed" msgstr "" -#: gnu/packages/perl.scm:3874 +#: gnu/packages/perl.scm:4069 msgid "" "The inc::latest module helps bootstrap configure-time\n" "dependencies for CPAN distributions. These dependencies get bundled into the\n" "inc directory within a distribution and are used by Makefile.PL or Build.PL." msgstr "" -#: gnu/packages/perl.scm:3895 +#: gnu/packages/perl.scm:4089 +msgid "Lexically warn about using the indirect method call syntax" +msgstr "" + +#: gnu/packages/perl.scm:4091 +msgid "Indirect warns about using the indirect method call syntax." +msgstr "" + +#: gnu/packages/perl.scm:4111 +msgid "Write Perl subroutines in other programming languages" +msgstr "Écrire des sous-routines Perl dans d'autres langages de programmation" + +#: gnu/packages/perl.scm:4112 +msgid "" +"The @code{Inline} module allows you to put source code\n" +"from other programming languages directly (inline) in a Perl script or\n" +"module. The code is automatically compiled as needed, and then loaded\n" +"for immediate access from Perl." +msgstr "" + +#: gnu/packages/perl.scm:4142 +msgid "C Language Support for Inline" +msgstr "" + +#: gnu/packages/perl.scm:4143 +msgid "" +"The @code{Inline::C} module allows you to write Perl\n" +"subroutines in C. Since version 0.30 the @code{Inline} module supports\n" +"multiple programming languages and each language has its own support module.\n" +"This document describes how to use Inline with the C programming language.\n" +"It also goes a bit into Perl C internals." +msgstr "" + +#: gnu/packages/perl.scm:4169 +msgid "@code{IO::All} to Larry Wall!" +msgstr "" + +#: gnu/packages/perl.scm:4170 +msgid "" +"@code{IO::All} combines all of the best Perl IO modules into\n" +"a single nifty object oriented interface to greatly simplify your everyday\n" +"Perl IO idioms. It exports a single function called io, which returns a new\n" +"@code{IO::All} object. And that object can do it all!" +msgstr "" + +#: gnu/packages/perl.scm:4192 msgid "Capture STDOUT and STDERR from Perl code, subprocesses or XS" msgstr "" -#: gnu/packages/perl.scm:3896 +#: gnu/packages/perl.scm:4193 msgid "" "@code{IO::CaptureOutput} provides routines for capturing\n" "@code{STDOUT} and @code{STDERR} from perl subroutines, forked system\n" @@ -12407,43 +13354,43 @@ msgid "" "try @code{Capture::Tiny} instead." msgstr "" -#: gnu/packages/perl.scm:3918 +#: gnu/packages/perl.scm:4215 msgid "Utilities for interactive I/O" msgstr "" -#: gnu/packages/perl.scm:3919 +#: gnu/packages/perl.scm:4216 msgid "" "This module provides three utility subroutines that make it\n" "easier to develop interactive applications: is_interactive(), interactive(),\n" "and busy()." msgstr "" -#: gnu/packages/perl.scm:3938 +#: gnu/packages/perl.scm:4235 msgid "Emulate file interface for in-core strings" msgstr "" -#: gnu/packages/perl.scm:3939 +#: gnu/packages/perl.scm:4236 msgid "" "IO::String is an IO::File (and IO::Handle) compatible class\n" "that reads or writes data from in-core strings." msgstr "" -#: gnu/packages/perl.scm:3957 +#: gnu/packages/perl.scm:4254 msgid "IO:: interface for reading/writing an array of lines" msgstr "" -#: gnu/packages/perl.scm:3958 +#: gnu/packages/perl.scm:4255 msgid "" "This toolkit primarily provides modules for performing both\n" "traditional and object-oriented i/o) on things *other* than normal\n" "filehandles; in particular, IO::Scalar, IO::ScalarArray, and IO::Lines." msgstr "" -#: gnu/packages/perl.scm:3976 +#: gnu/packages/perl.scm:4273 msgid "Perl interface to pseudo ttys" msgstr "" -#: gnu/packages/perl.scm:3978 +#: gnu/packages/perl.scm:4275 msgid "" "This package provides the 'IO::Pty' and 'IO::Tty' Perl interfaces to\n" "pseudo ttys." @@ -12451,22 +13398,22 @@ msgstr "" "Ce paquet fournit les interfaces Perl « IO::Pty » et « IO::Tty » avec\n" "les pseudo tty." -#: gnu/packages/perl.scm:3996 +#: gnu/packages/perl.scm:4293 msgid "Run interactive command-line programs" msgstr "" -#: gnu/packages/perl.scm:3997 +#: gnu/packages/perl.scm:4294 msgid "" "@code{IPC::Cmd} allows for the searching and execution of\n" "any binary on your system. It adheres to verbosity settings and is able to\n" "run interactively. It also has an option to capture output/error buffers." msgstr "" -#: gnu/packages/perl.scm:4026 +#: gnu/packages/perl.scm:4323 msgid "Run system() and background procs w/ piping, redirs, ptys" msgstr "" -#: gnu/packages/perl.scm:4027 +#: gnu/packages/perl.scm:4324 msgid "" "IPC::Run allows you run and interact with child processes\n" "using files, pipes, and pseudo-ttys. Both system()-style and scripted usages\n" @@ -12474,11 +13421,11 @@ msgid "" "both supported and may be mixed." msgstr "" -#: gnu/packages/perl.scm:4045 +#: gnu/packages/perl.scm:4342 msgid "Run a subprocess with input/output redirection" msgstr "" -#: gnu/packages/perl.scm:4047 +#: gnu/packages/perl.scm:4344 msgid "" "The IPC::Run3 module allows you to run a subprocess and redirect stdin,\n" "stdout, and/or stderr to files and perl data structures. It aims to satisfy\n" @@ -12486,21 +13433,21 @@ msgid "" "Perlish API and none of the bloat and rarely used features of IPC::Run." msgstr "" -#: gnu/packages/perl.scm:4071 +#: gnu/packages/perl.scm:4368 msgid "Lightweight interface to shared memory" msgstr "Interface légère pour la mémoire partagée" -#: gnu/packages/perl.scm:4072 +#: gnu/packages/perl.scm:4369 msgid "" "IPC::ShareLite provides a simple interface to shared memory,\n" "allowing data to be efficiently communicated between processes." msgstr "" -#: gnu/packages/perl.scm:4090 +#: gnu/packages/perl.scm:4387 msgid "Run commands simply, with detailed diagnostics" msgstr "" -#: gnu/packages/perl.scm:4091 +#: gnu/packages/perl.scm:4388 msgid "" "Calling Perl's in-built @code{system} function is easy,\n" "determining if it was successful is hard. Let's face it, @code{$?} isn't the\n" @@ -12511,21 +13458,21 @@ msgid "" "commands." msgstr "" -#: gnu/packages/perl.scm:4116 +#: gnu/packages/perl.scm:4413 msgid "JSON encoder/decoder for Perl" msgstr "" -#: gnu/packages/perl.scm:4117 +#: gnu/packages/perl.scm:4414 msgid "" "This module converts Perl data structures to JSON and vice\n" "versa using either JSON::XS or JSON::PP." msgstr "" -#: gnu/packages/perl.scm:4142 +#: gnu/packages/perl.scm:4439 msgid "Wrapper for Perl JSON classes" msgstr "" -#: gnu/packages/perl.scm:4144 +#: gnu/packages/perl.scm:4441 msgid "" "This module tries to provide a coherent API to bring together the\n" "various JSON modules currently on CPAN. This module will allow you to code to\n" @@ -12533,11 +13480,11 @@ msgid "" "installed." msgstr "" -#: gnu/packages/perl.scm:4168 +#: gnu/packages/perl.scm:4465 msgid "Cpanel::JSON::XS with fallback" msgstr "" -#: gnu/packages/perl.scm:4169 +#: gnu/packages/perl.scm:4466 msgid "" "This module first checks to see if either Cpanel::JSON::XS\n" "or JSON::XS is already loaded, in which case it uses that module. Otherwise\n" @@ -12545,15 +13492,23 @@ msgid "" "either uses the first module it finds or throws an error." msgstr "" -#: gnu/packages/perl.scm:4192 +#: gnu/packages/perl.scm:4489 msgid "JSON serialising/deserialising for Perl" msgstr "" -#: gnu/packages/perl.scm:4211 +#: gnu/packages/perl.scm:4512 +msgid "Prevent leakage of lexical hints" +msgstr "" + +#: gnu/packages/perl.scm:4514 +msgid "Lexical::SealRequireHints prevents leakage of lexical hints" +msgstr "" + +#: gnu/packages/perl.scm:4531 msgid "Bringing loggers and listeners together" msgstr "" -#: gnu/packages/perl.scm:4212 +#: gnu/packages/perl.scm:4532 msgid "" "@code{Log::Any} provides a standard log production API for\n" "modules. @code{Log::Any::Adapter} allows applications to choose the mechanism\n" @@ -12571,32 +13526,32 @@ msgid "" "logging mechanism." msgstr "" -#: gnu/packages/perl.scm:4248 +#: gnu/packages/perl.scm:4568 msgid "Log::Any adapter for Log::Log4perl" msgstr "" -#: gnu/packages/perl.scm:4249 +#: gnu/packages/perl.scm:4569 msgid "" "@code{Log::Any::Adapter::Log4perl} provides a\n" "@code{Log::Any} adapter using @code{Log::Log4perl} for logging." msgstr "" -#: gnu/packages/perl.scm:4270 +#: gnu/packages/perl.scm:4590 msgid "Log4j implementation for Perl" msgstr "" -#: gnu/packages/perl.scm:4271 +#: gnu/packages/perl.scm:4591 msgid "" "@code{Log::Log4perl} lets you remote-control and fine-tune\n" "the logging behaviour of your system from the outside. It implements the\n" "widely popular (Java-based) Log4j logging package in pure Perl." msgstr "" -#: gnu/packages/perl.scm:4291 +#: gnu/packages/perl.scm:4611 msgid "Log::Report in the lightest form" msgstr "" -#: gnu/packages/perl.scm:4293 +#: gnu/packages/perl.scm:4613 msgid "" "This module allows libraries to have a dependency to a small module\n" "instead of the full Log-Report distribution. The full power of\n" @@ -12606,81 +13561,81 @@ msgid "" "version." msgstr "" -#: gnu/packages/perl.scm:4318 +#: gnu/packages/perl.scm:4638 msgid "Get messages to users and logs" msgstr "" -#: gnu/packages/perl.scm:4320 +#: gnu/packages/perl.scm:4640 msgid "" "@code{Log::Report} combines three tasks which are closely related in\n" "one: logging, exceptions, and translations." msgstr "" -#: gnu/packages/perl.scm:4349 +#: gnu/packages/perl.scm:4669 msgid "High-level interface to Uniforum message translation" msgstr "" -#: gnu/packages/perl.scm:4350 +#: gnu/packages/perl.scm:4670 msgid "" "This package is an internationalization library for Perl\n" "that aims to be compatible with the Uniforum message translations system as\n" "implemented for example in GNU gettext." msgstr "" -#: gnu/packages/perl.scm:4369 +#: gnu/packages/perl.scm:4689 msgid "Transliterate text between writing systems" msgstr "" -#: gnu/packages/perl.scm:4370 +#: gnu/packages/perl.scm:4690 msgid "" "@code{Lingua::Translit} can be used to convert text from one\n" "writing system to another, based on national or international transliteration\n" "tables. Where possible a reverse transliteration is supported." msgstr "" -#: gnu/packages/perl.scm:4394 +#: gnu/packages/perl.scm:4714 msgid "Combination of List::Util and List::MoreUtils" msgstr "" -#: gnu/packages/perl.scm:4395 +#: gnu/packages/perl.scm:4715 msgid "" "This module exports all of the functions that either\n" "List::Util or List::MoreUtils defines, with preference to List::Util." msgstr "" -#: gnu/packages/perl.scm:4417 +#: gnu/packages/perl.scm:4737 msgid "Compare elements of two or more lists" msgstr "" -#: gnu/packages/perl.scm:4418 +#: gnu/packages/perl.scm:4738 msgid "" "@code{List::Compare} provides a module to perform\n" "comparative operations on two or more lists. Provided operations include\n" "intersections, unions, unique elements, complements and many more." msgstr "" -#: gnu/packages/perl.scm:4453 gnu/packages/perl.scm:4504 +#: gnu/packages/perl.scm:4773 gnu/packages/perl.scm:4824 msgid "Provide the stuff missing in List::Util" msgstr "" -#: gnu/packages/perl.scm:4454 +#: gnu/packages/perl.scm:4774 msgid "" "List::MoreUtils provides some trivial but commonly needed\n" "functionality on lists which is not going to go into List::Util." msgstr "" -#: gnu/packages/perl.scm:4476 +#: gnu/packages/perl.scm:4796 msgid "Provide the stuff missing in List::Util in XS" msgstr "" -#: gnu/packages/perl.scm:4477 +#: gnu/packages/perl.scm:4797 msgid "" "@code{List::MoreUtils::XS} provides some trivial but\n" "commonly needed functionality on lists which is not going to go into\n" "@code{List::Util}." msgstr "" -#: gnu/packages/perl.scm:4505 +#: gnu/packages/perl.scm:4825 msgid "" "@code{List::SomeUtils} provides some trivial but commonly\n" "needed functionality on lists which is not going to go into @code{List::Util}.\n" @@ -12692,11 +13647,11 @@ msgid "" "portions of this module couldn't be compiled on this machine." msgstr "" -#: gnu/packages/perl.scm:4534 +#: gnu/packages/perl.scm:4854 msgid "Bundle of ancient email modules" msgstr "" -#: gnu/packages/perl.scm:4535 +#: gnu/packages/perl.scm:4855 msgid "" "MailTools contains the following modules:\n" "@table @asis\n" @@ -12723,54 +13678,85 @@ msgid "" "@end table" msgstr "" -#: gnu/packages/perl.scm:4574 +#: gnu/packages/perl.scm:4894 +msgid "Solution of bezier curves" +msgstr "" + +#: gnu/packages/perl.scm:4895 +msgid "" +"This module implements the algorithm for the solution of Bezier\n" +"curves as presented by Robert D Miller in Graphics Gems V, \"Quick and Simple\n" +"Bezier Curve Drawing\"." +msgstr "" + +#: gnu/packages/perl.scm:4914 +msgid "Perl extension for rounding numbers" +msgstr "Extension Perl pour arrondir des nombres" + +#: gnu/packages/perl.scm:4915 +msgid "" +"@code{Math::Round} provides functions to round numbers,\n" +"both positive and negative, in various ways." +msgstr "" + +#: gnu/packages/perl.scm:4933 +msgid "Make functions faster by trading space for time" +msgstr "" + +#: gnu/packages/perl.scm:4934 +msgid "" +"This package transparently speeds up functions by caching\n" +"return values, trading space for time." +msgstr "" + +#: gnu/packages/perl.scm:4952 msgid "Expiry plug-in for Memoize that adds LRU cache expiration" msgstr "" -#: gnu/packages/perl.scm:4575 +#: gnu/packages/perl.scm:4953 msgid "" "This module implements an expiry policy for Memoize that\n" "follows LRU semantics, that is, the last n results, where n is specified as\n" "the argument to the CACHESIZE parameter, will be cached." msgstr "" -#: gnu/packages/perl.scm:4593 +#: gnu/packages/perl.scm:4971 msgid "Charset information for MIME messages" msgstr "" -#: gnu/packages/perl.scm:4595 +#: gnu/packages/perl.scm:4973 msgid "" "@code{MIME::Charset} provides information about character sets used for\n" "MIME messages on Internet." msgstr "" -#: gnu/packages/perl.scm:4622 +#: gnu/packages/perl.scm:5000 msgid "Tools to manipulate MIME messages" msgstr "Outils de manipulation des messages MIME" -#: gnu/packages/perl.scm:4624 +#: gnu/packages/perl.scm:5002 msgid "" "MIME-tools is a collection of Perl5 MIME:: modules for parsing,\n" "decoding, and generating single- or multipart (even nested multipart) MIME\n" "messages." msgstr "" -#: gnu/packages/perl.scm:4643 +#: gnu/packages/perl.scm:5021 msgid "Definition of MIME types" msgstr "" -#: gnu/packages/perl.scm:4644 +#: gnu/packages/perl.scm:5022 msgid "" "This module provides a list of known mime-types, combined\n" "from various sources. For instance, it contains all IANA types and the\n" "knowledge of Apache." msgstr "" -#: gnu/packages/perl.scm:4666 +#: gnu/packages/perl.scm:5044 msgid "Write your linewise code for handles; this does the rest" msgstr "" -#: gnu/packages/perl.scm:4667 +#: gnu/packages/perl.scm:5045 msgid "" "It's boring to deal with opening files for IO, converting\n" "strings to handle-like objects, and all that. With\n" @@ -12779,21 +13765,21 @@ msgid "" "file names are added for you." msgstr "" -#: gnu/packages/perl.scm:4693 +#: gnu/packages/perl.scm:5071 msgid "Enable all of the features of Modern Perl with one import" msgstr "" -#: gnu/packages/perl.scm:4694 +#: gnu/packages/perl.scm:5072 msgid "" "@code{Modern::Perl} provides a simple way to enable\n" "multiple, by now, standard libraries in a Perl program." msgstr "" -#: gnu/packages/perl.scm:4722 +#: gnu/packages/perl.scm:5100 msgid "Tiny replacement for Module::Build" msgstr "" -#: gnu/packages/perl.scm:4723 +#: gnu/packages/perl.scm:5101 msgid "" "Many Perl distributions use a Build.PL file instead of a\n" "Makefile.PL file to drive distribution configuration, build, test and\n" @@ -12803,11 +13789,11 @@ msgid "" "has less than 120, yet supports the features needed by most distributions." msgstr "" -#: gnu/packages/perl.scm:4751 +#: gnu/packages/perl.scm:5129 msgid "Module::Build class for building XS modules" msgstr "" -#: gnu/packages/perl.scm:4753 +#: gnu/packages/perl.scm:5131 msgid "" "@code{Module::Build::XSUtil} is subclass of @code{Module::Build}\n" "for support building XS modules.\n" @@ -12831,11 +13817,11 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/perl.scm:4789 +#: gnu/packages/perl.scm:5167 msgid "Find and use installed modules in a (sub)category" msgstr "" -#: gnu/packages/perl.scm:4790 +#: gnu/packages/perl.scm:5168 msgid "" "Module::Find lets you find and use modules in categories.\n" "This can be useful for auto-detecting driver or plugin modules. You can\n" @@ -12843,11 +13829,11 @@ msgid "" "subcategories." msgstr "" -#: gnu/packages/perl.scm:4816 +#: gnu/packages/perl.scm:5194 msgid "Loads alternate underlying implementations for a module" msgstr "" -#: gnu/packages/perl.scm:4817 +#: gnu/packages/perl.scm:5195 msgid "" "This module abstracts out the process of choosing one of\n" "several underlying implementations for a module. This can be used to provide\n" @@ -12856,11 +13842,11 @@ msgid "" "implementations." msgstr "" -#: gnu/packages/perl.scm:4855 +#: gnu/packages/perl.scm:5233 msgid "Standalone, extensible Perl module installer" msgstr "" -#: gnu/packages/perl.scm:4856 +#: gnu/packages/perl.scm:5234 msgid "" "Module::Install is a package for writing installers for\n" "CPAN (or CPAN-like) distributions that are clean, simple, minimalist, act in a\n" @@ -12868,52 +13854,66 @@ msgid "" "installation version 5.005 or newer." msgstr "" -#: gnu/packages/perl.scm:4877 +#: gnu/packages/perl.scm:5260 +msgid "Parse and examine a Perl distribution @file{MANIFEST} file" +msgstr "" + +#: gnu/packages/perl.scm:5262 +msgid "" +"@code{Module::Manifest} is a simple utility module created originally for\n" +"use in @code{Module::Inspector}.\n" +"\n" +"It can load a @file{MANIFEST} file that comes in a Perl distribution tarball,\n" +"examine the contents, and perform some simple tasks. It can also load the\n" +"@file{MANIFEST.SKIP} file and check that." +msgstr "" + +#: gnu/packages/perl.scm:5285 msgid "Give your Perl module the ability to have plugins" msgstr "" -#: gnu/packages/perl.scm:4878 +#: gnu/packages/perl.scm:5286 msgid "" "This module provides a simple but extensible way of having\n" "'plugins' for your Perl module." msgstr "" -#: gnu/packages/perl.scm:4897 +#: gnu/packages/perl.scm:5305 msgid "Perl runtime module handling" msgstr "" -#: gnu/packages/perl.scm:4898 +#: gnu/packages/perl.scm:5306 msgid "" "The functions exported by this module deal with runtime\n" "handling of Perl modules, which are normally handled at compile time." msgstr "" -#: gnu/packages/perl.scm:4921 +#: gnu/packages/perl.scm:5329 msgid "Provide information on conflicts for Module::Runtime" msgstr "" -#: gnu/packages/perl.scm:4922 +#: gnu/packages/perl.scm:5330 msgid "" "This module provides conflicts checking for Module::Runtime,\n" "which had a recent release that broke some versions of Moose. It is called\n" "from Moose::Conflicts and moose-outdated." msgstr "" -#: gnu/packages/perl.scm:4943 +#: gnu/packages/perl.scm:5351 msgid "Recursively scan Perl code for dependencies" msgstr "" -#: gnu/packages/perl.scm:4944 +#: gnu/packages/perl.scm:5352 msgid "" "Module::ScanDeps is a module to recursively scan Perl\n" "programs for dependencies." msgstr "" -#: gnu/packages/perl.scm:4964 +#: gnu/packages/perl.scm:5372 msgid "Module name tools and transformations" msgstr "" -#: gnu/packages/perl.scm:4965 +#: gnu/packages/perl.scm:5373 msgid "" "This module provides a few useful functions for manipulating\n" "module names. Its main aim is to centralise some of the functions commonly\n" @@ -12921,11 +13921,11 @@ msgid "" "module names to relative paths." msgstr "" -#: gnu/packages/perl.scm:4995 +#: gnu/packages/perl.scm:5403 msgid "Minimalist Object Orientation (with Moose compatibility)" msgstr "" -#: gnu/packages/perl.scm:4996 +#: gnu/packages/perl.scm:5404 msgid "" "Moo is an extremely light-weight Object Orientation system.\n" "It allows one to concisely define objects and roles with a convenient syntax\n" @@ -12933,11 +13933,11 @@ msgid "" "Moose and is optimised for rapid startup." msgstr "" -#: gnu/packages/perl.scm:5072 +#: gnu/packages/perl.scm:5511 msgid "Postmodern object system for Perl 5" msgstr "" -#: gnu/packages/perl.scm:5074 +#: gnu/packages/perl.scm:5513 msgid "" "Moose is a complete object system for Perl 5. It provides keywords for\n" "attribute declaration, object construction, inheritance, and maybe more. With\n" @@ -12948,11 +13948,11 @@ msgid "" "sentences." msgstr "" -#: gnu/packages/perl.scm:5103 +#: gnu/packages/perl.scm:5542 msgid "Emulate Class::Accessor::Fast behavior using Moose attributes" msgstr "" -#: gnu/packages/perl.scm:5104 +#: gnu/packages/perl.scm:5543 msgid "" "This module attempts to emulate the behavior of\n" "Class::Accessor::Fast as accurately as possible using the Moose attribute\n" @@ -12960,21 +13960,21 @@ msgid "" "private methods are not." msgstr "" -#: gnu/packages/perl.scm:5136 +#: gnu/packages/perl.scm:5575 msgid "Moose role for processing command line options" msgstr "" -#: gnu/packages/perl.scm:5137 +#: gnu/packages/perl.scm:5576 msgid "" "This is a Moose role which provides an alternate constructor\n" "for creating objects using parameters passed in from the command line." msgstr "" -#: gnu/packages/perl.scm:5158 +#: gnu/packages/perl.scm:5597 msgid "Mark overload code symbols as methods" msgstr "" -#: gnu/packages/perl.scm:5159 +#: gnu/packages/perl.scm:5598 msgid "" "MooseX::MarkAsMethods allows one to easily mark certain\n" "functions as Moose methods. This will allow other packages such as\n" @@ -12984,21 +13984,21 @@ msgid "" "overloads will \"just work\"." msgstr "" -#: gnu/packages/perl.scm:5189 +#: gnu/packages/perl.scm:5628 msgid "Code attribute introspection" msgstr "" -#: gnu/packages/perl.scm:5190 +#: gnu/packages/perl.scm:5629 msgid "" "This module allows code attributes of methods to be\n" "introspected using Moose meta method objects." msgstr "" -#: gnu/packages/perl.scm:5216 +#: gnu/packages/perl.scm:5655 msgid "Subclassing of non-Moose classes" msgstr "" -#: gnu/packages/perl.scm:5217 +#: gnu/packages/perl.scm:5656 msgid "" "MooseX::NonMoose allows for easily subclassing non-Moose\n" "classes with Moose, taking care of the details connected with doing this, such\n" @@ -13007,31 +14007,31 @@ msgid "" "BUILD methods are called. It tries to be as non-intrusive as possible." msgstr "" -#: gnu/packages/perl.scm:5246 +#: gnu/packages/perl.scm:5685 msgid "Extension of Params::Validate using Moose's types" msgstr "" -#: gnu/packages/perl.scm:5247 +#: gnu/packages/perl.scm:5686 msgid "" "This module fills a gap in Moose by adding method parameter\n" "validation to Moose." msgstr "" -#: gnu/packages/perl.scm:5268 +#: gnu/packages/perl.scm:5707 msgid "Apply roles to a related Perl class" msgstr "" -#: gnu/packages/perl.scm:5269 +#: gnu/packages/perl.scm:5708 msgid "" "This module applies roles to make a subclass instead of\n" "manually setting up a subclass." msgstr "" -#: gnu/packages/perl.scm:5296 +#: gnu/packages/perl.scm:5735 msgid "Moose roles with composition parameters" msgstr "" -#: gnu/packages/perl.scm:5297 +#: gnu/packages/perl.scm:5736 msgid "" "Because Moose roles serve many different masters, they\n" "usually provide only the least common denominator of functionality. To\n" @@ -13041,11 +14041,11 @@ msgid "" "Parameterized roles offer a solution to these (and other) kinds of problems." msgstr "" -#: gnu/packages/perl.scm:5323 +#: gnu/packages/perl.scm:5762 msgid "Roles which support overloading" msgstr "" -#: gnu/packages/perl.scm:5324 +#: gnu/packages/perl.scm:5763 msgid "" "MooseX::Role::WithOverloading allows you to write a\n" "Moose::Role which defines overloaded operators and allows those overload\n" @@ -13053,11 +14053,11 @@ msgid "" "where plain Moose::Roles would lose the overloading." msgstr "" -#: gnu/packages/perl.scm:5346 +#: gnu/packages/perl.scm:5785 msgid "Name your accessors foo() and set_foo()" msgstr "" -#: gnu/packages/perl.scm:5347 +#: gnu/packages/perl.scm:5786 msgid "" "This module does not provide any methods. Simply loading it\n" "changes the default naming policy for the loading class so that accessors are\n" @@ -13065,82 +14065,82 @@ msgid "" "accessor, while set methods are prefixed with \"_set_\"." msgstr "" -#: gnu/packages/perl.scm:5373 +#: gnu/packages/perl.scm:5812 msgid "Strict object constructors for Moose" msgstr "" -#: gnu/packages/perl.scm:5374 +#: gnu/packages/perl.scm:5813 msgid "" "Simply loading this module makes your constructors\n" "\"strict\". If your constructor is called with an attribute init argument\n" "that your class does not declare, then it calls Moose->throw_error()." msgstr "" -#: gnu/packages/perl.scm:5402 +#: gnu/packages/perl.scm:5841 msgid "Trait loading and resolution for Moose" msgstr "" -#: gnu/packages/perl.scm:5403 +#: gnu/packages/perl.scm:5842 msgid "" "Adds support on top of MooseX::Traits for class precedence\n" "search for traits and some extra attributes." msgstr "" -#: gnu/packages/perl.scm:5429 +#: gnu/packages/perl.scm:5868 msgid "Organise your Moose types in libraries" msgstr "" -#: gnu/packages/perl.scm:5430 +#: gnu/packages/perl.scm:5869 msgid "" "This package lets you declare types using short names, but\n" "behind the scenes it namespaces all your type declarations, effectively\n" "prevent name clashes between packages." msgstr "" -#: gnu/packages/perl.scm:5461 +#: gnu/packages/perl.scm:5900 msgid "DateTime related constraints and coercions for Moose" msgstr "" -#: gnu/packages/perl.scm:5462 +#: gnu/packages/perl.scm:5901 msgid "" "This module packages several Moose::Util::TypeConstraints\n" "with coercions, designed to work with the DateTime suite of objects." msgstr "" -#: gnu/packages/perl.scm:5494 +#: gnu/packages/perl.scm:5933 msgid "Extensions to MooseX::Types::DateTime" msgstr "" -#: gnu/packages/perl.scm:5495 +#: gnu/packages/perl.scm:5934 msgid "" "This module builds on MooseX::Types::DateTime to add\n" "additional custom types and coercions. Since it builds on an existing type,\n" "all coercions and constraints are inherited." msgstr "" -#: gnu/packages/perl.scm:5524 +#: gnu/packages/perl.scm:5963 msgid "ClassName type constraints for Moose" msgstr "" -#: gnu/packages/perl.scm:5525 +#: gnu/packages/perl.scm:5964 msgid "" "MooseX::Types::LoadableClass provides a ClassName type\n" "constraint with coercion to load the class." msgstr "" -#: gnu/packages/perl.scm:5551 +#: gnu/packages/perl.scm:5990 msgid "Using Moo and MooX:: packages the most lazy way" msgstr "" -#: gnu/packages/perl.scm:5552 +#: gnu/packages/perl.scm:5991 msgid "Contains the MooX and MooX::Role packages." msgstr "" -#: gnu/packages/perl.scm:5579 +#: gnu/packages/perl.scm:6018 msgid "Giving an easy Moo style way to make command organized CLI apps" msgstr "" -#: gnu/packages/perl.scm:5580 +#: gnu/packages/perl.scm:6019 msgid "" "This package eases the writing of command line utilities,\n" "accepting commands and subcommands and so on. These commands can form a tree,\n" @@ -13149,11 +14149,11 @@ msgid "" "most specific one) is instantiated." msgstr "" -#: gnu/packages/perl.scm:5613 +#: gnu/packages/perl.scm:6052 msgid "Moo eXtension for initializing objects from config file" msgstr "" -#: gnu/packages/perl.scm:5614 +#: gnu/packages/perl.scm:6053 msgid "" "This module is intended to easily load initialization values\n" "for attributes on object construction from an appropriate config file. The\n" @@ -13161,33 +14161,33 @@ msgid "" "@code{MooX::ConfigFromFile} ensures that the role is applied." msgstr "" -#: gnu/packages/perl.scm:5638 +#: gnu/packages/perl.scm:6077 msgid "Moo eXtension for @code{File::ConfigDir}" msgstr "" -#: gnu/packages/perl.scm:5639 +#: gnu/packages/perl.scm:6078 msgid "" "This module is a helper for easily finding configuration\n" "file locations. This information can be used to find a suitable place for\n" "installing configuration files or for finding any piece of settings." msgstr "" -#: gnu/packages/perl.scm:5674 +#: gnu/packages/perl.scm:6113 msgid "NativeTrait-like behavior for Moo" msgstr "" -#: gnu/packages/perl.scm:5676 +#: gnu/packages/perl.scm:6115 msgid "" "@code{MooX::HandlesVia} is an extension of Moo's @code{handles}\n" "attribute functionality. It provides a means of proxying functionality from\n" "an external class to the given atttribute." msgstr "" -#: gnu/packages/perl.scm:5707 +#: gnu/packages/perl.scm:6146 msgid "Easily translate Moose code to Moo" msgstr "" -#: gnu/packages/perl.scm:5709 +#: gnu/packages/perl.scm:6148 msgid "" "MooX::late does the following:\n" "@enumerate\n" @@ -13201,11 +14201,11 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/perl.scm:5764 +#: gnu/packages/perl.scm:6203 msgid "Explicit Options eXtension for Object Class" msgstr "" -#: gnu/packages/perl.scm:5765 +#: gnu/packages/perl.scm:6204 msgid "" "Create a command line tool with your Mo, Moo, Moose objects.\n" "You have an @code{option} keyword to replace the usual @code{has} to\n" @@ -13214,32 +14214,32 @@ msgid "" "generate a command line tool." msgstr "" -#: gnu/packages/perl.scm:5792 +#: gnu/packages/perl.scm:6231 msgid "Moosish types and type builder" msgstr "" -#: gnu/packages/perl.scm:5793 +#: gnu/packages/perl.scm:6232 msgid "" "MooX::Types::MooseLike provides a possibility to build your\n" "own set of Moose-like types. These custom types can then be used to describe\n" "fields in Moo-based classes." msgstr "" -#: gnu/packages/perl.scm:5822 +#: gnu/packages/perl.scm:6261 msgid "Fast Moose-compatible object system for perl5" msgstr "" -#: gnu/packages/perl.scm:5824 +#: gnu/packages/perl.scm:6263 msgid "" "Mouse is a @code{Moose} compatible object system that implements a\n" "subset of the functionality for reduced startup time." msgstr "" -#: gnu/packages/perl.scm:5847 +#: gnu/packages/perl.scm:6286 msgid "Extend attribute interfaces for Mouse" msgstr "Interfaces d'attribut étendu pour Mouse" -#: gnu/packages/perl.scm:5849 +#: gnu/packages/perl.scm:6288 msgid "" "While @code{Mouse} attributes provide a way to name your accessors,\n" "readers, writers, clearers and predicates, @code{MouseX::NativeTraits}\n" @@ -13247,22 +14247,30 @@ msgid "" "of data." msgstr "" -#: gnu/packages/perl.scm:5869 +#: gnu/packages/perl.scm:6308 msgid "Mozilla's CA cert bundle in PEM format" msgstr "" -#: gnu/packages/perl.scm:5870 +#: gnu/packages/perl.scm:6309 msgid "" "@code{Mozilla::CA} provides a copy of Mozilla's bundle of\n" "Certificate Authority certificates in a form that can be consumed by modules\n" "and libraries based on OpenSSL." msgstr "" -#: gnu/packages/perl.scm:5889 +#: gnu/packages/perl.scm:6335 +msgid "Disable multidimensional array emulation" +msgstr "" + +#: gnu/packages/perl.scm:6337 +msgid "Multidimensional disables multidimensional array emulation." +msgstr "" + +#: gnu/packages/perl.scm:6354 msgid "MRO interface compatibility for Perls < 5.9.5" msgstr "" -#: gnu/packages/perl.scm:5890 +#: gnu/packages/perl.scm:6355 msgid "" "The \"mro\" namespace provides several utilities for dealing\n" "with method resolution order and method caching in general in Perl 5.9.5 and\n" @@ -13270,11 +14278,11 @@ msgid "" "Perl (back to 5.6.0)." msgstr "" -#: gnu/packages/perl.scm:5917 +#: gnu/packages/perl.scm:6382 msgid "Keep imports out of your namespace" msgstr "" -#: gnu/packages/perl.scm:5918 +#: gnu/packages/perl.scm:6383 msgid "" "The namespace::autoclean pragma will remove all imported\n" "symbols at the end of the current package's compile cycle. Functions called\n" @@ -13285,11 +14293,11 @@ msgid "" "anything that looks like a method." msgstr "" -#: gnu/packages/perl.scm:5944 +#: gnu/packages/perl.scm:6409 msgid "Keep imports and functions out of your namespace" msgstr "" -#: gnu/packages/perl.scm:5945 +#: gnu/packages/perl.scm:6410 msgid "" "The namespace::clean pragma will remove all previously\n" "declared or imported symbols at the end of the current package's compile\n" @@ -13297,11 +14305,24 @@ msgid "" "name, but they won't show up as methods on your class or instances." msgstr "" -#: gnu/packages/perl.scm:5972 +#: gnu/packages/perl.scm:6430 +msgid "Non-blocking system DNS resolver" +msgstr "" + +#: gnu/packages/perl.scm:6432 +msgid "" +"This class provides several methods for host name resolution. It is\n" +"designed to be used with event loops. Names are resolved by your system's\n" +"native @code{getaddrinfo(3)} implementation, called in a separate thread to\n" +"avoid blocking the entire application. Threading overhead is limited by using\n" +"system threads instead of Perl threads." +msgstr "" + +#: gnu/packages/perl.scm:6460 msgid "Internationalizing Domain Names in Applications (IDNA)" msgstr "" -#: gnu/packages/perl.scm:5974 +#: gnu/packages/perl.scm:6462 msgid "" "Internationalized Domain Names (IDNs) use characters drawn from a large\n" "repertoire (Unicode), but IDNA allows the non-ASCII characters to be\n" @@ -13312,42 +14333,67 @@ msgid "" "using whatever IDNA standard is the best choice at the moment." msgstr "" -#: gnu/packages/perl.scm:6000 +#: gnu/packages/perl.scm:6488 msgid "Perl client for Etsy's statsd daemon" msgstr "" -#: gnu/packages/perl.scm:6001 +#: gnu/packages/perl.scm:6489 msgid "" "This module implement a UDP client for the statsd statistics\n" "collector daemon in use at Etsy.com." msgstr "" -#: gnu/packages/perl.scm:6019 +#: gnu/packages/perl.scm:6507 msgid "Numeric comparisons" msgstr "" -#: gnu/packages/perl.scm:6020 +#: gnu/packages/perl.scm:6508 msgid "" "Number::Compare compiles a simple comparison to an anonymous\n" "subroutine, which you can call with a value to be tested against." msgstr "" -#: gnu/packages/perl.scm:6040 +#: gnu/packages/perl.scm:6526 +msgid "Convert numbers to strings with pretty formatting" +msgstr "" + +#: gnu/packages/perl.scm:6527 +msgid "" +"@code{Number::Format} is a library for formatting numbers.\n" +"Functions are provided for converting numbers to strings in a variety of ways,\n" +"and to convert strings that contain numbers back into numeric form. The\n" +"output formats may include thousands separators - characters inserted between\n" +"each group of three characters counting right to left from the decimal point.\n" +"The characters used for the decimal point and the thousands separator come from\n" +"the locale information or can be specified by the user." +msgstr "" + +#: gnu/packages/perl.scm:6551 +msgid "Perl extension defining ranges of numbers" +msgstr "Extension Perl pour définir des intervalles de nombres" + +#: gnu/packages/perl.scm:6552 +msgid "" +"Number::Range is an object-oriented interface to test if a\n" +"number exists in a given range, and to be able to manipulate the range." +msgstr "" + +#: gnu/packages/perl.scm:6572 msgid "Generate cryptographic signatures for objects" msgstr "" -#: gnu/packages/perl.scm:6041 +#: gnu/packages/perl.scm:6573 msgid "" "Object::Signature is an abstract base class that you can\n" "inherit from in order to allow your objects to generate unique cryptographic\n" "signatures." msgstr "" -#: gnu/packages/perl.scm:6062 +#: gnu/packages/perl.scm:6594 msgid "Read and write OLE storage files" msgstr "" -#: gnu/packages/perl.scm:6063 +#: gnu/packages/perl.scm:6595 msgid "" "This module allows you to read and write\n" "an OLE-Structured file. @dfn{OLE} (Object Linking and Embedding) is a\n" @@ -13355,43 +14401,43 @@ msgid "" "documents within a single file." msgstr "" -#: gnu/packages/perl.scm:6086 +#: gnu/packages/perl.scm:6618 msgid "Anonymous packages" msgstr "" -#: gnu/packages/perl.scm:6087 +#: gnu/packages/perl.scm:6619 msgid "" "This module allows for anonymous packages that are\n" "independent of the main namespace and only available through an object\n" "instance, not by name." msgstr "" -#: gnu/packages/perl.scm:6115 +#: gnu/packages/perl.scm:6647 msgid "Manage deprecation warnings for your distribution" msgstr "" -#: gnu/packages/perl.scm:6116 +#: gnu/packages/perl.scm:6648 msgid "" "This module allows you to manage a set of deprecations for\n" "one or more modules." msgstr "" -#: gnu/packages/perl.scm:6143 +#: gnu/packages/perl.scm:6675 msgid "Routines for manipulating stashes" msgstr "" -#: gnu/packages/perl.scm:6144 +#: gnu/packages/perl.scm:6676 msgid "" "Manipulating stashes (Perl's symbol tables) is occasionally\n" "necessary, but incredibly messy, and easy to get wrong. This module hides all\n" "of that behind a simple API." msgstr "" -#: gnu/packages/perl.scm:6167 +#: gnu/packages/perl.scm:6699 msgid "Faster implementation of the Package::Stash API" msgstr "" -#: gnu/packages/perl.scm:6168 +#: gnu/packages/perl.scm:6700 msgid "" "This is a backend for Package::Stash, which provides the\n" "functionality in a way that's less buggy and much faster. It will be used by\n" @@ -13399,11 +14445,11 @@ msgid "" "compiler." msgstr "" -#: gnu/packages/perl.scm:6188 +#: gnu/packages/perl.scm:6720 msgid "Play with other peoples' lexical variables" msgstr "" -#: gnu/packages/perl.scm:6189 +#: gnu/packages/perl.scm:6721 msgid "" "PadWalker is a module which allows you to inspect (and even\n" "change) lexical variables in any subroutine which called you. It will only\n" @@ -13411,42 +14457,42 @@ msgid "" "is particularly useful for debugging." msgstr "" -#: gnu/packages/perl.scm:6213 +#: gnu/packages/perl.scm:6745 msgid "Simple parallel processing fork manager" msgstr "" -#: gnu/packages/perl.scm:6214 +#: gnu/packages/perl.scm:6746 msgid "" "@code{Parallel::ForkManager} is intended for use in\n" "operations that can be done in parallel where the number of\n" "processes to be forked off should be limited." msgstr "" -#: gnu/packages/perl.scm:6234 +#: gnu/packages/perl.scm:6766 msgid "Simple, compact and correct param-checking functions" msgstr "" -#: gnu/packages/perl.scm:6236 +#: gnu/packages/perl.scm:6768 msgid "" "Params::Util provides a basic set of importable functions that makes\n" "checking parameters easier." msgstr "" -#: gnu/packages/perl.scm:6260 +#: gnu/packages/perl.scm:6792 msgid "Validate method/function parameters" msgstr "" -#: gnu/packages/perl.scm:6261 +#: gnu/packages/perl.scm:6793 msgid "" "The Params::Validate module allows you to validate method or\n" "function call parameters to an arbitrary level of specificity." msgstr "" -#: gnu/packages/perl.scm:6287 +#: gnu/packages/perl.scm:6821 msgid "Build an optimized subroutine parameter validator" msgstr "" -#: gnu/packages/perl.scm:6288 +#: gnu/packages/perl.scm:6822 msgid "" "This module creates a customized, highly efficient\n" "parameter checking subroutine. It can handle named or positional\n" @@ -13455,79 +14501,105 @@ msgid "" "defaults, optional parameters, and extra \"slurpy\" parameters." msgstr "" -#: gnu/packages/perl.scm:6309 +#: gnu/packages/perl.scm:6843 msgid "Create and manipulate PAR distributions" msgstr "" -#: gnu/packages/perl.scm:6310 +#: gnu/packages/perl.scm:6844 msgid "" "PAR::Dist is a toolkit to create and manipulate PAR\n" "distributions." msgstr "" -#: gnu/packages/perl.scm:6329 +#: gnu/packages/perl.scm:6863 msgid "" "Allows you to both load one or more modules, while setting\n" "up inheritance from those modules at the same time." msgstr "" -#: gnu/packages/perl.scm:6348 +#: gnu/packages/perl.scm:6882 msgid "Path specification manipulation" msgstr "" -#: gnu/packages/perl.scm:6349 +#: gnu/packages/perl.scm:6883 msgid "" "Path::Class is a module for manipulation of file and\n" "directory specifications in a cross-platform manner." msgstr "" -#: gnu/packages/perl.scm:6373 +#: gnu/packages/perl.scm:6912 +msgid "Tools for working with directory and file names" +msgstr "Outils pour travailler avec des noms de répertoires et de fichiers" + +#: gnu/packages/perl.scm:6913 +msgid "" +"This package provides functions to work with directory and\n" +"file names." +msgstr "" +"Ce paquet fournit des fonctions pour travailler avec des noms\n" +"de répertoires et de fichiers." + +#: gnu/packages/perl.scm:6937 msgid "File path utility" msgstr "" -#: gnu/packages/perl.scm:6374 +#: gnu/packages/perl.scm:6938 msgid "" "This module provides a small, fast utility for working\n" "with file paths." msgstr "" -#: gnu/packages/perl.scm:6395 +#: gnu/packages/perl.scm:6959 msgid "Fast and correct UTF-8 IO" msgstr "" -#: gnu/packages/perl.scm:6396 +#: gnu/packages/perl.scm:6960 msgid "" "@code{PerlIO::utf8_strict} provides a fast and correct UTF-8\n" "PerlIO layer. Unlike Perl's default @code{:utf8} layer it checks the input\n" "for correctness." msgstr "" -#: gnu/packages/perl.scm:6417 +#: gnu/packages/perl.scm:6983 +msgid "Acmeist PEG Parser Framework" +msgstr "" + +#: gnu/packages/perl.scm:6984 +msgid "" +"Pegex is an Acmeist parser framework. It allows you to easily\n" +"create parsers that will work equivalently in lots of programming languages.\n" +"The inspiration for Pegex comes from the parsing engine upon which the\n" +"postmodern programming language Perl 6 is based on. Pegex brings this beauty\n" +"to the other justmodern languages that have a normal regular expression engine\n" +"available." +msgstr "" + +#: gnu/packages/perl.scm:7008 msgid "Check for comprehensive documentation of a module" msgstr "" -#: gnu/packages/perl.scm:6418 +#: gnu/packages/perl.scm:7009 msgid "" "This module provides a mechanism for determining if the pod\n" "for a given module is comprehensive." msgstr "" -#: gnu/packages/perl.scm:6435 +#: gnu/packages/perl.scm:7026 msgid "Parsing library for text in Pod format" msgstr "" -#: gnu/packages/perl.scm:6436 +#: gnu/packages/perl.scm:7027 msgid "" -"Pod::Simple is a Perl library for parsing text in\n" -"the Pod (plain old documentation) markup language that is typically\n" +"@code{Pod::Simple} is a Perl library for parsing text in\n" +"the @dfn{Pod} (plain old documentation) markup language that is typically\n" "used for writing documentation for Perl and for Perl modules." msgstr "" -#: gnu/packages/perl.scm:6457 +#: gnu/packages/perl.scm:7048 msgid "GNU C library compatible strftime for loggers and servers" msgstr "" -#: gnu/packages/perl.scm:6458 +#: gnu/packages/perl.scm:7049 msgid "" "POSIX::strftime::Compiler provides GNU C library compatible\n" "strftime(3). But this module is not affected by the system locale. This\n" @@ -13535,32 +14607,32 @@ msgid "" "applications." msgstr "" -#: gnu/packages/perl.scm:6476 +#: gnu/packages/perl.scm:7067 msgid "Information about the currently running perl" msgstr "" -#: gnu/packages/perl.scm:6478 +#: gnu/packages/perl.scm:7069 msgid "" "Probe::Perl provides methods for obtaining information about the\n" "currently running perl interpreter. It originally began life as code in the\n" "Module::Build project, but has been externalized here for general use." msgstr "" -#: gnu/packages/perl.scm:6506 +#: gnu/packages/perl.scm:7097 msgid "Interface to external editor from Perl" msgstr "" -#: gnu/packages/perl.scm:6507 +#: gnu/packages/perl.scm:7098 msgid "" "This module provides the ability to supply some text to an\n" "external text editor, have it edited by the user, and retrieve the results." msgstr "" -#: gnu/packages/perl.scm:6526 +#: gnu/packages/perl.scm:7117 msgid "Create read-only scalars, arrays, hashes" msgstr "" -#: gnu/packages/perl.scm:6527 +#: gnu/packages/perl.scm:7118 msgid "" "This module provides a facility for creating non-modifiable\n" "variables in Perl. This is useful for configuration files, headers, etc. It\n" @@ -13568,11 +14640,11 @@ msgid "" "variables that should not be changed." msgstr "" -#: gnu/packages/perl.scm:6547 +#: gnu/packages/perl.scm:7138 msgid "XS implementation for Ref::Util" msgstr "" -#: gnu/packages/perl.scm:6548 +#: gnu/packages/perl.scm:7139 msgid "" "@code{Ref::Util::XS} is the XS implementation of\n" "@code{Ref::Util}, which provides several functions to help identify references\n" @@ -13580,11 +14652,11 @@ msgid "" "of @code{ref}." msgstr "" -#: gnu/packages/perl.scm:6566 +#: gnu/packages/perl.scm:7157 msgid "Provide commonly requested regular expressions" msgstr "" -#: gnu/packages/perl.scm:6568 +#: gnu/packages/perl.scm:7159 msgid "" "This module exports a single hash (`%RE') that stores or generates\n" "commonly needed regular expressions. Patterns currently provided include:\n" @@ -13594,11 +14666,11 @@ msgid "" "codes." msgstr "" -#: gnu/packages/perl.scm:6593 +#: gnu/packages/perl.scm:7184 msgid "Selection of general-utility regexp subroutines" msgstr "" -#: gnu/packages/perl.scm:6594 +#: gnu/packages/perl.scm:7185 msgid "" "This package provides a selection of regular expression\n" "subroutines including @code{is_regexp}, @code{regexp_seen_evals},\n" @@ -13606,29 +14678,29 @@ msgid "" "and @code{deserialize_regexp}." msgstr "" -#: gnu/packages/perl.scm:6619 +#: gnu/packages/perl.scm:7210 msgid "Roles, as a slice of Moose" msgstr "" -#: gnu/packages/perl.scm:6620 +#: gnu/packages/perl.scm:7211 msgid "Role::Tiny is a minimalist role composition tool." msgstr "" -#: gnu/packages/perl.scm:6637 +#: gnu/packages/perl.scm:7242 msgid "Call isa, can, does, and DOES safely" msgstr "" -#: gnu/packages/perl.scm:6638 +#: gnu/packages/perl.scm:7243 msgid "" "This module allows you to call isa, can, does, and DOES\n" "safely on things that may not be objects." msgstr "" -#: gnu/packages/perl.scm:6656 +#: gnu/packages/perl.scm:7261 msgid "Lexically-scoped resource management" msgstr "Gestion de ressources à portée lexicale" -#: gnu/packages/perl.scm:6657 +#: gnu/packages/perl.scm:7262 msgid "" "This module provides a convenient way to perform cleanup or\n" "other forms of resource management at the end of a scope. It is particularly\n" @@ -13639,29 +14711,39 @@ msgid "" "collector." msgstr "" -#: gnu/packages/perl.scm:6680 +#: gnu/packages/perl.scm:7285 msgid "Infinite sets" msgstr "" -#: gnu/packages/perl.scm:6681 +#: gnu/packages/perl.scm:7286 msgid "Set::Infinite is a set theory module for infinite sets." msgstr "" -#: gnu/packages/perl.scm:6701 +#: gnu/packages/perl.scm:7303 +msgid "Manage sets of integers" +msgstr "" + +#: gnu/packages/perl.scm:7304 +msgid "" +"@code{Set::IntSpan} manages sets of integers. It is\n" +"optimized for sets that have long runs of consecutive integers." +msgstr "" + +#: gnu/packages/perl.scm:7325 msgid "Unordered collections of Perl Objects" msgstr "" -#: gnu/packages/perl.scm:6702 +#: gnu/packages/perl.scm:7326 msgid "" "Set::Object provides efficient sets, unordered collections\n" "of Perl objects without duplicates for scalars and references." msgstr "" -#: gnu/packages/perl.scm:6720 +#: gnu/packages/perl.scm:7344 msgid "Set operations for Perl" msgstr "Opération ensemblistes pour Perl" -#: gnu/packages/perl.scm:6721 +#: gnu/packages/perl.scm:7345 msgid "" "The first priority of Set::Scalar is to be a convenient\n" "interface to sets (as in: unordered collections of Perl scalars). While not\n" @@ -13669,21 +14751,21 @@ msgid "" "compact." msgstr "" -#: gnu/packages/perl.scm:6741 +#: gnu/packages/perl.scm:7365 msgid "Sort arrays by one or multiple calculated keys" msgstr "" -#: gnu/packages/perl.scm:6742 +#: gnu/packages/perl.scm:7366 msgid "" "This Perl module provides various functions to quickly sort\n" "arrays by one or multiple calculated keys." msgstr "" -#: gnu/packages/perl.scm:6760 +#: gnu/packages/perl.scm:7384 msgid "Sort lexically, but sort numeral parts numerically" msgstr "" -#: gnu/packages/perl.scm:6761 +#: gnu/packages/perl.scm:7385 msgid "" "This module exports two functions, @code{nsort} and\n" "@code{ncmp}; they are used in implementing a \"natural sorting\" algorithm.\n" @@ -13691,11 +14773,11 @@ msgid "" "word-characters are compared lexically." msgstr "" -#: gnu/packages/perl.scm:6789 +#: gnu/packages/perl.scm:7413 msgid "Classes for representing type constraints and coercion" msgstr "" -#: gnu/packages/perl.scm:6790 +#: gnu/packages/perl.scm:7414 msgid "" "The Specio distribution provides classes for representing type\n" "constraints and coercion, along with syntax sugar for declaring them. Note that\n" @@ -13706,11 +14788,11 @@ msgid "" "coerce values to that type." msgstr "" -#: gnu/packages/perl.scm:6813 +#: gnu/packages/perl.scm:7437 msgid "Spiffy Perl Interface Framework For You" msgstr "" -#: gnu/packages/perl.scm:6814 +#: gnu/packages/perl.scm:7438 msgid "" "Spiffy is a framework and methodology for doing object\n" "oriented (OO) programming in Perl. Spiffy combines the best parts of\n" @@ -13720,11 +14802,21 @@ msgid "" "other OO languages like Python, Ruby, Java and Perl 6." msgstr "" -#: gnu/packages/perl.scm:6836 +#: gnu/packages/perl.scm:7462 +msgid "Collection of very basic statistics modules" +msgstr "Collection de modules de statistiques très basiques" + +#: gnu/packages/perl.scm:7463 +msgid "" +"This package provides basic statistics functions like\n" +"@code{median()}, @code{mean()}, @code{variance()} and @code{stddev()}." +msgstr "" + +#: gnu/packages/perl.scm:7481 msgid "Temporary buffer to save bytes" msgstr "" -#: gnu/packages/perl.scm:6837 +#: gnu/packages/perl.scm:7482 msgid "" "Stream::Buffered is a buffer class to store arbitrary length\n" "of byte strings and then get a seekable filehandle once everything is\n" @@ -13732,62 +14824,75 @@ msgid "" "on the length of the size." msgstr "" -#: gnu/packages/perl.scm:6857 +#: gnu/packages/perl.scm:7502 msgid "Turn on strict and make all warnings fatal" msgstr "" -#: gnu/packages/perl.scm:6858 +#: gnu/packages/perl.scm:7503 msgid "" "Strictures turns on strict and make all warnings fatal when\n" "run from within a source-controlled directory." msgstr "" -#: gnu/packages/perl.scm:6886 +#: gnu/packages/perl.scm:7545 msgid "Camelcase and de-camelcase" msgstr "" -#: gnu/packages/perl.scm:6887 +#: gnu/packages/perl.scm:7546 msgid "" "This module may be used to convert from under_score text to\n" "CamelCase and back again." msgstr "" -#: gnu/packages/perl.scm:6907 +#: gnu/packages/perl.scm:7565 +msgid "Backslash escapes, quoted phrase, word elision, etc." +msgstr "" + +#: gnu/packages/perl.scm:7566 +msgid "" +"This module provides a flexible calling interface to some\n" +"frequently-performed string conversion functions, including applying and\n" +"expanding standard C/Unix-style backslash escapes like \n" +" and \t, wrapping and\n" +"removing double-quotes, and truncating to fit within a desired length." +msgstr "" + +#: gnu/packages/perl.scm:7588 msgid "Rewrite strings based on a set of known prefixes" msgstr "" -#: gnu/packages/perl.scm:6908 +#: gnu/packages/perl.scm:7589 msgid "" "This module allows you to rewrite strings based on a set of\n" "known prefixes." msgstr "" -#: gnu/packages/perl.scm:6927 +#: gnu/packages/perl.scm:7608 msgid "String printing alternatives to printf" msgstr "" -#: gnu/packages/perl.scm:6929 +#: gnu/packages/perl.scm:7610 msgid "" "This module inserts values into (translated) strings. It provides\n" "@code{printf} and @code{sprintf} alternatives via both an object-oriented and\n" "a functional interface." msgstr "" -#: gnu/packages/perl.scm:6952 +#: gnu/packages/perl.scm:7633 msgid "Sophisticated exporter for custom-built routines" msgstr "" -#: gnu/packages/perl.scm:6954 +#: gnu/packages/perl.scm:7635 msgid "" "Sub::Exporter provides a sophisticated alternative to Exporter.pm for\n" "custom-built routines." msgstr "" -#: gnu/packages/perl.scm:6973 +#: gnu/packages/perl.scm:7654 msgid "Only use Sub::Exporter if you need it" msgstr "" -#: gnu/packages/perl.scm:6974 +#: gnu/packages/perl.scm:7655 msgid "" "Sub::Exporter is an incredibly powerful module, but with\n" "that power comes great responsibility, as well as some runtime penalties.\n" @@ -13797,21 +14902,21 @@ msgid "" "renaming exports, if they try to use them." msgstr "" -#: gnu/packages/perl.scm:6996 +#: gnu/packages/perl.scm:7677 msgid "Retrieve names of code references" msgstr "" -#: gnu/packages/perl.scm:6997 +#: gnu/packages/perl.scm:7678 msgid "" "Sub::Identify allows you to retrieve the real name of code\n" "references." msgstr "" -#: gnu/packages/perl.scm:7017 +#: gnu/packages/perl.scm:7698 msgid "Tool to inspect subroutines" msgstr "" -#: gnu/packages/perl.scm:7018 +#: gnu/packages/perl.scm:7699 msgid "" "This package provides tools for inspecting subroutines\n" "in Perl." @@ -13819,44 +14924,67 @@ msgstr "" "Ce paquet fournit des outils pour inspecter les sous-routines\n" "en Perl." -#: gnu/packages/perl.scm:7037 +#: gnu/packages/perl.scm:7718 msgid "Install subroutines into packages easily" msgstr "" -#: gnu/packages/perl.scm:7039 +#: gnu/packages/perl.scm:7720 msgid "" "Sub::Install makes it easy to install subroutines into packages without\n" "the unsightly mess of C or typeglobs lying about where just anyone\n" "can see them." msgstr "" -#: gnu/packages/perl.scm:7060 +#: gnu/packages/perl.scm:7741 msgid "(Re)name a sub" msgstr "" -#: gnu/packages/perl.scm:7061 +#: gnu/packages/perl.scm:7742 msgid "" "Assigns a new name to referenced sub. If package\n" "specification is omitted in the name, then the current package is used. The\n" "return value is the sub." msgstr "" -#: gnu/packages/perl.scm:7080 +#: gnu/packages/perl.scm:7766 +msgid "Efficient generation of subroutines via string eval" +msgstr "" + +#: gnu/packages/perl.scm:7767 +msgid "" +"Sub::Quote provides an efficient generation of subroutines\n" +"via string eval." +msgstr "" + +#: gnu/packages/perl.scm:7785 msgid "Apparently run a function in a higher stack frame" msgstr "" -#: gnu/packages/perl.scm:7081 +#: gnu/packages/perl.scm:7786 msgid "" "Like Tcl's uplevel() function, but not quite so dangerous.\n" "The idea is just to fool caller(). All the really naughty bits of Tcl's\n" "uplevel() are avoided." msgstr "" -#: gnu/packages/perl.scm:7100 +#: gnu/packages/perl.scm:7808 +msgid "Control superclass method dispatching" +msgstr "" + +#: gnu/packages/perl.scm:7810 +msgid "" +"When subclassing a class, you may occasionally want to dispatch control to\n" +"the superclass---at least conditionally and temporarily. This module provides\n" +"nicer equivalents to the native Perl syntax for calling superclasses, along with\n" +"a universal @code{super} method to determine a class' own superclass, and better\n" +"support for run-time mix-ins and roles." +msgstr "" + +#: gnu/packages/perl.scm:7831 msgid "Perl extension for generating SVG documents" msgstr "" -#: gnu/packages/perl.scm:7101 +#: gnu/packages/perl.scm:7832 msgid "" "SVG is a Perl module which generates a nested data structure\n" "containing the DOM representation of an SVG (Scalable Vector Graphics) image.\n" @@ -13865,42 +14993,42 @@ msgid "" "animation content." msgstr "" -#: gnu/packages/perl.scm:7122 +#: gnu/packages/perl.scm:7853 msgid "Switch statement for Perl" msgstr "Commande switch pour Perl" -#: gnu/packages/perl.scm:7123 +#: gnu/packages/perl.scm:7854 msgid "" "Switch is a Perl module which implements a generalized case\n" "mechanism. The module augments the standard Perl syntax with two new\n" "statements: @code{switch} and @code{case}." msgstr "" -#: gnu/packages/perl.scm:7169 +#: gnu/packages/perl.scm:7901 msgid "Perl extension for getting CPU information" msgstr "" -#: gnu/packages/perl.scm:7171 +#: gnu/packages/perl.scm:7903 msgid "" "Sys::CPU is a module for counting the number of CPUs on a system, and\n" "determining their type and clock speed." msgstr "" -#: gnu/packages/perl.scm:7192 +#: gnu/packages/perl.scm:7924 msgid "Get full hostname in Perl" msgstr "" -#: gnu/packages/perl.scm:7193 +#: gnu/packages/perl.scm:7925 msgid "" "Sys::Hostname::Long tries very hard to get the full hostname\n" "of a system." msgstr "" -#: gnu/packages/perl.scm:7220 +#: gnu/packages/perl.scm:7952 msgid "Ensure that a platform has weaken support" msgstr "" -#: gnu/packages/perl.scm:7221 +#: gnu/packages/perl.scm:7953 msgid "" "One recurring problem in modules that use Scalar::Util's\n" "weaken function is that it is not present in the pure-perl variant. If\n" @@ -13910,11 +15038,11 @@ msgid "" "error encouraging the user to seek support." msgstr "" -#: gnu/packages/perl.scm:7246 +#: gnu/packages/perl.scm:7978 msgid "Template processing system for Perl" msgstr "" -#: gnu/packages/perl.scm:7247 +#: gnu/packages/perl.scm:7979 msgid "" "The Template Toolkit is a collection of modules which\n" "implement an extensible template processing system. It was originally\n" @@ -13923,42 +15051,42 @@ msgid "" "documents: HTML, XML, POD, PostScript, LaTeX, and so on." msgstr "" -#: gnu/packages/perl.scm:7270 +#: gnu/packages/perl.scm:8002 msgid "Profiling for Template Toolkit" msgstr "" -#: gnu/packages/perl.scm:7271 +#: gnu/packages/perl.scm:8003 msgid "" "Template::Timer provides inline profiling of the template\n" "processing in Perl code." msgstr "" -#: gnu/packages/perl.scm:7291 +#: gnu/packages/perl.scm:8023 msgid "Detect encoding of the current terminal" msgstr "" -#: gnu/packages/perl.scm:7292 +#: gnu/packages/perl.scm:8024 msgid "" "Term::Encoding is a simple module to detect the encoding of\n" "the current terminal expects in various ways." msgstr "" -#: gnu/packages/perl.scm:7316 +#: gnu/packages/perl.scm:8048 msgid "Progress meter on a standard terminal" msgstr "" -#: gnu/packages/perl.scm:7317 +#: gnu/packages/perl.scm:8049 msgid "" "Term::ProgressBar provides a simple progress bar on the\n" "terminal, to let the user know that something is happening, roughly how much\n" "stuff has been done, and maybe an estimate at how long remains." msgstr "" -#: gnu/packages/perl.scm:7340 +#: gnu/packages/perl.scm:8072 msgid "Progress meter if run interactively" msgstr "" -#: gnu/packages/perl.scm:7341 +#: gnu/packages/perl.scm:8073 msgid "" "Term::ProgressBar is a wonderful module for showing progress\n" "bars on the terminal. This module acts very much like that module when it is\n" @@ -13966,21 +15094,21 @@ msgid "" "a cron job) then it does not show the progress bar." msgstr "" -#: gnu/packages/perl.scm:7363 +#: gnu/packages/perl.scm:8095 msgid "Simple progress bars" msgstr "" -#: gnu/packages/perl.scm:7364 +#: gnu/packages/perl.scm:8096 msgid "" "Term::ProgressBar::Simple tells you how much work has been\n" "done, how much is left to do, and estimate how long it will take." msgstr "" -#: gnu/packages/perl.scm:7382 +#: gnu/packages/perl.scm:8114 msgid "Simple terminal control" msgstr "Contrôle de terminal simple" -#: gnu/packages/perl.scm:7383 +#: gnu/packages/perl.scm:8115 msgid "" "This module, ReadKey, provides ioctl control for terminals\n" "so the input modes can be changed (thus allowing reads of a single character\n" @@ -13989,11 +15117,11 @@ msgid "" "screen size, and retrieval/modification of the control characters." msgstr "" -#: gnu/packages/perl.scm:7408 +#: gnu/packages/perl.scm:8140 msgid "Retrieve terminal size" msgstr "" -#: gnu/packages/perl.scm:7409 +#: gnu/packages/perl.scm:8141 msgid "" "This is a unified interface to retrieve terminal size. It\n" "loads one module of a list of known alternatives, each implementing some way\n" @@ -14001,62 +15129,62 @@ msgid "" "the job on behalf of @code{Term::Size::Any}." msgstr "" -#: gnu/packages/perl.scm:7429 +#: gnu/packages/perl.scm:8161 msgid "Perl extension for retrieving terminal size (Perl version)" msgstr "" -#: gnu/packages/perl.scm:7430 +#: gnu/packages/perl.scm:8162 msgid "" "This is yet another implementation of @code{Term::Size}.\n" "Now in pure Perl, with the exception of a C probe run at build time." msgstr "" -#: gnu/packages/perl.scm:7450 +#: gnu/packages/perl.scm:8182 msgid "Format a header and rows into a table" msgstr "" -#: gnu/packages/perl.scm:7451 +#: gnu/packages/perl.scm:8183 msgid "" "This module is able to generically format rows of data\n" "into tables." msgstr "" -#: gnu/packages/perl.scm:7470 +#: gnu/packages/perl.scm:8202 msgid "Align text" msgstr "" -#: gnu/packages/perl.scm:7471 +#: gnu/packages/perl.scm:8203 msgid "" "Text::Aligner exports a single function, align(), which is\n" "used to justify strings to various alignment styles." msgstr "" -#: gnu/packages/perl.scm:7489 +#: gnu/packages/perl.scm:8221 msgid "Extract delimited text sequences from strings" msgstr "" -#: gnu/packages/perl.scm:7490 +#: gnu/packages/perl.scm:8222 msgid "" "The Text::Balanced module can be used to extract delimited\n" "text sequences from strings." msgstr "" -#: gnu/packages/perl.scm:7508 +#: gnu/packages/perl.scm:8240 msgid "Manipulate comma-separated values" msgstr "" -#: gnu/packages/perl.scm:7509 +#: gnu/packages/perl.scm:8241 msgid "" "Text::CSV provides facilities for the composition and\n" "decomposition of comma-separated values. An instance of the Text::CSV class\n" "can combine fields into a CSV string and parse a CSV string into fields." msgstr "" -#: gnu/packages/perl.scm:7528 +#: gnu/packages/perl.scm:8260 msgid "Rountines for manipulating CSV files" msgstr "" -#: gnu/packages/perl.scm:7529 +#: gnu/packages/perl.scm:8261 msgid "" "@code{Text::CSV_XS} provides facilities for the composition\n" "and decomposition of comma-separated values. An instance of the\n" @@ -14066,11 +15194,11 @@ msgid "" "and escapes." msgstr "" -#: gnu/packages/perl.scm:7553 +#: gnu/packages/perl.scm:8285 msgid "Perform diffs on files and record sets" msgstr "" -#: gnu/packages/perl.scm:7554 +#: gnu/packages/perl.scm:8286 msgid "" "Text::Diff provides a basic set of services akin to the GNU\n" "diff utility. It is not anywhere near as feature complete as GNU diff, but it\n" @@ -14079,33 +15207,44 @@ msgid "" "generally slower on larger files." msgstr "" -#: gnu/packages/perl.scm:7576 +#: gnu/packages/perl.scm:8311 +msgid "Various subroutines to format text" +msgstr "" + +#: gnu/packages/perl.scm:8312 +msgid "" +"This package provides functions to format text in various\n" +"ways like centering, paragraphing, and converting tabs to spaces and spaces\n" +"to tabs." +msgstr "" + +#: gnu/packages/perl.scm:8332 msgid "Match globbing patterns against text" msgstr "" -#: gnu/packages/perl.scm:7577 +#: gnu/packages/perl.scm:8333 msgid "" "Text::Glob implements glob(3) style matching that can be\n" "used to match against text, rather than fetching names from a file system. If\n" "you want to do full file globbing use the File::Glob module instead." msgstr "" -#: gnu/packages/perl.scm:7600 +#: gnu/packages/perl.scm:8356 msgid "Fast, middleweight template engine" msgstr "" -#: gnu/packages/perl.scm:7602 +#: gnu/packages/perl.scm:8358 msgid "" "Text::NeatTemplate provides a simple, middleweight but fast\n" "template engine, for when you need speed rather than complex features,\n" "yet need more features than simple variable substitution." msgstr "" -#: gnu/packages/perl.scm:7621 +#: gnu/packages/perl.scm:8377 msgid "Convert between Roman and Arabic algorisms" msgstr "" -#: gnu/packages/perl.scm:7622 +#: gnu/packages/perl.scm:8378 msgid "" "This package provides functions to convert between Roman and\n" "Arabic algorisms. It supports both conventional Roman algorisms (which range\n" @@ -14113,27 +15252,27 @@ msgid "" "algorism to indicate multiplication by 1000." msgstr "" -#: gnu/packages/perl.scm:7642 +#: gnu/packages/perl.scm:8398 msgid "Simple ASCII tables" msgstr "" -#: gnu/packages/perl.scm:7643 +#: gnu/packages/perl.scm:8399 msgid "Text::SimpleTable draws simple ASCII tables." msgstr "" -#: gnu/packages/perl.scm:7664 +#: gnu/packages/perl.scm:8420 msgid "Organize Data in Tables" msgstr "" -#: gnu/packages/perl.scm:7665 +#: gnu/packages/perl.scm:8421 msgid "Text::Table renders plaintext tables." msgstr "" -#: gnu/packages/perl.scm:7686 +#: gnu/packages/perl.scm:8442 msgid "Expand template text with embedded Perl" msgstr "" -#: gnu/packages/perl.scm:7688 +#: gnu/packages/perl.scm:8444 msgid "" "This is a library for generating letters, building HTML pages, or\n" "filling in templates generally. A template is a piece of text that has little\n" @@ -14141,11 +15280,11 @@ msgid "" "evaluate the little programs and replace them with their values." msgstr "" -#: gnu/packages/perl.scm:7708 +#: gnu/packages/perl.scm:8464 msgid "Provide plain ASCII transliterations of Unicode text" msgstr "" -#: gnu/packages/perl.scm:7709 +#: gnu/packages/perl.scm:8465 msgid "" "Text::Unidecode provides a function, unidecode(...) that\n" "takes Unicode data and tries to represent it in US-ASCII characters (i.e., the\n" @@ -14155,21 +15294,29 @@ msgid "" "system." msgstr "" -#: gnu/packages/perl.scm:7737 +#: gnu/packages/perl.scm:8486 +msgid "Perl interpreter-based threads" +msgstr "" + +#: gnu/packages/perl.scm:8487 +msgid "This module exposes interpreter threads to the Perl level." +msgstr "" + +#: gnu/packages/perl.scm:8510 msgid "Role for classes that can be thrown" msgstr "" -#: gnu/packages/perl.scm:7738 +#: gnu/packages/perl.scm:8511 msgid "" "Throwable is a role for classes that are meant to be thrown\n" "as exceptions to standard program flow." msgstr "" -#: gnu/packages/perl.scm:7755 +#: gnu/packages/perl.scm:8528 msgid "Perl script tidier" msgstr "" -#: gnu/packages/perl.scm:7756 +#: gnu/packages/perl.scm:8529 msgid "" "This package contains a Perl script which indents and\n" "reformats Perl scripts to make them easier to read. The formatting can be\n" @@ -14177,21 +15324,21 @@ msgid "" "approximately follow the suggestions in the Perl Style Guide." msgstr "" -#: gnu/packages/perl.scm:7776 +#: gnu/packages/perl.scm:8549 msgid "Cycle through a list of values" msgstr "" -#: gnu/packages/perl.scm:7777 +#: gnu/packages/perl.scm:8550 msgid "" "You use @code{Tie::Cycle} to go through a list over and over\n" "again. Once you get to the end of the list, you go back to the beginning." msgstr "" -#: gnu/packages/perl.scm:7796 +#: gnu/packages/perl.scm:8569 msgid "Ordered associative arrays for Perl" msgstr "" -#: gnu/packages/perl.scm:7797 +#: gnu/packages/perl.scm:8570 msgid "" "This Perl module implements Perl hashes that preserve the\n" "order in which the hash elements were added. The order is not affected when\n" @@ -14200,42 +15347,53 @@ msgid "" "operations can also be performed on the IxHash." msgstr "" -#: gnu/packages/perl.scm:7820 +#: gnu/packages/perl.scm:8593 msgid "Tie to an existing Perl object" msgstr "" -#: gnu/packages/perl.scm:7821 +#: gnu/packages/perl.scm:8594 msgid "" "This class provides a tie constructor that returns the\n" "object it was given as it's first argument. This way side effects of calling\n" "$object->TIEHASH are avoided." msgstr "" -#: gnu/packages/perl.scm:7844 +#: gnu/packages/perl.scm:8617 msgid "English expression of durations" msgstr "" -#: gnu/packages/perl.scm:7845 +#: gnu/packages/perl.scm:8618 msgid "" "This module provides functions for expressing durations in\n" "rounded or exact terms." msgstr "" -#: gnu/packages/perl.scm:7867 +#: gnu/packages/perl.scm:8640 msgid "Parse time duration strings" msgstr "" -#: gnu/packages/perl.scm:7868 +#: gnu/packages/perl.scm:8641 msgid "" "Time::Duration::Parse is a module to parse human readable\n" "duration strings like \"2 minutes\" and \"3 seconds\" to seconds." msgstr "" -#: gnu/packages/perl.scm:7886 +#: gnu/packages/perl.scm:8659 +msgid "High resolution alarm, sleep, gettimeofday, interval timers" +msgstr "" + +#: gnu/packages/perl.scm:8660 +msgid "" +"This package implements @code{usleep}, @code{ualarm}, and\n" +"@code{gettimeofday} for Perl, as well as wrappers to implement @code{time},\n" +"@code{sleep}, and @code{alarm} that know about non-integral seconds." +msgstr "" + +#: gnu/packages/perl.scm:8679 msgid "Efficiently compute time from local and GMT time" msgstr "" -#: gnu/packages/perl.scm:7887 +#: gnu/packages/perl.scm:8680 msgid "" "This module provides functions that are the inverse of\n" "built-in perl functions localtime() and gmtime(). They accept a date as a\n" @@ -14243,62 +15401,74 @@ msgid "" "the system epoch." msgstr "" -#: gnu/packages/perl.scm:7907 +#: gnu/packages/perl.scm:8700 +msgid "Object-Oriented time objects" +msgstr "" + +#: gnu/packages/perl.scm:8702 +msgid "" +"This module replaces the standard @code{localtime} and @code{gmtime}\n" +"functions with implementations that return objects. It does so in a\n" +"backwards-compatible manner, so that using these functions as documented will\n" +"still work as expected." +msgstr "" + +#: gnu/packages/perl.scm:8722 msgid "Date parsing/formatting subroutines" msgstr "" -#: gnu/packages/perl.scm:7908 +#: gnu/packages/perl.scm:8723 msgid "" "This module provides routines for parsing date string into\n" "time values and formatting dates into ASCII strings." msgstr "" -#: gnu/packages/perl.scm:7930 +#: gnu/packages/perl.scm:8745 msgid "Shift and scale time" msgstr "" -#: gnu/packages/perl.scm:7931 +#: gnu/packages/perl.scm:8746 msgid "" "This module allows you to speed up your sleep(), alarm(),\n" "and time() calls." msgstr "" -#: gnu/packages/perl.scm:7954 +#: gnu/packages/perl.scm:8769 msgid "Simple tree object" msgstr "" -#: gnu/packages/perl.scm:7955 +#: gnu/packages/perl.scm:8770 msgid "" "This module in a fully object-oriented implementation of a\n" "simple n-ary tree." msgstr "" -#: gnu/packages/perl.scm:7979 +#: gnu/packages/perl.scm:8794 msgid "Factory object for dispensing Visitor objects" msgstr "" -#: gnu/packages/perl.scm:7980 +#: gnu/packages/perl.scm:8795 msgid "" "This module is a factory for dispensing\n" "Tree::Simple::Visitor::* objects." msgstr "" -#: gnu/packages/perl.scm:7998 +#: gnu/packages/perl.scm:8813 msgid "Minimal try/catch with proper preservation of $@@" msgstr "" -#: gnu/packages/perl.scm:7999 +#: gnu/packages/perl.scm:8814 msgid "" "This module provides bare bones try/catch/finally statements\n" "that are designed to minimize common mistakes with eval blocks, and nothing\n" "else." msgstr "" -#: gnu/packages/perl.scm:8024 +#: gnu/packages/perl.scm:8839 msgid "Tie a variable to a type constraint" msgstr "" -#: gnu/packages/perl.scm:8025 +#: gnu/packages/perl.scm:8840 msgid "" "This module exports a single function: @code{ttie}. It ties\n" "a variable to a type constraint, ensuring that whatever values stored in the\n" @@ -14307,11 +15477,11 @@ msgid "" "variable conform." msgstr "" -#: gnu/packages/perl.scm:8058 +#: gnu/packages/perl.scm:8873 msgid "Tiny, yet Moo(se)-compatible type constraint" msgstr "" -#: gnu/packages/perl.scm:8059 +#: gnu/packages/perl.scm:8874 msgid "" "@code{Type::Tiny} is a small class for writing type\n" "constraints, inspired by Moose's type constraint API. It has only one\n" @@ -14320,11 +15490,11 @@ msgid "" "be used with Moose, Mouse and Moo (or none of the above)." msgstr "" -#: gnu/packages/perl.scm:8080 +#: gnu/packages/perl.scm:8895 msgid "Provides an XS boost for some of Type::Tiny's built-in type constraints" msgstr "" -#: gnu/packages/perl.scm:8081 +#: gnu/packages/perl.scm:8896 msgid "" "This module is optionally used by @code{Type::Tiny} to\n" "provide faster, C-based implementations of some type constraints. This\n" @@ -14332,11 +15502,11 @@ msgid "" "so other data validation frameworks might also consider using it." msgstr "" -#: gnu/packages/perl.scm:8106 +#: gnu/packages/perl.scm:8921 msgid "Types and coercions for Moose and Moo" msgstr "" -#: gnu/packages/perl.scm:8107 +#: gnu/packages/perl.scm:8922 msgid "" "This module provides @code{Path::Tiny} types for Moose, Moo,\n" "etc. It handles two important types of coercion: coercing objects with\n" @@ -14344,29 +15514,29 @@ msgid "" "to ensure that files or directories exist." msgstr "" -#: gnu/packages/perl.scm:8129 +#: gnu/packages/perl.scm:8944 msgid "Data types for common serialisation formats" msgstr "" -#: gnu/packages/perl.scm:8130 +#: gnu/packages/perl.scm:8945 msgid "" "This module provides some extra datatypes that are used by\n" "common serialisation formats such as JSON or CBOR." msgstr "" -#: gnu/packages/perl.scm:8157 +#: gnu/packages/perl.scm:8972 msgid "Unicode normalization forms" msgstr "" -#: gnu/packages/perl.scm:8158 +#: gnu/packages/perl.scm:8973 msgid "This Perl module provides Unicode normalization forms." msgstr "" -#: gnu/packages/perl.scm:8187 +#: gnu/packages/perl.scm:9002 msgid "Unicode collation algorithm" msgstr "" -#: gnu/packages/perl.scm:8188 +#: gnu/packages/perl.scm:9003 msgid "" "This package provides tools for sorting and comparing\n" "Unicode data." @@ -14374,52 +15544,63 @@ msgstr "" "Ce paquet fournit des outils pour trier et comparer des\n" "données Unicode." -#: gnu/packages/perl.scm:8209 +#: gnu/packages/perl.scm:9024 msgid "Unicode line breaking algorithm" msgstr "" -#: gnu/packages/perl.scm:8211 +#: gnu/packages/perl.scm:9026 msgid "" "@code{Unicode::LineBreak} implements the line breaking algorithm\n" "described in Unicode Standard Annex #14. The @code{East_Asian_Width} property\n" "defined by Annex #11 is used to determine breaking positions." msgstr "" -#: gnu/packages/perl.scm:8234 +#: gnu/packages/perl.scm:9049 msgid "Encoding and decoding of UTF-8 encoding form" msgstr "" -#: gnu/packages/perl.scm:8236 +#: gnu/packages/perl.scm:9051 msgid "" "This module provides functions to encode and decode UTF-8 encoding form\n" "as specified by Unicode and ISO/IEC 10646:2011." msgstr "" -#: gnu/packages/perl.scm:8254 +#: gnu/packages/perl.scm:9069 msgid "UNIVERSAL::can() reimplementation" msgstr "" -#: gnu/packages/perl.scm:8255 +#: gnu/packages/perl.scm:9070 msgid "" "This module attempts to work around people calling\n" "UNIVERSAL::can() as a function, which it is not." msgstr "" -#: gnu/packages/perl.scm:8275 +#: gnu/packages/perl.scm:9090 msgid "UNIVERSAL::isa() reimplementation" msgstr "" -#: gnu/packages/perl.scm:8276 +#: gnu/packages/perl.scm:9091 msgid "" "This module attempts to recover from people calling\n" "UNIVERSAL::isa as a function." msgstr "" -#: gnu/packages/perl.scm:8294 +#: gnu/packages/perl.scm:9110 +msgid "Require modules from a variable" +msgstr "" + +#: gnu/packages/perl.scm:9111 +msgid "" +"This module lets you require other modules where the module\n" +"name is in a variable, something you can't do with the @code{require}\n" +"built-in." +msgstr "" + +#: gnu/packages/perl.scm:9130 msgid "Associate user-defined magic to variables from Perl" msgstr "" -#: gnu/packages/perl.scm:8295 +#: gnu/packages/perl.scm:9131 msgid "" "Magic is Perl's way of enhancing variables. This mechanism\n" "lets the user add extra data to any variable and hook syntactical\n" @@ -14428,11 +15609,11 @@ msgid "" "having to write a single line of XS." msgstr "" -#: gnu/packages/perl.scm:8318 +#: gnu/packages/perl.scm:9154 msgid "Easily generate well-formed, namespace-aware XML" msgstr "" -#: gnu/packages/perl.scm:8319 +#: gnu/packages/perl.scm:9155 msgid "" "@code{XML::Writer} is a simple Perl module for writing XML\n" "documents: it takes care of constructing markup and escaping data correctly.\n" @@ -14442,11 +15623,11 @@ msgid "" "attribute names." msgstr "" -#: gnu/packages/perl.scm:8346 +#: gnu/packages/perl.scm:9182 msgid "Opaque, extensible XS pointer backed objects using sv_magic" msgstr "" -#: gnu/packages/perl.scm:8348 +#: gnu/packages/perl.scm:9184 msgid "" "This way of associating structs with Perl space objects is designed to\n" "supersede Perl's builtin @code{T_PTROBJ} with something that is extensible\n" @@ -14454,62 +15635,62 @@ msgid "" "neither visible nor modifiable from Perl space)." msgstr "" -#: gnu/packages/perl.scm:8370 +#: gnu/packages/perl.scm:9206 msgid "YAML for Perl" msgstr "" -#: gnu/packages/perl.scm:8371 +#: gnu/packages/perl.scm:9207 msgid "" "The YAML.pm module implements a YAML Loader and Dumper based\n" "on the YAML 1.0 specification." msgstr "" -#: gnu/packages/perl.scm:8393 +#: gnu/packages/perl.scm:9229 msgid "Perl YAML Serialization using XS and libyaml" msgstr "" -#: gnu/packages/perl.scm:8395 +#: gnu/packages/perl.scm:9231 msgid "" "@code{YAML::XS} is a Perl XS binding to libyaml which offers Perl the\n" "best YAML support to date." msgstr "" -#: gnu/packages/perl.scm:8418 +#: gnu/packages/perl.scm:9254 msgid "Read/Write YAML files" msgstr "" -#: gnu/packages/perl.scm:8419 +#: gnu/packages/perl.scm:9255 msgid "" "YAML::Tiny is a perl class for reading and writing\n" "YAML-style files, written with as little code as possible, reducing load time\n" "and memory overhead." msgstr "" -#: gnu/packages/perl.scm:8443 +#: gnu/packages/perl.scm:9279 msgid "Generate recursive-descent parsers" msgstr "" -#: gnu/packages/perl.scm:8445 +#: gnu/packages/perl.scm:9281 msgid "" "@code{Parse::RecDescent} can incrementally generate top-down\n" "recursive-descent text parsers from simple yacc-like grammar specifications." msgstr "" -#: gnu/packages/perl.scm:8465 +#: gnu/packages/perl.scm:9301 msgid "Generate and use LALR parsers" msgstr "" -#: gnu/packages/perl.scm:8466 +#: gnu/packages/perl.scm:9302 msgid "" "This package compiles yacc-like @dfn{Look Ahead LR} (LALR)\n" "grammars to generate Perl object oriented parser modules." msgstr "" -#: gnu/packages/perl.scm:8492 +#: gnu/packages/perl.scm:9328 msgid "Distribution metadata for a CPAN dist" msgstr "" -#: gnu/packages/perl.scm:8493 +#: gnu/packages/perl.scm:9329 msgid "" "Software distributions released to the CPAN include a\n" "META.json or, for older distributions, META.yml, which describes the\n" @@ -14520,11 +15701,11 @@ msgid "" "methods for interrogating that data." msgstr "" -#: gnu/packages/perl.scm:8516 +#: gnu/packages/perl.scm:9352 msgid "Set of version requirements for a CPAN dist" msgstr "" -#: gnu/packages/perl.scm:8517 +#: gnu/packages/perl.scm:9353 msgid "" "A CPAN::Meta::Requirements object models a set of version\n" "constraints like those specified in the META.yml or META.json files in CPAN\n" @@ -14533,22 +15714,22 @@ msgid "" "representation." msgstr "" -#: gnu/packages/perl.scm:8540 +#: gnu/packages/perl.scm:9376 msgid "Read and write a subset of YAML for CPAN Meta files" msgstr "" -#: gnu/packages/perl.scm:8541 +#: gnu/packages/perl.scm:9377 msgid "" "This module implements a subset of the YAML specification\n" "for use in reading and writing CPAN metadata files like META.yml and\n" "MYMETA.yml." msgstr "" -#: gnu/packages/perl.scm:8562 +#: gnu/packages/perl.scm:9398 msgid "Build and install Perl modules" msgstr "" -#: gnu/packages/perl.scm:8563 +#: gnu/packages/perl.scm:9399 msgid "" "@code{Module::Build} is a system for building, testing, and\n" "installing Perl modules; it used to be part of Perl itself until version 5.22,\n" @@ -14559,21 +15740,21 @@ msgid "" "system---most of the @code{Module::Build} code is pure-Perl." msgstr "" -#: gnu/packages/perl.scm:8589 +#: gnu/packages/perl.scm:9425 msgid "Parse META.yml and META.json CPAN metadata files" msgstr "" -#: gnu/packages/perl.scm:8590 +#: gnu/packages/perl.scm:9426 msgid "" "Parse::CPAN::Meta is a parser for META.json and META.yml\n" "files, using JSON::PP and/or CPAN::Meta::YAML." msgstr "" -#: gnu/packages/perl.scm:8608 +#: gnu/packages/perl.scm:9444 msgid "Common Scalar and List utility subroutines" msgstr "" -#: gnu/packages/perl.scm:8609 +#: gnu/packages/perl.scm:9445 msgid "" "This package contains a selection of subroutines that people\n" "have expressed would be nice to have in the perl core, but the usage would not\n" @@ -14581,50 +15762,82 @@ msgid "" "such that being individual extensions would be wasteful." msgstr "" -#: gnu/packages/perl.scm:8633 +#: gnu/packages/perl.scm:9469 msgid "Cross-platform functions emulating common shell commands" msgstr "" -#: gnu/packages/perl.scm:8635 +#: gnu/packages/perl.scm:9471 msgid "Shell::Command is a thin wrapper around ExtUtils::Command." msgstr "" -#: gnu/packages/perl.scm:8662 +#: gnu/packages/perl.scm:9498 msgid "Object-oriented File::Find replacement in Perl" msgstr "" -#: gnu/packages/perl.scm:8663 +#: gnu/packages/perl.scm:9499 msgid "" "File::Find::Object is an object-oriented\n" "File::Find replacement in Perl." msgstr "" -#: gnu/packages/perl.scm:8692 +#: gnu/packages/perl.scm:9528 msgid "Alternative interface to File::Find::Object" msgstr "" -#: gnu/packages/perl.scm:8693 +#: gnu/packages/perl.scm:9529 msgid "" "File::Find::Object::Rule is an alternative Perl\n" "interface to File::Find::Object." msgstr "" -#: gnu/packages/perl.scm:8723 +#: gnu/packages/perl.scm:9550 +msgid "Wrapper for @code{File::Find} ala @code{find(1)}" +msgstr "" + +#: gnu/packages/perl.scm:9552 +msgid "" +"@code{File::Find} is great, but constructing the wanted routine can\n" +"sometimes be a pain. @code{File::Finder} provides a wanted-writer, using\n" +"syntax that is directly mappable to the @code{find(1)} command's syntax.\n" +"\n" +"A @code{File::Finder} object contains a hash of @code{File::Find} options, and\n" +"a series of steps that mimic find's predicates. Initially, a\n" +"@code{File::Finder} object has no steps. Each step method clones the previous\n" +"object's options and steps, and then adds the new step, returning the new\n" +"object. In this manner, an object can be grown, step by step, by chaining\n" +"method calls. Furthermore, a partial sequence can be created and held, and\n" +"used as the head of many different sequences." +msgstr "" + +#: gnu/packages/perl.scm:9581 +msgid "TTF font support for Perl" +msgstr "Support des polices TTF pour Perl" + +#: gnu/packages/perl.scm:9582 +msgid "" +"This package provides a Perl module for TrueType/OpenType\n" +"font hacking. It supports reading, processing and writing of the following\n" +"tables: GDEF, GPOS, GSUB, LTSH, OS/2, PCLT, bsln, cmap, cvt, fdsc, feat,\n" +"fpgm, glyf, hdmx, head, hhea, hmtx, kern, loca, maxp, mort, name, post, prep,\n" +"prop, vhea, vmtx and the reading and writing of all other table types." +msgstr "" + +#: gnu/packages/perl.scm:9620 msgid "Collection of Perl modules for time/date manipulation" msgstr "" -#: gnu/packages/perl.scm:8724 +#: gnu/packages/perl.scm:9621 msgid "" "Provides several perl modules for date/time manipulation:\n" "@code{Time::CTime.pm}, @code{Time::JulianDay.pm}, @code{Time::ParseDate.pm},\n" "@code{Time::Timezone.pm}, and @code{Time::DaysInMonth.pm}." msgstr "" -#: gnu/packages/perl.scm:8753 +#: gnu/packages/perl.scm:9650 msgid "Perl library for testing if a time() is in a specific period" msgstr "" -#: gnu/packages/perl.scm:8754 +#: gnu/packages/perl.scm:9651 msgid "" "This Perl library provides a function which tells whether a\n" "specific time falls within a specified time period. Its syntax for specifying\n" @@ -14634,86 +15847,143 @@ msgid "" "1998\"." msgstr "" -#: gnu/packages/photo.scm:78 +#: gnu/packages/perl.scm:9683 +msgid "Iterative, recursive file finder" +msgstr "" + +#: gnu/packages/perl.scm:9684 +msgid "" +"Path::Iterator::Rule iterates over files and directories to\n" +"identify ones matching a user-defined set of rules. The API is based heavily\n" +"on File::Find::Rule, but with more explicit distinction between matching rules\n" +"and options that influence how directories are searched. A\n" +"Path::Iterator::Rule object is a collection of rules (match criteria) with\n" +"methods to add additional criteria. Options that control directory traversal\n" +"are given as arguments to the method that generates an iterator.\n" +"\n" +"A summary of features for comparison to other file finding modules:\n" +"\n" +"@itemize\n" +"@item provides many helper methods for specifying rules\n" +"@item offers (lazy) iterator and flattened list interfaces\n" +"@item custom rules implemented with callbacks\n" +"@item breadth-first (default) or pre- or post-order depth-first searching\n" +"@item follows symlinks (by default, but can be disabled)\n" +"@item directories visited only once (no infinite loop; can be disabled)\n" +"@item doesn't chdir during operation\n" +"@item provides an API for extensions\n" +"@end itemize\n" +"\n" +"As a convenience, the PIR module is an empty subclass of this one that is less\n" +"arduous to type for one-liners." +msgstr "" + +#: gnu/packages/perl.scm:9724 +msgid "Include constants from POD" +msgstr "" + +#: gnu/packages/perl.scm:9725 +msgid "" +"This module allows you to specify those constants that\n" +"should be documented in your POD, and pull them out a run time in a fairly\n" +"arbitrary fashion.\n" +"\n" +"Pod::Constants uses Pod::Parser to do the parsing of the source file. It has\n" +"to open the source file it is called from, and does so directly either by\n" +"lookup in %INC or by assuming it is $0 if the caller is @code{main}\n" +"(or it can't find %INC{caller()})." +msgstr "" + +#: gnu/packages/perl.scm:9752 +msgid "Collection of regexp patterns" +msgstr "" + +#: gnu/packages/perl.scm:9753 +msgid "" +"Regexp::Pattern is a convention for organizing reusable\n" +"regexp patterns in modules." +msgstr "" + +#: gnu/packages/photo.scm:82 msgid "Raw image decoder" msgstr "" -#: gnu/packages/photo.scm:80 +#: gnu/packages/photo.scm:84 msgid "" "LibRaw is a library for reading RAW files obtained from digital photo\n" "cameras (CRW/CR2, NEF, RAF, DNG, and others)." msgstr "" -#: gnu/packages/photo.scm:97 +#: gnu/packages/photo.scm:103 msgid "Read and manipulate EXIF data in digital photographs" msgstr "" -#: gnu/packages/photo.scm:99 +#: gnu/packages/photo.scm:105 msgid "" "The libexif C library allows applications to read, edit, and save EXIF\n" "data as produced by digital cameras." msgstr "" -#: gnu/packages/photo.scm:125 +#: gnu/packages/photo.scm:131 msgid "Accessing digital cameras" msgstr "" -#: gnu/packages/photo.scm:127 +#: gnu/packages/photo.scm:133 msgid "" "This is the library backend for gphoto2. It contains the code for PTP,\n" "MTP, and other vendor specific protocols for controlling and transferring data\n" "from digital cameras." msgstr "" -#: gnu/packages/photo.scm:169 +#: gnu/packages/photo.scm:175 msgid "Command-line tools to access digital cameras" msgstr "" -#: gnu/packages/photo.scm:171 +#: gnu/packages/photo.scm:177 msgid "" "Gphoto2 is a set of command line utilities for manipulating a large\n" "number of different digital cameras. Through libgphoto2, it supports PTP,\n" "MTP, and much more." msgstr "" -#: gnu/packages/photo.scm:204 +#: gnu/packages/photo.scm:210 msgid "Program and Perl library to manipulate EXIF and other metadata" msgstr "" -#: gnu/packages/photo.scm:205 +#: gnu/packages/photo.scm:211 msgid "" "This package provides the @code{exiftool} command and the\n" "@code{Image::ExifTool} Perl library to manipulate EXIF tags of digital images\n" "and a wide variety of other metadata." msgstr "" -#: gnu/packages/photo.scm:229 +#: gnu/packages/photo.scm:235 msgid "Library for panoramic images" msgstr "Bibliothèque de d'images panoramiques" -#: gnu/packages/photo.scm:231 +#: gnu/packages/photo.scm:237 msgid "" "The libpano13 package contains the backend library written by the\n" "Panorama Tools project for building panoramic images from a set of\n" "overlapping images, as well as some command line tools." msgstr "" -#: gnu/packages/photo.scm:275 +#: gnu/packages/photo.scm:281 msgid "Tools for combining and blending images" msgstr "Outils de combinaison et mélange d'images" -#: gnu/packages/photo.scm:277 +#: gnu/packages/photo.scm:283 msgid "" "Enblend blends away the seams in a panoramic image mosaic using a\n" "multi-resolution spline. Enfuse merges different exposures of the same\n" "scene to produce an image that looks much like a tone-mapped image." msgstr "" -#: gnu/packages/photo.scm:308 +#: gnu/packages/photo.scm:314 msgid "Library to correct optical lens defects with a lens database" msgstr "" -#: gnu/packages/photo.scm:309 +#: gnu/packages/photo.scm:315 msgid "" "Digital photographs are not ideal. Of course, the better is\n" "your camera, the better the results will be, but in any case if you look\n" @@ -14727,11 +15997,11 @@ msgid "" "photographic equipment." msgstr "" -#: gnu/packages/photo.scm:385 +#: gnu/packages/photo.scm:391 msgid "Virtual lighttable and darkroom for photographers" msgstr "" -#: gnu/packages/photo.scm:386 +#: gnu/packages/photo.scm:392 msgid "" "Darktable is a photography workflow application and RAW\n" "developer. It manages your digital negatives in a database, lets you view\n" @@ -14739,17 +16009,31 @@ msgid "" "and enhance them." msgstr "" -#: gnu/packages/photo.scm:457 +#: gnu/packages/photo.scm:463 msgid "Panorama photo stitcher" msgstr "" -#: gnu/packages/photo.scm:459 +#: gnu/packages/photo.scm:465 msgid "" "Hugin is an easy to use panoramic imaging toolchain with a graphical\n" "user interface. It can be used to assemble a mosaic of photographs into\n" "a complete panorama and stitch any series of overlapping pictures." msgstr "" +#: gnu/packages/photo.scm:516 +msgid "Raw image developing and processing" +msgstr "" + +#: gnu/packages/photo.scm:517 +msgid "" +"RawTherapee is a raw image processing suite. It comprises a\n" +"subset of image editing operations specifically aimed at non-destructive raw\n" +"photo post-production and is primarily focused on improving a photographer's\n" +"workflow by facilitating the handling of large numbers of images. Most raw\n" +"formats are supported, including Pentax Pixel Shift, Canon Dual-Pixel, and those\n" +"from Foveon and X-Trans sensors." +msgstr "" + #: gnu/packages/ratpoison.scm:86 msgid "Simple mouse-free tiling window manager" msgstr "" @@ -14770,11 +16054,11 @@ msgid "" "cripples Emacs and other quality pieces of software." msgstr "" -#: gnu/packages/readline.scm:82 +#: gnu/packages/readline.scm:92 msgid "Edit command lines while typing, with history support" msgstr "" -#: gnu/packages/readline.scm:84 +#: gnu/packages/readline.scm:94 msgid "" "The GNU readline library allows users to edit command lines as they\n" "are typed in. It can maintain a searchable history of previously entered\n" @@ -14783,11 +16067,11 @@ msgid "" "comfortable for anyone." msgstr "" -#: gnu/packages/readline.scm:121 +#: gnu/packages/readline.scm:133 msgid "Wrapper to allow the editing of keyboard commands" msgstr "" -#: gnu/packages/readline.scm:123 +#: gnu/packages/readline.scm:135 msgid "" "Rlwrap is a 'readline wrapper', a small utility that uses the GNU\n" "readline library to allow the editing of keyboard input for any command. You\n" @@ -14796,11 +16080,11 @@ msgid "" "'special effects' using the filter mechanism." msgstr "" -#: gnu/packages/scanner.scm:87 +#: gnu/packages/scanner.scm:90 msgid "Raster image scanner library and drivers, without scanner support" msgstr "" -#: gnu/packages/scanner.scm:88 +#: gnu/packages/scanner.scm:91 msgid "" "SANE stands for \"Scanner Access Now Easy\" and is an API\n" "proving access to any raster image scanner hardware (flatbed scanner,\n" @@ -14808,11 +16092,11 @@ msgid "" "package contains the library, but no drivers." msgstr "" -#: gnu/packages/scanner.scm:126 +#: gnu/packages/scanner.scm:129 msgid "Raster image scanner library and drivers, with scanner support" msgstr "" -#: gnu/packages/scanner.scm:127 +#: gnu/packages/scanner.scm:130 msgid "" "SANE stands for \"Scanner Access Now Easy\" and is an API\n" "proving access to any raster image scanner hardware (flatbed scanner,\n" @@ -14820,11 +16104,11 @@ msgid "" "package contains the library and drivers." msgstr "" -#: gnu/packages/scheme.scm:191 +#: gnu/packages/scheme.scm:193 msgid "A Scheme implementation with integrated editor and debugger" msgstr "Une implantation de Scheme avec éditeur et débogueur intégrés" -#: gnu/packages/scheme.scm:193 +#: gnu/packages/scheme.scm:195 msgid "" "GNU/MIT Scheme is an implementation of the Scheme programming\n" "language. It provides an interpreter, a compiler and a debugger. It also\n" @@ -14834,11 +16118,11 @@ msgstr "" "Il fournit un interpréteur, un compilateur et un débogueur. Il intègre\n" "également un éditeur sur le modèle d'Emacs et une librairie d'exécution complète." -#: gnu/packages/scheme.scm:276 +#: gnu/packages/scheme.scm:283 msgid "Efficient Scheme compiler" msgstr "Compilateur Scheme efficace" -#: gnu/packages/scheme.scm:278 +#: gnu/packages/scheme.scm:285 msgid "" "Bigloo is a Scheme implementation devoted to one goal: enabling\n" "Scheme based programming style where C(++) is usually\n" @@ -14859,11 +16143,11 @@ msgstr "" "Bigloo permet de connecter complètement des programmes Scheme et C\n" "et des programmes Scheme et Java." -#: gnu/packages/scheme.scm:327 +#: gnu/packages/scheme.scm:334 msgid "Multi-tier programming language for the Web 2.0" msgstr "" -#: gnu/packages/scheme.scm:329 +#: gnu/packages/scheme.scm:336 msgid "" "HOP is a multi-tier programming language for the Web 2.0 and the\n" "so-called diffuse Web. It is designed for programming interactive web\n" @@ -14872,11 +16156,11 @@ msgid "" "mashups, office (web agendas, mail clients, ...), etc." msgstr "" -#: gnu/packages/scheme.scm:373 +#: gnu/packages/scheme.scm:377 msgid "R5RS Scheme implementation that compiles native code via C" msgstr "" -#: gnu/packages/scheme.scm:375 +#: gnu/packages/scheme.scm:379 msgid "" "CHICKEN is a compiler for the Scheme programming language. CHICKEN\n" "produces portable and efficient C, supports almost all of the R5RS Scheme\n" @@ -14886,11 +16170,11 @@ msgstr "" "produit du C portable et efficace, supporte l'essentiel du standard R5RS et\n" "incult de nombreuses améliorations et extensions." -#: gnu/packages/scheme.scm:394 +#: gnu/packages/scheme.scm:398 msgid "Scheme implementation using a bytecode interpreter" msgstr "Implantation de Scheme utilisanat un interpréteur pour bytecode" -#: gnu/packages/scheme.scm:396 +#: gnu/packages/scheme.scm:400 msgid "" "Scheme 48 is an implementation of Scheme based on a byte-code\n" "interpreter and is designed to be used as a testbed for experiments in\n" @@ -14900,11 +16184,11 @@ msgstr "" "destinée à être utilisée comme un banc d'essai pour des expérimentations\n" "portant sur des techniques d'implantation et comme un outil d'exposition." -#: gnu/packages/scheme.scm:509 +#: gnu/packages/scheme.scm:517 msgid "Implementation of Scheme and related languages" msgstr "Implantation de Scheme et d'autres langages associés" -#: gnu/packages/scheme.scm:511 +#: gnu/packages/scheme.scm:519 msgid "" "Racket is an implementation of the Scheme programming language (R5RS and\n" "R6RS) and related languages, such as Typed Racket. It features a compiler and\n" @@ -14916,11 +16200,11 @@ msgstr "" "une machine virtuelle avec compilation à la volée ainsi qu'un ensemble de\n" "bibliothèques." -#: gnu/packages/scheme.scm:549 +#: gnu/packages/scheme.scm:557 msgid "Efficient Scheme interpreter and compiler" msgstr "Compilateur et interpréteur Scheme efficace" -#: gnu/packages/scheme.scm:551 +#: gnu/packages/scheme.scm:559 msgid "" "Gambit consists of two main programs: gsi, the Gambit Scheme\n" "interpreter, and gsc, the Gambit Scheme compiler. The interpreter contains\n" @@ -14931,11 +16215,11 @@ msgid "" "mixed." msgstr "" -#: gnu/packages/scheme.scm:585 +#: gnu/packages/scheme.scm:593 msgid "Small embeddable Scheme implementation" msgstr "" -#: gnu/packages/scheme.scm:587 +#: gnu/packages/scheme.scm:595 msgid "" "Chibi-Scheme is a very small library with no external dependencies\n" "intended for use as an extension and scripting language in C programs. In\n" @@ -14944,11 +16228,11 @@ msgid "" "threads." msgstr "" -#: gnu/packages/scheme.scm:757 +#: gnu/packages/scheme.scm:766 msgid "Scmutils library for MIT Scheme" msgstr "" -#: gnu/packages/scheme.scm:758 +#: gnu/packages/scheme.scm:767 msgid "" "The Scmutils system is an integrated library of\n" "procedures, embedded in the programming language Scheme, and intended to\n" @@ -14956,11 +16240,11 @@ msgid "" "engineering." msgstr "" -#: gnu/packages/scheme.scm:808 +#: gnu/packages/scheme.scm:816 msgid "Structure and Interpretation of Computer Programs" msgstr "" -#: gnu/packages/scheme.scm:809 +#: gnu/packages/scheme.scm:817 msgid "" "Structure and Interpretation of Computer Programs (SICP) is\n" "a textbook aiming to teach the principles of computer programming.\n" @@ -14970,31 +16254,31 @@ msgid "" "metalinguistic abstraction, recursion, interpreters, and modular programming." msgstr "" -#: gnu/packages/scheme.scm:850 +#: gnu/packages/scheme.scm:859 msgid "SRE String pattern-matching library for scheme48" msgstr "" -#: gnu/packages/scheme.scm:852 +#: gnu/packages/scheme.scm:861 msgid "" "String pattern-matching library for scheme48 based on the SRE\n" "regular-expression notation." msgstr "" -#: gnu/packages/scheme.scm:884 +#: gnu/packages/scheme.scm:893 msgid "Compatibility and utility library for Scheme" msgstr "" -#: gnu/packages/scheme.scm:885 +#: gnu/packages/scheme.scm:894 msgid "" "SLIB is a portable Scheme library providing compatibility and\n" "utility functions for all standard Scheme implementations." msgstr "" -#: gnu/packages/scheme.scm:946 +#: gnu/packages/scheme.scm:955 msgid "Scheme implementation conforming to R5RS and IEEE P1178" msgstr "" -#: gnu/packages/scheme.scm:947 +#: gnu/packages/scheme.scm:956 msgid "" "GNU SCM is an implementation of Scheme. This\n" "implementation includes Hobbit, a Scheme-to-C compiler, which can\n" @@ -15002,11 +16286,31 @@ msgid "" "linked with a SCM executable." msgstr "" -#: gnu/packages/search.scm:66 +#: gnu/packages/scheme.scm:1013 +msgid "Light-weight interpreter for the Scheme programming language" +msgstr "Interpréteur léger pour le langage de programmation Scheme" + +#: gnu/packages/scheme.scm:1015 +msgid "" +"TinyScheme is a light-weight Scheme interpreter that implements as large a\n" +"subset of R5RS as was possible without getting very large and complicated.\n" +"\n" +"It's meant to be used as an embedded scripting interpreter for other programs.\n" +"As such, it does not offer an Integrated Development Environment (@dfn{IDE}) or\n" +"extensive toolkits, although it does sport a small (and optional) top-level\n" +"loop.\n" +"\n" +"As an embedded interpreter, it allows multiple interpreter states to coexist in\n" +"the same program, without any interference between them. Foreign functions in C\n" +"can be added and values can be defined in the Scheme environment. Being quite a\n" +"small program, it is easy to comprehend, get to grips with, and use." +msgstr "" + +#: gnu/packages/search.scm:75 msgid "Search Engine Library" msgstr "" -#: gnu/packages/search.scm:68 +#: gnu/packages/search.scm:77 msgid "" "Xapian is a highly adaptable toolkit which allows developers to easily\n" "add advanced indexing and search facilities to their own applications. It\n" @@ -15014,15 +16318,15 @@ msgid "" "rich set of boolean query operators." msgstr "" -#: gnu/packages/search.scm:98 +#: gnu/packages/search.scm:109 msgid "Python bindings for the Xapian search engine library" msgstr "Liaisons python pour la bibliothèque de moteur de recherche Xapian" -#: gnu/packages/search.scm:137 +#: gnu/packages/search.scm:148 msgid "Tool for Obsessive Compulsive Classifiers" msgstr "" -#: gnu/packages/search.scm:139 +#: gnu/packages/search.scm:150 msgid "" "libtocc is the engine of the Tocc project, a tag-based file management\n" "system. The goal of Tocc is to provide a better system for classifying files\n" @@ -15030,21 +16334,21 @@ msgid "" "files and directories." msgstr "" -#: gnu/packages/search.scm:161 +#: gnu/packages/search.scm:172 msgid "Command-line interface to libtocc" msgstr "" -#: gnu/packages/search.scm:163 +#: gnu/packages/search.scm:174 msgid "" "Tocc is a tag-based file management system. This package contains the\n" "command line tool for interacting with libtocc." msgstr "" -#: gnu/packages/search.scm:181 +#: gnu/packages/search.scm:192 msgid "Finding text and HTML files that match boolean expressions" msgstr "" -#: gnu/packages/search.scm:183 +#: gnu/packages/search.scm:194 msgid "" "GNU Bool is a utility to perform text searches on files using Boolean\n" "expressions. For example, a search for \"hello AND world\" would return a\n" @@ -15055,22 +16359,22 @@ msgid "" "for parsing HTML files." msgstr "" -#: gnu/packages/search.scm:213 +#: gnu/packages/search.scm:224 msgid "Full-text search system" msgstr "" -#: gnu/packages/search.scm:214 +#: gnu/packages/search.scm:225 msgid "" "Hyper Estraier can be used to integrate full-text\n" "search into applications, using either the provided command line and CGI\n" "interfaces, or a C API." msgstr "" -#: gnu/packages/search.scm:232 +#: gnu/packages/search.scm:243 msgid "Locate files on the file system" msgstr "" -#: gnu/packages/search.scm:234 +#: gnu/packages/search.scm:245 msgid "" "mlocate is a locate/updatedb implementation. The 'm' stands for\n" "\"merging\": @code{updatedb} reuses the existing database to avoid rereading\n" @@ -15080,17 +16384,30 @@ msgid "" "conflict with slocate compatibility." msgstr "" -#: gnu/packages/search.scm:299 +#: gnu/packages/search.scm:310 msgid "Web indexing system" msgstr "" -#: gnu/packages/search.scm:301 +#: gnu/packages/search.scm:312 msgid "" "Swish-e is Simple Web Indexing System for Humans - Enhanced. Swish-e\n" "can quickly and easily index directories of files or remote web sites and\n" "search the generated indexes." msgstr "" +#: gnu/packages/search.scm:379 +msgid "Personal document indexing system" +msgstr "" + +#: gnu/packages/search.scm:381 +msgid "" +"Xapers is a personal document indexing system,\n" +"geared towards academic journal articles build on the Xapian search engine.\n" +"Think of it as your own personal document search engine, or a local cache of\n" +"online libraries. It provides fast search of document text and\n" +"bibliographic data and simple document and bibtex retrieval." +msgstr "" + #: gnu/packages/serveez.scm:52 msgid "Framework for implementing IP-based servers" msgstr "" @@ -15118,45 +16435,37 @@ msgid "" "direct descendant of NetBSD's Almquist Shell (@command{ash})." msgstr "" -#: gnu/packages/shells.scm:136 +#: gnu/packages/shells.scm:137 msgid "The friendly interactive shell" msgstr "" -#: gnu/packages/shells.scm:138 +#: gnu/packages/shells.scm:139 msgid "" "Fish (friendly interactive shell) is a shell focused on interactive use,\n" "discoverability, and friendliness. Fish has very user-friendly and powerful\n" "tab-completion, including descriptions of every completion, completion of\n" "strings with wildcards, and many completions for specific commands. It also\n" -"has extensive and discoverable help. A special help command gives access to\n" -"all the fish documentation in your web browser. Other features include smart\n" -"terminal handling based on terminfo, an easy to search history, and syntax\n" -"highlighting." +"has extensive and discoverable help. A special @command{help} command gives\n" +"access to all the fish documentation in your web browser. Other features\n" +"include smart terminal handling based on terminfo, an easy to search history,\n" +"and syntax highlighting." msgstr "" -#: gnu/packages/shells.scm:170 -msgid "Fish completions for Guix" -msgstr "" - -#: gnu/packages/shells.scm:172 -msgid "Fish-guix provides completions for Guix for users of the fish shell." -msgstr "" - -#: gnu/packages/shells.scm:213 +#: gnu/packages/shells.scm:188 msgid "Alternative implementation of the rc shell by Byron Rakitzis" msgstr "" -#: gnu/packages/shells.scm:215 +#: gnu/packages/shells.scm:190 msgid "" "This is a reimplementation by Byron Rakitzis of the Plan 9 shell. It\n" "has a small feature set similar to a traditional Bourne shell." msgstr "" -#: gnu/packages/shells.scm:246 +#: gnu/packages/shells.scm:221 msgid "Extensible shell with higher-order functions" msgstr "" -#: gnu/packages/shells.scm:248 +#: gnu/packages/shells.scm:223 msgid "" "Es is an extensible shell. The language was derived from the Plan 9\n" "shell, rc, and was influenced by functional programming languages, such as\n" @@ -15165,11 +16474,11 @@ msgid "" "written by Paul Haahr and Byron Rakitzis." msgstr "" -#: gnu/packages/shells.scm:308 +#: gnu/packages/shells.scm:283 msgid "Unix shell based on csh" msgstr "" -#: gnu/packages/shells.scm:310 +#: gnu/packages/shells.scm:285 msgid "" "Tcsh is an enhanced, but completely compatible version of the Berkeley\n" "UNIX C shell (csh). It is a command language interpreter usable both as an\n" @@ -15178,11 +16487,11 @@ msgid "" "history mechanism, job control and a C-like syntax." msgstr "" -#: gnu/packages/shells.scm:359 +#: gnu/packages/shells.scm:344 msgid "Powerful shell for interactive use and scripting" msgstr "Shell puissant pour un usage interactif et l'écriture de scripts" -#: gnu/packages/shells.scm:360 +#: gnu/packages/shells.scm:345 msgid "" "The Z shell (zsh) is a Unix shell that can be used\n" "as an interactive login shell and as a powerful command interpreter\n" @@ -15195,11 +16504,11 @@ msgstr "" "shell. Zsh peut être vu comme un Bourn shell étendu doté de nombreuses améliorations\n" "et incluant certaines fonctionnalités de bash, ksh et tcsh." -#: gnu/packages/shells.scm:399 +#: gnu/packages/shells.scm:384 msgid "Python-ish shell" msgstr "" -#: gnu/packages/shells.scm:401 +#: gnu/packages/shells.scm:386 msgid "" "Xonsh is a Python-ish, BASHwards-looking shell language and command\n" "prompt. The language is a superset of Python 3.4+ with additional shell\n" @@ -15208,11 +16517,11 @@ msgid "" "use of experts and novices alike." msgstr "" -#: gnu/packages/shells.scm:448 +#: gnu/packages/shells.scm:433 msgid "Unix shell embedded in Scheme" msgstr "" -#: gnu/packages/shells.scm:450 +#: gnu/packages/shells.scm:435 msgid "" "Scsh is a Unix shell embedded in Scheme. Scsh has two main\n" "components: a process notation for running programs and setting up pipelines\n" @@ -15220,11 +16529,11 @@ msgid "" "operating system." msgstr "" -#: gnu/packages/shells.scm:489 +#: gnu/packages/shells.scm:474 msgid "Minimal zero-config readline replacement" msgstr "" -#: gnu/packages/shells.scm:491 +#: gnu/packages/shells.scm:476 msgid "" "Linenoise is a minimal, zero-config, readline replacement.\n" "Its features include:\n" @@ -15238,11 +16547,11 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/shells.scm:551 +#: gnu/packages/shells.scm:538 msgid "Extremely minimal shell with the simplest syntax possible" msgstr "" -#: gnu/packages/shells.scm:553 +#: gnu/packages/shells.scm:540 msgid "" "S is a new shell that aims to be extremely simple.\n" "S does not implemnt the POSIX shell standard.\n" @@ -15255,42 +16564,55 @@ msgid "" "A @code{andglob} program is also provided along with s." msgstr "" -#: gnu/packages/shells.scm:581 +#: gnu/packages/shells.scm:568 msgid "Port of OpenBSD Korn Shell" msgstr "" -#: gnu/packages/shells.scm:583 +#: gnu/packages/shells.scm:570 msgid "" "Oksh is a port of the OpenBSD Korn Shell.\n" "The OpenBSD Korn Shell is a cleaned up and enhanced ksh." msgstr "" -#: gnu/packages/shells.scm:615 +#: gnu/packages/shells.scm:602 msgid "Korn Shell from OpenBSD" msgstr "" -#: gnu/packages/shells.scm:617 +#: gnu/packages/shells.scm:604 msgid "" "loksh is a Linux port of OpenBSD's @command{ksh}. It is a small,\n" "interactive POSIX shell targeted at resource-constrained systems." msgstr "" -#: gnu/packages/shells.scm:655 +#: gnu/packages/shells.scm:642 msgid "Korn Shell from MirBSD" msgstr "" -#: gnu/packages/shells.scm:656 +#: gnu/packages/shells.scm:643 msgid "" "mksh is an actively developed free implementation of the\n" "Korn Shell programming language and a successor to the Public Domain Korn\n" "Shell (pdksh)." msgstr "" -#: gnu/packages/telephony.scm:66 +#: gnu/packages/shells.scm:685 +msgid "Bash-compatible Unix shell" +msgstr "Shell Unix compatible avec Bash" + +#: gnu/packages/shells.scm:686 +msgid "" +"Oil is a Unix / POSIX shell, compatible with Bash. It\n" +"implements the Oil language, which is a new shell language to which Bash can be\n" +"automatically translated. The Oil language is a superset of Bash. It also\n" +"implements the OSH language, a statically-parseable language based on Bash as it\n" +"is commonly written." +msgstr "" + +#: gnu/packages/telephony.scm:77 msgid "(u)Common C++ framework for threaded applications" msgstr "" -#: gnu/packages/telephony.scm:67 +#: gnu/packages/telephony.scm:78 msgid "" "GNU Common C++ is an portable, optimized class framework for\n" "threaded applications, supporting concurrent synchronization, inter-process\n" @@ -15299,11 +16621,11 @@ msgid "" "reimplementation." msgstr "" -#: gnu/packages/telephony.scm:87 +#: gnu/packages/telephony.scm:98 msgid "Common C++ framework for threaded applications" msgstr "" -#: gnu/packages/telephony.scm:88 +#: gnu/packages/telephony.scm:99 msgid "" "GNU uCommon C++ is meant as a very light-weight C++ library\n" "to facilitate using C++ design patterns even for very deeply embedded\n" @@ -15311,11 +16633,11 @@ msgid "" "support." msgstr "" -#: gnu/packages/telephony.scm:110 +#: gnu/packages/telephony.scm:121 msgid "Implementation of RTP (real-time transport protocol)" msgstr "" -#: gnu/packages/telephony.scm:111 +#: gnu/packages/telephony.scm:122 msgid "" "GNU ccRTP is an implementation of RTP, the real-time transport\n" "protocol from the IETF. It is suitable both for high capacity servers and\n" @@ -15324,22 +16646,22 @@ msgid "" "packet-manipulation library." msgstr "" -#: gnu/packages/telephony.scm:133 +#: gnu/packages/telephony.scm:144 msgid "Library implementing SIP (RFC-3261)" msgstr "" -#: gnu/packages/telephony.scm:134 +#: gnu/packages/telephony.scm:145 msgid "" "GNU oSIP is an implementation of the SIP protocol. It is\n" "used to provide multimedia and telecom software developers with an interface\n" "to initiate and control SIP sessions." msgstr "" -#: gnu/packages/telephony.scm:153 +#: gnu/packages/telephony.scm:164 msgid "Sip abstraction library" msgstr "Bibliothèque d'abstraction de Sip" -#: gnu/packages/telephony.scm:154 +#: gnu/packages/telephony.scm:165 msgid "" "EXosip is a library that hides the complexity of using the\n" "SIP protocol for multimedia session establishment. This protocol is mainly to\n" @@ -15348,11 +16670,11 @@ msgid "" "multiplayer games." msgstr "" -#: gnu/packages/telephony.scm:197 +#: gnu/packages/telephony.scm:208 msgid "Secure peer-to-peer VoIP server for the SIP protocol" msgstr "" -#: gnu/packages/telephony.scm:198 +#: gnu/packages/telephony.scm:209 msgid "" "GNU SIP Witch is a peer-to-peer Voice-over-IP server that\n" "uses the SIP protocol. Calls can be made from behind NAT firewalls and\n" @@ -15362,32 +16684,52 @@ msgid "" "internet." msgstr "" -#: gnu/packages/telephony.scm:243 +#: gnu/packages/telephony.scm:254 msgid "Secure RTP (SRTP) Reference Implementation" msgstr "" -#: gnu/packages/telephony.scm:244 +#: gnu/packages/telephony.scm:256 msgid "" -"This package provides an implementation of the Secure\n" -"Real-time Transport Protocol (SRTP), the Universal Security Transform (UST),\n" -"and a supporting cryptographic kernel." +"This package provides an implementation of the Secure Real-time Transport\n" +"Protocol (@dfn{SRTP}), the Universal Security Transform (@dfn{UST}), and a\n" +"supporting cryptographic kernel." msgstr "" -#: gnu/packages/telephony.scm:279 +#: gnu/packages/telephony.scm:280 +msgid "Utilities library for linphone software" +msgstr "" + +#: gnu/packages/telephony.scm:281 +msgid "" +"BCtoolbox is a utilities library used by Belledonne\n" +"Communications softwares like linphone." +msgstr "" + +#: gnu/packages/telephony.scm:303 +msgid "Implementation of the Real-time transport protocol" +msgstr "Implémentation du protocole de transport en temps réel (RTTP)" + +#: gnu/packages/telephony.scm:304 +msgid "" +"oRTP is a library implementing the Real-time transport\n" +"protocol (RFC 3550)." +msgstr "" + +#: gnu/packages/telephony.scm:337 msgid "Inter-Asterisk-Protocol library" msgstr "Bibliothèque pour le protocole Inter-Asterisk" -#: gnu/packages/telephony.scm:280 +#: gnu/packages/telephony.scm:338 msgid "" "LibIAX2 implements the Inter-Asterisk-Protocol for relaying\n" "Voice-over-IP (VoIP) communications." msgstr "" -#: gnu/packages/telephony.scm:311 +#: gnu/packages/telephony.scm:369 msgid "Simple VoIP program to create conferences from the terminal" msgstr "" -#: gnu/packages/telephony.scm:313 +#: gnu/packages/telephony.scm:371 msgid "" "Seren is a simple VoIP program based on the Opus codec that allows you\n" "to create a voice conference from the terminal, with up to 10 participants,\n" @@ -15396,11 +16738,11 @@ msgid "" "address of one of the participants." msgstr "" -#: gnu/packages/telephony.scm:425 +#: gnu/packages/telephony.scm:484 msgid "Low-latency, high quality voice chat software" msgstr "" -#: gnu/packages/telephony.scm:427 +#: gnu/packages/telephony.scm:486 msgid "" "Mumble is an low-latency, high quality voice chat\n" "software primarily intended for use while gaming.\n" @@ -15408,12 +16750,24 @@ msgid "" "@code{mumble} for the client, and @code{murmur} for the server." msgstr "" -#: gnu/packages/tex.scm:192 gnu/packages/tex.scm:3844 -#: gnu/packages/tex.scm:3906 +#: gnu/packages/telephony.scm:549 +msgid "Softphone for voice over IP and instant messaging" +msgstr "" + +#: gnu/packages/telephony.scm:550 +msgid "" +"Twinkle is a softphone for your voice over IP and instant\n" +"messaging communcations using the SIP protocol. You can use it for direct IP\n" +"phone to IP phone communication or in a network using a SIP proxy to route your\n" +"calls and messages" +msgstr "" + +#: gnu/packages/tex.scm:219 gnu/packages/tex.scm:3990 +#: gnu/packages/tex.scm:4053 msgid "TeX Live, a package of the TeX typesetting system" msgstr "" -#: gnu/packages/tex.scm:194 +#: gnu/packages/tex.scm:221 msgid "" "TeX Live provides a comprehensive TeX document production system.\n" "It includes all the major TeX-related programs, macro packages, and fonts\n" @@ -15423,11 +16777,11 @@ msgid "" "This package contains the binaries." msgstr "" -#: gnu/packages/tex.scm:259 +#: gnu/packages/tex.scm:289 msgid "DVI to PostScript drivers" msgstr "" -#: gnu/packages/tex.scm:260 +#: gnu/packages/tex.scm:290 msgid "" "This package provides files needed for converting DVI files\n" "to PostScript." @@ -15435,11 +16789,11 @@ msgstr "" "Ce paquet fournit des outils requis pour convertir des fichiers\n" "DVI en PostScript." -#: gnu/packages/tex.scm:293 +#: gnu/packages/tex.scm:324 msgid "Unicode data and loaders for TeX" msgstr "" -#: gnu/packages/tex.scm:294 +#: gnu/packages/tex.scm:325 msgid "" "This bundle provides generic access to Unicode Consortium\n" "data for TeX use. It contains a set of text files provided by the Unicode\n" @@ -15452,11 +16806,11 @@ msgid "" "out to date by @code{unicode-letters.tex}. " msgstr "" -#: gnu/packages/tex.scm:331 +#: gnu/packages/tex.scm:363 msgid "Hyphenation patterns for German" msgstr "" -#: gnu/packages/tex.scm:332 +#: gnu/packages/tex.scm:364 msgid "" "The package provides experimental hyphenation patterns for\n" "the German language, covering both traditional and reformed orthography. The\n" @@ -15464,11 +16818,11 @@ msgid "" "bundle." msgstr "" -#: gnu/packages/tex.scm:366 +#: gnu/packages/tex.scm:399 msgid "Files for creating TeX formats" msgstr "" -#: gnu/packages/tex.scm:367 +#: gnu/packages/tex.scm:400 msgid "" "This bundle provides a collection of model \".ini\" files\n" "for creating TeX formats. These files are commonly used to introduced\n" @@ -15477,11 +16831,11 @@ msgid "" "to adapt the plain e-TeX source file to work with XeTeX and LuaTeX." msgstr "" -#: gnu/packages/tex.scm:400 +#: gnu/packages/tex.scm:434 msgid "Hyphenation patterns expressed in UTF-8" msgstr "" -#: gnu/packages/tex.scm:401 +#: gnu/packages/tex.scm:435 msgid "" "Modern native UTF-8 engines such as XeTeX and LuaTeX need\n" "hyphenation patterns in UTF-8 format, whereas older systems require\n" @@ -15494,21 +16848,21 @@ msgid "" "converters, will completely supplant the older patterns." msgstr "" -#: gnu/packages/tex.scm:476 +#: gnu/packages/tex.scm:511 msgid "Metafont base files" msgstr "" -#: gnu/packages/tex.scm:477 +#: gnu/packages/tex.scm:512 msgid "" "This package provides the Metafont base files needed to\n" "build fonts using the Metafont system." msgstr "" -#: gnu/packages/tex.scm:508 +#: gnu/packages/tex.scm:543 msgid "Scheme for naming fonts in TeX" msgstr "" -#: gnu/packages/tex.scm:509 +#: gnu/packages/tex.scm:544 msgid "" "This is Fontname, a naming scheme for (the base part of)\n" "external TeX font filenames. This makes at most eight-character names\n" @@ -15516,11 +16870,11 @@ msgid "" "documents." msgstr "" -#: gnu/packages/tex.scm:576 +#: gnu/packages/tex.scm:613 msgid "Computer Modern fonts for TeX" msgstr "" -#: gnu/packages/tex.scm:577 +#: gnu/packages/tex.scm:614 msgid "" "This package provides the Computer Modern fonts by Donald\n" "Knuth. The Computer Modern font family is a large collection of text,\n" @@ -15528,22 +16882,22 @@ msgid "" "8A." msgstr "" -#: gnu/packages/tex.scm:640 +#: gnu/packages/tex.scm:678 msgid "Small library of METAFONT sources" msgstr "" -#: gnu/packages/tex.scm:641 +#: gnu/packages/tex.scm:679 msgid "" "This is a collection of core TeX and METAFONT macro files\n" "from Donald Knuth, including the plain format, plain base, and the MF logo\n" "fonts." msgstr "" -#: gnu/packages/tex.scm:713 +#: gnu/packages/tex.scm:753 msgid "Collection of fonts used in LaTeX distributions" msgstr "" -#: gnu/packages/tex.scm:714 +#: gnu/packages/tex.scm:754 msgid "" "This is a collection of fonts for use with standard LaTeX\n" "packages and classes. It includes invisible fonts (for use with the slides\n" @@ -15551,11 +16905,11 @@ msgid "" "symbol fonts." msgstr "" -#: gnu/packages/tex.scm:791 gnu/packages/tex.scm:821 +#: gnu/packages/tex.scm:835 gnu/packages/tex.scm:866 msgid "TeX fonts from the American Mathematical Society" msgstr "" -#: gnu/packages/tex.scm:793 +#: gnu/packages/tex.scm:837 msgid "" "This package provides an extended set of fonts for use in mathematics,\n" "including: extra mathematical symbols; blackboard bold letters (uppercase\n" @@ -15569,29 +16923,29 @@ msgid "" "details can be found in the documentation." msgstr "" -#: gnu/packages/tex.scm:823 +#: gnu/packages/tex.scm:868 msgid "" "This package provides basic LaTeX support for the symbol fonts provides\n" "by the amsfonts package. It provides @code{amsfonts.sty}, with names of\n" "individual symbols defined in @code{amssymb.sty}." msgstr "" -#: gnu/packages/tex.scm:856 +#: gnu/packages/tex.scm:902 msgid "Plain TeX format and supporting files" msgstr "" -#: gnu/packages/tex.scm:858 +#: gnu/packages/tex.scm:904 msgid "" "Contains files used to build the Plain TeX format, as described in the\n" "TeXbook, together with various supporting files (some also discussed in the\n" "book)." msgstr "" -#: gnu/packages/tex.scm:1004 +#: gnu/packages/tex.scm:1052 msgid "Base sources of LaTeX" msgstr "" -#: gnu/packages/tex.scm:1006 +#: gnu/packages/tex.scm:1054 msgid "" "This bundle comprises the source of LaTeX itself, together with several\n" "packages which are considered \"part of the kernel\". This bundle, together\n" @@ -15599,11 +16953,11 @@ msgid "" "contain." msgstr "" -#: gnu/packages/tex.scm:1025 +#: gnu/packages/tex.scm:1074 msgid "Extended filecontents and filecontents* environments" msgstr "" -#: gnu/packages/tex.scm:1027 +#: gnu/packages/tex.scm:1076 msgid "" "LaTeX2e's @code{filecontents} and @code{filecontents*} environments\n" "enable a LaTeX source file to generate external files as it runs through\n" @@ -15614,22 +16968,22 @@ msgid "" "@code{filecontents*} anywhere." msgstr "" -#: gnu/packages/tex.scm:1053 +#: gnu/packages/tex.scm:1103 msgid "Am I running under XeTeX?" msgstr "" -#: gnu/packages/tex.scm:1055 +#: gnu/packages/tex.scm:1105 msgid "" "This is a simple package which provides an @code{\\ifxetex} conditional,\n" "so that other code can determine that it is running under XeTeX. The package\n" "requires the e-TeX extensions to the TeX primitive set." msgstr "" -#: gnu/packages/tex.scm:1086 +#: gnu/packages/tex.scm:1137 msgid "Simple macros for EPS inclusion" msgstr "" -#: gnu/packages/tex.scm:1088 +#: gnu/packages/tex.scm:1139 msgid "" "This package provides the original (and now obsolescent) graphics\n" "inclusion macros for use with dvips, still widely used by Plain TeX users (in\n" @@ -15639,11 +16993,11 @@ msgid "" "users, via its Plain TeX version.)" msgstr "" -#: gnu/packages/tex.scm:1113 +#: gnu/packages/tex.scm:1165 msgid "Sophisticated verbatim text" msgstr "" -#: gnu/packages/tex.scm:1115 +#: gnu/packages/tex.scm:1167 msgid "" "This package provides tools for the flexible handling of verbatim text\n" "including: verbatim commands in footnotes; a variety of verbatim environments\n" @@ -15653,11 +17007,11 @@ msgid "" "verbatim source)." msgstr "" -#: gnu/packages/tex.scm:1177 +#: gnu/packages/tex.scm:1236 msgid "LaTeX standard graphics bundle" msgstr "" -#: gnu/packages/tex.scm:1179 +#: gnu/packages/tex.scm:1238 msgid "" "This is a collection of LaTeX packages for producing color, including\n" "graphics (e.g. PostScript) files, and rotation and scaling of text in LaTeX\n" @@ -15665,11 +17019,11 @@ msgid "" "keyval, and lscape." msgstr "" -#: gnu/packages/tex.scm:1200 +#: gnu/packages/tex.scm:1260 msgid "Driver-independent color extensions for LaTeX and pdfLaTeX" msgstr "" -#: gnu/packages/tex.scm:1202 +#: gnu/packages/tex.scm:1262 msgid "" "The package starts from the basic facilities of the colorcolor package,\n" "and provides easy driver-independent access to several kinds of color tints,\n" @@ -15680,11 +17034,11 @@ msgid "" "tables." msgstr "" -#: gnu/packages/tex.scm:1228 +#: gnu/packages/tex.scm:1288 msgid "Extensive support for hypertext in LaTeX" msgstr "" -#: gnu/packages/tex.scm:1230 +#: gnu/packages/tex.scm:1290 msgid "" "The @code{hyperref} package is used to handle cross-referencing commands\n" "in LaTeX to produce hypertext links in the document. The package provides\n" @@ -15696,22 +17050,22 @@ msgid "" "@code{nameref} packages, which make use of the facilities of @code{hyperref}." msgstr "" -#: gnu/packages/tex.scm:1263 +#: gnu/packages/tex.scm:1324 msgid "Bundle of packages submitted by Heiko Oberdiek" msgstr "" -#: gnu/packages/tex.scm:1265 +#: gnu/packages/tex.scm:1326 msgid "" "The bundle comprises various LaTeX packages, providing among others:\n" "better accessibility support for PDF files; extensible chemists reaction\n" "arrows; record information about document class(es) used; and many more." msgstr "" -#: gnu/packages/tex.scm:1285 +#: gnu/packages/tex.scm:1347 msgid "LaTeX standard tools bundle" msgstr "" -#: gnu/packages/tex.scm:1287 +#: gnu/packages/tex.scm:1349 msgid "" "This package is a collection of (variously) simple tools provided as\n" "part of the LaTeX required tools distribution, comprising the following\n" @@ -15721,11 +17075,11 @@ msgid "" "xr, and xspace." msgstr "" -#: gnu/packages/tex.scm:1321 +#: gnu/packages/tex.scm:1384 msgid "Verbatim with URL-sensitive line breaks" msgstr "" -#: gnu/packages/tex.scm:1322 +#: gnu/packages/tex.scm:1385 msgid "" "The command @code{\\url} is a form of verbatim command that\n" "allows linebreaks at certain characters or combinations of characters, accepts\n" @@ -15737,11 +17091,11 @@ msgid "" "of file names." msgstr "" -#: gnu/packages/tex.scm:1348 +#: gnu/packages/tex.scm:1412 msgid "LaTeX3 programmers’ interface" msgstr "" -#: gnu/packages/tex.scm:1350 +#: gnu/packages/tex.scm:1414 msgid "" "The l3kernel bundle provides an implementation of the LaTeX3\n" "programmers’ interface, as a set of packages that run under LaTeX 2e. The\n" @@ -15750,11 +17104,11 @@ msgid "" "that the LaTeX3 conventions can be used with regular LaTeX 2e packages." msgstr "" -#: gnu/packages/tex.scm:1387 +#: gnu/packages/tex.scm:1452 msgid "High-level LaTeX3 concepts" msgstr "" -#: gnu/packages/tex.scm:1389 +#: gnu/packages/tex.scm:1454 msgid "" "This bundle holds prototype implementations of concepts for a LaTeX\n" "designer interface, to be used with the experimental LaTeX kernel as\n" @@ -15771,11 +17125,11 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/tex.scm:1421 +#: gnu/packages/tex.scm:1487 msgid "Advanced font selection in XeLaTeX and LuaLaTeX" msgstr "" -#: gnu/packages/tex.scm:1423 +#: gnu/packages/tex.scm:1489 msgid "" "Fontspec is a package for XeLaTeX and LuaLaTeX. It provides an\n" "automatic and unified interface to feature-rich AAT and OpenType fonts through\n" @@ -15783,22 +17137,22 @@ msgid "" "the l3kernel and xparse bundles from the LaTeX 3 development team." msgstr "" -#: gnu/packages/tex.scm:1458 +#: gnu/packages/tex.scm:1525 msgid "Lua modules for general programming (in the (La)TeX world)" msgstr "" -#: gnu/packages/tex.scm:1460 +#: gnu/packages/tex.scm:1527 msgid "" "Lualibs is a collection of Lua modules useful for general programming.\n" "The bundle is based on Lua modules shipped with ConTeXt, and made available in\n" "this bundle for use independent of ConTeXt." msgstr "" -#: gnu/packages/tex.scm:1479 +#: gnu/packages/tex.scm:1547 msgid "AMS mathematical facilities for LaTeX" msgstr "" -#: gnu/packages/tex.scm:1481 +#: gnu/packages/tex.scm:1549 msgid "" "This is the principal package in the AMS-LaTeX distribution. It adapts\n" "for use in LaTeX most of the mathematical features found in AMS-TeX; it is\n" @@ -15813,11 +17167,11 @@ msgid "" "definitions." msgstr "" -#: gnu/packages/tex.scm:1508 +#: gnu/packages/tex.scm:1577 msgid "AMS document classes for LaTeX" msgstr "" -#: gnu/packages/tex.scm:1510 +#: gnu/packages/tex.scm:1579 msgid "" "This bundle contains three AMS classes: @code{amsartamsart} (for writing\n" "articles for the AMS), @code{amsbookamsbook} (for books) and\n" @@ -15826,11 +17180,11 @@ msgid "" "distribution." msgstr "" -#: gnu/packages/tex.scm:1540 +#: gnu/packages/tex.scm:1610 msgid "Multilingual support for Plain TeX or LaTeX" msgstr "" -#: gnu/packages/tex.scm:1542 +#: gnu/packages/tex.scm:1612 msgid "" "The package manages culturally-determined typographical (and other)\n" "rules, and hyphenation patterns for a wide range of languages. A document may\n" @@ -15841,11 +17195,11 @@ msgid "" "polyglossia package rather than Babel." msgstr "" -#: gnu/packages/tex.scm:1565 +#: gnu/packages/tex.scm:1635 msgid "Babel support for English" msgstr "" -#: gnu/packages/tex.scm:1567 +#: gnu/packages/tex.scm:1637 msgid "" "This package provides the language definition file for support of\n" "English in @code{babel}. Care is taken to select British hyphenation patterns\n" @@ -15853,11 +17207,11 @@ msgid "" "for Canadian and USA text." msgstr "" -#: gnu/packages/tex.scm:1587 +#: gnu/packages/tex.scm:1658 msgid "Support for Cyrillic fonts in LaTeX" msgstr "" -#: gnu/packages/tex.scm:1589 +#: gnu/packages/tex.scm:1660 msgid "" "This bundle of macros files provides macro support (including font\n" "encoding macros) for the use of Cyrillic characters in fonts encoded under the\n" @@ -15865,11 +17219,11 @@ msgid "" "language that is written in a Cyrillic alphabet." msgstr "" -#: gnu/packages/tex.scm:1608 +#: gnu/packages/tex.scm:1680 msgid "Font support for common PostScript fonts" msgstr "" -#: gnu/packages/tex.scm:1610 +#: gnu/packages/tex.scm:1682 msgid "" "The PSNFSS collection includes a set of files that provide a complete\n" "working setup of the LaTeX font selection scheme (NFSS2) for use with common\n" @@ -15880,27 +17234,27 @@ msgid "" "packages." msgstr "" -#: gnu/packages/tex.scm:1695 +#: gnu/packages/tex.scm:1767 msgid "Union of TeX Live packages" msgstr "" -#: gnu/packages/tex.scm:1696 +#: gnu/packages/tex.scm:1768 msgid "" "This package provides a subset of the TeX Live\n" "distribution." msgstr "Ce paquet fournit un sous-ensemble de la distribution TeX Live." -#: gnu/packages/tex.scm:1711 +#: gnu/packages/tex.scm:1783 msgid "" "This is a very limited subset of the TeX Live distribution.\n" "It includes little more than the required set of LaTeX packages." msgstr "" -#: gnu/packages/tex.scm:1728 +#: gnu/packages/tex.scm:1800 msgid "LaTeX-based replacement for BibTeX" msgstr "" -#: gnu/packages/tex.scm:1730 +#: gnu/packages/tex.scm:1802 msgid "" "Amsrefs is a LaTeX package for bibliographies that provides an archival\n" "data format similar to the format of BibTeX database files, but adapted to\n" @@ -15908,11 +17262,11 @@ msgid "" "conjunction with BibTeX or as a replacement for BibTeX." msgstr "" -#: gnu/packages/tex.scm:1757 +#: gnu/packages/tex.scm:1829 msgid "Footnotes for critical editions" msgstr "" -#: gnu/packages/tex.scm:1759 +#: gnu/packages/tex.scm:1831 msgid "" "This package aims to provide a one-stop solution to requirements for\n" "footnotes. It offers: Multiple footnote apparatus superior to that of\n" @@ -15926,11 +17280,11 @@ msgid "" "@code{suffix} packages." msgstr "" -#: gnu/packages/tex.scm:1785 +#: gnu/packages/tex.scm:1857 msgid "Producing 'blind' text for testing" msgstr "" -#: gnu/packages/tex.scm:1787 +#: gnu/packages/tex.scm:1859 msgid "" "The package provides the commands @code{\\blindtext} and\n" "@code{\\Blindtext} for creating \"blind\" text useful in testing new classes\n" @@ -15941,11 +17295,11 @@ msgid "" "ipsum\" text, see the @code{lipsum} package)." msgstr "" -#: gnu/packages/tex.scm:1817 +#: gnu/packages/tex.scm:1889 msgid "German letter DIN style" msgstr "" -#: gnu/packages/tex.scm:1819 +#: gnu/packages/tex.scm:1891 msgid "" "This package implements a document layout for writing letters according\n" "to the rules of DIN (Deutsches Institut für Normung, German standardisation\n" @@ -15957,11 +17311,11 @@ msgid "" "package." msgstr "" -#: gnu/packages/tex.scm:1843 +#: gnu/packages/tex.scm:1915 msgid "Put a grey textual watermark on document pages" msgstr "" -#: gnu/packages/tex.scm:1845 +#: gnu/packages/tex.scm:1917 msgid "" "This package provides a means to add a textual, light grey watermark on\n" "every page or on the first page of a document. Typical usage may consist in\n" @@ -15971,11 +17325,11 @@ msgid "" "on everypage." msgstr "" -#: gnu/packages/tex.scm:1867 +#: gnu/packages/tex.scm:1939 msgid "New interface for environments in LaTeX" msgstr "" -#: gnu/packages/tex.scm:1869 +#: gnu/packages/tex.scm:1941 msgid "" "This package provides the @code{\\collect@@body} command (as in\n" "@code{amsmath}), as well as a @code{\\long} version @code{\\Collect@@Body},\n" @@ -15983,11 +17337,11 @@ msgid "" "define a new author interface to creating new environments." msgstr "" -#: gnu/packages/tex.scm:1889 +#: gnu/packages/tex.scm:1961 msgid "Create equal-widthed parboxes" msgstr "" -#: gnu/packages/tex.scm:1891 +#: gnu/packages/tex.scm:1963 msgid "" "LaTeX users sometimes need to ensure that two or more blocks of text\n" "occupy the same amount of horizontal space on the page. To that end, the\n" @@ -16001,11 +17355,11 @@ msgid "" "also provided." msgstr "" -#: gnu/packages/tex.scm:1925 +#: gnu/packages/tex.scm:1997 msgid "Expanded description environments" msgstr "" -#: gnu/packages/tex.scm:1927 +#: gnu/packages/tex.scm:1999 msgid "" "The package provides additional features for the LaTeX\n" "@code{description} environment, including adjustable left margin. The package\n" @@ -16014,11 +17368,11 @@ msgid "" "@code{enumerate} lists, and numbered lists remain in sequence)." msgstr "" -#: gnu/packages/tex.scm:1960 +#: gnu/packages/tex.scm:2033 msgid "Provide file modification times, and compare them" msgstr "" -#: gnu/packages/tex.scm:1962 +#: gnu/packages/tex.scm:2035 msgid "" "This package provides macros to read and compare the modification dates\n" "of files. The files may be @code{.tex} files, images or other files (as long\n" @@ -16030,11 +17384,11 @@ msgid "" "but non-expandable ones." msgstr "" -#: gnu/packages/tex.scm:1986 +#: gnu/packages/tex.scm:2059 msgid "Conditionals to test which platform is being used" msgstr "" -#: gnu/packages/tex.scm:1988 +#: gnu/packages/tex.scm:2061 msgid "" "This package uses the (La)TeX extension @code{-shell-escape} to\n" "establish whether the document is being processed on a Windows or on a\n" @@ -16045,11 +17399,11 @@ msgid "" "classes of systems." msgstr "" -#: gnu/packages/tex.scm:2010 +#: gnu/packages/tex.scm:2084 msgid "Flexible bibliography support" msgstr "" -#: gnu/packages/tex.scm:2012 +#: gnu/packages/tex.scm:2086 msgid "" "This bundle provides a package that implements both author-year and\n" "numbered references, as well as much detailed of support for other\n" @@ -16059,11 +17413,11 @@ msgid "" "designed from the start to be compatible with @code{natbib}." msgstr "" -#: gnu/packages/tex.scm:2034 +#: gnu/packages/tex.scm:2108 msgid "Replace strings in encapsulated PostScript figures" msgstr "" -#: gnu/packages/tex.scm:2036 +#: gnu/packages/tex.scm:2110 msgid "" "This package allows LaTeX constructions (equations, picture\n" "environments, etc.) to be precisely superimposed over Encapsulated PostScript\n" @@ -16074,11 +17428,11 @@ msgid "" "rotated." msgstr "" -#: gnu/packages/tex.scm:2072 +#: gnu/packages/tex.scm:2146 msgid "Process PostScript graphisc within pdfLaTeX documents" msgstr "" -#: gnu/packages/tex.scm:2074 +#: gnu/packages/tex.scm:2148 msgid "" "This is a package for processing PostScript graphics with @code{psfrag}\n" "labels within pdfLaTeX documents. Every graphic is compiled individually,\n" @@ -16086,11 +17440,11 @@ msgid "" "re-processing." msgstr "" -#: gnu/packages/tex.scm:2097 +#: gnu/packages/tex.scm:2172 msgid "Make overhead slides" msgstr "" -#: gnu/packages/tex.scm:2100 +#: gnu/packages/tex.scm:2175 msgid "" "This package provides a class that produces overhead\n" "slides (transparencies), with many facilities. Seminar is not nowadays\n" @@ -16099,11 +17453,11 @@ msgid "" "21st-century presentation styles." msgstr "" -#: gnu/packages/tex.scm:2132 +#: gnu/packages/tex.scm:2208 msgid "Trim spaces around an argument or within a macro" msgstr "" -#: gnu/packages/tex.scm:2134 +#: gnu/packages/tex.scm:2210 msgid "" "This very short package allows you to expandably remove spaces around a\n" "token list (commands are provided to remove spaces before, spaces after, or\n" @@ -16111,21 +17465,21 @@ msgid "" "space-stripped macros." msgstr "" -#: gnu/packages/tex.scm:2167 +#: gnu/packages/tex.scm:2243 msgid "Captions on more than floats" msgstr "" -#: gnu/packages/tex.scm:2169 +#: gnu/packages/tex.scm:2245 msgid "" "This package defines a command @code{\\captionof} for putting a caption\n" "to something that's not a float." msgstr "" -#: gnu/packages/tex.scm:2200 +#: gnu/packages/tex.scm:2276 msgid "e-TeX tools for LaTeX" msgstr "" -#: gnu/packages/tex.scm:2202 +#: gnu/packages/tex.scm:2278 msgid "" "This package is a toolbox of programming facilities geared primarily\n" "towards LaTeX class and package authors. It provides LaTeX frontends to some\n" @@ -16136,11 +17490,11 @@ msgid "" "of the LaTeX kernel." msgstr "" -#: gnu/packages/tex.scm:2238 +#: gnu/packages/tex.scm:2314 msgid "Seven predefined chapter heading styles" msgstr "" -#: gnu/packages/tex.scm:2240 +#: gnu/packages/tex.scm:2316 msgid "" "This package provides seven predefined chapter heading styles. Each\n" "style can be modified using a set of simple commands. Optionally one can\n" @@ -16148,11 +17502,11 @@ msgid "" "headings." msgstr "" -#: gnu/packages/tex.scm:2273 +#: gnu/packages/tex.scm:2349 msgid "Framed or shaded regions that can break across pages" msgstr "" -#: gnu/packages/tex.scm:2275 +#: gnu/packages/tex.scm:2351 msgid "" "The package creates three environments: @code{framed}, which puts an\n" "ordinary frame box around the region, @code{shaded}, which shades the region,\n" @@ -16163,11 +17517,11 @@ msgid "" "@code{\\MakeFramed} to make your own framed-style environments." msgstr "" -#: gnu/packages/tex.scm:2307 +#: gnu/packages/tex.scm:2383 msgid "Letter document class" msgstr "" -#: gnu/packages/tex.scm:2309 +#: gnu/packages/tex.scm:2385 msgid "" "This package is designed for formatting formless letters in German; it\n" "can also be used for English (by those who can read the documentation). There\n" @@ -16175,21 +17529,21 @@ msgid "" "\"old\" and a \"new\" version of g-brief." msgstr "" -#: gnu/packages/tex.scm:2329 +#: gnu/packages/tex.scm:2405 msgid "Typeset Galois connections" msgstr "" -#: gnu/packages/tex.scm:2331 +#: gnu/packages/tex.scm:2407 msgid "" "The package deals with connections in two-dimensional style, optionally\n" "in colour." msgstr "" -#: gnu/packages/tex.scm:2349 +#: gnu/packages/tex.scm:2425 msgid "Citations in a reader-friendly style" msgstr "" -#: gnu/packages/tex.scm:2351 +#: gnu/packages/tex.scm:2427 msgid "" "The package allows citations in the German style, which is considered by\n" "many to be particularly reader-friendly. The citation provides a small amount\n" @@ -16199,11 +17553,11 @@ msgid "" "BibLaTeX, and is considered experimental." msgstr "" -#: gnu/packages/tex.scm:2373 +#: gnu/packages/tex.scm:2449 msgid "Flexible and complete interface to document dimensions" msgstr "" -#: gnu/packages/tex.scm:2375 +#: gnu/packages/tex.scm:2451 msgid "" "This package provides an easy and flexible user interface to customize\n" "page layout, implementing auto-centering and auto-balancing mechanisms so that\n" @@ -16214,11 +17568,11 @@ msgid "" "ability to communicate the paper size it's set up to the output." msgstr "" -#: gnu/packages/tex.scm:2398 +#: gnu/packages/tex.scm:2474 msgid "Miscellaneous tools by Mark Wooding" msgstr "" -#: gnu/packages/tex.scm:2400 +#: gnu/packages/tex.scm:2476 msgid "" "This collection of tools includes: @code{atsupport} for short commands\n" "starting with @code{@@}, macros to sanitize the OT1 encoding of the\n" @@ -16228,21 +17582,21 @@ msgid "" "array environments; verbatim handling; and syntax diagrams." msgstr "" -#: gnu/packages/tex.scm:2422 +#: gnu/packages/tex.scm:2498 msgid "Alternative to babel for XeLaTeX and LuaLaTeX" msgstr "" -#: gnu/packages/tex.scm:2424 +#: gnu/packages/tex.scm:2500 msgid "" "This package provides a complete Babel replacement for users of LuaLaTeX\n" "and XeLaTeX; it relies on the @code{fontspec} package, version 2.0 at least." msgstr "" -#: gnu/packages/tex.scm:2442 +#: gnu/packages/tex.scm:2518 msgid "Multi-page tables package" msgstr "" -#: gnu/packages/tex.scm:2444 +#: gnu/packages/tex.scm:2520 msgid "" "This package was a predecessor of @code{longtable}; the newer\n" "package (designed on quite different principles) is easier to use and more\n" @@ -16250,11 +17604,11 @@ msgid "" "situations where longtable has problems." msgstr "" -#: gnu/packages/tex.scm:2476 +#: gnu/packages/tex.scm:2553 msgid "TeX macros to handle Texinfo files" msgstr "" -#: gnu/packages/tex.scm:2478 +#: gnu/packages/tex.scm:2555 msgid "" "Texinfo is the preferred format for documentation in the GNU project;\n" "the format may be used to produce online or printed output from a single\n" @@ -16263,11 +17617,11 @@ msgid "" "hypertext linkages in some cases)." msgstr "" -#: gnu/packages/tex.scm:2499 +#: gnu/packages/tex.scm:2576 msgid "Show \"realistic\" quotes in verbatim" msgstr "" -#: gnu/packages/tex.scm:2501 +#: gnu/packages/tex.scm:2578 msgid "" "Typewriter-style fonts are best for program listings, but Computer\n" "Modern Typewriter prints @code{`} and @code{'} as bent opening and closing\n" @@ -16281,22 +17635,22 @@ msgid "" "does not affect @code{\\tt}, @code{\\texttt}, etc." msgstr "" -#: gnu/packages/tex.scm:2539 +#: gnu/packages/tex.scm:2617 msgid "Simple package to set up document margins" msgstr "" -#: gnu/packages/tex.scm:2541 +#: gnu/packages/tex.scm:2619 msgid "" "This is a simple package to set up document margins. This package is\n" "considered obsolete; alternatives are the @code{typearea} package from the\n" "@code{koma-script} bundle, or the @code{geometry} package." msgstr "" -#: gnu/packages/tex.scm:2559 +#: gnu/packages/tex.scm:2638 msgid "Extra control of appendices" msgstr "" -#: gnu/packages/tex.scm:2561 +#: gnu/packages/tex.scm:2640 msgid "" "The appendix package provides various ways of formatting the titles of\n" "appendices. Also (sub)appendices environments are provided that can be used,\n" @@ -16305,11 +17659,11 @@ msgid "" "command." msgstr "" -#: gnu/packages/tex.scm:2581 +#: gnu/packages/tex.scm:2661 msgid "Generate changebars in LaTeX documents" msgstr "" -#: gnu/packages/tex.scm:2583 +#: gnu/packages/tex.scm:2663 msgid "" "Identify areas of text to be marked with changebars with the\n" "@code{\\cbstart} and @code{\\cbend} commands; the bars may be coloured. The\n" @@ -16318,31 +17672,31 @@ msgid "" "drivers, and VTeX and pdfTeX." msgstr "" -#: gnu/packages/tex.scm:2618 +#: gnu/packages/tex.scm:2698 msgid "CMap support for PDF files" msgstr "" -#: gnu/packages/tex.scm:2620 +#: gnu/packages/tex.scm:2700 msgid "" "This package embeds CMap tables into PDF files to make search and\n" "copy-and-paste functions work properly." msgstr "" -#: gnu/packages/tex.scm:2637 +#: gnu/packages/tex.scm:2718 msgid "Add colour to LaTeX tables" msgstr "" -#: gnu/packages/tex.scm:2639 +#: gnu/packages/tex.scm:2720 msgid "" "This package allows rows, columns, and even individual cells in LaTeX\n" "tables to be coloured." msgstr "" -#: gnu/packages/tex.scm:2669 +#: gnu/packages/tex.scm:2751 msgid "Variants of \\fbox and other games with boxes" msgstr "" -#: gnu/packages/tex.scm:2671 +#: gnu/packages/tex.scm:2753 msgid "" "This package provides variants of @code{\\fbox}: @code{\\shadowbox},\n" "@code{\\doublebox}, @code{\\ovalbox}, @code{\\Ovalbox}, with helpful tools for\n" @@ -16350,22 +17704,22 @@ msgid "" "floats, center, flushleft, and flushright, lists, and pages." msgstr "" -#: gnu/packages/tex.scm:2703 +#: gnu/packages/tex.scm:2786 msgid "Extensive control of page headers and footers in LaTeX2e" msgstr "" -#: gnu/packages/tex.scm:2705 +#: gnu/packages/tex.scm:2788 msgid "" "The package provides extensive facilities, both for constructing headers\n" "and footers, and for controlling their use (for example, at times when LaTeX\n" "would automatically change the heading style in use)." msgstr "" -#: gnu/packages/tex.scm:2723 +#: gnu/packages/tex.scm:2807 msgid "Improved interface for floating objects" msgstr "" -#: gnu/packages/tex.scm:2725 +#: gnu/packages/tex.scm:2809 msgid "" "This package improves the interface for defining floating objects such\n" "as figures and tables. It introduces the boxed float, the ruled float and the\n" @@ -16375,11 +17729,11 @@ msgid "" "with @code{\\floatplacement{figure}{H}}." msgstr "" -#: gnu/packages/tex.scm:2746 +#: gnu/packages/tex.scm:2831 msgid "Range of footnote options" msgstr "" -#: gnu/packages/tex.scm:2748 +#: gnu/packages/tex.scm:2833 msgid "" "This is a collection of ways to change the typesetting of footnotes.\n" "The package provides means of changing the layout of the footnotes themselves,\n" @@ -16389,11 +17743,11 @@ msgid "" "footnotes with symbols rather than numbers." msgstr "" -#: gnu/packages/tex.scm:2771 +#: gnu/packages/tex.scm:2857 msgid "Typeset source code listings using LaTeX" msgstr "" -#: gnu/packages/tex.scm:2773 +#: gnu/packages/tex.scm:2859 msgid "" "The package enables the user to typeset programs (programming code)\n" "within LaTeX; the source code is read directly by TeX---no front-end processor\n" @@ -16401,11 +17755,11 @@ msgid "" "styles. Support for @code{hyperref} is provided." msgstr "" -#: gnu/packages/tex.scm:2805 +#: gnu/packages/tex.scm:2892 msgid "Miscellaneous packages by Joerg Knappen" msgstr "" -#: gnu/packages/tex.scm:2807 +#: gnu/packages/tex.scm:2894 msgid "" "This package provides miscellaneous macros by Joerg Knappen, including:\n" "represent counters in greek; Maxwell's non-commutative division;\n" @@ -16417,11 +17771,11 @@ msgid "" "in SGML; use maths minus in text as appropriate; simple Young tableaux." msgstr "" -#: gnu/packages/tex.scm:2880 +#: gnu/packages/tex.scm:2969 msgid "Computer modern fonts in T1 and TS1 encodings" msgstr "" -#: gnu/packages/tex.scm:2882 +#: gnu/packages/tex.scm:2971 msgid "" "The EC fonts are European Computer Modern Fonts, supporting the complete\n" "LaTeX T1 encoding defined at the 1990 TUG conference hold at Cork/Ireland.\n" @@ -16438,11 +17792,11 @@ msgid "" "differs from the EC in a number of particulars." msgstr "" -#: gnu/packages/tex.scm:2961 +#: gnu/packages/tex.scm:3052 msgid "Ralph Smith's Formal Script font" msgstr "" -#: gnu/packages/tex.scm:2963 +#: gnu/packages/tex.scm:3054 msgid "" "The fonts provide uppercase formal script letters for use as symbols in\n" "scientific and mathematical typesetting (in contrast to the informal script\n" @@ -16452,22 +17806,22 @@ msgid "" "one of the packages @code{calrsfs} and @code{mathrsfs}." msgstr "" -#: gnu/packages/tex.scm:2984 +#: gnu/packages/tex.scm:3076 msgid "Add picture commands (or backgrounds) to every page" msgstr "" -#: gnu/packages/tex.scm:2986 +#: gnu/packages/tex.scm:3078 msgid "" "The package adds one or more user commands to LaTeX's @code{shipout}\n" "routine, which may be used to place the output at fixed positions. The\n" "@code{grid} option may be used to find the correct places." msgstr "" -#: gnu/packages/tex.scm:3017 +#: gnu/packages/tex.scm:3110 msgid "Extensions to epic and the LaTeX drawing tools" msgstr "" -#: gnu/packages/tex.scm:3019 +#: gnu/packages/tex.scm:3112 msgid "" "Extensions to @code{epic} and the LaTeX picture drawing environment,\n" "include the drawing of lines at any slope, the drawing of circles in any\n" @@ -16477,11 +17831,11 @@ msgid "" "@code{\\special} commands." msgstr "" -#: gnu/packages/tex.scm:3054 +#: gnu/packages/tex.scm:3147 msgid "Customize basic list environments" msgstr "" -#: gnu/packages/tex.scm:3056 +#: gnu/packages/tex.scm:3149 msgid "" "This package is intended to ease customizing the three basic list\n" "environments: @code{enumerate}, @code{itemize} and @code{description}. It\n" @@ -16490,22 +17844,22 @@ msgid "" "@code{\\begin{itemize}[itemsep=1ex,leftmargin=1cm]}." msgstr "" -#: gnu/packages/tex.scm:3076 +#: gnu/packages/tex.scm:3170 msgid "Create tabular cells spanning multiple rows" msgstr "" -#: gnu/packages/tex.scm:3078 +#: gnu/packages/tex.scm:3172 msgid "" "The package provides tools for creating tabular cells spanning multiple\n" "rows. It has a lot of flexibility, including an option for specifying an\n" "entry at the \"natural\" width of its text." msgstr "" -#: gnu/packages/tex.scm:3109 +#: gnu/packages/tex.scm:3204 msgid "Combine LaTeX commands over included graphics" msgstr "" -#: gnu/packages/tex.scm:3111 +#: gnu/packages/tex.scm:3206 msgid "" "The @code{overpic} environment is a cross between the LaTeX\n" "@code{picture} environment and the @code{\\includegraphics} command of\n" @@ -16514,22 +17868,22 @@ msgid "" "positions; a grid for orientation is available." msgstr "" -#: gnu/packages/tex.scm:3145 +#: gnu/packages/tex.scm:3240 msgid "Layout with zero \\parindent, non-zero \\parskip" msgstr "" -#: gnu/packages/tex.scm:3147 +#: gnu/packages/tex.scm:3242 msgid "" "Simply changing @code{\\parskip} and @code{\\parindent} leaves a layout\n" "that is untidy; this package (though it is no substitute for a properly\n" "designed class) helps alleviate this untidiness." msgstr "" -#: gnu/packages/tex.scm:3165 +#: gnu/packages/tex.scm:3261 msgid "Include PDF documents in LaTeX" msgstr "" -#: gnu/packages/tex.scm:3167 +#: gnu/packages/tex.scm:3263 msgid "" "This package simplifies the inclusion of external multi-page PDF\n" "documents in LaTeX documents. Pages may be freely selected and it is possible\n" @@ -16539,11 +17893,11 @@ msgid "" "use this package to insert PostScript files, in addition to PDF files." msgstr "" -#: gnu/packages/tex.scm:3198 +#: gnu/packages/tex.scm:3295 msgid "St Mary Road symbols for theoretical computer science" msgstr "" -#: gnu/packages/tex.scm:3200 +#: gnu/packages/tex.scm:3297 msgid "" "The fonts were originally distributed as Metafont sources only, but\n" "Adobe Type 1 versions are also now available. Macro support is provided for\n" @@ -16552,11 +17906,11 @@ msgid "" "the whole font." msgstr "" -#: gnu/packages/tex.scm:3220 +#: gnu/packages/tex.scm:3318 msgid "Figures divided into subfigures" msgstr "" -#: gnu/packages/tex.scm:3222 +#: gnu/packages/tex.scm:3320 msgid "" "This (deprecated) package provides support for the manipulation and\n" "reference of small or \"sub\" figures and tables within a single figure or\n" @@ -16569,11 +17923,11 @@ msgid "" "the more recent @code{subcaption} package more satisfactory." msgstr "" -#: gnu/packages/tex.scm:3247 +#: gnu/packages/tex.scm:3345 msgid "Tabular with variable width columns balanced" msgstr "" -#: gnu/packages/tex.scm:3249 +#: gnu/packages/tex.scm:3347 msgid "" "The package defines a @code{tabular*}-like environment, @code{tabulary},\n" "taking a \"total width\" argument as well as the column specifications. The\n" @@ -16584,11 +17938,11 @@ msgid "" "according to the natural width of the widest cell in the column." msgstr "" -#: gnu/packages/tex.scm:3284 +#: gnu/packages/tex.scm:3383 msgid "Tables with captions and notes all the same width" msgstr "" -#: gnu/packages/tex.scm:3286 +#: gnu/packages/tex.scm:3385 msgid "" "This package facilitates tables with titles (captions) and notes. The\n" "title and notes are given a width equal to the body of the table (a\n" @@ -16597,11 +17951,11 @@ msgid "" "environment." msgstr "" -#: gnu/packages/tex.scm:3407 +#: gnu/packages/tex.scm:3506 msgid "Times-like fonts in support of mathematics" msgstr "" -#: gnu/packages/tex.scm:3409 +#: gnu/packages/tex.scm:3508 msgid "" "Txfonts supplies virtual text roman fonts using Adobe Times (or URW\n" "NimbusRomNo9L) with some modified and additional text symbols in the OT1, T1,\n" @@ -16617,11 +17971,26 @@ msgid "" "TeX metrics (VF and TFM files) and macros for use with LaTeX." msgstr "" -#: gnu/packages/tex.scm:3450 +#: gnu/packages/tex.scm:3555 +msgid "Sans-serif typeface for TeX" +msgstr "" + +#: gnu/packages/tex.scm:3556 +msgid "" +"Iwona is a two-element sans-serif typeface. It was created\n" +"as an alternative version of the Kurier typeface, which was designed in 1975\n" +"for a diploma in typeface design at the Warsaw Academy of Fine Arts under the\n" +"supervision of Roman Tomaszewski. Kurier was designed for linotype\n" +"typesetting of newspapers and similar periodicals. The Iwona fonts are an\n" +"alternative version of the Kurier fonts. The difference lies in the absence\n" +"of ink traps which typify the Kurier font." +msgstr "" + +#: gnu/packages/tex.scm:3592 msgid "Select alternative section titles" msgstr "" -#: gnu/packages/tex.scm:3452 +#: gnu/packages/tex.scm:3594 msgid "" "This package provides an interface to sectioning commands for selection\n" "from various title styles, e.g. for marginal titles and to change the font of\n" @@ -16630,11 +17999,11 @@ msgid "" "floats in a page. You may assign headers/footers to individual floats, too." msgstr "" -#: gnu/packages/tex.scm:3473 +#: gnu/packages/tex.scm:3615 msgid "Arbitrary size font selection in LaTeX" msgstr "" -#: gnu/packages/tex.scm:3475 +#: gnu/packages/tex.scm:3617 msgid "" "LaTeX, by default, restricts the sizes at which you can use its default\n" "computer modern fonts, to a fixed set of discrete sizes (effectively, a set\n" @@ -16643,17 +18012,17 @@ msgid "" "fonts (Bakoma, or the versions from BSR/Y&Y, or True Type versions from Kinch,\n" "PCTeX, etc.). In fact, since modern distributions will automatically generate\n" "any bitmap font you might need, @code{type1cm} has wider application than just\n" -"those using scaleable versions of the fonts. Note that the LaTeX distribution\n" +"those using scalable versions of the fonts. Note that the LaTeX distribution\n" "now contains a package @code{fix-cm},f which performs the task of\n" "@code{type1cm}, as well as doing the same job for T1- and TS1-encoded\n" "@code{ec} fonts." msgstr "" -#: gnu/packages/tex.scm:3501 +#: gnu/packages/tex.scm:3644 msgid "Cyrillic fonts that support LaTeX standard encodings" msgstr "" -#: gnu/packages/tex.scm:3503 +#: gnu/packages/tex.scm:3646 msgid "" "The LH fonts address the problem of the wide variety of alphabets that\n" "are written with Cyrillic-style characters. The fonts are the original basis\n" @@ -16666,43 +18035,43 @@ msgid "" "OT2 encoded fonts, CM bright shaped fonts and Concrete shaped fonts." msgstr "" -#: gnu/packages/tex.scm:3540 +#: gnu/packages/tex.scm:3684 msgid "Create scalable illustrations" msgstr "" -#: gnu/packages/tex.scm:3542 +#: gnu/packages/tex.scm:3686 msgid "" "MetaPost uses a language based on that of Metafont to produce precise\n" "technical illustrations. Its output is scalable PostScript or SVG, rather\n" "than the bitmaps Metafont creates." msgstr "" -#: gnu/packages/tex.scm:3561 +#: gnu/packages/tex.scm:3705 msgid "Class for typesetting publications of ACM" msgstr "" -#: gnu/packages/tex.scm:3563 +#: gnu/packages/tex.scm:3707 msgid "" "This package provides a class for typesetting publications of the\n" "Association for Computing Machinery (ACM)." msgstr "" -#: gnu/packages/tex.scm:3594 +#: gnu/packages/tex.scm:3738 msgid "Variable-width minipage" msgstr "" -#: gnu/packages/tex.scm:3596 +#: gnu/packages/tex.scm:3740 msgid "" "The @code{varwidth} environment is superficially similar to\n" "@code{minipage}, but the specified width is just a maximum value — the box may\n" "get a narrower “natural” width." msgstr "" -#: gnu/packages/tex.scm:3614 +#: gnu/packages/tex.scm:3759 msgid "LaTeX support file to use the WASY2 fonts" msgstr "" -#: gnu/packages/tex.scm:3616 +#: gnu/packages/tex.scm:3761 msgid "" "The wasy2WASY2 (Waldi Symbol) font by Roland Waldi provides many glyphs\n" "like male and female symbols and astronomical symbols, as well as the complete\n" @@ -16710,22 +18079,22 @@ msgid "" "to use interface for these symbols." msgstr "" -#: gnu/packages/tex.scm:3649 +#: gnu/packages/tex.scm:3794 msgid "Produces figures which text can flow around" msgstr "" -#: gnu/packages/tex.scm:3651 +#: gnu/packages/tex.scm:3796 msgid "" "This package allows figures or tables to have text wrapped around them.\n" "It does not work in combination with list environments, but can be used in a\n" "@code{parbox} or @code{minipage}, and in two-column format." msgstr "" -#: gnu/packages/tex.scm:3683 +#: gnu/packages/tex.scm:3828 msgid "Extended UTF-8 input encoding support for LaTeX" msgstr "" -#: gnu/packages/tex.scm:3685 +#: gnu/packages/tex.scm:3830 msgid "" "The bundle provides the @code{ucs} package, and @code{utf8x.def},\n" "together with a large number of support files. The @code{utf8x.def}\n" @@ -16738,11 +18107,11 @@ msgid "" "package of that name now exists." msgstr "" -#: gnu/packages/tex.scm:3717 +#: gnu/packages/tex.scm:3862 msgid "Extract bits of a LaTeX source for output" msgstr "" -#: gnu/packages/tex.scm:3719 +#: gnu/packages/tex.scm:3864 msgid "" "The main purpose of the preview package is the extraction of selected\n" "elements from a LaTeX source, like formulas or graphics, into separate\n" @@ -16753,11 +18122,11 @@ msgid "" "files." msgstr "" -#: gnu/packages/tex.scm:3742 +#: gnu/packages/tex.scm:3887 msgid "Expand acronyms at least once" msgstr "" -#: gnu/packages/tex.scm:3744 +#: gnu/packages/tex.scm:3889 msgid "" "This package ensures that all acronyms used in the text are spelled out\n" "in full at least once. It also provides an environment to build a list of\n" @@ -16766,17 +18135,17 @@ msgid "" "e-TeX." msgstr "" -#: gnu/packages/tex.scm:3777 +#: gnu/packages/tex.scm:3923 msgid "TeX extension for direct creation of PDF" msgstr "" -#: gnu/packages/tex.scm:3779 +#: gnu/packages/tex.scm:3925 msgid "" "This package provides an extension of TeX which can be configured to\n" "directly generate PDF documents instead of DVI." msgstr "" -#: gnu/packages/tex.scm:3846 +#: gnu/packages/tex.scm:3992 msgid "" "TeX Live provides a comprehensive TeX document production system.\n" "It includes all the major TeX-related programs, macro packages, and fonts\n" @@ -16786,7 +18155,7 @@ msgid "" "This package contains the complete tree of texmf-dist data." msgstr "" -#: gnu/packages/tex.scm:3908 +#: gnu/packages/tex.scm:4055 msgid "" "TeX Live provides a comprehensive TeX document production system.\n" "It includes all the major TeX-related programs, macro packages, and fonts\n" @@ -16796,11 +18165,11 @@ msgid "" "This package contains the complete TeX Live distribution." msgstr "" -#: gnu/packages/tex.scm:3951 +#: gnu/packages/tex.scm:4098 msgid "Interface to read and parse BibTeX files" msgstr "" -#: gnu/packages/tex.scm:3952 +#: gnu/packages/tex.scm:4099 msgid "" "@code{Text::BibTeX} is a Perl library for reading, parsing,\n" "and processing BibTeX files. @code{Text::BibTeX} gives you access to the data\n" @@ -16809,21 +18178,21 @@ msgid "" "values (strings, macros, or numbers) pasted together." msgstr "" -#: gnu/packages/tex.scm:4034 +#: gnu/packages/tex.scm:4181 msgid "Backend for the BibLaTeX citation management tool" msgstr "" -#: gnu/packages/tex.scm:4035 +#: gnu/packages/tex.scm:4182 msgid "" "Biber is a BibTeX replacement for users of biblatex. Among\n" "other things it comes with full Unicode support." msgstr "" -#: gnu/packages/tex.scm:4059 +#: gnu/packages/tex.scm:4206 msgid "Wrapper for LaTeX and friends" msgstr "" -#: gnu/packages/tex.scm:4061 +#: gnu/packages/tex.scm:4208 msgid "" "Rubber is a program whose purpose is to handle all tasks related to the\n" "compilation of LaTeX documents. This includes compiling the document itself,\n" @@ -16833,32 +18202,45 @@ msgid "" "PDF documents." msgstr "" -#: gnu/packages/tex.scm:4103 +#: gnu/packages/tex.scm:4250 msgid "LaTeX editor" msgstr "Éditeur de LaTeX" -#: gnu/packages/tex.scm:4104 +#: gnu/packages/tex.scm:4251 msgid "" "Texmaker is a program that integrates many tools needed to\n" "develop documents with LaTeX, in a single application." msgstr "" -#: gnu/packages/tex.scm:4143 +#: gnu/packages/tex.scm:4290 msgid "Book on TeX, plain TeX and Eplain" msgstr "" -#: gnu/packages/tex.scm:4144 +#: gnu/packages/tex.scm:4291 msgid "" "@i{TeX for the Impatient} is a ~350 page book on TeX,\n" "plain TeX, and Eplain, originally written by Paul Abrahams, Kathryn Hargreaves,\n" "and Karl Berry." msgstr "" -#: gnu/packages/texinfo.scm:56 +#: gnu/packages/tex.scm:4375 +msgid "Document preparation system with GUI" +msgstr "" + +#: gnu/packages/tex.scm:4376 +msgid "" +"LyX is a document preparation system. It excels at letting\n" +"you create complex technical and scientific articles with mathematics,\n" +"cross-references, bibliographies, indexes, etc. It is very good for working\n" +"with documents of any length in which the usual processing abilities are\n" +"required: automatic sectioning and pagination, spell checking and so forth." +msgstr "" + +#: gnu/packages/texinfo.scm:54 msgid "The GNU documentation format" msgstr "Le format de documentation de GNU" -#: gnu/packages/texinfo.scm:58 +#: gnu/packages/texinfo.scm:56 msgid "" "Texinfo is the official documentation format of the GNU project. It\n" "uses a single source file using explicit commands to produce a final document\n" @@ -16868,15 +18250,15 @@ msgid "" "is on expressing the content semantically, avoiding physical markup commands." msgstr "" -#: gnu/packages/texinfo.scm:139 +#: gnu/packages/texinfo.scm:124 msgid "Standalone Info documentation reader" msgstr "" -#: gnu/packages/texinfo.scm:169 +#: gnu/packages/texinfo.scm:156 msgid "Convert Texinfo to HTML" msgstr "" -#: gnu/packages/texinfo.scm:171 +#: gnu/packages/texinfo.scm:158 msgid "" "Texi2HTML is a Perl script which converts Texinfo source files to HTML\n" "output. It now supports many advanced features, such as internationalization\n" @@ -16891,21 +18273,21 @@ msgid "" "Texi2HTML." msgstr "" -#: gnu/packages/textutils.scm:76 +#: gnu/packages/textutils.scm:77 msgid "DOS/Mac to Unix and vice versa text file format converter" msgstr "" -#: gnu/packages/textutils.scm:78 +#: gnu/packages/textutils.scm:79 msgid "" "dos2unix is a tool to convert line breaks in a text file from Unix format\n" "to DOS format and vice versa." msgstr "" -#: gnu/packages/textutils.scm:111 +#: gnu/packages/textutils.scm:104 msgid "Text encoding converter" msgstr "" -#: gnu/packages/textutils.scm:112 +#: gnu/packages/textutils.scm:105 msgid "" "The Recode library converts files between character sets and\n" "usages. It recognises or produces over 200 different character sets (or about\n" @@ -16915,61 +18297,61 @@ msgid "" "handy front-end to the library." msgstr "" -#: gnu/packages/textutils.scm:140 +#: gnu/packages/textutils.scm:129 msgid "Text encoding detection tool" msgstr "" -#: gnu/packages/textutils.scm:141 +#: gnu/packages/textutils.scm:130 msgid "" "Enca (Extremely Naive Charset Analyser) consists of libenca,\n" "an encoding detection library, and enca, a command line frontend, integrating\n" "libenca and several charset conversion libraries and tools." msgstr "" -#: gnu/packages/textutils.scm:191 +#: gnu/packages/textutils.scm:180 msgid "C library for processing UTF-8 Unicode data" msgstr "" -#: gnu/packages/textutils.scm:192 +#: gnu/packages/textutils.scm:181 msgid "" "utf8proc is a small C library that provides Unicode\n" "normalization, case-folding, and other operations for data in the UTF-8\n" "encoding, supporting Unicode version 9.0.0." msgstr "" -#: gnu/packages/textutils.scm:220 +#: gnu/packages/textutils.scm:209 msgid "Gordon's text utils library" msgstr "" -#: gnu/packages/textutils.scm:222 +#: gnu/packages/textutils.scm:211 msgid "" "libgtextutils is a text utilities library used by the fastx toolkit from\n" "the Hannon Lab." msgstr "" -#: gnu/packages/textutils.scm:254 +#: gnu/packages/textutils.scm:243 msgid "C++ hash functions for strings" msgstr "" -#: gnu/packages/textutils.scm:256 +#: gnu/packages/textutils.scm:245 msgid "" "CityHash provides hash functions for strings. The functions mix the\n" "input bits thoroughly but are not suitable for cryptography." msgstr "" -#: gnu/packages/textutils.scm:294 +#: gnu/packages/textutils.scm:283 msgid "String library with very low memory overhead" msgstr "" -#: gnu/packages/textutils.scm:296 +#: gnu/packages/textutils.scm:285 msgid "Ustr is a string library for C with very low memory overhead." msgstr "" -#: gnu/packages/textutils.scm:317 +#: gnu/packages/textutils.scm:306 msgid "C/C++ configuration file library" msgstr "" -#: gnu/packages/textutils.scm:319 +#: gnu/packages/textutils.scm:308 msgid "" "Libconfig is a simple library for manipulating structured configuration\n" "files. This file format is more compact and more readable than XML. And\n" @@ -16977,11 +18359,11 @@ msgid "" "application code." msgstr "" -#: gnu/packages/textutils.scm:339 +#: gnu/packages/textutils.scm:328 msgid "Probabilistic fast file fingerprinting tool" msgstr "" -#: gnu/packages/textutils.scm:341 +#: gnu/packages/textutils.scm:330 msgid "" "pfff is a tool for calculating a compact digital fingerprint of a file\n" "by sampling randomly from the file instead of reading it in full.\n" @@ -16990,22 +18372,22 @@ msgid "" "as existing hashing techniques, with provably negligible risk of collisions." msgstr "" -#: gnu/packages/textutils.scm:362 +#: gnu/packages/textutils.scm:351 msgid "Regular expression library" msgstr "Bibliothèque d'expressions régulières" -#: gnu/packages/textutils.scm:363 +#: gnu/packages/textutils.scm:352 msgid "" "Oniguruma is a regular expressions library. The special\n" "characteristic of this library is that different character encoding for every\n" "regular expression object can be specified." msgstr "" -#: gnu/packages/textutils.scm:396 +#: gnu/packages/textutils.scm:392 msgid "Microsoft Word document reader" msgstr "" -#: gnu/packages/textutils.scm:397 +#: gnu/packages/textutils.scm:393 msgid "" "Antiword is an application for displaying Microsoft Word\n" "documents. It can also convert the document to PostScript or XML. Only\n" @@ -17015,11 +18397,11 @@ msgid "" "runs Word\"." msgstr "" -#: gnu/packages/textutils.scm:430 +#: gnu/packages/textutils.scm:426 msgid "MS-Word to TeX or plain text converter" msgstr "" -#: gnu/packages/textutils.scm:431 +#: gnu/packages/textutils.scm:427 msgid "" "@command{catdoc} extracts text from MS-Word files, trying to\n" "preserve as many special printable characters as possible. It supports\n" @@ -17035,21 +18417,21 @@ msgid "" "@command{catppt}, which extracts data from PowerPoint presentations." msgstr "" -#: gnu/packages/textutils.scm:479 +#: gnu/packages/textutils.scm:468 msgid "Portable C++ library for handling UTF-8" msgstr "" -#: gnu/packages/textutils.scm:480 +#: gnu/packages/textutils.scm:469 msgid "" "UTF8-CPP is a C++ library for handling UTF-8 encoded text\n" "in a portable way." msgstr "" -#: gnu/packages/textutils.scm:546 +#: gnu/packages/textutils.scm:537 msgid "Bayesian text and email classifier" msgstr "" -#: gnu/packages/textutils.scm:548 +#: gnu/packages/textutils.scm:539 msgid "" "dbacl is a fast Bayesian text and email classifier. It builds a variety\n" "of language models using maximum entropy (minimum divergence) principles, and\n" @@ -17057,19 +18439,19 @@ msgid "" "categories." msgstr "" -#: gnu/packages/textutils.scm:590 +#: gnu/packages/textutils.scm:581 msgid "Configuration file parser library" msgstr "" -#: gnu/packages/textutils.scm:592 +#: gnu/packages/textutils.scm:583 msgid "C library for creating and parsing configuration files." msgstr "" -#: gnu/packages/textutils.scm:620 +#: gnu/packages/textutils.scm:611 msgid "Syntax highlighting text component for Java Swing" msgstr "" -#: gnu/packages/textutils.scm:621 +#: gnu/packages/textutils.scm:612 msgid "" "RSyntaxTextArea is a syntax highlighting, code folding text\n" "component for Java Swing. It extends @code{JTextComponent} so it integrates\n" @@ -17078,53 +18460,63 @@ msgid "" "source code." msgstr "" -#: gnu/packages/textutils.scm:658 +#: gnu/packages/textutils.scm:650 msgid "Fast implementation of the edit distance (Levenshtein distance)" msgstr "" -#: gnu/packages/textutils.scm:660 +#: gnu/packages/textutils.scm:652 msgid "" "This library simply implements Levenshtein distance algorithm with C++\n" "and Cython." msgstr "" -#: gnu/packages/version-control.scm:121 +#: gnu/packages/textutils.scm:672 +msgid "@code{runewidth} provides Go functions to work with string widths" +msgstr "" + +#: gnu/packages/textutils.scm:674 +msgid "" +"The @code{runewidth} library provides Go functions for padding,\n" +"measuring and checking the width of strings, with support east asian text." +msgstr "" + +#: gnu/packages/version-control.scm:135 msgid "Version control system supporting both distributed and centralized workflows" msgstr "" -#: gnu/packages/version-control.scm:123 +#: gnu/packages/version-control.scm:137 msgid "" "GNU Bazaar is a version control system that allows you to record\n" "changes to project files over time. It supports both a distributed workflow\n" "as well as the classic centralized workflow." msgstr "" -#: gnu/packages/version-control.scm:354 +#: gnu/packages/version-control.scm:384 msgid "Distributed version control system" msgstr "" -#: gnu/packages/version-control.scm:356 +#: gnu/packages/version-control.scm:386 msgid "" "Git is a free distributed version control system designed to handle\n" "everything from small to very large projects with speed and efficiency." msgstr "" -#: gnu/packages/version-control.scm:402 +#: gnu/packages/version-control.scm:438 msgid "Library providing Git core methods" msgstr "" -#: gnu/packages/version-control.scm:404 +#: gnu/packages/version-control.scm:440 msgid "" "Libgit2 is a portable, pure C implementation of the Git core methods\n" "provided as a re-entrant linkable library with a solid API, allowing you to\n" "write native speed custom Git applications in any language with bindings." msgstr "" -#: gnu/packages/version-control.scm:440 +#: gnu/packages/version-control.scm:476 msgid "Transparent encryption of files in a git repository" msgstr "" -#: gnu/packages/version-control.scm:441 +#: gnu/packages/version-control.scm:477 msgid "" "git-crypt enables transparent encryption and decryption of\n" "files in a git repository. Files which you choose to protect are encrypted when\n" @@ -17136,11 +18528,11 @@ msgid "" "to lock down your entire repository." msgstr "" -#: gnu/packages/version-control.scm:476 +#: gnu/packages/version-control.scm:512 msgid "Whole remote repository encryption" msgstr "" -#: gnu/packages/version-control.scm:477 +#: gnu/packages/version-control.scm:513 msgid "" "git-remote-gcrypt is a Git remote helper to push and pull from\n" "repositories encrypted with GnuPG. It works with the standard Git transports,\n" @@ -17159,31 +18551,58 @@ msgid "" "collaboration using typical untrusted file hosts or services." msgstr "" -#: gnu/packages/version-control.scm:556 +#: gnu/packages/version-control.scm:637 msgid "Web frontend for git repositories" msgstr "" -#: gnu/packages/version-control.scm:558 +#: gnu/packages/version-control.scm:639 msgid "" "CGit is an attempt to create a fast web interface for the Git SCM, using\n" "a built-in cache to decrease server I/O pressure." msgstr "" -#: gnu/packages/version-control.scm:587 +#: gnu/packages/version-control.scm:668 msgid "Copy directory to the gh-pages branch" msgstr "" -#: gnu/packages/version-control.scm:588 +#: gnu/packages/version-control.scm:669 msgid "" "Script that copies a directory to the gh-pages branch (by\n" "default) of the repository." msgstr "" -#: gnu/packages/version-control.scm:633 +#: gnu/packages/version-control.scm:727 +msgid "Python implementation of the Git object database" +msgstr "Implémentation Python de la base de données d'objets Git" + +#: gnu/packages/version-control.scm:729 +msgid "" +"GitDB allows you to access @dfn{bare} Git repositories for reading and\n" +"writing. It aims at allowing full access to loose objects as well as packs\n" +"with performance and scalability in mind. It operates exclusively on streams,\n" +"allowing to handle large objects with a small memory footprint." +msgstr "" + +#: gnu/packages/version-control.scm:768 +msgid "Python library for interacting with Git repositories" +msgstr "Bibliothèque Python pour interagir avec des dépôts Git" + +#: gnu/packages/version-control.scm:770 +msgid "" +"GitPython is a python library used to interact with Git repositories,\n" +"high-level like git-porcelain, or low-level like git-plumbing.\n" +"\n" +"It provides abstractions of Git objects for easy access of repository data,\n" +"and additionally allows you to access the Git repository more directly using\n" +"either a pure Python implementation, or the faster, but more resource intensive\n" +"@command{git} command implementation." +msgstr "" + +#: gnu/packages/version-control.scm:810 msgid "Command-line flags library for shell scripts" msgstr "" -#: gnu/packages/version-control.scm:635 +#: gnu/packages/version-control.scm:812 msgid "" "Shell Flags (shFlags) is a library written to greatly simplify the\n" "handling of command-line flags in Bourne based Unix shell scripts (bash, dash,\n" @@ -17194,11 +18613,11 @@ msgid "" "will work." msgstr "" -#: gnu/packages/version-control.scm:678 +#: gnu/packages/version-control.scm:856 msgid "Git extensions for Vincent Driessen's branching model" msgstr "" -#: gnu/packages/version-control.scm:680 +#: gnu/packages/version-control.scm:858 msgid "" "Vincent Driessen's branching model is a git branching and release\n" "management strategy that helps developers keep track of features, hotfixes,\n" @@ -17207,11 +18626,11 @@ msgid "" "lot easier." msgstr "" -#: gnu/packages/version-control.scm:713 +#: gnu/packages/version-control.scm:891 msgid "Stacked Git" msgstr "" -#: gnu/packages/version-control.scm:715 +#: gnu/packages/version-control.scm:893 msgid "" "StGit is a command-line application that provides functionality similar\n" "to Quilt (i.e., pushing/popping patches to/from a stack), but using Git\n" @@ -17220,11 +18639,11 @@ msgid "" "manipulate them in various ways." msgstr "" -#: gnu/packages/version-control.scm:751 +#: gnu/packages/version-control.scm:929 msgid "Version control system for @code{$HOME}" msgstr "" -#: gnu/packages/version-control.scm:753 +#: gnu/packages/version-control.scm:931 msgid "" "vcsh version-controls configuration files in several Git repositories,\n" "all in one single directory. They all maintain their working trees without\n" @@ -17233,43 +18652,43 @@ msgid "" "though this can be overridden." msgstr "" -#: gnu/packages/version-control.scm:788 +#: gnu/packages/version-control.scm:967 msgid "Run a command over a sequence of commits" msgstr "" -#: gnu/packages/version-control.scm:790 +#: gnu/packages/version-control.scm:969 msgid "" "git-test-sequence is similar to an automated git bisect except it’s\n" "linear. It will test every change between two points in the DAG. It will\n" "also walk each side of a merge and test those changes individually." msgstr "" -#: gnu/packages/version-control.scm:851 +#: gnu/packages/version-control.scm:1031 msgid "Git access control layer" msgstr "" -#: gnu/packages/version-control.scm:853 +#: gnu/packages/version-control.scm:1033 msgid "" "Gitolite is an access control layer on top of Git, providing fine access\n" "control to Git repositories." msgstr "" -#: gnu/packages/version-control.scm:877 +#: gnu/packages/version-control.scm:1057 msgid "Decentralized version control system" msgstr "" -#: gnu/packages/version-control.scm:879 +#: gnu/packages/version-control.scm:1059 msgid "" "Mercurial is a free, distributed source control management tool.\n" "It efficiently handles projects of any size\n" "and offers an easy and intuitive interface." msgstr "" -#: gnu/packages/version-control.scm:913 +#: gnu/packages/version-control.scm:1093 msgid "HTTP and WebDAV client library" msgstr "" -#: gnu/packages/version-control.scm:915 +#: gnu/packages/version-control.scm:1095 msgid "" "Neon is an HTTP and WebDAV client library, with a C interface and the\n" "following features:\n" @@ -17291,11 +18710,11 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/version-control.scm:999 +#: gnu/packages/version-control.scm:1184 msgid "Revision control system" msgstr "" -#: gnu/packages/version-control.scm:1001 +#: gnu/packages/version-control.scm:1186 msgid "" "Subversion exists to be universally recognized and adopted as a\n" "centralized version control system characterized by its\n" @@ -17304,11 +18723,11 @@ msgid "" "projects, from individuals to large-scale enterprise operations." msgstr "" -#: gnu/packages/version-control.scm:1023 +#: gnu/packages/version-control.scm:1208 msgid "Per-file local revision control system" msgstr "" -#: gnu/packages/version-control.scm:1025 +#: gnu/packages/version-control.scm:1210 msgid "" "RCS is the original Revision Control System. It works on a\n" "file-by-file basis, in contrast to subsequent version control systems such as\n" @@ -17317,11 +18736,11 @@ msgid "" "machine." msgstr "" -#: gnu/packages/version-control.scm:1053 +#: gnu/packages/version-control.scm:1238 msgid "Historical centralized version control system" msgstr "" -#: gnu/packages/version-control.scm:1055 +#: gnu/packages/version-control.scm:1240 msgid "" "CVS is a version control system, an important component of Source\n" "Configuration Management (SCM). Using it, you can record the history of\n" @@ -17329,11 +18748,11 @@ msgid "" "RCS, PRCS, and Aegis packages." msgstr "" -#: gnu/packages/version-control.scm:1096 +#: gnu/packages/version-control.scm:1281 msgid "Export an RCS or CVS history as a fast-import stream" msgstr "" -#: gnu/packages/version-control.scm:1097 +#: gnu/packages/version-control.scm:1282 msgid "" "This program analyzes a collection of RCS files in a CVS\n" "repository (or outside of one) and, when possible, emits an equivalent history\n" @@ -17346,11 +18765,11 @@ msgid "" "masters from remote CVS hosts." msgstr "" -#: gnu/packages/version-control.scm:1124 +#: gnu/packages/version-control.scm:1309 msgid "Version-control-agnostic ChangeLog diff and commit tool" msgstr "" -#: gnu/packages/version-control.scm:1126 +#: gnu/packages/version-control.scm:1311 msgid "" "The vc-dwim package contains two tools, \"vc-dwim\" and \"vc-chlog\".\n" "vc-dwim is a tool that simplifies the task of maintaining a ChangeLog and\n" @@ -17360,33 +18779,33 @@ msgid "" "standards-compliant ChangeLog entries based on the changes that it detects." msgstr "" -#: gnu/packages/version-control.scm:1151 +#: gnu/packages/version-control.scm:1336 msgid "Make histograms from the output of @command{diff}" msgstr "" -#: gnu/packages/version-control.scm:1153 +#: gnu/packages/version-control.scm:1338 msgid "" "Diffstat reads the output of @command{diff} and displays a histogram of\n" "the insertions, deletions, and modifications per file. It is useful for\n" "reviewing large, complex patch files." msgstr "" -#: gnu/packages/version-control.scm:1192 +#: gnu/packages/version-control.scm:1377 msgid "File-based version control like SCCS" msgstr "" -#: gnu/packages/version-control.scm:1193 +#: gnu/packages/version-control.scm:1378 msgid "" "GNU CSSC provides a replacement for the legacy Unix source\n" "code control system SCCS. This allows old code still under that system to be\n" "accessed and migrated on modern systems." msgstr "" -#: gnu/packages/version-control.scm:1272 +#: gnu/packages/version-control.scm:1457 msgid "Project change supervisor" msgstr "" -#: gnu/packages/version-control.scm:1273 +#: gnu/packages/version-control.scm:1458 msgid "" "Aegis is a project change supervisor, and performs some of\n" "the Software Configuration Management needed in a CASE environment. Aegis\n" @@ -17397,11 +18816,11 @@ msgid "" "any project with more than one developer, is one of Aegis's major functions." msgstr "" -#: gnu/packages/version-control.scm:1322 +#: gnu/packages/version-control.scm:1532 msgid "Edit version-control repository history" msgstr "" -#: gnu/packages/version-control.scm:1323 +#: gnu/packages/version-control.scm:1533 msgid "" "Reposurgeon enables risky operations that version-control\n" "systems don't want to let you do, such as editing past comments and metadata\n" @@ -17412,32 +18831,32 @@ msgid "" "from Subversion to any supported Distributed Version Control System (DVCS)." msgstr "" -#: gnu/packages/version-control.scm:1362 +#: gnu/packages/version-control.scm:1572 msgid "Ncurses-based text user interface for Git" msgstr "" -#: gnu/packages/version-control.scm:1364 +#: gnu/packages/version-control.scm:1574 msgid "" "Tig is an ncurses text user interface for Git, primarily intended as\n" "a history browser. It can also stage hunks for commit, or colorize the\n" "output of the 'git' command." msgstr "" -#: gnu/packages/version-control.scm:1390 +#: gnu/packages/version-control.scm:1595 msgid "Print the modification time of the latest file" msgstr "" -#: gnu/packages/version-control.scm:1392 +#: gnu/packages/version-control.scm:1597 msgid "" "Recursively find the newest file in a file tree and print its\n" "modification time." msgstr "" -#: gnu/packages/version-control.scm:1417 +#: gnu/packages/version-control.scm:1623 msgid "Multiple repository management tool" msgstr "" -#: gnu/packages/version-control.scm:1419 +#: gnu/packages/version-control.scm:1625 msgid "" "Myrepos provides the @code{mr} command, which maps an operation (e.g.,\n" "fetching updates) over a collection of version control repositories. It\n" @@ -17445,42 +18864,42 @@ msgid "" "Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity." msgstr "" -#: gnu/packages/version-control.scm:1449 +#: gnu/packages/version-control.scm:1655 msgid "Use hubic as a git-annex remote" msgstr "" -#: gnu/packages/version-control.scm:1451 +#: gnu/packages/version-control.scm:1657 msgid "" "This package allows you to use your hubic account as a \"special\n" "repository\" with git-annex." msgstr "" -#: gnu/packages/version-control.scm:1503 +#: gnu/packages/version-control.scm:1710 msgid "Software configuration management system" msgstr "Système de gestion de configuration logicielle" -#: gnu/packages/version-control.scm:1505 +#: gnu/packages/version-control.scm:1712 msgid "" "Fossil is a distributed source control management system which supports\n" "access and administration over HTTP CGI or via a built-in HTTP server. It has\n" "a built-in wiki, built-in file browsing, built-in tickets system, etc." msgstr "" -#: gnu/packages/version-control.scm:1533 +#: gnu/packages/version-control.scm:1740 msgid "Static git page generator" msgstr "" -#: gnu/packages/version-control.scm:1534 +#: gnu/packages/version-control.scm:1741 msgid "" "Stagit creates static pages for git repositories, the results can\n" "be served with a HTTP file server of your choice." msgstr "" -#: gnu/packages/version-control.scm:1622 +#: gnu/packages/version-control.scm:1827 msgid "Distributed Revision Control System" msgstr "" -#: gnu/packages/version-control.scm:1624 +#: gnu/packages/version-control.scm:1829 msgid "" "Darcs is a revision control system. It is:\n" "\n" @@ -17497,22 +18916,61 @@ msgid "" "@end enumerate" msgstr "" -#: gnu/packages/version-control.scm:1676 +#: gnu/packages/version-control.scm:1881 msgid "Java library implementing the Git version control system" msgstr "" -#: gnu/packages/version-control.scm:1677 +#: gnu/packages/version-control.scm:1882 msgid "" "JGit is a lightweight, pure Java library implementing the\n" "Git version control system, providing repository access routines, support for\n" "network protocols, and core version control algorithms." msgstr "" -#: gnu/packages/virtualization.scm:177 +#: gnu/packages/version-control.scm:1949 +msgid "3D visualisation tool for source control repositories" +msgstr "" + +#: gnu/packages/version-control.scm:1950 +msgid "" +"@code{gource} provides a software version control\n" +"visualization. The repository is displayed as a tree where the root of the\n" +"repository is the centre, directories are branches and files are leaves.\n" +"Contributors to the source code appear and disappear as they contribute to\n" +"specific files and directories." +msgstr "" + +#: gnu/packages/version-control.scm:1996 +msgid "Simple revision control" +msgstr "Contrôle de version simple" + +#: gnu/packages/version-control.scm:1999 +#, scheme-format +msgid "" +"SRC (or src) is simple revision control, a version-control system for\n" +"single-file projects by solo developers and authors. It modernizes the\n" +"venerable RCS, hence the anagrammatic acronym. The design is tuned for use\n" +"cases like all those little scripts in your @file{~/bin} directory, or a\n" +"directory full of HOWTOs." +msgstr "" + +#: gnu/packages/version-control.scm:2125 +msgid "Manage files with Git, without checking in their contents" +msgstr "" + +#: gnu/packages/version-control.scm:2126 +msgid "" +"This package allows managing files with Git, without\n" +"checking the file contents into Git. It can store files in many places,\n" +"such as local hard drives and cloud storage services. It can also be\n" +"used to keep a folder in sync between computers." +msgstr "" + +#: gnu/packages/virtualization.scm:214 msgid "Machine emulator and virtualizer" msgstr "" -#: gnu/packages/virtualization.scm:179 +#: gnu/packages/virtualization.scm:216 msgid "" "QEMU is a generic machine emulator and virtualizer.\n" "\n" @@ -17527,15 +18985,15 @@ msgid "" "server and embedded PowerPC, and S390 guests." msgstr "" -#: gnu/packages/virtualization.scm:201 +#: gnu/packages/virtualization.scm:238 msgid "Machine emulator and virtualizer (without GUI)" msgstr "" -#: gnu/packages/virtualization.scm:268 +#: gnu/packages/virtualization.scm:330 msgid "Operating system information database" msgstr "" -#: gnu/packages/virtualization.scm:269 +#: gnu/packages/virtualization.scm:331 msgid "" "libosinfo is a GObject based library API for managing\n" "information about operating systems, hypervisors and the (virtual) hardware\n" @@ -17545,22 +19003,22 @@ msgid "" "all common programming languages. Vala bindings are also provided." msgstr "" -#: gnu/packages/virtualization.scm:317 +#: gnu/packages/virtualization.scm:379 msgid "Linux container tools" msgstr "" -#: gnu/packages/virtualization.scm:320 +#: gnu/packages/virtualization.scm:382 msgid "" "LXC is a userspace interface for the Linux kernel containment features.\n" "Through a powerful API and simple tools, it lets Linux users easily create and\n" "manage system or application containers." msgstr "" -#: gnu/packages/virtualization.scm:404 +#: gnu/packages/virtualization.scm:465 msgid "Simple API for virtualization" msgstr "" -#: gnu/packages/virtualization.scm:405 +#: gnu/packages/virtualization.scm:466 msgid "" "Libvirt is a C toolkit to interact with the virtualization\n" "capabilities of recent versions of Linux. The library aims at providing long\n" @@ -17568,11 +19026,11 @@ msgid "" "to integrate other virtualization mechanisms if needed." msgstr "" -#: gnu/packages/virtualization.scm:446 +#: gnu/packages/virtualization.scm:507 msgid "GLib wrapper around libvirt" msgstr "" -#: gnu/packages/virtualization.scm:447 +#: gnu/packages/virtualization.scm:508 msgid "" "libvirt-glib wraps the libvirt library to provide a\n" "high-level object-oriented API better suited for glib-based applications, via\n" @@ -17585,21 +19043,21 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/virtualization.scm:489 +#: gnu/packages/virtualization.scm:550 msgid "Python bindings to libvirt" msgstr "" -#: gnu/packages/virtualization.scm:490 +#: gnu/packages/virtualization.scm:551 msgid "" "This package provides Python bindings to the libvirt\n" "virtualization library." msgstr "" -#: gnu/packages/virtualization.scm:585 +#: gnu/packages/virtualization.scm:646 msgid "Manage virtual machines" msgstr "Gestion de machines virtuelles" -#: gnu/packages/virtualization.scm:587 +#: gnu/packages/virtualization.scm:648 msgid "" "The virt-manager application is a desktop user interface for managing\n" "virtual machines through libvirt. It primarily targets KVM VMs, but also\n" @@ -17607,11 +19065,11 @@ msgid "" "domains, their live performance and resource utilization statistics." msgstr "" -#: gnu/packages/virtualization.scm:677 +#: gnu/packages/virtualization.scm:738 msgid "Checkpoint and restore in user space" msgstr "" -#: gnu/packages/virtualization.scm:678 +#: gnu/packages/virtualization.scm:739 msgid "" "Using this tool, you can freeze a running application (or\n" "part of it) and checkpoint it to a hard drive as a collection of files. You\n" @@ -17620,22 +19078,93 @@ msgid "" "mainly implemented in user space." msgstr "" -#: gnu/packages/webkit.scm:134 +#: gnu/packages/virtualization.scm:764 +msgid "Backup and restore QEMU machines" +msgstr "" + +#: gnu/packages/virtualization.scm:765 +msgid "" +"qmpbackup is designed to create and restore full and\n" +"incremental backups of running QEMU virtual machines via QMP, the QEMU\n" +"Machine Protocol." +msgstr "" + +#: gnu/packages/virtualization.scm:806 +msgid "KVM Frame Relay (KVMFR) implementation" +msgstr "" + +#: gnu/packages/virtualization.scm:807 +msgid "" +"Looking Glass allows the use of a KVM (Kernel-based Virtual\n" +"Machine) configured for VGA PCI Pass-through without an attached physical\n" +"monitor, keyboard or mouse. It displays the VM's rendered contents on your main\n" +"monitor/GPU." +msgstr "" + +#: gnu/packages/virtualization.scm:862 +msgid "Open container initiative runtime" +msgstr "" + +#: gnu/packages/virtualization.scm:865 +msgid "" +"@command{runc} is a command line client for running applications\n" +"packaged according to the\n" +"@uref{https://github.com/opencontainers/runtime-spec/blob/master/spec.md, Open\n" +"Container Initiative (OCI) format} and is a compliant implementation of the\n" +"Open Container Initiative specification." +msgstr "" + +#: gnu/packages/virtualization.scm:911 +msgid "Tool for modifying Open Container images" +msgstr "Outil de modification d'image Open Container" + +#: gnu/packages/virtualization.scm:913 +msgid "" +"@command{umoci} is a tool that allows for high-level modification of an\n" +"Open Container Initiative (OCI) image layout and its tagged images." +msgstr "" + +#: gnu/packages/virtualization.scm:958 +msgid "Interact with container images and container image registries" +msgstr "" + +#: gnu/packages/virtualization.scm:960 +msgid "" +"@command{skopeo} is a command line utility providing various operations\n" +"with container images and container image registries. It can:\n" +"@enumerate\n" +"\n" +"@item Copy container images between various containers image stores,\n" +"converting them as necessary.\n" +"\n" +"@item Convert a Docker schema 2 or schema 1 container image to an OCI image.\n" +"\n" +"@item Inspect a repository on a container registry without needlessly pulling\n" +"the image.\n" +"\n" +"@item Sign and verify container images.\n" +"\n" +"@item Delete container images from a remote container registry.\n" +"\n" +"@end enumerate" +msgstr "" + +#: gnu/packages/webkit.scm:141 msgid "Web content engine for GTK+" msgstr "" -#: gnu/packages/webkit.scm:136 +#: gnu/packages/webkit.scm:143 msgid "" "WebKitGTK+ is a full-featured port of the WebKit rendering engine,\n" "suitable for projects requiring any kind of web integration, from hybrid\n" "HTML/CSS applications to full-fledged web browsers." msgstr "" -#: gnu/packages/web.scm:136 +#: gnu/packages/web.scm:146 msgid "Featureful HTTP server" msgstr "" -#: gnu/packages/web.scm:138 +#: gnu/packages/web.scm:148 msgid "" "The Apache HTTP Server Project is a collaborative software development\n" "effort aimed at creating a robust, commercial-grade, featureful, and\n" @@ -17645,117 +19174,129 @@ msgid "" "and its related documentation." msgstr "" -#: gnu/packages/web.scm:226 +#: gnu/packages/web.scm:180 +msgid "Apache HTTPD module for Python WSGI applications" +msgstr "" + +#: gnu/packages/web.scm:182 +msgid "" +"The mod_wsgi module for the Apache HTTPD Server adds support for running\n" +"applications that support the Python @acronym{WSGI, Web Server Gateway\n" +"Interface} specification." +msgstr "" + +#: gnu/packages/web.scm:269 msgid "HTTP and reverse proxy server" msgstr "" -#: gnu/packages/web.scm:228 +#: gnu/packages/web.scm:271 msgid "" "Nginx (\"engine X\") is a high-performance web and reverse proxy server\n" -"created by Igor Sysoev. It can be used both as a standalone web server\n" +"created by Igor Sysoev. It can be used both as a stand-alone web server\n" "and as a proxy to reduce the load on back-end HTTP or mail servers." msgstr "" -#: gnu/packages/web.scm:273 +#: gnu/packages/web.scm:316 msgid "XSLScript with NGinx specific modifications" msgstr "" -#: gnu/packages/web.scm:275 +#: gnu/packages/web.scm:318 msgid "" "XSLScript is a terse notation for writing complex XSLT stylesheets.\n" "This is modified version, specifically intended for use with the NGinx\n" "documentation." msgstr "" -#: gnu/packages/web.scm:328 -msgid "Documentation for nginx web server" -msgstr "" +#: gnu/packages/web.scm:372 +msgid "Documentation for the nginx web server" +msgstr "Documentation du serveur web nginx" -#: gnu/packages/web.scm:330 +#: gnu/packages/web.scm:374 msgid "This package provides HTML documentation for the nginx web server." msgstr "Ce paquet fournit la documentation HTML du serveur web nginx." -#: gnu/packages/web.scm:353 +#: gnu/packages/web.scm:397 msgid "Language-independent, high-performant extension to CGI" msgstr "" -#: gnu/packages/web.scm:354 +#: gnu/packages/web.scm:398 msgid "" "FastCGI is a language-independent, scalable extension to CGI\n" "that provides high performance without the limitations of server specific\n" "APIs." msgstr "" -#: gnu/packages/web.scm:390 +#: gnu/packages/web.scm:429 msgid "Simple server for running CGI applications over FastCGI" msgstr "" -#: gnu/packages/web.scm:391 +#: gnu/packages/web.scm:430 msgid "" "Fcgiwrap is a simple server for running CGI applications\n" "over FastCGI. It hopes to provide clean CGI support to Nginx (and other web\n" "servers that may need it)." msgstr "" -#: gnu/packages/web.scm:422 +#: gnu/packages/web.scm:461 msgid "PSGI/Plack web server" msgstr "" -#: gnu/packages/web.scm:423 +#: gnu/packages/web.scm:462 msgid "" "Starman is a PSGI perl web server that has unique features\n" "such as high performance, preforking, signal support, superdaemon awareness,\n" "and UNIX socket support." msgstr "" -#: gnu/packages/web.scm:455 +#: gnu/packages/web.scm:494 msgid "Java Web Start" msgstr "" -#: gnu/packages/web.scm:457 +#: gnu/packages/web.scm:496 msgid "" "IcedTea-Web is an implementation of the @dfn{Java Network Launching\n" "Protocol}, also known as Java Web Start. This package provides tools and\n" "libraries for working with JNLP applets." msgstr "" -#: gnu/packages/web.scm:478 +#: gnu/packages/web.scm:517 msgid "JSON C library" msgstr "La bibliothèque C JSON" -#: gnu/packages/web.scm:480 +#: gnu/packages/web.scm:519 msgid "" "Jansson is a C library for encoding, decoding and manipulating JSON\n" "data." msgstr "" -#: gnu/packages/web.scm:512 +#: gnu/packages/web.scm:546 msgid "JSON implementation in C" msgstr "" -#: gnu/packages/web.scm:514 +#: gnu/packages/web.scm:548 msgid "" "JSON-C implements a reference counting object model that allows you to\n" -"easily construct JSON objects in C, output them as JSON formatted strings and\n" -"parse JSON formatted strings back into the C representation of JSON objects." +"easily construct JSON objects in C, output them as JSON-formatted strings and\n" +"parse JSON-formatted strings back into the C representation of JSON objects.\n" +"It aims to conform to RFC 7159." msgstr "" -#: gnu/packages/web.scm:552 +#: gnu/packages/web.scm:613 msgid "Library that maps JSON data to QVariant objects" msgstr "" -#: gnu/packages/web.scm:553 +#: gnu/packages/web.scm:614 msgid "" "QJson is a Qt-based library that maps JSON data to\n" "@code{QVariant} objects. JSON arrays will be mapped to @code{QVariantList}\n" "instances, while JSON's objects will be mapped to @code{QVariantMap}." msgstr "" -#: gnu/packages/web.scm:637 +#: gnu/packages/web.scm:698 msgid "Hierarchical data exploration with zoomable HTML5 pie charts" msgstr "" -#: gnu/packages/web.scm:639 +#: gnu/packages/web.scm:700 msgid "" "Krona is a flexible tool for exploring the relative proportions of\n" "hierarchical data, such as metagenomic classifications, using a radial,\n" @@ -17764,42 +19305,42 @@ msgid "" "current version of any major web browser." msgstr "" -#: gnu/packages/web.scm:672 +#: gnu/packages/web.scm:733 msgid "JSON parser/generator for C++ with both SAX/DOM style API" msgstr "" -#: gnu/packages/web.scm:674 +#: gnu/packages/web.scm:735 msgid "" "RapidJSON is a fast JSON parser/generator for C++ with both SAX/DOM\n" "style API." msgstr "" -#: gnu/packages/web.scm:692 +#: gnu/packages/web.scm:753 msgid "C library for parsing JSON" msgstr "" -#: gnu/packages/web.scm:694 +#: gnu/packages/web.scm:755 msgid "" "Yet Another JSON Library (YAJL) is a small event-driven (SAX-style) JSON\n" "parser written in ANSI C and a small validating JSON generator." msgstr "" -#: gnu/packages/web.scm:724 +#: gnu/packages/web.scm:785 msgid "WebSockets library written in C" msgstr "" -#: gnu/packages/web.scm:726 +#: gnu/packages/web.scm:787 msgid "" "Libwebsockets is a library that allows C programs to establish client\n" "and server WebSockets connections---a protocol layered above HTTP that allows\n" "for efficient socket-like bidirectional reliable communication channels." msgstr "" -#: gnu/packages/web.scm:754 +#: gnu/packages/web.scm:815 msgid "C library for the Publix Suffix List" msgstr "" -#: gnu/packages/web.scm:756 +#: gnu/packages/web.scm:817 msgid "" "A \"public suffix\" is a domain name under which Internet users can\n" "directly register own names.\n" @@ -17817,21 +19358,21 @@ msgid "" "UTS#46." msgstr "" -#: gnu/packages/web.scm:801 +#: gnu/packages/web.scm:863 msgid "HTML validator and tidier" msgstr "" -#: gnu/packages/web.scm:802 +#: gnu/packages/web.scm:864 msgid "" "HTML Tidy is a command-line tool and C library that can be\n" "used to validate and fix HTML data." msgstr "" -#: gnu/packages/web.scm:837 +#: gnu/packages/web.scm:899 msgid "Light-weight HTTP/HTTPS proxy daemon" msgstr "" -#: gnu/packages/web.scm:838 +#: gnu/packages/web.scm:900 msgid "" "Tinyproxy is a light-weight HTTP/HTTPS proxy\n" "daemon. Designed from the ground up to be fast and yet small, it is an ideal\n" @@ -17840,22 +19381,22 @@ msgid "" "unavailable." msgstr "" -#: gnu/packages/web.scm:871 +#: gnu/packages/web.scm:933 msgid "Small caching web proxy" msgstr "" -#: gnu/packages/web.scm:873 +#: gnu/packages/web.scm:935 msgid "" "Polipo is a small caching web proxy (web cache, HTTP proxy, and proxy\n" "server). It was primarily designed to be used by one person or a small group\n" "of people." msgstr "" -#: gnu/packages/web.scm:900 +#: gnu/packages/web.scm:962 msgid "WebSockets support for any application/server" msgstr "" -#: gnu/packages/web.scm:901 +#: gnu/packages/web.scm:963 msgid "" "Websockify translates WebSockets traffic to normal socket\n" "traffic. Websockify accepts the WebSockets handshake, parses it, and then\n" @@ -17863,11 +19404,11 @@ msgid "" "directions." msgstr "" -#: gnu/packages/web.scm:927 +#: gnu/packages/web.scm:989 msgid "Caching web proxy optimized for intermittent internet links" msgstr "" -#: gnu/packages/web.scm:928 +#: gnu/packages/web.scm:990 msgid "" "WWWOFFLE is a proxy web server that is especially good for\n" "intermittent internet links. It can cache HTTP, HTTPS, FTP, and finger\n" @@ -17876,11 +19417,11 @@ msgid "" "changes, and much more." msgstr "" -#: gnu/packages/web.scm:953 +#: gnu/packages/web.scm:1015 msgid "C library implementing the OAuth API" msgstr "Bibliothèque C implémentant l'API OAuth" -#: gnu/packages/web.scm:955 +#: gnu/packages/web.scm:1017 msgid "" "liboauth is a collection of C functions implementing the OAuth API.\n" "liboauth provides functions to escape and encode strings according to OAuth\n" @@ -17889,42 +19430,42 @@ msgid "" "hash/signatures." msgstr "" -#: gnu/packages/web.scm:979 +#: gnu/packages/web.scm:1040 msgid "YAML 1.1 parser and emitter written in C" msgstr "" -#: gnu/packages/web.scm:981 +#: gnu/packages/web.scm:1042 msgid "LibYAML is a YAML 1.1 parser and emitter written in C." msgstr "" -#: gnu/packages/web.scm:998 gnu/packages/web.scm:1032 -#: gnu/packages/web.scm:1055 +#: gnu/packages/web.scm:1059 gnu/packages/web.scm:1093 +#: gnu/packages/web.scm:1116 msgid "Media stream URL parser" msgstr "" -#: gnu/packages/web.scm:999 +#: gnu/packages/web.scm:1060 msgid "" "This package contains support scripts called by libquvi to\n" "parse media stream properties." msgstr "" -#: gnu/packages/web.scm:1033 +#: gnu/packages/web.scm:1094 msgid "" "libquvi is a library with a C API for parsing media stream\n" "URLs and extracting their actual media files." msgstr "" -#: gnu/packages/web.scm:1056 +#: gnu/packages/web.scm:1117 msgid "" "quvi is a command-line-tool suite to extract media files\n" "from streaming URLs. It is a command-line wrapper for the libquvi library." msgstr "" -#: gnu/packages/web.scm:1146 +#: gnu/packages/web.scm:1189 msgid "High-performance asynchronous HTTP client library" msgstr "" -#: gnu/packages/web.scm:1148 +#: gnu/packages/web.scm:1191 msgid "" "serf is a C-based HTTP client library built upon the Apache Portable\n" "Runtime (APR) library. It multiplexes connections, running the read/write\n" @@ -17932,49 +19473,49 @@ msgid "" "minimum to provide high performance operation." msgstr "" -#: gnu/packages/web.scm:1202 +#: gnu/packages/web.scm:1243 msgid "CSS pre-processor" msgstr "" -#: gnu/packages/web.scm:1203 +#: gnu/packages/web.scm:1244 msgid "" "SassC is a compiler written in C for the CSS pre-processor\n" "language known as SASS." msgstr "" -#: gnu/packages/web.scm:1232 +#: gnu/packages/web.scm:1273 msgid "Compile a log format string to perl-code" msgstr "" -#: gnu/packages/web.scm:1233 +#: gnu/packages/web.scm:1274 msgid "" "This module provides methods to compile a log format string\n" "to perl-code, for faster generation of access_log lines." msgstr "" -#: gnu/packages/web.scm:1261 +#: gnu/packages/web.scm:1302 msgid "SASL authentication framework" msgstr "" -#: gnu/packages/web.scm:1262 +#: gnu/packages/web.scm:1303 msgid "Authen::SASL provides an SASL authentication framework." msgstr "" -#: gnu/packages/web.scm:1287 +#: gnu/packages/web.scm:1328 msgid "Sensible default Catalyst action" msgstr "" -#: gnu/packages/web.scm:1288 +#: gnu/packages/web.scm:1329 msgid "" "This Catalyst action implements a sensible default end\n" "action, which will forward to the first available view." msgstr "" -#: gnu/packages/web.scm:1320 +#: gnu/packages/web.scm:1361 msgid "Automated REST Method Dispatching" msgstr "" -#: gnu/packages/web.scm:1321 +#: gnu/packages/web.scm:1362 msgid "" "This Action handles doing automatic method dispatching for\n" "REST requests. It takes a normal Catalyst action, and changes the dispatch to\n" @@ -17983,32 +19524,32 @@ msgid "" "regular method." msgstr "" -#: gnu/packages/web.scm:1358 +#: gnu/packages/web.scm:1399 msgid "Storage class for Catalyst authentication using DBIx::Class" msgstr "" -#: gnu/packages/web.scm:1359 +#: gnu/packages/web.scm:1400 msgid "" "The Catalyst::Authentication::Store::DBIx::Class class\n" "provides access to authentication information stored in a database via\n" "DBIx::Class." msgstr "" -#: gnu/packages/web.scm:1385 +#: gnu/packages/web.scm:1426 msgid "Create only one instance of Moose component per context" msgstr "" -#: gnu/packages/web.scm:1386 +#: gnu/packages/web.scm:1427 msgid "" "Catalyst::Component::InstancePerContext returns a new\n" "instance of a component on each request." msgstr "" -#: gnu/packages/web.scm:1423 +#: gnu/packages/web.scm:1464 msgid "Catalyst Development Tools" msgstr "" -#: gnu/packages/web.scm:1424 +#: gnu/packages/web.scm:1465 msgid "" "The Catalyst-Devel distribution includes a variety of\n" "modules useful for the development of Catalyst applications, but not required\n" @@ -18018,11 +19559,11 @@ msgid "" "modules." msgstr "" -#: gnu/packages/web.scm:1453 +#: gnu/packages/web.scm:1494 msgid "Regex DispatchType for Catalyst" msgstr "" -#: gnu/packages/web.scm:1454 +#: gnu/packages/web.scm:1495 msgid "" "Dispatch type managing path-matching behaviour using\n" "regexes. Regex dispatch types have been deprecated and removed from Catalyst\n" @@ -18032,32 +19573,32 @@ msgid "" "when the dispatch type is first seen in your application." msgstr "" -#: gnu/packages/web.scm:1503 +#: gnu/packages/web.scm:1544 msgid "DBIx::Class::Schema Model Class" msgstr "" -#: gnu/packages/web.scm:1504 +#: gnu/packages/web.scm:1545 msgid "" "This is a Catalyst Model for DBIx::Class::Schema-based\n" "Models." msgstr "" -#: gnu/packages/web.scm:1527 +#: gnu/packages/web.scm:1568 msgid "Request logging from within Catalyst" msgstr "" -#: gnu/packages/web.scm:1528 +#: gnu/packages/web.scm:1569 msgid "" "This Catalyst plugin enables you to create \"access logs\"\n" "from within a Catalyst application instead of requiring a webserver to do it\n" "for you. It will work even with Catalyst debug logging turned off." msgstr "" -#: gnu/packages/web.scm:1562 +#: gnu/packages/web.scm:1603 msgid "Infrastructure plugin for the Catalyst authentication framework" msgstr "" -#: gnu/packages/web.scm:1563 +#: gnu/packages/web.scm:1604 msgid "" "The authentication plugin provides generic user support for\n" "Catalyst apps. It is the basis for both authentication (checking the user is\n" @@ -18065,52 +19606,52 @@ msgid "" "system authorises them to do)." msgstr "" -#: gnu/packages/web.scm:1594 +#: gnu/packages/web.scm:1635 msgid "Role-based authorization for Catalyst" msgstr "" -#: gnu/packages/web.scm:1595 +#: gnu/packages/web.scm:1636 msgid "" "Catalyst::Plugin::Authorization::Roles provides role-based\n" "authorization for Catalyst based on Catalyst::Plugin::Authentication." msgstr "" -#: gnu/packages/web.scm:1618 +#: gnu/packages/web.scm:1659 msgid "Captchas for Catalyst" msgstr "" -#: gnu/packages/web.scm:1619 +#: gnu/packages/web.scm:1660 msgid "" "This plugin creates and validates Captcha images for\n" "Catalyst." msgstr "" -#: gnu/packages/web.scm:1646 +#: gnu/packages/web.scm:1687 msgid "Load config files of various types" msgstr "" -#: gnu/packages/web.scm:1647 +#: gnu/packages/web.scm:1688 msgid "" "This module will attempt to load find and load configuration\n" "files of various types. Currently it supports YAML, JSON, XML, INI and Perl\n" "formats." msgstr "" -#: gnu/packages/web.scm:1679 +#: gnu/packages/web.scm:1720 msgid "Catalyst generic session plugin" msgstr "" -#: gnu/packages/web.scm:1680 +#: gnu/packages/web.scm:1721 msgid "" "This plugin links the two pieces required for session\n" "management in web applications together: the state, and the store." msgstr "" -#: gnu/packages/web.scm:1708 +#: gnu/packages/web.scm:1749 msgid "Maintain session IDs using cookies" msgstr "" -#: gnu/packages/web.scm:1709 +#: gnu/packages/web.scm:1750 msgid "" "In order for Catalyst::Plugin::Session to work, the session\n" "ID needs to be stored on the client, and the session data needs to be stored\n" @@ -18118,22 +19659,22 @@ msgid "" "cookie mechanism." msgstr "" -#: gnu/packages/web.scm:1739 +#: gnu/packages/web.scm:1780 msgid "FastMmap session storage backend" msgstr "" -#: gnu/packages/web.scm:1740 +#: gnu/packages/web.scm:1781 msgid "" "Catalyst::Plugin::Session::Store::FastMmap is a fast session\n" "storage plugin for Catalyst that uses an mmap'ed file to act as a shared\n" "memory interprocess cache. It is based on Cache::FastMmap." msgstr "" -#: gnu/packages/web.scm:1765 +#: gnu/packages/web.scm:1806 msgid "Stack trace on the Catalyst debug screen" msgstr "" -#: gnu/packages/web.scm:1766 +#: gnu/packages/web.scm:1807 msgid "" "This plugin enhances the standard Catalyst debug screen by\n" "including a stack trace of your application up to the point where the error\n" @@ -18141,11 +19682,11 @@ msgid "" "number, file name, and code context surrounding the line number." msgstr "" -#: gnu/packages/web.scm:1794 +#: gnu/packages/web.scm:1835 msgid "Simple serving of static pages" msgstr "" -#: gnu/packages/web.scm:1795 +#: gnu/packages/web.scm:1836 msgid "" "The Static::Simple plugin is designed to make serving static\n" "content in your application during development quick and easy, without\n" @@ -18156,11 +19697,11 @@ msgid "" "MIME type directly to the browser, without being processed through Catalyst." msgstr "" -#: gnu/packages/web.scm:1863 +#: gnu/packages/web.scm:1899 msgid "The Catalyst Framework Runtime" msgstr "" -#: gnu/packages/web.scm:1864 +#: gnu/packages/web.scm:1900 msgid "" "Catalyst is a modern framework for making web applications.\n" "It is designed to make it easy to manage the various tasks you need to do to\n" @@ -18168,11 +19709,11 @@ msgid "" "\"plug in\" existing Perl modules that do what you need." msgstr "" -#: gnu/packages/web.scm:1895 +#: gnu/packages/web.scm:1931 msgid "Replace request base with value passed by HTTP proxy" msgstr "" -#: gnu/packages/web.scm:1896 +#: gnu/packages/web.scm:1932 msgid "" "This module is a Moose::Role which allows you more\n" "flexibility in your application's deployment configurations when deployed\n" @@ -18180,42 +19721,42 @@ msgid "" "replaced with the contents of the X-Request-Base header." msgstr "" -#: gnu/packages/web.scm:1923 +#: gnu/packages/web.scm:1959 msgid "Download data in many formats" msgstr "" -#: gnu/packages/web.scm:1924 +#: gnu/packages/web.scm:1960 msgid "" "The purpose of this module is to provide a method for\n" "downloading data into many supportable formats. For example, downloading a\n" "table based report in a variety of formats (CSV, HTML, etc.)." msgstr "" -#: gnu/packages/web.scm:1950 +#: gnu/packages/web.scm:1986 msgid "Catalyst JSON view" msgstr "" -#: gnu/packages/web.scm:1951 +#: gnu/packages/web.scm:1987 msgid "" "Catalyst::View::JSON is a Catalyst View handler that returns\n" "stash data in JSON format." msgstr "" -#: gnu/packages/web.scm:1977 +#: gnu/packages/web.scm:2013 msgid "Template View Class" msgstr "" -#: gnu/packages/web.scm:1978 +#: gnu/packages/web.scm:2014 msgid "" "This module is a Catalyst view class for the Template\n" "Toolkit." msgstr "" -#: gnu/packages/web.scm:2007 +#: gnu/packages/web.scm:2043 msgid "Trait Loading and Resolution for Catalyst Components" msgstr "" -#: gnu/packages/web.scm:2008 +#: gnu/packages/web.scm:2044 msgid "" "Adds a \"COMPONENT\" in Catalyst::Component method to your\n" "Catalyst component base class that reads the optional \"traits\" parameter\n" @@ -18224,31 +19765,31 @@ msgid "" "MooseX::Traits::Pluggable." msgstr "" -#: gnu/packages/web.scm:2033 +#: gnu/packages/web.scm:2069 msgid "Apply roles to Catalyst classes" msgstr "" -#: gnu/packages/web.scm:2034 +#: gnu/packages/web.scm:2070 msgid "" "CatalystX::RoleApplicator applies roles to Catalyst\n" "application classes." msgstr "" -#: gnu/packages/web.scm:2061 +#: gnu/packages/web.scm:2097 msgid "Catalyst development server with Starman" msgstr "" -#: gnu/packages/web.scm:2062 +#: gnu/packages/web.scm:2098 msgid "" "This module provides a Catalyst extension to replace the\n" "development server with Starman." msgstr "" -#: gnu/packages/web.scm:2086 +#: gnu/packages/web.scm:2122 msgid "Handle Common Gateway Interface requests and responses" msgstr "" -#: gnu/packages/web.scm:2087 +#: gnu/packages/web.scm:2123 msgid "" "CGI.pm is a stable, complete and mature solution for\n" "processing and preparing HTTP requests and responses. Major features include\n" @@ -18257,62 +19798,72 @@ msgid "" "headers." msgstr "" -#: gnu/packages/web.scm:2115 +#: gnu/packages/web.scm:2148 +msgid "Generate and process stateful forms" +msgstr "" + +#: gnu/packages/web.scm:2150 +msgid "" +"@code{CGI::FormBuilder} provides an easy way to generate and process CGI\n" +"form-based applications." +msgstr "" + +#: gnu/packages/web.scm:2175 msgid "Persistent session data in CGI applications" msgstr "" -#: gnu/packages/web.scm:2117 +#: gnu/packages/web.scm:2177 msgid "" "@code{CGI::Session} provides modular session management system across\n" "HTTP requests." msgstr "" -#: gnu/packages/web.scm:2138 +#: gnu/packages/web.scm:2198 msgid "CGI interface that is CGI.pm compliant" msgstr "" -#: gnu/packages/web.scm:2139 +#: gnu/packages/web.scm:2199 msgid "" "CGI::Simple provides a relatively lightweight drop in\n" "replacement for CGI.pm. It shares an identical OO interface to CGI.pm for\n" "parameter parsing, file upload, cookie handling and header generation." msgstr "" -#: gnu/packages/web.scm:2160 +#: gnu/packages/web.scm:2220 msgid "Build structures from CGI data" msgstr "" -#: gnu/packages/web.scm:2161 +#: gnu/packages/web.scm:2221 msgid "" "This is a module for building structured data from CGI\n" "inputs, in a manner reminiscent of how PHP does." msgstr "" -#: gnu/packages/web.scm:2184 +#: gnu/packages/web.scm:2244 msgid "Date conversion routines" msgstr "" -#: gnu/packages/web.scm:2185 +#: gnu/packages/web.scm:2245 msgid "" "This module provides functions that deal with the date\n" "formats used by the HTTP protocol." msgstr "" -#: gnu/packages/web.scm:2205 +#: gnu/packages/web.scm:2265 msgid "MD5 sums for files and urls" msgstr "" -#: gnu/packages/web.scm:2206 +#: gnu/packages/web.scm:2266 msgid "" "Digest::MD5::File is a Perl extension for getting MD5 sums\n" "for files and urls." msgstr "" -#: gnu/packages/web.scm:2224 +#: gnu/packages/web.scm:2284 msgid "Perl locale encoding determination" msgstr "" -#: gnu/packages/web.scm:2226 +#: gnu/packages/web.scm:2286 msgid "" "The POSIX locale system is used to specify both the language\n" "conventions requested by the user and the preferred character set to\n" @@ -18324,110 +19875,110 @@ msgid "" "with Encode::decode(locale => $string)." msgstr "" -#: gnu/packages/web.scm:2261 +#: gnu/packages/web.scm:2321 msgid "Syndication feed auto-discovery" msgstr "" -#: gnu/packages/web.scm:2262 +#: gnu/packages/web.scm:2322 msgid "" "@code{Feed::Find} implements feed auto-discovery for finding\n" "syndication feeds, given a URI. It will discover the following feed formats:\n" "RSS 0.91, RSS 1.0, RSS 2.0, Atom." msgstr "" -#: gnu/packages/web.scm:2283 +#: gnu/packages/web.scm:2343 msgid "Perl directory listing parser" msgstr "" -#: gnu/packages/web.scm:2285 +#: gnu/packages/web.scm:2345 msgid "" "The File::Listing module exports a single function called parse_dir(),\n" "which can be used to parse directory listings." msgstr "" -#: gnu/packages/web.scm:2317 +#: gnu/packages/web.scm:2377 msgid "Stock and mutual fund quotes" msgstr "" -#: gnu/packages/web.scm:2319 +#: gnu/packages/web.scm:2379 msgid "" "Finance::Quote gets stock quotes from various internet sources, including\n" "Yahoo! Finance, Fidelity Investments, and the Australian Stock Exchange." msgstr "" -#: gnu/packages/web.scm:2341 +#: gnu/packages/web.scm:2401 msgid "Perl extension providing access to the GSSAPIv2 library" msgstr "" -#: gnu/packages/web.scm:2342 +#: gnu/packages/web.scm:2402 msgid "" "This is a Perl extension for using GSSAPI C bindings as\n" "described in RFC 2744." msgstr "" -#: gnu/packages/web.scm:2362 +#: gnu/packages/web.scm:2422 msgid "Manipulate tables of HTML::Element" msgstr "" -#: gnu/packages/web.scm:2364 +#: gnu/packages/web.scm:2424 msgid "" "HTML::Element::Extended is a Perl extension for manipulating a table\n" "composed of HTML::Element style components." msgstr "" -#: gnu/packages/web.scm:2388 +#: gnu/packages/web.scm:2448 msgid "Perl class representing an HTML form element" msgstr "" -#: gnu/packages/web.scm:2389 +#: gnu/packages/web.scm:2449 msgid "" "Objects of the HTML::Form class represents a single HTML\n" "
      ...
      instance." msgstr "" -#: gnu/packages/web.scm:2419 +#: gnu/packages/web.scm:2480 msgid "Perl extension for scrubbing/sanitizing html" msgstr "" -#: gnu/packages/web.scm:2421 +#: gnu/packages/web.scm:2482 msgid "@code{HTML::Scrubber} Perl extension for scrubbing/sanitizing HTML." msgstr "" -#: gnu/packages/web.scm:2442 +#: gnu/packages/web.scm:2503 msgid "Check for HTML errors in a string or file" msgstr "" -#: gnu/packages/web.scm:2443 +#: gnu/packages/web.scm:2504 msgid "" "HTML::Lint is a pure-Perl HTML parser and checker for\n" "syntactic legitmacy." msgstr "" -#: gnu/packages/web.scm:2464 +#: gnu/packages/web.scm:2525 msgid "Extract contents from HTML tables" msgstr "" -#: gnu/packages/web.scm:2466 +#: gnu/packages/web.scm:2527 msgid "" "HTML::TableExtract is a Perl module for extracting the content contained\n" "in tables within an HTML document, either as text or encoded element trees." msgstr "" -#: gnu/packages/web.scm:2491 +#: gnu/packages/web.scm:2552 msgid "Work with HTML in a DOM-like tree structure" msgstr "" -#: gnu/packages/web.scm:2492 +#: gnu/packages/web.scm:2553 msgid "" "This distribution contains a suite of modules for\n" "representing, creating, and extracting information from HTML syntax trees." msgstr "" -#: gnu/packages/web.scm:2513 +#: gnu/packages/web.scm:2574 msgid "Perl HTML parser class" msgstr "" -#: gnu/packages/web.scm:2515 +#: gnu/packages/web.scm:2576 msgid "" "Objects of the HTML::Parser class will recognize markup and separate\n" "it from plain text (alias data content) in HTML documents. As different\n" @@ -18435,21 +19986,21 @@ msgid "" "are invoked." msgstr "" -#: gnu/packages/web.scm:2535 +#: gnu/packages/web.scm:2596 msgid "Perl data tables useful in parsing HTML" msgstr "" -#: gnu/packages/web.scm:2537 +#: gnu/packages/web.scm:2598 msgid "" "The HTML::Tagset module contains several data tables useful in various\n" "kinds of HTML parsing operations." msgstr "" -#: gnu/packages/web.scm:2556 +#: gnu/packages/web.scm:2617 msgid "HTML-like templates" msgstr "" -#: gnu/packages/web.scm:2558 +#: gnu/packages/web.scm:2619 msgid "" "This module attempts to make using HTML templates simple and natural.\n" "It extends standard HTML with a few new HTML-esque tags: @code{},\n" @@ -18460,72 +20011,72 @@ msgid "" "you to separate design from the data." msgstr "" -#: gnu/packages/web.scm:2586 +#: gnu/packages/web.scm:2647 msgid "HTTP Body Parser" msgstr "" -#: gnu/packages/web.scm:2587 +#: gnu/packages/web.scm:2648 msgid "" "HTTP::Body parses chunks of HTTP POST data and supports\n" "application/octet-stream, application/json, application/x-www-form-urlencoded,\n" "and multipart/form-data." msgstr "" -#: gnu/packages/web.scm:2614 +#: gnu/packages/web.scm:2675 msgid "Minimalist HTTP user agent cookie jar" msgstr "" -#: gnu/packages/web.scm:2615 +#: gnu/packages/web.scm:2676 msgid "" "This module implements a minimalist HTTP user agent cookie\n" "jar in conformance with RFC 6265 ." msgstr "" -#: gnu/packages/web.scm:2635 +#: gnu/packages/web.scm:2696 msgid "Perl HTTP cookie jars" msgstr "" -#: gnu/packages/web.scm:2637 +#: gnu/packages/web.scm:2698 msgid "" "The HTTP::Cookies class is for objects that represent a cookie jar,\n" "that is, a database of all the HTTP cookies that a given LWP::UserAgent\n" "object knows about." msgstr "" -#: gnu/packages/web.scm:2659 +#: gnu/packages/web.scm:2720 msgid "Perl simple http server class" msgstr "" -#: gnu/packages/web.scm:2661 +#: gnu/packages/web.scm:2722 msgid "" "Instances of the HTTP::Daemon class are HTTP/1.1 servers that listen\n" "on a socket for incoming requests. The HTTP::Daemon is a subclass of\n" "IO::Socket::INET, so you can perform socket operations directly on it too." msgstr "" -#: gnu/packages/web.scm:2680 +#: gnu/packages/web.scm:2741 msgid "Perl date conversion routines" msgstr "" -#: gnu/packages/web.scm:2682 +#: gnu/packages/web.scm:2743 msgid "" "The HTTP::Date module provides functions that deal with date formats\n" "used by the HTTP protocol (and then some more)." msgstr "" -#: gnu/packages/web.scm:2706 +#: gnu/packages/web.scm:2769 msgid "Perl HTTP style message" msgstr "" -#: gnu/packages/web.scm:2708 +#: gnu/packages/web.scm:2771 msgid "An HTTP::Message object contains some headers and a content body." msgstr "" -#: gnu/packages/web.scm:2727 +#: gnu/packages/web.scm:2790 msgid "Perl http content negotiation" msgstr "" -#: gnu/packages/web.scm:2729 +#: gnu/packages/web.scm:2792 msgid "" "The HTTP::Negotiate module provides a complete implementation of the\n" "HTTP content negotiation algorithm specified in\n" @@ -18535,11 +20086,11 @@ msgid "" "fields in the request." msgstr "" -#: gnu/packages/web.scm:2754 +#: gnu/packages/web.scm:2817 msgid "Parse HTTP/1.1 requests" msgstr "" -#: gnu/packages/web.scm:2755 +#: gnu/packages/web.scm:2818 msgid "" "This is an HTTP request parser. It takes chunks of text as\n" "received and returns a 'hint' as to what is required, or returns the\n" @@ -18547,74 +20098,74 @@ msgid "" "supported." msgstr "" -#: gnu/packages/web.scm:2777 +#: gnu/packages/web.scm:2840 msgid "Fast HTTP request parser" msgstr "" -#: gnu/packages/web.scm:2778 +#: gnu/packages/web.scm:2841 msgid "" "HTTP::Parser::XS is a fast, primitive HTTP request/response\n" "parser." msgstr "" -#: gnu/packages/web.scm:2799 +#: gnu/packages/web.scm:2862 msgid "Set up a CGI environment from an HTTP::Request" msgstr "" -#: gnu/packages/web.scm:2800 +#: gnu/packages/web.scm:2863 msgid "" "This module provides a convenient way to set up a CGI\n" "environment from an HTTP::Request." msgstr "" -#: gnu/packages/web.scm:2833 +#: gnu/packages/web.scm:2896 msgid "Lightweight HTTP server" msgstr "" -#: gnu/packages/web.scm:2834 +#: gnu/packages/web.scm:2897 msgid "" "HTTP::Server::Simple is a simple standalone HTTP daemon with\n" "no non-core module dependencies. It can be used for building a standalone\n" "http-based UI to your existing tools." msgstr "" -#: gnu/packages/web.scm:2859 +#: gnu/packages/web.scm:2922 msgid "HTTP/1.1 client" msgstr "" -#: gnu/packages/web.scm:2860 +#: gnu/packages/web.scm:2923 msgid "" "This is a very simple HTTP/1.1 client, designed for doing\n" "simple requests without the overhead of a large framework like LWP::UserAgent.\n" "It supports proxies and redirection. It also correctly resumes after EINTR." msgstr "" -#: gnu/packages/web.scm:2879 +#: gnu/packages/web.scm:2942 msgid "Perl module to open an HTML file with automatic charset detection" msgstr "" -#: gnu/packages/web.scm:2881 +#: gnu/packages/web.scm:2944 msgid "" "IO::HTML provides an easy way to open a file containing HTML while\n" "automatically determining its encoding. It uses the HTML5 encoding sniffing\n" "algorithm specified in section 8.2.2.1 of the draft standard." msgstr "" -#: gnu/packages/web.scm:2901 +#: gnu/packages/web.scm:2964 msgid "Family-neutral IP socket supporting both IPv4 and IPv6" msgstr "" -#: gnu/packages/web.scm:2902 +#: gnu/packages/web.scm:2965 msgid "" "This module provides a protocol-independent way to use IPv4\n" "and IPv6 sockets, intended as a replacement for IO::Socket::INET." msgstr "" -#: gnu/packages/web.scm:2924 +#: gnu/packages/web.scm:2987 msgid "Nearly transparent SSL encapsulation for IO::Socket::INET" msgstr "" -#: gnu/packages/web.scm:2926 +#: gnu/packages/web.scm:2989 msgid "" "IO::Socket::SSL makes using SSL/TLS much easier by wrapping the\n" "necessary functionality into the familiar IO::Socket interface and providing\n" @@ -18623,11 +20174,11 @@ msgid "" "select or poll." msgstr "" -#: gnu/packages/web.scm:2960 +#: gnu/packages/web.scm:3023 msgid "Perl modules for the WWW" msgstr "" -#: gnu/packages/web.scm:2962 +#: gnu/packages/web.scm:3025 msgid "" "The libwww-perl collection is a set of Perl modules which provides a\n" "simple and consistent application programming interface to the\n" @@ -18637,11 +20188,11 @@ msgid "" "help you implement simple HTTP servers." msgstr "" -#: gnu/packages/web.scm:2990 +#: gnu/packages/web.scm:3053 msgid "Checks whether your process has access to the web" msgstr "" -#: gnu/packages/web.scm:2991 +#: gnu/packages/web.scm:3054 msgid "" "This module attempts to answer, as accurately as it can, one\n" "of the nastiest technical questions there is: am I on the internet?\n" @@ -18651,11 +20202,11 @@ msgid "" "not have DNS. We might not have a network card at all!" msgstr "" -#: gnu/packages/web.scm:3013 +#: gnu/packages/web.scm:3076 msgid "Perl module to guess the media type for a file or a URL" msgstr "" -#: gnu/packages/web.scm:3015 +#: gnu/packages/web.scm:3078 #, scheme-format msgid "" "The LWP::MediaTypes module provides functions for handling media (also\n" @@ -18664,21 +20215,21 @@ msgid "" "exists it is used instead." msgstr "" -#: gnu/packages/web.scm:3041 +#: gnu/packages/web.scm:3107 msgid "HTTPS support for LWP::UserAgent" msgstr "" -#: gnu/packages/web.scm:3042 +#: gnu/packages/web.scm:3108 msgid "" "The LWP::Protocol::https module provides support for using\n" "https schemed URLs with LWP." msgstr "" -#: gnu/packages/web.scm:3062 +#: gnu/packages/web.scm:3128 msgid "Virtual browser that retries errors" msgstr "" -#: gnu/packages/web.scm:3063 +#: gnu/packages/web.scm:3129 msgid "" "LWP::UserAgent::Determined works just like LWP::UserAgent,\n" "except that when you use it to get a web page but run into a\n" @@ -18686,19 +20237,19 @@ msgid "" "and retry a few times." msgstr "" -#: gnu/packages/web.scm:3108 +#: gnu/packages/web.scm:3174 msgid "Perl interface to Amazon S3" msgstr "" -#: gnu/packages/web.scm:3109 +#: gnu/packages/web.scm:3175 msgid "This module provides a Perlish interface to Amazon S3." msgstr "Ce paquet fournit une interface de type Perl pour Amazon S3." -#: gnu/packages/web.scm:3129 +#: gnu/packages/web.scm:3195 msgid "Perl low-level HTTP connection (client)" msgstr "" -#: gnu/packages/web.scm:3131 +#: gnu/packages/web.scm:3197 msgid "" "The Net::HTTP class is a low-level HTTP client. An instance of the\n" "Net::HTTP class represents a connection to an HTTP server. The HTTP protocol\n" @@ -18706,11 +20257,11 @@ msgid "" "HTTP/1.1." msgstr "" -#: gnu/packages/web.scm:3151 +#: gnu/packages/web.scm:3217 msgid "Extensible Perl server engine" msgstr "" -#: gnu/packages/web.scm:3152 +#: gnu/packages/web.scm:3218 msgid "" "Net::Server is an extensible, generic Perl server engine.\n" "It attempts to be a generic server as in Net::Daemon and NetServer::Generic.\n" @@ -18724,19 +20275,19 @@ msgid "" "or to multiple server ports." msgstr "" -#: gnu/packages/web.scm:3180 +#: gnu/packages/web.scm:3246 msgid "SSL support for Net::SMTP" msgstr "" -#: gnu/packages/web.scm:3181 +#: gnu/packages/web.scm:3247 msgid "SSL support for Net::SMTP." msgstr "" -#: gnu/packages/web.scm:3215 +#: gnu/packages/web.scm:3281 msgid "Perl Superglue for Web frameworks and servers (PSGI toolkit)" msgstr "" -#: gnu/packages/web.scm:3216 +#: gnu/packages/web.scm:3282 msgid "" "Plack is a set of tools for using the PSGI stack. It\n" "contains middleware components, a reference server, and utilities for Web\n" @@ -18744,21 +20295,21 @@ msgid "" "WSGI." msgstr "" -#: gnu/packages/web.scm:3242 +#: gnu/packages/web.scm:3308 msgid "Plack::Middleware which sets body for redirect response" msgstr "" -#: gnu/packages/web.scm:3243 +#: gnu/packages/web.scm:3309 msgid "" "This module sets the body in redirect response, if it's not\n" "already set." msgstr "" -#: gnu/packages/web.scm:3266 +#: gnu/packages/web.scm:3332 msgid "Override REST methods to Plack apps via POST" msgstr "" -#: gnu/packages/web.scm:3267 +#: gnu/packages/web.scm:3333 msgid "" "This middleware allows for POST requests that pretend to be\n" "something else: by adding either a header named X-HTTP-Method-Override to the\n" @@ -18766,72 +20317,72 @@ msgid "" "can say what method it actually meant." msgstr "" -#: gnu/packages/web.scm:3291 +#: gnu/packages/web.scm:3357 msgid "Plack::Middleware which removes body for HTTP response" msgstr "" -#: gnu/packages/web.scm:3292 +#: gnu/packages/web.scm:3358 msgid "" "This module removes the body in an HTTP response if it's not\n" "required." msgstr "" -#: gnu/packages/web.scm:3315 +#: gnu/packages/web.scm:3381 msgid "Supports app to run as a reverse proxy backend" msgstr "" -#: gnu/packages/web.scm:3316 +#: gnu/packages/web.scm:3382 msgid "" "Plack::Middleware::ReverseProxy resets some HTTP headers,\n" "which are changed by reverse-proxy. You can specify the reverse proxy address\n" "and stop fake requests using 'enable_if' directive in your app.psgi." msgstr "" -#: gnu/packages/web.scm:3337 +#: gnu/packages/web.scm:3403 msgid "Run HTTP tests on external live servers" msgstr "" -#: gnu/packages/web.scm:3338 +#: gnu/packages/web.scm:3404 msgid "" "This module allows your to run your Plack::Test tests\n" "against an external server instead of just against a local application through\n" "either mocked HTTP or a locally spawned server." msgstr "" -#: gnu/packages/web.scm:3360 +#: gnu/packages/web.scm:3426 msgid "Testing TCP programs" msgstr "" -#: gnu/packages/web.scm:3361 +#: gnu/packages/web.scm:3427 msgid "Test::TCP is test utilities for TCP/IP programs." msgstr "" -#: gnu/packages/web.scm:3391 +#: gnu/packages/web.scm:3452 msgid "Testing-specific WWW::Mechanize subclass" msgstr "" -#: gnu/packages/web.scm:3392 +#: gnu/packages/web.scm:3453 msgid "" "Test::WWW::Mechanize is a subclass of the Perl module\n" "WWW::Mechanize that incorporates features for web application testing." msgstr "" -#: gnu/packages/web.scm:3426 +#: gnu/packages/web.scm:3487 msgid "Test::WWW::Mechanize for Catalyst" msgstr "" -#: gnu/packages/web.scm:3427 +#: gnu/packages/web.scm:3488 msgid "" "The Test::WWW::Mechanize::Catalyst module meshes the\n" "Test::WWW:Mechanize module and the Catalyst web application framework to allow\n" "testing of Catalyst applications without needing to start up a web server." msgstr "" -#: gnu/packages/web.scm:3451 +#: gnu/packages/web.scm:3512 msgid "Test PSGI programs using WWW::Mechanize" msgstr "" -#: gnu/packages/web.scm:3452 +#: gnu/packages/web.scm:3513 msgid "" "PSGI is a specification to decouple web server environments\n" "from web application framework code. Test::WWW::Mechanize is a subclass of\n" @@ -18840,33 +20391,33 @@ msgid "" "applications." msgstr "" -#: gnu/packages/web.scm:3472 +#: gnu/packages/web.scm:3536 msgid "Perl Uniform Resource Identifiers (absolute and relative)" msgstr "" -#: gnu/packages/web.scm:3474 +#: gnu/packages/web.scm:3538 msgid "" "The URI module implements the URI class. Objects of this class\n" "represent \"Uniform Resource Identifier references\" as specified in RFC 2396\n" "and updated by RFC 2732." msgstr "" -#: gnu/packages/web.scm:3498 +#: gnu/packages/web.scm:3562 msgid "Smart URI fetching/caching" msgstr "" -#: gnu/packages/web.scm:3499 +#: gnu/packages/web.scm:3563 msgid "" "@code{URI::Fetch} is a smart client for fetching HTTP pages,\n" "notably syndication feeds (RSS, Atom, and others), in an intelligent, bandwidth-\n" "and time-saving way." msgstr "" -#: gnu/packages/web.scm:3522 +#: gnu/packages/web.scm:3586 msgid "Find URIs in arbitrary text" msgstr "" -#: gnu/packages/web.scm:3523 +#: gnu/packages/web.scm:3587 msgid "" "This module finds URIs and URLs (according to what URI.pm\n" "considers a URI) in plain text. It only finds URIs which include a\n" @@ -18874,61 +20425,61 @@ msgid "" "URI::Find::Schemeless. For a command-line interface, urifind is provided." msgstr "" -#: gnu/packages/web.scm:3545 +#: gnu/packages/web.scm:3609 msgid "WebSocket support for URI package" msgstr "" -#: gnu/packages/web.scm:3546 +#: gnu/packages/web.scm:3610 msgid "" "With this module, the URI package provides the same set of\n" "methods for WebSocket URIs as it does for HTTP URIs." msgstr "" -#: gnu/packages/web.scm:3570 +#: gnu/packages/web.scm:3634 msgid "Object for handling URI templates" msgstr "" -#: gnu/packages/web.scm:3571 +#: gnu/packages/web.scm:3635 msgid "" "This perl module provides a wrapper around URI templates as described in\n" "RFC 6570." msgstr "" -#: gnu/packages/web.scm:3603 +#: gnu/packages/web.scm:3667 msgid "Perl extension interface for libcurl" msgstr "Interface d'extension Perl pour libcurl" -#: gnu/packages/web.scm:3605 +#: gnu/packages/web.scm:3669 msgid "" "This is a Perl extension interface for the libcurl file downloading\n" "library." msgstr "" -#: gnu/packages/web.scm:3639 +#: gnu/packages/web.scm:3703 msgid "Web browsing in a Perl object" msgstr "" -#: gnu/packages/web.scm:3640 +#: gnu/packages/web.scm:3704 msgid "" "WWW::Mechanize is a Perl module for stateful programmatic\n" "web browsing, used for automating interaction with websites." msgstr "" -#: gnu/packages/web.scm:3676 +#: gnu/packages/web.scm:3740 msgid "Search A9 OpenSearch compatible engines" msgstr "" -#: gnu/packages/web.scm:3678 +#: gnu/packages/web.scm:3742 msgid "" "@code{WWW::OpenSearch} is a module to search @url{A9's OpenSearch,\n" "http://opensearch.a9.com} compatible search engines." msgstr "" -#: gnu/packages/web.scm:3698 +#: gnu/packages/web.scm:3762 msgid "Perl database of robots.txt-derived permissions" msgstr "" -#: gnu/packages/web.scm:3700 +#: gnu/packages/web.scm:3764 msgid "" "The WWW::RobotRules module parses /robots.txt files as specified in\n" "\"A Standard for Robot Exclusion\", at\n" @@ -18937,21 +20488,21 @@ msgid "" "their web site." msgstr "" -#: gnu/packages/web.scm:3723 +#: gnu/packages/web.scm:3787 msgid "Parse feeds in Python" msgstr "" -#: gnu/packages/web.scm:3725 +#: gnu/packages/web.scm:3789 msgid "" "Universal feed parser which handles RSS 0.9x, RSS 1.0, RSS 2.0,\n" "CDF, Atom 0.3, and Atom 1.0 feeds." msgstr "" -#: gnu/packages/web.scm:3746 +#: gnu/packages/web.scm:3814 msgid "HTTP and WebSocket server library for R" msgstr "" -#: gnu/packages/web.scm:3748 +#: gnu/packages/web.scm:3816 msgid "" "The httpuv package provides low-level socket and protocol support for\n" "handling HTTP and WebSocket requests directly from within R. It is primarily\n" @@ -18959,11 +20510,11 @@ msgid "" "particularly easy to create complete web applications using httpuv alone." msgstr "" -#: gnu/packages/web.scm:3769 +#: gnu/packages/web.scm:3837 msgid "Robust, high performance JSON parser and generator for R" msgstr "" -#: gnu/packages/web.scm:3771 +#: gnu/packages/web.scm:3839 msgid "" "The jsonlite package provides a fast JSON parser and generator optimized\n" "for statistical data and the web. It offers flexible, robust, high\n" @@ -18975,41 +20526,41 @@ msgid "" "in systems and applications." msgstr "" -#: gnu/packages/web.scm:3799 +#: gnu/packages/web.scm:3866 msgid "Simple HTTP server to serve static files or dynamic documents" msgstr "" -#: gnu/packages/web.scm:3801 +#: gnu/packages/web.scm:3868 msgid "" "Servr provides an HTTP server in R to serve static files, or dynamic\n" "documents that can be converted to HTML files (e.g., R Markdown) under a given\n" "directory." msgstr "" -#: gnu/packages/web.scm:3835 +#: gnu/packages/web.scm:3902 msgid "R tools for HTML" msgstr "" -#: gnu/packages/web.scm:3837 +#: gnu/packages/web.scm:3904 msgid "This package provides tools for HTML generation and output in R." msgstr "Ce paquet fournit des outils pour générer du HTML en R." -#: gnu/packages/web.scm:3856 +#: gnu/packages/web.scm:3923 msgid "HTML Widgets for R" msgstr "" -#: gnu/packages/web.scm:3858 +#: gnu/packages/web.scm:3925 msgid "" "HTML widgets is a framework for creating HTML widgets that render in\n" "various contexts including the R console, R Markdown documents, and Shiny web\n" "applications." msgstr "" -#: gnu/packages/web.scm:3883 +#: gnu/packages/web.scm:3952 msgid "Advanced tables for Markdown/HTML" msgstr "" -#: gnu/packages/web.scm:3885 +#: gnu/packages/web.scm:3954 msgid "" "This package provides functions to build tables with advanced layout\n" "elements such as row spanners, column spanners, table spanners, zebra\n" @@ -19020,11 +20571,11 @@ msgid "" "LaTeX." msgstr "" -#: gnu/packages/web.scm:3922 +#: gnu/packages/web.scm:3991 msgid "HTTP client for R" msgstr "" -#: gnu/packages/web.scm:3924 +#: gnu/packages/web.scm:3993 msgid "" "The @code{curl()} and @code{curl_download()} functions provide highly\n" "configurable drop-in replacements for base @code{url()} and\n" @@ -19035,52 +20586,52 @@ msgid "" "callback or connection interfaces." msgstr "" -#: gnu/packages/web.scm:3946 +#: gnu/packages/web.scm:4015 msgid "Output R objects in HTML format" msgstr "" -#: gnu/packages/web.scm:3948 +#: gnu/packages/web.scm:4017 msgid "" "This package provides easy-to-use and versatile functions to output R\n" "objects in HTML format." msgstr "" -#: gnu/packages/web.scm:3965 +#: gnu/packages/web.scm:4034 msgid "JSON library for R" msgstr "" -#: gnu/packages/web.scm:3967 +#: gnu/packages/web.scm:4036 msgid "" "This package provides functions to convert R objects into JSON objects\n" "and vice-versa." msgstr "" -#: gnu/packages/web.scm:3996 +#: gnu/packages/web.scm:4061 msgid "HTML5 parsing library" msgstr "Bibliothèque d'analyse d'HTML5" -#: gnu/packages/web.scm:3998 +#: gnu/packages/web.scm:4063 msgid "" "Gumbo is an implementation of the HTML5 parsing algorithm implemented as\n" "a pure C99 library." msgstr "" -#: gnu/packages/web.scm:4069 +#: gnu/packages/web.scm:4134 msgid "Application container server" msgstr "" -#: gnu/packages/web.scm:4071 +#: gnu/packages/web.scm:4136 msgid "" "uWSGI presents a complete stack for networked/clustered web applications,\n" "implementing message/object passing, caching, RPC and process management.\n" "It uses the uwsgi protocol for all the networking/interprocess communications." msgstr "" -#: gnu/packages/web.scm:4101 +#: gnu/packages/web.scm:4166 msgid "Command-line JSON processor" msgstr "" -#: gnu/packages/web.scm:4102 +#: gnu/packages/web.scm:4167 msgid "" "jq is like sed for JSON data – you can use it to slice and\n" "filter and map and transform structured data with the same ease that sed, awk,\n" @@ -19090,106 +20641,106 @@ msgid "" "you'd expect." msgstr "" -#: gnu/packages/web.scm:4141 +#: gnu/packages/web.scm:4206 msgid "Library for mocking web service APIs which use HTTP or HTTPS" msgstr "" -#: gnu/packages/web.scm:4143 +#: gnu/packages/web.scm:4208 msgid "" "Uhttpmock is a project for mocking web service APIs which use HTTP or\n" "HTTPS. It provides a library, libuhttpmock, which implements recording and\n" "playback of HTTP request/response traces." msgstr "" -#: gnu/packages/web.scm:4178 +#: gnu/packages/web.scm:4243 msgid "Single file web server" msgstr "" -#: gnu/packages/web.scm:4179 +#: gnu/packages/web.scm:4244 msgid "" "Woof (Web Offer One File) is a small simple web server that\n" "can easily be invoked on a single file. Your partner can access the file with\n" "tools they trust (e.g. wget)." msgstr "" -#: gnu/packages/web.scm:4205 +#: gnu/packages/web.scm:4270 msgid "Build system for the Netsurf project" msgstr "" -#: gnu/packages/web.scm:4207 +#: gnu/packages/web.scm:4272 msgid "" "This package provides the shared build system for Netsurf project\n" "libraries." msgstr "" -#: gnu/packages/web.scm:4242 +#: gnu/packages/web.scm:4307 msgid "Parser building library" msgstr "Bibliothèque de construction d'analyseur" -#: gnu/packages/web.scm:4244 +#: gnu/packages/web.scm:4309 msgid "" "LibParserUtils is a library for building efficient parsers, written in\n" "C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4272 +#: gnu/packages/web.scm:4337 msgid "HTML5 compliant parsing library" msgstr "" -#: gnu/packages/web.scm:4274 +#: gnu/packages/web.scm:4339 msgid "" "Hubbub is an HTML5 compliant parsing library, written in C, which can\n" "parse both valid and invalid web content. It is developed as part of the\n" "NetSurf project." msgstr "" -#: gnu/packages/web.scm:4349 +#: gnu/packages/web.scm:4415 msgid "Wiki compiler, capable of generating HTML" msgstr "" -#: gnu/packages/web.scm:4351 +#: gnu/packages/web.scm:4417 msgid "" "Ikiwiki is a wiki compiler, capable of generating a static set of web\n" "pages, but also incorporating dynamic features like a web based editor and\n" "commenting." msgstr "" -#: gnu/packages/web.scm:4375 +#: gnu/packages/web.scm:4441 msgid "String internment library" msgstr "" -#: gnu/packages/web.scm:4377 +#: gnu/packages/web.scm:4443 msgid "" "LibWapcaplet provides a reference counted string internment system\n" "designed to store small strings and allow rapid comparison of them. It is\n" "developed as part of the Netsurf project." msgstr "" -#: gnu/packages/web.scm:4404 +#: gnu/packages/web.scm:4470 msgid "CSS parser and selection library" msgstr "Bibliothèque d'analyse et de sélection de CSS" -#: gnu/packages/web.scm:4406 +#: gnu/packages/web.scm:4472 msgid "" "LibCSS is a CSS (Cascading Style Sheet) parser and selection engine,\n" "written in C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4440 +#: gnu/packages/web.scm:4506 msgid "Implementation of the W3C DOM" msgstr "" -#: gnu/packages/web.scm:4442 +#: gnu/packages/web.scm:4508 msgid "" "LibDOM is an implementation of the W3C DOM, written in C. It is\n" "developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4469 +#: gnu/packages/web.scm:4535 msgid "Library for parsing SVG files" msgstr "Bibliothèque pour analyser des fichiers SVG" -#: gnu/packages/web.scm:4471 +#: gnu/packages/web.scm:4537 msgid "" "Libsvgtiny takes some SVG as input and returns a list of paths and texts\n" "which can be rendered easily, as defined in\n" @@ -19197,94 +20748,94 @@ msgid "" "project." msgstr "" -#: gnu/packages/web.scm:4494 +#: gnu/packages/web.scm:4560 msgid "Decoding library for BMP and ICO files" msgstr "" -#: gnu/packages/web.scm:4496 +#: gnu/packages/web.scm:4562 msgid "" "Libnsbmp is a decoding library for BMP and ICO image file formats,\n" "written in C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4517 +#: gnu/packages/web.scm:4583 msgid "Decoding library for GIF files" msgstr "" -#: gnu/packages/web.scm:4519 +#: gnu/packages/web.scm:4585 msgid "" "Libnsgif is a decoding library for the GIF image file format, written in\n" "C. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4540 +#: gnu/packages/web.scm:4606 msgid "Utility library for NetSurf" msgstr "" -#: gnu/packages/web.scm:4542 +#: gnu/packages/web.scm:4608 msgid "" "Libnsutils provides a small number of useful utility routines. It is\n" "developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4563 +#: gnu/packages/web.scm:4629 msgid "Library to generate a static Public Suffix List" msgstr "" -#: gnu/packages/web.scm:4565 +#: gnu/packages/web.scm:4631 msgid "" "Libnspsl is a library to generate a static code representation of the\n" "Public Suffix List. It is developed as part of the NetSurf project." msgstr "" -#: gnu/packages/web.scm:4591 +#: gnu/packages/web.scm:4657 msgid "Generate JavaScript to DOM bindings" msgstr "" -#: gnu/packages/web.scm:4593 +#: gnu/packages/web.scm:4659 msgid "" "@code{nsgenbind} is a tool to generate JavaScript to DOM bindings from\n" "w3c webidl files and a binding configuration file." msgstr "" -#: gnu/packages/web.scm:4704 +#: gnu/packages/web.scm:4770 msgid "Web browser" msgstr "" -#: gnu/packages/web.scm:4706 +#: gnu/packages/web.scm:4772 msgid "" "NetSurf is a lightweight web browser that has its own layout and\n" "rendering engine entirely written from scratch. It is small and capable of\n" "handling many of the web standards in use today." msgstr "" -#: gnu/packages/web.scm:4739 +#: gnu/packages/web.scm:4812 msgid "Unix command line interface to the www" msgstr "" -#: gnu/packages/web.scm:4740 +#: gnu/packages/web.scm:4813 msgid "" "Surfraw (Shell Users' Revolutionary Front Rage Against the Web)\n" "provides a unix command line interface to a variety of popular www search engines\n" "and similar services." msgstr "" -#: gnu/packages/web.scm:4771 +#: gnu/packages/web.scm:4844 msgid "Simple static web server" msgstr "" -#: gnu/packages/web.scm:4772 +#: gnu/packages/web.scm:4845 msgid "" "darkhttpd is a simple static web server. It is\n" "standalone and does not need inetd or ucspi-tcp. It does not need any\n" "config files---you only have to specify the www root." msgstr "" -#: gnu/packages/web.scm:4802 +#: gnu/packages/web.scm:4876 msgid "Analyze Web server logs in real time" msgstr "" -#: gnu/packages/web.scm:4804 +#: gnu/packages/web.scm:4878 msgid "" "GoAccess is a real-time web log analyzer and interactive viewer that\n" "runs in a terminal or through your browser. It provides fast and valuable\n" @@ -19292,11 +20843,11 @@ msgid "" "on the fly." msgstr "" -#: gnu/packages/web.scm:4839 +#: gnu/packages/web.scm:4914 msgid "Tunnel data connections through HTTP requests" msgstr "" -#: gnu/packages/web.scm:4840 +#: gnu/packages/web.scm:4915 msgid "" "httptunnel creates a bidirectional virtual data connection\n" "tunnelled through HTTP (HyperText Transfer Protocol) requests. This can be\n" @@ -19305,11 +20856,11 @@ msgid "" "tools like SSH (Secure Shell) to reach the outside world." msgstr "" -#: gnu/packages/web.scm:4865 +#: gnu/packages/web.scm:4940 msgid "TLS proxy for clients or servers" msgstr "" -#: gnu/packages/web.scm:4866 +#: gnu/packages/web.scm:4941 msgid "" "Stunnel is a proxy designed to add TLS encryption\n" "functionality to existing clients and servers without any changes in the\n" @@ -19318,11 +20869,11 @@ msgid "" "deployments." msgstr "" -#: gnu/packages/web.scm:4890 +#: gnu/packages/web.scm:4968 msgid "Internet services daemon" msgstr "" -#: gnu/packages/web.scm:4891 +#: gnu/packages/web.scm:4969 msgid "" "@code{xinetd}, a more secure replacement for @code{inetd},\n" "listens for incoming requests over a network and launches the appropriate\n" @@ -19331,11 +20882,11 @@ msgid "" "used to start services with both privileged and non-privileged port numbers." msgstr "" -#: gnu/packages/web.scm:4935 +#: gnu/packages/web.scm:5013 msgid "HTML Tidy with HTML5 support" msgstr "" -#: gnu/packages/web.scm:4937 +#: gnu/packages/web.scm:5015 msgid "" "Tidy is a console application which corrects and cleans up\n" "HTML and XML documents by fixing markup errors and upgrading\n" @@ -19346,22 +20897,22 @@ msgid "" "functions of Tidy." msgstr "" -#: gnu/packages/web.scm:4993 +#: gnu/packages/web.scm:5072 msgid "Webserver with focus on security" msgstr "" -#: gnu/packages/web.scm:4995 +#: gnu/packages/web.scm:5074 msgid "" "Hiawatha has been written with security in mind.\n" "Features include the ability to stop SQL injections, XSS and CSRF attacks and\n" "exploit attempts." msgstr "" -#: gnu/packages/web.scm:5019 +#: gnu/packages/web.scm:5098 msgid "HTTP request and response service" msgstr "" -#: gnu/packages/web.scm:5020 +#: gnu/packages/web.scm:5099 msgid "" "Testing an HTTP Library can become difficult sometimes.\n" "@code{RequestBin} is fantastic for testing POST requests, but doesn't let you control the\n" @@ -19369,22 +20920,22 @@ msgid "" "JSON-encoded." msgstr "" -#: gnu/packages/web.scm:5048 +#: gnu/packages/web.scm:5127 msgid "Test your HTTP library against a local copy of httpbin" msgstr "" -#: gnu/packages/web.scm:5050 +#: gnu/packages/web.scm:5129 msgid "" "@code{Pytest-httpbin} creates a @code{pytest} fixture that is dependency-injected\n" "into your tests. It automatically starts up a HTTP server in a separate thread running\n" "@code{httpbin} and provides your test with the URL in the fixture." msgstr "" -#: gnu/packages/web.scm:5081 +#: gnu/packages/web.scm:5160 msgid "HTTP request/response parser for C" msgstr "" -#: gnu/packages/web.scm:5082 +#: gnu/packages/web.scm:5161 msgid "" "This is a parser for HTTP messages written in C. It parses\n" "both requests and responses. The parser is designed to be used in\n" @@ -19394,53 +20945,53 @@ msgid "" "message stream (in a web server that is per connection)." msgstr "" -#: gnu/packages/web.scm:5134 +#: gnu/packages/web.scm:5213 msgid "HTTP client mock for Python" msgstr "" -#: gnu/packages/web.scm:5135 +#: gnu/packages/web.scm:5214 msgid "" "@code{httpretty} is a helper for faking web requests,\n" "inspired by Ruby's @code{fakeweb}." msgstr "" -#: gnu/packages/web.scm:5153 +#: gnu/packages/web.scm:5232 msgid "Output JSON from a shell" msgstr "" -#: gnu/packages/web.scm:5154 +#: gnu/packages/web.scm:5233 msgid "" "jo is a command-line utility to create JSON objects or\n" "arrays. It creates a JSON string on stdout from words provided as\n" "command-line arguments or read from stdin." msgstr "" -#: gnu/packages/web.scm:5203 +#: gnu/packages/web.scm:5281 msgid "Command-line interface to archive.org" msgstr "Interface en ligne de commande pour archive.org" -#: gnu/packages/web.scm:5204 +#: gnu/packages/web.scm:5282 msgid "" "@code{ia} is a command-line tool for using\n" "@url{archive.org} from the command-line. It also emplements the\n" "internetarchive python module for programatic access to archive.org." msgstr "" -#: gnu/packages/web.scm:5259 +#: gnu/packages/web.scm:5338 msgid "Search code snippets on @url{https://commandlinefu.com}" msgstr "" -#: gnu/packages/web.scm:5260 +#: gnu/packages/web.scm:5339 msgid "" "@code{clf} is a command line tool for searching code\n" "snippets on @url{https://commandlinefu.com}." msgstr "" -#: gnu/packages/web.scm:5362 +#: gnu/packages/web.scm:5443 msgid "Easy interactive web applications with R" msgstr "" -#: gnu/packages/web.scm:5364 +#: gnu/packages/web.scm:5445 msgid "" "Makes it incredibly easy to build interactive web applications\n" "with R. Automatic \"reactive\" binding between inputs and outputs and\n" @@ -19448,22 +20999,32 @@ msgid "" "responsive, and powerful applications with minimal effort." msgstr "" -#: gnu/packages/web.scm:5390 +#: gnu/packages/web.scm:5484 +msgid "Create dashboards with shiny" +msgstr "" + +#: gnu/packages/web.scm:5485 +msgid "" +"This package provides an extension to the Shiny web\n" +"application framework for R, making it easy to create attractive dashboards." +msgstr "" + +#: gnu/packages/web.scm:5512 msgid "Inter-widget interactivity for HTML widgets" msgstr "" -#: gnu/packages/web.scm:5392 +#: gnu/packages/web.scm:5514 msgid "" "This package provides building blocks for allowing HTML widgets to\n" "communicate with each other, with Shiny or without (i.e. static @code{.html}\n" "files). It currently supports linked brushing and filtering." msgstr "" -#: gnu/packages/web.scm:5412 +#: gnu/packages/web.scm:5534 msgid "Web server interface for R" msgstr "Serveur web d'interface pour R" -#: gnu/packages/web.scm:5414 +#: gnu/packages/web.scm:5536 msgid "" "This package contains the Rook specification and convenience software\n" "for building and running Rook applications. A Rook application is an R\n" @@ -19472,22 +21033,22 @@ msgid "" "named elements: the @code{status}, the @code{headers}, and the @code{body}." msgstr "" -#: gnu/packages/web.scm:5454 +#: gnu/packages/web.scm:5575 msgid "Generate Atom feeds for social networking websites" msgstr "" -#: gnu/packages/web.scm:5455 +#: gnu/packages/web.scm:5576 msgid "" "rss-bridge generates Atom feeds for social networking\n" "websites lacking feeds. Supported websites include Facebook, Twitter,\n" "Instagram and YouTube." msgstr "" -#: gnu/packages/web.scm:5487 +#: gnu/packages/web.scm:5603 msgid "Check websites for broken links" msgstr "" -#: gnu/packages/web.scm:5488 +#: gnu/packages/web.scm:5604 msgid "" "LinkChecker is a website validator. It checks for broken\n" "links in websites. It is recursive and multithreaded providing output in\n" @@ -19496,99 +21057,99 @@ msgid "" "file links." msgstr "" -#: gnu/packages/web.scm:5529 +#: gnu/packages/web.scm:5640 msgid "Command-line WebDAV client" msgstr "" -#: gnu/packages/web.scm:5531 +#: gnu/packages/web.scm:5642 msgid "" "Cadaver is a command-line WebDAV client for Unix. It supports\n" "file upload, download, on-screen display, namespace operations (move/copy),\n" "collection creation and deletion, and locking operations." msgstr "" -#: gnu/packages/web.scm:5549 +#: gnu/packages/web.scm:5660 msgid "Universal Binary JSON encoder/decoder" msgstr "" -#: gnu/packages/web.scm:5551 +#: gnu/packages/web.scm:5662 msgid "" "Py-ubjson is a Python module providing an Universal Binary JSON\n" "encoder/decoder based on the draft-12 specification for UBJSON." msgstr "" -#: gnu/packages/web.scm:5599 +#: gnu/packages/web.scm:5710 msgid "" "Java Servlet, JavaServer Pages, Java Expression Language and Java\n" "WebSocket" msgstr "" -#: gnu/packages/web.scm:5601 +#: gnu/packages/web.scm:5712 msgid "" "Apache Tomcat is a free implementation of the Java\n" "Servlet, JavaServer Pages, Java Expression Language and Java WebSocket\n" "technologies." msgstr "" -#: gnu/packages/web.scm:5651 +#: gnu/packages/web.scm:5762 msgid "Helper classes for jetty tests" msgstr "" -#: gnu/packages/web.scm:5652 +#: gnu/packages/web.scm:5763 msgid "" "This packages contains helper classes for testing the Jetty\n" "Web Server." msgstr "" -#: gnu/packages/web.scm:5714 +#: gnu/packages/web.scm:5825 msgid "Utility classes for Jetty" msgstr "" -#: gnu/packages/web.scm:5715 +#: gnu/packages/web.scm:5826 msgid "" "The Jetty Web Server provides an HTTP server and Servlet\n" "container capable of serving static and dynamic content either from a standalone\n" "or embedded instantiation. This package provides utility classes." msgstr "" -#: gnu/packages/web.scm:5786 +#: gnu/packages/web.scm:5897 msgid "Jetty :: IO Utility" msgstr "" -#: gnu/packages/web.scm:5787 +#: gnu/packages/web.scm:5898 msgid "" "The Jetty Web Server provides an HTTP server and Servlet\n" "container capable of serving static and dynamic content either from a standalone\n" "or embedded instantiation. This package provides IO-related utility classes." msgstr "" -#: gnu/packages/web.scm:5830 +#: gnu/packages/web.scm:5941 msgid "Jetty :: Http Utility" msgstr "" -#: gnu/packages/web.scm:5831 +#: gnu/packages/web.scm:5942 msgid "" "The Jetty Web Server provides an HTTP server and Servlet\n" "container capable of serving static and dynamic content either from a standalone\n" "or embedded instantiation. This package provides HTTP-related utility classes." msgstr "" -#: gnu/packages/web.scm:5864 +#: gnu/packages/web.scm:5975 msgid "Jetty :: JMX Management" msgstr "" -#: gnu/packages/web.scm:5865 +#: gnu/packages/web.scm:5976 msgid "" "The Jetty Web Server provides an HTTP server and Servlet\n" "container capable of serving static and dynamic content either from a standalone\n" "or embedded instantiation. This package provides the JMX management." msgstr "" -#: gnu/packages/web.scm:5951 +#: gnu/packages/web.scm:6062 msgid "Core jetty server artifact" msgstr "" -#: gnu/packages/web.scm:5952 +#: gnu/packages/web.scm:6063 msgid "" "The Jetty Web Server provides an HTTP server and Servlet\n" "container capable of serving static and dynamic content either from a standalone\n" @@ -19596,11 +21157,11 @@ msgid "" "artifact." msgstr "" -#: gnu/packages/web.scm:5995 +#: gnu/packages/web.scm:6106 msgid "Jetty security infrastructure" msgstr "" -#: gnu/packages/web.scm:5996 +#: gnu/packages/web.scm:6107 msgid "" "The Jetty Web Server provides an HTTP server and Servlet\n" "container capable of serving static and dynamic content either from a standalone\n" @@ -19608,11 +21169,11 @@ msgid "" "infrastructure" msgstr "" -#: gnu/packages/web.scm:6039 +#: gnu/packages/web.scm:6155 msgid "Jetty Servlet Container" msgstr "" -#: gnu/packages/web.scm:6040 +#: gnu/packages/web.scm:6156 msgid "" "The Jetty Web Server provides an HTTP server and Servlet\n" "container capable of serving static and dynamic content either from a standalone\n" @@ -19620,11 +21181,22 @@ msgid "" "container." msgstr "" -#: gnu/packages/web.scm:6087 +#: gnu/packages/web.scm:6320 +msgid "HTML parser" +msgstr "Analyse d'HTML" + +#: gnu/packages/web.scm:6321 +msgid "" +"Jsoup is a Java library for working with real-world HTML. It\n" +"provides a very convenient API for extracting and manipulating data, using the\n" +"best of DOM, CSS, and jQuery-like methods." +msgstr "" + +#: gnu/packages/web.scm:6342 msgid "Validate HTML" msgstr "" -#: gnu/packages/web.scm:6088 +#: gnu/packages/web.scm:6343 msgid "" "Tidyp is a program that can validate your HTML, as well as\n" "modify it to be more clean and standard. tidyp does not validate HTML 5.\n" @@ -19634,22 +21206,92 @@ msgid "" "based on this library, allowing Perl programmers to easily validate HTML." msgstr "" -#: gnu/packages/web.scm:6129 +#: gnu/packages/web.scm:6384 msgid "(X)HTML validation in a Perl object" msgstr "" -#: gnu/packages/web.scm:6130 +#: gnu/packages/web.scm:6385 msgid "" "@code{HTML::Tidy} is an HTML checker in a handy dandy\n" "object. It's meant as a replacement for @code{HTML::Lint}, which is written\n" "in Perl but is not nearly as capable as @code{HTML::Tidy}." msgstr "" -#: gnu/packages/wordnet.scm:86 +#: gnu/packages/web.scm:6411 +msgid "Small Gopher server" +msgstr "" + +#: gnu/packages/web.scm:6413 +msgid "" +"Geomyidae is a server for distributed hypertext protocol Gopher. Its\n" +"features include:\n" +"\n" +"@enumerate\n" +"@item Gopher menus (see @file{index.gph} for an example);\n" +"@item directory listings (if no @file{index.gph} was found);\n" +"@item CGI support (@file{.cgi} files are executed);\n" +"@item search support in CGI files;\n" +"@item logging with multiple log levels.\n" +"@end enumerate\n" +msgstr "" + +#: gnu/packages/web.scm:6461 +msgid "Random avatar generator" +msgstr "" + +#: gnu/packages/web.scm:6462 +msgid "" +"Cat avatar generator is a generator of cat pictures optimised\n" +"to generate random avatars, or defined avatar from a \"seed\". This is a\n" +"derivation by David Revoy from the original MonsterID by Andreas Gohr." +msgstr "" + +#: gnu/packages/web.scm:6524 +msgid "HTTP/2 protocol client, proxy, server, and library" +msgstr "" + +#: gnu/packages/web.scm:6526 +msgid "" +"nghttp2 implements the Hypertext Transfer Protocol, version\n" +"2 (@dfn{HTTP/2}).\n" +"\n" +"A reusable C library provides the HTTP/2 framing layer, with several tools built\n" +"on top of it:\n" +"\n" +"@itemize\n" +"@item @command{nghttp}, a command-line HTTP/2 client. It exposes many advanced\n" +"and low-level aspects of the protocol and is useful for debugging.\n" +"@item @command{nghttpd}, a fast, multi-threaded HTTP/2 static web server that\n" +"serves files from a local directory.\n" +"@item @command{nghttpx}, a fast, multi-threaded HTTP/2 reverse proxy that can be\n" +"deployed in front of existing web servers that don't support HTTP/2.\n" +"Both @command{nghttpd} and @command{nghttpx} can fall back to HTTP/1.1 for\n" +"backwards compatibilty with clients that don't speak HTTP/2.\n" +"@item @command{h2load} for benchmarking (only!) your own HTTP/2 servers.\n" +"@item HTTP/2 uses a header compression method called @dfn{HPACK}.\n" +"nghttp2 provides a HPACK encoder and decoder as part of its public API.\n" +"@item @command{deflatehd} converts JSON data or HTTP/1-style header fields to\n" +"compressed JSON header blocks.\n" +"@item @command{inflatehd} converts such compressed headers back to JSON pairs.\n" +"@end itemize\n" +msgstr "" + +#: gnu/packages/web.scm:6622 +msgid "Web interface for cluster deployments of Guix" +msgstr "" + +#: gnu/packages/web.scm:6623 +msgid "" +"Hpcguix-web provides a web interface to the list of packages\n" +"provided by Guix. The list of packages is searchable and provides\n" +"instructions on how to use Guix in a shared HPC environment." +msgstr "" + +#: gnu/packages/wordnet.scm:92 msgid "Lexical database for the English language" msgstr "Base de données lexicale pour la langue anglaise" -#: gnu/packages/wordnet.scm:88 +#: gnu/packages/wordnet.scm:94 msgid "" "WordNet is a large lexical database of English. Nouns, verbs,\n" "adjectives and adverbs are grouped into sets of cognitive synonyms (synsets),\n" @@ -19669,11 +21311,11 @@ msgstr "" "La structure de WordNet en fait un outil utile pour la linguistique informatique et\n" "le traitement de la langue naturelle." -#: gnu/packages/xiph.scm:68 +#: gnu/packages/xiph.scm:69 msgid "Library for manipulating the ogg multimedia format" msgstr "" -#: gnu/packages/xiph.scm:70 +#: gnu/packages/xiph.scm:71 msgid "" "The libogg library allows to manipulate the ogg multimedia container\n" "format, which encapsulates raw compressed data and allows the interleaving of\n" @@ -19682,11 +21324,11 @@ msgid "" "periodic timestamps for seeking." msgstr "" -#: gnu/packages/xiph.scm:94 +#: gnu/packages/xiph.scm:95 msgid "Library implementing the vorbis audio format" msgstr "" -#: gnu/packages/xiph.scm:96 +#: gnu/packages/xiph.scm:97 msgid "" "The libvorbis library implements the ogg vorbis audio format,\n" "a fully open, non-proprietary, patent-and-royalty-free, general-purpose\n" @@ -19695,22 +21337,22 @@ msgid "" "128 kbps/channel." msgstr "" -#: gnu/packages/xiph.scm:121 +#: gnu/packages/xiph.scm:122 msgid "Library implementing the Theora video format" msgstr "" -#: gnu/packages/xiph.scm:123 +#: gnu/packages/xiph.scm:124 msgid "" "The libtheora library implements the ogg theora video format,\n" "a fully open, non-proprietary, patent-and-royalty-free, general-purpose\n" "compressed video format." msgstr "" -#: gnu/packages/xiph.scm:148 +#: gnu/packages/xiph.scm:149 msgid "Library for patent-free audio compression format" msgstr "" -#: gnu/packages/xiph.scm:150 +#: gnu/packages/xiph.scm:151 msgid "" "GNU Speex is a patent-free audio compression codec specially designed\n" "for speech. It is well-adapted to internet applications, such as VoIP. It\n" @@ -19718,21 +21360,21 @@ msgid "" "stereo encoding, and voice activity detection." msgstr "" -#: gnu/packages/xiph.scm:176 +#: gnu/packages/xiph.scm:177 msgid "Speex processing library" msgstr "Bibliothèque de traitement de Speex" -#: gnu/packages/xiph.scm:178 +#: gnu/packages/xiph.scm:179 msgid "" "SpeexDSP is a @dfn{DSP} (Digital Signal Processing) library based on\n" "work from the @code{speex} codec." msgstr "" -#: gnu/packages/xiph.scm:205 +#: gnu/packages/xiph.scm:206 msgid "Cross platform audio library" msgstr "" -#: gnu/packages/xiph.scm:207 +#: gnu/packages/xiph.scm:208 msgid "" "Libao is a cross-platform audio library that allows programs to\n" "output audio using a simple API on a wide variety of platforms.\n" @@ -19758,21 +21400,21 @@ msgid "" "@end enumerate\n" msgstr "" -#: gnu/packages/xiph.scm:249 +#: gnu/packages/xiph.scm:250 msgid "Free lossless audio codec" msgstr "" -#: gnu/packages/xiph.scm:251 +#: gnu/packages/xiph.scm:252 msgid "" "FLAC stands for Free Lossless Audio Codec, an audio format that is lossless,\n" "meaning that audio is compressed in FLAC without any loss in quality." msgstr "" -#: gnu/packages/xiph.scm:277 +#: gnu/packages/xiph.scm:278 msgid "Karaoke and text codec for embedding in ogg" msgstr "" -#: gnu/packages/xiph.scm:279 +#: gnu/packages/xiph.scm:280 msgid "" "Kate is an overlay codec, originally designed for karaoke and text,\n" "that can be multiplixed in Ogg. Text and images can be carried by a Kate\n" @@ -19787,11 +21429,11 @@ msgid "" "Kate stream." msgstr "" -#: gnu/packages/xiph.scm:317 +#: gnu/packages/xiph.scm:318 msgid "Ogg vorbis tools" msgstr "Outils pour Ogg vorbis" -#: gnu/packages/xiph.scm:319 +#: gnu/packages/xiph.scm:320 msgid "" "Ogg vorbis is a non-proprietary, patent-and-royalty-free,\n" "general-purpose compressed audio format.\n" @@ -19813,11 +21455,11 @@ msgstr "" "ogginfo, pour obtenir des informations (tags, débit, longueur, etc) à propos\n" " d'un fichier ogg vorbis." -#: gnu/packages/xiph.scm:343 gnu/packages/xiph.scm:406 +#: gnu/packages/xiph.scm:344 gnu/packages/xiph.scm:407 msgid "Versatile audio codec" msgstr "Codec audio polyvalent" -#: gnu/packages/xiph.scm:345 +#: gnu/packages/xiph.scm:346 msgid "" "Opus is a totally open, royalty-free, highly versatile audio codec. Opus\n" "is unmatched for interactive speech and music transmission over the Internet,\n" @@ -19832,11 +21474,11 @@ msgstr "" "qui contient les technologies du codec SILK de Skype et du code CELT de\n" "Xiph.Org." -#: gnu/packages/xiph.scm:379 +#: gnu/packages/xiph.scm:380 msgid "Command line utilities to encode, inspect, and decode .opus files" msgstr "Utilitaires en ligne de commande pour encoder, inspecter et décoder des fichiers .opus" -#: gnu/packages/xiph.scm:380 +#: gnu/packages/xiph.scm:381 msgid "" "Opus is a royalty-free, highly versatile audio codec.\n" "Opus-tools provide command line utilities for creating, inspecting and\n" @@ -19846,7 +21488,7 @@ msgstr "" "Opus-tools fournit des utilitaires en ligne de commande pour créer, inspecter\n" "et décoder des fichiers .opus." -#: gnu/packages/xiph.scm:408 +#: gnu/packages/xiph.scm:409 msgid "" "The opusfile library provides seeking, decode, and playback of Opus\n" "streams in the Ogg container (.opus files) including over http(s) on posix and\n" @@ -19856,11 +21498,11 @@ msgstr "" "flux Opus dans le conteneur Ogg (fichiers .opus) notamment par http(s) sur les\n" "systèmes posix et windows." -#: gnu/packages/xiph.scm:438 +#: gnu/packages/xiph.scm:439 msgid "Streaming media server" msgstr "Serveur de flux multimédia" -#: gnu/packages/xiph.scm:439 +#: gnu/packages/xiph.scm:440 msgid "" "Icecast is a streaming media server which currently supports\n" "Ogg (Vorbis and Theora), Opus, WebM and MP3 audio streams. It can be used to\n" @@ -19872,11 +21514,11 @@ msgstr "" "utilisé pour créer une station radio internet ou un jukebox privé et bien\n" "d'autres choses." -#: gnu/packages/xiph.scm:467 +#: gnu/packages/xiph.scm:468 msgid "Audio streaming library for icecast encoders" msgstr "Bibliothèque de streaming audio pour les encodeurs icecast" -#: gnu/packages/xiph.scm:469 +#: gnu/packages/xiph.scm:470 msgid "" "Libshout is a library for communicating with and sending data to an\n" "icecast server. It handles the socket connection, the timing of the data,\n" @@ -19886,26 +21528,46 @@ msgstr "" "un serveur icecast. Il prend en charge la connexion, la synchronisation des\n" "données et évite que de mauvaises données n'atteignent le serveur icecast." -#: gnu/services/base.scm:212 +#: gnu/services/base.scm:293 +msgid "" +"The @code{user-processes} service is responsible for\n" +"terminating all the processes so that the root file system can be re-mounted\n" +"read-only, just before rebooting/halting. Processes still running after a few\n" +"seconds after @code{SIGTERM} has been sent are terminated with\n" +"@code{SIGKILL}." +msgstr "" +"Le service @code{user-processes} est responsable de la terminaison\n" +"des processus pour que le système de fichiers racine puisse être remonté\n" +"en lecture-seule juste avant de redémarrer ou de s'éteindre. Les processus qui\n" +"tournent toujours quelques secondes après qu'un @code{SIGTERM} leur ait été\n" +"envoyé sont terminés avec @code{SIGKILL}." + +#: gnu/services/base.scm:345 msgid "" "Populate the @file{/etc/fstab} based on the given file\n" "system objects." msgstr "" +"Rempli @file{/etc/fstab} en fonction des objets de systèmes de\n" +"fichiers donnés." -#: gnu/services/base.scm:356 +#: gnu/services/base.scm:522 msgid "" "Provide Shepherd services to mount and unmount the given\n" "file systems, as well as corresponding @file{/etc/fstab} entries." msgstr "" +"Fournit des services Shepherd pour monter et démonter les systèmes\n" +"de fichiers donnés, ainsi que les entrées @file{/etc/fstab} correspondantes." -#: gnu/services/base.scm:555 +#: gnu/services/base.scm:612 msgid "" "Seed the @file{/dev/urandom} pseudo-random number\n" "generator (RNG) with the value recorded when the system was last shut\n" "down." msgstr "" +"Initialise le générateur de nombres pseudo-aléatoires (PRNG) @file{/dev/urandom}\n" +"avec la valeur enregistrée lors de la dernière extinction du système." -#: gnu/services/base.scm:694 +#: gnu/services/base.scm:773 msgid "" "Install the given fonts on the specified ttys (fonts are per\n" "virtual console on GNU/Linux). The value of this service is a list of\n" @@ -19915,147 +21577,377 @@ msgid "" "'((\"tty1\" . \"LatGrkCyr-8x16\"))\n" "@end example\n" msgstr "" +"Installe des polices données sur les ttys spécifiés (les polices sont par\n" +"console virtuelle sous GNU/Linux). la valeur de ces service est une liste\n" +"de paires de tty/police comme ceci :\n" +"\n" +"@example\n" +"'((\"tty1\" . \"LatGrkCyr-8x16\"))\n" +"@end example\n" -#: gnu/services/base.scm:737 +#: gnu/services/base.scm:816 msgid "" "Provide a console log-in service as specified by its\n" "configuration value, a @code{login-configuration} object." msgstr "" +"Fournit un service de connexion en console tel que spécifié par sa\n" +"valeur de configuration, un objet @code{login-configuration}." -#: gnu/services/base.scm:956 +#: gnu/services/base.scm:1079 msgid "" "Provide console login using the @command{agetty}\n" "program." -msgstr "" +msgstr "Fournit la connexion en console avec le programme @command{agetty}." -#: gnu/services/base.scm:1010 +#: gnu/services/base.scm:1133 msgid "" "Provide console login using the @command{mingetty}\n" "program." -msgstr "" +msgstr "Fournit la connexion en console avec le programme @command{mingetty}." -#: gnu/services/base.scm:1182 +#: gnu/services/base.scm:1305 msgid "" "Runs libc's @dfn{name service cache daemon} (nscd) with the\n" "given configuration---an @code{} object. @xref{Name\n" "Service Switch}, for an example." msgstr "" +"Lance le @dfn{démon de cache de service de noms} (nscd) de la libc ave la\n" +"configuration donnée — un objet @code{}. @xref{Name\n" +"Service Switch}, pour un exemple." -#: gnu/services/base.scm:1282 +#: gnu/services/base.scm:1405 msgid "" "Install the specified resource usage limits by populating\n" "@file{/etc/security/limits.conf} and using the @code{pam_limits}\n" "authentication module." msgstr "" +"Installe les limites d'utilisation des ressources spécifiées\n" +"en remplissant @file{/etc/security/limits.conf} et en utilisant le module\n" +"d'authentification @code{pam_limits}." -#: gnu/services/base.scm:1458 +#: gnu/services/base.scm:1624 msgid "Run the build daemon of GNU@tie{}Guix, aka. @command{guix-daemon}." -msgstr "" +msgstr "Lance le démon de construction de GNU@tie{}Guix, c'est à dire @command{guix-daemon}." -#: gnu/services/base.scm:1558 +#: gnu/services/base.scm:1724 msgid "" "Add a Shepherd service running @command{guix publish}, a\n" "command that allows you to share pre-built binaries with others over HTTP." msgstr "" +"Ajout un service Shepher qui lance @command{guix publish}, une\n" +"commande qui vous permet de partager les binaires préconstruits sur HTTP." -#: gnu/services/base.scm:1749 +#: gnu/services/base.scm:1929 msgid "" "Run @command{udev}, which populates the @file{/dev}\n" "directory dynamically. Get extra rules from the packages listed in the\n" "@code{rules} field of its value, @code{udev-configuration} object." msgstr "" +"Lance @command{udev}, qui rempli le répertoire @file{/dev}\n" +"dynamiquement. Il prend des règles supplémentaires des paquets listés\n" +"dans le champ @code{rules} de sa valeur, un objet @code{udev-configuration}." -#: gnu/services/base.scm:1824 +#: gnu/services/base.scm:2011 msgid "" "Run GPM, the general-purpose mouse daemon, with the given\n" "command-line options. GPM allows users to use the mouse in the console,\n" "notably to select, copy, and paste text. The default options use the\n" "@code{ps2} protocol, which works for both USB and PS/2 mice." msgstr "" +"Lance GPM, le démon de souris multi-usage avec les options en ligne de\n" +"commande données. GPM permet aux utilisateurs d'utiliser la souris dans la\n" +"console, notamment pour sélectionner, copier et coller du texte. Les options\n" +"par défaut utilisent le protocole @code{ps2} qui fonctionne aussi bien pour les\n" +"souris USB que PS/2." -#: gnu/services/networking.scm:258 +#: gnu/services/base.scm:2186 msgid "" "Turn up the specified network interfaces upon startup,\n" "with the given IP address, gateway, netmask, and so on. The value for\n" "services of this type is a list of @code{static-networking} objects, one per\n" "network interface." msgstr "" +"Active les interfaces réseau spécifiées au démarrage, avec l'adresse\n" +"IP, la passerelle, le masque de sous-réseau, etc. donnés. La valeur des\n" +"services de ce type est une liste d'objets @code{static-networking}, un par\n" +"interface réseau." -#: gnu/services/networking.scm:432 +#: gnu/services/certbot.scm:168 +msgid "" +"Automatically renew @url{https://letsencrypt.org, Let's\n" +"Encrypt} HTTPS certificates by adjusting the nginx web server configuration\n" +"and periodically invoking @command{certbot}." +msgstr "" +"Renouvelle automatiquement des certificats HTTPS @url{https://letsencrypt.org, Let's\n" +"Encrypt} en ajustant la configuration du serveur web nginx et en invoquant\n" +"périodiquement @command{certbot}." + +#: gnu/services/networking.scm:362 msgid "" "Run the @command{ntpd}, the Network Time Protocol (NTP)\n" "daemon of the @uref{http://www.ntp.org, Network Time Foundation}. The daemon\n" "will keep the system clock synchronized with that of the given servers." msgstr "" +"Lance le démon @command{ntpd}, le démon de protocole de temps sur le réseau\n" +"(NTP) de la @uref{http://www.ntp.org, Network Time Foundation}. Le démon gardera\n" +"l'horloge du système synchronisée avec celle du serveur donné." -#: gnu/services/networking.scm:534 +#: gnu/services/networking.scm:474 +msgid "" +"Run the @command{ntpd}, the Network Time Protocol (NTP)\n" +"daemon, as implemented by @uref{http://www.openntpd.org, OpenNTPD}. The\n" +"daemon will keep the system clock synchronized with that of the given servers." +msgstr "" +"Lance le démon @command{ntpd}, le démon de protocole de temps sur le réseau\n" +"(NTP) implémenté par @uref{http://www.openntpd.org, OpenNTPD}. Le démon gardera\n" +"l'horloge du système synchronisée avec celle du serveur donné." + +#: gnu/services/networking.scm:562 msgid "" "Start @command{inetd}, the @dfn{Internet superserver}. It is responsible\n" "for listening on Internet sockets and spawning the corresponding services on\n" "demand." msgstr "" +"Lance @command{inetd}, le @dfn{superserveur internet}. Il est responsable\n" +"de l'écoute sur des sockets Internet et du démarrage des services correspondants\n" +"à la demande." -#: gnu/services/networking.scm:689 +#: gnu/services/networking.scm:720 msgid "" "Run the @uref{https://torproject.org, Tor} anonymous\n" "networking daemon." msgstr "" +"Lance le démon de navigation anonyme\n" +"@uref{https://torproject.org, Tor}." -#: gnu/services/networking.scm:712 +#: gnu/services/networking.scm:743 msgid "Define a new Tor @dfn{hidden service}." -msgstr "" +msgstr "Définie un nouveau @dfn{service caché} Tor." -#: gnu/services/networking.scm:821 -msgid "" -"Run @url{http://bitlbee.org,BitlBee}, a daemon that acts as\n" -"a gateway between IRC and chat networks." -msgstr "" - -#: gnu/services/networking.scm:888 +#: gnu/services/networking.scm:811 msgid "" "Run @url{https://launchpad.net/wicd,Wicd}, a network\n" "management daemon that aims to simplify wired and wireless networking." msgstr "" +"Lance @url{https://launchpad.net/wicd,Wicd}, un démon de gestion\n" +"de réseau qui veut simplifier les connexions filaires et sans-fil." -#: gnu/services/networking.scm:977 +#: gnu/services/networking.scm:911 msgid "" "Run @uref{https://wiki.gnome.org/Projects/NetworkManager,\n" "NetworkManager}, a network management daemon that aims to simplify wired and\n" "wireless networking." msgstr "" +"Lance @uref{https://wiki.gnome.org/Projects/NetworkManager,\n" +"NetworkManager}, une démon de gestion de réseau qui veut simplifier\n" +"les connexions filaires et sans-fil." -#: gnu/services/networking.scm:1035 +#: gnu/services/networking.scm:972 msgid "" "Run @url{https://01.org/connman,Connman},\n" "a network connection manager." msgstr "" +"Lance @url{https://01.org/connman,Connman}, un\n" +"gestionnaire de connexion réseau." -#: gnu/services/networking.scm:1124 +#: gnu/services/networking.scm:995 +msgid "" +"Run @uref{https://wiki.gnome.org/Projects/ModemManager,\n" +"ModemManager}, a modem management daemon that aims to simplify dialup\n" +"networking." +msgstr "" +"Lance @uref{https://wiki.gnome.org/Projects/ModemManager,\n" +"ModemManager}, un démon de gestion de modem qui veut simplifier les\n" +"connexions par ligne téléphonique." + +#: gnu/services/networking.scm:1085 msgid "" "Run @uref{http://www.openvswitch.org, Open vSwitch}, a multilayer virtual\n" "switch designed to enable massive network automation through programmatic\n" "extension." msgstr "" +"Lance @uref{http://www.openvswitch.org, Open vSwitch}, un commutateur virtuel\n" +"multi-niveau conçu pour permettre une automatisation massive du réseau via des\n" +"extensions programmables." + +#: gnu/services/version-control.scm:142 +msgid "" +"Expose Git respositories over the insecure @code{git://} TCP-based\n" +"protocol." +msgstr "Expose des répertoires Git sur le protocole TCP @code{git://} non sécurisé." + +#~ msgid "Reference frontend for the libretro API" +#~ msgstr "Interface de référence pour l'API libretro" + +#~ msgid "" +#~ "Libretro is a simple but powerful development interface that allows for\n" +#~ "the easy creation of emulators, games and multimedia applications that can plug\n" +#~ "straight into any libretro-compatible frontend. RetroArch is the official\n" +#~ "reference frontend for the libretro API, currently used by most as a modular\n" +#~ "multi-system game/emulator system." +#~ msgstr "" +#~ "Libretro est une interface de développement simple mais puissante qui permet\n" +#~ "de créer facilement des émulateurs, des jeux et des applications multimédia qui peuvent\n" +#~ "se brancher directement sur une interface compatible avec libretro. RetroArch est\n" +#~ "l'interface de référence officielle pour l'API libretro, actuellement utilisée par la plupart comme\n" +#~ "un système de jeu/d'émulateur multi-système modulaire." + +#~ msgid "X86 emulator with CGA/EGA/VGA/etc. graphics and sound" +#~ msgstr "Émulateur X86 avec CGA/EGA/VGA/etc. graphiques et sons" + +#~ msgid "" +#~ "DOSBox is a DOS-emulator that uses the SDL library. DOSBox\n" +#~ "also emulates CPU:286/386 realmode/protected mode, Directory\n" +#~ "FileSystem/XMS/EMS, Tandy/Hercules/CGA/EGA/VGA/VESA graphics, a\n" +#~ "SoundBlaster/Gravis Ultra Sound card for excellent sound compatibility with\n" +#~ "older games." +#~ msgstr "" +#~ "DOSBox est un émulateur DOS qui utilise la bibliothèque SDL. DOSBox\n" +#~ "émule aussi les modes réels et protégés des CPU 286 et 386, Directory\n" +#~ "FileSystem/XMS/EMS, les graphiques Tandy/Hercules/CGA/EGA/VGA/VESA,\n" +#~ "une carte SoundBlaster/Gravis Ultra pour une excellente compatibilité du son\n" +#~ "avec les plus vieux jeux." + +#~ msgid "Nintendo 64 emulator core library" +#~ msgstr "Bibliothèque de cœur de l'émulateur de Nintendo 64" + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "core library." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient la\n" +#~ "bibliothèque de cœur." + +#~ msgid "Mupen64Plus SDL input plugin" +#~ msgstr "Greffon d'entrée SDL de Mupen64Plus" + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "SDL audio plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon SDL audio." + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "SDL input plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon d'entrée SDL." + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "high-level emulation (HLE) RSP processor plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon de traitement RSP d'émulation haut-niveau (HLE)." + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "Z64 RSP processor plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon de traitement RSP Z64." + +#~ msgid "Mupen64Plus Rice Video plugin" +#~ msgstr "Greffon vidéo Rice pour Mupen64Plus" + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "Arachnoid video plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon vidéo Arachnoid." + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "Glide64 video plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon vidéo Glide64." + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "Glide64MK2 video plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon vidéo Glide64MK2." + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "Rice Video plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon vidéo Rice." + +#~ msgid "Mupen64Plus Z64 video plugin" +#~ msgstr "Greffon vidéo Z64 pour Mupen64Plus" + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "Z64 video plugin." +#~ msgstr "" +#~ "Mupen64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "greffon vidéo Z64." + +#~ msgid "" +#~ "Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator\n" +#~ "which is capable of accurately playing many games. This package contains the\n" +#~ "command line user interface. Installing this package is the easiest way\n" +#~ "towards a working Mupen64Plus for casual users." +#~ msgstr "" +#~ "Mupens64Plus est un émulateur Nintendo 64 (N64) multi-plateforme basé sur des\n" +#~ "greffons capable de lancer fidèlement plusieurs jeux. Ce paquet contient le\n" +#~ "l'interface en ligne de commande. L'installation de ce paquet est la meilleure\n" +#~ "manière d'avoir un Mupen64Plus fonctionnel pour les utilisateurs occasionnels." + +#~ msgid "Nintendo Entertainment System (NES/Famicom) emulator" +#~ msgstr "Émulateur Nintendo Entertainement System (NES/Famicom)" + +#~ msgid "" +#~ "Nestopia UE (Undead Edition) is a fork of the Nintendo Entertainment\n" +#~ "System (NES/Famicom) emulator Nestopia, with enhancements from members of the\n" +#~ "emulation community. It provides highly accurate emulation." +#~ msgstr "" +#~ "Nestopia UE (Undead Edition) est un fork de l'émulateur NES/Famicom Nestopia, avec\n" +#~ "des améliorations des membres de la communauté de l'émulation. Il fournit\n" +#~ "une émulation très fidèle." + +#~ msgid "Video game console emulator front-end" +#~ msgstr "Interface d'émulateur de jeux en console" + +#~ msgid "" +#~ "EmulationStation provides a graphical front-end to a large\n" +#~ "number of video game console emulators. It features an interface that is\n" +#~ "usable with any game controller that has at least 4 buttons, theming support,\n" +#~ "and a game metadata scraper." +#~ msgstr "" +#~ "EmulationStation fournit une interface graphique pour un grand\n" +#~ "nombre d'émulateurs de jeux vidéos en console. Il fournit une interface\n" +#~ "utilisable avec n'importe quelle manette de jeu avec au moins 4 boutons et\n" +#~ "qui permet la personnalisation et un recycleur de métadonnées de jeux." #, fuzzy -#~| msgid "" -#~| "Iproute2 is a collection of utilities for controlling TCP/IP\n" -#~| "networking and traffic with the Linux kernel.\n" -#~| "\n" -#~| "Most network configuration manuals still refer to ifconfig and route as the\n" -#~| "primary network configuration tools, but ifconfig is known to behave\n" -#~| "inadequately in modern network environments. They should be deprecated, but\n" -#~| "most distros still include them. Most network configuration systems make use\n" -#~| "of ifconfig and thus provide a limited feature set. The /etc/net project aims\n" -#~| "to support most modern network technologies, as it doesn't use ifconfig and\n" -#~| "allows a system administrator to make use of all iproute2 features, including\n" -#~| "traffic control.\n" -#~| "\n" -#~| "iproute2 is usually shipped in a package called iproute or iproute2 and\n" -#~| "consists of several tools, of which the most important are ip and tc. ip\n" -#~| "controls IPv4 and IPv6 configuration and tc stands for traffic control. Both\n" -#~| "tools print detailed usage messages and are accompanied by a set of\n" -#~| "manpages." #~ msgid "" #~ "Iproute2 is a collection of utilities for controlling TCP/IP\n" #~ "networking and traffic with the Linux kernel.\n" @@ -20087,7 +21979,6 @@ msgstr "" #~ "deux outils sont accompagnés par leur manuel." #, fuzzy -#~| msgid "SQlite interface for Perl" #~ msgid "Emulate troublesome interfaces in Perl" #~ msgstr "Interface SQLite pour Perl" diff --git a/scripts/guix.in b/scripts/guix.in index d1c12eae5c..0a3ab1f64d 100644 --- a/scripts/guix.in +++ b/scripts/guix.in @@ -23,25 +23,13 @@ ;; IMPORTANT: We must avoid loading any modules from Guix here, ;; because we need to adjust the guile load paths first. ;; It's okay to import modules from core Guile though. -(use-modules (srfi srfi-26)) (define-syntax-rule (push! elt v) (set! v (cons elt v))) (define (augment-load-paths!) ;; Add installed modules to load-path. (push! "@guilemoduledir@" %load-path) - (push! "@guileobjectdir@" %load-compiled-path) - - ;; Add modules fetched by 'guix pull' to load-path. - (let ((updates-dir (and=> (or (getenv "XDG_CONFIG_HOME") - (and=> (getenv "HOME") - (cut string-append <> "/.config"))) - (cut string-append <> "/guix/latest")))) - (when (and=> updates-dir file-exists?) - ;; XXX: Currently 'guix pull' puts both .scm and .go files in - ;; UPDATES-DIR. - (push! updates-dir %load-path) - (push! updates-dir %load-compiled-path)))) + (push! "@guileobjectdir@" %load-compiled-path)) (define* (main #:optional (args (command-line))) (unless (getenv "GUIX_UNINSTALLED") diff --git a/tests/gexp.scm b/tests/gexp.scm index a560adfc5c..83fe811546 100644 --- a/tests/gexp.scm +++ b/tests/gexp.scm @@ -615,6 +615,7 @@ `(("graph" ,two)) #:modules '((guix build store-copy) + (guix sets) (guix build utils)))) (ok? (built-derivations (list drv))) (out -> (derivation->output-path drv))) @@ -815,21 +816,25 @@ (two (gexp->derivation "two" #~(symlink #$one #$output:chbouib))) (build -> (with-imported-modules '((guix build store-copy) + (guix sets) (guix build utils)) #~(begin (use-modules (guix build store-copy)) (with-output-to-file #$output (lambda () - (write (call-with-input-file "guile" - read-reference-graph)))) + (write (map store-info-item + (call-with-input-file "guile" + read-reference-graph))))) (with-output-to-file #$output:one (lambda () - (write (call-with-input-file "one" - read-reference-graph)))) + (write (map store-info-item + (call-with-input-file "one" + read-reference-graph))))) (with-output-to-file #$output:two (lambda () - (write (call-with-input-file "two" - read-reference-graph))))))) + (write (map store-info-item + (call-with-input-file "two" + read-reference-graph)))))))) (drv (gexp->derivation "ref-graphs" build #:references-graphs `(("one" ,one) ("two" ,two "chbouib") diff --git a/tests/guix-register.sh b/tests/guix-register.sh deleted file mode 100644 index 521735b8a4..0000000000 --- a/tests/guix-register.sh +++ /dev/null @@ -1,191 +0,0 @@ -# GNU Guix --- Functional package management for GNU -# Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès -# -# This file is part of GNU Guix. -# -# GNU Guix is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 3 of the License, or (at -# your option) any later version. -# -# GNU Guix is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Guix. If not, see . - -# -# Test the 'guix-register' command-line utility. -# - -guix-register --version - -new_store="t-register-$$" -closure="t-register-closure-$$" -rm -rf "$new_store" - -exit_hook=":" -trap "chmod -R +w $new_store ; rm -rf $new_store $closure ; \$exit_hook" EXIT - -# -# Registering items in the current store---i.e., without '--prefix'. -# - -new_file="$NIX_STORE_DIR/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-guix-register-$$" -echo "Fake store file to test registration." > "$new_file" - -# Register the file with zero references and no deriver. -guix-register < "$new_file2" -guix-register <> "$closure" <utf8 "Hello, world!")) (identical (map (lambda (n) - (string-append store "/" (number->string n))) + (string-append store "/" (number->string n) + "/a/b/c")) (iota 5))) (unique (string-append store "/unique"))) (for-each (lambda (file) + (mkdir-p (dirname file)) (call-with-output-file file (lambda (port) (put-bytevector port data)))) @@ -49,10 +51,7 @@ (lambda (port) (put-bytevector port (string->utf8 "This is unique.")))) - (for-each (lambda (file) - (deduplicate file (sha256 data) #:store store)) - identical) - (deduplicate unique (nar-sha256 unique) #:store store) + (deduplicate store (nar-sha256 store) #:store store) ;; (system (string-append "ls -lRia " store)) (cons* (apply = (map (compose stat:ino stat) identical)) diff --git a/tests/store.scm b/tests/store.scm index fdf3be33f6..afecec940a 100644 --- a/tests/store.scm +++ b/tests/store.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -777,26 +777,6 @@ (pk 'corrupt-imported imported) #f))))) -(test-assert "register-path" - (let ((file (string-append (%store-prefix) "/" (make-string 32 #\f) - "-fake"))) - (when (valid-path? %store file) - (delete-paths %store (list file))) - (false-if-exception (delete-file file)) - - (let ((ref (add-text-to-store %store "ref-of-fake" (random-text))) - (drv (string-append file ".drv"))) - (call-with-output-file file - (cut display "This is a fake store item.\n" <>)) - (register-path file - #:references (list ref) - #:deriver drv) - - (and (valid-path? %store file) - (equal? (references %store file) (list ref)) - (null? (valid-derivers %store file)) - (null? (referrers %store file)))))) - (test-assert "verify-store" (let* ((text (random-text)) (file1 (add-text-to-store %store "foo" text)) diff --git a/tests/system.scm b/tests/system.scm index 7d55da7174..9416b950e6 100644 --- a/tests/system.scm +++ b/tests/system.scm @@ -19,6 +19,7 @@ (define-module (test-system) #:use-module (gnu) + #:use-module ((gnu services) #:select (service-value)) #:use-module (guix store) #:use-module (srfi srfi-1) #:use-module (srfi srfi-64)) @@ -117,4 +118,26 @@ (type "ext4")) %base-file-systems))))) +(test-equal "non-boot-file-system-service" + '() + + ;; Make sure that mapped devices with at least one needed-for-boot user are + ;; handled exclusively from the initrd. See . + (append-map file-system-dependencies + (service-value + ((@@ (gnu system) non-boot-file-system-service) + (operating-system + (inherit %os-with-mapped-device) + (file-systems + (list (file-system + (mount-point "/foo/bar") + (device "qux:baz") + (type "none") + (dependencies (list %luks-device))) + (file-system + (device (file-system-label "my-root")) + (mount-point "/") + (type "ext4") + (dependencies (list %luks-device)))))))))) + (test-end)