3c26f0a4d6ed97d3b1cc13a9a3846a9a549c2589
[jackhill/guix/guix.git] / etc / news.scm
1 ;; GNU Guix news, for use by 'guix pull'.
2 ;;
3 ;; Copyright © 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
4 ;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
5 ;; Copyright © 2019, 2020 Miguel Ángel Arruga Vivas <rosen644835@gmail.com>
6 ;; Copyright © 2019, 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
7 ;; Copyright © 2019, 2020 Julien Lepiller <julien@lepiller.eu>
8 ;; Copyright © 2019, 2020, 2021 Florian Pelz <pelzflorian@pelzflorian.de>
9 ;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
10 ;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
11 ;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
12 ;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
13 ;;
14 ;; Copying and distribution of this file, with or without modification, are
15 ;; permitted in any medium without royalty provided the copyright notice and
16 ;; this notice are preserved.
17
18 (channel-news
19 (version 0)
20
21 (entry (commit "aa8de806252e3835d57fab351b02d13db762deac")
22 (title
23 (en "Risk of local privilege escalation @i{via} setuid programs"))
24 (body
25 (en "On Guix System, setuid programs were, until now, installed as
26 setuid-root @emph{and} setgid-root (in the @file{/run/setuid-programs}
27 directory). However, most of these programs are meant to run as setuid-root,
28 but not setgid-root. Thus, this setting posed a risk of local privilege
29 escalation.
30
31 This bug has been fixed and users are advised to upgrade their system, with a
32 command along the lines of:
33
34 @example
35 guix system reconfigure /run/current-system/configuration.scm
36 @end example
37
38 Users of Guix on a ``foreign distro'' are unaffected. See
39 @url{https://issues.guix.gnu.org/46395} for more information.")))
40
41 (entry (commit "aedbc5ff32a62f45aeed74c6833399a6cf2c22dc")
42 (title
43 (en "Create a manifest with @command{guix package --export-manifest}")
44 (de "Manifest erzeugen mit @command{guix package --export-manifest}")
45 (fr "Créer un manifeste avec @command{guix package --export-manifest}"))
46 (body
47 (en "The @command{guix package --export-manifest} command outputs a
48 @dfn{manifest} from your profile. This manifest is a code snippet that can
49 then be passed to @command{guix package --manifest} (or any other command that
50 accepts the @option{--manifest} option) to deploy these packages.
51
52 The goal of this new @option{--export-manifest} option is to make it easier to
53 migrate from an ``imperative'' style where you repeatedly invoke @command{guix
54 install} and similar commands, to the declarative style where you write in a
55 manifest file the list of packages you want to have.
56
57 Similarly, the new @option{--export-channels} option outputs a @dfn{channel
58 specification} suitable for @command{guix pull --channels} from your profile.
59 This allows you to ``pin'' Guix to the revision that was used to build the
60 profile.
61
62 Run @command{info \"(guix) Invoking guix package\"} for more info.")
63 (de "Mit dem Befehl @command{guix package --export-manifest} wird ein
64 @dfn{Manifest} aus Ihrem Profil erzeugt. Bei einem Manifest handelt es sich um
65 ein Stück Code, das Sie an @command{guix package --manifest} zum Einspielen
66 der Pakete aus dem Manifest übergeben können (oder an jeden anderen Befehl,
67 der die Befehlszeilenoption @option{--manifest} versteht).
68
69 Die Absicht hinter dieser neuen Befehlszeilenoption @option{--export-manifest}
70 ist, dass man leichter von einem „imperativen“ Stil, bei dem man wiederholt
71 @command{guix install} und ähnliche Befehle aufruft, zum deklarativen Stil
72 wechseln kann. Im deklarativen Stil tragen Sie die Liste der Pakete, die Sie
73 haben möchten, in eine Manifest-Datei ein.
74
75 Analog können Sie mit der neuen Befehlszeilenoption @option{--export-channels}
76 zu Ihrem Profil eine @dfn{Kanalspezifikation} erzeugen, die für @command{guix
77 pull --channels} geeignet ist. Damit können Sie für Guix immer die Version
78 benutzen, mit der das Profil erstellt wurde.
79
80 Führen Sie für mehr Informationen @command{info \"(guix.de) Aufruf von guix
81 package\"} aus.")
82 (fr "La commande @command{guix package --export-manifest} affiche un
83 @dfn{manifeste} pour le profil choisi. Ce manifeste est un bout de code qu'on
84 peut passer à @command{guix package --manifest} (ou n'importe qu'elle commande
85 qui accepte l'option @option{--manifest}) pour déployer ces paquets.
86
87 L'objectif de cette nouvelle option @option{--export-manifest} est de
88 faciliter la migration du modèle ``impératif'', où on utilise @command{guix
89 install} et les commandes de ce genre, au modèle déclaratif où on écrit dans
90 un fichier la liste des paquets que l'on veut avoir.
91
92 De même, la nouvelle option @option{--export-channels} produit une
93 @dfn{spécification de canaux} pour @command{guix pull --channels} à partir du
94 profil. Cela permet de ``figer'' Guix à la révision qui a été utilisée pour
95 produire le profil.
96
97 Voir @command{info \"(guix.fr) Invoquer guix package\"} pour plus
98 d'informations.")))
99
100 (entry (commit "9ab817b2a4601b4a6755983590ed7d93ebdc8d09")
101 (title (en "New @option{--with-latest} package transformation option")
102 (de "Neue Paketumwandlungsoption @option{--with-latest}")
103 (fr "Nouvelle option de transformation @option{--with-latest}"))
104 (body
105 (en "The new @option{--with-latest} package transformation option
106 gets the latest release of a package, as would be identified by @command{guix
107 refresh}, and uses it instead of the currently-packaged version. For example,
108 to install the latest release of GNOME Weather linked against the latest
109 version of libgweather, run:
110
111 @example
112 guix install gnome-weather \\
113 --with-latest=gnome-weather --with-latest=libgweather
114 @end example
115
116 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
117 (de "Mit der neuen Paketumwandlungsoption @option{--with-latest} wird
118 die neueste Veröffentlichung für ein Paket verwendet. Diese wird wie bei
119 @command{guix refresh} bestimmt und anstelle der zurzeit im Paket festgelegten
120 Version verwendet. Um zum Beispiel die neuste Veröffentlichung von GNOME
121 Weather gebunden an die neuste Version von libgweather zu installieren, führen
122 Sie dies aus:
123
124 @example
125 guix install gnome-weather \\
126 --with-latest=gnome-weather --with-latest=libgweather
127 @end example
128
129 Führen Sie für mehr Informationen @command{info \"(guix.de)
130 Paketumwandlungsoptionen\"} aus.")
131 (fr "La nouvelle option de transformation de paquets
132 @option{--with-latest} récupère la dernière version d'un logiciel telle
133 qu'elle serait trouvée par @command{guix refresh} et l'utilise à la place la
134 version actuellement fournie par le paquet. Par exemple, pour installer la
135 dernière version de GNOME Weather, elle-même compilée avec la dernière version
136 de libgweather, on lancera :
137
138 @example
139 guix install gnome-weather \\
140 --with-latest=gnome-weather --with-latest=libgweather
141 @end example
142
143 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
144 plus de détails.")))
145
146 (entry (commit "a879e35116043d5daf3d9d175b697d10b9177fd5")
147 (title (en "Substitutes can now be compressed with zstd")
148 (de "Substitute können nun mit zstd komprimiert werden")
149 (fr "Les substituts peuvent maintenant être compressés avec zstd"))
150 (body
151 (en "The @command{guix publish} command now supports substitute
152 compression with zstd and @command{guix-daemon} can now fetch and decompress
153 them.
154
155 The advantage of zstd over the other options is its high compression and
156 decompression throughput, with good compression ratios (not as good as lzip,
157 but slightly better than gzip). Its high decompression throughput makes it a
158 good choice in situations where substitute downloads would otherwise be
159 CPU-bound, typically when having a high-speed connection to the substitute
160 server. Run @command{info \"(guix) Invoking guix publish\"} for more info.
161
162 To be able to fetch zstd-compressed substitutes (if the substitute servers you
163 chose provide them), you need to upgrade your daemon. Run @command{info
164 \"(guix) Upgrading Guix\"} to learn how to do it.")
165 (de "Mit dem Befehl @command{guix publish} können Sie jetzt auch
166 Substitute mit zstd komprimieren und @command{guix-daemon} kann sie laden und
167 dekomprimieren.
168
169 zstd bietet gegenüber den anderen Optionen einen hohen Durchsatz bei
170 Kompression und Dekompression mit guten Kompressionsverhältnissen (nicht so
171 gut wie lzip, aber etwas besser als gzip). Wegen des hohen Durchsatzes bei
172 der Dekompression ist zstd eine gute Wahl, wenn beim Herunterladen von
173 Substituten ansonsten der Engpass bei der Prozessorleistung läge, etwa weil
174 eine schnelle Netzwerkverbindung zum Substitutserver besteht. Führen Sie für
175 mehr Informationen @command{info \"(guix.de) Aufruf von guix publish\"} aus.
176
177 Um zstd-komprimierte Substitute benutzen zu können (wenn der Substitutserver
178 sie anbietet), müssen Sie Ihren Daemon aktualisieren. Führen Sie
179 @command{info \"(guix.de) Aktualisieren von Guix\"} aus, um zu erfahren, wie
180 Sie ihn aktualisieren.")
181 (fr "La commande @command{guix publish} peut maintenant compresser
182 les substituts avec zstd et @command{guix-daemon} est capable de les récupérer
183 et de les décompresser.
184
185 L'avantage de zstd par rapport aux autres méthodes est son haut débit en
186 compression et décompression, avec un taux de compression correct (pas aussi
187 bon que lzip, mais légèrement meilleur que gzip). Sa vitesse de décompression
188 en fait un bon choix dans les situations où le temps de téléchargement des
189 substituts se retrouve sinon limité par le temps de calcul comme c'est le cas
190 lorsqu'on bénéficie d'une connexion rapide au serveur de substitut. Lancer
191 @command{info \"(guix.fr) Invoquer guix publish\"} pour plus d'informations.
192
193 Pour pouvoir télécharger des substituts compressés avec zstd (si les serveurs
194 de substituts choisis les fournissent), il faudra d'abord mettre à jour le
195 démon. Lancer @command{info \"(guix.fr) Mettre à niveau Guix\"} pour voir
196 comment faire.")))
197
198 (entry (commit "e38d90d497e19e00263fa28961c688a433154386")
199 (title (en "New @option{--with-patch} package transformation option")
200 (de "Neue Paketumwandlungsoption @option{--with-patch}")
201 (fr "Nouvelle option de transformation @option{--with-patch}"))
202 (body
203 (en "The new @option{--with-patch} package transformation option
204 applies patches to the specified packages before building them. The example
205 below builds the GNU Core Utilities against a patched C library (glibc):
206
207 @example
208 guix build coreutils --with-patch=glibc=./glibc-frob.patch
209 @end example
210
211 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
212 (de "Die neue Paketumwandlungsoption @option{--with-patch} wendet
213 Patches auf die angegebenen Pakete an, bevor sie erstellt werden. Das folgende
214 Beispiel lässt die GNU Core Utilities mit einer gepatchten
215 C-Bibliothek (glibc) erstellen:
216
217 @example
218 guix build coreutils --with-patch=glibc=./glibc-frob.patch
219 @end example
220
221 Führen Sie für mehr Informationen @command{info \"(guix.de)
222 Paketumwandlungsoptionen\"} aus.")
223 (fr "La nouvelle option de transformation de paquets
224 @option{--with-patch} applique des modifications (@i{patches}) aux paquets
225 spécifiés avant de les compiler. L'exemple suivant compile les utilitaires de
226 base GNU avec une bibliothèque C (glibc) modifiée :
227
228 @example
229 guix build coreutils --with-patch=glibc=./glibc-frob.patch
230 @end example
231
232 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
233 plus de détails.")))
234
235 (entry (commit "79f9dee3c4c0e6d21066f142116a537207ae7ba4")
236 (title (en "Local substitute servers discovery is now supported")
237 (de "Substitutserver können jetzt im lokalen Netz erkannt werden")
238 (es "Los servidores de sustituciones se pueden descubrir localmente")
239 (fr "La découverte des serveurs de substituts locaux est désormais supportée"))
240 (body
241 (en "The @command{guix-daemon} can now discover local substitute
242 servers when the @option{--discover} option is passed. Only the substitute
243 servers started with the @option{--advertise} option will be discovered. The
244 network discovery is based on mDNS and DNS-SD protocols, using Guile-Avahi
245 library for now.")
246 (de "Mit dem @command{guix-daemon} können jetzt lokal laufende
247 Substitutserver erkannt werden, wenn die Befehlszeilenoption
248 @option{--discover} übergeben wurde. Nur solche Substitutserver werden
249 gefunden, die mit der Befehlszeilenoption @option{--advertise} gestartet
250 wurden. Die Ermittlung im Netzwerk verfügbarer Substitutserver baut auf den
251 Protokollen mDNS und DNS-SD auf. Derzeit wird dazu die Bibliothek Guile-Avahi
252 benutzt.")
253 (es "El daemon @command{guix-daemon} ahora puede descubrir servidores
254 de sustituciones locales cuando se le proporciona la opción
255 @option{--discover}. Únicamente se descubrirán los servidores de
256 sustituciones que se hayan arrancado con la opción @option{--advertise}. La
257 búsqueda en la red se basa en los protocolos mDNS y DNS-SD, actualmente
258 mediante el uso de la biblioteca Guile-Avahi.")
259 (fr "Le @command{guix-daemon} peut désormais découvrir les serveurs
260 de substituts locaux lorsque l'option @option{--discover} est passée. Seuls
261 les serveurs de substituts démarrés avec l'option @option{--advertise} seront
262 découverts. La découverte réseau utilise les protocoles mDNS et DNS-SD, pour
263 l'instant grâce à la librairie Guile-Avahi.")))
264
265 (entry (commit "a9a2fdaabcc78e7a54d9a6bcfa4ee3de308e9a90")
266 (title (en "Logical Volume Manager (LVM) now supported on Guix System")
267 (de "Logical Volume Manager (LVM) wird jetzt auf Guix System unterstützt")
268 (es "El sistema Guix ahora implementa también volúmenes lógicos LVM"))
269 (body
270 (en "On Guix System, the new @code{lvm-device-mapping} variable
271 allows you to declare ``mapped devices'' for LVM, the Linux Logical Volume
272 Manager. For example, LVM logical volumes ``alpha'' and ``beta'' from volume
273 group ``vg0'' can be declared as follows:
274
275 @lisp
276 (mapped-device
277 (source \"vg0\")
278 (target (list \"vg0-alpha\" \"vg0-beta\"))
279 (type lvm-device-mapping))
280 @end lisp
281
282 See @command{info \"(guix) Mapped Devices\"} for more information.")
283 (de "Auf Guix System erlaubt Ihnen die neue Variable
284 @code{lvm-device-mapping}, „zugeordnete Geräte“ (Mapped Devices) für LVM, den
285 Linux Logical Volume Manager, zu deklarieren. Zum Beispiel können logische
286 Datenträger von LVM namens „alpha“ und „beta“ aus der
287 Datenträgergruppe (Volume Group) „vg0“ wie folgt deklariert werden:
288
289 @lisp
290 (mapped-device
291 (source \"vg0\")
292 (target (list \"vg0-alpha\" \"vg0-beta\"))
293 (type lvm-device-mapping))
294 @end lisp
295
296 Siehe @command{info \"(guix.de) Zugeordnete Geräte\"} für nähere Informationen.")
297 (es "En el sistema Guix, la nueva variable @code{lvm-device-mapping}
298 le permite declarar «dispositivos traducidos» para LVM, el gestor de volúmenes
299 lógicos de Linux. A continuación se muestra un ejemplo con la declaración de
300 los volúmenes lógicos «alfa» y «beta» del grupo de volúmenes «vg0»:
301
302 @lisp
303 (mapped-device
304 (source \"vg0\")
305 (target (list \"vg0-alfa\" \"vg0-beta\"))
306 (type lvm-device-mapping))
307 @end lisp
308
309 Véase @command{info \"(guix.es) Dispositivos traducidos\"} para obtener más
310 información.")))
311
312 (entry (commit "3b6e4e5fd05e72b8a32ff1a2d5e21464260e21e6")
313 (title (en "List of substitute keys is now declarative on Guix System")
314 (de "Liste der Substitutschlüssel auf Guix System ist jetzt deklarativ")
315 (es "Claves para sustituciones del sistema Guix en formato declarativo")
316 (fr "Liste des clefs de substituts désormais déclarative sur Guix System"))
317 (body
318 (en "The list of authorized substitute keys, available in
319 @file{/etc/guix/acl}, is now built by default in a purely declarative fashion
320 on Guix System based on the @code{authorized-keys} field of the configuration
321 of @code{guix-service-type}. This means that manual changes to
322 @file{/etc/guix/acl} are now @emph{discarded} upon reconfiguration or
323 reboot (a backup is made as @file{/etc/guix/acl.bak} in that case).
324
325 We recommend updating your operating system configuration to explicitly list
326 all the authorized substitute keys. See @command{info \"(guix) Base
327 Services\"}, for more info about @code{guix-configuration} and
328 @code{authorized-keys}.
329
330 Alternatively, you can set the @code{authorize-key?} field of
331 @code{guix-configuration} to @code{#f} to restore previous behavior.")
332 (de "Die Liste von autorisierten Substitutschlüsseln, die in
333 @file{/etc/guix/acl} steht, wird auf Guix System nach Vorgabe jetzt auf rein
334 deklarative Weise erstellt, je nach Inhalt des @code{authorized-keys}-Feldes
335 der Konfiguration des @code{guix-service-type}. Das hat zur Folge, dass
336 manuelle Änderungen an @file{/etc/guix/acl} von jetzt an nach jedem
337 Rekonfigurieren oder Neustarten @emph{verworfen} werden (in diesem Fall wird
338 eine Sicherheitskopie namens @file{/etc/guix/acl.bak} angelegt).
339
340 Wir empfehlen, dass Sie Ihre Betriebssystemkonfiguration aktualisieren, damit
341 dort alle autorisierten Substitutschlüssel ausdrücklich aufgeführt
342 werden. Siehe @command{info \"(guix.de) Basisdienste\"} für mehr Informationen
343 zur @code{guix-configuration} und @code{authorized-keys}.
344
345 Alternativ können Sie das @code{authorize-key?}-Feld der
346 @code{guix-configuration} auf @code{#f} setzen, um zum alten Verhalten
347 zurückzugehen.")
348 (es "El listado de claves autorizadas para la obtención de
349 sustituciones, disponible en @file{/etc/guix/acl}, ahora se genera de manera
350 predeterminada en el sistema Guix de forma completamente declarativa en base
351 al campo @code{authorized-keys} del la configuración para el servicio
352 @code{guix-service-type}. Esto significa que los cambios que se hayan
353 realizado de manera manual en @file{/etc/guix/acl} @emph{se descartan} tras
354 una reconfiguración del sistema o tras un reinicio (se realiza una copia de
355 seguridad en la ruta @file{/etc/guix/acl.bak} en este caso).
356
357 Le recomendamos que actualice su configuración del sistema operativo para que
358 enumere explícitamente todas las claves que desea autorizar para la obtención
359 de sustituciones. Véase @command{info \"(guix.es) Servicios base\"}, para
360 obtener más información sobre @code{guix-configuration} y
361 @code{authorized-keys}.
362
363 También puede proporcionar el valor @code{#f} en el campo
364 @code{authorize-key?} de @code{guix-configuration} para volver al
365 comportamiento que se obtenía con versiones previas.")
366 (fr "La liste des clefs de substituts autorisées, stockée dans
367 @file{/guix/guix/acl}, est dorénavant construite par défaut de manière
368 déclarative sur Guix System, en se basant sur le champs @code{authorized-keys}
369 de la configuration de @code{guix-service-type}. Cela signifie que les
370 modifications apportées manuellement à @file{/etc/guix/acl} seront désormais
371 @emph{perdues} lors d'une reconfiguration ou d'un redémarrage (dans ce cas une
372 sauvegarde est faite dans @file{/etc/guix/acl.bak}).
373
374 Nous recommandons de mettre à jour sa configuration de système d'exploitation
375 pour y lister explicitement les clefs autorisées. Lancez @command{info
376 \"(guix.fr) Services de base\"} pour plus d'informations sur
377 @code{guix-configuration} et @code{authorized-keys}.
378
379 Il est également possible de mettre le champs @code{authorize-key?} de
380 @code{guix-configuration} à @code{#f} pour restaurer le comportement qui
381 prévalait jusqu'à maintenant.")))
382
383 (entry (commit "6aeda81602555fbeac0c0a209e74f5262093b513")
384 (title (en "New @option{--with-debug-info} package transformation option")
385 (de "Neue Paketumwandlungsoption @option{--with-debug-info}")
386 (es "Nueva opción de transformación @option{--with-debug-info}")
387 (fr "Nouvelle option de transformation @option{--with-debug-info}"))
388 (body
389 (en "The new @option{--with-debug-info} option builds a variant of a
390 package that includes debug info and grafts it onto the application you want
391 to debug. Thus, only the package for which you want debug info needs to be
392 recompiled. This is useful for packages that do not already have a
393 @code{debug} output.
394
395 For example, here is how you would obtain debug info for the @code{glib}
396 library so you can inspect it while debugging Inkscape:
397
398 @example
399 guix build --with-debug-info=glib inkscape
400 @end example
401
402 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
403 (de "Die neue Paketumwandlungsoption @option{--with-debug-info} lässt
404 eine Variante eines Pakets erstellen, die auch Informationen zur Fehlersuche
405 enthält. Damit wird die Anwendung veredelt, wo Sie Fehler nachvollziehen
406 möchten. Somit muss nur das Paket, für das Sie die Informationen brauchen, neu
407 kompiliert werden. Das ist hilfreich bei Paketen, die noch nicht über eine
408 @code{debug}-Ausgabe verfügen.
409
410 Zum Beispiel würden Sie so Informationen zur Fehlersuche für die
411 @code{glib}-Bibliothek bekommen, um sie inspizieren zu können, wenn Sie Fehler
412 in Inkscape nachvollziehen möchten:
413
414 @example
415 guix build --with-debug-info=glib inkscape
416 @end example
417
418 Führen Sie für mehr Informationen @command{info \"(guix.de)
419 Paketumwandlungsoptionen\"} aus.")
420 (es "La nueva opción @option{--with-debug-info} construye una
421 variante del paquete que incluye la información de depuración y la injerta
422 en la aplicación que desee depurar. Por tanto, únicamente el paquete del
423 que desee información de depuración debe construirse de nuevo. Es útil
424 para paquetes que no tienen ya una salida @code{debug}.
425
426 El siguiente ejemplo muestra como obtener información de depuración
427 para la biblioteca @code{glib} de modo que pueda inspeccionarla mientras
428 depura Inkscape:
429
430 @example
431 guix build --with-debug-info=glib inkscape
432 @end example
433
434 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
435 para obtener más información.")
436 (fr "La nouvelle option de transformation de paquets
437 @option{--with-debug-info} compile une variante d'un paquet avec les
438 informations de déboguage et la greffe sur l'application que l'on veut
439 déboguer. Ainsi seul le paquet pour lequel on demande des informations de
440 déboguage a besoin d'être recompilé. C'est utile pour les paquets n'ayant pas
441 déjà un résultat @code{debug}.
442
443 Voici par exemple comment obtenir des informations de déboguage pour la
444 bibliothèque @code{glib} de manière à pouvoir l'inspecter quand on débuggue
445 Inkscape :
446
447 @example
448 guix build --with-debug-info=glib inkscape
449 @end example
450
451 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
452 plus de détails.")))
453
454 (entry (commit "abd7a474615353149a44f4504f0b4b248dcc0716")
455 (title (en "New @option{--with-c-toolchain} package transformation option")
456 (de "Neue Paketumwandlungsoption @option{--with-c-toolchain}")
457 (es "Nueva opción de transformación @option{--with-c-toolchain}")
458 (fr "Nouvelle option de transformation @option{--with-c-toolchain}"))
459 (body
460 (en "The new @option{--with-c-toolchain} package transformation
461 options provides an easy way for developers to rebuild their favorite packages
462 with the C/C++ tool chain of their choice instead of the default one.
463
464 For example, the following command rebuilds the @code{fftw} and @code{fftwf}
465 packages as well as every package that depends on them, up to and including
466 @code{octave-cli}, using GCC version 10 (currently GCC 7.5 is used by
467 default):
468
469 @example
470 guix build octave-cli \\
471 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
472 --with-c-toolchain=fftwf=gcc-toolchain@@10
473 @end example
474
475 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
476 (de "Die neue Paketumwandlungsoption @option{--with-c-toolchain}
477 bietet Entwicklern die Möglichkeit, leicht ihre Lieblingspakete mit der
478 selbstgewählten Toolchain für C/C++ anstelle der vorgegebenen neu zu
479 erstellen.
480
481 Zum Beispiel werden mit folgendem Befehl die Pakete @code{fftw} und
482 @code{fftwf} sowie alle davon abhängigen Pakete bis einschließlich
483 @code{octave-cli} mit Version 10 der GCC erstellt (vorgegeben wäre zurzeit,
484 GCC 7.5 zu benutzen):
485
486 @example
487 guix build octave-cli \\
488 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
489 --with-c-toolchain=fftwf=gcc-toolchain@@10
490 @end example
491
492 Führen Sie für mehr Informationen @command{info \"(guix.de)
493 Paketumwandlungsoptionen\"} aus.")
494 (es "La nueva opción de transformación de paquetes
495 @option{--with-c-toolchain} proporciona a las desarrolladoras una manera
496 fácil de reconstruir sus paquetes favoritos con la cadena de herramientas
497 de compilación de C/C++ que elijan en vez de la predeterminada.
498
499 Por ejemplo, la siguiente orden reconstruye los paquetes @code{fftw} y
500 @code{fftwf} así como todos los paquetes que dependen de ellos hasta
501 @code{octave-cli}, usando la versión 10 de GCC (el compilador
502 predeterminado en estos momentos es GCC 7.5):
503
504 @example
505 guix build octave-cli \\
506 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
507 --with-c-toolchain=fftwf=gcc-toolchain@@10
508 @end example
509
510 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
511 para obtener más información.")
512 (fr "La nouvelle option de transformation de paquets
513 @option{--with-c-toolchain} permet aux développeur·euses de recompiler leurs
514 paquets préférés avec la chaîne d'outils C/C++ de leur choix à la place de
515 celle par défaut.
516
517 Par exemple, la commande ci-dessous recompile @code{fftw}, @code{fftwf} et
518 tous les paquets qui en dépendent, jusqu'à @code{octave-cli} inclus, avec GCC
519 10 (actuellement c'est GCC 7.5 qui est utilisé par défaut):
520
521 @example
522 guix build octave-cli \\
523 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
524 --with-c-toolchain=fftwf=gcc-toolchain@@10
525 @end example
526
527 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
528 plus de détails.")))
529
530 (entry (commit "8e1907a72430aa989125b053573ef0897c480697")
531 (title (en "Package transformation options now recorded in profiles")
532 (es "Las opciones de transformación de paquetes ahora se
533 quedan registradas en el perfil")
534 (de "Paketumwandlungsoptionen werden nun in Profilen gesichert")
535 (fr "Options de transformation sauvegardées dans les profils"))
536 (body
537 (en "When installing packages in a profile, package transformation
538 options such as @option{--with-input} are now recorded in the profile. When
539 you eventually run @command{guix upgrade}, those transformations will be
540 automatically applied to the upgraded packages.
541
542 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
543 (es "Si durante la instalación de paquetes en un perfil se utilizaron
544 opciones de transformación de paquetes, como por ejemplo
545 @option{--with-input}, éstas se registran en el perfil. Cuando vuelva a
546 ejecutar @command{guix upgrade}, dichas transformaciones se aplicarán
547 automáticamente a los paquetes actualizados.
548
549 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
550 para obtener más información.")
551 (de "Wenn Sie ein Paket in ein Profil installieren, werden nun
552 Paketumwandlungsoptionen wie @option{--with-input} im Profil gespeichert.
553 Sobald Sie später @command{guix upgrade} ausführen, werden dieselben
554 Umwandlungen automatisch auf die aktualisierten Pakete angewandt.
555
556 Führen Sie für mehr Informationen @command{info \"(guix.de)
557 Paketumwandlungsoptionen\"} aus.")
558 (fr "Lorsqu'on installe des paquets dans un profil, les options de
559 transformation telles que @option{--with-input} sont désormais enregistrées
560 dans le profil. Quand on le met plus tard à jour avec @command{guix upgrade},
561 ces transformations sont automatiquement appliquées aux nouveaux paquets.
562
563 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
564 plus de détails.")))
565
566 (entry (commit "313f492657f1d0863c641fa5ee7f5b7028e27c94")
567 (title (en "New @option{--image-type} option for @command{guix system disk-image}.")
568 (es "Nueva opción @option{--image-type} para @command{guix system disk-image}.")
569 (de "Neue Option @option{--image-type} für @command{guix system disk-image}.")
570 (fr "Nouvelle option @option{--image-type} pour @command{guix system disk-image}."))
571 (body
572 (en "The @option{--file-system-type} option for @command{guix system
573 disk-image} command has been replaced by the new @option{--image-type} option.
574 By default, @code{raw} disk images are produced, but @code{hurd-qcow2},
575 @code{hurd-raw}, @code{uncompressed-iso9660} and @code{iso9660} image types
576 are also available.
577
578 The @option{--list-image-types} option lists all the available image types.")
579 (es "La opción @option{--file-system-type} de @command{guix system
580 disk-image} se ha sustituido por la nueva opción @option{--image-type}. De
581 manera predeterminada se producen imágenes en formato crudo (@code{raw}) pero
582 también están disponibles los tipos de imagen @code{hurd-qcow2},
583 @code{hurd-raw}, @code{uncompressed-iso9660} y @code{iso9660}.
584
585 La opción @option{--list-image-types} muestra una lista con todos los tipos
586 de imagen disponibles.")
587 (de "Anstelle der Befehlszeilenoption @option{--file-system-type} für
588 @command{guix system disk-image} gibt es nun die neue Option
589 @option{--image-type}. In der Vorgabeeinstellung @code{raw} werden rohe
590 Disk-Images erzeugt, aber es können auch die Abbildtypen @code{hurd-qcow2},
591 @code{hurd-raw}, @code{uncompressed-iso9660} und @code{iso9660} ausgewählt
592 werden.
593
594 Mit der Option @option{--list-image-types} werden alle verfügbaren Abbildtypen
595 aufgelistet.")
596 (fr "L'option @option{--file-system-type} pour la commande
597 @command{guix system disk-image} a été remplacée par la nouvelle option
598 @option{--image-type}. Par défaut, l'option @code{raw}, produisant des images
599 disque brutes est sélectionnée. Les options @code{hurd-qcow2},
600 @code{hurd-raw}, @code{uncompressed-iso9660} et @code{iso9660} sont également
601 disponibles.
602
603 La nouvelle option @option{--list-image-types} énumère les types d'image
604 disponibles.")))
605
606 (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d")
607 (title (en "Package transformations now apply to implicit inputs")
608 (es "Las transformaciones de paquetes ahora afectan también
609 a las dependencias implícitas")
610 (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben")
611 (fr "Les transformations de paquets s'appliquent aux
612 dépendances implicites"))
613 (body
614 (en "Package transformation options such as @option{--with-branch},
615 @option{--with-input}, and so on now apply to implicit inputs---previously
616 only a package's explicit inputs would be affected. This allows for things
617 such as replacing the Python dependency of a package that uses
618 @code{python-build-system}:
619
620 @example
621 guix install --with-input=python=python2 python-itsdangerous
622 @end example
623
624 Another example is grafting a different version of the GNU C
625 Library (@code{glibc} is an implicit input of almost all the packages and is
626 ``deep down'' in the dependency graph):
627
628 @example
629 guix build --with-graft=glibc=glibc@@2.31 hello
630 @end example
631
632 Run @command{info \"(guix) Package Transformation Options\"} for more
633 info.")
634 (es "Las opciones de transformación de paquetes como
635 @option{--with-branch}, @option{--with-input}, etcétera, ahora también
636 influyen en las entradas implícitas---antes únicamente las entradas explícitas
637 del paquete se veían afectadas. Esto permite, por ejemplo, sustituir la
638 dependencia en python de un paquete que use @code{python-build-system}:
639
640 @example
641 guix install --with-input=python=python2 python-itsdangerous
642 @end example
643
644 Otro ejemplo podría ser el injerto de una versión diferente de la biblioteca
645 de C de GNU (@code{glibc} es una entrada implícita de casi todos los paquetes
646 y ``muy abajo'' en el grafo de dependencias):
647
648 @example
649 guix build --with-graft=glibc=glibc@@2.31 hello
650 @end example
651
652 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
653 para obtener más información.")
654 (de "Paketumwandlungsoptionen wie @option{--with-branch},
655 @option{--with-input} und so weiter betreffen nun auch implizite Eingaben —
656 zuvor haben sie sich nur auf die expliziten Eingaben eines Pakets
657 ausgewirkt. Dadurch kann jetzt zum Beispiel die Python-Abhängigkeit eines
658 Pakets, welches @code{python-build-system} benutzt, ersetzt werden:
659
660 @example
661 guix install --with-input=python=python2 python-itsdangerous
662 @end example
663
664 Ein weiteres Beispiel ist, mit einer anderen Version der GNU-C-Bibliothek zu
665 veredeln (@code{glibc} ist eine implizite Eingabe fast aller Pakete und steckt
666 „ganz tief“ im Abhängigkeitsgraphen):
667
668 @example
669 guix build --with-graft=glibc=glibc@@2.31 hello
670 @end example
671
672 Führen Sie für mehr Informationen @command{info \"(guix.de)
673 Paketumwandlungsoptionen\"} aus.")
674 (fr "Les options de transformation de paquets telles que
675 @option{--with-branch} et @option{--with-input} s'appliquent désormais aux
676 dépendances implicites — jusque là seules les dépendances explicites des
677 paquets étaient prises en compte. Cela permet certaines choses telles que
678 remplacer la dépendance sur Python d'un paquet utilisant
679 @code{python-build-system} :
680
681 @example
682 guix install --with-input=python=python2 python-itsdangerous
683 @end example
684
685 Un autre exemple est la possibilité de greffer une version différente de la
686 bibliothèque C GNU (la @code{glibc} est une dépendance implicite de tous les
687 paquets et se trouve « tout en bas » du graphe de dépendance) :
688
689 @example
690 guix build --with-graft=glibc=glibc@@2.31 hello
691 @end example
692
693 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
694 plus de détails.")))
695
696 (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74")
697 (title (en "New @option{--without-tests} transformation option")
698 (es "Nueva opción de transformación @option{--without-tests}")
699 (de "Neue Paketumwandlungsoption @option{--without-tests}")
700 (fr "Nouvelle option de transformation @option{--without-tests}"))
701 (body
702 (en "The new @option{--without-tests} package transformation option
703 instructs Guix to skip the test suite of a given package. In the example
704 below, @code{guile-gcrypt} is built using a variant of @code{automake} itself
705 built without running its (lengthy) test suite:
706
707 @example
708 guix build guile-gcrypt --without-tests=automake
709 @end example
710
711 This is primarily useful as a way to speed up development cycles, or to work
712 around flaky test suites---skipping tests can hide real issues, so use with
713 care. Run @command{info \"(guix) Package Transformation Options\"} for more
714 info.")
715 (es "La nueva opción de transformación de paquetes
716 @option{--without-tests} indica a Guix que omita la batería de pruebas del
717 paquete proporcionado. En el siguiente ejemplo @code{guile-gcrypt} se
718 construye usando una variación de @code{automake}, la cual se ha construido
719 sin ejecutar su (larga) batería de pruebas:
720
721 @example
722 guix build guile-gcrypt --without-tests=automake
723 @end example
724
725 Esto es principalmente útil como una forma de acelerar ciclos de desarrollo o
726 de omitir temporalmente baterías de pruebas problemáticas---omitir las pruebas
727 puede ocultar problemas reales, por lo que debe usarse con precaución.
728 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
729 para obtener más información.")
730 (de "Mit der neuen Paketumwandlungsoption @option{--without-tests}
731 wird Guix angewiesen, den Testkatalog des angegebenen Pakets zu
732 überspringen. Im folgenden Beispiel wird @code{guile-gcrypt} mit einer
733 Variante von @code{automake} erstellt, die wiederum ohne Durchlauf ihres (viel
734 Zeit in Anspruch nehmenden) Testkatalogs erstellt wird:
735
736 @example
737 guix build guile-gcrypt --without-tests=automake
738 @end example
739
740 Der hauptsächliche Nutzen liegt in der Beschleunigung von Entwicklungszyklen
741 oder im Umgehen unzuverlässiger Testkataloge. Allerdings kann das Überspringen
742 dazu führen, dass echte Probleme verborgen bleiben. Setzen Sie es mit Bedacht
743 ein. Führen Sie @command{info \"(guix.de) Paketumwandlungsoptionen\"} aus, um
744 mehr Informationen zu erhalten.")
745 (fr "La nouvelle option de transformation de paquets
746 @option{--without-tests} demande à Guix de sauter la suite de tests d'un
747 paquet. Dans l'exemple ci-dessous, @code{guile-gcrypt} est construit en
748 utilisant une variante de @code{automake} construite sans lancer sa suite de
749 tests :
750
751 @example
752 guix build guile-gcrypt --without-tests=automake
753 @end example
754
755 Cette option est surtout intéressante pour raccourcir le cycle de
756 développement ou pour contourner une suite de tests qui n'est pas
757 fiable — sauter les tests peut cacher des vrais problèmes, à utiliser avec
758 précaution donc. Voir @command{info \"(guix.fr) Options de transformation de
759 paquets\"} pour plus de détails.")))
760
761 (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f")
762 (title (en "New @command{guix git authenticate} command")
763 (es "Nueva orden @command{guix git authenticate}")
764 (de "Neuer Befehl @command{guix git authenticate}")
765 (fr "Nouvelle commande @command{guix git authenticate}"))
766 (body
767 (en "The new @command{guix git authenticate} command authenticates a
768 Git repository by verifying commit signatures and ensuring they all come from
769 authorized parties, exactly like @command{guix pull} now does.
770
771 This command is primarily useful to developers of channels. It allows them to
772 ensure, before pushing, that the channel only contains commits signed with
773 authorized keys. But this command is also useful anytime you use Git and want
774 to allow people to authenticate code fetched from your repository.
775
776 Run @command{info \"(guix) Invoking guix git authenticate\"} for more info,
777 and see @uref{https://guix.gnu.org/blog/2020/securing-updates/} for details on
778 these mechanisms.")
779 (es "La nueva orden @command{guix git authenticate} comprueba la
780 validez de un repositorio git verificando las firmas de las revisiones y
781 comprobando que todas las firmas están autorizadas, exactamente igual que
782 @command{guix pull}.
783
784 Esta orden es principalmente útil para desarrolladoras de canales. Permite
785 asegurar, antes de subir nada al repositorio remoto, que el canal contiene
786 únicamente revisiones firmadas por claves autorizadas. No obstante esta orden
787 es útil siempre que use git y quiera que otras personas puedan verificar el
788 código obtenido de su repositorio.
789
790 Ejecute @command{info \"(guix.es) Invocación de guix git authenticate\"}
791 para obtener más información y vea detalles sobre estos mecanismos en
792 @uref{https://guix.gnu.org/blog/2020/securing-updates/}.")
793 (de "Mit dem neuen Befehl @command{guix git authenticate} können Sie
794 ein Git-Repository authentifizieren. Dazu werden alle Commit-Signaturen
795 verifiziert und geprüft, dass jede von einer autorisierten Quelle kommt, genau
796 wie es @command{guix pull} nun tut.
797
798 Dieser Befehl hilft in erster Linie den Entwicklern von Kanälen. Mit ihm kann
799 vor einem Push sichergestellt werden, dass der Kanal nur Commits enthält, die
800 mit autorisierten Schlüsseln signiert worden sind. Aber der Befehl kann auch
801 helfen, wann immer Sie Git verwenden und ermöglichen wollen, dass Nutzer von
802 Ihrem Repository geladenen Code authentifizieren können.
803
804 Führen Sie @command{info \"(guix) Invoking guix git authenticate\"} aus, um
805 mehr Informationen zu erhalten, und lesen Sie
806 @uref{https://guix.gnu.org/blog/2020/securing-updates/} für die Details dieser
807 Mechanismen.")
808 (fr "La nouvelle commande @command{guix git authenticate} authentifie
809 un dépôt Git en vérifiant les signatures sur les changements (@i{commits}) et
810 en s'assurant qu'elles sont autorisées, exactement comme @command{guix pull}
811 le fait désormais.
812
813 Cette commande est avant tout utile aux personnes développant un canal. Elle
814 leur permet de s'assurer, avant de pousser des changements, que le canal ne
815 contient que des changements signés par des clefs autorisées. Mais cette
816 commande peut aussi s'avérer utile dès que tu veux utiliser Git et permettre
817 aux autres d'authentifier le code récupéré depuis ton dépôt.
818
819 Lance @command{info \"(guix.fr) Invoking guix git authenticate\"} pour plus
820 d'informations. Voir @uref{https://guix.gnu.org/blog/2020/securing-updates/}
821 pour en savoir plus sur ces mécanismes.")))
822
823 (entry (commit "43badf261f4688c8a7a7a9004a4bff8acb205835")
824 (title (en "@command{guix pull} authenticates channels")
825 (es "@command{guix pull} verifica los canales")
826 (de "@command{guix pull} authentifiziert Kanäle")
827 (fr "@command{guix pull} authentifie les canaux"))
828 (body
829 (en "The @command{guix pull} and @command{guix time-machine} commands
830 now authenticate the source code that they pull, unless the new
831 @option{--disable-authentication} option is passed. What this means is that
832 Guix ensures that each commit received is cryptographically signed by an
833 authorized developer. This protects you from attempts to tamper with the Guix
834 repository and from attempts to ship malicious code to users.
835
836 This feature is currently limited to the @code{guix} channel but will soon be
837 available to third-party channel authors.")
838 (es "Las ordenes @command{guix pull} y @command{guix time-machine}
839 ahora verifican el código fuente que obtienen, a menos que se proporcione la
840 opción @option{--disable-authentication}. Lo que esto significa es que Guix se
841 asegura de que cada revisión que recibe está firmada criptográficamente por
842 una desarrolladora autorizada. Esto le protege de intentos de modificación del
843 repositorio de Guix y de entregas de código con malas intenciones sobre las
844 usuarias.
845
846 Esta característica está limitada actualmente al canal @code{guix} pero pronto
847 estará disponible para autoras de canales independientes.")
848 (de "Die Befehle @command{guix pull} und @command{guix time-machine}
849 prüfen nun die Authentizität des heruntergeladenen Quellcodes, außer wenn die
850 neue Befehlszeilenoption @option{--disable-authentication} angegeben
851 wurde. Das bedeutet, Guix stellt sicher, dass jeder empfangene Commit durch
852 einen autorisierten Entwickler kryptografisch signiert wurde. Das schützt Sie
853 vor Versuchen, das Guix-Repository zu manipulieren oder bösartigen Code an die
854 Nutzer auszuliefern.
855
856 Diese Funktionalität ist auf den @code{guix}-Kanal beschränkt, sie wird jedoch
857 bald auch Autoren dritter Kanäle zur Verfügung stehen.")
858 (fr "Les commandes @command{guix pull} et @command{guix time-machine}
859 authentifient dorénavant le code source qu'elles obtiennent, à moins que la
860 nouvelle option @option{--disable-authentication} soit utilisée. Cela
861 signifie que Guix s'assure que chaque soumission (@i{commit}) récupéré dispose
862 d'une signature cryptographique par un·e développeur·euse autorisé·e. Cela te
863 protège de tentatives de modifications du dépôt Guix et de tentatives de
864 livrer du code malintentionné.
865
866 Cette fonctionnalité n'est actuellement disponible que pour le canal
867 @code{guix} mais le sera bientôt pour les canaux tiers.")))
868
869 (entry (commit "c924e541390f9595d819edc33c19d979917c15ec")
870 (title (en "@command{guix repl} adds support for running Guile scripts")
871 (es "@command{guix repl} puede ejecutar guiones de Guile")
872 (de "@command{guix repl} kann Guile-Skripte ausführen")
873 (fr "@command{guix repl} permet d'exécuter des scripts en langage Guile"))
874 (body
875 (en "The @command{guix repl} command can now be used to run
876 Guile scripts. Compared to just launching the @command{guile} command,
877 @command{guix repl} guarantees that all the Guix modules and all its
878 dependencies are available in the search path. Scripts are run like this:
879
880 @example
881 guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
882 @end example
883
884 Run @command{info \"(guix) Invoking guix repl\"} for more information.")
885 (es "La orden @command{guix repl} ahora se puede usar para
886 ejecutar guiones de Guile. En comparación con únicamente la ejecución
887 de la orden @command{guile}, @command{guix repl} garantiza que todos
888 los módulos de Guix y sus dependencias están disponibles en la ruta
889 de búsqueda. Los guiones se ejecutan de este modo:
890
891 @example
892 guix repl -- mi-guion.scm --opcion1 --opcion2=param-op2 param1 param2
893 @end example
894
895 Ejecute @command{info \"(guix.es) Invocación de guix repl\"} para obtener
896 más información.")
897 (de "Der Befehl @command{guix repl} kann jetzt zur Ausführung von
898 Guile-Skripten verwendet werden. Im Vergleich zum Befehl
899 @command{guile} garantiert @command{guix repl}, dass alle Guix-Module und
900 alle seine Abhängigkeiten im Suchpfad verfügbar sind. Skripte werden wie
901 folgt ausgeführt:
902
903 @example
904 guix repl -- my-script,scm --option1 --option2 --option2=option-arg arg1 arg2
905 @end example
906
907 Weitere Informationen erhalten Sie mit
908 @command{info \"(guix.de) Aufruf von guix repl\"}.")
909 (fr "La commande @command{guix repl} peut maintenant être utilisée
910 pour exécuter des scripts en langage Guile. Par rapport au simple lancement
911 de la commande @command{guile}, @command{guix repl} garantit que tous les
912 modules Guix et toutes ses dépendances sont disponibles dans le chemin
913 de recherche. Les scripts sont exécutés comme ceci :
914
915 @example
916 guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
917 @end example
918
919 Exécutez @command{info \"(guix.fr) Invoquer guix repl\"} pour plus d'informations.")))
920
921 (entry (commit "b460ba7992a0b4af2ddb5927dcf062784539ef7b")
922 (title (en "Add support to boot from a Btrfs subvolume")
923 (es "Implementado el arranque desde un subvolumen de Btrfs")
924 (de "Unterstützung für Systemstart von einem
925 Btrfs-Unterlaufwerk hinzugefügt")
926 (fr "Ajout du support pour démarrer depuis un sous-volume Btrfs")
927 (nl "Nieuwe ondersteuning voor het opstarten vanaf een Btrfs-subvolume"))
928 (body
929 (en "The generation of the GRUB configuration file produced from an
930 operating system declaration now takes into account the use of a Btrfs
931 subvolume for the partition holding @file{/gnu/store}. Run the command
932 @command{info \"(guix) Btrfs file system\"} for more information and
933 examples.")
934 (es "El fichero de configuración de GRUB producido por la
935 declaración de sistema operativo ahora tiene en cuenta el uso de
936 subvolúmenes de Btrfs en la partición que contiene @file{/gnu/store}.
937 Ejecute la orden @command{info \"(guix.es) Sistema de ficheros Btrfs\"}
938 para obtener más información y ejemplos.")
939 (de "Für die Erzeugung einer GRUB-Konfigurationsdatei aus einer
940 Betriebssystemdeklaration kann jetzt ein Btrfs-Unterlaufwerk („Subvolume“) für
941 die Partition mit @file{/gnu/store} angegeben werden. Führen Sie
942 @command{info \"(guix) Btrfs file system\"} aus, wenn Sie mehr Informationen
943 und Beispiele sehen möchten.")
944 (fr "La génération du fichier de configuration de GRUB produite à
945 partir de la déclaration d'un @code{operating-system} tient maintenant compte
946 de l'utilisation d'un sous-volume Btrfs pour la partition contenant
947 @file{/gnu/store}. Exécutez la commande @command{info\"(guix) Btrfs file
948 system\"} pour des exemples et plus d'information.")
949 (nl "Het opmaken van het GRUB-configuratiebestand op basis van
950 een @code{operating-system}-declaratie houdt nu rekening met het gebruik van
951 een Btrfs-subvolume voor de partitie die @file{/gnu/store} bevat. Voer
952 @command{info \"(guix) Btrfs file system\"} uit voor meer informatie en
953 voorbeelden.")))
954
955 (entry (commit "6456232164890dbf5aa20394ee24637feb4b7b9e")
956 (title (en "@command{guix pack -RR} introduces a new execution
957 engine")
958 (es "@command{guix pack -RR} introduce un nuevo motor
959 de ejecución")
960 (de "@command{guix pack -RR} führt neuen Ausführungstreiber
961 ein"))
962 (body
963 (en "The @command{guix pack -RR} command allows you to create a
964 tarball containing @dfn{relocatable binaries}. Until now, those would rely
965 either on Linux ``unprivileged user namespaces'' or on PRoot, when
966 unprivileged user namespaces are not supported. However, PRoot introduces
967 significant overhead for some workloads.
968
969 To address that, @command{guix pack -RR} introduces a third option based on an
970 extension to the GNU run-time linker (ld.so) and on Fakechroot, which incurs
971 very little overhead. You can select the fastest option when executing a
972 relocatable binary like this:
973
974 @example
975 GUIX_EXECUTION_ENGINE=performance
976 export GUIX_EXECUTION_ENGINE
977 @end example
978
979 Run @command{info \"(guix) Invoking guix pack\"} for more information.")
980 (es "La orden @command{guix pack -RR} le permite crear un
981 archivador tar que contiene @dfn{binarios reposicionables}. Hasta ahora
982 dichos binarios dependían o bien de los ``espacios de nombres de usuarias
983 sin privilegios'' de Linux o en PRoot, cuando estos no estaban
984 implementados. No obstante, PRoot introduce una sobrecarga significativa
985 en algunos escenarios de trabajo.
986
987 Para estos casos @command{guix pack -RR} introduce una tercera opción
988 basada en una extensión al enlazador de tiempo de ejecución de GNU (ld.so)
989 y en Fakechroot, lo que conlleva muy poca sobrecarga. Puede seleccionar
990 la opción más rápida cuando ejecute un binario reposicionable de esta
991 manera:
992
993 @example
994 GUIX_EXECUTION_ENGINE=performance
995 export GUIX_EXECUTION_ENGINE
996 @end example
997
998 Ejecute @command{info \"(guix.es) Invocación de guix pack\"} para
999 obtener más información.")
1000 (de "Mit dem Befehl @command{guix pack -RR} können Sie einen Tarball
1001 mit @dfn{verschieblichen Binärdateien} erzeugen (englisch „Relocatable
1002 Binaries“). Bisher wurden diese entweder in „unprivilegierten
1003 Benutzernamensräumen“ ohne Berechtigungen ausgeführt, oder in PRoot, wenn
1004 keine unprivilegierten Benutzernamensräume unterstützt wurden. Allerdings
1005 fällt bei der Ausführung mit PRoot bei manchen Anwendungen deutlich mehr
1006 Rechenaufwand an.
1007
1008 Um dem entgegenzuwirken, stellt @command{guix pack -RR} nun eine dritte Option
1009 zur Verfügung, die sich eine Erweiterung des GNU-Laufzeit-Binders („Run-Time
1010 Linker“, ld.so) und Fakechroot zu Nutze macht. Dadurch entsteht fast kein
1011 Mehraufwand. Sie können sich die schnellste Option aussuchen, wenn Sie eine
1012 verschiebliche Binärdatei ausführen, zum Beispiel so:
1013
1014 @example
1015 GUIX_EXECUTION_ENGINE=performance
1016 export GUIX_EXECUTION_ENGINE
1017 @end example
1018
1019 Führen Sie @command{info \"(guix.de) Aufruf von guix pack\"} aus, wenn Sie
1020 mehr wissen wollen.")))
1021
1022 (entry (commit "88a96c568c47c97d05d883ada5afbc4e1200b10f")
1023 (title (en "New @option{--path} option for @command{guix graph}")
1024 (es "Nueva opción @option{--path} para @command{guix graph}")
1025 (de "Neue Option @option{--path} für @command{guix graph}"))
1026 (body
1027 (en "The @command{guix graph} command has a new @option{--path}
1028 option that instructs it to display the shortest path between two packages,
1029 derivations, or store items. For example, the command below displays the
1030 shortest path from the @code{libreoffice} package to @code{libunistring}:
1031
1032 @example
1033 guix graph --path libreoffice libunistring
1034 @end example
1035
1036 Run @code{info \"(guix) Invoking guix graph\"} for more information.")
1037 (es "La orden @command{guix graph} tiene una nueva opción
1038 @option{--path} que le indica que debe mostrar la ruta más corta entre dos
1039 paquetes, derivaciones o elementos del almacén. Por ejemplo, la siguiente
1040 orden muestra la ruta más corta desde el paquete @code{libreoffice} hasta
1041 @code{libunistring}:
1042
1043 @example
1044 guix graph --path libreoffice libunistring
1045 @end example
1046
1047 Ejecute @code{info \"(guix.es) Invocación de guix graph\"} para obtener más
1048 información.")
1049 (de "Der Befehl @command{guix graph} verfügt über eine neue
1050 Befehlszeilenoption @option{--path}, die ihn den kürzesten Pfad zwischen zwei
1051 Paketen, Ableitungen oder Store-Objekten ausgeben lässt. Zum Beispiel zeigt
1052 folgender Befehl den kürzesten Pfad vom Paket @code{libreoffice} zu
1053 @code{libunistring}:
1054
1055 @example
1056 guix graph --path libreoffice libunistring
1057 @end example
1058
1059 Führen Sie @code{info \"(guix.de) Aufruf von guix graph\"} aus, um mehr zu
1060 erfahren.")))
1061
1062 (entry (commit "a33eac038a811603c8b9ed106ae405a5f80a0e9d")
1063 (title (en "GNU C Library upgraded")
1064 (de "GNU-C-Bibliothek aktualisiert")
1065 (es "Actualización de la biblioteca C de GNU")
1066 (fr "Mise à jour de la bibliothèque C de GNU")
1067 (nl "GNU C-bibliotheek bijgewerkt"))
1068 (body
1069 (en "The GNU C Library (glibc) has been upgraded to version 2.31. To
1070 run previously-installed programs linked against glibc 2.29, you need to
1071 install locale data for version 2.29 in addition to locale data for 2.31:
1072
1073 @example
1074 guix install glibc-locales glibc-locales-2.29
1075 @end example
1076
1077 On Guix System, you can adjust the @code{locale-libcs} field of your
1078 @code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
1079 info.")
1080 (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.31
1081 aktualisiert. Um zuvor installierte Programme, die an glibc 2.29 gebunden
1082 worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
1083 2.29 zusätzlich zu den Locale-Daten für 2.31 installieren:
1084
1085 @example
1086 guix install glibc-locales glibc-locales-2.29
1087 @end example
1088
1089 Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
1090 @code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
1091 Locales\"} aus, um weitere Informationen dazu zu erhalten.")
1092 (es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
1093 2.31. Para ejecutar programas instalados previamente que se encuentren
1094 enlazados con glibc 2.29, es necesario que instale los datos de localización
1095 de la versión 2.29 junto a los datos de localización de la versión 2.31:
1096
1097 @example
1098 guix install glibc-locales glibc-locales-2.29
1099 @end example
1100
1101 En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
1102 declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
1103 Localizaciones\"} para obtener más información.")
1104 (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
1105 2.31. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.29,
1106 tu dois installer les données pour la version 2.29 en plus des données de
1107 régionalisation pour la version 2.31:
1108
1109 @example
1110 guix install glibc-locales glibc-locales-2.29
1111 @end example
1112
1113 Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
1114 @code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
1115 plus de détails.")
1116 (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.31.
1117 Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.29
1118 gebonden zijn, moet u de regionale informatie van versie 2.29 naast die van
1119 versie 2.31 installeren:
1120
1121 @example
1122 guix install glibc-locales glibc-locales-2.29
1123 @end example
1124
1125 Op Guix System kunt u het @code{locale-libcs}-veld van uw
1126 @code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
1127 uit voor verdere uitleg.")))
1128
1129 (entry (commit "e1e6491226347d9fb93ff484d78cef98848a510a")
1130 (title (en "Guix Cookbook now available as Info")
1131 (de "Guix-Kochbuch jetzt als Info-Dokument verfügbar"))
1132 ;; TRANSLATORS: Adjust the URL and the 'info' command to refer to the
1133 ;; translated manual if it's available.
1134 (body (en "The new Guix Cookbook is now fetched by @command{guix pull}
1135 and thus readily available in the Info format. It aims to provide tutorials
1136 and detailed examples covering a variety of use cases. You can access it by
1137 typing:
1138
1139 @example
1140 info guix-cookbook
1141 @end example
1142
1143 The Cookbook is currently available in English and German. You can also find
1144 it @uref{https://guix.gnu.org/cookbook/en/, on-line}.
1145
1146 Your contributions are welcome: @uref{https://guix.gnu.org/contact/, get in
1147 touch with the developers} to share your recipes!")
1148 (de "Das neue Guix-Kochbuch wird nun von @command{guix pull}
1149 geladen und steht dann im Info-Format zur Verfügung. Darin sollen Anleitungen
1150 und detaillierte Beispiele gezeigt werden, die eine breite Spanne an
1151 Anwendungsfällen abdecken. Um darauf zuzugreifen, geben Sie dies ein:
1152
1153 @example
1154 info guix-cookbook.de
1155 @end example
1156
1157 Das Kochbuch steht derzeit auf Deutsch und Englisch zur Verfügung. Sie können
1158 auch @uref{https://guix.gnu.org/cookbook/de/, online} darauf zugreifen.
1159
1160 Ihre Beiträge werden gerne gesehen. Bitte
1161 @uref{https://guix.gnu.org/contact/, kontaktieren Sie die Entwickler}, um Ihre
1162 Rezepte mit uns zu teilen!")))
1163
1164 (entry (commit "2ca7af43fe17d9acf082dce85d137a27a8ac4887")
1165 (title (en "Further reduced binary seed bootstrap")
1166 (de "Bootstrapping jetzt mit noch kleinerem Seed"))
1167 (body
1168 (en "The package graph on x86_64 and i686 is now rooted in a further
1169 @dfn{reduced set of binary seeds}. The initial set of binaries from which
1170 packages are built now weighs in at approximately 60 MiB, a quarter of what it
1171 used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
1172 the talk at @uref{https://fosdem.org/2020/schedule/event/gnumes/}.")
1173 (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine noch
1174 @dfn{kleinere Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche
1175 Menge an Binärdateien, aus denen heraus Pakete erstellt werden, machen nun
1176 ungefähr 60 MiB aus, ein Viertel der früheren Größe. Führen Sie @code{info
1177 \"(guix.de) Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich
1178 den Vortrag auf @uref{https://fosdem.org/2020/schedule/event/gnumes/} an.")))
1179
1180 (entry (commit "0468455e7d279c89ea3ad1b51935efb2b785ec47")
1181 (title (en "Rottlog service added to @code{%base-services}")
1182 (de "Rottlog-Dienst ist nun Teil der @code{%base-services}"))
1183 (body (en "An instance of @code{rottlog-service-type}, the system
1184 service responsible for log rotation, has been added to @code{%base-services}.
1185 If your operating system configuration for Guix System is explicitly adding
1186 @code{rottlog-service-type} to the services, you should now remove it. See
1187 the ``Log Rotation'' section of the manual for more information.")
1188 (de "Eine Instanz des @code{rottlog-service-type} für
1189 Log-Rotation wurde zu den @code{%base-services} hinzugefügt. Wenn der
1190 Systemdienst bereits in Ihrer Konfiguration für Guix System ausdrücklich
1191 genannt wurde, sollten Sie ihn jetzt daraus entfernen. Siehe den Abschnitt
1192 „Log-Rotation“ im Handbuch für weitere Informationen.")))
1193
1194 (entry (commit "b6bee63bed4f013064c0d902e7c8b83ed7514ade")
1195 (title (en "@code{guile} package now refers to version 3.0")
1196 (de "Das @code{guile}-Paket bezeichnet jetzt Version 3.0"))
1197 (body (en "The @code{guile} package has been upgraded to version 3.0
1198 (instead of 2.2). The @code{guile3.0-} packages have been renamed to their
1199 original name, and @code{guile2.2-} variants of these packages have been
1200 defined. Additionally, derivations are now all built with Guile 3.0, and
1201 system services also run on 3.0.")
1202 (de "Das @code{guile}-Paket wurde auf Version 3.0
1203 (statt 2.2) aktualisiert. Die Pakete, deren Namen mit @code{guile3.0-}
1204 beginnen, wurden umbenannt, so dass sie nun den unveränderten Namen tragen,
1205 während ihre Varianten mit @code{guile2.2-} hinzugefügt wurden. Des Weiteren
1206 werden jetzt alle Ableitungen mit Guile 3.0 erstellt und die Systemdienste
1207 laufen auch auf 3.0.")))
1208
1209 (entry (commit "e3e1a7ba08af2d58c47264c543617e499c239444")
1210 (title (en "@command{guix pull} now supports SSH authenticated
1211 repositories")
1212 (de "@command{guix pull} unterstützt nun SSH-authentifizierte
1213 Repositorys")
1214 (fr "@command{guix pull} prend maintenant en charge
1215 l'authentification en SSH pour les dépôts.")
1216 (nl "@command{guix pull} ondersteunt nu SSH-geauthenticeerde
1217 repository's."))
1218 (body (en "The @command{guix pull} command now supports SSH
1219 authenticated repositories as argument of @option{--url} and in custom
1220 channels definitions. The authentication requires that an @command{ssh-agent}
1221 is running.")
1222 (de "Der Befehl @command{guix pull} unterstützt nun über SSH
1223 authentifizierte Repositorys als Argument von @option{--url} und in
1224 selbstgeschriebenen Kanaldefinitionen. Zur Authentisierung muss ein
1225 @command{ssh-agent} laufen.")
1226 (fr "La commande @command{guix pull} prend maintenant en
1227 charge l'authentification SSH pour les dépôts dans l'argument @option{--url}
1228 et dans le définitions de canaux personnalisés. L'authentification
1229 nécessite qu'un @command{ssh-agent} soit lancé.")
1230 (nl "Het @command{guix pull}-commando ondersteunt nu
1231 SSH-geauthenticeerde opslag als argument na @option{--url} en bij het
1232 schrijven van eigen kanaaldefinities. Hiervoor moet een @command{ssh-agent}
1233 gestart zijn.")))
1234
1235 (entry (commit "8234fe653e61d0090138cbd4c48d877568355439")
1236 (title (en "Guix now runs on Guile 3.0")
1237 (de "Guix läuft jetzt auf Guile 3.0")
1238 (fr "Guix tourne maintenant sous Guile 3.0")
1239 (nl "Guix draait nu op Guile 3.0"))
1240 (body (en "The Guix revision you just pulled runs on version 3.0 of
1241 GNU@tie{}Guile (previously it would run on version 2.2). Guile 3.0 improves
1242 performance through the use of just-in-time (JIT) native code generation. The
1243 switch should be entirely transparent to you. See
1244 @uref{https://gnu.org/software/guile} for more information on Guile 3.0.")
1245 (de "Die Guix-Version, die Sie gerade gepullt haben, läuft auf
1246 Version 3.0 von GNU@tie{}Guile (und nicht mehr auf Version 2.2). Guile 3.0
1247 verbessert die Rechenleistung, indem native Maschinenbefehle „just in time“
1248 erzeugt werden (JIT-Kompilierung). Der Wechsel sollte für Sie völlig
1249 transparent sein und Guix verhält sich gleich. Siehe
1250 @uref{https://gnu.org/software/guile} für weitere Informationen zu Guile
1251 3.0.")
1252 (fr "La révision de Guix que tu viens de récupérer tourne sous
1253 la version 3.0 de GNU@tie{}Guile (Guix tournait avant sous la version 2.2).
1254 Guile 3.0 améliore la performance en générant du code natif à la volée (JIT).
1255 Le changement devrait être totalement transparent pour toi. Voir
1256 @uref{https://gnu.org/software/guile} pour plus d'information sur Guile 3.0.")
1257 (nl "De Guix die u net heeft gepulld gebruikt versie 3.0 van
1258 GNU@tie{}Guile (voorheen was dat versie 2.2). Guile@tie{}3.0 draait dezelfde
1259 programma's doorgaans sneller door ze ‘just-in-time’ (JIT) te vertalen naar
1260 machine-instructies. De omschakeling zou voor u volledig naadloos moeten
1261 zijn. Lees @uref{https://gnu.org/software/guile} voor meer informatie over
1262 Guile@tie{}3.0.")))
1263
1264 (entry (commit "828a39da68a9169ef1d9f9ff02a1c66b1bcbe884")
1265 (title (en "New @option{--diff} option for @command{guix challenge}")
1266 (de "Neue @option{--diff}-Option für @command{guix challenge}")
1267 (fr "Nouvelle option @option{--diff} sur @command{guix challenge}"))
1268 (body (en "The @command{guix challenge} command, which compares
1269 binaries provided by different substitute servers as well as those built
1270 locally, has a new @option{--diff} option. With @option{--diff=simple} (the
1271 default), @command{guix challenge} automatically downloads binaries and
1272 reports the list of differing files; @option{--diff=diffoscope} instructs it
1273 to pass them to @command{diffoscope}, which simplifies the comparison process.
1274 Run @command{info \"(guix) Invoking guix challenge\"}, for more info.")
1275 (fr "La commande @command{guix challenge} qui compare les binaires
1276 fournis par différents serveurs de substituts aux contsructions locales a une
1277 nouvelle option @option{--diff}. Avec @option{--diff=simple} (par défaut),
1278 @command{guix challenge} télécharge automatiquement les binaires et rapporte
1279 la liste des fichiers différents@tie{}; @option{--diff=diffoscope} lui dit
1280 de les passer à @command{diffoscope} qui simplifie le processus de comparaison.
1281 Lance @command{info \"(guix.fr) Invoquer guix challenge\"} pour plus d'info.")
1282 (de "Der Befehl @command{guix challenge}, mit dem Binärdateien
1283 von unterschiedlichen Substitut-Servern oder lokale Erstellungen miteinander
1284 verglichen werden können, hat eine neue Befehlszeilenoption @option{--diff}
1285 bekommen. Bei @option{--diff=simple} (der Voreinstellung) lädt @command{guix
1286 challenge} automatisch Binärdateien herunter und listet sich unterscheidende
1287 Dateien auf; wird @option{--diff=diffoscope} angegeben, werden sie an
1288 @command{diffoscope} geschickt, was deren Vergleich erleichtert. Führen Sie
1289 @command{info \"(guix.de) Aufruf von guix challenge\"} aus, um nähere
1290 Informationen zu erhalten.")))
1291
1292 (entry (commit "f675f8dec73d02e319e607559ed2316c299ae8c7")
1293 (title (en "New command @command{guix time-machine}")
1294 (de "Neuer Befehl @command{guix time-machine}")
1295 (fr "Nouvelle commande @command{guix time-machine}"))
1296 (body (en "The new command @command{guix time-machine} facilitates
1297 access to older or newer revisions of Guix than the one that is installed.
1298 It can be used to install different versions of packages, and to
1299 re-create computational environments exactly as used in the past.")
1300 (de "Der neue Befehl @command{guix time-machine} vereinfacht
1301 den Zugriff auf ältere oder neuere Guix-Versionen als die installierte.
1302 Er kann zur Installation bestimmter Paketversionen verwendet werden, aber
1303 auch zur Wiederherstellung von Entwicklungsumgebungen, wie sie in der
1304 Vergangenheit verwendet wurden.")
1305 (fr "La nouvelle commande @command{guix time-machine}
1306 facilite l'accès à des versions antérieures ou postérieures par rapport
1307 à la version installée. Elle sert à installer des versions spécifiques
1308 de paquets, ainsi à la restauration d'environnements dans un état
1309 historique.")))
1310 (entry (commit "3e962e59d849e4300e447d94487684102d9d412e")
1311 (title (en "@command{guix graph} now supports package
1312 transformations")
1313 (de "@command{guix graph} unterstützt nun Paketumwandlungen"))
1314 (body
1315 (en "The @command{guix graph} command now supports the common package
1316 transformation options (see @command{info \"(guix) Package Transformation
1317 Options\"}). This is useful in particular to see the effect of the
1318 @option{--with-input} dependency graph rewriting option.")
1319 (de "Der Befehl @command{guix graph} unterstützt nun die mit anderen
1320 Befehlen gemeinsamen Umwandlungsoptionen (siehe @command{info \"(guix.de)
1321 Paketumwandlungsoptionen\"}). Sie helfen insbesondere dabei, die Wirkung der
1322 Befehlszeilenoption @option{--with-input} zum Umschreiben des
1323 Abhängigkeitsgraphen zu sehen.")
1324 (es "La orden @command{guix graph} ahora implementa las opciones
1325 comunes de transformación de paquetes (véase @command{info \"(guix.es)
1326 Opciones de transformación de paquetes\"}). Esto es particularmente
1327 útil para comprobar el efecto de la opción de reescritura del grafo
1328 de dependencias @option{--with-input}.")))
1329
1330 (entry (commit "49af34cfac89d384c46269bfd9388b2c73b1220a")
1331 (title (en "@command{guix pull} now honors
1332 @file{/etc/guix/channels.scm}")
1333 (de "@command{guix pull} berücksichtigt nun
1334 @file{/etc/guix/channels.scm}")
1335 (es "Ahora @command{guix pull} tiene en cuenta
1336 @file{/etc/guix/channels.scm}")
1337 (fr "@command{guix pull} lit maintenant
1338 @file{/etc/guix/channels.scm}"))
1339 (body
1340 (en "The @command{guix pull} command will now read the
1341 @file{/etc/guix/channels.scm} file if it exists and if the per-user
1342 @file{~/.config/guix/channels.scm} is not present. This allows administrators
1343 of multi-user systems to define site-wide defaults.")
1344 (de "Der Befehl @command{guix pull} liest nun die Datei
1345 @file{/etc/guix/channels.scm}, wenn sie existiert und es für den jeweiligen
1346 Benutzer keine @file{~/.config/guix/channels.scm} gibt. Dadurch können
1347 Administratoren von Mehrbenutzersystemen systemweite Voreinstellungen
1348 vornehmen.")
1349 (es "Ahora la orden @command{guix pull} lee el fichero
1350 @file{/etc/guix/channels.scm} si existe y el fichero personalizable
1351 @file{~/.config/guix/channels.scm} no está presente. Esto permite a quienes
1352 administran sistemas con múltiples usuarias definir valores predeterminados
1353 en el sistema.")
1354 (fr "La commande @command{guix pull} lira maintenant le fichier
1355 @file{/etc/guix/channels.scm} s'il existe et si le fichier
1356 @file{~/.config/guix/channels.scm} par utilisateur·rice n'est pas présent.
1357 Cela permet aux personnes administrant des systèmes multi-utilisateurs de
1358 définir les canaux par défaut.")))
1359
1360 (entry (commit "81c580c8664bfeeb767e2c47ea343004e88223c7")
1361 (title (en "Insecure @file{/var/guix/profiles/per-user} permissions (CVE-2019-18192)")
1362 (de "Sicherheitslücke in @file{/var/guix/profiles/per-user}-Berechtigungen (CVE-2019-18192)")
1363 (es "Vulnerabilidad en los permisos de @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
1364 (fr "Permissions laxistes pour @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
1365 (nl "Onveilige @file{/var/guix/profiles/per-user}-rechten (CVE-2019-18192)"))
1366 (body
1367 (en "The default user profile, @file{~/.guix-profile}, points to
1368 @file{/var/guix/profiles/per-user/$USER}. Until now,
1369 @file{/var/guix/profiles/per-user} was world-writable, allowing the
1370 @command{guix} command to create the @code{$USER} sub-directory.
1371
1372 On a multi-user system, this allowed a malicious user to create and populate
1373 that @code{$USER} sub-directory for another user that had not yet logged in.
1374 Since @code{/var/@dots{}/$USER} is in @code{$PATH}, the target user could end
1375 up running attacker-provided code. See
1376 @uref{https://issues.guix.gnu.org/issue/37744} for more information.
1377
1378 This is now fixed by letting @command{guix-daemon} create these directories on
1379 behalf of users and removing the world-writable permissions on
1380 @code{per-user}. On multi-user systems, we recommend updating the daemon now.
1381 To do that, run @code{sudo guix pull} if you're on a foreign distro, or run
1382 @code{guix pull && sudo guix system reconfigure @dots{}} on Guix System. In
1383 both cases, make sure to restart the service afterwards, with @code{herd} or
1384 @code{systemctl}.")
1385 (de "Das voreingestellte Benutzerprofil, @file{~/.guix-profile},
1386 verweist auf @file{/var/guix/profiles/per-user/$USER}. Bisher hatte jeder
1387 Benutzer Schreibzugriff auf @file{/var/guix/profiles/per-user}, wodurch der
1388 @command{guix}-Befehl berechtigt war, das Unterverzeichnis @code{$USER}
1389 anzulegen.
1390
1391 Wenn mehrere Benutzer dasselbe System benutzen, kann ein böswilliger Benutzer
1392 so das Unterverzeichnis @code{$USER} und Dateien darin für einen anderen
1393 Benutzer anlegen, wenn sich dieser noch nie angemeldet hat. Weil
1394 @code{/var/…/$USER} auch in @code{$PATH} aufgeführt ist, kann der betroffene
1395 Nutzer dazu gebracht werden, vom Angreifer vorgegebenen Code auszuführen.
1396 Siehe @uref{https://issues.guix.gnu.org/issue/37744} für weitere
1397 Informationen.
1398
1399 Der Fehler wurde nun behoben, indem @command{guix-daemon} diese Verzeichnisse
1400 jetzt selbst anlegt statt das dem jeweiligen Benutzerkonto zu überlassen. Der
1401 Schreibzugriff auf @code{per-user} wird den Benutzern entzogen. Für Systeme
1402 mit mehreren Benutzern empfehlen wir, den Daemon jetzt zu aktualisieren. Auf
1403 einer Fremddistribution führen Sie dazu @code{sudo guix pull} aus; auf einem
1404 Guix-System führen Sie @code{guix pull && sudo guix system reconfigure …}
1405 aus. Achten Sie in beiden Fällen darauf, den Dienst mit @code{herd} oder
1406 @code{systemctl} neuzustarten.")
1407 (es "El perfil predeterminado de la usuaria, @file{~/.guix-profile},
1408 apunta a @file{/var/guix/profiles/per-user/$USUARIA}. Hasta ahora cualquiera
1409 podía escribir en @file{/var/guix/profiles/per-user}, lo cual permitía
1410 a la orden @command{guix} crear el subdirectorio @code{$USUARIA}.
1411
1412 En un sistema con múltiples usuarias, esto permitiría a cualquiera con
1413 intención de causar daño crear ese subdirectorio @code{$USUARIA} con el nombre
1414 de alguien que no hubiese ingresado en el sistema. Puesto que ese
1415 subdirectorio @code{/var/@dots{}/$USUARIA} se encuentra en la ruta de binarios
1416 predeterminada @code{$PATH}, el objetivo del ataque podría ejecutar código
1417 proporcionado por la parte atacante. Véase
1418 @uref{https://issues.guix.gnu.org/issue/37744} para obtener más información.
1419
1420 Se ha solucionando delegando en @command{guix-daemon} la creación de esos
1421 directorios y eliminando los permisos de escritura para todo el mundo en
1422 @code{per-user}. En sistemas con múltiples usuarias recomendamos actualizar
1423 cuanto antes el daemon. Para hacerlo ejecute @code{sudo guix pull} si se
1424 encuentra en una distribución distinta, o ejecute @code{guix pull && sudo guix system reconfigure @dots{}} en el sistema Guix. En ambos casos, asegurese de
1425 reiniciar el servicio tras ello, con @code{herd} o @code{systemctl}.")
1426 (fr "Le profil utilisateur par défaut, @file{~/.guix-profile},
1427 pointe vers @file{/var/guix/profiles/per-user/$USER}. Jusqu'à
1428 maintenant, @file{/var/guix/profiles/per-user} était disponible en
1429 écriture pour tout le monde, ce qui permettait à la commande
1430 @command{guix} de créér le sous-répertoire @code{$USER}.
1431
1432 Sur un système multi-utilisateur, cela permet à un utilisateur
1433 malveillant de créer et de remplir le sous-répertoire @code{USER} pour
1434 n'importe quel utilisateur qui ne s'est jamais connecté. Comme
1435 @code{/var/@dots{}/$USER} fait partie de @code{$PATH}, l'utilisateur
1436 ciblé pouvait exécuter des programmes fournis par l'attaquant. Voir
1437 @uref{https://issues.guix.gnu.org/issue/37744} pour plus de détails.
1438
1439 Cela est maintenant corrigé en laissant à @command{guix-daemon} le soin
1440 de créer ces répertoire pour le compte des utilisateurs et en
1441 supprimant les permissions en écriture pour tout le monde sur
1442 @code{per-user}. Nous te recommandons de mettre à jour le démon
1443 immédiatement. Pour cela, lance @code{sudo guix pull} si tu es sur
1444 une distro externe ou @code{guix pull && sudo guix system reconfigure
1445 @dots{}} sur le système Guix. Dans tous les cas, assure-toi ensuite de
1446 redémarrer le service avec @code{herd} ou @code{systemctl}.")
1447 (nl "Het standaard gebruikersprofiel, @file{~/.guix-profile}, verwijst
1448 naar @file{/var/guix/profiles/per-user/$USER}. Tot op heden kon om het even wie
1449 in @file{/var/guix/profiles/per-user} schrijven, wat het @command{guix}-commando
1450 toestond de @code{$USER} submap aan te maken.
1451
1452 Op systemen met meerdere gebruikers kon hierdoor een kwaadaardige gebruiker een
1453 @code{$USER} submap met inhoud aanmaken voor een andere gebruiker die nog niet
1454 was ingelogd. Omdat @code{/var/@dots{}/$USER} zich in @code{$PATH} bevindt,
1455 kon het doelwit zo code uitvoeren die door de aanvaller zelf werd aangeleverd.
1456 Zie @uref{https://issues.guix.gnu.org/issue/37744} voor meer informatie.
1457
1458 Dit probleem is nu verholpen: schrijven door iedereen in @code{per-user} is niet
1459 meer toegestaan en @command{guix-daemon} maakt zelf submappen aan namens de
1460 gebruiker. Op systemen met meerdere gebruikers raden we aan om
1461 @code{guix-daemon} nu bij te werken. Op Guix System kan dit met
1462 @code{guix pull && sudo guix system reconfigure @dots{}}, op andere distributies
1463 met @code{sudo guix pull}. Herstart vervolgens in beide gevallen
1464 @code{guix-daemon} met @code{herd} of @code{systemctl}.")))
1465
1466 (entry (commit "5f3f70391809f8791c55c05bd1646bc58508fa2c")
1467 (title (en "GNU C Library upgraded")
1468 (de "GNU-C-Bibliothek aktualisiert")
1469 (es "Actualización de la biblioteca C de GNU")
1470 (fr "Mise à jour de la bibliothèque C de GNU")
1471 (nl "GNU C-bibliotheek bijgewerkt"))
1472 (body
1473 (en "The GNU C Library (glibc) has been upgraded to version 2.29. To
1474 run previously-installed programs linked against glibc 2.28, you need to
1475 install locale data for version 2.28 in addition to locale data for 2.29:
1476
1477 @example
1478 guix install glibc-locales glibc-locales-2.28
1479 @end example
1480
1481 On Guix System, you can adjust the @code{locale-libcs} field of your
1482 @code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
1483 info.")
1484 (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.29
1485 aktualisiert. Um zuvor installierte Programme, die an glibc 2.28 gebunden
1486 worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
1487 2.28 zusätzlich zu den Locale-Daten für 2.29 installieren:
1488
1489 @example
1490 guix install glibc-locales glibc-locales-2.28
1491 @end example
1492
1493 Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
1494 @code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
1495 Locales\"} aus, um weitere Informationen dazu zu erhalten.")
1496 (es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
1497 2.29. Para ejecutar programas instalados previamente que se encuentren
1498 enlazados con glibc 2.28, es necesario que instale los datos de localización
1499 de la versión 2.28 junto a los datos de localización de la versión 2.29:
1500
1501 @example
1502 guix install glibc-locales glibc-locales-2.28
1503 @end example
1504
1505 En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
1506 declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
1507 Localizaciones\"} para obtener más información.")
1508 (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
1509 2.29. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.28,
1510 tu dois installer les données pour la version 2.28 en plus des données de
1511 régionalisation pour la version 2.29 :
1512
1513 @example
1514 guix install glibc-locales glibc-locales-2.28
1515 @end example
1516
1517 Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
1518 @code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
1519 plus de détails.")
1520 (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.29.
1521 Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.28
1522 gebonden zijn, moet u de regionale informatie van versie 2.28 naast die van
1523 versie 2.29 installeren:
1524
1525 @example
1526 guix install glibc-locales glibc-locales-2.28
1527 @end example
1528
1529 Op Guix System kunt u het @code{locale-libcs}-veld van uw
1530 @code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
1531 uit voor verdere uitleg.")))
1532 (entry (commit "cdd3bcf03883d129581a79e6d6611b2afd3b277b")
1533 (title (en "New reduced binary seed bootstrap")
1534 (de "Neues Bootstrapping mit kleinerem Seed")
1535 (es "Nueva reducción de la semilla binaria para el lanzamiento inicial")
1536 (fr "Nouvel ensemble de binaires de bootstrap réduit")
1537 (nl "Nieuwe bootstrap met verkleinde binaire kiem"))
1538 (body
1539 (en "The package graph on x86_64 and i686 is now rooted in a
1540 @dfn{reduced set of binary seeds}. The initial set of binaries from which
1541 packages are built now weighs in at approximately 130 MiB, half of what it
1542 used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
1543 the talk at @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
1544 (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine @dfn{kleinere
1545 Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche Menge an
1546 Binärdateien, aus denen heraus Pakete erstellt werden, machen nun ungefähr
1547 130 MiB aus, halb so viel wie früher. Führen Sie @code{info \"(guix.de)
1548 Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich den Vortrag
1549 auf @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/} an.")
1550 (fr "Le graphe des paquets sur x86_64 et i686 prend maintenant sa
1551 source dans un @dfn{ensemble réduit de binaires}. L'ensemble initial des
1552 binaires à partir desquels les paquets sont construits pèse maintenant environ
1553 130 Mio, soit la moitié par rapport à l'ensemble précédent. Tu peux lancer
1554 @code{info \"(guix) Bootstrapping\"} pour plus de détails, ou regarder la
1555 présentation sur @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
1556 (es "El grafo de paquetes en x86_64 y i686 ahora tiene su raíz en un
1557 @dfn{conjunto reducido de semillas binarias}. El conjunto inicial de binarios
1558 desde el que se construyen los paquetes ahora tiene un tamaño aproximado de
1559 130_MiB , la mitad de su tamaño anterior. Ejecute @code{info \"(guix.es)
1560 Lanzamiento inicial\"} para aprender más, o puede ver la charla en inglés
1561 en@uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
1562 (nl "Het netwerk van pakketten voor x86_64 en i686 is nu geworteld in
1563 een @dfn{verkleinde verzameling van binaire kiemen}. Die beginverzameling
1564 van binaire bestanden waaruit pakketten gebouwd worden is nu zo'n 130 MiB
1565 groot; nog maar half zo groot als voorheen. Voer @code{info \"(guix)
1566 Bootstrapping\"} uit voor meer details, of bekijk de presentatie op
1567 @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")))
1568
1569 (entry (commit "dcc90d15581189dbc30e201db2b807273d6484f0")
1570 (title (en "New channel news mechanism")
1571 (de "Neuer Mechanismus, um Neuigkeiten über Kanäle anzuzeigen.")
1572 (es "Nuevo mecanismo de noticias de los canales")
1573 (fr "Nouveau mécanisme d'information sur les canaux")
1574 (nl "Nieuw mechanisme voor nieuwsberichten per kanaal"))
1575 (body
1576 (en "You are reading this message through the new channel news
1577 mechanism, congratulations! This mechanism allows channel authors to provide
1578 @dfn{news entries} that their users can view with @command{guix pull --news}.
1579 Run @command{info \"(guix) Invoking guix pull\"} for more info.")
1580 (de "Sie lesen diese Meldung mit Hilfe des neuen Mechanismus, um
1581 Neuigkeiten über Kanäle anzuzeigen — Glückwunsch! Mit diesem
1582 Mechanismus können Kanalautoren Ihren Nutzern @dfn{Einträge zu
1583 Neuigkeiten} mitteilen, die diese sich mit @command{guix pull --news}
1584 anzeigen lassen können. Führen Sie @command{info \"(guix.de) Aufruf
1585 von guix pull\"} aus, um weitere Informationen zu erhalten.")
1586 (es "Está leyendo este mensaje a través del mecanismo de noticias del
1587 canal, ¡enhorabuena! Este mecanismo permite a las autoras de canales
1588 proporcionar @dfn{entradas de noticias} que las usuarias pueden ver con
1589 @command{guix pull --news}. Ejecute @command{info \"(guix.es) Invocación de
1590 guix pull\"} para obtener más información.")
1591 (fr "Ce message t'arrive à travers le nouveau mécanisme d'information
1592 des canaux, bravo ! Ce mécanisme permet aux auteur·rice·s de canaux de
1593 fournir des informations qu'on peut visualiser avec @command{guix pull
1594 --news}. Tape @command{info \"(guix.fr) Invoquer guix pull\"} pour plus de
1595 détails.")
1596 (nl "U leest dit bericht door een nieuw mechanisme om per kanaal
1597 @dfn{nieuwsberichten} te verspreiden. Proficiat! Hiermee kunnen kanaalauteurs
1598 mededelingen uitzenden die hun gebruikers met @command{guix pull --news} kunnen
1599 lezen. Voer @command{info \"(guix) Invoking guix pull\"} uit voor meer
1600 informatie."))))