news.scm 50 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950
  1. ;; GNU Guix news, for use by 'guix pull'.
  2. ;;
  3. ;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
  4. ;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
  5. ;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
  6. ;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
  7. ;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
  8. ;;
  9. ;; Copying and distribution of this file, with or without modification, are
  10. ;; permitted in any medium without royalty provided the copyright notice and
  11. ;; this notice are preserved.
  12. (channel-news
  13. (version 0)
  14. (entry (commit "8e1907a72430aa989125b053573ef0897c480697")
  15. (title (en "Package transformation options now recorded in profiles")
  16. (de "Paketumwandlungsoptionen werden nun in Profilen gesichert")
  17. (fr "Options de transformation sauvegardées dans les profils"))
  18. (body
  19. (en "When installing packages in a profile, package transformation
  20. options such as @option{--with-input} are now recorded in the profile. When
  21. you eventually run @command{guix upgrade}, those transformations will be
  22. automatically applied to the upgraded packages.
  23. Run @command{info \"(guix) Package Transformation Options\"} for more info.")
  24. (de "Wenn Sie ein Paket in ein Profil installieren, werden nun
  25. Paketumwandlungsoptionen wie @option{--with-input} im Profil gespeichert.
  26. Sobald Sie später @command{guix upgrade} ausführen, werden dieselben
  27. Umwandlungen automatisch auf die aktualisierten Pakete angewandt.
  28. Führen Sie für mehr Informationen @command{info \"(guix.de)
  29. Paketumwandlungsoptionen\"} aus.")
  30. (fr "Lorsqu'on installe des paquets dans un profil, les options de
  31. transformation telles que @option{--with-input} sont désormais enregistrées
  32. dans le profil. Quand on le met plus tard à jour avec @command{guix upgrade},
  33. ces transformations sont automatiquement appliquées aux nouveaux paquets.
  34. Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
  35. plus de détails.")))
  36. (entry (commit "313f492657f1d0863c641fa5ee7f5b7028e27c94")
  37. (title (en "New @option{--image-type} option for @command{guix system disk-image}.")
  38. (de "Neue Option @option{--image-type} für @command{guix system disk-image}.")
  39. (fr "Nouvelle option @option{--image-type} pour @command{guix system disk-image}."))
  40. (body
  41. (en "The @option{--file-system-type} option for @command{guix system
  42. disk-image} command has been replaced by the new @option{--image-type} option.
  43. By default, @code{raw} disk images are produced, but @code{hurd-qcow2},
  44. @code{hurd-raw}, @code{uncompressed-iso9660} and @code{iso9660} image types
  45. are also available.
  46. The @option{--list-image-types} option lists all the available image types.")
  47. (de "Anstelle der Befehlszeilenoption @option{--file-system-type} für
  48. @command{guix system disk-image} gibt es nun die neue Option
  49. @option{--image-type}. In der Vorgabeeinstellung @code{raw} werden rohe
  50. Disk-Images erzeugt, aber es können auch die Abbildtypen @code{hurd-qcow2},
  51. @code{hurd-raw}, @code{uncompressed-iso9660} und @code{iso9660} ausgewählt
  52. werden.
  53. Mit der Option @option{--list-image-types} werden alle verfügbaren Abbildtypen
  54. aufgelistet.")
  55. (fr "L'option @option{--file-system-type} pour la commande
  56. @command{guix system disk-image} a été remplacée par la nouvelle option
  57. @option{--image-type}. Par défaut, l'option @code{raw}, produisant des images
  58. disque brutes est sélectionnée. Les options @code{hurd-qcow2},
  59. @code{hurd-raw}, @code{uncompressed-iso9660} et @code{iso9660} sont également
  60. disponibles.
  61. La nouvelle option @option{--list-image-types} énumère les types d'image
  62. disponibles.")))
  63. (entry (commit "8819551c8d2a12cd4e84e09b51e434d05a012c9d")
  64. (title (en "Package transformations now apply to implicit inputs")
  65. (de "Paketumwandlungen betreffen jetzt auch implizite Eingaben")
  66. (fr "Les transformations de paquets s'appliquent aux
  67. dépendances implicites"))
  68. (body
  69. (en "Package transformation options such as @option{--with-branch},
  70. @option{--with-input}, and so on now apply to implicit inputs---previously
  71. only a package's explicit inputs would be affected. This allows for things
  72. such as replacing the Python dependency of a package that uses
  73. @code{python-build-system}:
  74. @example
  75. guix install --with-input=python=python2 python-itsdangerous
  76. @end example
  77. Another example is grafting a different version of the GNU C
  78. Library (@code{glibc} is an implicit input of almost all the packages and is
  79. ``deep down'' in the dependency graph):
  80. @example
  81. guix build --with-graft=glibc=glibc@@2.31 hello
  82. @end example
  83. Run @command{info \"(guix) Package Transformation Options\"} for more
  84. info.")
  85. (de "Paketumwandlungsoptionen wie @option{--with-branch},
  86. @option{--with-input} und so weiter betreffen nun auch implizite Eingaben —
  87. zuvor haben sie sich nur auf die expliziten Eingaben eines Pakets
  88. ausgewirkt. Dadurch kann jetzt zum Beispiel die Python-Abhängigkeit eines
  89. Pakets, welches @code{python-build-system} benutzt, ersetzt werden:
  90. @example
  91. guix install --with-input=python=python2 python-itsdangerous
  92. @end example
  93. Ein weiteres Beispiel ist, mit einer anderen Version der GNU-C-Bibliothek zu
  94. veredeln (@code{glibc} ist eine implizite Eingabe fast aller Pakete und steckt
  95. „ganz tief“ im Abhängigkeitsgraphen):
  96. @example
  97. guix build --with-graft=glibc=glibc@@2.31 hello
  98. @end example
  99. Führen Sie für mehr Informationen @command{info \"(guix.de)
  100. Paketumwandlungsoptionen\"} aus.")
  101. (fr "Les options de transformation de paquets telles que
  102. @option{--with-branch} et @option{--with-input} s'appliquent désormais aux
  103. dépendances implicites — jusque là seules les dépendances explicites des
  104. paquets étaient prises en compte. Cela permet certaines choses telles que
  105. remplacer la dépendance sur Python d'un paquet utilisant
  106. @code{python-build-system} :
  107. @example
  108. guix install --with-input=python=python2 python-itsdangerous
  109. @end example
  110. Un autre exemple est la possibilité de greffer une version différente de la
  111. bibliothèque C GNU (la @code{glibc} est une dépendance implicite de tous les
  112. paquets et se trouve « tout en bas » du graphe de dépendance) :
  113. @example
  114. guix build --with-graft=glibc=glibc@@2.31 hello
  115. @end example
  116. Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
  117. plus de détails.")))
  118. (entry (commit "f458cfbcc54ed87b1a87dd9e150ea276f17eab74")
  119. (title (en "New @option{--without-tests} transformation option")
  120. (de "Neue Paketumwandlungsoption @option{--without-tests}")
  121. (fr "Nouvelle option de transformation @option{--without-tests}"))
  122. (body
  123. (en "The new @option{--without-tests} package transformation option
  124. instructs Guix to skip the test suite of a given package. In the example
  125. below, @code{guile-gcrypt} is built using a variant of @code{automake} itself
  126. built without running its (lengthy) test suite:
  127. @example
  128. guix build guile-gcrypt --without-tests=automake
  129. @end example
  130. This is primarily useful as a way to speed up development cycles, or to work
  131. around flaky test suites---skipping tests can hide real issues, so use with
  132. care. Run @command{info \"(guix) Package Transformation Options\"} for more
  133. info.")
  134. (de "Mit der neuen Paketumwandlungsoption @option{--without-tests}
  135. wird Guix angewiesen, den Testkatalog des angegebenen Pakets zu
  136. überspringen. Im folgenden Beispiel wird @code{guile-gcrypt} mit einer
  137. Variante von @code{automake} erstellt, die wiederum ohne Durchlauf ihres (viel
  138. Zeit in Anspruch nehmenden) Testkatalogs erstellt wird:
  139. @example
  140. guix build guile-gcrypt --without-tests=automake
  141. @end example
  142. Der hauptsächliche Nutzen liegt in der Beschleunigung von Entwicklungszyklen
  143. oder im Umgehen unzuverlässiger Testkataloge. Allerdings kann das Überspringen
  144. dazu führen, dass echte Probleme verborgen bleiben. Setzen Sie es mit Bedacht
  145. ein. Führen Sie @command{info \"(guix.de) Paketumwandlungsoptionen\"} aus, um
  146. mehr Informationen zu erhalten.")
  147. (fr "La nouvelle option de transformation de paquets
  148. @option{--without-tests} demande à Guix de sauter la suite de tests d'un
  149. paquet. Dans l'exemple ci-dessous, @code{guile-gcrypt} est construit en
  150. utilisant une variante de @code{automake} construite sans lancer sa suite de
  151. tests :
  152. @example
  153. guix build guile-gcrypt --without-tests=automake
  154. @end example
  155. Cette option est surtout intéressante pour raccourcir le cycle de
  156. développement ou pour contourner une suite de tests qui n'est pas
  157. fiable — sauter les tests peut cacher des vrais problèmes, à utiliser avec
  158. précaution donc. Voir @command{info \"(guix.fr) Options de transformation de
  159. paquets\"} pour plus de détails.")))
  160. (entry (commit "a98712785e0b042a290420fd74e5a4a5da4fc68f")
  161. (title (en "New @command{guix git authenticate} command")
  162. (de "Neuer Befehl @command{guix git authenticate}")
  163. (fr "Nouvelle commande @command{guix git authenticate}"))
  164. (body
  165. (en "The new @command{guix git authenticate} command authenticates a
  166. Git repository by verifying commit signatures and ensuring they all come from
  167. authorized parties, exactly like @command{guix pull} now does.
  168. This command is primarily useful to developers of channels. It allows them to
  169. ensure, before pushing, that the channel only contains commits signed with
  170. authorized keys. But this command is also useful anytime you use Git and want
  171. to allow people to authenticate code fetched from your repository.
  172. Run @command{info \"(guix) Invoking guix git authenticate\"} for more info,
  173. and see @uref{https://guix.gnu.org/blog/2020/securing-updates/} for details on
  174. these mechanisms.")
  175. (de "Mit dem neuen Befehl @command{guix git authenticate} können Sie
  176. ein Git-Repository authentifizieren. Dazu werden alle Commit-Signaturen
  177. verifiziert und geprüft, dass jede von einer autorisierten Quelle kommt, genau
  178. wie es @command{guix pull} nun tut.
  179. Dieser Befehl hilft in erster Linie den Entwicklern von Kanälen. Mit ihm kann
  180. vor einem Push sichergestellt werden, dass der Kanal nur Commits enthält, die
  181. mit autorisierten Schlüsseln signiert worden sind. Aber der Befehl kann auch
  182. helfen, wann immer Sie Git verwenden und ermöglichen wollen, dass Nutzer von
  183. Ihrem Repository geladenen Code authentifizieren können.
  184. Führen Sie @command{info \"(guix) Invoking guix git authenticate\"} aus, um
  185. mehr Informationen zu erhalten, und lesen Sie
  186. @uref{https://guix.gnu.org/blog/2020/securing-updates/} für die Details dieser
  187. Mechanismen.")
  188. (fr "La nouvelle commande @command{guix git authenticate} authentifie
  189. un dépôt Git en vérifiant les signatures sur les changements (@i{commits}) et
  190. en s'assurant qu'elles sont autorisées, exactement comme @command{guix pull}
  191. le fait désormais.
  192. Cette commande est avant tout utile aux personnes développant un canal. Elle
  193. leur permet de s'assurer, avant de pousser des changements, que le canal ne
  194. contient que des changements signés par des clefs autorisées. Mais cette
  195. commande peut aussi s'avérer utile dès que tu veux utiliser Git et permettre
  196. aux autres d'authentifier le code récupéré depuis ton dépôt.
  197. Lance @command{info \"(guix.fr) Invoking guix git authenticate\"} pour plus
  198. d'informations. Voir @uref{https://guix.gnu.org/blog/2020/securing-updates/}
  199. pour en savoir plus sur ces mécanismes.")))
  200. (entry (commit "43badf261f4688c8a7a7a9004a4bff8acb205835")
  201. (title (en "@command{guix pull} authenticates channels")
  202. (de "@command{guix pull} authentifiziert Kanäle")
  203. (fr "@command{guix pull} authentifie les canaux"))
  204. (body
  205. (en "The @command{guix pull} and @command{guix time-machine} commands
  206. now authenticate the source code that they pull, unless the new
  207. @option{--disable-authentication} option is passed. What this means is that
  208. Guix ensures that each commit received is cryptographically signed by an
  209. authorized developer. This protects you from attempts to tamper with the Guix
  210. repository and from attempts to ship malicious code to users.
  211. This feature is currently limited to the @code{guix} channel but will soon be
  212. available to third-party channel authors.")
  213. (de "Die Befehle @command{guix pull} und @command{guix time-machine}
  214. prüfen nun die Authentizität des heruntergeladenen Quellcodes, außer wenn die
  215. neue Befehlszeilenoption @option{--disable-authentication} angegeben
  216. wurde. Das bedeutet, Guix stellt sicher, dass jeder empfangene Commit durch
  217. einen autorisierten Entwickler kryptografisch signiert wurde. Das schützt Sie
  218. vor Versuchen, das Guix-Repository zu manipulieren oder bösartigen Code an die
  219. Nutzer auszuliefern.
  220. Diese Funktionalität ist auf den @code{guix}-Kanal beschränkt, sie wird jedoch
  221. bald auch Autoren dritter Kanäle zur Verfügung stehen.")
  222. (fr "Les commandes @command{guix pull} et @command{guix time-machine}
  223. authentifient dorénavant le code source qu'elles obtiennent, à moins que la
  224. nouvelle option @option{--disable-authentication} soit utilisée. Cela
  225. signifie que Guix s'assure que chaque soumission (@i{commit}) récupéré dispose
  226. d'une signature cryptographique par un·e développeur·euse autorisé·e. Cela te
  227. protège de tentatives de modifications du dépôt Guix et de tentatives de
  228. livrer du code malintentionné.
  229. Cette fonctionnalité n'est actuellement disponible que pour le canal
  230. @code{guix} mais le sera bientôt pour les canaux tiers.")))
  231. (entry (commit "c924e541390f9595d819edc33c19d979917c15ec")
  232. (title (en "@command{guix repl} adds support for running Guile scripts")
  233. (de "@command{guix repl} kann Guile-Skripte ausführen")
  234. (fr "@command{guix repl} permet d'exécuter des scripts en langage Guile"))
  235. (body
  236. (en "The @command{guix repl} command can now be used to run
  237. Guile scripts. Compared to just launching the @command{guile} command,
  238. @command{guix repl} guarantees that all the Guix modules and all its
  239. dependencies are available in the search path. Scripts are run like this:
  240. @example
  241. guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
  242. @end example
  243. Run @command{info \"(guix) Invoking guix repl\"} for more information.")
  244. (de "Der Befehl @command{guix repl} kann jetzt zur Ausführung von
  245. Guile-Skripten verwendet werden. Im Vergleich zum Befehl
  246. @command{guile} garantiert @command{guix repl}, dass alle Guix-Module und
  247. alle seine Abhängigkeiten im Suchpfad verfügbar sind. Skripte werden wie
  248. folgt ausgeführt:
  249. @example
  250. guix repl -- my-script,scm --option1 --option2 --option2=option-arg arg1 arg2
  251. @end example
  252. Weitere Informationen erhalten Sie mit
  253. @command{info \"(guix.de) Aufruf von guix repl\"}.")
  254. (fr "La commande @command{guix repl} peut maintenant être utilisée
  255. pour exécuter des scripts en langage Guile. Par rapport au simple lancement
  256. de la commande @command{guile}, @command{guix repl} garantit que tous les
  257. modules Guix et toutes ses dépendances sont disponibles dans le chemin
  258. de recherche. Les scripts sont exécutés comme ceci :
  259. @example
  260. guix repl -- my-script,scm --option1 --option2=option-arg arg1 arg2
  261. @end example
  262. Exécutez @command{info \"(guix.fr) Invoquer guix repl\"} pour plus d'informations.")))
  263. (entry (commit "b460ba7992a0b4af2ddb5927dcf062784539ef7b")
  264. (title (en "Add support to boot from a Btrfs subvolume")
  265. (de "Unterstützung für Systemstart von einem
  266. Btrfs-Unterlaufwerk hinzugefügt")
  267. (fr "Ajout du support pour démarrer depuis un sous-volume Btrfs")
  268. (nl "Nieuwe ondersteuning voor het opstarten vanaf een Btrfs-subvolume"))
  269. (body
  270. (en "The generation of the GRUB configuration file produced from an
  271. operating system declaration now takes into account the use of a Btrfs
  272. subvolume for the partition holding @file{/gnu/store}. Run the command
  273. @command{info \"(guix) Btrfs file system\"} for more information and
  274. examples.")
  275. (de "Für die Erzeugung einer GRUB-Konfigurationsdatei aus einer
  276. Betriebssystemdeklaration kann jetzt ein Btrfs-Unterlaufwerk („Subvolume“) für
  277. die Partition mit @file{/gnu/store} angegeben werden. Führen Sie
  278. @command{info \"(guix) Btrfs file system\"} aus, wenn Sie mehr Informationen
  279. und Beispiele sehen möchten.")
  280. (fr "La génération du fichier de configuration de GRUB produite à
  281. partir de la déclaration d'un @code{operating-system} tient maintenant compte
  282. de l'utilisation d'un sous-volume Btrfs pour la partition contenant
  283. @file{/gnu/store}. Exécutez la commande @command{info\"(guix) Btrfs file
  284. system\"} pour des exemples et plus d'information.")
  285. (nl "Het opmaken van het GRUB-configuratiebestand op basis van
  286. een @code{operating-system}-declaratie houdt nu rekening met het gebruik van
  287. een Btrfs-subvolume voor de partitie die @file{/gnu/store} bevat. Voer
  288. @command{info \"(guix) Btrfs file system\"} uit voor meer informatie en
  289. voorbeelden.")))
  290. (entry (commit "6456232164890dbf5aa20394ee24637feb4b7b9e")
  291. (title (en "@command{guix pack -RR} introduces a new execution
  292. engine")
  293. (de "@command{guix pack -RR} führt neuen Ausführungstreiber
  294. ein"))
  295. (body
  296. (en "The @command{guix pack -RR} command allows you to create a
  297. tarball containing @dfn{relocatable binaries}. Until now, those would rely
  298. either on Linux ``unprivileged user namespaces'' or on PRoot, when
  299. unprivileged user namespaces are not supported. However, PRoot introduces
  300. significant overhead for some workloads.
  301. To address that, @command{guix pack -RR} introduces a third option based on an
  302. extension to the GNU run-time linker (ld.so) and on Fakechroot, which incurs
  303. very little overhead. You can select the fastest option when executing a
  304. relocatable binary like this:
  305. @example
  306. GUIX_EXECUTION_ENGINE=performance
  307. export GUIX_EXECUTION_ENGINE
  308. @end example
  309. Run @command{info \"(guix) Invoking guix pack\"} for more information.")
  310. (de "Mit dem Befehl @command{guix pack -RR} können Sie einen Tarball
  311. mit @dfn{verschieblichen Binärdateien} erzeugen (englisch „Relocatable
  312. Binaries“). Bisher wurden diese entweder in „unprivilegierten
  313. Benutzernamensräumen“ ohne Berechtigungen ausgeführt, oder in PRoot, wenn
  314. keine unprivilegierten Benutzernamensräume unterstützt wurden. Allerdings
  315. fällt bei der Ausführung mit PRoot bei manchen Anwendungen deutlich mehr
  316. Rechenaufwand an.
  317. Um dem entgegenzuwirken, stellt @command{guix pack -RR} nun eine dritte Option
  318. zur Verfügung, die sich eine Erweiterung des GNU-Laufzeit-Binders („Run-Time
  319. Linker“, ld.so) und Fakechroot zu Nutze macht. Dadurch entsteht fast kein
  320. Mehraufwand. Sie können sich die schnellste Option aussuchen, wenn Sie eine
  321. verschiebliche Binärdatei ausführen, zum Beispiel so:
  322. @example
  323. GUIX_EXECUTION_ENGINE=performance
  324. export GUIX_EXECUTION_ENGINE
  325. @end example
  326. Führen Sie @command{info \"(guix.de) Aufruf von guix pack\"} aus, wenn Sie
  327. mehr wissen wollen.")))
  328. (entry (commit "88a96c568c47c97d05d883ada5afbc4e1200b10f")
  329. (title (en "New @option{--path} option for @command{guix graph}")
  330. (de "Neue Option @option{--path} für @command{guix graph}"))
  331. (body
  332. (en "The @command{guix graph} command has a new @option{--path}
  333. option that instructs it to display the shortest path between two packages,
  334. derivations, or store items. For example, the command below displays the
  335. shortest path from the @code{libreoffice} package to @code{libunistring}:
  336. @example
  337. guix graph --path libreoffice libunistring
  338. @end example
  339. Run @code{info \"(guix) Invoking guix graph\"} for more information.")
  340. (de "Der Befehl @command{guix graph} verfügt über eine neue
  341. Befehlszeilenoption @option{--path}, die ihn den kürzesten Pfad zwischen zwei
  342. Paketen, Ableitungen oder Store-Objekten ausgeben lässt. Zum Beispiel zeigt
  343. folgender Befehl den kürzesten Pfad vom Paket @code{libreoffice} zu
  344. @code{libunistring}:
  345. @example
  346. guix graph --path libreoffice libunistring
  347. @end example
  348. Führen Sie @code{info \"(guix.de) Aufruf von guix graph\"} aus, um mehr zu
  349. erfahren.")))
  350. (entry (commit "a33eac038a811603c8b9ed106ae405a5f80a0e9d")
  351. (title (en "GNU C Library upgraded")
  352. (de "GNU-C-Bibliothek aktualisiert")
  353. (es "Actualización de la biblioteca C de GNU")
  354. (fr "Mise à jour de la bibliothèque C de GNU")
  355. (nl "GNU C-bibliotheek bijgewerkt"))
  356. (body
  357. (en "The GNU C Library (glibc) has been upgraded to version 2.31. To
  358. run previously-installed programs linked against glibc 2.29, you need to
  359. install locale data for version 2.29 in addition to locale data for 2.31:
  360. @example
  361. guix install glibc-locales glibc-locales-2.29
  362. @end example
  363. On Guix System, you can adjust the @code{locale-libcs} field of your
  364. @code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
  365. info.")
  366. (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.31
  367. aktualisiert. Um zuvor installierte Programme, die an glibc 2.29 gebunden
  368. worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
  369. 2.29 zusätzlich zu den Locale-Daten für 2.31 installieren:
  370. @example
  371. guix install glibc-locales glibc-locales-2.29
  372. @end example
  373. Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
  374. @code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
  375. Locales\"} aus, um weitere Informationen dazu zu erhalten.")
  376. (es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
  377. 2.31. Para ejecutar programas instalados previamente que se encuentren
  378. enlazados con glibc 2.29, es necesario que instale los datos de localización
  379. de la versión 2.29 junto a los datos de localización de la versión 2.31:
  380. @example
  381. guix install glibc-locales glibc-locales-2.29
  382. @end example
  383. En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
  384. declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
  385. Localizaciones\"} para obtener más información.")
  386. (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
  387. 2.31. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.29,
  388. tu dois installer les données pour la version 2.29 en plus des données de
  389. régionalisation pour la version 2.31:
  390. @example
  391. guix install glibc-locales glibc-locales-2.29
  392. @end example
  393. Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
  394. @code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
  395. plus de détails.")
  396. (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.31.
  397. Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.29
  398. gebonden zijn, moet u de regionale informatie van versie 2.29 naast die van
  399. versie 2.31 installeren:
  400. @example
  401. guix install glibc-locales glibc-locales-2.29
  402. @end example
  403. Op Guix System kunt u het @code{locale-libcs}-veld van uw
  404. @code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
  405. uit voor verdere uitleg.")))
  406. (entry (commit "e1e6491226347d9fb93ff484d78cef98848a510a")
  407. (title (en "Guix Cookbook now available as Info")
  408. (de "Guix-Kochbuch jetzt als Info-Dokument verfügbar"))
  409. ;; TRANSLATORS: Adjust the URL and the 'info' command to refer to the
  410. ;; translated manual if it's available.
  411. (body (en "The new Guix Cookbook is now fetched by @command{guix pull}
  412. and thus readily available in the Info format. It aims to provide tutorials
  413. and detailed examples covering a variety of use cases. You can access it by
  414. typing:
  415. @example
  416. info guix-cookbook
  417. @end example
  418. The Cookbook is currently available in English and German. You can also find
  419. it @uref{https://guix.gnu.org/cookbook/en/, on-line}.
  420. Your contributions are welcome: @uref{https://guix.gnu.org/contact/, get in
  421. touch with the developers} to share your recipes!")
  422. (de "Das neue Guix-Kochbuch wird nun von @command{guix pull}
  423. geladen und steht dann im Info-Format zur Verfügung. Darin sollen Anleitungen
  424. und detaillierte Beispiele gezeigt werden, die eine breite Spanne an
  425. Anwendungsfällen abdecken. Um darauf zuzugreifen, geben Sie dies ein:
  426. @example
  427. info guix-cookbook.de
  428. @end example
  429. Das Kochbuch steht derzeit auf Deutsch und Englisch zur Verfügung. Sie können
  430. auch @uref{https://guix.gnu.org/cookbook/de/, online} darauf zugreifen.
  431. Ihre Beiträge werden gerne gesehen. Bitte
  432. @uref{https://guix.gnu.org/contact/, kontaktieren Sie die Entwickler}, um Ihre
  433. Rezepte mit uns zu teilen!")))
  434. (entry (commit "2ca7af43fe17d9acf082dce85d137a27a8ac4887")
  435. (title (en "Further reduced binary seed bootstrap")
  436. (de "Bootstrapping jetzt mit noch kleinerem Seed"))
  437. (body
  438. (en "The package graph on x86_64 and i686 is now rooted in a further
  439. @dfn{reduced set of binary seeds}. The initial set of binaries from which
  440. packages are built now weighs in at approximately 60 MiB, a quarter of what it
  441. used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
  442. the talk at @uref{https://fosdem.org/2020/schedule/event/gnumes/}.")
  443. (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine noch
  444. @dfn{kleinere Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche
  445. Menge an Binärdateien, aus denen heraus Pakete erstellt werden, machen nun
  446. ungefähr 60 MiB aus, ein Viertel der früheren Größe. Führen Sie @code{info
  447. \"(guix.de) Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich
  448. den Vortrag auf @uref{https://fosdem.org/2020/schedule/event/gnumes/} an.")))
  449. (entry (commit "0468455e7d279c89ea3ad1b51935efb2b785ec47")
  450. (title (en "Rottlog service added to @code{%base-services}")
  451. (de "Rottlog-Dienst ist nun Teil der @code{%base-services}"))
  452. (body (en "An instance of @code{rottlog-service-type}, the system
  453. service responsible for log rotation, has been added to @code{%base-services}.
  454. If your operating system configuration for Guix System is explicitly adding
  455. @code{rottlog-service-type} to the services, you should now remove it. See
  456. the ``Log Rotation'' section of the manual for more information.")
  457. (de "Eine Instanz des @code{rottlog-service-type} für
  458. Log-Rotation wurde zu den @code{%base-services} hinzugefügt. Wenn der
  459. Systemdienst bereits in Ihrer Konfiguration für Guix System ausdrücklich
  460. genannt wurde, sollten Sie ihn jetzt daraus entfernen. Siehe den Abschnitt
  461. „Log-Rotation“ im Handbuch für weitere Informationen.")))
  462. (entry (commit "b6bee63bed4f013064c0d902e7c8b83ed7514ade")
  463. (title (en "@code{guile} package now refers to version 3.0")
  464. (de "Das @code{guile}-Paket bezeichnet jetzt Version 3.0"))
  465. (body (en "The @code{guile} package has been upgraded to version 3.0
  466. (instead of 2.2). The @code{guile3.0-} packages have been renamed to their
  467. original name, and @code{guile2.2-} variants of these packages have been
  468. defined. Additionally, derivations are now all built with Guile 3.0, and
  469. system services also run on 3.0.")
  470. (de "Das @code{guile}-Paket wurde auf Version 3.0
  471. (statt 2.2) aktualisiert. Die Pakete, deren Namen mit @code{guile3.0-}
  472. beginnen, wurden umbenannt, so dass sie nun den unveränderten Namen tragen,
  473. während ihre Varianten mit @code{guile2.2-} hinzugefügt wurden. Des Weiteren
  474. werden jetzt alle Ableitungen mit Guile 3.0 erstellt und die Systemdienste
  475. laufen auch auf 3.0.")))
  476. (entry (commit "e3e1a7ba08af2d58c47264c543617e499c239444")
  477. (title (en "@command{guix pull} now supports SSH authenticated
  478. repositories")
  479. (de "@command{guix pull} unterstützt nun SSH-authentifizierte
  480. Repositorys")
  481. (fr "@command{guix pull} prend maintenant en charge
  482. l'authentification en SSH pour les dépôts.")
  483. (nl "@command{guix pull} ondersteunt nu SSH-geauthenticeerde
  484. repository's."))
  485. (body (en "The @command{guix pull} command now supports SSH
  486. authenticated repositories as argument of @option{--url} and in custom
  487. channels definitions. The authentication requires that an @command{ssh-agent}
  488. is running.")
  489. (de "Der Befehl @command{guix pull} unterstützt nun über SSH
  490. authentifizierte Repositorys als Argument von @option{--url} und in
  491. selbstgeschriebenen Kanaldefinitionen. Zur Authentisierung muss ein
  492. @command{ssh-agent} laufen.")
  493. (fr "La commande @command{guix pull} prend maintenant en
  494. charge l'authentification SSH pour les dépôts dans l'argument @option{--url}
  495. et dans le définitions de canaux personnalisés. L'authentification
  496. nécessite qu'un @command{ssh-agent} soit lancé.")
  497. (nl "Het @command{guix pull}-commando ondersteunt nu
  498. SSH-geauthenticeerde opslag als argument na @option{--url} en bij het
  499. schrijven van eigen kanaaldefinities. Hiervoor moet een @command{ssh-agent}
  500. gestart zijn.")))
  501. (entry (commit "8234fe653e61d0090138cbd4c48d877568355439")
  502. (title (en "Guix now runs on Guile 3.0")
  503. (de "Guix läuft jetzt auf Guile 3.0")
  504. (fr "Guix tourne maintenant sous Guile 3.0")
  505. (nl "Guix draait nu op Guile 3.0"))
  506. (body (en "The Guix revision you just pulled runs on version 3.0 of
  507. GNU@tie{}Guile (previously it would run on version 2.2). Guile 3.0 improves
  508. performance through the use of just-in-time (JIT) native code generation. The
  509. switch should be entirely transparent to you. See
  510. @uref{https://gnu.org/software/guile} for more information on Guile 3.0.")
  511. (de "Die Guix-Version, die Sie gerade gepullt haben, läuft auf
  512. Version 3.0 von GNU@tie{}Guile (und nicht mehr auf Version 2.2). Guile 3.0
  513. verbessert die Rechenleistung, indem native Maschinenbefehle „just in time“
  514. erzeugt werden (JIT-Kompilierung). Der Wechsel sollte für Sie völlig
  515. transparent sein und Guix verhält sich gleich. Siehe
  516. @uref{https://gnu.org/software/guile} für weitere Informationen zu Guile
  517. 3.0.")
  518. (fr "La révision de Guix que tu viens de récupérer tourne sous
  519. la version 3.0 de GNU@tie{}Guile (Guix tournait avant sous la version 2.2).
  520. Guile 3.0 améliore la performance en générant du code natif à la volée (JIT).
  521. Le changement devrait être totalement transparent pour toi. Voir
  522. @uref{https://gnu.org/software/guile} pour plus d'information sur Guile 3.0.")
  523. (nl "De Guix die u net heeft gepulld gebruikt versie 3.0 van
  524. GNU@tie{}Guile (voorheen was dat versie 2.2). Guile@tie{}3.0 draait dezelfde
  525. programma's doorgaans sneller door ze ‘just-in-time’ (JIT) te vertalen naar
  526. machine-instructies. De omschakeling zou voor u volledig naadloos moeten
  527. zijn. Lees @uref{https://gnu.org/software/guile} voor meer informatie over
  528. Guile@tie{}3.0.")))
  529. (entry (commit "828a39da68a9169ef1d9f9ff02a1c66b1bcbe884")
  530. (title (en "New @option{--diff} option for @command{guix challenge}")
  531. (de "Neue @option{--diff}-Option für @command{guix challenge}")
  532. (fr "Nouvelle option @option{--diff} sur @command{guix challenge}"))
  533. (body (en "The @command{guix challenge} command, which compares
  534. binaries provided by different substitute servers as well as those built
  535. locally, has a new @option{--diff} option. With @option{--diff=simple} (the
  536. default), @command{guix challenge} automatically downloads binaries and
  537. reports the list of differing files; @option{--diff=diffoscope} instructs it
  538. to pass them to @command{diffoscope}, which simplifies the comparison process.
  539. Run @command{info \"(guix) Invoking guix challenge\"}, for more info.")
  540. (fr "La commande @command{guix challenge} qui compare les binaires
  541. fournis par différents serveurs de substituts aux contsructions locales a une
  542. nouvelle option @option{--diff}. Avec @option{--diff=simple} (par défaut),
  543. @command{guix challenge} télécharge automatiquement les binaires et rapporte
  544. la liste des fichiers différents@tie{}; @option{--diff=diffoscope} lui dit
  545. de les passer à @command{diffoscope} qui simplifie le processus de comparaison.
  546. Lance @command{info \"(guix.fr) Invoquer guix challenge\"} pour plus d'info.")
  547. (de "Der Befehl @command{guix challenge}, mit dem Binärdateien
  548. von unterschiedlichen Substitut-Servern oder lokale Erstellungen miteinander
  549. verglichen werden können, hat eine neue Befehlszeilenoption @option{--diff}
  550. bekommen. Bei @option{--diff=simple} (der Voreinstellung) lädt @command{guix
  551. challenge} automatisch Binärdateien herunter und listet sich unterscheidende
  552. Dateien auf; wird @option{--diff=diffoscope} angegeben, werden sie an
  553. @command{diffoscope} geschickt, was deren Vergleich erleichtert. Führen Sie
  554. @command{info \"(guix.de) Aufruf von guix challenge\"} aus, um nähere
  555. Informationen zu erhalten.")))
  556. (entry (commit "f675f8dec73d02e319e607559ed2316c299ae8c7")
  557. (title (en "New command @command{guix time-machine}")
  558. (de "Neuer Befehl @command{guix time-machine}")
  559. (fr "Nouvelle commande @command{guix time-machine}"))
  560. (body (en "The new command @command{guix time-machine} facilitates
  561. access to older or newer revisions of Guix than the one that is installed.
  562. It can be used to install different versions of packages, and to
  563. re-create computational environments exactly as used in the past.")
  564. (de "Der neue Befehl @command{guix time-machine} vereinfacht
  565. den Zugriff auf ältere oder neuere Guix-Versionen als die installierte.
  566. Er kann zur Installation bestimmter Paketversionen verwendet werden, aber
  567. auch zur Wiederherstellung von Entwicklungsumgebungen, wie sie in der
  568. Vergangenheit verwendet wurden.")
  569. (fr "La nouvelle commande @command{guix time-machine}
  570. facilite l'accès à des versions antérieures ou postérieures par rapport
  571. à la version installée. Elle sert à installer des versions spécifiques
  572. de paquets, ainsi à la restauration d'environnements dans un état
  573. historique.")))
  574. (entry (commit "3e962e59d849e4300e447d94487684102d9d412e")
  575. (title (en "@command{guix graph} now supports package
  576. transformations")
  577. (de "@command{guix graph} unterstützt nun Paketumwandlungen"))
  578. (body
  579. (en "The @command{guix graph} command now supports the common package
  580. transformation options (see @command{info \"(guix) Package Transformation
  581. Options\"}). This is useful in particular to see the effect of the
  582. @option{--with-input} dependency graph rewriting option.")
  583. (de "Der Befehl @command{guix graph} unterstützt nun die mit anderen
  584. Befehlen gemeinsamen Umwandlungsoptionen (siehe @command{info \"(guix.de)
  585. Paketumwandlungsoptionen\"}). Sie helfen insbesondere dabei, die Wirkung der
  586. Befehlszeilenoption @option{--with-input} zum Umschreiben des
  587. Abhängigkeitsgraphen zu sehen.")
  588. (es "La orden @command{guix graph} ahora implementa las opciones
  589. comunes de transformación de paquetes (véase @command{info \"(guix.es)
  590. Opciones de transformación de paquetes\"}). Esto es particularmente
  591. útil para comprobar el efecto de la opción de reescritura del grafo
  592. de dependencias @option{--with-input}.")))
  593. (entry (commit "49af34cfac89d384c46269bfd9388b2c73b1220a")
  594. (title (en "@command{guix pull} now honors
  595. @file{/etc/guix/channels.scm}")
  596. (de "@command{guix pull} berücksichtigt nun
  597. @file{/etc/guix/channels.scm}")
  598. (es "Ahora @command{guix pull} tiene en cuenta
  599. @file{/etc/guix/channels.scm}")
  600. (fr "@command{guix pull} lit maintenant
  601. @file{/etc/guix/channels.scm}"))
  602. (body
  603. (en "The @command{guix pull} command will now read the
  604. @file{/etc/guix/channels.scm} file if it exists and if the per-user
  605. @file{~/.config/guix/channels.scm} is not present. This allows administrators
  606. of multi-user systems to define site-wide defaults.")
  607. (de "Der Befehl @command{guix pull} liest nun die Datei
  608. @file{/etc/guix/channels.scm}, wenn sie existiert und es für den jeweiligen
  609. Benutzer keine @file{~/.config/guix/channels.scm} gibt. Dadurch können
  610. Administratoren von Mehrbenutzersystemen systemweite Voreinstellungen
  611. vornehmen.")
  612. (es "Ahora la orden @command{guix pull} lee el fichero
  613. @file{/etc/guix/channels.scm} si existe y el fichero personalizable
  614. @file{~/.config/guix/channels.scm} no está presente. Esto permite a quienes
  615. administran sistemas con múltiples usuarias definir valores predeterminados
  616. en el sistema.")
  617. (fr "La commande @command{guix pull} lira maintenant le fichier
  618. @file{/etc/guix/channels.scm} s'il existe et si le fichier
  619. @file{~/.config/guix/channels.scm} par utilisateur·rice n'est pas présent.
  620. Cela permet aux personnes administrant des systèmes multi-utilisateurs de
  621. définir les canaux par défaut.")))
  622. (entry (commit "81c580c8664bfeeb767e2c47ea343004e88223c7")
  623. (title (en "Insecure @file{/var/guix/profiles/per-user} permissions (CVE-2019-18192)")
  624. (de "Sicherheitslücke in @file{/var/guix/profiles/per-user}-Berechtigungen (CVE-2019-18192)")
  625. (es "Vulnerabilidad en los permisos de @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
  626. (fr "Permissions laxistes pour @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
  627. (nl "Onveilige @file{/var/guix/profiles/per-user}-rechten (CVE-2019-18192)"))
  628. (body
  629. (en "The default user profile, @file{~/.guix-profile}, points to
  630. @file{/var/guix/profiles/per-user/$USER}. Until now,
  631. @file{/var/guix/profiles/per-user} was world-writable, allowing the
  632. @command{guix} command to create the @code{$USER} sub-directory.
  633. On a multi-user system, this allowed a malicious user to create and populate
  634. that @code{$USER} sub-directory for another user that had not yet logged in.
  635. Since @code{/var/@dots{}/$USER} is in @code{$PATH}, the target user could end
  636. up running attacker-provided code. See
  637. @uref{https://issues.guix.gnu.org/issue/37744} for more information.
  638. This is now fixed by letting @command{guix-daemon} create these directories on
  639. behalf of users and removing the world-writable permissions on
  640. @code{per-user}. On multi-user systems, we recommend updating the daemon now.
  641. To do that, run @code{sudo guix pull} if you're on a foreign distro, or run
  642. @code{guix pull && sudo guix system reconfigure @dots{}} on Guix System. In
  643. both cases, make sure to restart the service afterwards, with @code{herd} or
  644. @code{systemctl}.")
  645. (de "Das voreingestellte Benutzerprofil, @file{~/.guix-profile},
  646. verweist auf @file{/var/guix/profiles/per-user/$USER}. Bisher hatte jeder
  647. Benutzer Schreibzugriff auf @file{/var/guix/profiles/per-user}, wodurch der
  648. @command{guix}-Befehl berechtigt war, das Unterverzeichnis @code{$USER}
  649. anzulegen.
  650. Wenn mehrere Benutzer dasselbe System benutzen, kann ein böswilliger Benutzer
  651. so das Unterverzeichnis @code{$USER} und Dateien darin für einen anderen
  652. Benutzer anlegen, wenn sich dieser noch nie angemeldet hat. Weil
  653. @code{/var/…/$USER} auch in @code{$PATH} aufgeführt ist, kann der betroffene
  654. Nutzer dazu gebracht werden, vom Angreifer vorgegebenen Code auszuführen.
  655. Siehe @uref{https://issues.guix.gnu.org/issue/37744} für weitere
  656. Informationen.
  657. Der Fehler wurde nun behoben, indem @command{guix-daemon} diese Verzeichnisse
  658. jetzt selbst anlegt statt das dem jeweiligen Benutzerkonto zu überlassen. Der
  659. Schreibzugriff auf @code{per-user} wird den Benutzern entzogen. Für Systeme
  660. mit mehreren Benutzern empfehlen wir, den Daemon jetzt zu aktualisieren. Auf
  661. einer Fremddistribution führen Sie dazu @code{sudo guix pull} aus; auf einem
  662. Guix-System führen Sie @code{guix pull && sudo guix system reconfigure …}
  663. aus. Achten Sie in beiden Fällen darauf, den Dienst mit @code{herd} oder
  664. @code{systemctl} neuzustarten.")
  665. (es "El perfil predeterminado de la usuaria, @file{~/.guix-profile},
  666. apunta a @file{/var/guix/profiles/per-user/$USUARIA}. Hasta ahora cualquiera
  667. podía escribir en @file{/var/guix/profiles/per-user}, lo cual permitía
  668. a la orden @command{guix} crear el subdirectorio @code{$USUARIA}.
  669. En un sistema con múltiples usuarias, esto permitiría a cualquiera con
  670. intención de causar daño crear ese subdirectorio @code{$USUARIA} con el nombre
  671. de alguien que no hubiese ingresado en el sistema. Puesto que ese
  672. subdirectorio @code{/var/@dots{}/$USUARIA} se encuentra en la ruta de binarios
  673. predeterminada @code{$PATH}, el objetivo del ataque podría ejecutar código
  674. proporcionado por la parte atacante. Véase
  675. @uref{https://issues.guix.gnu.org/issue/37744} para obtener más información.
  676. Se ha solucionando delegando en @command{guix-daemon} la creación de esos
  677. directorios y eliminando los permisos de escritura para todo el mundo en
  678. @code{per-user}. En sistemas con múltiples usuarias recomendamos actualizar
  679. cuanto antes el daemon. Para hacerlo ejecute @code{sudo guix pull} si se
  680. 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
  681. reiniciar el servicio tras ello, con @code{herd} o @code{systemctl}.")
  682. (fr "Le profil utilisateur par défaut, @file{~/.guix-profile},
  683. pointe vers @file{/var/guix/profiles/per-user/$USER}. Jusqu'à
  684. maintenant, @file{/var/guix/profiles/per-user} était disponible en
  685. écriture pour tout le monde, ce qui permettait à la commande
  686. @command{guix} de créér le sous-répertoire @code{$USER}.
  687. Sur un système multi-utilisateur, cela permet à un utilisateur
  688. malveillant de créer et de remplir le sous-répertoire @code{USER} pour
  689. n'importe quel utilisateur qui ne s'est jamais connecté. Comme
  690. @code{/var/@dots{}/$USER} fait partie de @code{$PATH}, l'utilisateur
  691. ciblé pouvait exécuter des programmes fournis par l'attaquant. Voir
  692. @uref{https://issues.guix.gnu.org/issue/37744} pour plus de détails.
  693. Cela est maintenant corrigé en laissant à @command{guix-daemon} le soin
  694. de créer ces répertoire pour le compte des utilisateurs et en
  695. supprimant les permissions en écriture pour tout le monde sur
  696. @code{per-user}. Nous te recommandons de mettre à jour le démon
  697. immédiatement. Pour cela, lance @code{sudo guix pull} si tu es sur
  698. une distro externe ou @code{guix pull && sudo guix system reconfigure
  699. @dots{}} sur le système Guix. Dans tous les cas, assure-toi ensuite de
  700. redémarrer le service avec @code{herd} ou @code{systemctl}.")
  701. (nl "Het standaard gebruikersprofiel, @file{~/.guix-profile}, verwijst
  702. naar @file{/var/guix/profiles/per-user/$USER}. Tot op heden kon om het even wie
  703. in @file{/var/guix/profiles/per-user} schrijven, wat het @command{guix}-commando
  704. toestond de @code{$USER} submap aan te maken.
  705. Op systemen met meerdere gebruikers kon hierdoor een kwaadaardige gebruiker een
  706. @code{$USER} submap met inhoud aanmaken voor een andere gebruiker die nog niet
  707. was ingelogd. Omdat @code{/var/@dots{}/$USER} zich in @code{$PATH} bevindt,
  708. kon het doelwit zo code uitvoeren die door de aanvaller zelf werd aangeleverd.
  709. Zie @uref{https://issues.guix.gnu.org/issue/37744} voor meer informatie.
  710. Dit probleem is nu verholpen: schrijven door iedereen in @code{per-user} is niet
  711. meer toegestaan en @command{guix-daemon} maakt zelf submappen aan namens de
  712. gebruiker. Op systemen met meerdere gebruikers raden we aan om
  713. @code{guix-daemon} nu bij te werken. Op Guix System kan dit met
  714. @code{guix pull && sudo guix system reconfigure @dots{}}, op andere distributies
  715. met @code{sudo guix pull}. Herstart vervolgens in beide gevallen
  716. @code{guix-daemon} met @code{herd} of @code{systemctl}.")))
  717. (entry (commit "5f3f70391809f8791c55c05bd1646bc58508fa2c")
  718. (title (en "GNU C Library upgraded")
  719. (de "GNU-C-Bibliothek aktualisiert")
  720. (es "Actualización de la biblioteca C de GNU")
  721. (fr "Mise à jour de la bibliothèque C de GNU")
  722. (nl "GNU C-bibliotheek bijgewerkt"))
  723. (body
  724. (en "The GNU C Library (glibc) has been upgraded to version 2.29. To
  725. run previously-installed programs linked against glibc 2.28, you need to
  726. install locale data for version 2.28 in addition to locale data for 2.29:
  727. @example
  728. guix install glibc-locales glibc-locales-2.28
  729. @end example
  730. On Guix System, you can adjust the @code{locale-libcs} field of your
  731. @code{operating-system} form. Run @code{info \"(guix) Locales\"}, for more
  732. info.")
  733. (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.29
  734. aktualisiert. Um zuvor installierte Programme, die an glibc 2.28 gebunden
  735. worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
  736. 2.28 zusätzlich zu den Locale-Daten für 2.29 installieren:
  737. @example
  738. guix install glibc-locales glibc-locales-2.28
  739. @end example
  740. Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
  741. @code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
  742. Locales\"} aus, um weitere Informationen dazu zu erhalten.")
  743. (es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
  744. 2.29. Para ejecutar programas instalados previamente que se encuentren
  745. enlazados con glibc 2.28, es necesario que instale los datos de localización
  746. de la versión 2.28 junto a los datos de localización de la versión 2.29:
  747. @example
  748. guix install glibc-locales glibc-locales-2.28
  749. @end example
  750. En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
  751. declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
  752. Localizaciones\"} para obtener más información.")
  753. (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
  754. 2.29. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.28,
  755. tu dois installer les données pour la version 2.28 en plus des données de
  756. régionalisation pour la version 2.29 :
  757. @example
  758. guix install glibc-locales glibc-locales-2.28
  759. @end example
  760. Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
  761. @code{operating-system}. Lance @code{info \"(guix.fr) Régionalisation\"} pour
  762. plus de détails.")
  763. (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.29.
  764. Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.28
  765. gebonden zijn, moet u de regionale informatie van versie 2.28 naast die van
  766. versie 2.29 installeren:
  767. @example
  768. guix install glibc-locales glibc-locales-2.28
  769. @end example
  770. Op Guix System kunt u het @code{locale-libcs}-veld van uw
  771. @code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
  772. uit voor verdere uitleg.")))
  773. (entry (commit "cdd3bcf03883d129581a79e6d6611b2afd3b277b")
  774. (title (en "New reduced binary seed bootstrap")
  775. (de "Neues Bootstrapping mit kleinerem Seed")
  776. (es "Nueva reducción de la semilla binaria para el lanzamiento inicial")
  777. (fr "Nouvel ensemble de binaires de bootstrap réduit")
  778. (nl "Nieuwe bootstrap met verkleinde binaire kiem"))
  779. (body
  780. (en "The package graph on x86_64 and i686 is now rooted in a
  781. @dfn{reduced set of binary seeds}. The initial set of binaries from which
  782. packages are built now weighs in at approximately 130 MiB, half of what it
  783. used to be. Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
  784. the talk at @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
  785. (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine @dfn{kleinere
  786. Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche Menge an
  787. Binärdateien, aus denen heraus Pakete erstellt werden, machen nun ungefähr
  788. 130 MiB aus, halb so viel wie früher. Führen Sie @code{info \"(guix.de)
  789. Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich den Vortrag
  790. auf @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/} an.")
  791. (fr "Le graphe des paquets sur x86_64 et i686 prend maintenant sa
  792. source dans un @dfn{ensemble réduit de binaires}. L'ensemble initial des
  793. binaires à partir desquels les paquets sont construits pèse maintenant environ
  794. 130 Mio, soit la moitié par rapport à l'ensemble précédent. Tu peux lancer
  795. @code{info \"(guix) Bootstrapping\"} pour plus de détails, ou regarder la
  796. présentation sur @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
  797. (es "El grafo de paquetes en x86_64 y i686 ahora tiene su raíz en un
  798. @dfn{conjunto reducido de semillas binarias}. El conjunto inicial de binarios
  799. desde el que se construyen los paquetes ahora tiene un tamaño aproximado de
  800. 130_MiB , la mitad de su tamaño anterior. Ejecute @code{info \"(guix.es)
  801. Lanzamiento inicial\"} para aprender más, o puede ver la charla en inglés
  802. en@uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
  803. (nl "Het netwerk van pakketten voor x86_64 en i686 is nu geworteld in
  804. een @dfn{verkleinde verzameling van binaire kiemen}. Die beginverzameling
  805. van binaire bestanden waaruit pakketten gebouwd worden is nu zo'n 130 MiB
  806. groot; nog maar half zo groot als voorheen. Voer @code{info \"(guix)
  807. Bootstrapping\"} uit voor meer details, of bekijk de presentatie op
  808. @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")))
  809. (entry (commit "dcc90d15581189dbc30e201db2b807273d6484f0")
  810. (title (en "New channel news mechanism")
  811. (de "Neuer Mechanismus, um Neuigkeiten über Kanäle anzuzeigen.")
  812. (es "Nuevo mecanismo de noticias de los canales")
  813. (fr "Nouveau mécanisme d'information sur les canaux")
  814. (nl "Nieuw mechanisme voor nieuwsberichten per kanaal"))
  815. (body
  816. (en "You are reading this message through the new channel news
  817. mechanism, congratulations! This mechanism allows channel authors to provide
  818. @dfn{news entries} that their users can view with @command{guix pull --news}.
  819. Run @command{info \"(guix) Invoking guix pull\"} for more info.")
  820. (de "Sie lesen diese Meldung mit Hilfe des neuen Mechanismus, um
  821. Neuigkeiten über Kanäle anzuzeigen — Glückwunsch! Mit diesem
  822. Mechanismus können Kanalautoren Ihren Nutzern @dfn{Einträge zu
  823. Neuigkeiten} mitteilen, die diese sich mit @command{guix pull --news}
  824. anzeigen lassen können. Führen Sie @command{info \"(guix.de) Aufruf
  825. von guix pull\"} aus, um weitere Informationen zu erhalten.")
  826. (es "Está leyendo este mensaje a través del mecanismo de noticias del
  827. canal, ¡enhorabuena! Este mecanismo permite a las autoras de canales
  828. proporcionar @dfn{entradas de noticias} que las usuarias pueden ver con
  829. @command{guix pull --news}. Ejecute @command{info \"(guix.es) Invocación de
  830. guix pull\"} para obtener más información.")
  831. (fr "Ce message t'arrive à travers le nouveau mécanisme d'information
  832. des canaux, bravo ! Ce mécanisme permet aux auteur·rice·s de canaux de
  833. fournir des informations qu'on peut visualiser avec @command{guix pull
  834. --news}. Tape @command{info \"(guix.fr) Invoquer guix pull\"} pour plus de
  835. détails.")
  836. (nl "U leest dit bericht door een nieuw mechanisme om per kanaal
  837. @dfn{nieuwsberichten} te verspreiden. Proficiat! Hiermee kunnen kanaalauteurs
  838. mededelingen uitzenden die hun gebruikers met @command{guix pull --news} kunnen
  839. lezen. Voer @command{info \"(guix) Invoking guix pull\"} uit voor meer
  840. informatie."))))