aboutsummaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-10-19 12:51:57 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2020-10-19 13:11:40 -0400
commit5e2140511c1ad9ccd731438b74d61b62111da1e6 (patch)
treea4ff748ad26e121b88469b5d921001ef1382be8f /etc
parent9e3a5ee417ea7fe9721be8804ff047e80c4f22ed (diff)
parent353bdae32f72b720c7ddd706576ccc40e2b43f95 (diff)
downloadguix-5e2140511c1ad9ccd731438b74d61b62111da1e6.tar
guix-5e2140511c1ad9ccd731438b74d61b62111da1e6.tar.gz
Merge branch 'staging'
Conflicts: gnu/packages/admin.scm gnu/packages/commencement.scm gnu/packages/gdb.scm gnu/packages/llvm.scm gnu/packages/package-management.scm gnu/packages/tls.scm
Diffstat (limited to 'etc')
-rwxr-xr-xetc/committer.scm.in4
-rw-r--r--etc/completion/bash/guix7
-rwxr-xr-xetc/guix-install.sh57
-rw-r--r--etc/news.scm373
-rw-r--r--etc/openrc/guix-daemon.in28
-rw-r--r--etc/release-manifest.scm2
6 files changed, 463 insertions, 8 deletions
diff --git a/etc/committer.scm.in b/etc/committer.scm.in
index 2f247835f3..ebe6b96bcc 100755
--- a/etc/committer.scm.in
+++ b/etc/committer.scm.in
@@ -175,8 +175,8 @@ corresponding to the top-level definition containing the staged changes."
(let ((old-values (get-values old field))
(new-values (get-values new field)))
(or (equal? old-values new-values)
- (let ((removed (lset-difference eq? old-values new-values))
- (added (lset-difference eq? new-values old-values)))
+ (let ((removed (lset-difference equal? old-values new-values))
+ (added (lset-difference equal? new-values old-values)))
(format port
"[~a]: ~a~%" field
(match (list (map symbol->string removed)
diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix
index 98d20484f7..fdbdf46810 100644
--- a/etc/completion/bash/guix
+++ b/etc/completion/bash/guix
@@ -27,8 +27,9 @@ _guix_complete_command ()
if [ -z "$_guix_commands" ]
then
# Cache the list of commands to speed things up.
- _guix_commands="$(guix --help 2> /dev/null \
- | grep '^ ' | cut -c 2-)"
+ _guix_commands="$(guix --help 2> /dev/null \
+ | grep '^ ' \
+ | sed '-es/^ *\([a-z-]\+\).*$/\1/g')"
fi
COMPREPLY=($(compgen -W "$_guix_commands" -- "$word_at_point"))
}
@@ -181,7 +182,7 @@ _guix_complete ()
*)
if _guix_is_command "package"
then
- if _guix_is_dash_L || _guix_is_dash_m
+ if _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p
then
_guix_complete_file
elif _guix_is_removing
diff --git a/etc/guix-install.sh b/etc/guix-install.sh
index aa77d42615..7f0dd00e53 100755
--- a/etc/guix-install.sh
+++ b/etc/guix-install.sh
@@ -4,6 +4,8 @@
# Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+# Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
+# Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
#
# This file is part of GNU Guix.
#
@@ -53,6 +55,7 @@ REQUIRE=(
PAS=$'[ \033[32;1mPASS\033[0m ] '
ERR=$'[ \033[31;1mFAIL\033[0m ] '
+WAR=$'[ \033[33;1mWARN\033[0m ] '
INF="[ INFO ] "
DEBUG=0
@@ -150,6 +153,10 @@ chk_init_sys()
_msg "${INF}init system is: sysv-init"
INIT_SYS="sysv-init"
return 0
+ elif [[ $(openrc --version 2>/dev/null) =~ \(OpenRC\) ]]; then
+ _msg "${INF}init system is: OpenRC"
+ INIT_SYS="openrc"
+ return 0
else
INIT_SYS="NA"
_err "${ERR}Init system could not be detected."
@@ -194,6 +201,19 @@ chk_sys_arch()
ARCH_OS="${arch}-${os}"
}
+chk_sys_nscd()
+{ # Check if nscd is up and suggest to start it or install it
+ if [ "$(type -P pidof)" ]; then
+ if [ ! "$(pidof nscd)" ]; then
+ _msg "${WAR}We recommend installing and/or starting your distribution 'nscd' service"
+ _msg "${WAR}Please read 'info guix \"Application Setup\"' about \"Name Service Switch\""
+ fi
+ else
+ _msg "${INF}We cannot determine if your distribution 'nscd' service is running"
+ _msg "${INF}Please read 'info guix \"Application Setup\"' about \"Name Service Switch\""
+ fi
+}
+
# ------------------------------------------------------------------------------
#+MAIN
@@ -212,7 +232,7 @@ guix_get_bin_list()
| sort -Vu)")
latest_ver="$(echo "$bin_ver_ls" \
- | grep -oP "([0-9]{1,2}\.){2}[0-9]{1,2}" \
+ | grep -oE "([0-9]{1,2}\.){2}[0-9]{1,2}" \
| tail -n1)"
default_ver="guix-binary-${latest_ver}.${ARCH_OS}"
@@ -268,8 +288,7 @@ sys_create_store()
_debug "--- [ $FUNCNAME ] ---"
cd "$tmp_path"
- tar --warning=no-timestamp \
- --extract \
+ tar --extract \
--file "$pkg" &&
_msg "${PAS}unpacked archive"
@@ -384,6 +403,16 @@ sys_enable_guix_daemon()
service guix-daemon start; } &&
_msg "${PAS}enabled Guix daemon via sysv"
;;
+ openrc)
+ { mkdir -p /etc/init.d;
+ cp "${ROOT_HOME}/.config/guix/current/etc/openrc/guix-daemon" \
+ /etc/init.d/guix-daemon;
+ chmod 775 /etc/init.d/guix-daemon;
+
+ rc-update add guix-daemon default &&
+ rc-service guix-daemon start; } &&
+ _msg "${PAS}enabled Guix daemon via OpenRC"
+ ;;
NA|*)
_msg "${ERR}unsupported init system; run the daemon manually:"
echo " ${ROOT_HOME}/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild"
@@ -445,6 +474,26 @@ export XDG_DATA_DIRS="$GUIX_PROFILE/share:${XDG_DATA_DIRS:-/usr/local/share/:/us
EOF
}
+sys_create_shell_completion()
+{ # Symlink supported shell completions system-wide
+
+ var_guix=/var/guix/profiles/per-user/root/current-guix
+ bash_completion=/etc/bash_completion.d
+ zsh_completion=/usr/share/zsh/site-functions
+ fish_completion=/usr/share/fish/vendor_completions.d
+
+ { # Just in case
+ for dir_shell in $bash_completion $zsh_completion $fish_completion; do
+ [ -d "$dir_shell" ] || mkdir -p $dir_shell
+ done;
+
+ ln -sf ${var_guix}/etc/bash_completion.d/* "$bash_completion";
+ ln -sf ${var_guix}/share/zsh/site-functions/* "$zsh_completion";
+ ln -sf ${var_guix}/share/fish/vendor_completions.d/* "$fish_completion"; } &&
+ _msg "${PAS}installed shell completion"
+}
+
+
welcome()
{
cat<<"EOF"
@@ -488,6 +537,7 @@ main()
chk_gpg_keyring
chk_init_sys
chk_sys_arch
+ chk_sys_nscd
_msg "${INF}system is ${ARCH_OS}"
@@ -502,6 +552,7 @@ main()
sys_enable_guix_daemon
sys_authorize_build_farms
sys_create_init_profile
+ sys_create_shell_completion
_msg "${INF}cleaning up ${tmp_path}"
rm -r "${tmp_path}"
diff --git a/etc/news.scm b/etc/news.scm
index 1ef238ca2d..f1887b60c3 100644
--- a/etc/news.scm
+++ b/etc/news.scm
@@ -2,6 +2,11 @@
;;
;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+;; Copyright © 2019, 2020 Miguel Ángel Arruga Vivas <rosen644835@gmail.com>
+;; Copyright © 2019, 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
+;; Copyright © 2019, 2020 Julien Lepiller <julien@lepiller.eu>
+;; Copyright © 2019, 2020 Florian Pelz <pelzflorian@pelzflorian.de>
+;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@@ -13,8 +18,297 @@
(channel-news
(version 0)
+ (entry (commit "abd7a474615353149a44f4504f0b4b248dcc0716")
+ (title (en "New @option{--with-c-toolchain} package transformation option")
+ (de "Neue Paketumwandlungsoption @option{--with-c-toolchain}")
+ (fr "Nouvelle option de transformation @option{--with-c-toolchain}"))
+ (body
+ (en "The new @option{--with-c-toolchain} package transformation
+options provides an easy way for developers to rebuild their favorite packages
+with the C/C++ tool chain of their choice instead of the default one.
+
+For example, the following command rebuilds the @code{fftw} and @code{fftwf}
+packages as well as every package that depends on them, up to and including
+@code{octave-cli}, using GCC version 10 (currently GCC 7.5 is used by
+default):
+
+@example
+guix build octave-cli \\
+ --with-c-toolchain=fftw=gcc-toolchain@@10 \\
+ --with-c-toolchain=fftwf=gcc-toolchain@@10
+@end example
+
+Run @command{info \"(guix) Package Transformation Options\"} for more info.")
+ (de "Die neue Paketumwandlungsoption @option{--with-c-toolchain}
+bietet Entwicklern die Möglichkeit, leicht ihre Lieblingspakete mit der
+selbstgewählten Toolchain für C/C++ anstelle der vorgegebenen neu zu
+erstellen.
+
+Zum Beispiel werden mit folgendem Befehl die Pakete @code{fftw} und
+@code{fftwf} sowie alle davon abhängigen Pakete bis einschließlich
+@code{octave-cli} mit Version 10 der GCC erstellt (vorgegeben wäre zurzeit,
+GCC 7.5 zu benutzen):
+
+@example
+guix build octave-cli \\
+ --with-c-toolchain=fftw=gcc-toolchain@@10 \\
+ --with-c-toolchain=fftwf=gcc-toolchain@@10
+@end example
+
+Führen Sie für mehr Informationen @command{info \"(guix.de)
+Paketumwandlungsoptionen\"} aus.")
+ (fr "La nouvelle option de transformation de paquets
+@option{--with-c-toolchain} permet aux développeur·euses de recompiler leurs
+paquets préférés avec la chaîne d'outils C/C++ de leur choix à la place de
+celle par défaut.
+
+Par exemple, la commande ci-dessous recompile @code{fftw}, @code{fftwf} et
+tous les paquets qui en dépendent, jusqu'à @code{octave-cli} inclus, avec GCC
+10 (actuellement c'est GCC 7.5 qui est utilisé par défaut):
+
+@example
+guix build octave-cli \\
+ --with-c-toolchain=fftw=gcc-toolchain@@10 \\
+ --with-c-toolchain=fftwf=gcc-toolchain@@10
+@end example
+
+Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
+plus de détails.")))
+
+ (entry (commit "8e1907a72430aa989125b053573ef0897c480697")
+ (title (en "Package transformation options now recorded in profiles")
+ (es "Las opciones de transformación de paquetes ahora se
+quedan registradas en el perfil")
+ (de "Paketumwandlungsoptionen werden nun in Profilen gesichert")
+ (fr "Options de transformation sauvegardées dans les profils"))
+ (body
+ (en "When installing packages in a profile, package transformation
+options such as @option{--with-input} are now recorded in the profile. When
+you eventually run @command{guix upgrade}, those transformations will be
+automatically applied to the upgraded packages.
+
+Run @command{info \"(guix) Package Transformation Options\"} for more info.")
+ (es "Si durante la instalación de paquetes en un perfil se utilizaron
+opciones de transformación de paquetes, como por ejemplo
+@option{--with-input}, éstas se registran en el perfil. Cuando vuelva a
+ejecutar @command{guix upgrade}, dichas transformaciones se aplicarán
+automáticamente a los paquetes actualizados.
+
+Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
+para obtener más información.")
+ (de "Wenn Sie ein Paket in ein Profil installieren, werden nun
+Paketumwandlungsoptionen wie @option{--with-input} im Profil gespeichert.
+Sobald Sie später @command{guix upgrade} ausführen, werden dieselben
+Umwandlungen automatisch auf die aktualisierten Pakete angewandt.
+
+Führen Sie für mehr Informationen @command{info \"(guix.de)
+Paketumwandlungsoptionen\"} aus.")
+ (fr "Lorsqu'on installe des paquets dans un profil, les options de
+transformation telles que @option{--with-input} sont désormais enregistrées
+dans le profil. Quand on le met plus tard à jour avec @command{guix upgrade},
+ces transformations sont automatiquement appliquées aux nouveaux paquets.
+
+Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
+plus de détails.")))
+
+ (entry (commit "313f492657f1d0863c641fa5ee7f5b7028e27c94")
+ (title (en "New @option{--image-type} option for @command{guix system disk-image}.")
+ (es "Nueva opción @option{--image-type} para @command{guix system disk-image}.")
+ (de "Neue Option @option{--image-type} für @command{guix system disk-image}.")
+ (fr "Nouvelle option @option{--image-type} pour @command{guix system disk-image}."))
+ (body
+ (en "The @option{--file-system-type} option for @command{guix system
+disk-image} command has been replaced by the new @option{--image-type} option.
+By default, @code{raw} disk images are produced, but @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} and @code{iso9660} image types
+are also available.
+
+The @option{--list-image-types} option lists all the available image types.")
+ (es "La opción @option{--file-system-type} de @command{guix system
+disk-image} se ha sustituido por la nueva opción @option{--image-type}. De
+manera predeterminada se producen imágenes en formato crudo (@code{raw}) pero
+también están disponibles los tipos de imagen @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} y @code{iso9660}.
+
+La opción @option{--list-image-types} muestra una lista con todos los tipos
+de imagen disponibles.")
+ (de "Anstelle der Befehlszeilenoption @option{--file-system-type} für
+@command{guix system disk-image} gibt es nun die neue Option
+@option{--image-type}. In der Vorgabeeinstellung @code{raw} werden rohe
+Disk-Images erzeugt, aber es können auch die Abbildtypen @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} und @code{iso9660} ausgewählt
+werden.
+
+Mit der Option @option{--list-image-types} werden alle verfügbaren Abbildtypen
+aufgelistet.")
+ (fr "L'option @option{--file-system-type} pour la commande
+@command{guix system disk-image} a été remplacée par la nouvelle option
+@option{--image-type}. Par défaut, l'option @code{raw}, produisant des images
+disque brutes est sélectionnée. Les options @code{hurd-qcow2},
+@code{hurd-raw}, @code{uncompressed-iso9660} et @code{iso9660} sont également
+disponibles.
+
+La nouvelle option @option{--list-image-types} énumère les types d'image
+disponibles.")))
+
+ (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d")
+ (title (en "Package transformations now apply to implicit inputs")
+ (es "Las transformaciones de paquetes ahora afectan también
+a las dependencias implícitas")
+ (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben")
+ (fr "Les transformations de paquets s'appliquent aux
+dépendances implicites"))
+ (body
+ (en "Package transformation options such as @option{--with-branch},
+@option{--with-input}, and so on now apply to implicit inputs---previously
+only a package's explicit inputs would be affected. This allows for things
+such as replacing the Python dependency of a package that uses
+@code{python-build-system}:
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Another example is grafting a different version of the GNU C
+Library (@code{glibc} is an implicit input of almost all the packages and is
+``deep down'' in the dependency graph):
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Run @command{info \"(guix) Package Transformation Options\"} for more
+info.")
+ (es "Las opciones de transformación de paquetes como
+@option{--with-branch}, @option{--with-input}, etcétera, ahora también
+influyen en las entradas implícitas---antes únicamente las entradas explícitas
+del paquete se veían afectadas. Esto permite, por ejemplo, sustituir la
+dependencia en python de un paquete que use @code{python-build-system}:
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Otro ejemplo podría ser el injerto de una versión diferente de la biblioteca
+de C de GNU (@code{glibc} es una entrada implícita de casi todos los paquetes
+y ``muy abajo'' en el grafo de dependencias):
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
+para obtener más información.")
+ (de "Paketumwandlungsoptionen wie @option{--with-branch},
+@option{--with-input} und so weiter betreffen nun auch implizite Eingaben —
+zuvor haben sie sich nur auf die expliziten Eingaben eines Pakets
+ausgewirkt. Dadurch kann jetzt zum Beispiel die Python-Abhängigkeit eines
+Pakets, welches @code{python-build-system} benutzt, ersetzt werden:
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Ein weiteres Beispiel ist, mit einer anderen Version der GNU-C-Bibliothek zu
+veredeln (@code{glibc} ist eine implizite Eingabe fast aller Pakete und steckt
+„ganz tief“ im Abhängigkeitsgraphen):
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Führen Sie für mehr Informationen @command{info \"(guix.de)
+Paketumwandlungsoptionen\"} aus.")
+ (fr "Les options de transformation de paquets telles que
+@option{--with-branch} et @option{--with-input} s'appliquent désormais aux
+dépendances implicites — jusque là seules les dépendances explicites des
+paquets étaient prises en compte. Cela permet certaines choses telles que
+remplacer la dépendance sur Python d'un paquet utilisant
+@code{python-build-system} :
+
+@example
+guix install --with-input=python=python2 python-itsdangerous
+@end example
+
+Un autre exemple est la possibilité de greffer une version différente de la
+bibliothèque C GNU (la @code{glibc} est une dépendance implicite de tous les
+paquets et se trouve « tout en bas » du graphe de dépendance) :
+
+@example
+guix build --with-graft=glibc=glibc@@2.31 hello
+@end example
+
+Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
+plus de détails.")))
+
+ (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74")
+ (title (en "New @option{--without-tests} transformation option")
+ (es "Nueva opción de transformación @option{--without-tests}")
+ (de "Neue Paketumwandlungsoption @option{--without-tests}")
+ (fr "Nouvelle option de transformation @option{--without-tests}"))
+ (body
+ (en "The new @option{--without-tests} package transformation option
+instructs Guix to skip the test suite of a given package. In the example
+below, @code{guile-gcrypt} is built using a variant of @code{automake} itself
+built without running its (lengthy) test suite:
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+This is primarily useful as a way to speed up development cycles, or to work
+around flaky test suites---skipping tests can hide real issues, so use with
+care. Run @command{info \"(guix) Package Transformation Options\"} for more
+info.")
+ (es "La nueva opción de transformación de paquetes
+@option{--without-tests} indica a Guix que omita la batería de pruebas del
+paquete proporcionado. En el siguiente ejemplo @code{guile-gcrypt} se
+construye usando una variación de @code{automake}, la cual se ha construido
+sin ejecutar su (larga) batería de pruebas:
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+Esto es principalmente útil como una forma de acelerar ciclos de desarrollo o
+de omitir temporalmente baterías de pruebas problemáticas---omitir las pruebas
+puede ocultar problemas reales, por lo que debe usarse con precaución.
+Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
+para obtener más información.")
+ (de "Mit der neuen Paketumwandlungsoption @option{--without-tests}
+wird Guix angewiesen, den Testkatalog des angegebenen Pakets zu
+überspringen. Im folgenden Beispiel wird @code{guile-gcrypt} mit einer
+Variante von @code{automake} erstellt, die wiederum ohne Durchlauf ihres (viel
+Zeit in Anspruch nehmenden) Testkatalogs erstellt wird:
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+Der hauptsächliche Nutzen liegt in der Beschleunigung von Entwicklungszyklen
+oder im Umgehen unzuverlässiger Testkataloge. Allerdings kann das Überspringen
+dazu führen, dass echte Probleme verborgen bleiben. Setzen Sie es mit Bedacht
+ein. Führen Sie @command{info \"(guix.de) Paketumwandlungsoptionen\"} aus, um
+mehr Informationen zu erhalten.")
+ (fr "La nouvelle option de transformation de paquets
+@option{--without-tests} demande à Guix de sauter la suite de tests d'un
+paquet. Dans l'exemple ci-dessous, @code{guile-gcrypt} est construit en
+utilisant une variante de @code{automake} construite sans lancer sa suite de
+tests :
+
+@example
+guix build guile-gcrypt --without-tests=automake
+@end example
+
+Cette option est surtout intéressante pour raccourcir le cycle de
+développement ou pour contourner une suite de tests qui n'est pas
+fiable — sauter les tests peut cacher des vrais problèmes, à utiliser avec
+précaution donc. Voir @command{info \"(guix.fr) Options de transformation de
+paquets\"} pour plus de détails.")))
+
(entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f")
(title (en "New @command{guix git authenticate} command")
+ (es "Nueva orden @command{guix git authenticate}")
(de "Neuer Befehl @command{guix git authenticate}")
(fr "Nouvelle commande @command{guix git authenticate}"))
(body
@@ -30,6 +324,20 @@ to allow people to authenticate code fetched from your repository.
Run @command{info \"(guix) Invoking guix git authenticate\"} for more info,
and see @uref{https://guix.gnu.org/blog/2020/securing-updates/} for details on
these mechanisms.")
+ (es "La nueva orden @command{guix git authenticate} comprueba la
+validez de un repositorio git verificando las firmas de las revisiones y
+comprobando que todas las firmas están autorizadas, exactamente igual que
+@command{guix pull}.
+
+Esta orden es principalmente útil para desarrolladoras de canales. Permite
+asegurar, antes de subir nada al repositorio remoto, que el canal contiene
+únicamente revisiones firmadas por claves autorizadas. No obstante esta orden
+es útil siempre que use git y quiera que otras personas puedan verificar el
+código obtenido de su repositorio.
+
+Ejecute @command{info \"(guix.es) Invocación de guix git authenticate\"}
+para obtener más información y vea detalles sobre estos mecanismos en
+ @uref{https://guix.gnu.org/blog/2020/securing-updates/}.")
(de "Mit dem neuen Befehl @command{guix git authenticate} können Sie
ein Git-Repository authentifizieren. Dazu werden alle Commit-Signaturen
verifiziert und geprüft, dass jede von einer autorisierten Quelle kommt, genau
@@ -62,6 +370,7 @@ pour en savoir plus sur ces mécanismes.")))
(entry (commit "43badf261f4688c8a7a7a9004a4bff8acb205835")
(title (en "@command{guix pull} authenticates channels")
+ (es "@command{guix pull} verifica los canales")
(de "@command{guix pull} authentifiziert Kanäle")
(fr "@command{guix pull} authentifie les canaux"))
(body
@@ -74,6 +383,16 @@ repository and from attempts to ship malicious code to users.
This feature is currently limited to the @code{guix} channel but will soon be
available to third-party channel authors.")
+ (es "Las ordenes @command{guix pull} y @command{guix time-machine}
+ahora verifican el código fuente que obtienen, a menos que se proporcione la
+opción @option{--disable-authentication}. Lo que esto significa es que Guix se
+asegura de que cada revisión que recibe está firmada criptográficamente por
+una desarrolladora autorizada. Esto le protege de intentos de modificación del
+repositorio de Guix y de entregas de código con malas intenciones sobre las
+usuarias.
+
+Esta característica está limitada actualmente al canal @code{guix} pero pronto
+estará disponible para autoras de canales independientes.")
(de "Die Befehle @command{guix pull} und @command{guix time-machine}
prüfen nun die Authentizität des heruntergeladenen Quellcodes, außer wenn die
neue Befehlszeilenoption @option{--disable-authentication} angegeben
@@ -97,6 +416,7 @@ Cette fonctionnalité n'est actuellement disponible que pour le canal
(entry (commit "c924e541390f9595d819edc33c19d979917c15ec")
(title (en "@command{guix repl} adds support for running Guile scripts")
+ (es "@command{guix repl} puede ejecutar guiones de Guile")
(de "@command{guix repl} kann Guile-Skripte ausführen")
(fr "@command{guix repl} permet d'exécuter des scripts en langage Guile"))
(body
@@ -110,6 +430,18 @@ guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
@end example
Run @command{info \"(guix) Invoking guix repl\"} for more information.")
+ (es "La orden @command{guix repl} ahora se puede usar para
+ejecutar guiones de Guile. En comparación con únicamente la ejecución
+de la orden @command{guile}, @command{guix repl} garantiza que todos
+los módulos de Guix y sus dependencias están disponibles en la ruta
+ de búsqueda. Los guiones se ejecutan de este modo:
+
+@example
+guix repl -- mi-guion.scm --opcion1 --opcion2=param-op2 param1 param2
+@end example
+
+Ejecute @command{info \"(guix.es) Invocación de guix repl\"} para obtener
+más información.")
(de "Der Befehl @command{guix repl} kann jetzt zur Ausführung von
Guile-Skripten verwendet werden. Im Vergleich zum Befehl
@command{guile} garantiert @command{guix repl}, dass alle Guix-Module und
@@ -136,6 +468,7 @@ Exécutez @command{info \"(guix.fr) Invoquer guix repl\"} pour plus d'informatio
(entry (commit "b460ba7992a0b4af2ddb5927dcf062784539ef7b")
(title (en "Add support to boot from a Btrfs subvolume")
+ (es "Implementado el arranque desde un subvolumen de Btrfs")
(de "Unterstützung für Systemstart von einem
Btrfs-Unterlaufwerk hinzugefügt")
(fr "Ajout du support pour démarrer depuis un sous-volume Btrfs")
@@ -146,6 +479,11 @@ operating system declaration now takes into account the use of a Btrfs
subvolume for the partition holding @file{/gnu/store}. Run the command
@command{info \"(guix) Btrfs file system\"} for more information and
examples.")
+ (es "El fichero de configuración de GRUB producido por la
+declaración de sistema operativo ahora tiene en cuenta el uso de
+subvolúmenes de Btrfs en la partición que contiene @file{/gnu/store}.
+Ejecute la orden @command{info \"(guix.es) Sistema de ficheros Btrfs\"}
+ para obtener más información y ejemplos.")
(de "Für die Erzeugung einer GRUB-Konfigurationsdatei aus einer
Betriebssystemdeklaration kann jetzt ein Btrfs-Unterlaufwerk („Subvolume“) für
die Partition mit @file{/gnu/store} angegeben werden. Führen Sie
@@ -165,6 +503,8 @@ voorbeelden.")))
(entry (commit "6456232164890dbf5aa20394ee24637feb4b7b9e")
(title (en "@command{guix pack -RR} introduces a new execution
engine")
+ (es "@command{guix pack -RR} introduce un nuevo motor
+de ejecución")
(de "@command{guix pack -RR} führt neuen Ausführungstreiber
ein"))
(body
@@ -185,6 +525,26 @@ export GUIX_EXECUTION_ENGINE
@end example
Run @command{info \"(guix) Invoking guix pack\"} for more information.")
+ (es "La orden @command{guix pack -RR} le permite crear un
+archivador tar que contiene @dfn{binarios reposicionables}. Hasta ahora
+dichos binarios dependían o bien de los ``espacios de nombres de usuarias
+sin privilegios'' de Linux o en PRoot, cuando estos no estaban
+implementados. No obstante, PRoot introduce una sobrecarga significativa
+en algunos escenarios de trabajo.
+
+Para estos casos @command{guix pack -RR} introduce una tercera opción
+basada en una extensión al enlazador de tiempo de ejecución de GNU (ld.so)
+y en Fakechroot, lo que conlleva muy poca sobrecarga. Puede seleccionar
+la opción más rápida cuando ejecute un binario reposicionable de esta
+manera:
+
+@example
+GUIX_EXECUTION_ENGINE=performance
+export GUIX_EXECUTION_ENGINE
+@end example
+
+Ejecute @command{info \"(guix.es) Invocación de guix pack\"} para
+obtener más información.")
(de "Mit dem Befehl @command{guix pack -RR} können Sie einen Tarball
mit @dfn{verschieblichen Binärdateien} erzeugen (englisch „Relocatable
Binaries“). Bisher wurden diese entweder in „unprivilegierten
@@ -209,6 +569,7 @@ mehr wissen wollen.")))
(entry (commit "88a96c568c47c97d05d883ada5afbc4e1200b10f")
(title (en "New @option{--path} option for @command{guix graph}")
+ (es "Nueva opción @option{--path} para @command{guix graph}")
(de "Neue Option @option{--path} für @command{guix graph}"))
(body
(en "The @command{guix graph} command has a new @option{--path}
@@ -221,6 +582,18 @@ guix graph --path libreoffice libunistring
@end example
Run @code{info \"(guix) Invoking guix graph\"} for more information.")
+ (es "La orden @command{guix graph} tiene una nueva opción
+@option{--path} que le indica que debe mostrar la ruta más corta entre dos
+paquetes, derivaciones o elementos del almacén. Por ejemplo, la siguiente
+orden muestra la ruta más corta desde el paquete @code{libreoffice} hasta
+@code{libunistring}:
+
+@example
+guix graph --path libreoffice libunistring
+@end example
+
+Ejecute @code{info \"(guix.es) Invocación de guix graph\"} para obtener más
+información.")
(de "Der Befehl @command{guix graph} verfügt über eine neue
Befehlszeilenoption @option{--path}, die ihn den kürzesten Pfad zwischen zwei
Paketen, Ableitungen oder Store-Objekten ausgeben lässt. Zum Beispiel zeigt
diff --git a/etc/openrc/guix-daemon.in b/etc/openrc/guix-daemon.in
new file mode 100644
index 0000000000..110a58b88d
--- /dev/null
+++ b/etc/openrc/guix-daemon.in
@@ -0,0 +1,28 @@
+#!/sbin/openrc-run
+# GNU Guix --- Functional package management for GNU
+# Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
+#
+# 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 <http://www.gnu.org/licenses/>.
+
+export GUIX_LOCPATH=@localstatedir@/guix/profiles/per-user/root/guix-profile/lib/locale
+export LC_ALL=en_US.utf8
+command="@localstatedir@/guix/profiles/per-user/root/current-guix/bin/guix-daemon"
+command_args="--build-users-group=guixbuild"
+command_background="yes"
+pidfile="/var/run/guix-daemon.pid"
+
+output_log="/var/log/guix-daemon-stdout.log"
+error_log="/var/log/guix-daemon-stderr.log"
diff --git a/etc/release-manifest.scm b/etc/release-manifest.scm
index caa200c673..7f54fe8768 100644
--- a/etc/release-manifest.scm
+++ b/etc/release-manifest.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -53,6 +54,7 @@ TARGET."
(append (map specification->package
'("xorg-server" "xfce" "gnome" "mate" "enlightenment"
"openbox" "awesome" "i3-wm" "ratpoison"
+ "emacs" "emacs-exwm" "emacs-desktop-environment"
"xlockmore" "slock" "libreoffice"
"connman" "network-manager" "network-manager-applet"
"openssh" "ntp" "tor"