6d7a4a9d4f7bc40ba60a0a094b32fd32ac55d51b
[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–2021 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, 2021 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, 2021 Mathieu Othacehe <m.othacehe@gmail.com>
11 ;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
12 ;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
13 ;; Copyright © 2021 Leo Famulari <leo@famulari.name>
14 ;; Copyright © 2021 Zhu Zihao <all_but_last@163.com>
15 ;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
16 ;;
17 ;; Copying and distribution of this file, with or without modification, are
18 ;; permitted in any medium without royalty provided the copyright notice and
19 ;; this notice are preserved.
20
21 (channel-news
22 (version 0)
23
24 (entry (commit "e52ec6c64a17a99ae4bb6ff02309067499915b06")
25 (title
26 (en "New supported platform: powerpc64le-linux")
27 (de "Neue Plattform wird unterstützt: powerpc64le-linux")
28 (fr "Nouvelle plate-forme prise en charge : powerpc64le-linux"))
29 (body
30 (en "A new platform, powerpc64le-linux, has been added for
31 little-endian 64-bit Power ISA processors using the Linux-Libre kernel. This
32 includes POWER9 systems such as the
33 @uref{https://www.fsf.org/news/talos-ii-mainboard-and-talos-ii-lite-mainboard-now-fsf-certified-to-respect-your-freedom,
34 RYF Talos II mainboard}. This platform is available as a \"technology
35 preview\": although it is supported, substitutes are not yet available from
36 the build farm, and some packages may fail to build. In addition, Guix System
37 is not yet available on this platform. That said, the Guix community is
38 actively working on improving this support, and now is a great time to try it
39 and get involved!")
40 (de "Eine neue Plattform, powerpc64le-linux, wurde hinzugefügt. Mit
41 ihr können Prozessoren mit 64-Bit-Power-Befehlssatz, little-endian, mit dem
42 Linux-Libre-Kernel betrieben werden. Dazu gehören POWER9-Systeme wie die
43 @uref{https://www.fsf.org/news/talos-ii-mainboard-and-talos-ii-lite-mainboard-now-fsf-certified-to-respect-your-freedom,
44 RYF-zertifizierte Talos-II-Hauptplatine}. Bei der Plattform handelt es sich
45 um eine „Technologievorschau“; obwohl sie unterstützt wird, gibt es noch keine
46 Substitute von der Erstellungsfarm und bei manchen Paketen könnte die
47 Erstellung fehlschlagen. Des Weiteren ist Guix System auf dieser Plattform
48 noch nicht verfügbar. Dennoch arbeitet die Guix-Gemeinde aktiv daran, diese
49 Unterstützung auszubauen, und jetzt ist eine gute Gelegenheit, sie
50 auszuprobieren und mitzumachen!")
51 (fr "Une nouvelle plate-forme, powerpc64le-linux, a été ajoutée pour
52 les processeurs POWER 64-bits utilisant le noyau Linux-libre. Ça inclut les
53 systèmes POWER9 tels que les
54 @uref{https://www.fsf.org/news/talos-ii-mainboard-and-talos-ii-lite-mainboard-now-fsf-certified-to-respect-your-freedom,
55 cartes Talos II RYF}. Il s'agit pour le moment d'un « avant-goût » de la
56 technologie : bien que la plate-forme soit prise en charge, la ferme de
57 compilation ne fournit pas encore de substituts et certains paquets risquent
58 de ne pas compiler. En outre, Guix System n'est pas encore disponible sur
59 cette plate-forme. Ceci dit, la communauté Guix travaille activement pour
60 améliorer cette prise en charge et c'est maintenant un bon moment pour
61 l'essayer et pour s'impliquer !")))
62
63 (entry (commit "9ade2b720af91acecf76278b4d9b99ace406781e")
64 (title
65 (en "Update on previous @command{guix-daemon} local privilege escalation")
66 (de "Nachtrag zur lokalen Rechteausweitung bei @command{guix-daemon}")
67 (nl "Aanvulling bij escalatie van bevoegdheden via @command{guix-daemon}"))
68 (body
69 (en "The previous news item described a potential local privilege
70 escalation in @command{guix-daemon}, and claimed that systems with the Linux
71 @uref{https://www.kernel.org/doc/Documentation/sysctl/fs.txt,
72 ``protected hardlink''} feature enabled were unaffected by the vulnerability.
73
74 This is not entirely correct. Exploiting the bug on such systems is harder,
75 but not impossible. To avoid unpleasant surprises, all users are advised to
76 upgrade @command{guix-daemon}. Run @command{info \"(guix) Upgrading Guix\"}
77 for info on how to do that. See
78 @uref{https://guix.gnu.org/en/blog/2021/risk-of-local-privilege-escalation-via-guix-daemon/}
79 for more information on this bug.")
80 (de "In der letzten Neuigkeit wurde eine mögliche lokale
81 Rechteausweitung im @command{guix-daemon} beschrieben und behauptet, dass
82 Systeme, auf denen Linux’
83 @uref{https://www.kernel.org/doc/Documentation/sysctl/fs.txt,
84 „Geschützte-Hardlinks“-Funktionalität} aktiviert ist, von der Sicherheitslücke
85 nicht betroffen seien.
86
87 Das stimmt nicht ganz. Die Lücke auf solchen Systemen auszunutzen, ist
88 schwerer, aber nicht unmöglich. Um unangenehme Überraschungen zu vermeiden,
89 empfehlen wir allen Nutzern, @command{guix-daemon} zu aktualisieren. Führen
90 Sie @command{info \"(guix.de) Aktualisieren von Guix\"} aus, um zu erfahren,
91 wie Sie ihn aktualisieren können. Siehe
92 @uref{https://guix.gnu.org/de/blog/2021/risk-of-local-privilege-escalation-via-guix-daemon/}
93 für mehr Informationen zu diesem Fehler.")
94 (nl "Het vorige nieuwsbericht beschreef een beveiligingsprobleem in
95 @command{guix-daemon} dat kan leiden tot de escalatie van lokale bevoegdheden.
96 Het bericht stelde dat machines waarop de
97 @uref{https://www.kernel.org/doc/Documentation/sysctl/fs.txt,
98 ``protected hardlink''}-optie van Linux is inschakeld niet kwetsbaar zijn.
99
100 Dit is niet volledig juist. De optie maakt het uitbuiten van de fout
101 moeilijker maar niet onmogelijk. Om onaangename verrassingen te voorkomen
102 is het voor iedereen aangeraden om @command{guix-daemon} op te waarderen.
103 Voer @command{info \"(guix) Upgrading Guix\"} uit voor meer informatie
104 daarover. Lees
105 @uref{https://guix.gnu.org/en/blog/2021/risk-of-local-privilege-escalation-via-guix-daemon/}
106 voor meer informatie over het probleem.")))
107
108 (entry (commit "ec7fb669945bfb47c5e1fdf7de3a5d07f7002ccf")
109 (title
110 (en "Risk of local privilege escalation @i{via} @command{guix-daemon}")
111 (de "Risiko lokaler Rechteausweitung über @command{guix-daemon}")
112 (fr "Risque d'élévation locale de privilèges @i{via} @command{guix-daemon}")
113 (nl "Risico op escalatie van bevoegdheden via @command{guix-daemon}"))
114 (body
115 (en "A security vulnerability that can lead to local privilege
116 escalation has been found in @command{guix-daemon}. It affects multi-user
117 setups in which @command{guix-daemon} runs locally.
118
119 It does @emph{not} affect multi-user setups where @command{guix-daemon} runs
120 on a separate machine and is accessed over the network, @i{via}
121 @env{GUIX_DAEMON_SOCKET}, as is customary on cluster setups. Machines where
122 the Linux @uref{https://www.kernel.org/doc/Documentation/sysctl/fs.txt,
123 ``protected hardlink''} feature is enabled, which is common, are also
124 unaffected---this is the case when the contents of
125 @file{/proc/sys/fs/protected_hardlinks} are @code{1}.
126
127 The attack consists in having an unprivileged user spawn a build process, for
128 instance with @command{guix build}, that makes its build directory
129 world-writable. The user then creates a hardlink within the build directory
130 to a root-owned file from outside of the build directory, such as
131 @file{/etc/shadow}. If the user passed the @option{--keep-failed} option and
132 the build eventually fails, the daemon changes ownership of the whole build
133 tree, including the hardlink, to the user. At that point, the user has write
134 access to the target file.
135
136 You are advised to upgrade @command{guix-daemon}. Run @command{info \"(guix)
137 Upgrading Guix\"}, for info on how to do that. See
138 @uref{https://issues.guix.gnu.org/47229} for more information on this bug.")
139 (de "Eine Sicherheitslücke, die zu einer lokalen Rechteausweitung
140 führen kann, wurde in @command{guix-daemon} gefunden. Sie betrifft
141 Mehrbenutzersysteme, auf denen @command{guix-daemon} lokal läuft.
142
143 @emph{Nicht} betroffen sind Mehrbenutzersysteme, auf denen
144 @command{guix-daemon} auf einer separaten Maschine läuft und darauf über das
145 Netzwerk mittels @env{GUIX_DAEMON_SOCKET} zugegriffen wird, was auf
146 Rechen-Clustern üblich ist. Auch Maschinen, auf denen Linux’
147 @uref{https://www.kernel.org/doc/Documentation/sysctl/fs.txt,
148 „Geschützte-Hardlinks“-Funktionalität} aktiviert ist@tie{}– was häufig der
149 Fall ist@tie{}–, sind nicht betroffen; sie ist aktiviert, wenn
150 @file{/proc/sys/fs/protected_hardlinks} den Inhalt @code{1} hat.
151
152 Der Angriff besteht darin, dass ein unprivilegierter Benutzer einen
153 Erstellungsprozess startet, etwa mit @command{guix build}, der allen
154 Schreibberechtigung auf sein Erstellungsverzeichnis erteilt. In diesem
155 Erstellungsverzeichnis erzeugt der Benutzer nun eine harte Verknüpfung auf
156 eine Datei außerhalb des Erstellungsverzeichnisses, die dem
157 Administratornutzer root gehört, etwa @file{/etc/shadow}. Wenn der Nutzer die
158 Befehlszeilenoption @option{--keep-failed} angegeben hat und die Erstellung
159 irgendwann fehlschlägt, trägt der Daemon als Besitzer des gesamten
160 Erstellungsverzeichnisses den Benutzer ein, Hardlink eingeschlossen. Jetzt
161 hat der Benutzer Schreibzugriff auf die Zieldatei bekommen.
162
163 Wir empfehlen, dass Sie @command{guix-daemon} aktualisieren. Führen Sie
164 @command{info \"(guix.de) Aktualisieren von Guix\"} aus, um zu erfahren, wie
165 Sie ihn aktualisieren können. Siehe @uref{https://issues.guix.gnu.org/47229}
166 für mehr Informationen zu diesem Fehler.")
167 (fr "Une faille de sécurité pouvant mener à une élévation locale de
168 privilèges a été trouvée dans @command{guix-daemon}. Elle touche les
169 installations multi-utilisateur·ices dans lesquelles @command{guix-daemon}
170 tourne en local.
171
172 Elle @emph{n'affecte pas} les installations où @command{guix-daemon} tourne
173 sur une machine séparée et qu'on y accède à travers le réseau, @i{via}
174 @env{GUIX_DAEMON_SOCKET}, comme c'est typiquement le cas sur les grappes de
175 calcul (@i{clusters}). Les machines où les
176 @uref{https://www.kernel.org/doc/Documentation/sysctl/fs.txt, ``liens
177 protégés''} de Linux sont activés, ce qui est courant, ne sont pas non plus
178 touchées ; cette fonctionnalité est activée si le contenu de
179 @file{/proc/sys/fs/protected_hardlinks} est @code{1}.
180
181 Pour mener cette attaque, un·e utilisateur·rice démarre un processus de
182 compilation, par exemple avec @command{guix build}, qui rend le répertoire de
183 compilation inscriptible pour tout le monde. La personne créée ensuite un
184 lien dur (@i{hard link}) dans ce répertoire vers un fichier appartenant à
185 @code{root}, tel que @file{/etc/shadow}. Si on a passé l'option
186 @option{--keep-failed} et que la compilation finit par échouer, le démon met
187 l'utilisateur·rice appelant·e comme propriétaire de l'ensemble du répertoire
188 de compilation, y compris le lien. À ce stade, cette personne a accès en
189 écriture sur le fichier cible.
190
191 Nous conseillons de mettre à jour @command{guix-daemon}. Lancer @command{info
192 \"(guix.fr) Mettre à niveau Guix\"} pour voir comment faire. Voir
193 @uref{https://issues.guix.gnu.org/47229} pour plus d'informations sur cette
194 faille.")
195 (nl "In @command{guix-daemon} werd een beveiligingsprobleem
196 gevonden dat kan leiden tot de escalatie van lokale bevoegdheden. Het
197 probleem doet zich voor bij installaties met meerdere gebruikers waarop een
198 lokale @command{guix-daemon} draait.
199
200 Het heeft @emph{geen} invloed op systemen met meerdere gebruikers waarbij de
201 @command{guix-daemon} op een afzonderlijke machine draait en via
202 @env{GUIX_DAEMON_SOCKET} over het netwerk wordt aangesproken, zoals
203 gebruikelijk bij computerclusters. Ook machines waarop de
204 @uref{https://www.kernel.org/doc/Documentation/sysctl/fs.txt,
205 ``protected hardlink''}-optie van Linux is inschakeld, wat vaak het geval is,
206 zijn niet kwetsbaar.
207
208 De aanval bestaat erin dat een gebruiker zonder privileges een bouwproces
209 opstart, bijvoorbeeld met @command{guix build}, dat zijn werkmap beschrijfbaar
210 maakt voor alle gebruikers. Vervolgens maakt de gebruiker vanuit deze map een
211 harde link naar een bestand erbuiten met @code{root} als eigenaar, zoals
212 @file{/etc/shadow}. Als de gebruiker de @option{--keep-failed}-optie opgaf
213 en de bouw faalt, maakt @command{guix-daemon} de gebruiker eigenaar van de
214 volledige inhoud van de werkmap, met inbegrip van de harde link. Op dat
215 moment bezit de gebruiker schrijfrechten over het doelbestand.
216
217 Het is aangeraden om @command{guix-daemon} op te waarderen. Voer
218 @command{info \"(guix) Upgrading Guix\"} uit voor meer informatie daarover.
219 Lees @uref{https://issues.guix.gnu.org/47229} voor meer informatie over het
220 probleem.")))
221
222 (entry (commit "77c2f4e2068ebec3f384c826c5a99785125ff72c")
223 (title
224 (en "@code{qemu-binfmt-service-type} is usable for any container")
225 (de "@code{qemu-binfmt-service-type} funktioniert mit jedem Container")
226 (fr "@code{qemu-binfmt-service-type} fonctionne avec tous les conteneurs"))
227 (body
228 (en "The service now makes use of the statically built QEMU binaries
229 along with the fix binary (F) @code{binfmt_misc} flag, which allows the kernel
230 to fully pre-load it in memory. QEMU can thus now be used with any container
231 without extra configuration. The @code{guix-support?} field of the
232 @code{qemu-binfmt-configuration} record is removed, as it is no longer
233 necessary.")
234 (de "Der Dienst benutzt jetzt statisch gebundene QEMU-Binärdateien
235 zusammen mit der Fix-Binary-Flag (F) von @code{binfmt_misc}. Dadurch kann der
236 Kernel die QEMU-Binärdatei als Ganzes vorab in den Speicher laden. Dann kann
237 sie auch ohne weitere Konfiguration in jeder Art von isolierter Umgebung
238 benutzt werden. Darum wurde das Feld @code{guix-support?} des
239 @code{qemu-binfmt-configuration}-Verbundsobjekts entfernt; es wird nicht mehr
240 gebraucht.")
241 (fr "Le service utilise maintenant les binaire QEMU statiques avec
242 le drapeau « fixed » (F) de @code{binfmt_misc}, ce qui permet au noyau
243 de le charger entièrement en mémoire. On peut donc maintenant utiliser QEMU
244 avec n'importe quel conteneur sans configuration supplémentaire. Le champ
245 @code{guix-support?} de l'enregistrement @code{qemu-binfmt-configuration} a
246 été supprimé car il n'est pas nécessaire.")))
247
248 (entry (commit "02e2e093e858e8a0ca7bd66c1f1f6fd0a1705edb")
249 (title
250 (en "New @command{guix import go} command")
251 (de "Neuer Befehl @command{guix import go}")
252 (fr "Nouvelle commande @command{guix import go}")
253 (nl "Nieuwe @command{guix import go}-opdracht"))
254 (body
255 (en "The new @command{guix import go} command allows packagers to
256 generate a package definition or a template thereof given the name of a Go
257 package available through @url{https://proxy.golang.org}, like so:
258
259 @example
260 guix import go golang.org/x/sys
261 @end example
262
263 Run @command{info \"(guix) Invoking guix import\"} for more info.")
264 (de "Mit dem neuen Befehl @command{guix import go} können
265 Paketautoren eine Paketdefinition oder eine Vorlage dafür anhand des Namens
266 eines auf @url{https://proxy.golang.org} verfügbaren Go-Pakets erzeugen, etwa
267 so:
268
269 @example
270 guix import go golang.org/x/sys
271 @end example
272
273 Führen Sie @command{info \"(guix.de) Aufruf von guix import\"} aus, um mehr
274 Informationen zu bekommen.")
275 (fr "La nouvelle commande @command{guix import go} permet aux
276 empaqueteur·ice·s de générer une définition de paquet ou un modèle de
277 définition à partir du nom d'un paquet Go disponible via
278 @url{https://proxy.golang.org}, comme ceci :
279
280 @example
281 guix import go golang.org/x/sys
282 @end example
283
284 Lancez @command{info \"(guix.fr) Invoquer guix import\"} pour en savoir plus.")
285 (nl "Met de nieuwe @command{guix import go}-opdracht kunnen
286 pakketschrijvers een pakketdefinitie of -sjabloon aanmaken, op basis van de
287 naam van een Go-pakket te vinden op @url{https://proxy.golang.org}:
288
289 @example
290 guix import go golang.org/x/sys
291 @end example
292
293 Voer @command{info \"(guix) Invoking guix import\"} uit voor meer
294 informatie.")))
295
296 (entry (commit "1b5b882120daf7d111aa351a919a90e818324347")
297 (title
298 (en "The @code{linux-libre} kernel is updated to 5.11.2")
299 (de "Der Kernel @code{linux-libre} wird auf 5.11.2 aktualisiert")
300 (fr "Le noyau @code{linux-libre} est mis à jour vers la 5.11.2")
301 (nl "De @code{linux-libre}-kernel werd bijgewertk naar 5.11.2"))
302 (body
303 (en "The default @code{linux-libre} kernel is now based on the 5.11
304 stable kernel series, beginning with version 5.11.2. Promiment features include
305 improved Wine performance, unprivileged Overlayfs mounts, support for Intel SGX,
306 support for new graphics hardware, and improved performance of the Btrfs
307 file system.")
308 (de "Der standardmäßig verwendete @code{linux-libre}-Kernel basiert
309 jetzt auf der 5.11-„stable“-Versionsreihe, angefangen mit Version 5.11.2. Zu
310 den markanten Neuerungen gehören bessere Wine-Unterstützung, Einbinden per
311 Overlayfs für Nutzer ohne erweiterte Rechte, Unterstützung für Intel SGX, für
312 neue Grafikhardware und bessere Leistung beim Btrfs-Dateisystem.")
313 (fr "Le noyau @code{linux-libre} par défaut est maintenant basé sur la
314 lignée stable 5.11 du noyau, à commencer par la version 5.11.2. Parmi les
315 fonctionnalités notables on trouve des performances améliorées pour Wine, le
316 montage Overlayfs non privilégié, la prise en charge d'Intel SGX, celle des
317 nouveaux périphériques graphiques et de meilleures performances du système de
318 fichiers Btrfs.")
319 (nl "De standaard @code{linux-libre}-kernel is nu geëent op de
320 stabiele 5.11-reeks, te beginnen met versie 5.11.2. Deze update biedt onder
321 andere verbeterde prestaties voor Wine en het Btfrs-bestandssysteem, laat
322 gewone gebruikers toe om met Overlayfs bestandssystemen te combineren, en
323 ondersteunt Intel SGX en nieuwe grafische apparatuur.")))
324
325 (entry (commit "6e8cdf1d26092cb9654e179b04730fff7c15c94f")
326 (title
327 (en "The @command{guix system image} command can now operate on image records")
328 (de "Der Befehl @command{guix system image} kann jetzt auch mit @code{image}-Verbundsobjekten umgehen")
329 (fr "La commande @command{guix system image} peut désormais fonctionner sur des images"))
330 (body
331 (en "The @command{guix system image} command can now operate on
332 @code{image} records. This means that the file parameter or the expression
333 passed to this command can return @code{image} or @code{operating-system}
334 records.
335
336 The @file{gnu/system/images} directory contains default images that can be
337 built by running @command{guix system image gnu/system/images/pine64.scm} for
338 instance.")
339 (de "Sie können den Befehl @command{guix system image} jetzt auch auf
340 Verbundsobjekte vom Typ @code{image} anwenden. Das heißt, wenn Sie eine Datei
341 oder einen Ausdruck als Parameter übergeben, darf dieser ein Verbundsobjekt
342 vom Typ @code{image} oder @code{operating-system} zurückliefern.
343
344 Im Verzeichnis @file{gnu/system/images} finden Sie vorkonfigurierte Abbilder
345 als @code{image}-Verbundsobjekte. Sie können zum Beispiel @command{guix system
346 image gnu/system/images/pine64.scm} ausführen, um das Abbild zu erstellen.")
347 (fr "La commande @command{guix system image} peut désormais
348 fonctionner sur des images. Cela signifie que le fichier ou l'expression
349 passé en paramètre de cette commande peuvent retourner une structure de type
350 @code{image} ou @code{operating-system}.
351
352 Le dossier @file{gnu/system/images} contient des images par défaut qui peuvent
353 être construites en lançant la commande @command{guix system image
354 gnu/system/images/pine64.scm} par exemple.")))
355
356 (entry (commit "aa8de806252e3835d57fab351b02d13db762deac")
357 (title
358 (en "Risk of local privilege escalation @i{via} setuid programs")
359 (de "Risiko lokaler Rechteausweitung bei setuid-Programmen")
360 (fr "Risque de gain local de privilèges @i{via} les programmes setuid")
361 (zh "存在通过 setuid 程序进行本地提权的风险"))
362 (body
363 (en "On Guix System, setuid programs were, until now, installed as
364 setuid-root @emph{and} setgid-root (in the @file{/run/setuid-programs}
365 directory). However, most of these programs are meant to run as setuid-root,
366 but not setgid-root. Thus, this setting posed a risk of local privilege
367 escalation.
368
369 This bug has been fixed and users are advised to upgrade their system, with a
370 command along the lines of:
371
372 @example
373 guix system reconfigure /run/current-system/configuration.scm
374 @end example
375
376 Users of Guix on a ``foreign distro'' are unaffected. See
377 @url{https://issues.guix.gnu.org/46395} for more information.")
378 (de "Auf Guix System wurden setuid-Programme bisher mit setuid-root
379 @emph{und} setgid-root ausgestattet (im Verzeichnis
380 @file{/run/setuid-programs}). Die meisten solchen Programme sind jedoch nur
381 dafür gedacht, mit setuid-root zu laufen, ohne setgid-root. Durch diese
382 Einstellung war daher vielleicht eine lokale Rechteausweitung („local
383 privilege escalation“) möglich.
384
385 Dieser Fehler wurde behoben und Benutzern wird geraten, ihr System zu
386 aktualisieren, etwa mit diesem Befehl:
387
388 @example
389 guix system reconfigure /run/current-system/configuration.scm
390 @end example
391
392 Benutzer von Guix auf einer „Fremddistribution“ sind @emph{nicht} betroffen.
393 Siehe @url{https://issues.guix.gnu.org/46395} für weitere Informationen.")
394 (fr "Sur Guix System, les programmes setuid étaient jusqu'à présent
395 installés setuid-root @emph{et} setgid-root (dans le répertoire
396 @file{/run/setuid-programs}). Ces programmes sont généralement conçus pour
397 être setuid-root, mais pas setgid-root, et cette situation posait donc un
398 risque de gain local de privilèges.
399
400 Ce problème est corrigé et vous êtes encouragé·e à mettre à jour votre
401 système, avec une commande de ce genre :
402
403 @example
404 guix system reconfigure /run/current-system/configuration.scm
405 @end example
406
407 Les usagers de Guix sur une distrib externe ne sont pas touché·es. Plus
408 d'informations sont disponibles à @url{https://issues.guix.gnu.org/46395} (en
409 anglais).")
410 (zh "到目前为止,Guix 系统上的 setuid 程序(位于 @file{/run/setuid-programs})
411 同时具有 setuid-root @emph{和} setgid-root 权限。然而,此类程序大多被设计为在拥有
412 setuid 权限而非 setgid 权限时运行。因此,这样的设置可能会使系统受到本地提权攻击。
413
414 此漏洞已经被修复,同时建议用户使用下列命令升级他们的系统:
415
416 @example
417 guix system reconfigure /run/current-system/configuration.scm
418 @end example
419
420 在 ``第三方宿主系统'' 上使用 Guix 的用户不受此漏洞影响,详情请参阅
421 @url{https://issues.guix.gnu.org/46395}。")))
422
423 (entry (commit "aedbc5ff32a62f45aeed74c6833399a6cf2c22dc")
424 (title
425 (en "Create a manifest with @command{guix package --export-manifest}")
426 (de "Manifest erzeugen mit @command{guix package --export-manifest}")
427 (fr "Créer un manifeste avec @command{guix package --export-manifest}"))
428 (body
429 (en "The @command{guix package --export-manifest} command outputs a
430 @dfn{manifest} from your profile. This manifest is a code snippet that can
431 then be passed to @command{guix package --manifest} (or any other command that
432 accepts the @option{--manifest} option) to deploy these packages.
433
434 The goal of this new @option{--export-manifest} option is to make it easier to
435 migrate from an ``imperative'' style where you repeatedly invoke @command{guix
436 install} and similar commands, to the declarative style where you write in a
437 manifest file the list of packages you want to have.
438
439 Similarly, the new @option{--export-channels} option outputs a @dfn{channel
440 specification} suitable for @command{guix pull --channels} from your profile.
441 This allows you to ``pin'' Guix to the revision that was used to build the
442 profile.
443
444 Run @command{info \"(guix) Invoking guix package\"} for more info.")
445 (de "Mit dem Befehl @command{guix package --export-manifest} wird ein
446 @dfn{Manifest} aus Ihrem Profil erzeugt. Bei einem Manifest handelt es sich um
447 ein Stück Code, das Sie an @command{guix package --manifest} zum Einspielen
448 der Pakete aus dem Manifest übergeben können (oder an jeden anderen Befehl,
449 der die Befehlszeilenoption @option{--manifest} versteht).
450
451 Die Absicht hinter dieser neuen Befehlszeilenoption @option{--export-manifest}
452 ist, dass man leichter von einem „imperativen“ Stil, bei dem man wiederholt
453 @command{guix install} und ähnliche Befehle aufruft, zum deklarativen Stil
454 wechseln kann. Im deklarativen Stil tragen Sie die Liste der Pakete, die Sie
455 haben möchten, in eine Manifest-Datei ein.
456
457 Analog können Sie mit der neuen Befehlszeilenoption @option{--export-channels}
458 zu Ihrem Profil eine @dfn{Kanalspezifikation} erzeugen, die für @command{guix
459 pull --channels} geeignet ist. Damit können Sie für Guix immer die Version
460 benutzen, mit der das Profil erstellt wurde.
461
462 Führen Sie für mehr Informationen @command{info \"(guix.de) Aufruf von guix
463 package\"} aus.")
464 (fr "La commande @command{guix package --export-manifest} affiche un
465 @dfn{manifeste} pour le profil choisi. Ce manifeste est un bout de code qu'on
466 peut passer à @command{guix package --manifest} (ou n'importe qu'elle commande
467 qui accepte l'option @option{--manifest}) pour déployer ces paquets.
468
469 L'objectif de cette nouvelle option @option{--export-manifest} est de
470 faciliter la migration du modèle ``impératif'', où on utilise @command{guix
471 install} et les commandes de ce genre, au modèle déclaratif où on écrit dans
472 un fichier la liste des paquets que l'on veut avoir.
473
474 De même, la nouvelle option @option{--export-channels} produit une
475 @dfn{spécification de canaux} pour @command{guix pull --channels} à partir du
476 profil. Cela permet de ``figer'' Guix à la révision qui a été utilisée pour
477 produire le profil.
478
479 Voir @command{info \"(guix.fr) Invoquer guix package\"} pour plus
480 d'informations.")))
481
482 (entry (commit "9ab817b2a4601b4a6755983590ed7d93ebdc8d09")
483 (title (en "New @option{--with-latest} package transformation option")
484 (de "Neue Paketumwandlungsoption @option{--with-latest}")
485 (fr "Nouvelle option de transformation @option{--with-latest}"))
486 (body
487 (en "The new @option{--with-latest} package transformation option
488 gets the latest release of a package, as would be identified by @command{guix
489 refresh}, and uses it instead of the currently-packaged version. For example,
490 to install the latest release of GNOME Weather linked against the latest
491 version of libgweather, run:
492
493 @example
494 guix install gnome-weather \\
495 --with-latest=gnome-weather --with-latest=libgweather
496 @end example
497
498 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
499 (de "Mit der neuen Paketumwandlungsoption @option{--with-latest} wird
500 die neueste Veröffentlichung für ein Paket verwendet. Diese wird wie bei
501 @command{guix refresh} bestimmt und anstelle der zurzeit im Paket festgelegten
502 Version verwendet. Um zum Beispiel die neuste Veröffentlichung von GNOME
503 Weather gebunden an die neuste Version von libgweather zu installieren, führen
504 Sie dies aus:
505
506 @example
507 guix install gnome-weather \\
508 --with-latest=gnome-weather --with-latest=libgweather
509 @end example
510
511 Führen Sie für mehr Informationen @command{info \"(guix.de)
512 Paketumwandlungsoptionen\"} aus.")
513 (fr "La nouvelle option de transformation de paquets
514 @option{--with-latest} récupère la dernière version d'un logiciel telle
515 qu'elle serait trouvée par @command{guix refresh} et l'utilise à la place la
516 version actuellement fournie par le paquet. Par exemple, pour installer la
517 dernière version de GNOME Weather, elle-même compilée avec la dernière version
518 de libgweather, on lancera :
519
520 @example
521 guix install gnome-weather \\
522 --with-latest=gnome-weather --with-latest=libgweather
523 @end example
524
525 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
526 plus de détails.")))
527
528 (entry (commit "a879e35116043d5daf3d9d175b697d10b9177fd5")
529 (title (en "Substitutes can now be compressed with zstd")
530 (de "Substitute können nun mit zstd komprimiert werden")
531 (fr "Les substituts peuvent maintenant être compressés avec zstd"))
532 (body
533 (en "The @command{guix publish} command now supports substitute
534 compression with zstd and @command{guix-daemon} can now fetch and decompress
535 them.
536
537 The advantage of zstd over the other options is its high compression and
538 decompression throughput, with good compression ratios (not as good as lzip,
539 but slightly better than gzip). Its high decompression throughput makes it a
540 good choice in situations where substitute downloads would otherwise be
541 CPU-bound, typically when having a high-speed connection to the substitute
542 server. Run @command{info \"(guix) Invoking guix publish\"} for more info.
543
544 To be able to fetch zstd-compressed substitutes (if the substitute servers you
545 chose provide them), you need to upgrade your daemon. Run @command{info
546 \"(guix) Upgrading Guix\"} to learn how to do it.")
547 (de "Mit dem Befehl @command{guix publish} können Sie jetzt auch
548 Substitute mit zstd komprimieren und @command{guix-daemon} kann sie laden und
549 dekomprimieren.
550
551 zstd bietet gegenüber den anderen Optionen einen hohen Durchsatz bei
552 Kompression und Dekompression mit guten Kompressionsverhältnissen (nicht so
553 gut wie lzip, aber etwas besser als gzip). Wegen des hohen Durchsatzes bei
554 der Dekompression ist zstd eine gute Wahl, wenn beim Herunterladen von
555 Substituten ansonsten der Engpass bei der Prozessorleistung läge, etwa weil
556 eine schnelle Netzwerkverbindung zum Substitutserver besteht. Führen Sie für
557 mehr Informationen @command{info \"(guix.de) Aufruf von guix publish\"} aus.
558
559 Um zstd-komprimierte Substitute benutzen zu können (wenn der Substitutserver
560 sie anbietet), müssen Sie Ihren Daemon aktualisieren. Führen Sie
561 @command{info \"(guix.de) Aktualisieren von Guix\"} aus, um zu erfahren, wie
562 Sie ihn aktualisieren.")
563 (fr "La commande @command{guix publish} peut maintenant compresser
564 les substituts avec zstd et @command{guix-daemon} est capable de les récupérer
565 et de les décompresser.
566
567 L'avantage de zstd par rapport aux autres méthodes est son haut débit en
568 compression et décompression, avec un taux de compression correct (pas aussi
569 bon que lzip, mais légèrement meilleur que gzip). Sa vitesse de décompression
570 en fait un bon choix dans les situations où le temps de téléchargement des
571 substituts se retrouve sinon limité par le temps de calcul comme c'est le cas
572 lorsqu'on bénéficie d'une connexion rapide au serveur de substitut. Lancer
573 @command{info \"(guix.fr) Invoquer guix publish\"} pour plus d'informations.
574
575 Pour pouvoir télécharger des substituts compressés avec zstd (si les serveurs
576 de substituts choisis les fournissent), il faudra d'abord mettre à jour le
577 démon. Lancer @command{info \"(guix.fr) Mettre à niveau Guix\"} pour voir
578 comment faire.")))
579
580 (entry (commit "e38d90d497e19e00263fa28961c688a433154386")
581 (title (en "New @option{--with-patch} package transformation option")
582 (de "Neue Paketumwandlungsoption @option{--with-patch}")
583 (fr "Nouvelle option de transformation @option{--with-patch}"))
584 (body
585 (en "The new @option{--with-patch} package transformation option
586 applies patches to the specified packages before building them. The example
587 below builds the GNU Core Utilities against a patched C library (glibc):
588
589 @example
590 guix build coreutils --with-patch=glibc=./glibc-frob.patch
591 @end example
592
593 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
594 (de "Die neue Paketumwandlungsoption @option{--with-patch} wendet
595 Patches auf die angegebenen Pakete an, bevor sie erstellt werden. Das folgende
596 Beispiel lässt die GNU Core Utilities mit einer gepatchten
597 C-Bibliothek (glibc) erstellen:
598
599 @example
600 guix build coreutils --with-patch=glibc=./glibc-frob.patch
601 @end example
602
603 Führen Sie für mehr Informationen @command{info \"(guix.de)
604 Paketumwandlungsoptionen\"} aus.")
605 (fr "La nouvelle option de transformation de paquets
606 @option{--with-patch} applique des modifications (@i{patches}) aux paquets
607 spécifiés avant de les compiler. L'exemple suivant compile les utilitaires de
608 base GNU avec une bibliothèque C (glibc) modifiée :
609
610 @example
611 guix build coreutils --with-patch=glibc=./glibc-frob.patch
612 @end example
613
614 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
615 plus de détails.")))
616
617 (entry (commit "79f9dee3c4c0e6d21066f142116a537207ae7ba4")
618 (title (en "Local substitute servers discovery is now supported")
619 (de "Substitutserver können jetzt im lokalen Netz erkannt werden")
620 (es "Los servidores de sustituciones se pueden descubrir localmente")
621 (fr "La découverte des serveurs de substituts locaux est désormais supportée"))
622 (body
623 (en "The @command{guix-daemon} can now discover local substitute
624 servers when the @option{--discover} option is passed. Only the substitute
625 servers started with the @option{--advertise} option will be discovered. The
626 network discovery is based on mDNS and DNS-SD protocols, using Guile-Avahi
627 library for now.")
628 (de "Mit dem @command{guix-daemon} können jetzt lokal laufende
629 Substitutserver erkannt werden, wenn die Befehlszeilenoption
630 @option{--discover} übergeben wurde. Nur solche Substitutserver werden
631 gefunden, die mit der Befehlszeilenoption @option{--advertise} gestartet
632 wurden. Die Ermittlung im Netzwerk verfügbarer Substitutserver baut auf den
633 Protokollen mDNS und DNS-SD auf. Derzeit wird dazu die Bibliothek Guile-Avahi
634 benutzt.")
635 (es "El daemon @command{guix-daemon} ahora puede descubrir servidores
636 de sustituciones locales cuando se le proporciona la opción
637 @option{--discover}. Únicamente se descubrirán los servidores de
638 sustituciones que se hayan arrancado con la opción @option{--advertise}. La
639 búsqueda en la red se basa en los protocolos mDNS y DNS-SD, actualmente
640 mediante el uso de la biblioteca Guile-Avahi.")
641 (fr "Le @command{guix-daemon} peut désormais découvrir les serveurs
642 de substituts locaux lorsque l'option @option{--discover} est passée. Seuls
643 les serveurs de substituts démarrés avec l'option @option{--advertise} seront
644 découverts. La découverte réseau utilise les protocoles mDNS et DNS-SD, pour
645 l'instant grâce à la librairie Guile-Avahi.")))
646
647 (entry (commit "a9a2fdaabcc78e7a54d9a6bcfa4ee3de308e9a90")
648 (title (en "Logical Volume Manager (LVM) now supported on Guix System")
649 (de "Logical Volume Manager (LVM) wird jetzt auf Guix System unterstützt")
650 (es "El sistema Guix ahora implementa también volúmenes lógicos LVM")
651 (fr "Le gestionnaire de volumes logiques (LVM) est maintenant pris en charge par le système Guix"))
652 (body
653 (en "On Guix System, the new @code{lvm-device-mapping} variable
654 allows you to declare ``mapped devices'' for LVM, the Linux Logical Volume
655 Manager. For example, LVM logical volumes ``alpha'' and ``beta'' from volume
656 group ``vg0'' can be declared as follows:
657
658 @lisp
659 (mapped-device
660 (source \"vg0\")
661 (target (list \"vg0-alpha\" \"vg0-beta\"))
662 (type lvm-device-mapping))
663 @end lisp
664
665 See @command{info \"(guix) Mapped Devices\"} for more information.")
666 (de "Auf Guix System erlaubt Ihnen die neue Variable
667 @code{lvm-device-mapping}, „zugeordnete Geräte“ (Mapped Devices) für LVM, den
668 Linux Logical Volume Manager, zu deklarieren. Zum Beispiel können logische
669 Datenträger von LVM namens „alpha“ und „beta“ aus der
670 Datenträgergruppe (Volume Group) „vg0“ wie folgt deklariert werden:
671
672 @lisp
673 (mapped-device
674 (source \"vg0\")
675 (target (list \"vg0-alpha\" \"vg0-beta\"))
676 (type lvm-device-mapping))
677 @end lisp
678
679 Siehe @command{info \"(guix.de) Zugeordnete Geräte\"} für nähere Informationen.")
680 (es "En el sistema Guix, la nueva variable @code{lvm-device-mapping}
681 le permite declarar «dispositivos traducidos» para LVM, el gestor de volúmenes
682 lógicos de Linux. A continuación se muestra un ejemplo con la declaración de
683 los volúmenes lógicos «alfa» y «beta» del grupo de volúmenes «vg0»:
684
685 @lisp
686 (mapped-device
687 (source \"vg0\")
688 (target (list \"vg0-alfa\" \"vg0-beta\"))
689 (type lvm-device-mapping))
690 @end lisp
691
692 Véase @command{info \"(guix.es) Dispositivos traducidos\"} para obtener más
693 información.")
694 (fr "Sur le système Guix, la nouvelle variable @code{lvm-device-mapping}
695 vous permet de déclarer des « périphériques mappés » pour LVM, le gestionnaire
696 de volumes logiques. Par exemple, vous pouvez déclarer les volumes logiques
697 « alpha » et « beta » du groupe « vg0 » comme ceci :
698
699 @lisp
700 (mapped-device
701 (source \"vg0\")
702 (target (list \"vg0-alpha\" \"vg0-beta\"))
703 (type lvm-device-mapping))
704 @end lisp
705
706 Voir @command{info \"(guix.fr) Périphériques mappés\"} pour en savoir plus.")))
707
708 (entry (commit "3b6e4e5fd05e72b8a32ff1a2d5e21464260e21e6")
709 (title (en "List of substitute keys is now declarative on Guix System")
710 (de "Liste der Substitutschlüssel auf Guix System ist jetzt deklarativ")
711 (es "Claves para sustituciones del sistema Guix en formato declarativo")
712 (fr "Liste des clefs de substituts désormais déclarative sur Guix System"))
713 (body
714 (en "The list of authorized substitute keys, available in
715 @file{/etc/guix/acl}, is now built by default in a purely declarative fashion
716 on Guix System based on the @code{authorized-keys} field of the configuration
717 of @code{guix-service-type}. This means that manual changes to
718 @file{/etc/guix/acl} are now @emph{discarded} upon reconfiguration or
719 reboot (a backup is made as @file{/etc/guix/acl.bak} in that case).
720
721 We recommend updating your operating system configuration to explicitly list
722 all the authorized substitute keys. See @command{info \"(guix) Base
723 Services\"}, for more info about @code{guix-configuration} and
724 @code{authorized-keys}.
725
726 Alternatively, you can set the @code{authorize-key?} field of
727 @code{guix-configuration} to @code{#f} to restore previous behavior.")
728 (de "Die Liste von autorisierten Substitutschlüsseln, die in
729 @file{/etc/guix/acl} steht, wird auf Guix System nach Vorgabe jetzt auf rein
730 deklarative Weise erstellt, je nach Inhalt des @code{authorized-keys}-Feldes
731 der Konfiguration des @code{guix-service-type}. Das hat zur Folge, dass
732 manuelle Änderungen an @file{/etc/guix/acl} von jetzt an nach jedem
733 Rekonfigurieren oder Neustarten @emph{verworfen} werden (in diesem Fall wird
734 eine Sicherheitskopie namens @file{/etc/guix/acl.bak} angelegt).
735
736 Wir empfehlen, dass Sie Ihre Betriebssystemkonfiguration aktualisieren, damit
737 dort alle autorisierten Substitutschlüssel ausdrücklich aufgeführt
738 werden. Siehe @command{info \"(guix.de) Basisdienste\"} für mehr Informationen
739 zur @code{guix-configuration} und @code{authorized-keys}.
740
741 Alternativ können Sie das @code{authorize-key?}-Feld der
742 @code{guix-configuration} auf @code{#f} setzen, um zum alten Verhalten
743 zurückzugehen.")
744 (es "El listado de claves autorizadas para la obtención de
745 sustituciones, disponible en @file{/etc/guix/acl}, ahora se genera de manera
746 predeterminada en el sistema Guix de forma completamente declarativa en base
747 al campo @code{authorized-keys} del la configuración para el servicio
748 @code{guix-service-type}. Esto significa que los cambios que se hayan
749 realizado de manera manual en @file{/etc/guix/acl} @emph{se descartan} tras
750 una reconfiguración del sistema o tras un reinicio (se realiza una copia de
751 seguridad en la ruta @file{/etc/guix/acl.bak} en este caso).
752
753 Le recomendamos que actualice su configuración del sistema operativo para que
754 enumere explícitamente todas las claves que desea autorizar para la obtención
755 de sustituciones. Véase @command{info \"(guix.es) Servicios base\"}, para
756 obtener más información sobre @code{guix-configuration} y
757 @code{authorized-keys}.
758
759 También puede proporcionar el valor @code{#f} en el campo
760 @code{authorize-key?} de @code{guix-configuration} para volver al
761 comportamiento que se obtenía con versiones previas.")
762 (fr "La liste des clefs de substituts autorisées, stockée dans
763 @file{/guix/guix/acl}, est dorénavant construite par défaut de manière
764 déclarative sur Guix System, en se basant sur le champs @code{authorized-keys}
765 de la configuration de @code{guix-service-type}. Cela signifie que les
766 modifications apportées manuellement à @file{/etc/guix/acl} seront désormais
767 @emph{perdues} lors d'une reconfiguration ou d'un redémarrage (dans ce cas une
768 sauvegarde est faite dans @file{/etc/guix/acl.bak}).
769
770 Nous recommandons de mettre à jour sa configuration de système d'exploitation
771 pour y lister explicitement les clefs autorisées. Lancez @command{info
772 \"(guix.fr) Services de base\"} pour plus d'informations sur
773 @code{guix-configuration} et @code{authorized-keys}.
774
775 Il est également possible de mettre le champs @code{authorize-key?} de
776 @code{guix-configuration} à @code{#f} pour restaurer le comportement qui
777 prévalait jusqu'à maintenant.")))
778
779 (entry (commit "6aeda81602555fbeac0c0a209e74f5262093b513")
780 (title (en "New @option{--with-debug-info} package transformation option")
781 (de "Neue Paketumwandlungsoption @option{--with-debug-info}")
782 (es "Nueva opción de transformación @option{--with-debug-info}")
783 (fr "Nouvelle option de transformation @option{--with-debug-info}"))
784 (body
785 (en "The new @option{--with-debug-info} option builds a variant of a
786 package that includes debug info and grafts it onto the application you want
787 to debug. Thus, only the package for which you want debug info needs to be
788 recompiled. This is useful for packages that do not already have a
789 @code{debug} output.
790
791 For example, here is how you would obtain debug info for the @code{glib}
792 library so you can inspect it while debugging Inkscape:
793
794 @example
795 guix build --with-debug-info=glib inkscape
796 @end example
797
798 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
799 (de "Die neue Paketumwandlungsoption @option{--with-debug-info} lässt
800 eine Variante eines Pakets erstellen, die auch Informationen zur Fehlersuche
801 enthält. Damit wird die Anwendung veredelt, wo Sie Fehler nachvollziehen
802 möchten. Somit muss nur das Paket, für das Sie die Informationen brauchen, neu
803 kompiliert werden. Das ist hilfreich bei Paketen, die noch nicht über eine
804 @code{debug}-Ausgabe verfügen.
805
806 Zum Beispiel würden Sie so Informationen zur Fehlersuche für die
807 @code{glib}-Bibliothek bekommen, um sie inspizieren zu können, wenn Sie Fehler
808 in Inkscape nachvollziehen möchten:
809
810 @example
811 guix build --with-debug-info=glib inkscape
812 @end example
813
814 Führen Sie für mehr Informationen @command{info \"(guix.de)
815 Paketumwandlungsoptionen\"} aus.")
816 (es "La nueva opción @option{--with-debug-info} construye una
817 variante del paquete que incluye la información de depuración y la injerta
818 en la aplicación que desee depurar. Por tanto, únicamente el paquete del
819 que desee información de depuración debe construirse de nuevo. Es útil
820 para paquetes que no tienen ya una salida @code{debug}.
821
822 El siguiente ejemplo muestra como obtener información de depuración
823 para la biblioteca @code{glib} de modo que pueda inspeccionarla mientras
824 depura Inkscape:
825
826 @example
827 guix build --with-debug-info=glib inkscape
828 @end example
829
830 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
831 para obtener más información.")
832 (fr "La nouvelle option de transformation de paquets
833 @option{--with-debug-info} compile une variante d'un paquet avec les
834 informations de déboguage et la greffe sur l'application que l'on veut
835 déboguer. Ainsi seul le paquet pour lequel on demande des informations de
836 déboguage a besoin d'être recompilé. C'est utile pour les paquets n'ayant pas
837 déjà un résultat @code{debug}.
838
839 Voici par exemple comment obtenir des informations de déboguage pour la
840 bibliothèque @code{glib} de manière à pouvoir l'inspecter quand on débuggue
841 Inkscape :
842
843 @example
844 guix build --with-debug-info=glib inkscape
845 @end example
846
847 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
848 plus de détails.")))
849
850 (entry (commit "abd7a474615353149a44f4504f0b4b248dcc0716")
851 (title (en "New @option{--with-c-toolchain} package transformation option")
852 (de "Neue Paketumwandlungsoption @option{--with-c-toolchain}")
853 (es "Nueva opción de transformación @option{--with-c-toolchain}")
854 (fr "Nouvelle option de transformation @option{--with-c-toolchain}"))
855 (body
856 (en "The new @option{--with-c-toolchain} package transformation
857 options provides an easy way for developers to rebuild their favorite packages
858 with the C/C++ tool chain of their choice instead of the default one.
859
860 For example, the following command rebuilds the @code{fftw} and @code{fftwf}
861 packages as well as every package that depends on them, up to and including
862 @code{octave-cli}, using GCC version 10 (currently GCC 7.5 is used by
863 default):
864
865 @example
866 guix build octave-cli \\
867 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
868 --with-c-toolchain=fftwf=gcc-toolchain@@10
869 @end example
870
871 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
872 (de "Die neue Paketumwandlungsoption @option{--with-c-toolchain}
873 bietet Entwicklern die Möglichkeit, leicht ihre Lieblingspakete mit der
874 selbstgewählten Toolchain für C/C++ anstelle der vorgegebenen neu zu
875 erstellen.
876
877 Zum Beispiel werden mit folgendem Befehl die Pakete @code{fftw} und
878 @code{fftwf} sowie alle davon abhängigen Pakete bis einschließlich
879 @code{octave-cli} mit Version 10 der GCC erstellt (vorgegeben wäre zurzeit,
880 GCC 7.5 zu benutzen):
881
882 @example
883 guix build octave-cli \\
884 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
885 --with-c-toolchain=fftwf=gcc-toolchain@@10
886 @end example
887
888 Führen Sie für mehr Informationen @command{info \"(guix.de)
889 Paketumwandlungsoptionen\"} aus.")
890 (es "La nueva opción de transformación de paquetes
891 @option{--with-c-toolchain} proporciona a las desarrolladoras una manera
892 fácil de reconstruir sus paquetes favoritos con la cadena de herramientas
893 de compilación de C/C++ que elijan en vez de la predeterminada.
894
895 Por ejemplo, la siguiente orden reconstruye los paquetes @code{fftw} y
896 @code{fftwf} así como todos los paquetes que dependen de ellos hasta
897 @code{octave-cli}, usando la versión 10 de GCC (el compilador
898 predeterminado en estos momentos es GCC 7.5):
899
900 @example
901 guix build octave-cli \\
902 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
903 --with-c-toolchain=fftwf=gcc-toolchain@@10
904 @end example
905
906 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
907 para obtener más información.")
908 (fr "La nouvelle option de transformation de paquets
909 @option{--with-c-toolchain} permet aux développeur·euses de recompiler leurs
910 paquets préférés avec la chaîne d'outils C/C++ de leur choix à la place de
911 celle par défaut.
912
913 Par exemple, la commande ci-dessous recompile @code{fftw}, @code{fftwf} et
914 tous les paquets qui en dépendent, jusqu'à @code{octave-cli} inclus, avec GCC
915 10 (actuellement c'est GCC 7.5 qui est utilisé par défaut):
916
917 @example
918 guix build octave-cli \\
919 --with-c-toolchain=fftw=gcc-toolchain@@10 \\
920 --with-c-toolchain=fftwf=gcc-toolchain@@10
921 @end example
922
923 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
924 plus de détails.")))
925
926 (entry (commit "8e1907a72430aa989125b053573ef0897c480697")
927 (title (en "Package transformation options now recorded in profiles")
928 (es "Las opciones de transformación de paquetes ahora se
929 quedan registradas en el perfil")
930 (de "Paketumwandlungsoptionen werden nun in Profilen gesichert")
931 (fr "Options de transformation sauvegardées dans les profils"))
932 (body
933 (en "When installing packages in a profile, package transformation
934 options such as @option{--with-input} are now recorded in the profile. When
935 you eventually run @command{guix upgrade}, those transformations will be
936 automatically applied to the upgraded packages.
937
938 Run @command{info \"(guix) Package Transformation Options\"} for more info.")
939 (es "Si durante la instalación de paquetes en un perfil se utilizaron
940 opciones de transformación de paquetes, como por ejemplo
941 @option{--with-input}, éstas se registran en el perfil. Cuando vuelva a
942 ejecutar @command{guix upgrade}, dichas transformaciones se aplicarán
943 automáticamente a los paquetes actualizados.
944
945 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
946 para obtener más información.")
947 (de "Wenn Sie ein Paket in ein Profil installieren, werden nun
948 Paketumwandlungsoptionen wie @option{--with-input} im Profil gespeichert.
949 Sobald Sie später @command{guix upgrade} ausführen, werden dieselben
950 Umwandlungen automatisch auf die aktualisierten Pakete angewandt.
951
952 Führen Sie für mehr Informationen @command{info \"(guix.de)
953 Paketumwandlungsoptionen\"} aus.")
954 (fr "Lorsqu'on installe des paquets dans un profil, les options de
955 transformation telles que @option{--with-input} sont désormais enregistrées
956 dans le profil. Quand on le met plus tard à jour avec @command{guix upgrade},
957 ces transformations sont automatiquement appliquées aux nouveaux paquets.
958
959 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
960 plus de détails.")))
961
962 (entry (commit "313f492657f1d0863c641fa5ee7f5b7028e27c94")
963 (title (en "New @option{--image-type} option for @command{guix system disk-image}.")
964 (es "Nueva opción @option{--image-type} para @command{guix system disk-image}.")
965 (de "Neue Option @option{--image-type} für @command{guix system disk-image}.")
966 (fr "Nouvelle option @option{--image-type} pour @command{guix system disk-image}."))
967 (body
968 (en "The @option{--file-system-type} option for @command{guix system
969 disk-image} command has been replaced by the new @option{--image-type} option.
970 By default, @code{raw} disk images are produced, but @code{hurd-qcow2},
971 @code{hurd-raw}, @code{uncompressed-iso9660} and @code{iso9660} image types
972 are also available.
973
974 The @option{--list-image-types} option lists all the available image types.")
975 (es "La opción @option{--file-system-type} de @command{guix system
976 disk-image} se ha sustituido por la nueva opción @option{--image-type}. De
977 manera predeterminada se producen imágenes en formato crudo (@code{raw}) pero
978 también están disponibles los tipos de imagen @code{hurd-qcow2},
979 @code{hurd-raw}, @code{uncompressed-iso9660} y @code{iso9660}.
980
981 La opción @option{--list-image-types} muestra una lista con todos los tipos
982 de imagen disponibles.")
983 (de "Anstelle der Befehlszeilenoption @option{--file-system-type} für
984 @command{guix system disk-image} gibt es nun die neue Option
985 @option{--image-type}. In der Vorgabeeinstellung @code{raw} werden rohe
986 Disk-Images erzeugt, aber es können auch die Abbildtypen @code{hurd-qcow2},
987 @code{hurd-raw}, @code{uncompressed-iso9660} und @code{iso9660} ausgewählt
988 werden.
989
990 Mit der Option @option{--list-image-types} werden alle verfügbaren Abbildtypen
991 aufgelistet.")
992 (fr "L'option @option{--file-system-type} pour la commande
993 @command{guix system disk-image} a été remplacée par la nouvelle option
994 @option{--image-type}. Par défaut, l'option @code{raw}, produisant des images
995 disque brutes est sélectionnée. Les options @code{hurd-qcow2},
996 @code{hurd-raw}, @code{uncompressed-iso9660} et @code{iso9660} sont également
997 disponibles.
998
999 La nouvelle option @option{--list-image-types} énumère les types d'image
1000 disponibles.")))
1001
1002 (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d")
1003 (title (en "Package transformations now apply to implicit inputs")
1004 (es "Las transformaciones de paquetes ahora afectan también
1005 a las dependencias implícitas")
1006 (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben")
1007 (fr "Les transformations de paquets s'appliquent aux
1008 dépendances implicites"))
1009 (body
1010 (en "Package transformation options such as @option{--with-branch},
1011 @option{--with-input}, and so on now apply to implicit inputs---previously
1012 only a package's explicit inputs would be affected. This allows for things
1013 such as replacing the Python dependency of a package that uses
1014 @code{python-build-system}:
1015
1016 @example
1017 guix install --with-input=python=python2 python-itsdangerous
1018 @end example
1019
1020 Another example is grafting a different version of the GNU C
1021 Library (@code{glibc} is an implicit input of almost all the packages and is
1022 ``deep down'' in the dependency graph):
1023
1024 @example
1025 guix build --with-graft=glibc=glibc@@2.31 hello
1026 @end example
1027
1028 Run @command{info \"(guix) Package Transformation Options\"} for more
1029 info.")
1030 (es "Las opciones de transformación de paquetes como
1031 @option{--with-branch}, @option{--with-input}, etcétera, ahora también
1032 influyen en las entradas implícitas---antes únicamente las entradas explícitas
1033 del paquete se veían afectadas. Esto permite, por ejemplo, sustituir la
1034 dependencia en python de un paquete que use @code{python-build-system}:
1035
1036 @example
1037 guix install --with-input=python=python2 python-itsdangerous
1038 @end example
1039
1040 Otro ejemplo podría ser el injerto de una versión diferente de la biblioteca
1041 de C de GNU (@code{glibc} es una entrada implícita de casi todos los paquetes
1042 y ``muy abajo'' en el grafo de dependencias):
1043
1044 @example
1045 guix build --with-graft=glibc=glibc@@2.31 hello
1046 @end example
1047
1048 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
1049 para obtener más información.")
1050 (de "Paketumwandlungsoptionen wie @option{--with-branch},
1051 @option{--with-input} und so weiter betreffen nun auch implizite Eingaben —
1052 zuvor haben sie sich nur auf die expliziten Eingaben eines Pakets
1053 ausgewirkt. Dadurch kann jetzt zum Beispiel die Python-Abhängigkeit eines
1054 Pakets, welches @code{python-build-system} benutzt, ersetzt werden:
1055
1056 @example
1057 guix install --with-input=python=python2 python-itsdangerous
1058 @end example
1059
1060 Ein weiteres Beispiel ist, mit einer anderen Version der GNU-C-Bibliothek zu
1061 veredeln (@code{glibc} ist eine implizite Eingabe fast aller Pakete und steckt
1062 „ganz tief“ im Abhängigkeitsgraphen):
1063
1064 @example
1065 guix build --with-graft=glibc=glibc@@2.31 hello
1066 @end example
1067
1068 Führen Sie für mehr Informationen @command{info \"(guix.de)
1069 Paketumwandlungsoptionen\"} aus.")
1070 (fr "Les options de transformation de paquets telles que
1071 @option{--with-branch} et @option{--with-input} s'appliquent désormais aux
1072 dépendances implicites — jusque là seules les dépendances explicites des
1073 paquets étaient prises en compte. Cela permet certaines choses telles que
1074 remplacer la dépendance sur Python d'un paquet utilisant
1075 @code{python-build-system} :
1076
1077 @example
1078 guix install --with-input=python=python2 python-itsdangerous
1079 @end example
1080
1081 Un autre exemple est la possibilité de greffer une version différente de la
1082 bibliothèque C GNU (la @code{glibc} est une dépendance implicite de tous les
1083 paquets et se trouve « tout en bas » du graphe de dépendance) :
1084
1085 @example
1086 guix build --with-graft=glibc=glibc@@2.31 hello
1087 @end example
1088
1089 Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
1090 plus de détails.")))
1091
1092 (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74")
1093 (title (en "New @option{--without-tests} transformation option")
1094 (es "Nueva opción de transformación @option{--without-tests}")
1095 (de "Neue Paketumwandlungsoption @option{--without-tests}")
1096 (fr "Nouvelle option de transformation @option{--without-tests}"))
1097 (body
1098 (en "The new @option{--without-tests} package transformation option
1099 instructs Guix to skip the test suite of a given package. In the example
1100 below, @code{guile-gcrypt} is built using a variant of @code{automake} itself
1101 built without running its (lengthy) test suite:
1102
1103 @example
1104 guix build guile-gcrypt --without-tests=automake
1105 @end example
1106
1107 This is primarily useful as a way to speed up development cycles, or to work
1108 around flaky test suites---skipping tests can hide real issues, so use with
1109 care. Run @command{info \"(guix) Package Transformation Options\"} for more
1110 info.")
1111 (es "La nueva opción de transformación de paquetes
1112 @option{--without-tests} indica a Guix que omita la batería de pruebas del
1113 paquete proporcionado. En el siguiente ejemplo @code{guile-gcrypt} se
1114 construye usando una variación de @code{automake}, la cual se ha construido
1115 sin ejecutar su (larga) batería de pruebas:
1116
1117 @example
1118 guix build guile-gcrypt --without-tests=automake
1119 @end example
1120
1121 Esto es principalmente útil como una forma de acelerar ciclos de desarrollo o
1122 de omitir temporalmente baterías de pruebas problemáticas---omitir las pruebas
1123 puede ocultar problemas reales, por lo que debe usarse con precaución.
1124 Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
1125 para obtener más información.")
1126 (de "Mit der neuen Paketumwandlungsoption @option{--without-tests}
1127 wird Guix angewiesen, den Testkatalog des angegebenen Pakets zu
1128 überspringen. Im folgenden Beispiel wird @code{guile-gcrypt} mit einer
1129 Variante von @code{automake} erstellt, die wiederum ohne Durchlauf ihres (viel
1130 Zeit in Anspruch nehmenden) Testkatalogs erstellt wird:
1131
1132 @example
1133 guix build guile-gcrypt --without-tests=automake
1134 @end example
1135
1136 Der hauptsächliche Nutzen liegt in der Beschleunigung von Entwicklungszyklen
1137 oder im Umgehen unzuverlässiger Testkataloge. Allerdings kann das Überspringen
1138 dazu führen, dass echte Probleme verborgen bleiben. Setzen Sie es mit Bedacht
1139 ein. Führen Sie @command{info \"(guix.de) Paketumwandlungsoptionen\"} aus, um
1140 mehr Informationen zu erhalten.")
1141 (fr "La nouvelle option de transformation de paquets
1142 @option{--without-tests} demande à Guix de sauter la suite de tests d'un
1143 paquet. Dans l'exemple ci-dessous, @code{guile-gcrypt} est construit en
1144 utilisant une variante de @code{automake} construite sans lancer sa suite de
1145 tests :
1146
1147 @example
1148 guix build guile-gcrypt --without-tests=automake
1149 @end example
1150
1151 Cette option est surtout intéressante pour raccourcir le cycle de
1152 développement ou pour contourner une suite de tests qui n'est pas
1153 fiable — sauter les tests peut cacher des vrais problèmes, à utiliser avec
1154 précaution donc. Voir @command{info \"(guix.fr) Options de transformation de
1155 paquets\"} pour plus de détails.")))
1156
1157 (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f")
1158 (title (en "New @command{guix git authenticate} command")
1159 (es "Nueva orden @command{guix git authenticate}")
1160 (de "Neuer Befehl @command{guix git authenticate}")
1161 (fr "Nouvelle commande @command{guix git authenticate}"))
1162 (body
1163 (en "The new @command{guix git authenticate} command authenticates a
1164 Git repository by verifying commit signatures and ensuring they all come from
1165 authorized parties, exactly like @command{guix pull} now does.
1166
1167 This command is primarily useful to developers of channels. It allows them to
1168 ensure, before pushing, that the channel only contains commits signed with
1169 authorized keys. But this command is also useful anytime you use Git and want
1170 to allow people to authenticate code fetched from your repository.
1171
1172 Run @command{info \"(guix) Invoking guix git authenticate\"} for more info,
1173 and see @uref{https://guix.gnu.org/blog/2020/securing-updates/} for details on
1174 these mechanisms.")
1175 (es "La nueva orden @command{guix git authenticate} comprueba la
1176 validez de un repositorio git verificando las firmas de las revisiones y
1177 comprobando que todas las firmas están autorizadas, exactamente igual que
1178 @command{guix pull}.
1179
1180 Esta orden es principalmente útil para desarrolladoras de canales. Permite
1181 asegurar, antes de subir nada al repositorio remoto, que el canal contiene
1182 únicamente revisiones firmadas por claves autorizadas. No obstante esta orden
1183 es útil siempre que use git y quiera que otras personas puedan verificar el
1184 código obtenido de su repositorio.
1185
1186 Ejecute @command{info \"(guix.es) Invocación de guix git authenticate\"}
1187 para obtener más información y vea detalles sobre estos mecanismos en
1188 @uref{https://guix.gnu.org/blog/2020/securing-updates/}.")
1189 (de "Mit dem neuen Befehl @command{guix git authenticate} können Sie
1190 ein Git-Repository authentifizieren. Dazu werden alle Commit-Signaturen
1191 verifiziert und geprüft, dass jede von einer autorisierten Quelle kommt, genau
1192 wie es @command{guix pull} nun tut.
1193
1194 Dieser Befehl hilft in erster Linie den Entwicklern von Kanälen. Mit ihm kann
1195 vor einem Push sichergestellt werden, dass der Kanal nur Commits enthält, die
1196 mit autorisierten Schlüsseln signiert worden sind. Aber der Befehl kann auch
1197 helfen, wann immer Sie Git verwenden und ermöglichen wollen, dass Nutzer von
1198 Ihrem Repository geladenen Code authentifizieren können.
1199
1200 Führen Sie @command{info \"(guix) Invoking guix git authenticate\"} aus, um
1201 mehr Informationen zu erhalten, und lesen Sie
1202 @uref{https://guix.gnu.org/blog/2020/securing-updates/} für die Details dieser
1203 Mechanismen.")
1204 (fr "La nouvelle commande @command{guix git authenticate} authentifie
1205 un dépôt Git en vérifiant les signatures sur les changements (@i{commits}) et
1206 en s'assurant qu'elles sont autorisées, exactement comme @command{guix pull}
1207 le fait désormais.
1208
1209 Cette commande est avant tout utile aux personnes développant un canal. Elle
1210 leur permet de s'assurer, avant de pousser des changements, que le canal ne
1211 contient que des changements signés par des clefs autorisées. Mais cette
1212 commande peut aussi s'avérer utile dès que tu veux utiliser Git et permettre
1213 aux autres d'authentifier le code récupéré depuis ton dépôt.
1214
1215 Lance @command{info \"(guix.fr) Invoking guix git authenticate\"} pour plus
1216 d'informations. Voir @uref{https://guix.gnu.org/blog/2020/securing-updates/}
1217 pour en savoir plus sur ces mécanismes.")))
1218
1219 (entry (commit "43badf261f4688c8a7a7a9004a4bff8acb205835")
1220 (title (en "@command{guix pull} authenticates channels")
1221 (es "@command{guix pull} verifica los canales")
1222 (de "@command{guix pull} authentifiziert Kanäle")
1223 (fr "@command{guix pull} authentifie les canaux"))
1224 (body
1225 (en "The @command{guix pull} and @command{guix time-machine} commands
1226 now authenticate the source code that they pull, unless the new
1227 @option{--disable-authentication} option is passed. What this means is that
1228 Guix ensures that each commit received is cryptographically signed by an
1229 authorized developer. This protects you from attempts to tamper with the Guix
1230 repository and from attempts to ship malicious code to users.
1231
1232 This feature is currently limited to the @code{guix} channel but will soon be
1233 available to third-party channel authors.")
1234 (es "Las ordenes @command{guix pull} y @command{guix time-machine}
1235 ahora verifican el código fuente que obtienen, a menos que se proporcione la
1236 opción @option{--disable-authentication}. Lo que esto significa es que Guix se
1237 asegura de que cada revisión que recibe está firmada criptográficamente por
1238 una desarrolladora autorizada. Esto le protege de intentos de modificación del
1239 repositorio de Guix y de entregas de código con malas intenciones sobre las
1240 usuarias.
1241
1242 Esta característica está limitada actualmente al canal @code{guix} pero pronto
1243 estará disponible para autoras de canales independientes.")
1244 (de "Die Befehle @command{guix pull} und @command{guix time-machine}
1245 prüfen nun die Authentizität des heruntergeladenen Quellcodes, außer wenn die
1246 neue Befehlszeilenoption @option{--disable-authentication} angegeben
1247 wurde. Das bedeutet, Guix stellt sicher, dass jeder empfangene Commit durch
1248 einen autorisierten Entwickler kryptografisch signiert wurde. Das schützt Sie
1249 vor Versuchen, das Guix-Repository zu manipulieren oder bösartigen Code an die
1250 Nutzer auszuliefern.
1251
1252 Diese Funktionalität ist auf den @code{guix}-Kanal beschränkt, sie wird jedoch
1253 bald auch Autoren dritter Kanäle zur Verfügung stehen.")
1254 (fr "Les commandes @command{guix pull} et @command{guix time-machine}
1255 authentifient dorénavant le code source qu'elles obtiennent, à moins que la
1256 nouvelle option @option{--disable-authentication} soit utilisée. Cela
1257 signifie que Guix s'assure que chaque soumission (@i{commit}) récupéré dispose
1258 d'une signature cryptographique par un·e développeur·euse autorisé·e. Cela te
1259 protège de tentatives de modifications du dépôt Guix et de tentatives de
1260 livrer du code malintentionné.
1261
1262 Cette fonctionnalité n'est actuellement disponible que pour le canal
1263 @code{guix} mais le sera bientôt pour les canaux tiers.")))
1264
1265 (entry (commit "c924e541390f9595d819edc33c19d979917c15ec")
1266 (title (en "@command{guix repl} adds support for running Guile scripts")
1267 (es "@command{guix repl} puede ejecutar guiones de Guile")
1268 (de "@command{guix repl} kann Guile-Skripte ausführen")
1269 (fr "@command{guix repl} permet d'exécuter des scripts en langage Guile"))
1270 (body
1271 (en "The @command{guix repl} command can now be used to run
1272 Guile scripts. Compared to just launching the @command{guile} command,
1273 @command{guix repl} guarantees that all the Guix modules and all its
1274 dependencies are available in the search path. Scripts are run like this:
1275
1276 @example
1277 guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
1278 @end example
1279
1280 Run @command{info \"(guix) Invoking guix repl\"} for more information.")
1281 (es "La orden @command{guix repl} ahora se puede usar para
1282 ejecutar guiones de Guile. En comparación con únicamente la ejecución
1283 de la orden @command{guile}, @command{guix repl} garantiza que todos
1284 los módulos de Guix y sus dependencias están disponibles en la ruta
1285 de búsqueda. Los guiones se ejecutan de este modo:
1286
1287 @example
1288 guix repl -- mi-guion.scm --opcion1 --opcion2=param-op2 param1 param2
1289 @end example
1290
1291 Ejecute @command{info \"(guix.es) Invocación de guix repl\"} para obtener
1292 más información.")
1293 (de "Der Befehl @command{guix repl} kann jetzt zur Ausführung von
1294 Guile-Skripten verwendet werden. Im Vergleich zum Befehl
1295 @command{guile} garantiert @command{guix repl}, dass alle Guix-Module und
1296 alle seine Abhängigkeiten im Suchpfad verfügbar sind. Skripte werden wie
1297 folgt ausgeführt:
1298
1299 @example
1300 guix repl -- my-script,scm --option1 --option2 --option2=option-arg arg1 arg2
1301 @end example
1302
1303 Weitere Informationen erhalten Sie mit
1304 @command{info \"(guix.de) Aufruf von guix repl\"}.")
1305 (fr "La commande @command{guix repl} peut maintenant être utilisée
1306 pour exécuter des scripts en langage Guile. Par rapport au simple lancement
1307 de la commande @command{guile}, @command{guix repl} garantit que tous les
1308 modules Guix et toutes ses dépendances sont disponibles dans le chemin
1309 de recherche. Les scripts sont exécutés comme ceci :
1310
1311 @example
1312 guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
1313 @end example
1314
1315 Exécutez @command{info \"(guix.fr) Invoquer guix repl\"} pour plus d'informations.")))
1316
1317 (entry (commit "b460ba7992a0b4af2ddb5927dcf062784539ef7b")
1318 (title (en "Add support to boot from a Btrfs subvolume")
1319 (es "Implementado el arranque desde un subvolumen de Btrfs")
1320 (de "Unterstützung für Systemstart von einem
1321 Btrfs-Unterlaufwerk hinzugefügt")
1322 (fr "Ajout du support pour démarrer depuis un sous-volume Btrfs")
1323 (nl "Nieuwe ondersteuning voor het opstarten vanaf een Btrfs-subvolume"))
1324 (body
1325 (en "The generation of the GRUB configuration file produced from an
1326 operating system declaration now takes into account the use of a Btrfs
1327 subvolume for the partition holding @file{/gnu/store}. Run the command
1328 @command{info \"(guix) Btrfs file system\"} for more information and
1329 examples.")
1330 (es "El fichero de configuración de GRUB producido por la
1331 declaración de sistema operativo ahora tiene en cuenta el uso de
1332 subvolúmenes de Btrfs en la partición que contiene @file{/gnu/store}.
1333 Ejecute la orden @command{info \"(guix.es) Sistema de ficheros Btrfs\"}
1334 para obtener más información y ejemplos.")
1335 (de "Für die Erzeugung einer GRUB-Konfigurationsdatei aus einer
1336 Betriebssystemdeklaration kann jetzt ein Btrfs-Unterlaufwerk („Subvolume“) für
1337 die Partition mit @file{/gnu/store} angegeben werden. Führen Sie
1338 @command{info \"(guix) Btrfs file system\"} aus, wenn Sie mehr Informationen
1339 und Beispiele sehen möchten.")
1340 (fr "La génération du fichier de configuration de GRUB produite à
1341 partir de la déclaration d'un @code{operating-system} tient maintenant compte
1342 de l'utilisation d'un sous-volume Btrfs pour la partition contenant
1343 @file{/gnu/store}. Exécutez la commande @command{info\"(guix) Btrfs file
1344 system\"} pour des exemples et plus d'information.")
1345 (nl "Het opmaken van het GRUB-configuratiebestand op basis van
1346 een @code{operating-system}-declaratie houdt nu rekening met het gebruik van
1347 een Btrfs-subvolume voor de partitie die @file{/gnu/store} bevat. Voer
1348 @command{info \"(guix) Btrfs file system\"} uit voor meer informatie en
1349 voorbeelden.")))
1350
1351 (entry (commit "6456232164890dbf5aa20394ee24637feb4b7b9e")
1352 (title (en "@command{guix pack -RR} introduces a new execution
1353 engine")
1354 (es "@command{guix pack -RR} introduce un nuevo motor
1355 de ejecución")
1356 (de "@command{guix pack -RR} führt neuen Ausführungstreiber
1357 ein")
1358 (fr "@command{guix pack -RR} introduit un nouveau moteur d'exécution"))
1359 (body
1360 (en "The @command{guix pack -RR} command allows you to create a
1361 tarball containing @dfn{relocatable binaries}. Until now, those would rely
1362 either on Linux ``unprivileged user namespaces'' or on PRoot, when
1363 unprivileged user namespaces are not supported. However, PRoot introduces
1364 significant overhead for some workloads.
1365
1366 To address that, @command{guix pack -RR} introduces a third option based on an
1367 extension to the GNU run-time linker (ld.so) and on Fakechroot, which incurs
1368 very little overhead. You can select the fastest option when executing a
1369 relocatable binary like this:
1370
1371 @example
1372 GUIX_EXECUTION_ENGINE=performance
1373 export GUIX_EXECUTION_ENGINE
1374 @end example
1375
1376 Run @command{info \"(guix) Invoking guix pack\"} for more information.")
1377 (es "La orden @command{guix pack -RR} le permite crear un
1378 archivador tar que contiene @dfn{binarios reposicionables}. Hasta ahora
1379 dichos binarios dependían o bien de los ``espacios de nombres de usuarias
1380 sin privilegios'' de Linux o en PRoot, cuando estos no estaban
1381 implementados. No obstante, PRoot introduce una sobrecarga significativa
1382 en algunos escenarios de trabajo.
1383
1384 Para estos casos @command{guix pack -RR} introduce una tercera opción
1385 basada en una extensión al enlazador de tiempo de ejecución de GNU (ld.so)
1386 y en Fakechroot, lo que conlleva muy poca sobrecarga. Puede seleccionar
1387 la opción más rápida cuando ejecute un binario reposicionable de esta
1388 manera:
1389
1390 @example
1391 GUIX_EXECUTION_ENGINE=performance
1392 export GUIX_EXECUTION_ENGINE
1393 @end example
1394
1395 Ejecute @command{info \"(guix.es) Invocación de guix pack\"} para
1396 obtener más información.")
1397 (de "Mit dem Befehl @command{guix pack -RR} können Sie einen Tarball
1398 mit @dfn{verschieblichen Binärdateien} erzeugen (englisch „Relocatable
1399 Binaries“). Bisher wurden diese entweder in „unprivilegierten
1400 Benutzernamensräumen“ ohne Berechtigungen ausgeführt, oder in PRoot, wenn
1401 keine unprivilegierten Benutzernamensräume unterstützt wurden. Allerdings
1402 fällt bei der Ausführung mit PRoot bei manchen Anwendungen deutlich mehr
1403 Rechenaufwand an.
1404
1405 Um dem entgegenzuwirken, stellt @command{guix pack -RR} nun eine dritte Option
1406 zur Verfügung, die sich eine Erweiterung des GNU-Laufzeit-Binders („Run-Time
1407 Linker“, ld.so) und Fakechroot zu Nutze macht. Dadurch entsteht fast kein
1408 Mehraufwand. Sie können sich die schnellste Option aussuchen, wenn Sie eine
1409 verschiebliche Binärdatei ausführen, zum Beispiel so:
1410
1411 @example
1412 GUIX_EXECUTION_ENGINE=performance
1413 export GUIX_EXECUTION_ENGINE
1414 @end example
1415
1416 Führen Sie @command{info \"(guix.de) Aufruf von guix pack\"} aus, wenn Sie
1417 mehr wissen wollen.")
1418 (fr "La commande @command{guix pack -RR} vous permet de créer une
1419 archive tar contenant des @dfn{binaires repositionnables}. Jusqu'ici, ils
1420 s'appuyaient sur les « espaces de noms non privilégiés » de Linux ou sur
1421 PRoot, quand les espaces de noms non privilégiés n'étaient pas disponibles.
1422 Cependant, PRoot ralenti significativement certains profils d'exécution.
1423
1424 Pour éviter cela, @command{guix pack -RR} introduit une troisième possibilité
1425 basée sur une extension de l'éditeur des liens à l'exécution de GNU (ld.so) et
1426 sur Fakechroot, qui ralenti très peu l'exécution. Vous pouvez choisir l'option
1427 la plus rapide à l'exécution d'un binaire relocalisable de cette manière :
1428
1429 @example
1430 GUIX_EXECUTION_ENGINE=performance
1431 export GUIX_EXECUTION_ENGINE
1432 @end example
1433
1434 Lancez @command{info \"(guix.fr) Invoquer guix pack\"} pour en savoir plus.")))
1435
1436 (entry (commit "88a96c568c47c97d05d883ada5afbc4e1200b10f")
1437 (title (en "New @option{--path} option for @command{guix graph}")
1438 (es "Nueva opción @option{--path} para @command{guix graph}")
1439 (de "Neue Option @option{--path} für @command{guix graph}")
1440 (fr "Nouvelle option @option{--path} pour @command{guix graph}"))
1441 (body
1442 (en "The @command{guix graph} command has a new @option{--path}
1443 option that instructs it to display the shortest path between two packages,
1444 derivations, or store items. For example, the command below displays the
1445 shortest path from the @code{libreoffice} package to @code{libunistring}:
1446
1447 @example
1448 guix graph --path libreoffice libunistring
1449 @end example
1450
1451 Run @code{info \"(guix) Invoking guix graph\"} for more information.")
1452 (es "La orden @command{guix graph} tiene una nueva opción
1453 @option{--path} que le indica que debe mostrar la ruta más corta entre dos
1454 paquetes, derivaciones o elementos del almacén. Por ejemplo, la siguiente
1455 orden muestra la ruta más corta desde el paquete @code{libreoffice} hasta
1456 @code{libunistring}:
1457
1458 @example
1459 guix graph --path libreoffice libunistring
1460 @end example
1461
1462 Ejecute @code{info \"(guix.es) Invocación de guix graph\"} para obtener más
1463 información.")
1464 (de "Der Befehl @command{guix graph} verfügt über eine neue
1465 Befehlszeilenoption @option{--path}, die ihn den kürzesten Pfad zwischen zwei
1466 Paketen, Ableitungen oder Store-Objekten ausgeben lässt. Zum Beispiel zeigt
1467 folgender Befehl den kürzesten Pfad vom Paket @code{libreoffice} zu
1468 @code{libunistring}:
1469
1470 @example
1471 guix graph --path libreoffice libunistring
1472 @end example
1473
1474 Führen Sie @code{info \"(guix.de) Aufruf von guix graph\"} aus, um mehr zu
1475 erfahren.")
1476 (fr "La commande @command{guix graph} a une nouvelle option
1477 @option{--path} qui lui dit d'afficer le plus court chemin entre deux
1478 paquets, dérivations ou éléments du dépôt. Par exemple, la commande ci-dessous
1479 affiche le plus court chemin entre le paquet @code{libreoffice} et
1480 @code{libunistring} :
1481
1482 @example
1483 guix graph --path libreoffice libunistring
1484 @end example
1485
1486 Lancez @code{info \"(guix.fr) Invoquer guix graph\"} pour en savoir plus.")))
1487
1488 (entry (commit "a33eac038a811603c8b9ed106ae405a5f80a0e9d")
1489 (title (en "GNU C Library upgraded")
1490 (de "GNU-C-Bibliothek aktualisiert")
1491 (es "Actualización de la biblioteca C de GNU")
1492 (fr "Mise à jour de la bibliothèque C de GNU")
1493 (nl "GNU C-bibliotheek bijgewerkt"))
1494 (body
1495 (en "The GNU C Library (glibc) has been upgraded to version 2.31. To
1496 run previously-installed programs linked against glibc 2.29, you need to
1497 install locale data for version 2.29 in addition to locale data for 2.31:
1498
1499 @example
1500 guix install glibc-locales glibc-locales-2.29
1501 @end example
1502
1503 On Guix System, you can adjust the @code{locale-libcs} field of your
1504 @code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
1505 info.")
1506 (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.31
1507 aktualisiert. Um zuvor installierte Programme, die an glibc 2.29 gebunden
1508 worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
1509 2.29 zusätzlich zu den Locale-Daten für 2.31 installieren:
1510
1511 @example
1512 guix install glibc-locales glibc-locales-2.29
1513 @end example
1514
1515 Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
1516 @code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
1517 Locales\"} aus, um weitere Informationen dazu zu erhalten.")
1518 (es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
1519 2.31. Para ejecutar programas instalados previamente que se encuentren
1520 enlazados con glibc 2.29, es necesario que instale los datos de localización
1521 de la versión 2.29 junto a los datos de localización de la versión 2.31:
1522
1523 @example
1524 guix install glibc-locales glibc-locales-2.29
1525 @end example
1526
1527 En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
1528 declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
1529 Localizaciones\"} para obtener más información.")
1530 (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
1531 2.31. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.29,
1532 tu dois installer les données pour la version 2.29 en plus des données de
1533 régionalisation pour la version 2.31:
1534
1535 @example
1536 guix install glibc-locales glibc-locales-2.29
1537 @end example
1538
1539 Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
1540 @code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
1541 plus de détails.")
1542 (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.31.
1543 Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.29
1544 gebonden zijn, moet u de regionale informatie van versie 2.29 naast die van
1545 versie 2.31 installeren:
1546
1547 @example
1548 guix install glibc-locales glibc-locales-2.29
1549 @end example
1550
1551 Op Guix System kunt u het @code{locale-libcs}-veld van uw
1552 @code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
1553 uit voor verdere uitleg.")))
1554
1555 (entry (commit "e1e6491226347d9fb93ff484d78cef98848a510a")
1556 (title (en "Guix Cookbook now available as Info")
1557 (de "Guix-Kochbuch jetzt als Info-Dokument verfügbar"))
1558 ;; TRANSLATORS: Adjust the URL and the 'info' command to refer to the
1559 ;; translated manual if it's available.
1560 (body (en "The new Guix Cookbook is now fetched by @command{guix pull}
1561 and thus readily available in the Info format. It aims to provide tutorials
1562 and detailed examples covering a variety of use cases. You can access it by
1563 typing:
1564
1565 @example
1566 info guix-cookbook
1567 @end example
1568
1569 The Cookbook is currently available in English and German. You can also find
1570 it @uref{https://guix.gnu.org/cookbook/en/, on-line}.
1571
1572 Your contributions are welcome: @uref{https://guix.gnu.org/contact/, get in
1573 touch with the developers} to share your recipes!")
1574 (de "Das neue Guix-Kochbuch wird nun von @command{guix pull}
1575 geladen und steht dann im Info-Format zur Verfügung. Darin sollen Anleitungen
1576 und detaillierte Beispiele gezeigt werden, die eine breite Spanne an
1577 Anwendungsfällen abdecken. Um darauf zuzugreifen, geben Sie dies ein:
1578
1579 @example
1580 info guix-cookbook.de
1581 @end example
1582
1583 Das Kochbuch steht derzeit auf Deutsch und Englisch zur Verfügung. Sie können
1584 auch @uref{https://guix.gnu.org/cookbook/de/, online} darauf zugreifen.
1585
1586 Ihre Beiträge werden gerne gesehen. Bitte
1587 @uref{https://guix.gnu.org/contact/, kontaktieren Sie die Entwickler}, um Ihre
1588 Rezepte mit uns zu teilen!")))
1589
1590 (entry (commit "2ca7af43fe17d9acf082dce85d137a27a8ac4887")
1591 (title (en "Further reduced binary seed bootstrap")
1592 (de "Bootstrapping jetzt mit noch kleinerem Seed")
1593 (fr "Le bootstrap binaire est encore plus réduit"))
1594 (body
1595 (en "The package graph on x86_64 and i686 is now rooted in a further
1596 @dfn{reduced set of binary seeds}. The initial set of binaries from which
1597 packages are built now weighs in at approximately 60 MiB, a quarter of what it
1598 used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
1599 the talk at @uref{https://fosdem.org/2020/schedule/event/gnumes/}.")
1600 (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine noch
1601 @dfn{kleinere Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche
1602 Menge an Binärdateien, aus denen heraus Pakete erstellt werden, machen nun
1603 ungefähr 60 MiB aus, ein Viertel der früheren Größe. Führen Sie @code{info
1604 \"(guix.de) Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich
1605 den Vortrag auf @uref{https://fosdem.org/2020/schedule/event/gnumes/} an.")
1606 (fr "Le graphe des paquets sur x86_64 et i686 prend maintenant racine
1607 dans un @dfn{ensemble de graines binaires} plus réduit. L'ensemble initial
1608 des binaires à partir desquels les paquets sont désormais construit pèse
1609 environ 60 Mo, un quart de ce qu'il était. Lancez
1610 @code{info \"(guix.fr) Bootstrapping\"} pour en savoir plus, ou regardez
1611 la présentation sur @uref{https://fosdem.org/2020/schedule/event/gnumes/}.")))
1612
1613 (entry (commit "0468455e7d279c89ea3ad1b51935efb2b785ec47")
1614 (title (en "Rottlog service added to @code{%base-services}")
1615 (de "Rottlog-Dienst ist nun Teil der @code{%base-services}")
1616 (fr "Le service rottlog a été ajouté à @code{%base-services}"))
1617 (body (en "An instance of @code{rottlog-service-type}, the system
1618 service responsible for log rotation, has been added to @code{%base-services}.
1619 If your operating system configuration for Guix System is explicitly adding
1620 @code{rottlog-service-type} to the services, you should now remove it. See
1621 the ``Log Rotation'' section of the manual for more information.")
1622 (de "Eine Instanz des @code{rottlog-service-type} für
1623 Log-Rotation wurde zu den @code{%base-services} hinzugefügt. Wenn der
1624 Systemdienst bereits in Ihrer Konfiguration für Guix System ausdrücklich
1625 genannt wurde, sollten Sie ihn jetzt daraus entfernen. Siehe den Abschnitt
1626 „Log-Rotation“ im Handbuch für weitere Informationen.")
1627 (fr "Une instance de @code{rottlog-service-type}, le service
1628 système responsable de la rotation des journaux, a été ajoutée à
1629 @code{%base-services}. Si votre configuration de système d'exploitation Guix
1630 System ajoute @code{rottlog-service-type} explicitement, vous devriez maintenant
1631 le supprimer. Voir la section « Rotation des journaux » dans le manuel
1632 pour en savoir plus.")))
1633
1634 (entry (commit "b6bee63bed4f013064c0d902e7c8b83ed7514ade")
1635 (title (en "@code{guile} package now refers to version 3.0")
1636 (de "Das @code{guile}-Paket bezeichnet jetzt Version 3.0")
1637 (fr "Le paquet @code{guile} se réfère maintenant à la version 3.0"))
1638 (body (en "The @code{guile} package has been upgraded to version 3.0
1639 (instead of 2.2). The @code{guile3.0-} packages have been renamed to their
1640 original name, and @code{guile2.2-} variants of these packages have been
1641 defined. Additionally, derivations are now all built with Guile 3.0, and
1642 system services also run on 3.0.")
1643 (de "Das @code{guile}-Paket wurde auf Version 3.0
1644 (statt 2.2) aktualisiert. Die Pakete, deren Namen mit @code{guile3.0-}
1645 beginnen, wurden umbenannt, so dass sie nun den unveränderten Namen tragen,
1646 während ihre Varianten mit @code{guile2.2-} hinzugefügt wurden. Des Weiteren
1647 werden jetzt alle Ableitungen mit Guile 3.0 erstellt und die Systemdienste
1648 laufen auch auf 3.0.")
1649 (fr "Le paquet @code{guile} a été mis à jour vers la version 3.0
1650 (au lieu de la 2.2). Les paquets @code{guile3.0-} ont été renommés en leur
1651 nom d'origine et les variantes @code{guile2.2-} de ces paquets ont été définis.
1652 En plus, les dérivation sont maintenant construites avec Guile 3.0, et les
1653 services systèmes utilisent aussi la 3.0.")))
1654
1655 (entry (commit "e3e1a7ba08af2d58c47264c543617e499c239444")
1656 (title (en "@command{guix pull} now supports SSH authenticated
1657 repositories")
1658 (de "@command{guix pull} unterstützt nun SSH-authentifizierte
1659 Repositorys")
1660 (fr "@command{guix pull} prend maintenant en charge
1661 l'authentification en SSH pour les dépôts.")
1662 (nl "@command{guix pull} ondersteunt nu SSH-geauthenticeerde
1663 repository's."))
1664 (body (en "The @command{guix pull} command now supports SSH
1665 authenticated repositories as argument of @option{--url} and in custom
1666 channels definitions. The authentication requires that an @command{ssh-agent}
1667 is running.")
1668 (de "Der Befehl @command{guix pull} unterstützt nun über SSH
1669 authentifizierte Repositorys als Argument von @option{--url} und in
1670 selbstgeschriebenen Kanaldefinitionen. Zur Authentisierung muss ein
1671 @command{ssh-agent} laufen.")
1672 (fr "La commande @command{guix pull} prend maintenant en
1673 charge l'authentification SSH pour les dépôts dans l'argument @option{--url}
1674 et dans le définitions de canaux personnalisés. L'authentification
1675 nécessite qu'un @command{ssh-agent} soit lancé.")
1676 (nl "Het @command{guix pull}-commando ondersteunt nu
1677 SSH-geauthenticeerde opslag als argument na @option{--url} en bij het
1678 schrijven van eigen kanaaldefinities. Hiervoor moet een @command{ssh-agent}
1679 gestart zijn.")))
1680
1681 (entry (commit "8234fe653e61d0090138cbd4c48d877568355439")
1682 (title (en "Guix now runs on Guile 3.0")
1683 (de "Guix läuft jetzt auf Guile 3.0")
1684 (fr "Guix tourne maintenant sous Guile 3.0")
1685 (nl "Guix draait nu op Guile 3.0"))
1686 (body (en "The Guix revision you just pulled runs on version 3.0 of
1687 GNU@tie{}Guile (previously it would run on version 2.2). Guile 3.0 improves
1688 performance through the use of just-in-time (JIT) native code generation. The
1689 switch should be entirely transparent to you. See
1690 @uref{https://gnu.org/software/guile} for more information on Guile 3.0.")
1691 (de "Die Guix-Version, die Sie gerade gepullt haben, läuft auf
1692 Version 3.0 von GNU@tie{}Guile (und nicht mehr auf Version 2.2). Guile 3.0
1693 verbessert die Rechenleistung, indem native Maschinenbefehle „just in time“
1694 erzeugt werden (JIT-Kompilierung). Der Wechsel sollte für Sie völlig
1695 transparent sein und Guix verhält sich gleich. Siehe
1696 @uref{https://gnu.org/software/guile} für weitere Informationen zu Guile
1697 3.0.")
1698 (fr "La révision de Guix que tu viens de récupérer tourne sous
1699 la version 3.0 de GNU@tie{}Guile (Guix tournait avant sous la version 2.2).
1700 Guile 3.0 améliore la performance en générant du code natif à la volée (JIT).
1701 Le changement devrait être totalement transparent pour toi. Voir
1702 @uref{https://gnu.org/software/guile} pour plus d'information sur Guile 3.0.")
1703 (nl "De Guix die u net heeft gepulld gebruikt versie 3.0 van
1704 GNU@tie{}Guile (voorheen was dat versie 2.2). Guile@tie{}3.0 draait dezelfde
1705 programma's doorgaans sneller door ze ‘just-in-time’ (JIT) te vertalen naar
1706 machine-instructies. De omschakeling zou voor u volledig naadloos moeten
1707 zijn. Lees @uref{https://gnu.org/software/guile} voor meer informatie over
1708 Guile@tie{}3.0.")))
1709
1710 (entry (commit "828a39da68a9169ef1d9f9ff02a1c66b1bcbe884")
1711 (title (en "New @option{--diff} option for @command{guix challenge}")
1712 (de "Neue @option{--diff}-Option für @command{guix challenge}")
1713 (fr "Nouvelle option @option{--diff} sur @command{guix challenge}"))
1714 (body (en "The @command{guix challenge} command, which compares
1715 binaries provided by different substitute servers as well as those built
1716 locally, has a new @option{--diff} option. With @option{--diff=simple} (the
1717 default), @command{guix challenge} automatically downloads binaries and
1718 reports the list of differing files; @option{--diff=diffoscope} instructs it
1719 to pass them to @command{diffoscope}, which simplifies the comparison process.
1720 Run @command{info \"(guix) Invoking guix challenge\"}, for more info.")
1721 (fr "La commande @command{guix challenge} qui compare les binaires
1722 fournis par différents serveurs de substituts aux contsructions locales a une
1723 nouvelle option @option{--diff}. Avec @option{--diff=simple} (par défaut),
1724 @command{guix challenge} télécharge automatiquement les binaires et rapporte
1725 la liste des fichiers différents@tie{}; @option{--diff=diffoscope} lui dit
1726 de les passer à @command{diffoscope} qui simplifie le processus de comparaison.
1727 Lance @command{info \"(guix.fr) Invoquer guix challenge\"} pour plus d'info.")
1728 (de "Der Befehl @command{guix challenge}, mit dem Binärdateien
1729 von unterschiedlichen Substitut-Servern oder lokale Erstellungen miteinander
1730 verglichen werden können, hat eine neue Befehlszeilenoption @option{--diff}
1731 bekommen. Bei @option{--diff=simple} (der Voreinstellung) lädt @command{guix
1732 challenge} automatisch Binärdateien herunter und listet sich unterscheidende
1733 Dateien auf; wird @option{--diff=diffoscope} angegeben, werden sie an
1734 @command{diffoscope} geschickt, was deren Vergleich erleichtert. Führen Sie
1735 @command{info \"(guix.de) Aufruf von guix challenge\"} aus, um nähere
1736 Informationen zu erhalten.")))
1737
1738 (entry (commit "f675f8dec73d02e319e607559ed2316c299ae8c7")
1739 (title (en "New command @command{guix time-machine}")
1740 (de "Neuer Befehl @command{guix time-machine}")
1741 (fr "Nouvelle commande @command{guix time-machine}"))
1742 (body (en "The new command @command{guix time-machine} facilitates
1743 access to older or newer revisions of Guix than the one that is installed.
1744 It can be used to install different versions of packages, and to
1745 re-create computational environments exactly as used in the past.")
1746 (de "Der neue Befehl @command{guix time-machine} vereinfacht
1747 den Zugriff auf ältere oder neuere Guix-Versionen als die installierte.
1748 Er kann zur Installation bestimmter Paketversionen verwendet werden, aber
1749 auch zur Wiederherstellung von Entwicklungsumgebungen, wie sie in der
1750 Vergangenheit verwendet wurden.")
1751 (fr "La nouvelle commande @command{guix time-machine}
1752 facilite l'accès à des versions antérieures ou postérieures par rapport
1753 à la version installée. Elle sert à installer des versions spécifiques
1754 de paquets, ainsi à la restauration d'environnements dans un état
1755 historique.")))
1756 (entry (commit "3e962e59d849e4300e447d94487684102d9d412e")
1757 (title (en "@command{guix graph} now supports package
1758 transformations")
1759 (de "@command{guix graph} unterstützt nun Paketumwandlungen")
1760 (fr "@command{guix graph} prend maintenant en charge les
1761 transformations de paquets"))
1762 (body
1763 (en "The @command{guix graph} command now supports the common package
1764 transformation options (see @command{info \"(guix) Package Transformation
1765 Options\"}). This is useful in particular to see the effect of the
1766 @option{--with-input} dependency graph rewriting option.")
1767 (de "Der Befehl @command{guix graph} unterstützt nun die mit anderen
1768 Befehlen gemeinsamen Umwandlungsoptionen (siehe @command{info \"(guix.de)
1769 Paketumwandlungsoptionen\"}). Sie helfen insbesondere dabei, die Wirkung der
1770 Befehlszeilenoption @option{--with-input} zum Umschreiben des
1771 Abhängigkeitsgraphen zu sehen.")
1772 (es "La orden @command{guix graph} ahora implementa las opciones
1773 comunes de transformación de paquetes (véase @command{info \"(guix.es)
1774 Opciones de transformación de paquetes\"}). Esto es particularmente
1775 útil para comprobar el efecto de la opción de reescritura del grafo
1776 de dependencias @option{--with-input}.")
1777 (fr "La commande @command{guix graph} prend maintenant en charge les
1778 transformations de paquets communes (voir @command{info \"(guix.fr) Options de
1779 transformation de paquets\"}). C'est particulièrement utile pour voir l'effet
1780 de l'option @option{--with-input} qui réécrit de graphe de dépendance.")))
1781
1782 (entry (commit "49af34cfac89d384c46269bfd9388b2c73b1220a")
1783 (title (en "@command{guix pull} now honors
1784 @file{/etc/guix/channels.scm}")
1785 (de "@command{guix pull} berücksichtigt nun
1786 @file{/etc/guix/channels.scm}")
1787 (es "Ahora @command{guix pull} tiene en cuenta
1788 @file{/etc/guix/channels.scm}")
1789 (fr "@command{guix pull} lit maintenant
1790 @file{/etc/guix/channels.scm}"))
1791 (body
1792 (en "The @command{guix pull} command will now read the
1793 @file{/etc/guix/channels.scm} file if it exists and if the per-user
1794 @file{~/.config/guix/channels.scm} is not present. This allows administrators
1795 of multi-user systems to define site-wide defaults.")
1796 (de "Der Befehl @command{guix pull} liest nun die Datei
1797 @file{/etc/guix/channels.scm}, wenn sie existiert und es für den jeweiligen
1798 Benutzer keine @file{~/.config/guix/channels.scm} gibt. Dadurch können
1799 Administratoren von Mehrbenutzersystemen systemweite Voreinstellungen
1800 vornehmen.")
1801 (es "Ahora la orden @command{guix pull} lee el fichero
1802 @file{/etc/guix/channels.scm} si existe y el fichero personalizable
1803 @file{~/.config/guix/channels.scm} no está presente. Esto permite a quienes
1804 administran sistemas con múltiples usuarias definir valores predeterminados
1805 en el sistema.")
1806 (fr "La commande @command{guix pull} lira maintenant le fichier
1807 @file{/etc/guix/channels.scm} s'il existe et si le fichier
1808 @file{~/.config/guix/channels.scm} par utilisateur·rice n'est pas présent.
1809 Cela permet aux personnes administrant des systèmes multi-utilisateurs de
1810 définir les canaux par défaut.")))
1811
1812 (entry (commit "81c580c8664bfeeb767e2c47ea343004e88223c7")
1813 (title (en "Insecure @file{/var/guix/profiles/per-user} permissions (CVE-2019-18192)")
1814 (de "Sicherheitslücke in @file{/var/guix/profiles/per-user}-Berechtigungen (CVE-2019-18192)")
1815 (es "Vulnerabilidad en los permisos de @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
1816 (fr "Permissions laxistes pour @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
1817 (nl "Onveilige @file{/var/guix/profiles/per-user}-rechten (CVE-2019-18192)"))
1818 (body
1819 (en "The default user profile, @file{~/.guix-profile}, points to
1820 @file{/var/guix/profiles/per-user/$USER}. Until now,
1821 @file{/var/guix/profiles/per-user} was world-writable, allowing the
1822 @command{guix} command to create the @code{$USER} sub-directory.
1823
1824 On a multi-user system, this allowed a malicious user to create and populate
1825 that @code{$USER} sub-directory for another user that had not yet logged in.
1826 Since @code{/var/@dots{}/$USER} is in @code{$PATH}, the target user could end
1827 up running attacker-provided code. See
1828 @uref{https://issues.guix.gnu.org/issue/37744} for more information.
1829
1830 This is now fixed by letting @command{guix-daemon} create these directories on
1831 behalf of users and removing the world-writable permissions on
1832 @code{per-user}. On multi-user systems, we recommend updating the daemon now.
1833 To do that, run @code{sudo guix pull} if you're on a foreign distro, or run
1834 @code{guix pull && sudo guix system reconfigure @dots{}} on Guix System. In
1835 both cases, make sure to restart the service afterwards, with @code{herd} or
1836 @code{systemctl}.")
1837 (de "Das voreingestellte Benutzerprofil, @file{~/.guix-profile},
1838 verweist auf @file{/var/guix/profiles/per-user/$USER}. Bisher hatte jeder
1839 Benutzer Schreibzugriff auf @file{/var/guix/profiles/per-user}, wodurch der
1840 @command{guix}-Befehl berechtigt war, das Unterverzeichnis @code{$USER}
1841 anzulegen.
1842
1843 Wenn mehrere Benutzer dasselbe System benutzen, kann ein böswilliger Benutzer
1844 so das Unterverzeichnis @code{$USER} und Dateien darin für einen anderen
1845 Benutzer anlegen, wenn sich dieser noch nie angemeldet hat. Weil
1846 @code{/var/…/$USER} auch in @code{$PATH} aufgeführt ist, kann der betroffene
1847 Nutzer dazu gebracht werden, vom Angreifer vorgegebenen Code auszuführen.
1848 Siehe @uref{https://issues.guix.gnu.org/issue/37744} für weitere
1849 Informationen.
1850
1851 Der Fehler wurde nun behoben, indem @command{guix-daemon} diese Verzeichnisse
1852 jetzt selbst anlegt statt das dem jeweiligen Benutzerkonto zu überlassen. Der
1853 Schreibzugriff auf @code{per-user} wird den Benutzern entzogen. Für Systeme
1854 mit mehreren Benutzern empfehlen wir, den Daemon jetzt zu aktualisieren. Auf
1855 einer Fremddistribution führen Sie dazu @code{sudo guix pull} aus; auf einem
1856 Guix-System führen Sie @code{guix pull && sudo guix system reconfigure …}
1857 aus. Achten Sie in beiden Fällen darauf, den Dienst mit @code{herd} oder
1858 @code{systemctl} neuzustarten.")
1859 (es "El perfil predeterminado de la usuaria, @file{~/.guix-profile},
1860 apunta a @file{/var/guix/profiles/per-user/$USUARIA}. Hasta ahora cualquiera
1861 podía escribir en @file{/var/guix/profiles/per-user}, lo cual permitía
1862 a la orden @command{guix} crear el subdirectorio @code{$USUARIA}.
1863
1864 En un sistema con múltiples usuarias, esto permitiría a cualquiera con
1865 intención de causar daño crear ese subdirectorio @code{$USUARIA} con el nombre
1866 de alguien que no hubiese ingresado en el sistema. Puesto que ese
1867 subdirectorio @code{/var/@dots{}/$USUARIA} se encuentra en la ruta de binarios
1868 predeterminada @code{$PATH}, el objetivo del ataque podría ejecutar código
1869 proporcionado por la parte atacante. Véase
1870 @uref{https://issues.guix.gnu.org/issue/37744} para obtener más información.
1871
1872 Se ha solucionando delegando en @command{guix-daemon} la creación de esos
1873 directorios y eliminando los permisos de escritura para todo el mundo en
1874 @code{per-user}. En sistemas con múltiples usuarias recomendamos actualizar
1875 cuanto antes el daemon. Para hacerlo ejecute @code{sudo guix pull} si se
1876 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
1877 reiniciar el servicio tras ello, con @code{herd} o @code{systemctl}.")
1878 (fr "Le profil utilisateur par défaut, @file{~/.guix-profile},
1879 pointe vers @file{/var/guix/profiles/per-user/$USER}. Jusqu'à
1880 maintenant, @file{/var/guix/profiles/per-user} était disponible en
1881 écriture pour tout le monde, ce qui permettait à la commande
1882 @command{guix} de créér le sous-répertoire @code{$USER}.
1883
1884 Sur un système multi-utilisateur, cela permet à un utilisateur
1885 malveillant de créer et de remplir le sous-répertoire @code{USER} pour
1886 n'importe quel utilisateur qui ne s'est jamais connecté. Comme
1887 @code{/var/@dots{}/$USER} fait partie de @code{$PATH}, l'utilisateur
1888 ciblé pouvait exécuter des programmes fournis par l'attaquant. Voir
1889 @uref{https://issues.guix.gnu.org/issue/37744} pour plus de détails.
1890
1891 Cela est maintenant corrigé en laissant à @command{guix-daemon} le soin
1892 de créer ces répertoire pour le compte des utilisateurs et en
1893 supprimant les permissions en écriture pour tout le monde sur
1894 @code{per-user}. Nous te recommandons de mettre à jour le démon
1895 immédiatement. Pour cela, lance @code{sudo guix pull} si tu es sur
1896 une distro externe ou @code{guix pull && sudo guix system reconfigure
1897 @dots{}} sur le système Guix. Dans tous les cas, assure-toi ensuite de
1898 redémarrer le service avec @code{herd} ou @code{systemctl}.")
1899 (nl "Het standaard gebruikersprofiel, @file{~/.guix-profile}, verwijst
1900 naar @file{/var/guix/profiles/per-user/$USER}. Tot op heden kon om het even wie
1901 in @file{/var/guix/profiles/per-user} schrijven, wat het @command{guix}-commando
1902 toestond de @code{$USER} submap aan te maken.
1903
1904 Op systemen met meerdere gebruikers kon hierdoor een kwaadaardige gebruiker een
1905 @code{$USER} submap met inhoud aanmaken voor een andere gebruiker die nog niet
1906 was ingelogd. Omdat @code{/var/@dots{}/$USER} zich in @code{$PATH} bevindt,
1907 kon het doelwit zo code uitvoeren die door de aanvaller zelf werd aangeleverd.
1908 Zie @uref{https://issues.guix.gnu.org/issue/37744} voor meer informatie.
1909
1910 Dit probleem is nu verholpen: schrijven door iedereen in @code{per-user} is niet
1911 meer toegestaan en @command{guix-daemon} maakt zelf submappen aan namens de
1912 gebruiker. Op systemen met meerdere gebruikers raden we aan om
1913 @code{guix-daemon} nu bij te werken. Op Guix System kan dit met
1914 @code{guix pull && sudo guix system reconfigure @dots{}}, op andere distributies
1915 met @code{sudo guix pull}. Herstart vervolgens in beide gevallen
1916 @code{guix-daemon} met @code{herd} of @code{systemctl}.")))
1917
1918 (entry (commit "5f3f70391809f8791c55c05bd1646bc58508fa2c")
1919 (title (en "GNU C Library upgraded")
1920 (de "GNU-C-Bibliothek aktualisiert")
1921 (es "Actualización de la biblioteca C de GNU")
1922 (fr "Mise à jour de la bibliothèque C de GNU")
1923 (nl "GNU C-bibliotheek bijgewerkt"))
1924 (body
1925 (en "The GNU C Library (glibc) has been upgraded to version 2.29. To
1926 run previously-installed programs linked against glibc 2.28, you need to
1927 install locale data for version 2.28 in addition to locale data for 2.29:
1928
1929 @example
1930 guix install glibc-locales glibc-locales-2.28
1931 @end example
1932
1933 On Guix System, you can adjust the @code{locale-libcs} field of your
1934 @code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
1935 info.")
1936 (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.29
1937 aktualisiert. Um zuvor installierte Programme, die an glibc 2.28 gebunden
1938 worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
1939 2.28 zusätzlich zu den Locale-Daten für 2.29 installieren:
1940
1941 @example
1942 guix install glibc-locales glibc-locales-2.28
1943 @end example
1944
1945 Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
1946 @code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
1947 Locales\"} aus, um weitere Informationen dazu zu erhalten.")
1948 (es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
1949 2.29. Para ejecutar programas instalados previamente que se encuentren
1950 enlazados con glibc 2.28, es necesario que instale los datos de localización
1951 de la versión 2.28 junto a los datos de localización de la versión 2.29:
1952
1953 @example
1954 guix install glibc-locales glibc-locales-2.28
1955 @end example
1956
1957 En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
1958 declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
1959 Localizaciones\"} para obtener más información.")
1960 (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
1961 2.29. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.28,
1962 tu dois installer les données pour la version 2.28 en plus des données de
1963 régionalisation pour la version 2.29 :
1964
1965 @example
1966 guix install glibc-locales glibc-locales-2.28
1967 @end example
1968
1969 Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
1970 @code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
1971 plus de détails.")
1972 (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.29.
1973 Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.28
1974 gebonden zijn, moet u de regionale informatie van versie 2.28 naast die van
1975 versie 2.29 installeren:
1976
1977 @example
1978 guix install glibc-locales glibc-locales-2.28
1979 @end example
1980
1981 Op Guix System kunt u het @code{locale-libcs}-veld van uw
1982 @code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
1983 uit voor verdere uitleg.")))
1984 (entry (commit "cdd3bcf03883d129581a79e6d6611b2afd3b277b")
1985 (title (en "New reduced binary seed bootstrap")
1986 (de "Neues Bootstrapping mit kleinerem Seed")
1987 (es "Nueva reducción de la semilla binaria para el lanzamiento inicial")
1988 (fr "Nouvel ensemble de binaires de bootstrap réduit")
1989 (nl "Nieuwe bootstrap met verkleinde binaire kiem"))
1990 (body
1991 (en "The package graph on x86_64 and i686 is now rooted in a
1992 @dfn{reduced set of binary seeds}. The initial set of binaries from which
1993 packages are built now weighs in at approximately 130 MiB, half of what it
1994 used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
1995 the talk at @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
1996 (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine @dfn{kleinere
1997 Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche Menge an
1998 Binärdateien, aus denen heraus Pakete erstellt werden, machen nun ungefähr
1999 130 MiB aus, halb so viel wie früher. Führen Sie @code{info \"(guix.de)
2000 Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich den Vortrag
2001 auf @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/} an.")
2002 (fr "Le graphe des paquets sur x86_64 et i686 prend maintenant sa
2003 source dans un @dfn{ensemble réduit de binaires}. L'ensemble initial des
2004 binaires à partir desquels les paquets sont construits pèse maintenant environ
2005 130 Mio, soit la moitié par rapport à l'ensemble précédent. Tu peux lancer
2006 @code{info \"(guix) Bootstrapping\"} pour plus de détails, ou regarder la
2007 présentation sur @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
2008 (es "El grafo de paquetes en x86_64 y i686 ahora tiene su raíz en un
2009 @dfn{conjunto reducido de semillas binarias}. El conjunto inicial de binarios
2010 desde el que se construyen los paquetes ahora tiene un tamaño aproximado de
2011 130_MiB , la mitad de su tamaño anterior. Ejecute @code{info \"(guix.es)
2012 Lanzamiento inicial\"} para aprender más, o puede ver la charla en inglés
2013 en@uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
2014 (nl "Het netwerk van pakketten voor x86_64 en i686 is nu geworteld in
2015 een @dfn{verkleinde verzameling van binaire kiemen}. Die beginverzameling
2016 van binaire bestanden waaruit pakketten gebouwd worden is nu zo'n 130 MiB
2017 groot; nog maar half zo groot als voorheen. Voer @code{info \"(guix)
2018 Bootstrapping\"} uit voor meer details, of bekijk de presentatie op
2019 @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")))
2020
2021 (entry (commit "dcc90d15581189dbc30e201db2b807273d6484f0")
2022 (title (en "New channel news mechanism")
2023 (de "Neuer Mechanismus, um Neuigkeiten über Kanäle anzuzeigen.")
2024 (es "Nuevo mecanismo de noticias de los canales")
2025 (fr "Nouveau mécanisme d'information sur les canaux")
2026 (nl "Nieuw mechanisme voor nieuwsberichten per kanaal"))
2027 (body
2028 (en "You are reading this message through the new channel news
2029 mechanism, congratulations! This mechanism allows channel authors to provide
2030 @dfn{news entries} that their users can view with @command{guix pull --news}.
2031 Run @command{info \"(guix) Invoking guix pull\"} for more info.")
2032 (de "Sie lesen diese Meldung mit Hilfe des neuen Mechanismus, um
2033 Neuigkeiten über Kanäle anzuzeigen — Glückwunsch! Mit diesem
2034 Mechanismus können Kanalautoren Ihren Nutzern @dfn{Einträge zu
2035 Neuigkeiten} mitteilen, die diese sich mit @command{guix pull --news}
2036 anzeigen lassen können. Führen Sie @command{info \"(guix.de) Aufruf
2037 von guix pull\"} aus, um weitere Informationen zu erhalten.")
2038 (es "Está leyendo este mensaje a través del mecanismo de noticias del
2039 canal, ¡enhorabuena! Este mecanismo permite a las autoras de canales
2040 proporcionar @dfn{entradas de noticias} que las usuarias pueden ver con
2041 @command{guix pull --news}. Ejecute @command{info \"(guix.es) Invocación de
2042 guix pull\"} para obtener más información.")
2043 (fr "Ce message t'arrive à travers le nouveau mécanisme d'information
2044 des canaux, bravo ! Ce mécanisme permet aux auteur·rice·s de canaux de
2045 fournir des informations qu'on peut visualiser avec @command{guix pull
2046 --news}. Tape @command{info \"(guix.fr) Invoquer guix pull\"} pour plus de
2047 détails.")
2048 (nl "U leest dit bericht door een nieuw mechanisme om per kanaal
2049 @dfn{nieuwsberichten} te verspreiden. Proficiat! Hiermee kunnen kanaalauteurs
2050 mededelingen uitzenden die hun gebruikers met @command{guix pull --news} kunnen
2051 lezen. Voer @command{info \"(guix) Invoking guix pull\"} uit voor meer
2052 informatie."))))