news.scm 113 KB

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