Merge branch 'master' into staging
[jackhill/guix/guix.git] / etc / news.scm
1 ;; GNU Guix news, for use by 'guix pull'.
2 ;;
3 ;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
4 ;;
5 ;; Copying and distribution of this file, with or without modification, are
6 ;; permitted in any medium without royalty provided the copyright notice and
7 ;; this notice are preserved.
8
9 (channel-news
10 (version 0)
11
12 (entry (commit "828a39da68a9169ef1d9f9ff02a1c66b1bcbe884")
13 (title (en "New @option{--diff} option for @command{guix challenge}")
14 (de "Neue @option{--diff}-Option für @command{guix challenge}"))
15 (body (en "The @command{guix challenge} command, which compares
16 binaries provided by different substitute servers as well as those built
17 locally, has a new @option{--diff} option. With @option{--diff=simple} (the
18 default), @command{guix challenge} automatically downloads binaries and
19 reports the list of differing files; @option{--diff=diffoscope} instructs it
20 to pass them to @command{diffoscope}, which simplifies the comparison process.
21 Run @command{info \"(guix) Invoking guix challenge\"}, for more info.")
22 (de "Der Befehl @command{guix challenge}, mit dem Binärdateien
23 von unterschiedlichen Substitut-Servern oder lokale Erstellungen miteinander
24 verglichen werden können, hat eine neue Befehlszeilenoption @option{--diff}
25 bekommen. Bei @option{--diff=simple} (der Voreinstellung) lädt @command{guix
26 challenge} automatisch Binärdateien herunter und listet sich unterscheidende
27 Dateien auf; wird @option{--diff=diffoscope} angegeben, werden sie an
28 @command{diffoscope} geschickt, was deren Vergleich erleichtert. Führen Sie
29 @command{info \"(guix.de) Aufruf von guix challenge\"} aus, um nähere
30 Informationen zu erhalten.")))
31
32 (entry (commit "f675f8dec73d02e319e607559ed2316c299ae8c7")
33 (title (en "New command @command{guix time-machine}")
34 (de "Neuer Befehl @command{guix time-machine}")
35 (fr "Nouvelle commande @command{guix time-machine}"))
36 (body (en "The new command @command{guix time-machine} facilitates
37 access to older or newer revisions of Guix than the one that is installed.
38 It can be used to install different versions of packages, and to
39 re-create computational environments exactly as used in the past.")
40 (de "Der neue Befehl @command{guix time-machine} vereinfacht
41 den Zugriff auf ältere oder neuere Guix-Versionen als die installierte.
42 Er kann zur Installation bestimmter Paketversionen verwendet werden, aber
43 auch zur Wiederherstellung von Entwicklungsumgebungen, wie sie in der
44 Vergangenheit verwendet wurden.")
45 (fr "La nouvelle commande @command{guix time-machine}
46 facilite l'accès à des versions antérieures ou postérieures par rapport
47 à la version installée. Elle sert à installer des versions spécifiques
48 de paquets, ainsi à la restauration d'environnements dans un état
49 historique.")))
50 (entry (commit "3e962e59d849e4300e447d94487684102d9d412e")
51 (title (en "@command{guix graph} now supports package
52 transformations")
53 (de "@command{guix graph} unterstützt nun Paketumwandlungen"))
54 (body
55 (en "The @command{guix graph} command now supports the common package
56 transformation options (see @command{info \"(guix) Package Transformation
57 Options\"}). This is useful in particular to see the effect of the
58 @option{--with-input} dependency graph rewriting option.")
59 (de "Der Befehl @command{guix graph} unterstützt nun die mit anderen
60 Befehlen gemeinsamen Umwandlungsoptionen (siehe @command{info \"(guix.de)
61 Paketumwandlungsoptionen\"}). Sie helfen insbesondere dabei, die Wirkung der
62 Befehlszeilenoption @option{--with-input} zum Umschreiben des
63 Abhängigkeitsgraphen zu sehen.")
64 (es "La orden @command{guix graph} ahora implementa las opciones
65 comunes de transformación de paquetes (véase @command{info \"(guix.es)
66 Opciones de transformación de paquetes\"}). Esto es particularmente
67 útil para comprobar el efecto de la opción de reescritura del grafo
68 de dependencias @option{--with-input}.")))
69
70 (entry (commit "49af34cfac89d384c46269bfd9388b2c73b1220a")
71 (title (en "@command{guix pull} now honors
72 @file{/etc/guix/channels.scm}")
73 (de "@command{guix pull} berücksichtigt nun
74 @file{/etc/guix/channels.scm}")
75 (es "Ahora @command{guix pull} tiene en cuenta
76 @file{/etc/guix/channels.scm}")
77 (fr "@command{guix pull} lit maintenant
78 @file{/etc/guix/channels.scm}"))
79 (body
80 (en "The @command{guix pull} command will now read the
81 @file{/etc/guix/channels.scm} file if it exists and if the per-user
82 @file{~/.config/guix/channels.scm} is not present. This allows administrators
83 of multi-user systems to define site-wide defaults.")
84 (de "Der Befehl @command{guix pull} liest nun die Datei
85 @file{/etc/guix/channels.scm}, wenn sie existiert und es für den jeweiligen
86 Benutzer keine @file{~/.config/guix/channels.scm} gibt. Dadurch können
87 Administratoren von Mehrbenutzersystemen systemweite Voreinstellungen
88 vornehmen.")
89 (es "Ahora la orden @command{guix pull} lee el fichero
90 @file{/etc/guix/channels.scm} si existe y el fichero personalizable
91 @file{~/.config/guix/channels.scm} no está presente. Esto permite a quienes
92 administran sistemas con múltiples usuarias definir valores predeterminados
93 en el sistema.")
94 (fr "La commande @command{guix pull} lira maintenant le fichier
95 @file{/etc/guix/channels.scm} s'il existe et si le fichier
96 @file{~/.config/guix/channels.scm} par utilisateur·rice n'est pas présent.
97 Cela permet aux personnes administrant des systèmes multi-utilisateurs de
98 définir les canaux par défaut.")))
99
100 (entry (commit "81c580c8664bfeeb767e2c47ea343004e88223c7")
101 (title (en "Insecure @file{/var/guix/profiles/per-user} permissions (CVE-2019-18192)")
102 (de "Sicherheitslücke in @file{/var/guix/profiles/per-user}-Berechtigungen (CVE-2019-18192)")
103 (es "Vulnerabilidad en los permisos de @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
104 (fr "Permissions laxistes pour @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
105 (nl "Onveilige @file{/var/guix/profiles/per-user}-rechten (CVE-2019-18192)"))
106 (body
107 (en "The default user profile, @file{~/.guix-profile}, points to
108 @file{/var/guix/profiles/per-user/$USER}. Until now,
109 @file{/var/guix/profiles/per-user} was world-writable, allowing the
110 @command{guix} command to create the @code{$USER} sub-directory.
111
112 On a multi-user system, this allowed a malicious user to create and populate
113 that @code{$USER} sub-directory for another user that had not yet logged in.
114 Since @code{/var/@dots{}/$USER} is in @code{$PATH}, the target user could end
115 up running attacker-provided code. See
116 @uref{https://issues.guix.gnu.org/issue/37744} for more information.
117
118 This is now fixed by letting @command{guix-daemon} create these directories on
119 behalf of users and removing the world-writable permissions on
120 @code{per-user}. On multi-user systems, we recommend updating the daemon now.
121 To do that, run @code{sudo guix pull} if you're on a foreign distro, or run
122 @code{guix pull && sudo guix system reconfigure @dots{}} on Guix System. In
123 both cases, make sure to restart the service afterwards, with @code{herd} or
124 @code{systemctl}.")
125 (de "Das voreingestellte Benutzerprofil, @file{~/.guix-profile},
126 verweist auf @file{/var/guix/profiles/per-user/$USER}. Bisher hatte jeder
127 Benutzer Schreibzugriff auf @file{/var/guix/profiles/per-user}, wodurch der
128 @command{guix}-Befehl berechtigt war, das Unterverzeichnis @code{$USER}
129 anzulegen.
130
131 Wenn mehrere Benutzer dasselbe System benutzen, kann ein böswilliger Benutzer
132 so das Unterverzeichnis @code{$USER} und Dateien darin für einen anderen
133 Benutzer anlegen, wenn sich dieser noch nie angemeldet hat. Weil
134 @code{/var/…/$USER} auch in @code{$PATH} aufgeführt ist, kann der betroffene
135 Nutzer dazu gebracht werden, vom Angreifer vorgegebenen Code auszuführen.
136 Siehe @uref{https://issues.guix.gnu.org/issue/37744} für weitere
137 Informationen.
138
139 Der Fehler wurde nun behoben, indem @command{guix-daemon} diese Verzeichnisse
140 jetzt selbst anlegt statt das dem jeweiligen Benutzerkonto zu überlassen. Der
141 Schreibzugriff auf @code{per-user} wird den Benutzern entzogen. Für Systeme
142 mit mehreren Benutzern empfehlen wir, den Daemon jetzt zu aktualisieren. Auf
143 einer Fremddistribution führen Sie dazu @code{sudo guix pull} aus; auf einem
144 Guix-System führen Sie @code{guix pull && sudo guix system reconfigure …}
145 aus. Achten Sie in beiden Fällen darauf, den Dienst mit @code{herd} oder
146 @code{systemctl} neuzustarten.")
147 (es "El perfil predeterminado de la usuaria, @file{~/.guix-profile},
148 apunta a @file{/var/guix/profiles/per-user/$USUARIA}. Hasta ahora cualquiera
149 podía escribir en @file{/var/guix/profiles/per-user}, lo cual permitía
150 a la orden @command{guix} crear el subdirectorio @code{$USUARIA}.
151
152 En un sistema con múltiples usuarias, esto permitiría a cualquiera con
153 intención de causar daño crear ese subdirectorio @code{$USUARIA} con el nombre
154 de alguien que no hubiese ingresado en el sistema. Puesto que ese
155 subdirectorio @code{/var/@dots{}/$USUARIA} se encuentra en la ruta de binarios
156 predeterminada @code{$PATH}, el objetivo del ataque podría ejecutar código
157 proporcionado por la parte atacante. Véase
158 @uref{https://issues.guix.gnu.org/issue/37744} para obtener más información.
159
160 Se ha solucionando delegando en @command{guix-daemon} la creación de esos
161 directorios y eliminando los permisos de escritura para todo el mundo en
162 @code{per-user}. En sistemas con múltiples usuarias recomendamos actualizar
163 cuanto antes el daemon. Para hacerlo ejecute @code{sudo guix pull} si se
164 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
165 reiniciar el servicio tras ello, con @code{herd} o @code{systemctl}.")
166 (fr "Le profil utilisateur par défaut, @file{~/.guix-profile},
167 pointe vers @file{/var/guix/profiles/per-user/$USER}. Jusqu'à
168 maintenant, @file{/var/guix/profiles/per-user} était disponible en
169 écriture pour tout le monde, ce qui permettait à la commande
170 @command{guix} de créér le sous-répertoire @code{$USER}.
171
172 Sur un système multi-utilisateur, cela permet à un utilisateur
173 malveillant de créer et de remplir le sous-répertoire @code{USER} pour
174 n'importe quel utilisateur qui ne s'est jamais connecté. Comme
175 @code{/var/@dots{}/$USER} fait partie de @code{$PATH}, l'utilisateur
176 ciblé pouvait exécuter des programmes fournis par l'attaquant. Voir
177 @uref{https://issues.guix.gnu.org/issue/37744} pour plus de détails.
178
179 Cela est maintenant corrigé en laissant à @command{guix-daemon} le soin
180 de créer ces répertoire pour le compte des utilisateurs et en
181 supprimant les permissions en écriture pour tout le monde sur
182 @code{per-user}. Nous te recommandons de mettre à jour le démon
183 immédiatement. Pour cela, lance @code{sudo guix pull} si tu es sur
184 une distro externe ou @code{guix pull && sudo guix system reconfigure
185 @dots{}} sur le système Guix. Dans tous les cas, assure-toi ensuite de
186 redémarrer le service avec @code{herd} ou @code{systemctl}.")
187 (nl "Het standaard gebruikersprofiel, @file{~/.guix-profile}, verwijst
188 naar @file{/var/guix/profiles/per-user/$USER}. Tot op heden kon om het even wie
189 in @file{/var/guix/profiles/per-user} schrijven, wat het @command{guix}-commando
190 toestond de @code{$USER} submap aan te maken.
191
192 Op systemen met meerdere gebruikers kon hierdoor een kwaadaardige gebruiker een
193 @code{$USER} submap met inhoud aanmaken voor een andere gebruiker die nog niet
194 was ingelogd. Omdat @code{/var/@dots{}/$USER} zich in @code{$PATH} bevindt,
195 kon het doelwit zo code uitvoeren die door de aanvaller zelf werd aangeleverd.
196 Zie @uref{https://issues.guix.gnu.org/issue/37744} voor meer informatie.
197
198 Dit probleem is nu verholpen: schrijven door iedereen in @code{per-user} is niet
199 meer toegestaan en @command{guix-daemon} maakt zelf submappen aan namens de
200 gebruiker. Op systemen met meerdere gebruikers raden we aan om
201 @code{guix-daemon} nu bij te werken. Op Guix System kan dit met
202 @code{guix pull && sudo guix system reconfigure @dots{}}, op andere distributies
203 met @code{sudo guix pull}. Herstart vervolgens in beide gevallen
204 @code{guix-daemon} met @code{herd} of @code{systemctl}.")))
205
206 (entry (commit "5f3f70391809f8791c55c05bd1646bc58508fa2c")
207 (title (en "GNU C Library upgraded")
208 (de "GNU-C-Bibliothek aktualisiert")
209 (es "Actualización de la biblioteca C de GNU")
210 (fr "Mise à jour de la bibliothèque C de GNU")
211 (nl "GNU C-bibliotheek bijgewerkt"))
212 (body
213 (en "The GNU C Library (glibc) has been upgraded to version 2.29. To
214 run previously-installed programs linked against glibc 2.28, you need to
215 install locale data for version 2.28 in addition to locale data for 2.29:
216
217 @example
218 guix install glibc-locales glibc-locales-2.28
219 @end example
220
221 On Guix System, you can adjust the @code{locale-libcs} field of your
222 @code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
223 info.")
224 (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.29
225 aktualisiert. Um zuvor installierte Programme, die an glibc 2.28 gebunden
226 worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
227 2.28 zusätzlich zu den Locale-Daten für 2.29 installieren:
228
229 @example
230 guix install glibc-locales glibc-locales-2.28
231 @end example
232
233 Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
234 @code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
235 Locales\"} aus, um weitere Informationen dazu zu erhalten.")
236 (es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
237 2.29. Para ejecutar programas instalados previamente que se encuentren
238 enlazados con glibc 2.28, es necesario que instale los datos de localización
239 de la versión 2.28 junto a los datos de localización de la versión 2.29:
240
241 @example
242 guix install glibc-locales glibc-locales-2.28
243 @end example
244
245 En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
246 declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
247 Localizaciones\"} para obtener más información.")
248 (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
249 2.29. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.28,
250 tu dois installer les données pour la version 2.28 en plus des données de
251 régionalisation pour la version 2.29 :
252
253 @example
254 guix install glibc-locales glibc-locales-2.28
255 @end example
256
257 Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
258 @code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
259 plus de détails.")
260 (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.29.
261 Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.28
262 gebonden zijn, moet u de regionale informatie van versie 2.28 naast die van
263 versie 2.29 installeren:
264
265 @example
266 guix install glibc-locales glibc-locales-2.28
267 @end example
268
269 Op Guix System kunt u het @code{locale-libcs}-veld van uw
270 @code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
271 uit voor verdere uitleg.")))
272 (entry (commit "cdd3bcf03883d129581a79e6d6611b2afd3b277b")
273 (title (en "New reduced binary seed bootstrap")
274 (de "Neues Bootstrapping mit kleinerem Seed")
275 (es "Nueva reducción de la semilla binaria para el lanzamiento inicial")
276 (fr "Nouvel ensemble de binaires de bootstrap réduit")
277 (nl "Nieuwe bootstrap met verkleinde binaire kiem"))
278 (body
279 (en "The package graph on x86_64 and i686 is now rooted in a
280 @dfn{reduced set of binary seeds}. The initial set of binaries from which
281 packages are built now weighs in at approximately 130 MiB, half of what it
282 used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
283 the talk at @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
284 (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine @dfn{kleinere
285 Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche Menge an
286 Binärdateien, aus denen heraus Pakete erstellt werden, machen nun ungefähr
287 130 MiB aus, halb so viel wie früher. Führen Sie @code{info \"(guix.de)
288 Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich den Vortrag
289 auf @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/} an.")
290 (fr "Le graphe des paquets sur x86_64 et i686 prend maintenant sa
291 source dans un @dfn{ensemble réduit de binaires}. L'ensemble initial des
292 binaires à partir desquels les paquets sont construits pèse maintenant environ
293 130 Mio, soit la moitié par rapport à l'ensemble précédent. Tu peux lancer
294 @code{info \"(guix) Bootstrapping\"} pour plus de détails, ou regarder la
295 présentation sur @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
296 (es "El grafo de paquetes en x86_64 y i686 ahora tiene su raíz en un
297 @dfn{conjunto reducido de semillas binarias}. El conjunto inicial de binarios
298 desde el que se construyen los paquetes ahora tiene un tamaño aproximado de
299 130_MiB , la mitad de su tamaño anterior. Ejecute @code{info \"(guix.es)
300 Lanzamiento inicial\"} para aprender más, o puede ver la charla en inglés
301 en@uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
302 (nl "Het netwerk van pakketten voor x86_64 en i686 is nu geworteld in
303 een @dfn{verkleinde verzameling van binaire kiemen}. Die beginverzameling
304 van binaire bestanden waaruit pakketten gebouwd worden is nu zo'n 130 MiB
305 groot; nog maar half zo groot als voorheen. Voer @code{info \"(guix)
306 Bootstrapping\"} uit voor meer details, of bekijk de presentatie op
307 @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")))
308
309 (entry (commit "dcc90d15581189dbc30e201db2b807273d6484f0")
310 (title (en "New channel news mechanism")
311 (de "Neuer Mechanismus, um Neuigkeiten über Kanäle anzuzeigen.")
312 (es "Nuevo mecanismo de noticias de los canales")
313 (fr "Nouveau mécanisme d'information sur les canaux")
314 (nl "Nieuw mechanisme voor nieuwsberichten per kanaal"))
315 (body
316 (en "You are reading this message through the new channel news
317 mechanism, congratulations! This mechanism allows channel authors to provide
318 @dfn{news entries} that their users can view with @command{guix pull --news}.
319 Run @command{info \"(guix) Invoking guix pull\"} for more info.")
320 (de "Sie lesen diese Meldung mit Hilfe des neuen Mechanismus, um
321 Neuigkeiten über Kanäle anzuzeigen — Glückwunsch! Mit diesem
322 Mechanismus können Kanalautoren Ihren Nutzern @dfn{Einträge zu
323 Neuigkeiten} mitteilen, die diese sich mit @command{guix pull --news}
324 anzeigen lassen können. Führen Sie @command{info \"(guix.de) Aufruf
325 von guix pull\"} aus, um weitere Informationen zu erhalten.")
326 (es "Está leyendo este mensaje a través del mecanismo de noticias del
327 canal, ¡enhorabuena! Este mecanismo permite a las autoras de canales
328 proporcionar @dfn{entradas de noticias} que las usuarias pueden ver con
329 @command{guix pull --news}. Ejecute @command{info \"(guix.es) Invocación de
330 guix pull\"} para obtener más información.")
331 (fr "Ce message t'arrive à travers le nouveau mécanisme d'information
332 des canaux, bravo ! Ce mécanisme permet aux auteur·rice·s de canaux de
333 fournir des informations qu'on peut visualiser avec @command{guix pull
334 --news}. Tape @command{info \"(guix.fr) Invoquer guix pull\"} pour plus de
335 détails.")
336 (nl "U leest dit bericht door een nieuw mechanisme om per kanaal
337 @dfn{nieuwsberichten} te verspreiden. Proficiat! Hiermee kunnen kanaalauteurs
338 mededelingen uitzenden die hun gebruikers met @command{guix pull --news} kunnen
339 lezen. Voer @command{info \"(guix) Invoking guix pull\"} uit voor meer
340 informatie."))))