;; GNU Guix news, for use by 'guix pull'.
;;
;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
+;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
+;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;
;; Copying and distribution of this file, with or without modification, are
;; permitted in any medium without royalty provided the copyright notice and
(channel-news
(version 0)
+ (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f")
+ (title (en "New @command{guix git authenticate} command")
+ (de "Neuer Befehl @command{guix git authenticate}")
+ (fr "Nouvelle commande @command{guix git authenticate}"))
+ (body
+ (en "The new @command{guix git authenticate} command authenticates a
+Git repository by verifying commit signatures and ensuring they all come from
+authorized parties, exactly like @command{guix pull} now does.
+
+This command is primarily useful to developers of channels. It allows them to
+ensure, before pushing, that the channel only contains commits signed with
+authorized keys. But this command is also useful anytime you use Git and want
+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.")
+ (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
+wie es @command{guix pull} nun tut.
+
+Dieser Befehl hilft in erster Linie den Entwicklern von Kanälen. Mit ihm kann
+vor einem Push sichergestellt werden, dass der Kanal nur Commits enthält, die
+mit autorisierten Schlüsseln signiert worden sind. Aber der Befehl kann auch
+helfen, wann immer Sie Git verwenden und ermöglichen wollen, dass Nutzer von
+Ihrem Repository geladenen Code authentifizieren können.
+
+Führen Sie @command{info \"(guix) Invoking guix git authenticate\"} aus, um
+mehr Informationen zu erhalten, und lesen Sie
+@uref{https://guix.gnu.org/blog/2020/securing-updates/} für die Details dieser
+Mechanismen.")
+ (fr "La nouvelle commande @command{guix git authenticate} authentifie
+un dépôt Git en vérifiant les signatures sur les changements (@i{commits}) et
+en s'assurant qu'elles sont autorisées, exactement comme @command{guix pull}
+le fait désormais.
+
+Cette commande est avant tout utile aux personnes développant un canal. Elle
+leur permet de s'assurer, avant de pousser des changements, que le canal ne
+contient que des changements signés par des clefs autorisées. Mais cette
+commande peut aussi s'avérer utile dès que tu veux utiliser Git et permettre
+aux autres d'authentifier le code récupéré depuis ton dépôt.
+
+Lance @command{info \"(guix.fr) Invoking guix git authenticate\"} pour plus
+d'informations. Voir @uref{https://guix.gnu.org/blog/2020/securing-updates/}
+pour en savoir plus sur ces mécanismes.")))
+
+ (entry (commit "43badf261f4688c8a7a7a9004a4bff8acb205835")
+ (title (en "@command{guix pull} authenticates channels")
+ (de "@command{guix pull} authentifiziert Kanäle")
+ (fr "@command{guix pull} authentifie les canaux"))
+ (body
+ (en "The @command{guix pull} and @command{guix time-machine} commands
+now authenticate the source code that they pull, unless the new
+@option{--disable-authentication} option is passed. What this means is that
+Guix ensures that each commit received is cryptographically signed by an
+authorized developer. This protects you from attempts to tamper with the Guix
+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.")
+ (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
+wurde. Das bedeutet, Guix stellt sicher, dass jeder empfangene Commit durch
+einen autorisierten Entwickler kryptografisch signiert wurde. Das schützt Sie
+vor Versuchen, das Guix-Repository zu manipulieren oder bösartigen Code an die
+Nutzer auszuliefern.
+
+Diese Funktionalität ist auf den @code{guix}-Kanal beschränkt, sie wird jedoch
+bald auch Autoren dritter Kanäle zur Verfügung stehen.")
+ (fr "Les commandes @command{guix pull} et @command{guix time-machine}
+authentifient dorénavant le code source qu'elles obtiennent, à moins que la
+nouvelle option @option{--disable-authentication} soit utilisée. Cela
+signifie que Guix s'assure que chaque soumission (@i{commit}) récupéré dispose
+d'une signature cryptographique par un·e développeur·euse autorisé·e. Cela te
+protège de tentatives de modifications du dépôt Guix et de tentatives de
+livrer du code malintentionné.
+
+Cette fonctionnalité n'est actuellement disponible que pour le canal
+@code{guix} mais le sera bientôt pour les canaux tiers.")))
+
+ (entry (commit "c924e541390f9595d819edc33c19d979917c15ec")
+ (title (en "@command{guix repl} adds support for running Guile scripts")
+ (de "@command{guix repl} kann Guile-Skripte ausführen")
+ (fr "@command{guix repl} permet d'exécuter des scripts en langage Guile"))
+ (body
+ (en "The @command{guix repl} command can now be used to run
+Guile scripts. Compared to just launching the @command{guile} command,
+@command{guix repl} guarantees that all the Guix modules and all its
+dependencies are available in the search path. Scripts are run like this:
+
+@example
+guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
+@end example
+
+Run @command{info \"(guix) Invoking guix repl\"} for more information.")
+ (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
+alle seine Abhängigkeiten im Suchpfad verfügbar sind. Skripte werden wie
+folgt ausgeführt:
+
+@example
+guix repl -- my-script,scm --option1 --option2 --option2=option-arg arg1 arg2
+@end example
+
+Weitere Informationen erhalten Sie mit
+@command{info \"(guix.de) Aufruf von guix repl\"}.")
+ (fr "La commande @command{guix repl} peut maintenant être utilisée
+pour exécuter des scripts en langage Guile. Par rapport au simple lancement
+de la commande @command{guile}, @command{guix repl} garantit que tous les
+modules Guix et toutes ses dépendances sont disponibles dans le chemin
+de recherche. Les scripts sont exécutés comme ceci :
+
+@example
+guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
+@end example
+
+Exécutez @command{info \"(guix.fr) Invoquer guix repl\"} pour plus d'informations.")))
+
+ (entry (commit "b460ba7992a0b4af2ddb5927dcf062784539ef7b")
+ (title (en "Add support to boot from a Btrfs subvolume")
+ (de "Unterstützung für Systemstart von einem
+Btrfs-Unterlaufwerk hinzugefügt")
+ (fr "Ajout du support pour démarrer depuis un sous-volume Btrfs")
+ (nl "Nieuwe ondersteuning voor het opstarten vanaf een Btrfs-subvolume"))
+ (body
+ (en "The generation of the GRUB configuration file produced from an
+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.")
+ (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
+@command{info \"(guix) Btrfs file system\"} aus, wenn Sie mehr Informationen
+und Beispiele sehen möchten.")
+ (fr "La génération du fichier de configuration de GRUB produite à
+partir de la déclaration d'un @code{operating-system} tient maintenant compte
+de l'utilisation d'un sous-volume Btrfs pour la partition contenant
+@file{/gnu/store}. Exécutez la commande @command{info\"(guix) Btrfs file
+system\"} pour des exemples et plus d'information.")
+ (nl "Het opmaken van het GRUB-configuratiebestand op basis van
+een @code{operating-system}-declaratie houdt nu rekening met het gebruik van
+een Btrfs-subvolume voor de partitie die @file{/gnu/store} bevat. Voer
+@command{info \"(guix) Btrfs file system\"} uit voor meer informatie en
+voorbeelden.")))
+
+ (entry (commit "6456232164890dbf5aa20394ee24637feb4b7b9e")
+ (title (en "@command{guix pack -RR} introduces a new execution
+engine")
+ (de "@command{guix pack -RR} führt neuen Ausführungstreiber
+ein"))
+ (body
+ (en "The @command{guix pack -RR} command allows you to create a
+tarball containing @dfn{relocatable binaries}. Until now, those would rely
+either on Linux ``unprivileged user namespaces'' or on PRoot, when
+unprivileged user namespaces are not supported. However, PRoot introduces
+significant overhead for some workloads.
+
+To address that, @command{guix pack -RR} introduces a third option based on an
+extension to the GNU run-time linker (ld.so) and on Fakechroot, which incurs
+very little overhead. You can select the fastest option when executing a
+relocatable binary like this:
+
+@example
+GUIX_EXECUTION_ENGINE=performance
+export GUIX_EXECUTION_ENGINE
+@end example
+
+Run @command{info \"(guix) Invoking guix pack\"} for more information.")
+ (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
+Benutzernamensräumen“ ohne Berechtigungen ausgeführt, oder in PRoot, wenn
+keine unprivilegierten Benutzernamensräume unterstützt wurden. Allerdings
+fällt bei der Ausführung mit PRoot bei manchen Anwendungen deutlich mehr
+Rechenaufwand an.
+
+Um dem entgegenzuwirken, stellt @command{guix pack -RR} nun eine dritte Option
+zur Verfügung, die sich eine Erweiterung des GNU-Laufzeit-Binders („Run-Time
+Linker“, ld.so) und Fakechroot zu Nutze macht. Dadurch entsteht fast kein
+Mehraufwand. Sie können sich die schnellste Option aussuchen, wenn Sie eine
+verschiebliche Binärdatei ausführen, zum Beispiel so:
+
+@example
+GUIX_EXECUTION_ENGINE=performance
+export GUIX_EXECUTION_ENGINE
+@end example
+
+Führen Sie @command{info \"(guix.de) Aufruf von guix pack\"} aus, wenn Sie
+mehr wissen wollen.")))
+
+ (entry (commit "88a96c568c47c97d05d883ada5afbc4e1200b10f")
+ (title (en "New @option{--path} option for @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}
+option that instructs it to display the shortest path between two packages,
+derivations, or store items. For example, the command below displays the
+shortest path from the @code{libreoffice} package to @code{libunistring}:
+
+@example
+guix graph --path libreoffice libunistring
+@end example
+
+Run @code{info \"(guix) Invoking guix graph\"} for more information.")
+ (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
+folgender Befehl den kürzesten Pfad vom Paket @code{libreoffice} zu
+@code{libunistring}:
+
+@example
+guix graph --path libreoffice libunistring
+@end example
+
+Führen Sie @code{info \"(guix.de) Aufruf von guix graph\"} aus, um mehr zu
+erfahren.")))
+
(entry (commit "a33eac038a811603c8b9ed106ae405a5f80a0e9d")
(title (en "GNU C Library upgraded")
(de "GNU-C-Bibliothek aktualisiert")
uit voor verdere uitleg.")))
(entry (commit "e1e6491226347d9fb93ff484d78cef98848a510a")
- (title (en "Guix Cookbook now available as Info"))
+ (title (en "Guix Cookbook now available as Info")
+ (de "Guix-Kochbuch jetzt als Info-Dokument verfügbar"))
;; TRANSLATORS: Adjust the URL and the 'info' command to refer to the
;; translated manual if it's available.
(body (en "The new Guix Cookbook is now fetched by @command{guix pull}
it @uref{https://guix.gnu.org/cookbook/en/, on-line}.
Your contributions are welcome: @uref{https://guix.gnu.org/contact/, get in
-touch with the developers} to share your recipes!")))
+touch with the developers} to share your recipes!")
+ (de "Das neue Guix-Kochbuch wird nun von @command{guix pull}
+geladen und steht dann im Info-Format zur Verfügung. Darin sollen Anleitungen
+und detaillierte Beispiele gezeigt werden, die eine breite Spanne an
+Anwendungsfällen abdecken. Um darauf zuzugreifen, geben Sie dies ein:
+
+@example
+info guix-cookbook.de
+@end example
+
+Das Kochbuch steht derzeit auf Deutsch und Englisch zur Verfügung. Sie können
+auch @uref{https://guix.gnu.org/cookbook/de/, online} darauf zugreifen.
+
+Ihre Beiträge werden gerne gesehen. Bitte
+@uref{https://guix.gnu.org/contact/, kontaktieren Sie die Entwickler}, um Ihre
+Rezepte mit uns zu teilen!")))
(entry (commit "2ca7af43fe17d9acf082dce85d137a27a8ac4887")
- (title (en "Further reduced binary seed bootstrap"))
+ (title (en "Further reduced binary seed bootstrap")
+ (de "Bootstrapping jetzt mit noch kleinerem Seed"))
(body
(en "The package graph on x86_64 and i686 is now rooted in a further
@dfn{reduced set of binary seeds}. The initial set of binaries from which
packages are built now weighs in at approximately 60 MiB, a quarter of what it
used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
-the talk at @uref{https://fosdem.org/2020/schedule/event/gnumes/}.")))
+the talk at @uref{https://fosdem.org/2020/schedule/event/gnumes/}.")
+ (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine noch
+@dfn{kleinere Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche
+Menge an Binärdateien, aus denen heraus Pakete erstellt werden, machen nun
+ungefähr 60 MiB aus, ein Viertel der früheren Größe. Führen Sie @code{info
+\"(guix.de) Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich
+den Vortrag auf @uref{https://fosdem.org/2020/schedule/event/gnumes/} an.")))
(entry (commit "0468455e7d279c89ea3ad1b51935efb2b785ec47")
(title (en "Rottlog service added to @code{%base-services}")
„Log-Rotation“ im Handbuch für weitere Informationen.")))
(entry (commit "b6bee63bed4f013064c0d902e7c8b83ed7514ade")
- (title (en "@code{guile} package now refers to version 3.0"))
+ (title (en "@code{guile} package now refers to version 3.0")
+ (de "Das @code{guile}-Paket bezeichnet jetzt Version 3.0"))
(body (en "The @code{guile} package has been upgraded to version 3.0
(instead of 2.2). The @code{guile3.0-} packages have been renamed to their
original name, and @code{guile2.2-} variants of these packages have been
defined. Additionally, derivations are now all built with Guile 3.0, and
-system services also run on 3.0.")))
+system services also run on 3.0.")
+ (de "Das @code{guile}-Paket wurde auf Version 3.0
+ (statt 2.2) aktualisiert. Die Pakete, deren Namen mit @code{guile3.0-}
+beginnen, wurden umbenannt, so dass sie nun den unveränderten Namen tragen,
+während ihre Varianten mit @code{guile2.2-} hinzugefügt wurden. Des Weiteren
+werden jetzt alle Ableitungen mit Guile 3.0 erstellt und die Systemdienste
+laufen auch auf 3.0.")))
(entry (commit "e3e1a7ba08af2d58c47264c543617e499c239444")
(title (en "@command{guix pull} now supports SSH authenticated