Commit | Line | Data |
---|---|---|
b9fe8fd6 JL |
1 | # SOME DESCRIPTIVE TITLE |
2 | # Copyright (C) YEAR Ludovic Courtès | |
3 | # This file is distributed under the same license as the guix package. | |
4 | # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. | |
5 | # | |
6 | #, fuzzy | |
7 | msgid "" | |
8 | msgstr "" | |
39764ef8 | 9 | "Project-Id-Version: guix 0.14.0.4289-6527\n" |
b9fe8fd6 | 10 | "Report-Msgid-Bugs-To: ludo@gnu.org\n" |
39764ef8 | 11 | "POT-Creation-Date: 2018-04-29 20:48+0200\n" |
b9fe8fd6 JL |
12 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
13 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | |
14 | "Language-Team: LANGUAGE <LL@li.org>\n" | |
15 | "Language: \n" | |
16 | "MIME-Version: 1.0\n" | |
17 | "Content-Type: text/plain; charset=UTF-8\n" | |
18 | "Content-Transfer-Encoding: 8bit\n" | |
19 | ||
39764ef8 JL |
20 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# |
21 | #. type: chapter | |
22 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
23 | #. type: menuentry | |
24 | #: doc/contributing.texi:1 doc/contributing.texi:2 doc/guix.texi:106 | |
25 | #: doc/guix.texi:276 | |
26 | #, no-wrap | |
27 | msgid "Contributing" | |
28 | msgstr "" | |
29 | ||
30 | #. type: Plain text | |
31 | #: doc/contributing.texi:9 | |
32 | msgid "" | |
33 | "This project is a cooperative effort, and we need your help to make it grow! " | |
34 | "Please get in touch with us on @email{guix-devel@@gnu.org} and @code{#guix} " | |
35 | "on the Freenode IRC network. We welcome ideas, bug reports, patches, and " | |
36 | "anything that may be helpful to the project. We particularly welcome help " | |
37 | "on packaging (@pxref{Packaging Guidelines})." | |
38 | msgstr "" | |
39 | ||
40 | #. type: cindex | |
41 | #: doc/contributing.texi:10 | |
42 | #, no-wrap | |
43 | msgid "code of conduct, of contributors" | |
44 | msgstr "" | |
45 | ||
46 | #. type: cindex | |
47 | #: doc/contributing.texi:11 | |
48 | #, no-wrap | |
49 | msgid "contributor covenant" | |
50 | msgstr "" | |
51 | ||
52 | #. type: Plain text | |
53 | #: doc/contributing.texi:17 | |
54 | msgid "" | |
55 | "We want to provide a warm, friendly, and harassment-free environment, so " | |
56 | "that anyone can contribute to the best of their abilities. To this end our " | |
57 | "project uses a ``Contributor Covenant'', which was adapted from @url{http://" | |
58 | "contributor-covenant.org/}. You can find a local version in the @file{CODE-" | |
59 | "OF-CONDUCT} file in the source tree." | |
60 | msgstr "" | |
61 | ||
62 | #. type: Plain text | |
63 | #: doc/contributing.texi:21 | |
64 | msgid "" | |
65 | "Contributors are not required to use their legal name in patches and on-line " | |
66 | "communication; they can use any name or pseudonym of their choice." | |
67 | msgstr "" | |
68 | ||
69 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
70 | #. type: section | |
71 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
72 | #. type: menuentry | |
73 | #: doc/contributing.texi:28 doc/contributing.texi:30 doc/contributing.texi:31 | |
74 | #: doc/guix.texi:282 | |
75 | #, no-wrap | |
76 | msgid "Building from Git" | |
77 | msgstr "" | |
78 | ||
79 | #. type: menuentry | |
80 | #: doc/contributing.texi:28 doc/guix.texi:282 | |
81 | msgid "The latest and greatest." | |
82 | msgstr "" | |
83 | ||
84 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
85 | #. type: section | |
86 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
87 | #. type: menuentry | |
88 | #: doc/contributing.texi:28 doc/contributing.texi:102 doc/contributing.texi:103 | |
89 | #: doc/guix.texi:282 | |
90 | #, no-wrap | |
91 | msgid "Running Guix Before It Is Installed" | |
92 | msgstr "" | |
93 | ||
94 | #. type: menuentry | |
95 | #: doc/contributing.texi:28 doc/guix.texi:282 | |
96 | msgid "Hacker tricks." | |
97 | msgstr "" | |
98 | ||
99 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
100 | #. type: section | |
101 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
102 | #. type: menuentry | |
103 | #: doc/contributing.texi:28 doc/contributing.texi:169 doc/contributing.texi:170 | |
104 | #: doc/guix.texi:282 | |
105 | #, no-wrap | |
106 | msgid "The Perfect Setup" | |
107 | msgstr "" | |
108 | ||
109 | #. type: menuentry | |
110 | #: doc/contributing.texi:28 doc/guix.texi:282 | |
111 | msgid "The right tools." | |
112 | msgstr "" | |
113 | ||
114 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
115 | #. type: section | |
116 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
117 | #. type: menuentry | |
118 | #: doc/contributing.texi:28 doc/contributing.texi:228 doc/contributing.texi:229 | |
119 | #: doc/guix.texi:282 doc/guix.texi:284 | |
120 | #, no-wrap | |
121 | msgid "Coding Style" | |
122 | msgstr "" | |
123 | ||
124 | #. type: menuentry | |
125 | #: doc/contributing.texi:28 doc/guix.texi:282 | |
126 | msgid "Hygiene of the contributor." | |
127 | msgstr "" | |
128 | ||
129 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
130 | #. type: section | |
131 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
132 | #. type: menuentry | |
133 | #: doc/contributing.texi:28 doc/contributing.texi:326 doc/contributing.texi:327 | |
134 | #: doc/guix.texi:282 | |
135 | #, no-wrap | |
136 | msgid "Submitting Patches" | |
137 | msgstr "" | |
138 | ||
139 | #. type: menuentry | |
140 | #: doc/contributing.texi:28 doc/guix.texi:282 | |
141 | msgid "Share your work." | |
142 | msgstr "" | |
143 | ||
144 | #. type: Plain text | |
145 | #: doc/contributing.texi:35 | |
146 | msgid "" | |
147 | "If you want to hack Guix itself, it is recommended to use the latest version " | |
148 | "from the Git repository:" | |
149 | msgstr "" | |
150 | ||
151 | #. type: example | |
152 | #: doc/contributing.texi:38 | |
153 | #, no-wrap | |
154 | msgid "git clone https://git.savannah.gnu.org/git/guix.git\n" | |
155 | msgstr "" | |
156 | ||
157 | #. type: Plain text | |
158 | #: doc/contributing.texi:43 | |
159 | msgid "" | |
160 | "When building Guix from a checkout, the following packages are required in " | |
161 | "addition to those mentioned in the installation instructions " | |
162 | "(@pxref{Requirements})." | |
163 | msgstr "" | |
164 | ||
165 | #. type: item | |
166 | #: doc/contributing.texi:45 | |
167 | #, no-wrap | |
168 | msgid "@url{http://gnu.org/software/autoconf/, GNU Autoconf};" | |
169 | msgstr "" | |
170 | ||
171 | #. type: item | |
172 | #: doc/contributing.texi:46 | |
173 | #, no-wrap | |
174 | msgid "@url{http://gnu.org/software/automake/, GNU Automake};" | |
175 | msgstr "" | |
176 | ||
177 | #. type: item | |
178 | #: doc/contributing.texi:47 | |
179 | #, no-wrap | |
180 | msgid "@url{http://gnu.org/software/gettext/, GNU Gettext};" | |
181 | msgstr "" | |
182 | ||
183 | #. type: item | |
184 | #: doc/contributing.texi:48 | |
185 | #, no-wrap | |
186 | msgid "@url{http://gnu.org/software/texinfo/, GNU Texinfo};" | |
187 | msgstr "" | |
188 | ||
189 | #. type: item | |
190 | #: doc/contributing.texi:49 | |
191 | #, no-wrap | |
192 | msgid "@url{http://www.graphviz.org/, Graphviz};" | |
193 | msgstr "" | |
194 | ||
195 | #. type: item | |
196 | #: doc/contributing.texi:50 | |
197 | #, no-wrap | |
198 | msgid "@url{http://www.gnu.org/software/help2man/, GNU Help2man (optional)}." | |
199 | msgstr "" | |
200 | ||
201 | #. type: Plain text | |
202 | #: doc/contributing.texi:57 | |
203 | msgid "" | |
204 | "The easiest way to set up a development environment for Guix is, of course, " | |
205 | "by using Guix! The following command starts a new shell where all the " | |
206 | "dependencies and appropriate environment variables are set up to hack on " | |
207 | "Guix:" | |
208 | msgstr "" | |
209 | ||
210 | #. type: example | |
211 | #: doc/contributing.texi:60 | |
212 | #, no-wrap | |
213 | msgid "guix environment guix\n" | |
214 | msgstr "" | |
215 | ||
216 | #. type: Plain text | |
217 | #: doc/contributing.texi:64 | |
218 | msgid "" | |
219 | "@xref{Invoking guix environment}, for more information on that command. " | |
220 | "Extra dependencies can be added with @option{--ad-hoc}:" | |
221 | msgstr "" | |
222 | ||
223 | #. type: example | |
224 | #: doc/contributing.texi:67 | |
225 | #, no-wrap | |
226 | msgid "guix environment guix --ad-hoc help2man git strace\n" | |
227 | msgstr "" | |
228 | ||
229 | #. type: Plain text | |
230 | #: doc/contributing.texi:71 | |
231 | msgid "" | |
232 | "Run @command{./bootstrap} to generate the build system infrastructure using " | |
233 | "Autoconf and Automake. If you get an error like this one:" | |
234 | msgstr "" | |
235 | ||
236 | #. type: example | |
237 | #: doc/contributing.texi:74 | |
238 | #, no-wrap | |
239 | msgid "configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES\n" | |
240 | msgstr "" | |
241 | ||
242 | #. type: Plain text | |
243 | #: doc/contributing.texi:83 | |
244 | msgid "" | |
245 | "it probably means that Autoconf couldn’t find @file{pkg.m4}, which is " | |
246 | "provided by pkg-config. Make sure that @file{pkg.m4} is available. The " | |
247 | "same holds for the @file{guile.m4} set of macros provided by Guile. For " | |
248 | "instance, if you installed Automake in @file{/usr/local}, it wouldn’t look " | |
249 | "for @file{.m4} files in @file{/usr/share}. In that case, you have to invoke " | |
250 | "the following command:" | |
251 | msgstr "" | |
252 | ||
253 | #. type: example | |
254 | #: doc/contributing.texi:86 | |
255 | #, no-wrap | |
256 | msgid "export ACLOCAL_PATH=/usr/share/aclocal\n" | |
257 | msgstr "" | |
258 | ||
259 | #. type: Plain text | |
260 | #: doc/contributing.texi:90 | |
261 | msgid "" | |
262 | "@xref{Macro Search Path,,, automake, The GNU Automake Manual}, for more " | |
263 | "information." | |
264 | msgstr "" | |
265 | ||
266 | #. type: Plain text | |
267 | #: doc/contributing.texi:95 | |
268 | msgid "" | |
269 | "Then, run @command{./configure} as usual. Make sure to pass @code{--" | |
270 | "localstatedir=@var{directory}} where @var{directory} is the " | |
271 | "@code{localstatedir} value used by your current installation (@pxref{The " | |
272 | "Store}, for information about this)." | |
273 | msgstr "" | |
274 | ||
275 | #. type: Plain text | |
276 | #: doc/contributing.texi:100 | |
277 | msgid "" | |
278 | "Finally, you have to invoke @code{make check} to run tests (@pxref{Running " | |
279 | "the Test Suite}). If anything fails, take a look at installation " | |
280 | "instructions (@pxref{Installation}) or send a message to the @email{guix-" | |
281 | "devel@@gnu.org, mailing list}." | |
282 | msgstr "" | |
283 | ||
284 | #. type: Plain text | |
285 | #: doc/contributing.texi:109 | |
286 | msgid "" | |
287 | "In order to keep a sane working environment, you will find it useful to test " | |
288 | "the changes made in your local source tree checkout without actually " | |
289 | "installing them. So that you can distinguish between your ``end-user'' hat " | |
290 | "and your ``motley'' costume." | |
291 | msgstr "" | |
292 | ||
293 | #. type: Plain text | |
294 | #: doc/contributing.texi:117 | |
295 | msgid "" | |
296 | "To that end, all the command-line tools can be used even if you have not run " | |
297 | "@code{make install}. To do that, prefix each command with @command{./pre-" | |
298 | "inst-env} (the @file{pre-inst-env} script lives in the top build tree of " | |
299 | "Guix), as in@footnote{The @option{-E} flag to @command{sudo} guarantees that " | |
300 | "@code{GUILE_LOAD_PATH} is correctly set such that @command{guix-daemon} and " | |
301 | "the tools it uses can find the Guile modules they need.}:" | |
302 | msgstr "" | |
303 | ||
304 | #. type: example | |
305 | #: doc/contributing.texi:121 | |
306 | #, no-wrap | |
307 | msgid "" | |
308 | "$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild\n" | |
309 | "$ ./pre-inst-env guix build hello\n" | |
310 | msgstr "" | |
311 | ||
312 | #. type: Plain text | |
313 | #: doc/contributing.texi:125 | |
314 | msgid "Similarly, for a Guile session using the Guix modules:" | |
315 | msgstr "" | |
316 | ||
317 | #. type: example | |
318 | #: doc/contributing.texi:128 | |
319 | #, no-wrap | |
320 | msgid "" | |
321 | "$ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))'\n" | |
322 | "\n" | |
323 | msgstr "" | |
324 | ||
325 | #. type: example | |
326 | #: doc/contributing.texi:130 | |
327 | #, no-wrap | |
328 | msgid ";;; (\"x86_64-linux\")\n" | |
329 | msgstr "" | |
330 | ||
331 | #. type: cindex | |
332 | #: doc/contributing.texi:133 | |
333 | #, no-wrap | |
334 | msgid "REPL" | |
335 | msgstr "" | |
336 | ||
337 | #. type: cindex | |
338 | #: doc/contributing.texi:134 | |
339 | #, no-wrap | |
340 | msgid "read-eval-print loop" | |
341 | msgstr "" | |
342 | ||
343 | #. type: Plain text | |
344 | #: doc/contributing.texi:137 | |
345 | msgid "" | |
346 | "@dots{} and for a REPL (@pxref{Using Guile Interactively,,, guile, Guile " | |
347 | "Reference Manual}):" | |
348 | msgstr "" | |
349 | ||
350 | #. type: example | |
351 | #: doc/contributing.texi:152 | |
352 | #, no-wrap | |
353 | msgid "" | |
354 | "$ ./pre-inst-env guile\n" | |
355 | "scheme@@(guile-user)> ,use(guix)\n" | |
356 | "scheme@@(guile-user)> ,use(gnu)\n" | |
357 | "scheme@@(guile-user)> (define snakes\n" | |
358 | " (fold-packages\n" | |
359 | " (lambda (package lst)\n" | |
360 | " (if (string-prefix? \"python\"\n" | |
361 | " (package-name package))\n" | |
362 | " (cons package lst)\n" | |
363 | " lst))\n" | |
364 | " '()))\n" | |
365 | "scheme@@(guile-user)> (length snakes)\n" | |
366 | "$1 = 361\n" | |
367 | msgstr "" | |
368 | ||
369 | #. type: Plain text | |
370 | #: doc/contributing.texi:156 | |
371 | msgid "" | |
372 | "The @command{pre-inst-env} script sets up all the environment variables " | |
373 | "necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}." | |
374 | msgstr "" | |
375 | ||
376 | #. type: Plain text | |
377 | #: doc/contributing.texi:167 | |
378 | msgid "" | |
379 | "Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the " | |
380 | "local source tree; it simply updates the @file{~/.config/guix/latest} " | |
381 | "symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if you " | |
382 | "want to upgrade your local source tree.@footnote{If you would like to set up " | |
383 | "@command{guix} to use your Git checkout, you can point the @file{~/.config/" | |
384 | "guix/latest} symlink to your Git checkout directory. If you are the sole " | |
385 | "user of your system, you may also consider pointing the @file{/root/.config/" | |
386 | "guix/latest} symlink to point to @file{~/.config/guix/latest}; this way it " | |
387 | "will always use the same @command{guix} as your user does.}" | |
388 | msgstr "" | |
389 | ||
390 | #. type: Plain text | |
391 | #: doc/contributing.texi:177 | |
392 | msgid "" | |
393 | "The Perfect Setup to hack on Guix is basically the perfect setup used for " | |
394 | "Guile hacking (@pxref{Using Guile in Emacs,,, guile, Guile Reference " | |
395 | "Manual}). First, you need more than an editor, you need @url{http://www.gnu." | |
396 | "org/software/emacs, Emacs}, empowered by the wonderful @url{http://nongnu." | |
397 | "org/geiser/, Geiser}." | |
398 | msgstr "" | |
399 | ||
400 | #. type: Plain text | |
401 | #: doc/contributing.texi:185 | |
402 | msgid "" | |
403 | "Geiser allows for interactive and incremental development from within Emacs: " | |
404 | "code compilation and evaluation from within buffers, access to on-line " | |
405 | "documentation (docstrings), context-sensitive completion, @kbd{M-.} to jump " | |
406 | "to an object definition, a REPL to try out your code, and more " | |
407 | "(@pxref{Introduction,,, geiser, Geiser User Manual}). For convenient Guix " | |
408 | "development, make sure to augment Guile’s load path so that it finds source " | |
409 | "files from your checkout:" | |
410 | msgstr "" | |
411 | ||
412 | #. type: lisp | |
413 | #: doc/contributing.texi:190 | |
414 | #, no-wrap | |
415 | msgid "" | |
416 | ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" | |
417 | "(with-eval-after-load 'geiser-guile\n" | |
418 | " (add-to-list 'geiser-guile-load-path \"~/src/guix\"))\n" | |
419 | msgstr "" | |
420 | ||
421 | #. type: Plain text | |
422 | #: doc/contributing.texi:198 | |
423 | msgid "" | |
424 | "To actually edit the code, Emacs already has a neat Scheme mode. But in " | |
425 | "addition to that, you must not miss @url{http://www.emacswiki.org/emacs/" | |
426 | "ParEdit, Paredit}. It provides facilities to directly operate on the syntax " | |
427 | "tree, such as raising an s-expression or wrapping it, swallowing or " | |
428 | "rejecting the following s-expression, etc." | |
429 | msgstr "" | |
430 | ||
431 | #. type: cindex | |
432 | #: doc/contributing.texi:199 | |
433 | #, no-wrap | |
434 | msgid "code snippets" | |
435 | msgstr "" | |
436 | ||
437 | #. type: cindex | |
438 | #: doc/contributing.texi:200 | |
439 | #, no-wrap | |
440 | msgid "templates" | |
441 | msgstr "" | |
442 | ||
443 | #. type: cindex | |
444 | #: doc/contributing.texi:201 | |
445 | #, no-wrap | |
446 | msgid "reducing boilerplate" | |
447 | msgstr "" | |
448 | ||
449 | #. type: Plain text | |
450 | #: doc/contributing.texi:208 | |
451 | msgid "" | |
452 | "We also provide templates for common git commit messages and package " | |
453 | "definitions in the @file{etc/snippets} directory. These templates can be " | |
454 | "used with @url{http://joaotavora.github.io/yasnippet/, YASnippet} to expand " | |
455 | "short trigger strings to interactive text snippets. You may want to add the " | |
456 | "snippets directory to the @var{yas-snippet-dirs} variable in Emacs." | |
457 | msgstr "" | |
458 | ||
459 | #. type: lisp | |
460 | #: doc/contributing.texi:213 | |
461 | #, no-wrap | |
462 | msgid "" | |
463 | ";; @r{Assuming the Guix checkout is in ~/src/guix.}\n" | |
464 | "(with-eval-after-load 'yasnippet\n" | |
465 | " (add-to-list 'yas-snippet-dirs \"~/src/guix/etc/snippets\"))\n" | |
466 | msgstr "" | |
467 | ||
468 | #. type: Plain text | |
469 | #: doc/contributing.texi:220 | |
470 | msgid "" | |
471 | "The commit message snippets depend on @url{https://magit.vc/, Magit} to " | |
472 | "display staged files. When editing a commit message type @code{add} " | |
473 | "followed by @kbd{TAB} to insert a commit message template for adding a " | |
474 | "package; type @code{update} followed by @kbd{TAB} to insert a template for " | |
475 | "updating a package." | |
476 | msgstr "" | |
477 | ||
478 | #. type: Plain text | |
479 | #: doc/contributing.texi:226 | |
480 | msgid "" | |
481 | "The main snippet for @code{scheme-mode} is triggered by typing " | |
482 | "@code{package...} followed by @kbd{TAB}. This snippet also inserts the " | |
483 | "trigger string @code{origin...}, which can be expanded further. The " | |
484 | "@code{origin} snippet in turn may insert other trigger strings ending on " | |
485 | "@code{...}, which also can be expanded further." | |
486 | msgstr "" | |
487 | ||
488 | #. type: Plain text | |
489 | #: doc/contributing.texi:234 | |
490 | msgid "" | |
491 | "In general our code follows the GNU Coding Standards (@pxref{Top,,, " | |
492 | "standards, GNU Coding Standards}). However, they do not say much about " | |
493 | "Scheme, so here are some additional rules." | |
494 | msgstr "" | |
495 | ||
496 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
497 | #. type: subsection | |
498 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
499 | #. type: menuentry | |
500 | #: doc/contributing.texi:240 doc/contributing.texi:242 | |
501 | #: doc/contributing.texi:243 doc/guix.texi:289 | |
502 | #, no-wrap | |
503 | msgid "Programming Paradigm" | |
504 | msgstr "" | |
505 | ||
506 | #. type: menuentry | |
507 | #: doc/contributing.texi:240 doc/guix.texi:289 | |
508 | msgid "How to compose your elements." | |
509 | msgstr "" | |
510 | ||
511 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
512 | #. type: subsection | |
513 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
514 | #. type: menuentry | |
515 | #: doc/contributing.texi:240 doc/contributing.texi:249 | |
516 | #: doc/contributing.texi:250 doc/guix.texi:289 | |
517 | #, no-wrap | |
518 | msgid "Modules" | |
519 | msgstr "" | |
520 | ||
521 | #. type: menuentry | |
522 | #: doc/contributing.texi:240 doc/guix.texi:289 | |
523 | msgid "Where to store your code?" | |
524 | msgstr "" | |
525 | ||
526 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
527 | #. type: subsection | |
528 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
529 | #. type: menuentry | |
530 | #: doc/contributing.texi:240 doc/contributing.texi:260 | |
531 | #: doc/contributing.texi:261 doc/guix.texi:289 | |
532 | #, no-wrap | |
533 | msgid "Data Types and Pattern Matching" | |
534 | msgstr "" | |
535 | ||
536 | #. type: menuentry | |
537 | #: doc/contributing.texi:240 doc/guix.texi:289 | |
538 | msgid "Implementing data structures." | |
539 | msgstr "" | |
540 | ||
541 | #. #-#-#-#-# contributing.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
542 | #. type: subsection | |
543 | #. #-#-#-#-# guix.pot (guix 0.14.0.4289-6527) #-#-#-#-# | |
544 | #. type: menuentry | |
545 | #: doc/contributing.texi:240 doc/contributing.texi:274 | |
546 | #: doc/contributing.texi:275 doc/guix.texi:289 | |
547 | #, no-wrap | |
548 | msgid "Formatting Code" | |
549 | msgstr "" | |
550 | ||
551 | #. type: menuentry | |
552 | #: doc/contributing.texi:240 doc/guix.texi:289 | |
553 | msgid "Writing conventions." | |
554 | msgstr "" | |
555 | ||
556 | #. type: Plain text | |
557 | #: doc/contributing.texi:248 | |
558 | msgid "" | |
559 | "Scheme code in Guix is written in a purely functional style. One exception " | |
560 | "is code that involves input/output, and procedures that implement low-level " | |
561 | "concepts, such as the @code{memoize} procedure." | |
562 | msgstr "" | |
563 | ||
564 | #. type: Plain text | |
565 | #: doc/contributing.texi:256 | |
566 | msgid "" | |
567 | "Guile modules that are meant to be used on the builder side must live in the " | |
568 | "@code{(guix build @dots{})} name space. They must not refer to other Guix " | |
569 | "or GNU modules. However, it is OK for a ``host-side'' module to use a build-" | |
570 | "side module." | |
571 | msgstr "" | |
572 | ||
573 | #. type: Plain text | |
574 | #: doc/contributing.texi:259 | |
575 | msgid "" | |
576 | "Modules that deal with the broader GNU system should be in the @code{(gnu " | |
577 | "@dots{})} name space rather than @code{(guix @dots{})}." | |
578 | msgstr "" | |
579 | ||
580 | #. type: Plain text | |
581 | #: doc/contributing.texi:268 | |
582 | msgid "" | |
583 | "The tendency in classical Lisp is to use lists to represent everything, and " | |
584 | "then to browse them ``by hand'' using @code{car}, @code{cdr}, @code{cadr}, " | |
585 | "and co. There are several problems with that style, notably the fact that " | |
586 | "it is hard to read, error-prone, and a hindrance to proper type error " | |
587 | "reports." | |
588 | msgstr "" | |
589 | ||
590 | #. type: Plain text | |
591 | #: doc/contributing.texi:273 | |
592 | msgid "" | |
593 | "Guix code should define appropriate data types (for instance, using " | |
594 | "@code{define-record-type*}) rather than abuse lists. In addition, it should " | |
595 | "use pattern matching, via Guile’s @code{(ice-9 match)} module, especially " | |
596 | "when matching lists." | |
597 | msgstr "" | |
598 | ||
599 | #. type: cindex | |
600 | #: doc/contributing.texi:277 | |
601 | #, no-wrap | |
602 | msgid "formatting code" | |
603 | msgstr "" | |
604 | ||
605 | #. type: cindex | |
606 | #: doc/contributing.texi:278 | |
607 | #, no-wrap | |
608 | msgid "coding style" | |
609 | msgstr "" | |
610 | ||
611 | #. type: Plain text | |
612 | #: doc/contributing.texi:285 | |
613 | msgid "" | |
614 | "When writing Scheme code, we follow common wisdom among Scheme programmers. " | |
615 | "In general, we follow the @url{http://mumble.net/~campbell/scheme/style.txt, " | |
616 | "Riastradh's Lisp Style Rules}. This document happens to describe the " | |
617 | "conventions mostly used in Guile’s code too. It is very thoughtful and well " | |
618 | "written, so please do read it." | |
619 | msgstr "" | |
620 | ||
621 | #. type: Plain text | |
622 | #: doc/contributing.texi:292 | |
623 | msgid "" | |
624 | "Some special forms introduced in Guix, such as the @code{substitute*} macro, " | |
625 | "have special indentation rules. These are defined in the @file{.dir-locals." | |
626 | "el} file, which Emacs automatically uses. Also note that Emacs-Guix " | |
627 | "provides @code{guix-devel-mode} mode that indents and highlights Guix code " | |
628 | "properly (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference " | |
629 | "Manual})." | |
630 | msgstr "" | |
631 | ||
632 | #. type: cindex | |
633 | #: doc/contributing.texi:293 | |
634 | #, no-wrap | |
635 | msgid "indentation, of code" | |
636 | msgstr "" | |
637 | ||
638 | #. type: cindex | |
639 | #: doc/contributing.texi:294 | |
640 | #, no-wrap | |
641 | msgid "formatting, of code" | |
642 | msgstr "" | |
643 | ||
644 | #. type: Plain text | |
645 | #: doc/contributing.texi:297 | |
646 | msgid "" | |
647 | "If you do not use Emacs, please make sure to let your editor knows these " | |
648 | "rules. To automatically indent a package definition, you can also run:" | |
649 | msgstr "" | |
650 | ||
651 | #. type: example | |
652 | #: doc/contributing.texi:300 | |
653 | #, no-wrap | |
654 | msgid "./etc/indent-code.el gnu/packages/@var{file}.scm @var{package}\n" | |
655 | msgstr "" | |
656 | ||
657 | #. type: Plain text | |
658 | #: doc/contributing.texi:306 | |
659 | msgid "" | |
660 | "This automatically indents the definition of @var{package} in @file{gnu/" | |
661 | "packages/@var{file}.scm} by running Emacs in batch mode. To indent a whole " | |
662 | "file, omit the second argument:" | |
663 | msgstr "" | |
664 | ||
665 | #. type: example | |
666 | #: doc/contributing.texi:309 | |
667 | #, no-wrap | |
668 | msgid "./etc/indent-code.el gnu/services/@var{file}.scm\n" | |
669 | msgstr "" | |
670 | ||
671 | #. type: cindex | |
672 | #: doc/contributing.texi:311 | |
673 | #, no-wrap | |
674 | msgid "Vim, Scheme code editing" | |
675 | msgstr "" | |
676 | ||
677 | #. type: Plain text | |
678 | #: doc/contributing.texi:317 | |
679 | msgid "" | |
680 | "If you are editing code with Vim, we recommend that you run @code{:set " | |
681 | "autoindent} so that your code is automatically indented as you type. " | |
682 | "Additionally, @uref{https://www.vim.org/scripts/script.php?script_id=3998, " | |
683 | "@code{paredit.vim}} may help you deal with all these parentheses." | |
684 | msgstr "" | |
685 | ||
686 | #. type: Plain text | |
687 | #: doc/contributing.texi:321 | |
688 | msgid "" | |
689 | "We require all top-level procedures to carry a docstring. This requirement " | |
690 | "can be relaxed for simple private procedures in the @code{(guix build " | |
691 | "@dots{})} name space, though." | |
692 | msgstr "" | |
693 | ||
694 | #. type: Plain text | |
695 | #: doc/contributing.texi:324 | |
696 | msgid "" | |
697 | "Procedures should not have more than four positional parameters. Use " | |
698 | "keyword parameters for procedures that take more than four parameters." | |
699 | msgstr "" | |
700 | ||
701 | #. type: Plain text | |
702 | #: doc/contributing.texi:333 | |
703 | msgid "" | |
704 | "Development is done using the Git distributed version control system. Thus, " | |
705 | "access to the repository is not strictly necessary. We welcome " | |
706 | "contributions in the form of patches as produced by @code{git format-patch} " | |
707 | "sent to the @email{guix-patches@@gnu.org} mailing list." | |
708 | msgstr "" | |
709 | ||
710 | #. type: Plain text | |
711 | #: doc/contributing.texi:340 | |
712 | msgid "" | |
713 | "This mailing list is backed by a Debbugs instance accessible at " | |
714 | "@uref{https://bugs.gnu.org/guix-patches}, which allows us to keep track of " | |
715 | "submissions. Each message sent to that mailing list gets a new tracking " | |
716 | "number assigned; people can then follow up on the submission by sending " | |
717 | "email to @code{@var{NNN}@@debbugs.gnu.org}, where @var{NNN} is the tracking " | |
718 | "number (@pxref{Sending a Patch Series})." | |
719 | msgstr "" | |
720 | ||
721 | #. type: Plain text | |
722 | #: doc/contributing.texi:344 | |
723 | msgid "" | |
724 | "Please write commit logs in the ChangeLog format (@pxref{Change Logs,,, " | |
725 | "standards, GNU Coding Standards}); you can check the commit history for " | |
726 | "examples." | |
727 | msgstr "" | |
728 | ||
729 | #. type: Plain text | |
730 | #: doc/contributing.texi:347 | |
731 | msgid "" | |
732 | "Before submitting a patch that adds or modifies a package definition, please " | |
733 | "run through this check list:" | |
734 | msgstr "" | |
735 | ||
736 | #. type: enumerate | |
737 | #: doc/contributing.texi:354 | |
738 | msgid "" | |
739 | "If the authors of the packaged software provide a cryptographic signature " | |
740 | "for the release tarball, make an effort to verify the authenticity of the " | |
741 | "archive. For a detached GPG signature file this would be done with the " | |
742 | "@code{gpg --verify} command." | |
743 | msgstr "" | |
744 | ||
745 | #. type: enumerate | |
746 | #: doc/contributing.texi:358 | |
747 | msgid "" | |
748 | "Take some time to provide an adequate synopsis and description for the " | |
749 | "package. @xref{Synopses and Descriptions}, for some guidelines." | |
750 | msgstr "" | |
751 | ||
752 | #. type: enumerate | |
753 | #: doc/contributing.texi:363 | |
754 | msgid "" | |
755 | "Run @code{guix lint @var{package}}, where @var{package} is the name of the " | |
756 | "new or modified package, and fix any errors it reports (@pxref{Invoking guix " | |
757 | "lint})." | |
758 | msgstr "" | |
759 | ||
760 | #. type: enumerate | |
761 | #: doc/contributing.texi:367 | |
762 | msgid "" | |
763 | "Make sure the package builds on your platform, using @code{guix build " | |
764 | "@var{package}}." | |
765 | msgstr "" | |
766 | ||
767 | #. type: cindex | |
768 | #: doc/contributing.texi:369 | |
769 | #, no-wrap | |
770 | msgid "bundling" | |
771 | msgstr "" | |
772 | ||
773 | #. type: enumerate | |
774 | #: doc/contributing.texi:372 | |
775 | msgid "" | |
776 | "Make sure the package does not use bundled copies of software already " | |
777 | "available as separate packages." | |
778 | msgstr "" | |
779 | ||
780 | #. type: enumerate | |
781 | #: doc/contributing.texi:381 | |
782 | msgid "" | |
783 | "Sometimes, packages include copies of the source code of their dependencies " | |
784 | "as a convenience for users. However, as a distribution, we want to make " | |
785 | "sure that such packages end up using the copy we already have in the " | |
786 | "distribution, if there is one. This improves resource usage (the dependency " | |
787 | "is built and stored only once), and allows the distribution to make " | |
788 | "transverse changes such as applying security updates for a given software " | |
789 | "package in a single place and have them affect the whole system---something " | |
790 | "that bundled copies prevent." | |
791 | msgstr "" | |
792 | ||
793 | #. type: enumerate | |
794 | #: doc/contributing.texi:388 | |
795 | msgid "" | |
796 | "Take a look at the profile reported by @command{guix size} (@pxref{Invoking " | |
797 | "guix size}). This will allow you to notice references to other packages " | |
798 | "unwillingly retained. It may also help determine whether to split the " | |
799 | "package (@pxref{Packages with Multiple Outputs}), and which optional " | |
800 | "dependencies should be used." | |
801 | msgstr "" | |
802 | ||
803 | #. type: enumerate | |
804 | #: doc/contributing.texi:393 | |
805 | msgid "" | |
806 | "For important changes, check that dependent package (if applicable) are not " | |
807 | "affected by the change; @code{guix refresh --list-dependent @var{package}} " | |
808 | "will help you do that (@pxref{Invoking guix refresh})." | |
809 | msgstr "" | |
810 | ||
811 | #. type: cindex | |
812 | #: doc/contributing.texi:395 | |
813 | #, no-wrap | |
814 | msgid "branching strategy" | |
815 | msgstr "" | |
816 | ||
817 | #. type: cindex | |
818 | #: doc/contributing.texi:396 | |
819 | #, no-wrap | |
820 | msgid "rebuild scheduling strategy" | |
821 | msgstr "" | |
822 | ||
823 | #. type: enumerate | |
824 | #: doc/contributing.texi:399 | |
825 | msgid "" | |
826 | "Depending on the number of dependent packages and thus the amount of " | |
827 | "rebuilding induced, commits go to different branches, along these lines:" | |
828 | msgstr "" | |
829 | ||
830 | #. type: item | |
831 | #: doc/contributing.texi:401 | |
832 | #, no-wrap | |
833 | msgid "300 dependent packages or less" | |
834 | msgstr "" | |
835 | ||
836 | #. type: table | |
837 | #: doc/contributing.texi:403 | |
838 | msgid "@code{master} branch (non-disruptive changes)." | |
839 | msgstr "" | |
840 | ||
841 | #. type: item | |
842 | #: doc/contributing.texi:404 | |
843 | #, no-wrap | |
844 | msgid "between 300 and 1,200 dependent packages" | |
845 | msgstr "" | |
846 | ||
847 | #. type: table | |
848 | #: doc/contributing.texi:409 | |
849 | msgid "" | |
850 | "@code{staging} branch (non-disruptive changes). This branch is intended to " | |
851 | "be merged in @code{master} every 3 weeks or so. Topical changes (e.g., an " | |
852 | "update of the GNOME stack) can instead go to a specific branch (say, " | |
853 | "@code{gnome-updates})." | |
854 | msgstr "" | |
855 | ||
856 | #. type: item | |
857 | #: doc/contributing.texi:410 | |
858 | #, no-wrap | |
859 | msgid "more than 1,200 dependent packages" | |
860 | msgstr "" | |
861 | ||
862 | #. type: table | |
863 | #: doc/contributing.texi:414 | |
864 | msgid "" | |
865 | "@code{core-updates} branch (may include major and potentially disruptive " | |
866 | "changes). This branch is intended to be merged in @code{master} every 2.5 " | |
867 | "months or so." | |
868 | msgstr "" | |
869 | ||
870 | #. type: enumerate | |
871 | #: doc/contributing.texi:421 | |
872 | msgid "" | |
873 | "All these branches are tracked by our build farm and merged into " | |
874 | "@code{master} once everything has been successfully built. This allows us " | |
875 | "to fix issues before they hit users, and to reduce the window during which " | |
876 | "pre-built binaries are not available." | |
877 | msgstr "" | |
878 | ||
879 | #. type: cindex | |
880 | #: doc/contributing.texi:423 | |
881 | #, no-wrap | |
882 | msgid "determinism, of build processes" | |
883 | msgstr "" | |
884 | ||
885 | #. type: cindex | |
886 | #: doc/contributing.texi:424 | |
887 | #, no-wrap | |
888 | msgid "reproducible builds, checking" | |
889 | msgstr "" | |
890 | ||
891 | #. type: enumerate | |
892 | #: doc/contributing.texi:428 | |
893 | msgid "" | |
894 | "Check whether the package's build process is deterministic. This typically " | |
895 | "means checking whether an independent build of the package yields the exact " | |
896 | "same result that you obtained, bit for bit." | |
897 | msgstr "" | |
898 | ||
899 | #. type: enumerate | |
900 | #: doc/contributing.texi:431 | |
901 | msgid "" | |
902 | "A simple way to do that is by building the same package several times in a " | |
903 | "row on your machine (@pxref{Invoking guix build}):" | |
904 | msgstr "" | |
905 | ||
906 | #. type: example | |
907 | #: doc/contributing.texi:434 | |
908 | #, no-wrap | |
909 | msgid "guix build --rounds=2 my-package\n" | |
910 | msgstr "" | |
911 | ||
912 | #. type: enumerate | |
913 | #: doc/contributing.texi:438 | |
914 | msgid "" | |
915 | "This is enough to catch a class of common non-determinism issues, such as " | |
916 | "timestamps or randomly-generated output in the build result." | |
917 | msgstr "" | |
918 | ||
919 | #. type: enumerate | |
920 | #: doc/contributing.texi:448 | |
921 | msgid "" | |
922 | "Another option is to use @command{guix challenge} (@pxref{Invoking guix " | |
923 | "challenge}). You may run it once the package has been committed and built " | |
924 | "by @code{hydra.gnu.org} to check whether it obtains the same result as you " | |
925 | "did. Better yet: Find another machine that can build it and run " | |
926 | "@command{guix publish}. Since the remote build machine is likely different " | |
927 | "from yours, this can catch non-determinism issues related to the hardware---" | |
928 | "e.g., use of different instruction set extensions---or to the operating " | |
929 | "system kernel---e.g., reliance on @code{uname} or @file{/proc} files." | |
930 | msgstr "" | |
931 | ||
932 | #. type: enumerate | |
933 | #: doc/contributing.texi:454 | |
934 | msgid "" | |
935 | "When writing documentation, please use gender-neutral wording when referring " | |
936 | "to people, such as @uref{https://en.wikipedia.org/wiki/Singular_they, " | |
937 | "singular ``they''@comma{} ``their''@comma{} ``them''}, and so forth." | |
938 | msgstr "" | |
939 | ||
940 | #. type: enumerate | |
941 | #: doc/contributing.texi:458 | |
942 | msgid "" | |
943 | "Verify that your patch contains only one set of related changes. Bundling " | |
944 | "unrelated changes together makes reviewing harder and slower." | |
945 | msgstr "" | |
946 | ||
947 | #. type: enumerate | |
948 | #: doc/contributing.texi:461 | |
949 | msgid "" | |
950 | "Examples of unrelated changes include the addition of several packages, or a " | |
951 | "package update along with fixes to that package." | |
952 | msgstr "" | |
953 | ||
954 | #. type: enumerate | |
955 | #: doc/contributing.texi:466 | |
956 | msgid "" | |
957 | "Please follow our code formatting rules, possibly running the @command{etc/" | |
958 | "indent-code.el} script to do that automatically for you (@pxref{Formatting " | |
959 | "Code})." | |
960 | msgstr "" | |
961 | ||
962 | #. type: Plain text | |
963 | #: doc/contributing.texi:476 | |
964 | msgid "" | |
965 | "When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as a " | |
966 | "subject. You may use your email client or the @command{git send-email} " | |
967 | "command (@pxref{Sending a Patch Series}). We prefer to get patches in plain " | |
968 | "text messages, either inline or as MIME attachments. You are advised to pay " | |
969 | "attention if your email client changes anything like line breaks or " | |
970 | "indentation which could potentially break the patches." | |
971 | msgstr "" | |
972 | ||
973 | #. type: Plain text | |
974 | #: doc/contributing.texi:479 | |
975 | msgid "" | |
976 | "When a bug is resolved, please close the thread by sending an email to " | |
977 | "@email{@var{NNN}-done@@debbugs.gnu.org}." | |
978 | msgstr "" | |
979 | ||
980 | #. type: anchor{#1} | |
981 | #: doc/contributing.texi:480 doc/contributing.texi:482 | |
982 | #, no-wrap | |
983 | msgid "Sending a Patch Series" | |
984 | msgstr "" | |
985 | ||
986 | #. type: cindex | |
987 | #: doc/contributing.texi:482 | |
988 | #, no-wrap | |
989 | msgid "patch series" | |
990 | msgstr "" | |
991 | ||
992 | #. type: code{#1} | |
993 | #: doc/contributing.texi:483 | |
994 | #, no-wrap | |
995 | msgid "git send-email" | |
996 | msgstr "" | |
997 | ||
998 | #. type: code{#1} | |
999 | #: doc/contributing.texi:484 | |
1000 | #, no-wrap | |
1001 | msgid "git-send-email" | |
1002 | msgstr "" | |
1003 | ||
1004 | #. type: Plain text | |
1005 | #: doc/contributing.texi:492 | |
1006 | msgid "" | |
1007 | "When sending a patch series (e.g., using @code{git send-email}), please " | |
1008 | "first send one message to @email{guix-patches@@gnu.org}, and then send " | |
1009 | "subsequent patches to @email{@var{NNN}@@debbugs.gnu.org} to make sure they " | |
1010 | "are kept together. See @uref{https://debbugs.gnu.org/Advanced.html, the " | |
1011 | "Debbugs documentation} for more information." | |
1012 | msgstr "" | |
1013 | ||
b9fe8fd6 JL |
1014 | #. type: Plain text |
1015 | #: doc/guix.texi:7 | |
1016 | msgid "@documentencoding UTF-8" | |
1017 | msgstr "" | |
1018 | ||
1019 | #. type: title | |
1020 | #: doc/guix.texi:7 doc/guix.texi:77 | |
1021 | #, no-wrap | |
1022 | msgid "GNU Guix Reference Manual" | |
1023 | msgstr "" | |
1024 | ||
1025 | #. type: include | |
1026 | #: doc/guix.texi:10 | |
1027 | #, no-wrap | |
1028 | msgid "version.texi" | |
1029 | msgstr "" | |
1030 | ||
1031 | #. type: copying | |
1032 | #: doc/guix.texi:51 | |
1033 | msgid "" | |
1034 | "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic " | |
1035 | "Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright " | |
1036 | "@copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, " | |
1037 | "2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* " | |
1038 | "Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} " | |
1039 | "2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017 " | |
1040 | "Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018 Ricardo " | |
1041 | "Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} " | |
1042 | "2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018 " | |
1043 | "Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright " | |
1044 | "@copyright{} 2016, 2017 Nils Gillmann@* Copyright @copyright{} 2016, 2017 " | |
1045 | "Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright " | |
1046 | "@copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2017, 2018 Clément " | |
1047 | "Lassieur@* Copyright @copyright{} 2017 Mathieu Othacehe@* Copyright " | |
1048 | "@copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017 Carlo " | |
1049 | "Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright " | |
1050 | "@copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher " | |
1051 | "Allan Webber@* Copyright @copyright{} 2017 Marius Bakke@* Copyright " | |
1052 | "@copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim " | |
1053 | "Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* " | |
1054 | "Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 " | |
1055 | "Andy Wingo@* Copyright @copyright{} 2017, 2018 Arun Isaac@* Copyright " | |
1056 | "@copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* " | |
1057 | "Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike " | |
1058 | "Gerwitz" | |
1059 | msgstr "" | |
1060 | ||
1061 | #. type: copying | |
1062 | #: doc/guix.texi:58 | |
1063 | msgid "" | |
1064 | "Permission is granted to copy, distribute and/or modify this document under " | |
1065 | "the terms of the GNU Free Documentation License, Version 1.3 or any later " | |
1066 | "version published by the Free Software Foundation; with no Invariant " | |
1067 | "Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the " | |
1068 | "license is included in the section entitled ``GNU Free Documentation " | |
1069 | "License''." | |
1070 | msgstr "" | |
1071 | ||
1072 | #. type: dircategory | |
1073 | #: doc/guix.texi:60 | |
1074 | #, no-wrap | |
1075 | msgid "System administration" | |
1076 | msgstr "" | |
1077 | ||
1078 | #. type: menuentry | |
1079 | #: doc/guix.texi:67 | |
1080 | msgid "Guix: (guix)" | |
1081 | msgstr "" | |
1082 | ||
1083 | #. type: menuentry | |
1084 | #: doc/guix.texi:67 | |
1085 | msgid "Manage installed software and system configuration." | |
1086 | msgstr "" | |
1087 | ||
1088 | #. type: menuentry | |
1089 | #: doc/guix.texi:67 | |
1090 | msgid "guix package: (guix)Invoking guix package" | |
1091 | msgstr "" | |
1092 | ||
1093 | #. type: menuentry | |
1094 | #: doc/guix.texi:67 | |
1095 | msgid "Installing, removing, and upgrading packages." | |
1096 | msgstr "" | |
1097 | ||
1098 | #. type: menuentry | |
1099 | #: doc/guix.texi:67 | |
1100 | msgid "guix gc: (guix)Invoking guix gc" | |
1101 | msgstr "" | |
1102 | ||
1103 | #. type: menuentry | |
1104 | #: doc/guix.texi:67 | |
1105 | msgid "Reclaiming unused disk space." | |
1106 | msgstr "" | |
1107 | ||
1108 | #. type: menuentry | |
1109 | #: doc/guix.texi:67 | |
1110 | msgid "guix pull: (guix)Invoking guix pull" | |
1111 | msgstr "" | |
1112 | ||
1113 | #. type: menuentry | |
1114 | #: doc/guix.texi:67 | |
1115 | msgid "Update the list of available packages." | |
1116 | msgstr "" | |
1117 | ||
1118 | #. type: menuentry | |
1119 | #: doc/guix.texi:67 | |
1120 | msgid "guix system: (guix)Invoking guix system" | |
1121 | msgstr "" | |
1122 | ||
1123 | #. type: menuentry | |
1124 | #: doc/guix.texi:67 | |
1125 | msgid "Manage the operating system configuration." | |
1126 | msgstr "" | |
1127 | ||
1128 | #. type: dircategory | |
1129 | #: doc/guix.texi:69 | |
1130 | #, no-wrap | |
1131 | msgid "Software development" | |
1132 | msgstr "" | |
1133 | ||
1134 | #. type: menuentry | |
1135 | #: doc/guix.texi:74 | |
1136 | msgid "guix environment: (guix)Invoking guix environment" | |
1137 | msgstr "" | |
1138 | ||
1139 | #. type: menuentry | |
1140 | #: doc/guix.texi:74 | |
1141 | msgid "Building development environments with Guix." | |
1142 | msgstr "" | |
1143 | ||
1144 | #. type: menuentry | |
1145 | #: doc/guix.texi:74 | |
1146 | msgid "guix build: (guix)Invoking guix build" | |
1147 | msgstr "" | |
1148 | ||
1149 | #. type: menuentry | |
1150 | #: doc/guix.texi:74 | |
1151 | msgid "Building packages." | |
1152 | msgstr "" | |
1153 | ||
1154 | #. type: menuentry | |
1155 | #: doc/guix.texi:74 | |
1156 | msgid "guix pack: (guix)Invoking guix pack" | |
1157 | msgstr "" | |
1158 | ||
1159 | #. type: menuentry | |
1160 | #: doc/guix.texi:74 | |
1161 | msgid "Creating binary bundles." | |
1162 | msgstr "" | |
1163 | ||
1164 | #. type: subtitle | |
1165 | #: doc/guix.texi:78 | |
1166 | #, no-wrap | |
1167 | msgid "Using the GNU Guix Functional Package Manager" | |
1168 | msgstr "" | |
1169 | ||
1170 | #. type: author | |
1171 | #: doc/guix.texi:79 | |
1172 | #, no-wrap | |
1173 | msgid "The GNU Guix Developers" | |
1174 | msgstr "" | |
1175 | ||
1176 | #. type: titlepage | |
1177 | #: doc/guix.texi:85 | |
1178 | msgid "Edition @value{EDITION} @* @value{UPDATED} @*" | |
1179 | msgstr "" | |
1180 | ||
1181 | #. type: node | |
1182 | #: doc/guix.texi:92 | |
1183 | #, no-wrap | |
1184 | msgid "Top" | |
1185 | msgstr "" | |
1186 | ||
1187 | #. type: top | |
1188 | #: doc/guix.texi:93 | |
1189 | #, no-wrap | |
1190 | msgid "GNU Guix" | |
1191 | msgstr "" | |
1192 | ||
1193 | #. type: Plain text | |
1194 | #: doc/guix.texi:97 | |
1195 | msgid "" | |
1196 | "This document describes GNU Guix version @value{VERSION}, a functional " | |
1197 | "package management tool written for the GNU system." | |
1198 | msgstr "" | |
1199 | ||
1200 | #. type: chapter | |
1201 | #: doc/guix.texi:106 doc/guix.texi:294 doc/guix.texi:295 | |
1202 | #, no-wrap | |
1203 | msgid "Introduction" | |
1204 | msgstr "" | |
1205 | ||
1206 | #. type: menuentry | |
1207 | #: doc/guix.texi:106 | |
1208 | msgid "What is Guix about?" | |
1209 | msgstr "" | |
1210 | ||
1211 | #. type: chapter | |
1212 | #: doc/guix.texi:106 doc/guix.texi:116 doc/guix.texi:367 doc/guix.texi:368 | |
1213 | #, no-wrap | |
1214 | msgid "Installation" | |
1215 | msgstr "" | |
1216 | ||
1217 | #. type: menuentry | |
1218 | #: doc/guix.texi:106 | |
1219 | msgid "Installing Guix." | |
1220 | msgstr "" | |
1221 | ||
1222 | #. type: chapter | |
1223 | #: doc/guix.texi:106 doc/guix.texi:131 doc/guix.texi:1652 doc/guix.texi:1653 | |
1224 | #, no-wrap | |
1225 | msgid "Package Management" | |
1226 | msgstr "" | |
1227 | ||
1228 | #. type: menuentry | |
1229 | #: doc/guix.texi:106 | |
1230 | msgid "Package installation, upgrade, etc." | |
1231 | msgstr "" | |
1232 | ||
1233 | #. type: chapter | |
1234 | #: doc/guix.texi:106 doc/guix.texi:151 doc/guix.texi:3106 doc/guix.texi:3107 | |
1235 | #, no-wrap | |
1236 | msgid "Programming Interface" | |
1237 | msgstr "" | |
1238 | ||
1239 | #. type: menuentry | |
1240 | #: doc/guix.texi:106 | |
1241 | msgid "Using Guix in Scheme." | |
1242 | msgstr "" | |
1243 | ||
1244 | #. type: chapter | |
1245 | #: doc/guix.texi:106 doc/guix.texi:165 doc/guix.texi:5362 doc/guix.texi:5363 | |
1246 | #, no-wrap | |
1247 | msgid "Utilities" | |
1248 | msgstr "" | |
1249 | ||
1250 | #. type: menuentry | |
1251 | #: doc/guix.texi:106 | |
1252 | msgid "Package management commands." | |
1253 | msgstr "" | |
1254 | ||
1255 | #. type: chapter | |
1256 | #: doc/guix.texi:106 doc/guix.texi:190 doc/guix.texi:7981 doc/guix.texi:7982 | |
1257 | #, no-wrap | |
1258 | msgid "GNU Distribution" | |
1259 | msgstr "" | |
1260 | ||
1261 | #. type: menuentry | |
1262 | #: doc/guix.texi:106 | |
1263 | msgid "Software for your friendly GNU system." | |
1264 | msgstr "" | |
1265 | ||
b9fe8fd6 JL |
1266 | #. type: menuentry |
1267 | #: doc/guix.texi:106 | |
1268 | msgid "Your help needed!" | |
1269 | msgstr "" | |
1270 | ||
1271 | #. type: chapter | |
39764ef8 | 1272 | #: doc/guix.texi:111 doc/guix.texi:22338 doc/guix.texi:22339 |
b9fe8fd6 JL |
1273 | #, no-wrap |
1274 | msgid "Acknowledgments" | |
1275 | msgstr "" | |
1276 | ||
1277 | #. type: menuentry | |
1278 | #: doc/guix.texi:111 | |
1279 | msgid "Thanks!" | |
1280 | msgstr "" | |
1281 | ||
1282 | #. type: appendix | |
39764ef8 | 1283 | #: doc/guix.texi:111 doc/guix.texi:22360 doc/guix.texi:22361 |
b9fe8fd6 JL |
1284 | #, no-wrap |
1285 | msgid "GNU Free Documentation License" | |
1286 | msgstr "" | |
1287 | ||
1288 | #. type: menuentry | |
1289 | #: doc/guix.texi:111 | |
1290 | msgid "The license of this manual." | |
1291 | msgstr "" | |
1292 | ||
1293 | #. type: unnumbered | |
39764ef8 | 1294 | #: doc/guix.texi:111 doc/guix.texi:22366 doc/guix.texi:22367 |
b9fe8fd6 JL |
1295 | #, no-wrap |
1296 | msgid "Concept Index" | |
1297 | msgstr "" | |
1298 | ||
1299 | #. type: menuentry | |
1300 | #: doc/guix.texi:111 | |
1301 | msgid "Concepts." | |
1302 | msgstr "" | |
1303 | ||
1304 | #. type: unnumbered | |
39764ef8 | 1305 | #: doc/guix.texi:111 doc/guix.texi:22370 doc/guix.texi:22371 |
b9fe8fd6 JL |
1306 | #, no-wrap |
1307 | msgid "Programming Index" | |
1308 | msgstr "" | |
1309 | ||
1310 | #. type: menuentry | |
1311 | #: doc/guix.texi:111 | |
1312 | msgid "Data types, functions, and variables." | |
1313 | msgstr "" | |
1314 | ||
1315 | #. type: menuentry | |
1316 | #: doc/guix.texi:114 | |
1317 | msgid "--- The Detailed Node Listing ---" | |
1318 | msgstr "" | |
1319 | ||
1320 | #. type: section | |
1321 | #: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:400 doc/guix.texi:401 | |
1322 | #, no-wrap | |
1323 | msgid "Binary Installation" | |
1324 | msgstr "" | |
1325 | ||
1326 | #. type: menuentry | |
1327 | #: doc/guix.texi:123 doc/guix.texi:398 | |
1328 | msgid "Getting Guix running in no time!" | |
1329 | msgstr "" | |
1330 | ||
1331 | #. type: section | |
1332 | #: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:596 doc/guix.texi:597 | |
1333 | #, no-wrap | |
1334 | msgid "Requirements" | |
1335 | msgstr "" | |
1336 | ||
1337 | #. type: menuentry | |
1338 | #: doc/guix.texi:123 doc/guix.texi:398 | |
1339 | msgid "Software needed to build and run Guix." | |
1340 | msgstr "" | |
1341 | ||
1342 | #. type: section | |
1343 | #: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:678 doc/guix.texi:679 | |
1344 | #, no-wrap | |
1345 | msgid "Running the Test Suite" | |
1346 | msgstr "" | |
1347 | ||
1348 | #. type: menuentry | |
1349 | #: doc/guix.texi:123 doc/guix.texi:398 | |
1350 | msgid "Testing Guix." | |
1351 | msgstr "" | |
1352 | ||
1353 | #. type: section | |
39764ef8 JL |
1354 | #: doc/guix.texi:123 doc/guix.texi:125 doc/guix.texi:398 doc/guix.texi:743 |
1355 | #: doc/guix.texi:744 | |
b9fe8fd6 JL |
1356 | #, no-wrap |
1357 | msgid "Setting Up the Daemon" | |
1358 | msgstr "" | |
1359 | ||
1360 | #. type: menuentry | |
1361 | #: doc/guix.texi:123 doc/guix.texi:398 | |
1362 | msgid "Preparing the build daemon's environment." | |
1363 | msgstr "" | |
1364 | ||
1365 | #. type: node | |
1366 | #: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:1176 | |
1367 | #, no-wrap | |
1368 | msgid "Invoking guix-daemon" | |
1369 | msgstr "" | |
1370 | ||
1371 | #. type: menuentry | |
1372 | #: doc/guix.texi:123 doc/guix.texi:398 | |
1373 | msgid "Running the build daemon." | |
1374 | msgstr "" | |
1375 | ||
1376 | #. type: section | |
1377 | #: doc/guix.texi:123 doc/guix.texi:398 doc/guix.texi:1441 doc/guix.texi:1442 | |
1378 | #, no-wrap | |
1379 | msgid "Application Setup" | |
1380 | msgstr "" | |
1381 | ||
1382 | #. type: menuentry | |
1383 | #: doc/guix.texi:123 doc/guix.texi:398 | |
1384 | msgid "Application-specific setup." | |
1385 | msgstr "" | |
1386 | ||
1387 | #. type: subsection | |
1388 | #: doc/guix.texi:129 doc/guix.texi:763 doc/guix.texi:765 doc/guix.texi:766 | |
1389 | #, no-wrap | |
1390 | msgid "Build Environment Setup" | |
1391 | msgstr "" | |
1392 | ||
1393 | #. type: menuentry | |
1394 | #: doc/guix.texi:129 doc/guix.texi:763 | |
1395 | msgid "Preparing the isolated build environment." | |
1396 | msgstr "" | |
1397 | ||
1398 | #. type: node | |
1399 | #: doc/guix.texi:129 doc/guix.texi:763 doc/guix.texi:882 | |
1400 | #, no-wrap | |
1401 | msgid "Daemon Offload Setup" | |
1402 | msgstr "" | |
1403 | ||
1404 | #. type: menuentry | |
1405 | #: doc/guix.texi:129 doc/guix.texi:763 | |
1406 | msgid "Offloading builds to remote machines." | |
1407 | msgstr "" | |
1408 | ||
1409 | #. type: subsection | |
1410 | #: doc/guix.texi:129 doc/guix.texi:763 doc/guix.texi:1090 doc/guix.texi:1091 | |
1411 | #, no-wrap | |
1412 | msgid "SELinux Support" | |
1413 | msgstr "" | |
1414 | ||
1415 | #. type: menuentry | |
1416 | #: doc/guix.texi:129 doc/guix.texi:763 | |
1417 | msgid "Using an SELinux policy for the daemon." | |
1418 | msgstr "" | |
1419 | ||
1420 | #. type: section | |
1421 | #: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:1684 doc/guix.texi:1685 | |
1422 | #, no-wrap | |
1423 | msgid "Features" | |
1424 | msgstr "" | |
1425 | ||
1426 | #. type: menuentry | |
1427 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1428 | msgid "How Guix will make your life brighter." | |
1429 | msgstr "" | |
1430 | ||
1431 | #. type: node | |
1432 | #: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:1761 | |
1433 | #, no-wrap | |
1434 | msgid "Invoking guix package" | |
1435 | msgstr "" | |
1436 | ||
1437 | #. type: menuentry | |
1438 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1439 | msgid "Package installation, removal, etc." | |
1440 | msgstr "" | |
1441 | ||
1442 | #. type: section | |
39764ef8 JL |
1443 | #: doc/guix.texi:140 doc/guix.texi:142 doc/guix.texi:1682 doc/guix.texi:2245 |
1444 | #: doc/guix.texi:2246 | |
b9fe8fd6 JL |
1445 | #, no-wrap |
1446 | msgid "Substitutes" | |
1447 | msgstr "" | |
1448 | ||
1449 | #. type: menuentry | |
1450 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1451 | msgid "Downloading pre-built binaries." | |
1452 | msgstr "" | |
1453 | ||
1454 | #. type: section | |
1455 | #: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2478 doc/guix.texi:2479 | |
1456 | #, no-wrap | |
1457 | msgid "Packages with Multiple Outputs" | |
1458 | msgstr "" | |
1459 | ||
1460 | #. type: menuentry | |
1461 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1462 | msgid "Single source package, multiple outputs." | |
1463 | msgstr "" | |
1464 | ||
1465 | #. type: node | |
1466 | #: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2532 | |
1467 | #, no-wrap | |
1468 | msgid "Invoking guix gc" | |
1469 | msgstr "" | |
1470 | ||
1471 | #. type: menuentry | |
1472 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1473 | msgid "Running the garbage collector." | |
1474 | msgstr "" | |
1475 | ||
1476 | #. type: node | |
1477 | #: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2720 | |
1478 | #, no-wrap | |
1479 | msgid "Invoking guix pull" | |
1480 | msgstr "" | |
1481 | ||
1482 | #. type: menuentry | |
1483 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1484 | msgid "Fetching the latest Guix and distribution." | |
1485 | msgstr "" | |
1486 | ||
1487 | #. type: node | |
1488 | #: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2781 | |
1489 | #, no-wrap | |
1490 | msgid "Invoking guix pack" | |
1491 | msgstr "" | |
1492 | ||
1493 | #. type: menuentry | |
1494 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1495 | msgid "Creating software bundles." | |
1496 | msgstr "" | |
1497 | ||
1498 | #. type: node | |
1499 | #: doc/guix.texi:140 doc/guix.texi:1682 doc/guix.texi:2941 | |
1500 | #, no-wrap | |
1501 | msgid "Invoking guix archive" | |
1502 | msgstr "" | |
1503 | ||
1504 | #. type: menuentry | |
1505 | #: doc/guix.texi:140 doc/guix.texi:1682 | |
1506 | msgid "Exporting and importing store files." | |
1507 | msgstr "" | |
1508 | ||
1509 | #. type: subsection | |
1510 | #: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2270 doc/guix.texi:2271 | |
1511 | #, no-wrap | |
1512 | msgid "Official Substitute Server" | |
1513 | msgstr "" | |
1514 | ||
1515 | #. type: menuentry | |
1516 | #: doc/guix.texi:149 doc/guix.texi:2268 | |
1517 | msgid "One particular source of substitutes." | |
1518 | msgstr "" | |
1519 | ||
1520 | #. type: subsection | |
1521 | #: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2300 doc/guix.texi:2301 | |
1522 | #, no-wrap | |
1523 | msgid "Substitute Server Authorization" | |
1524 | msgstr "" | |
1525 | ||
1526 | #. type: menuentry | |
1527 | #: doc/guix.texi:149 doc/guix.texi:2268 | |
1528 | msgid "How to enable or disable substitutes." | |
1529 | msgstr "" | |
1530 | ||
1531 | #. type: subsection | |
1532 | #: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2373 doc/guix.texi:2374 | |
1533 | #, no-wrap | |
1534 | msgid "Substitute Authentication" | |
1535 | msgstr "" | |
1536 | ||
1537 | #. type: menuentry | |
1538 | #: doc/guix.texi:149 doc/guix.texi:2268 | |
1539 | msgid "How Guix verifies substitutes." | |
1540 | msgstr "" | |
1541 | ||
1542 | #. type: subsection | |
1543 | #: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2408 doc/guix.texi:2409 | |
1544 | #, no-wrap | |
1545 | msgid "Proxy Settings" | |
1546 | msgstr "" | |
1547 | ||
1548 | #. type: menuentry | |
1549 | #: doc/guix.texi:149 doc/guix.texi:2268 | |
1550 | msgid "How to get substitutes via proxy." | |
1551 | msgstr "" | |
1552 | ||
1553 | #. type: subsection | |
1554 | #: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2420 doc/guix.texi:2421 | |
1555 | #, no-wrap | |
1556 | msgid "Substitution Failure" | |
1557 | msgstr "" | |
1558 | ||
1559 | #. type: menuentry | |
1560 | #: doc/guix.texi:149 doc/guix.texi:2268 | |
1561 | msgid "What happens when substitution fails." | |
1562 | msgstr "" | |
1563 | ||
1564 | #. type: subsection | |
1565 | #: doc/guix.texi:149 doc/guix.texi:2268 doc/guix.texi:2448 doc/guix.texi:2449 | |
1566 | #, no-wrap | |
1567 | msgid "On Trusting Binaries" | |
1568 | msgstr "" | |
1569 | ||
1570 | #. type: menuentry | |
1571 | #: doc/guix.texi:149 doc/guix.texi:2268 | |
1572 | msgid "How can you trust that binary blob?" | |
1573 | msgstr "" | |
1574 | ||
1575 | #. type: section | |
39764ef8 JL |
1576 | #: doc/guix.texi:158 doc/guix.texi:160 doc/guix.texi:3141 doc/guix.texi:3143 |
1577 | #: doc/guix.texi:3144 | |
b9fe8fd6 JL |
1578 | #, no-wrap |
1579 | msgid "Defining Packages" | |
1580 | msgstr "" | |
1581 | ||
1582 | #. type: menuentry | |
1583 | #: doc/guix.texi:158 doc/guix.texi:3141 | |
1584 | msgid "Defining new packages." | |
1585 | msgstr "" | |
1586 | ||
1587 | #. type: section | |
1588 | #: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:3607 doc/guix.texi:3608 | |
1589 | #, no-wrap | |
1590 | msgid "Build Systems" | |
1591 | msgstr "" | |
1592 | ||
1593 | #. type: menuentry | |
1594 | #: doc/guix.texi:158 doc/guix.texi:3141 | |
1595 | msgid "Specifying how packages are built." | |
1596 | msgstr "" | |
1597 | ||
1598 | #. type: section | |
1599 | #: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4183 doc/guix.texi:4184 | |
1600 | #, no-wrap | |
1601 | msgid "The Store" | |
1602 | msgstr "" | |
1603 | ||
1604 | #. type: menuentry | |
1605 | #: doc/guix.texi:158 doc/guix.texi:3141 | |
1606 | msgid "Manipulating the package store." | |
1607 | msgstr "" | |
1608 | ||
1609 | #. type: section | |
1610 | #: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4333 doc/guix.texi:4334 | |
1611 | #, no-wrap | |
1612 | msgid "Derivations" | |
1613 | msgstr "" | |
1614 | ||
1615 | #. type: menuentry | |
1616 | #: doc/guix.texi:158 doc/guix.texi:3141 | |
1617 | msgid "Low-level interface to package derivations." | |
1618 | msgstr "" | |
1619 | ||
1620 | #. type: section | |
1621 | #: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4511 doc/guix.texi:4512 | |
1622 | #, no-wrap | |
1623 | msgid "The Store Monad" | |
1624 | msgstr "" | |
1625 | ||
1626 | #. type: menuentry | |
1627 | #: doc/guix.texi:158 doc/guix.texi:3141 | |
1628 | msgid "Purely functional interface to the store." | |
1629 | msgstr "" | |
1630 | ||
1631 | #. type: section | |
1632 | #: doc/guix.texi:158 doc/guix.texi:3141 doc/guix.texi:4820 doc/guix.texi:4821 | |
1633 | #, no-wrap | |
1634 | msgid "G-Expressions" | |
1635 | msgstr "" | |
1636 | ||
1637 | #. type: menuentry | |
1638 | #: doc/guix.texi:158 doc/guix.texi:3141 | |
1639 | msgid "Manipulating build expressions." | |
1640 | msgstr "" | |
1641 | ||
1642 | #. type: node | |
1643 | #: doc/guix.texi:163 doc/guix.texi:3389 doc/guix.texi:3392 | |
1644 | #, no-wrap | |
1645 | msgid "package Reference" | |
1646 | msgstr "" | |
1647 | ||
1648 | #. type: menuentry | |
1649 | #: doc/guix.texi:163 doc/guix.texi:3389 | |
1650 | msgid "The package data type." | |
1651 | msgstr "" | |
1652 | ||
1653 | #. type: node | |
1654 | #: doc/guix.texi:163 doc/guix.texi:3389 doc/guix.texi:3519 | |
1655 | #, no-wrap | |
1656 | msgid "origin Reference" | |
1657 | msgstr "" | |
1658 | ||
1659 | #. type: menuentry | |
1660 | #: doc/guix.texi:163 doc/guix.texi:3389 | |
1661 | msgid "The origin data type." | |
1662 | msgstr "" | |
1663 | ||
1664 | #. type: node | |
1665 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:5388 | |
1666 | #, no-wrap | |
1667 | msgid "Invoking guix build" | |
1668 | msgstr "" | |
1669 | ||
1670 | #. type: menuentry | |
1671 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1672 | msgid "Building packages from the command line." | |
1673 | msgstr "" | |
1674 | ||
1675 | #. type: node | |
1676 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:5968 | |
1677 | #, no-wrap | |
1678 | msgid "Invoking guix edit" | |
1679 | msgstr "" | |
1680 | ||
1681 | #. type: menuentry | |
1682 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1683 | msgid "Editing package definitions." | |
1684 | msgstr "" | |
1685 | ||
1686 | #. type: node | |
1687 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:5994 | |
1688 | #, no-wrap | |
1689 | msgid "Invoking guix download" | |
1690 | msgstr "" | |
1691 | ||
1692 | #. type: menuentry | |
1693 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1694 | msgid "Downloading a file and printing its hash." | |
1695 | msgstr "" | |
1696 | ||
1697 | #. type: node | |
1698 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6047 | |
1699 | #, no-wrap | |
1700 | msgid "Invoking guix hash" | |
1701 | msgstr "" | |
1702 | ||
1703 | #. type: menuentry | |
1704 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1705 | msgid "Computing the cryptographic hash of a file." | |
1706 | msgstr "" | |
1707 | ||
1708 | #. type: node | |
1709 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6109 | |
1710 | #, no-wrap | |
1711 | msgid "Invoking guix import" | |
1712 | msgstr "" | |
1713 | ||
1714 | #. type: menuentry | |
1715 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1716 | msgid "Importing package definitions." | |
1717 | msgstr "" | |
1718 | ||
1719 | #. type: node | |
1720 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6476 | |
1721 | #, no-wrap | |
1722 | msgid "Invoking guix refresh" | |
1723 | msgstr "" | |
1724 | ||
1725 | #. type: menuentry | |
1726 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1727 | msgid "Updating package definitions." | |
1728 | msgstr "" | |
1729 | ||
1730 | #. type: node | |
1731 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6723 | |
1732 | #, no-wrap | |
1733 | msgid "Invoking guix lint" | |
1734 | msgstr "" | |
1735 | ||
1736 | #. type: menuentry | |
1737 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1738 | msgid "Finding errors in package definitions." | |
1739 | msgstr "" | |
1740 | ||
1741 | #. type: node | |
1742 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6814 | |
1743 | #, no-wrap | |
1744 | msgid "Invoking guix size" | |
1745 | msgstr "" | |
1746 | ||
1747 | #. type: menuentry | |
1748 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1749 | msgid "Profiling disk usage." | |
1750 | msgstr "" | |
1751 | ||
1752 | #. type: node | |
1753 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:6930 | |
1754 | #, no-wrap | |
1755 | msgid "Invoking guix graph" | |
1756 | msgstr "" | |
1757 | ||
1758 | #. type: menuentry | |
1759 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1760 | msgid "Visualizing the graph of packages." | |
1761 | msgstr "" | |
1762 | ||
1763 | #. type: node | |
1764 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7109 | |
1765 | #, no-wrap | |
1766 | msgid "Invoking guix environment" | |
1767 | msgstr "" | |
1768 | ||
1769 | #. type: menuentry | |
1770 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1771 | msgid "Setting up development environments." | |
1772 | msgstr "" | |
1773 | ||
1774 | #. type: node | |
1775 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7428 | |
1776 | #, no-wrap | |
1777 | msgid "Invoking guix publish" | |
1778 | msgstr "" | |
1779 | ||
1780 | #. type: menuentry | |
1781 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1782 | msgid "Sharing substitutes." | |
1783 | msgstr "" | |
1784 | ||
1785 | #. type: node | |
1786 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7645 | |
1787 | #, no-wrap | |
1788 | msgid "Invoking guix challenge" | |
1789 | msgstr "" | |
1790 | ||
1791 | #. type: menuentry | |
1792 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1793 | msgid "Challenging substitute servers." | |
1794 | msgstr "" | |
1795 | ||
1796 | #. type: node | |
1797 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7784 | |
1798 | #, no-wrap | |
1799 | msgid "Invoking guix copy" | |
1800 | msgstr "" | |
1801 | ||
1802 | #. type: menuentry | |
1803 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1804 | msgid "Copying to and from a remote store." | |
1805 | msgstr "" | |
1806 | ||
1807 | #. type: node | |
1808 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7847 | |
1809 | #, no-wrap | |
1810 | msgid "Invoking guix container" | |
1811 | msgstr "" | |
1812 | ||
1813 | #. type: menuentry | |
1814 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1815 | msgid "Process isolation." | |
1816 | msgstr "" | |
1817 | ||
1818 | #. type: node | |
1819 | #: doc/guix.texi:181 doc/guix.texi:5386 doc/guix.texi:7901 | |
1820 | #, no-wrap | |
1821 | msgid "Invoking guix weather" | |
1822 | msgstr "" | |
1823 | ||
1824 | #. type: menuentry | |
1825 | #: doc/guix.texi:181 doc/guix.texi:5386 | |
1826 | msgid "Assessing substitute availability." | |
1827 | msgstr "" | |
1828 | ||
1829 | #. type: section | |
1830 | #: doc/guix.texi:183 doc/guix.texi:5389 | |
1831 | #, no-wrap | |
1832 | msgid "Invoking @command{guix build}" | |
1833 | msgstr "" | |
1834 | ||
1835 | #. type: subsection | |
1836 | #: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5442 doc/guix.texi:5443 | |
1837 | #, no-wrap | |
1838 | msgid "Common Build Options" | |
1839 | msgstr "" | |
1840 | ||
1841 | #. type: menuentry | |
1842 | #: doc/guix.texi:188 doc/guix.texi:5440 | |
1843 | msgid "Build options for most commands." | |
1844 | msgstr "" | |
1845 | ||
1846 | #. type: subsection | |
1847 | #: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5584 doc/guix.texi:5585 | |
1848 | #, no-wrap | |
1849 | msgid "Package Transformation Options" | |
1850 | msgstr "" | |
1851 | ||
1852 | #. type: menuentry | |
1853 | #: doc/guix.texi:188 doc/guix.texi:5440 | |
1854 | msgid "Creating variants of packages." | |
1855 | msgstr "" | |
1856 | ||
1857 | #. type: subsection | |
1858 | #: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5684 doc/guix.texi:5685 | |
1859 | #, no-wrap | |
1860 | msgid "Additional Build Options" | |
1861 | msgstr "" | |
1862 | ||
1863 | #. type: menuentry | |
1864 | #: doc/guix.texi:188 doc/guix.texi:5440 | |
1865 | msgid "Options specific to 'guix build'." | |
1866 | msgstr "" | |
1867 | ||
1868 | #. type: subsection | |
1869 | #: doc/guix.texi:188 doc/guix.texi:5440 doc/guix.texi:5888 doc/guix.texi:5889 | |
1870 | #, no-wrap | |
1871 | msgid "Debugging Build Failures" | |
1872 | msgstr "" | |
1873 | ||
1874 | #. type: menuentry | |
1875 | #: doc/guix.texi:188 doc/guix.texi:5440 | |
1876 | msgid "Real life packaging experience." | |
1877 | msgstr "" | |
1878 | ||
1879 | #. type: section | |
39764ef8 JL |
1880 | #: doc/guix.texi:200 doc/guix.texi:202 doc/guix.texi:8053 doc/guix.texi:8058 |
1881 | #: doc/guix.texi:8059 | |
b9fe8fd6 JL |
1882 | #, no-wrap |
1883 | msgid "System Installation" | |
1884 | msgstr "" | |
1885 | ||
1886 | #. type: menuentry | |
1887 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1888 | msgid "Installing the whole operating system." | |
1889 | msgstr "" | |
1890 | ||
1891 | #. type: section | |
39764ef8 JL |
1892 | #: doc/guix.texi:200 doc/guix.texi:212 doc/guix.texi:8053 doc/guix.texi:8674 |
1893 | #: doc/guix.texi:8675 | |
b9fe8fd6 JL |
1894 | #, no-wrap |
1895 | msgid "System Configuration" | |
1896 | msgstr "" | |
1897 | ||
1898 | #. type: menuentry | |
1899 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1900 | msgid "Configuring the operating system." | |
1901 | msgstr "" | |
1902 | ||
1903 | #. type: section | |
39764ef8 | 1904 | #: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21351 doc/guix.texi:21352 |
b9fe8fd6 JL |
1905 | #, no-wrap |
1906 | msgid "Documentation" | |
1907 | msgstr "" | |
1908 | ||
1909 | #. type: menuentry | |
1910 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1911 | msgid "Browsing software user manuals." | |
1912 | msgstr "" | |
1913 | ||
1914 | #. type: section | |
39764ef8 | 1915 | #: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21415 doc/guix.texi:21416 |
b9fe8fd6 JL |
1916 | #, no-wrap |
1917 | msgid "Installing Debugging Files" | |
1918 | msgstr "" | |
1919 | ||
1920 | #. type: menuentry | |
1921 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1922 | msgid "Feeding the debugger." | |
1923 | msgstr "" | |
1924 | ||
1925 | #. type: section | |
39764ef8 | 1926 | #: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21481 doc/guix.texi:21482 |
b9fe8fd6 JL |
1927 | #, no-wrap |
1928 | msgid "Security Updates" | |
1929 | msgstr "" | |
1930 | ||
1931 | #. type: menuentry | |
1932 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1933 | msgid "Deploying security fixes quickly." | |
1934 | msgstr "" | |
1935 | ||
1936 | #. type: section | |
39764ef8 | 1937 | #: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:21601 doc/guix.texi:21602 |
b9fe8fd6 JL |
1938 | #, no-wrap |
1939 | msgid "Package Modules" | |
1940 | msgstr "" | |
1941 | ||
1942 | #. type: menuentry | |
1943 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1944 | msgid "Packages from the programmer's viewpoint." | |
1945 | msgstr "" | |
1946 | ||
1947 | #. type: section | |
39764ef8 JL |
1948 | #: doc/guix.texi:200 doc/guix.texi:265 doc/guix.texi:8053 doc/guix.texi:21655 |
1949 | #: doc/guix.texi:21656 | |
b9fe8fd6 JL |
1950 | #, no-wrap |
1951 | msgid "Packaging Guidelines" | |
1952 | msgstr "" | |
1953 | ||
1954 | #. type: menuentry | |
1955 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1956 | msgid "Growing the distribution." | |
1957 | msgstr "" | |
1958 | ||
1959 | #. type: section | |
39764ef8 | 1960 | #: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:22106 doc/guix.texi:22107 |
b9fe8fd6 JL |
1961 | #, no-wrap |
1962 | msgid "Bootstrapping" | |
1963 | msgstr "" | |
1964 | ||
1965 | #. type: menuentry | |
1966 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1967 | msgid "GNU/Linux built from scratch." | |
1968 | msgstr "" | |
1969 | ||
1970 | #. type: node | |
39764ef8 | 1971 | #: doc/guix.texi:200 doc/guix.texi:8053 doc/guix.texi:22290 |
b9fe8fd6 JL |
1972 | #, no-wrap |
1973 | msgid "Porting" | |
1974 | msgstr "" | |
1975 | ||
1976 | #. type: menuentry | |
1977 | #: doc/guix.texi:200 doc/guix.texi:8053 | |
1978 | msgid "Targeting another platform or kernel." | |
1979 | msgstr "" | |
1980 | ||
1981 | #. type: subsection | |
39764ef8 JL |
1982 | #: doc/guix.texi:210 doc/guix.texi:1126 doc/guix.texi:8090 doc/guix.texi:8092 |
1983 | #: doc/guix.texi:8093 | |
b9fe8fd6 JL |
1984 | #, no-wrap |
1985 | msgid "Limitations" | |
1986 | msgstr "" | |
1987 | ||
1988 | #. type: menuentry | |
1989 | #: doc/guix.texi:210 doc/guix.texi:8090 | |
1990 | msgid "What you can expect." | |
1991 | msgstr "" | |
1992 | ||
1993 | #. type: subsection | |
1994 | #: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8136 doc/guix.texi:8137 | |
1995 | #, no-wrap | |
1996 | msgid "Hardware Considerations" | |
1997 | msgstr "" | |
1998 | ||
1999 | #. type: menuentry | |
2000 | #: doc/guix.texi:210 doc/guix.texi:8090 | |
2001 | msgid "Supported hardware." | |
2002 | msgstr "" | |
2003 | ||
2004 | #. type: subsection | |
2005 | #: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8171 doc/guix.texi:8172 | |
2006 | #, no-wrap | |
2007 | msgid "USB Stick and DVD Installation" | |
2008 | msgstr "" | |
2009 | ||
2010 | #. type: menuentry | |
2011 | #: doc/guix.texi:210 doc/guix.texi:8090 | |
2012 | msgid "Preparing the installation medium." | |
2013 | msgstr "" | |
2014 | ||
2015 | #. type: subsection | |
2016 | #: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8269 doc/guix.texi:8270 | |
2017 | #, no-wrap | |
2018 | msgid "Preparing for Installation" | |
2019 | msgstr "" | |
2020 | ||
2021 | #. type: menuentry | |
2022 | #: doc/guix.texi:210 doc/guix.texi:8090 | |
2023 | msgid "Networking, partitioning, etc." | |
2024 | msgstr "" | |
2025 | ||
2026 | #. type: subsection | |
2027 | #: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8508 doc/guix.texi:8509 | |
2028 | #, no-wrap | |
2029 | msgid "Proceeding with the Installation" | |
2030 | msgstr "" | |
2031 | ||
2032 | #. type: menuentry | |
2033 | #: doc/guix.texi:210 doc/guix.texi:8090 | |
2034 | msgid "The real thing." | |
2035 | msgstr "" | |
2036 | ||
2037 | #. type: node | |
2038 | #: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8605 | |
2039 | #, no-wrap | |
2040 | msgid "Installing GuixSD in a VM" | |
2041 | msgstr "" | |
2042 | ||
2043 | #. type: menuentry | |
2044 | #: doc/guix.texi:210 doc/guix.texi:8090 | |
2045 | msgid "GuixSD playground." | |
2046 | msgstr "" | |
2047 | ||
2048 | #. type: subsection | |
2049 | #: doc/guix.texi:210 doc/guix.texi:8090 doc/guix.texi:8659 doc/guix.texi:8660 | |
2050 | #, no-wrap | |
2051 | msgid "Building the Installation Image" | |
2052 | msgstr "" | |
2053 | ||
2054 | #. type: menuentry | |
2055 | #: doc/guix.texi:210 doc/guix.texi:8090 | |
2056 | msgid "How this comes to be." | |
2057 | msgstr "" | |
2058 | ||
2059 | #. type: subsection | |
2060 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:8717 doc/guix.texi:8718 | |
2061 | #, no-wrap | |
2062 | msgid "Using the Configuration System" | |
2063 | msgstr "" | |
2064 | ||
2065 | #. type: menuentry | |
2066 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2067 | msgid "Customizing your GNU system." | |
2068 | msgstr "" | |
2069 | ||
2070 | #. type: node | |
2071 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:8933 | |
2072 | #, no-wrap | |
2073 | msgid "operating-system Reference" | |
2074 | msgstr "" | |
2075 | ||
2076 | #. type: menuentry | |
2077 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2078 | msgid "Detail of operating-system declarations." | |
2079 | msgstr "" | |
2080 | ||
2081 | #. type: subsection | |
2082 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:9087 doc/guix.texi:9088 | |
2083 | #, no-wrap | |
2084 | msgid "File Systems" | |
2085 | msgstr "" | |
2086 | ||
2087 | #. type: menuentry | |
2088 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2089 | msgid "Configuring file system mounts." | |
2090 | msgstr "" | |
2091 | ||
2092 | #. type: subsection | |
2093 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:9250 doc/guix.texi:9251 | |
2094 | #, no-wrap | |
2095 | msgid "Mapped Devices" | |
2096 | msgstr "" | |
2097 | ||
2098 | #. type: menuentry | |
2099 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2100 | msgid "Block device extra processing." | |
2101 | msgstr "" | |
2102 | ||
2103 | #. type: subsection | |
2104 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:9371 doc/guix.texi:9372 | |
2105 | #, no-wrap | |
2106 | msgid "User Accounts" | |
2107 | msgstr "" | |
2108 | ||
2109 | #. type: menuentry | |
2110 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2111 | msgid "Specifying user accounts." | |
2112 | msgstr "" | |
2113 | ||
2114 | #. type: subsection | |
39764ef8 JL |
2115 | #: doc/guix.texi:228 doc/guix.texi:1449 doc/guix.texi:8715 doc/guix.texi:9506 |
2116 | #: doc/guix.texi:9507 | |
b9fe8fd6 JL |
2117 | #, no-wrap |
2118 | msgid "Locales" | |
2119 | msgstr "" | |
2120 | ||
2121 | #. type: menuentry | |
2122 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2123 | msgid "Language and cultural convention settings." | |
2124 | msgstr "" | |
2125 | ||
2126 | #. type: subsection | |
39764ef8 JL |
2127 | #: doc/guix.texi:228 doc/guix.texi:230 doc/guix.texi:8715 doc/guix.texi:9646 |
2128 | #: doc/guix.texi:9647 | |
b9fe8fd6 JL |
2129 | #, no-wrap |
2130 | msgid "Services" | |
2131 | msgstr "" | |
2132 | ||
2133 | #. type: menuentry | |
2134 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2135 | msgid "Specifying system services." | |
2136 | msgstr "" | |
2137 | ||
2138 | #. type: subsection | |
39764ef8 | 2139 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:19720 doc/guix.texi:19721 |
b9fe8fd6 JL |
2140 | #, no-wrap |
2141 | msgid "Setuid Programs" | |
2142 | msgstr "" | |
2143 | ||
2144 | #. type: menuentry | |
2145 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2146 | msgid "Programs running with root privileges." | |
2147 | msgstr "" | |
2148 | ||
2149 | #. type: subsection | |
39764ef8 JL |
2150 | #: doc/guix.texi:228 doc/guix.texi:1594 doc/guix.texi:8715 doc/guix.texi:19766 |
2151 | #: doc/guix.texi:19767 | |
b9fe8fd6 JL |
2152 | #, no-wrap |
2153 | msgid "X.509 Certificates" | |
2154 | msgstr "" | |
2155 | ||
2156 | #. type: menuentry | |
2157 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2158 | msgid "Authenticating HTTPS servers." | |
2159 | msgstr "" | |
2160 | ||
2161 | #. type: subsection | |
39764ef8 JL |
2162 | #: doc/guix.texi:228 doc/guix.texi:1492 doc/guix.texi:8715 doc/guix.texi:19829 |
2163 | #: doc/guix.texi:19830 | |
b9fe8fd6 JL |
2164 | #, no-wrap |
2165 | msgid "Name Service Switch" | |
2166 | msgstr "" | |
2167 | ||
2168 | #. type: menuentry | |
2169 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2170 | msgid "Configuring libc's name service switch." | |
2171 | msgstr "" | |
2172 | ||
2173 | #. type: subsection | |
39764ef8 | 2174 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:19967 doc/guix.texi:19968 |
b9fe8fd6 JL |
2175 | #, no-wrap |
2176 | msgid "Initial RAM Disk" | |
2177 | msgstr "" | |
2178 | ||
2179 | #. type: menuentry | |
2180 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2181 | msgid "Linux-Libre bootstrapping." | |
2182 | msgstr "" | |
2183 | ||
2184 | #. type: subsection | |
39764ef8 | 2185 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:20127 doc/guix.texi:20128 |
b9fe8fd6 JL |
2186 | #, no-wrap |
2187 | msgid "Bootloader Configuration" | |
2188 | msgstr "" | |
2189 | ||
2190 | #. type: menuentry | |
2191 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2192 | msgid "Configuring the boot loader." | |
2193 | msgstr "" | |
2194 | ||
2195 | #. type: node | |
39764ef8 | 2196 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:20298 |
b9fe8fd6 JL |
2197 | #, no-wrap |
2198 | msgid "Invoking guix system" | |
2199 | msgstr "" | |
2200 | ||
2201 | #. type: menuentry | |
2202 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2203 | msgid "Instantiating a system configuration." | |
2204 | msgstr "" | |
2205 | ||
2206 | #. type: node | |
39764ef8 | 2207 | #: doc/guix.texi:228 doc/guix.texi:8715 doc/guix.texi:20723 |
b9fe8fd6 JL |
2208 | #, no-wrap |
2209 | msgid "Running GuixSD in a VM" | |
2210 | msgstr "" | |
2211 | ||
2212 | #. type: menuentry | |
2213 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2214 | msgid "How to run GuixSD in a virtual machine." | |
2215 | msgstr "" | |
2216 | ||
2217 | #. type: subsection | |
39764ef8 JL |
2218 | #: doc/guix.texi:228 doc/guix.texi:258 doc/guix.texi:8715 doc/guix.texi:20834 |
2219 | #: doc/guix.texi:20835 | |
b9fe8fd6 JL |
2220 | #, no-wrap |
2221 | msgid "Defining Services" | |
2222 | msgstr "" | |
2223 | ||
2224 | #. type: menuentry | |
2225 | #: doc/guix.texi:228 doc/guix.texi:8715 | |
2226 | msgid "Adding new service definitions." | |
2227 | msgstr "" | |
2228 | ||
2229 | #. type: subsubsection | |
2230 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:9720 doc/guix.texi:9721 | |
2231 | #, no-wrap | |
2232 | msgid "Base Services" | |
2233 | msgstr "" | |
2234 | ||
2235 | #. type: menuentry | |
2236 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2237 | msgid "Essential system services." | |
2238 | msgstr "" | |
2239 | ||
2240 | #. type: subsubsection | |
2241 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:10488 doc/guix.texi:10489 | |
2242 | #, no-wrap | |
2243 | msgid "Scheduled Job Execution" | |
2244 | msgstr "" | |
2245 | ||
2246 | #. type: menuentry | |
2247 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2248 | msgid "The mcron service." | |
2249 | msgstr "" | |
2250 | ||
2251 | #. type: subsubsection | |
2252 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:10583 doc/guix.texi:10584 | |
2253 | #, no-wrap | |
2254 | msgid "Log Rotation" | |
2255 | msgstr "" | |
2256 | ||
2257 | #. type: menuentry | |
2258 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2259 | msgid "The rottlog service." | |
2260 | msgstr "" | |
2261 | ||
2262 | #. type: subsubsection | |
2263 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:10685 doc/guix.texi:10686 | |
2264 | #, no-wrap | |
2265 | msgid "Networking Services" | |
2266 | msgstr "" | |
2267 | ||
2268 | #. type: menuentry | |
2269 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2270 | msgid "Network setup, SSH daemon, etc." | |
2271 | msgstr "" | |
2272 | ||
2273 | #. type: subsubsection | |
39764ef8 | 2274 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:11431 doc/guix.texi:11432 |
b9fe8fd6 JL |
2275 | #, no-wrap |
2276 | msgid "X Window" | |
2277 | msgstr "" | |
2278 | ||
2279 | #. type: menuentry | |
2280 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2281 | msgid "Graphical display." | |
2282 | msgstr "" | |
2283 | ||
2284 | #. type: subsubsection | |
39764ef8 | 2285 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:11677 doc/guix.texi:11678 |
b9fe8fd6 JL |
2286 | #, no-wrap |
2287 | msgid "Printing Services" | |
2288 | msgstr "" | |
2289 | ||
2290 | #. type: menuentry | |
2291 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2292 | msgid "Local and remote printer support." | |
2293 | msgstr "" | |
2294 | ||
2295 | #. type: subsubsection | |
39764ef8 | 2296 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:12514 doc/guix.texi:12515 |
b9fe8fd6 JL |
2297 | #, no-wrap |
2298 | msgid "Desktop Services" | |
2299 | msgstr "" | |
2300 | ||
2301 | #. type: menuentry | |
2302 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2303 | msgid "D-Bus and desktop services." | |
2304 | msgstr "" | |
2305 | ||
2306 | #. type: subsubsection | |
39764ef8 | 2307 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:12807 doc/guix.texi:12808 |
b9fe8fd6 JL |
2308 | #, no-wrap |
2309 | msgid "Database Services" | |
2310 | msgstr "" | |
2311 | ||
2312 | #. type: menuentry | |
2313 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2314 | msgid "SQL databases, key-value stores, etc." | |
2315 | msgstr "" | |
2316 | ||
2317 | #. type: subsubsection | |
39764ef8 | 2318 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:12931 doc/guix.texi:12932 |
b9fe8fd6 JL |
2319 | #, no-wrap |
2320 | msgid "Mail Services" | |
2321 | msgstr "" | |
2322 | ||
2323 | #. type: menuentry | |
2324 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2325 | msgid "IMAP, POP3, SMTP, and all that." | |
2326 | msgstr "" | |
2327 | ||
2328 | #. type: subsubsection | |
39764ef8 | 2329 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:14383 doc/guix.texi:14384 |
b9fe8fd6 JL |
2330 | #, no-wrap |
2331 | msgid "Messaging Services" | |
2332 | msgstr "" | |
2333 | ||
2334 | #. type: menuentry | |
2335 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2336 | msgid "Messaging services." | |
2337 | msgstr "" | |
2338 | ||
2339 | #. type: subsubsection | |
39764ef8 | 2340 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:14851 doc/guix.texi:14852 |
b9fe8fd6 JL |
2341 | #, no-wrap |
2342 | msgid "Telephony Services" | |
2343 | msgstr "" | |
2344 | ||
2345 | #. type: menuentry | |
2346 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2347 | msgid "Telephony services." | |
2348 | msgstr "" | |
2349 | ||
2350 | #. type: subsubsection | |
39764ef8 | 2351 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15056 doc/guix.texi:15057 |
b9fe8fd6 JL |
2352 | #, no-wrap |
2353 | msgid "Monitoring Services" | |
2354 | msgstr "" | |
2355 | ||
2356 | #. type: menuentry | |
2357 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2358 | msgid "Monitoring services." | |
2359 | msgstr "" | |
2360 | ||
2361 | #. type: subsubsection | |
39764ef8 | 2362 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15209 doc/guix.texi:15210 |
b9fe8fd6 JL |
2363 | #, no-wrap |
2364 | msgid "Kerberos Services" | |
2365 | msgstr "" | |
2366 | ||
2367 | #. type: menuentry | |
2368 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2369 | msgid "Kerberos services." | |
2370 | msgstr "" | |
2371 | ||
2372 | #. type: subsubsection | |
39764ef8 | 2373 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15335 doc/guix.texi:15336 |
b9fe8fd6 JL |
2374 | #, no-wrap |
2375 | msgid "Web Services" | |
2376 | msgstr "" | |
2377 | ||
2378 | #. type: menuentry | |
2379 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2380 | msgid "Web servers." | |
2381 | msgstr "" | |
2382 | ||
2383 | #. type: subsubsection | |
39764ef8 | 2384 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:15944 doc/guix.texi:15945 |
b9fe8fd6 JL |
2385 | #, no-wrap |
2386 | msgid "Certificate Services" | |
2387 | msgstr "" | |
2388 | ||
2389 | #. type: menuentry | |
2390 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2391 | msgid "TLS certificates via Let's Encrypt." | |
2392 | msgstr "" | |
2393 | ||
2394 | #. type: subsubsection | |
39764ef8 | 2395 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16090 doc/guix.texi:16091 |
b9fe8fd6 JL |
2396 | #, no-wrap |
2397 | msgid "DNS Services" | |
2398 | msgstr "" | |
2399 | ||
2400 | #. type: menuentry | |
2401 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2402 | msgid "DNS daemons." | |
2403 | msgstr "" | |
2404 | ||
2405 | #. type: subsubsection | |
39764ef8 | 2406 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16494 doc/guix.texi:16495 |
b9fe8fd6 JL |
2407 | #, no-wrap |
2408 | msgid "VPN Services" | |
2409 | msgstr "" | |
2410 | ||
2411 | #. type: menuentry | |
2412 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2413 | msgid "VPN daemons." | |
2414 | msgstr "" | |
2415 | ||
2416 | #. type: subsubsection | |
39764ef8 | 2417 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16852 doc/guix.texi:16853 |
b9fe8fd6 JL |
2418 | #, no-wrap |
2419 | msgid "Network File System" | |
2420 | msgstr "" | |
2421 | ||
2422 | #. type: menuentry | |
2423 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2424 | msgid "NFS related services." | |
2425 | msgstr "" | |
2426 | ||
2427 | #. type: subsubsection | |
39764ef8 | 2428 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:16967 doc/guix.texi:16968 |
b9fe8fd6 JL |
2429 | #, no-wrap |
2430 | msgid "Continuous Integration" | |
2431 | msgstr "" | |
2432 | ||
2433 | #. type: menuentry | |
2434 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2435 | msgid "The Cuirass service." | |
2436 | msgstr "" | |
2437 | ||
2438 | #. type: subsubsection | |
39764ef8 | 2439 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:17063 doc/guix.texi:17064 |
b9fe8fd6 JL |
2440 | #, no-wrap |
2441 | msgid "Power management Services" | |
2442 | msgstr "" | |
2443 | ||
2444 | #. type: menuentry | |
2445 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2446 | msgid "The TLP tool." | |
2447 | msgstr "" | |
2448 | ||
2449 | #. type: subsubsection | |
39764ef8 | 2450 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:17591 doc/guix.texi:17592 |
b9fe8fd6 JL |
2451 | #, no-wrap |
2452 | msgid "Audio Services" | |
2453 | msgstr "" | |
2454 | ||
2455 | #. type: menuentry | |
2456 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2457 | msgid "The MPD." | |
2458 | msgstr "" | |
2459 | ||
2460 | #. type: node | |
39764ef8 | 2461 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:17641 |
b9fe8fd6 JL |
2462 | #, no-wrap |
2463 | msgid "Virtualization Services" | |
2464 | msgstr "" | |
2465 | ||
2466 | #. type: menuentry | |
2467 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2468 | msgid "Virtualization services." | |
2469 | msgstr "" | |
2470 | ||
2471 | #. type: subsubsection | |
39764ef8 | 2472 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:18434 doc/guix.texi:18435 |
b9fe8fd6 JL |
2473 | #, no-wrap |
2474 | msgid "Version Control Services" | |
2475 | msgstr "" | |
2476 | ||
2477 | #. type: menuentry | |
2478 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2479 | msgid "Providing remote access to Git repositories." | |
2480 | msgstr "" | |
2481 | ||
2482 | #. type: subsubsection | |
39764ef8 | 2483 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:19528 doc/guix.texi:19529 |
b9fe8fd6 JL |
2484 | #, no-wrap |
2485 | msgid "Game Services" | |
2486 | msgstr "" | |
2487 | ||
2488 | #. type: menuentry | |
2489 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2490 | msgid "Game servers." | |
2491 | msgstr "" | |
2492 | ||
2493 | #. type: subsubsection | |
39764ef8 | 2494 | #: doc/guix.texi:256 doc/guix.texi:9718 doc/guix.texi:19559 doc/guix.texi:19560 |
b9fe8fd6 JL |
2495 | #, no-wrap |
2496 | msgid "Miscellaneous Services" | |
2497 | msgstr "" | |
2498 | ||
2499 | #. type: menuentry | |
2500 | #: doc/guix.texi:256 doc/guix.texi:9718 | |
2501 | msgid "Other services." | |
2502 | msgstr "" | |
2503 | ||
2504 | #. type: subsubsection | |
39764ef8 JL |
2505 | #: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:20848 |
2506 | #: doc/guix.texi:20849 | |
b9fe8fd6 JL |
2507 | #, no-wrap |
2508 | msgid "Service Composition" | |
2509 | msgstr "" | |
2510 | ||
2511 | #. type: menuentry | |
39764ef8 | 2512 | #: doc/guix.texi:263 doc/guix.texi:20846 |
b9fe8fd6 JL |
2513 | msgid "The model for composing services." |
2514 | msgstr "" | |
2515 | ||
2516 | #. type: subsubsection | |
39764ef8 JL |
2517 | #: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:20904 |
2518 | #: doc/guix.texi:20905 | |
b9fe8fd6 JL |
2519 | #, no-wrap |
2520 | msgid "Service Types and Services" | |
2521 | msgstr "" | |
2522 | ||
2523 | #. type: menuentry | |
39764ef8 | 2524 | #: doc/guix.texi:263 doc/guix.texi:20846 |
b9fe8fd6 JL |
2525 | msgid "Types and services." |
2526 | msgstr "" | |
2527 | ||
2528 | #. type: subsubsection | |
39764ef8 JL |
2529 | #: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:21041 |
2530 | #: doc/guix.texi:21042 | |
b9fe8fd6 JL |
2531 | #, no-wrap |
2532 | msgid "Service Reference" | |
2533 | msgstr "" | |
2534 | ||
2535 | #. type: menuentry | |
39764ef8 | 2536 | #: doc/guix.texi:263 doc/guix.texi:20846 |
b9fe8fd6 JL |
2537 | msgid "API reference." |
2538 | msgstr "" | |
2539 | ||
2540 | #. type: subsubsection | |
39764ef8 JL |
2541 | #: doc/guix.texi:263 doc/guix.texi:20846 doc/guix.texi:21266 |
2542 | #: doc/guix.texi:21267 | |
b9fe8fd6 JL |
2543 | #, no-wrap |
2544 | msgid "Shepherd Services" | |
2545 | msgstr "" | |
2546 | ||
2547 | #. type: menuentry | |
39764ef8 | 2548 | #: doc/guix.texi:263 doc/guix.texi:20846 |
b9fe8fd6 JL |
2549 | msgid "A particular type of service." |
2550 | msgstr "" | |
2551 | ||
2552 | #. type: subsection | |
39764ef8 JL |
2553 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21732 |
2554 | #: doc/guix.texi:21733 | |
b9fe8fd6 JL |
2555 | #, no-wrap |
2556 | msgid "Software Freedom" | |
2557 | msgstr "" | |
2558 | ||
2559 | #. type: menuentry | |
39764ef8 | 2560 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2561 | msgid "What may go into the distribution." |
2562 | msgstr "" | |
2563 | ||
2564 | #. type: subsection | |
39764ef8 JL |
2565 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21760 |
2566 | #: doc/guix.texi:21761 | |
b9fe8fd6 JL |
2567 | #, no-wrap |
2568 | msgid "Package Naming" | |
2569 | msgstr "" | |
2570 | ||
2571 | #. type: menuentry | |
39764ef8 | 2572 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2573 | msgid "What's in a name?" |
2574 | msgstr "" | |
2575 | ||
2576 | #. type: subsection | |
39764ef8 JL |
2577 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21785 |
2578 | #: doc/guix.texi:21786 | |
b9fe8fd6 JL |
2579 | #, no-wrap |
2580 | msgid "Version Numbers" | |
2581 | msgstr "" | |
2582 | ||
2583 | #. type: menuentry | |
39764ef8 | 2584 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2585 | msgid "When the name is not enough." |
2586 | msgstr "" | |
2587 | ||
2588 | #. type: subsection | |
39764ef8 JL |
2589 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21876 |
2590 | #: doc/guix.texi:21877 | |
b9fe8fd6 JL |
2591 | #, no-wrap |
2592 | msgid "Synopses and Descriptions" | |
2593 | msgstr "" | |
2594 | ||
2595 | #. type: menuentry | |
39764ef8 | 2596 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2597 | msgid "Helping users find the right package." |
2598 | msgstr "" | |
2599 | ||
2600 | #. type: subsection | |
39764ef8 JL |
2601 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:21956 |
2602 | #: doc/guix.texi:21957 | |
b9fe8fd6 JL |
2603 | #, no-wrap |
2604 | msgid "Python Modules" | |
2605 | msgstr "" | |
2606 | ||
2607 | #. type: menuentry | |
39764ef8 | 2608 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2609 | msgid "A touch of British comedy." |
2610 | msgstr "" | |
2611 | ||
2612 | #. type: subsection | |
39764ef8 JL |
2613 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:22031 |
2614 | #: doc/guix.texi:22032 | |
b9fe8fd6 JL |
2615 | #, no-wrap |
2616 | msgid "Perl Modules" | |
2617 | msgstr "" | |
2618 | ||
2619 | #. type: menuentry | |
39764ef8 | 2620 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2621 | msgid "Little pearls." |
2622 | msgstr "" | |
2623 | ||
2624 | #. type: subsection | |
39764ef8 JL |
2625 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:22047 |
2626 | #: doc/guix.texi:22048 | |
b9fe8fd6 JL |
2627 | #, no-wrap |
2628 | msgid "Java Packages" | |
2629 | msgstr "" | |
2630 | ||
2631 | #. type: menuentry | |
39764ef8 | 2632 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2633 | msgid "Coffee break." |
2634 | msgstr "" | |
2635 | ||
2636 | #. type: subsection | |
39764ef8 JL |
2637 | #: doc/guix.texi:274 doc/guix.texi:21730 doc/guix.texi:22067 |
2638 | #: doc/guix.texi:22068 | |
b9fe8fd6 JL |
2639 | #, no-wrap |
2640 | msgid "Fonts" | |
2641 | msgstr "" | |
2642 | ||
2643 | #. type: menuentry | |
39764ef8 | 2644 | #: doc/guix.texi:274 doc/guix.texi:21730 |
b9fe8fd6 JL |
2645 | msgid "Fond of fonts." |
2646 | msgstr "" | |
2647 | ||
b9fe8fd6 JL |
2648 | #. type: cindex |
2649 | #: doc/guix.texi:297 | |
2650 | #, no-wrap | |
2651 | msgid "purpose" | |
2652 | msgstr "" | |
2653 | ||
2654 | #. type: Plain text | |
2655 | #: doc/guix.texi:304 | |
2656 | msgid "" | |
2657 | "GNU Guix@footnote{``Guix'' is pronounced like ``geeks'', or ``ɡiːks'' using " | |
2658 | "the international phonetic alphabet (IPA).} is a package management tool for " | |
2659 | "the GNU system. Guix makes it easy for unprivileged users to install, " | |
2660 | "upgrade, or remove packages, to roll back to a previous package set, to " | |
2661 | "build packages from source, and generally assists with the creation and " | |
2662 | "maintenance of software environments." | |
2663 | msgstr "" | |
2664 | ||
2665 | #. type: cindex | |
2666 | #: doc/guix.texi:305 | |
2667 | #, no-wrap | |
2668 | msgid "user interfaces" | |
2669 | msgstr "" | |
2670 | ||
2671 | #. type: Plain text | |
2672 | #: doc/guix.texi:310 | |
2673 | msgid "" | |
2674 | "Guix provides a command-line package management interface (@pxref{Invoking " | |
2675 | "guix package}), a set of command-line utilities (@pxref{Utilities}), as well " | |
2676 | "as Scheme programming interfaces (@pxref{Programming Interface})." | |
2677 | msgstr "" | |
2678 | ||
2679 | #. type: cindex | |
2680 | #: doc/guix.texi:310 | |
2681 | #, no-wrap | |
2682 | msgid "build daemon" | |
2683 | msgstr "" | |
2684 | ||
2685 | #. type: Plain text | |
2686 | #: doc/guix.texi:314 | |
2687 | msgid "" | |
2688 | "Its @dfn{build daemon} is responsible for building packages on behalf of " | |
2689 | "users (@pxref{Setting Up the Daemon}) and for downloading pre-built binaries " | |
2690 | "from authorized sources (@pxref{Substitutes})." | |
2691 | msgstr "" | |
2692 | ||
2693 | #. type: cindex | |
2694 | #: doc/guix.texi:315 | |
2695 | #, no-wrap | |
2696 | msgid "extensibility of the distribution" | |
2697 | msgstr "" | |
2698 | ||
2699 | #. type: cindex | |
39764ef8 | 2700 | #: doc/guix.texi:316 doc/guix.texi:21623 |
b9fe8fd6 JL |
2701 | #, no-wrap |
2702 | msgid "customization, of packages" | |
2703 | msgstr "" | |
2704 | ||
2705 | #. type: Plain text | |
2706 | #: doc/guix.texi:325 | |
2707 | msgid "" | |
2708 | "Guix includes package definitions for many GNU and non-GNU packages, all of " | |
2709 | "which @uref{https://www.gnu.org/philosophy/free-sw.html, respect the user's " | |
2710 | "computing freedom}. It is @emph{extensible}: users can write their own " | |
2711 | "package definitions (@pxref{Defining Packages}) and make them available as " | |
2712 | "independent package modules (@pxref{Package Modules}). It is also " | |
2713 | "@emph{customizable}: users can @emph{derive} specialized package definitions " | |
2714 | "from existing ones, including from the command line (@pxref{Package " | |
2715 | "Transformation Options})." | |
2716 | msgstr "" | |
2717 | ||
2718 | #. type: cindex | |
2719 | #: doc/guix.texi:326 doc/guix.texi:7984 doc/guix.texi:8062 | |
2720 | #, no-wrap | |
2721 | msgid "Guix System Distribution" | |
2722 | msgstr "" | |
2723 | ||
2724 | #. type: cindex | |
2725 | #: doc/guix.texi:327 doc/guix.texi:7985 | |
2726 | #, no-wrap | |
2727 | msgid "GuixSD" | |
2728 | msgstr "" | |
2729 | ||
2730 | #. type: Plain text | |
2731 | #: doc/guix.texi:336 | |
2732 | msgid "" | |
2733 | "You can install GNU@tie{}Guix on top of an existing GNU/Linux system where " | |
2734 | "it complements the available tools without interference " | |
2735 | "(@pxref{Installation}), or you can use it as part of the standalone " | |
2736 | "@dfn{Guix System Distribution} or GuixSD (@pxref{GNU Distribution}). With " | |
2737 | "GNU@tie{}GuixSD, you @emph{declare} all aspects of the operating system " | |
2738 | "configuration and Guix takes care of instantiating the configuration in a " | |
2739 | "transactional, reproducible, and stateless fashion (@pxref{System " | |
2740 | "Configuration})." | |
2741 | msgstr "" | |
2742 | ||
2743 | #. type: cindex | |
2744 | #: doc/guix.texi:337 | |
2745 | #, no-wrap | |
2746 | msgid "functional package management" | |
2747 | msgstr "" | |
2748 | ||
2749 | #. type: Plain text | |
2750 | #: doc/guix.texi:352 | |
2751 | msgid "" | |
2752 | "Under the hood, Guix implements the @dfn{functional package management} " | |
2753 | "discipline pioneered by Nix (@pxref{Acknowledgments}). In Guix, the package " | |
2754 | "build and installation process is seen as a @emph{function}, in the " | |
2755 | "mathematical sense. That function takes inputs, such as build scripts, a " | |
2756 | "compiler, and libraries, and returns an installed package. As a pure " | |
2757 | "function, its result depends solely on its inputs---for instance, it cannot " | |
2758 | "refer to software or scripts that were not explicitly passed as inputs. A " | |
2759 | "build function always produces the same result when passed a given set of " | |
2760 | "inputs. It cannot alter the environment of the running system in any way; " | |
2761 | "for instance, it cannot create, modify, or delete files outside of its build " | |
2762 | "and installation directories. This is achieved by running build processes " | |
2763 | "in isolated environments (or @dfn{containers}), where only their explicit " | |
2764 | "inputs are visible." | |
2765 | msgstr "" | |
2766 | ||
2767 | #. type: cindex | |
2768 | #: doc/guix.texi:353 doc/guix.texi:4186 | |
2769 | #, no-wrap | |
2770 | msgid "store" | |
2771 | msgstr "" | |
2772 | ||
2773 | #. type: Plain text | |
2774 | #: doc/guix.texi:360 | |
2775 | msgid "" | |
2776 | "The result of package build functions is @dfn{cached} in the file system, in " | |
2777 | "a special directory called @dfn{the store} (@pxref{The Store}). Each " | |
2778 | "package is installed in a directory of its own in the store---by default " | |
2779 | "under @file{/gnu/store}. The directory name contains a hash of all the " | |
2780 | "inputs used to build that package; thus, changing an input yields a " | |
2781 | "different directory name." | |
2782 | msgstr "" | |
2783 | ||
2784 | #. type: Plain text | |
2785 | #: doc/guix.texi:364 | |
2786 | msgid "" | |
2787 | "This approach is the foundation for the salient features of Guix: support " | |
2788 | "for transactional package upgrade and rollback, per-user installation, and " | |
2789 | "garbage collection of packages (@pxref{Features})." | |
2790 | msgstr "" | |
2791 | ||
2792 | #. type: cindex | |
2793 | #: doc/guix.texi:370 | |
2794 | #, no-wrap | |
2795 | msgid "installing Guix" | |
2796 | msgstr "" | |
2797 | ||
2798 | #. type: Plain text | |
2799 | #: doc/guix.texi:375 | |
2800 | msgid "" | |
39764ef8 JL |
2801 | "GNU Guix is available for download from its website at @url{http://www.gnu." |
2802 | "org/software/guix/}. This section describes the software requirements of " | |
2803 | "Guix, as well as how to install it and get ready to use it." | |
b9fe8fd6 JL |
2804 | msgstr "" |
2805 | ||
2806 | #. type: Plain text | |
2807 | #: doc/guix.texi:380 | |
2808 | msgid "" | |
2809 | "Note that this section is concerned with the installation of the package " | |
2810 | "manager, which can be done on top of a running GNU/Linux system. If, " | |
2811 | "instead, you want to install the complete GNU operating system, " | |
2812 | "@pxref{System Installation}." | |
2813 | msgstr "" | |
2814 | ||
2815 | #. type: cindex | |
2816 | #: doc/guix.texi:381 doc/guix.texi:1444 | |
2817 | #, no-wrap | |
2818 | msgid "foreign distro" | |
2819 | msgstr "" | |
2820 | ||
2821 | #. type: Plain text | |
2822 | #: doc/guix.texi:387 | |
2823 | msgid "" | |
2824 | "When installed on a running GNU/Linux system---thereafter called a " | |
2825 | "@dfn{foreign distro}---GNU@tie{}Guix complements the available tools without " | |
39764ef8 JL |
2826 | "interference. Its data lives exclusively in two directories, usually @file{/" |
2827 | "gnu/store} and @file{/var/guix}; other files on your system, such as @file{/" | |
2828 | "etc}, are left untouched." | |
b9fe8fd6 JL |
2829 | msgstr "" |
2830 | ||
2831 | #. type: Plain text | |
2832 | #: doc/guix.texi:390 | |
2833 | msgid "" | |
2834 | "Once installed, Guix can be updated by running @command{guix pull} " | |
2835 | "(@pxref{Invoking guix pull})." | |
2836 | msgstr "" | |
2837 | ||
2838 | #. type: cindex | |
2839 | #: doc/guix.texi:403 | |
2840 | #, no-wrap | |
2841 | msgid "installing Guix from binaries" | |
2842 | msgstr "" | |
2843 | ||
2844 | #. type: Plain text | |
2845 | #: doc/guix.texi:409 | |
2846 | msgid "" | |
2847 | "This section describes how to install Guix on an arbitrary system from a " | |
2848 | "self-contained tarball providing binaries for Guix and for all its " | |
2849 | "dependencies. This is often quicker than installing from source, which is " | |
39764ef8 JL |
2850 | "described in the next sections. The only requirement is to have GNU@tie{}" |
2851 | "tar and Xz." | |
b9fe8fd6 JL |
2852 | msgstr "" |
2853 | ||
2854 | #. type: Plain text | |
2855 | #: doc/guix.texi:414 | |
2856 | msgid "" | |
39764ef8 JL |
2857 | "We provide a @uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-" |
2858 | "install.sh, shell installer script}, which automates the download, " | |
2859 | "installation, and initial configuration of Guix. It should be run as the " | |
2860 | "root user." | |
b9fe8fd6 JL |
2861 | msgstr "" |
2862 | ||
2863 | #. type: Plain text | |
2864 | #: doc/guix.texi:416 | |
2865 | msgid "Installing goes along these lines:" | |
2866 | msgstr "" | |
2867 | ||
2868 | #. type: cindex | |
2869 | #: doc/guix.texi:419 | |
2870 | #, no-wrap | |
2871 | msgid "downloading Guix binary" | |
2872 | msgstr "" | |
2873 | ||
2874 | #. type: enumerate | |
2875 | #: doc/guix.texi:424 | |
2876 | msgid "" | |
39764ef8 JL |
2877 | "Download the binary tarball from @indicateurl{ftp://alpha.gnu.org/gnu/guix/" |
2878 | "guix-binary-@value{VERSION}.@var{system}.tar.xz}, where @var{system} is " | |
2879 | "@code{x86_64-linux} for an @code{x86_64} machine already running the kernel " | |
2880 | "Linux, and so on." | |
b9fe8fd6 JL |
2881 | msgstr "" |
2882 | ||
2883 | #. type: enumerate | |
2884 | #: doc/guix.texi:428 | |
2885 | msgid "" | |
2886 | "Make sure to download the associated @file{.sig} file and to verify the " | |
2887 | "authenticity of the tarball against it, along these lines:" | |
2888 | msgstr "" | |
2889 | ||
2890 | #. type: example | |
2891 | #: doc/guix.texi:432 | |
2892 | #, no-wrap | |
2893 | msgid "" | |
39764ef8 | 2894 | "$ wget ftp://alpha.gnu.org/gnu/guix/guix-binary-@value{VERSION}.@var{system}.tar.xz.sig\n" |
b9fe8fd6 JL |
2895 | "$ gpg --verify guix-binary-@value{VERSION}.@var{system}.tar.xz.sig\n" |
2896 | msgstr "" | |
2897 | ||
2898 | #. type: Plain text | |
2899 | #: doc/guix.texi:436 doc/guix.texi:8198 | |
2900 | msgid "" | |
2901 | "If that command fails because you do not have the required public key, then " | |
2902 | "run this command to import it:" | |
2903 | msgstr "" | |
2904 | ||
2905 | #. type: example | |
2906 | #: doc/guix.texi:439 doc/guix.texi:8201 | |
2907 | #, no-wrap | |
2908 | msgid "$ gpg --keyserver pgp.mit.edu --recv-keys @value{OPENPGP-SIGNING-KEY-ID}\n" | |
2909 | msgstr "" | |
2910 | ||
2911 | #. type: Plain text | |
2912 | #: doc/guix.texi:444 doc/guix.texi:8206 | |
2913 | msgid "and rerun the @code{gpg --verify} command." | |
2914 | msgstr "" | |
2915 | ||
2916 | #. type: enumerate | |
2917 | #: doc/guix.texi:448 | |
2918 | msgid "" | |
2919 | "Now, you need to become the @code{root} user. Depending on your " | |
2920 | "distribution, you may have to run @code{su -} or @code{sudo -i}. As " | |
2921 | "@code{root}, run:" | |
2922 | msgstr "" | |
2923 | ||
2924 | #. type: example | |
2925 | #: doc/guix.texi:454 | |
2926 | #, no-wrap | |
2927 | msgid "" | |
2928 | "# cd /tmp\n" | |
2929 | "# tar --warning=no-timestamp -xf \\\n" | |
2930 | " guix-binary-@value{VERSION}.@var{system}.tar.xz\n" | |
2931 | "# mv var/guix /var/ && mv gnu /\n" | |
2932 | msgstr "" | |
2933 | ||
2934 | #. type: enumerate | |
2935 | #: doc/guix.texi:459 | |
2936 | msgid "" | |
2937 | "This creates @file{/gnu/store} (@pxref{The Store}) and @file{/var/guix}. " | |
2938 | "The latter contains a ready-to-use profile for @code{root} (see next step.)" | |
2939 | msgstr "" | |
2940 | ||
2941 | #. type: enumerate | |
2942 | #: doc/guix.texi:462 | |
2943 | msgid "" | |
2944 | "Do @emph{not} unpack the tarball on a working Guix system since that would " | |
2945 | "overwrite its own essential files." | |
2946 | msgstr "" | |
2947 | ||
2948 | #. type: enumerate | |
2949 | #: doc/guix.texi:472 | |
2950 | msgid "" | |
2951 | "The @code{--warning=no-timestamp} option makes sure GNU@tie{}tar does not " | |
2952 | "emit warnings about ``implausibly old time stamps'' (such warnings were " | |
2953 | "triggered by GNU@tie{}tar 1.26 and older; recent versions are fine.) They " | |
2954 | "stem from the fact that all the files in the archive have their modification " | |
2955 | "time set to zero (which means January 1st, 1970.) This is done on purpose " | |
2956 | "to make sure the archive content is independent of its creation time, thus " | |
2957 | "making it reproducible." | |
2958 | msgstr "" | |
2959 | ||
2960 | #. type: enumerate | |
2961 | #: doc/guix.texi:475 | |
2962 | msgid "Make @code{root}'s profile available under @file{~root/.guix-profile}:" | |
2963 | msgstr "" | |
2964 | ||
2965 | #. type: example | |
2966 | #: doc/guix.texi:479 | |
2967 | #, no-wrap | |
2968 | msgid "" | |
2969 | "# ln -sf /var/guix/profiles/per-user/root/guix-profile \\\n" | |
2970 | " ~root/.guix-profile\n" | |
2971 | msgstr "" | |
2972 | ||
2973 | #. type: enumerate | |
2974 | #: doc/guix.texi:483 | |
2975 | msgid "" | |
2976 | "Source @file{etc/profile} to augment @code{PATH} and other relevant " | |
2977 | "environment variables:" | |
2978 | msgstr "" | |
2979 | ||
2980 | #. type: example | |
2981 | #: doc/guix.texi:487 | |
2982 | #, no-wrap | |
2983 | msgid "" | |
2984 | "# GUIX_PROFILE=\"`echo ~root`/.guix-profile\" ; \\\n" | |
2985 | " source $GUIX_PROFILE/etc/profile\n" | |
2986 | msgstr "" | |
2987 | ||
2988 | #. type: enumerate | |
2989 | #: doc/guix.texi:492 | |
2990 | msgid "" | |
2991 | "Create the group and user accounts for build users as explained below " | |
2992 | "(@pxref{Build Environment Setup})." | |
2993 | msgstr "" | |
2994 | ||
2995 | #. type: enumerate | |
2996 | #: doc/guix.texi:495 | |
2997 | msgid "Run the daemon, and set it to automatically start on boot." | |
2998 | msgstr "" | |
2999 | ||
3000 | #. type: enumerate | |
3001 | #: doc/guix.texi:498 | |
3002 | msgid "" | |
3003 | "If your host distro uses the systemd init system, this can be achieved with " | |
3004 | "these commands:" | |
3005 | msgstr "" | |
3006 | ||
3007 | #. type: example | |
3008 | #: doc/guix.texi:510 | |
3009 | #, no-wrap | |
3010 | msgid "" | |
3011 | "# cp ~root/.guix-profile/lib/systemd/system/guix-daemon.service \\\n" | |
3012 | " /etc/systemd/system/\n" | |
3013 | "# systemctl start guix-daemon && systemctl enable guix-daemon\n" | |
3014 | msgstr "" | |
3015 | ||
3016 | #. type: itemize | |
3017 | #: doc/guix.texi:513 doc/guix.texi:7635 | |
3018 | msgid "If your host distro uses the Upstart init system:" | |
3019 | msgstr "" | |
3020 | ||
3021 | #. type: example | |
3022 | #: doc/guix.texi:518 | |
3023 | #, no-wrap | |
3024 | msgid "" | |
3025 | "# initctl reload-configuration\n" | |
3026 | "# cp ~root/.guix-profile/lib/upstart/system/guix-daemon.conf /etc/init/\n" | |
3027 | "# start guix-daemon\n" | |
3028 | msgstr "" | |
3029 | ||
3030 | #. type: enumerate | |
3031 | #: doc/guix.texi:521 | |
3032 | msgid "Otherwise, you can still start the daemon manually with:" | |
3033 | msgstr "" | |
3034 | ||
3035 | #. type: example | |
3036 | #: doc/guix.texi:524 | |
3037 | #, no-wrap | |
3038 | msgid "# ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild\n" | |
3039 | msgstr "" | |
3040 | ||
3041 | #. type: enumerate | |
3042 | #: doc/guix.texi:529 | |
3043 | msgid "" | |
3044 | "Make the @command{guix} command available to other users on the machine, for " | |
3045 | "instance with:" | |
3046 | msgstr "" | |
3047 | ||
3048 | #. type: example | |
3049 | #: doc/guix.texi:534 | |
3050 | #, no-wrap | |
3051 | msgid "" | |
3052 | "# mkdir -p /usr/local/bin\n" | |
3053 | "# cd /usr/local/bin\n" | |
3054 | "# ln -s /var/guix/profiles/per-user/root/guix-profile/bin/guix\n" | |
3055 | msgstr "" | |
3056 | ||
3057 | #. type: enumerate | |
3058 | #: doc/guix.texi:538 | |
3059 | msgid "" | |
3060 | "It is also a good idea to make the Info version of this manual available " | |
3061 | "there:" | |
3062 | msgstr "" | |
3063 | ||
3064 | #. type: example | |
3065 | #: doc/guix.texi:544 | |
3066 | #, no-wrap | |
3067 | msgid "" | |
3068 | "# mkdir -p /usr/local/share/info\n" | |
3069 | "# cd /usr/local/share/info\n" | |
3070 | "# for i in /var/guix/profiles/per-user/root/guix-profile/share/info/* ;\n" | |
3071 | " do ln -s $i ; done\n" | |
3072 | msgstr "" | |
3073 | ||
3074 | #. type: enumerate | |
3075 | #: doc/guix.texi:550 | |
3076 | msgid "" | |
3077 | "That way, assuming @file{/usr/local/share/info} is in the search path, " | |
3078 | "running @command{info guix} will open this manual (@pxref{Other Info " | |
3079 | "Directories,,, texinfo, GNU Texinfo}, for more details on changing the Info " | |
3080 | "search path.)" | |
3081 | msgstr "" | |
3082 | ||
3083 | #. type: cindex | |
3084 | #: doc/guix.texi:552 doc/guix.texi:2304 doc/guix.texi:10194 | |
3085 | #, no-wrap | |
3086 | msgid "substitutes, authorization thereof" | |
3087 | msgstr "" | |
3088 | ||
3089 | #. type: enumerate | |
3090 | #: doc/guix.texi:555 | |
3091 | msgid "" | |
3092 | "To use substitutes from @code{hydra.gnu.org} or one of its mirrors " | |
3093 | "(@pxref{Substitutes}), authorize them:" | |
3094 | msgstr "" | |
3095 | ||
3096 | #. type: example | |
3097 | #: doc/guix.texi:558 | |
3098 | #, no-wrap | |
39764ef8 | 3099 | msgid "# guix archive --authorize < ~root/.guix-profile/share/guix/hydra.gnu.org.pub\n" |
b9fe8fd6 JL |
3100 | msgstr "" |
3101 | ||
3102 | #. type: enumerate | |
3103 | #: doc/guix.texi:563 | |
3104 | msgid "" | |
3105 | "Each user may need to perform a few additional steps to make their Guix " | |
3106 | "environment ready for use, @pxref{Application Setup}." | |
3107 | msgstr "" | |
3108 | ||
3109 | #. type: Plain text | |
3110 | #: doc/guix.texi:566 | |
3111 | msgid "Voilà, the installation is complete!" | |
3112 | msgstr "" | |
3113 | ||
3114 | #. type: Plain text | |
3115 | #: doc/guix.texi:569 | |
3116 | msgid "" | |
3117 | "You can confirm that Guix is working by installing a sample package into the " | |
3118 | "root profile:" | |
3119 | msgstr "" | |
3120 | ||
3121 | #. type: example | |
3122 | #: doc/guix.texi:572 | |
3123 | #, no-wrap | |
3124 | msgid "# guix package -i hello\n" | |
3125 | msgstr "" | |
3126 | ||
3127 | #. type: Plain text | |
3128 | #: doc/guix.texi:579 | |
3129 | msgid "" | |
3130 | "The @code{guix} package must remain available in @code{root}'s profile, or " | |
3131 | "it would become subject to garbage collection---in which case you would find " | |
3132 | "yourself badly handicapped by the lack of the @command{guix} command. In " | |
3133 | "other words, do not remove @code{guix} by running @code{guix package -r " | |
3134 | "guix}." | |
3135 | msgstr "" | |
3136 | ||
3137 | #. type: Plain text | |
3138 | #: doc/guix.texi:582 | |
3139 | msgid "" | |
3140 | "The binary installation tarball can be (re)produced and verified simply by " | |
3141 | "running the following command in the Guix source tree:" | |
3142 | msgstr "" | |
3143 | ||
3144 | #. type: example | |
3145 | #: doc/guix.texi:585 | |
3146 | #, no-wrap | |
3147 | msgid "make guix-binary.@var{system}.tar.xz\n" | |
3148 | msgstr "" | |
3149 | ||
3150 | #. type: Plain text | |
3151 | #: doc/guix.texi:589 | |
3152 | msgid "... which, in turn, runs:" | |
3153 | msgstr "" | |
3154 | ||
3155 | #. type: example | |
3156 | #: doc/guix.texi:592 | |
3157 | #, no-wrap | |
3158 | msgid "guix pack -s @var{system} --localstatedir guix\n" | |
3159 | msgstr "" | |
3160 | ||
3161 | #. type: Plain text | |
3162 | #: doc/guix.texi:595 | |
3163 | msgid "@xref{Invoking guix pack}, for more info on this handy tool." | |
3164 | msgstr "" | |
3165 | ||
3166 | #. type: Plain text | |
3167 | #: doc/guix.texi:603 | |
3168 | msgid "" | |
3169 | "This section lists requirements when building Guix from source. The build " | |
3170 | "procedure for Guix is the same as for other GNU software, and is not covered " | |
3171 | "here. Please see the files @file{README} and @file{INSTALL} in the Guix " | |
3172 | "source tree for additional details." | |
3173 | msgstr "" | |
3174 | ||
3175 | #. type: Plain text | |
3176 | #: doc/guix.texi:605 | |
3177 | msgid "GNU Guix depends on the following packages:" | |
3178 | msgstr "" | |
3179 | ||
3180 | #. type: item | |
3181 | #: doc/guix.texi:607 | |
3182 | #, no-wrap | |
3183 | msgid "@url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.13 or" | |
3184 | msgstr "" | |
3185 | ||
3186 | #. type: itemize | |
3187 | #: doc/guix.texi:609 | |
3188 | msgid "later, including 2.2.x;" | |
3189 | msgstr "" | |
3190 | ||
3191 | #. type: item | |
3192 | #: doc/guix.texi:609 | |
3193 | #, no-wrap | |
3194 | msgid "@url{http://gnupg.org/, GNU libgcrypt};" | |
3195 | msgstr "" | |
3196 | ||
3197 | #. type: itemize | |
3198 | #: doc/guix.texi:614 | |
3199 | msgid "" | |
3200 | "@uref{http://gnutls.org/, GnuTLS}, specifically its Guile bindings " | |
3201 | "(@pxref{Guile Preparations, how to install the GnuTLS bindings for Guile,, " | |
3202 | "gnutls-guile, GnuTLS-Guile});" | |
3203 | msgstr "" | |
3204 | ||
3205 | #. type: itemize | |
3206 | #: doc/guix.texi:618 | |
3207 | msgid "" | |
3208 | "@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August 2017 " | |
3209 | "or later;" | |
3210 | msgstr "" | |
3211 | ||
3212 | #. type: item | |
3213 | #: doc/guix.texi:618 | |
3214 | #, no-wrap | |
3215 | msgid "@url{http://zlib.net, zlib};" | |
3216 | msgstr "" | |
3217 | ||
3218 | #. type: item | |
3219 | #: doc/guix.texi:619 | |
3220 | #, no-wrap | |
3221 | msgid "@url{http://www.gnu.org/software/make/, GNU Make}." | |
3222 | msgstr "" | |
3223 | ||
3224 | #. type: Plain text | |
3225 | #: doc/guix.texi:623 | |
3226 | msgid "The following dependencies are optional:" | |
3227 | msgstr "" | |
3228 | ||
3229 | #. type: itemize | |
3230 | #: doc/guix.texi:631 | |
3231 | msgid "" | |
3232 | "Installing @url{http://savannah.nongnu.org/projects/guile-json/, Guile-JSON} " | |
3233 | "will allow you to use the @command{guix import pypi} command " | |
3234 | "(@pxref{Invoking guix import}). It is of interest primarily for developers " | |
3235 | "and not for casual users." | |
3236 | msgstr "" | |
3237 | ||
3238 | #. type: itemize | |
3239 | #: doc/guix.texi:638 | |
3240 | msgid "" | |
3241 | "Support for build offloading (@pxref{Daemon Offload Setup}) and " | |
39764ef8 JL |
3242 | "@command{guix copy} (@pxref{Invoking guix copy}) depends on @uref{https://" |
3243 | "github.com/artyom-poptsov/guile-ssh, Guile-SSH}, version 0.10.2 or later." | |
b9fe8fd6 JL |
3244 | msgstr "" |
3245 | ||
3246 | #. type: itemize | |
3247 | #: doc/guix.texi:642 | |
3248 | msgid "" | |
3249 | "When @url{http://www.bzip.org, libbz2} is available, @command{guix-daemon} " | |
3250 | "can use it to compress build logs." | |
3251 | msgstr "" | |
3252 | ||
3253 | #. type: Plain text | |
3254 | #: doc/guix.texi:646 | |
3255 | msgid "" | |
3256 | "Unless @code{--disable-daemon} was passed to @command{configure}, the " | |
3257 | "following packages are also needed:" | |
3258 | msgstr "" | |
3259 | ||
3260 | #. type: item | |
3261 | #: doc/guix.texi:648 | |
3262 | #, no-wrap | |
3263 | msgid "@url{http://sqlite.org, SQLite 3};" | |
3264 | msgstr "" | |
3265 | ||
3266 | #. type: item | |
3267 | #: doc/guix.texi:649 | |
3268 | #, no-wrap | |
3269 | msgid "@url{http://gcc.gnu.org, GCC's g++}, with support for the" | |
3270 | msgstr "" | |
3271 | ||
3272 | #. type: itemize | |
3273 | #: doc/guix.texi:651 | |
3274 | msgid "C++11 standard." | |
3275 | msgstr "" | |
3276 | ||
3277 | #. type: cindex | |
3278 | #: doc/guix.texi:653 | |
3279 | #, no-wrap | |
3280 | msgid "state directory" | |
3281 | msgstr "" | |
3282 | ||
3283 | #. type: Plain text | |
3284 | #: doc/guix.texi:661 | |
3285 | msgid "" | |
3286 | "When configuring Guix on a system that already has a Guix installation, be " | |
3287 | "sure to specify the same state directory as the existing installation using " | |
3288 | "the @code{--localstatedir} option of the @command{configure} script " | |
3289 | "(@pxref{Directory Variables, @code{localstatedir},, standards, GNU Coding " | |
3290 | "Standards}). The @command{configure} script protects against unintended " | |
3291 | "misconfiguration of @var{localstatedir} so you do not inadvertently corrupt " | |
3292 | "your store (@pxref{The Store})." | |
3293 | msgstr "" | |
3294 | ||
3295 | #. type: cindex | |
3296 | #: doc/guix.texi:662 | |
3297 | #, no-wrap | |
3298 | msgid "Nix, compatibility" | |
3299 | msgstr "" | |
3300 | ||
3301 | #. type: Plain text | |
3302 | #: doc/guix.texi:667 | |
3303 | msgid "" | |
3304 | "When a working installation of @url{http://nixos.org/nix/, the Nix package " | |
39764ef8 JL |
3305 | "manager} is available, you can instead configure Guix with @code{--disable-" |
3306 | "daemon}. In that case, Nix replaces the three dependencies above." | |
b9fe8fd6 JL |
3307 | msgstr "" |
3308 | ||
3309 | #. type: Plain text | |
3310 | #: doc/guix.texi:677 | |
3311 | msgid "" | |
3312 | "Guix is compatible with Nix, so it is possible to share the same store " | |
3313 | "between both. To do so, you must pass @command{configure} not only the same " | |
3314 | "@code{--with-store-dir} value, but also the same @code{--localstatedir} " | |
3315 | "value. The latter is essential because it specifies where the database that " | |
3316 | "stores metadata about the store is located, among other things. The default " | |
39764ef8 JL |
3317 | "values for Nix are @code{--with-store-dir=/nix/store} and @code{--" |
3318 | "localstatedir=/nix/var}. Note that @code{--disable-daemon} is not required " | |
3319 | "if your goal is to share the store with Nix." | |
b9fe8fd6 JL |
3320 | msgstr "" |
3321 | ||
3322 | #. type: cindex | |
3323 | #: doc/guix.texi:681 | |
3324 | #, no-wrap | |
3325 | msgid "test suite" | |
3326 | msgstr "" | |
3327 | ||
3328 | #. type: Plain text | |
3329 | #: doc/guix.texi:687 | |
3330 | msgid "" | |
3331 | "After a successful @command{configure} and @code{make} run, it is a good " | |
3332 | "idea to run the test suite. It can help catch issues with the setup or " | |
3333 | "environment, or bugs in Guix itself---and really, reporting test failures is " | |
3334 | "a good way to help improve the software. To run the test suite, type:" | |
3335 | msgstr "" | |
3336 | ||
3337 | #. type: example | |
3338 | #: doc/guix.texi:690 | |
3339 | #, no-wrap | |
3340 | msgid "make check\n" | |
3341 | msgstr "" | |
3342 | ||
3343 | #. type: Plain text | |
3344 | #: doc/guix.texi:697 | |
3345 | msgid "" | |
39764ef8 JL |
3346 | "Test cases can run in parallel: you can use the @code{-j} option of GNU@tie{}" |
3347 | "make to speed things up. The first run may take a few minutes on a recent " | |
3348 | "machine; subsequent runs will be faster because the store that is created " | |
3349 | "for test purposes will already have various things in cache." | |
b9fe8fd6 JL |
3350 | msgstr "" |
3351 | ||
3352 | #. type: Plain text | |
3353 | #: doc/guix.texi:700 | |
3354 | msgid "" | |
3355 | "It is also possible to run a subset of the tests by defining the " | |
3356 | "@code{TESTS} makefile variable as in this example:" | |
3357 | msgstr "" | |
3358 | ||
3359 | #. type: example | |
3360 | #: doc/guix.texi:703 | |
3361 | #, no-wrap | |
3362 | msgid "make check TESTS=\"tests/store.scm tests/cpio.scm\"\n" | |
3363 | msgstr "" | |
3364 | ||
3365 | #. type: Plain text | |
3366 | #: doc/guix.texi:708 | |
3367 | msgid "" | |
3368 | "By default, tests results are displayed at a file level. In order to see " | |
3369 | "the details of every individual test cases, it is possible to define the " | |
3370 | "@code{SCM_LOG_DRIVER_FLAGS} makefile variable as in this example:" | |
3371 | msgstr "" | |
3372 | ||
3373 | #. type: example | |
3374 | #: doc/guix.texi:711 | |
3375 | #, no-wrap | |
3376 | msgid "make check TESTS=\"tests/base64.scm\" SCM_LOG_DRIVER_FLAGS=\"--brief=no\"\n" | |
3377 | msgstr "" | |
3378 | ||
3379 | #. type: Plain text | |
3380 | #: doc/guix.texi:717 | |
3381 | msgid "" | |
3382 | "Upon failure, please email @email{bug-guix@@gnu.org} and attach the " | |
3383 | "@file{test-suite.log} file. Please specify the Guix version being used as " | |
3384 | "well as version numbers of the dependencies (@pxref{Requirements}) in your " | |
3385 | "message." | |
3386 | msgstr "" | |
3387 | ||
3388 | #. type: Plain text | |
3389 | #: doc/guix.texi:721 | |
3390 | msgid "" | |
3391 | "Guix also comes with a whole-system test suite that tests complete GuixSD " | |
3392 | "operating system instances. It can only run on systems where Guix is " | |
3393 | "already installed, using:" | |
3394 | msgstr "" | |
3395 | ||
3396 | #. type: example | |
3397 | #: doc/guix.texi:724 | |
3398 | #, no-wrap | |
3399 | msgid "make check-system\n" | |
3400 | msgstr "" | |
3401 | ||
3402 | #. type: Plain text | |
3403 | #: doc/guix.texi:728 | |
3404 | msgid "or, again, by defining @code{TESTS} to select a subset of tests to run:" | |
3405 | msgstr "" | |
3406 | ||
3407 | #. type: example | |
3408 | #: doc/guix.texi:731 | |
3409 | #, no-wrap | |
3410 | msgid "make check-system TESTS=\"basic mcron\"\n" | |
3411 | msgstr "" | |
3412 | ||
3413 | #. type: Plain text | |
3414 | #: doc/guix.texi:739 | |
3415 | msgid "" | |
3416 | "These system tests are defined in the @code{(gnu tests @dots{})} modules. " | |
3417 | "They work by running the operating systems under test with lightweight " | |
3418 | "instrumentation in a virtual machine (VM). They can be computationally " | |
3419 | "intensive or rather cheap, depending on whether substitutes are available " | |
3420 | "for their dependencies (@pxref{Substitutes}). Some of them require a lot of " | |
3421 | "storage space to hold VM images." | |
3422 | msgstr "" | |
3423 | ||
3424 | #. type: Plain text | |
3425 | #: doc/guix.texi:742 | |
3426 | msgid "" | |
3427 | "Again in case of test failures, please send @email{bug-guix@@gnu.org} all " | |
3428 | "the details." | |
3429 | msgstr "" | |
3430 | ||
3431 | #. type: cindex | |
3432 | #: doc/guix.texi:746 | |
3433 | #, no-wrap | |
3434 | msgid "daemon" | |
3435 | msgstr "" | |
3436 | ||
3437 | #. type: Plain text | |
3438 | #: doc/guix.texi:754 | |
3439 | msgid "" | |
3440 | "Operations such as building a package or running the garbage collector are " | |
3441 | "all performed by a specialized process, the @dfn{build daemon}, on behalf of " | |
3442 | "clients. Only the daemon may access the store and its associated database. " | |
3443 | "Thus, any operation that manipulates the store goes through the daemon. For " | |
3444 | "instance, command-line tools such as @command{guix package} and " | |
3445 | "@command{guix build} communicate with the daemon (@i{via} remote procedure " | |
3446 | "calls) to instruct it what to do." | |
3447 | msgstr "" | |
3448 | ||
3449 | #. type: Plain text | |
3450 | #: doc/guix.texi:758 | |
3451 | msgid "" | |
3452 | "The following sections explain how to prepare the build daemon's " | |
3453 | "environment. See also @ref{Substitutes}, for information on how to allow " | |
3454 | "the daemon to download pre-built binaries." | |
3455 | msgstr "" | |
3456 | ||
3457 | #. type: cindex | |
3458 | #: doc/guix.texi:768 doc/guix.texi:1193 | |
3459 | #, no-wrap | |
3460 | msgid "build environment" | |
3461 | msgstr "" | |
3462 | ||
3463 | #. type: Plain text | |
3464 | #: doc/guix.texi:776 | |
3465 | msgid "" | |
39764ef8 JL |
3466 | "In a standard multi-user setup, Guix and its daemon---the @command{guix-" |
3467 | "daemon} program---are installed by the system administrator; @file{/gnu/" | |
3468 | "store} is owned by @code{root} and @command{guix-daemon} runs as " | |
b9fe8fd6 JL |
3469 | "@code{root}. Unprivileged users may use Guix tools to build packages or " |
3470 | "otherwise access the store, and the daemon will do it on their behalf, " | |
3471 | "ensuring that the store is kept in a consistent state, and allowing built " | |
3472 | "packages to be shared among users." | |
3473 | msgstr "" | |
3474 | ||
3475 | #. type: cindex | |
3476 | #: doc/guix.texi:777 | |
3477 | #, no-wrap | |
3478 | msgid "build users" | |
3479 | msgstr "" | |
3480 | ||
3481 | #. type: Plain text | |
3482 | #: doc/guix.texi:788 | |
3483 | msgid "" | |
3484 | "When @command{guix-daemon} runs as @code{root}, you may not want package " | |
3485 | "build processes themselves to run as @code{root} too, for obvious security " | |
3486 | "reasons. To avoid that, a special pool of @dfn{build users} should be " | |
3487 | "created for use by build processes started by the daemon. These build users " | |
3488 | "need not have a shell and a home directory: they will just be used when the " | |
3489 | "daemon drops @code{root} privileges in build processes. Having several such " | |
3490 | "users allows the daemon to launch distinct build processes under separate " | |
3491 | "UIDs, which guarantees that they do not interfere with each other---an " | |
3492 | "essential feature since builds are regarded as pure functions " | |
3493 | "(@pxref{Introduction})." | |
3494 | msgstr "" | |
3495 | ||
3496 | #. type: Plain text | |
3497 | #: doc/guix.texi:791 | |
3498 | msgid "" | |
3499 | "On a GNU/Linux system, a build user pool may be created like this (using " | |
3500 | "Bash syntax and the @code{shadow} commands):" | |
3501 | msgstr "" | |
3502 | ||
3503 | #. type: example | |
3504 | #: doc/guix.texi:803 | |
3505 | #, no-wrap | |
3506 | msgid "" | |
3507 | "# groupadd --system guixbuild\n" | |
3508 | "# for i in `seq -w 1 10`;\n" | |
3509 | " do\n" | |
3510 | " useradd -g guixbuild -G guixbuild \\\n" | |
3511 | " -d /var/empty -s `which nologin` \\\n" | |
3512 | " -c \"Guix build user $i\" --system \\\n" | |
3513 | " guixbuilder$i;\n" | |
3514 | " done\n" | |
3515 | msgstr "" | |
3516 | ||
3517 | #. type: Plain text | |
3518 | #: doc/guix.texi:813 | |
3519 | msgid "" | |
3520 | "The number of build users determines how many build jobs may run in " | |
3521 | "parallel, as specified by the @option{--max-jobs} option (@pxref{Invoking " | |
3522 | "guix-daemon, @option{--max-jobs}}). To use @command{guix system vm} and " | |
3523 | "related commands, you may need to add the build users to the @code{kvm} " | |
3524 | "group so they can access @file{/dev/kvm}, using @code{-G guixbuild,kvm} " | |
3525 | "instead of @code{-G guixbuild} (@pxref{Invoking guix system})." | |
3526 | msgstr "" | |
3527 | ||
3528 | #. type: Plain text | |
3529 | #: doc/guix.texi:822 | |
3530 | msgid "" | |
3531 | "The @code{guix-daemon} program may then be run as @code{root} with the " | |
3532 | "following command@footnote{If your machine uses the systemd init system, " | |
3533 | "dropping the @file{@var{prefix}/lib/systemd/system/guix-daemon.service} file " | |
3534 | "in @file{/etc/systemd/system} will ensure that @command{guix-daemon} is " | |
3535 | "automatically started. Similarly, if your machine uses the Upstart init " | |
3536 | "system, drop the @file{@var{prefix}/lib/upstart/system/guix-daemon.conf} " | |
3537 | "file in @file{/etc/init}.}:" | |
3538 | msgstr "" | |
3539 | ||
3540 | #. type: example | |
3541 | #: doc/guix.texi:825 doc/guix.texi:1186 | |
3542 | #, no-wrap | |
3543 | msgid "# guix-daemon --build-users-group=guixbuild\n" | |
3544 | msgstr "" | |
3545 | ||
3546 | #. type: cindex | |
3547 | #: doc/guix.texi:827 doc/guix.texi:1191 | |
3548 | #, no-wrap | |
3549 | msgid "chroot" | |
3550 | msgstr "" | |
3551 | ||
3552 | #. type: Plain text | |
3553 | #: doc/guix.texi:832 | |
3554 | msgid "" | |
3555 | "This way, the daemon starts build processes in a chroot, under one of the " | |
3556 | "@code{guixbuilder} users. On GNU/Linux, by default, the chroot environment " | |
3557 | "contains nothing but:" | |
3558 | msgstr "" | |
3559 | ||
3560 | #. type: itemize | |
3561 | #: doc/guix.texi:840 | |
3562 | msgid "" | |
3563 | "a minimal @code{/dev} directory, created mostly independently from the host " | |
3564 | "@code{/dev}@footnote{``Mostly'', because while the set of files that appear " | |
3565 | "in the chroot's @code{/dev} is fixed, most of these files can only be " | |
3566 | "created if the host has them.};" | |
3567 | msgstr "" | |
3568 | ||
3569 | #. type: itemize | |
3570 | #: doc/guix.texi:844 | |
3571 | msgid "" | |
3572 | "the @code{/proc} directory; it only shows the processes of the container " | |
3573 | "since a separate PID name space is used;" | |
3574 | msgstr "" | |
3575 | ||
3576 | #. type: itemize | |
3577 | #: doc/guix.texi:848 | |
3578 | msgid "" | |
3579 | "@file{/etc/passwd} with an entry for the current user and an entry for user " | |
3580 | "@file{nobody};" | |
3581 | msgstr "" | |
3582 | ||
3583 | #. type: itemize | |
3584 | #: doc/guix.texi:851 | |
3585 | msgid "@file{/etc/group} with an entry for the user's group;" | |
3586 | msgstr "" | |
3587 | ||
3588 | #. type: itemize | |
3589 | #: doc/guix.texi:855 | |
3590 | msgid "" | |
3591 | "@file{/etc/hosts} with an entry that maps @code{localhost} to " | |
3592 | "@code{127.0.0.1};" | |
3593 | msgstr "" | |
3594 | ||
3595 | #. type: itemize | |
3596 | #: doc/guix.texi:858 | |
3597 | msgid "a writable @file{/tmp} directory." | |
3598 | msgstr "" | |
3599 | ||
3600 | #. type: Plain text | |
3601 | #: doc/guix.texi:867 | |
3602 | msgid "" | |
3603 | "You can influence the directory where the daemon stores build trees @i{via} " | |
3604 | "the @code{TMPDIR} environment variable. However, the build tree within the " | |
3605 | "chroot is always called @file{/tmp/guix-build-@var{name}.drv-0}, where " | |
3606 | "@var{name} is the derivation name---e.g., @code{coreutils-8.24}. This way, " | |
3607 | "the value of @code{TMPDIR} does not leak inside build environments, which " | |
3608 | "avoids discrepancies in cases where build processes capture the name of " | |
3609 | "their build tree." | |
3610 | msgstr "" | |
3611 | ||
3612 | #. type: vindex | |
3613 | #: doc/guix.texi:868 doc/guix.texi:2411 | |
3614 | #, no-wrap | |
3615 | msgid "http_proxy" | |
3616 | msgstr "" | |
3617 | ||
3618 | #. type: Plain text | |
3619 | #: doc/guix.texi:872 | |
3620 | msgid "" | |
3621 | "The daemon also honors the @code{http_proxy} environment variable for HTTP " | |
3622 | "downloads it performs, be it for fixed-output derivations " | |
3623 | "(@pxref{Derivations}) or for substitutes (@pxref{Substitutes})." | |
3624 | msgstr "" | |
3625 | ||
3626 | #. type: Plain text | |
3627 | #: doc/guix.texi:880 | |
3628 | msgid "" | |
3629 | "If you are installing Guix as an unprivileged user, it is still possible to " | |
3630 | "run @command{guix-daemon} provided you pass @code{--disable-chroot}. " | |
3631 | "However, build processes will not be isolated from one another, and not from " | |
3632 | "the rest of the system. Thus, build processes may interfere with each " | |
3633 | "other, and may access programs, libraries, and other files available on the " | |
3634 | "system---making it much harder to view them as @emph{pure} functions." | |
3635 | msgstr "" | |
3636 | ||
3637 | #. type: subsection | |
3638 | #: doc/guix.texi:883 | |
3639 | #, no-wrap | |
3640 | msgid "Using the Offload Facility" | |
3641 | msgstr "" | |
3642 | ||
3643 | #. type: cindex | |
3644 | #: doc/guix.texi:885 | |
3645 | #, no-wrap | |
3646 | msgid "offloading" | |
3647 | msgstr "" | |
3648 | ||
3649 | #. type: cindex | |
3650 | #: doc/guix.texi:886 doc/guix.texi:1247 | |
3651 | #, no-wrap | |
3652 | msgid "build hook" | |
3653 | msgstr "" | |
3654 | ||
3655 | #. type: Plain text | |
3656 | #: doc/guix.texi:900 | |
3657 | msgid "" | |
3658 | "When desired, the build daemon can @dfn{offload} derivation builds to other " | |
39764ef8 JL |
3659 | "machines running Guix, using the @code{offload} @dfn{build hook}" |
3660 | "@footnote{This feature is available only when @uref{https://github.com/" | |
3661 | "artyom-poptsov/guile-ssh, Guile-SSH} is present.}. When that feature is " | |
3662 | "enabled, a list of user-specified build machines is read from @file{/etc/" | |
3663 | "guix/machines.scm}; every time a build is requested, for instance via " | |
3664 | "@code{guix build}, the daemon attempts to offload it to one of the machines " | |
3665 | "that satisfy the constraints of the derivation, in particular its system " | |
3666 | "type---e.g., @file{x86_64-linux}. Missing prerequisites for the build are " | |
3667 | "copied over SSH to the target machine, which then proceeds with the build; " | |
3668 | "upon success the output(s) of the build are copied back to the initial " | |
3669 | "machine." | |
b9fe8fd6 JL |
3670 | msgstr "" |
3671 | ||
3672 | #. type: Plain text | |
3673 | #: doc/guix.texi:902 | |
3674 | msgid "The @file{/etc/guix/machines.scm} file typically looks like this:" | |
3675 | msgstr "" | |
3676 | ||
3677 | #. type: example | |
3678 | #: doc/guix.texi:910 | |
3679 | #, no-wrap | |
3680 | msgid "" | |
3681 | "(list (build-machine\n" | |
3682 | " (name \"eightysix.example.org\")\n" | |
3683 | " (system \"x86_64-linux\")\n" | |
3684 | " (host-key \"ssh-ed25519 AAAAC3Nza@dots{}\")\n" | |
3685 | " (user \"bob\")\n" | |
3686 | " (speed 2.)) ;incredibly fast!\n" | |
3687 | "\n" | |
3688 | msgstr "" | |
3689 | ||
3690 | #. type: example | |
3691 | #: doc/guix.texi:919 | |
3692 | #, no-wrap | |
3693 | msgid "" | |
3694 | " (build-machine\n" | |
3695 | " (name \"meeps.example.org\")\n" | |
3696 | " (system \"mips64el-linux\")\n" | |
3697 | " (host-key \"ssh-rsa AAAAB3Nza@dots{}\")\n" | |
3698 | " (user \"alice\")\n" | |
3699 | " (private-key\n" | |
3700 | " (string-append (getenv \"HOME\")\n" | |
3701 | " \"/.ssh/identity-for-guix\"))))\n" | |
3702 | msgstr "" | |
3703 | ||
3704 | #. type: Plain text | |
3705 | #: doc/guix.texi:925 | |
3706 | msgid "" | |
3707 | "In the example above we specify a list of two build machines, one for the " | |
3708 | "@code{x86_64} architecture and one for the @code{mips64el} architecture." | |
3709 | msgstr "" | |
3710 | ||
3711 | #. type: Plain text | |
3712 | #: doc/guix.texi:934 | |
3713 | msgid "" | |
3714 | "In fact, this file is---not surprisingly!---a Scheme file that is evaluated " | |
3715 | "when the @code{offload} hook is started. Its return value must be a list of " | |
3716 | "@code{build-machine} objects. While this example shows a fixed list of " | |
3717 | "build machines, one could imagine, say, using DNS-SD to return a list of " | |
3718 | "potential build machines discovered in the local network " | |
3719 | "(@pxref{Introduction, Guile-Avahi,, guile-avahi, Using Avahi in Guile Scheme " | |
3720 | "Programs}). The @code{build-machine} data type is detailed below." | |
3721 | msgstr "" | |
3722 | ||
3723 | #. type: deftp | |
3724 | #: doc/guix.texi:935 | |
3725 | #, no-wrap | |
3726 | msgid "{Data Type} build-machine" | |
3727 | msgstr "" | |
3728 | ||
3729 | #. type: deftp | |
3730 | #: doc/guix.texi:938 | |
3731 | msgid "" | |
3732 | "This data type represents build machines to which the daemon may offload " | |
3733 | "builds. The important fields are:" | |
3734 | msgstr "" | |
3735 | ||
3736 | #. type: code{#1} | |
39764ef8 JL |
3737 | #: doc/guix.texi:941 doc/guix.texi:3402 doc/guix.texi:9406 doc/guix.texi:9470 |
3738 | #: doc/guix.texi:9565 doc/guix.texi:11000 doc/guix.texi:15037 | |
3739 | #: doc/guix.texi:15270 doc/guix.texi:15403 doc/guix.texi:15677 | |
3740 | #: doc/guix.texi:15718 doc/guix.texi:19663 doc/guix.texi:19680 | |
3741 | #: doc/guix.texi:19946 doc/guix.texi:21154 | |
b9fe8fd6 JL |
3742 | #, no-wrap |
3743 | msgid "name" | |
3744 | msgstr "" | |
3745 | ||
3746 | #. type: table | |
3747 | #: doc/guix.texi:943 | |
3748 | msgid "The host name of the remote machine." | |
3749 | msgstr "" | |
3750 | ||
3751 | #. type: item | |
3752 | #: doc/guix.texi:944 | |
3753 | #, no-wrap | |
3754 | msgid "system" | |
3755 | msgstr "" | |
3756 | ||
3757 | #. type: table | |
3758 | #: doc/guix.texi:946 | |
3759 | msgid "The system type of the remote machine---e.g., @code{\"x86_64-linux\"}." | |
3760 | msgstr "" | |
3761 | ||
3762 | #. type: code{#1} | |
39764ef8 | 3763 | #: doc/guix.texi:947 doc/guix.texi:11010 |
b9fe8fd6 JL |
3764 | #, no-wrap |
3765 | msgid "user" | |
3766 | msgstr "" | |
3767 | ||
3768 | #. type: table | |
3769 | #: doc/guix.texi:951 | |
3770 | msgid "" | |
3771 | "The user account to use when connecting to the remote machine over SSH. " | |
3772 | "Note that the SSH key pair must @emph{not} be passphrase-protected, to allow " | |
3773 | "non-interactive logins." | |
3774 | msgstr "" | |
3775 | ||
3776 | #. type: item | |
3777 | #: doc/guix.texi:952 | |
3778 | #, no-wrap | |
3779 | msgid "host-key" | |
3780 | msgstr "" | |
3781 | ||
3782 | #. type: table | |
3783 | #: doc/guix.texi:956 | |
3784 | msgid "" | |
3785 | "This must be the machine's SSH @dfn{public host key} in OpenSSH format. " | |
3786 | "This is used to authenticate the machine when we connect to it. It is a " | |
3787 | "long string that looks like this:" | |
3788 | msgstr "" | |
3789 | ||
3790 | #. type: example | |
3791 | #: doc/guix.texi:959 | |
3792 | #, no-wrap | |
3793 | msgid "ssh-ed25519 AAAAC3NzaC@dots{}mde+UhL hint@@example.org\n" | |
3794 | msgstr "" | |
3795 | ||
3796 | #. type: table | |
3797 | #: doc/guix.texi:964 | |
3798 | msgid "" | |
3799 | "If the machine is running the OpenSSH daemon, @command{sshd}, the host key " | |
3800 | "can be found in a file such as @file{/etc/ssh/ssh_host_ed25519_key.pub}." | |
3801 | msgstr "" | |
3802 | ||
3803 | #. type: table | |
3804 | #: doc/guix.texi:969 | |
3805 | msgid "" | |
3806 | "If the machine is running the SSH daemon of GNU@tie{}lsh, @command{lshd}, " | |
3807 | "the host key is in @file{/etc/lsh/host-key.pub} or a similar file. It can " | |
3808 | "be converted to the OpenSSH format using @command{lsh-export-key} " | |
3809 | "(@pxref{Converting keys,,, lsh, LSH Manual}):" | |
3810 | msgstr "" | |
3811 | ||
3812 | #. type: example | |
3813 | #: doc/guix.texi:973 | |
3814 | #, no-wrap | |
3815 | msgid "" | |
3816 | "$ lsh-export-key --openssh < /etc/lsh/host-key.pub \n" | |
3817 | "ssh-rsa AAAAB3NzaC1yc2EAAAAEOp8FoQAAAQEAs1eB46LV@dots{}\n" | |
3818 | msgstr "" | |
3819 | ||
3820 | #. type: deftp | |
3821 | #: doc/guix.texi:978 | |
3822 | msgid "A number of optional fields may be specified:" | |
3823 | msgstr "" | |
3824 | ||
3825 | #. type: item | |
3826 | #: doc/guix.texi:981 | |
3827 | #, no-wrap | |
3828 | msgid "@code{port} (default: @code{22})" | |
3829 | msgstr "" | |
3830 | ||
3831 | #. type: table | |
3832 | #: doc/guix.texi:983 | |
3833 | msgid "Port number of SSH server on the machine." | |
3834 | msgstr "" | |
3835 | ||
3836 | #. type: item | |
3837 | #: doc/guix.texi:984 | |
3838 | #, no-wrap | |
3839 | msgid "@code{private-key} (default: @file{~root/.ssh/id_rsa})" | |
3840 | msgstr "" | |
3841 | ||
3842 | #. type: table | |
3843 | #: doc/guix.texi:987 | |
3844 | msgid "" | |
3845 | "The SSH private key file to use when connecting to the machine, in OpenSSH " | |
3846 | "format." | |
3847 | msgstr "" | |
3848 | ||
3849 | #. type: table | |
3850 | #: doc/guix.texi:990 | |
3851 | msgid "" | |
3852 | "Note that the default value is the private key @emph{of the root account}. " | |
3853 | "Make sure it exists if you use the default." | |
3854 | msgstr "" | |
3855 | ||
3856 | #. type: item | |
3857 | #: doc/guix.texi:991 | |
3858 | #, no-wrap | |
3859 | msgid "@code{compression} (default: @code{\"zlib@@openssh.com,zlib\"})" | |
3860 | msgstr "" | |
3861 | ||
3862 | #. type: item | |
3863 | #: doc/guix.texi:992 doc/guix.texi:10422 | |
3864 | #, no-wrap | |
3865 | msgid "@code{compression-level} (default: @code{3})" | |
3866 | msgstr "" | |
3867 | ||
3868 | #. type: table | |
3869 | #: doc/guix.texi:994 | |
3870 | msgid "The SSH-level compression methods and compression level requested." | |
3871 | msgstr "" | |
3872 | ||
3873 | #. type: table | |
3874 | #: doc/guix.texi:997 | |
3875 | msgid "" | |
3876 | "Note that offloading relies on SSH compression to reduce bandwidth usage " | |
3877 | "when transferring files to and from build machines." | |
3878 | msgstr "" | |
3879 | ||
3880 | #. type: item | |
3881 | #: doc/guix.texi:998 | |
3882 | #, no-wrap | |
3883 | msgid "@code{daemon-socket} (default: @code{\"/var/guix/daemon-socket/socket\"})" | |
3884 | msgstr "" | |
3885 | ||
3886 | #. type: table | |
3887 | #: doc/guix.texi:1001 | |
3888 | msgid "" | |
3889 | "File name of the Unix-domain socket @command{guix-daemon} is listening to on " | |
3890 | "that machine." | |
3891 | msgstr "" | |
3892 | ||
3893 | #. type: item | |
3894 | #: doc/guix.texi:1002 | |
3895 | #, no-wrap | |
3896 | msgid "@code{parallel-builds} (default: @code{1})" | |
3897 | msgstr "" | |
3898 | ||
3899 | #. type: table | |
3900 | #: doc/guix.texi:1004 | |
3901 | msgid "The number of builds that may run in parallel on the machine." | |
3902 | msgstr "" | |
3903 | ||
3904 | #. type: item | |
3905 | #: doc/guix.texi:1005 | |
3906 | #, no-wrap | |
3907 | msgid "@code{speed} (default: @code{1.0})" | |
3908 | msgstr "" | |
3909 | ||
3910 | #. type: table | |
3911 | #: doc/guix.texi:1008 | |
3912 | msgid "" | |
3913 | "A ``relative speed factor''. The offload scheduler will tend to prefer " | |
3914 | "machines with a higher speed factor." | |
3915 | msgstr "" | |
3916 | ||
3917 | #. type: item | |
3918 | #: doc/guix.texi:1009 | |
3919 | #, no-wrap | |
3920 | msgid "@code{features} (default: @code{'()})" | |
3921 | msgstr "" | |
3922 | ||
3923 | #. type: table | |
3924 | #: doc/guix.texi:1014 | |
3925 | msgid "" | |
3926 | "A list of strings denoting specific features supported by the machine. An " | |
3927 | "example is @code{\"kvm\"} for machines that have the KVM Linux modules and " | |
3928 | "corresponding hardware support. Derivations can request features by name, " | |
3929 | "and they will be scheduled on matching build machines." | |
3930 | msgstr "" | |
3931 | ||
3932 | #. type: Plain text | |
3933 | #: doc/guix.texi:1022 | |
3934 | msgid "" | |
3935 | "The @code{guile} command must be in the search path on the build machines. " | |
3936 | "In addition, the Guix modules must be in @code{$GUILE_LOAD_PATH} on the " | |
3937 | "build machine---you can check whether this is the case by running:" | |
3938 | msgstr "" | |
3939 | ||
3940 | #. type: example | |
3941 | #: doc/guix.texi:1025 | |
3942 | #, no-wrap | |
3943 | msgid "ssh build-machine guile -c \"'(use-modules (guix config))'\"\n" | |
3944 | msgstr "" | |
3945 | ||
3946 | #. type: Plain text | |
3947 | #: doc/guix.texi:1032 | |
3948 | msgid "" | |
3949 | "There is one last thing to do once @file{machines.scm} is in place. As " | |
3950 | "explained above, when offloading, files are transferred back and forth " | |
3951 | "between the machine stores. For this to work, you first need to generate a " | |
3952 | "key pair on each machine to allow the daemon to export signed archives of " | |
3953 | "files from the store (@pxref{Invoking guix archive}):" | |
3954 | msgstr "" | |
3955 | ||
3956 | #. type: example | |
3957 | #: doc/guix.texi:1035 | |
3958 | #, no-wrap | |
3959 | msgid "# guix archive --generate-key\n" | |
3960 | msgstr "" | |
3961 | ||
3962 | #. type: Plain text | |
3963 | #: doc/guix.texi:1040 | |
3964 | msgid "" | |
3965 | "Each build machine must authorize the key of the master machine so that it " | |
3966 | "accepts store items it receives from the master:" | |
3967 | msgstr "" | |
3968 | ||
3969 | #. type: example | |
3970 | #: doc/guix.texi:1043 | |
3971 | #, no-wrap | |
3972 | msgid "# guix archive --authorize < master-public-key.txt\n" | |
3973 | msgstr "" | |
3974 | ||
3975 | #. type: Plain text | |
3976 | #: doc/guix.texi:1047 | |
39764ef8 JL |
3977 | msgid "" |
3978 | "Likewise, the master machine must authorize the key of each build machine." | |
b9fe8fd6 JL |
3979 | msgstr "" |
3980 | ||
3981 | #. type: Plain text | |
3982 | #: doc/guix.texi:1053 | |
3983 | msgid "" | |
3984 | "All the fuss with keys is here to express pairwise mutual trust relations " | |
3985 | "between the master and the build machines. Concretely, when the master " | |
3986 | "receives files from a build machine (and @i{vice versa}), its build daemon " | |
3987 | "can make sure they are genuine, have not been tampered with, and that they " | |
3988 | "are signed by an authorized key." | |
3989 | msgstr "" | |
3990 | ||
3991 | #. type: cindex | |
3992 | #: doc/guix.texi:1054 | |
3993 | #, no-wrap | |
3994 | msgid "offload test" | |
3995 | msgstr "" | |
3996 | ||
3997 | #. type: Plain text | |
3998 | #: doc/guix.texi:1057 | |
3999 | msgid "" | |
4000 | "To test whether your setup is operational, run this command on the master " | |
4001 | "node:" | |
4002 | msgstr "" | |
4003 | ||
4004 | #. type: example | |
4005 | #: doc/guix.texi:1060 | |
4006 | #, no-wrap | |
4007 | msgid "# guix offload test\n" | |
4008 | msgstr "" | |
4009 | ||
4010 | #. type: Plain text | |
4011 | #: doc/guix.texi:1066 | |
4012 | msgid "" | |
4013 | "This will attempt to connect to each of the build machines specified in " | |
4014 | "@file{/etc/guix/machines.scm}, make sure Guile and the Guix modules are " | |
4015 | "available on each machine, attempt to export to the machine and import from " | |
4016 | "it, and report any error in the process." | |
4017 | msgstr "" | |
4018 | ||
4019 | #. type: Plain text | |
4020 | #: doc/guix.texi:1069 | |
4021 | msgid "" | |
4022 | "If you want to test a different machine file, just specify it on the command " | |
4023 | "line:" | |
4024 | msgstr "" | |
4025 | ||
4026 | #. type: example | |
4027 | #: doc/guix.texi:1072 | |
4028 | #, no-wrap | |
4029 | msgid "# guix offload test machines-qualif.scm\n" | |
4030 | msgstr "" | |
4031 | ||
4032 | #. type: Plain text | |
4033 | #: doc/guix.texi:1076 | |
4034 | msgid "" | |
4035 | "Last, you can test the subset of the machines whose name matches a regular " | |
4036 | "expression like this:" | |
4037 | msgstr "" | |
4038 | ||
4039 | #. type: example | |
4040 | #: doc/guix.texi:1079 | |
4041 | #, no-wrap | |
4042 | msgid "# guix offload test machines.scm '\\.gnu\\.org$'\n" | |
4043 | msgstr "" | |
4044 | ||
4045 | #. type: cindex | |
4046 | #: doc/guix.texi:1081 | |
4047 | #, no-wrap | |
4048 | msgid "offload status" | |
4049 | msgstr "" | |
4050 | ||
4051 | #. type: Plain text | |
4052 | #: doc/guix.texi:1084 | |
4053 | msgid "" | |
4054 | "To display the current load of all build hosts, run this command on the main " | |
4055 | "node:" | |
4056 | msgstr "" | |
4057 | ||
4058 | #. type: example | |
4059 | #: doc/guix.texi:1087 | |
4060 | #, no-wrap | |
4061 | msgid "# guix offload status\n" | |
4062 | msgstr "" | |
4063 | ||
4064 | #. type: cindex | |
4065 | #: doc/guix.texi:1093 | |
4066 | #, no-wrap | |
4067 | msgid "SELinux, daemon policy" | |
4068 | msgstr "" | |
4069 | ||
4070 | #. type: cindex | |
4071 | #: doc/guix.texi:1094 | |
4072 | #, no-wrap | |
4073 | msgid "mandatory access control, SELinux" | |
4074 | msgstr "" | |
4075 | ||
4076 | #. type: cindex | |
4077 | #: doc/guix.texi:1095 | |
4078 | #, no-wrap | |
4079 | msgid "security, guix-daemon" | |
4080 | msgstr "" | |
4081 | ||
4082 | #. type: Plain text | |
4083 | #: doc/guix.texi:1101 | |
4084 | msgid "" | |
4085 | "Guix includes an SELinux policy file at @file{etc/guix-daemon.cil} that can " | |
4086 | "be installed on a system where SELinux is enabled, in order to label Guix " | |
4087 | "files and to specify the expected behavior of the daemon. Since GuixSD does " | |
4088 | "not provide an SELinux base policy, the daemon policy cannot be used on " | |
4089 | "GuixSD." | |
4090 | msgstr "" | |
4091 | ||
4092 | #. type: subsubsection | |
4093 | #: doc/guix.texi:1102 | |
4094 | #, no-wrap | |
4095 | msgid "Installing the SELinux policy" | |
4096 | msgstr "" | |
4097 | ||
4098 | #. type: cindex | |
4099 | #: doc/guix.texi:1103 | |
4100 | #, no-wrap | |
4101 | msgid "SELinux, policy installation" | |
4102 | msgstr "" | |
4103 | ||
4104 | #. type: Plain text | |
4105 | #: doc/guix.texi:1105 | |
4106 | msgid "To install the policy run this command as root:" | |
4107 | msgstr "" | |
4108 | ||
4109 | #. type: example | |
4110 | #: doc/guix.texi:1108 | |
4111 | #, no-wrap | |
4112 | msgid "semodule -i etc/guix-daemon.cil\n" | |
4113 | msgstr "" | |
4114 | ||
4115 | #. type: Plain text | |
4116 | #: doc/guix.texi:1112 | |
4117 | msgid "" | |
4118 | "Then relabel the file system with @code{restorecon} or by a different " | |
4119 | "mechanism provided by your system." | |
4120 | msgstr "" | |
4121 | ||
4122 | #. type: Plain text | |
4123 | #: doc/guix.texi:1117 | |
4124 | msgid "" | |
4125 | "Once the policy is installed, the file system has been relabeled, and the " | |
4126 | "daemon has been restarted, it should be running in the @code{guix_daemon_t} " | |
4127 | "context. You can confirm this with the following command:" | |
4128 | msgstr "" | |
4129 | ||
4130 | #. type: example | |
4131 | #: doc/guix.texi:1120 | |
4132 | #, no-wrap | |
4133 | msgid "ps -Zax | grep guix-daemon\n" | |
4134 | msgstr "" | |
4135 | ||
4136 | #. type: Plain text | |
4137 | #: doc/guix.texi:1125 | |
4138 | msgid "" | |
4139 | "Monitor the SELinux log files as you run a command like @code{guix build " | |
4140 | "hello} to convince yourself that SELinux permits all necessary operations." | |
4141 | msgstr "" | |
4142 | ||
4143 | #. type: cindex | |
4144 | #: doc/guix.texi:1127 | |
4145 | #, no-wrap | |
4146 | msgid "SELinux, limitations" | |
4147 | msgstr "" | |
4148 | ||
4149 | #. type: Plain text | |
4150 | #: doc/guix.texi:1132 | |
4151 | msgid "" | |
4152 | "This policy is not perfect. Here is a list of limitations or quirks that " | |
4153 | "should be considered when deploying the provided SELinux policy for the Guix " | |
4154 | "daemon." | |
4155 | msgstr "" | |
4156 | ||
4157 | #. type: enumerate | |
4158 | #: doc/guix.texi:1139 | |
4159 | msgid "" | |
4160 | "@code{guix_daemon_socket_t} isn’t actually used. None of the socket " | |
4161 | "operations involve contexts that have anything to do with " | |
4162 | "@code{guix_daemon_socket_t}. It doesn’t hurt to have this unused label, but " | |
4163 | "it would be preferrable to define socket rules for only this label." | |
4164 | msgstr "" | |
4165 | ||
4166 | #. type: enumerate | |
4167 | #: doc/guix.texi:1150 | |
4168 | msgid "" | |
4169 | "@code{guix gc} cannot access arbitrary links to profiles. By design, the " | |
4170 | "file label of the destination of a symlink is independent of the file label " | |
4171 | "of the link itself. Although all profiles under $localstatedir are " | |
4172 | "labelled, the links to these profiles inherit the label of the directory " | |
4173 | "they are in. For links in the user’s home directory this will be " | |
4174 | "@code{user_home_t}. But for links from the root user’s home directory, or " | |
4175 | "@file{/tmp}, or the HTTP server’s working directory, etc, this won’t work. " | |
4176 | "@code{guix gc} would be prevented from reading and following these links." | |
4177 | msgstr "" | |
4178 | ||
4179 | #. type: enumerate | |
4180 | #: doc/guix.texi:1155 | |
4181 | msgid "" | |
4182 | "The daemon’s feature to listen for TCP connections might no longer work. " | |
4183 | "This might require extra rules, because SELinux treats network sockets " | |
4184 | "differently from files." | |
4185 | msgstr "" | |
4186 | ||
4187 | #. type: enumerate | |
4188 | #: doc/guix.texi:1166 | |
4189 | msgid "" | |
39764ef8 JL |
4190 | "Currently all files with a name matching the regular expression @code{/gnu/" |
4191 | "store/.+-(guix-.+|profile)/bin/guix-daemon} are assigned the label " | |
4192 | "@code{guix_daemon_exec_t}; this means that @emph{any} file with that name in " | |
4193 | "any profile would be permitted to run in the @code{guix_daemon_t} domain. " | |
4194 | "This is not ideal. An attacker could build a package that provides this " | |
4195 | "executable and convince a user to install and run it, which lifts it into " | |
4196 | "the @code{guix_daemon_t} domain. At that point SELinux could not prevent it " | |
4197 | "from accessing files that are allowed for processes in that domain." | |
b9fe8fd6 JL |
4198 | msgstr "" |
4199 | ||
4200 | #. type: enumerate | |
4201 | #: doc/guix.texi:1174 | |
4202 | msgid "" | |
4203 | "We could generate a much more restrictive policy at installation time, so " | |
39764ef8 JL |
4204 | "that only the @emph{exact} file name of the currently installed @code{guix-" |
4205 | "daemon} executable would be labelled with @code{guix_daemon_exec_t}, instead " | |
4206 | "of using a broad regular expression. The downside is that root would have " | |
4207 | "to install or upgrade the policy at installation time whenever the Guix " | |
4208 | "package that provides the effectively running @code{guix-daemon} executable " | |
4209 | "is upgraded." | |
b9fe8fd6 JL |
4210 | msgstr "" |
4211 | ||
4212 | #. type: section | |
4213 | #: doc/guix.texi:1177 | |
4214 | #, no-wrap | |
4215 | msgid "Invoking @command{guix-daemon}" | |
4216 | msgstr "" | |
4217 | ||
4218 | #. type: Plain text | |
4219 | #: doc/guix.texi:1183 | |
4220 | msgid "" | |
4221 | "The @command{guix-daemon} program implements all the functionality to access " | |
4222 | "the store. This includes launching build processes, running the garbage " | |
4223 | "collector, querying the availability of a build result, etc. It is normally " | |
4224 | "run as @code{root} like this:" | |
4225 | msgstr "" | |
4226 | ||
4227 | #. type: Plain text | |
4228 | #: doc/guix.texi:1190 | |
4229 | msgid "For details on how to set it up, @pxref{Setting Up the Daemon}." | |
4230 | msgstr "" | |
4231 | ||
4232 | #. type: cindex | |
4233 | #: doc/guix.texi:1192 | |
4234 | #, no-wrap | |
4235 | msgid "container, build environment" | |
4236 | msgstr "" | |
4237 | ||
4238 | #. type: cindex | |
4239 | #: doc/guix.texi:1194 doc/guix.texi:1732 doc/guix.texi:2392 doc/guix.texi:7648 | |
4240 | #, no-wrap | |
4241 | msgid "reproducible builds" | |
4242 | msgstr "" | |
4243 | ||
4244 | #. type: Plain text | |
4245 | #: doc/guix.texi:1206 | |
4246 | msgid "" | |
4247 | "By default, @command{guix-daemon} launches build processes under different " | |
4248 | "UIDs, taken from the build group specified with @code{--build-users-group}. " | |
4249 | "In addition, each build process is run in a chroot environment that only " | |
4250 | "contains the subset of the store that the build process depends on, as " | |
4251 | "specified by its derivation (@pxref{Programming Interface, derivation}), " | |
4252 | "plus a set of specific system directories. By default, the latter contains " | |
4253 | "@file{/dev} and @file{/dev/pts}. Furthermore, on GNU/Linux, the build " | |
4254 | "environment is a @dfn{container}: in addition to having its own file system " | |
4255 | "tree, it has a separate mount name space, its own PID name space, network " | |
4256 | "name space, etc. This helps achieve reproducible builds (@pxref{Features})." | |
4257 | msgstr "" | |
4258 | ||
4259 | #. type: Plain text | |
4260 | #: doc/guix.texi:1215 | |
4261 | msgid "" | |
4262 | "When the daemon performs a build on behalf of the user, it creates a build " | |
4263 | "directory under @file{/tmp} or under the directory specified by its " | |
4264 | "@code{TMPDIR} environment variable; this directory is shared with the " | |
4265 | "container for the duration of the build. Be aware that using a directory " | |
4266 | "other than @file{/tmp} can affect build results---for example, with a longer " | |
4267 | "directory name, a build process that uses Unix-domain sockets might hit the " | |
39764ef8 | 4268 | "name length limitation for @code{sun_path}, which it would otherwise not hit." |
b9fe8fd6 JL |
4269 | msgstr "" |
4270 | ||
4271 | #. type: Plain text | |
4272 | #: doc/guix.texi:1219 | |
4273 | msgid "" | |
4274 | "The build directory is automatically deleted upon completion, unless the " | |
4275 | "build failed and the client specified @option{--keep-failed} " | |
4276 | "(@pxref{Invoking guix build, @option{--keep-failed}})." | |
4277 | msgstr "" | |
4278 | ||
4279 | #. type: Plain text | |
4280 | #: doc/guix.texi:1221 | |
4281 | msgid "The following command-line options are supported:" | |
4282 | msgstr "" | |
4283 | ||
4284 | #. type: item | |
4285 | #: doc/guix.texi:1223 | |
4286 | #, no-wrap | |
4287 | msgid "--build-users-group=@var{group}" | |
4288 | msgstr "" | |
4289 | ||
4290 | #. type: table | |
4291 | #: doc/guix.texi:1226 | |
4292 | msgid "" | |
4293 | "Take users from @var{group} to run build processes (@pxref{Setting Up the " | |
4294 | "Daemon, build users})." | |
4295 | msgstr "" | |
4296 | ||
4297 | #. type: item | |
4298 | #: doc/guix.texi:1227 doc/guix.texi:5498 | |
4299 | #, no-wrap | |
4300 | msgid "--no-substitutes" | |
4301 | msgstr "" | |
4302 | ||
4303 | #. type: cindex | |
4304 | #: doc/guix.texi:1228 doc/guix.texi:1744 doc/guix.texi:2248 | |
4305 | #, no-wrap | |
4306 | msgid "substitutes" | |
4307 | msgstr "" | |
4308 | ||
4309 | #. type: table | |
4310 | #: doc/guix.texi:1232 doc/guix.texi:5502 | |
4311 | msgid "" | |
4312 | "Do not use substitutes for build products. That is, always build things " | |
4313 | "locally instead of allowing downloads of pre-built binaries " | |
4314 | "(@pxref{Substitutes})." | |
4315 | msgstr "" | |
4316 | ||
4317 | #. type: table | |
4318 | #: doc/guix.texi:1236 | |
4319 | msgid "" | |
4320 | "When the daemon runs with @code{--no-substitutes}, clients can still " | |
4321 | "explicitly enable substitution @i{via} the @code{set-build-options} remote " | |
4322 | "procedure call (@pxref{The Store})." | |
4323 | msgstr "" | |
4324 | ||
4325 | #. type: item | |
39764ef8 JL |
4326 | #: doc/guix.texi:1237 doc/guix.texi:5485 doc/guix.texi:6897 doc/guix.texi:7773 |
4327 | #: doc/guix.texi:7961 | |
b9fe8fd6 JL |
4328 | #, no-wrap |
4329 | msgid "--substitute-urls=@var{urls}" | |
4330 | msgstr "" | |
4331 | ||
4332 | #. type: anchor{#1} | |
4333 | #: doc/guix.texi:1243 | |
4334 | msgid "daemon-substitute-urls" | |
4335 | msgstr "" | |
4336 | ||
4337 | #. type: table | |
4338 | #: doc/guix.texi:1243 | |
4339 | msgid "" | |
4340 | "Consider @var{urls} the default whitespace-separated list of substitute " | |
39764ef8 JL |
4341 | "source URLs. When this option is omitted, @indicateurl{https://mirror.hydra." |
4342 | "gnu.org https://hydra.gnu.org} is used (@code{mirror.hydra.gnu.org} is a " | |
4343 | "mirror of @code{hydra.gnu.org})." | |
b9fe8fd6 JL |
4344 | msgstr "" |
4345 | ||
4346 | #. type: table | |
4347 | #: doc/guix.texi:1246 | |
4348 | msgid "" | |
4349 | "This means that substitutes may be downloaded from @var{urls}, as long as " | |
4350 | "they are signed by a trusted signature (@pxref{Substitutes})." | |
4351 | msgstr "" | |
4352 | ||
4353 | #. type: item | |
4354 | #: doc/guix.texi:1248 doc/guix.texi:5523 | |
4355 | #, no-wrap | |
4356 | msgid "--no-build-hook" | |
4357 | msgstr "" | |
4358 | ||
4359 | #. type: table | |
4360 | #: doc/guix.texi:1250 | |
4361 | msgid "Do not use the @dfn{build hook}." | |
4362 | msgstr "" | |
4363 | ||
4364 | #. type: table | |
4365 | #: doc/guix.texi:1254 | |
4366 | msgid "" | |
4367 | "The build hook is a helper program that the daemon can start and to which it " | |
4368 | "submits build requests. This mechanism is used to offload builds to other " | |
4369 | "machines (@pxref{Daemon Offload Setup})." | |
4370 | msgstr "" | |
4371 | ||
4372 | #. type: item | |
4373 | #: doc/guix.texi:1255 | |
4374 | #, no-wrap | |
4375 | msgid "--cache-failures" | |
4376 | msgstr "" | |
4377 | ||
4378 | #. type: table | |
4379 | #: doc/guix.texi:1257 | |
4380 | msgid "Cache build failures. By default, only successful builds are cached." | |
4381 | msgstr "" | |
4382 | ||
4383 | #. type: table | |
4384 | #: doc/guix.texi:1262 | |
4385 | msgid "" | |
4386 | "When this option is used, @command{guix gc --list-failures} can be used to " | |
39764ef8 JL |
4387 | "query the set of store items marked as failed; @command{guix gc --clear-" |
4388 | "failures} removes store items from the set of cached failures. " | |
b9fe8fd6 JL |
4389 | "@xref{Invoking guix gc}." |
4390 | msgstr "" | |
4391 | ||
4392 | #. type: item | |
4393 | #: doc/guix.texi:1263 doc/guix.texi:5547 | |
4394 | #, no-wrap | |
4395 | msgid "--cores=@var{n}" | |
4396 | msgstr "" | |
4397 | ||
4398 | #. type: itemx | |
4399 | #: doc/guix.texi:1264 doc/guix.texi:5548 | |
4400 | #, no-wrap | |
4401 | msgid "-c @var{n}" | |
4402 | msgstr "" | |
4403 | ||
4404 | #. type: table | |
4405 | #: doc/guix.texi:1267 | |
4406 | msgid "" | |
4407 | "Use @var{n} CPU cores to build each derivation; @code{0} means as many as " | |
4408 | "available." | |
4409 | msgstr "" | |
4410 | ||
4411 | #. type: table | |
4412 | #: doc/guix.texi:1271 | |
4413 | msgid "" | |
4414 | "The default value is @code{0}, but it may be overridden by clients, such as " | |
4415 | "the @code{--cores} option of @command{guix build} (@pxref{Invoking guix " | |
4416 | "build})." | |
4417 | msgstr "" | |
4418 | ||
4419 | #. type: table | |
4420 | #: doc/guix.texi:1275 | |
4421 | msgid "" | |
4422 | "The effect is to define the @code{NIX_BUILD_CORES} environment variable in " | |
39764ef8 JL |
4423 | "the build process, which can then use it to exploit internal parallelism---" |
4424 | "for instance, by running @code{make -j$NIX_BUILD_CORES}." | |
b9fe8fd6 JL |
4425 | msgstr "" |
4426 | ||
4427 | #. type: item | |
4428 | #: doc/guix.texi:1276 doc/guix.texi:5552 | |
4429 | #, no-wrap | |
4430 | msgid "--max-jobs=@var{n}" | |
4431 | msgstr "" | |
4432 | ||
4433 | #. type: itemx | |
4434 | #: doc/guix.texi:1277 doc/guix.texi:5553 | |
4435 | #, no-wrap | |
4436 | msgid "-M @var{n}" | |
4437 | msgstr "" | |
4438 | ||
4439 | #. type: table | |
4440 | #: doc/guix.texi:1282 | |
4441 | msgid "" | |
4442 | "Allow at most @var{n} build jobs in parallel. The default value is " | |
4443 | "@code{1}. Setting it to @code{0} means that no builds will be performed " | |
4444 | "locally; instead, the daemon will offload builds (@pxref{Daemon Offload " | |
4445 | "Setup}), or simply fail." | |
4446 | msgstr "" | |
4447 | ||
4448 | #. type: item | |
4449 | #: doc/guix.texi:1283 doc/guix.texi:5528 | |
4450 | #, no-wrap | |
4451 | msgid "--max-silent-time=@var{seconds}" | |
4452 | msgstr "" | |
4453 | ||
4454 | #. type: table | |
4455 | #: doc/guix.texi:1286 doc/guix.texi:5531 | |
4456 | msgid "" | |
4457 | "When the build or substitution process remains silent for more than " | |
4458 | "@var{seconds}, terminate it and report a build failure." | |
4459 | msgstr "" | |
4460 | ||
4461 | #. type: table | |
4462 | #: doc/guix.texi:1288 doc/guix.texi:1297 | |
4463 | msgid "The default value is @code{0}, which disables the timeout." | |
4464 | msgstr "" | |
4465 | ||
4466 | #. type: table | |
4467 | #: doc/guix.texi:1291 | |
4468 | msgid "" | |
4469 | "The value specified here can be overridden by clients (@pxref{Common Build " | |
4470 | "Options, @code{--max-silent-time}})." | |
4471 | msgstr "" | |
4472 | ||
4473 | #. type: item | |
4474 | #: doc/guix.texi:1292 doc/guix.texi:5535 | |
4475 | #, no-wrap | |
4476 | msgid "--timeout=@var{seconds}" | |
4477 | msgstr "" | |
4478 | ||
4479 | #. type: table | |
4480 | #: doc/guix.texi:1295 doc/guix.texi:5538 | |
4481 | msgid "" | |
4482 | "Likewise, when the build or substitution process lasts for more than " | |
4483 | "@var{seconds}, terminate it and report a build failure." | |
4484 | msgstr "" | |
4485 | ||
4486 | #. type: table | |
4487 | #: doc/guix.texi:1300 | |
4488 | msgid "" | |
4489 | "The value specified here can be overridden by clients (@pxref{Common Build " | |
4490 | "Options, @code{--timeout}})." | |
4491 | msgstr "" | |
4492 | ||
4493 | #. type: item | |
4494 | #: doc/guix.texi:1301 | |
4495 | #, no-wrap | |
4496 | msgid "--rounds=@var{N}" | |
4497 | msgstr "" | |
4498 | ||
4499 | #. type: table | |
4500 | #: doc/guix.texi:1306 | |
4501 | msgid "" | |
4502 | "Build each derivation @var{n} times in a row, and raise an error if " | |
4503 | "consecutive build results are not bit-for-bit identical. Note that this " | |
4504 | "setting can be overridden by clients such as @command{guix build} " | |
4505 | "(@pxref{Invoking guix build})." | |
4506 | msgstr "" | |
4507 | ||
4508 | #. type: table | |
4509 | #: doc/guix.texi:1310 doc/guix.texi:5830 | |
4510 | msgid "" | |
4511 | "When used in conjunction with @option{--keep-failed}, the differing output " | |
4512 | "is kept in the store, under @file{/gnu/store/@dots{}-check}. This makes it " | |
4513 | "easy to look for differences between the two results." | |
4514 | msgstr "" | |
4515 | ||
4516 | #. type: item | |
4517 | #: doc/guix.texi:1311 | |
4518 | #, no-wrap | |
4519 | msgid "--debug" | |
4520 | msgstr "" | |
4521 | ||
4522 | #. type: table | |
4523 | #: doc/guix.texi:1313 | |
4524 | msgid "Produce debugging output." | |
4525 | msgstr "" | |
4526 | ||
4527 | #. type: table | |
4528 | #: doc/guix.texi:1317 | |
4529 | msgid "" | |
4530 | "This is useful to debug daemon start-up issues, but then it may be " | |
4531 | "overridden by clients, for example the @code{--verbosity} option of " | |
4532 | "@command{guix build} (@pxref{Invoking guix build})." | |
4533 | msgstr "" | |
4534 | ||
4535 | #. type: item | |
4536 | #: doc/guix.texi:1318 | |
4537 | #, no-wrap | |
4538 | msgid "--chroot-directory=@var{dir}" | |
4539 | msgstr "" | |
4540 | ||
4541 | #. type: table | |
4542 | #: doc/guix.texi:1320 | |
4543 | msgid "Add @var{dir} to the build chroot." | |
4544 | msgstr "" | |
4545 | ||
4546 | #. type: table | |
4547 | #: doc/guix.texi:1326 | |
4548 | msgid "" | |
4549 | "Doing this may change the result of build processes---for instance if they " | |
4550 | "use optional dependencies found in @var{dir} when it is available, and not " | |
4551 | "otherwise. For that reason, it is not recommended to do so. Instead, make " | |
4552 | "sure that each derivation declares all the inputs that it needs." | |
4553 | msgstr "" | |
4554 | ||
4555 | #. type: item | |
4556 | #: doc/guix.texi:1327 | |
4557 | #, no-wrap | |
4558 | msgid "--disable-chroot" | |
4559 | msgstr "" | |
4560 | ||
4561 | #. type: table | |
4562 | #: doc/guix.texi:1329 | |
4563 | msgid "Disable chroot builds." | |
4564 | msgstr "" | |
4565 | ||
4566 | #. type: table | |
4567 | #: doc/guix.texi:1334 | |
4568 | msgid "" | |
4569 | "Using this option is not recommended since, again, it would allow build " | |
4570 | "processes to gain access to undeclared dependencies. It is necessary, " | |
4571 | "though, when @command{guix-daemon} is running under an unprivileged user " | |
4572 | "account." | |
4573 | msgstr "" | |
4574 | ||
4575 | #. type: item | |
4576 | #: doc/guix.texi:1335 | |
4577 | #, no-wrap | |
4578 | msgid "--log-compression=@var{type}" | |
4579 | msgstr "" | |
4580 | ||
4581 | #. type: table | |
4582 | #: doc/guix.texi:1338 | |
4583 | msgid "" | |
4584 | "Compress build logs according to @var{type}, one of @code{gzip}, " | |
4585 | "@code{bzip2}, or @code{none}." | |
4586 | msgstr "" | |
4587 | ||
4588 | #. type: table | |
4589 | #: doc/guix.texi:1342 | |
4590 | msgid "" | |
4591 | "Unless @code{--lose-logs} is used, all the build logs are kept in the " | |
4592 | "@var{localstatedir}. To save space, the daemon automatically compresses " | |
4593 | "them with bzip2 by default." | |
4594 | msgstr "" | |
4595 | ||
4596 | #. type: item | |
4597 | #: doc/guix.texi:1343 | |
4598 | #, no-wrap | |
4599 | msgid "--disable-deduplication" | |
4600 | msgstr "" | |
4601 | ||
4602 | #. type: cindex | |
4603 | #: doc/guix.texi:1344 doc/guix.texi:2708 | |
4604 | #, no-wrap | |
4605 | msgid "deduplication" | |
4606 | msgstr "" | |
4607 | ||
4608 | #. type: table | |
4609 | #: doc/guix.texi:1346 | |
4610 | msgid "Disable automatic file ``deduplication'' in the store." | |
4611 | msgstr "" | |
4612 | ||
4613 | #. type: table | |
4614 | #: doc/guix.texi:1353 | |
4615 | msgid "" | |
4616 | "By default, files added to the store are automatically ``deduplicated'': if " | |
4617 | "a newly added file is identical to another one found in the store, the " | |
4618 | "daemon makes the new file a hard link to the other file. This can " | |
39764ef8 JL |
4619 | "noticeably reduce disk usage, at the expense of slightly increased input/" |
4620 | "output load at the end of a build process. This option disables this " | |
b9fe8fd6 JL |
4621 | "optimization." |
4622 | msgstr "" | |
4623 | ||
4624 | #. type: item | |
4625 | #: doc/guix.texi:1354 | |
4626 | #, no-wrap | |
4627 | msgid "--gc-keep-outputs[=yes|no]" | |
4628 | msgstr "" | |
4629 | ||
4630 | #. type: table | |
4631 | #: doc/guix.texi:1357 | |
4632 | msgid "" | |
4633 | "Tell whether the garbage collector (GC) must keep outputs of live " | |
4634 | "derivations." | |
4635 | msgstr "" | |
4636 | ||
4637 | #. type: cindex | |
4638 | #: doc/guix.texi:1358 doc/guix.texi:2543 | |
4639 | #, no-wrap | |
4640 | msgid "GC roots" | |
4641 | msgstr "" | |
4642 | ||
4643 | #. type: cindex | |
4644 | #: doc/guix.texi:1359 doc/guix.texi:2544 | |
4645 | #, no-wrap | |
4646 | msgid "garbage collector roots" | |
4647 | msgstr "" | |
4648 | ||
4649 | #. type: table | |
4650 | #: doc/guix.texi:1364 | |
4651 | msgid "" | |
4652 | "When set to ``yes'', the GC will keep the outputs of any live derivation " | |
4653 | "available in the store---the @code{.drv} files. The default is ``no'', " | |
4654 | "meaning that derivation outputs are kept only if they are GC roots. " | |
4655 | "@xref{Invoking guix gc}, for more on GC roots." | |
4656 | msgstr "" | |
4657 | ||
4658 | #. type: item | |
4659 | #: doc/guix.texi:1365 | |
4660 | #, no-wrap | |
4661 | msgid "--gc-keep-derivations[=yes|no]" | |
4662 | msgstr "" | |
4663 | ||
4664 | #. type: table | |
4665 | #: doc/guix.texi:1368 | |
4666 | msgid "" | |
4667 | "Tell whether the garbage collector (GC) must keep derivations corresponding " | |
4668 | "to live outputs." | |
4669 | msgstr "" | |
4670 | ||
4671 | #. type: table | |
4672 | #: doc/guix.texi:1373 | |
4673 | msgid "" | |
39764ef8 JL |
4674 | "When set to ``yes'', as is the case by default, the GC keeps derivations---i." |
4675 | "e., @code{.drv} files---as long as at least one of their outputs is live. " | |
4676 | "This allows users to keep track of the origins of items in their store. " | |
4677 | "Setting it to ``no'' saves a bit of disk space." | |
b9fe8fd6 JL |
4678 | msgstr "" |
4679 | ||
4680 | #. type: table | |
4681 | #: doc/guix.texi:1380 | |
4682 | msgid "" | |
39764ef8 JL |
4683 | "Note that when both @code{--gc-keep-derivations} and @code{--gc-keep-" |
4684 | "outputs} are used, the effect is to keep all the build prerequisites (the " | |
4685 | "sources, compiler, libraries, and other build-time tools) of live objects in " | |
4686 | "the store, regardless of whether these prerequisites are live. This is " | |
4687 | "convenient for developers since it saves rebuilds or downloads." | |
b9fe8fd6 JL |
4688 | msgstr "" |
4689 | ||
4690 | #. type: item | |
4691 | #: doc/guix.texi:1381 | |
4692 | #, no-wrap | |
4693 | msgid "--impersonate-linux-2.6" | |
4694 | msgstr "" | |
4695 | ||
4696 | #. type: table | |
4697 | #: doc/guix.texi:1384 | |
4698 | msgid "" | |
4699 | "On Linux-based systems, impersonate Linux 2.6. This means that the kernel's " | |
4700 | "@code{uname} system call will report 2.6 as the release number." | |
4701 | msgstr "" | |
4702 | ||
4703 | #. type: table | |
4704 | #: doc/guix.texi:1387 | |
4705 | msgid "" | |
4706 | "This might be helpful to build programs that (usually wrongfully) depend on " | |
4707 | "the kernel version number." | |
4708 | msgstr "" | |
4709 | ||
4710 | #. type: item | |
4711 | #: doc/guix.texi:1388 | |
4712 | #, no-wrap | |
4713 | msgid "--lose-logs" | |
4714 | msgstr "" | |
4715 | ||
4716 | #. type: table | |
4717 | #: doc/guix.texi:1391 | |
4718 | msgid "" | |
4719 | "Do not keep build logs. By default they are kept under " | |
4720 | "@code{@var{localstatedir}/guix/log}." | |
4721 | msgstr "" | |
4722 | ||
4723 | #. type: item | |
39764ef8 JL |
4724 | #: doc/guix.texi:1392 doc/guix.texi:2890 doc/guix.texi:5783 doc/guix.texi:6924 |
4725 | #: doc/guix.texi:7332 doc/guix.texi:7966 doc/guix.texi:20048 | |
4726 | #: doc/guix.texi:20592 | |
b9fe8fd6 JL |
4727 | #, no-wrap |
4728 | msgid "--system=@var{system}" | |
4729 | msgstr "" | |
4730 | ||
4731 | #. type: table | |
4732 | #: doc/guix.texi:1396 | |
4733 | msgid "" | |
4734 | "Assume @var{system} as the current system type. By default it is the " | |
39764ef8 JL |
4735 | "architecture/kernel pair found at configure time, such as @code{x86_64-" |
4736 | "linux}." | |
b9fe8fd6 JL |
4737 | msgstr "" |
4738 | ||
4739 | #. type: item | |
4740 | #: doc/guix.texi:1397 | |
4741 | #, no-wrap | |
4742 | msgid "--listen=@var{endpoint}" | |
4743 | msgstr "" | |
4744 | ||
4745 | #. type: table | |
4746 | #: doc/guix.texi:1402 | |
4747 | msgid "" | |
4748 | "Listen for connections on @var{endpoint}. @var{endpoint} is interpreted as " | |
4749 | "the file name of a Unix-domain socket if it starts with @code{/} (slash " | |
4750 | "sign). Otherwise, @var{endpoint} is interpreted as a host name or host name " | |
4751 | "and port to listen to. Here are a few examples:" | |
4752 | msgstr "" | |
4753 | ||
4754 | #. type: item | |
4755 | #: doc/guix.texi:1404 | |
4756 | #, no-wrap | |
4757 | msgid "--listen=/gnu/var/daemon" | |
4758 | msgstr "" | |
4759 | ||
4760 | #. type: table | |
4761 | #: doc/guix.texi:1407 | |
4762 | msgid "" | |
4763 | "Listen for connections on the @file{/gnu/var/daemon} Unix-domain socket, " | |
4764 | "creating it if needed." | |
4765 | msgstr "" | |
4766 | ||
4767 | #. type: item | |
4768 | #: doc/guix.texi:1408 | |
4769 | #, no-wrap | |
4770 | msgid "--listen=localhost" | |
4771 | msgstr "" | |
4772 | ||
4773 | #. type: cindex | |
4774 | #: doc/guix.texi:1409 doc/guix.texi:4235 | |
4775 | #, no-wrap | |
4776 | msgid "daemon, remote access" | |
4777 | msgstr "" | |
4778 | ||
4779 | #. type: cindex | |
4780 | #: doc/guix.texi:1410 doc/guix.texi:4236 | |
4781 | #, no-wrap | |
4782 | msgid "remote access to the daemon" | |
4783 | msgstr "" | |
4784 | ||
4785 | #. type: cindex | |
4786 | #: doc/guix.texi:1411 doc/guix.texi:4237 | |
4787 | #, no-wrap | |
4788 | msgid "daemon, cluster setup" | |
4789 | msgstr "" | |
4790 | ||
4791 | #. type: cindex | |
4792 | #: doc/guix.texi:1412 doc/guix.texi:4238 | |
4793 | #, no-wrap | |
4794 | msgid "clusters, daemon setup" | |
4795 | msgstr "" | |
4796 | ||
4797 | #. type: table | |
4798 | #: doc/guix.texi:1415 | |
4799 | msgid "" | |
4800 | "Listen for TCP connections on the network interface corresponding to " | |
4801 | "@code{localhost}, on port 44146." | |
4802 | msgstr "" | |
4803 | ||
4804 | #. type: item | |
4805 | #: doc/guix.texi:1416 | |
4806 | #, no-wrap | |
4807 | msgid "--listen=128.0.0.42:1234" | |
4808 | msgstr "" | |
4809 | ||
4810 | #. type: table | |
4811 | #: doc/guix.texi:1419 | |
4812 | msgid "" | |
4813 | "Listen for TCP connections on the network interface corresponding to " | |
4814 | "@code{128.0.0.42}, on port 1234." | |
4815 | msgstr "" | |
4816 | ||
4817 | #. type: table | |
4818 | #: doc/guix.texi:1426 | |
4819 | msgid "" | |
39764ef8 JL |
4820 | "This option can be repeated multiple times, in which case @command{guix-" |
4821 | "daemon} accepts connections on all the specified endpoints. Users can tell " | |
4822 | "client commands what endpoint to connect to by setting the " | |
b9fe8fd6 JL |
4823 | "@code{GUIX_DAEMON_SOCKET} environment variable (@pxref{The Store, " |
4824 | "@code{GUIX_DAEMON_SOCKET}})." | |
4825 | msgstr "" | |
4826 | ||
4827 | #. type: quotation | |
39764ef8 JL |
4828 | #: doc/guix.texi:1427 doc/guix.texi:2325 doc/guix.texi:2789 doc/guix.texi:2952 |
4829 | #: doc/guix.texi:4205 doc/guix.texi:4273 doc/guix.texi:5788 doc/guix.texi:7224 | |
4830 | #: doc/guix.texi:7851 doc/guix.texi:8069 doc/guix.texi:8280 doc/guix.texi:11491 | |
4831 | #: doc/guix.texi:20375 doc/guix.texi:20573 doc/guix.texi:20660 | |
4832 | #: doc/guix.texi:21504 | |
b9fe8fd6 JL |
4833 | #, no-wrap |
4834 | msgid "Note" | |
4835 | msgstr "" | |
4836 | ||
4837 | #. type: quotation | |
4838 | #: doc/guix.texi:1433 | |
4839 | msgid "" | |
4840 | "The daemon protocol is @emph{unauthenticated and unencrypted}. Using " | |
4841 | "@code{--listen=@var{host}} is suitable on local networks, such as clusters, " | |
4842 | "where only trusted nodes may connect to the build daemon. In other cases " | |
4843 | "where remote access to the daemon is needed, we recommend using Unix-domain " | |
4844 | "sockets along with SSH." | |
4845 | msgstr "" | |
4846 | ||
4847 | #. type: table | |
4848 | #: doc/guix.texi:1438 | |
4849 | msgid "" | |
4850 | "When @code{--listen} is omitted, @command{guix-daemon} listens for " | |
39764ef8 JL |
4851 | "connections on the Unix-domain socket located at @file{@var{localstatedir}/" |
4852 | "guix/daemon-socket/socket}." | |
b9fe8fd6 JL |
4853 | msgstr "" |
4854 | ||
4855 | #. type: Plain text | |
4856 | #: doc/guix.texi:1448 | |
4857 | msgid "" | |
39764ef8 JL |
4858 | "When using Guix on top of GNU/Linux distribution other than GuixSD---a so-" |
4859 | "called @dfn{foreign distro}---a few additional steps are needed to get " | |
b9fe8fd6 JL |
4860 | "everything in place. Here are some of them." |
4861 | msgstr "" | |
4862 | ||
4863 | #. type: anchor{#1} | |
4864 | #: doc/guix.texi:1452 | |
4865 | msgid "locales-and-locpath" | |
4866 | msgstr "" | |
4867 | ||
4868 | #. type: cindex | |
4869 | #: doc/guix.texi:1452 | |
4870 | #, no-wrap | |
4871 | msgid "locales, when not on GuixSD" | |
4872 | msgstr "" | |
4873 | ||
4874 | #. type: vindex | |
4875 | #: doc/guix.texi:1453 doc/guix.texi:9549 | |
4876 | #, no-wrap | |
4877 | msgid "LOCPATH" | |
4878 | msgstr "" | |
4879 | ||
4880 | #. type: vindex | |
4881 | #: doc/guix.texi:1454 | |
4882 | #, no-wrap | |
4883 | msgid "GUIX_LOCPATH" | |
4884 | msgstr "" | |
4885 | ||
4886 | #. type: Plain text | |
4887 | #: doc/guix.texi:1459 | |
4888 | msgid "" | |
4889 | "Packages installed @i{via} Guix will not use the locale data of the host " | |
4890 | "system. Instead, you must first install one of the locale packages " | |
4891 | "available with Guix and then define the @code{GUIX_LOCPATH} environment " | |
4892 | "variable:" | |
4893 | msgstr "" | |
4894 | ||
4895 | #. type: example | |
4896 | #: doc/guix.texi:1463 | |
4897 | #, no-wrap | |
4898 | msgid "" | |
4899 | "$ guix package -i glibc-locales\n" | |
4900 | "$ export GUIX_LOCPATH=$HOME/.guix-profile/lib/locale\n" | |
4901 | msgstr "" | |
4902 | ||
4903 | #. type: Plain text | |
4904 | #: doc/guix.texi:1469 | |
4905 | msgid "" | |
4906 | "Note that the @code{glibc-locales} package contains data for all the locales " | |
4907 | "supported by the GNU@tie{}libc and weighs in at around 110@tie{}MiB. " | |
4908 | "Alternatively, the @code{glibc-utf8-locales} is smaller but limited to a few " | |
4909 | "UTF-8 locales." | |
4910 | msgstr "" | |
4911 | ||
4912 | #. type: Plain text | |
4913 | #: doc/guix.texi:1473 | |
4914 | msgid "" | |
4915 | "The @code{GUIX_LOCPATH} variable plays a role similar to @code{LOCPATH} " | |
4916 | "(@pxref{Locale Names, @code{LOCPATH},, libc, The GNU C Library Reference " | |
4917 | "Manual}). There are two important differences though:" | |
4918 | msgstr "" | |
4919 | ||
4920 | #. type: enumerate | |
4921 | #: doc/guix.texi:1480 | |
4922 | msgid "" | |
4923 | "@code{GUIX_LOCPATH} is honored only by the libc in Guix, and not by the libc " | |
4924 | "provided by foreign distros. Thus, using @code{GUIX_LOCPATH} allows you to " | |
4925 | "make sure the programs of the foreign distro will not end up loading " | |
4926 | "incompatible locale data." | |
4927 | msgstr "" | |
4928 | ||
4929 | #. type: enumerate | |
4930 | #: doc/guix.texi:1487 | |
4931 | msgid "" | |
4932 | "libc suffixes each entry of @code{GUIX_LOCPATH} with @code{/X.Y}, where " | |
4933 | "@code{X.Y} is the libc version---e.g., @code{2.22}. This means that, should " | |
4934 | "your Guix profile contain a mixture of programs linked against different " | |
4935 | "libc version, each libc version will only try to load locale data in the " | |
4936 | "right format." | |
4937 | msgstr "" | |
4938 | ||
4939 | #. type: Plain text | |
4940 | #: doc/guix.texi:1491 | |
4941 | msgid "" | |
4942 | "This is important because the locale data format used by different libc " | |
4943 | "versions may be incompatible." | |
4944 | msgstr "" | |
4945 | ||
4946 | #. type: cindex | |
4947 | #: doc/guix.texi:1494 | |
4948 | #, no-wrap | |
4949 | msgid "name service switch, glibc" | |
4950 | msgstr "" | |
4951 | ||
4952 | #. type: cindex | |
4953 | #: doc/guix.texi:1495 | |
4954 | #, no-wrap | |
4955 | msgid "NSS (name service switch), glibc" | |
4956 | msgstr "" | |
4957 | ||
4958 | #. type: cindex | |
4959 | #: doc/guix.texi:1496 | |
4960 | #, no-wrap | |
4961 | msgid "nscd (name service caching daemon)" | |
4962 | msgstr "" | |
4963 | ||
4964 | #. type: cindex | |
4965 | #: doc/guix.texi:1497 | |
4966 | #, no-wrap | |
4967 | msgid "name service caching daemon (nscd)" | |
4968 | msgstr "" | |
4969 | ||
4970 | #. type: Plain text | |
4971 | #: doc/guix.texi:1504 | |
4972 | msgid "" | |
4973 | "When using Guix on a foreign distro, we @emph{strongly recommend} that the " | |
4974 | "system run the GNU C library's @dfn{name service cache daemon}, " | |
4975 | "@command{nscd}, which should be listening on the @file{/var/run/nscd/socket} " | |
4976 | "socket. Failing to do that, applications installed with Guix may fail to " | |
4977 | "look up host names or user accounts, or may even crash. The next paragraphs " | |
4978 | "explain why." | |
4979 | msgstr "" | |
4980 | ||
4981 | #. type: file{#1} | |
4982 | #: doc/guix.texi:1505 | |
4983 | #, no-wrap | |
4984 | msgid "nsswitch.conf" | |
4985 | msgstr "" | |
4986 | ||
4987 | #. type: Plain text | |
4988 | #: doc/guix.texi:1510 | |
4989 | msgid "" | |
4990 | "The GNU C library implements a @dfn{name service switch} (NSS), which is an " | |
4991 | "extensible mechanism for ``name lookups'' in general: host name resolution, " | |
4992 | "user accounts, and more (@pxref{Name Service Switch,,, libc, The GNU C " | |
4993 | "Library Reference Manual})." | |
4994 | msgstr "" | |
4995 | ||
4996 | #. type: cindex | |
4997 | #: doc/guix.texi:1511 | |
4998 | #, no-wrap | |
4999 | msgid "Network information service (NIS)" | |
5000 | msgstr "" | |
5001 | ||
5002 | #. type: cindex | |
5003 | #: doc/guix.texi:1512 | |
5004 | #, no-wrap | |
5005 | msgid "NIS (Network information service)" | |
5006 | msgstr "" | |
5007 | ||
5008 | #. type: Plain text | |
5009 | #: doc/guix.texi:1521 | |
5010 | msgid "" | |
5011 | "Being extensible, the NSS supports @dfn{plugins}, which provide new name " | |
5012 | "lookup implementations: for example, the @code{nss-mdns} plugin allow " | |
5013 | "resolution of @code{.local} host names, the @code{nis} plugin allows user " | |
5014 | "account lookup using the Network information service (NIS), and so on. " | |
39764ef8 JL |
5015 | "These extra ``lookup services'' are configured system-wide in @file{/etc/" |
5016 | "nsswitch.conf}, and all the programs running on the system honor those " | |
5017 | "settings (@pxref{NSS Configuration File,,, libc, The GNU C Reference " | |
b9fe8fd6 JL |
5018 | "Manual})." |
5019 | msgstr "" | |
5020 | ||
5021 | #. type: Plain text | |
5022 | #: doc/guix.texi:1531 | |
5023 | msgid "" | |
5024 | "When they perform a name lookup---for instance by calling the " | |
5025 | "@code{getaddrinfo} function in C---applications first try to connect to the " | |
5026 | "nscd; on success, nscd performs name lookups on their behalf. If the nscd " | |
5027 | "is not running, then they perform the name lookup by themselves, by loading " | |
5028 | "the name lookup services into their own address space and running it. These " | |
5029 | "name lookup services---the @file{libnss_*.so} files---are @code{dlopen}'d, " | |
5030 | "but they may come from the host system's C library, rather than from the C " | |
5031 | "library the application is linked against (the C library coming from Guix)." | |
5032 | msgstr "" | |
5033 | ||
5034 | #. type: Plain text | |
5035 | #: doc/guix.texi:1536 | |
5036 | msgid "" | |
5037 | "And this is where the problem is: if your application is linked against " | |
5038 | "Guix's C library (say, glibc 2.24) and tries to load NSS plugins from " | |
5039 | "another C library (say, @code{libnss_mdns.so} for glibc 2.22), it will " | |
5040 | "likely crash or have its name lookups fail unexpectedly." | |
5041 | msgstr "" | |
5042 | ||
5043 | #. type: Plain text | |
5044 | #: doc/guix.texi:1541 | |
5045 | msgid "" | |
5046 | "Running @command{nscd} on the system, among other advantages, eliminates " | |
5047 | "this binary incompatibility problem because those @code{libnss_*.so} files " | |
5048 | "are loaded in the @command{nscd} process, not in applications themselves." | |
5049 | msgstr "" | |
5050 | ||
5051 | #. type: subsection | |
5052 | #: doc/guix.texi:1542 | |
5053 | #, no-wrap | |
5054 | msgid "X11 Fonts" | |
5055 | msgstr "" | |
5056 | ||
5057 | #. type: cindex | |
39764ef8 | 5058 | #: doc/guix.texi:1544 doc/guix.texi:22070 |
b9fe8fd6 JL |
5059 | #, no-wrap |
5060 | msgid "fonts" | |
5061 | msgstr "" | |
5062 | ||
5063 | #. type: Plain text | |
5064 | #: doc/guix.texi:1552 | |
5065 | msgid "" | |
5066 | "The majority of graphical applications use Fontconfig to locate and load " | |
5067 | "fonts and perform X11-client-side rendering. The @code{fontconfig} package " | |
5068 | "in Guix looks for fonts in @file{$HOME/.guix-profile} by default. Thus, to " | |
5069 | "allow graphical applications installed with Guix to display fonts, you have " | |
5070 | "to install fonts with Guix as well. Essential font packages include " | |
5071 | "@code{gs-fonts}, @code{font-dejavu}, and @code{font-gnu-freefont-ttf}." | |
5072 | msgstr "" | |
5073 | ||
5074 | #. type: Plain text | |
5075 | #: doc/guix.texi:1559 | |
5076 | msgid "" | |
5077 | "To display text written in Chinese languages, Japanese, or Korean in " | |
39764ef8 JL |
5078 | "graphical applications, consider installing @code{font-adobe-source-han-" |
5079 | "sans} or @code{font-wqy-zenhei}. The former has multiple outputs, one per " | |
5080 | "language family (@pxref{Packages with Multiple Outputs}). For instance, the " | |
5081 | "following command installs fonts for Chinese languages:" | |
b9fe8fd6 JL |
5082 | msgstr "" |
5083 | ||
5084 | #. type: example | |
5085 | #: doc/guix.texi:1562 | |
5086 | #, no-wrap | |
5087 | msgid "guix package -i font-adobe-source-han-sans:cn\n" | |
5088 | msgstr "" | |
5089 | ||
5090 | #. type: code{#1} | |
5091 | #: doc/guix.texi:1564 | |
5092 | #, no-wrap | |
5093 | msgid "xterm" | |
5094 | msgstr "" | |
5095 | ||
5096 | #. type: Plain text | |
5097 | #: doc/guix.texi:1568 | |
5098 | msgid "" | |
5099 | "Older programs such as @command{xterm} do not use Fontconfig and instead " | |
5100 | "rely on server-side font rendering. Such programs require to specify a full " | |
5101 | "name of a font using XLFD (X Logical Font Description), like this:" | |
5102 | msgstr "" | |
5103 | ||
5104 | #. type: example | |
5105 | #: doc/guix.texi:1571 | |
5106 | #, no-wrap | |
5107 | msgid "-*-dejavu sans-medium-r-normal-*-*-100-*-*-*-*-*-1\n" | |
5108 | msgstr "" | |
5109 | ||
5110 | #. type: Plain text | |
5111 | #: doc/guix.texi:1575 | |
5112 | msgid "" | |
5113 | "To be able to use such full names for the TrueType fonts installed in your " | |
5114 | "Guix profile, you need to extend the font path of the X server:" | |
5115 | msgstr "" | |
5116 | ||
5117 | #. type: example | |
5118 | #: doc/guix.texi:1580 | |
5119 | #, no-wrap | |
39764ef8 | 5120 | msgid "xset +fp $(dirname $(readlink -f ~/.guix-profile/share/fonts/truetype/fonts.dir))\n" |
b9fe8fd6 JL |
5121 | msgstr "" |
5122 | ||
5123 | #. type: code{#1} | |
5124 | #: doc/guix.texi:1582 | |
5125 | #, no-wrap | |
5126 | msgid "xlsfonts" | |
5127 | msgstr "" | |
5128 | ||
5129 | #. type: Plain text | |
5130 | #: doc/guix.texi:1585 | |
5131 | msgid "" | |
5132 | "After that, you can run @code{xlsfonts} (from @code{xlsfonts} package) to " | |
5133 | "make sure your TrueType fonts are listed there." | |
5134 | msgstr "" | |
5135 | ||
5136 | #. type: code{#1} | |
5137 | #: doc/guix.texi:1586 | |
5138 | #, no-wrap | |
5139 | msgid "fc-cache" | |
5140 | msgstr "" | |
5141 | ||
5142 | #. type: cindex | |
5143 | #: doc/guix.texi:1587 | |
5144 | #, no-wrap | |
5145 | msgid "font cache" | |
5146 | msgstr "" | |
5147 | ||
5148 | #. type: Plain text | |
5149 | #: doc/guix.texi:1593 | |
5150 | msgid "" | |
5151 | "After installing fonts you may have to refresh the font cache to use them in " | |
5152 | "applications. The same applies when applications installed via Guix do not " | |
39764ef8 JL |
5153 | "seem to find fonts. To force rebuilding of the font cache run @code{fc-" |
5154 | "cache -f}. The @code{fc-cache} command is provided by the @code{fontconfig} " | |
5155 | "package." | |
b9fe8fd6 JL |
5156 | msgstr "" |
5157 | ||
5158 | #. type: code{#1} | |
39764ef8 | 5159 | #: doc/guix.texi:1596 doc/guix.texi:19787 |
b9fe8fd6 JL |
5160 | #, no-wrap |
5161 | msgid "nss-certs" | |
5162 | msgstr "" | |
5163 | ||
5164 | #. type: Plain text | |
5165 | #: doc/guix.texi:1599 | |
5166 | msgid "" | |
5167 | "The @code{nss-certs} package provides X.509 certificates, which allow " | |
5168 | "programs to authenticate Web servers accessed over HTTPS." | |
5169 | msgstr "" | |
5170 | ||
5171 | #. type: Plain text | |
5172 | #: doc/guix.texi:1604 | |
5173 | msgid "" | |
5174 | "When using Guix on a foreign distro, you can install this package and define " | |
5175 | "the relevant environment variables so that packages know where to look for " | |
5176 | "certificates. @xref{X.509 Certificates}, for detailed information." | |
5177 | msgstr "" | |
5178 | ||
5179 | #. type: subsection | |
5180 | #: doc/guix.texi:1605 | |
5181 | #, no-wrap | |
5182 | msgid "Emacs Packages" | |
5183 | msgstr "" | |
5184 | ||
5185 | #. type: code{#1} | |
5186 | #: doc/guix.texi:1607 | |
5187 | #, no-wrap | |
5188 | msgid "emacs" | |
5189 | msgstr "" | |
5190 | ||
5191 | #. type: Plain text | |
5192 | #: doc/guix.texi:1618 | |
5193 | msgid "" | |
5194 | "When you install Emacs packages with Guix, the elisp files may be placed " | |
39764ef8 JL |
5195 | "either in @file{$HOME/.guix-profile/share/emacs/site-lisp/} or in sub-" |
5196 | "directories of @file{$HOME/.guix-profile/share/emacs/site-lisp/guix.d/}. " | |
5197 | "The latter directory exists because potentially there may exist thousands of " | |
5198 | "Emacs packages and storing all their files in a single directory may not be " | |
b9fe8fd6 JL |
5199 | "reliable (because of name conflicts). So we think using a separate " |
5200 | "directory for each package is a good idea. It is very similar to how the " | |
5201 | "Emacs package system organizes the file structure (@pxref{Package Files,,, " | |
5202 | "emacs, The GNU Emacs Manual})." | |
5203 | msgstr "" | |
5204 | ||
5205 | #. type: Plain text | |
5206 | #: doc/guix.texi:1624 | |
5207 | msgid "" | |
5208 | "By default, Emacs (installed with Guix) ``knows'' where these packages are " | |
5209 | "placed, so you do not need to perform any configuration. If, for some " | |
5210 | "reason, you want to avoid auto-loading Emacs packages installed with Guix, " | |
5211 | "you can do so by running Emacs with @code{--no-site-file} option " | |
5212 | "(@pxref{Init File,,, emacs, The GNU Emacs Manual})." | |
5213 | msgstr "" | |
5214 | ||
5215 | #. type: subsection | |
5216 | #: doc/guix.texi:1625 | |
5217 | #, no-wrap | |
5218 | msgid "The GCC toolchain" | |
5219 | msgstr "" | |
5220 | ||
5221 | #. type: cindex | |
5222 | #: doc/guix.texi:1627 | |
5223 | #, no-wrap | |
5224 | msgid "GCC" | |
5225 | msgstr "" | |
5226 | ||
5227 | #. type: cindex | |
5228 | #: doc/guix.texi:1628 | |
5229 | #, no-wrap | |
5230 | msgid "ld-wrapper" | |
5231 | msgstr "" | |
5232 | ||
5233 | #. type: Plain text | |
5234 | #: doc/guix.texi:1637 | |
5235 | msgid "" | |
5236 | "Guix offers individual compiler packages such as @code{gcc} but if you are " | |
5237 | "in need of a complete toolchain for compiling and linking source code what " | |
5238 | "you really want is the @code{gcc-toolchain} package. This package provides " | |
5239 | "a complete GCC toolchain for C/C++ development, including GCC itself, the " | |
5240 | "GNU C Library (headers and binaries, plus debugging symbols in the " | |
5241 | "@code{debug} output), Binutils, and a linker wrapper." | |
5242 | msgstr "" | |
5243 | ||
5244 | #. type: cindex | |
5245 | #: doc/guix.texi:1638 | |
5246 | #, no-wrap | |
5247 | msgid "attempt to use impure library, error message" | |
5248 | msgstr "" | |
5249 | ||
5250 | #. type: Plain text | |
5251 | #: doc/guix.texi:1648 | |
5252 | msgid "" | |
5253 | "The wrapper's purpose is to inspect the @code{-L} and @code{-l} switches " | |
5254 | "passed to the linker, add corresponding @code{-rpath} arguments, and invoke " | |
5255 | "the actual linker with this new set of arguments. By default, the linker " | |
5256 | "wrapper refuses to link to libraries outside the store to ensure " | |
5257 | "``purity''. This can be annoying when using the toolchain to link with " | |
5258 | "local libraries. To allow references to libraries outside the store you " | |
5259 | "need to define the environment variable " | |
5260 | "@code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES}." | |
5261 | msgstr "" | |
5262 | ||
5263 | #. type: cindex | |
5264 | #: doc/guix.texi:1655 | |
5265 | #, no-wrap | |
5266 | msgid "packages" | |
5267 | msgstr "" | |
5268 | ||
5269 | #. type: Plain text | |
5270 | #: doc/guix.texi:1660 | |
5271 | msgid "" | |
5272 | "The purpose of GNU Guix is to allow users to easily install, upgrade, and " | |
5273 | "remove software packages, without having to know about their build " | |
5274 | "procedures or dependencies. Guix also goes beyond this obvious set of " | |
5275 | "features." | |
5276 | msgstr "" | |
5277 | ||
5278 | #. type: Plain text | |
5279 | #: doc/guix.texi:1668 | |
5280 | msgid "" | |
5281 | "This chapter describes the main features of Guix, as well as the package " | |
5282 | "management tools it provides. Along with the command-line interface " | |
5283 | "described below (@pxref{Invoking guix package, @code{guix package}}), you " | |
39764ef8 JL |
5284 | "may also use the Emacs-Guix interface (@pxref{Top,,, emacs-guix, The Emacs-" |
5285 | "Guix Reference Manual}), after installing @code{emacs-guix} package (run " | |
5286 | "@kbd{M-x guix-help} command to start with it):" | |
b9fe8fd6 JL |
5287 | msgstr "" |
5288 | ||
5289 | #. type: example | |
5290 | #: doc/guix.texi:1671 | |
5291 | #, no-wrap | |
5292 | msgid "guix package -i emacs-guix\n" | |
5293 | msgstr "" | |
5294 | ||
5295 | #. type: Plain text | |
5296 | #: doc/guix.texi:1690 | |
5297 | msgid "" | |
5298 | "When using Guix, each package ends up in the @dfn{package store}, in its own " | |
5299 | "directory---something that resembles @file{/gnu/store/xxx-package-1.2}, " | |
5300 | "where @code{xxx} is a base32 string." | |
5301 | msgstr "" | |
5302 | ||
5303 | #. type: Plain text | |
5304 | #: doc/guix.texi:1695 | |
5305 | msgid "" | |
5306 | "Instead of referring to these directories, users have their own " | |
5307 | "@dfn{profile}, which points to the packages that they actually want to use. " | |
39764ef8 JL |
5308 | "These profiles are stored within each user's home directory, at @code{$HOME/." |
5309 | "guix-profile}." | |
b9fe8fd6 JL |
5310 | msgstr "" |
5311 | ||
5312 | #. type: Plain text | |
5313 | #: doc/guix.texi:1703 | |
5314 | msgid "" | |
39764ef8 JL |
5315 | "For example, @code{alice} installs GCC 4.7.2. As a result, @file{/home/" |
5316 | "alice/.guix-profile/bin/gcc} points to @file{/gnu/store/@dots{}-gcc-4.7.2/" | |
5317 | "bin/gcc}. Now, on the same machine, @code{bob} had already installed GCC " | |
5318 | "4.8.0. The profile of @code{bob} simply continues to point to @file{/gnu/" | |
5319 | "store/@dots{}-gcc-4.8.0/bin/gcc}---i.e., both versions of GCC coexist on the " | |
5320 | "same system without any interference." | |
b9fe8fd6 JL |
5321 | msgstr "" |
5322 | ||
5323 | #. type: Plain text | |
5324 | #: doc/guix.texi:1707 | |
5325 | msgid "" | |
5326 | "The @command{guix package} command is the central tool to manage packages " | |
5327 | "(@pxref{Invoking guix package}). It operates on the per-user profiles, and " | |
5328 | "can be used @emph{with normal user privileges}." | |
5329 | msgstr "" | |
5330 | ||
5331 | #. type: cindex | |
5332 | #: doc/guix.texi:1708 doc/guix.texi:1777 | |
5333 | #, no-wrap | |
5334 | msgid "transactions" | |
5335 | msgstr "" | |
5336 | ||
5337 | #. type: Plain text | |
5338 | #: doc/guix.texi:1715 | |
5339 | msgid "" | |
5340 | "The command provides the obvious install, remove, and upgrade operations. " | |
5341 | "Each invocation is actually a @emph{transaction}: either the specified " | |
5342 | "operation succeeds, or nothing happens. Thus, if the @command{guix package} " | |
5343 | "process is terminated during the transaction, or if a power outage occurs " | |
5344 | "during the transaction, then the user's profile remains in its previous " | |
5345 | "state, and remains usable." | |
5346 | msgstr "" | |
5347 | ||
5348 | #. type: Plain text | |
5349 | #: doc/guix.texi:1723 | |
5350 | msgid "" | |
5351 | "In addition, any package transaction may be @emph{rolled back}. So, if, for " | |
5352 | "example, an upgrade installs a new version of a package that turns out to " | |
5353 | "have a serious bug, users may roll back to the previous instance of their " | |
5354 | "profile, which was known to work well. Similarly, the global system " | |
5355 | "configuration on GuixSD is subject to transactional upgrades and roll-back " | |
5356 | "(@pxref{Using the Configuration System})." | |
5357 | msgstr "" | |
5358 | ||
5359 | #. type: Plain text | |
5360 | #: doc/guix.texi:1730 | |
5361 | msgid "" | |
5362 | "All packages in the package store may be @emph{garbage-collected}. Guix can " | |
5363 | "determine which packages are still referenced by user profiles, and remove " | |
5364 | "those that are provably no longer referenced (@pxref{Invoking guix gc}). " | |
5365 | "Users may also explicitly remove old generations of their profile so that " | |
5366 | "the packages they refer to can be collected." | |
5367 | msgstr "" | |
5368 | ||
5369 | #. type: cindex | |
5370 | #: doc/guix.texi:1731 | |
5371 | #, no-wrap | |
5372 | msgid "reproducibility" | |
5373 | msgstr "" | |
5374 | ||
5375 | #. type: Plain text | |
5376 | #: doc/guix.texi:1743 | |
5377 | msgid "" | |
5378 | "Finally, Guix takes a @dfn{purely functional} approach to package " | |
5379 | "management, as described in the introduction (@pxref{Introduction}). Each " | |
5380 | "@file{/gnu/store} package directory name contains a hash of all the inputs " | |
5381 | "that were used to build that package---compiler, libraries, build scripts, " | |
5382 | "etc. This direct correspondence allows users to make sure a given package " | |
5383 | "installation matches the current state of their distribution. It also helps " | |
5384 | "maximize @dfn{build reproducibility}: thanks to the isolated build " | |
5385 | "environments that are used, a given build is likely to yield bit-identical " | |
5386 | "files when performed on different machines (@pxref{Invoking guix-daemon, " | |
5387 | "container})." | |
5388 | msgstr "" | |
5389 | ||
5390 | #. type: Plain text | |
5391 | #: doc/guix.texi:1754 | |
5392 | msgid "" | |
5393 | "This foundation allows Guix to support @dfn{transparent binary/source " | |
5394 | "deployment}. When a pre-built binary for a @file{/gnu/store} item is " | |
5395 | "available from an external source---a @dfn{substitute}, Guix just downloads " | |
5396 | "it and unpacks it; otherwise, it builds the package from source, locally " | |
5397 | "(@pxref{Substitutes}). Because build results are usually bit-for-bit " | |
5398 | "reproducible, users do not have to trust servers that provide substitutes: " | |
5399 | "they can force a local build and @emph{challenge} providers (@pxref{Invoking " | |
5400 | "guix challenge})." | |
5401 | msgstr "" | |
5402 | ||
5403 | #. type: Plain text | |
5404 | #: doc/guix.texi:1760 | |
5405 | msgid "" | |
5406 | "Control over the build environment is a feature that is also useful for " | |
5407 | "developers. The @command{guix environment} command allows developers of a " | |
5408 | "package to quickly set up the right development environment for their " | |
5409 | "package, without having to manually install the dependencies of the package " | |
5410 | "into their profile (@pxref{Invoking guix environment})." | |
5411 | msgstr "" | |
5412 | ||
5413 | #. type: section | |
5414 | #: doc/guix.texi:1762 | |
5415 | #, no-wrap | |
5416 | msgid "Invoking @command{guix package}" | |
5417 | msgstr "" | |
5418 | ||
5419 | #. type: cindex | |
5420 | #: doc/guix.texi:1764 | |
5421 | #, no-wrap | |
5422 | msgid "installing packages" | |
5423 | msgstr "" | |
5424 | ||
5425 | #. type: cindex | |
5426 | #: doc/guix.texi:1765 | |
5427 | #, no-wrap | |
5428 | msgid "removing packages" | |
5429 | msgstr "" | |
5430 | ||
5431 | #. type: cindex | |
5432 | #: doc/guix.texi:1766 | |
5433 | #, no-wrap | |
5434 | msgid "package installation" | |
5435 | msgstr "" | |
5436 | ||
5437 | #. type: cindex | |
5438 | #: doc/guix.texi:1767 | |
5439 | #, no-wrap | |
5440 | msgid "package removal" | |
5441 | msgstr "" | |
5442 | ||
5443 | #. type: Plain text | |
5444 | #: doc/guix.texi:1773 | |
5445 | msgid "" | |
5446 | "The @command{guix package} command is the tool that allows users to install, " | |
5447 | "upgrade, and remove packages, as well as rolling back to previous " | |
5448 | "configurations. It operates only on the user's own profile, and works with " | |
5449 | "normal user privileges (@pxref{Features}). Its syntax is:" | |
5450 | msgstr "" | |
5451 | ||
5452 | #. type: example | |
5453 | #: doc/guix.texi:1776 | |
5454 | #, no-wrap | |
5455 | msgid "guix package @var{options}\n" | |
5456 | msgstr "" | |
5457 | ||
5458 | #. type: Plain text | |
5459 | #: doc/guix.texi:1782 | |
5460 | msgid "" | |
5461 | "Primarily, @var{options} specifies the operations to be performed during the " | |
5462 | "transaction. Upon completion, a new profile is created, but previous " | |
5463 | "@dfn{generations} of the profile remain available, should the user want to " | |
5464 | "roll back." | |
5465 | msgstr "" | |
5466 | ||
5467 | #. type: Plain text | |
5468 | #: doc/guix.texi:1785 | |
5469 | msgid "" | |
39764ef8 JL |
5470 | "For example, to remove @code{lua} and install @code{guile} and @code{guile-" |
5471 | "cairo} in a single transaction:" | |
b9fe8fd6 JL |
5472 | msgstr "" |
5473 | ||
5474 | #. type: example | |
5475 | #: doc/guix.texi:1788 | |
5476 | #, no-wrap | |
5477 | msgid "guix package -r lua -i guile guile-cairo\n" | |
5478 | msgstr "" | |
5479 | ||
5480 | #. type: Plain text | |
5481 | #: doc/guix.texi:1794 | |
5482 | msgid "" | |
5483 | "@command{guix package} also supports a @dfn{declarative approach} whereby " | |
5484 | "the user specifies the exact set of packages to be available and passes it " | |
39764ef8 JL |
5485 | "@i{via} the @option{--manifest} option (@pxref{profile-manifest, @option{--" |
5486 | "manifest}})." | |
b9fe8fd6 JL |
5487 | msgstr "" |
5488 | ||
5489 | #. type: cindex | |
5490 | #: doc/guix.texi:1795 | |
5491 | #, no-wrap | |
5492 | msgid "profile" | |
5493 | msgstr "" | |
5494 | ||
5495 | #. type: Plain text | |
5496 | #: doc/guix.texi:1801 | |
5497 | msgid "" | |
5498 | "For each user, a symlink to the user's default profile is automatically " | |
5499 | "created in @file{$HOME/.guix-profile}. This symlink always points to the " | |
5500 | "current generation of the user's default profile. Thus, users can add " | |
5501 | "@file{$HOME/.guix-profile/bin} to their @code{PATH} environment variable, " | |
5502 | "and so on." | |
5503 | msgstr "" | |
5504 | ||
5505 | #. type: cindex | |
5506 | #: doc/guix.texi:1801 doc/guix.texi:1998 | |
5507 | #, no-wrap | |
5508 | msgid "search paths" | |
5509 | msgstr "" | |
5510 | ||
5511 | #. type: Plain text | |
5512 | #: doc/guix.texi:1806 | |
5513 | msgid "" | |
5514 | "If you are not using the Guix System Distribution, consider adding the " | |
5515 | "following lines to your @file{~/.bash_profile} (@pxref{Bash Startup Files,,, " | |
5516 | "bash, The GNU Bash Reference Manual}) so that newly-spawned shells get all " | |
5517 | "the right environment variable definitions:" | |
5518 | msgstr "" | |
5519 | ||
5520 | #. type: example | |
5521 | #: doc/guix.texi:1810 | |
5522 | #, no-wrap | |
5523 | msgid "" | |
5524 | "GUIX_PROFILE=\"$HOME/.guix-profile\" ; \\\n" | |
5525 | "source \"$HOME/.guix-profile/etc/profile\"\n" | |
5526 | msgstr "" | |
5527 | ||
5528 | #. type: Plain text | |
5529 | #: doc/guix.texi:1821 | |
5530 | msgid "" | |
5531 | "In a multi-user setup, user profiles are stored in a place registered as a " | |
5532 | "@dfn{garbage-collector root}, which @file{$HOME/.guix-profile} points to " | |
5533 | "(@pxref{Invoking guix gc}). That directory is normally " | |
5534 | "@code{@var{localstatedir}/guix/profiles/per-user/@var{user}}, where " | |
39764ef8 JL |
5535 | "@var{localstatedir} is the value passed to @code{configure} as @code{--" |
5536 | "localstatedir}, and @var{user} is the user name. The @file{per-user} " | |
5537 | "directory is created when @command{guix-daemon} is started, and the " | |
5538 | "@var{user} sub-directory is created by @command{guix package}." | |
b9fe8fd6 JL |
5539 | msgstr "" |
5540 | ||
5541 | #. type: Plain text | |
5542 | #: doc/guix.texi:1823 | |
5543 | msgid "The @var{options} can be among the following:" | |
5544 | msgstr "" | |
5545 | ||
5546 | #. type: item | |
5547 | #: doc/guix.texi:1826 | |
5548 | #, no-wrap | |
5549 | msgid "--install=@var{package} @dots{}" | |
5550 | msgstr "" | |
5551 | ||
5552 | #. type: itemx | |
5553 | #: doc/guix.texi:1827 | |
5554 | #, no-wrap | |
5555 | msgid "-i @var{package} @dots{}" | |
5556 | msgstr "" | |
5557 | ||
5558 | #. type: table | |
5559 | #: doc/guix.texi:1829 | |
5560 | msgid "Install the specified @var{package}s." | |
5561 | msgstr "" | |
5562 | ||
5563 | #. type: table | |
5564 | #: doc/guix.texi:1834 | |
5565 | msgid "" | |
5566 | "Each @var{package} may specify either a simple package name, such as " | |
5567 | "@code{guile}, or a package name followed by an at-sign and version number, " | |
5568 | "such as @code{guile@@1.8.8} or simply @code{guile@@1.8} (in the latter case, " | |
5569 | "the newest version prefixed by @code{1.8} is selected.)" | |
5570 | msgstr "" | |
5571 | ||
5572 | #. type: table | |
5573 | #: doc/guix.texi:1842 | |
5574 | msgid "" | |
5575 | "If no version number is specified, the newest available version will be " | |
5576 | "selected. In addition, @var{package} may contain a colon, followed by the " | |
5577 | "name of one of the outputs of the package, as in @code{gcc:doc} or " | |
5578 | "@code{binutils@@2.22:lib} (@pxref{Packages with Multiple Outputs}). " | |
5579 | "Packages with a corresponding name (and optionally version) are searched for " | |
5580 | "among the GNU distribution modules (@pxref{Package Modules})." | |
5581 | msgstr "" | |
5582 | ||
5583 | #. type: cindex | |
5584 | #: doc/guix.texi:1843 | |
5585 | #, no-wrap | |
5586 | msgid "propagated inputs" | |
5587 | msgstr "" | |
5588 | ||
5589 | #. type: table | |
5590 | #: doc/guix.texi:1849 | |
5591 | msgid "" | |
5592 | "Sometimes packages have @dfn{propagated inputs}: these are dependencies that " | |
39764ef8 JL |
5593 | "automatically get installed along with the required package (@pxref{package-" |
5594 | "propagated-inputs, @code{propagated-inputs} in @code{package} objects}, for " | |
5595 | "information about propagated inputs in package definitions)." | |
b9fe8fd6 JL |
5596 | msgstr "" |
5597 | ||
5598 | #. type: anchor{#1} | |
5599 | #: doc/guix.texi:1856 | |
5600 | msgid "package-cmd-propagated-inputs" | |
5601 | msgstr "" | |
5602 | ||
5603 | #. type: table | |
5604 | #: doc/guix.texi:1856 | |
5605 | msgid "" | |
5606 | "An example is the GNU MPC library: its C header files refer to those of the " | |
5607 | "GNU MPFR library, which in turn refer to those of the GMP library. Thus, " | |
5608 | "when installing MPC, the MPFR and GMP libraries also get installed in the " | |
5609 | "profile; removing MPC also removes MPFR and GMP---unless they had also been " | |
5610 | "explicitly installed by the user." | |
5611 | msgstr "" | |
5612 | ||
5613 | #. type: table | |
5614 | #: doc/guix.texi:1861 | |
5615 | msgid "" | |
5616 | "Besides, packages sometimes rely on the definition of environment variables " | |
5617 | "for their search paths (see explanation of @code{--search-paths} below). " | |
5618 | "Any missing or possibly incorrect environment variable definitions are " | |
5619 | "reported here." | |
5620 | msgstr "" | |
5621 | ||
5622 | #. type: item | |
5623 | #: doc/guix.texi:1862 | |
5624 | #, no-wrap | |
5625 | msgid "--install-from-expression=@var{exp}" | |
5626 | msgstr "" | |
5627 | ||
5628 | #. type: itemx | |
5629 | #: doc/guix.texi:1863 | |
5630 | #, no-wrap | |
5631 | msgid "-e @var{exp}" | |
5632 | msgstr "" | |
5633 | ||
5634 | #. type: table | |
5635 | #: doc/guix.texi:1865 | |
5636 | msgid "Install the package @var{exp} evaluates to." | |
5637 | msgstr "" | |
5638 | ||
5639 | #. type: table | |
5640 | #: doc/guix.texi:1870 | |
5641 | msgid "" | |
5642 | "@var{exp} must be a Scheme expression that evaluates to a @code{<package>} " | |
5643 | "object. This option is notably useful to disambiguate between same-named " | |
5644 | "variants of a package, with expressions such as @code{(@@ (gnu packages " | |
5645 | "base) guile-final)}." | |
5646 | msgstr "" | |
5647 | ||
5648 | #. type: table | |
5649 | #: doc/guix.texi:1874 | |
5650 | msgid "" | |
5651 | "Note that this option installs the first output of the specified package, " | |
39764ef8 JL |
5652 | "which may be insufficient when needing a specific output of a multiple-" |
5653 | "output package." | |
b9fe8fd6 JL |
5654 | msgstr "" |
5655 | ||
5656 | #. type: item | |
5657 | #: doc/guix.texi:1875 | |
5658 | #, no-wrap | |
5659 | msgid "--install-from-file=@var{file}" | |
5660 | msgstr "" | |
5661 | ||
5662 | #. type: itemx | |
5663 | #: doc/guix.texi:1876 doc/guix.texi:5699 | |
5664 | #, no-wrap | |
5665 | msgid "-f @var{file}" | |
5666 | msgstr "" | |
5667 | ||
5668 | #. type: table | |
5669 | #: doc/guix.texi:1878 | |
5670 | msgid "Install the package that the code within @var{file} evaluates to." | |
5671 | msgstr "" | |
5672 | ||
5673 | #. type: table | |
5674 | #: doc/guix.texi:1881 doc/guix.texi:7283 | |
5675 | msgid "" | |
5676 | "As an example, @var{file} might contain a definition like this " | |
5677 | "(@pxref{Defining Packages}):" | |
5678 | msgstr "" | |
5679 | ||
5680 | #. type: example | |
5681 | #: doc/guix.texi:1884 doc/guix.texi:5709 | |
5682 | #, no-wrap | |
5683 | msgid "@verbatiminclude package-hello.scm\n" | |
5684 | msgstr "" | |
5685 | ||
5686 | #. type: table | |
5687 | #: doc/guix.texi:1890 | |
5688 | msgid "" | |
5689 | "Developers may find it useful to include such a @file{guix.scm} file in the " | |
5690 | "root of their project source tree that can be used to test development " | |
5691 | "snapshots and create reproducible development environments (@pxref{Invoking " | |
5692 | "guix environment})." | |
5693 | msgstr "" | |
5694 | ||
5695 | #. type: item | |
5696 | #: doc/guix.texi:1891 | |
5697 | #, no-wrap | |
5698 | msgid "--remove=@var{package} @dots{}" | |
5699 | msgstr "" | |
5700 | ||
5701 | #. type: itemx | |
5702 | #: doc/guix.texi:1892 | |
5703 | #, no-wrap | |
5704 | msgid "-r @var{package} @dots{}" | |
5705 | msgstr "" | |
5706 | ||
5707 | #. type: table | |
5708 | #: doc/guix.texi:1894 | |
5709 | msgid "Remove the specified @var{package}s." | |
5710 | msgstr "" | |
5711 | ||
5712 | #. type: table | |
5713 | #: doc/guix.texi:1899 | |
5714 | msgid "" | |
39764ef8 JL |
5715 | "As for @code{--install}, each @var{package} may specify a version number and/" |
5716 | "or output name in addition to the package name. For instance, @code{-r " | |
b9fe8fd6 JL |
5717 | "glibc:debug} would remove the @code{debug} output of @code{glibc}." |
5718 | msgstr "" | |
5719 | ||
5720 | #. type: item | |
5721 | #: doc/guix.texi:1900 | |
5722 | #, no-wrap | |
5723 | msgid "--upgrade[=@var{regexp} @dots{}]" | |
5724 | msgstr "" | |
5725 | ||
5726 | #. type: itemx | |
5727 | #: doc/guix.texi:1901 | |
5728 | #, no-wrap | |
5729 | msgid "-u [@var{regexp} @dots{}]" | |
5730 | msgstr "" | |
5731 | ||
5732 | #. type: cindex | |
5733 | #: doc/guix.texi:1902 | |
5734 | #, no-wrap | |
5735 | msgid "upgrading packages" | |
5736 | msgstr "" | |
5737 | ||
5738 | #. type: table | |
5739 | #: doc/guix.texi:1906 | |
5740 | msgid "" | |
5741 | "Upgrade all the installed packages. If one or more @var{regexp}s are " | |
5742 | "specified, upgrade only installed packages whose name matches a " | |
5743 | "@var{regexp}. Also see the @code{--do-not-upgrade} option below." | |
5744 | msgstr "" | |
5745 | ||
5746 | #. type: table | |
5747 | #: doc/guix.texi:1911 | |
5748 | msgid "" | |
5749 | "Note that this upgrades package to the latest version of packages found in " | |
5750 | "the distribution currently installed. To update your distribution, you " | |
5751 | "should regularly run @command{guix pull} (@pxref{Invoking guix pull})." | |
5752 | msgstr "" | |
5753 | ||
5754 | #. type: item | |
5755 | #: doc/guix.texi:1912 | |
5756 | #, no-wrap | |
5757 | msgid "--do-not-upgrade[=@var{regexp} @dots{}]" | |
5758 | msgstr "" | |
5759 | ||
5760 | #. type: table | |
5761 | #: doc/guix.texi:1917 | |
5762 | msgid "" | |
5763 | "When used together with the @code{--upgrade} option, do @emph{not} upgrade " | |
5764 | "any packages whose name matches a @var{regexp}. For example, to upgrade all " | |
5765 | "packages in the current profile except those containing the substring " | |
5766 | "``emacs'':" | |
5767 | msgstr "" | |
5768 | ||
5769 | #. type: example | |
5770 | #: doc/guix.texi:1920 | |
5771 | #, no-wrap | |
5772 | msgid "$ guix package --upgrade . --do-not-upgrade emacs\n" | |
5773 | msgstr "" | |
5774 | ||
5775 | #. type: anchor{#1} | |
5776 | #: doc/guix.texi:1922 | |
5777 | #, no-wrap | |
5778 | msgid "profile-manifest" | |
5779 | msgstr "" | |
5780 | ||
5781 | #. type: item | |
39764ef8 JL |
5782 | #: doc/guix.texi:1922 doc/guix.texi:2877 doc/guix.texi:6577 doc/guix.texi:7288 |
5783 | #: doc/guix.texi:7972 | |
b9fe8fd6 JL |
5784 | #, no-wrap |
5785 | msgid "--manifest=@var{file}" | |
5786 | msgstr "" | |
5787 | ||
5788 | #. type: itemx | |
5789 | #: doc/guix.texi:1923 doc/guix.texi:2878 doc/guix.texi:6578 doc/guix.texi:7289 | |
5790 | #, no-wrap | |
5791 | msgid "-m @var{file}" | |
5792 | msgstr "" | |
5793 | ||
5794 | #. type: cindex | |
5795 | #: doc/guix.texi:1924 | |
5796 | #, no-wrap | |
5797 | msgid "profile declaration" | |
5798 | msgstr "" | |
5799 | ||
5800 | #. type: cindex | |
5801 | #: doc/guix.texi:1925 | |
5802 | #, no-wrap | |
5803 | msgid "profile manifest" | |
5804 | msgstr "" | |
5805 | ||
5806 | #. type: table | |
5807 | #: doc/guix.texi:1928 | |
5808 | msgid "" | |
5809 | "Create a new generation of the profile from the manifest object returned by " | |
5810 | "the Scheme code in @var{file}." | |
5811 | msgstr "" | |
5812 | ||
5813 | #. type: table | |
5814 | #: doc/guix.texi:1934 | |
5815 | msgid "" | |
5816 | "This allows you to @emph{declare} the profile's contents rather than " | |
5817 | "constructing it through a sequence of @code{--install} and similar " | |
5818 | "commands. The advantage is that @var{file} can be put under version " | |
5819 | "control, copied to different machines to reproduce the same profile, and so " | |
5820 | "on." | |
5821 | msgstr "" | |
5822 | ||
5823 | #. type: table | |
5824 | #: doc/guix.texi:1938 | |
5825 | msgid "" | |
5826 | "@var{file} must return a @dfn{manifest} object, which is roughly a list of " | |
5827 | "packages:" | |
5828 | msgstr "" | |
5829 | ||
5830 | #. type: findex | |
5831 | #: doc/guix.texi:1939 | |
5832 | #, no-wrap | |
5833 | msgid "packages->manifest" | |
5834 | msgstr "" | |
5835 | ||
5836 | #. type: example | |
5837 | #: doc/guix.texi:1942 | |
5838 | #, no-wrap | |
5839 | msgid "" | |
5840 | "(use-package-modules guile emacs)\n" | |
5841 | "\n" | |
5842 | msgstr "" | |
5843 | ||
5844 | #. type: example | |
5845 | #: doc/guix.texi:1948 | |
5846 | #, no-wrap | |
5847 | msgid "" | |
5848 | "(packages->manifest\n" | |
5849 | " (list emacs\n" | |
5850 | " guile-2.0\n" | |
5851 | " ;; Use a specific package output.\n" | |
5852 | " (list guile-2.0 \"debug\")))\n" | |
5853 | msgstr "" | |
5854 | ||
5855 | #. type: findex | |
5856 | #: doc/guix.texi:1950 | |
5857 | #, no-wrap | |
5858 | msgid "specifications->manifest" | |
5859 | msgstr "" | |
5860 | ||
5861 | #. type: table | |
5862 | #: doc/guix.texi:1957 | |
5863 | msgid "" | |
5864 | "In this example we have to know which modules define the @code{emacs} and " | |
5865 | "@code{guile-2.0} variables to provide the right @code{use-package-modules} " | |
5866 | "line, which can be cumbersome. We can instead provide regular package " | |
5867 | "specifications and let @code{specifications->manifest} look up the " | |
5868 | "corresponding package objects, like this:" | |
5869 | msgstr "" | |
5870 | ||
5871 | #. type: example | |
5872 | #: doc/guix.texi:1961 | |
5873 | #, no-wrap | |
5874 | msgid "" | |
5875 | "(specifications->manifest\n" | |
5876 | " '(\"emacs\" \"guile@@2.2\" \"guile@@2.2:debug\"))\n" | |
5877 | msgstr "" | |
5878 | ||
5879 | #. type: item | |
5880 | #: doc/guix.texi:1963 | |
5881 | #, no-wrap | |
5882 | msgid "--roll-back" | |
5883 | msgstr "" | |
5884 | ||
5885 | #. type: cindex | |
39764ef8 | 5886 | #: doc/guix.texi:1964 doc/guix.texi:20427 |
b9fe8fd6 JL |
5887 | #, no-wrap |
5888 | msgid "rolling back" | |
5889 | msgstr "" | |
5890 | ||
5891 | #. type: cindex | |
5892 | #: doc/guix.texi:1965 | |
5893 | #, no-wrap | |
5894 | msgid "undoing transactions" | |
5895 | msgstr "" | |
5896 | ||
5897 | #. type: cindex | |
5898 | #: doc/guix.texi:1966 | |
5899 | #, no-wrap | |
5900 | msgid "transactions, undoing" | |
5901 | msgstr "" | |
5902 | ||
5903 | #. type: table | |
5904 | #: doc/guix.texi:1969 | |
5905 | msgid "" | |
5906 | "Roll back to the previous @dfn{generation} of the profile---i.e., undo the " | |
5907 | "last transaction." | |
5908 | msgstr "" | |
5909 | ||
5910 | #. type: table | |
5911 | #: doc/guix.texi:1972 | |
5912 | msgid "" | |
5913 | "When combined with options such as @code{--install}, roll back occurs before " | |
5914 | "any other actions." | |
5915 | msgstr "" | |
5916 | ||
5917 | #. type: table | |
5918 | #: doc/guix.texi:1976 | |
5919 | msgid "" | |
5920 | "When rolling back from the first generation that actually contains installed " | |
5921 | "packages, the profile is made to point to the @dfn{zeroth generation}, which " | |
5922 | "contains no files apart from its own metadata." | |
5923 | msgstr "" | |
5924 | ||
5925 | #. type: table | |
5926 | #: doc/guix.texi:1980 | |
5927 | msgid "" | |
5928 | "After having rolled back, installing, removing, or upgrading packages " | |
5929 | "overwrites previous future generations. Thus, the history of the " | |
5930 | "generations in a profile is always linear." | |
5931 | msgstr "" | |
5932 | ||
5933 | #. type: item | |
5934 | #: doc/guix.texi:1981 | |
5935 | #, no-wrap | |
5936 | msgid "--switch-generation=@var{pattern}" | |
5937 | msgstr "" | |
5938 | ||
5939 | #. type: itemx | |
5940 | #: doc/guix.texi:1982 | |
5941 | #, no-wrap | |
5942 | msgid "-S @var{pattern}" | |
5943 | msgstr "" | |
5944 | ||
5945 | #. type: cindex | |
39764ef8 | 5946 | #: doc/guix.texi:1983 doc/guix.texi:2181 doc/guix.texi:20385 |
b9fe8fd6 JL |
5947 | #, no-wrap |
5948 | msgid "generations" | |
5949 | msgstr "" | |
5950 | ||
5951 | #. type: table | |
5952 | #: doc/guix.texi:1985 | |
5953 | msgid "Switch to a particular generation defined by @var{pattern}." | |
5954 | msgstr "" | |
5955 | ||
5956 | #. type: table | |
5957 | #: doc/guix.texi:1991 | |
5958 | msgid "" | |
39764ef8 JL |
5959 | "@var{pattern} may be either a generation number or a number prefixed with ``" |
5960 | "+'' or ``-''. The latter means: move forward/backward by a specified number " | |
5961 | "of generations. For example, if you want to return to the latest generation " | |
5962 | "after @code{--roll-back}, use @code{--switch-generation=+1}." | |
b9fe8fd6 JL |
5963 | msgstr "" |
5964 | ||
5965 | #. type: table | |
5966 | #: doc/guix.texi:1996 | |
5967 | msgid "" | |
5968 | "The difference between @code{--roll-back} and @code{--switch-generation=-1} " | |
5969 | "is that @code{--switch-generation} will not make a zeroth generation, so if " | |
5970 | "a specified generation does not exist, the current generation will not be " | |
5971 | "changed." | |
5972 | msgstr "" | |
5973 | ||
5974 | #. type: item | |
5975 | #: doc/guix.texi:1997 | |
5976 | #, no-wrap | |
5977 | msgid "--search-paths[=@var{kind}]" | |
5978 | msgstr "" | |
5979 | ||
5980 | #. type: table | |
5981 | #: doc/guix.texi:2003 | |
5982 | msgid "" | |
5983 | "Report environment variable definitions, in Bash syntax, that may be needed " | |
5984 | "in order to use the set of installed packages. These environment variables " | |
5985 | "are used to specify @dfn{search paths} for files used by some of the " | |
5986 | "installed packages." | |
5987 | msgstr "" | |
5988 | ||
5989 | #. type: table | |
5990 | #: doc/guix.texi:2011 | |
5991 | msgid "" | |
5992 | "For example, GCC needs the @code{CPATH} and @code{LIBRARY_PATH} environment " | |
5993 | "variables to be defined so it can look for headers and libraries in the " | |
5994 | "user's profile (@pxref{Environment Variables,,, gcc, Using the GNU Compiler " | |
5995 | "Collection (GCC)}). If GCC and, say, the C library are installed in the " | |
5996 | "profile, then @code{--search-paths} will suggest setting these variables to " | |
5997 | "@code{@var{profile}/include} and @code{@var{profile}/lib}, respectively." | |
5998 | msgstr "" | |
5999 | ||
6000 | #. type: table | |
6001 | #: doc/guix.texi:2014 | |
39764ef8 JL |
6002 | msgid "" |
6003 | "The typical use case is to define these environment variables in the shell:" | |
b9fe8fd6 JL |
6004 | msgstr "" |
6005 | ||
6006 | #. type: example | |
6007 | #: doc/guix.texi:2017 | |
6008 | #, no-wrap | |
6009 | msgid "$ eval `guix package --search-paths`\n" | |
6010 | msgstr "" | |
6011 | ||
6012 | #. type: table | |
6013 | #: doc/guix.texi:2023 | |
6014 | msgid "" | |
6015 | "@var{kind} may be one of @code{exact}, @code{prefix}, or @code{suffix}, " | |
6016 | "meaning that the returned environment variable definitions will either be " | |
6017 | "exact settings, or prefixes or suffixes of the current value of these " | |
6018 | "variables. When omitted, @var{kind} defaults to @code{exact}." | |
6019 | msgstr "" | |
6020 | ||
6021 | #. type: table | |
6022 | #: doc/guix.texi:2026 | |
6023 | msgid "" | |
6024 | "This option can also be used to compute the @emph{combined} search paths of " | |
6025 | "several profiles. Consider this example:" | |
6026 | msgstr "" | |
6027 | ||
6028 | #. type: example | |
6029 | #: doc/guix.texi:2031 | |
6030 | #, no-wrap | |
6031 | msgid "" | |
6032 | "$ guix package -p foo -i guile\n" | |
6033 | "$ guix package -p bar -i guile-json\n" | |
6034 | "$ guix package -p foo -p bar --search-paths\n" | |
6035 | msgstr "" | |
6036 | ||
6037 | #. type: table | |
6038 | #: doc/guix.texi:2036 | |
6039 | msgid "" | |
6040 | "The last command above reports about the @code{GUILE_LOAD_PATH} variable, " | |
6041 | "even though, taken individually, neither @file{foo} nor @file{bar} would " | |
6042 | "lead to that recommendation." | |
6043 | msgstr "" | |
6044 | ||
6045 | #. type: item | |
6046 | #: doc/guix.texi:2038 | |
6047 | #, no-wrap | |
6048 | msgid "--profile=@var{profile}" | |
6049 | msgstr "" | |
6050 | ||
6051 | #. type: itemx | |
6052 | #: doc/guix.texi:2039 | |
6053 | #, no-wrap | |
6054 | msgid "-p @var{profile}" | |
6055 | msgstr "" | |
6056 | ||
6057 | #. type: table | |
6058 | #: doc/guix.texi:2041 | |
6059 | msgid "Use @var{profile} instead of the user's default profile." | |
6060 | msgstr "" | |
6061 | ||
6062 | #. type: cindex | |
6063 | #: doc/guix.texi:2042 | |
6064 | #, no-wrap | |
6065 | msgid "collisions, in a profile" | |
6066 | msgstr "" | |
6067 | ||
6068 | #. type: cindex | |
6069 | #: doc/guix.texi:2043 | |
6070 | #, no-wrap | |
6071 | msgid "colliding packages in profiles" | |
6072 | msgstr "" | |
6073 | ||
6074 | #. type: cindex | |
6075 | #: doc/guix.texi:2044 | |
6076 | #, no-wrap | |
6077 | msgid "profile collisions" | |
6078 | msgstr "" | |
6079 | ||
6080 | #. type: item | |
6081 | #: doc/guix.texi:2045 | |
6082 | #, no-wrap | |
6083 | msgid "--allow-collisions" | |
6084 | msgstr "" | |
6085 | ||
6086 | #. type: table | |
6087 | #: doc/guix.texi:2047 | |
6088 | msgid "Allow colliding packages in the new profile. Use at your own risk!" | |
6089 | msgstr "" | |
6090 | ||
6091 | #. type: table | |
6092 | #: doc/guix.texi:2051 | |
6093 | msgid "" | |
6094 | "By default, @command{guix package} reports as an error @dfn{collisions} in " | |
6095 | "the profile. Collisions happen when two or more different versions or " | |
6096 | "variants of a given package end up in the profile." | |
6097 | msgstr "" | |
6098 | ||
6099 | #. type: item | |
6100 | #: doc/guix.texi:2052 doc/guix.texi:2754 doc/guix.texi:7777 | |
6101 | #, no-wrap | |
6102 | msgid "--verbose" | |
6103 | msgstr "" | |
6104 | ||
6105 | #. type: table | |
6106 | #: doc/guix.texi:2055 | |
6107 | msgid "" | |
6108 | "Produce verbose output. In particular, emit the build log of the " | |
6109 | "environment on the standard error port." | |
6110 | msgstr "" | |
6111 | ||
6112 | #. type: item | |
6113 | #: doc/guix.texi:2056 doc/guix.texi:2773 doc/guix.texi:2931 | |
6114 | #, no-wrap | |
6115 | msgid "--bootstrap" | |
6116 | msgstr "" | |
6117 | ||
6118 | #. type: table | |
6119 | #: doc/guix.texi:2059 | |
6120 | msgid "" | |
6121 | "Use the bootstrap Guile to build the profile. This option is only useful to " | |
6122 | "distribution developers." | |
6123 | msgstr "" | |
6124 | ||
6125 | #. type: Plain text | |
6126 | #: doc/guix.texi:2065 | |
6127 | msgid "" | |
6128 | "In addition to these actions, @command{guix package} supports the following " | |
6129 | "options to query the current state of a profile, or the availability of " | |
6130 | "packages:" | |
6131 | msgstr "" | |
6132 | ||
6133 | #. type: item | |
6134 | #: doc/guix.texi:2068 | |
6135 | #, no-wrap | |
6136 | msgid "--search=@var{regexp}" | |
6137 | msgstr "" | |
6138 | ||
6139 | #. type: itemx | |
6140 | #: doc/guix.texi:2069 | |
6141 | #, no-wrap | |
6142 | msgid "-s @var{regexp}" | |
6143 | msgstr "" | |
6144 | ||
6145 | #. type: cindex | |
6146 | #: doc/guix.texi:2070 | |
6147 | #, no-wrap | |
6148 | msgid "searching for packages" | |
6149 | msgstr "" | |
6150 | ||
6151 | #. type: table | |
6152 | #: doc/guix.texi:2075 | |
6153 | msgid "" | |
6154 | "List the available packages whose name, synopsis, or description matches " | |
6155 | "@var{regexp}, sorted by relevance. Print all the metadata of matching " | |
6156 | "packages in @code{recutils} format (@pxref{Top, GNU recutils databases,, " | |
6157 | "recutils, GNU recutils manual})." | |
6158 | msgstr "" | |
6159 | ||
6160 | #. type: table | |
6161 | #: doc/guix.texi:2078 | |
6162 | msgid "" | |
6163 | "This allows specific fields to be extracted using the @command{recsel} " | |
6164 | "command, for instance:" | |
6165 | msgstr "" | |
6166 | ||
6167 | #. type: example | |
6168 | #: doc/guix.texi:2084 | |
6169 | #, no-wrap | |
6170 | msgid "" | |
6171 | "$ guix package -s malloc | recsel -p name,version,relevance\n" | |
6172 | "name: jemalloc\n" | |
6173 | "version: 4.5.0\n" | |
6174 | "relevance: 6\n" | |
6175 | "\n" | |
6176 | msgstr "" | |
6177 | ||
6178 | #. type: example | |
6179 | #: doc/guix.texi:2088 | |
6180 | #, no-wrap | |
6181 | msgid "" | |
6182 | "name: glibc\n" | |
6183 | "version: 2.25\n" | |
6184 | "relevance: 1\n" | |
6185 | "\n" | |
6186 | msgstr "" | |
6187 | ||
6188 | #. type: example | |
6189 | #: doc/guix.texi:2092 | |
6190 | #, no-wrap | |
6191 | msgid "" | |
6192 | "name: libgc\n" | |
6193 | "version: 7.6.0\n" | |
6194 | "relevance: 1\n" | |
6195 | msgstr "" | |
6196 | ||
6197 | #. type: table | |
6198 | #: doc/guix.texi:2096 | |
6199 | msgid "" | |
6200 | "Similarly, to show the name of all the packages available under the terms of " | |
6201 | "the GNU@tie{}LGPL version 3:" | |
6202 | msgstr "" | |
6203 | ||
6204 | #. type: example | |
6205 | #: doc/guix.texi:2100 | |
6206 | #, no-wrap | |
6207 | msgid "" | |
6208 | "$ guix package -s \"\" | recsel -p name -e 'license ~ \"LGPL 3\"'\n" | |
6209 | "name: elfutils\n" | |
6210 | "\n" | |
6211 | msgstr "" | |
6212 | ||
6213 | #. type: example | |
6214 | #: doc/guix.texi:2103 | |
6215 | #, no-wrap | |
6216 | msgid "" | |
6217 | "name: gmp\n" | |
6218 | "@dots{}\n" | |
6219 | msgstr "" | |
6220 | ||
6221 | #. type: table | |
6222 | #: doc/guix.texi:2108 | |
6223 | msgid "" | |
6224 | "It is also possible to refine search results using several @code{-s} flags. " | |
6225 | "For example, the following command returns a list of board games:" | |
6226 | msgstr "" | |
6227 | ||
6228 | #. type: example | |
6229 | #: doc/guix.texi:2113 | |
6230 | #, no-wrap | |
6231 | msgid "" | |
6232 | "$ guix package -s '\\<board\\>' -s game | recsel -p name\n" | |
6233 | "name: gnubg\n" | |
6234 | "@dots{}\n" | |
6235 | msgstr "" | |
6236 | ||
6237 | #. type: table | |
6238 | #: doc/guix.texi:2119 | |
6239 | msgid "" | |
6240 | "If we were to omit @code{-s game}, we would also get software packages that " | |
6241 | "deal with printed circuit boards; removing the angle brackets around " | |
6242 | "@code{board} would further add packages that have to do with keyboards." | |
6243 | msgstr "" | |
6244 | ||
6245 | #. type: table | |
6246 | #: doc/guix.texi:2123 | |
6247 | msgid "" | |
6248 | "And now for a more elaborate example. The following command searches for " | |
6249 | "cryptographic libraries, filters out Haskell, Perl, Python, and Ruby " | |
6250 | "libraries, and prints the name and synopsis of the matching packages:" | |
6251 | msgstr "" | |
6252 | ||
6253 | #. type: example | |
6254 | #: doc/guix.texi:2127 | |
6255 | #, no-wrap | |
6256 | msgid "" | |
6257 | "$ guix package -s crypto -s library | \\\n" | |
6258 | " recsel -e '! (name ~ \"^(ghc|perl|python|ruby)\")' -p name,synopsis\n" | |
6259 | msgstr "" | |
6260 | ||
6261 | #. type: table | |
6262 | #: doc/guix.texi:2132 | |
6263 | msgid "" | |
6264 | "@xref{Selection Expressions,,, recutils, GNU recutils manual}, for more " | |
6265 | "information on @dfn{selection expressions} for @code{recsel -e}." | |
6266 | msgstr "" | |
6267 | ||
6268 | #. type: item | |
6269 | #: doc/guix.texi:2133 | |
6270 | #, no-wrap | |
6271 | msgid "--show=@var{package}" | |
6272 | msgstr "" | |
6273 | ||
6274 | #. type: table | |
6275 | #: doc/guix.texi:2137 | |
6276 | msgid "" | |
6277 | "Show details about @var{package}, taken from the list of available packages, " | |
6278 | "in @code{recutils} format (@pxref{Top, GNU recutils databases,, recutils, " | |
6279 | "GNU recutils manual})." | |
6280 | msgstr "" | |
6281 | ||
6282 | #. type: example | |
6283 | #: doc/guix.texi:2142 | |
6284 | #, no-wrap | |
6285 | msgid "" | |
6286 | "$ guix package --show=python | recsel -p name,version\n" | |
6287 | "name: python\n" | |
6288 | "version: 2.7.6\n" | |
6289 | "\n" | |
6290 | msgstr "" | |
6291 | ||
6292 | #. type: example | |
6293 | #: doc/guix.texi:2145 | |
6294 | #, no-wrap | |
6295 | msgid "" | |
6296 | "name: python\n" | |
6297 | "version: 3.3.5\n" | |
6298 | msgstr "" | |
6299 | ||
6300 | #. type: table | |
6301 | #: doc/guix.texi:2149 | |
6302 | msgid "" | |
6303 | "You may also specify the full name of a package to only get details about a " | |
6304 | "specific version of it:" | |
6305 | msgstr "" | |
6306 | ||
6307 | #. type: example | |
6308 | #: doc/guix.texi:2153 | |
6309 | #, no-wrap | |
6310 | msgid "" | |
6311 | "$ guix package --show=python@@3.4 | recsel -p name,version\n" | |
6312 | "name: python\n" | |
6313 | "version: 3.4.3\n" | |
6314 | msgstr "" | |
6315 | ||
6316 | #. type: item | |
6317 | #: doc/guix.texi:2157 | |
6318 | #, no-wrap | |
6319 | msgid "--list-installed[=@var{regexp}]" | |
6320 | msgstr "" | |
6321 | ||
6322 | #. type: itemx | |
6323 | #: doc/guix.texi:2158 | |
6324 | #, no-wrap | |
6325 | msgid "-I [@var{regexp}]" | |
6326 | msgstr "" | |
6327 | ||
6328 | #. type: table | |
6329 | #: doc/guix.texi:2162 | |
6330 | msgid "" | |
6331 | "List the currently installed packages in the specified profile, with the " | |
6332 | "most recently installed packages shown last. When @var{regexp} is " | |
6333 | "specified, list only installed packages whose name matches @var{regexp}." | |
6334 | msgstr "" | |
6335 | ||
6336 | #. type: table | |
6337 | #: doc/guix.texi:2168 | |
6338 | msgid "" | |
6339 | "For each installed package, print the following items, separated by tabs: " | |
6340 | "the package name, its version string, the part of the package that is " | |
6341 | "installed (for instance, @code{out} for the default output, @code{include} " | |
6342 | "for its headers, etc.), and the path of this package in the store." | |
6343 | msgstr "" | |
6344 | ||
6345 | #. type: item | |
6346 | #: doc/guix.texi:2169 | |
6347 | #, no-wrap | |
6348 | msgid "--list-available[=@var{regexp}]" | |
6349 | msgstr "" | |
6350 | ||
6351 | #. type: itemx | |
6352 | #: doc/guix.texi:2170 | |
6353 | #, no-wrap | |
6354 | msgid "-A [@var{regexp}]" | |
6355 | msgstr "" | |
6356 | ||
6357 | #. type: table | |
6358 | #: doc/guix.texi:2174 | |
6359 | msgid "" | |
6360 | "List packages currently available in the distribution for this system " | |
6361 | "(@pxref{GNU Distribution}). When @var{regexp} is specified, list only " | |
6362 | "installed packages whose name matches @var{regexp}." | |
6363 | msgstr "" | |
6364 | ||
6365 | #. type: table | |
6366 | #: doc/guix.texi:2178 | |
6367 | msgid "" | |
6368 | "For each package, print the following items separated by tabs: its name, its " | |
6369 | "version string, the parts of the package (@pxref{Packages with Multiple " | |
6370 | "Outputs}), and the source location of its definition." | |
6371 | msgstr "" | |
6372 | ||
6373 | #. type: item | |
6374 | #: doc/guix.texi:2179 | |
6375 | #, no-wrap | |
6376 | msgid "--list-generations[=@var{pattern}]" | |
6377 | msgstr "" | |
6378 | ||
6379 | #. type: itemx | |
6380 | #: doc/guix.texi:2180 | |
6381 | #, no-wrap | |
6382 | msgid "-l [@var{pattern}]" | |
6383 | msgstr "" | |
6384 | ||
6385 | #. type: table | |
6386 | #: doc/guix.texi:2186 | |
6387 | msgid "" | |
6388 | "Return a list of generations along with their creation dates; for each " | |
6389 | "generation, show the installed packages, with the most recently installed " | |
6390 | "packages shown last. Note that the zeroth generation is never shown." | |
6391 | msgstr "" | |
6392 | ||
6393 | #. type: table | |
6394 | #: doc/guix.texi:2191 | |
6395 | msgid "" | |
6396 | "For each installed package, print the following items, separated by tabs: " | |
6397 | "the name of a package, its version string, the part of the package that is " | |
6398 | "installed (@pxref{Packages with Multiple Outputs}), and the location of this " | |
6399 | "package in the store." | |
6400 | msgstr "" | |
6401 | ||
6402 | #. type: table | |
6403 | #: doc/guix.texi:2194 | |
6404 | msgid "" | |
6405 | "When @var{pattern} is used, the command returns only matching generations. " | |
6406 | "Valid patterns include:" | |
6407 | msgstr "" | |
6408 | ||
6409 | #. type: item | |
6410 | #: doc/guix.texi:2196 | |
6411 | #, no-wrap | |
6412 | msgid "@emph{Integers and comma-separated integers}. Both patterns denote" | |
6413 | msgstr "" | |
6414 | ||
6415 | #. type: itemize | |
6416 | #: doc/guix.texi:2199 | |
6417 | msgid "" | |
6418 | "generation numbers. For instance, @code{--list-generations=1} returns the " | |
6419 | "first one." | |
6420 | msgstr "" | |
6421 | ||
6422 | #. type: itemize | |
6423 | #: doc/guix.texi:2202 | |
6424 | msgid "" | |
6425 | "And @code{--list-generations=1,8,2} outputs three generations in the " | |
6426 | "specified order. Neither spaces nor trailing commas are allowed." | |
6427 | msgstr "" | |
6428 | ||
6429 | #. type: item | |
6430 | #: doc/guix.texi:2203 | |
6431 | #, no-wrap | |
6432 | msgid "@emph{Ranges}. @code{--list-generations=2..9} prints the" | |
6433 | msgstr "" | |
6434 | ||
6435 | #. type: itemize | |
6436 | #: doc/guix.texi:2206 | |
6437 | msgid "" | |
6438 | "specified generations and everything in between. Note that the start of a " | |
6439 | "range must be smaller than its end." | |
6440 | msgstr "" | |
6441 | ||
6442 | #. type: itemize | |
6443 | #: doc/guix.texi:2210 | |
6444 | msgid "" | |
39764ef8 JL |
6445 | "It is also possible to omit the endpoint. For example, @code{--list-" |
6446 | "generations=2..}, returns all generations starting from the second one." | |
b9fe8fd6 JL |
6447 | msgstr "" |
6448 | ||
6449 | #. type: item | |
6450 | #: doc/guix.texi:2211 | |
6451 | #, no-wrap | |
6452 | msgid "@emph{Durations}. You can also get the last @emph{N}@tie{}days, weeks," | |
6453 | msgstr "" | |
6454 | ||
6455 | #. type: itemize | |
6456 | #: doc/guix.texi:2215 | |
6457 | msgid "" | |
6458 | "or months by passing an integer along with the first letter of the " | |
6459 | "duration. For example, @code{--list-generations=20d} lists generations that " | |
6460 | "are up to 20 days old." | |
6461 | msgstr "" | |
6462 | ||
6463 | #. type: item | |
6464 | #: doc/guix.texi:2217 | |
6465 | #, no-wrap | |
6466 | msgid "--delete-generations[=@var{pattern}]" | |
6467 | msgstr "" | |
6468 | ||
6469 | #. type: itemx | |
6470 | #: doc/guix.texi:2218 | |
6471 | #, no-wrap | |
6472 | msgid "-d [@var{pattern}]" | |
6473 | msgstr "" | |
6474 | ||
6475 | #. type: table | |
6476 | #: doc/guix.texi:2221 | |
6477 | msgid "" | |
39764ef8 | 6478 | "When @var{pattern} is omitted, delete all generations except the current one." |
b9fe8fd6 JL |
6479 | msgstr "" |
6480 | ||
6481 | #. type: table | |
6482 | #: doc/guix.texi:2227 | |
6483 | msgid "" | |
6484 | "This command accepts the same patterns as @option{--list-generations}. When " | |
6485 | "@var{pattern} is specified, delete the matching generations. When " | |
6486 | "@var{pattern} specifies a duration, generations @emph{older} than the " | |
6487 | "specified duration match. For instance, @code{--delete-generations=1m} " | |
6488 | "deletes generations that are more than one month old." | |
6489 | msgstr "" | |
6490 | ||
6491 | #. type: table | |
6492 | #: doc/guix.texi:2230 | |
6493 | msgid "" | |
6494 | "If the current generation matches, it is @emph{not} deleted. Also, the " | |
6495 | "zeroth generation is never deleted." | |
6496 | msgstr "" | |
6497 | ||
6498 | #. type: table | |
6499 | #: doc/guix.texi:2233 | |
6500 | msgid "" | |
6501 | "Note that deleting generations prevents rolling back to them. Consequently, " | |
6502 | "this command must be used with care." | |
6503 | msgstr "" | |
6504 | ||
6505 | #. type: Plain text | |
6506 | #: doc/guix.texi:2244 | |
6507 | msgid "" | |
6508 | "Finally, since @command{guix package} may actually start build processes, it " | |
6509 | "supports all the common build options (@pxref{Common Build Options}). It " | |
6510 | "also supports package transformation options, such as @option{--with-source} " | |
6511 | "(@pxref{Package Transformation Options}). However, note that package " | |
6512 | "transformations are lost when upgrading; to preserve transformations across " | |
6513 | "upgrades, you should define your own package variant in a Guile module and " | |
6514 | "add it to @code{GUIX_PACKAGE_PATH} (@pxref{Defining Packages})." | |
6515 | msgstr "" | |
6516 | ||
6517 | #. type: cindex | |
6518 | #: doc/guix.texi:2249 | |
6519 | #, no-wrap | |
6520 | msgid "pre-built binaries" | |
6521 | msgstr "" | |
6522 | ||
6523 | #. type: Plain text | |
6524 | #: doc/guix.texi:2255 | |
6525 | msgid "" | |
6526 | "Guix supports transparent source/binary deployment, which means that it can " | |
6527 | "either build things locally, or download pre-built items from a server, or " | |
6528 | "both. We call these pre-built items @dfn{substitutes}---they are " | |
6529 | "substitutes for local build results. In many cases, downloading a " | |
6530 | "substitute is much faster than building things locally." | |
6531 | msgstr "" | |
6532 | ||
6533 | #. type: Plain text | |
6534 | #: doc/guix.texi:2260 | |
6535 | msgid "" | |
6536 | "Substitutes can be anything resulting from a derivation build " | |
6537 | "(@pxref{Derivations}). Of course, in the common case, they are pre-built " | |
6538 | "package binaries, but source tarballs, for instance, which also result from " | |
6539 | "derivation builds, can be available as substitutes." | |
6540 | msgstr "" | |
6541 | ||
6542 | #. type: cindex | |
6543 | #: doc/guix.texi:2273 | |
6544 | #, no-wrap | |
6545 | msgid "hydra" | |
6546 | msgstr "" | |
6547 | ||
6548 | #. type: cindex | |
6549 | #: doc/guix.texi:2274 | |
6550 | #, no-wrap | |
6551 | msgid "build farm" | |
6552 | msgstr "" | |
6553 | ||
6554 | #. type: Plain text | |
6555 | #: doc/guix.texi:2284 | |
6556 | msgid "" | |
6557 | "The @code{mirror.hydra.gnu.org} server is a front-end to an official build " | |
6558 | "farm that builds packages from Guix continuously for some architectures, and " | |
6559 | "makes them available as substitutes. This is the default source of " | |
6560 | "substitutes; it can be overridden by passing the @option{--substitute-urls} " | |
6561 | "option either to @command{guix-daemon} (@pxref{daemon-substitute-urls,, " | |
6562 | "@code{guix-daemon --substitute-urls}}) or to client tools such as " | |
39764ef8 JL |
6563 | "@command{guix package} (@pxref{client-substitute-urls,, client @option{--" |
6564 | "substitute-urls} option})." | |
b9fe8fd6 JL |
6565 | msgstr "" |
6566 | ||
6567 | #. type: Plain text | |
6568 | #: doc/guix.texi:2290 | |
6569 | msgid "" | |
6570 | "Substitute URLs can be either HTTP or HTTPS. HTTPS is recommended because " | |
6571 | "communications are encrypted; conversely, using HTTP makes all " | |
6572 | "communications visible to an eavesdropper, who could use the information " | |
6573 | "gathered to determine, for instance, whether your system has unpatched " | |
6574 | "security vulnerabilities." | |
6575 | msgstr "" | |
6576 | ||
6577 | #. type: Plain text | |
6578 | #: doc/guix.texi:2299 | |
6579 | msgid "" | |
6580 | "Substitutes from the official build farm are enabled by default when using " | |
6581 | "the Guix System Distribution (@pxref{GNU Distribution}). However, they are " | |
6582 | "disabled by default when using Guix on a foreign distribution, unless you " | |
6583 | "have explicitly enabled them via one of the recommended installation steps " | |
6584 | "(@pxref{Installation}). The following paragraphs describe how to enable or " | |
6585 | "disable substitutes for the official build farm; the same procedure can also " | |
6586 | "be used to enable substitutes for any other substitute server." | |
6587 | msgstr "" | |
6588 | ||
6589 | #. type: cindex | |
6590 | #: doc/guix.texi:2303 | |
6591 | #, no-wrap | |
6592 | msgid "security" | |
6593 | msgstr "" | |
6594 | ||
6595 | #. type: cindex | |
6596 | #: doc/guix.texi:2305 | |
6597 | #, no-wrap | |
6598 | msgid "access control list (ACL), for substitutes" | |
6599 | msgstr "" | |
6600 | ||
6601 | #. type: cindex | |
6602 | #: doc/guix.texi:2306 | |
6603 | #, no-wrap | |
6604 | msgid "ACL (access control list), for substitutes" | |
6605 | msgstr "" | |
6606 | ||
6607 | #. type: Plain text | |
6608 | #: doc/guix.texi:2313 | |
6609 | msgid "" | |
6610 | "To allow Guix to download substitutes from @code{hydra.gnu.org} or a mirror " | |
6611 | "thereof, you must add its public key to the access control list (ACL) of " | |
6612 | "archive imports, using the @command{guix archive} command (@pxref{Invoking " | |
6613 | "guix archive}). Doing so implies that you trust @code{hydra.gnu.org} to not " | |
6614 | "be compromised and to serve genuine substitutes." | |
6615 | msgstr "" | |
6616 | ||
6617 | #. type: Plain text | |
6618 | #: doc/guix.texi:2320 | |
6619 | msgid "" | |
6620 | "The public key for @code{hydra.gnu.org} is installed along with Guix, in " | |
6621 | "@code{@var{prefix}/share/guix/hydra.gnu.org.pub}, where @var{prefix} is the " | |
6622 | "installation prefix of Guix. If you installed Guix from source, make sure " | |
6623 | "you checked the GPG signature of @file{guix-@value{VERSION}.tar.gz}, which " | |
6624 | "contains this public key file. Then, you can run something like this:" | |
6625 | msgstr "" | |
6626 | ||
6627 | #. type: example | |
6628 | #: doc/guix.texi:2323 | |
6629 | #, no-wrap | |
6630 | msgid "# guix archive --authorize < @var{prefix}/share/guix/hydra.gnu.org.pub\n" | |
6631 | msgstr "" | |
6632 | ||
6633 | #. type: quotation | |
6634 | #: doc/guix.texi:2329 | |
6635 | msgid "" | |
6636 | "Similarly, the @file{berlin.guixsd.org.pub} file contains the public key for " | |
39764ef8 JL |
6637 | "the project's new build farm, reachable at @indicateurl{https://berlin." |
6638 | "guixsd.org}." | |
b9fe8fd6 JL |
6639 | msgstr "" |
6640 | ||
6641 | #. type: quotation | |
6642 | #: doc/guix.texi:2334 | |
6643 | msgid "" | |
6644 | "As of this writing @code{berlin.guixsd.org} is being upgraded so it can " | |
6645 | "better scale up, but you might want to give it a try. It is backed by 20 " | |
6646 | "x86_64/i686 build nodes and may be able to provide substitutes more quickly " | |
6647 | "than @code{mirror.hydra.gnu.org}." | |
6648 | msgstr "" | |
6649 | ||
6650 | #. type: Plain text | |
6651 | #: doc/guix.texi:2338 | |
6652 | msgid "" | |
6653 | "Once this is in place, the output of a command like @code{guix build} should " | |
6654 | "change from something like:" | |
6655 | msgstr "" | |
6656 | ||
6657 | #. type: example | |
6658 | #: doc/guix.texi:2347 | |
6659 | #, no-wrap | |
6660 | msgid "" | |
6661 | "$ guix build emacs --dry-run\n" | |
6662 | "The following derivations would be built:\n" | |
6663 | " /gnu/store/yr7bnx8xwcayd6j95r2clmkdl1qh688w-emacs-24.3.drv\n" | |
6664 | " /gnu/store/x8qsh1hlhgjx6cwsjyvybnfv2i37z23w-dbus-1.6.4.tar.gz.drv\n" | |
39764ef8 | 6665 | " /gnu/store/1ixwp12fl950d15h2cj11c73733jay0z-alsa-lib-1.0.27.1.tar.bz2.drv\n" |
b9fe8fd6 JL |
6666 | " /gnu/store/nlma1pw0p603fpfiqy7kn4zm105r5dmw-util-linux-2.21.drv\n" |
6667 | "@dots{}\n" | |
6668 | msgstr "" | |
6669 | ||
6670 | #. type: Plain text | |
6671 | #: doc/guix.texi:2351 | |
6672 | msgid "to something like:" | |
6673 | msgstr "" | |
6674 | ||
6675 | #. type: example | |
6676 | #: doc/guix.texi:2360 | |
6677 | #, no-wrap | |
6678 | msgid "" | |
6679 | "$ guix build emacs --dry-run\n" | |
6680 | "112.3 MB would be downloaded:\n" | |
6681 | " /gnu/store/pk3n22lbq6ydamyymqkkz7i69wiwjiwi-emacs-24.3\n" | |
6682 | " /gnu/store/2ygn4ncnhrpr61rssa6z0d9x22si0va3-libjpeg-8d\n" | |
6683 | " /gnu/store/71yz6lgx4dazma9dwn2mcjxaah9w77jq-cairo-1.12.16\n" | |
6684 | " /gnu/store/7zdhgp0n1518lvfn8mb96sxqfmvqrl7v-libxrender-0.9.7\n" | |
6685 | "@dots{}\n" | |
6686 | msgstr "" | |
6687 | ||
6688 | #. type: Plain text | |
6689 | #: doc/guix.texi:2365 | |
6690 | msgid "" | |
6691 | "This indicates that substitutes from @code{hydra.gnu.org} are usable and " | |
6692 | "will be downloaded, when possible, for future builds." | |
6693 | msgstr "" | |
6694 | ||
6695 | #. type: cindex | |
6696 | #: doc/guix.texi:2366 | |
6697 | #, no-wrap | |
6698 | msgid "substitutes, how to disable" | |
6699 | msgstr "" | |
6700 | ||
6701 | #. type: Plain text | |
6702 | #: doc/guix.texi:2372 | |
6703 | msgid "" | |
39764ef8 JL |
6704 | "The substitute mechanism can be disabled globally by running @code{guix-" |
6705 | "daemon} with @code{--no-substitutes} (@pxref{Invoking guix-daemon}). It can " | |
6706 | "also be disabled temporarily by passing the @code{--no-substitutes} option " | |
6707 | "to @command{guix package}, @command{guix build}, and other command-line " | |
6708 | "tools." | |
b9fe8fd6 JL |
6709 | msgstr "" |
6710 | ||
6711 | #. type: cindex | |
6712 | #: doc/guix.texi:2376 | |
6713 | #, no-wrap | |
6714 | msgid "digital signatures" | |
6715 | msgstr "" | |
6716 | ||
6717 | #. type: Plain text | |
6718 | #: doc/guix.texi:2380 | |
6719 | msgid "" | |
6720 | "Guix detects and raises an error when attempting to use a substitute that " | |
6721 | "has been tampered with. Likewise, it ignores substitutes that are not " | |
6722 | "signed, or that are not signed by one of the keys listed in the ACL." | |
6723 | msgstr "" | |
6724 | ||
6725 | #. type: Plain text | |
6726 | #: doc/guix.texi:2386 | |
6727 | msgid "" | |
6728 | "There is one exception though: if an unauthorized server provides " | |
6729 | "substitutes that are @emph{bit-for-bit identical} to those provided by an " | |
6730 | "authorized server, then the unauthorized server becomes eligible for " | |
6731 | "downloads. For example, assume we have chosen two substitute servers with " | |
6732 | "this option:" | |
6733 | msgstr "" | |
6734 | ||
6735 | #. type: example | |
6736 | #: doc/guix.texi:2389 | |
6737 | #, no-wrap | |
6738 | msgid "--substitute-urls=\"https://a.example.org https://b.example.org\"\n" | |
6739 | msgstr "" | |
6740 | ||
6741 | #. type: Plain text | |
6742 | #: doc/guix.texi:2400 | |
6743 | msgid "" | |
39764ef8 JL |
6744 | "If the ACL contains only the key for @code{b.example.org}, and if @code{a." |
6745 | "example.org} happens to serve the @emph{exact same} substitutes, then Guix " | |
6746 | "will download substitutes from @code{a.example.org} because it comes first " | |
6747 | "in the list and can be considered a mirror of @code{b.example.org}. In " | |
6748 | "practice, independent build machines usually produce the same binaries, " | |
6749 | "thanks to bit-reproducible builds (see below)." | |
b9fe8fd6 JL |
6750 | msgstr "" |
6751 | ||
6752 | #. type: Plain text | |
6753 | #: doc/guix.texi:2407 | |
6754 | msgid "" | |
6755 | "When using HTTPS, the server's X.509 certificate is @emph{not} validated (in " | |
6756 | "other words, the server is not authenticated), contrary to what HTTPS " | |
6757 | "clients such as Web browsers usually do. This is because Guix authenticates " | |
6758 | "substitute information itself, as explained above, which is what we care " | |
6759 | "about (whereas X.509 certificates are about authenticating bindings between " | |
6760 | "domain names and public keys.)" | |
6761 | msgstr "" | |
6762 | ||
6763 | #. type: Plain text | |
6764 | #: doc/guix.texi:2419 | |
6765 | msgid "" | |
6766 | "Substitutes are downloaded over HTTP or HTTPS. The @code{http_proxy} " | |
6767 | "environment variable can be set in the environment of @command{guix-daemon} " | |
6768 | "and is honored for downloads of substitutes. Note that the value of " | |
6769 | "@code{http_proxy} in the environment where @command{guix build}, " | |
6770 | "@command{guix package}, and other client commands are run has " | |
6771 | "@emph{absolutely no effect}." | |
6772 | msgstr "" | |
6773 | ||
6774 | #. type: Plain text | |
6775 | #: doc/guix.texi:2428 | |
6776 | msgid "" | |
6777 | "Even when a substitute for a derivation is available, sometimes the " | |
6778 | "substitution attempt will fail. This can happen for a variety of reasons: " | |
6779 | "the substitute server might be offline, the substitute may recently have " | |
6780 | "been deleted, the connection might have been interrupted, etc." | |
6781 | msgstr "" | |
6782 | ||
6783 | #. type: Plain text | |
6784 | #: doc/guix.texi:2442 | |
6785 | msgid "" | |
6786 | "When substitutes are enabled and a substitute for a derivation is available, " | |
6787 | "but the substitution attempt fails, Guix will attempt to build the " | |
6788 | "derivation locally depending on whether or not @code{--fallback} was given " | |
6789 | "(@pxref{fallback-option,, common build option @code{--fallback}}). " | |
6790 | "Specifically, if @code{--fallback} was omitted, then no local build will be " | |
6791 | "performed, and the derivation is considered to have failed. However, if " | |
6792 | "@code{--fallback} was given, then Guix will attempt to build the derivation " | |
6793 | "locally, and the success or failure of the derivation depends on the success " | |
6794 | "or failure of the local build. Note that when substitutes are disabled or " | |
6795 | "no substitute is available for the derivation in question, a local build " | |
39764ef8 JL |
6796 | "will @emph{always} be performed, regardless of whether or not @code{--" |
6797 | "fallback} was given." | |
b9fe8fd6 JL |
6798 | msgstr "" |
6799 | ||
6800 | #. type: Plain text | |
6801 | #: doc/guix.texi:2447 | |
6802 | msgid "" | |
6803 | "To get an idea of how many substitutes are available right now, you can try " | |
6804 | "running the @command{guix weather} command (@pxref{Invoking guix weather}). " | |
6805 | "This command provides statistics on the substitutes provided by a server." | |
6806 | msgstr "" | |
6807 | ||
6808 | #. type: cindex | |
6809 | #: doc/guix.texi:2451 | |
6810 | #, no-wrap | |
6811 | msgid "trust, of pre-built binaries" | |
6812 | msgstr "" | |
6813 | ||
6814 | #. type: Plain text | |
6815 | #: doc/guix.texi:2461 | |
6816 | msgid "" | |
6817 | "Today, each individual's control over their own computing is at the mercy of " | |
6818 | "institutions, corporations, and groups with enough power and determination " | |
6819 | "to subvert the computing infrastructure and exploit its weaknesses. While " | |
6820 | "using @code{hydra.gnu.org} substitutes can be convenient, we encourage users " | |
6821 | "to also build on their own, or even run their own build farm, such that " | |
6822 | "@code{hydra.gnu.org} is less of an interesting target. One way to help is " | |
6823 | "by publishing the software you build using @command{guix publish} so that " | |
6824 | "others have one more choice of server to download substitutes from " | |
6825 | "(@pxref{Invoking guix publish})." | |
6826 | msgstr "" | |
6827 | ||
6828 | #. type: Plain text | |
6829 | #: doc/guix.texi:2473 | |
6830 | msgid "" | |
6831 | "Guix has the foundations to maximize build reproducibility " | |
6832 | "(@pxref{Features}). In most cases, independent builds of a given package or " | |
6833 | "derivation should yield bit-identical results. Thus, through a diverse set " | |
6834 | "of independent package builds, we can strengthen the integrity of our " | |
6835 | "systems. The @command{guix challenge} command aims to help users assess " | |
39764ef8 JL |
6836 | "substitute servers, and to assist developers in finding out about non-" |
6837 | "deterministic package builds (@pxref{Invoking guix challenge}). Similarly, " | |
6838 | "the @option{--check} option of @command{guix build} allows users to check " | |
6839 | "whether previously-installed substitutes are genuine by rebuilding them " | |
6840 | "locally (@pxref{build-check, @command{guix build --check}})." | |
b9fe8fd6 JL |
6841 | msgstr "" |
6842 | ||
6843 | #. type: Plain text | |
6844 | #: doc/guix.texi:2477 | |
6845 | msgid "" | |
6846 | "In the future, we want Guix to have support to publish and retrieve binaries " | |
6847 | "to/from other users, in a peer-to-peer fashion. If you would like to " | |
6848 | "discuss this project, join us on @email{guix-devel@@gnu.org}." | |
6849 | msgstr "" | |
6850 | ||
6851 | #. type: cindex | |
6852 | #: doc/guix.texi:2481 | |
6853 | #, no-wrap | |
6854 | msgid "multiple-output packages" | |
6855 | msgstr "" | |
6856 | ||
6857 | #. type: cindex | |
6858 | #: doc/guix.texi:2482 | |
6859 | #, no-wrap | |
6860 | msgid "package outputs" | |
6861 | msgstr "" | |
6862 | ||
6863 | #. type: cindex | |
6864 | #: doc/guix.texi:2483 | |
6865 | #, no-wrap | |
6866 | msgid "outputs" | |
6867 | msgstr "" | |
6868 | ||
6869 | #. type: Plain text | |
6870 | #: doc/guix.texi:2493 | |
6871 | msgid "" | |
6872 | "Often, packages defined in Guix have a single @dfn{output}---i.e., the " | |
6873 | "source package leads to exactly one directory in the store. When running " | |
6874 | "@command{guix package -i glibc}, one installs the default output of the GNU " | |
6875 | "libc package; the default output is called @code{out}, but its name can be " | |
6876 | "omitted as shown in this command. In this particular case, the default " | |
6877 | "output of @code{glibc} contains all the C header files, shared libraries, " | |
6878 | "static libraries, Info documentation, and other supporting files." | |
6879 | msgstr "" | |
6880 | ||
6881 | #. type: Plain text | |
6882 | #: doc/guix.texi:2501 | |
6883 | msgid "" | |
6884 | "Sometimes it is more appropriate to separate the various types of files " | |
6885 | "produced from a single source package into separate outputs. For instance, " | |
6886 | "the GLib C library (used by GTK+ and related packages) installs more than " | |
6887 | "20 MiB of reference documentation as HTML pages. To save space for users " | |
6888 | "who do not need it, the documentation goes to a separate output, called " | |
6889 | "@code{doc}. To install the main GLib output, which contains everything but " | |
6890 | "the documentation, one would run:" | |
6891 | msgstr "" | |
6892 | ||
6893 | #. type: example | |
6894 | #: doc/guix.texi:2504 | |
6895 | #, no-wrap | |
6896 | msgid "guix package -i glib\n" | |
6897 | msgstr "" | |
6898 | ||
6899 | #. type: code{#1} | |
39764ef8 | 6900 | #: doc/guix.texi:2506 doc/guix.texi:21321 |
b9fe8fd6 JL |
6901 | #, no-wrap |
6902 | msgid "documentation" | |
6903 | msgstr "" | |
6904 | ||
6905 | #. type: Plain text | |
6906 | #: doc/guix.texi:2508 | |
6907 | msgid "The command to install its documentation is:" | |
6908 | msgstr "" | |
6909 | ||
6910 | #. type: example | |
6911 | #: doc/guix.texi:2511 | |
6912 | #, no-wrap | |
6913 | msgid "guix package -i glib:doc\n" | |
6914 | msgstr "" | |
6915 | ||
6916 | #. type: Plain text | |
6917 | #: doc/guix.texi:2522 | |
6918 | msgid "" | |
6919 | "Some packages install programs with different ``dependency footprints''. " | |
6920 | "For instance, the WordNet package installs both command-line tools and " | |
6921 | "graphical user interfaces (GUIs). The former depend solely on the C " | |
6922 | "library, whereas the latter depend on Tcl/Tk and the underlying X " | |
6923 | "libraries. In this case, we leave the command-line tools in the default " | |
6924 | "output, whereas the GUIs are in a separate output. This allows users who do " | |
6925 | "not need the GUIs to save space. The @command{guix size} command can help " | |
6926 | "find out about such situations (@pxref{Invoking guix size}). @command{guix " | |
6927 | "graph} can also be helpful (@pxref{Invoking guix graph})." | |
6928 | msgstr "" | |
6929 | ||
6930 | #. type: Plain text | |
6931 | #: doc/guix.texi:2530 | |
6932 | msgid "" | |
6933 | "There are several such multiple-output packages in the GNU distribution. " | |
6934 | "Other conventional output names include @code{lib} for libraries and " | |
6935 | "possibly header files, @code{bin} for stand-alone programs, and @code{debug} " | |
6936 | "for debugging information (@pxref{Installing Debugging Files}). The outputs " | |
6937 | "of a packages are listed in the third column of the output of @command{guix " | |
6938 | "package --list-available} (@pxref{Invoking guix package})." | |
6939 | msgstr "" | |
6940 | ||
6941 | #. type: section | |
6942 | #: doc/guix.texi:2533 | |
6943 | #, no-wrap | |
6944 | msgid "Invoking @command{guix gc}" | |
6945 | msgstr "" | |
6946 | ||
6947 | #. type: cindex | |
6948 | #: doc/guix.texi:2535 | |
6949 | #, no-wrap | |
6950 | msgid "garbage collector" | |
6951 | msgstr "" | |
6952 | ||
6953 | #. type: cindex | |
6954 | #: doc/guix.texi:2536 | |
6955 | #, no-wrap | |
6956 | msgid "disk space" | |
6957 | msgstr "" | |
6958 | ||
6959 | #. type: Plain text | |
6960 | #: doc/guix.texi:2542 | |
6961 | msgid "" | |
6962 | "Packages that are installed, but not used, may be @dfn{garbage-collected}. " | |
6963 | "The @command{guix gc} command allows users to explicitly run the garbage " | |
6964 | "collector to reclaim space from the @file{/gnu/store} directory. It is the " | |
6965 | "@emph{only} way to remove files from @file{/gnu/store}---removing files or " | |
6966 | "directories manually may break it beyond repair!" | |
6967 | msgstr "" | |
6968 | ||
6969 | #. type: Plain text | |
6970 | #: doc/guix.texi:2553 | |
6971 | msgid "" | |
39764ef8 JL |
6972 | "The garbage collector has a set of known @dfn{roots}: any file under @file{/" |
6973 | "gnu/store} reachable from a root is considered @dfn{live} and cannot be " | |
6974 | "deleted; any other file is considered @dfn{dead} and may be deleted. The " | |
b9fe8fd6 JL |
6975 | "set of garbage collector roots (``GC roots'' for short) includes default " |
6976 | "user profiles; by default, the symlinks under @file{/var/guix/gcroots} " | |
6977 | "represent these GC roots. New GC roots can be added with @command{guix " | |
6978 | "build --root}, for example (@pxref{Invoking guix build})." | |
6979 | msgstr "" | |
6980 | ||
6981 | #. type: Plain text | |
6982 | #: doc/guix.texi:2559 | |
6983 | msgid "" | |
6984 | "Prior to running @code{guix gc --collect-garbage} to make space, it is often " | |
6985 | "useful to remove old generations from user profiles; that way, old package " | |
6986 | "builds referenced by those generations can be reclaimed. This is achieved " | |
6987 | "by running @code{guix package --delete-generations} (@pxref{Invoking guix " | |
6988 | "package})." | |
6989 | msgstr "" | |
6990 | ||
6991 | #. type: Plain text | |
6992 | #: doc/guix.texi:2563 | |
6993 | msgid "" | |
6994 | "Our recommendation is to run a garbage collection periodically, or when you " | |
6995 | "are short on disk space. For instance, to guarantee that at least 5@tie{}GB " | |
6996 | "are available on your disk, simply run:" | |
6997 | msgstr "" | |
6998 | ||
6999 | #. type: example | |
7000 | #: doc/guix.texi:2566 | |
7001 | #, no-wrap | |
7002 | msgid "guix gc -F 5G\n" | |
7003 | msgstr "" | |
7004 | ||
7005 | #. type: Plain text | |
7006 | #: doc/guix.texi:2575 | |
7007 | msgid "" | |
7008 | "It is perfectly safe to run as a non-interactive periodic job " | |
7009 | "(@pxref{Scheduled Job Execution}, for how to set up such a job on GuixSD). " | |
7010 | "Running @command{guix gc} with no arguments will collect as much garbage as " | |
7011 | "it can, but that is often inconvenient: you may find yourself having to " | |
7012 | "rebuild or re-download software that is ``dead'' from the GC viewpoint but " | |
7013 | "that is necessary to build other pieces of software---e.g., the compiler " | |
7014 | "tool chain." | |
7015 | msgstr "" | |
7016 | ||
7017 | #. type: Plain text | |
7018 | #: doc/guix.texi:2581 | |
7019 | msgid "" | |
7020 | "The @command{guix gc} command has three modes of operation: it can be used " | |
7021 | "to garbage-collect any dead files (the default), to delete specific files " | |
7022 | "(the @code{--delete} option), to print garbage-collector information, or for " | |
7023 | "more advanced queries. The garbage collection options are as follows:" | |
7024 | msgstr "" | |
7025 | ||
7026 | #. type: item | |
7027 | #: doc/guix.texi:2583 | |
7028 | #, no-wrap | |
7029 | msgid "--collect-garbage[=@var{min}]" | |
7030 | msgstr "" | |
7031 | ||
7032 | #. type: itemx | |
7033 | #: doc/guix.texi:2584 | |
7034 | #, no-wrap | |
7035 | msgid "-C [@var{min}]" | |
7036 | msgstr "" | |
7037 | ||
7038 | #. type: table | |
7039 | #: doc/guix.texi:2588 | |
7040 | msgid "" | |
39764ef8 JL |
7041 | "Collect garbage---i.e., unreachable @file{/gnu/store} files and sub-" |
7042 | "directories. This is the default operation when no option is specified." | |
b9fe8fd6 JL |
7043 | msgstr "" |
7044 | ||
7045 | #. type: table | |
7046 | #: doc/guix.texi:2593 | |
7047 | msgid "" | |
7048 | "When @var{min} is given, stop once @var{min} bytes have been collected. " | |
7049 | "@var{min} may be a number of bytes, or it may include a unit as a suffix, " | |
7050 | "such as @code{MiB} for mebibytes and @code{GB} for gigabytes (@pxref{Block " | |
7051 | "size, size specifications,, coreutils, GNU Coreutils})." | |
7052 | msgstr "" | |
7053 | ||
7054 | #. type: table | |
7055 | #: doc/guix.texi:2595 | |
7056 | msgid "When @var{min} is omitted, collect all the garbage." | |
7057 | msgstr "" | |
7058 | ||
7059 | #. type: item | |
7060 | #: doc/guix.texi:2596 | |
7061 | #, no-wrap | |
7062 | msgid "--free-space=@var{free}" | |
7063 | msgstr "" | |
7064 | ||
7065 | #. type: itemx | |
7066 | #: doc/guix.texi:2597 | |
7067 | #, no-wrap | |
7068 | msgid "-F @var{free}" | |
7069 | msgstr "" | |
7070 | ||
7071 | #. type: table | |
7072 | #: doc/guix.texi:2601 | |
7073 | msgid "" | |
7074 | "Collect garbage until @var{free} space is available under @file{/gnu/store}, " | |
7075 | "if possible; @var{free} denotes storage space, such as @code{500MiB}, as " | |
7076 | "described above." | |
7077 | msgstr "" | |
7078 | ||
7079 | #. type: table | |
7080 | #: doc/guix.texi:2604 | |
7081 | msgid "" | |
7082 | "When @var{free} or more is already available in @file{/gnu/store}, do " | |
7083 | "nothing and exit immediately." | |
7084 | msgstr "" | |
7085 | ||
7086 | #. type: item | |
7087 | #: doc/guix.texi:2605 | |
7088 | #, no-wrap | |
7089 | msgid "--delete" | |
7090 | msgstr "" | |
7091 | ||
7092 | #. type: itemx | |
39764ef8 | 7093 | #: doc/guix.texi:2606 doc/guix.texi:5840 doc/guix.texi:20598 |
b9fe8fd6 JL |
7094 | #, no-wrap |
7095 | msgid "-d" | |
7096 | msgstr "" | |
7097 | ||
7098 | #. type: table | |
7099 | #: doc/guix.texi:2610 | |
7100 | msgid "" | |
7101 | "Attempt to delete all the store files and directories specified as " | |
7102 | "arguments. This fails if some of the files are not in the store, or if they " | |
7103 | "are still live." | |
7104 | msgstr "" | |
7105 | ||
7106 | #. type: item | |
7107 | #: doc/guix.texi:2611 | |
7108 | #, no-wrap | |
7109 | msgid "--list-failures" | |
7110 | msgstr "" | |
7111 | ||
7112 | #. type: table | |
7113 | #: doc/guix.texi:2613 | |
7114 | msgid "List store items corresponding to cached build failures." | |
7115 | msgstr "" | |
7116 | ||
7117 | #. type: table | |
7118 | #: doc/guix.texi:2617 | |
7119 | msgid "" | |
39764ef8 JL |
7120 | "This prints nothing unless the daemon was started with @option{--cache-" |
7121 | "failures} (@pxref{Invoking guix-daemon, @option{--cache-failures}})." | |
b9fe8fd6 JL |
7122 | msgstr "" |
7123 | ||
7124 | #. type: item | |
7125 | #: doc/guix.texi:2618 | |
7126 | #, no-wrap | |
7127 | msgid "--clear-failures" | |
7128 | msgstr "" | |
7129 | ||
7130 | #. type: table | |
7131 | #: doc/guix.texi:2620 | |
7132 | msgid "Remove the specified store items from the failed-build cache." | |
7133 | msgstr "" | |
7134 | ||
7135 | #. type: table | |
7136 | #: doc/guix.texi:2623 | |
7137 | msgid "" | |
7138 | "Again, this option only makes sense when the daemon is started with " | |
7139 | "@option{--cache-failures}. Otherwise, it does nothing." | |
7140 | msgstr "" | |
7141 | ||
7142 | #. type: item | |
7143 | #: doc/guix.texi:2624 | |
7144 | #, no-wrap | |
7145 | msgid "--list-dead" | |
7146 | msgstr "" | |
7147 | ||
7148 | #. type: table | |
7149 | #: doc/guix.texi:2627 | |
7150 | msgid "" | |
39764ef8 JL |
7151 | "Show the list of dead files and directories still present in the store---i." |
7152 | "e., files and directories no longer reachable from any root." | |
b9fe8fd6 JL |
7153 | msgstr "" |
7154 | ||
7155 | #. type: item | |
7156 | #: doc/guix.texi:2628 | |
7157 | #, no-wrap | |
7158 | msgid "--list-live" | |
7159 | msgstr "" | |
7160 | ||
7161 | #. type: table | |
7162 | #: doc/guix.texi:2630 | |
7163 | msgid "Show the list of live store files and directories." | |
7164 | msgstr "" | |
7165 | ||
7166 | #. type: Plain text | |
7167 | #: doc/guix.texi:2634 | |
7168 | msgid "In addition, the references among existing store files can be queried:" | |
7169 | msgstr "" | |
7170 | ||
7171 | #. type: item | |
7172 | #: doc/guix.texi:2637 | |
7173 | #, no-wrap | |
7174 | msgid "--references" | |
7175 | msgstr "" | |
7176 | ||
7177 | #. type: itemx | |
7178 | #: doc/guix.texi:2638 | |
7179 | #, no-wrap | |
7180 | msgid "--referrers" | |
7181 | msgstr "" | |
7182 | ||
7183 | #. type: cindex | |
7184 | #: doc/guix.texi:2639 doc/guix.texi:6935 | |
7185 | #, no-wrap | |
7186 | msgid "package dependencies" | |
7187 | msgstr "" | |
7188 | ||
7189 | #. type: table | |
7190 | #: doc/guix.texi:2642 | |
7191 | msgid "" | |
7192 | "List the references (respectively, the referrers) of store files given as " | |
7193 | "arguments." | |
7194 | msgstr "" | |
7195 | ||
7196 | #. type: item | |
7197 | #: doc/guix.texi:2643 | |
7198 | #, no-wrap | |
7199 | msgid "--requisites" | |
7200 | msgstr "" | |
7201 | ||
7202 | #. type: itemx | |
7203 | #: doc/guix.texi:2644 | |
7204 | #, no-wrap | |
7205 | msgid "-R" | |
7206 | msgstr "" | |
7207 | ||
7208 | #. type: item | |
7209 | #: doc/guix.texi:2645 doc/guix.texi:6819 doc/guix.texi:6843 doc/guix.texi:6907 | |
7210 | #, no-wrap | |
7211 | msgid "closure" | |
7212 | msgstr "" | |
7213 | ||
7214 | #. type: table | |
7215 | #: doc/guix.texi:2650 | |
7216 | msgid "" | |
7217 | "List the requisites of the store files passed as arguments. Requisites " | |
7218 | "include the store files themselves, their references, and the references of " | |
7219 | "these, recursively. In other words, the returned list is the " | |
7220 | "@dfn{transitive closure} of the store files." | |
7221 | msgstr "" | |
7222 | ||
7223 | #. type: table | |
7224 | #: doc/guix.texi:2654 | |
7225 | msgid "" | |
7226 | "@xref{Invoking guix size}, for a tool to profile the size of the closure of " | |
7227 | "an element. @xref{Invoking guix graph}, for a tool to visualize the graph " | |
7228 | "of references." | |
7229 | msgstr "" | |
7230 | ||
7231 | #. type: item | |
7232 | #: doc/guix.texi:2655 | |
7233 | #, no-wrap | |
7234 | msgid "--derivers" | |
7235 | msgstr "" | |
7236 | ||
7237 | #. type: item | |
7238 | #: doc/guix.texi:2656 doc/guix.texi:3122 doc/guix.texi:7020 | |
7239 | #, no-wrap | |
7240 | msgid "derivation" | |
7241 | msgstr "" | |
7242 | ||
7243 | #. type: table | |
7244 | #: doc/guix.texi:2659 | |
7245 | msgid "" | |
7246 | "Return the derivation(s) leading to the given store items " | |
7247 | "(@pxref{Derivations})." | |
7248 | msgstr "" | |
7249 | ||
7250 | #. type: table | |
7251 | #: doc/guix.texi:2661 | |
7252 | msgid "For example, this command:" | |
7253 | msgstr "" | |
7254 | ||
7255 | #. type: example | |
7256 | #: doc/guix.texi:2664 | |
7257 | #, no-wrap | |
7258 | msgid "guix gc --derivers `guix package -I ^emacs$ | cut -f4`\n" | |
7259 | msgstr "" | |
7260 | ||
7261 | #. type: table | |
7262 | #: doc/guix.texi:2669 | |
7263 | msgid "" | |
7264 | "returns the @file{.drv} file(s) leading to the @code{emacs} package " | |
7265 | "installed in your profile." | |
7266 | msgstr "" | |
7267 | ||
7268 | #. type: table | |
7269 | #: doc/guix.texi:2673 | |
7270 | msgid "" | |
7271 | "Note that there may be zero matching @file{.drv} files, for instance because " | |
7272 | "these files have been garbage-collected. There can also be more than one " | |
7273 | "matching @file{.drv} due to fixed-output derivations." | |
7274 | msgstr "" | |
7275 | ||
7276 | #. type: Plain text | |
7277 | #: doc/guix.texi:2677 | |
7278 | msgid "" | |
7279 | "Lastly, the following options allow you to check the integrity of the store " | |
7280 | "and to control disk usage." | |
7281 | msgstr "" | |
7282 | ||
7283 | #. type: item | |
7284 | #: doc/guix.texi:2680 | |
7285 | #, no-wrap | |
7286 | msgid "--verify[=@var{options}]" | |
7287 | msgstr "" | |
7288 | ||
7289 | #. type: cindex | |
7290 | #: doc/guix.texi:2681 | |
7291 | #, no-wrap | |
7292 | msgid "integrity, of the store" | |
7293 | msgstr "" | |
7294 | ||
7295 | #. type: cindex | |
7296 | #: doc/guix.texi:2682 | |
7297 | #, no-wrap | |
7298 | msgid "integrity checking" | |
7299 | msgstr "" | |
7300 | ||
7301 | #. type: table | |
7302 | #: doc/guix.texi:2684 | |
7303 | msgid "Verify the integrity of the store." | |
7304 | msgstr "" | |
7305 | ||
7306 | #. type: table | |
7307 | #: doc/guix.texi:2687 | |
7308 | msgid "" | |
7309 | "By default, make sure that all the store items marked as valid in the " | |
7310 | "database of the daemon actually exist in @file{/gnu/store}." | |
7311 | msgstr "" | |
7312 | ||
7313 | #. type: table | |
7314 | #: doc/guix.texi:2690 | |
7315 | msgid "" | |
7316 | "When provided, @var{options} must be a comma-separated list containing one " | |
7317 | "or more of @code{contents} and @code{repair}." | |
7318 | msgstr "" | |
7319 | ||
7320 | #. type: table | |
7321 | #: doc/guix.texi:2696 | |
7322 | msgid "" | |
7323 | "When passing @option{--verify=contents}, the daemon computes the content " | |
7324 | "hash of each store item and compares it against its hash in the database. " | |
7325 | "Hash mismatches are reported as data corruptions. Because it traverses " | |
7326 | "@emph{all the files in the store}, this command can take a long time, " | |
7327 | "especially on systems with a slow disk drive." | |
7328 | msgstr "" | |
7329 | ||
7330 | #. type: cindex | |
7331 | #: doc/guix.texi:2697 | |
7332 | #, no-wrap | |
7333 | msgid "repairing the store" | |
7334 | msgstr "" | |
7335 | ||
7336 | #. type: cindex | |
7337 | #: doc/guix.texi:2698 doc/guix.texi:5833 | |
7338 | #, no-wrap | |
7339 | msgid "corruption, recovering from" | |
7340 | msgstr "" | |
7341 | ||
7342 | #. type: table | |
7343 | #: doc/guix.texi:2706 | |
7344 | msgid "" | |
7345 | "Using @option{--verify=repair} or @option{--verify=contents,repair} causes " | |
7346 | "the daemon to try to repair corrupt store items by fetching substitutes for " | |
7347 | "them (@pxref{Substitutes}). Because repairing is not atomic, and thus " | |
7348 | "potentially dangerous, it is available only to the system administrator. A " | |
7349 | "lightweight alternative, when you know exactly which items in the store are " | |
7350 | "corrupt, is @command{guix build --repair} (@pxref{Invoking guix build})." | |
7351 | msgstr "" | |
7352 | ||
7353 | #. type: item | |
7354 | #: doc/guix.texi:2707 | |
7355 | #, no-wrap | |
7356 | msgid "--optimize" | |
7357 | msgstr "" | |
7358 | ||
7359 | #. type: table | |
7360 | #: doc/guix.texi:2711 | |
7361 | msgid "" | |
7362 | "Optimize the store by hard-linking identical files---this is " | |
7363 | "@dfn{deduplication}." | |
7364 | msgstr "" | |
7365 | ||
7366 | #. type: table | |
7367 | #: doc/guix.texi:2717 | |
7368 | msgid "" | |
7369 | "The daemon performs deduplication after each successful build or archive " | |
7370 | "import, unless it was started with @code{--disable-deduplication} " | |
7371 | "(@pxref{Invoking guix-daemon, @code{--disable-deduplication}}). Thus, this " | |
39764ef8 JL |
7372 | "option is primarily useful when the daemon was running with @code{--disable-" |
7373 | "deduplication}." | |
b9fe8fd6 JL |
7374 | msgstr "" |
7375 | ||
7376 | #. type: section | |
7377 | #: doc/guix.texi:2721 | |
7378 | #, no-wrap | |
7379 | msgid "Invoking @command{guix pull}" | |
7380 | msgstr "" | |
7381 | ||
7382 | #. type: cindex | |
7383 | #: doc/guix.texi:2723 | |
7384 | #, no-wrap | |
7385 | msgid "upgrading Guix" | |
7386 | msgstr "" | |
7387 | ||
7388 | #. type: cindex | |
7389 | #: doc/guix.texi:2724 | |
7390 | #, no-wrap | |
7391 | msgid "updating Guix" | |
7392 | msgstr "" | |
7393 | ||
7394 | #. type: command{#1} | |
7395 | #: doc/guix.texi:2725 | |
7396 | #, no-wrap | |
7397 | msgid "guix pull" | |
7398 | msgstr "" | |
7399 | ||
7400 | #. type: cindex | |
7401 | #: doc/guix.texi:2726 | |
7402 | #, no-wrap | |
7403 | msgid "pull" | |
7404 | msgstr "" | |
7405 | ||
7406 | #. type: Plain text | |
7407 | #: doc/guix.texi:2733 | |
7408 | msgid "" | |
7409 | "Packages are installed or upgraded to the latest version available in the " | |
7410 | "distribution currently available on your local machine. To update that " | |
7411 | "distribution, along with the Guix tools, you must run @command{guix pull}: " | |
7412 | "the command downloads the latest Guix source code and package descriptions, " | |
7413 | "and deploys it. Source code is downloaded from a @uref{https://git-scm.com, " | |
7414 | "Git} repository." | |
7415 | msgstr "" | |
7416 | ||
7417 | #. type: Plain text | |
7418 | #: doc/guix.texi:2739 | |
7419 | msgid "" | |
7420 | "On completion, @command{guix package} will use packages and package versions " | |
7421 | "from this just-retrieved copy of Guix. Not only that, but all the Guix " | |
7422 | "commands and Scheme modules will also be taken from that latest version. " | |
7423 | "New @command{guix} sub-commands added by the update also become available." | |
7424 | msgstr "" | |
7425 | ||
7426 | #. type: Plain text | |
7427 | #: doc/guix.texi:2749 | |
7428 | msgid "" | |
7429 | "Any user can update their Guix copy using @command{guix pull}, and the " | |
7430 | "effect is limited to the user who run @command{guix pull}. For instance, " | |
7431 | "when user @code{root} runs @command{guix pull}, this has no effect on the " | |
7432 | "version of Guix that user @code{alice} sees, and vice versa@footnote{Under " | |
7433 | "the hood, @command{guix pull} updates the @file{~/.config/guix/latest} " | |
7434 | "symbolic link to point to the latest Guix, and the @command{guix} command " | |
7435 | "loads code from there. Currently, the only way to roll back an invocation " | |
7436 | "of @command{guix pull} is to manually update this symlink to point to the " | |
7437 | "previous Guix.}." | |
7438 | msgstr "" | |
7439 | ||
7440 | #. type: Plain text | |
7441 | #: doc/guix.texi:2752 | |
7442 | msgid "" | |
7443 | "The @command{guix pull} command is usually invoked with no arguments, but it " | |
7444 | "supports the following options:" | |
7445 | msgstr "" | |
7446 | ||
7447 | #. type: table | |
7448 | #: doc/guix.texi:2756 | |
39764ef8 JL |
7449 | msgid "" |
7450 | "Produce verbose output, writing build logs to the standard error output." | |
b9fe8fd6 JL |
7451 | msgstr "" |
7452 | ||
7453 | #. type: item | |
7454 | #: doc/guix.texi:2757 | |
7455 | #, no-wrap | |
7456 | msgid "--url=@var{url}" | |
7457 | msgstr "" | |
7458 | ||
7459 | #. type: table | |
7460 | #: doc/guix.texi:2759 | |
7461 | msgid "Download Guix from the Git repository at @var{url}." | |
7462 | msgstr "" | |
7463 | ||
7464 | #. type: vindex | |
7465 | #: doc/guix.texi:2760 | |
7466 | #, no-wrap | |
7467 | msgid "GUIX_PULL_URL" | |
7468 | msgstr "" | |
7469 | ||
7470 | #. type: table | |
7471 | #: doc/guix.texi:2764 | |
7472 | msgid "" | |
7473 | "By default, the source is taken from its canonical Git repository at " | |
7474 | "@code{gnu.org}, for the stable branch of Guix. To use a different source, " | |
7475 | "set the @code{GUIX_PULL_URL} environment variable." | |
7476 | msgstr "" | |
7477 | ||
7478 | #. type: item | |
7479 | #: doc/guix.texi:2765 | |
7480 | #, no-wrap | |
7481 | msgid "--commit=@var{commit}" | |
7482 | msgstr "" | |
7483 | ||
7484 | #. type: table | |
7485 | #: doc/guix.texi:2768 | |
7486 | msgid "" | |
7487 | "Deploy @var{commit}, a valid Git commit ID represented as a hexadecimal " | |
7488 | "string." | |
7489 | msgstr "" | |
7490 | ||
7491 | #. type: item | |
7492 | #: doc/guix.texi:2769 | |
7493 | #, no-wrap | |
7494 | msgid "--branch=@var{branch}" | |
7495 | msgstr "" | |
7496 | ||
7497 | #. type: table | |
7498 | #: doc/guix.texi:2772 | |
7499 | msgid "" | |
7500 | "Deploy the tip of @var{branch}, the name of a Git branch available on the " | |
7501 | "repository at @var{url}." | |
7502 | msgstr "" | |
7503 | ||
7504 | #. type: table | |
7505 | #: doc/guix.texi:2776 | |
7506 | msgid "" | |
7507 | "Use the bootstrap Guile to build the latest Guix. This option is only " | |
7508 | "useful to Guix developers." | |
7509 | msgstr "" | |
7510 | ||
7511 | #. type: Plain text | |
7512 | #: doc/guix.texi:2780 | |
7513 | msgid "" | |
7514 | "In addition, @command{guix pull} supports all the common build options " | |
7515 | "(@pxref{Common Build Options})." | |
7516 | msgstr "" | |
7517 | ||
7518 | #. type: section | |
7519 | #: doc/guix.texi:2782 | |
7520 | #, no-wrap | |
7521 | msgid "Invoking @command{guix pack}" | |
7522 | msgstr "" | |
7523 | ||
7524 | #. type: Plain text | |
7525 | #: doc/guix.texi:2788 | |
7526 | msgid "" | |
7527 | "Occasionally you want to pass software to people who are not (yet!) lucky " | |
7528 | "enough to be using Guix. You'd tell them to run @command{guix package -i " | |
7529 | "@var{something}}, but that's not possible in this case. This is where " | |
7530 | "@command{guix pack} comes in." | |
7531 | msgstr "" | |
7532 | ||
7533 | #. type: quotation | |
7534 | #: doc/guix.texi:2793 | |
7535 | msgid "" | |
7536 | "If you are looking for ways to exchange binaries among machines that already " | |
7537 | "run Guix, @pxref{Invoking guix copy}, @ref{Invoking guix publish}, and " | |
7538 | "@ref{Invoking guix archive}." | |
7539 | msgstr "" | |
7540 | ||
7541 | #. type: cindex | |
7542 | #: doc/guix.texi:2795 | |
7543 | #, no-wrap | |
7544 | msgid "pack" | |
7545 | msgstr "" | |
7546 | ||
7547 | #. type: cindex | |
7548 | #: doc/guix.texi:2796 | |
7549 | #, no-wrap | |
7550 | msgid "bundle" | |
7551 | msgstr "" | |
7552 | ||
7553 | #. type: cindex | |
7554 | #: doc/guix.texi:2797 | |
7555 | #, no-wrap | |
7556 | msgid "application bundle" | |
7557 | msgstr "" | |
7558 | ||
7559 | #. type: cindex | |
7560 | #: doc/guix.texi:2798 | |
7561 | #, no-wrap | |
7562 | msgid "software bundle" | |
7563 | msgstr "" | |
7564 | ||
7565 | #. type: Plain text | |
7566 | #: doc/guix.texi:2807 | |
7567 | msgid "" | |
7568 | "The @command{guix pack} command creates a shrink-wrapped @dfn{pack} or " | |
7569 | "@dfn{software bundle}: it creates a tarball or some other archive containing " | |
7570 | "the binaries of the software you're interested in, and all its " | |
7571 | "dependencies. The resulting archive can be used on any machine that does " | |
7572 | "not have Guix, and people can run the exact same binaries as those you have " | |
7573 | "with Guix. The pack itself is created in a bit-reproducible fashion, so " | |
7574 | "anyone can verify that it really contains the build results that you pretend " | |
7575 | "to be shipping." | |
7576 | msgstr "" | |
7577 | ||
7578 | #. type: Plain text | |
7579 | #: doc/guix.texi:2810 | |
7580 | msgid "" | |
7581 | "For example, to create a bundle containing Guile, Emacs, Geiser, and all " | |
7582 | "their dependencies, you can run:" | |
7583 | msgstr "" | |
7584 | ||
7585 | #. type: example | |
7586 | #: doc/guix.texi:2815 | |
7587 | #, no-wrap | |
7588 | msgid "" | |
7589 | "$ guix pack guile emacs geiser\n" | |
7590 | "@dots{}\n" | |
7591 | "/gnu/store/@dots{}-pack.tar.gz\n" | |
7592 | msgstr "" | |
7593 | ||
7594 | #. type: Plain text | |
7595 | #: doc/guix.texi:2823 | |
7596 | msgid "" | |
7597 | "The result here is a tarball containing a @file{/gnu/store} directory with " | |
7598 | "all the relevant packages. The resulting tarball contains a @dfn{profile} " | |
7599 | "with the three packages of interest; the profile is the same as would be " | |
7600 | "created by @command{guix package -i}. It is this mechanism that is used to " | |
7601 | "create Guix's own standalone binary tarball (@pxref{Binary Installation})." | |
7602 | msgstr "" | |
7603 | ||
7604 | #. type: Plain text | |
7605 | #: doc/guix.texi:2828 | |
7606 | msgid "" | |
39764ef8 JL |
7607 | "Users of this pack would have to run @file{/gnu/store/@dots{}-profile/bin/" |
7608 | "guile} to run Guile, which you may find inconvenient. To work around it, " | |
7609 | "you can create, say, a @file{/opt/gnu/bin} symlink to the profile:" | |
b9fe8fd6 JL |
7610 | msgstr "" |
7611 | ||
7612 | #. type: example | |
7613 | #: doc/guix.texi:2831 | |
7614 | #, no-wrap | |
7615 | msgid "guix pack -S /opt/gnu/bin=bin guile emacs geiser\n" | |
7616 | msgstr "" | |
7617 | ||
7618 | #. type: Plain text | |
7619 | #: doc/guix.texi:2835 | |
7620 | msgid "That way, users can happily type @file{/opt/gnu/bin/guile} and enjoy." | |
7621 | msgstr "" | |
7622 | ||
7623 | #. type: Plain text | |
7624 | #: doc/guix.texi:2838 | |
7625 | msgid "" | |
7626 | "Alternatively, you can produce a pack in the Docker image format using the " | |
7627 | "following command:" | |
7628 | msgstr "" | |
7629 | ||
7630 | #. type: example | |
7631 | #: doc/guix.texi:2841 | |
7632 | #, no-wrap | |
7633 | msgid "guix pack -f docker guile emacs geiser\n" | |
7634 | msgstr "" | |
7635 | ||
7636 | #. type: Plain text | |
7637 | #: doc/guix.texi:2848 | |
7638 | msgid "" | |
7639 | "The result is a tarball that can be passed to the @command{docker load} " | |
39764ef8 JL |
7640 | "command. See the @uref{https://docs.docker.com/engine/reference/commandline/" |
7641 | "load/, Docker documentation} for more information." | |
b9fe8fd6 JL |
7642 | msgstr "" |
7643 | ||
7644 | #. type: Plain text | |
7645 | #: doc/guix.texi:2850 | |
7646 | msgid "Several command-line options allow you to customize your pack:" | |
7647 | msgstr "" | |
7648 | ||
7649 | #. type: item | |
7650 | #: doc/guix.texi:2852 | |
7651 | #, no-wrap | |
7652 | msgid "--format=@var{format}" | |
7653 | msgstr "" | |
7654 | ||
7655 | #. type: itemx | |
7656 | #: doc/guix.texi:2853 | |
7657 | #, no-wrap | |
7658 | msgid "-f @var{format}" | |
7659 | msgstr "" | |
7660 | ||
7661 | #. type: table | |
7662 | #: doc/guix.texi:2855 | |
7663 | msgid "Produce a pack in the given @var{format}." | |
7664 | msgstr "" | |
7665 | ||
7666 | #. type: table | |
7667 | #: doc/guix.texi:2857 | |
7668 | msgid "The available formats are:" | |
7669 | msgstr "" | |
7670 | ||
7671 | #. type: item | |
7672 | #: doc/guix.texi:2859 | |
7673 | #, no-wrap | |
7674 | msgid "tarball" | |
7675 | msgstr "" | |
7676 | ||
7677 | #. type: table | |
7678 | #: doc/guix.texi:2862 | |
7679 | msgid "" | |
7680 | "This is the default format. It produces a tarball containing all the " | |
7681 | "specified binaries and symlinks." | |
7682 | msgstr "" | |
7683 | ||
7684 | #. type: item | |
7685 | #: doc/guix.texi:2863 | |
7686 | #, no-wrap | |
7687 | msgid "docker" | |
7688 | msgstr "" | |
7689 | ||
7690 | #. type: table | |
7691 | #: doc/guix.texi:2867 | |
7692 | msgid "" | |
39764ef8 JL |
7693 | "This produces a tarball that follows the @uref{https://github.com/docker/" |
7694 | "docker/blob/master/image/spec/v1.2.md, Docker Image Specification}." | |
b9fe8fd6 JL |
7695 | msgstr "" |
7696 | ||
7697 | #. type: item | |
39764ef8 JL |
7698 | #: doc/guix.texi:2869 doc/guix.texi:5711 doc/guix.texi:6536 doc/guix.texi:7097 |
7699 | #: doc/guix.texi:7247 doc/guix.texi:20584 | |
b9fe8fd6 JL |
7700 | #, no-wrap |
7701 | msgid "--expression=@var{expr}" | |
7702 | msgstr "" | |
7703 | ||
7704 | #. type: itemx | |
39764ef8 JL |
7705 | #: doc/guix.texi:2870 doc/guix.texi:5712 doc/guix.texi:6537 doc/guix.texi:7098 |
7706 | #: doc/guix.texi:7248 doc/guix.texi:20585 | |
b9fe8fd6 JL |
7707 | #, no-wrap |
7708 | msgid "-e @var{expr}" | |
7709 | msgstr "" | |
7710 | ||
7711 | #. type: table | |
7712 | #: doc/guix.texi:2872 doc/guix.texi:6539 doc/guix.texi:7100 | |
7713 | msgid "Consider the package @var{expr} evaluates to." | |
7714 | msgstr "" | |
7715 | ||
7716 | #. type: table | |
7717 | #: doc/guix.texi:2876 | |
7718 | msgid "" | |
7719 | "This has the same purpose as the same-named option in @command{guix build} " | |
7720 | "(@pxref{Additional Build Options, @code{--expression} in @command{guix " | |
7721 | "build}})." | |
7722 | msgstr "" | |
7723 | ||
7724 | #. type: table | |
7725 | #: doc/guix.texi:2881 | |
7726 | msgid "" | |
7727 | "Use the packages contained in the manifest object returned by the Scheme " | |
7728 | "code in @var{file}." | |
7729 | msgstr "" | |
7730 | ||
7731 | #. type: table | |
7732 | #: doc/guix.texi:2889 | |
7733 | msgid "" | |
7734 | "This has a similar purpose as the same-named option in @command{guix " | |
7735 | "package} (@pxref{profile-manifest, @option{--manifest}}) and uses the same " | |
7736 | "manifest files. It allows you to define a collection of packages once and " | |
7737 | "use it both for creating profiles and for creating archives for use on " | |
7738 | "machines that do not have Guix installed. Note that you can specify " | |
7739 | "@emph{either} a manifest file @emph{or} a list of packages, but not both." | |
7740 | msgstr "" | |
7741 | ||
7742 | #. type: itemx | |
39764ef8 JL |
7743 | #: doc/guix.texi:2891 doc/guix.texi:5784 doc/guix.texi:6925 doc/guix.texi:7333 |
7744 | #: doc/guix.texi:7967 doc/guix.texi:20593 | |
b9fe8fd6 JL |
7745 | #, no-wrap |
7746 | msgid "-s @var{system}" | |
7747 | msgstr "" | |
7748 | ||
7749 | #. type: table | |
7750 | #: doc/guix.texi:2894 doc/guix.texi:5787 | |
7751 | msgid "" | |
7752 | "Attempt to build for @var{system}---e.g., @code{i686-linux}---instead of the " | |
7753 | "system type of the build host." | |
7754 | msgstr "" | |
7755 | ||
7756 | #. type: item | |
7757 | #: doc/guix.texi:2895 doc/guix.texi:5808 | |
7758 | #, no-wrap | |
7759 | msgid "--target=@var{triplet}" | |
7760 | msgstr "" | |
7761 | ||
7762 | #. type: cindex | |
7763 | #: doc/guix.texi:2896 doc/guix.texi:3322 doc/guix.texi:5809 | |
7764 | #, no-wrap | |
7765 | msgid "cross-compilation" | |
7766 | msgstr "" | |
7767 | ||
7768 | #. type: table | |
7769 | #: doc/guix.texi:2900 doc/guix.texi:5813 | |
7770 | msgid "" | |
7771 | "Cross-build for @var{triplet}, which must be a valid GNU triplet, such as " | |
7772 | "@code{\"mips64el-linux-gnu\"} (@pxref{Specifying target triplets, GNU " | |
7773 | "configuration triplets,, autoconf, Autoconf})." | |
7774 | msgstr "" | |
7775 | ||
7776 | #. type: item | |
7777 | #: doc/guix.texi:2901 | |
7778 | #, no-wrap | |
7779 | msgid "--compression=@var{tool}" | |
7780 | msgstr "" | |
7781 | ||
7782 | #. type: itemx | |
7783 | #: doc/guix.texi:2902 | |
7784 | #, no-wrap | |
7785 | msgid "-C @var{tool}" | |
7786 | msgstr "" | |
7787 | ||
7788 | #. type: table | |
7789 | #: doc/guix.texi:2905 | |
7790 | msgid "" | |
7791 | "Compress the resulting tarball using @var{tool}---one of @code{gzip}, " | |
7792 | "@code{bzip2}, @code{xz}, @code{lzip}, or @code{none} for no compression." | |
7793 | msgstr "" | |
7794 | ||
7795 | #. type: item | |
7796 | #: doc/guix.texi:2906 | |
7797 | #, no-wrap | |
7798 | msgid "--symlink=@var{spec}" | |
7799 | msgstr "" | |
7800 | ||
7801 | #. type: itemx | |
7802 | #: doc/guix.texi:2907 | |
7803 | #, no-wrap | |
7804 | msgid "-S @var{spec}" | |
7805 | msgstr "" | |
7806 | ||
7807 | #. type: table | |
7808 | #: doc/guix.texi:2910 | |
7809 | msgid "" | |
7810 | "Add the symlinks specified by @var{spec} to the pack. This option can " | |
7811 | "appear several times." | |
7812 | msgstr "" | |
7813 | ||
7814 | #. type: table | |
7815 | #: doc/guix.texi:2914 | |
7816 | msgid "" | |
7817 | "@var{spec} has the form @code{@var{source}=@var{target}}, where @var{source} " | |
7818 | "is the symlink that will be created and @var{target} is the symlink target." | |
7819 | msgstr "" | |
7820 | ||
7821 | #. type: table | |
7822 | #: doc/guix.texi:2917 | |
7823 | msgid "" | |
7824 | "For instance, @code{-S /opt/gnu/bin=bin} creates a @file{/opt/gnu/bin} " | |
7825 | "symlink pointing to the @file{bin} sub-directory of the profile." | |
7826 | msgstr "" | |
7827 | ||
7828 | #. type: item | |
7829 | #: doc/guix.texi:2918 | |
7830 | #, no-wrap | |
7831 | msgid "--localstatedir" | |
7832 | msgstr "" | |
7833 | ||
7834 | #. type: table | |
7835 | #: doc/guix.texi:2921 | |
7836 | msgid "" | |
7837 | "Include the ``local state directory'', @file{/var/guix}, in the resulting " | |
7838 | "pack." | |
7839 | msgstr "" | |
7840 | ||
7841 | #. type: table | |
7842 | #: doc/guix.texi:2927 | |
7843 | msgid "" | |
7844 | "@file{/var/guix} contains the store database (@pxref{The Store}) as well as " | |
7845 | "garbage-collector roots (@pxref{Invoking guix gc}). Providing it in the " | |
7846 | "pack means that the store is ``complete'' and manageable by Guix; not " | |
7847 | "providing it pack means that the store is ``dead'': items cannot be added to " | |
7848 | "it or removed from it after extraction of the pack." | |
7849 | msgstr "" | |
7850 | ||
7851 | #. type: table | |
7852 | #: doc/guix.texi:2930 | |
7853 | msgid "" | |
7854 | "One use case for this is the Guix self-contained binary tarball " | |
7855 | "(@pxref{Binary Installation})." | |
7856 | msgstr "" | |
7857 | ||
7858 | #. type: table | |
7859 | #: doc/guix.texi:2934 | |
7860 | msgid "" | |
7861 | "Use the bootstrap binaries to build the pack. This option is only useful to " | |
7862 | "Guix developers." | |
7863 | msgstr "" | |
7864 | ||
7865 | #. type: Plain text | |
7866 | #: doc/guix.texi:2939 | |
7867 | msgid "" | |
7868 | "In addition, @command{guix pack} supports all the common build options " | |
7869 | "(@pxref{Common Build Options}) and all the package transformation options " | |
7870 | "(@pxref{Package Transformation Options})." | |
7871 | msgstr "" | |
7872 | ||
7873 | #. type: section | |
7874 | #: doc/guix.texi:2942 | |
7875 | #, no-wrap | |
7876 | msgid "Invoking @command{guix archive}" | |
7877 | msgstr "" | |
7878 | ||
7879 | #. type: command{#1} | |
7880 | #: doc/guix.texi:2944 | |
7881 | #, no-wrap | |
7882 | msgid "guix archive" | |
7883 | msgstr "" | |
7884 | ||
7885 | #. type: cindex | |
7886 | #: doc/guix.texi:2945 | |
7887 | #, no-wrap | |
7888 | msgid "archive" | |
7889 | msgstr "" | |
7890 | ||
7891 | #. type: Plain text | |
7892 | #: doc/guix.texi:2951 | |
7893 | msgid "" | |
7894 | "The @command{guix archive} command allows users to @dfn{export} files from " | |
7895 | "the store into a single archive, and to later @dfn{import} them on a machine " | |
7896 | "that runs Guix. In particular, it allows store files to be transferred from " | |
7897 | "one machine to the store on another machine." | |
7898 | msgstr "" | |
7899 | ||
7900 | #. type: quotation | |
7901 | #: doc/guix.texi:2955 | |
7902 | msgid "" | |
7903 | "If you're looking for a way to produce archives in a format suitable for " | |
7904 | "tools other than Guix, @pxref{Invoking guix pack}." | |
7905 | msgstr "" | |
7906 | ||
7907 | #. type: cindex | |
7908 | #: doc/guix.texi:2957 | |
7909 | #, no-wrap | |
7910 | msgid "exporting store items" | |
7911 | msgstr "" | |
7912 | ||
7913 | #. type: Plain text | |
7914 | #: doc/guix.texi:2959 | |
7915 | msgid "To export store files as an archive to standard output, run:" | |
7916 | msgstr "" | |
7917 | ||
7918 | #. type: example | |
7919 | #: doc/guix.texi:2962 | |
7920 | #, no-wrap | |
7921 | msgid "guix archive --export @var{options} @var{specifications}...\n" | |
7922 | msgstr "" | |
7923 | ||
7924 | #. type: Plain text | |
7925 | #: doc/guix.texi:2969 | |
7926 | msgid "" | |
7927 | "@var{specifications} may be either store file names or package " | |
7928 | "specifications, as for @command{guix package} (@pxref{Invoking guix " | |
7929 | "package}). For instance, the following command creates an archive " | |
7930 | "containing the @code{gui} output of the @code{git} package and the main " | |
7931 | "output of @code{emacs}:" | |
7932 | msgstr "" | |
7933 | ||
7934 | #. type: example | |
7935 | #: doc/guix.texi:2972 | |
7936 | #, no-wrap | |
7937 | msgid "guix archive --export git:gui /gnu/store/...-emacs-24.3 > great.nar\n" | |
7938 | msgstr "" | |
7939 | ||
7940 | #. type: Plain text | |
7941 | #: doc/guix.texi:2977 | |
7942 | msgid "" | |
7943 | "If the specified packages are not built yet, @command{guix archive} " | |
7944 | "automatically builds them. The build process may be controlled with the " | |
7945 | "common build options (@pxref{Common Build Options})." | |
7946 | msgstr "" | |
7947 | ||
7948 | #. type: Plain text | |
7949 | #: doc/guix.texi:2980 | |
7950 | msgid "" | |
7951 | "To transfer the @code{emacs} package to a machine connected over SSH, one " | |
7952 | "would run:" | |
7953 | msgstr "" | |
7954 | ||
7955 | #. type: example | |
7956 | #: doc/guix.texi:2983 | |
7957 | #, no-wrap | |
7958 | msgid "guix archive --export -r emacs | ssh the-machine guix archive --import\n" | |
7959 | msgstr "" | |
7960 | ||
7961 | #. type: Plain text | |
7962 | #: doc/guix.texi:2988 | |
7963 | msgid "" | |
7964 | "Similarly, a complete user profile may be transferred from one machine to " | |
7965 | "another like this:" | |
7966 | msgstr "" | |
7967 | ||
7968 | #. type: example | |
7969 | #: doc/guix.texi:2992 | |
7970 | #, no-wrap | |
7971 | msgid "" | |
7972 | "guix archive --export -r $(readlink -f ~/.guix-profile) | \\\n" | |
7973 | " ssh the-machine guix-archive --import\n" | |
7974 | msgstr "" | |
7975 | ||
7976 | #. type: Plain text | |
7977 | #: doc/guix.texi:3002 | |
7978 | msgid "" | |
7979 | "However, note that, in both examples, all of @code{emacs} and the profile as " | |
7980 | "well as all of their dependencies are transferred (due to @code{-r}), " | |
7981 | "regardless of what is already available in the store on the target machine. " | |
7982 | "The @code{--missing} option can help figure out which items are missing from " | |
7983 | "the target store. The @command{guix copy} command simplifies and optimizes " | |
7984 | "this whole process, so this is probably what you should use in this case " | |
7985 | "(@pxref{Invoking guix copy})." | |
7986 | msgstr "" | |
7987 | ||
7988 | #. type: cindex | |
7989 | #: doc/guix.texi:3003 | |
7990 | #, no-wrap | |
7991 | msgid "nar, archive format" | |
7992 | msgstr "" | |
7993 | ||
7994 | #. type: cindex | |
7995 | #: doc/guix.texi:3004 | |
7996 | #, no-wrap | |
7997 | msgid "normalized archive (nar)" | |
7998 | msgstr "" | |
7999 | ||
8000 | #. type: Plain text | |
8001 | #: doc/guix.texi:3014 | |
8002 | msgid "" | |
8003 | "Archives are stored in the ``normalized archive'' or ``nar'' format, which " | |
8004 | "is comparable in spirit to `tar', but with differences that make it more " | |
8005 | "appropriate for our purposes. First, rather than recording all Unix " | |
8006 | "metadata for each file, the nar format only mentions the file type (regular, " | |
8007 | "directory, or symbolic link); Unix permissions and owner/group are " | |
8008 | "dismissed. Second, the order in which directory entries are stored always " | |
8009 | "follows the order of file names according to the C locale collation order. " | |
8010 | "This makes archive production fully deterministic." | |
8011 | msgstr "" | |
8012 | ||
8013 | #. type: Plain text | |
8014 | #: doc/guix.texi:3020 | |
8015 | msgid "" | |
8016 | "When exporting, the daemon digitally signs the contents of the archive, and " | |
8017 | "that digital signature is appended. When importing, the daemon verifies the " | |
8018 | "signature and rejects the import in case of an invalid signature or if the " | |
8019 | "signing key is not authorized." | |
8020 | msgstr "" | |
8021 | ||
8022 | #. type: Plain text | |
8023 | #: doc/guix.texi:3022 | |
8024 | msgid "The main options are:" | |
8025 | msgstr "" | |
8026 | ||
8027 | #. type: item | |
8028 | #: doc/guix.texi:3024 | |
8029 | #, no-wrap | |
8030 | msgid "--export" | |
8031 | msgstr "" | |
8032 | ||
8033 | #. type: table | |
8034 | #: doc/guix.texi:3027 | |
8035 | msgid "" | |
8036 | "Export the specified store files or packages (see below.) Write the " | |
8037 | "resulting archive to the standard output." | |
8038 | msgstr "" | |
8039 | ||
8040 | #. type: table | |
8041 | #: doc/guix.texi:3030 | |
8042 | msgid "" | |
39764ef8 JL |
8043 | "Dependencies are @emph{not} included in the output, unless @code{--" |
8044 | "recursive} is passed." | |
b9fe8fd6 JL |
8045 | msgstr "" |
8046 | ||
8047 | #. type: itemx | |
8048 | #: doc/guix.texi:3031 doc/guix.texi:6080 | |
8049 | #, no-wrap | |
8050 | msgid "-r" | |
8051 | msgstr "" | |
8052 | ||
8053 | #. type: item | |
8054 | #: doc/guix.texi:3032 doc/guix.texi:6079 | |
8055 | #, no-wrap | |
8056 | msgid "--recursive" | |
8057 | msgstr "" | |
8058 | ||
8059 | #. type: table | |
8060 | #: doc/guix.texi:3037 | |
8061 | msgid "" | |
8062 | "When combined with @code{--export}, this instructs @command{guix archive} to " | |
8063 | "include dependencies of the given items in the archive. Thus, the resulting " | |
8064 | "archive is self-contained: it contains the closure of the exported store " | |
8065 | "items." | |
8066 | msgstr "" | |
8067 | ||
8068 | #. type: item | |
8069 | #: doc/guix.texi:3038 | |
8070 | #, no-wrap | |
8071 | msgid "--import" | |
8072 | msgstr "" | |
8073 | ||
8074 | #. type: table | |
8075 | #: doc/guix.texi:3043 | |
8076 | msgid "" | |
8077 | "Read an archive from the standard input, and import the files listed therein " | |
8078 | "into the store. Abort if the archive has an invalid digital signature, or " | |
39764ef8 JL |
8079 | "if it is signed by a public key not among the authorized keys (see @code{--" |
8080 | "authorize} below.)" | |
b9fe8fd6 JL |
8081 | msgstr "" |
8082 | ||
8083 | #. type: item | |
8084 | #: doc/guix.texi:3044 | |
8085 | #, no-wrap | |
8086 | msgid "--missing" | |
8087 | msgstr "" | |
8088 | ||
8089 | #. type: table | |
8090 | #: doc/guix.texi:3048 | |
8091 | msgid "" | |
8092 | "Read a list of store file names from the standard input, one per line, and " | |
8093 | "write on the standard output the subset of these files missing from the " | |
8094 | "store." | |
8095 | msgstr "" | |
8096 | ||
8097 | #. type: item | |
8098 | #: doc/guix.texi:3049 | |
8099 | #, no-wrap | |
8100 | msgid "--generate-key[=@var{parameters}]" | |
8101 | msgstr "" | |
8102 | ||
8103 | #. type: cindex | |
8104 | #: doc/guix.texi:3050 | |
8105 | #, no-wrap | |
8106 | msgid "signing, archives" | |
8107 | msgstr "" | |
8108 | ||
8109 | #. type: table | |
8110 | #: doc/guix.texi:3055 | |
8111 | msgid "" | |
8112 | "Generate a new key pair for the daemon. This is a prerequisite before " | |
8113 | "archives can be exported with @code{--export}. Note that this operation " | |
8114 | "usually takes time, because it needs to gather enough entropy to generate " | |
8115 | "the key pair." | |
8116 | msgstr "" | |
8117 | ||
8118 | #. type: table | |
8119 | #: doc/guix.texi:3065 | |
8120 | msgid "" | |
8121 | "The generated key pair is typically stored under @file{/etc/guix}, in " | |
8122 | "@file{signing-key.pub} (public key) and @file{signing-key.sec} (private key, " | |
8123 | "which must be kept secret.) When @var{parameters} is omitted, an ECDSA key " | |
8124 | "using the Ed25519 curve is generated, or, for Libgcrypt versions before " | |
8125 | "1.6.0, it is a 4096-bit RSA key. Alternatively, @var{parameters} can " | |
8126 | "specify @code{genkey} parameters suitable for Libgcrypt (@pxref{General " | |
8127 | "public-key related Functions, @code{gcry_pk_genkey},, gcrypt, The Libgcrypt " | |
8128 | "Reference Manual})." | |
8129 | msgstr "" | |
8130 | ||
8131 | #. type: item | |
8132 | #: doc/guix.texi:3066 | |
8133 | #, no-wrap | |
8134 | msgid "--authorize" | |
8135 | msgstr "" | |
8136 | ||
8137 | #. type: cindex | |
8138 | #: doc/guix.texi:3067 | |
8139 | #, no-wrap | |
8140 | msgid "authorizing, archives" | |
8141 | msgstr "" | |
8142 | ||
8143 | #. type: table | |
8144 | #: doc/guix.texi:3071 | |
8145 | msgid "" | |
8146 | "Authorize imports signed by the public key passed on standard input. The " | |
8147 | "public key must be in ``s-expression advanced format''---i.e., the same " | |
8148 | "format as the @file{signing-key.pub} file." | |
8149 | msgstr "" | |
8150 | ||
8151 | #. type: table | |
8152 | #: doc/guix.texi:3078 | |
8153 | msgid "" | |
39764ef8 JL |
8154 | "The list of authorized keys is kept in the human-editable file @file{/etc/" |
8155 | "guix/acl}. The file contains @url{http://people.csail.mit.edu/rivest/Sexp." | |
8156 | "txt, ``advanced-format s-expressions''} and is structured as an access-" | |
8157 | "control list in the @url{http://theworld.com/~cme/spki.txt, Simple Public-" | |
8158 | "Key Infrastructure (SPKI)}." | |
b9fe8fd6 JL |
8159 | msgstr "" |
8160 | ||
8161 | #. type: item | |
8162 | #: doc/guix.texi:3079 | |
8163 | #, no-wrap | |
8164 | msgid "--extract=@var{directory}" | |
8165 | msgstr "" | |
8166 | ||
8167 | #. type: itemx | |
8168 | #: doc/guix.texi:3080 | |
8169 | #, no-wrap | |
8170 | msgid "-x @var{directory}" | |
8171 | msgstr "" | |
8172 | ||
8173 | #. type: table | |
8174 | #: doc/guix.texi:3084 | |
8175 | msgid "" | |
8176 | "Read a single-item archive as served by substitute servers " | |
39764ef8 JL |
8177 | "(@pxref{Substitutes}) and extract it to @var{directory}. This is a low-" |
8178 | "level operation needed in only very narrow use cases; see below." | |
b9fe8fd6 JL |
8179 | msgstr "" |
8180 | ||
8181 | #. type: table | |
8182 | #: doc/guix.texi:3087 | |
8183 | msgid "" | |
8184 | "For example, the following command extracts the substitute for Emacs served " | |
8185 | "by @code{hydra.gnu.org} to @file{/tmp/emacs}:" | |
8186 | msgstr "" | |
8187 | ||
8188 | #. type: example | |
8189 | #: doc/guix.texi:3092 | |
8190 | #, no-wrap | |
8191 | msgid "" | |
8192 | "$ wget -O - \\\n" | |
8193 | " https://hydra.gnu.org/nar/@dots{}-emacs-24.5 \\\n" | |
8194 | " | bunzip2 | guix archive -x /tmp/emacs\n" | |
8195 | msgstr "" | |
8196 | ||
8197 | #. type: table | |
8198 | #: doc/guix.texi:3099 | |
8199 | msgid "" | |
8200 | "Single-item archives are different from multiple-item archives produced by " | |
8201 | "@command{guix archive --export}; they contain a single store item, and they " | |
8202 | "do @emph{not} embed a signature. Thus this operation does @emph{no} " | |
8203 | "signature verification and its output should be considered unsafe." | |
8204 | msgstr "" | |
8205 | ||
8206 | #. type: table | |
8207 | #: doc/guix.texi:3102 | |
8208 | msgid "" | |
8209 | "The primary purpose of this operation is to facilitate inspection of archive " | |
8210 | "contents coming from possibly untrusted substitute servers." | |
8211 | msgstr "" | |
8212 | ||
8213 | #. type: Plain text | |
8214 | #: doc/guix.texi:3115 | |
8215 | msgid "" | |
8216 | "GNU Guix provides several Scheme programming interfaces (APIs) to define, " | |
39764ef8 JL |
8217 | "build, and query packages. The first interface allows users to write high-" |
8218 | "level package definitions. These definitions refer to familiar packaging " | |
8219 | "concepts, such as the name and version of a package, its build system, and " | |
8220 | "its dependencies. These definitions can then be turned into concrete build " | |
8221 | "actions." | |
b9fe8fd6 JL |
8222 | msgstr "" |
8223 | ||
8224 | #. type: Plain text | |
8225 | #: doc/guix.texi:3121 | |
8226 | msgid "" | |
8227 | "Build actions are performed by the Guix daemon, on behalf of users. In a " | |
39764ef8 JL |
8228 | "standard setup, the daemon has write access to the store---the @file{/gnu/" |
8229 | "store} directory---whereas users do not. The recommended setup also has the " | |
8230 | "daemon perform builds in chroots, under a specific build users, to minimize " | |
8231 | "interference with the rest of the system." | |
b9fe8fd6 JL |
8232 | msgstr "" |
8233 | ||
8234 | #. type: Plain text | |
8235 | #: doc/guix.texi:3130 | |
8236 | msgid "" | |
8237 | "Lower-level APIs are available to interact with the daemon and the store. " | |
8238 | "To instruct the daemon to perform a build action, users actually provide it " | |
8239 | "with a @dfn{derivation}. A derivation is a low-level representation of the " | |
39764ef8 JL |
8240 | "build actions to be taken, and the environment in which they should occur---" |
8241 | "derivations are to package definitions what assembly is to C programs. The " | |
8242 | "term ``derivation'' comes from the fact that build results @emph{derive} " | |
8243 | "from them." | |
b9fe8fd6 JL |
8244 | msgstr "" |
8245 | ||
8246 | #. type: Plain text | |
8247 | #: doc/guix.texi:3133 | |
8248 | msgid "" | |
8249 | "This chapter describes all these APIs in turn, starting from high-level " | |
8250 | "package definitions." | |
8251 | msgstr "" | |
8252 | ||
8253 | #. type: Plain text | |
8254 | #: doc/guix.texi:3150 | |
8255 | msgid "" | |
8256 | "The high-level interface to package definitions is implemented in the " | |
8257 | "@code{(guix packages)} and @code{(guix build-system)} modules. As an " | |
8258 | "example, the package definition, or @dfn{recipe}, for the GNU Hello package " | |
8259 | "looks like this:" | |
8260 | msgstr "" | |
8261 | ||
8262 | #. type: example | |
8263 | #: doc/guix.texi:3158 | |
8264 | #, no-wrap | |
8265 | msgid "" | |
8266 | "(define-module (gnu packages hello)\n" | |
8267 | " #:use-module (guix packages)\n" | |
8268 | " #:use-module (guix download)\n" | |
8269 | " #:use-module (guix build-system gnu)\n" | |
8270 | " #:use-module (guix licenses)\n" | |
8271 | " #:use-module (gnu packages gawk))\n" | |
8272 | "\n" | |
8273 | msgstr "" | |
8274 | ||
8275 | #. type: example | |
8276 | #: doc/guix.texi:3177 | |
8277 | #, no-wrap | |
8278 | msgid "" | |
8279 | "(define-public hello\n" | |
8280 | " (package\n" | |
8281 | " (name \"hello\")\n" | |
8282 | " (version \"2.10\")\n" | |
8283 | " (source (origin\n" | |
8284 | " (method url-fetch)\n" | |
8285 | " (uri (string-append \"mirror://gnu/hello/hello-\" version\n" | |
8286 | " \".tar.gz\"))\n" | |
8287 | " (sha256\n" | |
8288 | " (base32\n" | |
39764ef8 | 8289 | " \"0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i\"))))\n" |
b9fe8fd6 JL |
8290 | " (build-system gnu-build-system)\n" |
8291 | " (arguments '(#:configure-flags '(\"--enable-silent-rules\")))\n" | |
8292 | " (inputs `((\"gawk\" ,gawk)))\n" | |
8293 | " (synopsis \"Hello, GNU world: An example GNU package\")\n" | |
8294 | " (description \"Guess what GNU Hello prints!\")\n" | |
8295 | " (home-page \"http://www.gnu.org/software/hello/\")\n" | |
8296 | " (license gpl3+)))\n" | |
8297 | msgstr "" | |
8298 | ||
8299 | #. type: Plain text | |
8300 | #: doc/guix.texi:3187 | |
8301 | msgid "" | |
8302 | "Without being a Scheme expert, the reader may have guessed the meaning of " | |
8303 | "the various fields here. This expression binds the variable @code{hello} to " | |
8304 | "a @code{<package>} object, which is essentially a record (@pxref{SRFI-9, " | |
8305 | "Scheme records,, guile, GNU Guile Reference Manual}). This package object " | |
8306 | "can be inspected using procedures found in the @code{(guix packages)} " | |
39764ef8 JL |
8307 | "module; for instance, @code{(package-name hello)} returns---surprise!---" |
8308 | "@code{\"hello\"}." | |
b9fe8fd6 JL |
8309 | msgstr "" |
8310 | ||
8311 | #. type: Plain text | |
8312 | #: doc/guix.texi:3191 | |
8313 | msgid "" | |
8314 | "With luck, you may be able to import part or all of the definition of the " | |
8315 | "package you are interested in from another repository, using the @code{guix " | |
8316 | "import} command (@pxref{Invoking guix import})." | |
8317 | msgstr "" | |
8318 | ||
8319 | #. type: Plain text | |
8320 | #: doc/guix.texi:3197 | |
8321 | msgid "" | |
8322 | "In the example above, @var{hello} is defined in a module of its own, " | |
8323 | "@code{(gnu packages hello)}. Technically, this is not strictly necessary, " | |
8324 | "but it is convenient to do so: all the packages defined in modules under " | |
8325 | "@code{(gnu packages @dots{})} are automatically known to the command-line " | |
8326 | "tools (@pxref{Package Modules})." | |
8327 | msgstr "" | |
8328 | ||
8329 | #. type: Plain text | |
8330 | #: doc/guix.texi:3199 | |
8331 | msgid "There are a few points worth noting in the above package definition:" | |
8332 | msgstr "" | |
8333 | ||
8334 | #. type: itemize | |
8335 | #: doc/guix.texi:3206 | |
8336 | msgid "" | |
8337 | "The @code{source} field of the package is an @code{<origin>} object " | |
39764ef8 JL |
8338 | "(@pxref{origin Reference}, for the complete reference). Here, the @code{url-" |
8339 | "fetch} method from @code{(guix download)} is used, meaning that the source " | |
8340 | "is a file to be downloaded over FTP or HTTP." | |
b9fe8fd6 JL |
8341 | msgstr "" |
8342 | ||
8343 | #. type: itemize | |
8344 | #: doc/guix.texi:3209 | |
8345 | msgid "" | |
8346 | "The @code{mirror://gnu} prefix instructs @code{url-fetch} to use one of the " | |
8347 | "GNU mirrors defined in @code{(guix download)}." | |
8348 | msgstr "" | |
8349 | ||
8350 | #. type: itemize | |
8351 | #: doc/guix.texi:3216 | |
8352 | msgid "" | |
8353 | "The @code{sha256} field specifies the expected SHA256 hash of the file being " | |
8354 | "downloaded. It is mandatory, and allows Guix to check the integrity of the " | |
8355 | "file. The @code{(base32 @dots{})} form introduces the base32 representation " | |
8356 | "of the hash. You can obtain this information with @code{guix download} " | |
8357 | "(@pxref{Invoking guix download}) and @code{guix hash} (@pxref{Invoking guix " | |
8358 | "hash})." | |
8359 | msgstr "" | |
8360 | ||
8361 | #. type: cindex | |
8362 | #: doc/guix.texi:3217 | |
8363 | #, no-wrap | |
8364 | msgid "patches" | |
8365 | msgstr "" | |
8366 | ||
8367 | #. type: itemize | |
8368 | #: doc/guix.texi:3221 | |
8369 | msgid "" | |
8370 | "When needed, the @code{origin} form can also have a @code{patches} field " | |
8371 | "listing patches to be applied, and a @code{snippet} field giving a Scheme " | |
8372 | "expression to modify the source code." | |
8373 | msgstr "" | |
8374 | ||
8375 | #. type: cindex | |
8376 | #: doc/guix.texi:3223 | |
8377 | #, no-wrap | |
8378 | msgid "GNU Build System" | |
8379 | msgstr "" | |
8380 | ||
8381 | #. type: itemize | |
8382 | #: doc/guix.texi:3229 | |
8383 | msgid "" | |
8384 | "The @code{build-system} field specifies the procedure to build the package " | |
8385 | "(@pxref{Build Systems}). Here, @var{gnu-build-system} represents the " | |
8386 | "familiar GNU Build System, where packages may be configured, built, and " | |
8387 | "installed with the usual @code{./configure && make && make check && make " | |
8388 | "install} command sequence." | |
8389 | msgstr "" | |
8390 | ||
8391 | #. type: itemize | |
8392 | #: doc/guix.texi:3235 | |
8393 | msgid "" | |
8394 | "The @code{arguments} field specifies options for the build system " | |
8395 | "(@pxref{Build Systems}). Here it is interpreted by @var{gnu-build-system} " | |
39764ef8 | 8396 | "as a request run @file{configure} with the @code{--enable-silent-rules} flag." |
b9fe8fd6 JL |
8397 | msgstr "" |
8398 | ||
8399 | #. type: findex | |
8400 | #: doc/guix.texi:3236 doc/guix.texi:3239 | |
8401 | #, no-wrap | |
8402 | msgid "quote" | |
8403 | msgstr "" | |
8404 | ||
8405 | #. type: cindex | |
8406 | #: doc/guix.texi:3237 | |
8407 | #, no-wrap | |
8408 | msgid "quoting" | |
8409 | msgstr "" | |
8410 | ||
8411 | #. type: findex | |
8412 | #: doc/guix.texi:3238 | |
8413 | #, no-wrap | |
8414 | msgid "'" | |
8415 | msgstr "" | |
8416 | ||
8417 | #. type: itemize | |
8418 | #: doc/guix.texi:3247 | |
8419 | msgid "" | |
8420 | "What about these quote (@code{'}) characters? They are Scheme syntax to " | |
8421 | "introduce a literal list; @code{'} is synonymous with @code{quote}. " | |
8422 | "@xref{Expression Syntax, quoting,, guile, GNU Guile Reference Manual}, for " | |
8423 | "details. Here the value of the @code{arguments} field is a list of " | |
8424 | "arguments passed to the build system down the road, as with @code{apply} " | |
8425 | "(@pxref{Fly Evaluation, @code{apply},, guile, GNU Guile Reference Manual})." | |
8426 | msgstr "" | |
8427 | ||
8428 | #. type: itemize | |
8429 | #: doc/guix.texi:3253 | |
8430 | msgid "" | |
8431 | "The hash-colon (@code{#:}) sequence defines a Scheme @dfn{keyword} " | |
39764ef8 JL |
8432 | "(@pxref{Keywords,,, guile, GNU Guile Reference Manual}), and @code{#:" |
8433 | "configure-flags} is a keyword used to pass a keyword argument to the build " | |
8434 | "system (@pxref{Coding With Keywords,,, guile, GNU Guile Reference Manual})." | |
b9fe8fd6 JL |
8435 | msgstr "" |
8436 | ||
8437 | #. type: itemize | |
8438 | #: doc/guix.texi:3259 | |
8439 | msgid "" | |
39764ef8 JL |
8440 | "The @code{inputs} field specifies inputs to the build process---i.e., build-" |
8441 | "time or run-time dependencies of the package. Here, we define an input " | |
8442 | "called @code{\"gawk\"} whose value is that of the @var{gawk} variable; " | |
b9fe8fd6 JL |
8443 | "@var{gawk} is itself bound to a @code{<package>} object." |
8444 | msgstr "" | |
8445 | ||
8446 | #. type: cindex | |
8447 | #: doc/guix.texi:3260 | |
8448 | #, no-wrap | |
8449 | msgid "backquote (quasiquote)" | |
8450 | msgstr "" | |
8451 | ||
8452 | #. type: findex | |
8453 | #: doc/guix.texi:3261 | |
8454 | #, no-wrap | |
8455 | msgid "`" | |
8456 | msgstr "" | |
8457 | ||
8458 | #. type: findex | |
8459 | #: doc/guix.texi:3262 | |
8460 | #, no-wrap | |
8461 | msgid "quasiquote" | |
8462 | msgstr "" | |
8463 | ||
8464 | #. type: cindex | |
8465 | #: doc/guix.texi:3263 | |
8466 | #, no-wrap | |
8467 | msgid "comma (unquote)" | |
8468 | msgstr "" | |
8469 | ||
8470 | #. type: findex | |
8471 | #: doc/guix.texi:3264 | |
8472 | #, no-wrap | |
8473 | msgid "," | |
8474 | msgstr "" | |
8475 | ||
8476 | #. type: findex | |
8477 | #: doc/guix.texi:3265 | |
8478 | #, no-wrap | |
8479 | msgid "unquote" | |
8480 | msgstr "" | |
8481 | ||
8482 | #. type: findex | |
8483 | #: doc/guix.texi:3266 | |
8484 | #, no-wrap | |
8485 | msgid ",@@" | |
8486 | msgstr "" | |
8487 | ||
8488 | #. type: findex | |
8489 | #: doc/guix.texi:3267 | |
8490 | #, no-wrap | |
8491 | msgid "unquote-splicing" | |
8492 | msgstr "" | |
8493 | ||
8494 | #. type: itemize | |
8495 | #: doc/guix.texi:3273 | |
8496 | msgid "" | |
8497 | "Again, @code{`} (a backquote, synonymous with @code{quasiquote}) allows us " | |
8498 | "to introduce a literal list in the @code{inputs} field, while @code{,} (a " | |
8499 | "comma, synonymous with @code{unquote}) allows us to insert a value in that " | |
8500 | "list (@pxref{Expression Syntax, unquote,, guile, GNU Guile Reference " | |
8501 | "Manual})." | |
8502 | msgstr "" | |
8503 | ||
8504 | #. type: itemize | |
8505 | #: doc/guix.texi:3277 | |
8506 | msgid "" | |
8507 | "Note that GCC, Coreutils, Bash, and other essential tools do not need to be " | |
8508 | "specified as inputs here. Instead, @var{gnu-build-system} takes care of " | |
8509 | "ensuring that they are present (@pxref{Build Systems})." | |
8510 | msgstr "" | |
8511 | ||
8512 | #. type: itemize | |
8513 | #: doc/guix.texi:3281 | |
8514 | msgid "" | |
8515 | "However, any other dependencies need to be specified in the @code{inputs} " | |
8516 | "field. Any dependency not specified here will simply be unavailable to the " | |
8517 | "build process, possibly leading to a build failure." | |
8518 | msgstr "" | |
8519 | ||
8520 | #. type: Plain text | |
8521 | #: doc/guix.texi:3284 | |
8522 | msgid "@xref{package Reference}, for a full description of possible fields." | |
8523 | msgstr "" | |
8524 | ||
8525 | #. type: Plain text | |
8526 | #: doc/guix.texi:3295 | |
8527 | msgid "" | |
8528 | "Once a package definition is in place, the package may actually be built " | |
8529 | "using the @code{guix build} command-line tool (@pxref{Invoking guix build}), " | |
8530 | "troubleshooting any build failures you encounter (@pxref{Debugging Build " | |
8531 | "Failures}). You can easily jump back to the package definition using the " | |
8532 | "@command{guix edit} command (@pxref{Invoking guix edit}). @xref{Packaging " | |
8533 | "Guidelines}, for more information on how to test package definitions, and " | |
8534 | "@ref{Invoking guix lint}, for information on how to check a definition for " | |
8535 | "style conformance." | |
8536 | msgstr "" | |
8537 | ||
8538 | #. type: vindex | |
8539 | #: doc/guix.texi:3295 | |
8540 | #, no-wrap | |
8541 | msgid "GUIX_PACKAGE_PATH" | |
8542 | msgstr "" | |
8543 | ||
8544 | #. type: Plain text | |
8545 | #: doc/guix.texi:3299 | |
8546 | msgid "" | |
8547 | "Lastly, @pxref{Package Modules}, for information on how to extend the " | |
8548 | "distribution by adding your own package definitions to " | |
8549 | "@code{GUIX_PACKAGE_PATH}." | |
8550 | msgstr "" | |
8551 | ||
8552 | #. type: Plain text | |
8553 | #: doc/guix.texi:3303 | |
8554 | msgid "" | |
8555 | "Finally, updating the package definition to a new upstream version can be " | |
8556 | "partly automated by the @command{guix refresh} command (@pxref{Invoking guix " | |
8557 | "refresh})." | |
8558 | msgstr "" | |
8559 | ||
8560 | #. type: Plain text | |
8561 | #: doc/guix.texi:3309 | |
8562 | msgid "" | |
8563 | "Behind the scenes, a derivation corresponding to the @code{<package>} object " | |
8564 | "is first computed by the @code{package-derivation} procedure. That " | |
8565 | "derivation is stored in a @code{.drv} file under @file{/gnu/store}. The " | |
39764ef8 JL |
8566 | "build actions it prescribes may then be realized by using the @code{build-" |
8567 | "derivations} procedure (@pxref{The Store})." | |
b9fe8fd6 JL |
8568 | msgstr "" |
8569 | ||
8570 | #. type: deffn | |
8571 | #: doc/guix.texi:3310 | |
8572 | #, no-wrap | |
39764ef8 | 8573 | msgid "{Scheme Procedure} package-derivation @var{store} @var{package} [@var{system}]" |
b9fe8fd6 JL |
8574 | msgstr "" |
8575 | ||
8576 | #. type: deffn | |
8577 | #: doc/guix.texi:3313 | |
8578 | msgid "" | |
8579 | "Return the @code{<derivation>} object of @var{package} for @var{system} " | |
8580 | "(@pxref{Derivations})." | |
8581 | msgstr "" | |
8582 | ||
8583 | #. type: deffn | |
8584 | #: doc/guix.texi:3319 | |
8585 | msgid "" | |
8586 | "@var{package} must be a valid @code{<package>} object, and @var{system} must " | |
8587 | "be a string denoting the target system type---e.g., @code{\"x86_64-linux\"} " | |
8588 | "for an x86_64 Linux-based GNU system. @var{store} must be a connection to " | |
8589 | "the daemon, which operates on the store (@pxref{The Store})." | |
8590 | msgstr "" | |
8591 | ||
8592 | #. type: Plain text | |
8593 | #: doc/guix.texi:3325 | |
8594 | msgid "" | |
8595 | "Similarly, it is possible to compute a derivation that cross-builds a " | |
8596 | "package for some other system:" | |
8597 | msgstr "" | |
8598 | ||
8599 | #. type: deffn | |
8600 | #: doc/guix.texi:3326 | |
8601 | #, no-wrap | |
8602 | msgid "{Scheme Procedure} package-cross-derivation @var{store} @" | |
8603 | msgstr "" | |
8604 | ||
8605 | #. type: deffn | |
8606 | #: doc/guix.texi:3330 | |
8607 | msgid "" | |
8608 | "@var{package} @var{target} [@var{system}] Return the @code{<derivation>} " | |
8609 | "object of @var{package} cross-built from @var{system} to @var{target}." | |
8610 | msgstr "" | |
8611 | ||
8612 | #. type: deffn | |
8613 | #: doc/guix.texi:3335 | |
8614 | msgid "" | |
8615 | "@var{target} must be a valid GNU triplet denoting the target hardware and " | |
8616 | "operating system, such as @code{\"mips64el-linux-gnu\"} " | |
8617 | "(@pxref{Configuration Names, GNU configuration triplets,, configure, GNU " | |
8618 | "Configure and Build System})." | |
8619 | msgstr "" | |
8620 | ||
8621 | #. type: cindex | |
8622 | #: doc/guix.texi:3337 | |
8623 | #, no-wrap | |
8624 | msgid "package transformations" | |
8625 | msgstr "" | |
8626 | ||
8627 | #. type: cindex | |
8628 | #: doc/guix.texi:3338 | |
8629 | #, no-wrap | |
8630 | msgid "input rewriting" | |
8631 | msgstr "" | |
8632 | ||
8633 | #. type: cindex | |
8634 | #: doc/guix.texi:3339 | |
8635 | #, no-wrap | |
8636 | msgid "dependency tree rewriting" | |
8637 | msgstr "" | |
8638 | ||
8639 | #. type: Plain text | |
8640 | #: doc/guix.texi:3343 | |
8641 | msgid "" | |
8642 | "Packages can be manipulated in arbitrary ways. An example of a useful " | |
8643 | "transformation is @dfn{input rewriting}, whereby the dependency tree of a " | |
8644 | "package is rewritten by replacing specific inputs by others:" | |
8645 | msgstr "" | |
8646 | ||
8647 | #. type: deffn | |
8648 | #: doc/guix.texi:3344 | |
8649 | #, no-wrap | |
8650 | msgid "{Scheme Procedure} package-input-rewriting @var{replacements} @" | |
8651 | msgstr "" | |
8652 | ||
8653 | #. type: deffn | |
8654 | #: doc/guix.texi:3351 | |
8655 | msgid "" | |
8656 | "[@var{rewrite-name}] Return a procedure that, when passed a package, " | |
8657 | "replaces its direct and indirect dependencies (but not its implicit inputs) " | |
8658 | "according to @var{replacements}. @var{replacements} is a list of package " | |
8659 | "pairs; the first element of each pair is the package to replace, and the " | |
8660 | "second one is the replacement." | |
8661 | msgstr "" | |
8662 | ||
8663 | #. type: deffn | |
8664 | #: doc/guix.texi:3354 | |
8665 | msgid "" | |
8666 | "Optionally, @var{rewrite-name} is a one-argument procedure that takes the " | |
8667 | "name of a package and returns its new name after rewrite." | |
8668 | msgstr "" | |
8669 | ||
8670 | #. type: Plain text | |
8671 | #: doc/guix.texi:3358 | |
8672 | msgid "Consider this example:" | |
8673 | msgstr "" | |
8674 | ||
8675 | #. type: example | |
8676 | #: doc/guix.texi:3364 | |
8677 | #, no-wrap | |
8678 | msgid "" | |
8679 | "(define libressl-instead-of-openssl\n" | |
8680 | " ;; This is a procedure to replace OPENSSL by LIBRESSL,\n" | |
8681 | " ;; recursively.\n" | |
8682 | " (package-input-rewriting `((,openssl . ,libressl))))\n" | |
8683 | "\n" | |
8684 | msgstr "" | |
8685 | ||
8686 | #. type: example | |
8687 | #: doc/guix.texi:3367 | |
8688 | #, no-wrap | |
8689 | msgid "" | |
8690 | "(define git-with-libressl\n" | |
8691 | " (libressl-instead-of-openssl git))\n" | |
8692 | msgstr "" | |
8693 | ||
8694 | #. type: Plain text | |
8695 | #: doc/guix.texi:3375 | |
8696 | msgid "" | |
8697 | "Here we first define a rewriting procedure that replaces @var{openssl} with " | |
8698 | "@var{libressl}. Then we use it to define a @dfn{variant} of the @var{git} " | |
8699 | "package that uses @var{libressl} instead of @var{openssl}. This is exactly " | |
8700 | "what the @option{--with-input} command-line option does (@pxref{Package " | |
8701 | "Transformation Options, @option{--with-input}})." | |
8702 | msgstr "" | |
8703 | ||
8704 | #. type: Plain text | |
8705 | #: doc/guix.texi:3379 | |
8706 | msgid "" | |
8707 | "A more generic procedure to rewrite a package dependency graph is " | |
8708 | "@code{package-mapping}: it supports arbitrary changes to nodes in the graph." | |
8709 | msgstr "" | |
8710 | ||
8711 | #. type: deffn | |
8712 | #: doc/guix.texi:3380 | |
8713 | #, no-wrap | |
8714 | msgid "{Scheme Procedure} package-mapping @var{proc} [@var{cut?}]" | |
8715 | msgstr "" | |
8716 | ||
8717 | #. type: deffn | |
8718 | #: doc/guix.texi:3384 | |
8719 | msgid "" | |
8720 | "Return a procedure that, given a package, applies @var{proc} to all the " | |
8721 | "packages depended on and returns the resulting package. The procedure stops " | |
8722 | "recursion when @var{cut?} returns true for a given package." | |
8723 | msgstr "" | |
8724 | ||
8725 | #. type: subsection | |
8726 | #: doc/guix.texi:3393 | |
8727 | #, no-wrap | |
8728 | msgid "@code{package} Reference" | |
8729 | msgstr "" | |
8730 | ||
8731 | #. type: Plain text | |
8732 | #: doc/guix.texi:3397 | |
8733 | msgid "" | |
8734 | "This section summarizes all the options available in @code{package} " | |
8735 | "declarations (@pxref{Defining Packages})." | |
8736 | msgstr "" | |
8737 | ||
8738 | #. type: deftp | |
8739 | #: doc/guix.texi:3398 | |
8740 | #, no-wrap | |
8741 | msgid "{Data Type} package" | |
8742 | msgstr "" | |
8743 | ||
8744 | #. type: deftp | |
8745 | #: doc/guix.texi:3400 | |
8746 | msgid "This is the data type representing a package recipe." | |
8747 | msgstr "" | |
8748 | ||
8749 | #. type: table | |
8750 | #: doc/guix.texi:3404 | |
8751 | msgid "The name of the package, as a string." | |
8752 | msgstr "" | |
8753 | ||
8754 | #. type: code{#1} | |
8755 | #: doc/guix.texi:3405 | |
8756 | #, no-wrap | |
8757 | msgid "version" | |
8758 | msgstr "" | |
8759 | ||
8760 | #. type: table | |
8761 | #: doc/guix.texi:3407 | |
8762 | msgid "The version of the package, as a string." | |
8763 | msgstr "" | |
8764 | ||
8765 | #. type: code{#1} | |
8766 | #: doc/guix.texi:3408 doc/guix.texi:6743 doc/guix.texi:9281 doc/guix.texi:9569 | |
8767 | #, no-wrap | |
8768 | msgid "source" | |
8769 | msgstr "" | |
8770 | ||
8771 | #. type: table | |
8772 | #: doc/guix.texi:3415 | |
8773 | msgid "" | |
8774 | "An object telling how the source code for the package should be acquired. " | |
8775 | "Most of the time, this is an @code{origin} object, which denotes a file " | |
8776 | "fetched from the Internet (@pxref{origin Reference}). It can also be any " | |
8777 | "other ``file-like'' object such as a @code{local-file}, which denotes a file " | |
8778 | "from the local file system (@pxref{G-Expressions, @code{local-file}})." | |
8779 | msgstr "" | |
8780 | ||
8781 | #. type: code{#1} | |
8782 | #: doc/guix.texi:3416 | |
8783 | #, no-wrap | |
8784 | msgid "build-system" | |
8785 | msgstr "" | |
8786 | ||
8787 | #. type: table | |
8788 | #: doc/guix.texi:3419 | |
8789 | msgid "" | |
8790 | "The build system that should be used to build the package (@pxref{Build " | |
8791 | "Systems})." | |
8792 | msgstr "" | |
8793 | ||
8794 | #. type: item | |
39764ef8 | 8795 | #: doc/guix.texi:3420 doc/guix.texi:11018 |
b9fe8fd6 JL |
8796 | #, no-wrap |
8797 | msgid "@code{arguments} (default: @code{'()})" | |
8798 | msgstr "" | |
8799 | ||
8800 | #. type: table | |
8801 | #: doc/guix.texi:3423 | |
8802 | msgid "" | |
8803 | "The arguments that should be passed to the build system. This is a list, " | |
8804 | "typically containing sequential keyword-value pairs." | |
8805 | msgstr "" | |
8806 | ||
8807 | #. type: item | |
8808 | #: doc/guix.texi:3424 | |
8809 | #, no-wrap | |
8810 | msgid "@code{inputs} (default: @code{'()})" | |
8811 | msgstr "" | |
8812 | ||
8813 | #. type: itemx | |
8814 | #: doc/guix.texi:3425 | |
8815 | #, no-wrap | |
8816 | msgid "@code{native-inputs} (default: @code{'()})" | |
8817 | msgstr "" | |
8818 | ||
8819 | #. type: itemx | |
8820 | #: doc/guix.texi:3426 | |
8821 | #, no-wrap | |
8822 | msgid "@code{propagated-inputs} (default: @code{'()})" | |
8823 | msgstr "" | |
8824 | ||
8825 | #. type: cindex | |
8826 | #: doc/guix.texi:3427 | |
8827 | #, no-wrap | |
8828 | msgid "inputs, of packages" | |
8829 | msgstr "" | |
8830 | ||
8831 | #. type: table | |
8832 | #: doc/guix.texi:3435 | |
8833 | msgid "" | |
8834 | "These fields list dependencies of the package. Each one is a list of " | |
8835 | "tuples, where each tuple has a label for the input (a string) as its first " | |
8836 | "element, a package, origin, or derivation as its second element, and " | |
8837 | "optionally the name of the output thereof that should be used, which " | |
8838 | "defaults to @code{\"out\"} (@pxref{Packages with Multiple Outputs}, for more " | |
8839 | "on package outputs). For example, the list below specifies three inputs:" | |
8840 | msgstr "" | |
8841 | ||
8842 | #. type: example | |
8843 | #: doc/guix.texi:3440 | |
8844 | #, no-wrap | |
8845 | msgid "" | |
8846 | "`((\"libffi\" ,libffi)\n" | |
8847 | " (\"libunistring\" ,libunistring)\n" | |
8848 | " (\"glib:bin\" ,glib \"bin\")) ;the \"bin\" output of Glib\n" | |
8849 | msgstr "" | |
8850 | ||
8851 | #. type: cindex | |
8852 | #: doc/guix.texi:3442 | |
8853 | #, no-wrap | |
8854 | msgid "cross compilation, package dependencies" | |
8855 | msgstr "" | |
8856 | ||
8857 | #. type: table | |
8858 | #: doc/guix.texi:3448 | |
8859 | msgid "" | |
8860 | "The distinction between @code{native-inputs} and @code{inputs} is necessary " | |
8861 | "when considering cross-compilation. When cross-compiling, dependencies " | |
8862 | "listed in @code{inputs} are built for the @emph{target} architecture; " | |
8863 | "conversely, dependencies listed in @code{native-inputs} are built for the " | |
8864 | "architecture of the @emph{build} machine." | |
8865 | msgstr "" | |
8866 | ||
8867 | #. type: table | |
8868 | #: doc/guix.texi:3453 | |
8869 | msgid "" | |
8870 | "@code{native-inputs} is typically used to list tools needed at build time, " | |
8871 | "but not at run time, such as Autoconf, Automake, pkg-config, Gettext, or " | |
8872 | "Bison. @command{guix lint} can report likely mistakes in this area " | |
8873 | "(@pxref{Invoking guix lint})." | |
8874 | msgstr "" | |
8875 | ||
8876 | #. type: anchor{#1} | |
8877 | #: doc/guix.texi:3460 | |
8878 | msgid "package-propagated-inputs" | |
8879 | msgstr "" | |
8880 | ||
8881 | #. type: table | |
8882 | #: doc/guix.texi:3460 | |
8883 | msgid "" | |
8884 | "Lastly, @code{propagated-inputs} is similar to @code{inputs}, but the " | |
8885 | "specified packages will be automatically installed alongside the package " | |
8886 | "they belong to (@pxref{package-cmd-propagated-inputs, @command{guix " | |
8887 | "package}}, for information on how @command{guix package} deals with " | |
8888 | "propagated inputs.)" | |
8889 | msgstr "" | |
8890 | ||
8891 | #. type: table | |
8892 | #: doc/guix.texi:3464 | |
8893 | msgid "" | |
8894 | "For example this is necessary when a C/C++ library needs headers of another " | |
8895 | "library to compile, or when a pkg-config file refers to another one @i{via} " | |
8896 | "its @code{Requires} field." | |
8897 | msgstr "" | |
8898 | ||
8899 | #. type: table | |
8900 | #: doc/guix.texi:3471 | |
8901 | msgid "" | |
8902 | "Another example where @code{propagated-inputs} is useful is for languages " | |
8903 | "that lack a facility to record the run-time search path akin to the " | |
8904 | "@code{RUNPATH} of ELF files; this includes Guile, Python, Perl, and more. " | |
8905 | "To ensure that libraries written in those languages can find library code " | |
8906 | "they depend on at run time, run-time dependencies must be listed in " | |
8907 | "@code{propagated-inputs} rather than @code{inputs}." | |
8908 | msgstr "" | |
8909 | ||
8910 | #. type: item | |
8911 | #: doc/guix.texi:3472 | |
8912 | #, no-wrap | |
8913 | msgid "@code{self-native-input?} (default: @code{#f})" | |
8914 | msgstr "" | |
8915 | ||
8916 | #. type: table | |
8917 | #: doc/guix.texi:3475 | |
8918 | msgid "" | |
8919 | "This is a Boolean field telling whether the package should use itself as a " | |
8920 | "native input when cross-compiling." | |
8921 | msgstr "" | |
8922 | ||
8923 | #. type: item | |
8924 | #: doc/guix.texi:3476 | |
8925 | #, no-wrap | |
8926 | msgid "@code{outputs} (default: @code{'(\"out\")})" | |
8927 | msgstr "" | |
8928 | ||
8929 | #. type: table | |
8930 | #: doc/guix.texi:3479 | |
8931 | msgid "" | |
8932 | "The list of output names of the package. @xref{Packages with Multiple " | |
8933 | "Outputs}, for typical uses of additional outputs." | |
8934 | msgstr "" | |
8935 | ||
8936 | #. type: item | |
8937 | #: doc/guix.texi:3480 | |
8938 | #, no-wrap | |
8939 | msgid "@code{native-search-paths} (default: @code{'()})" | |
8940 | msgstr "" | |
8941 | ||
8942 | #. type: itemx | |
8943 | #: doc/guix.texi:3481 | |
8944 | #, no-wrap | |
8945 | msgid "@code{search-paths} (default: @code{'()})" | |
8946 | msgstr "" | |
8947 | ||
8948 | #. type: table | |
8949 | #: doc/guix.texi:3484 | |
8950 | msgid "" | |
8951 | "A list of @code{search-path-specification} objects describing search-path " | |
8952 | "environment variables honored by the package." | |
8953 | msgstr "" | |
8954 | ||
8955 | #. type: item | |
8956 | #: doc/guix.texi:3485 | |
8957 | #, no-wrap | |
8958 | msgid "@code{replacement} (default: @code{#f})" | |
8959 | msgstr "" | |
8960 | ||
8961 | #. type: table | |
8962 | #: doc/guix.texi:3489 | |
8963 | msgid "" | |
8964 | "This must be either @code{#f} or a package object that will be used as a " | |
8965 | "@dfn{replacement} for this package. @xref{Security Updates, grafts}, for " | |
8966 | "details." | |
8967 | msgstr "" | |
8968 | ||
8969 | #. type: item | |
8970 | #: doc/guix.texi:3490 doc/guix.texi:6735 | |
8971 | #, no-wrap | |
8972 | msgid "synopsis" | |
8973 | msgstr "" | |
8974 | ||
8975 | #. type: table | |
8976 | #: doc/guix.texi:3492 | |
8977 | msgid "A one-line description of the package." | |
8978 | msgstr "" | |
8979 | ||
8980 | #. type: item | |
39764ef8 | 8981 | #: doc/guix.texi:3493 doc/guix.texi:6736 doc/guix.texi:21027 |
b9fe8fd6 JL |
8982 | #, no-wrap |
8983 | msgid "description" | |
8984 | msgstr "" | |
8985 | ||
8986 | #. type: table | |
8987 | #: doc/guix.texi:3495 | |
8988 | msgid "A more elaborate description of the package." | |
8989 | msgstr "" | |
8990 | ||
8991 | #. type: code{#1} | |
8992 | #: doc/guix.texi:3496 | |
8993 | #, no-wrap | |
8994 | msgid "license" | |
8995 | msgstr "" | |
8996 | ||
8997 | #. type: cindex | |
8998 | #: doc/guix.texi:3497 | |
8999 | #, no-wrap | |
9000 | msgid "license, of packages" | |
9001 | msgstr "" | |
9002 | ||
9003 | #. type: table | |
9004 | #: doc/guix.texi:3500 | |
9005 | msgid "" | |
9006 | "The license of the package; a value from @code{(guix licenses)}, or a list " | |
9007 | "of such values." | |
9008 | msgstr "" | |
9009 | ||
9010 | #. type: itemx | |
9011 | #: doc/guix.texi:3501 doc/guix.texi:6744 | |
9012 | #, no-wrap | |
9013 | msgid "home-page" | |
9014 | msgstr "" | |
9015 | ||
9016 | #. type: table | |
9017 | #: doc/guix.texi:3503 | |
9018 | msgid "The URL to the home-page of the package, as a string." | |
9019 | msgstr "" | |
9020 | ||
9021 | #. type: item | |
9022 | #: doc/guix.texi:3504 | |
9023 | #, no-wrap | |
9024 | msgid "@code{supported-systems} (default: @var{%supported-systems})" | |
9025 | msgstr "" | |
9026 | ||
9027 | #. type: table | |
9028 | #: doc/guix.texi:3507 | |
9029 | msgid "" | |
9030 | "The list of systems supported by the package, as strings of the form " | |
9031 | "@code{architecture-kernel}, for example @code{\"x86_64-linux\"}." | |
9032 | msgstr "" | |
9033 | ||
9034 | #. type: item | |
9035 | #: doc/guix.texi:3508 | |
9036 | #, no-wrap | |
9037 | msgid "@code{maintainers} (default: @code{'()})" | |
9038 | msgstr "" | |
9039 | ||
9040 | #. type: table | |
9041 | #: doc/guix.texi:3510 | |
9042 | msgid "The list of maintainers of the package, as @code{maintainer} objects." | |
9043 | msgstr "" | |
9044 | ||
9045 | #. type: item | |
9046 | #: doc/guix.texi:3511 | |
9047 | #, no-wrap | |
9048 | msgid "@code{location} (default: source location of the @code{package} form)" | |
9049 | msgstr "" | |
9050 | ||
9051 | #. type: table | |
9052 | #: doc/guix.texi:3515 | |
9053 | msgid "" | |
9054 | "The source location of the package. It is useful to override this when " | |
9055 | "inheriting from another package, in which case this field is not " | |
9056 | "automatically corrected." | |
9057 | msgstr "" | |
9058 | ||
9059 | #. type: subsection | |
9060 | #: doc/guix.texi:3520 | |
9061 | #, no-wrap | |
9062 | msgid "@code{origin} Reference" | |
9063 | msgstr "" | |
9064 | ||
9065 | #. type: Plain text | |
9066 | #: doc/guix.texi:3524 | |
9067 | msgid "" | |
9068 | "This section summarizes all the options available in @code{origin} " | |
9069 | "declarations (@pxref{Defining Packages})." | |
9070 | msgstr "" | |
9071 | ||
9072 | #. type: deftp | |
9073 | #: doc/guix.texi:3525 | |
9074 | #, no-wrap | |
9075 | msgid "{Data Type} origin" | |
9076 | msgstr "" | |
9077 | ||
9078 | #. type: deftp | |
9079 | #: doc/guix.texi:3527 | |
9080 | msgid "This is the data type representing a source code origin." | |
9081 | msgstr "" | |
9082 | ||
9083 | #. type: code{#1} | |
39764ef8 | 9084 | #: doc/guix.texi:3529 doc/guix.texi:15696 |
b9fe8fd6 JL |
9085 | #, no-wrap |
9086 | msgid "uri" | |
9087 | msgstr "" | |
9088 | ||
9089 | #. type: table | |
9090 | #: doc/guix.texi:3534 | |
9091 | msgid "" | |
9092 | "An object containing the URI of the source. The object type depends on the " | |
9093 | "@code{method} (see below). For example, when using the @var{url-fetch} " | |
9094 | "method of @code{(guix download)}, the valid @code{uri} values are: a URL " | |
9095 | "represented as a string, or a list thereof." | |
9096 | msgstr "" | |
9097 | ||
9098 | #. type: code{#1} | |
9099 | #: doc/guix.texi:3535 | |
9100 | #, no-wrap | |
9101 | msgid "method" | |
9102 | msgstr "" | |
9103 | ||
9104 | #. type: table | |
9105 | #: doc/guix.texi:3537 | |
9106 | msgid "A procedure that handles the URI." | |
9107 | msgstr "" | |
9108 | ||
9109 | #. type: table | |
9110 | #: doc/guix.texi:3539 | |
9111 | msgid "Examples include:" | |
9112 | msgstr "" | |
9113 | ||
9114 | #. type: item | |
9115 | #: doc/guix.texi:3541 | |
9116 | #, no-wrap | |
9117 | msgid "@var{url-fetch} from @code{(guix download)}" | |
9118 | msgstr "" | |
9119 | ||
9120 | #. type: table | |
9121 | #: doc/guix.texi:3544 | |
9122 | msgid "" | |
9123 | "download a file from the HTTP, HTTPS, or FTP URL specified in the @code{uri} " | |
9124 | "field;" | |
9125 | msgstr "" | |
9126 | ||
9127 | #. type: vindex | |
9128 | #: doc/guix.texi:3545 doc/guix.texi:6097 | |
9129 | #, no-wrap | |
9130 | msgid "git-fetch" | |
9131 | msgstr "" | |
9132 | ||
9133 | #. type: item | |
9134 | #: doc/guix.texi:3546 | |
9135 | #, no-wrap | |
9136 | msgid "@var{git-fetch} from @code{(guix git-download)}" | |
9137 | msgstr "" | |
9138 | ||
9139 | #. type: table | |
9140 | #: doc/guix.texi:3550 | |
9141 | msgid "" | |
9142 | "clone the Git version control repository, and check out the revision " | |
9143 | "specified in the @code{uri} field as a @code{git-reference} object; a " | |
9144 | "@code{git-reference} looks like this:" | |
9145 | msgstr "" | |
9146 | ||
9147 | #. type: example | |
9148 | #: doc/guix.texi:3555 | |
9149 | #, no-wrap | |
9150 | msgid "" | |
9151 | "(git-reference\n" | |
9152 | " (url \"git://git.debian.org/git/pkg-shadow/shadow\")\n" | |
9153 | " (commit \"v4.1.5.1\"))\n" | |
9154 | msgstr "" | |
9155 | ||
9156 | #. type: code{#1} | |
9157 | #: doc/guix.texi:3558 | |
9158 | #, no-wrap | |
9159 | msgid "sha256" | |
9160 | msgstr "" | |
9161 | ||
9162 | #. type: table | |
9163 | #: doc/guix.texi:3562 | |
9164 | msgid "" | |
9165 | "A bytevector containing the SHA-256 hash of the source. Typically the " | |
9166 | "@code{base32} form is used here to generate the bytevector from a base-32 " | |
9167 | "string." | |
9168 | msgstr "" | |
9169 | ||
9170 | #. type: table | |
9171 | #: doc/guix.texi:3566 | |
9172 | msgid "" | |
9173 | "You can obtain this information using @code{guix download} (@pxref{Invoking " | |
9174 | "guix download}) or @code{guix hash} (@pxref{Invoking guix hash})." | |
9175 | msgstr "" | |
9176 | ||
9177 | #. type: item | |
9178 | #: doc/guix.texi:3567 | |
9179 | #, no-wrap | |
9180 | msgid "@code{file-name} (default: @code{#f})" | |
9181 | msgstr "" | |
9182 | ||
9183 | #. type: table | |
9184 | #: doc/guix.texi:3573 | |
9185 | msgid "" | |
9186 | "The file name under which the source code should be saved. When this is " | |
9187 | "@code{#f}, a sensible default value will be used in most cases. In case the " | |
9188 | "source is fetched from a URL, the file name from the URL will be used. For " | |
9189 | "version control checkouts, it is recommended to provide the file name " | |
9190 | "explicitly because the default is not very descriptive." | |
9191 | msgstr "" | |
9192 | ||
9193 | #. type: item | |
9194 | #: doc/guix.texi:3574 | |
9195 | #, no-wrap | |
9196 | msgid "@code{patches} (default: @code{'()})" | |
9197 | msgstr "" | |
9198 | ||
9199 | #. type: table | |
9200 | #: doc/guix.texi:3577 | |
9201 | msgid "" | |
9202 | "A list of file names, origins, or file-like objects (@pxref{G-Expressions, " | |
9203 | "file-like objects}) pointing to patches to be applied to the source." | |
9204 | msgstr "" | |
9205 | ||
9206 | #. type: table | |
9207 | #: doc/guix.texi:3581 | |
9208 | msgid "" | |
9209 | "This list of patches must be unconditional. In particular, it cannot depend " | |
9210 | "on the value of @code{%current-system} or @code{%current-target-system}." | |
9211 | msgstr "" | |
9212 | ||
9213 | #. type: item | |
9214 | #: doc/guix.texi:3582 | |
9215 | #, no-wrap | |
9216 | msgid "@code{snippet} (default: @code{#f})" | |
9217 | msgstr "" | |
9218 | ||
9219 | #. type: table | |
9220 | #: doc/guix.texi:3586 | |
9221 | msgid "" | |
9222 | "A G-expression (@pxref{G-Expressions}) or S-expression that will be run in " | |
9223 | "the source directory. This is a convenient way to modify the source, " | |
9224 | "sometimes more convenient than a patch." | |
9225 | msgstr "" | |
9226 | ||
9227 | #. type: item | |
9228 | #: doc/guix.texi:3587 | |
9229 | #, no-wrap | |
9230 | msgid "@code{patch-flags} (default: @code{'(\"-p1\")})" | |
9231 | msgstr "" | |
9232 | ||
9233 | #. type: table | |
9234 | #: doc/guix.texi:3590 | |
9235 | msgid "" | |
9236 | "A list of command-line flags that should be passed to the @code{patch} " | |
9237 | "command." | |
9238 | msgstr "" | |
9239 | ||
9240 | #. type: item | |
9241 | #: doc/guix.texi:3591 | |
9242 | #, no-wrap | |
9243 | msgid "@code{patch-inputs} (default: @code{#f})" | |
9244 | msgstr "" | |
9245 | ||
9246 | #. type: table | |
9247 | #: doc/guix.texi:3595 | |
9248 | msgid "" | |
9249 | "Input packages or derivations to the patching process. When this is " | |
9250 | "@code{#f}, the usual set of inputs necessary for patching are provided, such " | |
9251 | "as GNU@tie{}Patch." | |
9252 | msgstr "" | |
9253 | ||
9254 | #. type: item | |
9255 | #: doc/guix.texi:3596 | |
9256 | #, no-wrap | |
9257 | msgid "@code{modules} (default: @code{'()})" | |
9258 | msgstr "" | |
9259 | ||
9260 | #. type: table | |
9261 | #: doc/guix.texi:3599 | |
9262 | msgid "" | |
9263 | "A list of Guile modules that should be loaded during the patching process " | |
9264 | "and while running the code in the @code{snippet} field." | |
9265 | msgstr "" | |
9266 | ||
9267 | #. type: item | |
9268 | #: doc/guix.texi:3600 | |
9269 | #, no-wrap | |
9270 | msgid "@code{patch-guile} (default: @code{#f})" | |
9271 | msgstr "" | |
9272 | ||
9273 | #. type: table | |
9274 | #: doc/guix.texi:3603 | |
9275 | msgid "" | |
9276 | "The Guile package that should be used in the patching process. When this is " | |
9277 | "@code{#f}, a sensible default is used." | |
9278 | msgstr "" | |
9279 | ||
9280 | #. type: cindex | |
9281 | #: doc/guix.texi:3610 | |
9282 | #, no-wrap | |
9283 | msgid "build system" | |
9284 | msgstr "" | |
9285 | ||
9286 | #. type: Plain text | |
9287 | #: doc/guix.texi:3615 | |
9288 | msgid "" | |
9289 | "Each package definition specifies a @dfn{build system} and arguments for " | |
9290 | "that build system (@pxref{Defining Packages}). This @code{build-system} " | |
9291 | "field represents the build procedure of the package, as well as implicit " | |
9292 | "dependencies of that build procedure." | |
9293 | msgstr "" | |
9294 | ||
9295 | #. type: Plain text | |
9296 | #: doc/guix.texi:3619 | |
9297 | msgid "" | |
9298 | "Build systems are @code{<build-system>} objects. The interface to create " | |
9299 | "and manipulate them is provided by the @code{(guix build-system)} module, " | |
9300 | "and actual build systems are exported by specific modules." | |
9301 | msgstr "" | |
9302 | ||
9303 | #. type: cindex | |
9304 | #: doc/guix.texi:3620 | |
9305 | #, no-wrap | |
9306 | msgid "bag (low-level package representation)" | |
9307 | msgstr "" | |
9308 | ||
9309 | #. type: Plain text | |
9310 | #: doc/guix.texi:3627 | |
9311 | msgid "" | |
9312 | "Under the hood, build systems first compile package objects to @dfn{bags}. " | |
9313 | "A @dfn{bag} is like a package, but with less ornamentation---in other words, " | |
9314 | "a bag is a lower-level representation of a package, which includes all the " | |
9315 | "inputs of that package, including some that were implicitly added by the " | |
9316 | "build system. This intermediate representation is then compiled to a " | |
9317 | "derivation (@pxref{Derivations})." | |
9318 | msgstr "" | |
9319 | ||
9320 | #. type: Plain text | |
9321 | #: doc/guix.texi:3635 | |
9322 | msgid "" | |
9323 | "Build systems accept an optional list of @dfn{arguments}. In package " | |
9324 | "definitions, these are passed @i{via} the @code{arguments} field " | |
9325 | "(@pxref{Defining Packages}). They are typically keyword arguments " | |
9326 | "(@pxref{Optional Arguments, keyword arguments in Guile,, guile, GNU Guile " | |
9327 | "Reference Manual}). The value of these arguments is usually evaluated in " | |
9328 | "the @dfn{build stratum}---i.e., by a Guile process launched by the daemon " | |
9329 | "(@pxref{Derivations})." | |
9330 | msgstr "" | |
9331 | ||
9332 | #. type: Plain text | |
9333 | #: doc/guix.texi:3639 | |
9334 | msgid "" | |
9335 | "The main build system is @var{gnu-build-system}, which implements the " | |
9336 | "standard build procedure for GNU and many other packages. It is provided by " | |
9337 | "the @code{(guix build-system gnu)} module." | |
9338 | msgstr "" | |
9339 | ||
9340 | #. type: defvr | |
9341 | #: doc/guix.texi:3640 | |
9342 | #, no-wrap | |
9343 | msgid "{Scheme Variable} gnu-build-system" | |
9344 | msgstr "" | |
9345 | ||
9346 | #. type: defvr | |
9347 | #: doc/guix.texi:3644 | |
9348 | msgid "" | |
9349 | "@var{gnu-build-system} represents the GNU Build System, and variants thereof " | |
9350 | "(@pxref{Configuration, configuration and makefile conventions,, standards, " | |
9351 | "GNU Coding Standards})." | |
9352 | msgstr "" | |
9353 | ||
9354 | #. type: cindex | |
9355 | #: doc/guix.texi:3645 | |
9356 | #, no-wrap | |
9357 | msgid "build phases" | |
9358 | msgstr "" | |
9359 | ||
9360 | #. type: defvr | |
9361 | #: doc/guix.texi:3652 | |
9362 | msgid "" | |
9363 | "In a nutshell, packages using it are configured, built, and installed with " | |
9364 | "the usual @code{./configure && make && make check && make install} command " | |
9365 | "sequence. In practice, a few additional steps are often needed. All these " | |
9366 | "steps are split up in separate @dfn{phases}, notably@footnote{Please see the " | |
9367 | "@code{(guix build gnu-build-system)} modules for more details about the " | |
9368 | "build phases.}:" | |
9369 | msgstr "" | |
9370 | ||
9371 | #. type: item | |
9372 | #: doc/guix.texi:3654 | |
9373 | #, no-wrap | |
9374 | msgid "unpack" | |
9375 | msgstr "" | |
9376 | ||
9377 | #. type: table | |
9378 | #: doc/guix.texi:3658 | |
9379 | msgid "" | |
9380 | "Unpack the source tarball, and change the current directory to the extracted " | |
9381 | "source tree. If the source is actually a directory, copy it to the build " | |
9382 | "tree, and enter that directory." | |
9383 | msgstr "" | |
9384 | ||
9385 | #. type: item | |
9386 | #: doc/guix.texi:3659 | |
9387 | #, no-wrap | |
9388 | msgid "patch-source-shebangs" | |
9389 | msgstr "" | |
9390 | ||
9391 | #. type: table | |
9392 | #: doc/guix.texi:3663 | |
9393 | msgid "" | |
9394 | "Patch shebangs encountered in source files so they refer to the right store " | |
39764ef8 JL |
9395 | "file names. For instance, this changes @code{#!/bin/sh} to @code{#!/gnu/" |
9396 | "store/@dots{}-bash-4.3/bin/sh}." | |
b9fe8fd6 JL |
9397 | msgstr "" |
9398 | ||
9399 | #. type: item | |
9400 | #: doc/guix.texi:3664 doc/guix.texi:4130 | |
9401 | #, no-wrap | |
9402 | msgid "configure" | |
9403 | msgstr "" | |
9404 | ||
9405 | #. type: table | |
9406 | #: doc/guix.texi:3668 | |
9407 | msgid "" | |
9408 | "Run the @file{configure} script with a number of default options, such as " | |
9409 | "@code{--prefix=/gnu/store/@dots{}}, as well as the options specified by the " | |
9410 | "@code{#:configure-flags} argument." | |
9411 | msgstr "" | |
9412 | ||
9413 | #. type: item | |
39764ef8 | 9414 | #: doc/guix.texi:3669 doc/guix.texi:4135 doc/guix.texi:20437 |
b9fe8fd6 JL |
9415 | #, no-wrap |
9416 | msgid "build" | |
9417 | msgstr "" | |
9418 | ||
9419 | #. type: table | |
9420 | #: doc/guix.texi:3673 | |
9421 | msgid "" | |
9422 | "Run @code{make} with the list of flags specified with @code{#:make-flags}. " | |
9423 | "If the @code{#:parallel-build?} argument is true (the default), build with " | |
9424 | "@code{make -j}." | |
9425 | msgstr "" | |
9426 | ||
9427 | #. type: item | |
9428 | #: doc/guix.texi:3674 doc/guix.texi:4139 | |
9429 | #, no-wrap | |
9430 | msgid "check" | |
9431 | msgstr "" | |
9432 | ||
9433 | #. type: table | |
9434 | #: doc/guix.texi:3679 | |
9435 | msgid "" | |
39764ef8 JL |
9436 | "Run @code{make check}, or some other target specified with @code{#:test-" |
9437 | "target}, unless @code{#:tests? #f} is passed. If the @code{#:parallel-" | |
9438 | "tests?} argument is true (the default), run @code{make check -j}." | |
b9fe8fd6 JL |
9439 | msgstr "" |
9440 | ||
9441 | #. type: item | |
9442 | #: doc/guix.texi:3680 doc/guix.texi:4143 | |
9443 | #, no-wrap | |
9444 | msgid "install" | |
9445 | msgstr "" | |
9446 | ||
9447 | #. type: table | |
9448 | #: doc/guix.texi:3682 | |
9449 | msgid "Run @code{make install} with the flags listed in @code{#:make-flags}." | |
9450 | msgstr "" | |
9451 | ||
9452 | #. type: item | |
9453 | #: doc/guix.texi:3683 | |
9454 | #, no-wrap | |
9455 | msgid "patch-shebangs" | |
9456 | msgstr "" | |
9457 | ||
9458 | #. type: table | |
9459 | #: doc/guix.texi:3685 | |
9460 | msgid "Patch shebangs on the installed executable files." | |
9461 | msgstr "" | |
9462 | ||
9463 | #. type: item | |
9464 | #: doc/guix.texi:3686 | |
9465 | #, no-wrap | |
9466 | msgid "strip" | |
9467 | msgstr "" | |
9468 | ||
9469 | #. type: table | |
9470 | #: doc/guix.texi:3690 | |
9471 | msgid "" | |
9472 | "Strip debugging symbols from ELF files (unless @code{#:strip-binaries?} is " | |
9473 | "false), copying them to the @code{debug} output when available " | |
9474 | "(@pxref{Installing Debugging Files})." | |
9475 | msgstr "" | |
9476 | ||
9477 | #. type: vindex | |
9478 | #: doc/guix.texi:3692 | |
9479 | #, no-wrap | |
9480 | msgid "%standard-phases" | |
9481 | msgstr "" | |
9482 | ||
9483 | #. type: defvr | |
9484 | #: doc/guix.texi:3697 | |
9485 | msgid "" | |
9486 | "The build-side module @code{(guix build gnu-build-system)} defines " | |
39764ef8 JL |
9487 | "@var{%standard-phases} as the default list of build phases. @var{%standard-" |
9488 | "phases} is a list of symbol/procedure pairs, where the procedure implements " | |
9489 | "the actual phase." | |
b9fe8fd6 JL |
9490 | msgstr "" |
9491 | ||
9492 | #. type: defvr | |
9493 | #: doc/guix.texi:3700 | |
9494 | msgid "" | |
9495 | "The list of phases used for a particular package can be changed with the " | |
9496 | "@code{#:phases} parameter. For instance, passing:" | |
9497 | msgstr "" | |
9498 | ||
9499 | #. type: example | |
9500 | #: doc/guix.texi:3703 | |
9501 | #, no-wrap | |
9502 | msgid "#:phases (modify-phases %standard-phases (delete 'configure))\n" | |
9503 | msgstr "" | |
9504 | ||
9505 | #. type: defvr | |
9506 | #: doc/guix.texi:3707 | |
9507 | msgid "" | |
9508 | "means that all the phases described above will be used, except the " | |
9509 | "@code{configure} phase." | |
9510 | msgstr "" | |
9511 | ||
9512 | #. type: defvr | |
9513 | #: doc/guix.texi:3714 | |
9514 | msgid "" | |
9515 | "In addition, this build system ensures that the ``standard'' environment for " | |
9516 | "GNU packages is available. This includes tools such as GCC, libc, " | |
39764ef8 JL |
9517 | "Coreutils, Bash, Make, Diffutils, grep, and sed (see the @code{(guix build-" |
9518 | "system gnu)} module for a complete list). We call these the @dfn{implicit " | |
9519 | "inputs} of a package, because package definitions do not have to mention " | |
9520 | "them." | |
b9fe8fd6 JL |
9521 | msgstr "" |
9522 | ||
9523 | #. type: Plain text | |
9524 | #: doc/guix.texi:3721 | |
9525 | msgid "" | |
9526 | "Other @code{<build-system>} objects are defined to support other conventions " | |
39764ef8 JL |
9527 | "and tools used by free software packages. They inherit most of @var{gnu-" |
9528 | "build-system}, and differ mainly in the set of inputs implicitly added to " | |
9529 | "the build process, and in the list of phases executed. Some of these build " | |
9530 | "systems are listed below." | |
b9fe8fd6 JL |
9531 | msgstr "" |
9532 | ||
9533 | #. type: defvr | |
9534 | #: doc/guix.texi:3722 | |
9535 | #, no-wrap | |
9536 | msgid "{Scheme Variable} ant-build-system" | |
9537 | msgstr "" | |
9538 | ||
9539 | #. type: defvr | |
9540 | #: doc/guix.texi:3726 | |
9541 | msgid "" | |
9542 | "This variable is exported by @code{(guix build-system ant)}. It implements " | |
39764ef8 JL |
9543 | "the build procedure for Java packages that can be built with @url{http://ant." |
9544 | "apache.org/, Ant build tool}." | |
b9fe8fd6 JL |
9545 | msgstr "" |
9546 | ||
9547 | #. type: defvr | |
9548 | #: doc/guix.texi:3731 | |
9549 | msgid "" | |
9550 | "It adds both @code{ant} and the @dfn{Java Development Kit} (JDK) as provided " | |
9551 | "by the @code{icedtea} package to the set of inputs. Different packages can " | |
39764ef8 | 9552 | "be specified with the @code{#:ant} and @code{#:jdk} parameters, respectively." |
b9fe8fd6 JL |
9553 | msgstr "" |
9554 | ||
9555 | #. type: defvr | |
9556 | #: doc/guix.texi:3737 | |
9557 | msgid "" | |
9558 | "When the original package does not provide a suitable Ant build file, the " | |
9559 | "parameter @code{#:jar-name} can be used to generate a minimal Ant build file " | |
9560 | "@file{build.xml} with tasks to build the specified jar archive. In this " | |
39764ef8 JL |
9561 | "case the parameter @code{#:source-dir} can be used to specify the source sub-" |
9562 | "directory, defaulting to ``src''." | |
b9fe8fd6 JL |
9563 | msgstr "" |
9564 | ||
9565 | #. type: defvr | |
9566 | #: doc/guix.texi:3745 | |
9567 | msgid "" | |
9568 | "The @code{#:main-class} parameter can be used with the minimal ant buildfile " | |
9569 | "to specify the main class of the resulting jar. This makes the jar file " | |
9570 | "executable. The @code{#:test-include} parameter can be used to specify the " | |
9571 | "list of junit tests to run. It defaults to @code{(list \"**/*Test.java\")}. " | |
9572 | "The @code{#:test-exclude} can be used to disable some tests. It defaults to " | |
9573 | "@code{(list \"**/Abstract*.java\")}, because abstract classes cannot be run " | |
9574 | "as tests." | |
9575 | msgstr "" | |
9576 | ||
9577 | #. type: defvr | |
9578 | #: doc/guix.texi:3749 | |
9579 | msgid "" | |
9580 | "The parameter @code{#:build-target} can be used to specify the Ant task that " | |
9581 | "should be run during the @code{build} phase. By default the ``jar'' task " | |
9582 | "will be run." | |
9583 | msgstr "" | |
9584 | ||
9585 | #. type: defvr | |
9586 | #: doc/guix.texi:3752 | |
9587 | #, no-wrap | |
9588 | msgid "{Scheme Variable} asdf-build-system/source" | |
9589 | msgstr "" | |
9590 | ||
9591 | #. type: defvrx | |
9592 | #: doc/guix.texi:3753 | |
9593 | #, no-wrap | |
9594 | msgid "{Scheme Variable} asdf-build-system/sbcl" | |
9595 | msgstr "" | |
9596 | ||
9597 | #. type: defvrx | |
9598 | #: doc/guix.texi:3754 | |
9599 | #, no-wrap | |
9600 | msgid "{Scheme Variable} asdf-build-system/ecl" | |
9601 | msgstr "" | |
9602 | ||
9603 | #. type: defvr | |
9604 | #: doc/guix.texi:3760 | |
9605 | msgid "" | |
9606 | "These variables, exported by @code{(guix build-system asdf)}, implement " | |
39764ef8 JL |
9607 | "build procedures for Common Lisp packages using @url{https://common-lisp.net/" |
9608 | "project/asdf/, ``ASDF''}. ASDF is a system definition facility for Common " | |
9609 | "Lisp programs and libraries." | |
b9fe8fd6 JL |
9610 | msgstr "" |
9611 | ||
9612 | #. type: defvr | |
9613 | #: doc/guix.texi:3767 | |
9614 | msgid "" | |
9615 | "The @code{asdf-build-system/source} system installs the packages in source " | |
9616 | "form, and can be loaded using any common lisp implementation, via ASDF. The " | |
9617 | "others, such as @code{asdf-build-system/sbcl}, install binary systems in the " | |
9618 | "format which a particular implementation understands. These build systems " | |
9619 | "can also be used to produce executable programs, or lisp images which " | |
9620 | "contain a set of packages pre-loaded." | |
9621 | msgstr "" | |
9622 | ||
9623 | #. type: defvr | |
9624 | #: doc/guix.texi:3771 | |
9625 | msgid "" | |
9626 | "The build system uses naming conventions. For binary packages, the package " | |
9627 | "name should be prefixed with the lisp implementation, such as @code{sbcl-} " | |
9628 | "for @code{asdf-build-system/sbcl}." | |
9629 | msgstr "" | |
9630 | ||
9631 | #. type: defvr | |
9632 | #: doc/guix.texi:3775 | |
9633 | msgid "" | |
9634 | "Additionally, the corresponding source package should be labeled using the " | |
9635 | "same convention as python packages (see @ref{Python Modules}), using the " | |
9636 | "@code{cl-} prefix." | |
9637 | msgstr "" | |
9638 | ||
9639 | #. type: defvr | |
9640 | #: doc/guix.texi:3780 | |
9641 | msgid "" | |
9642 | "For binary packages, each system should be defined as a Guix package. If " | |
9643 | "one package @code{origin} contains several systems, package variants can be " | |
9644 | "created in order to build all the systems. Source packages, which use " | |
9645 | "@code{asdf-build-system/source}, may contain several systems." | |
9646 | msgstr "" | |
9647 | ||
9648 | #. type: defvr | |
9649 | #: doc/guix.texi:3787 | |
9650 | msgid "" | |
9651 | "In order to create executable programs and images, the build-side procedures " | |
9652 | "@code{build-program} and @code{build-image} can be used. They should be " | |
9653 | "called in a build phase after the @code{create-symlinks} phase, so that the " | |
9654 | "system which was just built can be used within the resulting image. " | |
9655 | "@code{build-program} requires a list of Common Lisp expressions to be passed " | |
9656 | "as the @code{#:entry-program} argument." | |
9657 | msgstr "" | |
9658 | ||
9659 | #. type: defvr | |
9660 | #: doc/guix.texi:3796 | |
9661 | msgid "" | |
9662 | "If the system is not defined within its own @code{.asd} file of the same " | |
9663 | "name, then the @code{#:asd-file} parameter should be used to specify which " | |
9664 | "file the system is defined in. Furthermore, if the package defines a system " | |
9665 | "for its tests in a separate file, it will be loaded before the tests are run " | |
9666 | "if it is specified by the @code{#:test-asd-file} parameter. If it is not " | |
9667 | "set, the files @code{<system>-tests.asd}, @code{<system>-test.asd}, " | |
9668 | "@code{tests.asd}, and @code{test.asd} will be tried if they exist." | |
9669 | msgstr "" | |
9670 | ||
9671 | #. type: defvr | |
9672 | #: doc/guix.texi:3800 | |
9673 | msgid "" | |
9674 | "If for some reason the package must be named in a different way than the " | |
9675 | "naming conventions suggest, the @code{#:asd-system-name} parameter can be " | |
9676 | "used to specify the name of the system." | |
9677 | msgstr "" | |
9678 | ||
9679 | #. type: defvr | |
9680 | #: doc/guix.texi:3803 | |
9681 | #, no-wrap | |
9682 | msgid "{Scheme Variable} cargo-build-system" | |
9683 | msgstr "" | |
9684 | ||
9685 | #. type: cindex | |
9686 | #: doc/guix.texi:3804 | |
9687 | #, no-wrap | |
9688 | msgid "Rust programming language" | |
9689 | msgstr "" | |
9690 | ||
9691 | #. type: cindex | |
9692 | #: doc/guix.texi:3805 | |
9693 | #, no-wrap | |
9694 | msgid "Cargo (Rust build system)" | |
9695 | msgstr "" | |
9696 | ||
9697 | #. type: defvr | |
9698 | #: doc/guix.texi:3809 | |
9699 | msgid "" | |
9700 | "This variable is exported by @code{(guix build-system cargo)}. It supports " | |
39764ef8 JL |
9701 | "builds of packages using Cargo, the build tool of the @uref{https://www.rust-" |
9702 | "lang.org, Rust programming language}." | |
b9fe8fd6 JL |
9703 | msgstr "" |
9704 | ||
9705 | #. type: defvr | |
9706 | #: doc/guix.texi:3814 | |
9707 | msgid "" | |
9708 | "In its @code{configure} phase, this build system replaces dependencies " | |
9709 | "specified in the @file{Carto.toml} file with inputs to the Guix package. " | |
9710 | "The @code{install} phase installs the binaries, and it also installs the " | |
9711 | "source code and @file{Cargo.toml} file." | |
9712 | msgstr "" | |
9713 | ||
9714 | #. type: defvr | |
9715 | #: doc/guix.texi:3816 | |
9716 | #, no-wrap | |
9717 | msgid "{Scheme Variable} cmake-build-system" | |
9718 | msgstr "" | |
9719 | ||
9720 | #. type: defvr | |
9721 | #: doc/guix.texi:3820 | |
9722 | msgid "" | |
9723 | "This variable is exported by @code{(guix build-system cmake)}. It " | |
39764ef8 JL |
9724 | "implements the build procedure for packages using the @url{http://www.cmake." |
9725 | "org, CMake build tool}." | |
b9fe8fd6 JL |
9726 | msgstr "" |
9727 | ||
9728 | #. type: defvr | |
9729 | #: doc/guix.texi:3824 | |
9730 | msgid "" | |
9731 | "It automatically adds the @code{cmake} package to the set of inputs. Which " | |
9732 | "package is used can be specified with the @code{#:cmake} parameter." | |
9733 | msgstr "" | |
9734 | ||
9735 | #. type: defvr | |
9736 | #: doc/guix.texi:3831 | |
9737 | msgid "" | |
9738 | "The @code{#:configure-flags} parameter is taken as a list of flags passed to " | |
9739 | "the @command{cmake} command. The @code{#:build-type} parameter specifies in " | |
9740 | "abstract terms the flags passed to the compiler; it defaults to " | |
9741 | "@code{\"RelWithDebInfo\"} (short for ``release mode with debugging " | |
39764ef8 JL |
9742 | "information''), which roughly means that code is compiled with @code{-O2 -" |
9743 | "g}, as is the case for Autoconf-based packages by default." | |
b9fe8fd6 JL |
9744 | msgstr "" |
9745 | ||
9746 | #. type: defvr | |
9747 | #: doc/guix.texi:3833 | |
9748 | #, no-wrap | |
9749 | msgid "{Scheme Variable} go-build-system" | |
9750 | msgstr "" | |
9751 | ||
9752 | #. type: defvr | |
9753 | #: doc/guix.texi:3838 | |
9754 | msgid "" | |
9755 | "This variable is exported by @code{(guix build-system go)}. It implements a " | |
39764ef8 JL |
9756 | "build procedure for Go packages using the standard @url{https://golang.org/" |
9757 | "cmd/go/#hdr-Compile_packages_and_dependencies, Go build mechanisms}." | |
b9fe8fd6 JL |
9758 | msgstr "" |
9759 | ||
9760 | #. type: defvr | |
9761 | #: doc/guix.texi:3849 | |
9762 | msgid "" | |
9763 | "The user is expected to provide a value for the key @code{#:import-path} " | |
39764ef8 JL |
9764 | "and, in some cases, @code{#:unpack-path}. The @url{https://golang.org/doc/" |
9765 | "code.html#ImportPaths, import path} corresponds to the file system path " | |
9766 | "expected by the package's build scripts and any referring packages, and " | |
9767 | "provides a unique way to refer to a Go package. It is typically based on a " | |
9768 | "combination of the package source code's remote URI and file system " | |
9769 | "hierarchy structure. In some cases, you will need to unpack the package's " | |
9770 | "source code to a different directory structure than the one indicated by the " | |
9771 | "import path, and @code{#:unpack-path} should be used in such cases." | |
b9fe8fd6 JL |
9772 | msgstr "" |
9773 | ||
9774 | #. type: defvr | |
9775 | #: doc/guix.texi:3854 | |
9776 | msgid "" | |
9777 | "Packages that provide Go libraries should be installed along with their " | |
9778 | "source code. The key @code{#:install-source?}, which defaults to @code{#t}, " | |
9779 | "controls whether or not the source code is installed. It can be set to " | |
9780 | "@code{#f} for packages that only provide executable files." | |
9781 | msgstr "" | |
9782 | ||
9783 | #. type: defvr | |
9784 | #: doc/guix.texi:3856 | |
9785 | #, no-wrap | |
9786 | msgid "{Scheme Variable} glib-or-gtk-build-system" | |
9787 | msgstr "" | |
9788 | ||
9789 | #. type: defvr | |
9790 | #: doc/guix.texi:3859 | |
9791 | msgid "" | |
9792 | "This variable is exported by @code{(guix build-system glib-or-gtk)}. It is " | |
9793 | "intended for use with packages making use of GLib or GTK+." | |
9794 | msgstr "" | |
9795 | ||
9796 | #. type: defvr | |
9797 | #: doc/guix.texi:3862 | |
9798 | msgid "" | |
9799 | "This build system adds the following two phases to the ones defined by " | |
9800 | "@var{gnu-build-system}:" | |
9801 | msgstr "" | |
9802 | ||
9803 | #. type: item | |
9804 | #: doc/guix.texi:3864 doc/guix.texi:4159 | |
9805 | #, no-wrap | |
9806 | msgid "glib-or-gtk-wrap" | |
9807 | msgstr "" | |
9808 | ||
9809 | #. type: table | |
9810 | #: doc/guix.texi:3871 | |
9811 | msgid "" | |
9812 | "The phase @code{glib-or-gtk-wrap} ensures that programs in @file{bin/} are " | |
39764ef8 JL |
9813 | "able to find GLib ``schemas'' and @uref{https://developer.gnome.org/gtk3/" |
9814 | "stable/gtk-running.html, GTK+ modules}. This is achieved by wrapping the " | |
9815 | "programs in launch scripts that appropriately set the @code{XDG_DATA_DIRS} " | |
9816 | "and @code{GTK_PATH} environment variables." | |
b9fe8fd6 JL |
9817 | msgstr "" |
9818 | ||
9819 | #. type: table | |
9820 | #: doc/guix.texi:3878 | |
9821 | msgid "" | |
9822 | "It is possible to exclude specific package outputs from that wrapping " | |
39764ef8 JL |
9823 | "process by listing their names in the @code{#:glib-or-gtk-wrap-excluded-" |
9824 | "outputs} parameter. This is useful when an output is known not to contain " | |
9825 | "any GLib or GTK+ binaries, and where wrapping would gratuitously add a " | |
9826 | "dependency of that output on GLib and GTK+." | |
b9fe8fd6 JL |
9827 | msgstr "" |
9828 | ||
9829 | #. type: item | |
9830 | #: doc/guix.texi:3879 doc/guix.texi:4163 | |
9831 | #, no-wrap | |
9832 | msgid "glib-or-gtk-compile-schemas" | |
9833 | msgstr "" | |
9834 | ||
9835 | #. type: table | |
9836 | #: doc/guix.texi:3887 | |
9837 | msgid "" | |
9838 | "The phase @code{glib-or-gtk-compile-schemas} makes sure that all " | |
9839 | "@uref{https://developer.gnome.org/gio/stable/glib-compile-schemas.html, " | |
9840 | "GSettings schemas} of GLib are compiled. Compilation is performed by the " | |
9841 | "@command{glib-compile-schemas} program. It is provided by the package " | |
9842 | "@code{glib:bin} which is automatically imported by the build system. The " | |
9843 | "@code{glib} package providing @command{glib-compile-schemas} can be " | |
9844 | "specified with the @code{#:glib} parameter." | |
9845 | msgstr "" | |
9846 | ||
9847 | #. type: defvr | |
9848 | #: doc/guix.texi:3890 | |
9849 | msgid "Both phases are executed after the @code{install} phase." | |
9850 | msgstr "" | |
9851 | ||
9852 | #. type: defvr | |
9853 | #: doc/guix.texi:3892 | |
9854 | #, no-wrap | |
9855 | msgid "{Scheme Variable} minify-build-system" | |
9856 | msgstr "" | |
9857 | ||
9858 | #. type: defvr | |
9859 | #: doc/guix.texi:3895 | |
9860 | msgid "" | |
9861 | "This variable is exported by @code{(guix build-system minify)}. It " | |
9862 | "implements a minification procedure for simple JavaScript packages." | |
9863 | msgstr "" | |
9864 | ||
9865 | #. type: defvr | |
9866 | #: doc/guix.texi:3901 | |
9867 | msgid "" | |
9868 | "It adds @code{uglify-js} to the set of inputs and uses it to compress all " | |
9869 | "JavaScript files in the @file{src} directory. A different minifier package " | |
9870 | "can be specified with the @code{#:uglify-js} parameter, but it is expected " | |
9871 | "that the package writes the minified code to the standard output." | |
9872 | msgstr "" | |
9873 | ||
9874 | #. type: defvr | |
9875 | #: doc/guix.texi:3905 | |
9876 | msgid "" | |
9877 | "When the input JavaScript files are not all located in the @file{src} " | |
9878 | "directory, the parameter @code{#:javascript-files} can be used to specify a " | |
9879 | "list of file names to feed to the minifier." | |
9880 | msgstr "" | |
9881 | ||
9882 | #. type: defvr | |
9883 | #: doc/guix.texi:3907 | |
9884 | #, no-wrap | |
9885 | msgid "{Scheme Variable} ocaml-build-system" | |
9886 | msgstr "" | |
9887 | ||
9888 | #. type: defvr | |
9889 | #: doc/guix.texi:3913 | |
9890 | msgid "" | |
9891 | "This variable is exported by @code{(guix build-system ocaml)}. It " | |
9892 | "implements a build procedure for @uref{https://ocaml.org, OCaml} packages, " | |
9893 | "which consists of choosing the correct set of commands to run for each " | |
9894 | "package. OCaml packages can expect many different commands to be run. This " | |
9895 | "build system will try some of them." | |
9896 | msgstr "" | |
9897 | ||
9898 | #. type: defvr | |
9899 | #: doc/guix.texi:3923 | |
9900 | msgid "" | |
9901 | "When the package has a @file{setup.ml} file present at the top-level, it " | |
9902 | "will run @code{ocaml setup.ml -configure}, @code{ocaml setup.ml -build} and " | |
9903 | "@code{ocaml setup.ml -install}. The build system will assume that this file " | |
9904 | "was generated by @uref{http://oasis.forge.ocamlcore.org/, OASIS} and will " | |
9905 | "take care of setting the prefix and enabling tests if they are not " | |
39764ef8 JL |
9906 | "disabled. You can pass configure and build flags with the @code{#:configure-" |
9907 | "flags} and @code{#:build-flags}. The @code{#:test-flags} key can be passed " | |
9908 | "to change the set of flags used to enable tests. The @code{#:use-make?} key " | |
9909 | "can be used to bypass this system in the build and install phases." | |
b9fe8fd6 JL |
9910 | msgstr "" |
9911 | ||
9912 | #. type: defvr | |
9913 | #: doc/guix.texi:3928 | |
9914 | msgid "" | |
9915 | "When the package has a @file{configure} file, it is assumed that it is a " | |
9916 | "hand-made configure script that requires a different argument format than in " | |
39764ef8 JL |
9917 | "the @code{gnu-build-system}. You can add more flags with the @code{#:" |
9918 | "configure-flags} key." | |
b9fe8fd6 JL |
9919 | msgstr "" |
9920 | ||
9921 | #. type: defvr | |
9922 | #: doc/guix.texi:3932 | |
9923 | msgid "" | |
9924 | "When the package has a @file{Makefile} file (or @code{#:use-make?} is " | |
9925 | "@code{#t}), it will be used and more flags can be passed to the build and " | |
9926 | "install phases with the @code{#:make-flags} key." | |
9927 | msgstr "" | |
9928 | ||
9929 | #. type: defvr | |
9930 | #: doc/guix.texi:3940 | |
9931 | msgid "" | |
9932 | "Finally, some packages do not have these files and use a somewhat standard " | |
9933 | "location for its build system. In that case, the build system will run " | |
9934 | "@code{ocaml pkg/pkg.ml} or @code{ocaml pkg/build.ml} and take care of " | |
9935 | "providing the path to the required findlib module. Additional flags can be " | |
9936 | "passed via the @code{#:build-flags} key. Install is taken care of by " | |
9937 | "@command{opam-installer}. In this case, the @code{opam} package must be " | |
9938 | "added to the @code{native-inputs} field of the package definition." | |
9939 | msgstr "" | |
9940 | ||
9941 | #. type: defvr | |
9942 | #: doc/guix.texi:3948 | |
9943 | msgid "" | |
9944 | "Note that most OCaml packages assume they will be installed in the same " | |
9945 | "directory as OCaml, which is not what we want in guix. In particular, they " | |
9946 | "will install @file{.so} files in their module's directory, which is usually " | |
9947 | "fine because it is in the OCaml compiler directory. In guix though, these " | |
9948 | "libraries cannot be found and we use @code{CAML_LD_LIBRARY_PATH}. This " | |
9949 | "variable points to @file{lib/ocaml/site-lib/stubslibs} and this is where " | |
9950 | "@file{.so} libraries should be installed." | |
9951 | msgstr "" | |
9952 | ||
9953 | #. type: defvr | |
9954 | #: doc/guix.texi:3950 | |
9955 | #, no-wrap | |
9956 | msgid "{Scheme Variable} python-build-system" | |
9957 | msgstr "" | |
9958 | ||
9959 | #. type: defvr | |
9960 | #: doc/guix.texi:3955 | |
9961 | msgid "" | |
9962 | "This variable is exported by @code{(guix build-system python)}. It " | |
9963 | "implements the more or less standard build procedure used by Python " | |
9964 | "packages, which consists in running @code{python setup.py build} and then " | |
9965 | "@code{python setup.py install --prefix=/gnu/store/@dots{}}." | |
9966 | msgstr "" | |
9967 | ||
9968 | #. type: defvr | |
9969 | #: doc/guix.texi:3959 | |
9970 | msgid "" | |
9971 | "For packages that install stand-alone Python programs under @code{bin/}, it " | |
9972 | "takes care of wrapping these programs so that their @code{PYTHONPATH} " | |
9973 | "environment variable points to all the Python libraries they depend on." | |
9974 | msgstr "" | |
9975 | ||
9976 | #. type: defvr | |
9977 | #: doc/guix.texi:3965 | |
9978 | msgid "" | |
9979 | "Which Python package is used to perform the build can be specified with the " | |
9980 | "@code{#:python} parameter. This is a useful way to force a package to be " | |
9981 | "built for a specific version of the Python interpreter, which might be " | |
9982 | "necessary if the package is only compatible with a single interpreter " | |
9983 | "version." | |
9984 | msgstr "" | |
9985 | ||
9986 | #. type: defvr | |
9987 | #: doc/guix.texi:3970 | |
9988 | msgid "" | |
9989 | "By default guix calls @code{setup.py} under control of @code{setuptools}, " | |
9990 | "much like @command{pip} does. Some packages are not compatible with " | |
39764ef8 JL |
9991 | "setuptools (and pip), thus you can disable this by setting the @code{#:use-" |
9992 | "setuptools} parameter to @code{#f}." | |
b9fe8fd6 JL |
9993 | msgstr "" |
9994 | ||
9995 | #. type: defvr | |
9996 | #: doc/guix.texi:3972 | |
9997 | #, no-wrap | |
9998 | msgid "{Scheme Variable} perl-build-system" | |
9999 | msgstr "" | |
10000 | ||
10001 | #. type: defvr | |
10002 | #: doc/guix.texi:3984 | |
10003 | msgid "" | |
10004 | "This variable is exported by @code{(guix build-system perl)}. It implements " | |
10005 | "the standard build procedure for Perl packages, which either consists in " | |
10006 | "running @code{perl Build.PL --prefix=/gnu/store/@dots{}}, followed by " | |
10007 | "@code{Build} and @code{Build install}; or in running @code{perl Makefile.PL " | |
10008 | "PREFIX=/gnu/store/@dots{}}, followed by @code{make} and @code{make install}, " | |
10009 | "depending on which of @code{Build.PL} or @code{Makefile.PL} is present in " | |
10010 | "the package distribution. Preference is given to the former if both " | |
10011 | "@code{Build.PL} and @code{Makefile.PL} exist in the package distribution. " | |
39764ef8 JL |
10012 | "This preference can be reversed by specifying @code{#t} for the @code{#:make-" |
10013 | "maker?} parameter." | |
b9fe8fd6 JL |
10014 | msgstr "" |
10015 | ||
10016 | #. type: defvr | |
10017 | #: doc/guix.texi:3988 | |
10018 | msgid "" | |
10019 | "The initial @code{perl Makefile.PL} or @code{perl Build.PL} invocation " | |
39764ef8 JL |
10020 | "passes flags specified by the @code{#:make-maker-flags} or @code{#:module-" |
10021 | "build-flags} parameter, respectively." | |
b9fe8fd6 JL |
10022 | msgstr "" |
10023 | ||
10024 | #. type: defvr | |
10025 | #: doc/guix.texi:3990 | |
10026 | msgid "Which Perl package is used can be specified with @code{#:perl}." | |
10027 | msgstr "" | |
10028 | ||
10029 | #. type: defvr | |
10030 | #: doc/guix.texi:3992 | |
10031 | #, no-wrap | |
10032 | msgid "{Scheme Variable} r-build-system" | |
10033 | msgstr "" | |
10034 | ||
10035 | #. type: defvr | |
10036 | #: doc/guix.texi:4000 | |
10037 | msgid "" | |
10038 | "This variable is exported by @code{(guix build-system r)}. It implements " | |
10039 | "the build procedure used by @uref{http://r-project.org, R} packages, which " | |
39764ef8 JL |
10040 | "essentially is little more than running @code{R CMD INSTALL --library=/gnu/" |
10041 | "store/@dots{}} in an environment where @code{R_LIBS_SITE} contains the paths " | |
10042 | "to all R package inputs. Tests are run after installation using the R " | |
10043 | "function @code{tools::testInstalledPackage}." | |
b9fe8fd6 JL |
10044 | msgstr "" |
10045 | ||
10046 | #. type: defvr | |
10047 | #: doc/guix.texi:4002 | |
10048 | #, no-wrap | |
10049 | msgid "{Scheme Variable} texlive-build-system" | |
10050 | msgstr "" | |
10051 | ||
10052 | #. type: defvr | |
10053 | #: doc/guix.texi:4007 | |
10054 | msgid "" | |
10055 | "This variable is exported by @code{(guix build-system texlive)}. It is used " | |
10056 | "to build TeX packages in batch mode with a specified engine. The build " | |
10057 | "system sets the @code{TEXINPUTS} variable to find all TeX source files in " | |
10058 | "the inputs." | |
10059 | msgstr "" | |
10060 | ||
10061 | #. type: defvr | |
10062 | #: doc/guix.texi:4016 | |
10063 | msgid "" | |
10064 | "By default it runs @code{luatex} on all files ending on @code{ins}. A " | |
10065 | "different engine and format can be specified with the @code{#:tex-format} " | |
39764ef8 JL |
10066 | "argument. Different build targets can be specified with the @code{#:build-" |
10067 | "targets} argument, which expects a list of file names. The build system " | |
10068 | "adds only @code{texlive-bin} and @code{texlive-latex-base} (both from " | |
10069 | "@code{(gnu packages tex}) to the inputs. Both can be overridden with the " | |
10070 | "arguments @code{#:texlive-bin} and @code{#:texlive-latex-base}, respectively." | |
b9fe8fd6 JL |
10071 | msgstr "" |
10072 | ||
10073 | #. type: defvr | |
10074 | #: doc/guix.texi:4019 | |
10075 | msgid "" | |
10076 | "The @code{#:tex-directory} parameter tells the build system where to install " | |
10077 | "the built files under the texmf tree." | |
10078 | msgstr "" | |
10079 | ||
10080 | #. type: defvr | |
10081 | #: doc/guix.texi:4021 | |
10082 | #, no-wrap | |
10083 | msgid "{Scheme Variable} ruby-build-system" | |
10084 | msgstr "" | |
10085 | ||
10086 | #. type: defvr | |
10087 | #: doc/guix.texi:4025 | |
10088 | msgid "" | |
10089 | "This variable is exported by @code{(guix build-system ruby)}. It implements " | |
10090 | "the RubyGems build procedure used by Ruby packages, which involves running " | |
10091 | "@code{gem build} followed by @code{gem install}." | |
10092 | msgstr "" | |
10093 | ||
10094 | #. type: defvr | |
10095 | #: doc/guix.texi:4033 | |
10096 | msgid "" | |
10097 | "The @code{source} field of a package that uses this build system typically " | |
10098 | "references a gem archive, since this is the format that Ruby developers use " | |
10099 | "when releasing their software. The build system unpacks the gem archive, " | |
10100 | "potentially patches the source, runs the test suite, repackages the gem, and " | |
10101 | "installs it. Additionally, directories and tarballs may be referenced to " | |
10102 | "allow building unreleased gems from Git or a traditional source release " | |
10103 | "tarball." | |
10104 | msgstr "" | |
10105 | ||
10106 | #. type: defvr | |
10107 | #: doc/guix.texi:4037 | |
10108 | msgid "" | |
10109 | "Which Ruby package is used can be specified with the @code{#:ruby} " | |
10110 | "parameter. A list of additional flags to be passed to the @command{gem} " | |
10111 | "command can be specified with the @code{#:gem-flags} parameter." | |
10112 | msgstr "" | |
10113 | ||
10114 | #. type: defvr | |
10115 | #: doc/guix.texi:4039 | |
10116 | #, no-wrap | |
10117 | msgid "{Scheme Variable} waf-build-system" | |
10118 | msgstr "" | |
10119 | ||
10120 | #. type: defvr | |
10121 | #: doc/guix.texi:4045 | |
10122 | msgid "" | |
10123 | "This variable is exported by @code{(guix build-system waf)}. It implements " | |
39764ef8 JL |
10124 | "a build procedure around the @code{waf} script. The common phases---" |
10125 | "@code{configure}, @code{build}, and @code{install}---are implemented by " | |
10126 | "passing their names as arguments to the @code{waf} script." | |
b9fe8fd6 JL |
10127 | msgstr "" |
10128 | ||
10129 | #. type: defvr | |
10130 | #: doc/guix.texi:4049 | |
10131 | msgid "" | |
10132 | "The @code{waf} script is executed by the Python interpreter. Which Python " | |
10133 | "package is used to run the script can be specified with the @code{#:python} " | |
10134 | "parameter." | |
10135 | msgstr "" | |
10136 | ||
10137 | #. type: defvr | |
10138 | #: doc/guix.texi:4051 | |
10139 | #, no-wrap | |
10140 | msgid "{Scheme Variable} scons-build-system" | |
10141 | msgstr "" | |
10142 | ||
10143 | #. type: defvr | |
10144 | #: doc/guix.texi:4057 | |
10145 | msgid "" | |
10146 | "This variable is exported by @code{(guix build-system scons)}. It " | |
10147 | "implements the build procedure used by the SCons software construction " | |
10148 | "tool. This build system runs @code{scons} to build the package, @code{scons " | |
10149 | "test} to run tests, and then @code{scons install} to install the package." | |
10150 | msgstr "" | |
10151 | ||
10152 | #. type: defvr | |
10153 | #: doc/guix.texi:4062 | |
10154 | msgid "" | |
10155 | "Additional flags to be passed to @code{scons} can be specified with the " | |
10156 | "@code{#:scons-flags} parameter. The version of Python used to run SCons can " | |
39764ef8 JL |
10157 | "be specified by selecting the appropriate SCons package with the @code{#:" |
10158 | "scons} parameter." | |
b9fe8fd6 JL |
10159 | msgstr "" |
10160 | ||
10161 | #. type: defvr | |
10162 | #: doc/guix.texi:4064 | |
10163 | #, no-wrap | |
10164 | msgid "{Scheme Variable} haskell-build-system" | |
10165 | msgstr "" | |
10166 | ||
10167 | #. type: defvr | |
10168 | #: doc/guix.texi:4078 | |
10169 | msgid "" | |
10170 | "This variable is exported by @code{(guix build-system haskell)}. It " | |
10171 | "implements the Cabal build procedure used by Haskell packages, which " | |
39764ef8 JL |
10172 | "involves running @code{runhaskell Setup.hs configure --prefix=/gnu/store/" |
10173 | "@dots{}} and @code{runhaskell Setup.hs build}. Instead of installing the " | |
10174 | "package by running @code{runhaskell Setup.hs install}, to avoid trying to " | |
10175 | "register libraries in the read-only compiler store directory, the build " | |
10176 | "system uses @code{runhaskell Setup.hs copy}, followed by @code{runhaskell " | |
10177 | "Setup.hs register}. In addition, the build system generates the package " | |
10178 | "documentation by running @code{runhaskell Setup.hs haddock}, unless @code{#:" | |
10179 | "haddock? #f} is passed. Optional Haddock parameters can be passed with the " | |
10180 | "help of the @code{#:haddock-flags} parameter. If the file @code{Setup.hs} " | |
10181 | "is not found, the build system looks for @code{Setup.lhs} instead." | |
b9fe8fd6 JL |
10182 | msgstr "" |
10183 | ||
10184 | #. type: defvr | |
10185 | #: doc/guix.texi:4081 | |
10186 | msgid "" | |
10187 | "Which Haskell compiler is used can be specified with the @code{#:haskell} " | |
10188 | "parameter which defaults to @code{ghc}." | |
10189 | msgstr "" | |
10190 | ||
10191 | #. type: defvr | |
10192 | #: doc/guix.texi:4083 | |
10193 | #, no-wrap | |
10194 | msgid "{Scheme Variable} dub-build-system" | |
10195 | msgstr "" | |
10196 | ||
10197 | #. type: defvr | |
10198 | #: doc/guix.texi:4088 | |
10199 | msgid "" | |
10200 | "This variable is exported by @code{(guix build-system dub)}. It implements " | |
10201 | "the Dub build procedure used by D packages, which involves running @code{dub " | |
10202 | "build} and @code{dub run}. Installation is done by copying the files " | |
10203 | "manually." | |
10204 | msgstr "" | |
10205 | ||
10206 | #. type: defvr | |
10207 | #: doc/guix.texi:4091 | |
10208 | msgid "" | |
10209 | "Which D compiler is used can be specified with the @code{#:ldc} parameter " | |
10210 | "which defaults to @code{ldc}." | |
10211 | msgstr "" | |
10212 | ||
10213 | #. type: defvr | |
10214 | #: doc/guix.texi:4093 | |
10215 | #, no-wrap | |
10216 | msgid "{Scheme Variable} emacs-build-system" | |
10217 | msgstr "" | |
10218 | ||
10219 | #. type: defvr | |
10220 | #: doc/guix.texi:4097 | |
10221 | msgid "" | |
10222 | "This variable is exported by @code{(guix build-system emacs)}. It " | |
10223 | "implements an installation procedure similar to the packaging system of " | |
10224 | "Emacs itself (@pxref{Packages,,, emacs, The GNU Emacs Manual})." | |
10225 | msgstr "" | |
10226 | ||
10227 | #. type: defvr | |
10228 | #: doc/guix.texi:4104 | |
10229 | msgid "" | |
10230 | "It first creates the @code{@var{package}-autoloads.el} file, then it byte " | |
10231 | "compiles all Emacs Lisp files. Differently from the Emacs packaging system, " | |
10232 | "the Info documentation files are moved to the standard documentation " | |
10233 | "directory and the @file{dir} file is deleted. Each package is installed in " | |
10234 | "its own directory under @file{share/emacs/site-lisp/guix.d}." | |
10235 | msgstr "" | |
10236 | ||
10237 | #. type: defvr | |
10238 | #: doc/guix.texi:4106 | |
10239 | #, no-wrap | |
10240 | msgid "{Scheme Variable} font-build-system" | |
10241 | msgstr "" | |
10242 | ||
10243 | #. type: defvr | |
10244 | #: doc/guix.texi:4112 | |
10245 | msgid "" | |
10246 | "This variable is exported by @code{(guix build-system font)}. It implements " | |
39764ef8 JL |
10247 | "an installation procedure for font packages where upstream provides pre-" |
10248 | "compiled TrueType, OpenType, etc. font files that merely need to be copied " | |
10249 | "into place. It copies font files to standard locations in the output " | |
b9fe8fd6 JL |
10250 | "directory." |
10251 | msgstr "" | |
10252 | ||
10253 | #. type: defvr | |
10254 | #: doc/guix.texi:4114 | |
10255 | #, no-wrap | |
10256 | msgid "{Scheme Variable} meson-build-system" | |
10257 | msgstr "" | |
10258 | ||
10259 | #. type: defvr | |
10260 | #: doc/guix.texi:4118 | |
10261 | msgid "" | |
10262 | "This variable is exported by @code{(guix build-system meson)}. It " | |
39764ef8 JL |
10263 | "implements the build procedure for packages that use @url{http://mesonbuild." |
10264 | "com, Meson} as their build system." | |
b9fe8fd6 JL |
10265 | msgstr "" |
10266 | ||
10267 | #. type: defvr | |
10268 | #: doc/guix.texi:4124 | |
10269 | msgid "" | |
10270 | "It adds both Meson and @uref{https://ninja-build.org/, Ninja} to the set of " | |
10271 | "inputs, and they can be changed with the parameters @code{#:meson} and " | |
10272 | "@code{#:ninja} if needed. The default Meson is @code{meson-for-build}, " | |
10273 | "which is special because it doesn't clear the @code{RUNPATH} of binaries and " | |
10274 | "libraries when they are installed." | |
10275 | msgstr "" | |
10276 | ||
10277 | #. type: defvr | |
10278 | #: doc/guix.texi:4127 | |
10279 | msgid "" | |
10280 | "This build system is an extension of @var{gnu-build-system}, but with the " | |
10281 | "following phases changed to some specific for Meson:" | |
10282 | msgstr "" | |
10283 | ||
10284 | #. type: table | |
10285 | #: doc/guix.texi:4134 | |
10286 | msgid "" | |
39764ef8 JL |
10287 | "The phase runs @code{meson} with the flags specified in @code{#:configure-" |
10288 | "flags}. The flag @code{--build-type} is always set to @code{plain} unless " | |
10289 | "something else is specified in @code{#:build-type}." | |
b9fe8fd6 JL |
10290 | msgstr "" |
10291 | ||
10292 | #. type: table | |
10293 | #: doc/guix.texi:4138 | |
10294 | msgid "" | |
10295 | "The phase runs @code{ninja} to build the package in parallel by default, but " | |
10296 | "this can be changed with @code{#:parallel-build?}." | |
10297 | msgstr "" | |
10298 | ||
10299 | #. type: table | |
10300 | #: doc/guix.texi:4142 | |
10301 | msgid "" | |
39764ef8 JL |
10302 | "The phase runs @code{ninja} with the target specified in @code{#:test-" |
10303 | "target}, which is @code{\"test\"} by default." | |
b9fe8fd6 JL |
10304 | msgstr "" |
10305 | ||
10306 | #. type: table | |
10307 | #: doc/guix.texi:4145 | |
10308 | msgid "The phase runs @code{ninja install} and can not be changed." | |
10309 | msgstr "" | |
10310 | ||
10311 | #. type: defvr | |
10312 | #: doc/guix.texi:4148 | |
10313 | msgid "Apart from that, the build system also adds the following phases:" | |
10314 | msgstr "" | |
10315 | ||
10316 | #. type: item | |
10317 | #: doc/guix.texi:4151 | |
10318 | #, no-wrap | |
10319 | msgid "fix-runpath" | |
10320 | msgstr "" | |
10321 | ||
10322 | #. type: table | |
10323 | #: doc/guix.texi:4158 | |
10324 | msgid "" | |
10325 | "This phase ensures that all binaries can find the libraries they need. It " | |
10326 | "searches for required libraries in subdirectories of the package being " | |
10327 | "built, and adds those to @code{RUNPATH} where needed. It also removes " | |
39764ef8 JL |
10328 | "references to libraries left over from the build phase by @code{meson-for-" |
10329 | "build}, such as test dependencies, that aren't actually required for the " | |
10330 | "program to run." | |
b9fe8fd6 JL |
10331 | msgstr "" |
10332 | ||
10333 | #. type: table | |
10334 | #: doc/guix.texi:4162 doc/guix.texi:4166 | |
10335 | msgid "" | |
10336 | "This phase is the phase provided by @code{glib-or-gtk-build-system}, and it " | |
10337 | "is not enabled by default. It can be enabled with @code{#:glib-or-gtk?}." | |
10338 | msgstr "" | |
10339 | ||
10340 | #. type: Plain text | |
10341 | #: doc/guix.texi:4173 | |
10342 | msgid "" | |
10343 | "Lastly, for packages that do not need anything as sophisticated, a " | |
10344 | "``trivial'' build system is provided. It is trivial in the sense that it " | |
10345 | "provides basically no support: it does not pull any implicit inputs, and " | |
10346 | "does not have a notion of build phases." | |
10347 | msgstr "" | |
10348 | ||
10349 | #. type: defvr | |
10350 | #: doc/guix.texi:4174 | |
10351 | #, no-wrap | |
10352 | msgid "{Scheme Variable} trivial-build-system" | |
10353 | msgstr "" | |
10354 | ||
10355 | #. type: defvr | |
10356 | #: doc/guix.texi:4176 | |
10357 | msgid "This variable is exported by @code{(guix build-system trivial)}." | |
10358 | msgstr "" | |
10359 | ||
10360 | #. type: defvr | |
10361 | #: doc/guix.texi:4181 | |
10362 | msgid "" | |
10363 | "This build system requires a @code{#:builder} argument. This argument must " | |
10364 | "be a Scheme expression that builds the package output(s)---as with " | |
39764ef8 JL |
10365 | "@code{build-expression->derivation} (@pxref{Derivations, @code{build-" |
10366 | "expression->derivation}})." | |
b9fe8fd6 JL |
10367 | msgstr "" |
10368 | ||
10369 | #. type: cindex | |
10370 | #: doc/guix.texi:4187 | |
10371 | #, no-wrap | |
10372 | msgid "store items" | |
10373 | msgstr "" | |
10374 | ||
10375 | #. type: cindex | |
10376 | #: doc/guix.texi:4188 | |
10377 | #, no-wrap | |
10378 | msgid "store paths" | |
10379 | msgstr "" | |
10380 | ||
10381 | #. type: Plain text | |
10382 | #: doc/guix.texi:4199 | |
10383 | msgid "" | |
10384 | "Conceptually, the @dfn{store} is the place where derivations that have been " | |
39764ef8 JL |
10385 | "built successfully are stored---by default, @file{/gnu/store}. Sub-" |
10386 | "directories in the store are referred to as @dfn{store items} or sometimes " | |
10387 | "@dfn{store paths}. The store has an associated database that contains " | |
10388 | "information such as the store paths referred to by each store path, and the " | |
10389 | "list of @emph{valid} store items---results of successful builds. This " | |
10390 | "database resides in @file{@var{localstatedir}/guix/db}, where " | |
10391 | "@var{localstatedir} is the state directory specified @i{via} @option{--" | |
10392 | "localstatedir} at configure time, usually @file{/var}." | |
b9fe8fd6 JL |
10393 | msgstr "" |
10394 | ||
10395 | #. type: Plain text | |
10396 | #: doc/guix.texi:4204 | |
10397 | msgid "" | |
10398 | "The store is @emph{always} accessed by the daemon on behalf of its clients " | |
10399 | "(@pxref{Invoking guix-daemon}). To manipulate the store, clients connect to " | |
10400 | "the daemon over a Unix-domain socket, send requests to it, and read the " | |
10401 | "result---these are remote procedure calls, or RPCs." | |
10402 | msgstr "" | |
10403 | ||
10404 | #. type: quotation | |
10405 | #: doc/guix.texi:4209 | |
10406 | msgid "" | |
10407 | "Users must @emph{never} modify files under @file{/gnu/store} directly. This " | |
10408 | "would lead to inconsistencies and break the immutability assumptions of " | |
10409 | "Guix's functional model (@pxref{Introduction})." | |
10410 | msgstr "" | |
10411 | ||
10412 | #. type: quotation | |
10413 | #: doc/guix.texi:4213 | |
10414 | msgid "" | |
10415 | "@xref{Invoking guix gc, @command{guix gc --verify}}, for information on how " | |
10416 | "to check the integrity of the store and attempt recovery from accidental " | |
10417 | "modifications." | |
10418 | msgstr "" | |
10419 | ||
10420 | #. type: Plain text | |
10421 | #: doc/guix.texi:4220 | |
10422 | msgid "" | |
10423 | "The @code{(guix store)} module provides procedures to connect to the daemon, " | |
39764ef8 JL |
10424 | "and to perform RPCs. These are described below. By default, @code{open-" |
10425 | "connection}, and thus all the @command{guix} commands, connect to the local " | |
10426 | "daemon or to the URI specified by the @code{GUIX_DAEMON_SOCKET} environment " | |
10427 | "variable." | |
b9fe8fd6 JL |
10428 | msgstr "" |
10429 | ||
10430 | #. type: defvr | |
10431 | #: doc/guix.texi:4221 | |
10432 | #, no-wrap | |
10433 | msgid "{Environment Variable} GUIX_DAEMON_SOCKET" | |
10434 | msgstr "" | |
10435 | ||
10436 | #. type: defvr | |
10437 | #: doc/guix.texi:4226 | |
10438 | msgid "" | |
10439 | "When set, the value of this variable should be a file name or a URI " | |
39764ef8 JL |
10440 | "designating the daemon endpoint. When it is a file name, it denotes a Unix-" |
10441 | "domain socket to connect to. In addition to file names, the supported URI " | |
10442 | "schemes are:" | |
b9fe8fd6 JL |
10443 | msgstr "" |
10444 | ||
10445 | #. type: code{#1} | |
39764ef8 | 10446 | #: doc/guix.texi:4228 doc/guix.texi:15406 |
b9fe8fd6 JL |
10447 | #, no-wrap |
10448 | msgid "file" | |
10449 | msgstr "" | |
10450 | ||
10451 | #. type: itemx | |
10452 | #: doc/guix.texi:4229 | |
10453 | #, no-wrap | |
10454 | msgid "unix" | |
10455 | msgstr "" | |
10456 | ||
10457 | #. type: table | |
10458 | #: doc/guix.texi:4233 | |
10459 | msgid "" | |
39764ef8 JL |
10460 | "These are for Unix-domain sockets. @code{file:///var/guix/daemon-socket/" |
10461 | "socket} is equivalent to @file{/var/guix/daemon-socket/socket}." | |
b9fe8fd6 JL |
10462 | msgstr "" |
10463 | ||
10464 | #. type: item | |
10465 | #: doc/guix.texi:4234 | |
10466 | #, no-wrap | |
10467 | msgid "guix" | |
10468 | msgstr "" | |
10469 | ||
10470 | #. type: table | |
10471 | #: doc/guix.texi:4242 | |
10472 | msgid "" | |
10473 | "These URIs denote connections over TCP/IP, without encryption nor " | |
10474 | "authentication of the remote host. The URI must specify the host name and " | |
10475 | "optionally a port number (by default port 44146 is used):" | |
10476 | msgstr "" | |
10477 | ||
10478 | #. type: example | |
10479 | #: doc/guix.texi:4245 | |
10480 | #, no-wrap | |
10481 | msgid "guix://master.guix.example.org:1234\n" | |
10482 | msgstr "" | |
10483 | ||
10484 | #. type: table | |
10485 | #: doc/guix.texi:4250 | |
10486 | msgid "" | |
10487 | "This setup is suitable on local networks, such as clusters, where only " | |
39764ef8 JL |
10488 | "trusted nodes may connect to the build daemon at @code{master.guix.example." |
10489 | "org}." | |
b9fe8fd6 JL |
10490 | msgstr "" |
10491 | ||
10492 | #. type: table | |
10493 | #: doc/guix.texi:4254 | |
10494 | msgid "" | |
10495 | "The @code{--listen} option of @command{guix-daemon} can be used to instruct " | |
39764ef8 JL |
10496 | "it to listen for TCP connections (@pxref{Invoking guix-daemon, @code{--" |
10497 | "listen}})." | |
b9fe8fd6 JL |
10498 | msgstr "" |
10499 | ||
10500 | #. type: item | |
10501 | #: doc/guix.texi:4255 | |
10502 | #, no-wrap | |
10503 | msgid "ssh" | |
10504 | msgstr "" | |
10505 | ||
10506 | #. type: cindex | |
10507 | #: doc/guix.texi:4256 | |
10508 | #, no-wrap | |
10509 | msgid "SSH access to build daemons" | |
10510 | msgstr "" | |
10511 | ||
10512 | #. type: table | |
10513 | #: doc/guix.texi:4260 | |
10514 | msgid "" | |
10515 | "These URIs allow you to connect to a remote daemon over SSH@footnote{This " | |
10516 | "feature requires Guile-SSH (@pxref{Requirements}).}. A typical URL might " | |
10517 | "look like this:" | |
10518 | msgstr "" | |
10519 | ||
10520 | #. type: example | |
10521 | #: doc/guix.texi:4263 | |
10522 | #, no-wrap | |
10523 | msgid "ssh://charlie@@guix.example.org:22\n" | |
10524 | msgstr "" | |
10525 | ||
10526 | #. type: table | |
10527 | #: doc/guix.texi:4267 | |
10528 | msgid "" | |
10529 | "As for @command{guix copy}, the usual OpenSSH client configuration files are " | |
10530 | "honored (@pxref{Invoking guix copy})." | |
10531 | msgstr "" | |
10532 | ||
10533 | #. type: defvr | |
10534 | #: doc/guix.texi:4270 | |
10535 | msgid "Additional URI schemes may be supported in the future." | |
10536 | msgstr "" | |
10537 | ||
10538 | #. type: quotation | |
10539 | #: doc/guix.texi:4277 | |
10540 | msgid "" | |
10541 | "The ability to connect to remote build daemons is considered experimental as " | |
10542 | "of @value{VERSION}. Please get in touch with us to share any problems or " | |
10543 | "suggestions you may have (@pxref{Contributing})." | |
10544 | msgstr "" | |
10545 | ||
10546 | #. type: deffn | |
10547 | #: doc/guix.texi:4280 | |
10548 | #, no-wrap | |
10549 | msgid "{Scheme Procedure} open-connection [@var{uri}] [#:reserve-space? #t]" | |
10550 | msgstr "" | |
10551 | ||
10552 | #. type: deffn | |
10553 | #: doc/guix.texi:4285 | |
10554 | msgid "" | |
10555 | "Connect to the daemon over the Unix-domain socket at @var{uri} (a string). " | |
10556 | "When @var{reserve-space?} is true, instruct it to reserve a little bit of " | |
10557 | "extra space on the file system so that the garbage collector can still " | |
10558 | "operate should the disk become full. Return a server object." | |
10559 | msgstr "" | |
10560 | ||
10561 | #. type: deffn | |
10562 | #: doc/guix.texi:4288 | |
10563 | msgid "" | |
10564 | "@var{file} defaults to @var{%default-socket-path}, which is the normal " | |
10565 | "location given the options that were passed to @command{configure}." | |
10566 | msgstr "" | |
10567 | ||
10568 | #. type: deffn | |
10569 | #: doc/guix.texi:4290 | |
10570 | #, no-wrap | |
10571 | msgid "{Scheme Procedure} close-connection @var{server}" | |
10572 | msgstr "" | |
10573 | ||
10574 | #. type: deffn | |
10575 | #: doc/guix.texi:4292 | |
10576 | msgid "Close the connection to @var{server}." | |
10577 | msgstr "" | |
10578 | ||
10579 | #. type: defvr | |
10580 | #: doc/guix.texi:4294 | |
10581 | #, no-wrap | |
10582 | msgid "{Scheme Variable} current-build-output-port" | |
10583 | msgstr "" | |
10584 | ||
10585 | #. type: defvr | |
10586 | #: doc/guix.texi:4297 | |
10587 | msgid "" | |
10588 | "This variable is bound to a SRFI-39 parameter, which refers to the port " | |
10589 | "where build and error logs sent by the daemon should be written." | |
10590 | msgstr "" | |
10591 | ||
10592 | #. type: Plain text | |
10593 | #: doc/guix.texi:4301 | |
39764ef8 JL |
10594 | msgid "" |
10595 | "Procedures that make RPCs all take a server object as their first argument." | |
b9fe8fd6 JL |
10596 | msgstr "" |
10597 | ||
10598 | #. type: deffn | |
10599 | #: doc/guix.texi:4302 | |
10600 | #, no-wrap | |
10601 | msgid "{Scheme Procedure} valid-path? @var{server} @var{path}" | |
10602 | msgstr "" | |
10603 | ||
10604 | #. type: cindex | |
10605 | #: doc/guix.texi:4303 | |
10606 | #, no-wrap | |
10607 | msgid "invalid store items" | |
10608 | msgstr "" | |
10609 | ||
10610 | #. type: deffn | |
10611 | #: doc/guix.texi:4308 | |
10612 | msgid "" | |
10613 | "Return @code{#t} when @var{path} designates a valid store item and @code{#f} " | |
10614 | "otherwise (an invalid item may exist on disk but still be invalid, for " | |
10615 | "instance because it is the result of an aborted or failed build.)" | |
10616 | msgstr "" | |
10617 | ||
10618 | #. type: deffn | |
10619 | #: doc/guix.texi:4311 | |
10620 | msgid "" | |
10621 | "A @code{&nix-protocol-error} condition is raised if @var{path} is not " | |
10622 | "prefixed by the store directory (@file{/gnu/store})." | |
10623 | msgstr "" | |
10624 | ||
10625 | #. type: deffn | |
10626 | #: doc/guix.texi:4313 | |
10627 | #, no-wrap | |
39764ef8 | 10628 | msgid "{Scheme Procedure} add-text-to-store @var{server} @var{name} @var{text} [@var{references}]" |
b9fe8fd6 JL |
10629 | msgstr "" |
10630 | ||
10631 | #. type: deffn | |
10632 | #: doc/guix.texi:4317 | |
10633 | msgid "" | |
10634 | "Add @var{text} under file @var{name} in the store, and return its store " | |
10635 | "path. @var{references} is the list of store paths referred to by the " | |
10636 | "resulting store path." | |
10637 | msgstr "" | |
10638 | ||
10639 | #. type: deffn | |
10640 | #: doc/guix.texi:4319 | |
10641 | #, no-wrap | |
10642 | msgid "{Scheme Procedure} build-derivations @var{server} @var{derivations}" | |
10643 | msgstr "" | |
10644 | ||
10645 | #. type: deffn | |
10646 | #: doc/guix.texi:4323 | |
10647 | msgid "" | |
10648 | "Build @var{derivations} (a list of @code{<derivation>} objects or derivation " | |
10649 | "paths), and return when the worker is done building them. Return @code{#t} " | |
10650 | "on success." | |
10651 | msgstr "" | |
10652 | ||
10653 | #. type: Plain text | |
10654 | #: doc/guix.texi:4329 | |
10655 | msgid "" | |
10656 | "Note that the @code{(guix monads)} module provides a monad as well as " | |
10657 | "monadic versions of the above procedures, with the goal of making it more " | |
10658 | "convenient to work with code that accesses the store (@pxref{The Store " | |
10659 | "Monad})." | |
10660 | msgstr "" | |
10661 | ||
10662 | #. type: i{#1} | |
10663 | #: doc/guix.texi:4332 | |
10664 | msgid "This section is currently incomplete." | |
10665 | msgstr "" | |
10666 | ||
10667 | #. type: cindex | |
10668 | #: doc/guix.texi:4336 | |
10669 | #, no-wrap | |
10670 | msgid "derivations" | |
10671 | msgstr "" | |
10672 | ||
10673 | #. type: Plain text | |
10674 | #: doc/guix.texi:4340 | |
10675 | msgid "" | |
10676 | "Low-level build actions and the environment in which they are performed are " | |
10677 | "represented by @dfn{derivations}. A derivation contains the following " | |
10678 | "pieces of information:" | |
10679 | msgstr "" | |
10680 | ||
10681 | #. type: itemize | |
10682 | #: doc/guix.texi:4345 | |
10683 | msgid "" | |
10684 | "The outputs of the derivation---derivations produce at least one file or " | |
10685 | "directory in the store, but may produce more." | |
10686 | msgstr "" | |
10687 | ||
10688 | #. type: itemize | |
10689 | #: doc/guix.texi:4349 | |
10690 | msgid "" | |
10691 | "The inputs of the derivations, which may be other derivations or plain files " | |
10692 | "in the store (patches, build scripts, etc.)" | |
10693 | msgstr "" | |
10694 | ||
10695 | #. type: itemize | |
10696 | #: doc/guix.texi:4352 | |
10697 | msgid "The system type targeted by the derivation---e.g., @code{x86_64-linux}." | |
10698 | msgstr "" | |
10699 | ||
10700 | #. type: itemize | |
10701 | #: doc/guix.texi:4356 | |
10702 | msgid "" | |
10703 | "The file name of a build script in the store, along with the arguments to be " | |
10704 | "passed." | |
10705 | msgstr "" | |
10706 | ||
10707 | #. type: itemize | |
10708 | #: doc/guix.texi:4359 | |
10709 | msgid "A list of environment variables to be defined." | |
10710 | msgstr "" | |
10711 | ||
10712 | #. type: cindex | |
10713 | #: doc/guix.texi:4362 | |
10714 | #, no-wrap | |
10715 | msgid "derivation path" | |
10716 | msgstr "" | |
10717 | ||
10718 | #. type: Plain text | |
10719 | #: doc/guix.texi:4370 | |
10720 | msgid "" | |
10721 | "Derivations allow clients of the daemon to communicate build actions to the " | |
10722 | "store. They exist in two forms: as an in-memory representation, both on the " | |
39764ef8 JL |
10723 | "client- and daemon-side, and as files in the store whose name end in @code{." |
10724 | "drv}---these files are referred to as @dfn{derivation paths}. Derivations " | |
10725 | "paths can be passed to the @code{build-derivations} procedure to perform the " | |
10726 | "build actions they prescribe (@pxref{The Store})." | |
b9fe8fd6 JL |
10727 | msgstr "" |
10728 | ||
10729 | #. type: cindex | |
10730 | #: doc/guix.texi:4371 | |
10731 | #, no-wrap | |
10732 | msgid "fixed-output derivations" | |
10733 | msgstr "" | |
10734 | ||
10735 | #. type: Plain text | |
10736 | #: doc/guix.texi:4378 | |
10737 | msgid "" | |
10738 | "Operations such as file downloads and version-control checkouts for which " | |
39764ef8 JL |
10739 | "the expected content hash is known in advance are modeled as @dfn{fixed-" |
10740 | "output derivations}. Unlike regular derivations, the outputs of a fixed-" | |
10741 | "output derivation are independent of its inputs---e.g., a source code " | |
10742 | "download produces the same result regardless of the download method and " | |
b9fe8fd6 JL |
10743 | "tools being used." |
10744 | msgstr "" | |
10745 | ||
10746 | #. type: Plain text | |
10747 | #: doc/guix.texi:4383 | |
10748 | msgid "" | |
10749 | "The @code{(guix derivations)} module provides a representation of " | |
10750 | "derivations as Scheme objects, along with procedures to create and otherwise " | |
10751 | "manipulate derivations. The lowest-level primitive to create a derivation " | |
10752 | "is the @code{derivation} procedure:" | |
10753 | msgstr "" | |
10754 | ||
10755 | #. type: deffn | |
10756 | #: doc/guix.texi:4384 | |
10757 | #, no-wrap | |
10758 | msgid "{Scheme Procedure} derivation @var{store} @var{name} @var{builder} @" | |
10759 | msgstr "" | |
10760 | ||
10761 | #. type: deffn | |
10762 | #: doc/guix.texi:4393 | |
10763 | msgid "" | |
39764ef8 JL |
10764 | "@var{args} [#:outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @ [#:" |
10765 | "recursive? #f] [#:inputs '()] [#:env-vars '()] @ [#:system (%current-" | |
10766 | "system)] [#:references-graphs #f] @ [#:allowed-references #f] [#:disallowed-" | |
10767 | "references #f] @ [#:leaked-env-vars #f] [#:local-build? #f] @ [#:" | |
10768 | "substitutable? #t] Build a derivation with the given arguments, and return " | |
10769 | "the resulting @code{<derivation>} object." | |
b9fe8fd6 JL |
10770 | msgstr "" |
10771 | ||
10772 | #. type: deffn | |
10773 | #: doc/guix.texi:4400 | |
10774 | msgid "" | |
10775 | "When @var{hash} and @var{hash-algo} are given, a @dfn{fixed-output " | |
10776 | "derivation} is created---i.e., one whose result is known in advance, such as " | |
10777 | "a file download. If, in addition, @var{recursive?} is true, then that fixed " | |
10778 | "output may be an executable file or a directory and @var{hash} must be the " | |
10779 | "hash of an archive containing this output." | |
10780 | msgstr "" | |
10781 | ||
10782 | #. type: deffn | |
10783 | #: doc/guix.texi:4405 | |
10784 | msgid "" | |
10785 | "When @var{references-graphs} is true, it must be a list of file name/store " | |
10786 | "path pairs. In that case, the reference graph of each store path is " | |
10787 | "exported in the build environment in the corresponding file, in a simple " | |
10788 | "text format." | |
10789 | msgstr "" | |
10790 | ||
10791 | #. type: deffn | |
10792 | #: doc/guix.texi:4410 | |
10793 | msgid "" | |
10794 | "When @var{allowed-references} is true, it must be a list of store items or " | |
10795 | "outputs that the derivation's output may refer to. Likewise, " | |
10796 | "@var{disallowed-references}, if true, must be a list of things the outputs " | |
10797 | "may @emph{not} refer to." | |
10798 | msgstr "" | |
10799 | ||
10800 | #. type: deffn | |
10801 | #: doc/guix.texi:4417 | |
10802 | msgid "" | |
10803 | "When @var{leaked-env-vars} is true, it must be a list of strings denoting " | |
10804 | "environment variables that are allowed to ``leak'' from the daemon's " | |
39764ef8 JL |
10805 | "environment to the build environment. This is only applicable to fixed-" |
10806 | "output derivations---i.e., when @var{hash} is true. The main use is to " | |
10807 | "allow variables such as @code{http_proxy} to be passed to derivations that " | |
10808 | "download files." | |
b9fe8fd6 JL |
10809 | msgstr "" |
10810 | ||
10811 | #. type: deffn | |
10812 | #: doc/guix.texi:4422 | |
10813 | msgid "" | |
10814 | "When @var{local-build?} is true, declare that the derivation is not a good " | |
10815 | "candidate for offloading and should rather be built locally (@pxref{Daemon " | |
10816 | "Offload Setup}). This is the case for small derivations where the costs of " | |
10817 | "data transfers would outweigh the benefits." | |
10818 | msgstr "" | |
10819 | ||
10820 | #. type: deffn | |
10821 | #: doc/guix.texi:4427 | |
10822 | msgid "" | |
10823 | "When @var{substitutable?} is false, declare that substitutes of the " | |
10824 | "derivation's output should not be used (@pxref{Substitutes}). This is " | |
10825 | "useful, for instance, when building packages that capture details of the " | |
10826 | "host CPU instruction set." | |
10827 | msgstr "" | |
10828 | ||
10829 | #. type: Plain text | |
10830 | #: doc/guix.texi:4433 | |
10831 | msgid "" | |
10832 | "Here's an example with a shell script as its builder, assuming @var{store} " | |
10833 | "is an open connection to the daemon, and @var{bash} points to a Bash " | |
10834 | "executable in the store:" | |
10835 | msgstr "" | |
10836 | ||
10837 | #. type: lisp | |
10838 | #: doc/guix.texi:4438 | |
10839 | #, no-wrap | |
10840 | msgid "" | |
10841 | "(use-modules (guix utils)\n" | |
10842 | " (guix store)\n" | |
10843 | " (guix derivations))\n" | |
10844 | "\n" | |
10845 | msgstr "" | |
10846 | ||
10847 | #. type: lisp | |
10848 | #: doc/guix.texi:4447 | |
10849 | #, no-wrap | |
10850 | msgid "" | |
10851 | "(let ((builder ; add the Bash script to the store\n" | |
10852 | " (add-text-to-store store \"my-builder.sh\"\n" | |
10853 | " \"echo hello world > $out\\n\" '())))\n" | |
10854 | " (derivation store \"foo\"\n" | |
10855 | " bash `(\"-e\" ,builder)\n" | |
10856 | " #:inputs `((,bash) (,builder))\n" | |
10857 | " #:env-vars '((\"HOME\" . \"/homeless\"))))\n" | |
39764ef8 | 10858 | "@result{} #<derivation /gnu/store/@dots{}-foo.drv => /gnu/store/@dots{}-foo>\n" |
b9fe8fd6 JL |
10859 | msgstr "" |
10860 | ||
10861 | #. type: Plain text | |
10862 | #: doc/guix.texi:4454 | |
10863 | msgid "" | |
10864 | "As can be guessed, this primitive is cumbersome to use directly. A better " | |
10865 | "approach is to write build scripts in Scheme, of course! The best course of " | |
10866 | "action for that is to write the build code as a ``G-expression'', and to " | |
39764ef8 JL |
10867 | "pass it to @code{gexp->derivation}. For more information, @pxref{G-" |
10868 | "Expressions}." | |
b9fe8fd6 JL |
10869 | msgstr "" |
10870 | ||
10871 | #. type: Plain text | |
10872 | #: doc/guix.texi:4459 | |
10873 | msgid "" | |
10874 | "Once upon a time, @code{gexp->derivation} did not exist and constructing " | |
39764ef8 JL |
10875 | "derivations with build code written in Scheme was achieved with @code{build-" |
10876 | "expression->derivation}, documented below. This procedure is now deprecated " | |
10877 | "in favor of the much nicer @code{gexp->derivation}." | |
b9fe8fd6 JL |
10878 | msgstr "" |
10879 | ||
10880 | #. type: deffn | |
10881 | #: doc/guix.texi:4460 | |
10882 | #, no-wrap | |
10883 | msgid "{Scheme Procedure} build-expression->derivation @var{store} @" | |
10884 | msgstr "" | |
10885 | ||
10886 | #. type: deffn | |
10887 | #: doc/guix.texi:4476 | |
10888 | msgid "" | |
39764ef8 JL |
10889 | "@var{name} @var{exp} @ [#:system (%current-system)] [#:inputs '()] @ [#:" |
10890 | "outputs '(\"out\")] [#:hash #f] [#:hash-algo #f] @ [#:recursive? #f] [#:env-" | |
10891 | "vars '()] [#:modules '()] @ [#:references-graphs #f] [#:allowed-references " | |
10892 | "#f] @ [#:disallowed-references #f] @ [#:local-build? #f] [#:substitutable? " | |
10893 | "#t] [#:guile-for-build #f] Return a derivation that executes Scheme " | |
10894 | "expression @var{exp} as a builder for derivation @var{name}. @var{inputs} " | |
10895 | "must be a list of @code{(name drv-path sub-drv)} tuples; when @var{sub-drv} " | |
10896 | "is omitted, @code{\"out\"} is assumed. @var{modules} is a list of names of " | |
10897 | "Guile modules from the current search path to be copied in the store, " | |
10898 | "compiled, and made available in the load path during the execution of " | |
10899 | "@var{exp}---e.g., @code{((guix build utils) (guix build gnu-build-system))}." | |
b9fe8fd6 JL |
10900 | msgstr "" |
10901 | ||
10902 | #. type: deffn | |
10903 | #: doc/guix.texi:4484 | |
10904 | msgid "" | |
10905 | "@var{exp} is evaluated in an environment where @code{%outputs} is bound to a " | |
10906 | "list of output/path pairs, and where @code{%build-inputs} is bound to a list " | |
39764ef8 JL |
10907 | "of string/output-path pairs made from @var{inputs}. Optionally, @var{env-" |
10908 | "vars} is a list of string pairs specifying the name and value of environment " | |
10909 | "variables visible to the builder. The builder terminates by passing the " | |
10910 | "result of @var{exp} to @code{exit}; thus, when @var{exp} returns @code{#f}, " | |
10911 | "the build is considered to have failed." | |
b9fe8fd6 JL |
10912 | msgstr "" |
10913 | ||
10914 | #. type: deffn | |
10915 | #: doc/guix.texi:4488 | |
10916 | msgid "" | |
10917 | "@var{exp} is built using @var{guile-for-build} (a derivation). When " | |
10918 | "@var{guile-for-build} is omitted or is @code{#f}, the value of the " | |
10919 | "@code{%guile-for-build} fluid is used instead." | |
10920 | msgstr "" | |
10921 | ||
10922 | #. type: deffn | |
10923 | #: doc/guix.texi:4493 | |
10924 | msgid "" | |
39764ef8 JL |
10925 | "See the @code{derivation} procedure for the meaning of @var{references-" |
10926 | "graphs}, @var{allowed-references}, @var{disallowed-references}, @var{local-" | |
10927 | "build?}, and @var{substitutable?}." | |
b9fe8fd6 JL |
10928 | msgstr "" |
10929 | ||
10930 | #. type: Plain text | |
10931 | #: doc/guix.texi:4498 | |
10932 | msgid "" | |
10933 | "Here's an example of a single-output derivation that creates a directory " | |
10934 | "containing one file:" | |
10935 | msgstr "" | |
10936 | ||
10937 | #. type: lisp | |
10938 | #: doc/guix.texi:4506 | |
10939 | #, no-wrap | |
10940 | msgid "" | |
10941 | "(let ((builder '(let ((out (assoc-ref %outputs \"out\")))\n" | |
10942 | " (mkdir out) ; create /gnu/store/@dots{}-goo\n" | |
10943 | " (call-with-output-file (string-append out \"/test\")\n" | |
10944 | " (lambda (p)\n" | |
10945 | " (display '(hello guix) p))))))\n" | |
10946 | " (build-expression->derivation store \"goo\" builder))\n" | |
10947 | "\n" | |
10948 | msgstr "" | |
10949 | ||
10950 | #. type: lisp | |
10951 | #: doc/guix.texi:4508 | |
10952 | #, no-wrap | |
10953 | msgid "@result{} #<derivation /gnu/store/@dots{}-goo.drv => @dots{}>\n" | |
10954 | msgstr "" | |
10955 | ||
10956 | #. type: cindex | |
10957 | #: doc/guix.texi:4514 | |
10958 | #, no-wrap | |
10959 | msgid "monad" | |
10960 | msgstr "" | |
10961 | ||
10962 | #. type: Plain text | |
10963 | #: doc/guix.texi:4520 | |
10964 | msgid "" | |
10965 | "The procedures that operate on the store described in the previous sections " | |
10966 | "all take an open connection to the build daemon as their first argument. " | |
10967 | "Although the underlying model is functional, they either have side effects " | |
10968 | "or depend on the current state of the store." | |
10969 | msgstr "" | |
10970 | ||
10971 | #. type: Plain text | |
10972 | #: doc/guix.texi:4526 | |
10973 | msgid "" | |
10974 | "The former is inconvenient: the connection to the build daemon has to be " | |
10975 | "carried around in all those functions, making it impossible to compose " | |
10976 | "functions that do not take that parameter with functions that do. The " | |
10977 | "latter can be problematic: since store operations have side effects and/or " | |
10978 | "depend on external state, they have to be properly sequenced." | |
10979 | msgstr "" | |
10980 | ||
10981 | #. type: cindex | |
10982 | #: doc/guix.texi:4527 | |
10983 | #, no-wrap | |
10984 | msgid "monadic values" | |
10985 | msgstr "" | |
10986 | ||
10987 | #. type: cindex | |
10988 | #: doc/guix.texi:4528 | |
10989 | #, no-wrap | |
10990 | msgid "monadic functions" | |
10991 | msgstr "" | |
10992 | ||
10993 | #. type: Plain text | |
10994 | #: doc/guix.texi:4538 | |
10995 | msgid "" | |
10996 | "This is where the @code{(guix monads)} module comes in. This module " | |
10997 | "provides a framework for working with @dfn{monads}, and a particularly " | |
10998 | "useful monad for our uses, the @dfn{store monad}. Monads are a construct " | |
10999 | "that allows two things: associating ``context'' with values (in our case, " | |
11000 | "the context is the store), and building sequences of computations (here " | |
11001 | "computations include accesses to the store). Values in a monad---values " | |
11002 | "that carry this additional context---are called @dfn{monadic values}; " | |
11003 | "procedures that return such values are called @dfn{monadic procedures}." | |
11004 | msgstr "" | |
11005 | ||
11006 | #. type: Plain text | |
11007 | #: doc/guix.texi:4540 | |
11008 | msgid "Consider this ``normal'' procedure:" | |
11009 | msgstr "" | |
11010 | ||
11011 | #. type: example | |
11012 | #: doc/guix.texi:4549 | |
11013 | #, no-wrap | |
11014 | msgid "" | |
11015 | "(define (sh-symlink store)\n" | |
11016 | " ;; Return a derivation that symlinks the 'bash' executable.\n" | |
11017 | " (let* ((drv (package-derivation store bash))\n" | |
11018 | " (out (derivation->output-path drv))\n" | |
11019 | " (sh (string-append out \"/bin/bash\")))\n" | |
11020 | " (build-expression->derivation store \"sh\"\n" | |
11021 | " `(symlink ,sh %output))))\n" | |
11022 | msgstr "" | |
11023 | ||
11024 | #. type: Plain text | |
11025 | #: doc/guix.texi:4553 | |
11026 | msgid "" | |
11027 | "Using @code{(guix monads)} and @code{(guix gexp)}, it may be rewritten as a " | |
11028 | "monadic function:" | |
11029 | msgstr "" | |
11030 | ||
11031 | #. type: example | |
11032 | #: doc/guix.texi:4561 | |
11033 | #, no-wrap | |
11034 | msgid "" | |
11035 | "(define (sh-symlink)\n" | |
11036 | " ;; Same, but return a monadic value.\n" | |
11037 | " (mlet %store-monad ((drv (package->derivation bash)))\n" | |
11038 | " (gexp->derivation \"sh\"\n" | |
11039 | " #~(symlink (string-append #$drv \"/bin/bash\")\n" | |
11040 | " #$output))))\n" | |
11041 | msgstr "" | |
11042 | ||
11043 | #. type: Plain text | |
11044 | #: doc/guix.texi:4568 | |
11045 | msgid "" | |
11046 | "There are several things to note in the second version: the @code{store} " | |
11047 | "parameter is now implicit and is ``threaded'' in the calls to the " | |
11048 | "@code{package->derivation} and @code{gexp->derivation} monadic procedures, " | |
11049 | "and the monadic value returned by @code{package->derivation} is @dfn{bound} " | |
11050 | "using @code{mlet} instead of plain @code{let}." | |
11051 | msgstr "" | |
11052 | ||
11053 | #. type: Plain text | |
11054 | #: doc/guix.texi:4572 | |
11055 | msgid "" | |
11056 | "As it turns out, the call to @code{package->derivation} can even be omitted " | |
39764ef8 JL |
11057 | "since it will take place implicitly, as we will see later (@pxref{G-" |
11058 | "Expressions}):" | |
b9fe8fd6 JL |
11059 | msgstr "" |
11060 | ||
11061 | #. type: example | |
11062 | #: doc/guix.texi:4578 | |
11063 | #, no-wrap | |
11064 | msgid "" | |
11065 | "(define (sh-symlink)\n" | |
11066 | " (gexp->derivation \"sh\"\n" | |
11067 | " #~(symlink (string-append #$bash \"/bin/bash\")\n" | |
11068 | " #$output)))\n" | |
11069 | msgstr "" | |
11070 | ||
11071 | #. type: Plain text | |
11072 | #: doc/guix.texi:4587 | |
11073 | msgid "" | |
11074 | "Calling the monadic @code{sh-symlink} has no effect. As someone once said, " | |
11075 | "``you exit a monad like you exit a building on fire: by running''. So, to " | |
39764ef8 JL |
11076 | "exit the monad and get the desired effect, one must use @code{run-with-" |
11077 | "store}:" | |
b9fe8fd6 JL |
11078 | msgstr "" |
11079 | ||
11080 | #. type: example | |
11081 | #: doc/guix.texi:4591 | |
11082 | #, no-wrap | |
11083 | msgid "" | |
11084 | "(run-with-store (open-connection) (sh-symlink))\n" | |
11085 | "@result{} /gnu/store/...-sh-symlink\n" | |
11086 | msgstr "" | |
11087 | ||
11088 | #. type: Plain text | |
11089 | #: doc/guix.texi:4597 | |
11090 | msgid "" | |
11091 | "Note that the @code{(guix monad-repl)} module extends the Guile REPL with " | |
11092 | "new ``meta-commands'' to make it easier to deal with monadic procedures: " | |
11093 | "@code{run-in-store}, and @code{enter-store-monad}. The former is used to " | |
11094 | "``run'' a single monadic value through the store:" | |
11095 | msgstr "" | |
11096 | ||
11097 | #. type: example | |
11098 | #: doc/guix.texi:4601 | |
11099 | #, no-wrap | |
11100 | msgid "" | |
11101 | "scheme@@(guile-user)> ,run-in-store (package->derivation hello)\n" | |
11102 | "$1 = #<derivation /gnu/store/@dots{}-hello-2.9.drv => @dots{}>\n" | |
11103 | msgstr "" | |
11104 | ||
11105 | #. type: Plain text | |
11106 | #: doc/guix.texi:4605 | |
11107 | msgid "" | |
11108 | "The latter enters a recursive REPL, where all the return values are " | |
11109 | "automatically run through the store:" | |
11110 | msgstr "" | |
11111 | ||
11112 | #. type: example | |
11113 | #: doc/guix.texi:4614 | |
11114 | #, no-wrap | |
11115 | msgid "" | |
11116 | "scheme@@(guile-user)> ,enter-store-monad\n" | |
11117 | "store-monad@@(guile-user) [1]> (package->derivation hello)\n" | |
11118 | "$2 = #<derivation /gnu/store/@dots{}-hello-2.9.drv => @dots{}>\n" | |
11119 | "store-monad@@(guile-user) [1]> (text-file \"foo\" \"Hello!\")\n" | |
11120 | "$3 = \"/gnu/store/@dots{}-foo\"\n" | |
11121 | "store-monad@@(guile-user) [1]> ,q\n" | |
11122 | "scheme@@(guile-user)>\n" | |
11123 | msgstr "" | |
11124 | ||
11125 | #. type: Plain text | |
11126 | #: doc/guix.texi:4619 | |
11127 | msgid "" | |
11128 | "Note that non-monadic values cannot be returned in the @code{store-monad} " | |
11129 | "REPL." | |
11130 | msgstr "" | |
11131 | ||
11132 | #. type: Plain text | |
11133 | #: doc/guix.texi:4622 | |
11134 | msgid "" | |
11135 | "The main syntactic forms to deal with monads in general are provided by the " | |
11136 | "@code{(guix monads)} module and are described below." | |
11137 | msgstr "" | |
11138 | ||
11139 | #. type: deffn | |
11140 | #: doc/guix.texi:4623 | |
11141 | #, no-wrap | |
11142 | msgid "{Scheme Syntax} with-monad @var{monad} @var{body} ..." | |
11143 | msgstr "" | |
11144 | ||
11145 | #. type: deffn | |
11146 | #: doc/guix.texi:4626 | |
11147 | msgid "" | |
11148 | "Evaluate any @code{>>=} or @code{return} forms in @var{body} as being in " | |
11149 | "@var{monad}." | |
11150 | msgstr "" | |
11151 | ||
11152 | #. type: deffn | |
11153 | #: doc/guix.texi:4628 | |
11154 | #, no-wrap | |
11155 | msgid "{Scheme Syntax} return @var{val}" | |
11156 | msgstr "" | |
11157 | ||
11158 | #. type: deffn | |
11159 | #: doc/guix.texi:4630 | |
11160 | msgid "Return a monadic value that encapsulates @var{val}." | |
11161 | msgstr "" | |
11162 | ||
11163 | #. type: deffn | |
11164 | #: doc/guix.texi:4632 | |
11165 | #, no-wrap | |
11166 | msgid "{Scheme Syntax} >>= @var{mval} @var{mproc} ..." | |
11167 | msgstr "" | |
11168 | ||
11169 | #. type: deffn | |
11170 | #: doc/guix.texi:4639 | |
11171 | msgid "" | |
11172 | "@dfn{Bind} monadic value @var{mval}, passing its ``contents'' to monadic " | |
11173 | "procedures @var{mproc}@dots{}@footnote{This operation is commonly referred " | |
11174 | "to as ``bind'', but that name denotes an unrelated procedure in Guile. Thus " | |
11175 | "we use this somewhat cryptic symbol inherited from the Haskell language.}. " | |
11176 | "There can be one @var{mproc} or several of them, as in this example:" | |
11177 | msgstr "" | |
11178 | ||
11179 | #. type: example | |
11180 | #: doc/guix.texi:4647 | |
11181 | #, no-wrap | |
11182 | msgid "" | |
11183 | "(run-with-state\n" | |
11184 | " (with-monad %state-monad\n" | |
11185 | " (>>= (return 1)\n" | |
11186 | " (lambda (x) (return (+ 1 x)))\n" | |
11187 | " (lambda (x) (return (* 2 x)))))\n" | |
11188 | " 'some-state)\n" | |
11189 | "\n" | |
11190 | msgstr "" | |
11191 | ||
11192 | #. type: example | |
11193 | #: doc/guix.texi:4650 | |
11194 | #, no-wrap | |
11195 | msgid "" | |
11196 | "@result{} 4\n" | |
11197 | "@result{} some-state\n" | |
11198 | msgstr "" | |
11199 | ||
11200 | #. type: deffn | |
11201 | #: doc/guix.texi:4653 | |
11202 | #, no-wrap | |
11203 | msgid "{Scheme Syntax} mlet @var{monad} ((@var{var} @var{mval}) ...) @" | |
11204 | msgstr "" | |
11205 | ||
11206 | #. type: deffn | |
11207 | #: doc/guix.texi:4655 | |
11208 | msgid "@var{body} ..." | |
11209 | msgstr "" | |
11210 | ||
11211 | #. type: deffnx | |
11212 | #: doc/guix.texi:4655 | |
11213 | #, no-wrap | |
11214 | msgid "{Scheme Syntax} mlet* @var{monad} ((@var{var} @var{mval}) ...) @" | |
11215 | msgstr "" | |
11216 | ||
11217 | #. type: deffn | |
11218 | #: doc/guix.texi:4667 | |
11219 | msgid "" | |
11220 | "@var{body} ... Bind the variables @var{var} to the monadic values " | |
11221 | "@var{mval} in @var{body}, which is a sequence of expressions. As with the " | |
11222 | "bind operator, this can be thought of as ``unpacking'' the raw, non-monadic " | |
11223 | "value ``contained'' in @var{mval} and making @var{var} refer to that raw, " | |
39764ef8 JL |
11224 | "non-monadic value within the scope of the @var{body}. The form (@var{var} -" |
11225 | "> @var{val}) binds @var{var} to the ``normal'' value @var{val}, as per " | |
b9fe8fd6 JL |
11226 | "@code{let}. The binding operations occur in sequence from left to right. " |
11227 | "The last expression of @var{body} must be a monadic expression, and its " | |
11228 | "result will become the result of the @code{mlet} or @code{mlet*} when run in " | |
11229 | "the @var{monad}." | |
11230 | msgstr "" | |
11231 | ||
11232 | #. type: deffn | |
11233 | #: doc/guix.texi:4670 | |
11234 | msgid "" | |
11235 | "@code{mlet*} is to @code{mlet} what @code{let*} is to @code{let} " | |
11236 | "(@pxref{Local Bindings,,, guile, GNU Guile Reference Manual})." | |
11237 | msgstr "" | |
11238 | ||
11239 | #. type: deffn | |
11240 | #: doc/guix.texi:4672 | |
11241 | #, no-wrap | |
11242 | msgid "{Scheme System} mbegin @var{monad} @var{mexp} ..." | |
11243 | msgstr "" | |
11244 | ||
11245 | #. type: deffn | |
11246 | #: doc/guix.texi:4676 | |
11247 | msgid "" | |
11248 | "Bind @var{mexp} and the following monadic expressions in sequence, returning " | |
11249 | "the result of the last expression. Every expression in the sequence must be " | |
11250 | "a monadic expression." | |
11251 | msgstr "" | |
11252 | ||
11253 | #. type: deffn | |
11254 | #: doc/guix.texi:4680 | |
11255 | msgid "" | |
11256 | "This is akin to @code{mlet}, except that the return values of the monadic " | |
11257 | "expressions are ignored. In that sense, it is analogous to @code{begin}, " | |
11258 | "but applied to monadic expressions." | |
11259 | msgstr "" | |
11260 | ||
11261 | #. type: deffn | |
11262 | #: doc/guix.texi:4682 | |
11263 | #, no-wrap | |
11264 | msgid "{Scheme System} mwhen @var{condition} @var{mexp0} @var{mexp*} ..." | |
11265 | msgstr "" | |
11266 | ||
11267 | #. type: deffn | |
11268 | #: doc/guix.texi:4687 | |
11269 | msgid "" | |
11270 | "When @var{condition} is true, evaluate the sequence of monadic expressions " | |
11271 | "@var{mexp0}..@var{mexp*} as in an @code{mbegin}. When @var{condition} is " | |
11272 | "false, return @code{*unspecified*} in the current monad. Every expression " | |
11273 | "in the sequence must be a monadic expression." | |
11274 | msgstr "" | |
11275 | ||
11276 | #. type: deffn | |
11277 | #: doc/guix.texi:4689 | |
11278 | #, no-wrap | |
11279 | msgid "{Scheme System} munless @var{condition} @var{mexp0} @var{mexp*} ..." | |
11280 | msgstr "" | |
11281 | ||
11282 | #. type: deffn | |
11283 | #: doc/guix.texi:4694 | |
11284 | msgid "" | |
11285 | "When @var{condition} is false, evaluate the sequence of monadic expressions " | |
11286 | "@var{mexp0}..@var{mexp*} as in an @code{mbegin}. When @var{condition} is " | |
11287 | "true, return @code{*unspecified*} in the current monad. Every expression in " | |
11288 | "the sequence must be a monadic expression." | |
11289 | msgstr "" | |
11290 | ||
11291 | #. type: cindex | |
11292 | #: doc/guix.texi:4696 | |
11293 | #, no-wrap | |
11294 | msgid "state monad" | |
11295 | msgstr "" | |
11296 | ||
11297 | #. type: Plain text | |
11298 | #: doc/guix.texi:4700 | |
11299 | msgid "" | |
11300 | "The @code{(guix monads)} module provides the @dfn{state monad}, which allows " | |
11301 | "an additional value---the state---to be @emph{threaded} through monadic " | |
11302 | "procedure calls." | |
11303 | msgstr "" | |
11304 | ||
11305 | #. type: defvr | |
11306 | #: doc/guix.texi:4701 | |
11307 | #, no-wrap | |
11308 | msgid "{Scheme Variable} %state-monad" | |
11309 | msgstr "" | |
11310 | ||
11311 | #. type: defvr | |
11312 | #: doc/guix.texi:4704 | |
11313 | msgid "" | |
11314 | "The state monad. Procedures in the state monad can access and change the " | |
11315 | "state that is threaded." | |
11316 | msgstr "" | |
11317 | ||
11318 | #. type: defvr | |
11319 | #: doc/guix.texi:4708 | |
11320 | msgid "" | |
11321 | "Consider the example below. The @code{square} procedure returns a value in " | |
11322 | "the state monad. It returns the square of its argument, but also increments " | |
11323 | "the current state value:" | |
11324 | msgstr "" | |
11325 | ||
11326 | #. type: example | |
11327 | #: doc/guix.texi:4715 | |
11328 | #, no-wrap | |
11329 | msgid "" | |
11330 | "(define (square x)\n" | |
11331 | " (mlet %state-monad ((count (current-state)))\n" | |
11332 | " (mbegin %state-monad\n" | |
11333 | " (set-current-state (+ 1 count))\n" | |
11334 | " (return (* x x)))))\n" | |
11335 | "\n" | |
11336 | msgstr "" | |
11337 | ||
11338 | #. type: example | |
11339 | #: doc/guix.texi:4719 | |
11340 | #, no-wrap | |
11341 | msgid "" | |
11342 | "(run-with-state (sequence %state-monad (map square (iota 3))) 0)\n" | |
11343 | "@result{} (0 1 4)\n" | |
11344 | "@result{} 3\n" | |
11345 | msgstr "" | |
11346 | ||
11347 | #. type: defvr | |
11348 | #: doc/guix.texi:4723 | |
11349 | msgid "" | |
11350 | "When ``run'' through @var{%state-monad}, we obtain that additional state " | |
11351 | "value, which is the number of @code{square} calls." | |
11352 | msgstr "" | |
11353 | ||
11354 | #. type: deffn | |
11355 | #: doc/guix.texi:4725 | |
11356 | #, no-wrap | |
11357 | msgid "{Monadic Procedure} current-state" | |
11358 | msgstr "" | |
11359 | ||
11360 | #. type: deffn | |
11361 | #: doc/guix.texi:4727 | |
11362 | msgid "Return the current state as a monadic value." | |
11363 | msgstr "" | |
11364 | ||
11365 | #. type: deffn | |
11366 | #: doc/guix.texi:4729 | |
11367 | #, no-wrap | |
11368 | msgid "{Monadic Procedure} set-current-state @var{value}" | |
11369 | msgstr "" | |
11370 | ||
11371 | #. type: deffn | |
11372 | #: doc/guix.texi:4732 | |
11373 | msgid "" | |
11374 | "Set the current state to @var{value} and return the previous state as a " | |
11375 | "monadic value." | |
11376 | msgstr "" | |
11377 | ||
11378 | #. type: deffn | |
11379 | #: doc/guix.texi:4734 | |
11380 | #, no-wrap | |
11381 | msgid "{Monadic Procedure} state-push @var{value}" | |
11382 | msgstr "" | |
11383 | ||
11384 | #. type: deffn | |
11385 | #: doc/guix.texi:4737 | |
11386 | msgid "" | |
11387 | "Push @var{value} to the current state, which is assumed to be a list, and " | |
11388 | "return the previous state as a monadic value." | |
11389 | msgstr "" | |
11390 | ||
11391 | #. type: deffn | |
11392 | #: doc/guix.texi:4739 | |
11393 | #, no-wrap | |
11394 | msgid "{Monadic Procedure} state-pop" | |
11395 | msgstr "" | |
11396 | ||
11397 | #. type: deffn | |
11398 | #: doc/guix.texi:4742 | |
11399 | msgid "" | |
11400 | "Pop a value from the current state and return it as a monadic value. The " | |
11401 | "state is assumed to be a list." | |
11402 | msgstr "" | |
11403 | ||
11404 | #. type: deffn | |
11405 | #: doc/guix.texi:4744 | |
11406 | #, no-wrap | |
11407 | msgid "{Scheme Procedure} run-with-state @var{mval} [@var{state}]" | |
11408 | msgstr "" | |
11409 | ||
11410 | #. type: deffn | |
11411 | #: doc/guix.texi:4747 | |
11412 | msgid "" | |
11413 | "Run monadic value @var{mval} starting with @var{state} as the initial " | |
11414 | "state. Return two values: the resulting value, and the resulting state." | |
11415 | msgstr "" | |
11416 | ||
11417 | #. type: Plain text | |
11418 | #: doc/guix.texi:4751 | |
11419 | msgid "" | |
11420 | "The main interface to the store monad, provided by the @code{(guix store)} " | |
11421 | "module, is as follows." | |
11422 | msgstr "" | |
11423 | ||
11424 | #. type: defvr | |
11425 | #: doc/guix.texi:4752 | |
11426 | #, no-wrap | |
11427 | msgid "{Scheme Variable} %store-monad" | |
11428 | msgstr "" | |
11429 | ||
11430 | #. type: defvr | |
11431 | #: doc/guix.texi:4754 | |
11432 | msgid "The store monad---an alias for @var{%state-monad}." | |
11433 | msgstr "" | |
11434 | ||
11435 | #. type: defvr | |
11436 | #: doc/guix.texi:4758 | |
11437 | msgid "" | |
11438 | "Values in the store monad encapsulate accesses to the store. When its " | |
11439 | "effect is needed, a value of the store monad must be ``evaluated'' by " | |
11440 | "passing it to the @code{run-with-store} procedure (see below.)" | |
11441 | msgstr "" | |
11442 | ||
11443 | #. type: deffn | |
11444 | #: doc/guix.texi:4760 | |
11445 | #, no-wrap | |
39764ef8 | 11446 | msgid "{Scheme Procedure} run-with-store @var{store} @var{mval} [#:guile-for-build] [#:system (%current-system)]" |
b9fe8fd6 JL |
11447 | msgstr "" |
11448 | ||
11449 | #. type: deffn | |
11450 | #: doc/guix.texi:4763 | |
11451 | msgid "" | |
11452 | "Run @var{mval}, a monadic value in the store monad, in @var{store}, an open " | |
11453 | "store connection." | |
11454 | msgstr "" | |
11455 | ||
11456 | #. type: deffn | |
11457 | #: doc/guix.texi:4765 | |
11458 | #, no-wrap | |
11459 | msgid "{Monadic Procedure} text-file @var{name} @var{text} [@var{references}]" | |
11460 | msgstr "" | |
11461 | ||
11462 | #. type: deffn | |
11463 | #: doc/guix.texi:4769 | |
11464 | msgid "" | |
11465 | "Return as a monadic value the absolute file name in the store of the file " | |
11466 | "containing @var{text}, a string. @var{references} is a list of store items " | |
11467 | "that the resulting text file refers to; it defaults to the empty list." | |
11468 | msgstr "" | |
11469 | ||
11470 | #. type: deffn | |
11471 | #: doc/guix.texi:4771 | |
11472 | #, no-wrap | |
11473 | msgid "{Monadic Procedure} interned-file @var{file} [@var{name}] @" | |
11474 | msgstr "" | |
11475 | ||
11476 | #. type: deffn | |
11477 | #: doc/guix.texi:4776 | |
11478 | msgid "" | |
11479 | "[#:recursive? #t] [#:select? (const #t)] Return the name of @var{file} once " | |
11480 | "interned in the store. Use @var{name} as its store name, or the basename of " | |
11481 | "@var{file} if @var{name} is omitted." | |
11482 | msgstr "" | |
11483 | ||
11484 | #. type: deffn | |
11485 | #: doc/guix.texi:4780 doc/guix.texi:5159 | |
11486 | msgid "" | |
11487 | "When @var{recursive?} is true, the contents of @var{file} are added " | |
11488 | "recursively; if @var{file} designates a flat file and @var{recursive?} is " | |
11489 | "true, its contents are added, and its permission bits are kept." | |
11490 | msgstr "" | |
11491 | ||
11492 | #. type: deffn | |
11493 | #: doc/guix.texi:4785 doc/guix.texi:5164 | |
11494 | msgid "" | |
11495 | "When @var{recursive?} is true, call @code{(@var{select?} @var{file} " | |
11496 | "@var{stat})} for each directory entry, where @var{file} is the entry's " | |
11497 | "absolute file name and @var{stat} is the result of @code{lstat}; exclude " | |
11498 | "entries for which @var{select?} does not return true." | |
11499 | msgstr "" | |
11500 | ||
11501 | #. type: deffn | |
11502 | #: doc/guix.texi:4787 | |
11503 | msgid "The example below adds a file to the store, under two different names:" | |
11504 | msgstr "" | |
11505 | ||
11506 | #. type: example | |
11507 | #: doc/guix.texi:4793 | |
11508 | #, no-wrap | |
11509 | msgid "" | |
11510 | "(run-with-store (open-connection)\n" | |
11511 | " (mlet %store-monad ((a (interned-file \"README\"))\n" | |
11512 | " (b (interned-file \"README\" \"LEGU-MIN\")))\n" | |
11513 | " (return (list a b))))\n" | |
11514 | "\n" | |
11515 | msgstr "" | |
11516 | ||
11517 | #. type: example | |
11518 | #: doc/guix.texi:4795 | |
11519 | #, no-wrap | |
39764ef8 | 11520 | msgid "@result{} (\"/gnu/store/rwm@dots{}-README\" \"/gnu/store/44i@dots{}-LEGU-MIN\")\n" |
b9fe8fd6 JL |
11521 | msgstr "" |
11522 | ||
11523 | #. type: Plain text | |
11524 | #: doc/guix.texi:4801 | |
11525 | msgid "" | |
11526 | "The @code{(guix packages)} module exports the following package-related " | |
11527 | "monadic procedures:" | |
11528 | msgstr "" | |
11529 | ||
11530 | #. type: deffn | |
11531 | #: doc/guix.texi:4802 | |
11532 | #, no-wrap | |
11533 | msgid "{Monadic Procedure} package-file @var{package} [@var{file}] @" | |
11534 | msgstr "" | |
11535 | ||
11536 | #. type: deffn | |
11537 | #: doc/guix.texi:4810 | |
11538 | msgid "" | |
11539 | "[#:system (%current-system)] [#:target #f] @ [#:output \"out\"] Return as a " | |
11540 | "monadic value in the absolute file name of @var{file} within the " | |
11541 | "@var{output} directory of @var{package}. When @var{file} is omitted, return " | |
11542 | "the name of the @var{output} directory of @var{package}. When @var{target} " | |
11543 | "is true, use it as a cross-compilation target triplet." | |
11544 | msgstr "" | |
11545 | ||
11546 | #. type: deffn | |
11547 | #: doc/guix.texi:4812 | |
11548 | #, no-wrap | |
11549 | msgid "{Monadic Procedure} package->derivation @var{package} [@var{system}]" | |
11550 | msgstr "" | |
11551 | ||
11552 | #. type: deffnx | |
11553 | #: doc/guix.texi:4813 | |
11554 | #, no-wrap | |
11555 | msgid "{Monadic Procedure} package->cross-derivation @var{package} @" | |
11556 | msgstr "" | |
11557 | ||
11558 | #. type: deffn | |
11559 | #: doc/guix.texi:4817 | |
11560 | msgid "" | |
11561 | "@var{target} [@var{system}] Monadic version of @code{package-derivation} and " | |
11562 | "@code{package-cross-derivation} (@pxref{Defining Packages})." | |
11563 | msgstr "" | |
11564 | ||
11565 | #. type: cindex | |
11566 | #: doc/guix.texi:4823 | |
11567 | #, no-wrap | |
11568 | msgid "G-expression" | |
11569 | msgstr "" | |
11570 | ||
11571 | #. type: cindex | |
11572 | #: doc/guix.texi:4824 | |
11573 | #, no-wrap | |
11574 | msgid "build code quoting" | |
11575 | msgstr "" | |
11576 | ||
11577 | #. type: Plain text | |
11578 | #: doc/guix.texi:4830 | |
11579 | msgid "" | |
11580 | "So we have ``derivations'', which represent a sequence of build actions to " | |
11581 | "be performed to produce an item in the store (@pxref{Derivations}). These " | |
11582 | "build actions are performed when asking the daemon to actually build the " | |
39764ef8 JL |
11583 | "derivations; they are run by the daemon in a container (@pxref{Invoking guix-" |
11584 | "daemon})." | |
b9fe8fd6 JL |
11585 | msgstr "" |
11586 | ||
11587 | #. type: cindex | |
11588 | #: doc/guix.texi:4831 | |
11589 | #, no-wrap | |
11590 | msgid "strata of code" | |
11591 | msgstr "" | |
11592 | ||
11593 | #. type: Plain text | |
11594 | #: doc/guix.texi:4843 | |
11595 | msgid "" | |
11596 | "It should come as no surprise that we like to write these build actions in " | |
11597 | "Scheme. When we do that, we end up with two @dfn{strata} of Scheme " | |
11598 | "code@footnote{The term @dfn{stratum} in this context was coined by Manuel " | |
11599 | "Serrano et al.@: in the context of their work on Hop. Oleg Kiselyov, who " | |
39764ef8 JL |
11600 | "has written insightful @url{http://okmij.org/ftp/meta-programming/#meta-" |
11601 | "scheme, essays and code on this topic}, refers to this kind of code " | |
11602 | "generation as @dfn{staging}.}: the ``host code''---code that defines " | |
11603 | "packages, talks to the daemon, etc.---and the ``build code''---code that " | |
11604 | "actually performs build actions, such as making directories, invoking " | |
11605 | "@command{make}, etc." | |
b9fe8fd6 JL |
11606 | msgstr "" |
11607 | ||
11608 | #. type: Plain text | |
11609 | #: doc/guix.texi:4850 | |
11610 | msgid "" | |
11611 | "To describe a derivation and its build actions, one typically needs to embed " | |
11612 | "build code inside host code. It boils down to manipulating build code as " | |
11613 | "data, and the homoiconicity of Scheme---code has a direct representation as " | |
11614 | "data---comes in handy for that. But we need more than the normal " | |
11615 | "@code{quasiquote} mechanism in Scheme to construct build expressions." | |
11616 | msgstr "" | |
11617 | ||
11618 | #. type: Plain text | |
11619 | #: doc/guix.texi:4859 | |
11620 | msgid "" | |
39764ef8 JL |
11621 | "The @code{(guix gexp)} module implements @dfn{G-expressions}, a form of S-" |
11622 | "expressions adapted to build expressions. G-expressions, or @dfn{gexps}, " | |
b9fe8fd6 | 11623 | "consist essentially of three syntactic forms: @code{gexp}, @code{ungexp}, " |
39764ef8 JL |
11624 | "and @code{ungexp-splicing} (or simply: @code{#~}, @code{#$}, and @code{#" |
11625 | "$@@}), which are comparable to @code{quasiquote}, @code{unquote}, and " | |
b9fe8fd6 JL |
11626 | "@code{unquote-splicing}, respectively (@pxref{Expression Syntax, " |
11627 | "@code{quasiquote},, guile, GNU Guile Reference Manual}). However, there are " | |
11628 | "major differences:" | |
11629 | msgstr "" | |
11630 | ||
11631 | #. type: itemize | |
11632 | #: doc/guix.texi:4864 | |
11633 | msgid "" | |
11634 | "Gexps are meant to be written to a file and run or manipulated by other " | |
11635 | "processes." | |
11636 | msgstr "" | |
11637 | ||
11638 | #. type: itemize | |
11639 | #: doc/guix.texi:4869 | |
11640 | msgid "" | |
11641 | "When a high-level object such as a package or derivation is unquoted inside " | |
11642 | "a gexp, the result is as if its output file name had been introduced." | |
11643 | msgstr "" | |
11644 | ||
11645 | #. type: itemize | |
11646 | #: doc/guix.texi:4874 | |
11647 | msgid "" | |
11648 | "Gexps carry information about the packages or derivations they refer to, and " | |
11649 | "these dependencies are automatically added as inputs to the build processes " | |
11650 | "that use them." | |
11651 | msgstr "" | |
11652 | ||
11653 | #. type: cindex | |
11654 | #: doc/guix.texi:4876 doc/guix.texi:5346 | |
11655 | #, no-wrap | |
11656 | msgid "lowering, of high-level objects in gexps" | |
11657 | msgstr "" | |
11658 | ||
11659 | #. type: Plain text | |
11660 | #: doc/guix.texi:4886 | |
11661 | msgid "" | |
11662 | "This mechanism is not limited to package and derivation objects: " | |
11663 | "@dfn{compilers} able to ``lower'' other high-level objects to derivations or " | |
11664 | "files in the store can be defined, such that these objects can also be " | |
11665 | "inserted into gexps. For example, a useful type of high-level objects that " | |
11666 | "can be inserted in a gexp is ``file-like objects'', which make it easy to " | |
11667 | "add files to the store and to refer to them in derivations and such (see " | |
11668 | "@code{local-file} and @code{plain-file} below.)" | |
11669 | msgstr "" | |
11670 | ||
11671 | #. type: Plain text | |
11672 | #: doc/guix.texi:4888 | |
11673 | msgid "To illustrate the idea, here is an example of a gexp:" | |
11674 | msgstr "" | |
11675 | ||
11676 | #. type: example | |
11677 | #: doc/guix.texi:4896 | |
11678 | #, no-wrap | |
11679 | msgid "" | |
11680 | "(define build-exp\n" | |
11681 | " #~(begin\n" | |
11682 | " (mkdir #$output)\n" | |
11683 | " (chdir #$output)\n" | |
11684 | " (symlink (string-append #$coreutils \"/bin/ls\")\n" | |
11685 | " \"list-files\")))\n" | |
11686 | msgstr "" | |
11687 | ||
11688 | #. type: Plain text | |
11689 | #: doc/guix.texi:4901 | |
11690 | msgid "" | |
11691 | "This gexp can be passed to @code{gexp->derivation}; we obtain a derivation " | |
39764ef8 JL |
11692 | "that builds a directory containing exactly one symlink to @file{/gnu/store/" |
11693 | "@dots{}-coreutils-8.22/bin/ls}:" | |
b9fe8fd6 JL |
11694 | msgstr "" |
11695 | ||
11696 | #. type: example | |
11697 | #: doc/guix.texi:4904 | |
11698 | #, no-wrap | |
11699 | msgid "(gexp->derivation \"the-thing\" build-exp)\n" | |
11700 | msgstr "" | |
11701 | ||
11702 | #. type: Plain text | |
11703 | #: doc/guix.texi:4912 | |
11704 | msgid "" | |
11705 | "As one would expect, the @code{\"/gnu/store/@dots{}-coreutils-8.22\"} string " | |
11706 | "is substituted to the reference to the @var{coreutils} package in the actual " | |
11707 | "build code, and @var{coreutils} is automatically made an input to the " | |
11708 | "derivation. Likewise, @code{#$output} (equivalent to @code{(ungexp " | |
11709 | "output)}) is replaced by a string containing the directory name of the " | |
11710 | "output of the derivation." | |
11711 | msgstr "" | |
11712 | ||
11713 | #. type: cindex | |
11714 | #: doc/guix.texi:4913 | |
11715 | #, no-wrap | |
11716 | msgid "cross compilation" | |
11717 | msgstr "" | |
11718 | ||
11719 | #. type: Plain text | |
11720 | #: doc/guix.texi:4919 | |
11721 | msgid "" | |
11722 | "In a cross-compilation context, it is useful to distinguish between " | |
11723 | "references to the @emph{native} build of a package---that can run on the " | |
11724 | "host---versus references to cross builds of a package. To that end, the " | |
11725 | "@code{#+} plays the same role as @code{#$}, but is a reference to a native " | |
11726 | "package build:" | |
11727 | msgstr "" | |
11728 | ||
11729 | #. type: example | |
11730 | #: doc/guix.texi:4929 | |
11731 | #, no-wrap | |
11732 | msgid "" | |
11733 | "(gexp->derivation \"vi\"\n" | |
11734 | " #~(begin\n" | |
11735 | " (mkdir #$output)\n" | |
11736 | " (system* (string-append #+coreutils \"/bin/ln\")\n" | |
11737 | " \"-s\"\n" | |
11738 | " (string-append #$emacs \"/bin/emacs\")\n" | |
11739 | " (string-append #$output \"/bin/vi\")))\n" | |
11740 | " #:target \"mips64el-linux-gnu\")\n" | |
11741 | msgstr "" | |
11742 | ||
11743 | #. type: Plain text | |
11744 | #: doc/guix.texi:4935 | |
11745 | msgid "" | |
11746 | "In the example above, the native build of @var{coreutils} is used, so that " | |
11747 | "@command{ln} can actually run on the host; but then the cross-compiled build " | |
11748 | "of @var{emacs} is referenced." | |
11749 | msgstr "" | |
11750 | ||
11751 | #. type: cindex | |
11752 | #: doc/guix.texi:4936 | |
11753 | #, no-wrap | |
11754 | msgid "imported modules, for gexps" | |
11755 | msgstr "" | |
11756 | ||
11757 | #. type: findex | |
11758 | #: doc/guix.texi:4937 | |
11759 | #, no-wrap | |
11760 | msgid "with-imported-modules" | |
11761 | msgstr "" | |
11762 | ||
11763 | #. type: Plain text | |
11764 | #: doc/guix.texi:4942 | |
11765 | msgid "" | |
11766 | "Another gexp feature is @dfn{imported modules}: sometimes you want to be " | |
11767 | "able to use certain Guile modules from the ``host environment'' in the gexp, " | |
11768 | "so those modules should be imported in the ``build environment''. The " | |
11769 | "@code{with-imported-modules} form allows you to express that:" | |
11770 | msgstr "" | |
11771 | ||
11772 | #. type: example | |
11773 | #: doc/guix.texi:4953 | |
11774 | #, no-wrap | |
11775 | msgid "" | |
11776 | "(let ((build (with-imported-modules '((guix build utils))\n" | |
11777 | " #~(begin\n" | |
11778 | " (use-modules (guix build utils))\n" | |
11779 | " (mkdir-p (string-append #$output \"/bin\"))))))\n" | |
11780 | " (gexp->derivation \"empty-dir\"\n" | |
11781 | " #~(begin\n" | |
11782 | " #$build\n" | |
11783 | " (display \"success!\\n\")\n" | |
11784 | " #t)))\n" | |
11785 | msgstr "" | |
11786 | ||
11787 | #. type: Plain text | |
11788 | #: doc/guix.texi:4959 | |
11789 | msgid "" | |
11790 | "In this example, the @code{(guix build utils)} module is automatically " | |
39764ef8 JL |
11791 | "pulled into the isolated build environment of our gexp, such that @code{(use-" |
11792 | "modules (guix build utils))} works as expected." | |
b9fe8fd6 JL |
11793 | msgstr "" |
11794 | ||
11795 | #. type: cindex | |
11796 | #: doc/guix.texi:4960 | |
11797 | #, no-wrap | |
11798 | msgid "module closure" | |
11799 | msgstr "" | |
11800 | ||
11801 | #. type: findex | |
11802 | #: doc/guix.texi:4961 | |
11803 | #, no-wrap | |
11804 | msgid "source-module-closure" | |
11805 | msgstr "" | |
11806 | ||
11807 | #. type: Plain text | |
11808 | #: doc/guix.texi:4968 | |
11809 | msgid "" | |
11810 | "Usually you want the @emph{closure} of the module to be imported---i.e., the " | |
11811 | "module itself and all the modules it depends on---rather than just the " | |
11812 | "module; failing to do that, attempts to use the module will fail because of " | |
11813 | "missing dependent modules. The @code{source-module-closure} procedure " | |
11814 | "computes the closure of a module by looking at its source file headers, " | |
11815 | "which comes in handy in this case:" | |
11816 | msgstr "" | |
11817 | ||
11818 | #. type: example | |
11819 | #: doc/guix.texi:4971 | |
11820 | #, no-wrap | |
11821 | msgid "" | |
11822 | "(use-modules (guix modules)) ;for 'source-module-closure'\n" | |
11823 | "\n" | |
11824 | msgstr "" | |
11825 | ||
11826 | #. type: example | |
11827 | #: doc/guix.texi:4980 | |
11828 | #, no-wrap | |
11829 | msgid "" | |
11830 | "(with-imported-modules (source-module-closure\n" | |
11831 | " '((guix build utils)\n" | |
11832 | " (gnu build vm)))\n" | |
11833 | " (gexp->derivation \"something-with-vms\"\n" | |
11834 | " #~(begin\n" | |
11835 | " (use-modules (guix build utils)\n" | |
11836 | " (gnu build vm))\n" | |
11837 | " @dots{})))\n" | |
11838 | msgstr "" | |
11839 | ||
11840 | #. type: Plain text | |
11841 | #: doc/guix.texi:4983 | |
11842 | msgid "The syntactic form to construct gexps is summarized below." | |
11843 | msgstr "" | |
11844 | ||
11845 | #. type: deffn | |
11846 | #: doc/guix.texi:4984 | |
11847 | #, no-wrap | |
11848 | msgid "{Scheme Syntax} #~@var{exp}" | |
11849 | msgstr "" | |
11850 | ||
11851 | #. type: deffnx | |
11852 | #: doc/guix.texi:4985 | |
11853 | #, no-wrap | |
11854 | msgid "{Scheme Syntax} (gexp @var{exp})" | |
11855 | msgstr "" | |
11856 | ||
11857 | #. type: deffn | |
11858 | #: doc/guix.texi:4988 | |
11859 | msgid "" | |
11860 | "Return a G-expression containing @var{exp}. @var{exp} may contain one or " | |
11861 | "more of the following forms:" | |
11862 | msgstr "" | |
11863 | ||
11864 | #. type: item | |
11865 | #: doc/guix.texi:4990 | |
11866 | #, no-wrap | |
11867 | msgid "#$@var{obj}" | |
11868 | msgstr "" | |
11869 | ||
11870 | #. type: itemx | |
11871 | #: doc/guix.texi:4991 | |
11872 | #, no-wrap | |
11873 | msgid "(ungexp @var{obj})" | |
11874 | msgstr "" | |
11875 | ||
11876 | #. type: table | |
11877 | #: doc/guix.texi:4996 | |
11878 | msgid "" | |
11879 | "Introduce a reference to @var{obj}. @var{obj} may have one of the supported " | |
11880 | "types, for example a package or a derivation, in which case the " | |
39764ef8 JL |
11881 | "@code{ungexp} form is replaced by its output file name---e.g., @code{\"/gnu/" |
11882 | "store/@dots{}-coreutils-8.22}." | |
b9fe8fd6 JL |
11883 | msgstr "" |
11884 | ||
11885 | #. type: table | |
11886 | #: doc/guix.texi:4999 | |
11887 | msgid "" | |
11888 | "If @var{obj} is a list, it is traversed and references to supported objects " | |
11889 | "are substituted similarly." | |
11890 | msgstr "" | |
11891 | ||
11892 | #. type: table | |
11893 | #: doc/guix.texi:5002 | |
11894 | msgid "" | |
11895 | "If @var{obj} is another gexp, its contents are inserted and its dependencies " | |
11896 | "are added to those of the containing gexp." | |
11897 | msgstr "" | |
11898 | ||
11899 | #. type: table | |
11900 | #: doc/guix.texi:5004 | |
11901 | msgid "If @var{obj} is another kind of object, it is inserted as is." | |
11902 | msgstr "" | |
11903 | ||
11904 | #. type: item | |
11905 | #: doc/guix.texi:5005 | |
11906 | #, no-wrap | |
11907 | msgid "#$@var{obj}:@var{output}" | |
11908 | msgstr "" | |
11909 | ||
11910 | #. type: itemx | |
11911 | #: doc/guix.texi:5006 | |
11912 | #, no-wrap | |
11913 | msgid "(ungexp @var{obj} @var{output})" | |
11914 | msgstr "" | |
11915 | ||
11916 | #. type: table | |
11917 | #: doc/guix.texi:5010 | |
11918 | msgid "" | |
11919 | "This is like the form above, but referring explicitly to the @var{output} of " | |
11920 | "@var{obj}---this is useful when @var{obj} produces multiple outputs " | |
11921 | "(@pxref{Packages with Multiple Outputs})." | |
11922 | msgstr "" | |
11923 | ||
11924 | #. type: item | |
11925 | #: doc/guix.texi:5011 | |
11926 | #, no-wrap | |
11927 | msgid "#+@var{obj}" | |
11928 | msgstr "" | |
11929 | ||
11930 | #. type: itemx | |
11931 | #: doc/guix.texi:5012 | |
11932 | #, no-wrap | |
11933 | msgid "#+@var{obj}:output" | |
11934 | msgstr "" | |
11935 | ||
11936 | #. type: itemx | |
11937 | #: doc/guix.texi:5013 | |
11938 | #, no-wrap | |
11939 | msgid "(ungexp-native @var{obj})" | |
11940 | msgstr "" | |
11941 | ||
11942 | #. type: itemx | |
11943 | #: doc/guix.texi:5014 | |
11944 | #, no-wrap | |
11945 | msgid "(ungexp-native @var{obj} @var{output})" | |
11946 | msgstr "" | |
11947 | ||
11948 | #. type: table | |
11949 | #: doc/guix.texi:5017 | |
11950 | msgid "" | |
11951 | "Same as @code{ungexp}, but produces a reference to the @emph{native} build " | |
11952 | "of @var{obj} when used in a cross compilation context." | |
11953 | msgstr "" | |
11954 | ||
11955 | #. type: item | |
11956 | #: doc/guix.texi:5018 | |
11957 | #, no-wrap | |
11958 | msgid "#$output[:@var{output}]" | |
11959 | msgstr "" | |
11960 | ||
11961 | #. type: itemx | |
11962 | #: doc/guix.texi:5019 | |
11963 | #, no-wrap | |
11964 | msgid "(ungexp output [@var{output}])" | |
11965 | msgstr "" | |
11966 | ||
11967 | #. type: table | |
11968 | #: doc/guix.texi:5022 | |
11969 | msgid "" | |
11970 | "Insert a reference to derivation output @var{output}, or to the main output " | |
11971 | "when @var{output} is omitted." | |
11972 | msgstr "" | |
11973 | ||
11974 | #. type: table | |
11975 | #: doc/guix.texi:5024 | |
11976 | msgid "This only makes sense for gexps passed to @code{gexp->derivation}." | |
11977 | msgstr "" | |
11978 | ||
11979 | #. type: item | |
11980 | #: doc/guix.texi:5025 | |
11981 | #, no-wrap | |
11982 | msgid "#$@@@var{lst}" | |
11983 | msgstr "" | |
11984 | ||
11985 | #. type: itemx | |
11986 | #: doc/guix.texi:5026 | |
11987 | #, no-wrap | |
11988 | msgid "(ungexp-splicing @var{lst})" | |
11989 | msgstr "" | |
11990 | ||
11991 | #. type: table | |
11992 | #: doc/guix.texi:5029 | |
11993 | msgid "" | |
11994 | "Like the above, but splices the contents of @var{lst} inside the containing " | |
11995 | "list." | |
11996 | msgstr "" | |
11997 | ||
11998 | #. type: item | |
11999 | #: doc/guix.texi:5030 | |
12000 | #, no-wrap | |
12001 | msgid "#+@@@var{lst}" | |
12002 | msgstr "" | |
12003 | ||
12004 | #. type: itemx | |
12005 | #: doc/guix.texi:5031 | |
12006 | #, no-wrap | |
12007 | msgid "(ungexp-native-splicing @var{lst})" | |
12008 | msgstr "" | |
12009 | ||
12010 | #. type: table | |
12011 | #: doc/guix.texi:5034 | |
12012 | msgid "" | |
12013 | "Like the above, but refers to native builds of the objects listed in " | |
12014 | "@var{lst}." | |
12015 | msgstr "" | |
12016 | ||
12017 | #. type: deffn | |
12018 | #: doc/guix.texi:5039 | |
12019 | msgid "" | |
12020 | "G-expressions created by @code{gexp} or @code{#~} are run-time objects of " | |
12021 | "the @code{gexp?} type (see below.)" | |
12022 | msgstr "" | |
12023 | ||
12024 | #. type: deffn | |
12025 | #: doc/guix.texi:5041 | |
12026 | #, no-wrap | |
12027 | msgid "{Scheme Syntax} with-imported-modules @var{modules} @var{body}@dots{}" | |
12028 | msgstr "" | |
12029 | ||
12030 | #. type: deffn | |
12031 | #: doc/guix.texi:5044 | |
12032 | msgid "" | |
12033 | "Mark the gexps defined in @var{body}@dots{} as requiring @var{modules} in " | |
12034 | "their execution environment." | |
12035 | msgstr "" | |
12036 | ||
12037 | #. type: deffn | |
12038 | #: doc/guix.texi:5048 | |
12039 | msgid "" | |
12040 | "Each item in @var{modules} can be the name of a module, such as @code{(guix " | |
12041 | "build utils)}, or it can be a module name, followed by an arrow, followed by " | |
12042 | "a file-like object:" | |
12043 | msgstr "" | |
12044 | ||
12045 | #. type: example | |
12046 | #: doc/guix.texi:5054 | |
12047 | #, no-wrap | |
12048 | msgid "" | |
12049 | "`((guix build utils)\n" | |
12050 | " (guix gcrypt)\n" | |
12051 | " ((guix config) => ,(scheme-file \"config.scm\"\n" | |
12052 | " #~(define-module @dots{}))))\n" | |
12053 | msgstr "" | |
12054 | ||
12055 | #. type: deffn | |
12056 | #: doc/guix.texi:5059 | |
12057 | msgid "" | |
12058 | "In the example above, the first two modules are taken from the search path, " | |
12059 | "and the last one is created from the given file-like object." | |
12060 | msgstr "" | |
12061 | ||
12062 | #. type: deffn | |
12063 | #: doc/guix.texi:5063 | |
12064 | msgid "" | |
12065 | "This form has @emph{lexical} scope: it has an effect on the gexps directly " | |
12066 | "defined in @var{body}@dots{}, but not on those defined, say, in procedures " | |
12067 | "called from @var{body}@dots{}." | |
12068 | msgstr "" | |
12069 | ||
12070 | #. type: deffn | |
12071 | #: doc/guix.texi:5065 | |
12072 | #, no-wrap | |
12073 | msgid "{Scheme Procedure} gexp? @var{obj}" | |
12074 | msgstr "" | |
12075 | ||
12076 | #. type: deffn | |
12077 | #: doc/guix.texi:5067 | |
12078 | msgid "Return @code{#t} if @var{obj} is a G-expression." | |
12079 | msgstr "" | |
12080 | ||
12081 | #. type: Plain text | |
12082 | #: doc/guix.texi:5073 | |
12083 | msgid "" | |
12084 | "G-expressions are meant to be written to disk, either as code building some " | |
12085 | "derivation, or as plain files in the store. The monadic procedures below " | |
12086 | "allow you to do that (@pxref{The Store Monad}, for more information about " | |
12087 | "monads.)" | |
12088 | msgstr "" | |
12089 | ||
12090 | #. type: deffn | |
12091 | #: doc/guix.texi:5074 | |
12092 | #, no-wrap | |
12093 | msgid "{Monadic Procedure} gexp->derivation @var{name} @var{exp} @" | |
12094 | msgstr "" | |
12095 | ||
12096 | #. type: deffn | |
12097 | #: doc/guix.texi:5090 | |
12098 | msgid "" | |
39764ef8 JL |
12099 | "[#:system (%current-system)] [#:target #f] [#:graft? #t] @ [#:hash #f] [#:" |
12100 | "hash-algo #f] @ [#:recursive? #f] [#:env-vars '()] [#:modules '()] @ [#:" | |
12101 | "module-path @var{%load-path}] @ [#:references-graphs #f] [#:allowed-" | |
12102 | "references #f] @ [#:disallowed-references #f] @ [#:leaked-env-vars #f] @ [#:" | |
12103 | "script-name (string-append @var{name} \"-builder\")] @ [#:deprecation-" | |
12104 | "warnings #f] @ [#:local-build? #f] [#:substitutable? #t] [#:guile-for-build " | |
12105 | "#f] Return a derivation @var{name} that runs @var{exp} (a gexp) with " | |
12106 | "@var{guile-for-build} (a derivation) on @var{system}; @var{exp} is stored in " | |
12107 | "a file called @var{script-name}. When @var{target} is true, it is used as " | |
12108 | "the cross-compilation target triplet for packages referred to by @var{exp}." | |
b9fe8fd6 JL |
12109 | msgstr "" |
12110 | ||
12111 | #. type: deffn | |
12112 | #: doc/guix.texi:5098 | |
12113 | msgid "" | |
12114 | "@var{modules} is deprecated in favor of @code{with-imported-modules}. Its " | |
12115 | "meaning is to make @var{modules} available in the evaluation context of " | |
12116 | "@var{exp}; @var{modules} is a list of names of Guile modules searched in " | |
12117 | "@var{module-path} to be copied in the store, compiled, and made available in " | |
12118 | "the load path during the execution of @var{exp}---e.g., @code{((guix build " | |
12119 | "utils) (guix build gnu-build-system))}." | |
12120 | msgstr "" | |
12121 | ||
12122 | #. type: deffn | |
12123 | #: doc/guix.texi:5101 | |
12124 | msgid "" | |
12125 | "@var{graft?} determines whether packages referred to by @var{exp} should be " | |
12126 | "grafted when applicable." | |
12127 | msgstr "" | |
12128 | ||
12129 | #. type: deffn | |
12130 | #: doc/guix.texi:5104 | |
12131 | msgid "" | |
12132 | "When @var{references-graphs} is true, it must be a list of tuples of one of " | |
12133 | "the following forms:" | |
12134 | msgstr "" | |
12135 | ||
12136 | #. type: example | |
12137 | #: doc/guix.texi:5111 | |
12138 | #, no-wrap | |
12139 | msgid "" | |
12140 | "(@var{file-name} @var{package})\n" | |
12141 | "(@var{file-name} @var{package} @var{output})\n" | |
12142 | "(@var{file-name} @var{derivation})\n" | |
12143 | "(@var{file-name} @var{derivation} @var{output})\n" | |
12144 | "(@var{file-name} @var{store-item})\n" | |
12145 | msgstr "" | |
12146 | ||
12147 | #. type: deffn | |
12148 | #: doc/guix.texi:5117 | |
12149 | msgid "" | |
12150 | "The right-hand-side of each element of @var{references-graphs} is " | |
12151 | "automatically made an input of the build process of @var{exp}. In the build " | |
12152 | "environment, each @var{file-name} contains the reference graph of the " | |
12153 | "corresponding item, in a simple text format." | |
12154 | msgstr "" | |
12155 | ||
12156 | #. type: deffn | |
12157 | #: doc/guix.texi:5123 | |
12158 | msgid "" | |
12159 | "@var{allowed-references} must be either @code{#f} or a list of output names " | |
12160 | "and packages. In the latter case, the list denotes store items that the " | |
12161 | "result is allowed to refer to. Any reference to another store item will " | |
12162 | "lead to a build error. Similarly for @var{disallowed-references}, which can " | |
12163 | "list items that must not be referenced by the outputs." | |
12164 | msgstr "" | |
12165 | ||
12166 | #. type: deffn | |
12167 | #: doc/guix.texi:5126 | |
12168 | msgid "" | |
12169 | "@var{deprecation-warnings} determines whether to show deprecation warnings " | |
12170 | "while compiling modules. It can be @code{#f}, @code{#t}, or " | |
12171 | "@code{'detailed}." | |
12172 | msgstr "" | |
12173 | ||
12174 | #. type: deffn | |
12175 | #: doc/guix.texi:5128 | |
12176 | msgid "The other arguments are as for @code{derivation} (@pxref{Derivations})." | |
12177 | msgstr "" | |
12178 | ||
12179 | #. type: cindex | |
12180 | #: doc/guix.texi:5130 | |
12181 | #, no-wrap | |
12182 | msgid "file-like objects" | |
12183 | msgstr "" | |
12184 | ||
12185 | #. type: Plain text | |
12186 | #: doc/guix.texi:5135 | |
12187 | msgid "" | |
12188 | "The @code{local-file}, @code{plain-file}, @code{computed-file}, " | |
12189 | "@code{program-file}, and @code{scheme-file} procedures below return " | |
12190 | "@dfn{file-like objects}. That is, when unquoted in a G-expression, these " | |
12191 | "objects lead to a file in the store. Consider this G-expression:" | |
12192 | msgstr "" | |
12193 | ||
12194 | #. type: example | |
12195 | #: doc/guix.texi:5139 | |
12196 | #, no-wrap | |
12197 | msgid "" | |
12198 | "#~(system* #$(file-append glibc \"/sbin/nscd\") \"-f\"\n" | |
12199 | " #$(local-file \"/tmp/my-nscd.conf\"))\n" | |
12200 | msgstr "" | |
12201 | ||
12202 | #. type: Plain text | |
12203 | #: doc/guix.texi:5148 | |
12204 | msgid "" | |
12205 | "The effect here is to ``intern'' @file{/tmp/my-nscd.conf} by copying it to " | |
12206 | "the store. Once expanded, for instance @i{via} @code{gexp->derivation}, the " | |
12207 | "G-expression refers to that copy under @file{/gnu/store}; thus, modifying or " | |
39764ef8 JL |
12208 | "removing the file in @file{/tmp} does not have any effect on what the G-" |
12209 | "expression does. @code{plain-file} can be used similarly; it differs in " | |
b9fe8fd6 JL |
12210 | "that the file content is directly passed as a string." |
12211 | msgstr "" | |
12212 | ||
12213 | #. type: deffn | |
12214 | #: doc/guix.texi:5149 | |
12215 | #, no-wrap | |
12216 | msgid "{Scheme Procedure} local-file @var{file} [@var{name}] @" | |
12217 | msgstr "" | |
12218 | ||
12219 | #. type: deffn | |
12220 | #: doc/guix.texi:5155 | |
12221 | msgid "" | |
12222 | "[#:recursive? #f] [#:select? (const #t)] Return an object representing local " | |
12223 | "file @var{file} to add to the store; this object can be used in a gexp. If " | |
12224 | "@var{file} is a relative file name, it is looked up relative to the source " | |
12225 | "file where this form appears. @var{file} will be added to the store under " | |
12226 | "@var{name}--by default the base name of @var{file}." | |
12227 | msgstr "" | |
12228 | ||
12229 | #. type: deffn | |
12230 | #: doc/guix.texi:5167 | |
12231 | msgid "" | |
12232 | "This is the declarative counterpart of the @code{interned-file} monadic " | |
12233 | "procedure (@pxref{The Store Monad, @code{interned-file}})." | |
12234 | msgstr "" | |
12235 | ||
12236 | #. type: deffn | |
12237 | #: doc/guix.texi:5169 | |
12238 | #, no-wrap | |
12239 | msgid "{Scheme Procedure} plain-file @var{name} @var{content}" | |
12240 | msgstr "" | |
12241 | ||
12242 | #. type: deffn | |
12243 | #: doc/guix.texi:5172 | |
12244 | msgid "" | |
12245 | "Return an object representing a text file called @var{name} with the given " | |
12246 | "@var{content} (a string) to be added to the store." | |
12247 | msgstr "" | |
12248 | ||
12249 | #. type: deffn | |
12250 | #: doc/guix.texi:5174 | |
12251 | msgid "This is the declarative counterpart of @code{text-file}." | |
12252 | msgstr "" | |
12253 | ||
12254 | #. type: deffn | |
12255 | #: doc/guix.texi:5176 | |
12256 | #, no-wrap | |
12257 | msgid "{Scheme Procedure} computed-file @var{name} @var{gexp} @" | |
12258 | msgstr "" | |
12259 | ||
12260 | #. type: deffn | |
12261 | #: doc/guix.texi:5181 | |
12262 | msgid "" | |
12263 | "[#:options '(#:local-build? #t)] Return an object representing the store " | |
12264 | "item @var{name}, a file or directory computed by @var{gexp}. @var{options} " | |
12265 | "is a list of additional arguments to pass to @code{gexp->derivation}." | |
12266 | msgstr "" | |
12267 | ||
12268 | #. type: deffn | |
12269 | #: doc/guix.texi:5183 | |
12270 | msgid "This is the declarative counterpart of @code{gexp->derivation}." | |
12271 | msgstr "" | |
12272 | ||
12273 | #. type: deffn | |
12274 | #: doc/guix.texi:5185 | |
12275 | #, no-wrap | |
12276 | msgid "{Monadic Procedure} gexp->script @var{name} @var{exp} @" | |
12277 | msgstr "" | |
12278 | ||
12279 | #. type: deffn | |
12280 | #: doc/guix.texi:5190 | |
12281 | msgid "" | |
12282 | "[#:guile (default-guile)] [#:module-path %load-path] Return an executable " | |
12283 | "script @var{name} that runs @var{exp} using @var{guile}, with @var{exp}'s " | |
12284 | "imported modules in its search path. Look up @var{exp}'s modules in " | |
12285 | "@var{module-path}." | |
12286 | msgstr "" | |
12287 | ||
12288 | #. type: deffn | |
12289 | #: doc/guix.texi:5193 | |
12290 | msgid "" | |
12291 | "The example below builds a script that simply invokes the @command{ls} " | |
12292 | "command:" | |
12293 | msgstr "" | |
12294 | ||
12295 | #. type: example | |
12296 | #: doc/guix.texi:5196 | |
12297 | #, no-wrap | |
12298 | msgid "" | |
12299 | "(use-modules (guix gexp) (gnu packages base))\n" | |
12300 | "\n" | |
12301 | msgstr "" | |
12302 | ||
12303 | #. type: example | |
12304 | #: doc/guix.texi:5200 | |
12305 | #, no-wrap | |
12306 | msgid "" | |
12307 | "(gexp->script \"list-files\"\n" | |
12308 | " #~(execl #$(file-append coreutils \"/bin/ls\")\n" | |
12309 | " \"ls\"))\n" | |
12310 | msgstr "" | |
12311 | ||
12312 | #. type: deffn | |
12313 | #: doc/guix.texi:5205 | |
12314 | msgid "" | |
39764ef8 JL |
12315 | "When ``running'' it through the store (@pxref{The Store Monad, @code{run-" |
12316 | "with-store}}), we obtain a derivation that produces an executable file " | |
12317 | "@file{/gnu/store/@dots{}-list-files} along these lines:" | |
b9fe8fd6 JL |
12318 | msgstr "" |
12319 | ||
12320 | #. type: example | |
12321 | #: doc/guix.texi:5210 | |
12322 | #, no-wrap | |
12323 | msgid "" | |
12324 | "#!/gnu/store/@dots{}-guile-2.0.11/bin/guile -ds\n" | |
12325 | "!#\n" | |
12326 | "(execl \"/gnu/store/@dots{}-coreutils-8.22\"/bin/ls\" \"ls\")\n" | |
12327 | msgstr "" | |
12328 | ||
12329 | #. type: deffn | |
12330 | #: doc/guix.texi:5213 | |
12331 | #, no-wrap | |
12332 | msgid "{Scheme Procedure} program-file @var{name} @var{exp} @" | |
12333 | msgstr "" | |
12334 | ||
12335 | #. type: deffn | |
12336 | #: doc/guix.texi:5218 | |
12337 | msgid "" | |
12338 | "[#:guile #f] [#:module-path %load-path] Return an object representing the " | |
12339 | "executable store item @var{name} that runs @var{gexp}. @var{guile} is the " | |
12340 | "Guile package used to execute that script. Imported modules of @var{gexp} " | |
12341 | "are looked up in @var{module-path}." | |
12342 | msgstr "" | |
12343 | ||
12344 | #. type: deffn | |
12345 | #: doc/guix.texi:5220 | |
12346 | msgid "This is the declarative counterpart of @code{gexp->script}." | |
12347 | msgstr "" | |
12348 | ||
12349 | #. type: deffn | |
12350 | #: doc/guix.texi:5222 | |
12351 | #, no-wrap | |
12352 | msgid "{Monadic Procedure} gexp->file @var{name} @var{exp} @" | |
12353 | msgstr "" | |
12354 | ||
12355 | #. type: deffn | |
12356 | #: doc/guix.texi:5229 | |
12357 | msgid "" | |
12358 | "[#:set-load-path? #t] [#:module-path %load-path] @ [#:splice? #f] @ [#:guile " | |
12359 | "(default-guile)] Return a derivation that builds a file @var{name} " | |
12360 | "containing @var{exp}. When @var{splice?} is true, @var{exp} is considered " | |
12361 | "to be a list of expressions that will be spliced in the resulting file." | |
12362 | msgstr "" | |
12363 | ||
12364 | #. type: deffn | |
12365 | #: doc/guix.texi:5234 | |
12366 | msgid "" | |
12367 | "When @var{set-load-path?} is true, emit code in the resulting file to set " | |
12368 | "@code{%load-path} and @code{%load-compiled-path} to honor @var{exp}'s " | |
12369 | "imported modules. Look up @var{exp}'s modules in @var{module-path}." | |
12370 | msgstr "" | |
12371 | ||
12372 | #. type: deffn | |
12373 | #: doc/guix.texi:5237 | |
12374 | msgid "" | |
12375 | "The resulting file holds references to all the dependencies of @var{exp} or " | |
12376 | "a subset thereof." | |
12377 | msgstr "" | |
12378 | ||
12379 | #. type: deffn | |
12380 | #: doc/guix.texi:5239 | |
12381 | #, no-wrap | |
12382 | msgid "{Scheme Procedure} scheme-file @var{name} @var{exp} [#:splice? #f]" | |
12383 | msgstr "" | |
12384 | ||
12385 | #. type: deffn | |
12386 | #: doc/guix.texi:5242 | |
12387 | msgid "" | |
12388 | "Return an object representing the Scheme file @var{name} that contains " | |
12389 | "@var{exp}." | |
12390 | msgstr "" | |
12391 | ||
12392 | #. type: deffn | |
12393 | #: doc/guix.texi:5244 | |
12394 | msgid "This is the declarative counterpart of @code{gexp->file}." | |
12395 | msgstr "" | |
12396 | ||
12397 | #. type: deffn | |
12398 | #: doc/guix.texi:5246 | |
12399 | #, no-wrap | |
12400 | msgid "{Monadic Procedure} text-file* @var{name} @var{text} @dots{}" | |
12401 | msgstr "" | |
12402 | ||
12403 | #. type: deffn | |
12404 | #: doc/guix.texi:5252 | |
12405 | msgid "" | |
12406 | "Return as a monadic value a derivation that builds a text file containing " | |
12407 | "all of @var{text}. @var{text} may list, in addition to strings, objects of " | |
12408 | "any type that can be used in a gexp: packages, derivations, local file " | |
12409 | "objects, etc. The resulting store file holds references to all these." | |
12410 | msgstr "" | |
12411 | ||
12412 | #. type: deffn | |
12413 | #: doc/guix.texi:5257 | |
12414 | msgid "" | |
12415 | "This variant should be preferred over @code{text-file} anytime the file to " | |
12416 | "create will reference items from the store. This is typically the case when " | |
12417 | "building a configuration file that embeds store file names, like this:" | |
12418 | msgstr "" | |
12419 | ||
12420 | #. type: example | |
12421 | #: doc/guix.texi:5265 | |
12422 | #, no-wrap | |
12423 | msgid "" | |
12424 | "(define (profile.sh)\n" | |
12425 | " ;; Return the name of a shell script in the store that\n" | |
12426 | " ;; initializes the 'PATH' environment variable.\n" | |
12427 | " (text-file* \"profile.sh\"\n" | |
12428 | " \"export PATH=\" coreutils \"/bin:\"\n" | |
12429 | " grep \"/bin:\" sed \"/bin\\n\"))\n" | |
12430 | msgstr "" | |
12431 | ||
12432 | #. type: deffn | |
12433 | #: doc/guix.texi:5270 | |
12434 | msgid "" | |
12435 | "In this example, the resulting @file{/gnu/store/@dots{}-profile.sh} file " | |
12436 | "will reference @var{coreutils}, @var{grep}, and @var{sed}, thereby " | |
12437 | "preventing them from being garbage-collected during its lifetime." | |
12438 | msgstr "" | |
12439 | ||
12440 | #. type: deffn | |
12441 | #: doc/guix.texi:5272 | |
12442 | #, no-wrap | |
12443 | msgid "{Scheme Procedure} mixed-text-file @var{name} @var{text} @dots{}" | |
12444 | msgstr "" | |
12445 | ||
12446 | #. type: deffn | |
12447 | #: doc/guix.texi:5276 | |
12448 | msgid "" | |
12449 | "Return an object representing store file @var{name} containing @var{text}. " | |
12450 | "@var{text} is a sequence of strings and file-like objects, as in:" | |
12451 | msgstr "" | |
12452 | ||
12453 | #. type: example | |
12454 | #: doc/guix.texi:5280 | |
12455 | #, no-wrap | |
12456 | msgid "" | |
12457 | "(mixed-text-file \"profile\"\n" | |
12458 | " \"export PATH=\" coreutils \"/bin:\" grep \"/bin\")\n" | |
12459 | msgstr "" | |
12460 | ||
12461 | #. type: deffn | |
12462 | #: doc/guix.texi:5283 | |
12463 | msgid "This is the declarative counterpart of @code{text-file*}." | |
12464 | msgstr "" | |
12465 | ||
12466 | #. type: deffn | |
12467 | #: doc/guix.texi:5285 | |
12468 | #, no-wrap | |
12469 | msgid "{Scheme Procedure} file-union @var{name} @var{files}" | |
12470 | msgstr "" | |
12471 | ||
12472 | #. type: deffn | |
12473 | #: doc/guix.texi:5290 | |
12474 | msgid "" | |
12475 | "Return a @code{<computed-file>} that builds a directory containing all of " | |
12476 | "@var{files}. Each item in @var{files} must be a two-element list where the " | |
12477 | "first element is the file name to use in the new directory, and the second " | |
12478 | "element is a gexp denoting the target file. Here's an example:" | |
12479 | msgstr "" | |
12480 | ||
12481 | #. type: example | |
12482 | #: doc/guix.texi:5297 | |
12483 | #, no-wrap | |
12484 | msgid "" | |
12485 | "(file-union \"etc\"\n" | |
12486 | " `((\"hosts\" ,(plain-file \"hosts\"\n" | |
12487 | " \"127.0.0.1 localhost\"))\n" | |
12488 | " (\"bashrc\" ,(plain-file \"bashrc\"\n" | |
12489 | " \"alias ls='ls --color'\"))))\n" | |
12490 | msgstr "" | |
12491 | ||
12492 | #. type: deffn | |
12493 | #: doc/guix.texi:5300 | |
12494 | msgid "This yields an @code{etc} directory containing these two files." | |
12495 | msgstr "" | |
12496 | ||
12497 | #. type: deffn | |
12498 | #: doc/guix.texi:5302 | |
12499 | #, no-wrap | |
12500 | msgid "{Scheme Procedure} directory-union @var{name} @var{things}" | |
12501 | msgstr "" | |
12502 | ||
12503 | #. type: deffn | |
12504 | #: doc/guix.texi:5305 | |
12505 | msgid "" | |
12506 | "Return a directory that is the union of @var{things}, where @var{things} is " | |
12507 | "a list of file-like objects denoting directories. For example:" | |
12508 | msgstr "" | |
12509 | ||
12510 | #. type: example | |
12511 | #: doc/guix.texi:5308 | |
12512 | #, no-wrap | |
12513 | msgid "(directory-union \"guile+emacs\" (list guile emacs))\n" | |
12514 | msgstr "" | |
12515 | ||
12516 | #. type: deffn | |
12517 | #: doc/guix.texi:5311 | |
12518 | msgid "" | |
12519 | "yields a directory that is the union of the @code{guile} and @code{emacs} " | |
12520 | "packages." | |
12521 | msgstr "" | |
12522 | ||
12523 | #. type: deffn | |
12524 | #: doc/guix.texi:5313 | |
12525 | #, no-wrap | |
12526 | msgid "{Scheme Procedure} file-append @var{obj} @var{suffix} @dots{}" | |
12527 | msgstr "" | |
12528 | ||
12529 | #. type: deffn | |
12530 | #: doc/guix.texi:5317 | |
12531 | msgid "" | |
12532 | "Return a file-like object that expands to the concatenation of @var{obj} and " | |
12533 | "@var{suffix}, where @var{obj} is a lowerable object and each @var{suffix} is " | |
12534 | "a string." | |
12535 | msgstr "" | |
12536 | ||
12537 | #. type: deffn | |
12538 | #: doc/guix.texi:5319 | |
12539 | msgid "As an example, consider this gexp:" | |
12540 | msgstr "" | |
12541 | ||
12542 | #. type: example | |
12543 | #: doc/guix.texi:5324 | |
12544 | #, no-wrap | |
12545 | msgid "" | |
12546 | "(gexp->script \"run-uname\"\n" | |
12547 | " #~(system* #$(file-append coreutils\n" | |
12548 | " \"/bin/uname\")))\n" | |
12549 | msgstr "" | |
12550 | ||
12551 | #. type: deffn | |
12552 | #: doc/guix.texi:5327 | |
12553 | msgid "The same effect could be achieved with:" | |
12554 | msgstr "" | |
12555 | ||
12556 | #. type: example | |
12557 | #: doc/guix.texi:5332 | |
12558 | #, no-wrap | |
12559 | msgid "" | |
12560 | "(gexp->script \"run-uname\"\n" | |
12561 | " #~(system* (string-append #$coreutils\n" | |
12562 | " \"/bin/uname\")))\n" | |
12563 | msgstr "" | |
12564 | ||
12565 | #. type: deffn | |
12566 | #: doc/guix.texi:5338 | |
12567 | msgid "" | |
12568 | "There is one difference though: in the @code{file-append} case, the " | |
12569 | "resulting script contains the absolute file name as a string, whereas in the " | |
12570 | "second case, the resulting script contains a @code{(string-append @dots{})} " | |
12571 | "expression to construct the file name @emph{at run time}." | |
12572 | msgstr "" | |
12573 | ||
12574 | #. type: Plain text | |
12575 | #: doc/guix.texi:5345 | |
12576 | msgid "" | |
12577 | "Of course, in addition to gexps embedded in ``host'' code, there are also " | |
12578 | "modules containing build tools. To make it clear that they are meant to be " | |
12579 | "used in the build stratum, these modules are kept in the @code{(guix build " | |
12580 | "@dots{})} name space." | |
12581 | msgstr "" | |
12582 | ||
12583 | #. type: Plain text | |
12584 | #: doc/guix.texi:5351 | |
12585 | msgid "" | |
12586 | "Internally, high-level objects are @dfn{lowered}, using their compiler, to " | |
12587 | "either derivations or store items. For instance, lowering a package yields " | |
12588 | "a derivation, and lowering a @code{plain-file} yields a store item. This is " | |
12589 | "achieved using the @code{lower-object} monadic procedure." | |
12590 | msgstr "" | |
12591 | ||
12592 | #. type: deffn | |
12593 | #: doc/guix.texi:5352 | |
12594 | #, no-wrap | |
12595 | msgid "{Monadic Procedure} lower-object @var{obj} [@var{system}] @" | |
12596 | msgstr "" | |
12597 | ||
12598 | #. type: deffn | |
12599 | #: doc/guix.texi:5358 | |
12600 | msgid "" | |
12601 | "[#:target #f] Return as a value in @var{%store-monad} the derivation or " | |
12602 | "store item corresponding to @var{obj} for @var{system}, cross-compiling for " | |
12603 | "@var{target} if @var{target} is true. @var{obj} must be an object that has " | |
12604 | "an associated gexp compiler, such as a @code{<package>}." | |
12605 | msgstr "" | |
12606 | ||
12607 | #. type: Plain text | |
12608 | #: doc/guix.texi:5369 | |
12609 | msgid "" | |
12610 | "This section describes Guix command-line utilities. Some of them are " | |
12611 | "primarily targeted at developers and users who write new package " | |
12612 | "definitions, while others are more generally useful. They complement the " | |
12613 | "Scheme programming interface of Guix in a convenient way." | |
12614 | msgstr "" | |
12615 | ||
12616 | #. type: cindex | |
12617 | #: doc/guix.texi:5391 | |
12618 | #, no-wrap | |
12619 | msgid "package building" | |
12620 | msgstr "" | |
12621 | ||
12622 | #. type: command{#1} | |
12623 | #: doc/guix.texi:5392 | |
12624 | #, no-wrap | |
12625 | msgid "guix build" | |
12626 | msgstr "" | |
12627 | ||
12628 | #. type: Plain text | |
12629 | #: doc/guix.texi:5398 | |
12630 | msgid "" | |
12631 | "The @command{guix build} command builds packages or derivations and their " | |
12632 | "dependencies, and prints the resulting store paths. Note that it does not " | |
12633 | "modify the user's profile---this is the job of the @command{guix package} " | |
12634 | "command (@pxref{Invoking guix package}). Thus, it is mainly useful for " | |
12635 | "distribution developers." | |
12636 | msgstr "" | |
12637 | ||
12638 | #. type: Plain text | |
39764ef8 JL |
12639 | #: doc/guix.texi:5400 doc/guix.texi:6057 doc/guix.texi:6124 doc/guix.texi:6793 |
12640 | #: doc/guix.texi:7123 doc/guix.texi:7453 doc/guix.texi:7758 doc/guix.texi:7824 | |
12641 | #: doc/guix.texi:7863 | |
b9fe8fd6 JL |
12642 | msgid "The general syntax is:" |
12643 | msgstr "" | |
12644 | ||
12645 | #. type: example | |
12646 | #: doc/guix.texi:5403 | |
12647 | #, no-wrap | |
12648 | msgid "guix build @var{options} @var{package-or-derivation}@dots{}\n" | |
12649 | msgstr "" | |
12650 | ||
12651 | #. type: Plain text | |
12652 | #: doc/guix.texi:5408 | |
12653 | msgid "" | |
12654 | "As an example, the following command builds the latest versions of Emacs and " | |
12655 | "of Guile, displays their build logs, and finally displays the resulting " | |
12656 | "directories:" | |
12657 | msgstr "" | |
12658 | ||
12659 | #. type: example | |
12660 | #: doc/guix.texi:5411 | |
12661 | #, no-wrap | |
12662 | msgid "guix build emacs guile\n" | |
12663 | msgstr "" | |
12664 | ||
12665 | #. type: Plain text | |
12666 | #: doc/guix.texi:5414 | |
12667 | msgid "Similarly, the following command builds all the available packages:" | |
12668 | msgstr "" | |
12669 | ||
12670 | #. type: example | |
12671 | #: doc/guix.texi:5418 | |
12672 | #, no-wrap | |
12673 | msgid "" | |
12674 | "guix build --quiet --keep-going \\\n" | |
12675 | " `guix package -A | cut -f1,2 --output-delimiter=@@`\n" | |
12676 | msgstr "" | |
12677 | ||
12678 | #. type: Plain text | |
12679 | #: doc/guix.texi:5426 | |
12680 | msgid "" | |
12681 | "@var{package-or-derivation} may be either the name of a package found in the " | |
12682 | "software distribution such as @code{coreutils} or @code{coreutils@@8.20}, or " | |
12683 | "a derivation such as @file{/gnu/store/@dots{}-coreutils-8.19.drv}. In the " | |
12684 | "former case, a package with the corresponding name (and optionally version) " | |
39764ef8 | 12685 | "is searched for among the GNU distribution modules (@pxref{Package Modules})." |
b9fe8fd6 JL |
12686 | msgstr "" |
12687 | ||
12688 | #. type: Plain text | |
12689 | #: doc/guix.texi:5431 | |
12690 | msgid "" | |
12691 | "Alternatively, the @code{--expression} option may be used to specify a " | |
12692 | "Scheme expression that evaluates to a package; this is useful when " | |
12693 | "disambiguating among several same-named packages or package variants is " | |
12694 | "needed." | |
12695 | msgstr "" | |
12696 | ||
12697 | #. type: Plain text | |
12698 | #: doc/guix.texi:5434 | |
12699 | msgid "" | |
12700 | "There may be zero or more @var{options}. The available options are " | |
12701 | "described in the subsections below." | |
12702 | msgstr "" | |
12703 | ||
12704 | #. type: Plain text | |
12705 | #: doc/guix.texi:5449 | |
12706 | msgid "" | |
12707 | "A number of options that control the build process are common to " | |
12708 | "@command{guix build} and other commands that can spawn builds, such as " | |
12709 | "@command{guix package} or @command{guix archive}. These are the following:" | |
12710 | msgstr "" | |
12711 | ||
12712 | #. type: item | |
12713 | #: doc/guix.texi:5452 | |
12714 | #, no-wrap | |
12715 | msgid "--load-path=@var{directory}" | |
12716 | msgstr "" | |
12717 | ||
12718 | #. type: itemx | |
12719 | #: doc/guix.texi:5453 | |
12720 | #, no-wrap | |
12721 | msgid "-L @var{directory}" | |
12722 | msgstr "" | |
12723 | ||
12724 | #. type: table | |
12725 | #: doc/guix.texi:5456 | |
12726 | msgid "" | |
12727 | "Add @var{directory} to the front of the package module search path " | |
12728 | "(@pxref{Package Modules})." | |
12729 | msgstr "" | |
12730 | ||
12731 | #. type: table | |
12732 | #: doc/guix.texi:5459 | |
12733 | msgid "" | |
12734 | "This allows users to define their own packages and make them visible to the " | |
12735 | "command-line tools." | |
12736 | msgstr "" | |
12737 | ||
12738 | #. type: item | |
12739 | #: doc/guix.texi:5460 | |
12740 | #, no-wrap | |
12741 | msgid "--keep-failed" | |
12742 | msgstr "" | |
12743 | ||
12744 | #. type: itemx | |
12745 | #: doc/guix.texi:5461 | |
12746 | #, no-wrap | |
12747 | msgid "-K" | |
12748 | msgstr "" | |
12749 | ||
12750 | #. type: table | |
12751 | #: doc/guix.texi:5467 | |
12752 | msgid "" | |
12753 | "Keep the build tree of failed builds. Thus, if a build fails, its build " | |
12754 | "tree is kept under @file{/tmp}, in a directory whose name is shown at the " | |
12755 | "end of the build log. This is useful when debugging build issues. " | |
12756 | "@xref{Debugging Build Failures}, for tips and tricks on how to debug build " | |
12757 | "issues." | |
12758 | msgstr "" | |
12759 | ||
12760 | #. type: item | |
12761 | #: doc/guix.texi:5468 | |
12762 | #, no-wrap | |
12763 | msgid "--keep-going" | |
12764 | msgstr "" | |
12765 | ||
12766 | #. type: itemx | |
12767 | #: doc/guix.texi:5469 | |
12768 | #, no-wrap | |
12769 | msgid "-k" | |
12770 | msgstr "" | |
12771 | ||
12772 | #. type: table | |
12773 | #: doc/guix.texi:5472 | |
12774 | msgid "" | |
12775 | "Keep going when some of the derivations fail to build; return only once all " | |
12776 | "the builds have either completed or failed." | |
12777 | msgstr "" | |
12778 | ||
12779 | #. type: table | |
12780 | #: doc/guix.texi:5475 | |
12781 | msgid "" | |
12782 | "The default behavior is to stop as soon as one of the specified derivations " | |
12783 | "has failed." | |
12784 | msgstr "" | |
12785 | ||
12786 | #. type: item | |
12787 | #: doc/guix.texi:5476 | |
12788 | #, no-wrap | |
12789 | msgid "--dry-run" | |
12790 | msgstr "" | |
12791 | ||
12792 | #. type: itemx | |
12793 | #: doc/guix.texi:5477 | |
12794 | #, no-wrap | |
12795 | msgid "-n" | |
12796 | msgstr "" | |
12797 | ||
12798 | #. type: table | |
12799 | #: doc/guix.texi:5479 | |
12800 | msgid "Do not build the derivations." | |
12801 | msgstr "" | |
12802 | ||
12803 | #. type: anchor{#1} | |
12804 | #: doc/guix.texi:5481 | |
12805 | msgid "fallback-option" | |
12806 | msgstr "" | |
12807 | ||
12808 | #. type: item | |
12809 | #: doc/guix.texi:5481 | |
12810 | #, no-wrap | |
12811 | msgid "--fallback" | |
12812 | msgstr "" | |
12813 | ||
12814 | #. type: table | |
12815 | #: doc/guix.texi:5484 | |
12816 | msgid "" | |
12817 | "When substituting a pre-built binary fails, fall back to building packages " | |
12818 | "locally (@pxref{Substitution Failure})." | |
12819 | msgstr "" | |
12820 | ||
12821 | #. type: anchor{#1} | |
12822 | #: doc/guix.texi:5490 | |
12823 | msgid "client-substitute-urls" | |
12824 | msgstr "" | |
12825 | ||
12826 | #. type: table | |
12827 | #: doc/guix.texi:5490 | |
12828 | msgid "" | |
12829 | "Consider @var{urls} the whitespace-separated list of substitute source URLs, " | |
39764ef8 JL |
12830 | "overriding the default list of URLs of @command{guix-daemon} (@pxref{daemon-" |
12831 | "substitute-urls,, @command{guix-daemon} URLs})." | |
b9fe8fd6 JL |
12832 | msgstr "" |
12833 | ||
12834 | #. type: table | |
12835 | #: doc/guix.texi:5494 | |
12836 | msgid "" | |
12837 | "This means that substitutes may be downloaded from @var{urls}, provided they " | |
12838 | "are signed by a key authorized by the system administrator " | |
12839 | "(@pxref{Substitutes})." | |
12840 | msgstr "" | |
12841 | ||
12842 | #. type: table | |
12843 | #: doc/guix.texi:5497 | |
39764ef8 JL |
12844 | msgid "" |
12845 | "When @var{urls} is the empty string, substitutes are effectively disabled." | |
b9fe8fd6 JL |
12846 | msgstr "" |
12847 | ||
12848 | #. type: item | |
12849 | #: doc/guix.texi:5503 | |
12850 | #, no-wrap | |
12851 | msgid "--no-grafts" | |
12852 | msgstr "" | |
12853 | ||
12854 | #. type: table | |
12855 | #: doc/guix.texi:5507 | |
12856 | msgid "" | |
12857 | "Do not ``graft'' packages. In practice, this means that package updates " | |
12858 | "available as grafts are not applied. @xref{Security Updates}, for more " | |
12859 | "information on grafts." | |
12860 | msgstr "" | |
12861 | ||
12862 | #. type: item | |
12863 | #: doc/guix.texi:5508 | |
12864 | #, no-wrap | |
12865 | msgid "--rounds=@var{n}" | |
12866 | msgstr "" | |
12867 | ||
12868 | #. type: table | |
12869 | #: doc/guix.texi:5511 | |
12870 | msgid "" | |
12871 | "Build each derivation @var{n} times in a row, and raise an error if " | |
12872 | "consecutive build results are not bit-for-bit identical." | |
12873 | msgstr "" | |
12874 | ||
12875 | #. type: table | |
12876 | #: doc/guix.texi:5516 | |
12877 | msgid "" | |
39764ef8 JL |
12878 | "This is a useful way to detect non-deterministic builds processes. Non-" |
12879 | "deterministic build processes are a problem because they make it practically " | |
12880 | "impossible for users to @emph{verify} whether third-party binaries are " | |
12881 | "genuine. @xref{Invoking guix challenge}, for more." | |
b9fe8fd6 JL |
12882 | msgstr "" |
12883 | ||
12884 | #. type: table | |
12885 | #: doc/guix.texi:5522 | |
12886 | msgid "" | |
12887 | "Note that, currently, the differing build results are not kept around, so " | |
12888 | "you will have to manually investigate in case of an error---e.g., by " | |
12889 | "stashing one of the build results with @code{guix archive --export} " | |
12890 | "(@pxref{Invoking guix archive}), then rebuilding, and finally comparing the " | |
12891 | "two results." | |
12892 | msgstr "" | |
12893 | ||
12894 | #. type: table | |
12895 | #: doc/guix.texi:5527 | |
12896 | msgid "" | |
12897 | "Do not attempt to offload builds @i{via} the ``build hook'' of the daemon " | |
12898 | "(@pxref{Daemon Offload Setup}). That is, always build things locally " | |
12899 | "instead of offloading builds to remote machines." | |
12900 | msgstr "" | |
12901 | ||
12902 | #. type: table | |
12903 | #: doc/guix.texi:5534 | |
12904 | msgid "" | |
12905 | "By default, the daemon's setting is honored (@pxref{Invoking guix-daemon, " | |
12906 | "@code{--max-silent-time}})." | |
12907 | msgstr "" | |
12908 | ||
12909 | #. type: table | |
12910 | #: doc/guix.texi:5541 | |
12911 | msgid "" | |
12912 | "By default, the daemon's setting is honored (@pxref{Invoking guix-daemon, " | |
12913 | "@code{--timeout}})." | |
12914 | msgstr "" | |
12915 | ||
12916 | #. type: item | |
12917 | #: doc/guix.texi:5542 | |
12918 | #, no-wrap | |
12919 | msgid "--verbosity=@var{level}" | |
12920 | msgstr "" | |
12921 | ||
12922 | #. type: table | |
12923 | #: doc/guix.texi:5546 | |
12924 | msgid "" | |
12925 | "Use the given verbosity level. @var{level} must be an integer between 0 and " | |
12926 | "5; higher means more verbose output. Setting a level of 4 or more may be " | |
12927 | "helpful when debugging setup issues with the build daemon." | |
12928 | msgstr "" | |
12929 | ||
12930 | #. type: table | |
12931 | #: doc/guix.texi:5551 | |
12932 | msgid "" | |
12933 | "Allow the use of up to @var{n} CPU cores for the build. The special value " | |
12934 | "@code{0} means to use as many CPU cores as available." | |
12935 | msgstr "" | |
12936 | ||
12937 | #. type: table | |
12938 | #: doc/guix.texi:5557 | |
12939 | msgid "" | |
12940 | "Allow at most @var{n} build jobs in parallel. @xref{Invoking guix-daemon, " | |
12941 | "@code{--max-jobs}}, for details about this option and the equivalent " | |
12942 | "@command{guix-daemon} option." | |
12943 | msgstr "" | |
12944 | ||
12945 | #. type: Plain text | |
12946 | #: doc/guix.texi:5564 | |
12947 | msgid "" | |
12948 | "Behind the scenes, @command{guix build} is essentially an interface to the " | |
12949 | "@code{package-derivation} procedure of the @code{(guix packages)} module, " | |
12950 | "and to the @code{build-derivations} procedure of the @code{(guix " | |
12951 | "derivations)} module." | |
12952 | msgstr "" | |
12953 | ||
12954 | #. type: Plain text | |
12955 | #: doc/guix.texi:5568 | |
12956 | msgid "" | |
12957 | "In addition to options explicitly passed on the command line, @command{guix " | |
12958 | "build} and other @command{guix} commands that support building honor the " | |
12959 | "@code{GUIX_BUILD_OPTIONS} environment variable." | |
12960 | msgstr "" | |
12961 | ||
12962 | #. type: defvr | |
12963 | #: doc/guix.texi:5569 | |
12964 | #, no-wrap | |
12965 | msgid "{Environment Variable} GUIX_BUILD_OPTIONS" | |
12966 | msgstr "" | |
12967 | ||
12968 | #. type: defvr | |
12969 | #: doc/guix.texi:5574 | |
12970 | msgid "" | |
12971 | "Users can define this variable to a list of command line options that will " | |
12972 | "automatically be used by @command{guix build} and other @command{guix} " | |
12973 | "commands that can perform builds, as in the example below:" | |
12974 | msgstr "" | |
12975 | ||
12976 | #. type: example | |
12977 | #: doc/guix.texi:5577 | |
12978 | #, no-wrap | |
12979 | msgid "$ export GUIX_BUILD_OPTIONS=\"--no-substitutes -c 2 -L /foo/bar\"\n" | |
12980 | msgstr "" | |
12981 | ||
12982 | #. type: defvr | |
12983 | #: doc/guix.texi:5581 | |
12984 | msgid "" | |
12985 | "These options are parsed independently, and the result is appended to the " | |
12986 | "parsed command-line options." | |
12987 | msgstr "" | |
12988 | ||
12989 | #. type: cindex | |
12990 | #: doc/guix.texi:5587 | |
12991 | #, no-wrap | |
12992 | msgid "package variants" | |
12993 | msgstr "" | |
12994 | ||
12995 | #. type: Plain text | |
12996 | #: doc/guix.texi:5595 | |
12997 | msgid "" | |
12998 | "Another set of command-line options supported by @command{guix build} and " | |
12999 | "also @command{guix package} are @dfn{package transformation options}. These " | |
13000 | "are options that make it possible to define @dfn{package variants}---for " | |
13001 | "instance, packages built from different source code. This is a convenient " | |
13002 | "way to create customized packages on the fly without having to type in the " | |
13003 | "definitions of package variants (@pxref{Defining Packages})." | |
13004 | msgstr "" | |
13005 | ||
13006 | #. type: item | |
13007 | #: doc/guix.texi:5598 | |
13008 | #, no-wrap | |
13009 | msgid "--with-source=@var{source}" | |
13010 | msgstr "" | |
13011 | ||
13012 | #. type: itemx | |
13013 | #: doc/guix.texi:5599 | |
13014 | #, no-wrap | |
13015 | msgid "--with-source=@var{package}=@var{source}" | |
13016 | msgstr "" | |
13017 | ||
13018 | #. type: itemx | |
13019 | #: doc/guix.texi:5600 | |
13020 | #, no-wrap | |
13021 | msgid "--with-source=@var{package}@@@var{version}=@var{source}" | |
13022 | msgstr "" | |
13023 | ||
13024 | #. type: table | |
13025 | #: doc/guix.texi:5605 | |
13026 | msgid "" | |
13027 | "Use @var{source} as the source of @var{package}, and @var{version} as its " | |
13028 | "version number. @var{source} must be a file name or a URL, as for " | |
13029 | "@command{guix download} (@pxref{Invoking guix download})." | |
13030 | msgstr "" | |
13031 | ||
13032 | #. type: table | |
13033 | #: doc/guix.texi:5611 | |
13034 | msgid "" | |
13035 | "When @var{package} is omitted, it is taken to be the package name specified " | |
13036 | "on the command line that matches the base of @var{source}---e.g., if " | |
13037 | "@var{source} is @code{/src/guile-2.0.10.tar.gz}, the corresponding package " | |
13038 | "is @code{guile}." | |
13039 | msgstr "" | |
13040 | ||
13041 | #. type: table | |
13042 | #: doc/guix.texi:5614 | |
13043 | msgid "" | |
13044 | "Likewise, when @var{version} is omitted, the version string is inferred from " | |
13045 | "@var{source}; in the previous example, it is @code{2.0.10}." | |
13046 | msgstr "" | |
13047 | ||
13048 | #. type: table | |
13049 | #: doc/guix.texi:5619 | |
13050 | msgid "" | |
13051 | "This option allows users to try out versions of packages other than the one " | |
39764ef8 JL |
13052 | "provided by the distribution. The example below downloads @file{ed-1.7.tar." |
13053 | "gz} from a GNU mirror and uses that as the source for the @code{ed} package:" | |
b9fe8fd6 JL |
13054 | msgstr "" |
13055 | ||
13056 | #. type: example | |
13057 | #: doc/guix.texi:5622 | |
13058 | #, no-wrap | |
13059 | msgid "guix build ed --with-source=mirror://gnu/ed/ed-1.7.tar.gz\n" | |
13060 | msgstr "" | |
13061 | ||
13062 | #. type: table | |
13063 | #: doc/guix.texi:5626 | |
13064 | msgid "" | |
13065 | "As a developer, @code{--with-source} makes it easy to test release " | |
13066 | "candidates:" | |
13067 | msgstr "" | |
13068 | ||
13069 | #. type: example | |
13070 | #: doc/guix.texi:5629 | |
13071 | #, no-wrap | |
13072 | msgid "guix build guile --with-source=../guile-2.0.9.219-e1bb7.tar.xz\n" | |
13073 | msgstr "" | |
13074 | ||
13075 | #. type: table | |
13076 | #: doc/guix.texi:5632 | |
13077 | msgid "@dots{} or to build from a checkout in a pristine environment:" | |
13078 | msgstr "" | |
13079 | ||
13080 | #. type: example | |
13081 | #: doc/guix.texi:5636 | |
13082 | #, no-wrap | |
13083 | msgid "" | |
13084 | "$ git clone git://git.sv.gnu.org/guix.git\n" | |
13085 | "$ guix build guix --with-source=guix@@1.0=./guix\n" | |
13086 | msgstr "" | |
13087 | ||
13088 | #. type: item | |
13089 | #: doc/guix.texi:5638 | |
13090 | #, no-wrap | |
13091 | msgid "--with-input=@var{package}=@var{replacement}" | |
13092 | msgstr "" | |
13093 | ||
13094 | #. type: table | |
13095 | #: doc/guix.texi:5643 | |
13096 | msgid "" | |
13097 | "Replace dependency on @var{package} by a dependency on @var{replacement}. " | |
13098 | "@var{package} must be a package name, and @var{replacement} must be a " | |
13099 | "package specification such as @code{guile} or @code{guile@@1.8}." | |
13100 | msgstr "" | |
13101 | ||
13102 | #. type: table | |
13103 | #: doc/guix.texi:5647 | |
13104 | msgid "" | |
13105 | "For instance, the following command builds Guix, but replaces its dependency " | |
13106 | "on the current stable version of Guile with a dependency on the legacy " | |
13107 | "version of Guile, @code{guile@@2.0}:" | |
13108 | msgstr "" | |
13109 | ||
13110 | #. type: example | |
13111 | #: doc/guix.texi:5650 | |
13112 | #, no-wrap | |
13113 | msgid "guix build --with-input=guile=guile@@2.0 guix\n" | |
13114 | msgstr "" | |
13115 | ||
13116 | #. type: table | |
13117 | #: doc/guix.texi:5655 | |
13118 | msgid "" | |
13119 | "This is a recursive, deep replacement. So in this example, both @code{guix} " | |
13120 | "and its dependency @code{guile-json} (which also depends on @code{guile}) " | |
13121 | "get rebuilt against @code{guile@@2.0}." | |
13122 | msgstr "" | |
13123 | ||
13124 | #. type: table | |
13125 | #: doc/guix.texi:5658 | |
13126 | msgid "" | |
13127 | "This is implemented using the @code{package-input-rewriting} Scheme " | |
13128 | "procedure (@pxref{Defining Packages, @code{package-input-rewriting}})." | |
13129 | msgstr "" | |
13130 | ||
13131 | #. type: item | |
13132 | #: doc/guix.texi:5659 | |
13133 | #, no-wrap | |
13134 | msgid "--with-graft=@var{package}=@var{replacement}" | |
13135 | msgstr "" | |
13136 | ||
13137 | #. type: table | |
13138 | #: doc/guix.texi:5665 | |
13139 | msgid "" | |
13140 | "This is similar to @code{--with-input} but with an important difference: " | |
13141 | "instead of rebuilding the whole dependency chain, @var{replacement} is built " | |
13142 | "and then @dfn{grafted} onto the binaries that were initially referring to " | |
13143 | "@var{package}. @xref{Security Updates}, for more information on grafts." | |
13144 | msgstr "" | |
13145 | ||
13146 | #. type: table | |
13147 | #: doc/guix.texi:5669 | |
13148 | msgid "" | |
13149 | "For example, the command below grafts version 3.5.4 of GnuTLS onto Wget and " | |
13150 | "all its dependencies, replacing references to the version of GnuTLS they " | |
13151 | "currently refer to:" | |
13152 | msgstr "" | |
13153 | ||
13154 | #. type: example | |
13155 | #: doc/guix.texi:5672 | |
13156 | #, no-wrap | |
13157 | msgid "guix build --with-graft=gnutls=gnutls@@3.5.4 wget\n" | |
13158 | msgstr "" | |
13159 | ||
13160 | #. type: table | |
13161 | #: doc/guix.texi:5681 | |
13162 | msgid "" | |
13163 | "This has the advantage of being much faster than rebuilding everything. But " | |
13164 | "there is a caveat: it works if and only if @var{package} and " | |
13165 | "@var{replacement} are strictly compatible---for example, if they provide a " | |
13166 | "library, the application binary interface (ABI) of those libraries must be " | |
13167 | "compatible. If @var{replacement} is somehow incompatible with " | |
13168 | "@var{package}, then the resulting package may be unusable. Use with care!" | |
13169 | msgstr "" | |
13170 | ||
13171 | #. type: Plain text | |
13172 | #: doc/guix.texi:5689 | |
13173 | msgid "" | |
13174 | "The command-line options presented below are specific to @command{guix " | |
13175 | "build}." | |
13176 | msgstr "" | |
13177 | ||
13178 | #. type: item | |
13179 | #: doc/guix.texi:5692 | |
13180 | #, no-wrap | |
13181 | msgid "--quiet" | |
13182 | msgstr "" | |
13183 | ||
13184 | #. type: itemx | |
13185 | #: doc/guix.texi:5693 | |
13186 | #, no-wrap | |
13187 | msgid "-q" | |
13188 | msgstr "" | |
13189 | ||
13190 | #. type: table | |
13191 | #: doc/guix.texi:5697 | |
13192 | msgid "" | |
13193 | "Build quietly, without displaying the build log. Upon completion, the build " | |
13194 | "log is kept in @file{/var} (or similar) and can always be retrieved using " | |
13195 | "the @option{--log-file} option." | |
13196 | msgstr "" | |
13197 | ||
13198 | #. type: item | |
13199 | #: doc/guix.texi:5698 | |
13200 | #, no-wrap | |
13201 | msgid "--file=@var{file}" | |
13202 | msgstr "" | |
13203 | ||
13204 | #. type: table | |
13205 | #: doc/guix.texi:5703 | |
13206 | msgid "" | |
39764ef8 | 13207 | "Build the package or derivation that the code within @var{file} evaluates to." |
b9fe8fd6 JL |
13208 | msgstr "" |
13209 | ||
13210 | #. type: table | |
13211 | #: doc/guix.texi:5706 | |
13212 | msgid "" | |
13213 | "As an example, @var{file} might contain a package definition like this " | |
13214 | "(@pxref{Defining Packages}):" | |
13215 | msgstr "" | |
13216 | ||
13217 | #. type: table | |
13218 | #: doc/guix.texi:5714 | |
13219 | msgid "Build the package or derivation @var{expr} evaluates to." | |
13220 | msgstr "" | |
13221 | ||
13222 | #. type: table | |
13223 | #: doc/guix.texi:5718 | |
13224 | msgid "" | |
13225 | "For example, @var{expr} may be @code{(@@ (gnu packages guile) guile-1.8)}, " | |
39764ef8 | 13226 | "which unambiguously designates this specific variant of version 1.8 of Guile." |
b9fe8fd6 JL |
13227 | msgstr "" |
13228 | ||
13229 | #. type: table | |
13230 | #: doc/guix.texi:5722 | |
13231 | msgid "" | |
13232 | "Alternatively, @var{expr} may be a G-expression, in which case it is used as " | |
13233 | "a build program passed to @code{gexp->derivation} (@pxref{G-Expressions})." | |
13234 | msgstr "" | |
13235 | ||
13236 | #. type: table | |
13237 | #: doc/guix.texi:5726 | |
13238 | msgid "" | |
13239 | "Lastly, @var{expr} may refer to a zero-argument monadic procedure " | |
13240 | "(@pxref{The Store Monad}). The procedure must return a derivation as a " | |
13241 | "monadic value, which is then passed through @code{run-with-store}." | |
13242 | msgstr "" | |
13243 | ||
13244 | #. type: item | |
13245 | #: doc/guix.texi:5727 | |
13246 | #, no-wrap | |
13247 | msgid "--source" | |
13248 | msgstr "" | |
13249 | ||
13250 | #. type: itemx | |
13251 | #: doc/guix.texi:5728 | |
13252 | #, no-wrap | |
13253 | msgid "-S" | |
13254 | msgstr "" | |
13255 | ||
13256 | #. type: table | |
13257 | #: doc/guix.texi:5731 | |
13258 | msgid "" | |
13259 | "Build the source derivations of the packages, rather than the packages " | |
13260 | "themselves." | |
13261 | msgstr "" | |
13262 | ||
13263 | #. type: table | |
13264 | #: doc/guix.texi:5735 | |
13265 | msgid "" | |
39764ef8 JL |
13266 | "For instance, @code{guix build -S gcc} returns something like @file{/gnu/" |
13267 | "store/@dots{}-gcc-4.7.2.tar.bz2}, which is the GCC source tarball." | |
b9fe8fd6 JL |
13268 | msgstr "" |
13269 | ||
13270 | #. type: table | |
13271 | #: doc/guix.texi:5739 | |
13272 | msgid "" | |
13273 | "The returned source tarball is the result of applying any patches and code " | |
13274 | "snippets specified in the package @code{origin} (@pxref{Defining Packages})." | |
13275 | msgstr "" | |
13276 | ||
13277 | #. type: item | |
13278 | #: doc/guix.texi:5740 | |
13279 | #, no-wrap | |
13280 | msgid "--sources" | |
13281 | msgstr "" | |
13282 | ||
13283 | #. type: table | |
13284 | #: doc/guix.texi:5747 | |
13285 | msgid "" | |
13286 | "Fetch and return the source of @var{package-or-derivation} and all their " | |
13287 | "dependencies, recursively. This is a handy way to obtain a local copy of " | |
13288 | "all the source code needed to build @var{packages}, allowing you to " | |
13289 | "eventually build them even without network access. It is an extension of " | |
13290 | "the @code{--source} option and can accept one of the following optional " | |
13291 | "argument values:" | |
13292 | msgstr "" | |
13293 | ||
13294 | #. type: item | |
13295 | #: doc/guix.texi:5749 doc/guix.texi:6974 | |
13296 | #, no-wrap | |
13297 | msgid "package" | |
13298 | msgstr "" | |
13299 | ||
13300 | #. type: table | |
13301 | #: doc/guix.texi:5752 | |
13302 | msgid "" | |
13303 | "This value causes the @code{--sources} option to behave in the same way as " | |
13304 | "the @code{--source} option." | |
13305 | msgstr "" | |
13306 | ||
13307 | #. type: item | |
39764ef8 | 13308 | #: doc/guix.texi:5753 doc/guix.texi:11798 |
b9fe8fd6 JL |
13309 | #, no-wrap |
13310 | msgid "all" | |
13311 | msgstr "" | |
13312 | ||
13313 | #. type: table | |
13314 | #: doc/guix.texi:5756 | |
13315 | msgid "" | |
13316 | "Build the source derivations of all packages, including any source that " | |
13317 | "might be listed as @code{inputs}. This is the default value." | |
13318 | msgstr "" | |
13319 | ||
13320 | #. type: example | |
13321 | #: doc/guix.texi:5762 | |
13322 | #, no-wrap | |
13323 | msgid "" | |
13324 | "$ guix build --sources tzdata\n" | |
13325 | "The following derivations will be built:\n" | |
13326 | " /gnu/store/@dots{}-tzdata2015b.tar.gz.drv\n" | |
13327 | " /gnu/store/@dots{}-tzcode2015b.tar.gz.drv\n" | |
13328 | msgstr "" | |
13329 | ||
13330 | #. type: item | |
13331 | #: doc/guix.texi:5764 | |
13332 | #, no-wrap | |
13333 | msgid "transitive" | |
13334 | msgstr "" | |
13335 | ||
13336 | #. type: table | |
13337 | #: doc/guix.texi:5768 | |
13338 | msgid "" | |
13339 | "Build the source derivations of all packages, as well of all transitive " | |
13340 | "inputs to the packages. This can be used e.g. to prefetch package source " | |
13341 | "for later offline building." | |
13342 | msgstr "" | |
13343 | ||
13344 | #. type: example | |
13345 | #: doc/guix.texi:5779 | |
13346 | #, no-wrap | |
13347 | msgid "" | |
13348 | "$ guix build --sources=transitive tzdata\n" | |
13349 | "The following derivations will be built:\n" | |
13350 | " /gnu/store/@dots{}-tzcode2015b.tar.gz.drv\n" | |
13351 | " /gnu/store/@dots{}-findutils-4.4.2.tar.xz.drv\n" | |
13352 | " /gnu/store/@dots{}-grep-2.21.tar.xz.drv\n" | |
13353 | " /gnu/store/@dots{}-coreutils-8.23.tar.xz.drv\n" | |
13354 | " /gnu/store/@dots{}-make-4.1.tar.xz.drv\n" | |
13355 | " /gnu/store/@dots{}-bash-4.3.tar.xz.drv\n" | |
13356 | "@dots{}\n" | |
13357 | msgstr "" | |
13358 | ||
13359 | #. type: quotation | |
13360 | #: doc/guix.texi:5792 | |
13361 | msgid "" | |
13362 | "The @code{--system} flag is for @emph{native} compilation and must not be " | |
13363 | "confused with cross-compilation. See @code{--target} below for information " | |
13364 | "on cross-compilation." | |
13365 | msgstr "" | |
13366 | ||
13367 | #. type: table | |
13368 | #: doc/guix.texi:5798 | |
13369 | msgid "" | |
13370 | "An example use of this is on Linux-based systems, which can emulate " | |
13371 | "different personalities. For instance, passing @code{--system=i686-linux} " | |
13372 | "on an @code{x86_64-linux} system allows you to build packages in a complete " | |
13373 | "32-bit environment." | |
13374 | msgstr "" | |
13375 | ||
13376 | #. type: table | |
13377 | #: doc/guix.texi:5803 | |
13378 | msgid "" | |
13379 | "Similarly, when transparent emulation with QEMU and @code{binfmt_misc} is " | |
13380 | "enabled (@pxref{Virtualization Services, @code{qemu-binfmt-service-type}}), " | |
13381 | "you can build for any system for which a QEMU @code{binfmt_misc} handler is " | |
13382 | "installed." | |
13383 | msgstr "" | |
13384 | ||
13385 | #. type: table | |
13386 | #: doc/guix.texi:5807 | |
13387 | msgid "" | |
13388 | "Builds for a system other than that of the machine you are using can also be " | |
13389 | "offloaded to a remote machine of the right architecture. @xref{Daemon " | |
13390 | "Offload Setup}, for more information on offloading." | |
13391 | msgstr "" | |
13392 | ||
13393 | #. type: anchor{#1} | |
13394 | #: doc/guix.texi:5815 | |
13395 | msgid "build-check" | |
13396 | msgstr "" | |
13397 | ||
13398 | #. type: item | |
13399 | #: doc/guix.texi:5815 | |
13400 | #, no-wrap | |
13401 | msgid "--check" | |
13402 | msgstr "" | |
13403 | ||
13404 | #. type: cindex | |
13405 | #: doc/guix.texi:5816 | |
13406 | #, no-wrap | |
13407 | msgid "determinism, checking" | |
13408 | msgstr "" | |
13409 | ||
13410 | #. type: cindex | |
13411 | #: doc/guix.texi:5817 | |
13412 | #, no-wrap | |
13413 | msgid "reproducibility, checking" | |
13414 | msgstr "" | |
13415 | ||
13416 | #. type: table | |
13417 | #: doc/guix.texi:5821 | |
13418 | msgid "" | |
13419 | "Rebuild @var{package-or-derivation}, which are already available in the " | |
39764ef8 | 13420 | "store, and raise an error if the build results are not bit-for-bit identical." |
b9fe8fd6 JL |
13421 | msgstr "" |
13422 | ||
13423 | #. type: table | |
13424 | #: doc/guix.texi:5826 | |
13425 | msgid "" | |
13426 | "This mechanism allows you to check whether previously installed substitutes " | |
13427 | "are genuine (@pxref{Substitutes}), or whether the build result of a package " | |
13428 | "is deterministic. @xref{Invoking guix challenge}, for more background " | |
13429 | "information and tools." | |
13430 | msgstr "" | |
13431 | ||
13432 | #. type: item | |
13433 | #: doc/guix.texi:5831 | |
13434 | #, no-wrap | |
13435 | msgid "--repair" | |
13436 | msgstr "" | |
13437 | ||
13438 | #. type: cindex | |
13439 | #: doc/guix.texi:5832 | |
13440 | #, no-wrap | |
13441 | msgid "repairing store items" | |
13442 | msgstr "" | |
13443 | ||
13444 | #. type: table | |
13445 | #: doc/guix.texi:5836 | |
13446 | msgid "" | |
39764ef8 JL |
13447 | "Attempt to repair the specified store items, if they are corrupt, by re-" |
13448 | "downloading or rebuilding them." | |
b9fe8fd6 JL |
13449 | msgstr "" |
13450 | ||
13451 | #. type: table | |
13452 | #: doc/guix.texi:5838 | |
13453 | msgid "This operation is not atomic and thus restricted to @code{root}." | |
13454 | msgstr "" | |
13455 | ||
13456 | #. type: item | |
13457 | #: doc/guix.texi:5839 | |
13458 | #, no-wrap | |
13459 | msgid "--derivations" | |
13460 | msgstr "" | |
13461 | ||
13462 | #. type: table | |
13463 | #: doc/guix.texi:5843 | |
39764ef8 JL |
13464 | msgid "" |
13465 | "Return the derivation paths, not the output paths, of the given packages." | |
b9fe8fd6 JL |
13466 | msgstr "" |
13467 | ||
13468 | #. type: item | |
39764ef8 | 13469 | #: doc/guix.texi:5844 doc/guix.texi:7231 doc/guix.texi:20625 |
b9fe8fd6 JL |
13470 | #, no-wrap |
13471 | msgid "--root=@var{file}" | |
13472 | msgstr "" | |
13473 | ||
13474 | #. type: itemx | |
39764ef8 | 13475 | #: doc/guix.texi:5845 doc/guix.texi:7232 doc/guix.texi:20626 |
b9fe8fd6 JL |
13476 | #, no-wrap |
13477 | msgid "-r @var{file}" | |
13478 | msgstr "" | |
13479 | ||
13480 | #. type: cindex | |
13481 | #: doc/guix.texi:5846 | |
13482 | #, no-wrap | |
13483 | msgid "GC roots, adding" | |
13484 | msgstr "" | |
13485 | ||
13486 | #. type: cindex | |
13487 | #: doc/guix.texi:5847 | |
13488 | #, no-wrap | |
13489 | msgid "garbage collector roots, adding" | |
13490 | msgstr "" | |
13491 | ||
13492 | #. type: table | |
39764ef8 | 13493 | #: doc/guix.texi:5850 doc/guix.texi:20629 |
b9fe8fd6 JL |
13494 | msgid "" |
13495 | "Make @var{file} a symlink to the result, and register it as a garbage " | |
13496 | "collector root." | |
13497 | msgstr "" | |
13498 | ||
13499 | #. type: table | |
13500 | #: doc/guix.texi:5856 | |
13501 | msgid "" | |
13502 | "Consequently, the results of this @command{guix build} invocation are " | |
13503 | "protected from garbage collection until @var{file} is removed. When that " | |
13504 | "option is omitted, build results are eligible for garbage collection as soon " | |
13505 | "as the build completes. @xref{Invoking guix gc}, for more on GC roots." | |
13506 | msgstr "" | |
13507 | ||
13508 | #. type: item | |
13509 | #: doc/guix.texi:5857 | |
13510 | #, no-wrap | |
13511 | msgid "--log-file" | |
13512 | msgstr "" | |
13513 | ||
13514 | #. type: cindex | |
13515 | #: doc/guix.texi:5858 | |
13516 | #, no-wrap | |
13517 | msgid "build logs, access" | |
13518 | msgstr "" | |
13519 | ||
13520 | #. type: table | |
13521 | #: doc/guix.texi:5862 | |
13522 | msgid "" | |
39764ef8 JL |
13523 | "Return the build log file names or URLs for the given @var{package-or-" |
13524 | "derivation}, or raise an error if build logs are missing." | |
b9fe8fd6 JL |
13525 | msgstr "" |
13526 | ||
13527 | #. type: table | |
13528 | #: doc/guix.texi:5865 | |
13529 | msgid "" | |
13530 | "This works regardless of how packages or derivations are specified. For " | |
13531 | "instance, the following invocations are equivalent:" | |
13532 | msgstr "" | |
13533 | ||
13534 | #. type: example | |
13535 | #: doc/guix.texi:5871 | |
13536 | #, no-wrap | |
13537 | msgid "" | |
13538 | "guix build --log-file `guix build -d guile`\n" | |
13539 | "guix build --log-file `guix build guile`\n" | |
13540 | "guix build --log-file guile\n" | |
13541 | "guix build --log-file -e '(@@ (gnu packages guile) guile-2.0)'\n" | |
13542 | msgstr "" | |
13543 | ||
13544 | #. type: table | |
13545 | #: doc/guix.texi:5876 | |
13546 | msgid "" | |
13547 | "If a log is unavailable locally, and unless @code{--no-substitutes} is " | |
13548 | "passed, the command looks for a corresponding log on one of the substitute " | |
13549 | "servers (as specified with @code{--substitute-urls}.)" | |
13550 | msgstr "" | |
13551 | ||
13552 | #. type: table | |
13553 | #: doc/guix.texi:5879 | |
13554 | msgid "" | |
13555 | "So for instance, imagine you want to see the build log of GDB on MIPS, but " | |
13556 | "you are actually on an @code{x86_64} machine:" | |
13557 | msgstr "" | |
13558 | ||
13559 | #. type: example | |
13560 | #: doc/guix.texi:5883 | |
13561 | #, no-wrap | |
13562 | msgid "" | |
13563 | "$ guix build --log-file gdb -s mips64el-linux\n" | |
13564 | "https://hydra.gnu.org/log/@dots{}-gdb-7.10\n" | |
13565 | msgstr "" | |
13566 | ||
13567 | #. type: table | |
13568 | #: doc/guix.texi:5886 | |
13569 | msgid "You can freely access a huge library of build logs!" | |
13570 | msgstr "" | |
13571 | ||
13572 | #. type: cindex | |
13573 | #: doc/guix.texi:5891 | |
13574 | #, no-wrap | |
13575 | msgid "build failures, debugging" | |
13576 | msgstr "" | |
13577 | ||
13578 | #. type: Plain text | |
13579 | #: doc/guix.texi:5897 | |
13580 | msgid "" | |
13581 | "When defining a new package (@pxref{Defining Packages}), you will probably " | |
13582 | "find yourself spending some time debugging and tweaking the build until it " | |
13583 | "succeeds. To do that, you need to operate the build commands yourself in an " | |
13584 | "environment as close as possible to the one the build daemon uses." | |
13585 | msgstr "" | |
13586 | ||
13587 | #. type: Plain text | |
13588 | #: doc/guix.texi:5902 | |
13589 | msgid "" | |
13590 | "To that end, the first thing to do is to use the @option{--keep-failed} or " | |
13591 | "@option{-K} option of @command{guix build}, which will keep the failed build " | |
13592 | "tree in @file{/tmp} or whatever directory you specified as @code{TMPDIR} " | |
13593 | "(@pxref{Invoking guix build, @code{--keep-failed}})." | |
13594 | msgstr "" | |
13595 | ||
13596 | #. type: Plain text | |
13597 | #: doc/guix.texi:5908 | |
13598 | msgid "" | |
13599 | "From there on, you can @command{cd} to the failed build tree and source the " | |
13600 | "@file{environment-variables} file, which contains all the environment " | |
13601 | "variable definitions that were in place when the build failed. So let's say " | |
13602 | "you're debugging a build failure in package @code{foo}; a typical session " | |
13603 | "would look like this:" | |
13604 | msgstr "" | |
13605 | ||
13606 | #. type: example | |
13607 | #: doc/guix.texi:5915 | |
13608 | #, no-wrap | |
13609 | msgid "" | |
13610 | "$ guix build foo -K\n" | |
13611 | "@dots{} @i{build fails}\n" | |
13612 | "$ cd /tmp/guix-build-foo.drv-0\n" | |
13613 | "$ source ./environment-variables\n" | |
13614 | "$ cd foo-1.2\n" | |
13615 | msgstr "" | |
13616 | ||
13617 | #. type: Plain text | |
13618 | #: doc/guix.texi:5919 | |
13619 | msgid "" | |
13620 | "Now, you can invoke commands as if you were the daemon (almost) and " | |
13621 | "troubleshoot your build process." | |
13622 | msgstr "" | |
13623 | ||
13624 | #. type: Plain text | |
13625 | #: doc/guix.texi:5925 | |
13626 | msgid "" | |
13627 | "Sometimes it happens that, for example, a package's tests pass when you run " | |
13628 | "them manually but they fail when the daemon runs them. This can happen " | |
13629 | "because the daemon runs builds in containers where, unlike in our " | |
13630 | "environment above, network access is missing, @file{/bin/sh} does not exist, " | |
13631 | "etc. (@pxref{Build Environment Setup})." | |
13632 | msgstr "" | |
13633 | ||
13634 | #. type: Plain text | |
13635 | #: doc/guix.texi:5928 | |
13636 | msgid "" | |
13637 | "In such cases, you may need to run inspect the build process from within a " | |
13638 | "container similar to the one the build daemon creates:" | |
13639 | msgstr "" | |
13640 | ||
13641 | #. type: example | |
13642 | #: doc/guix.texi:5936 | |
13643 | #, no-wrap | |
13644 | msgid "" | |
13645 | "$ guix build -K foo\n" | |
13646 | "@dots{}\n" | |
13647 | "$ cd /tmp/guix-build-foo.drv-0\n" | |
13648 | "$ guix environment --no-grafts -C foo --ad-hoc strace gdb\n" | |
13649 | "[env]# source ./environment-variables\n" | |
13650 | "[env]# cd foo-1.2\n" | |
13651 | msgstr "" | |
13652 | ||
13653 | #. type: Plain text | |
13654 | #: doc/guix.texi:5945 | |
13655 | msgid "" | |
13656 | "Here, @command{guix environment -C} creates a container and spawns a new " | |
13657 | "shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc " | |
13658 | "strace gdb} part adds the @command{strace} and @command{gdb} commands to the " | |
39764ef8 JL |
13659 | "container, which would may find handy while debugging. The @option{--no-" |
13660 | "grafts} option makes sure we get the exact same environment, with ungrafted " | |
13661 | "packages (@pxref{Security Updates}, for more info on grafts)." | |
b9fe8fd6 JL |
13662 | msgstr "" |
13663 | ||
13664 | #. type: Plain text | |
13665 | #: doc/guix.texi:5948 | |
13666 | msgid "" | |
13667 | "To get closer to a container like that used by the build daemon, we can " | |
13668 | "remove @file{/bin/sh}:" | |
13669 | msgstr "" | |
13670 | ||
13671 | #. type: example | |
13672 | #: doc/guix.texi:5951 | |
13673 | #, no-wrap | |
13674 | msgid "[env]# rm /bin/sh\n" | |
13675 | msgstr "" | |
13676 | ||
13677 | #. type: Plain text | |
13678 | #: doc/guix.texi:5955 | |
13679 | msgid "" | |
13680 | "(Don't worry, this is harmless: this is all happening in the throw-away " | |
13681 | "container created by @command{guix environment}.)" | |
13682 | msgstr "" | |
13683 | ||
13684 | #. type: Plain text | |
13685 | #: doc/guix.texi:5958 | |
13686 | msgid "" | |
13687 | "The @command{strace} command is probably not in the search path, but we can " | |
13688 | "run:" | |
13689 | msgstr "" | |
13690 | ||
13691 | #. type: example | |
13692 | #: doc/guix.texi:5961 | |
13693 | #, no-wrap | |
13694 | msgid "[env]# $GUIX_ENVIRONMENT/bin/strace -f -o log make check\n" | |
13695 | msgstr "" | |
13696 | ||
13697 | #. type: Plain text | |
13698 | #: doc/guix.texi:5966 | |
13699 | msgid "" | |
13700 | "In this way, not only you will have reproduced the environment variables the " | |
13701 | "daemon uses, you will also be running the build process in a container " | |
13702 | "similar to the one the daemon uses." | |
13703 | msgstr "" | |
13704 | ||
13705 | #. type: section | |
13706 | #: doc/guix.texi:5969 | |
13707 | #, no-wrap | |
13708 | msgid "Invoking @command{guix edit}" | |
13709 | msgstr "" | |
13710 | ||
13711 | #. type: command{#1} | |
13712 | #: doc/guix.texi:5971 | |
13713 | #, no-wrap | |
13714 | msgid "guix edit" | |
13715 | msgstr "" | |
13716 | ||
13717 | #. type: cindex | |
13718 | #: doc/guix.texi:5972 | |
13719 | #, no-wrap | |
13720 | msgid "package definition, editing" | |
13721 | msgstr "" | |
13722 | ||
13723 | #. type: Plain text | |
13724 | #: doc/guix.texi:5977 | |
13725 | msgid "" | |
13726 | "So many packages, so many source files! The @command{guix edit} command " | |
13727 | "facilitates the life of users and packagers by pointing their editor at the " | |
13728 | "source file containing the definition of the specified packages. For " | |
13729 | "instance:" | |
13730 | msgstr "" | |
13731 | ||
13732 | #. type: example | |
13733 | #: doc/guix.texi:5980 | |
13734 | #, no-wrap | |
13735 | msgid "guix edit gcc@@4.9 vim\n" | |
13736 | msgstr "" | |
13737 | ||
13738 | #. type: Plain text | |
13739 | #: doc/guix.texi:5986 | |
13740 | msgid "" | |
13741 | "launches the program specified in the @code{VISUAL} or in the @code{EDITOR} " | |
13742 | "environment variable to view the recipe of GCC@tie{}4.9.3 and that of Vim." | |
13743 | msgstr "" | |
13744 | ||
13745 | #. type: Plain text | |
13746 | #: doc/guix.texi:5992 | |
13747 | msgid "" | |
13748 | "If you are using a Guix Git checkout (@pxref{Building from Git}), or have " | |
13749 | "created your own packages on @code{GUIX_PACKAGE_PATH} (@pxref{Defining " | |
13750 | "Packages}), you will be able to edit the package recipes. Otherwise, you " | |
13751 | "will be able to examine the read-only recipes for packages currently in the " | |
13752 | "store." | |
13753 | msgstr "" | |
13754 | ||
13755 | #. type: section | |
13756 | #: doc/guix.texi:5995 | |
13757 | #, no-wrap | |
13758 | msgid "Invoking @command{guix download}" | |
13759 | msgstr "" | |
13760 | ||
13761 | #. type: command{#1} | |
13762 | #: doc/guix.texi:5997 | |
13763 | #, no-wrap | |
13764 | msgid "guix download" | |
13765 | msgstr "" | |
13766 | ||
13767 | #. type: cindex | |
13768 | #: doc/guix.texi:5998 | |
13769 | #, no-wrap | |
13770 | msgid "downloading package sources" | |
13771 | msgstr "" | |
13772 | ||
13773 | #. type: Plain text | |
13774 | #: doc/guix.texi:6005 | |
13775 | msgid "" | |
13776 | "When writing a package definition, developers typically need to download a " | |
13777 | "source tarball, compute its SHA256 hash, and write that hash in the package " | |
13778 | "definition (@pxref{Defining Packages}). The @command{guix download} tool " | |
13779 | "helps with this task: it downloads a file from the given URI, adds it to the " | |
13780 | "store, and prints both its file name in the store and its SHA256 hash." | |
13781 | msgstr "" | |
13782 | ||
13783 | #. type: Plain text | |
13784 | #: doc/guix.texi:6012 | |
13785 | msgid "" | |
13786 | "The fact that the downloaded file is added to the store saves bandwidth: " | |
13787 | "when the developer eventually tries to build the newly defined package with " | |
13788 | "@command{guix build}, the source tarball will not have to be downloaded " | |
13789 | "again because it is already in the store. It is also a convenient way to " | |
13790 | "temporarily stash files, which may be deleted eventually (@pxref{Invoking " | |
13791 | "guix gc})." | |
13792 | msgstr "" | |
13793 | ||
13794 | #. type: Plain text | |
13795 | #: doc/guix.texi:6020 | |
13796 | msgid "" | |
13797 | "The @command{guix download} command supports the same URIs as used in " | |
13798 | "package definitions. In particular, it supports @code{mirror://} URIs. " | |
13799 | "@code{https} URIs (HTTP over TLS) are supported @emph{provided} the Guile " | |
13800 | "bindings for GnuTLS are available in the user's environment; when they are " | |
13801 | "not available, an error is raised. @xref{Guile Preparations, how to install " | |
13802 | "the GnuTLS bindings for Guile,, gnutls-guile, GnuTLS-Guile}, for more " | |
13803 | "information." | |
13804 | msgstr "" | |
13805 | ||
13806 | #. type: Plain text | |
13807 | #: doc/guix.texi:6025 | |
13808 | msgid "" | |
13809 | "@command{guix download} verifies HTTPS server certificates by loading the " | |
13810 | "certificates of X.509 authorities from the directory pointed to by the " | |
13811 | "@code{SSL_CERT_DIR} environment variable (@pxref{X.509 Certificates}), " | |
13812 | "unless @option{--no-check-certificate} is used." | |
13813 | msgstr "" | |
13814 | ||
13815 | #. type: Plain text | |
13816 | #: doc/guix.texi:6027 doc/guix.texi:7511 | |
13817 | msgid "The following options are available:" | |
13818 | msgstr "" | |
13819 | ||
13820 | #. type: item | |
13821 | #: doc/guix.texi:6029 doc/guix.texi:6068 | |
13822 | #, no-wrap | |
13823 | msgid "--format=@var{fmt}" | |
13824 | msgstr "" | |
13825 | ||
13826 | #. type: itemx | |
13827 | #: doc/guix.texi:6030 doc/guix.texi:6069 | |
13828 | #, no-wrap | |
13829 | msgid "-f @var{fmt}" | |
13830 | msgstr "" | |
13831 | ||
13832 | #. type: table | |
13833 | #: doc/guix.texi:6033 | |
13834 | msgid "" | |
13835 | "Write the hash in the format specified by @var{fmt}. For more information " | |
13836 | "on the valid values for @var{fmt}, @pxref{Invoking guix hash}." | |
13837 | msgstr "" | |
13838 | ||
13839 | #. type: item | |
13840 | #: doc/guix.texi:6034 | |
13841 | #, no-wrap | |
13842 | msgid "--no-check-certificate" | |
13843 | msgstr "" | |
13844 | ||
13845 | #. type: table | |
13846 | #: doc/guix.texi:6036 | |
13847 | msgid "Do not validate the X.509 certificates of HTTPS servers." | |
13848 | msgstr "" | |
13849 | ||
13850 | #. type: table | |
13851 | #: doc/guix.texi:6040 | |
13852 | msgid "" | |
13853 | "When using this option, you have @emph{absolutely no guarantee} that you are " | |
13854 | "communicating with the authentic server responsible for the given URL, which " | |
13855 | "makes you vulnerable to ``man-in-the-middle'' attacks." | |
13856 | msgstr "" | |
13857 | ||
13858 | #. type: item | |
13859 | #: doc/guix.texi:6041 | |
13860 | #, no-wrap | |
13861 | msgid "--output=@var{file}" | |
13862 | msgstr "" | |
13863 | ||
13864 | #. type: itemx | |
13865 | #: doc/guix.texi:6042 | |
13866 | #, no-wrap | |
13867 | msgid "-o @var{file}" | |
13868 | msgstr "" | |
13869 | ||
13870 | #. type: table | |
13871 | #: doc/guix.texi:6045 | |
39764ef8 JL |
13872 | msgid "" |
13873 | "Save the downloaded file to @var{file} instead of adding it to the store." | |
b9fe8fd6 JL |
13874 | msgstr "" |
13875 | ||
13876 | #. type: section | |
13877 | #: doc/guix.texi:6048 | |
13878 | #, no-wrap | |
13879 | msgid "Invoking @command{guix hash}" | |
13880 | msgstr "" | |
13881 | ||
13882 | #. type: command{#1} | |
13883 | #: doc/guix.texi:6050 | |
13884 | #, no-wrap | |
13885 | msgid "guix hash" | |
13886 | msgstr "" | |
13887 | ||
13888 | #. type: Plain text | |
13889 | #: doc/guix.texi:6055 | |
13890 | msgid "" | |
13891 | "The @command{guix hash} command computes the SHA256 hash of a file. It is " | |
13892 | "primarily a convenience tool for anyone contributing to the distribution: it " | |
13893 | "computes the cryptographic hash of a file, which can be used in the " | |
13894 | "definition of a package (@pxref{Defining Packages})." | |
13895 | msgstr "" | |
13896 | ||
13897 | #. type: example | |
13898 | #: doc/guix.texi:6060 | |
13899 | #, no-wrap | |
13900 | msgid "guix hash @var{option} @var{file}\n" | |
13901 | msgstr "" | |
13902 | ||
13903 | #. type: Plain text | |
13904 | #: doc/guix.texi:6065 | |
13905 | msgid "" | |
13906 | "When @var{file} is @code{-} (a hyphen), @command{guix hash} computes the " | |
13907 | "hash of data read from standard input. @command{guix hash} has the " | |
13908 | "following options:" | |
13909 | msgstr "" | |
13910 | ||
13911 | #. type: table | |
13912 | #: doc/guix.texi:6071 | |
13913 | msgid "Write the hash in the format specified by @var{fmt}." | |
13914 | msgstr "" | |
13915 | ||
13916 | #. type: table | |
13917 | #: doc/guix.texi:6074 | |
13918 | msgid "" | |
13919 | "Supported formats: @code{nix-base32}, @code{base32}, @code{base16} " | |
13920 | "(@code{hex} and @code{hexadecimal} can be used as well)." | |
13921 | msgstr "" | |
13922 | ||
13923 | #. type: table | |
13924 | #: doc/guix.texi:6078 | |
13925 | msgid "" | |
13926 | "If the @option{--format} option is not specified, @command{guix hash} will " | |
13927 | "output the hash in @code{nix-base32}. This representation is used in the " | |
13928 | "definitions of packages." | |
13929 | msgstr "" | |
13930 | ||
13931 | #. type: table | |
13932 | #: doc/guix.texi:6082 | |
13933 | msgid "Compute the hash on @var{file} recursively." | |
13934 | msgstr "" | |
13935 | ||
13936 | #. type: table | |
13937 | #: doc/guix.texi:6091 | |
13938 | msgid "" | |
13939 | "In this case, the hash is computed on an archive containing @var{file}, " | |
13940 | "including its children if it is a directory. Some of the metadata of " | |
13941 | "@var{file} is part of the archive; for instance, when @var{file} is a " | |
13942 | "regular file, the hash is different depending on whether @var{file} is " | |
13943 | "executable or not. Metadata such as time stamps has no impact on the hash " | |
13944 | "(@pxref{Invoking guix archive})." | |
13945 | msgstr "" | |
13946 | ||
13947 | #. type: item | |
13948 | #: doc/guix.texi:6092 | |
13949 | #, no-wrap | |
13950 | msgid "--exclude-vcs" | |
13951 | msgstr "" | |
13952 | ||
13953 | #. type: itemx | |
13954 | #: doc/guix.texi:6093 | |
13955 | #, no-wrap | |
13956 | msgid "-x" | |
13957 | msgstr "" | |
13958 | ||
13959 | #. type: table | |
13960 | #: doc/guix.texi:6096 | |
13961 | msgid "" | |
13962 | "When combined with @option{--recursive}, exclude version control system " | |
13963 | "directories (@file{.bzr}, @file{.git}, @file{.hg}, etc.)" | |
13964 | msgstr "" | |
13965 | ||
13966 | #. type: table | |
13967 | #: doc/guix.texi:6101 | |
13968 | msgid "" | |
13969 | "As an example, here is how you would compute the hash of a Git checkout, " | |
13970 | "which is useful when using the @code{git-fetch} method (@pxref{origin " | |
13971 | "Reference}):" | |
13972 | msgstr "" | |
13973 | ||
13974 | #. type: example | |
13975 | #: doc/guix.texi:6106 | |
13976 | #, no-wrap | |
13977 | msgid "" | |
13978 | "$ git clone http://example.org/foo.git\n" | |
13979 | "$ cd foo\n" | |
13980 | "$ guix hash -rx .\n" | |
13981 | msgstr "" | |
13982 | ||
13983 | #. type: cindex | |
13984 | #: doc/guix.texi:6110 doc/guix.texi:6115 | |
13985 | #, no-wrap | |
13986 | msgid "Invoking @command{guix import}" | |
13987 | msgstr "" | |
13988 | ||
13989 | #. type: cindex | |
13990 | #: doc/guix.texi:6112 | |
13991 | #, no-wrap | |
13992 | msgid "importing packages" | |
13993 | msgstr "" | |
13994 | ||
13995 | #. type: cindex | |
13996 | #: doc/guix.texi:6113 | |
13997 | #, no-wrap | |
13998 | msgid "package import" | |
13999 | msgstr "" | |
14000 | ||
14001 | #. type: cindex | |
14002 | #: doc/guix.texi:6114 | |
14003 | #, no-wrap | |
14004 | msgid "package conversion" | |
14005 | msgstr "" | |
14006 | ||
14007 | #. type: Plain text | |
14008 | #: doc/guix.texi:6122 | |
14009 | msgid "" | |
14010 | "The @command{guix import} command is useful for people who would like to add " | |
14011 | "a package to the distribution with as little work as possible---a legitimate " | |
14012 | "demand. The command knows of a few repositories from which it can " | |
14013 | "``import'' package metadata. The result is a package definition, or a " | |
14014 | "template thereof, in the format we know (@pxref{Defining Packages})." | |
14015 | msgstr "" | |
14016 | ||
14017 | #. type: example | |
14018 | #: doc/guix.texi:6127 | |
14019 | #, no-wrap | |
14020 | msgid "guix import @var{importer} @var{options}@dots{}\n" | |
14021 | msgstr "" | |
14022 | ||
14023 | #. type: Plain text | |
14024 | #: doc/guix.texi:6133 | |
14025 | msgid "" | |
14026 | "@var{importer} specifies the source from which to import package metadata, " | |
14027 | "and @var{options} specifies a package identifier and other options specific " | |
14028 | "to @var{importer}. Currently, the available ``importers'' are:" | |
14029 | msgstr "" | |
14030 | ||
14031 | #. type: item | |
14032 | #: doc/guix.texi:6135 doc/guix.texi:6588 | |
14033 | #, no-wrap | |
14034 | msgid "gnu" | |
14035 | msgstr "" | |
14036 | ||
14037 | #. type: table | |
14038 | #: doc/guix.texi:6139 | |
14039 | msgid "" | |
14040 | "Import metadata for the given GNU package. This provides a template for the " | |
14041 | "latest version of that GNU package, including the hash of its source " | |
14042 | "tarball, and its canonical synopsis and description." | |
14043 | msgstr "" | |
14044 | ||
14045 | #. type: table | |
14046 | #: doc/guix.texi:6142 | |
14047 | msgid "" | |
14048 | "Additional information such as the package dependencies and its license " | |
14049 | "needs to be figured out manually." | |
14050 | msgstr "" | |
14051 | ||
14052 | #. type: table | |
14053 | #: doc/guix.texi:6145 | |
14054 | msgid "" | |
39764ef8 JL |
14055 | "For example, the following command returns a package definition for GNU@tie{}" |
14056 | "Hello:" | |
b9fe8fd6 JL |
14057 | msgstr "" |
14058 | ||
14059 | #. type: example | |
14060 | #: doc/guix.texi:6148 | |
14061 | #, no-wrap | |
14062 | msgid "guix import gnu hello\n" | |
14063 | msgstr "" | |
14064 | ||
14065 | #. type: table | |
14066 | #: doc/guix.texi:6151 doc/guix.texi:6369 doc/guix.texi:6414 doc/guix.texi:6438 | |
14067 | msgid "Specific command-line options are:" | |
14068 | msgstr "" | |
14069 | ||
14070 | #. type: item | |
14071 | #: doc/guix.texi:6153 doc/guix.texi:6689 | |
14072 | #, no-wrap | |
14073 | msgid "--key-download=@var{policy}" | |
14074 | msgstr "" | |
14075 | ||
14076 | #. type: table | |
14077 | #: doc/guix.texi:6157 | |
14078 | msgid "" | |
14079 | "As for @code{guix refresh}, specify the policy to handle missing OpenPGP " | |
14080 | "keys when verifying the package signature. @xref{Invoking guix refresh, " | |
14081 | "@code{--key-download}}." | |
14082 | msgstr "" | |
14083 | ||
14084 | #. type: item | |
14085 | #: doc/guix.texi:6159 doc/guix.texi:6160 doc/guix.texi:6606 | |
14086 | #, no-wrap | |
14087 | msgid "pypi" | |
14088 | msgstr "" | |
14089 | ||
14090 | #. type: table | |
14091 | #: doc/guix.texi:6168 | |
14092 | msgid "" | |
14093 | "Import metadata from the @uref{https://pypi.python.org/, Python Package " | |
14094 | "Index}@footnote{This functionality requires Guile-JSON to be installed. " | |
14095 | "@xref{Requirements}.}. Information is taken from the JSON-formatted " | |
14096 | "description available at @code{pypi.python.org} and usually includes all the " | |
14097 | "relevant information, including package dependencies. For maximum " | |
14098 | "efficiency, it is recommended to install the @command{unzip} utility, so " | |
14099 | "that the importer can unzip Python wheels and gather data from them." | |
14100 | msgstr "" | |
14101 | ||
14102 | #. type: table | |
14103 | #: doc/guix.texi:6171 | |
14104 | msgid "" | |
14105 | "The command below imports metadata for the @code{itsdangerous} Python " | |
14106 | "package:" | |
14107 | msgstr "" | |
14108 | ||
14109 | #. type: example | |
14110 | #: doc/guix.texi:6174 | |
14111 | #, no-wrap | |
14112 | msgid "guix import pypi itsdangerous\n" | |
14113 | msgstr "" | |
14114 | ||
14115 | #. type: item | |
14116 | #: doc/guix.texi:6176 doc/guix.texi:6177 doc/guix.texi:6608 | |
14117 | #, no-wrap | |
14118 | msgid "gem" | |
14119 | msgstr "" | |
14120 | ||
14121 | #. type: table | |
14122 | #: doc/guix.texi:6188 | |
14123 | msgid "" | |
14124 | "Import metadata from @uref{https://rubygems.org/, RubyGems}@footnote{This " | |
14125 | "functionality requires Guile-JSON to be installed. @xref{Requirements}.}. " | |
14126 | "Information is taken from the JSON-formatted description available at " | |
14127 | "@code{rubygems.org} and includes most relevant information, including " | |
14128 | "runtime dependencies. There are some caveats, however. The metadata " | |
14129 | "doesn't distinguish between synopses and descriptions, so the same string is " | |
14130 | "used for both fields. Additionally, the details of non-Ruby dependencies " | |
14131 | "required to build native extensions is unavailable and left as an exercise " | |
14132 | "to the packager." | |
14133 | msgstr "" | |
14134 | ||
14135 | #. type: table | |
14136 | #: doc/guix.texi:6190 | |
14137 | msgid "The command below imports metadata for the @code{rails} Ruby package:" | |
14138 | msgstr "" | |
14139 | ||
14140 | #. type: example | |
14141 | #: doc/guix.texi:6193 | |
14142 | #, no-wrap | |
14143 | msgid "guix import gem rails\n" | |
14144 | msgstr "" | |
14145 | ||
14146 | #. type: item | |
14147 | #: doc/guix.texi:6195 doc/guix.texi:6604 | |
14148 | #, no-wrap | |
14149 | msgid "cpan" | |
14150 | msgstr "" | |
14151 | ||
14152 | #. type: cindex | |
14153 | #: doc/guix.texi:6196 | |
14154 | #, no-wrap | |
14155 | msgid "CPAN" | |
14156 | msgstr "" | |
14157 | ||
14158 | #. type: table | |
14159 | #: doc/guix.texi:6206 | |
14160 | msgid "" | |
39764ef8 JL |
14161 | "Import metadata from @uref{https://www.metacpan.org/, MetaCPAN}" |
14162 | "@footnote{This functionality requires Guile-JSON to be installed. " | |
b9fe8fd6 JL |
14163 | "@xref{Requirements}.}. Information is taken from the JSON-formatted " |
14164 | "metadata provided through @uref{https://fastapi.metacpan.org/, MetaCPAN's " | |
14165 | "API} and includes most relevant information, such as module dependencies. " | |
14166 | "License information should be checked closely. If Perl is available in the " | |
14167 | "store, then the @code{corelist} utility will be used to filter core modules " | |
14168 | "out of the list of dependencies." | |
14169 | msgstr "" | |
14170 | ||
14171 | #. type: table | |
14172 | #: doc/guix.texi:6209 | |
14173 | msgid "" | |
14174 | "The command command below imports metadata for the @code{Acme::Boolean} Perl " | |
14175 | "module:" | |
14176 | msgstr "" | |
14177 | ||
14178 | #. type: example | |
14179 | #: doc/guix.texi:6212 | |
14180 | #, no-wrap | |
14181 | msgid "guix import cpan Acme::Boolean\n" | |
14182 | msgstr "" | |
14183 | ||
14184 | #. type: item | |
14185 | #: doc/guix.texi:6214 doc/guix.texi:6600 | |
14186 | #, no-wrap | |
14187 | msgid "cran" | |
14188 | msgstr "" | |
14189 | ||
14190 | #. type: cindex | |
14191 | #: doc/guix.texi:6215 | |
14192 | #, no-wrap | |
14193 | msgid "CRAN" | |
14194 | msgstr "" | |
14195 | ||
14196 | #. type: cindex | |
14197 | #: doc/guix.texi:6216 | |
14198 | #, no-wrap | |
14199 | msgid "Bioconductor" | |
14200 | msgstr "" | |
14201 | ||
14202 | #. type: table | |
14203 | #: doc/guix.texi:6220 | |
14204 | msgid "" | |
14205 | "Import metadata from @uref{https://cran.r-project.org/, CRAN}, the central " | |
14206 | "repository for the @uref{http://r-project.org, GNU@tie{}R statistical and " | |
14207 | "graphical environment}." | |
14208 | msgstr "" | |
14209 | ||
14210 | #. type: table | |
14211 | #: doc/guix.texi:6222 | |
39764ef8 JL |
14212 | msgid "" |
14213 | "Information is extracted from the @code{DESCRIPTION} file of the package." | |
b9fe8fd6 JL |
14214 | msgstr "" |
14215 | ||
14216 | #. type: table | |
14217 | #: doc/guix.texi:6225 | |
39764ef8 JL |
14218 | msgid "" |
14219 | "The command command below imports metadata for the @code{Cairo} R package:" | |
b9fe8fd6 JL |
14220 | msgstr "" |
14221 | ||
14222 | #. type: example | |
14223 | #: doc/guix.texi:6228 | |
14224 | #, no-wrap | |
14225 | msgid "guix import cran Cairo\n" | |
14226 | msgstr "" | |
14227 | ||
14228 | #. type: table | |
14229 | #: doc/guix.texi:6233 | |
14230 | msgid "" | |
14231 | "When @code{--recursive} is added, the importer will traverse the dependency " | |
14232 | "graph of the given upstream package recursively and generate package " | |
14233 | "expressions for all those packages that are not yet in Guix." | |
14234 | msgstr "" | |
14235 | ||
14236 | #. type: table | |
14237 | #: doc/guix.texi:6238 | |
14238 | msgid "" | |
14239 | "When @code{--archive=bioconductor} is added, metadata is imported from " | |
14240 | "@uref{https://www.bioconductor.org/, Bioconductor}, a repository of R " | |
14241 | "packages for for the analysis and comprehension of high-throughput genomic " | |
14242 | "data in bioinformatics." | |
14243 | msgstr "" | |
14244 | ||
14245 | #. type: table | |
14246 | #: doc/guix.texi:6241 | |
14247 | msgid "" | |
14248 | "Information is extracted from the @code{DESCRIPTION} file of a package " | |
14249 | "published on the web interface of the Bioconductor SVN repository." | |
14250 | msgstr "" | |
14251 | ||
14252 | #. type: table | |
14253 | #: doc/guix.texi:6244 | |
39764ef8 JL |
14254 | msgid "" |
14255 | "The command below imports metadata for the @code{GenomicRanges} R package:" | |
b9fe8fd6 JL |
14256 | msgstr "" |
14257 | ||
14258 | #. type: example | |
14259 | #: doc/guix.texi:6247 | |
14260 | #, no-wrap | |
14261 | msgid "guix import cran --archive=bioconductor GenomicRanges\n" | |
14262 | msgstr "" | |
14263 | ||
14264 | #. type: item | |
14265 | #: doc/guix.texi:6249 | |
14266 | #, no-wrap | |
14267 | msgid "texlive" | |
14268 | msgstr "" | |
14269 | ||
14270 | #. type: cindex | |
14271 | #: doc/guix.texi:6250 | |
14272 | #, no-wrap | |
14273 | msgid "TeX Live" | |
14274 | msgstr "" | |
14275 | ||
14276 | #. type: cindex | |
14277 | #: doc/guix.texi:6251 | |
14278 | #, no-wrap | |
14279 | msgid "CTAN" | |
14280 | msgstr "" | |
14281 | ||
14282 | #. type: table | |
14283 | #: doc/guix.texi:6255 | |
14284 | msgid "" | |
14285 | "Import metadata from @uref{http://www.ctan.org/, CTAN}, the comprehensive " | |
39764ef8 JL |
14286 | "TeX archive network for TeX packages that are part of the @uref{https://www." |
14287 | "tug.org/texlive/, TeX Live distribution}." | |
b9fe8fd6 JL |
14288 | msgstr "" |
14289 | ||
14290 | #. type: table | |
14291 | #: doc/guix.texi:6260 | |
14292 | msgid "" | |
14293 | "Information about the package is obtained through the XML API provided by " | |
14294 | "CTAN, while the source code is downloaded from the SVN repository of the Tex " | |
14295 | "Live project. This is done because the CTAN does not keep versioned " | |
14296 | "archives." | |
14297 | msgstr "" | |
14298 | ||
14299 | #. type: table | |
14300 | #: doc/guix.texi:6263 | |
14301 | msgid "" | |
14302 | "The command command below imports metadata for the @code{fontspec} TeX " | |
14303 | "package:" | |
14304 | msgstr "" | |
14305 | ||
14306 | #. type: example | |
14307 | #: doc/guix.texi:6266 | |
14308 | #, no-wrap | |
14309 | msgid "guix import texlive fontspec\n" | |
14310 | msgstr "" | |
14311 | ||
14312 | #. type: table | |
14313 | #: doc/guix.texi:6272 | |
14314 | msgid "" | |
14315 | "When @code{--archive=DIRECTORY} is added, the source code is downloaded not " | |
14316 | "from the @file{latex} sub-directory of the @file{texmf-dist/source} tree in " | |
14317 | "the TeX Live SVN repository, but from the specified sibling directory under " | |
14318 | "the same root." | |
14319 | msgstr "" | |
14320 | ||
14321 | #. type: table | |
14322 | #: doc/guix.texi:6276 | |
14323 | msgid "" | |
14324 | "The command below imports metadata for the @code{ifxetex} package from CTAN " | |
14325 | "while fetching the sources from the directory @file{texmf/source/generic}:" | |
14326 | msgstr "" | |
14327 | ||
14328 | #. type: example | |
14329 | #: doc/guix.texi:6279 | |
14330 | #, no-wrap | |
14331 | msgid "guix import texlive --archive=generic ifxetex\n" | |
14332 | msgstr "" | |
14333 | ||
14334 | #. type: item | |
14335 | #: doc/guix.texi:6281 | |
14336 | #, no-wrap | |
14337 | msgid "json" | |
14338 | msgstr "" | |
14339 | ||
14340 | #. type: cindex | |
14341 | #: doc/guix.texi:6282 | |
14342 | #, no-wrap | |
14343 | msgid "JSON, import" | |
14344 | msgstr "" | |
14345 | ||
14346 | #. type: table | |
14347 | #: doc/guix.texi:6287 | |
14348 | msgid "" | |
14349 | "Import package metadata from a local JSON file@footnote{This functionality " | |
14350 | "requires Guile-JSON to be installed. @xref{Requirements}.}. Consider the " | |
14351 | "following example package definition in JSON format:" | |
14352 | msgstr "" | |
14353 | ||
14354 | #. type: example | |
14355 | #: doc/guix.texi:6300 | |
14356 | #, no-wrap | |
14357 | msgid "" | |
14358 | "@{\n" | |
14359 | " \"name\": \"hello\",\n" | |
14360 | " \"version\": \"2.10\",\n" | |
14361 | " \"source\": \"mirror://gnu/hello/hello-2.10.tar.gz\",\n" | |
14362 | " \"build-system\": \"gnu\",\n" | |
14363 | " \"home-page\": \"https://www.gnu.org/software/hello/\",\n" | |
14364 | " \"synopsis\": \"Hello, GNU world: An example GNU package\",\n" | |
14365 | " \"description\": \"GNU Hello prints a greeting.\",\n" | |
14366 | " \"license\": \"GPL-3.0+\",\n" | |
14367 | " \"native-inputs\": [\"gcc@@6\"]\n" | |
14368 | "@}\n" | |
14369 | msgstr "" | |
14370 | ||
14371 | #. type: table | |
14372 | #: doc/guix.texi:6306 | |
14373 | msgid "" | |
14374 | "The field names are the same as for the @code{<package>} record " | |
14375 | "(@xref{Defining Packages}). References to other packages are provided as " | |
14376 | "JSON lists of quoted package specification strings such as @code{guile} or " | |
14377 | "@code{guile@@2.0}." | |
14378 | msgstr "" | |
14379 | ||
14380 | #. type: table | |
14381 | #: doc/guix.texi:6309 | |
14382 | msgid "" | |
14383 | "The importer also supports a more explicit source definition using the " | |
14384 | "common fields for @code{<origin>} records:" | |
14385 | msgstr "" | |
14386 | ||
14387 | #. type: example | |
14388 | #: doc/guix.texi:6322 | |
14389 | #, no-wrap | |
14390 | msgid "" | |
14391 | "@{\n" | |
14392 | " @dots{}\n" | |
14393 | " \"source\": @{\n" | |
14394 | " \"method\": \"url-fetch\",\n" | |
14395 | " \"uri\": \"mirror://gnu/hello/hello-2.10.tar.gz\",\n" | |
14396 | " \"sha256\": @{\n" | |
14397 | " \"base32\": \"0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i\"\n" | |
14398 | " @}\n" | |
14399 | " @}\n" | |
14400 | " @dots{}\n" | |
14401 | "@}\n" | |
14402 | msgstr "" | |
14403 | ||
14404 | #. type: table | |
14405 | #: doc/guix.texi:6326 | |
14406 | msgid "" | |
14407 | "The command below reads metadata from the JSON file @code{hello.json} and " | |
14408 | "outputs a package expression:" | |
14409 | msgstr "" | |
14410 | ||
14411 | #. type: example | |
14412 | #: doc/guix.texi:6329 | |
14413 | #, no-wrap | |
14414 | msgid "guix import json hello.json\n" | |
14415 | msgstr "" | |
14416 | ||
14417 | #. type: item | |
14418 | #: doc/guix.texi:6331 | |
14419 | #, no-wrap | |
14420 | msgid "nix" | |
14421 | msgstr "" | |
14422 | ||
14423 | #. type: table | |
14424 | #: doc/guix.texi:6340 | |
14425 | msgid "" | |
39764ef8 JL |
14426 | "Import metadata from a local copy of the source of the @uref{http://nixos." |
14427 | "org/nixpkgs/, Nixpkgs distribution}@footnote{This relies on the @command{nix-" | |
14428 | "instantiate} command of @uref{http://nixos.org/nix/, Nix}.}. Package " | |
14429 | "definitions in Nixpkgs are typically written in a mixture of Nix-language " | |
14430 | "and Bash code. This command only imports the high-level package structure " | |
14431 | "that is written in the Nix language. It normally includes all the basic " | |
14432 | "fields of a package definition." | |
b9fe8fd6 JL |
14433 | msgstr "" |
14434 | ||
14435 | #. type: table | |
14436 | #: doc/guix.texi:6343 | |
14437 | msgid "" | |
14438 | "When importing a GNU package, the synopsis and descriptions are replaced by " | |
14439 | "their canonical upstream variant." | |
14440 | msgstr "" | |
14441 | ||
14442 | #. type: table | |
14443 | #: doc/guix.texi:6345 | |
14444 | msgid "Usually, you will first need to do:" | |
14445 | msgstr "" | |
14446 | ||
14447 | #. type: example | |
14448 | #: doc/guix.texi:6348 | |
14449 | #, no-wrap | |
14450 | msgid "export NIX_REMOTE=daemon\n" | |
14451 | msgstr "" | |
14452 | ||
14453 | #. type: table | |
14454 | #: doc/guix.texi:6352 | |
39764ef8 JL |
14455 | msgid "" |
14456 | "so that @command{nix-instantiate} does not try to open the Nix database." | |
b9fe8fd6 JL |
14457 | msgstr "" |
14458 | ||
14459 | #. type: table | |
14460 | #: doc/guix.texi:6356 | |
14461 | msgid "" | |
14462 | "As an example, the command below imports the package definition of " | |
14463 | "LibreOffice (more precisely, it imports the definition of the package bound " | |
14464 | "to the @code{libreoffice} top-level attribute):" | |
14465 | msgstr "" | |
14466 | ||
14467 | #. type: example | |
14468 | #: doc/guix.texi:6359 | |
14469 | #, no-wrap | |
14470 | msgid "guix import nix ~/path/to/nixpkgs libreoffice\n" | |
14471 | msgstr "" | |
14472 | ||
14473 | #. type: item | |
14474 | #: doc/guix.texi:6361 doc/guix.texi:6362 doc/guix.texi:6612 | |
14475 | #, no-wrap | |
14476 | msgid "hackage" | |
14477 | msgstr "" | |
14478 | ||
14479 | #. type: table | |
14480 | #: doc/guix.texi:6367 | |
14481 | msgid "" | |
14482 | "Import metadata from the Haskell community's central package archive " | |
14483 | "@uref{https://hackage.haskell.org/, Hackage}. Information is taken from " | |
14484 | "Cabal files and includes all the relevant information, including package " | |
14485 | "dependencies." | |
14486 | msgstr "" | |
14487 | ||
14488 | #. type: item | |
14489 | #: doc/guix.texi:6371 | |
14490 | #, no-wrap | |
14491 | msgid "--stdin" | |
14492 | msgstr "" | |
14493 | ||
14494 | #. type: itemx | |
14495 | #: doc/guix.texi:6372 | |
14496 | #, no-wrap | |
14497 | msgid "-s" | |
14498 | msgstr "" | |
14499 | ||
14500 | #. type: table | |
14501 | #: doc/guix.texi:6374 | |
14502 | msgid "Read a Cabal file from standard input." | |
14503 | msgstr "" | |
14504 | ||
14505 | #. type: item | |
14506 | #: doc/guix.texi:6374 doc/guix.texi:6416 | |
14507 | #, no-wrap | |
14508 | msgid "--no-test-dependencies" | |
14509 | msgstr "" | |
14510 | ||
14511 | #. type: itemx | |
14512 | #: doc/guix.texi:6375 doc/guix.texi:6417 | |
14513 | #, no-wrap | |
14514 | msgid "-t" | |
14515 | msgstr "" | |
14516 | ||
14517 | #. type: table | |
14518 | #: doc/guix.texi:6377 doc/guix.texi:6419 | |
14519 | msgid "Do not include dependencies required only by the test suites." | |
14520 | msgstr "" | |
14521 | ||
14522 | #. type: item | |
14523 | #: doc/guix.texi:6377 | |
14524 | #, no-wrap | |
14525 | msgid "--cabal-environment=@var{alist}" | |
14526 | msgstr "" | |
14527 | ||
14528 | #. type: itemx | |
14529 | #: doc/guix.texi:6378 | |
14530 | #, no-wrap | |
14531 | msgid "-e @var{alist}" | |
14532 | msgstr "" | |
14533 | ||
14534 | #. type: table | |
14535 | #: doc/guix.texi:6387 | |
14536 | msgid "" | |
14537 | "@var{alist} is a Scheme alist defining the environment in which the Cabal " | |
14538 | "conditionals are evaluated. The accepted keys are: @code{os}, @code{arch}, " | |
14539 | "@code{impl} and a string representing the name of a flag. The value " | |
14540 | "associated with a flag has to be either the symbol @code{true} or " | |
14541 | "@code{false}. The value associated with other keys has to conform to the " | |
14542 | "Cabal file format definition. The default value associated with the keys " | |
14543 | "@code{os}, @code{arch} and @code{impl} is @samp{linux}, @samp{x86_64} and " | |
14544 | "@samp{ghc}, respectively." | |
14545 | msgstr "" | |
14546 | ||
14547 | #. type: table | |
14548 | #: doc/guix.texi:6392 | |
14549 | msgid "" | |
14550 | "The command below imports metadata for the latest version of the @code{HTTP} " | |
14551 | "Haskell package without including test dependencies and specifying the value " | |
14552 | "of the flag @samp{network-uri} as @code{false}:" | |
14553 | msgstr "" | |
14554 | ||
14555 | #. type: example | |
14556 | #: doc/guix.texi:6395 | |
14557 | #, no-wrap | |
14558 | msgid "guix import hackage -t -e \"'((\\\"network-uri\\\" . false))\" HTTP\n" | |
14559 | msgstr "" | |
14560 | ||
14561 | #. type: table | |
14562 | #: doc/guix.texi:6399 | |
14563 | msgid "" | |
14564 | "A specific package version may optionally be specified by following the " | |
14565 | "package name by an at-sign and a version number as in the following example:" | |
14566 | msgstr "" | |
14567 | ||
14568 | #. type: example | |
14569 | #: doc/guix.texi:6402 | |
14570 | #, no-wrap | |
14571 | msgid "guix import hackage mtl@@2.1.3.1\n" | |
14572 | msgstr "" | |
14573 | ||
14574 | #. type: item | |
14575 | #: doc/guix.texi:6404 doc/guix.texi:6405 doc/guix.texi:6614 | |
14576 | #, no-wrap | |
14577 | msgid "stackage" | |
14578 | msgstr "" | |
14579 | ||
14580 | #. type: table | |
14581 | #: doc/guix.texi:6412 | |
14582 | msgid "" | |
14583 | "The @code{stackage} importer is a wrapper around the @code{hackage} one. It " | |
14584 | "takes a package name, looks up the package version included in a long-term " | |
14585 | "support (LTS) @uref{https://www.stackage.org, Stackage} release and uses the " | |
14586 | "@code{hackage} importer to retrieve its metadata. Note that it is up to you " | |
14587 | "to select an LTS release compatible with the GHC compiler used by Guix." | |
14588 | msgstr "" | |
14589 | ||
14590 | #. type: item | |
14591 | #: doc/guix.texi:6419 | |
14592 | #, no-wrap | |
14593 | msgid "--lts-version=@var{version}" | |
14594 | msgstr "" | |
14595 | ||
14596 | #. type: itemx | |
14597 | #: doc/guix.texi:6420 | |
14598 | #, no-wrap | |
14599 | msgid "-r @var{version}" | |
14600 | msgstr "" | |
14601 | ||
14602 | #. type: table | |
14603 | #: doc/guix.texi:6423 | |
14604 | msgid "" | |
14605 | "@var{version} is the desired LTS release version. If omitted the latest " | |
14606 | "release is used." | |
14607 | msgstr "" | |
14608 | ||
14609 | #. type: table | |
14610 | #: doc/guix.texi:6427 | |
14611 | msgid "" | |
14612 | "The command below imports metadata for the @code{HTTP} Haskell package " | |
14613 | "included in the LTS Stackage release version 7.18:" | |
14614 | msgstr "" | |
14615 | ||
14616 | #. type: example | |
14617 | #: doc/guix.texi:6430 | |
14618 | #, no-wrap | |
14619 | msgid "guix import stackage --lts-version=7.18 HTTP\n" | |
14620 | msgstr "" | |
14621 | ||
14622 | #. type: item | |
14623 | #: doc/guix.texi:6432 doc/guix.texi:6433 doc/guix.texi:6598 | |
14624 | #, no-wrap | |
14625 | msgid "elpa" | |
14626 | msgstr "" | |
14627 | ||
14628 | #. type: table | |
14629 | #: doc/guix.texi:6436 | |
14630 | msgid "" | |
14631 | "Import metadata from an Emacs Lisp Package Archive (ELPA) package repository " | |
14632 | "(@pxref{Packages,,, emacs, The GNU Emacs Manual})." | |
14633 | msgstr "" | |
14634 | ||
14635 | #. type: item | |
14636 | #: doc/guix.texi:6440 | |
14637 | #, no-wrap | |
14638 | msgid "--archive=@var{repo}" | |
14639 | msgstr "" | |
14640 | ||
14641 | #. type: itemx | |
14642 | #: doc/guix.texi:6441 | |
14643 | #, no-wrap | |
14644 | msgid "-a @var{repo}" | |
14645 | msgstr "" | |
14646 | ||
14647 | #. type: table | |
14648 | #: doc/guix.texi:6445 | |
14649 | msgid "" | |
14650 | "@var{repo} identifies the archive repository from which to retrieve the " | |
39764ef8 | 14651 | "information. Currently the supported repositories and their identifiers are:" |
b9fe8fd6 JL |
14652 | msgstr "" |
14653 | ||
14654 | #. type: itemize | |
14655 | #: doc/guix.texi:6449 | |
14656 | msgid "" | |
14657 | "@uref{http://elpa.gnu.org/packages, GNU}, selected by the @code{gnu} " | |
14658 | "identifier. This is the default." | |
14659 | msgstr "" | |
14660 | ||
14661 | #. type: itemize | |
14662 | #: doc/guix.texi:6455 | |
14663 | msgid "" | |
14664 | "Packages from @code{elpa.gnu.org} are signed with one of the keys contained " | |
14665 | "in the GnuPG keyring at @file{share/emacs/25.1/etc/package-keyring.gpg} (or " | |
14666 | "similar) in the @code{emacs} package (@pxref{Package Installation, ELPA " | |
14667 | "package signatures,, emacs, The GNU Emacs Manual})." | |
14668 | msgstr "" | |
14669 | ||
14670 | #. type: itemize | |
14671 | #: doc/guix.texi:6459 | |
14672 | msgid "" | |
14673 | "@uref{http://stable.melpa.org/packages, MELPA-Stable}, selected by the " | |
14674 | "@code{melpa-stable} identifier." | |
14675 | msgstr "" | |
14676 | ||
14677 | #. type: itemize | |
14678 | #: doc/guix.texi:6463 | |
14679 | msgid "" | |
14680 | "@uref{http://melpa.org/packages, MELPA}, selected by the @code{melpa} " | |
14681 | "identifier." | |
14682 | msgstr "" | |
14683 | ||
14684 | #. type: item | |
14685 | #: doc/guix.texi:6466 doc/guix.texi:6467 doc/guix.texi:6616 | |
14686 | #, no-wrap | |
14687 | msgid "crate" | |
14688 | msgstr "" | |
14689 | ||
14690 | #. type: table | |
14691 | #: doc/guix.texi:6470 | |
14692 | msgid "" | |
39764ef8 JL |
14693 | "Import metadata from the crates.io Rust package repository @uref{https://" |
14694 | "crates.io, crates.io}." | |
b9fe8fd6 JL |
14695 | msgstr "" |
14696 | ||
14697 | #. type: Plain text | |
14698 | #: doc/guix.texi:6475 | |
14699 | msgid "" | |
14700 | "The structure of the @command{guix import} code is modular. It would be " | |
14701 | "useful to have more importers for other package formats, and your help is " | |
14702 | "welcome here (@pxref{Contributing})." | |
14703 | msgstr "" | |
14704 | ||
14705 | #. type: section | |
14706 | #: doc/guix.texi:6477 | |
14707 | #, no-wrap | |
14708 | msgid "Invoking @command{guix refresh}" | |
14709 | msgstr "" | |
14710 | ||
14711 | #. type: command{#1} | |
14712 | #: doc/guix.texi:6479 | |
14713 | #, no-wrap | |
14714 | msgid "guix refresh" | |
14715 | msgstr "" | |
14716 | ||
14717 | #. type: Plain text | |
14718 | #: doc/guix.texi:6484 | |
14719 | msgid "" | |
14720 | "The primary audience of the @command{guix refresh} command is developers of " | |
14721 | "the GNU software distribution. By default, it reports any packages provided " | |
14722 | "by the distribution that are outdated compared to the latest upstream " | |
14723 | "version, like this:" | |
14724 | msgstr "" | |
14725 | ||
14726 | #. type: example | |
14727 | #: doc/guix.texi:6489 | |
14728 | #, no-wrap | |
14729 | msgid "" | |
14730 | "$ guix refresh\n" | |
39764ef8 | 14731 | "gnu/packages/gettext.scm:29:13: gettext would be upgraded from 0.18.1.1 to 0.18.2.1\n" |
b9fe8fd6 JL |
14732 | "gnu/packages/glib.scm:77:12: glib would be upgraded from 2.34.3 to 2.37.0\n" |
14733 | msgstr "" | |
14734 | ||
14735 | #. type: Plain text | |
14736 | #: doc/guix.texi:6493 | |
14737 | msgid "" | |
14738 | "Alternately, one can specify packages to consider, in which case a warning " | |
14739 | "is emitted for packages that lack an updater:" | |
14740 | msgstr "" | |
14741 | ||
14742 | #. type: example | |
14743 | #: doc/guix.texi:6498 | |
14744 | #, no-wrap | |
14745 | msgid "" | |
14746 | "$ guix refresh coreutils guile guile-ssh\n" | |
14747 | "gnu/packages/ssh.scm:205:2: warning: no updater for guile-ssh\n" | |
39764ef8 | 14748 | "gnu/packages/guile.scm:136:12: guile would be upgraded from 2.0.12 to 2.0.13\n" |
b9fe8fd6 JL |
14749 | msgstr "" |
14750 | ||
14751 | #. type: Plain text | |
14752 | #: doc/guix.texi:6507 | |
14753 | msgid "" | |
14754 | "@command{guix refresh} browses the upstream repository of each package and " | |
14755 | "determines the highest version number of the releases therein. The command " | |
14756 | "knows how to update specific types of packages: GNU packages, ELPA packages, " | |
14757 | "etc.---see the documentation for @option{--type} below. There are many " | |
14758 | "packages, though, for which it lacks a method to determine whether a new " | |
14759 | "upstream release is available. However, the mechanism is extensible, so " | |
14760 | "feel free to get in touch with us to add a new method!" | |
14761 | msgstr "" | |
14762 | ||
14763 | #. type: Plain text | |
14764 | #: doc/guix.texi:6512 | |
14765 | msgid "" | |
14766 | "Sometimes the upstream name differs from the package name used in Guix, and " | |
14767 | "@command{guix refresh} needs a little help. Most updaters honor the " | |
14768 | "@code{upstream-name} property in package definitions, which can be used to " | |
14769 | "that effect:" | |
14770 | msgstr "" | |
14771 | ||
14772 | #. type: example | |
14773 | #: doc/guix.texi:6519 | |
14774 | #, no-wrap | |
14775 | msgid "" | |
14776 | "(define-public network-manager\n" | |
14777 | " (package\n" | |
14778 | " (name \"network-manager\")\n" | |
14779 | " ;; @dots{}\n" | |
14780 | " (properties '((upstream-name . \"NetworkManager\")))))\n" | |
14781 | msgstr "" | |
14782 | ||
14783 | #. type: Plain text | |
14784 | #: doc/guix.texi:6531 | |
14785 | msgid "" | |
14786 | "When passed @code{--update}, it modifies distribution source files to update " | |
14787 | "the version numbers and source tarball hashes of those package recipes " | |
14788 | "(@pxref{Defining Packages}). This is achieved by downloading each package's " | |
14789 | "latest source tarball and its associated OpenPGP signature, authenticating " | |
14790 | "the downloaded tarball against its signature using @command{gpg}, and " | |
14791 | "finally computing its hash. When the public key used to sign the tarball is " | |
14792 | "missing from the user's keyring, an attempt is made to automatically " | |
14793 | "retrieve it from a public key server; when this is successful, the key is " | |
14794 | "added to the user's keyring; otherwise, @command{guix refresh} reports an " | |
14795 | "error." | |
14796 | msgstr "" | |
14797 | ||
14798 | #. type: Plain text | |
14799 | #: doc/guix.texi:6533 | |
14800 | msgid "The following options are supported:" | |
14801 | msgstr "" | |
14802 | ||
14803 | #. type: table | |
14804 | #: doc/guix.texi:6541 doc/guix.texi:7102 | |
14805 | msgid "This is useful to precisely refer to a package, as in this example:" | |
14806 | msgstr "" | |
14807 | ||
14808 | #. type: example | |
14809 | #: doc/guix.texi:6544 | |
14810 | #, no-wrap | |
14811 | msgid "guix refresh -l -e '(@@@@ (gnu packages commencement) glibc-final)'\n" | |
14812 | msgstr "" | |
14813 | ||
14814 | #. type: table | |
14815 | #: doc/guix.texi:6548 | |
14816 | msgid "" | |
14817 | "This command lists the dependents of the ``final'' libc (essentially all the " | |
14818 | "packages.)" | |
14819 | msgstr "" | |
14820 | ||
14821 | #. type: item | |
14822 | #: doc/guix.texi:6549 | |
14823 | #, no-wrap | |
14824 | msgid "--update" | |
14825 | msgstr "" | |
14826 | ||
14827 | #. type: itemx | |
14828 | #: doc/guix.texi:6550 | |
14829 | #, no-wrap | |
14830 | msgid "-u" | |
14831 | msgstr "" | |
14832 | ||
14833 | #. type: table | |
14834 | #: doc/guix.texi:6554 | |
14835 | msgid "" | |
14836 | "Update distribution source files (package recipes) in place. This is " | |
14837 | "usually run from a checkout of the Guix source tree (@pxref{Running Guix " | |
14838 | "Before It Is Installed}):" | |
14839 | msgstr "" | |
14840 | ||
14841 | #. type: example | |
14842 | #: doc/guix.texi:6557 | |
14843 | #, no-wrap | |
14844 | msgid "$ ./pre-inst-env guix refresh -s non-core -u\n" | |
14845 | msgstr "" | |
14846 | ||
14847 | #. type: table | |
14848 | #: doc/guix.texi:6560 | |
14849 | msgid "@xref{Defining Packages}, for more information on package definitions." | |
14850 | msgstr "" | |
14851 | ||
14852 | #. type: item | |
14853 | #: doc/guix.texi:6561 | |
14854 | #, no-wrap | |
14855 | msgid "--select=[@var{subset}]" | |
14856 | msgstr "" | |
14857 | ||
14858 | #. type: itemx | |
14859 | #: doc/guix.texi:6562 | |
14860 | #, no-wrap | |
14861 | msgid "-s @var{subset}" | |
14862 | msgstr "" | |
14863 | ||
14864 | #. type: table | |
14865 | #: doc/guix.texi:6565 | |
14866 | msgid "" | |
39764ef8 JL |
14867 | "Select all the packages in @var{subset}, one of @code{core} or @code{non-" |
14868 | "core}." | |
b9fe8fd6 JL |
14869 | msgstr "" |
14870 | ||
14871 | #. type: table | |
14872 | #: doc/guix.texi:6572 | |
14873 | msgid "" | |
14874 | "The @code{core} subset refers to all the packages at the core of the " | |
14875 | "distribution---i.e., packages that are used to build ``everything else''. " | |
14876 | "This includes GCC, libc, Binutils, Bash, etc. Usually, changing one of " | |
14877 | "these packages in the distribution entails a rebuild of all the others. " | |
14878 | "Thus, such updates are an inconvenience to users in terms of build time or " | |
14879 | "bandwidth used to achieve the upgrade." | |
14880 | msgstr "" | |
14881 | ||
14882 | #. type: table | |
14883 | #: doc/guix.texi:6576 | |
14884 | msgid "" | |
14885 | "The @code{non-core} subset refers to the remaining packages. It is " | |
14886 | "typically useful in cases where an update of the core packages would be " | |
14887 | "inconvenient." | |
14888 | msgstr "" | |
14889 | ||
14890 | #. type: table | |
14891 | #: doc/guix.texi:6581 | |
14892 | msgid "" | |
14893 | "Select all the packages from the manifest in @var{file}. This is useful to " | |
14894 | "check if any packages of the user manifest can be updated." | |
14895 | msgstr "" | |
14896 | ||
14897 | #. type: item | |
14898 | #: doc/guix.texi:6582 | |
14899 | #, no-wrap | |
14900 | msgid "--type=@var{updater}" | |
14901 | msgstr "" | |
14902 | ||
14903 | #. type: itemx | |
14904 | #: doc/guix.texi:6583 | |
14905 | #, no-wrap | |
14906 | msgid "-t @var{updater}" | |
14907 | msgstr "" | |
14908 | ||
14909 | #. type: table | |
14910 | #: doc/guix.texi:6586 | |
14911 | msgid "" | |
14912 | "Select only packages handled by @var{updater} (may be a comma-separated list " | |
14913 | "of updaters). Currently, @var{updater} may be one of:" | |
14914 | msgstr "" | |
14915 | ||
14916 | #. type: table | |
14917 | #: doc/guix.texi:6590 | |
14918 | msgid "the updater for GNU packages;" | |
14919 | msgstr "" | |
14920 | ||
14921 | #. type: item | |
14922 | #: doc/guix.texi:6590 | |
14923 | #, no-wrap | |
14924 | msgid "gnome" | |
14925 | msgstr "" | |
14926 | ||
14927 | #. type: table | |
14928 | #: doc/guix.texi:6592 | |
14929 | msgid "the updater for GNOME packages;" | |
14930 | msgstr "" | |
14931 | ||
14932 | #. type: item | |
14933 | #: doc/guix.texi:6592 | |
14934 | #, no-wrap | |
14935 | msgid "kde" | |
14936 | msgstr "" | |
14937 | ||
14938 | #. type: table | |
14939 | #: doc/guix.texi:6594 | |
14940 | msgid "the updater for KDE packages;" | |
14941 | msgstr "" | |
14942 | ||
14943 | #. type: item | |
14944 | #: doc/guix.texi:6594 | |
14945 | #, no-wrap | |
14946 | msgid "xorg" | |
14947 | msgstr "" | |
14948 | ||
14949 | #. type: table | |
14950 | #: doc/guix.texi:6596 | |
14951 | msgid "the updater for X.org packages;" | |
14952 | msgstr "" | |
14953 | ||
14954 | #. type: item | |
14955 | #: doc/guix.texi:6596 | |
14956 | #, no-wrap | |
14957 | msgid "kernel.org" | |
14958 | msgstr "" | |
14959 | ||
14960 | #. type: table | |
14961 | #: doc/guix.texi:6598 | |
14962 | msgid "the updater for packages hosted on kernel.org;" | |
14963 | msgstr "" | |
14964 | ||
14965 | #. type: table | |
14966 | #: doc/guix.texi:6600 | |
14967 | msgid "the updater for @uref{http://elpa.gnu.org/, ELPA} packages;" | |
14968 | msgstr "" | |
14969 | ||
14970 | #. type: table | |
14971 | #: doc/guix.texi:6602 | |
14972 | msgid "the updater for @uref{https://cran.r-project.org/, CRAN} packages;" | |
14973 | msgstr "" | |
14974 | ||
14975 | #. type: item | |
14976 | #: doc/guix.texi:6602 | |
14977 | #, no-wrap | |
14978 | msgid "bioconductor" | |
14979 | msgstr "" | |
14980 | ||
14981 | #. type: table | |
14982 | #: doc/guix.texi:6604 | |
14983 | msgid "" | |
14984 | "the updater for @uref{https://www.bioconductor.org/, Bioconductor} R " | |
14985 | "packages;" | |
14986 | msgstr "" | |
14987 | ||
14988 | #. type: table | |
14989 | #: doc/guix.texi:6606 | |
14990 | msgid "the updater for @uref{http://www.cpan.org/, CPAN} packages;" | |
14991 | msgstr "" | |
14992 | ||
14993 | #. type: table | |
14994 | #: doc/guix.texi:6608 | |
14995 | msgid "the updater for @uref{https://pypi.python.org, PyPI} packages." | |
14996 | msgstr "" | |
14997 | ||
14998 | #. type: table | |
14999 | #: doc/guix.texi:6610 | |
15000 | msgid "the updater for @uref{https://rubygems.org, RubyGems} packages." | |
15001 | msgstr "" | |
15002 | ||
15003 | #. type: item | |
15004 | #: doc/guix.texi:6610 | |
15005 | #, no-wrap | |
15006 | msgid "github" | |
15007 | msgstr "" | |
15008 | ||
15009 | #. type: table | |
15010 | #: doc/guix.texi:6612 | |
15011 | msgid "the updater for @uref{https://github.com, GitHub} packages." | |
15012 | msgstr "" | |
15013 | ||
15014 | #. type: table | |
15015 | #: doc/guix.texi:6614 | |
15016 | msgid "the updater for @uref{https://hackage.haskell.org, Hackage} packages." | |
15017 | msgstr "" | |
15018 | ||
15019 | #. type: table | |
15020 | #: doc/guix.texi:6616 | |
15021 | msgid "the updater for @uref{https://www.stackage.org, Stackage} packages." | |
15022 | msgstr "" | |
15023 | ||
15024 | #. type: table | |
15025 | #: doc/guix.texi:6618 | |
15026 | msgid "the updater for @uref{https://crates.io, Crates} packages." | |
15027 | msgstr "" | |
15028 | ||
15029 | #. type: table | |
15030 | #: doc/guix.texi:6622 | |
15031 | msgid "" | |
15032 | "For instance, the following command only checks for updates of Emacs " | |
15033 | "packages hosted at @code{elpa.gnu.org} and for updates of CRAN packages:" | |
15034 | msgstr "" | |
15035 | ||
15036 | #. type: example | |
15037 | #: doc/guix.texi:6627 | |
15038 | #, no-wrap | |
15039 | msgid "" | |
15040 | "$ guix refresh --type=elpa,cran\n" | |
39764ef8 JL |
15041 | "gnu/packages/statistics.scm:819:13: r-testthat would be upgraded from 0.10.0 to 0.11.0\n" |
15042 | "gnu/packages/emacs.scm:856:13: emacs-auctex would be upgraded from 11.88.6 to 11.88.9\n" | |
b9fe8fd6 JL |
15043 | msgstr "" |
15044 | ||
15045 | #. type: Plain text | |
15046 | #: doc/guix.texi:6633 | |
15047 | msgid "" | |
15048 | "In addition, @command{guix refresh} can be passed one or more package names, " | |
15049 | "as in this example:" | |
15050 | msgstr "" | |
15051 | ||
15052 | #. type: example | |
15053 | #: doc/guix.texi:6636 | |
15054 | #, no-wrap | |
15055 | msgid "$ ./pre-inst-env guix refresh -u emacs idutils gcc@@4.8\n" | |
15056 | msgstr "" | |
15057 | ||
15058 | #. type: Plain text | |
15059 | #: doc/guix.texi:6642 | |
15060 | msgid "" | |
15061 | "The command above specifically updates the @code{emacs} and @code{idutils} " | |
15062 | "packages. The @code{--select} option would have no effect in this case." | |
15063 | msgstr "" | |
15064 | ||
15065 | #. type: Plain text | |
15066 | #: doc/guix.texi:6647 | |
15067 | msgid "" | |
15068 | "When considering whether to upgrade a package, it is sometimes convenient to " | |
15069 | "know which packages would be affected by the upgrade and should be checked " | |
15070 | "for compatibility. For this the following option may be used when passing " | |
15071 | "@command{guix refresh} one or more package names:" | |
15072 | msgstr "" | |
15073 | ||
15074 | #. type: item | |
15075 | #: doc/guix.texi:6650 | |
15076 | #, no-wrap | |
15077 | msgid "--list-updaters" | |
15078 | msgstr "" | |
15079 | ||
15080 | #. type: itemx | |
15081 | #: doc/guix.texi:6651 | |
15082 | #, no-wrap | |
15083 | msgid "-L" | |
15084 | msgstr "" | |
15085 | ||
15086 | #. type: table | |
15087 | #: doc/guix.texi:6653 | |
15088 | msgid "List available updaters and exit (see @option{--type} above.)" | |
15089 | msgstr "" | |
15090 | ||
15091 | #. type: table | |
15092 | #: doc/guix.texi:6656 | |
15093 | msgid "" | |
15094 | "For each updater, display the fraction of packages it covers; at the end, " | |
15095 | "display the fraction of packages covered by all these updaters." | |
15096 | msgstr "" | |
15097 | ||
15098 | #. type: item | |
15099 | #: doc/guix.texi:6657 | |
15100 | #, no-wrap | |
15101 | msgid "--list-dependent" | |
15102 | msgstr "" | |
15103 | ||
15104 | #. type: itemx | |
15105 | #: doc/guix.texi:6658 doc/guix.texi:6803 | |
15106 | #, no-wrap | |
15107 | msgid "-l" | |
15108 | msgstr "" | |
15109 | ||
15110 | #. type: table | |
15111 | #: doc/guix.texi:6661 | |
15112 | msgid "" | |
15113 | "List top-level dependent packages that would need to be rebuilt as a result " | |
15114 | "of upgrading one or more packages." | |
15115 | msgstr "" | |
15116 | ||
15117 | #. type: table | |
15118 | #: doc/guix.texi:6665 | |
15119 | msgid "" | |
15120 | "@xref{Invoking guix graph, the @code{reverse-package} type of @command{guix " | |
15121 | "graph}}, for information on how to visualize the list of dependents of a " | |
15122 | "package." | |
15123 | msgstr "" | |
15124 | ||
15125 | #. type: Plain text | |
15126 | #: doc/guix.texi:6671 | |
15127 | msgid "" | |
15128 | "Be aware that the @code{--list-dependent} option only @emph{approximates} " | |
15129 | "the rebuilds that would be required as a result of an upgrade. More " | |
15130 | "rebuilds might be required under some circumstances." | |
15131 | msgstr "" | |
15132 | ||
15133 | #. type: example | |
15134 | #: doc/guix.texi:6676 | |
15135 | #, no-wrap | |
15136 | msgid "" | |
15137 | "$ guix refresh --list-dependent flex\n" | |
39764ef8 JL |
15138 | "Building the following 120 packages would ensure 213 dependent packages are rebuilt:\n" |
15139 | "hop@@2.4.0 geiser@@0.4 notmuch@@0.18 mu@@0.9.9.5 cflow@@1.4 idutils@@4.6 @dots{}\n" | |
b9fe8fd6 JL |
15140 | msgstr "" |
15141 | ||
15142 | #. type: Plain text | |
15143 | #: doc/guix.texi:6680 | |
15144 | msgid "" | |
15145 | "The command above lists a set of packages that could be built to check for " | |
15146 | "compatibility with an upgraded @code{flex} package." | |
15147 | msgstr "" | |
15148 | ||
15149 | #. type: Plain text | |
15150 | #: doc/guix.texi:6682 | |
15151 | msgid "The following options can be used to customize GnuPG operation:" | |
15152 | msgstr "" | |
15153 | ||
15154 | #. type: item | |
15155 | #: doc/guix.texi:6685 | |
15156 | #, no-wrap | |
15157 | msgid "--gpg=@var{command}" | |
15158 | msgstr "" | |
15159 | ||
15160 | #. type: table | |
15161 | #: doc/guix.texi:6688 | |
15162 | msgid "" | |
15163 | "Use @var{command} as the GnuPG 2.x command. @var{command} is searched for " | |
15164 | "in @code{$PATH}." | |
15165 | msgstr "" | |
15166 | ||
15167 | #. type: table | |
15168 | #: doc/guix.texi:6692 | |
39764ef8 JL |
15169 | msgid "" |
15170 | "Handle missing OpenPGP keys according to @var{policy}, which may be one of:" | |
b9fe8fd6 JL |
15171 | msgstr "" |
15172 | ||
15173 | #. type: item | |
39764ef8 | 15174 | #: doc/guix.texi:6694 doc/guix.texi:13715 |
b9fe8fd6 JL |
15175 | #, no-wrap |
15176 | msgid "always" | |
15177 | msgstr "" | |
15178 | ||
15179 | #. type: table | |
15180 | #: doc/guix.texi:6697 | |
15181 | msgid "" | |
15182 | "Always download missing OpenPGP keys from the key server, and add them to " | |
15183 | "the user's GnuPG keyring." | |
15184 | msgstr "" | |
15185 | ||
15186 | #. type: item | |
39764ef8 | 15187 | #: doc/guix.texi:6698 doc/guix.texi:13717 |
b9fe8fd6 JL |
15188 | #, no-wrap |
15189 | msgid "never" | |
15190 | msgstr "" | |
15191 | ||
15192 | #. type: table | |
15193 | #: doc/guix.texi:6700 | |
15194 | msgid "Never try to download missing OpenPGP keys. Instead just bail out." | |
15195 | msgstr "" | |
15196 | ||
15197 | #. type: item | |
15198 | #: doc/guix.texi:6701 | |
15199 | #, no-wrap | |
15200 | msgid "interactive" | |
15201 | msgstr "" | |
15202 | ||
15203 | #. type: table | |
15204 | #: doc/guix.texi:6704 | |
15205 | msgid "" | |
15206 | "When a package signed with an unknown OpenPGP key is encountered, ask the " | |
15207 | "user whether to download it or not. This is the default behavior." | |
15208 | msgstr "" | |
15209 | ||
15210 | #. type: item | |
15211 | #: doc/guix.texi:6706 | |
15212 | #, no-wrap | |
15213 | msgid "--key-server=@var{host}" | |
15214 | msgstr "" | |
15215 | ||
15216 | #. type: table | |
15217 | #: doc/guix.texi:6708 | |
15218 | msgid "Use @var{host} as the OpenPGP key server when importing a public key." | |
15219 | msgstr "" | |
15220 | ||
15221 | #. type: Plain text | |
15222 | #: doc/guix.texi:6721 | |
15223 | msgid "" | |
15224 | "The @code{github} updater uses the @uref{https://developer.github.com/v3/, " | |
15225 | "GitHub API} to query for new releases. When used repeatedly e.g. when " | |
15226 | "refreshing all packages, GitHub will eventually refuse to answer any further " | |
15227 | "API requests. By default 60 API requests per hour are allowed, and a full " | |
15228 | "refresh on all GitHub packages in Guix requires more than this. " | |
15229 | "Authentication with GitHub through the use of an API token alleviates these " | |
15230 | "limits. To use an API token, set the environment variable " | |
39764ef8 JL |
15231 | "@code{GUIX_GITHUB_TOKEN} to a token procured from @uref{https://github.com/" |
15232 | "settings/tokens} or otherwise." | |
b9fe8fd6 JL |
15233 | msgstr "" |
15234 | ||
15235 | #. type: section | |
15236 | #: doc/guix.texi:6724 | |
15237 | #, no-wrap | |
15238 | msgid "Invoking @command{guix lint}" | |
15239 | msgstr "" | |
15240 | ||
15241 | #. type: command{#1} | |
15242 | #: doc/guix.texi:6726 | |
15243 | #, no-wrap | |
15244 | msgid "guix lint" | |
15245 | msgstr "" | |
15246 | ||
15247 | #. type: cindex | |
15248 | #: doc/guix.texi:6727 | |
15249 | #, no-wrap | |
15250 | msgid "package, checking for errors" | |
15251 | msgstr "" | |
15252 | ||
15253 | #. type: Plain text | |
15254 | #: doc/guix.texi:6733 | |
15255 | msgid "" | |
15256 | "The @command{guix lint} command is meant to help package developers avoid " | |
15257 | "common errors and use a consistent style. It runs a number of checks on a " | |
15258 | "given set of packages in order to find common mistakes in their " | |
15259 | "definitions. Available @dfn{checkers} include (see @code{--list-checkers} " | |
15260 | "for a complete list):" | |
15261 | msgstr "" | |
15262 | ||
15263 | #. type: table | |
15264 | #: doc/guix.texi:6739 | |
15265 | msgid "" | |
15266 | "Validate certain typographical and stylistic rules about package " | |
15267 | "descriptions and synopses." | |
15268 | msgstr "" | |
15269 | ||
15270 | #. type: item | |
15271 | #: doc/guix.texi:6740 | |
15272 | #, no-wrap | |
15273 | msgid "inputs-should-be-native" | |
15274 | msgstr "" | |
15275 | ||
15276 | #. type: table | |
15277 | #: doc/guix.texi:6742 | |
15278 | msgid "Identify inputs that should most likely be native inputs." | |
15279 | msgstr "" | |
15280 | ||
15281 | #. type: itemx | |
15282 | #: doc/guix.texi:6745 | |
15283 | #, no-wrap | |
15284 | msgid "mirror-url" | |
15285 | msgstr "" | |
15286 | ||
15287 | #. type: itemx | |
15288 | #: doc/guix.texi:6746 | |
15289 | #, no-wrap | |
15290 | msgid "source-file-name" | |
15291 | msgstr "" | |
15292 | ||
15293 | #. type: table | |
15294 | #: doc/guix.texi:6752 | |
15295 | msgid "" | |
15296 | "Probe @code{home-page} and @code{source} URLs and report those that are " | |
15297 | "invalid. Suggest a @code{mirror://} URL when applicable. Check that the " | |
39764ef8 JL |
15298 | "source file name is meaningful, e.g. is not just a version number or ``git-" |
15299 | "checkout'', without a declared @code{file-name} (@pxref{origin Reference})." | |
b9fe8fd6 JL |
15300 | msgstr "" |
15301 | ||
15302 | #. type: item | |
15303 | #: doc/guix.texi:6753 | |
15304 | #, no-wrap | |
15305 | msgid "cve" | |
15306 | msgstr "" | |
15307 | ||
15308 | #. type: cindex | |
39764ef8 | 15309 | #: doc/guix.texi:6754 doc/guix.texi:21485 |
b9fe8fd6 JL |
15310 | #, no-wrap |
15311 | msgid "security vulnerabilities" | |
15312 | msgstr "" | |
15313 | ||
15314 | #. type: cindex | |
15315 | #: doc/guix.texi:6755 | |
15316 | #, no-wrap | |
15317 | msgid "CVE, Common Vulnerabilities and Exposures" | |
15318 | msgstr "" | |
15319 | ||
15320 | #. type: table | |
15321 | #: doc/guix.texi:6760 | |
15322 | msgid "" | |
15323 | "Report known vulnerabilities found in the Common Vulnerabilities and " | |
39764ef8 JL |
15324 | "Exposures (CVE) databases of the current and past year @uref{https://nvd." |
15325 | "nist.gov/download.cfm#CVE_FEED, published by the US NIST}." | |
b9fe8fd6 JL |
15326 | msgstr "" |
15327 | ||
15328 | #. type: table | |
15329 | #: doc/guix.texi:6762 | |
39764ef8 JL |
15330 | msgid "" |
15331 | "To view information about a particular vulnerability, visit pages such as:" | |
b9fe8fd6 JL |
15332 | msgstr "" |
15333 | ||
15334 | #. type: indicateurl{#1} | |
15335 | #: doc/guix.texi:6766 | |
15336 | msgid "https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-YYYY-ABCD" | |
15337 | msgstr "" | |
15338 | ||
15339 | #. type: indicateurl{#1} | |
15340 | #: doc/guix.texi:6768 | |
15341 | msgid "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-YYYY-ABCD" | |
15342 | msgstr "" | |
15343 | ||
15344 | #. type: table | |
15345 | #: doc/guix.texi:6773 | |
15346 | msgid "" | |
15347 | "where @code{CVE-YYYY-ABCD} is the CVE identifier---e.g., " | |
15348 | "@code{CVE-2015-7554}." | |
15349 | msgstr "" | |
15350 | ||
15351 | #. type: table | |
15352 | #: doc/guix.texi:6778 | |
15353 | msgid "" | |
39764ef8 JL |
15354 | "Package developers can specify in package recipes the @uref{https://nvd.nist." |
15355 | "gov/cpe.cfm,Common Platform Enumeration (CPE)} name and version of the " | |
15356 | "package when they differ from the name that Guix uses, as in this example:" | |
b9fe8fd6 JL |
15357 | msgstr "" |
15358 | ||
15359 | #. type: example | |
15360 | #: doc/guix.texi:6785 | |
15361 | #, no-wrap | |
15362 | msgid "" | |
15363 | "(package\n" | |
15364 | " (name \"grub\")\n" | |
15365 | " ;; @dots{}\n" | |
15366 | " ;; CPE calls this package \"grub2\".\n" | |
15367 | " (properties '((cpe-name . \"grub2\"))))\n" | |
15368 | msgstr "" | |
15369 | ||
15370 | #. type: item | |
15371 | #: doc/guix.texi:6787 | |
15372 | #, no-wrap | |
15373 | msgid "formatting" | |
15374 | msgstr "" | |
15375 | ||
15376 | #. type: table | |
15377 | #: doc/guix.texi:6790 | |
15378 | msgid "" | |
15379 | "Warn about obvious source code formatting issues: trailing white space, use " | |
15380 | "of tabulations, etc." | |
15381 | msgstr "" | |
15382 | ||
15383 | #. type: example | |
15384 | #: doc/guix.texi:6796 | |
15385 | #, no-wrap | |
15386 | msgid "guix lint @var{options} @var{package}@dots{}\n" | |
15387 | msgstr "" | |
15388 | ||
15389 | #. type: Plain text | |
15390 | #: doc/guix.texi:6800 | |
15391 | msgid "" | |
15392 | "If no package is given on the command line, then all packages are checked. " | |
15393 | "The @var{options} may be zero or more of the following:" | |
15394 | msgstr "" | |
15395 | ||
15396 | #. type: item | |
15397 | #: doc/guix.texi:6802 | |
15398 | #, no-wrap | |
15399 | msgid "--list-checkers" | |
15400 | msgstr "" | |
15401 | ||
15402 | #. type: table | |
15403 | #: doc/guix.texi:6806 | |
15404 | msgid "" | |
15405 | "List and describe all the available checkers that will be run on packages " | |
15406 | "and exit." | |
15407 | msgstr "" | |
15408 | ||
15409 | #. type: item | |
15410 | #: doc/guix.texi:6807 | |
15411 | #, no-wrap | |
15412 | msgid "--checkers" | |
15413 | msgstr "" | |
15414 | ||
15415 | #. type: itemx | |
15416 | #: doc/guix.texi:6808 | |
15417 | #, no-wrap | |
15418 | msgid "-c" | |
15419 | msgstr "" | |
15420 | ||
15421 | #. type: table | |
15422 | #: doc/guix.texi:6811 | |
15423 | msgid "" | |
15424 | "Only enable the checkers specified in a comma-separated list using the names " | |
15425 | "returned by @code{--list-checkers}." | |
15426 | msgstr "" | |
15427 | ||
15428 | #. type: section | |
15429 | #: doc/guix.texi:6815 | |
15430 | #, no-wrap | |
15431 | msgid "Invoking @command{guix size}" | |
15432 | msgstr "" | |
15433 | ||
15434 | #. type: cindex | |
15435 | #: doc/guix.texi:6817 | |
15436 | #, no-wrap | |
15437 | msgid "size" | |
15438 | msgstr "" | |
15439 | ||
15440 | #. type: cindex | |
15441 | #: doc/guix.texi:6818 | |
15442 | #, no-wrap | |
15443 | msgid "package size" | |
15444 | msgstr "" | |
15445 | ||
15446 | #. type: command{#1} | |
15447 | #: doc/guix.texi:6820 | |
15448 | #, no-wrap | |
15449 | msgid "guix size" | |
15450 | msgstr "" | |
15451 | ||
15452 | #. type: Plain text | |
15453 | #: doc/guix.texi:6827 | |
15454 | msgid "" | |
15455 | "The @command{guix size} command helps package developers profile the disk " | |
15456 | "usage of packages. It is easy to overlook the impact of an additional " | |
15457 | "dependency added to a package, or the impact of using a single output for a " | |
15458 | "package that could easily be split (@pxref{Packages with Multiple " | |
15459 | "Outputs}). Such are the typical issues that @command{guix size} can " | |
15460 | "highlight." | |
15461 | msgstr "" | |
15462 | ||
15463 | #. type: Plain text | |
15464 | #: doc/guix.texi:6831 | |
15465 | msgid "" | |
15466 | "The command can be passed a package specification such as @code{gcc@@4.8} or " | |
15467 | "@code{guile:debug}, or a file name in the store. Consider this example:" | |
15468 | msgstr "" | |
15469 | ||
15470 | #. type: example | |
15471 | #: doc/guix.texi:6841 | |
15472 | #, no-wrap | |
15473 | msgid "" | |
15474 | "$ guix size coreutils\n" | |
15475 | "store item total self\n" | |
15476 | "/gnu/store/@dots{}-coreutils-8.23 70.0 13.9 19.8%\n" | |
15477 | "/gnu/store/@dots{}-gmp-6.0.0a 55.3 2.5 3.6%\n" | |
15478 | "/gnu/store/@dots{}-acl-2.2.52 53.7 0.5 0.7%\n" | |
15479 | "/gnu/store/@dots{}-attr-2.4.46 53.2 0.3 0.5%\n" | |
15480 | "/gnu/store/@dots{}-gcc-4.8.4-lib 52.9 15.7 22.4%\n" | |
15481 | "/gnu/store/@dots{}-glibc-2.21 37.2 37.2 53.1%\n" | |
15482 | msgstr "" | |
15483 | ||
15484 | #. type: Plain text | |
15485 | #: doc/guix.texi:6847 | |
15486 | msgid "" | |
15487 | "The store items listed here constitute the @dfn{transitive closure} of " | |
15488 | "Coreutils---i.e., Coreutils and all its dependencies, recursively---as would " | |
15489 | "be returned by:" | |
15490 | msgstr "" | |
15491 | ||
15492 | #. type: example | |
15493 | #: doc/guix.texi:6850 | |
15494 | #, no-wrap | |
15495 | msgid "$ guix gc -R /gnu/store/@dots{}-coreutils-8.23\n" | |
15496 | msgstr "" | |
15497 | ||
15498 | #. type: Plain text | |
15499 | #: doc/guix.texi:6858 | |
15500 | msgid "" | |
15501 | "Here the output shows three columns next to store items. The first column, " | |
15502 | "labeled ``total'', shows the size in mebibytes (MiB) of the closure of the " | |
15503 | "store item---that is, its own size plus the size of all its dependencies. " | |
15504 | "The next column, labeled ``self'', shows the size of the item itself. The " | |
15505 | "last column shows the ratio of the size of the item itself to the space " | |
15506 | "occupied by all the items listed here." | |
15507 | msgstr "" | |
15508 | ||
15509 | #. type: Plain text | |
15510 | #: doc/guix.texi:6863 | |
15511 | msgid "" | |
39764ef8 JL |
15512 | "In this example, we see that the closure of Coreutils weighs in at 70@tie{}" |
15513 | "MiB, half of which is taken by libc. (That libc represents a large fraction " | |
15514 | "of the closure is not a problem @i{per se} because it is always available on " | |
15515 | "the system anyway.)" | |
b9fe8fd6 JL |
15516 | msgstr "" |
15517 | ||
15518 | #. type: Plain text | |
15519 | #: doc/guix.texi:6869 | |
15520 | msgid "" | |
15521 | "When the package passed to @command{guix size} is available in the store, " | |
15522 | "@command{guix size} queries the daemon to determine its dependencies, and " | |
15523 | "measures its size in the store, similar to @command{du -ms --apparent-size} " | |
15524 | "(@pxref{du invocation,,, coreutils, GNU Coreutils})." | |
15525 | msgstr "" | |
15526 | ||
15527 | #. type: Plain text | |
15528 | #: doc/guix.texi:6874 | |
15529 | msgid "" | |
15530 | "When the given package is @emph{not} in the store, @command{guix size} " | |
15531 | "reports information based on the available substitutes " | |
15532 | "(@pxref{Substitutes}). This makes it possible it to profile disk usage of " | |
15533 | "store items that are not even on disk, only available remotely." | |
15534 | msgstr "" | |
15535 | ||
15536 | #. type: Plain text | |
15537 | #: doc/guix.texi:6876 | |
15538 | msgid "You can also specify several package names:" | |
15539 | msgstr "" | |
15540 | ||
15541 | #. type: example | |
15542 | #: doc/guix.texi:6886 | |
15543 | #, no-wrap | |
15544 | msgid "" | |
15545 | "$ guix size coreutils grep sed bash\n" | |
15546 | "store item total self\n" | |
15547 | "/gnu/store/@dots{}-coreutils-8.24 77.8 13.8 13.4%\n" | |
15548 | "/gnu/store/@dots{}-grep-2.22 73.1 0.8 0.8%\n" | |
15549 | "/gnu/store/@dots{}-bash-4.3.42 72.3 4.7 4.6%\n" | |
15550 | "/gnu/store/@dots{}-readline-6.3 67.6 1.2 1.2%\n" | |
15551 | "@dots{}\n" | |
15552 | "total: 102.3 MiB\n" | |
15553 | msgstr "" | |
15554 | ||
15555 | #. type: Plain text | |
15556 | #: doc/guix.texi:6892 | |
15557 | msgid "" | |
15558 | "In this example we see that the combination of the four packages takes " | |
15559 | "102.3@tie{}MiB in total, which is much less than the sum of each closure " | |
15560 | "since they have a lot of dependencies in common." | |
15561 | msgstr "" | |
15562 | ||
15563 | #. type: Plain text | |
15564 | #: doc/guix.texi:6894 | |
15565 | msgid "The available options are:" | |
15566 | msgstr "" | |
15567 | ||
15568 | #. type: table | |
15569 | #: doc/guix.texi:6900 | |
15570 | msgid "" | |
15571 | "Use substitute information from @var{urls}. @xref{client-substitute-urls, " | |
15572 | "the same option for @code{guix build}}." | |
15573 | msgstr "" | |
15574 | ||
15575 | #. type: item | |
15576 | #: doc/guix.texi:6901 | |
15577 | #, no-wrap | |
15578 | msgid "--sort=@var{key}" | |
15579 | msgstr "" | |
15580 | ||
15581 | #. type: table | |
15582 | #: doc/guix.texi:6903 | |
15583 | msgid "Sort lines according to @var{key}, one of the following options:" | |
15584 | msgstr "" | |
15585 | ||
15586 | #. type: item | |
15587 | #: doc/guix.texi:6905 | |
15588 | #, no-wrap | |
15589 | msgid "self" | |
15590 | msgstr "" | |
15591 | ||
15592 | #. type: table | |
15593 | #: doc/guix.texi:6907 | |
15594 | msgid "the size of each item (the default);" | |
15595 | msgstr "" | |
15596 | ||
15597 | #. type: table | |
15598 | #: doc/guix.texi:6909 | |
15599 | msgid "the total size of the item's closure." | |
15600 | msgstr "" | |
15601 | ||
15602 | #. type: item | |
15603 | #: doc/guix.texi:6911 | |
15604 | #, no-wrap | |
15605 | msgid "--map-file=@var{file}" | |
15606 | msgstr "" | |
15607 | ||
15608 | #. type: table | |
15609 | #: doc/guix.texi:6913 | |
15610 | msgid "Write a graphical map of disk usage in PNG format to @var{file}." | |
15611 | msgstr "" | |
15612 | ||
15613 | #. type: table | |
15614 | #: doc/guix.texi:6915 | |
15615 | msgid "For the example above, the map looks like this:" | |
15616 | msgstr "" | |
15617 | ||
15618 | #. type: table | |
15619 | #: doc/guix.texi:6918 | |
15620 | msgid "" | |
15621 | "@image{images/coreutils-size-map,5in,, map of Coreutils disk usage produced " | |
15622 | "by @command{guix size}}" | |
15623 | msgstr "" | |
15624 | ||
15625 | #. type: table | |
15626 | #: doc/guix.texi:6923 | |
15627 | msgid "" | |
39764ef8 JL |
15628 | "This option requires that @uref{http://wingolog.org/software/guile-" |
15629 | "charting/, Guile-Charting} be installed and visible in Guile's module search " | |
15630 | "path. When that is not the case, @command{guix size} fails as it tries to " | |
15631 | "load it." | |
b9fe8fd6 JL |
15632 | msgstr "" |
15633 | ||
15634 | #. type: table | |
15635 | #: doc/guix.texi:6927 | |
15636 | msgid "Consider packages for @var{system}---e.g., @code{x86_64-linux}." | |
15637 | msgstr "" | |
15638 | ||
15639 | #. type: section | |
15640 | #: doc/guix.texi:6931 | |
15641 | #, no-wrap | |
15642 | msgid "Invoking @command{guix graph}" | |
15643 | msgstr "" | |
15644 | ||
15645 | #. type: cindex | |
15646 | #: doc/guix.texi:6933 | |
15647 | #, no-wrap | |
15648 | msgid "DAG" | |
15649 | msgstr "" | |
15650 | ||
15651 | #. type: command{#1} | |
15652 | #: doc/guix.texi:6934 | |
15653 | #, no-wrap | |
15654 | msgid "guix graph" | |
15655 | msgstr "" | |
15656 | ||
15657 | #. type: Plain text | |
15658 | #: doc/guix.texi:6948 | |
15659 | msgid "" | |
15660 | "Packages and their dependencies form a @dfn{graph}, specifically a directed " | |
15661 | "acyclic graph (DAG). It can quickly become difficult to have a mental model " | |
15662 | "of the package DAG, so the @command{guix graph} command provides a visual " | |
15663 | "representation of the DAG. By default, @command{guix graph} emits a DAG " | |
15664 | "representation in the input format of @uref{http://www.graphviz.org/, " | |
15665 | "Graphviz}, so its output can be passed directly to the @command{dot} command " | |
15666 | "of Graphviz. It can also emit an HTML page with embedded JavaScript code to " | |
39764ef8 JL |
15667 | "display a ``chord diagram'' in a Web browser, using the @uref{https://d3js." |
15668 | "org/, d3.js} library, or emit Cypher queries to construct a graph in a graph " | |
15669 | "database supporting the @uref{http://www.opencypher.org/, openCypher} query " | |
15670 | "language. The general syntax is:" | |
b9fe8fd6 JL |
15671 | msgstr "" |
15672 | ||
15673 | #. type: example | |
15674 | #: doc/guix.texi:6951 | |
15675 | #, no-wrap | |
15676 | msgid "guix graph @var{options} @var{package}@dots{}\n" | |
15677 | msgstr "" | |
15678 | ||
15679 | #. type: Plain text | |
15680 | #: doc/guix.texi:6956 | |
15681 | msgid "" | |
15682 | "For example, the following command generates a PDF file representing the " | |
15683 | "package DAG for the GNU@tie{}Core Utilities, showing its build-time " | |
15684 | "dependencies:" | |
15685 | msgstr "" | |
15686 | ||
15687 | #. type: example | |
15688 | #: doc/guix.texi:6959 | |
15689 | #, no-wrap | |
15690 | msgid "guix graph coreutils | dot -Tpdf > dag.pdf\n" | |
15691 | msgstr "" | |
15692 | ||
15693 | #. type: Plain text | |
15694 | #: doc/guix.texi:6962 | |
15695 | msgid "The output looks like this:" | |
15696 | msgstr "" | |
15697 | ||
15698 | #. type: Plain text | |
15699 | #: doc/guix.texi:6964 | |
39764ef8 JL |
15700 | msgid "" |
15701 | "@image{images/coreutils-graph,2in,,Dependency graph of the GNU Coreutils}" | |
b9fe8fd6 JL |
15702 | msgstr "" |
15703 | ||
15704 | #. type: Plain text | |
15705 | #: doc/guix.texi:6966 | |
15706 | msgid "Nice little graph, no?" | |
15707 | msgstr "" | |
15708 | ||
15709 | #. type: Plain text | |
15710 | #: doc/guix.texi:6972 | |
15711 | msgid "" | |
15712 | "But there is more than one graph! The one above is concise: it is the graph " | |
15713 | "of package objects, omitting implicit inputs such as GCC, libc, grep, etc. " | |
15714 | "It is often useful to have such a concise graph, but sometimes one may want " | |
15715 | "to see more details. @command{guix graph} supports several types of graphs, " | |
15716 | "allowing you to choose the level of detail:" | |
15717 | msgstr "" | |
15718 | ||
15719 | #. type: table | |
15720 | #: doc/guix.texi:6978 | |
15721 | msgid "" | |
15722 | "This is the default type used in the example above. It shows the DAG of " | |
15723 | "package objects, excluding implicit dependencies. It is concise, but " | |
15724 | "filters out many details." | |
15725 | msgstr "" | |
15726 | ||
15727 | #. type: item | |
15728 | #: doc/guix.texi:6979 | |
15729 | #, no-wrap | |
15730 | msgid "reverse-package" | |
15731 | msgstr "" | |
15732 | ||
15733 | #. type: table | |
15734 | #: doc/guix.texi:6981 | |
15735 | msgid "This shows the @emph{reverse} DAG of packages. For example:" | |
15736 | msgstr "" | |
15737 | ||
15738 | #. type: example | |
15739 | #: doc/guix.texi:6984 | |
15740 | #, no-wrap | |
15741 | msgid "guix graph --type=reverse-package ocaml\n" | |
15742 | msgstr "" | |
15743 | ||
15744 | #. type: table | |
15745 | #: doc/guix.texi:6987 | |
15746 | msgid "... yields the graph of packages that depend on OCaml." | |
15747 | msgstr "" | |
15748 | ||
15749 | #. type: table | |
15750 | #: doc/guix.texi:6992 | |
15751 | msgid "" | |
15752 | "Note that for core packages this can yield huge graphs. If all you want is " | |
15753 | "to know the number of packages that depend on a given package, use " | |
15754 | "@command{guix refresh --list-dependent} (@pxref{Invoking guix refresh, " | |
15755 | "@option{--list-dependent}})." | |
15756 | msgstr "" | |
15757 | ||
15758 | #. type: item | |
15759 | #: doc/guix.texi:6993 | |
15760 | #, no-wrap | |
15761 | msgid "bag-emerged" | |
15762 | msgstr "" | |
15763 | ||
15764 | #. type: table | |
15765 | #: doc/guix.texi:6995 | |
15766 | msgid "This is the package DAG, @emph{including} implicit inputs." | |
15767 | msgstr "" | |
15768 | ||
15769 | #. type: table | |
15770 | #: doc/guix.texi:6997 | |
15771 | msgid "For instance, the following command:" | |
15772 | msgstr "" | |
15773 | ||
15774 | #. type: example | |
15775 | #: doc/guix.texi:7000 | |
15776 | #, no-wrap | |
15777 | msgid "guix graph --type=bag-emerged coreutils | dot -Tpdf > dag.pdf\n" | |
15778 | msgstr "" | |
15779 | ||
15780 | #. type: table | |
15781 | #: doc/guix.texi:7003 | |
15782 | msgid "... yields this bigger graph:" | |
15783 | msgstr "" | |
15784 | ||
15785 | #. type: table | |
15786 | #: doc/guix.texi:7005 | |
15787 | msgid "" | |
15788 | "@image{images/coreutils-bag-graph,,5in,Detailed dependency graph of the GNU " | |
15789 | "Coreutils}" | |
15790 | msgstr "" | |
15791 | ||
15792 | #. type: table | |
15793 | #: doc/guix.texi:7008 | |
15794 | msgid "" | |
39764ef8 JL |
15795 | "At the bottom of the graph, we see all the implicit inputs of @var{gnu-build-" |
15796 | "system} (@pxref{Build Systems, @code{gnu-build-system}})." | |
b9fe8fd6 JL |
15797 | msgstr "" |
15798 | ||
15799 | #. type: table | |
15800 | #: doc/guix.texi:7012 | |
15801 | msgid "" | |
15802 | "Now, note that the dependencies of these implicit inputs---that is, the " | |
15803 | "@dfn{bootstrap dependencies} (@pxref{Bootstrapping})---are not shown here, " | |
15804 | "for conciseness." | |
15805 | msgstr "" | |
15806 | ||
15807 | #. type: item | |
15808 | #: doc/guix.texi:7013 | |
15809 | #, no-wrap | |
15810 | msgid "bag" | |
15811 | msgstr "" | |
15812 | ||
15813 | #. type: table | |
15814 | #: doc/guix.texi:7016 | |
15815 | msgid "" | |
15816 | "Similar to @code{bag-emerged}, but this time including all the bootstrap " | |
15817 | "dependencies." | |
15818 | msgstr "" | |
15819 | ||
15820 | #. type: item | |
15821 | #: doc/guix.texi:7017 | |
15822 | #, no-wrap | |
15823 | msgid "bag-with-origins" | |
15824 | msgstr "" | |
15825 | ||
15826 | #. type: table | |
15827 | #: doc/guix.texi:7019 | |
15828 | msgid "Similar to @code{bag}, but also showing origins and their dependencies." | |
15829 | msgstr "" | |
15830 | ||
15831 | #. type: table | |
15832 | #: doc/guix.texi:7025 | |
15833 | msgid "" | |
15834 | "This is the most detailed representation: It shows the DAG of derivations " | |
15835 | "(@pxref{Derivations}) and plain store items. Compared to the above " | |
15836 | "representation, many additional nodes are visible, including build scripts, " | |
15837 | "patches, Guile modules, etc." | |
15838 | msgstr "" | |
15839 | ||
15840 | #. type: table | |
15841 | #: doc/guix.texi:7028 | |
15842 | msgid "" | |
15843 | "For this type of graph, it is also possible to pass a @file{.drv} file name " | |
15844 | "instead of a package name, as in:" | |
15845 | msgstr "" | |
15846 | ||
15847 | #. type: example | |
15848 | #: doc/guix.texi:7031 | |
15849 | #, no-wrap | |
15850 | msgid "guix graph -t derivation `guix system build -d my-config.scm`\n" | |
15851 | msgstr "" | |
15852 | ||
15853 | #. type: item | |
15854 | #: doc/guix.texi:7033 | |
15855 | #, no-wrap | |
15856 | msgid "module" | |
15857 | msgstr "" | |
15858 | ||
15859 | #. type: table | |
15860 | #: doc/guix.texi:7037 | |
15861 | msgid "" | |
15862 | "This is the graph of @dfn{package modules} (@pxref{Package Modules}). For " | |
15863 | "example, the following command shows the graph for the package module that " | |
15864 | "defines the @code{guile} package:" | |
15865 | msgstr "" | |
15866 | ||
15867 | #. type: example | |
15868 | #: doc/guix.texi:7040 | |
15869 | #, no-wrap | |
15870 | msgid "guix graph -t module guile | dot -Tpdf > module-graph.pdf\n" | |
15871 | msgstr "" | |
15872 | ||
15873 | #. type: Plain text | |
15874 | #: doc/guix.texi:7045 | |
15875 | msgid "" | |
15876 | "All the types above correspond to @emph{build-time dependencies}. The " | |
15877 | "following graph type represents the @emph{run-time dependencies}:" | |
15878 | msgstr "" | |
15879 | ||
15880 | #. type: item | |
15881 | #: doc/guix.texi:7047 | |
15882 | #, no-wrap | |
15883 | msgid "references" | |
15884 | msgstr "" | |
15885 | ||
15886 | #. type: table | |
15887 | #: doc/guix.texi:7050 | |
15888 | msgid "" | |
15889 | "This is the graph of @dfn{references} of a package output, as returned by " | |
15890 | "@command{guix gc --references} (@pxref{Invoking guix gc})." | |
15891 | msgstr "" | |
15892 | ||
15893 | #. type: table | |
15894 | #: doc/guix.texi:7053 | |
15895 | msgid "" | |
15896 | "If the given package output is not available in the store, @command{guix " | |
15897 | "graph} attempts to obtain dependency information from substitutes." | |
15898 | msgstr "" | |
15899 | ||
15900 | #. type: table | |
15901 | #: doc/guix.texi:7057 | |
15902 | msgid "" | |
15903 | "Here you can also pass a store file name instead of a package name. For " | |
15904 | "example, the command below produces the reference graph of your profile " | |
15905 | "(which can be big!):" | |
15906 | msgstr "" | |
15907 | ||
15908 | #. type: example | |
15909 | #: doc/guix.texi:7060 | |
15910 | #, no-wrap | |
15911 | msgid "guix graph -t references `readlink -f ~/.guix-profile`\n" | |
15912 | msgstr "" | |
15913 | ||
15914 | #. type: item | |
15915 | #: doc/guix.texi:7062 | |
15916 | #, no-wrap | |
15917 | msgid "referrers" | |
15918 | msgstr "" | |
15919 | ||
15920 | #. type: table | |
15921 | #: doc/guix.texi:7065 | |
15922 | msgid "" | |
15923 | "This is the graph of the @dfn{referrers} of a store item, as returned by " | |
15924 | "@command{guix gc --referrers} (@pxref{Invoking guix gc})." | |
15925 | msgstr "" | |
15926 | ||
15927 | #. type: table | |
15928 | #: doc/guix.texi:7071 | |
15929 | msgid "" | |
15930 | "This relies exclusively on local information from your store. For instance, " | |
15931 | "let us suppose that the current Inkscape is available in 10 profiles on your " | |
15932 | "machine; @command{guix graph -t referrers inkscape} will show a graph rooted " | |
15933 | "at Inkscape and with those 10 profiles linked to it." | |
15934 | msgstr "" | |
15935 | ||
15936 | #. type: table | |
15937 | #: doc/guix.texi:7074 | |
15938 | msgid "" | |
15939 | "It can help determine what is preventing a store item from being garbage " | |
15940 | "collected." | |
15941 | msgstr "" | |
15942 | ||
15943 | #. type: Plain text | |
15944 | #: doc/guix.texi:7078 | |
15945 | msgid "The available options are the following:" | |
15946 | msgstr "" | |
15947 | ||
15948 | #. type: item | |
15949 | #: doc/guix.texi:7080 | |
15950 | #, no-wrap | |
15951 | msgid "--type=@var{type}" | |
15952 | msgstr "" | |
15953 | ||
15954 | #. type: itemx | |
39764ef8 | 15955 | #: doc/guix.texi:7081 doc/guix.texi:20603 |
b9fe8fd6 JL |
15956 | #, no-wrap |
15957 | msgid "-t @var{type}" | |
15958 | msgstr "" | |
15959 | ||
15960 | #. type: table | |
15961 | #: doc/guix.texi:7084 | |
15962 | msgid "" | |
15963 | "Produce a graph output of @var{type}, where @var{type} must be one of the " | |
15964 | "values listed above." | |
15965 | msgstr "" | |
15966 | ||
15967 | #. type: item | |
15968 | #: doc/guix.texi:7085 | |
15969 | #, no-wrap | |
15970 | msgid "--list-types" | |
15971 | msgstr "" | |
15972 | ||
15973 | #. type: table | |
15974 | #: doc/guix.texi:7087 | |
15975 | msgid "List the supported graph types." | |
15976 | msgstr "" | |
15977 | ||
15978 | #. type: item | |
15979 | #: doc/guix.texi:7088 | |
15980 | #, no-wrap | |
15981 | msgid "--backend=@var{backend}" | |
15982 | msgstr "" | |
15983 | ||
15984 | #. type: itemx | |
15985 | #: doc/guix.texi:7089 | |
15986 | #, no-wrap | |
15987 | msgid "-b @var{backend}" | |
15988 | msgstr "" | |
15989 | ||
15990 | #. type: table | |
15991 | #: doc/guix.texi:7091 | |
15992 | msgid "Produce a graph using the selected @var{backend}." | |
15993 | msgstr "" | |
15994 | ||
15995 | #. type: item | |
15996 | #: doc/guix.texi:7092 | |
15997 | #, no-wrap | |
15998 | msgid "--list-backends" | |
15999 | msgstr "" | |
16000 | ||
16001 | #. type: table | |
16002 | #: doc/guix.texi:7094 | |
16003 | msgid "List the supported graph backends." | |
16004 | msgstr "" | |
16005 | ||
16006 | #. type: table | |
16007 | #: doc/guix.texi:7096 | |
16008 | msgid "Currently, the available backends are Graphviz and d3.js." | |
16009 | msgstr "" | |
16010 | ||
16011 | #. type: example | |
16012 | #: doc/guix.texi:7105 | |
16013 | #, no-wrap | |
16014 | msgid "guix graph -e '(@@@@ (gnu packages commencement) gnu-make-final)'\n" | |
16015 | msgstr "" | |
16016 | ||
16017 | #. type: section | |
16018 | #: doc/guix.texi:7110 | |
16019 | #, no-wrap | |
16020 | msgid "Invoking @command{guix environment}" | |
16021 | msgstr "" | |
16022 | ||
16023 | #. type: cindex | |
16024 | #: doc/guix.texi:7112 | |
16025 | #, no-wrap | |
16026 | msgid "reproducible build environments" | |
16027 | msgstr "" | |
16028 | ||
16029 | #. type: cindex | |
16030 | #: doc/guix.texi:7113 | |
16031 | #, no-wrap | |
16032 | msgid "development environments" | |
16033 | msgstr "" | |
16034 | ||
16035 | #. type: command{#1} | |
16036 | #: doc/guix.texi:7114 | |
16037 | #, no-wrap | |
16038 | msgid "guix environment" | |
16039 | msgstr "" | |
16040 | ||
16041 | #. type: cindex | |
16042 | #: doc/guix.texi:7115 | |
16043 | #, no-wrap | |
16044 | msgid "environment, package build environment" | |
16045 | msgstr "" | |
16046 | ||
16047 | #. type: Plain text | |
16048 | #: doc/guix.texi:7121 | |
16049 | msgid "" | |
16050 | "The purpose of @command{guix environment} is to assist hackers in creating " | |
16051 | "reproducible development environments without polluting their package " | |
16052 | "profile. The @command{guix environment} tool takes one or more packages, " | |
16053 | "builds all of their inputs, and creates a shell environment to use them." | |
16054 | msgstr "" | |
16055 | ||
16056 | #. type: example | |
16057 | #: doc/guix.texi:7126 | |
16058 | #, no-wrap | |
16059 | msgid "guix environment @var{options} @var{package}@dots{}\n" | |
16060 | msgstr "" | |
16061 | ||
16062 | #. type: Plain text | |
16063 | #: doc/guix.texi:7130 | |
16064 | msgid "" | |
16065 | "The following example spawns a new shell set up for the development of " | |
16066 | "GNU@tie{}Guile:" | |
16067 | msgstr "" | |
16068 | ||
16069 | #. type: example | |
16070 | #: doc/guix.texi:7133 | |
16071 | #, no-wrap | |
16072 | msgid "guix environment guile\n" | |
16073 | msgstr "" | |
16074 | ||
16075 | #. type: Plain text | |
16076 | #: doc/guix.texi:7150 | |
16077 | msgid "" | |
16078 | "If the needed dependencies are not built yet, @command{guix environment} " | |
16079 | "automatically builds them. The environment of the new shell is an augmented " | |
16080 | "version of the environment that @command{guix environment} was run in. It " | |
16081 | "contains the necessary search paths for building the given package added to " | |
16082 | "the existing environment variables. To create a ``pure'' environment, in " | |
39764ef8 JL |
16083 | "which the original environment variables have been unset, use the @code{--" |
16084 | "pure} option@footnote{Users sometimes wrongfully augment environment " | |
b9fe8fd6 JL |
16085 | "variables such as @code{PATH} in their @file{~/.bashrc} file. As a " |
16086 | "consequence, when @code{guix environment} launches it, Bash may read " | |
16087 | "@file{~/.bashrc}, thereby introducing ``impurities'' in these environment " | |
39764ef8 JL |
16088 | "variables. It is an error to define such environment variables in @file{." |
16089 | "bashrc}; instead, they should be defined in @file{.bash_profile}, which is " | |
16090 | "sourced only by log-in shells. @xref{Bash Startup Files,,, bash, The GNU " | |
16091 | "Bash Reference Manual}, for details on Bash start-up files.}." | |
b9fe8fd6 JL |
16092 | msgstr "" |
16093 | ||
16094 | #. type: vindex | |
16095 | #: doc/guix.texi:7151 | |
16096 | #, no-wrap | |
16097 | msgid "GUIX_ENVIRONMENT" | |
16098 | msgstr "" | |
16099 | ||
16100 | #. type: Plain text | |
16101 | #: doc/guix.texi:7157 | |
16102 | msgid "" | |
16103 | "@command{guix environment} defines the @code{GUIX_ENVIRONMENT} variable in " | |
16104 | "the shell it spawns; its value is the file name of the profile of this " | |
16105 | "environment. This allows users to, say, define a specific prompt for " | |
16106 | "development environments in their @file{.bashrc} (@pxref{Bash Startup " | |
16107 | "Files,,, bash, The GNU Bash Reference Manual}):" | |
16108 | msgstr "" | |
16109 | ||
16110 | #. type: example | |
16111 | #: doc/guix.texi:7163 | |
16112 | #, no-wrap | |
16113 | msgid "" | |
16114 | "if [ -n \"$GUIX_ENVIRONMENT\" ]\n" | |
16115 | "then\n" | |
16116 | " export PS1=\"\\u@@\\h \\w [dev]\\$ \"\n" | |
16117 | "fi\n" | |
16118 | msgstr "" | |
16119 | ||
16120 | #. type: Plain text | |
16121 | #: doc/guix.texi:7167 | |
16122 | msgid "... or to browse the profile:" | |
16123 | msgstr "" | |
16124 | ||
16125 | #. type: example | |
16126 | #: doc/guix.texi:7170 | |
16127 | #, no-wrap | |
16128 | msgid "$ ls \"$GUIX_ENVIRONMENT/bin\"\n" | |
16129 | msgstr "" | |
16130 | ||
16131 | #. type: Plain text | |
16132 | #: doc/guix.texi:7176 | |
16133 | msgid "" | |
16134 | "Additionally, more than one package may be specified, in which case the " | |
16135 | "union of the inputs for the given packages are used. For example, the " | |
16136 | "command below spawns a shell where all of the dependencies of both Guile and " | |
16137 | "Emacs are available:" | |
16138 | msgstr "" | |
16139 | ||
16140 | #. type: example | |
16141 | #: doc/guix.texi:7179 | |
16142 | #, no-wrap | |
16143 | msgid "guix environment guile emacs\n" | |
16144 | msgstr "" | |
16145 | ||
16146 | #. type: Plain text | |
16147 | #: doc/guix.texi:7184 | |
16148 | msgid "" | |
16149 | "Sometimes an interactive shell session is not desired. An arbitrary command " | |
16150 | "may be invoked by placing the @code{--} token to separate the command from " | |
16151 | "the rest of the arguments:" | |
16152 | msgstr "" | |
16153 | ||
16154 | #. type: example | |
16155 | #: doc/guix.texi:7187 | |
16156 | #, no-wrap | |
16157 | msgid "guix environment guile -- make -j4\n" | |
16158 | msgstr "" | |
16159 | ||
16160 | #. type: Plain text | |
16161 | #: doc/guix.texi:7193 | |
16162 | msgid "" | |
16163 | "In other situations, it is more convenient to specify the list of packages " | |
16164 | "needed in the environment. For example, the following command runs " | |
16165 | "@command{python} from an environment containing Python@tie{}2.7 and NumPy:" | |
16166 | msgstr "" | |
16167 | ||
16168 | #. type: example | |
16169 | #: doc/guix.texi:7196 | |
16170 | #, no-wrap | |
16171 | msgid "guix environment --ad-hoc python2-numpy python-2.7 -- python\n" | |
16172 | msgstr "" | |
16173 | ||
16174 | #. type: Plain text | |
16175 | #: doc/guix.texi:7207 | |
16176 | msgid "" | |
16177 | "Furthermore, one might want the dependencies of a package and also some " | |
16178 | "additional packages that are not build-time or runtime dependencies, but are " | |
16179 | "useful when developing nonetheless. Because of this, the @code{--ad-hoc} " | |
16180 | "flag is positional. Packages appearing before @code{--ad-hoc} are " | |
16181 | "interpreted as packages whose dependencies will be added to the " | |
16182 | "environment. Packages appearing after are interpreted as packages that will " | |
16183 | "be added to the environment directly. For example, the following command " | |
16184 | "creates a Guix development environment that additionally includes Git and " | |
16185 | "strace:" | |
16186 | msgstr "" | |
16187 | ||
16188 | #. type: example | |
16189 | #: doc/guix.texi:7210 | |
16190 | #, no-wrap | |
16191 | msgid "guix environment guix --ad-hoc git strace\n" | |
16192 | msgstr "" | |
16193 | ||
16194 | #. type: Plain text | |
16195 | #: doc/guix.texi:7219 | |
16196 | msgid "" | |
16197 | "Sometimes it is desirable to isolate the environment as much as possible, " | |
16198 | "for maximal purity and reproducibility. In particular, when using Guix on a " | |
39764ef8 JL |
16199 | "host distro that is not GuixSD, it is desirable to prevent access to @file{/" |
16200 | "usr/bin} and other system-wide resources from the development environment. " | |
16201 | "For example, the following command spawns a Guile REPL in a ``container'' " | |
16202 | "where only the store and the current working directory are mounted:" | |
b9fe8fd6 JL |
16203 | msgstr "" |
16204 | ||
16205 | #. type: example | |
16206 | #: doc/guix.texi:7222 | |
16207 | #, no-wrap | |
16208 | msgid "guix environment --ad-hoc --container guile -- guile\n" | |
16209 | msgstr "" | |
16210 | ||
16211 | #. type: quotation | |
16212 | #: doc/guix.texi:7226 | |
16213 | msgid "The @code{--container} option requires Linux-libre 3.19 or newer." | |
16214 | msgstr "" | |
16215 | ||
16216 | #. type: Plain text | |
16217 | #: doc/guix.texi:7229 | |
16218 | msgid "The available options are summarized below." | |
16219 | msgstr "" | |
16220 | ||
16221 | #. type: cindex | |
16222 | #: doc/guix.texi:7233 | |
16223 | #, no-wrap | |
16224 | msgid "persistent environment" | |
16225 | msgstr "" | |
16226 | ||
16227 | #. type: cindex | |
16228 | #: doc/guix.texi:7234 | |
16229 | #, no-wrap | |
16230 | msgid "garbage collector root, for environments" | |
16231 | msgstr "" | |
16232 | ||
16233 | #. type: table | |
16234 | #: doc/guix.texi:7237 | |
16235 | msgid "" | |
16236 | "Make @var{file} a symlink to the profile for this environment, and register " | |
16237 | "it as a garbage collector root." | |
16238 | msgstr "" | |
16239 | ||
16240 | #. type: table | |
16241 | #: doc/guix.texi:7240 | |
16242 | msgid "" | |
16243 | "This is useful if you want to protect your environment from garbage " | |
16244 | "collection, to make it ``persistent''." | |
16245 | msgstr "" | |
16246 | ||
16247 | #. type: table | |
16248 | #: doc/guix.texi:7246 | |
16249 | msgid "" | |
16250 | "When this option is omitted, the environment is protected from garbage " | |
16251 | "collection only for the duration of the @command{guix environment} session. " | |
16252 | "This means that next time you recreate the same environment, you could have " | |
16253 | "to rebuild or re-download packages. @xref{Invoking guix gc}, for more on GC " | |
16254 | "roots." | |
16255 | msgstr "" | |
16256 | ||
16257 | #. type: table | |
16258 | #: doc/guix.texi:7251 | |
16259 | msgid "" | |
16260 | "Create an environment for the package or list of packages that @var{expr} " | |
16261 | "evaluates to." | |
16262 | msgstr "" | |
16263 | ||
16264 | #. type: table | |
16265 | #: doc/guix.texi:7253 | |
16266 | msgid "For example, running:" | |
16267 | msgstr "" | |
16268 | ||
16269 | #. type: example | |
16270 | #: doc/guix.texi:7256 | |
16271 | #, no-wrap | |
16272 | msgid "guix environment -e '(@@ (gnu packages maths) petsc-openmpi)'\n" | |
16273 | msgstr "" | |
16274 | ||
16275 | #. type: table | |
16276 | #: doc/guix.texi:7260 | |
16277 | msgid "" | |
16278 | "starts a shell with the environment for this specific variant of the PETSc " | |
16279 | "package." | |
16280 | msgstr "" | |
16281 | ||
16282 | #. type: table | |
16283 | #: doc/guix.texi:7262 | |
16284 | msgid "Running:" | |
16285 | msgstr "" | |
16286 | ||
16287 | #. type: example | |
16288 | #: doc/guix.texi:7265 | |
16289 | #, no-wrap | |
16290 | msgid "guix environment --ad-hoc -e '(@@ (gnu) %base-packages)'\n" | |
16291 | msgstr "" | |
16292 | ||
16293 | #. type: table | |
16294 | #: doc/guix.texi:7268 | |
16295 | msgid "starts a shell with all the GuixSD base packages available." | |
16296 | msgstr "" | |
16297 | ||
16298 | #. type: table | |
16299 | #: doc/guix.texi:7271 | |
16300 | msgid "" | |
16301 | "The above commands only use the default output of the given packages. To " | |
16302 | "select other outputs, two element tuples can be specified:" | |
16303 | msgstr "" | |
16304 | ||
16305 | #. type: example | |
16306 | #: doc/guix.texi:7274 | |
16307 | #, no-wrap | |
39764ef8 | 16308 | msgid "guix environment --ad-hoc -e '(list (@@ (gnu packages bash) bash) \"include\")'\n" |
b9fe8fd6 JL |
16309 | msgstr "" |
16310 | ||
16311 | #. type: item | |
16312 | #: doc/guix.texi:7276 | |
16313 | #, no-wrap | |
16314 | msgid "--load=@var{file}" | |
16315 | msgstr "" | |
16316 | ||
16317 | #. type: itemx | |
16318 | #: doc/guix.texi:7277 | |
16319 | #, no-wrap | |
16320 | msgid "-l @var{file}" | |
16321 | msgstr "" | |
16322 | ||
16323 | #. type: table | |
16324 | #: doc/guix.texi:7280 | |
16325 | msgid "" | |
16326 | "Create an environment for the package or list of packages that the code " | |
16327 | "within @var{file} evaluates to." | |
16328 | msgstr "" | |
16329 | ||
16330 | #. type: example | |
16331 | #: doc/guix.texi:7286 | |
16332 | #, no-wrap | |
16333 | msgid "@verbatiminclude environment-gdb.scm\n" | |
16334 | msgstr "" | |
16335 | ||
16336 | #. type: table | |
16337 | #: doc/guix.texi:7292 | |
16338 | msgid "" | |
16339 | "Create an environment for the packages contained in the manifest object " | |
16340 | "returned by the Scheme code in @var{file}." | |
16341 | msgstr "" | |
16342 | ||
16343 | #. type: table | |
16344 | #: doc/guix.texi:7296 | |
16345 | msgid "" | |
16346 | "This is similar to the same-named option in @command{guix package} " | |
16347 | "(@pxref{profile-manifest, @option{--manifest}}) and uses the same manifest " | |
16348 | "files." | |
16349 | msgstr "" | |
16350 | ||
16351 | #. type: item | |
16352 | #: doc/guix.texi:7297 | |
16353 | #, no-wrap | |
16354 | msgid "--ad-hoc" | |
16355 | msgstr "" | |
16356 | ||
16357 | #. type: table | |
16358 | #: doc/guix.texi:7302 | |
16359 | msgid "" | |
16360 | "Include all specified packages in the resulting environment, as if an @i{ad " | |
16361 | "hoc} package were defined with them as inputs. This option is useful for " | |
16362 | "quickly creating an environment without having to write a package expression " | |
16363 | "to contain the desired inputs." | |
16364 | msgstr "" | |
16365 | ||
16366 | #. type: table | |
16367 | #: doc/guix.texi:7304 | |
16368 | msgid "For instance, the command:" | |
16369 | msgstr "" | |
16370 | ||
16371 | #. type: example | |
16372 | #: doc/guix.texi:7307 | |
16373 | #, no-wrap | |
16374 | msgid "guix environment --ad-hoc guile guile-sdl -- guile\n" | |
16375 | msgstr "" | |
16376 | ||
16377 | #. type: table | |
16378 | #: doc/guix.texi:7311 | |
16379 | msgid "" | |
16380 | "runs @command{guile} in an environment where Guile and Guile-SDL are " | |
16381 | "available." | |
16382 | msgstr "" | |
16383 | ||
16384 | #. type: table | |
16385 | #: doc/guix.texi:7316 | |
16386 | msgid "" | |
16387 | "Note that this example implicitly asks for the default output of " | |
16388 | "@code{guile} and @code{guile-sdl}, but it is possible to ask for a specific " | |
16389 | "output---e.g., @code{glib:bin} asks for the @code{bin} output of @code{glib} " | |
16390 | "(@pxref{Packages with Multiple Outputs})." | |
16391 | msgstr "" | |
16392 | ||
16393 | #. type: table | |
16394 | #: doc/guix.texi:7322 | |
16395 | msgid "" | |
16396 | "This option may be composed with the default behavior of @command{guix " | |
16397 | "environment}. Packages appearing before @code{--ad-hoc} are interpreted as " | |
16398 | "packages whose dependencies will be added to the environment, the default " | |
16399 | "behavior. Packages appearing after are interpreted as packages that will be " | |
16400 | "added to the environment directly." | |
16401 | msgstr "" | |
16402 | ||
16403 | #. type: item | |
16404 | #: doc/guix.texi:7323 | |
16405 | #, no-wrap | |
16406 | msgid "--pure" | |
16407 | msgstr "" | |
16408 | ||
16409 | #. type: table | |
16410 | #: doc/guix.texi:7327 | |
16411 | msgid "" | |
16412 | "Unset existing environment variables when building the new environment. " | |
16413 | "This has the effect of creating an environment in which search paths only " | |
16414 | "contain package inputs." | |
16415 | msgstr "" | |
16416 | ||
16417 | #. type: item | |
16418 | #: doc/guix.texi:7328 | |
16419 | #, no-wrap | |
16420 | msgid "--search-paths" | |
16421 | msgstr "" | |
16422 | ||
16423 | #. type: table | |
16424 | #: doc/guix.texi:7331 | |
39764ef8 JL |
16425 | msgid "" |
16426 | "Display the environment variable definitions that make up the environment." | |
b9fe8fd6 JL |
16427 | msgstr "" |
16428 | ||
16429 | #. type: table | |
16430 | #: doc/guix.texi:7335 | |
16431 | msgid "Attempt to build for @var{system}---e.g., @code{i686-linux}." | |
16432 | msgstr "" | |
16433 | ||
16434 | #. type: item | |
16435 | #: doc/guix.texi:7336 | |
16436 | #, no-wrap | |
16437 | msgid "--container" | |
16438 | msgstr "" | |
16439 | ||
16440 | #. type: itemx | |
16441 | #: doc/guix.texi:7337 | |
16442 | #, no-wrap | |
16443 | msgid "-C" | |
16444 | msgstr "" | |
16445 | ||
16446 | #. type: item | |
39764ef8 | 16447 | #: doc/guix.texi:7338 doc/guix.texi:7849 doc/guix.texi:20552 |
b9fe8fd6 JL |
16448 | #, no-wrap |
16449 | msgid "container" | |
16450 | msgstr "" | |
16451 | ||
16452 | #. type: table | |
16453 | #: doc/guix.texi:7346 | |
16454 | msgid "" | |
16455 | "Run @var{command} within an isolated container. The current working " | |
16456 | "directory outside the container is mapped inside the container. " | |
16457 | "Additionally, unless overridden with @code{--user}, a dummy home directory " | |
39764ef8 JL |
16458 | "is created that matches the current user's home directory, and @file{/etc/" |
16459 | "passwd} is configured accordingly. The spawned process runs as the current " | |
16460 | "user outside the container, but has root privileges in the context of the " | |
16461 | "container." | |
b9fe8fd6 JL |
16462 | msgstr "" |
16463 | ||
16464 | #. type: item | |
16465 | #: doc/guix.texi:7347 | |
16466 | #, no-wrap | |
16467 | msgid "--network" | |
16468 | msgstr "" | |
16469 | ||
16470 | #. type: itemx | |
16471 | #: doc/guix.texi:7348 | |
16472 | #, no-wrap | |
16473 | msgid "-N" | |
16474 | msgstr "" | |
16475 | ||
16476 | #. type: table | |
16477 | #: doc/guix.texi:7352 | |
16478 | msgid "" | |
16479 | "For containers, share the network namespace with the host system. " | |
39764ef8 | 16480 | "Containers created without this flag only have access to the loopback device." |
b9fe8fd6 JL |
16481 | msgstr "" |
16482 | ||
16483 | #. type: item | |
16484 | #: doc/guix.texi:7353 | |
16485 | #, no-wrap | |
16486 | msgid "--link-profile" | |
16487 | msgstr "" | |
16488 | ||
16489 | #. type: itemx | |
16490 | #: doc/guix.texi:7354 | |
16491 | #, no-wrap | |
16492 | msgid "-P" | |
16493 | msgstr "" | |
16494 | ||
16495 | #. type: table | |
16496 | #: doc/guix.texi:7361 | |
16497 | msgid "" | |
16498 | "For containers, link the environment profile to @file{~/.guix-profile} " | |
16499 | "within the container. This is equivalent to running the command @command{ln " | |
16500 | "-s $GUIX_ENVIRONMENT ~/.guix-profile} within the container. Linking will " | |
16501 | "fail and abort the environment if the directory already exists, which will " | |
16502 | "certainly be the case if @command{guix environment} was invoked in the " | |
16503 | "user's home directory." | |
16504 | msgstr "" | |
16505 | ||
16506 | #. type: table | |
16507 | #: doc/guix.texi:7368 | |
16508 | msgid "" | |
16509 | "Certain packages are configured to look in @code{~/.guix-profile} for " | |
16510 | "configuration files and data;@footnote{For example, the @code{fontconfig} " | |
16511 | "package inspects @file{~/.guix-profile/share/fonts} for additional fonts.} " | |
16512 | "@code{--link-profile} allows these programs to behave as expected within the " | |
16513 | "environment." | |
16514 | msgstr "" | |
16515 | ||
16516 | #. type: item | |
16517 | #: doc/guix.texi:7369 doc/guix.texi:7521 | |
16518 | #, no-wrap | |
16519 | msgid "--user=@var{user}" | |
16520 | msgstr "" | |
16521 | ||
16522 | #. type: itemx | |
16523 | #: doc/guix.texi:7370 doc/guix.texi:7522 | |
16524 | #, no-wrap | |
16525 | msgid "-u @var{user}" | |
16526 | msgstr "" | |
16527 | ||
16528 | #. type: table | |
16529 | #: doc/guix.texi:7376 | |
16530 | msgid "" | |
16531 | "For containers, use the username @var{user} in place of the current user. " | |
16532 | "The generated @file{/etc/passwd} entry within the container will contain the " | |
16533 | "name @var{user}; the home directory will be @file{/home/USER}; and no user " | |
16534 | "GECOS data will be copied. @var{user} need not exist on the system." | |
16535 | msgstr "" | |
16536 | ||
16537 | #. type: table | |
16538 | #: doc/guix.texi:7381 | |
16539 | msgid "" | |
39764ef8 JL |
16540 | "Additionally, any shared or exposed path (see @code{--share} and @code{--" |
16541 | "expose} respectively) whose target is within the current user's home " | |
b9fe8fd6 JL |
16542 | "directory will be remapped relative to @file{/home/USER}; this includes the " |
16543 | "automatic mapping of the current working directory." | |
16544 | msgstr "" | |
16545 | ||
16546 | #. type: example | |
16547 | #: doc/guix.texi:7388 | |
16548 | #, no-wrap | |
16549 | msgid "" | |
16550 | "# will expose paths as /home/foo/wd, /home/foo/test, and /home/foo/target\n" | |
16551 | "cd $HOME/wd\n" | |
16552 | "guix environment --container --user=foo \\\n" | |
16553 | " --expose=$HOME/test \\\n" | |
16554 | " --expose=/tmp/target=$HOME/target\n" | |
16555 | msgstr "" | |
16556 | ||
16557 | #. type: table | |
16558 | #: doc/guix.texi:7393 | |
16559 | msgid "" | |
16560 | "While this will limit the leaking of user identity through home paths and " | |
16561 | "each of the user fields, this is only one useful component of a broader " | |
16562 | "privacy/anonymity solution---not one in and of itself." | |
16563 | msgstr "" | |
16564 | ||
16565 | #. type: item | |
16566 | #: doc/guix.texi:7394 | |
16567 | #, no-wrap | |
16568 | msgid "--expose=@var{source}[=@var{target}]" | |
16569 | msgstr "" | |
16570 | ||
16571 | #. type: table | |
16572 | #: doc/guix.texi:7399 | |
16573 | msgid "" | |
16574 | "For containers, expose the file system @var{source} from the host system as " | |
16575 | "the read-only file system @var{target} within the container. If " | |
16576 | "@var{target} is not specified, @var{source} is used as the target mount " | |
16577 | "point in the container." | |
16578 | msgstr "" | |
16579 | ||
16580 | #. type: table | |
16581 | #: doc/guix.texi:7403 | |
16582 | msgid "" | |
16583 | "The example below spawns a Guile REPL in a container in which the user's " | |
16584 | "home directory is accessible read-only via the @file{/exchange} directory:" | |
16585 | msgstr "" | |
16586 | ||
16587 | #. type: example | |
16588 | #: doc/guix.texi:7406 | |
16589 | #, no-wrap | |
39764ef8 | 16590 | msgid "guix environment --container --expose=$HOME=/exchange --ad-hoc guile -- guile\n" |
b9fe8fd6 JL |
16591 | msgstr "" |
16592 | ||
16593 | #. type: item | |
16594 | #: doc/guix.texi:7408 | |
16595 | #, no-wrap | |
16596 | msgid "--share=@var{source}[=@var{target}]" | |
16597 | msgstr "" | |
16598 | ||
16599 | #. type: table | |
16600 | #: doc/guix.texi:7413 | |
16601 | msgid "" | |
16602 | "For containers, share the file system @var{source} from the host system as " | |
16603 | "the writable file system @var{target} within the container. If @var{target} " | |
16604 | "is not specified, @var{source} is used as the target mount point in the " | |
16605 | "container." | |
16606 | msgstr "" | |
16607 | ||
16608 | #. type: table | |
16609 | #: doc/guix.texi:7417 | |
16610 | msgid "" | |
16611 | "The example below spawns a Guile REPL in a container in which the user's " | |
39764ef8 JL |
16612 | "home directory is accessible for both reading and writing via the @file{/" |
16613 | "exchange} directory:" | |
b9fe8fd6 JL |
16614 | msgstr "" |
16615 | ||
16616 | #. type: example | |
16617 | #: doc/guix.texi:7420 | |
16618 | #, no-wrap | |
39764ef8 | 16619 | msgid "guix environment --container --share=$HOME=/exchange --ad-hoc guile -- guile\n" |
b9fe8fd6 JL |
16620 | msgstr "" |
16621 | ||
16622 | #. type: Plain text | |
16623 | #: doc/guix.texi:7426 | |
16624 | msgid "" | |
16625 | "@command{guix environment} also supports all of the common build options " | |
16626 | "that @command{guix build} supports (@pxref{Common Build Options})." | |
16627 | msgstr "" | |
16628 | ||
16629 | #. type: section | |
16630 | #: doc/guix.texi:7429 | |
16631 | #, no-wrap | |
16632 | msgid "Invoking @command{guix publish}" | |
16633 | msgstr "" | |
16634 | ||
16635 | #. type: command{#1} | |
16636 | #: doc/guix.texi:7431 | |
16637 | #, no-wrap | |
16638 | msgid "guix publish" | |
16639 | msgstr "" | |
16640 | ||
16641 | #. type: Plain text | |
16642 | #: doc/guix.texi:7435 | |
16643 | msgid "" | |
16644 | "The purpose of @command{guix publish} is to enable users to easily share " | |
16645 | "their store with others, who can then use it as a substitute server " | |
16646 | "(@pxref{Substitutes})." | |
16647 | msgstr "" | |
16648 | ||
16649 | #. type: Plain text | |
16650 | #: doc/guix.texi:7441 | |
16651 | msgid "" | |
16652 | "When @command{guix publish} runs, it spawns an HTTP server which allows " | |
16653 | "anyone with network access to obtain substitutes from it. This means that " | |
16654 | "any machine running Guix can also act as if it were a build farm, since the " | |
39764ef8 JL |
16655 | "HTTP interface is compatible with Hydra, the software behind the @code{hydra." |
16656 | "gnu.org} build farm." | |
b9fe8fd6 JL |
16657 | msgstr "" |
16658 | ||
16659 | #. type: Plain text | |
16660 | #: doc/guix.texi:7447 | |
16661 | msgid "" | |
16662 | "For security, each substitute is signed, allowing recipients to check their " | |
16663 | "authenticity and integrity (@pxref{Substitutes}). Because @command{guix " | |
16664 | "publish} uses the signing key of the system, which is only readable by the " | |
16665 | "system administrator, it must be started as root; the @code{--user} option " | |
16666 | "makes it drop root privileges early on." | |
16667 | msgstr "" | |
16668 | ||
16669 | #. type: Plain text | |
16670 | #: doc/guix.texi:7451 | |
16671 | msgid "" | |
16672 | "The signing key pair must be generated before @command{guix publish} is " | |
16673 | "launched, using @command{guix archive --generate-key} (@pxref{Invoking guix " | |
16674 | "archive})." | |
16675 | msgstr "" | |
16676 | ||
16677 | #. type: example | |
16678 | #: doc/guix.texi:7456 | |
16679 | #, no-wrap | |
16680 | msgid "guix publish @var{options}@dots{}\n" | |
16681 | msgstr "" | |
16682 | ||
16683 | #. type: Plain text | |
16684 | #: doc/guix.texi:7460 | |
16685 | msgid "" | |
16686 | "Running @command{guix publish} without any additional arguments will spawn " | |
16687 | "an HTTP server on port 8080:" | |
16688 | msgstr "" | |
16689 | ||
16690 | #. type: example | |
16691 | #: doc/guix.texi:7463 | |
16692 | #, no-wrap | |
16693 | msgid "guix publish\n" | |
16694 | msgstr "" | |
16695 | ||
16696 | #. type: Plain text | |
16697 | #: doc/guix.texi:7467 | |
16698 | msgid "" | |
16699 | "Once a publishing server has been authorized (@pxref{Invoking guix " | |
16700 | "archive}), the daemon may download substitutes from it:" | |
16701 | msgstr "" | |
16702 | ||
16703 | #. type: example | |
16704 | #: doc/guix.texi:7470 | |
16705 | #, no-wrap | |
16706 | msgid "guix-daemon --substitute-urls=http://example.org:8080\n" | |
16707 | msgstr "" | |
16708 | ||
16709 | #. type: Plain text | |
16710 | #: doc/guix.texi:7479 | |
16711 | msgid "" | |
16712 | "By default, @command{guix publish} compresses archives on the fly as it " | |
16713 | "serves them. This ``on-the-fly'' mode is convenient in that it requires no " | |
16714 | "setup and is immediately available. However, when serving lots of clients, " | |
16715 | "we recommend using the @option{--cache} option, which enables caching of the " | |
16716 | "archives before they are sent to clients---see below for details. The " | |
16717 | "@command{guix weather} command provides a handy way to check what a server " | |
16718 | "provides (@pxref{Invoking guix weather})." | |
16719 | msgstr "" | |
16720 | ||
16721 | #. type: Plain text | |
16722 | #: doc/guix.texi:7486 | |
16723 | msgid "" | |
16724 | "As a bonus, @command{guix publish} also serves as a content-addressed mirror " | |
16725 | "for source files referenced in @code{origin} records (@pxref{origin " | |
16726 | "Reference}). For instance, assuming @command{guix publish} is running on " | |
39764ef8 JL |
16727 | "@code{example.org}, the following URL returns the raw @file{hello-2.10.tar." |
16728 | "gz} file with the given SHA256 hash (represented in @code{nix-base32} " | |
16729 | "format, @pxref{Invoking guix hash}):" | |
b9fe8fd6 JL |
16730 | msgstr "" |
16731 | ||
16732 | #. type: example | |
16733 | #: doc/guix.texi:7489 | |
16734 | #, no-wrap | |
16735 | msgid "http://example.org/file/hello-2.10.tar.gz/sha256/0ssi1@dots{}ndq1i\n" | |
16736 | msgstr "" | |
16737 | ||
16738 | #. type: Plain text | |
16739 | #: doc/guix.texi:7493 | |
16740 | msgid "" | |
16741 | "Obviously, these URLs only work for files that are in the store; in other " | |
16742 | "cases, they return 404 (``Not Found'')." | |
16743 | msgstr "" | |
16744 | ||
16745 | #. type: cindex | |
16746 | #: doc/guix.texi:7494 | |
16747 | #, no-wrap | |
16748 | msgid "build logs, publication" | |
16749 | msgstr "" | |
16750 | ||
16751 | #. type: Plain text | |
16752 | #: doc/guix.texi:7496 | |
16753 | msgid "Build logs are available from @code{/log} URLs like:" | |
16754 | msgstr "" | |
16755 | ||
16756 | #. type: example | |
16757 | #: doc/guix.texi:7499 | |
16758 | #, no-wrap | |
16759 | msgid "http://example.org/log/gwspk@dots{}-guile-2.2.3\n" | |
16760 | msgstr "" | |
16761 | ||
16762 | #. type: Plain text | |
16763 | #: doc/guix.texi:7509 | |
16764 | msgid "" | |
16765 | "When @command{guix-daemon} is configured to save compressed build logs, as " | |
16766 | "is the case by default (@pxref{Invoking guix-daemon}), @code{/log} URLs " | |
39764ef8 JL |
16767 | "return the compressed log as-is, with an appropriate @code{Content-Type} and/" |
16768 | "or @code{Content-Encoding} header. We recommend running @command{guix-" | |
16769 | "daemon} with @code{--log-compression=gzip} since Web browsers can " | |
16770 | "automatically decompress it, which is not the case with bzip2 compression." | |
b9fe8fd6 JL |
16771 | msgstr "" |
16772 | ||
16773 | #. type: item | |
16774 | #: doc/guix.texi:7513 | |
16775 | #, no-wrap | |
16776 | msgid "--port=@var{port}" | |
16777 | msgstr "" | |
16778 | ||
16779 | #. type: itemx | |
16780 | #: doc/guix.texi:7514 | |
16781 | #, no-wrap | |
16782 | msgid "-p @var{port}" | |
16783 | msgstr "" | |
16784 | ||
16785 | #. type: table | |
16786 | #: doc/guix.texi:7516 | |
16787 | msgid "Listen for HTTP requests on @var{port}." | |
16788 | msgstr "" | |
16789 | ||
16790 | #. type: item | |
39764ef8 | 16791 | #: doc/guix.texi:7517 doc/guix.texi:17032 |
b9fe8fd6 JL |
16792 | #, no-wrap |
16793 | msgid "--listen=@var{host}" | |
16794 | msgstr "" | |
16795 | ||
16796 | #. type: table | |
16797 | #: doc/guix.texi:7520 | |
16798 | msgid "" | |
16799 | "Listen on the network interface for @var{host}. The default is to accept " | |
16800 | "connections from any interface." | |
16801 | msgstr "" | |
16802 | ||
16803 | #. type: table | |
16804 | #: doc/guix.texi:7525 | |
16805 | msgid "" | |
16806 | "Change privileges to @var{user} as soon as possible---i.e., once the server " | |
16807 | "socket is open and the signing key has been read." | |
16808 | msgstr "" | |
16809 | ||
16810 | #. type: item | |
16811 | #: doc/guix.texi:7526 | |
16812 | #, no-wrap | |
16813 | msgid "--compression[=@var{level}]" | |
16814 | msgstr "" | |
16815 | ||
16816 | #. type: itemx | |
16817 | #: doc/guix.texi:7527 | |
16818 | #, no-wrap | |
16819 | msgid "-C [@var{level}]" | |
16820 | msgstr "" | |
16821 | ||
16822 | #. type: table | |
16823 | #: doc/guix.texi:7532 | |
16824 | msgid "" | |
16825 | "Compress data using the given @var{level}. When @var{level} is zero, " | |
16826 | "disable compression. The range 1 to 9 corresponds to different gzip " | |
16827 | "compression levels: 1 is the fastest, and 9 is the best (CPU-intensive). " | |
16828 | "The default is 3." | |
16829 | msgstr "" | |
16830 | ||
16831 | #. type: table | |
16832 | #: doc/guix.texi:7541 | |
16833 | msgid "" | |
16834 | "Unless @option{--cache} is used, compression occurs on the fly and the " | |
16835 | "compressed streams are not cached. Thus, to reduce load on the machine that " | |
16836 | "runs @command{guix publish}, it may be a good idea to choose a low " | |
16837 | "compression level, to run @command{guix publish} behind a caching proxy, or " | |
16838 | "to use @option{--cache}. Using @option{--cache} has the advantage that it " | |
16839 | "allows @command{guix publish} to add @code{Content-Length} HTTP header to " | |
16840 | "its responses." | |
16841 | msgstr "" | |
16842 | ||
16843 | #. type: item | |
16844 | #: doc/guix.texi:7542 | |
16845 | #, no-wrap | |
16846 | msgid "--cache=@var{directory}" | |
16847 | msgstr "" | |
16848 | ||
16849 | #. type: itemx | |
16850 | #: doc/guix.texi:7543 | |
16851 | #, no-wrap | |
16852 | msgid "-c @var{directory}" | |
16853 | msgstr "" | |
16854 | ||
16855 | #. type: table | |
16856 | #: doc/guix.texi:7546 | |
16857 | msgid "" | |
16858 | "Cache archives and meta-data (@code{.narinfo} URLs) to @var{directory} and " | |
16859 | "only serve archives that are in cache." | |
16860 | msgstr "" | |
16861 | ||
16862 | #. type: table | |
16863 | #: doc/guix.texi:7554 | |
16864 | msgid "" | |
16865 | "When this option is omitted, archives and meta-data are created on-the-fly. " | |
16866 | "This can reduce the available bandwidth, especially when compression is " | |
16867 | "enabled, since this may become CPU-bound. Another drawback of the default " | |
16868 | "mode is that the length of archives is not known in advance, so " | |
16869 | "@command{guix publish} does not add a @code{Content-Length} HTTP header to " | |
16870 | "its responses, which in turn prevents clients from knowing the amount of " | |
16871 | "data being downloaded." | |
16872 | msgstr "" | |
16873 | ||
16874 | #. type: table | |
16875 | #: doc/guix.texi:7562 | |
16876 | msgid "" | |
16877 | "Conversely, when @option{--cache} is used, the first request for a store " | |
16878 | "item (@i{via} a @code{.narinfo} URL) returns 404 and triggers a background " | |
16879 | "process to @dfn{bake} the archive---computing its @code{.narinfo} and " | |
16880 | "compressing the archive, if needed. Once the archive is cached in " | |
16881 | "@var{directory}, subsequent requests succeed and are served directly from " | |
16882 | "the cache, which guarantees that clients get the best possible bandwidth." | |
16883 | msgstr "" | |
16884 | ||
16885 | #. type: table | |
16886 | #: doc/guix.texi:7566 | |
16887 | msgid "" | |
16888 | "The ``baking'' process is performed by worker threads. By default, one " | |
39764ef8 JL |
16889 | "thread per CPU core is created, but this can be customized. See @option{--" |
16890 | "workers} below." | |
b9fe8fd6 JL |
16891 | msgstr "" |
16892 | ||
16893 | #. type: table | |
16894 | #: doc/guix.texi:7569 | |
16895 | msgid "" | |
16896 | "When @option{--ttl} is used, cached entries are automatically deleted when " | |
16897 | "they have expired." | |
16898 | msgstr "" | |
16899 | ||
16900 | #. type: item | |
16901 | #: doc/guix.texi:7570 | |
16902 | #, no-wrap | |
16903 | msgid "--workers=@var{N}" | |
16904 | msgstr "" | |
16905 | ||
16906 | #. type: table | |
16907 | #: doc/guix.texi:7573 | |
16908 | msgid "" | |
16909 | "When @option{--cache} is used, request the allocation of @var{N} worker " | |
16910 | "threads to ``bake'' archives." | |
16911 | msgstr "" | |
16912 | ||
16913 | #. type: item | |
16914 | #: doc/guix.texi:7574 | |
16915 | #, no-wrap | |
16916 | msgid "--ttl=@var{ttl}" | |
16917 | msgstr "" | |
16918 | ||
16919 | #. type: table | |
16920 | #: doc/guix.texi:7578 | |
16921 | msgid "" | |
16922 | "Produce @code{Cache-Control} HTTP headers that advertise a time-to-live " | |
16923 | "(TTL) of @var{ttl}. @var{ttl} must denote a duration: @code{5d} means 5 " | |
16924 | "days, @code{1m} means 1 month, and so on." | |
16925 | msgstr "" | |
16926 | ||
16927 | #. type: table | |
16928 | #: doc/guix.texi:7583 | |
16929 | msgid "" | |
16930 | "This allows the user's Guix to keep substitute information in cache for " | |
16931 | "@var{ttl}. However, note that @code{guix publish} does not itself guarantee " | |
16932 | "that the store items it provides will indeed remain available for as long as " | |
16933 | "@var{ttl}." | |
16934 | msgstr "" | |
16935 | ||
16936 | #. type: table | |
16937 | #: doc/guix.texi:7587 | |
16938 | msgid "" | |
16939 | "Additionally, when @option{--cache} is used, cached entries that have not " | |
16940 | "been accessed for @var{ttl} and that no longer have a corresponding item in " | |
16941 | "the store, may be deleted." | |
16942 | msgstr "" | |
16943 | ||
16944 | #. type: item | |
16945 | #: doc/guix.texi:7588 | |
16946 | #, no-wrap | |
16947 | msgid "--nar-path=@var{path}" | |
16948 | msgstr "" | |
16949 | ||
16950 | #. type: table | |
16951 | #: doc/guix.texi:7591 | |
16952 | msgid "" | |
16953 | "Use @var{path} as the prefix for the URLs of ``nar'' files (@pxref{Invoking " | |
16954 | "guix archive, normalized archives})." | |
16955 | msgstr "" | |
16956 | ||
16957 | #. type: table | |
16958 | #: doc/guix.texi:7595 | |
16959 | msgid "" | |
39764ef8 JL |
16960 | "By default, nars are served at a URL such as @code{/nar/gzip/@dots{}-" |
16961 | "coreutils-8.25}. This option allows you to change the @code{/nar} part to " | |
16962 | "@var{path}." | |
b9fe8fd6 JL |
16963 | msgstr "" |
16964 | ||
16965 | #. type: item | |
16966 | #: doc/guix.texi:7596 | |
16967 | #, no-wrap | |
16968 | msgid "--public-key=@var{file}" | |
16969 | msgstr "" | |
16970 | ||
16971 | #. type: itemx | |
16972 | #: doc/guix.texi:7597 | |
16973 | #, no-wrap | |
16974 | msgid "--private-key=@var{file}" | |
16975 | msgstr "" | |
16976 | ||
16977 | #. type: table | |
16978 | #: doc/guix.texi:7600 | |
16979 | msgid "" | |
16980 | "Use the specific @var{file}s as the public/private key pair used to sign the " | |
16981 | "store items being published." | |
16982 | msgstr "" | |
16983 | ||
16984 | #. type: table | |
16985 | #: doc/guix.texi:7607 | |
16986 | msgid "" | |
16987 | "The files must correspond to the same key pair (the private key is used for " | |
16988 | "signing and the public key is merely advertised in the signature metadata). " | |
16989 | "They must contain keys in the canonical s-expression format as produced by " | |
16990 | "@command{guix archive --generate-key} (@pxref{Invoking guix archive}). By " | |
39764ef8 JL |
16991 | "default, @file{/etc/guix/signing-key.pub} and @file{/etc/guix/signing-key." |
16992 | "sec} are used." | |
b9fe8fd6 JL |
16993 | msgstr "" |
16994 | ||
16995 | #. type: item | |
16996 | #: doc/guix.texi:7608 | |
16997 | #, no-wrap | |
16998 | msgid "--repl[=@var{port}]" | |
16999 | msgstr "" | |
17000 | ||
17001 | #. type: itemx | |
17002 | #: doc/guix.texi:7609 | |
17003 | #, no-wrap | |
17004 | msgid "-r [@var{port}]" | |
17005 | msgstr "" | |
17006 | ||
17007 | #. type: table | |
17008 | #: doc/guix.texi:7613 | |
17009 | msgid "" | |
17010 | "Spawn a Guile REPL server (@pxref{REPL Servers,,, guile, GNU Guile Reference " | |
17011 | "Manual}) on @var{port} (37146 by default). This is used primarily for " | |
17012 | "debugging a running @command{guix publish} server." | |
17013 | msgstr "" | |
17014 | ||
17015 | #. type: Plain text | |
17016 | #: doc/guix.texi:7619 | |
17017 | msgid "" | |
17018 | "Enabling @command{guix publish} on a GuixSD system is a one-liner: just " | |
17019 | "instantiate a @code{guix-publish-service-type} service in the " | |
17020 | "@code{services} field of the @code{operating-system} declaration " | |
17021 | "(@pxref{guix-publish-service-type, @code{guix-publish-service-type}})." | |
17022 | msgstr "" | |
17023 | ||
17024 | #. type: Plain text | |
17025 | #: doc/guix.texi:7622 | |
17026 | msgid "" | |
17027 | "If you are instead running Guix on a ``foreign distro'', follow these " | |
17028 | "instructions:”" | |
17029 | msgstr "" | |
17030 | ||
17031 | #. type: itemize | |
17032 | #: doc/guix.texi:7626 | |
17033 | msgid "If your host distro uses the systemd init system:" | |
17034 | msgstr "" | |
17035 | ||
17036 | #. type: example | |
17037 | #: doc/guix.texi:7631 | |
17038 | #, no-wrap | |
17039 | msgid "" | |
17040 | "# ln -s ~root/.guix-profile/lib/systemd/system/guix-publish.service \\\n" | |
17041 | " /etc/systemd/system/\n" | |
17042 | "# systemctl start guix-publish && systemctl enable guix-publish\n" | |
17043 | msgstr "" | |
17044 | ||
17045 | #. type: example | |
17046 | #: doc/guix.texi:7639 | |
17047 | #, no-wrap | |
17048 | msgid "" | |
39764ef8 | 17049 | "# ln -s ~root/.guix-profile/lib/upstart/system/guix-publish.conf /etc/init/\n" |
b9fe8fd6 JL |
17050 | "# start guix-publish\n" |
17051 | msgstr "" | |
17052 | ||
17053 | #. type: itemize | |
17054 | #: doc/guix.texi:7643 | |
17055 | msgid "Otherwise, proceed similarly with your distro's init system." | |
17056 | msgstr "" | |
17057 | ||
17058 | #. type: section | |
17059 | #: doc/guix.texi:7646 | |
17060 | #, no-wrap | |
17061 | msgid "Invoking @command{guix challenge}" | |
17062 | msgstr "" | |
17063 | ||
17064 | #. type: cindex | |
17065 | #: doc/guix.texi:7649 | |
17066 | #, no-wrap | |
17067 | msgid "verifiable builds" | |
17068 | msgstr "" | |
17069 | ||
17070 | #. type: command{#1} | |
17071 | #: doc/guix.texi:7650 | |
17072 | #, no-wrap | |
17073 | msgid "guix challenge" | |
17074 | msgstr "" | |
17075 | ||
17076 | #. type: cindex | |
17077 | #: doc/guix.texi:7651 | |
17078 | #, no-wrap | |
17079 | msgid "challenge" | |
17080 | msgstr "" | |
17081 | ||
17082 | #. type: Plain text | |
17083 | #: doc/guix.texi:7656 | |
17084 | msgid "" | |
17085 | "Do the binaries provided by this server really correspond to the source code " | |
17086 | "it claims to build? Is a package build process deterministic? These are the " | |
17087 | "questions the @command{guix challenge} command attempts to answer." | |
17088 | msgstr "" | |
17089 | ||
17090 | #. type: Plain text | |
17091 | #: doc/guix.texi:7664 | |
17092 | msgid "" | |
17093 | "The former is obviously an important question: Before using a substitute " | |
17094 | "server (@pxref{Substitutes}), one had better @emph{verify} that it provides " | |
17095 | "the right binaries, and thus @emph{challenge} it. The latter is what " | |
17096 | "enables the former: If package builds are deterministic, then independent " | |
17097 | "builds of the package should yield the exact same result, bit for bit; if a " | |
17098 | "server provides a binary different from the one obtained locally, it may be " | |
17099 | "either corrupt or malicious." | |
17100 | msgstr "" | |
17101 | ||
17102 | #. type: Plain text | |
17103 | #: doc/guix.texi:7673 | |
17104 | msgid "" | |
17105 | "We know that the hash that shows up in @file{/gnu/store} file names is the " | |
39764ef8 JL |
17106 | "hash of all the inputs of the process that built the file or directory---" |
17107 | "compilers, libraries, build scripts, etc. (@pxref{Introduction}). Assuming " | |
17108 | "deterministic build processes, one store file name should map to exactly one " | |
17109 | "build output. @command{guix challenge} checks whether there is, indeed, a " | |
17110 | "single mapping by comparing the build outputs of several independent builds " | |
17111 | "of any given store item." | |
b9fe8fd6 JL |
17112 | msgstr "" |
17113 | ||
17114 | #. type: Plain text | |
17115 | #: doc/guix.texi:7675 | |
17116 | msgid "The command output looks like this:" | |
17117 | msgstr "" | |
17118 | ||
17119 | #. type: smallexample | |
17120 | #: doc/guix.texi:7692 | |
17121 | #, no-wrap | |
17122 | msgid "" | |
39764ef8 | 17123 | "$ guix challenge --substitute-urls=\"https://hydra.gnu.org https://guix.example.org\"\n" |
b9fe8fd6 JL |
17124 | "updating list of substitutes from 'https://hydra.gnu.org'... 100.0%\n" |
17125 | "updating list of substitutes from 'https://guix.example.org'... 100.0%\n" | |
17126 | "/gnu/store/@dots{}-openssl-1.0.2d contents differ:\n" | |
17127 | " local hash: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q\n" | |
39764ef8 JL |
17128 | " https://hydra.gnu.org/nar/@dots{}-openssl-1.0.2d: 0725l22r5jnzazaacncwsvp9kgf42266ayyp814v7djxs7nk963q\n" |
17129 | " https://guix.example.org/nar/@dots{}-openssl-1.0.2d: 1zy4fmaaqcnjrzzajkdn3f5gmjk754b43qkq47llbyak9z0qjyim\n" | |
b9fe8fd6 JL |
17130 | "/gnu/store/@dots{}-git-2.5.0 contents differ:\n" |
17131 | " local hash: 00p3bmryhjxrhpn2gxs2fy0a15lnip05l97205pgbk5ra395hyha\n" | |
39764ef8 JL |
17132 | " https://hydra.gnu.org/nar/@dots{}-git-2.5.0: 069nb85bv4d4a6slrwjdy8v1cn4cwspm3kdbmyb81d6zckj3nq9f\n" |
17133 | " https://guix.example.org/nar/@dots{}-git-2.5.0: 0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73\n" | |
b9fe8fd6 JL |
17134 | "/gnu/store/@dots{}-pius-2.1.1 contents differ:\n" |
17135 | " local hash: 0k4v3m9z1zp8xzzizb7d8kjj72f9172xv078sq4wl73vnq9ig3ax\n" | |
39764ef8 JL |
17136 | " https://hydra.gnu.org/nar/@dots{}-pius-2.1.1: 0k4v3m9z1zp8xzzizb7d8kjj72f9172xv078sq4wl73vnq9ig3ax\n" |
17137 | " https://guix.example.org/nar/@dots{}-pius-2.1.1: 1cy25x1a4fzq5rk0pmvc8xhwyffnqz95h2bpvqsz2mpvlbccy0gs\n" | |
b9fe8fd6 JL |
17138 | "\n" |
17139 | msgstr "" | |
17140 | ||
17141 | #. type: smallexample | |
17142 | #: doc/guix.texi:7694 | |
17143 | #, no-wrap | |
17144 | msgid "" | |
17145 | "@dots{}\n" | |
17146 | "\n" | |
17147 | msgstr "" | |
17148 | ||
17149 | #. type: smallexample | |
17150 | #: doc/guix.texi:7699 | |
17151 | #, no-wrap | |
17152 | msgid "" | |
17153 | "6,406 store items were analyzed:\n" | |
17154 | " - 4,749 (74.1%) were identical\n" | |
17155 | " - 525 (8.2%) differed\n" | |
17156 | " - 1,132 (17.7%) were inconclusive\n" | |
17157 | msgstr "" | |
17158 | ||
17159 | #. type: Plain text | |
17160 | #: doc/guix.texi:7707 | |
17161 | msgid "" | |
17162 | "In this example, @command{guix challenge} first scans the store to determine " | |
17163 | "the set of locally-built derivations---as opposed to store items that were " | |
17164 | "downloaded from a substitute server---and then queries all the substitute " | |
17165 | "servers. It then reports those store items for which the servers obtained a " | |
17166 | "result different from the local build." | |
17167 | msgstr "" | |
17168 | ||
17169 | #. type: cindex | |
17170 | #: doc/guix.texi:7708 | |
17171 | #, no-wrap | |
17172 | msgid "non-determinism, in package builds" | |
17173 | msgstr "" | |
17174 | ||
17175 | #. type: Plain text | |
17176 | #: doc/guix.texi:7719 | |
17177 | msgid "" | |
17178 | "As an example, @code{guix.example.org} always gets a different answer. " | |
17179 | "Conversely, @code{hydra.gnu.org} agrees with local builds, except in the " | |
39764ef8 JL |
17180 | "case of Git. This might indicate that the build process of Git is non-" |
17181 | "deterministic, meaning that its output varies as a function of various " | |
b9fe8fd6 | 17182 | "things that Guix does not fully control, in spite of building packages in " |
39764ef8 JL |
17183 | "isolated environments (@pxref{Features}). Most common sources of non-" |
17184 | "determinism include the addition of timestamps in build results, the " | |
b9fe8fd6 JL |
17185 | "inclusion of random numbers, and directory listings sorted by inode number. " |
17186 | "See @uref{https://reproducible-builds.org/docs/}, for more information." | |
17187 | msgstr "" | |
17188 | ||
17189 | #. type: Plain text | |
17190 | #: doc/guix.texi:7722 | |
17191 | msgid "" | |
17192 | "To find out what is wrong with this Git binary, we can do something along " | |
17193 | "these lines (@pxref{Invoking guix archive}):" | |
17194 | msgstr "" | |
17195 | ||
17196 | #. type: example | |
17197 | #: doc/guix.texi:7727 | |
17198 | #, no-wrap | |
17199 | msgid "" | |
17200 | "$ wget -q -O - https://hydra.gnu.org/nar/@dots{}-git-2.5.0 \\\n" | |
17201 | " | guix archive -x /tmp/git\n" | |
17202 | "$ diff -ur --no-dereference /gnu/store/@dots{}-git.2.5.0 /tmp/git\n" | |
17203 | msgstr "" | |
17204 | ||
17205 | #. type: Plain text | |
17206 | #: doc/guix.texi:7736 | |
17207 | msgid "" | |
17208 | "This command shows the difference between the files resulting from the local " | |
17209 | "build, and the files resulting from the build on @code{hydra.gnu.org} " | |
17210 | "(@pxref{Overview, Comparing and Merging Files,, diffutils, Comparing and " | |
17211 | "Merging Files}). The @command{diff} command works great for text files. " | |
17212 | "When binary files differ, a better option is @uref{https://diffoscope.org/, " | |
17213 | "Diffoscope}, a tool that helps visualize differences for all kinds of files." | |
17214 | msgstr "" | |
17215 | ||
17216 | #. type: Plain text | |
17217 | #: doc/guix.texi:7744 | |
17218 | msgid "" | |
17219 | "Once you have done that work, you can tell whether the differences are due " | |
17220 | "to a non-deterministic build process or to a malicious server. We try hard " | |
17221 | "to remove sources of non-determinism in packages to make it easier to verify " | |
17222 | "substitutes, but of course, this is a process that involves not just Guix, " | |
17223 | "but a large part of the free software community. In the meantime, " | |
17224 | "@command{guix challenge} is one tool to help address the problem." | |
17225 | msgstr "" | |
17226 | ||
17227 | #. type: Plain text | |
17228 | #: doc/guix.texi:7748 | |
17229 | msgid "" | |
17230 | "If you are writing packages for Guix, you are encouraged to check whether " | |
17231 | "@code{hydra.gnu.org} and other substitute servers obtain the same build " | |
17232 | "result as you did with:" | |
17233 | msgstr "" | |
17234 | ||
17235 | #. type: example | |
17236 | #: doc/guix.texi:7751 | |
17237 | #, no-wrap | |
17238 | msgid "$ guix challenge @var{package}\n" | |
17239 | msgstr "" | |
17240 | ||
17241 | #. type: Plain text | |
17242 | #: doc/guix.texi:7756 | |
17243 | msgid "" | |
17244 | "where @var{package} is a package specification such as @code{guile@@2.0} or " | |
17245 | "@code{glibc:debug}." | |
17246 | msgstr "" | |
17247 | ||
17248 | #. type: example | |
17249 | #: doc/guix.texi:7761 | |
17250 | #, no-wrap | |
17251 | msgid "guix challenge @var{options} [@var{packages}@dots{}]\n" | |
17252 | msgstr "" | |
17253 | ||
17254 | #. type: Plain text | |
17255 | #: doc/guix.texi:7768 | |
17256 | msgid "" | |
17257 | "When a difference is found between the hash of a locally-built item and that " | |
17258 | "of a server-provided substitute, or among substitutes provided by different " | |
17259 | "servers, the command displays it as in the example above and its exit code " | |
17260 | "is 2 (other non-zero exit codes denote other kinds of errors.)" | |
17261 | msgstr "" | |
17262 | ||
17263 | #. type: Plain text | |
17264 | #: doc/guix.texi:7770 | |
17265 | msgid "The one option that matters is:" | |
17266 | msgstr "" | |
17267 | ||
17268 | #. type: table | |
17269 | #: doc/guix.texi:7776 | |
17270 | msgid "" | |
17271 | "Consider @var{urls} the whitespace-separated list of substitute source URLs " | |
17272 | "to compare to." | |
17273 | msgstr "" | |
17274 | ||
17275 | #. type: itemx | |
17276 | #: doc/guix.texi:7778 | |
17277 | #, no-wrap | |
17278 | msgid "-v" | |
17279 | msgstr "" | |
17280 | ||
17281 | #. type: table | |
17282 | #: doc/guix.texi:7781 | |
17283 | msgid "" | |
17284 | "Show details about matches (identical contents) in addition to information " | |
17285 | "about mismatches." | |
17286 | msgstr "" | |
17287 | ||
17288 | #. type: section | |
17289 | #: doc/guix.texi:7785 | |
17290 | #, no-wrap | |
17291 | msgid "Invoking @command{guix copy}" | |
17292 | msgstr "" | |
17293 | ||
17294 | #. type: cindex | |
17295 | #: doc/guix.texi:7787 | |
17296 | #, no-wrap | |
17297 | msgid "copy, of store items, over SSH" | |
17298 | msgstr "" | |
17299 | ||
17300 | #. type: cindex | |
17301 | #: doc/guix.texi:7788 | |
17302 | #, no-wrap | |
17303 | msgid "SSH, copy of store items" | |
17304 | msgstr "" | |
17305 | ||
17306 | #. type: cindex | |
17307 | #: doc/guix.texi:7789 | |
17308 | #, no-wrap | |
17309 | msgid "sharing store items across machines" | |
17310 | msgstr "" | |
17311 | ||
17312 | #. type: cindex | |
17313 | #: doc/guix.texi:7790 | |
17314 | #, no-wrap | |
17315 | msgid "transferring store items across machines" | |
17316 | msgstr "" | |
17317 | ||
17318 | #. type: Plain text | |
17319 | #: doc/guix.texi:7797 | |
17320 | msgid "" | |
17321 | "The @command{guix copy} command copies items from the store of one machine " | |
17322 | "to that of another machine over a secure shell (SSH) " | |
17323 | "connection@footnote{This command is available only when Guile-SSH was " | |
17324 | "found. @xref{Requirements}, for details.}. For example, the following " | |
17325 | "command copies the @code{coreutils} package, the user's profile, and all " | |
17326 | "their dependencies over to @var{host}, logged in as @var{user}:" | |
17327 | msgstr "" | |
17328 | ||
17329 | #. type: example | |
17330 | #: doc/guix.texi:7801 | |
17331 | #, no-wrap | |
17332 | msgid "" | |
17333 | "guix copy --to=@var{user}@@@var{host} \\\n" | |
17334 | " coreutils `readlink -f ~/.guix-profile`\n" | |
17335 | msgstr "" | |
17336 | ||
17337 | #. type: Plain text | |
17338 | #: doc/guix.texi:7805 | |
17339 | msgid "" | |
17340 | "If some of the items to be copied are already present on @var{host}, they " | |
17341 | "are not actually sent." | |
17342 | msgstr "" | |
17343 | ||
17344 | #. type: Plain text | |
17345 | #: doc/guix.texi:7808 | |
17346 | msgid "" | |
17347 | "The command below retrieves @code{libreoffice} and @code{gimp} from " | |
17348 | "@var{host}, assuming they are available there:" | |
17349 | msgstr "" | |
17350 | ||
17351 | #. type: example | |
17352 | #: doc/guix.texi:7811 | |
17353 | #, no-wrap | |
17354 | msgid "guix copy --from=@var{host} libreoffice gimp\n" | |
17355 | msgstr "" | |
17356 | ||
17357 | #. type: Plain text | |
17358 | #: doc/guix.texi:7816 | |
17359 | msgid "" | |
17360 | "The SSH connection is established using the Guile-SSH client, which is " | |
39764ef8 JL |
17361 | "compatible with OpenSSH: it honors @file{~/.ssh/known_hosts} and @file{~/." |
17362 | "ssh/config}, and uses the SSH agent for authentication." | |
b9fe8fd6 JL |
17363 | msgstr "" |
17364 | ||
17365 | #. type: Plain text | |
17366 | #: doc/guix.texi:7822 | |
17367 | msgid "" | |
17368 | "The key used to sign items that are sent must be accepted by the remote " | |
17369 | "machine. Likewise, the key used by the remote machine to sign items you are " | |
17370 | "retrieving must be in @file{/etc/guix/acl} so it is accepted by your own " | |
17371 | "daemon. @xref{Invoking guix archive}, for more information about store item " | |
17372 | "authentication." | |
17373 | msgstr "" | |
17374 | ||
17375 | #. type: example | |
17376 | #: doc/guix.texi:7827 | |
17377 | #, no-wrap | |
17378 | msgid "guix copy [--to=@var{spec}|--from=@var{spec}] @var{items}@dots{}\n" | |
17379 | msgstr "" | |
17380 | ||
17381 | #. type: Plain text | |
17382 | #: doc/guix.texi:7830 | |
17383 | msgid "You must always specify one of the following options:" | |
17384 | msgstr "" | |
17385 | ||
17386 | #. type: item | |
17387 | #: doc/guix.texi:7832 | |
17388 | #, no-wrap | |
17389 | msgid "--to=@var{spec}" | |
17390 | msgstr "" | |
17391 | ||
17392 | #. type: itemx | |
17393 | #: doc/guix.texi:7833 | |
17394 | #, no-wrap | |
17395 | msgid "--from=@var{spec}" | |
17396 | msgstr "" | |
17397 | ||
17398 | #. type: table | |
17399 | #: doc/guix.texi:7837 | |
17400 | msgid "" | |
17401 | "Specify the host to send to or receive from. @var{spec} must be an SSH spec " | |
17402 | "such as @code{example.org}, @code{charlie@@example.org}, or " | |
17403 | "@code{charlie@@example.org:2222}." | |
17404 | msgstr "" | |
17405 | ||
17406 | #. type: Plain text | |
17407 | #: doc/guix.texi:7841 | |
17408 | msgid "" | |
17409 | "The @var{items} can be either package names, such as @code{gimp}, or store " | |
17410 | "items, such as @file{/gnu/store/@dots{}-idutils-4.6}." | |
17411 | msgstr "" | |
17412 | ||
17413 | #. type: Plain text | |
17414 | #: doc/guix.texi:7845 | |
17415 | msgid "" | |
17416 | "When specifying the name of a package to send, it is first built if needed, " | |
17417 | "unless @option{--dry-run} was specified. Common build options are supported " | |
17418 | "(@pxref{Common Build Options})." | |
17419 | msgstr "" | |
17420 | ||
17421 | #. type: section | |
17422 | #: doc/guix.texi:7848 | |
17423 | #, no-wrap | |
17424 | msgid "Invoking @command{guix container}" | |
17425 | msgstr "" | |
17426 | ||
17427 | #. type: command{#1} | |
17428 | #: doc/guix.texi:7850 | |
17429 | #, no-wrap | |
17430 | msgid "guix container" | |
17431 | msgstr "" | |
17432 | ||
17433 | #. type: quotation | |
17434 | #: doc/guix.texi:7854 | |
17435 | msgid "" | |
17436 | "As of version @value{VERSION}, this tool is experimental. The interface is " | |
17437 | "subject to radical change in the future." | |
17438 | msgstr "" | |
17439 | ||
17440 | #. type: Plain text | |
17441 | #: doc/guix.texi:7861 | |
17442 | msgid "" | |
17443 | "The purpose of @command{guix container} is to manipulate processes running " | |
17444 | "within an isolated environment, commonly known as a ``container'', typically " | |
17445 | "created by the @command{guix environment} (@pxref{Invoking guix " | |
17446 | "environment}) and @command{guix system container} (@pxref{Invoking guix " | |
17447 | "system}) commands." | |
17448 | msgstr "" | |
17449 | ||
17450 | #. type: example | |
17451 | #: doc/guix.texi:7866 | |
17452 | #, no-wrap | |
17453 | msgid "guix container @var{action} @var{options}@dots{}\n" | |
17454 | msgstr "" | |
17455 | ||
17456 | #. type: Plain text | |
17457 | #: doc/guix.texi:7870 | |
17458 | msgid "" | |
17459 | "@var{action} specifies the operation to perform with a container, and " | |
17460 | "@var{options} specifies the context-specific arguments for the action." | |
17461 | msgstr "" | |
17462 | ||
17463 | #. type: Plain text | |
17464 | #: doc/guix.texi:7872 | |
17465 | msgid "The following actions are available:" | |
17466 | msgstr "" | |
17467 | ||
17468 | #. type: item | |
17469 | #: doc/guix.texi:7874 | |
17470 | #, no-wrap | |
17471 | msgid "exec" | |
17472 | msgstr "" | |
17473 | ||
17474 | #. type: table | |
17475 | #: doc/guix.texi:7876 | |
17476 | msgid "Execute a command within the context of a running container." | |
17477 | msgstr "" | |
17478 | ||
17479 | #. type: table | |
17480 | #: doc/guix.texi:7878 | |
17481 | msgid "The syntax is:" | |
17482 | msgstr "" | |
17483 | ||
17484 | #. type: example | |
17485 | #: doc/guix.texi:7881 | |
17486 | #, no-wrap | |
17487 | msgid "guix container exec @var{pid} @var{program} @var{arguments}@dots{}\n" | |
17488 | msgstr "" | |
17489 | ||
17490 | #. type: table | |
17491 | #: doc/guix.texi:7887 | |
17492 | msgid "" | |
17493 | "@var{pid} specifies the process ID of the running container. @var{program} " | |
17494 | "specifies an executable file name within the root file system of the " | |
17495 | "container. @var{arguments} are the additional options that will be passed " | |
17496 | "to @var{program}." | |
17497 | msgstr "" | |
17498 | ||
17499 | #. type: table | |
17500 | #: doc/guix.texi:7891 | |
17501 | msgid "" | |
17502 | "The following command launches an interactive login shell inside a GuixSD " | |
17503 | "container, started by @command{guix system container}, and whose process ID " | |
17504 | "is 9001:" | |
17505 | msgstr "" | |
17506 | ||
17507 | #. type: example | |
17508 | #: doc/guix.texi:7894 | |
17509 | #, no-wrap | |
17510 | msgid "guix container exec 9001 /run/current-system/profile/bin/bash --login\n" | |
17511 | msgstr "" | |
17512 | ||
17513 | #. type: table | |
17514 | #: doc/guix.texi:7898 | |
17515 | msgid "" | |
17516 | "Note that the @var{pid} cannot be the parent process of a container. It " | |
17517 | "must be PID 1 of the container or one of its child processes." | |
17518 | msgstr "" | |
17519 | ||
17520 | #. type: section | |
17521 | #: doc/guix.texi:7902 | |
17522 | #, no-wrap | |
17523 | msgid "Invoking @command{guix weather}" | |
17524 | msgstr "" | |
17525 | ||
17526 | #. type: Plain text | |
17527 | #: doc/guix.texi:7911 | |
17528 | msgid "" | |
17529 | "Occasionally you're grumpy because substitutes are lacking and you end up " | |
17530 | "building packages by yourself (@pxref{Substitutes}). The @command{guix " | |
17531 | "weather} command reports on substitute availability on the specified servers " | |
17532 | "so you can have an idea of whether you'll be grumpy today. It can sometimes " | |
17533 | "be useful info as a user, but it is primarily useful to people running " | |
17534 | "@command{guix publish} (@pxref{Invoking guix publish})." | |
17535 | msgstr "" | |
17536 | ||
17537 | #. type: cindex | |
17538 | #: doc/guix.texi:7912 | |
17539 | #, no-wrap | |
17540 | msgid "statistics, for substitutes" | |
17541 | msgstr "" | |
17542 | ||
17543 | #. type: cindex | |
17544 | #: doc/guix.texi:7913 | |
17545 | #, no-wrap | |
17546 | msgid "availability of substitutes" | |
17547 | msgstr "" | |
17548 | ||
17549 | #. type: cindex | |
17550 | #: doc/guix.texi:7914 | |
17551 | #, no-wrap | |
17552 | msgid "substitute availability" | |
17553 | msgstr "" | |
17554 | ||
17555 | #. type: cindex | |
17556 | #: doc/guix.texi:7915 | |
17557 | #, no-wrap | |
17558 | msgid "weather, substitute availability" | |
17559 | msgstr "" | |
17560 | ||
17561 | #. type: Plain text | |
17562 | #: doc/guix.texi:7917 | |
17563 | msgid "Here's a sample run:" | |
17564 | msgstr "" | |
17565 | ||
17566 | #. type: example | |
17567 | #: doc/guix.texi:7929 | |
17568 | #, no-wrap | |
17569 | msgid "" | |
17570 | "$ guix weather --substitute-urls=https://guix.example.org\n" | |
17571 | "computing 5,872 package derivations for x86_64-linux...\n" | |
17572 | "looking for 6,128 store items on https://guix.example.org..\n" | |
17573 | "updating list of substitutes from 'https://guix.example.org'... 100.0%\n" | |
17574 | "https://guix.example.org\n" | |
17575 | " 43.4% substitutes available (2,658 out of 6,128)\n" | |
17576 | " 7,032.5 MiB of nars (compressed)\n" | |
17577 | " 19,824.2 MiB on disk (uncompressed)\n" | |
17578 | " 0.030 seconds per request (182.9 seconds in total)\n" | |
17579 | " 33.5 requests per second\n" | |
17580 | "\n" | |
17581 | msgstr "" | |
17582 | ||
17583 | #. type: example | |
17584 | #: doc/guix.texi:7939 | |
17585 | #, no-wrap | |
17586 | msgid "" | |
17587 | " 9.8% (342 out of 3,470) of the missing items are queued\n" | |
17588 | " 867 queued builds\n" | |
17589 | " x86_64-linux: 518 (59.7%)\n" | |
17590 | " i686-linux: 221 (25.5%)\n" | |
17591 | " aarch64-linux: 128 (14.8%)\n" | |
17592 | " build rate: 23.41 builds per hour\n" | |
17593 | " x86_64-linux: 11.16 builds per hour\n" | |
17594 | " i686-linux: 6.03 builds per hour\n" | |
17595 | " aarch64-linux: 6.41 builds per hour\n" | |
17596 | msgstr "" | |
17597 | ||
17598 | #. type: cindex | |
17599 | #: doc/guix.texi:7941 | |
17600 | #, no-wrap | |
17601 | msgid "continuous integration, statistics" | |
17602 | msgstr "" | |
17603 | ||
17604 | #. type: Plain text | |
17605 | #: doc/guix.texi:7950 | |
17606 | msgid "" | |
17607 | "As you can see, it reports the fraction of all the packages for which " | |
17608 | "substitutes are available on the server---regardless of whether substitutes " | |
17609 | "are enabled, and regardless of whether this server's signing key is " | |
17610 | "authorized. It also reports the size of the compressed archives (``nars'') " | |
17611 | "provided by the server, the size the corresponding store items occupy in the " | |
17612 | "store (assuming deduplication is turned off), and the server's throughput. " | |
17613 | "The second part gives continuous integration (CI) statistics, if the server " | |
17614 | "supports it." | |
17615 | msgstr "" | |
17616 | ||
17617 | #. type: Plain text | |
17618 | #: doc/guix.texi:7956 | |
17619 | msgid "" | |
17620 | "To achieve that, @command{guix weather} queries over HTTP(S) meta-data " | |
17621 | "(@dfn{narinfos}) for all the relevant store items. Like @command{guix " | |
17622 | "challenge}, it ignores signatures on those substitutes, which is innocuous " | |
17623 | "since the command only gathers statistics and cannot install those " | |
17624 | "substitutes." | |
17625 | msgstr "" | |
17626 | ||
17627 | #. type: Plain text | |
17628 | #: doc/guix.texi:7959 | |
17629 | msgid "" | |
17630 | "Among other things, it is possible to query specific system types and " | |
17631 | "specific package sets. The available options are listed below." | |
17632 | msgstr "" | |
17633 | ||
17634 | #. type: table | |
17635 | #: doc/guix.texi:7965 | |
17636 | msgid "" | |
17637 | "@var{urls} is the space-separated list of substitute server URLs to query. " | |
17638 | "When this option is omitted, the default set of substitute servers is " | |
17639 | "queried." | |
17640 | msgstr "" | |
17641 | ||
17642 | #. type: table | |
17643 | #: doc/guix.texi:7971 | |
17644 | msgid "" | |
17645 | "Query substitutes for @var{system}---e.g., @code{aarch64-linux}. This " | |
17646 | "option can be repeated, in which case @command{guix weather} will query " | |
17647 | "substitutes for several system types." | |
17648 | msgstr "" | |
17649 | ||
17650 | #. type: table | |
17651 | #: doc/guix.texi:7977 | |
17652 | msgid "" | |
17653 | "Instead of querying substitutes for all the packages, only ask for those " | |
17654 | "specified in @var{file}. @var{file} must contain a @dfn{manifest}, as with " | |
17655 | "the @code{-m} option of @command{guix package} (@pxref{Invoking guix " | |
17656 | "package})." | |
17657 | msgstr "" | |
17658 | ||
17659 | #. type: Plain text | |
17660 | #: doc/guix.texi:7995 | |
17661 | msgid "" | |
17662 | "Guix comes with a distribution of the GNU system consisting entirely of free " | |
39764ef8 JL |
17663 | "software@footnote{The term ``free'' here refers to the @url{http://www.gnu." |
17664 | "org/philosophy/free-sw.html,freedom provided to users of that software}.}. " | |
17665 | "The distribution can be installed on its own (@pxref{System Installation}), " | |
17666 | "but it is also possible to install Guix as a package manager on top of an " | |
17667 | "installed GNU/Linux system (@pxref{Installation}). To distinguish between " | |
17668 | "the two, we refer to the standalone distribution as the Guix System " | |
17669 | "Distribution, or GuixSD." | |
b9fe8fd6 JL |
17670 | msgstr "" |
17671 | ||
17672 | #. type: Plain text | |
17673 | #: doc/guix.texi:8001 | |
17674 | msgid "" | |
17675 | "The distribution provides core GNU packages such as GNU libc, GCC, and " | |
17676 | "Binutils, as well as many GNU and non-GNU applications. The complete list " | |
39764ef8 JL |
17677 | "of available packages can be browsed @url{http://www.gnu.org/software/guix/" |
17678 | "packages,on-line} or by running @command{guix package} (@pxref{Invoking guix " | |
17679 | "package}):" | |
b9fe8fd6 JL |
17680 | msgstr "" |
17681 | ||
17682 | #. type: example | |
17683 | #: doc/guix.texi:8004 | |
17684 | #, no-wrap | |
17685 | msgid "guix package --list-available\n" | |
17686 | msgstr "" | |
17687 | ||
17688 | #. type: Plain text | |
17689 | #: doc/guix.texi:8010 | |
17690 | msgid "" | |
39764ef8 JL |
17691 | "Our goal is to provide a practical 100% free software distribution of Linux-" |
17692 | "based and other variants of GNU, with a focus on the promotion and tight " | |
17693 | "integration of GNU components, and an emphasis on programs and tools that " | |
17694 | "help users exert that freedom." | |
b9fe8fd6 JL |
17695 | msgstr "" |
17696 | ||
17697 | #. type: Plain text | |
17698 | #: doc/guix.texi:8012 | |
17699 | msgid "Packages are currently available on the following platforms:" | |
17700 | msgstr "" | |
17701 | ||
17702 | #. type: item | |
17703 | #: doc/guix.texi:8015 doc/guix.texi:8180 | |
17704 | #, no-wrap | |
17705 | msgid "x86_64-linux" | |
17706 | msgstr "" | |
17707 | ||
17708 | #. type: table | |
17709 | #: doc/guix.texi:8017 | |
17710 | msgid "Intel/AMD @code{x86_64} architecture, Linux-Libre kernel;" | |
17711 | msgstr "" | |
17712 | ||
17713 | #. type: item | |
17714 | #: doc/guix.texi:8018 doc/guix.texi:8183 | |
17715 | #, no-wrap | |
17716 | msgid "i686-linux" | |
17717 | msgstr "" | |
17718 | ||
17719 | #. type: table | |
17720 | #: doc/guix.texi:8020 | |
17721 | msgid "Intel 32-bit architecture (IA32), Linux-Libre kernel;" | |
17722 | msgstr "" | |
17723 | ||
17724 | #. type: item | |
17725 | #: doc/guix.texi:8021 | |
17726 | #, no-wrap | |
17727 | msgid "armhf-linux" | |
17728 | msgstr "" | |
17729 | ||
17730 | #. type: table | |
17731 | #: doc/guix.texi:8025 | |
17732 | msgid "" | |
39764ef8 JL |
17733 | "ARMv7-A architecture with hard float, Thumb-2 and NEON, using the EABI hard-" |
17734 | "float application binary interface (ABI), and Linux-Libre kernel." | |
b9fe8fd6 JL |
17735 | msgstr "" |
17736 | ||
17737 | #. type: item | |
17738 | #: doc/guix.texi:8026 | |
17739 | #, no-wrap | |
17740 | msgid "aarch64-linux" | |
17741 | msgstr "" | |
17742 | ||
17743 | #. type: table | |
17744 | #: doc/guix.texi:8030 | |
17745 | msgid "" | |
17746 | "little-endian 64-bit ARMv8-A processors, Linux-Libre kernel. This is " | |
17747 | "currently in an experimental stage, with limited support. " | |
17748 | "@xref{Contributing}, for how to help!" | |
17749 | msgstr "" | |
17750 | ||
17751 | #. type: item | |
17752 | #: doc/guix.texi:8031 | |
17753 | #, no-wrap | |
17754 | msgid "mips64el-linux" | |
17755 | msgstr "" | |
17756 | ||
17757 | #. type: table | |
17758 | #: doc/guix.texi:8034 | |
17759 | msgid "" | |
17760 | "little-endian 64-bit MIPS processors, specifically the Loongson series, n32 " | |
17761 | "ABI, and Linux-Libre kernel." | |
17762 | msgstr "" | |
17763 | ||
17764 | #. type: Plain text | |
17765 | #: doc/guix.texi:8038 | |
39764ef8 JL |
17766 | msgid "" |
17767 | "GuixSD itself is currently only available on @code{i686} and @code{x86_64}." | |
b9fe8fd6 JL |
17768 | msgstr "" |
17769 | ||
17770 | #. type: Plain text | |
17771 | #: doc/guix.texi:8042 | |
17772 | msgid "" | |
17773 | "For information on porting to other architectures or kernels, " | |
17774 | "@pxref{Porting}." | |
17775 | msgstr "" | |
17776 | ||
17777 | #. type: Plain text | |
17778 | #: doc/guix.texi:8057 | |
17779 | msgid "" | |
17780 | "Building this distribution is a cooperative effort, and you are invited to " | |
17781 | "join! @xref{Contributing}, for information about how you can help." | |
17782 | msgstr "" | |
17783 | ||
17784 | #. type: cindex | |
17785 | #: doc/guix.texi:8061 | |
17786 | #, no-wrap | |
17787 | msgid "installing GuixSD" | |
17788 | msgstr "" | |
17789 | ||
17790 | #. type: Plain text | |
17791 | #: doc/guix.texi:8067 | |
17792 | msgid "" | |
17793 | "This section explains how to install the Guix System Distribution (GuixSD) " | |
17794 | "on a machine. The Guix package manager can also be installed on top of a " | |
17795 | "running GNU/Linux system, @pxref{Installation}." | |
17796 | msgstr "" | |
17797 | ||
17798 | #. type: quotation | |
17799 | #: doc/guix.texi:8076 | |
17800 | msgid "" | |
17801 | "You are reading this documentation with an Info reader. For details on how " | |
17802 | "to use it, hit the @key{RET} key (``return'' or ``enter'') on the link that " | |
17803 | "follows: @pxref{Top, Info reader,, info-stnd, Stand-alone GNU Info}. Hit " | |
17804 | "@kbd{l} afterwards to come back here." | |
17805 | msgstr "" | |
17806 | ||
17807 | #. type: quotation | |
17808 | #: doc/guix.texi:8079 | |
17809 | msgid "" | |
17810 | "Alternately, run @command{info info} in another tty to keep the manual " | |
17811 | "available." | |
17812 | msgstr "" | |
17813 | ||
17814 | #. type: Plain text | |
17815 | #: doc/guix.texi:8104 | |
17816 | msgid "" | |
17817 | "As of version @value{VERSION}, the Guix System Distribution (GuixSD) is not " | |
17818 | "production-ready. It may contain bugs and lack important features. Thus, " | |
17819 | "if you are looking for a stable production system that respects your freedom " | |
39764ef8 JL |
17820 | "as a computer user, a good solution at this point is to consider @url{http://" |
17821 | "www.gnu.org/distros/free-distros.html, one of the more established GNU/Linux " | |
17822 | "distributions}. We hope you can soon switch to the GuixSD without fear, of " | |
17823 | "course. In the meantime, you can also keep using your distribution and try " | |
17824 | "out the package manager on top of it (@pxref{Installation})." | |
b9fe8fd6 JL |
17825 | msgstr "" |
17826 | ||
17827 | #. type: Plain text | |
17828 | #: doc/guix.texi:8107 | |
17829 | msgid "" | |
17830 | "Before you proceed with the installation, be aware of the following " | |
17831 | "noteworthy limitations applicable to version @value{VERSION}:" | |
17832 | msgstr "" | |
17833 | ||
17834 | #. type: itemize | |
17835 | #: doc/guix.texi:8113 | |
17836 | msgid "" | |
17837 | "The installation process does not include a graphical user interface and " | |
17838 | "requires familiarity with GNU/Linux (see the following subsections to get a " | |
17839 | "feel of what that means.)" | |
17840 | msgstr "" | |
17841 | ||
17842 | #. type: itemize | |
17843 | #: doc/guix.texi:8116 | |
17844 | msgid "Support for the Logical Volume Manager (LVM) is missing." | |
17845 | msgstr "" | |
17846 | ||
17847 | #. type: itemize | |
17848 | #: doc/guix.texi:8120 | |
17849 | msgid "" | |
17850 | "More and more system services are provided (@pxref{Services}), but some may " | |
17851 | "be missing." | |
17852 | msgstr "" | |
17853 | ||
17854 | #. type: itemize | |
17855 | #: doc/guix.texi:8124 | |
17856 | msgid "" | |
17857 | "More than 6,500 packages are available, but you might occasionally find that " | |
17858 | "a useful package is missing." | |
17859 | msgstr "" | |
17860 | ||
17861 | #. type: itemize | |
17862 | #: doc/guix.texi:8129 | |
17863 | msgid "" | |
17864 | "GNOME, Xfce, LXDE, and Enlightenment are available (@pxref{Desktop " | |
17865 | "Services}), as well as a number of X11 window managers. However, some " | |
17866 | "graphical applications may be missing, as well as KDE." | |
17867 | msgstr "" | |
17868 | ||
17869 | #. type: Plain text | |
17870 | #: doc/guix.texi:8134 | |
17871 | msgid "" | |
17872 | "You have been warned! But more than a disclaimer, this is an invitation to " | |
17873 | "report issues (and success stories!), and to join us in improving it. " | |
17874 | "@xref{Contributing}, for more info." | |
17875 | msgstr "" | |
17876 | ||
17877 | #. type: cindex | |
17878 | #: doc/guix.texi:8139 | |
17879 | #, no-wrap | |
17880 | msgid "hardware support on GuixSD" | |
17881 | msgstr "" | |
17882 | ||
17883 | #. type: Plain text | |
17884 | #: doc/guix.texi:8148 | |
17885 | msgid "" | |
17886 | "GNU@tie{}GuixSD focuses on respecting the user's computing freedom. It " | |
17887 | "builds around the kernel Linux-libre, which means that only hardware for " | |
17888 | "which free software drivers and firmware exist is supported. Nowadays, a " | |
17889 | "wide range of off-the-shelf hardware is supported on GNU/Linux-libre---from " | |
17890 | "keyboards to graphics cards to scanners and Ethernet controllers. " | |
17891 | "Unfortunately, there are still areas where hardware vendors deny users " | |
17892 | "control over their own computing, and such hardware is not supported on " | |
17893 | "GuixSD." | |
17894 | msgstr "" | |
17895 | ||
17896 | #. type: cindex | |
17897 | #: doc/guix.texi:8149 | |
17898 | #, no-wrap | |
17899 | msgid "WiFi, hardware support" | |
17900 | msgstr "" | |
17901 | ||
17902 | #. type: Plain text | |
17903 | #: doc/guix.texi:8158 | |
17904 | msgid "" | |
17905 | "One of the main areas where free drivers or firmware are lacking is WiFi " | |
17906 | "devices. WiFi devices known to work include those using Atheros chips " | |
17907 | "(AR9271 and AR7010), which corresponds to the @code{ath9k} Linux-libre " | |
17908 | "driver, and those using Broadcom/AirForce chips (BCM43xx with Wireless-Core " | |
17909 | "Revision 5), which corresponds to the @code{b43-open} Linux-libre driver. " | |
17910 | "Free firmware exists for both and is available out-of-the-box on GuixSD, as " | |
17911 | "part of @var{%base-firmware} (@pxref{operating-system Reference, " | |
17912 | "@code{firmware}})." | |
17913 | msgstr "" | |
17914 | ||
17915 | #. type: cindex | |
17916 | #: doc/guix.texi:8159 | |
17917 | #, no-wrap | |
17918 | msgid "RYF, Respects Your Freedom" | |
17919 | msgstr "" | |
17920 | ||
17921 | #. type: Plain text | |
17922 | #: doc/guix.texi:8165 | |
17923 | msgid "" | |
39764ef8 JL |
17924 | "The @uref{https://www.fsf.org/, Free Software Foundation} runs @uref{https://" |
17925 | "www.fsf.org/ryf, @dfn{Respects Your Freedom}} (RYF), a certification program " | |
17926 | "for hardware products that respect your freedom and your privacy and ensure " | |
17927 | "that you have control over your device. We encourage you to check the list " | |
17928 | "of RYF-certified devices." | |
b9fe8fd6 JL |
17929 | msgstr "" |
17930 | ||
17931 | #. type: Plain text | |
17932 | #: doc/guix.texi:8169 | |
17933 | msgid "" | |
17934 | "Another useful resource is the @uref{https://www.h-node.org/, H-Node} web " | |
17935 | "site. It contains a catalog of hardware devices with information about " | |
17936 | "their support in GNU/Linux." | |
17937 | msgstr "" | |
17938 | ||
17939 | #. type: Plain text | |
17940 | #: doc/guix.texi:8178 | |
17941 | msgid "" | |
17942 | "An ISO-9660 installation image that can be written to a USB stick or burnt " | |
39764ef8 JL |
17943 | "to a DVD can be downloaded from @indicateurl{ftp://alpha.gnu.org/gnu/guix/" |
17944 | "guixsd-install-@value{VERSION}.@var{system}.iso.xz}, where @var{system} is " | |
17945 | "one of:" | |
b9fe8fd6 JL |
17946 | msgstr "" |
17947 | ||
17948 | #. type: table | |
17949 | #: doc/guix.texi:8182 | |
17950 | msgid "for a GNU/Linux system on Intel/AMD-compatible 64-bit CPUs;" | |
17951 | msgstr "" | |
17952 | ||
17953 | #. type: table | |
17954 | #: doc/guix.texi:8185 | |
17955 | msgid "for a 32-bit GNU/Linux system on Intel-compatible CPUs." | |
17956 | msgstr "" | |
17957 | ||
17958 | #. type: Plain text | |
17959 | #: doc/guix.texi:8190 | |
17960 | msgid "" | |
17961 | "Make sure to download the associated @file{.sig} file and to verify the " | |
17962 | "authenticity of the image against it, along these lines:" | |
17963 | msgstr "" | |
17964 | ||
17965 | #. type: example | |
17966 | #: doc/guix.texi:8194 | |
17967 | #, no-wrap | |
17968 | msgid "" | |
39764ef8 | 17969 | "$ wget ftp://alpha.gnu.org/gnu/guix/guixsd-install-@value{VERSION}.@var{system}.iso.xz.sig\n" |
b9fe8fd6 JL |
17970 | "$ gpg --verify guixsd-install-@value{VERSION}.@var{system}.iso.xz.sig\n" |
17971 | msgstr "" | |
17972 | ||
17973 | #. type: Plain text | |
17974 | #: doc/guix.texi:8209 | |
17975 | msgid "" | |
17976 | "This image contains the tools necessary for an installation. It is meant to " | |
17977 | "be copied @emph{as is} to a large-enough USB stick or DVD." | |
17978 | msgstr "" | |
17979 | ||
17980 | #. type: unnumberedsubsubsec | |
17981 | #: doc/guix.texi:8210 | |
17982 | #, no-wrap | |
17983 | msgid "Copying to a USB Stick" | |
17984 | msgstr "" | |
17985 | ||
17986 | #. type: Plain text | |
17987 | #: doc/guix.texi:8213 | |
17988 | msgid "To copy the image to a USB stick, follow these steps:" | |
17989 | msgstr "" | |
17990 | ||
17991 | #. type: enumerate | |
17992 | #: doc/guix.texi:8217 doc/guix.texi:8242 | |
17993 | msgid "Decompress the image using the @command{xz} command:" | |
17994 | msgstr "" | |
17995 | ||
17996 | #. type: example | |
17997 | #: doc/guix.texi:8220 doc/guix.texi:8245 | |
17998 | #, no-wrap | |
17999 | msgid "xz -d guixsd-install-@value{VERSION}.@var{system}.iso.xz\n" | |
18000 | msgstr "" | |
18001 | ||
18002 | #. type: enumerate | |
18003 | #: doc/guix.texi:8226 | |
18004 | msgid "" | |
18005 | "Insert a USB stick of 1@tie{}GiB or more into your machine, and determine " | |
18006 | "its device name. Assuming that the USB stick is known as @file{/dev/sdX}, " | |
18007 | "copy the image with:" | |
18008 | msgstr "" | |
18009 | ||
18010 | #. type: example | |
18011 | #: doc/guix.texi:8230 | |
18012 | #, no-wrap | |
18013 | msgid "" | |
18014 | "dd if=guixsd-install-@value{VERSION}.x86_64-linux.iso of=/dev/sdX\n" | |
18015 | "sync\n" | |
18016 | msgstr "" | |
18017 | ||
18018 | #. type: enumerate | |
18019 | #: doc/guix.texi:8233 | |
18020 | msgid "Access to @file{/dev/sdX} usually requires root privileges." | |
18021 | msgstr "" | |
18022 | ||
18023 | #. type: unnumberedsubsubsec | |
18024 | #: doc/guix.texi:8235 | |
18025 | #, no-wrap | |
18026 | msgid "Burning on a DVD" | |
18027 | msgstr "" | |
18028 | ||
18029 | #. type: Plain text | |
18030 | #: doc/guix.texi:8238 | |
18031 | msgid "To copy the image to a DVD, follow these steps:" | |
18032 | msgstr "" | |
18033 | ||
18034 | #. type: enumerate | |
18035 | #: doc/guix.texi:8251 | |
18036 | msgid "" | |
18037 | "Insert a blank DVD into your machine, and determine its device name. " | |
39764ef8 | 18038 | "Assuming that the DVD drive is known as @file{/dev/srX}, copy the image with:" |
b9fe8fd6 JL |
18039 | msgstr "" |
18040 | ||
18041 | #. type: example | |
18042 | #: doc/guix.texi:8254 | |
18043 | #, no-wrap | |
39764ef8 | 18044 | msgid "growisofs -dvd-compat -Z /dev/srX=guixsd-install-@value{VERSION}.x86_64.iso\n" |
b9fe8fd6 JL |
18045 | msgstr "" |
18046 | ||
18047 | #. type: enumerate | |
18048 | #: doc/guix.texi:8257 | |
18049 | msgid "Access to @file{/dev/srX} usually requires root privileges." | |
18050 | msgstr "" | |
18051 | ||
18052 | #. type: unnumberedsubsubsec | |
18053 | #: doc/guix.texi:8259 | |
18054 | #, no-wrap | |
18055 | msgid "Booting" | |
18056 | msgstr "" | |
18057 | ||
18058 | #. type: Plain text | |
18059 | #: doc/guix.texi:8264 | |
18060 | msgid "" | |
18061 | "Once this is done, you should be able to reboot the system and boot from the " | |
18062 | "USB stick or DVD. The latter usually requires you to get in the BIOS or " | |
18063 | "UEFI boot menu, where you can choose to boot from the USB stick." | |
18064 | msgstr "" | |
18065 | ||
18066 | #. type: Plain text | |
18067 | #: doc/guix.texi:8267 | |
18068 | msgid "" | |
18069 | "@xref{Installing GuixSD in a VM}, if, instead, you would like to install " | |
18070 | "GuixSD in a virtual machine (VM)." | |
18071 | msgstr "" | |
18072 | ||
18073 | #. type: Plain text | |
18074 | #: doc/guix.texi:8279 | |
18075 | msgid "" | |
18076 | "Once you have successfully booted your computer using the installation " | |
18077 | "medium, you should end up with a root prompt. Several console TTYs are " | |
18078 | "configured and can be used to run commands as root. TTY2 shows this " | |
39764ef8 JL |
18079 | "documentation, browsable using the Info reader commands (@pxref{Top,,, info-" |
18080 | "stnd, Stand-alone GNU Info}). The installation system runs the GPM mouse " | |
18081 | "daemon, which allows you to select text with the left mouse button and to " | |
18082 | "paste it with the middle button." | |
b9fe8fd6 JL |
18083 | msgstr "" |
18084 | ||
18085 | #. type: quotation | |
18086 | #: doc/guix.texi:8284 | |
18087 | msgid "" | |
18088 | "Installation requires access to the Internet so that any missing " | |
18089 | "dependencies of your system configuration can be downloaded. See the " | |
18090 | "``Networking'' section below." | |
18091 | msgstr "" | |
18092 | ||
18093 | #. type: Plain text | |
18094 | #: doc/guix.texi:8290 | |
18095 | msgid "" | |
18096 | "The installation system includes many common tools needed for this task. " | |
18097 | "But it is also a full-blown GuixSD system, which means that you can install " | |
18098 | "additional packages, should you need it, using @command{guix package} " | |
18099 | "(@pxref{Invoking guix package})." | |
18100 | msgstr "" | |
18101 | ||
18102 | #. type: subsubsection | |
18103 | #: doc/guix.texi:8291 | |
18104 | #, no-wrap | |
18105 | msgid "Keyboard Layout" | |
18106 | msgstr "" | |
18107 | ||
18108 | #. type: cindex | |
18109 | #: doc/guix.texi:8293 doc/guix.texi:10364 | |
18110 | #, no-wrap | |
18111 | msgid "keyboard layout" | |
18112 | msgstr "" | |
18113 | ||
18114 | #. type: Plain text | |
18115 | #: doc/guix.texi:8297 | |
18116 | msgid "" | |
18117 | "The installation image uses the US qwerty keyboard layout. If you want to " | |
18118 | "change it, you can use the @command{loadkeys} command. For example, the " | |
18119 | "following command selects the Dvorak keyboard layout:" | |
18120 | msgstr "" | |
18121 | ||
18122 | #. type: example | |
18123 | #: doc/guix.texi:8300 | |
18124 | #, no-wrap | |
18125 | msgid "loadkeys dvorak\n" | |
18126 | msgstr "" | |
18127 | ||
18128 | #. type: Plain text | |
18129 | #: doc/guix.texi:8305 | |
18130 | msgid "" | |
18131 | "See the files under @file{/run/current-system/profile/share/keymaps} for a " | |
18132 | "list of available keyboard layouts. Run @command{man loadkeys} for more " | |
18133 | "information." | |
18134 | msgstr "" | |
18135 | ||
18136 | #. type: subsubsection | |
18137 | #: doc/guix.texi:8306 | |
18138 | #, no-wrap | |
18139 | msgid "Networking" | |
18140 | msgstr "" | |
18141 | ||
18142 | #. type: Plain text | |
18143 | #: doc/guix.texi:8309 | |
18144 | msgid "Run the following command see what your network interfaces are called:" | |
18145 | msgstr "" | |
18146 | ||
18147 | #. type: example | |
18148 | #: doc/guix.texi:8312 | |
18149 | #, no-wrap | |
18150 | msgid "ifconfig -a\n" | |
18151 | msgstr "" | |
18152 | ||
18153 | #. type: Plain text | |
18154 | #: doc/guix.texi:8316 | |
18155 | msgid "@dots{} or, using the GNU/Linux-specific @command{ip} command:" | |
18156 | msgstr "" | |
18157 | ||
18158 | #. type: example | |
18159 | #: doc/guix.texi:8319 | |
18160 | #, no-wrap | |
18161 | msgid "ip a\n" | |
18162 | msgstr "" | |
18163 | ||
18164 | #. type: Plain text | |
18165 | #: doc/guix.texi:8326 | |
18166 | msgid "" | |
18167 | "Wired interfaces have a name starting with @samp{e}; for example, the " | |
18168 | "interface corresponding to the first on-board Ethernet controller is called " | |
18169 | "@samp{eno1}. Wireless interfaces have a name starting with @samp{w}, like " | |
18170 | "@samp{w1p2s0}." | |
18171 | msgstr "" | |
18172 | ||
18173 | #. type: item | |
18174 | #: doc/guix.texi:8328 | |
18175 | #, no-wrap | |
18176 | msgid "Wired connection" | |
18177 | msgstr "" | |
18178 | ||
18179 | #. type: table | |
18180 | #: doc/guix.texi:8331 | |
18181 | msgid "" | |
18182 | "To configure a wired network run the following command, substituting " | |
18183 | "@var{interface} with the name of the wired interface you want to use." | |
18184 | msgstr "" | |
18185 | ||
18186 | #. type: example | |
18187 | #: doc/guix.texi:8334 | |
18188 | #, no-wrap | |
18189 | msgid "ifconfig @var{interface} up\n" | |
18190 | msgstr "" | |
18191 | ||
18192 | #. type: item | |
18193 | #: doc/guix.texi:8336 | |
18194 | #, no-wrap | |
18195 | msgid "Wireless connection" | |
18196 | msgstr "" | |
18197 | ||
18198 | #. type: cindex | |
39764ef8 | 18199 | #: doc/guix.texi:8337 doc/guix.texi:10763 |
b9fe8fd6 JL |
18200 | #, no-wrap |
18201 | msgid "wireless" | |
18202 | msgstr "" | |
18203 | ||
18204 | #. type: cindex | |
39764ef8 | 18205 | #: doc/guix.texi:8338 doc/guix.texi:10764 |
b9fe8fd6 JL |
18206 | #, no-wrap |
18207 | msgid "WiFi" | |
18208 | msgstr "" | |
18209 | ||
18210 | #. type: table | |
18211 | #: doc/guix.texi:8343 | |
18212 | msgid "" | |
18213 | "To configure wireless networking, you can create a configuration file for " | |
18214 | "the @command{wpa_supplicant} configuration tool (its location is not " | |
18215 | "important) using one of the available text editors such as @command{nano}:" | |
18216 | msgstr "" | |
18217 | ||
18218 | #. type: example | |
18219 | #: doc/guix.texi:8346 | |
18220 | #, no-wrap | |
18221 | msgid "nano wpa_supplicant.conf\n" | |
18222 | msgstr "" | |
18223 | ||
18224 | #. type: table | |
18225 | #: doc/guix.texi:8351 | |
18226 | msgid "" | |
18227 | "As an example, the following stanza can go to this file and will work for " | |
18228 | "many wireless networks, provided you give the actual SSID and passphrase for " | |
18229 | "the network you are connecting to:" | |
18230 | msgstr "" | |
18231 | ||
18232 | #. type: example | |
18233 | #: doc/guix.texi:8358 | |
18234 | #, no-wrap | |
18235 | msgid "" | |
18236 | "network=@{\n" | |
18237 | " ssid=\"@var{my-ssid}\"\n" | |
18238 | " key_mgmt=WPA-PSK\n" | |
18239 | " psk=\"the network's secret passphrase\"\n" | |
18240 | "@}\n" | |
18241 | msgstr "" | |
18242 | ||
18243 | #. type: table | |
18244 | #: doc/guix.texi:8363 | |
18245 | msgid "" | |
18246 | "Start the wireless service and run it in the background with the following " | |
18247 | "command (substitute @var{interface} with the name of the network interface " | |
18248 | "you want to use):" | |
18249 | msgstr "" | |
18250 | ||
18251 | #. type: example | |
18252 | #: doc/guix.texi:8366 | |
18253 | #, no-wrap | |
18254 | msgid "wpa_supplicant -c wpa_supplicant.conf -i @var{interface} -B\n" | |
18255 | msgstr "" | |
18256 | ||
18257 | #. type: table | |
18258 | #: doc/guix.texi:8369 | |
18259 | msgid "Run @command{man wpa_supplicant} for more information." | |
18260 | msgstr "" | |
18261 | ||
18262 | #. type: cindex | |
18263 | #: doc/guix.texi:8371 | |
18264 | #, no-wrap | |
18265 | msgid "DHCP" | |
18266 | msgstr "" | |
18267 | ||
18268 | #. type: Plain text | |
18269 | #: doc/guix.texi:8374 | |
18270 | msgid "" | |
18271 | "At this point, you need to acquire an IP address. On a network where IP " | |
18272 | "addresses are automatically assigned @i{via} DHCP, you can run:" | |
18273 | msgstr "" | |
18274 | ||
18275 | #. type: example | |
18276 | #: doc/guix.texi:8377 | |
18277 | #, no-wrap | |
18278 | msgid "dhclient -v @var{interface}\n" | |
18279 | msgstr "" | |
18280 | ||
18281 | #. type: Plain text | |
18282 | #: doc/guix.texi:8380 | |
18283 | msgid "Try to ping a server to see if networking is up and running:" | |
18284 | msgstr "" | |
18285 | ||
18286 | #. type: example | |
18287 | #: doc/guix.texi:8383 | |
18288 | #, no-wrap | |
18289 | msgid "ping -c 3 gnu.org\n" | |
18290 | msgstr "" | |
18291 | ||
18292 | #. type: Plain text | |
18293 | #: doc/guix.texi:8387 | |
18294 | msgid "" | |
18295 | "Setting up network access is almost always a requirement because the image " | |
18296 | "does not contain all the software and tools that may be needed." | |
18297 | msgstr "" | |
18298 | ||
18299 | #. type: cindex | |
18300 | #: doc/guix.texi:8388 | |
18301 | #, no-wrap | |
18302 | msgid "installing over SSH" | |
18303 | msgstr "" | |
18304 | ||
18305 | #. type: Plain text | |
18306 | #: doc/guix.texi:8391 | |
18307 | msgid "" | |
18308 | "If you want to, you can continue the installation remotely by starting an " | |
18309 | "SSH server:" | |
18310 | msgstr "" | |
18311 | ||
18312 | #. type: example | |
18313 | #: doc/guix.texi:8394 | |
18314 | #, no-wrap | |
18315 | msgid "herd start ssh-daemon\n" | |
18316 | msgstr "" | |
18317 | ||
18318 | #. type: Plain text | |
18319 | #: doc/guix.texi:8398 | |
18320 | msgid "" | |
18321 | "Make sure to either set a password with @command{passwd}, or configure " | |
18322 | "OpenSSH public key authentication before logging in." | |
18323 | msgstr "" | |
18324 | ||
18325 | #. type: subsubsection | |
18326 | #: doc/guix.texi:8399 | |
18327 | #, no-wrap | |
18328 | msgid "Disk Partitioning" | |
18329 | msgstr "" | |
18330 | ||
18331 | #. type: Plain text | |
18332 | #: doc/guix.texi:8403 | |
18333 | msgid "" | |
18334 | "Unless this has already been done, the next step is to partition, and then " | |
18335 | "format the target partition(s)." | |
18336 | msgstr "" | |
18337 | ||
18338 | #. type: Plain text | |
18339 | #: doc/guix.texi:8408 | |
18340 | msgid "" | |
18341 | "The installation image includes several partitioning tools, including Parted " | |
18342 | "(@pxref{Overview,,, parted, GNU Parted User Manual}), @command{fdisk}, and " | |
18343 | "@command{cfdisk}. Run it and set up your disk with the partition layout you " | |
18344 | "want:" | |
18345 | msgstr "" | |
18346 | ||
18347 | #. type: example | |
18348 | #: doc/guix.texi:8411 | |
18349 | #, no-wrap | |
18350 | msgid "cfdisk\n" | |
18351 | msgstr "" | |
18352 | ||
18353 | #. type: Plain text | |
18354 | #: doc/guix.texi:8417 | |
18355 | msgid "" | |
18356 | "If your disk uses the GUID Partition Table (GPT) format and you plan to " | |
18357 | "install BIOS-based GRUB (which is the default), make sure a BIOS Boot " | |
18358 | "Partition is available (@pxref{BIOS installation,,, grub, GNU GRUB manual})." | |
18359 | msgstr "" | |
18360 | ||
18361 | #. type: cindex | |
18362 | #: doc/guix.texi:8418 | |
18363 | #, no-wrap | |
18364 | msgid "EFI, installation" | |
18365 | msgstr "" | |
18366 | ||
18367 | #. type: cindex | |
18368 | #: doc/guix.texi:8419 | |
18369 | #, no-wrap | |
18370 | msgid "UEFI, installation" | |
18371 | msgstr "" | |
18372 | ||
18373 | #. type: cindex | |
18374 | #: doc/guix.texi:8420 | |
18375 | #, no-wrap | |
18376 | msgid "ESP, EFI system partition" | |
18377 | msgstr "" | |
18378 | ||
18379 | #. type: Plain text | |
18380 | #: doc/guix.texi:8424 | |
18381 | msgid "" | |
18382 | "If you instead wish to use EFI-based GRUB, a FAT32 @dfn{EFI System " | |
39764ef8 JL |
18383 | "Partition} (ESP) is required. This partition should be mounted at @file{/" |
18384 | "boot/efi} and must have the @code{esp} flag set. E.g., for @command{parted}:" | |
b9fe8fd6 JL |
18385 | msgstr "" |
18386 | ||
18387 | #. type: example | |
18388 | #: doc/guix.texi:8427 | |
18389 | #, no-wrap | |
18390 | msgid "parted /dev/sda set 1 esp on\n" | |
18391 | msgstr "" | |
18392 | ||
18393 | #. type: Plain text | |
18394 | #: doc/guix.texi:8435 | |
18395 | msgid "" | |
18396 | "Once you are done partitioning the target hard disk drive, you have to " | |
18397 | "create a file system on the relevant partition(s)@footnote{Currently GuixSD " | |
18398 | "only supports ext4 and btrfs file systems. In particular, code that reads " | |
18399 | "file system UUIDs and labels only works for these file system types.}. For " | |
18400 | "the ESP, if you have one and assuming it is @file{/dev/sda2}, run:" | |
18401 | msgstr "" | |
18402 | ||
18403 | #. type: example | |
18404 | #: doc/guix.texi:8438 | |
18405 | #, no-wrap | |
18406 | msgid "mkfs.fat -F32 /dev/sda2\n" | |
18407 | msgstr "" | |
18408 | ||
18409 | #. type: Plain text | |
18410 | #: doc/guix.texi:8446 | |
18411 | msgid "" | |
18412 | "Preferably, assign file systems a label so that you can easily and reliably " | |
18413 | "refer to them in @code{file-system} declarations (@pxref{File Systems}). " | |
18414 | "This is typically done using the @code{-L} option of @command{mkfs.ext4} and " | |
39764ef8 JL |
18415 | "related commands. So, assuming the target root partition lives at @file{/" |
18416 | "dev/sda1}, a file system with the label @code{my-root} can be created with:" | |
b9fe8fd6 JL |
18417 | msgstr "" |
18418 | ||
18419 | #. type: example | |
18420 | #: doc/guix.texi:8449 | |
18421 | #, no-wrap | |
18422 | msgid "mkfs.ext4 -L my-root /dev/sda1\n" | |
18423 | msgstr "" | |
18424 | ||
18425 | #. type: cindex | |
18426 | #: doc/guix.texi:8451 doc/guix.texi:8840 | |
18427 | #, no-wrap | |
18428 | msgid "encrypted disk" | |
18429 | msgstr "" | |
18430 | ||
18431 | #. type: Plain text | |
18432 | #: doc/guix.texi:8458 | |
18433 | msgid "" | |
18434 | "If you are instead planning to encrypt the root partition, you can use the " | |
18435 | "Cryptsetup/LUKS utilities to do that (see @inlinefmtifelse{html, " | |
18436 | "@uref{https://linux.die.net/man/8/cryptsetup, @code{man cryptsetup}}, " | |
18437 | "@code{man cryptsetup}} for more information.) Assuming you want to store " | |
18438 | "the root partition on @file{/dev/sda1}, the command sequence would be along " | |
18439 | "these lines:" | |
18440 | msgstr "" | |
18441 | ||
18442 | #. type: example | |
18443 | #: doc/guix.texi:8463 | |
18444 | #, no-wrap | |
18445 | msgid "" | |
18446 | "cryptsetup luksFormat /dev/sda1\n" | |
18447 | "cryptsetup open --type luks /dev/sda1 my-partition\n" | |
18448 | "mkfs.ext4 -L my-root /dev/mapper/my-partition\n" | |
18449 | msgstr "" | |
18450 | ||
18451 | #. type: Plain text | |
18452 | #: doc/guix.texi:8468 | |
18453 | msgid "" | |
18454 | "Once that is done, mount the target file system under @file{/mnt} with a " | |
18455 | "command like (again, assuming @code{my-root} is the label of the root file " | |
18456 | "system):" | |
18457 | msgstr "" | |
18458 | ||
18459 | #. type: example | |
18460 | #: doc/guix.texi:8471 | |
18461 | #, no-wrap | |
18462 | msgid "mount LABEL=my-root /mnt\n" | |
18463 | msgstr "" | |
18464 | ||
18465 | #. type: Plain text | |
18466 | #: doc/guix.texi:8477 | |
18467 | msgid "" | |
18468 | "Also mount any other file systems you would like to use on the target system " | |
18469 | "relative to this path. If you have @file{/boot} on a separate partition for " | |
18470 | "example, mount it at @file{/mnt/boot} now so it is found by @code{guix " | |
18471 | "system init} afterwards." | |
18472 | msgstr "" | |
18473 | ||
18474 | #. type: Plain text | |
18475 | #: doc/guix.texi:8482 | |
18476 | msgid "" | |
18477 | "Finally, if you plan to use one or more swap partitions (@pxref{Memory " | |
18478 | "Concepts, swap space,, libc, The GNU C Library Reference Manual}), make sure " | |
18479 | "to initialize them with @command{mkswap}. Assuming you have one swap " | |
18480 | "partition on @file{/dev/sda2}, you would run:" | |
18481 | msgstr "" | |
18482 | ||
18483 | #. type: example | |
18484 | #: doc/guix.texi:8486 | |
18485 | #, no-wrap | |
18486 | msgid "" | |
18487 | "mkswap /dev/sda2\n" | |
18488 | "swapon /dev/sda2\n" | |
18489 | msgstr "" | |
18490 | ||
18491 | #. type: Plain text | |
18492 | #: doc/guix.texi:8494 | |
18493 | msgid "" | |
18494 | "Alternatively, you may use a swap file. For example, assuming that in the " | |
18495 | "new system you want to use the file @file{/swapfile} as a swap file, you " | |
39764ef8 JL |
18496 | "would run@footnote{This example will work for many types of file systems (e." |
18497 | "g., ext4). However, for copy-on-write file systems (e.g., btrfs), the " | |
b9fe8fd6 JL |
18498 | "required steps may be different. For details, see the manual pages for " |
18499 | "@command{mkswap} and @command{swapon}.}:" | |
18500 | msgstr "" | |
18501 | ||
18502 | #. type: example | |
18503 | #: doc/guix.texi:8502 | |
18504 | #, no-wrap | |
18505 | msgid "" | |
18506 | "# This is 10 GiB of swap space. Adjust \"count\" to change the size.\n" | |
18507 | "dd if=/dev/zero of=/mnt/swapfile bs=1MiB count=10240\n" | |
18508 | "# For security, make the file readable and writable only by root.\n" | |
18509 | "chmod 600 /mnt/swapfile\n" | |
18510 | "mkswap /mnt/swapfile\n" | |
18511 | "swapon /mnt/swapfile\n" | |
18512 | msgstr "" | |
18513 | ||
18514 | #. type: Plain text | |
18515 | #: doc/guix.texi:8507 | |
18516 | msgid "" | |
18517 | "Note that if you have encrypted the root partition and created a swap file " | |
18518 | "in its file system as described above, then the encryption also protects the " | |
18519 | "swap file, just like any other file in that file system." | |
18520 | msgstr "" | |
18521 | ||
18522 | #. type: Plain text | |
18523 | #: doc/guix.texi:8513 | |
18524 | msgid "" | |
18525 | "With the target partitions ready and the target root mounted on @file{/mnt}, " | |
18526 | "we're ready to go. First, run:" | |
18527 | msgstr "" | |
18528 | ||
18529 | #. type: example | |
18530 | #: doc/guix.texi:8516 | |
18531 | #, no-wrap | |
18532 | msgid "herd start cow-store /mnt\n" | |
18533 | msgstr "" | |
18534 | ||
18535 | #. type: Plain text | |
18536 | #: doc/guix.texi:8523 | |
18537 | msgid "" | |
18538 | "This makes @file{/gnu/store} copy-on-write, such that packages added to it " | |
18539 | "during the installation phase are written to the target disk on @file{/mnt} " | |
18540 | "rather than kept in memory. This is necessary because the first phase of " | |
18541 | "the @command{guix system init} command (see below) entails downloads or " | |
18542 | "builds to @file{/gnu/store} which, initially, is an in-memory file system." | |
18543 | msgstr "" | |
18544 | ||
18545 | #. type: Plain text | |
18546 | #: doc/guix.texi:8534 | |
18547 | msgid "" | |
18548 | "Next, you have to edit a file and provide the declaration of the operating " | |
18549 | "system to be installed. To that end, the installation system comes with " | |
18550 | "three text editors. We recommend GNU nano (@pxref{Top,,, nano, GNU nano " | |
18551 | "Manual}), which supports syntax highlighting and parentheses matching; other " | |
18552 | "editors include GNU Zile (an Emacs clone), and nvi (a clone of the original " | |
18553 | "BSD @command{vi} editor). We strongly recommend storing that file on the " | |
18554 | "target root file system, say, as @file{/mnt/etc/config.scm}. Failing to do " | |
18555 | "that, you will have lost your configuration file once you have rebooted into " | |
18556 | "the newly-installed system." | |
18557 | msgstr "" | |
18558 | ||
18559 | #. type: Plain text | |
18560 | #: doc/guix.texi:8541 | |
18561 | msgid "" | |
18562 | "@xref{Using the Configuration System}, for an overview of the configuration " | |
18563 | "file. The example configurations discussed in that section are available " | |
18564 | "under @file{/etc/configuration} in the installation image. Thus, to get " | |
18565 | "started with a system configuration providing a graphical display server (a " | |
18566 | "``desktop'' system), you can run something along these lines:" | |
18567 | msgstr "" | |
18568 | ||
18569 | #. type: example | |
18570 | #: doc/guix.texi:8546 | |
18571 | #, no-wrap | |
18572 | msgid "" | |
18573 | "# mkdir /mnt/etc\n" | |
18574 | "# cp /etc/configuration/desktop.scm /mnt/etc/config.scm\n" | |
18575 | "# nano /mnt/etc/config.scm\n" | |
18576 | msgstr "" | |
18577 | ||
18578 | #. type: Plain text | |
18579 | #: doc/guix.texi:8550 | |
18580 | msgid "" | |
18581 | "You should pay attention to what your configuration file contains, and in " | |
18582 | "particular:" | |
18583 | msgstr "" | |
18584 | ||
18585 | #. type: itemize | |
18586 | #: doc/guix.texi:8560 | |
18587 | msgid "" | |
18588 | "Make sure the @code{bootloader-configuration} form refers to the target you " | |
18589 | "want to install GRUB on. It should mention @code{grub-bootloader} if you " | |
18590 | "are installing GRUB in the legacy way, or @code{grub-efi-bootloader} for " | |
18591 | "newer UEFI systems. For legacy systems, the @code{target} field names a " | |
18592 | "device, like @code{/dev/sda}; for UEFI systems it names a path to a mounted " | |
18593 | "EFI partition, like @code{/boot/efi}, and do make sure the path is actually " | |
18594 | "mounted." | |
18595 | msgstr "" | |
18596 | ||
18597 | #. type: itemize | |
18598 | #: doc/guix.texi:8566 | |
18599 | msgid "" | |
18600 | "Be sure that your file system labels match the value of their respective " | |
18601 | "@code{device} fields in your @code{file-system} configuration, assuming your " | |
18602 | "@code{file-system} configuration sets the value of @code{title} to " | |
18603 | "@code{'label}." | |
18604 | msgstr "" | |
18605 | ||
18606 | #. type: itemize | |
18607 | #: doc/guix.texi:8570 | |
18608 | msgid "" | |
39764ef8 JL |
18609 | "If there are encrypted or RAID partitions, make sure to add a @code{mapped-" |
18610 | "devices} field to describe them (@pxref{Mapped Devices})." | |
b9fe8fd6 JL |
18611 | msgstr "" |
18612 | ||
18613 | #. type: Plain text | |
18614 | #: doc/guix.texi:8575 | |
18615 | msgid "" | |
18616 | "Once you are done preparing the configuration file, the new system must be " | |
18617 | "initialized (remember that the target root file system is mounted under " | |
18618 | "@file{/mnt}):" | |
18619 | msgstr "" | |
18620 | ||
18621 | #. type: example | |
18622 | #: doc/guix.texi:8578 | |
18623 | #, no-wrap | |
18624 | msgid "guix system init /mnt/etc/config.scm /mnt\n" | |
18625 | msgstr "" | |
18626 | ||
18627 | #. type: Plain text | |
18628 | #: doc/guix.texi:8585 | |
18629 | msgid "" | |
18630 | "This copies all the necessary files and installs GRUB on @file{/dev/sdX}, " | |
18631 | "unless you pass the @option{--no-bootloader} option. For more information, " | |
18632 | "@pxref{Invoking guix system}. This command may trigger downloads or builds " | |
18633 | "of missing packages, which can take some time." | |
18634 | msgstr "" | |
18635 | ||
18636 | #. type: Plain text | |
18637 | #: doc/guix.texi:8592 | |
18638 | msgid "" | |
18639 | "Once that command has completed---and hopefully succeeded!---you can run " | |
18640 | "@command{reboot} and boot into the new system. The @code{root} password in " | |
18641 | "the new system is initially empty; other users' passwords need to be " | |
18642 | "initialized by running the @command{passwd} command as @code{root}, unless " | |
18643 | "your configuration specifies otherwise (@pxref{user-account-password, user " | |
18644 | "account passwords})." | |
18645 | msgstr "" | |
18646 | ||
18647 | #. type: cindex | |
18648 | #: doc/guix.texi:8593 | |
18649 | #, no-wrap | |
18650 | msgid "upgrading GuixSD" | |
18651 | msgstr "" | |
18652 | ||
18653 | #. type: Plain text | |
18654 | #: doc/guix.texi:8600 | |
18655 | msgid "" | |
18656 | "From then on, you can update GuixSD whenever you want by running " | |
18657 | "@command{guix pull} as @code{root} (@pxref{Invoking guix pull}), and then " | |
18658 | "running @command{guix system reconfigure} to build a new system generation " | |
18659 | "with the latest packages and services (@pxref{Invoking guix system}). We " | |
18660 | "recommend doing that regularly so that your system includes the latest " | |
18661 | "security updates (@pxref{Security Updates})." | |
18662 | msgstr "" | |
18663 | ||
18664 | #. type: Plain text | |
18665 | #: doc/guix.texi:8604 | |
18666 | msgid "" | |
39764ef8 JL |
18667 | "Join us on @code{#guix} on the Freenode IRC network or on @file{guix-" |
18668 | "devel@@gnu.org} to share your experience---good or not so good." | |
b9fe8fd6 JL |
18669 | msgstr "" |
18670 | ||
18671 | #. type: subsection | |
18672 | #: doc/guix.texi:8606 | |
18673 | #, no-wrap | |
18674 | msgid "Installing GuixSD in a Virtual Machine" | |
18675 | msgstr "" | |
18676 | ||
18677 | #. type: cindex | |
18678 | #: doc/guix.texi:8608 | |
18679 | #, no-wrap | |
18680 | msgid "virtual machine, GuixSD installation" | |
18681 | msgstr "" | |
18682 | ||
18683 | #. type: cindex | |
18684 | #: doc/guix.texi:8609 | |
18685 | #, no-wrap | |
18686 | msgid "virtual private server (VPS)" | |
18687 | msgstr "" | |
18688 | ||
18689 | #. type: cindex | |
18690 | #: doc/guix.texi:8610 | |
18691 | #, no-wrap | |
18692 | msgid "VPS (virtual private server)" | |
18693 | msgstr "" | |
18694 | ||
18695 | #. type: Plain text | |
18696 | #: doc/guix.texi:8614 | |
18697 | msgid "" | |
18698 | "If you'd like to install GuixSD in a virtual machine (VM) or on a virtual " | |
18699 | "private server (VPS) rather than on your beloved machine, this section is " | |
18700 | "for you." | |
18701 | msgstr "" | |
18702 | ||
18703 | #. type: Plain text | |
18704 | #: doc/guix.texi:8617 | |
18705 | msgid "" | |
18706 | "To boot a @uref{http://qemu.org/,QEMU} VM for installing GuixSD in a disk " | |
18707 | "image, follow these steps:" | |
18708 | msgstr "" | |
18709 | ||
18710 | #. type: enumerate | |
18711 | #: doc/guix.texi:8622 | |
18712 | msgid "" | |
18713 | "First, retrieve and decompress the GuixSD installation image as described " | |
18714 | "previously (@pxref{USB Stick and DVD Installation})." | |
18715 | msgstr "" | |
18716 | ||
18717 | #. type: enumerate | |
18718 | #: doc/guix.texi:8626 | |
18719 | msgid "" | |
39764ef8 JL |
18720 | "Create a disk image that will hold the installed system. To make a qcow2-" |
18721 | "formatted disk image, use the @command{qemu-img} command:" | |
b9fe8fd6 JL |
18722 | msgstr "" |
18723 | ||
18724 | #. type: example | |
18725 | #: doc/guix.texi:8629 | |
18726 | #, no-wrap | |
18727 | msgid "qemu-img create -f qcow2 guixsd.img 50G\n" | |
18728 | msgstr "" | |
18729 | ||
18730 | #. type: enumerate | |
18731 | #: doc/guix.texi:8633 | |
18732 | msgid "" | |
18733 | "The resulting file will be much smaller than 50 GB (typically less than 1 " | |
18734 | "MB), but it will grow as the virtualized storage device is filled up." | |
18735 | msgstr "" | |
18736 | ||
18737 | #. type: enumerate | |
18738 | #: doc/guix.texi:8636 | |
18739 | msgid "Boot the USB installation image in an VM:" | |
18740 | msgstr "" | |
18741 | ||
18742 | #. type: example | |
18743 | #: doc/guix.texi:8642 | |
18744 | #, no-wrap | |
18745 | msgid "" | |
18746 | "qemu-system-x86_64 -m 1024 -smp 1 \\\n" | |
18747 | " -net user -net nic,model=virtio -boot menu=on \\\n" | |
18748 | " -drive file=guixsd-install-@value{VERSION}.@var{system}.iso \\\n" | |
18749 | " -drive file=guixsd.img\n" | |
18750 | msgstr "" | |
18751 | ||
18752 | #. type: enumerate | |
18753 | #: doc/guix.texi:8645 | |
18754 | msgid "The ordering of the drives matters." | |
18755 | msgstr "" | |
18756 | ||
18757 | #. type: enumerate | |
18758 | #: doc/guix.texi:8649 | |
18759 | msgid "" | |
18760 | "In the VM console, quickly press the @kbd{F12} key to enter the boot menu. " | |
18761 | "Then press the @kbd{2} key and the @kbd{RET} key to validate your selection." | |
18762 | msgstr "" | |
18763 | ||
18764 | #. type: enumerate | |
18765 | #: doc/guix.texi:8653 | |
18766 | msgid "" | |
18767 | "You're now root in the VM, proceed with the installation process. " | |
18768 | "@xref{Preparing for Installation}, and follow the instructions." | |
18769 | msgstr "" | |
18770 | ||
18771 | #. type: Plain text | |
18772 | #: doc/guix.texi:8658 | |
18773 | msgid "" | |
18774 | "Once installation is complete, you can boot the system that's on your " | |
18775 | "@file{guixsd.img} image. @xref{Running GuixSD in a VM}, for how to do that." | |
18776 | msgstr "" | |
18777 | ||
18778 | #. type: cindex | |
18779 | #: doc/guix.texi:8662 | |
18780 | #, no-wrap | |
18781 | msgid "installation image" | |
18782 | msgstr "" | |
18783 | ||
18784 | #. type: Plain text | |
18785 | #: doc/guix.texi:8665 | |
18786 | msgid "" | |
18787 | "The installation image described above was built using the @command{guix " | |
18788 | "system} command, specifically:" | |
18789 | msgstr "" | |
18790 | ||
18791 | #. type: example | |
18792 | #: doc/guix.texi:8668 | |
18793 | #, no-wrap | |
18794 | msgid "guix system disk-image gnu/system/install.scm\n" | |
18795 | msgstr "" | |
18796 | ||
18797 | #. type: Plain text | |
18798 | #: doc/guix.texi:8673 | |
18799 | msgid "" | |
18800 | "Have a look at @file{gnu/system/install.scm} in the source tree, and see " | |
18801 | "also @ref{Invoking guix system} for more information about the installation " | |
18802 | "image." | |
18803 | msgstr "" | |
18804 | ||
18805 | #. type: cindex | |
18806 | #: doc/guix.texi:8677 | |
18807 | #, no-wrap | |
18808 | msgid "system configuration" | |
18809 | msgstr "" | |
18810 | ||
18811 | #. type: Plain text | |
18812 | #: doc/guix.texi:8683 | |
18813 | msgid "" | |
18814 | "The Guix System Distribution supports a consistent whole-system " | |
18815 | "configuration mechanism. By that we mean that all aspects of the global " | |
18816 | "system configuration---such as the available system services, timezone and " | |
18817 | "locale settings, user accounts---are declared in a single place. Such a " | |
18818 | "@dfn{system configuration} can be @dfn{instantiated}---i.e., effected." | |
18819 | msgstr "" | |
18820 | ||
18821 | #. type: Plain text | |
18822 | #: doc/guix.texi:8693 | |
18823 | msgid "" | |
18824 | "One of the advantages of putting all the system configuration under the " | |
18825 | "control of Guix is that it supports transactional system upgrades, and makes " | |
18826 | "it possible to roll back to a previous system instantiation, should " | |
18827 | "something go wrong with the new one (@pxref{Features}). Another advantage " | |
18828 | "is that it makes it easy to replicate the exact same configuration across " | |
18829 | "different machines, or at different points in time, without having to resort " | |
18830 | "to additional administration tools layered on top of the own tools of the " | |
18831 | "system." | |
18832 | msgstr "" | |
18833 | ||
18834 | #. type: Plain text | |
18835 | #: doc/guix.texi:8698 | |
18836 | msgid "" | |
18837 | "This section describes this mechanism. First we focus on the system " | |
18838 | "administrator's viewpoint---explaining how the system is configured and " | |
18839 | "instantiated. Then we show how this mechanism can be extended, for instance " | |
18840 | "to support new system services." | |
18841 | msgstr "" | |
18842 | ||
18843 | #. type: Plain text | |
18844 | #: doc/guix.texi:8725 | |
18845 | msgid "" | |
18846 | "The operating system is configured by providing an @code{operating-system} " | |
18847 | "declaration in a file that can then be passed to the @command{guix system} " | |
18848 | "command (@pxref{Invoking guix system}). A simple setup, with the default " | |
18849 | "system services, the default Linux-Libre kernel, initial RAM disk, and boot " | |
18850 | "loader looks like this:" | |
18851 | msgstr "" | |
18852 | ||
18853 | #. type: findex | |
18854 | #: doc/guix.texi:8726 | |
18855 | #, no-wrap | |
18856 | msgid "operating-system" | |
18857 | msgstr "" | |
18858 | ||
18859 | #. type: include | |
18860 | #: doc/guix.texi:8728 | |
18861 | #, no-wrap | |
18862 | msgid "os-config-bare-bones.texi" | |
18863 | msgstr "" | |
18864 | ||
18865 | #. type: Plain text | |
18866 | #: doc/guix.texi:8735 | |
18867 | msgid "" | |
18868 | "This example should be self-describing. Some of the fields defined above, " | |
18869 | "such as @code{host-name} and @code{bootloader}, are mandatory. Others, such " | |
18870 | "as @code{packages} and @code{services}, can be omitted, in which case they " | |
18871 | "get a default value." | |
18872 | msgstr "" | |
18873 | ||
18874 | #. type: Plain text | |
18875 | #: doc/guix.texi:8740 | |
18876 | msgid "" | |
18877 | "Below we discuss the effect of some of the most important fields " | |
18878 | "(@pxref{operating-system Reference}, for details about all the available " | |
18879 | "fields), and how to @dfn{instantiate} the operating system using " | |
18880 | "@command{guix system}." | |
18881 | msgstr "" | |
18882 | ||
18883 | #. type: unnumberedsubsubsec | |
18884 | #: doc/guix.texi:8741 | |
18885 | #, no-wrap | |
18886 | msgid "Globally-Visible Packages" | |
18887 | msgstr "" | |
18888 | ||
18889 | #. type: vindex | |
18890 | #: doc/guix.texi:8743 | |
18891 | #, no-wrap | |
18892 | msgid "%base-packages" | |
18893 | msgstr "" | |
18894 | ||
18895 | #. type: Plain text | |
18896 | #: doc/guix.texi:8756 | |
18897 | msgid "" | |
18898 | "The @code{packages} field lists packages that will be globally visible on " | |
18899 | "the system, for all user accounts---i.e., in every user's @code{PATH} " | |
18900 | "environment variable---in addition to the per-user profiles (@pxref{Invoking " | |
18901 | "guix package}). The @var{%base-packages} variable provides all the tools " | |
18902 | "one would expect for basic user and administrator tasks---including the GNU " | |
18903 | "Core Utilities, the GNU Networking Utilities, the GNU Zile lightweight text " | |
18904 | "editor, @command{find}, @command{grep}, etc. The example above adds " | |
18905 | "GNU@tie{}Screen and OpenSSH to those, taken from the @code{(gnu packages " | |
18906 | "screen)} and @code{(gnu packages ssh)} modules (@pxref{Package Modules}). " | |
18907 | "The @code{(list package output)} syntax can be used to add a specific output " | |
18908 | "of a package:" | |
18909 | msgstr "" | |
18910 | ||
18911 | #. type: lisp | |
18912 | #: doc/guix.texi:8760 | |
18913 | #, no-wrap | |
18914 | msgid "" | |
18915 | "(use-modules (gnu packages))\n" | |
18916 | "(use-modules (gnu packages dns))\n" | |
18917 | "\n" | |
18918 | msgstr "" | |
18919 | ||
18920 | #. type: lisp | |
18921 | #: doc/guix.texi:8765 | |
18922 | #, no-wrap | |
18923 | msgid "" | |
18924 | "(operating-system\n" | |
18925 | " ;; ...\n" | |
18926 | " (packages (cons (list bind \"utils\")\n" | |
18927 | " %base-packages)))\n" | |
18928 | msgstr "" | |
18929 | ||
18930 | #. type: findex | |
18931 | #: doc/guix.texi:8767 | |
18932 | #, no-wrap | |
18933 | msgid "specification->package" | |
18934 | msgstr "" | |
18935 | ||
18936 | #. type: Plain text | |
18937 | #: doc/guix.texi:8776 | |
18938 | msgid "" | |
18939 | "Referring to packages by variable name, like @code{bind} above, has the " | |
18940 | "advantage of being unambiguous; it also allows typos and such to be " | |
18941 | "diagnosed right away as ``unbound variables''. The downside is that one " | |
18942 | "needs to know which module defines which package, and to augment the " | |
18943 | "@code{use-package-modules} line accordingly. To avoid that, one can use the " | |
18944 | "@code{specification->package} procedure of the @code{(gnu packages)} module, " | |
18945 | "which returns the best package for a given name or name and version:" | |
18946 | msgstr "" | |
18947 | ||
18948 | #. type: lisp | |
18949 | #: doc/guix.texi:8779 | |
18950 | #, no-wrap | |
18951 | msgid "" | |
18952 | "(use-modules (gnu packages))\n" | |
18953 | "\n" | |
18954 | msgstr "" | |
18955 | ||
18956 | #. type: lisp | |
18957 | #: doc/guix.texi:8785 | |
18958 | #, no-wrap | |
18959 | msgid "" | |
18960 | "(operating-system\n" | |
18961 | " ;; ...\n" | |
18962 | " (packages (append (map specification->package\n" | |
18963 | " '(\"tcpdump\" \"htop\" \"gnupg@@2.0\"))\n" | |
18964 | " %base-packages)))\n" | |
18965 | msgstr "" | |
18966 | ||
18967 | #. type: unnumberedsubsubsec | |
18968 | #: doc/guix.texi:8787 | |
18969 | #, no-wrap | |
18970 | msgid "System Services" | |
18971 | msgstr "" | |
18972 | ||
18973 | #. type: cindex | |
39764ef8 | 18974 | #: doc/guix.texi:8789 doc/guix.texi:19933 doc/guix.texi:20851 |
b9fe8fd6 JL |
18975 | #, no-wrap |
18976 | msgid "services" | |
18977 | msgstr "" | |
18978 | ||
18979 | #. type: vindex | |
18980 | #: doc/guix.texi:8790 | |
18981 | #, no-wrap | |
18982 | msgid "%base-services" | |
18983 | msgstr "" | |
18984 | ||
18985 | #. type: Plain text | |
18986 | #: doc/guix.texi:8800 | |
18987 | msgid "" | |
18988 | "The @code{services} field lists @dfn{system services} to be made available " | |
18989 | "when the system starts (@pxref{Services}). The @code{operating-system} " | |
18990 | "declaration above specifies that, in addition to the basic services, we want " | |
18991 | "the @command{lshd} secure shell daemon listening on port 2222 " | |
18992 | "(@pxref{Networking Services, @code{lsh-service}}). Under the hood, " | |
18993 | "@code{lsh-service} arranges so that @code{lshd} is started with the right " | |
18994 | "command-line options, possibly with supporting configuration files generated " | |
18995 | "as needed (@pxref{Defining Services})." | |
18996 | msgstr "" | |
18997 | ||
18998 | #. type: cindex | |
18999 | #: doc/guix.texi:8801 | |
19000 | #, no-wrap | |
19001 | msgid "customization, of services" | |
19002 | msgstr "" | |
19003 | ||
19004 | #. type: findex | |
19005 | #: doc/guix.texi:8802 | |
19006 | #, no-wrap | |
19007 | msgid "modify-services" | |
19008 | msgstr "" | |
19009 | ||
19010 | #. type: Plain text | |
19011 | #: doc/guix.texi:8806 | |
19012 | msgid "" | |
19013 | "Occasionally, instead of using the base services as is, you will want to " | |
19014 | "customize them. To do this, use @code{modify-services} (@pxref{Service " | |
19015 | "Reference, @code{modify-services}}) to modify the list." | |
19016 | msgstr "" | |
19017 | ||
19018 | #. type: Plain text | |
19019 | #: doc/guix.texi:8811 | |
19020 | msgid "" | |
19021 | "For example, suppose you want to modify @code{guix-daemon} and Mingetty (the " | |
19022 | "console log-in) in the @var{%base-services} list (@pxref{Base Services, " | |
19023 | "@code{%base-services}}). To do that, you can write the following in your " | |
19024 | "operating system declaration:" | |
19025 | msgstr "" | |
19026 | ||
19027 | #. type: lisp | |
19028 | #: doc/guix.texi:8824 | |
19029 | #, no-wrap | |
19030 | msgid "" | |
19031 | "(define %my-services\n" | |
19032 | " ;; My very own list of services.\n" | |
19033 | " (modify-services %base-services\n" | |
19034 | " (guix-service-type config =>\n" | |
19035 | " (guix-configuration\n" | |
19036 | " (inherit config)\n" | |
19037 | " (use-substitutes? #f)\n" | |
19038 | " (extra-options '(\"--gc-keep-derivations\"))))\n" | |
19039 | " (mingetty-service-type config =>\n" | |
19040 | " (mingetty-configuration\n" | |
19041 | " (inherit config)))))\n" | |
19042 | "\n" | |
19043 | msgstr "" | |
19044 | ||
19045 | #. type: lisp | |
19046 | #: doc/guix.texi:8828 | |
19047 | #, no-wrap | |
19048 | msgid "" | |
19049 | "(operating-system\n" | |
19050 | " ;; @dots{}\n" | |
19051 | " (services %my-services))\n" | |
19052 | msgstr "" | |
19053 | ||
19054 | #. type: Plain text | |
19055 | #: doc/guix.texi:8839 | |
19056 | msgid "" | |
19057 | "This changes the configuration---i.e., the service parameters---of the " | |
39764ef8 JL |
19058 | "@code{guix-service-type} instance, and that of all the @code{mingetty-" |
19059 | "service-type} instances in the @var{%base-services} list. Observe how this " | |
19060 | "is accomplished: first, we arrange for the original configuration to be " | |
19061 | "bound to the identifier @code{config} in the @var{body}, and then we write " | |
19062 | "the @var{body} so that it evaluates to the desired configuration. In " | |
19063 | "particular, notice how we use @code{inherit} to create a new configuration " | |
19064 | "which has the same values as the old configuration, but with a few " | |
19065 | "modifications." | |
b9fe8fd6 JL |
19066 | msgstr "" |
19067 | ||
19068 | #. type: Plain text | |
19069 | #: doc/guix.texi:8846 | |
19070 | msgid "" | |
19071 | "The configuration for a typical ``desktop'' usage, with an encrypted root " | |
19072 | "partition, the X11 display server, GNOME and Xfce (users can choose which of " | |
19073 | "these desktop environments to use at the log-in screen by pressing " | |
19074 | "@kbd{F1}), network management, power management, and more, would look like " | |
19075 | "this:" | |
19076 | msgstr "" | |
19077 | ||
19078 | #. type: include | |
19079 | #: doc/guix.texi:8848 | |
19080 | #, no-wrap | |
19081 | msgid "os-config-desktop.texi" | |
19082 | msgstr "" | |
19083 | ||
19084 | #. type: cindex | |
19085 | #: doc/guix.texi:8851 | |
19086 | #, no-wrap | |
19087 | msgid "UEFI" | |
19088 | msgstr "" | |
19089 | ||
19090 | #. type: Plain text | |
19091 | #: doc/guix.texi:8854 | |
19092 | msgid "" | |
19093 | "A graphical UEFI system with a choice of lightweight window managers instead " | |
19094 | "of full-blown desktop environments would look like this:" | |
19095 | msgstr "" | |
19096 | ||
19097 | #. type: include | |
19098 | #: doc/guix.texi:8856 | |
19099 | #, no-wrap | |
19100 | msgid "os-config-lightweight-desktop.texi" | |
19101 | msgstr "" | |
19102 | ||
19103 | #. type: Plain text | |
19104 | #: doc/guix.texi:8862 | |
19105 | msgid "" | |
19106 | "This example refers to the @file{/boot/efi} file system by its UUID, " | |
19107 | "@code{1234-ABCD}. Replace this UUID with the right UUID on your system, as " | |
19108 | "returned by the @command{blkid} command." | |
19109 | msgstr "" | |
19110 | ||
19111 | #. type: Plain text | |
19112 | #: doc/guix.texi:8866 | |
19113 | msgid "" | |
19114 | "@xref{Desktop Services}, for the exact list of services provided by " | |
19115 | "@var{%desktop-services}. @xref{X.509 Certificates}, for background " | |
19116 | "information about the @code{nss-certs} package that is used here." | |
19117 | msgstr "" | |
19118 | ||
19119 | #. type: Plain text | |
19120 | #: doc/guix.texi:8873 | |
19121 | msgid "" | |
19122 | "Again, @var{%desktop-services} is just a list of service objects. If you " | |
19123 | "want to remove services from there, you can do so using the procedures for " | |
19124 | "list filtering (@pxref{SRFI-1 Filtering and Partitioning,,, guile, GNU Guile " | |
19125 | "Reference Manual}). For instance, the following expression returns a list " | |
19126 | "that contains all the services in @var{%desktop-services} minus the Avahi " | |
19127 | "service:" | |
19128 | msgstr "" | |
19129 | ||
19130 | #. type: example | |
19131 | #: doc/guix.texi:8878 | |
19132 | #, no-wrap | |
19133 | msgid "" | |
19134 | "(remove (lambda (service)\n" | |
19135 | " (eq? (service-kind service) avahi-service-type))\n" | |
19136 | " %desktop-services)\n" | |
19137 | msgstr "" | |
19138 | ||
19139 | #. type: unnumberedsubsubsec | |
19140 | #: doc/guix.texi:8880 | |
19141 | #, no-wrap | |
19142 | msgid "Instantiating the System" | |
19143 | msgstr "" | |
19144 | ||
19145 | #. type: Plain text | |
19146 | #: doc/guix.texi:8887 | |
19147 | msgid "" | |
39764ef8 JL |
19148 | "Assuming the @code{operating-system} declaration is stored in the @file{my-" |
19149 | "system-config.scm} file, the @command{guix system reconfigure my-system-" | |
19150 | "config.scm} command instantiates that configuration, and makes it the " | |
19151 | "default GRUB boot entry (@pxref{Invoking guix system})." | |
b9fe8fd6 JL |
19152 | msgstr "" |
19153 | ||
19154 | #. type: Plain text | |
19155 | #: doc/guix.texi:8895 | |
19156 | msgid "" | |
19157 | "The normal way to change the system configuration is by updating this file " | |
19158 | "and re-running @command{guix system reconfigure}. One should never have to " | |
19159 | "touch files in @file{/etc} or to run commands that modify the system state " | |
19160 | "such as @command{useradd} or @command{grub-install}. In fact, you must " | |
19161 | "avoid that since that would not only void your warranty but also prevent you " | |
19162 | "from rolling back to previous versions of your system, should you ever need " | |
19163 | "to." | |
19164 | msgstr "" | |
19165 | ||
19166 | #. type: cindex | |
19167 | #: doc/guix.texi:8896 | |
19168 | #, no-wrap | |
19169 | msgid "roll-back, of the operating system" | |
19170 | msgstr "" | |
19171 | ||
19172 | #. type: Plain text | |
19173 | #: doc/guix.texi:8906 | |
19174 | msgid "" | |
19175 | "Speaking of roll-back, each time you run @command{guix system reconfigure}, " | |
19176 | "a new @dfn{generation} of the system is created---without modifying or " | |
19177 | "deleting previous generations. Old system generations get an entry in the " | |
19178 | "bootloader boot menu, allowing you to boot them in case something went wrong " | |
39764ef8 JL |
19179 | "with the latest generation. Reassuring, no? The @command{guix system list-" |
19180 | "generations} command lists the system generations available on disk. It is " | |
19181 | "also possible to roll back the system via the commands @command{guix system " | |
19182 | "roll-back} and @command{guix system switch-generation}." | |
b9fe8fd6 JL |
19183 | msgstr "" |
19184 | ||
19185 | #. type: Plain text | |
19186 | #: doc/guix.texi:8912 | |
19187 | msgid "" | |
19188 | "Although the command @command{guix system reconfigure} will not modify " | |
19189 | "previous generations, must take care when the current generation is not the " | |
19190 | "latest (e.g., after invoking @command{guix system roll-back}), since the " | |
19191 | "operation might overwrite a later generation (@pxref{Invoking guix system})." | |
19192 | msgstr "" | |
19193 | ||
19194 | #. type: unnumberedsubsubsec | |
19195 | #: doc/guix.texi:8913 | |
19196 | #, no-wrap | |
19197 | msgid "The Programming Interface" | |
19198 | msgstr "" | |
19199 | ||
19200 | #. type: Plain text | |
19201 | #: doc/guix.texi:8918 | |
19202 | msgid "" | |
19203 | "At the Scheme level, the bulk of an @code{operating-system} declaration is " | |
19204 | "instantiated with the following monadic procedure (@pxref{The Store Monad}):" | |
19205 | msgstr "" | |
19206 | ||
19207 | #. type: deffn | |
19208 | #: doc/guix.texi:8919 | |
19209 | #, no-wrap | |
19210 | msgid "{Monadic Procedure} operating-system-derivation os" | |
19211 | msgstr "" | |
19212 | ||
19213 | #. type: deffn | |
19214 | #: doc/guix.texi:8922 | |
19215 | msgid "" | |
19216 | "Return a derivation that builds @var{os}, an @code{operating-system} object " | |
19217 | "(@pxref{Derivations})." | |
19218 | msgstr "" | |
19219 | ||
19220 | #. type: deffn | |
19221 | #: doc/guix.texi:8926 | |
19222 | msgid "" | |
19223 | "The output of the derivation is a single directory that refers to all the " | |
19224 | "packages, configuration files, and other supporting files needed to " | |
19225 | "instantiate @var{os}." | |
19226 | msgstr "" | |
19227 | ||
19228 | #. type: Plain text | |
19229 | #: doc/guix.texi:8931 | |
19230 | msgid "" | |
19231 | "This procedure is provided by the @code{(gnu system)} module. Along with " | |
19232 | "@code{(gnu services)} (@pxref{Services}), this module contains the guts of " | |
19233 | "GuixSD. Make sure to visit it!" | |
19234 | msgstr "" | |
19235 | ||
19236 | #. type: subsection | |
19237 | #: doc/guix.texi:8934 | |
19238 | #, no-wrap | |
19239 | msgid "@code{operating-system} Reference" | |
19240 | msgstr "" | |
19241 | ||
19242 | #. type: Plain text | |
19243 | #: doc/guix.texi:8939 | |
19244 | msgid "" | |
19245 | "This section summarizes all the options available in @code{operating-system} " | |
19246 | "declarations (@pxref{Using the Configuration System})." | |
19247 | msgstr "" | |
19248 | ||
19249 | #. type: deftp | |
19250 | #: doc/guix.texi:8940 | |
19251 | #, no-wrap | |
19252 | msgid "{Data Type} operating-system" | |
19253 | msgstr "" | |
19254 | ||
19255 | #. type: deftp | |
19256 | #: doc/guix.texi:8944 | |
19257 | msgid "" | |
19258 | "This is the data type representing an operating system configuration. By " | |
19259 | "that, we mean all the global system configuration, not per-user " | |
19260 | "configuration (@pxref{Using the Configuration System})." | |
19261 | msgstr "" | |
19262 | ||
19263 | #. type: item | |
19264 | #: doc/guix.texi:8946 | |
19265 | #, no-wrap | |
19266 | msgid "@code{kernel} (default: @var{linux-libre})" | |
19267 | msgstr "" | |
19268 | ||
19269 | #. type: table | |
19270 | #: doc/guix.texi:8950 | |
19271 | msgid "" | |
19272 | "The package object of the operating system kernel to use@footnote{Currently " | |
19273 | "only the Linux-libre kernel is supported. In the future, it will be " | |
19274 | "possible to use the GNU@tie{}Hurd.}." | |
19275 | msgstr "" | |
19276 | ||
19277 | #. type: item | |
19278 | #: doc/guix.texi:8951 | |
19279 | #, no-wrap | |
19280 | msgid "@code{kernel-arguments} (default: @code{'()})" | |
19281 | msgstr "" | |
19282 | ||
19283 | #. type: table | |
19284 | #: doc/guix.texi:8954 | |
19285 | msgid "" | |
19286 | "List of strings or gexps representing additional arguments to pass on the " | |
19287 | "command-line of the kernel---e.g., @code{(\"console=ttyS0\")}." | |
19288 | msgstr "" | |
19289 | ||
19290 | #. type: code{#1} | |
39764ef8 | 19291 | #: doc/guix.texi:8955 doc/guix.texi:20130 doc/guix.texi:20149 |
b9fe8fd6 JL |
19292 | #, no-wrap |
19293 | msgid "bootloader" | |
19294 | msgstr "" | |
19295 | ||
19296 | #. type: table | |
19297 | #: doc/guix.texi:8957 | |
19298 | msgid "" | |
39764ef8 | 19299 | "The system bootloader configuration object. @xref{Bootloader Configuration}." |
b9fe8fd6 JL |
19300 | msgstr "" |
19301 | ||
19302 | #. type: item | |
19303 | #: doc/guix.texi:8958 | |
19304 | #, no-wrap | |
19305 | msgid "@code{initrd-modules} (default: @code{%base-initrd-modules})" | |
19306 | msgstr "" | |
19307 | ||
19308 | #. type: code{#1} | |
39764ef8 JL |
19309 | #: doc/guix.texi:8959 doc/guix.texi:19970 doc/guix.texi:20073 |
19310 | #: doc/guix.texi:20268 | |
b9fe8fd6 JL |
19311 | #, no-wrap |
19312 | msgid "initrd" | |
19313 | msgstr "" | |
19314 | ||
19315 | #. type: cindex | |
39764ef8 | 19316 | #: doc/guix.texi:8960 doc/guix.texi:19971 doc/guix.texi:20074 |
b9fe8fd6 JL |
19317 | #, no-wrap |
19318 | msgid "initial RAM disk" | |
19319 | msgstr "" | |
19320 | ||
19321 | #. type: table | |
19322 | #: doc/guix.texi:8963 | |
19323 | msgid "" | |
19324 | "The list of Linux kernel modules that need to be available in the initial " | |
19325 | "RAM disk. @xref{Initial RAM Disk}." | |
19326 | msgstr "" | |
19327 | ||
19328 | #. type: item | |
19329 | #: doc/guix.texi:8964 | |
19330 | #, no-wrap | |
19331 | msgid "@code{initrd} (default: @code{base-initrd})" | |
19332 | msgstr "" | |
19333 | ||
19334 | #. type: table | |
19335 | #: doc/guix.texi:8968 | |
19336 | msgid "" | |
19337 | "A monadic procedure that returns an initial RAM disk for the Linux kernel. " | |
19338 | "This field is provided to support low-level customization and should rarely " | |
19339 | "be needed for casual use. @xref{Initial RAM Disk}." | |
19340 | msgstr "" | |
19341 | ||
19342 | #. type: item | |
19343 | #: doc/guix.texi:8969 | |
19344 | #, no-wrap | |
19345 | msgid "@code{firmware} (default: @var{%base-firmware})" | |
19346 | msgstr "" | |
19347 | ||
19348 | #. type: cindex | |
19349 | #: doc/guix.texi:8970 | |
19350 | #, no-wrap | |
19351 | msgid "firmware" | |
19352 | msgstr "" | |
19353 | ||
19354 | #. type: table | |
19355 | #: doc/guix.texi:8972 | |
19356 | msgid "List of firmware packages loadable by the operating system kernel." | |
19357 | msgstr "" | |
19358 | ||
19359 | #. type: table | |
19360 | #: doc/guix.texi:8977 | |
19361 | msgid "" | |
19362 | "The default includes firmware needed for Atheros- and Broadcom-based WiFi " | |
19363 | "devices (Linux-libre modules @code{ath9k} and @code{b43-open}, " | |
19364 | "respectively). @xref{Hardware Considerations}, for more info on supported " | |
19365 | "hardware." | |
19366 | msgstr "" | |
19367 | ||
19368 | #. type: code{#1} | |
19369 | #: doc/guix.texi:8978 | |
19370 | #, no-wrap | |
19371 | msgid "host-name" | |
19372 | msgstr "" | |
19373 | ||
19374 | #. type: table | |
19375 | #: doc/guix.texi:8980 | |
19376 | msgid "The host name." | |
19377 | msgstr "" | |
19378 | ||
19379 | #. type: code{#1} | |
19380 | #: doc/guix.texi:8981 | |
19381 | #, no-wrap | |
19382 | msgid "hosts-file" | |
19383 | msgstr "" | |
19384 | ||
19385 | #. type: cindex | |
19386 | #: doc/guix.texi:8982 | |
19387 | #, no-wrap | |
19388 | msgid "hosts file" | |
19389 | msgstr "" | |
19390 | ||
19391 | #. type: table | |
19392 | #: doc/guix.texi:8987 | |
19393 | msgid "" | |
19394 | "A file-like object (@pxref{G-Expressions, file-like objects}) for use as " | |
19395 | "@file{/etc/hosts} (@pxref{Host Names,,, libc, The GNU C Library Reference " | |
19396 | "Manual}). The default is a file with entries for @code{localhost} and " | |
19397 | "@var{host-name}." | |
19398 | msgstr "" | |
19399 | ||
19400 | #. type: item | |
19401 | #: doc/guix.texi:8988 | |
19402 | #, no-wrap | |
19403 | msgid "@code{mapped-devices} (default: @code{'()})" | |
19404 | msgstr "" | |
19405 | ||
19406 | #. type: table | |
19407 | #: doc/guix.texi:8990 | |
19408 | msgid "A list of mapped devices. @xref{Mapped Devices}." | |
19409 | msgstr "" | |
19410 | ||
19411 | #. type: code{#1} | |
19412 | #: doc/guix.texi:8991 | |
19413 | #, no-wrap | |
19414 | msgid "file-systems" | |
19415 | msgstr "" | |
19416 | ||
19417 | #. type: table | |
19418 | #: doc/guix.texi:8993 | |
19419 | msgid "A list of file systems. @xref{File Systems}." | |
19420 | msgstr "" | |
19421 | ||
19422 | #. type: item | |
19423 | #: doc/guix.texi:8994 | |
19424 | #, no-wrap | |
19425 | msgid "@code{swap-devices} (default: @code{'()})" | |
19426 | msgstr "" | |
19427 | ||
19428 | #. type: cindex | |
19429 | #: doc/guix.texi:8995 | |
19430 | #, no-wrap | |
19431 | msgid "swap devices" | |
19432 | msgstr "" | |
19433 | ||
19434 | #. type: table | |
19435 | #: doc/guix.texi:9002 | |
19436 | msgid "" | |
39764ef8 JL |
19437 | "A list of strings identifying devices or files to be used for ``swap " |
19438 | "space'' (@pxref{Memory Concepts,,, libc, The GNU C Library Reference " | |
19439 | "Manual}). For example, @code{'(\"/dev/sda3\")} or @code{'(\"/swapfile\")}. " | |
19440 | "It is possible to specify a swap file in a file system on a mapped device, " | |
19441 | "provided that the necessary device mapping and file system are also " | |
19442 | "specified. @xref{Mapped Devices} and @ref{File Systems}." | |
b9fe8fd6 JL |
19443 | msgstr "" |
19444 | ||
19445 | #. type: item | |
19446 | #: doc/guix.texi:9003 | |
19447 | #, no-wrap | |
19448 | msgid "@code{users} (default: @code{%base-user-accounts})" | |
19449 | msgstr "" | |
19450 | ||
19451 | #. type: itemx | |
19452 | #: doc/guix.texi:9004 | |
19453 | #, no-wrap | |
19454 | msgid "@code{groups} (default: @var{%base-groups})" | |
19455 | msgstr "" | |
19456 | ||
19457 | #. type: table | |
19458 | #: doc/guix.texi:9006 | |
19459 | msgid "List of user accounts and groups. @xref{User Accounts}." | |
19460 | msgstr "" | |
19461 | ||
19462 | #. type: table | |
19463 | #: doc/guix.texi:9009 | |
19464 | msgid "" | |
19465 | "If the @code{users} list lacks a user account with UID@tie{}0, a ``root'' " | |
19466 | "account with UID@tie{}0 is automatically added." | |
19467 | msgstr "" | |
19468 | ||
19469 | #. type: item | |
19470 | #: doc/guix.texi:9010 | |
19471 | #, no-wrap | |
19472 | msgid "@code{skeletons} (default: @code{(default-skeletons)})" | |
19473 | msgstr "" | |
19474 | ||
19475 | #. type: table | |
19476 | #: doc/guix.texi:9014 | |
19477 | msgid "" | |
39764ef8 JL |
19478 | "A list target file name/file-like object tuples (@pxref{G-Expressions, file-" |
19479 | "like objects}). These are the skeleton files that will be added to the home " | |
19480 | "directory of newly-created user accounts." | |
b9fe8fd6 JL |
19481 | msgstr "" |
19482 | ||
19483 | #. type: table | |
19484 | #: doc/guix.texi:9016 | |
19485 | msgid "For instance, a valid value may look like this:" | |
19486 | msgstr "" | |
19487 | ||
19488 | #. type: example | |
19489 | #: doc/guix.texi:9022 | |
19490 | #, no-wrap | |
19491 | msgid "" | |
19492 | "`((\".bashrc\" ,(plain-file \"bashrc\" \"echo Hello\\n\"))\n" | |
19493 | " (\".guile\" ,(plain-file \"guile\"\n" | |
19494 | " \"(use-modules (ice-9 readline))\n" | |
19495 | " (activate-readline)\")))\n" | |
19496 | msgstr "" | |
19497 | ||
19498 | #. type: item | |
19499 | #: doc/guix.texi:9024 | |
19500 | #, no-wrap | |
19501 | msgid "@code{issue} (default: @var{%default-issue})" | |
19502 | msgstr "" | |
19503 | ||
19504 | #. type: table | |
19505 | #: doc/guix.texi:9027 | |
19506 | msgid "" | |
19507 | "A string denoting the contents of the @file{/etc/issue} file, which is " | |
19508 | "displayed when users log in on a text console." | |
19509 | msgstr "" | |
19510 | ||
19511 | #. type: item | |
19512 | #: doc/guix.texi:9028 | |
19513 | #, no-wrap | |
19514 | msgid "@code{packages} (default: @var{%base-packages})" | |
19515 | msgstr "" | |
19516 | ||
19517 | #. type: table | |
19518 | #: doc/guix.texi:9031 | |
19519 | msgid "" | |
19520 | "The set of packages installed in the global profile, which is accessible at " | |
19521 | "@file{/run/current-system/profile}." | |
19522 | msgstr "" | |
19523 | ||
19524 | #. type: table | |
19525 | #: doc/guix.texi:9035 | |
19526 | msgid "" | |
19527 | "The default set includes core utilities and it is good practice to install " | |
19528 | "non-core utilities in user profiles (@pxref{Invoking guix package})." | |
19529 | msgstr "" | |
19530 | ||
19531 | #. type: code{#1} | |
19532 | #: doc/guix.texi:9036 | |
19533 | #, no-wrap | |
19534 | msgid "timezone" | |
19535 | msgstr "" | |
19536 | ||
19537 | #. type: table | |
19538 | #: doc/guix.texi:9038 | |
19539 | msgid "A timezone identifying string---e.g., @code{\"Europe/Paris\"}." | |
19540 | msgstr "" | |
19541 | ||
19542 | #. type: table | |
19543 | #: doc/guix.texi:9042 | |
19544 | msgid "" | |
19545 | "You can run the @command{tzselect} command to find out which timezone string " | |
19546 | "corresponds to your region. Choosing an invalid timezone name causes " | |
19547 | "@command{guix system} to fail." | |
19548 | msgstr "" | |
19549 | ||
19550 | #. type: item | |
19551 | #: doc/guix.texi:9043 | |
19552 | #, no-wrap | |
19553 | msgid "@code{locale} (default: @code{\"en_US.utf8\"})" | |
19554 | msgstr "" | |
19555 | ||
19556 | #. type: table | |
19557 | #: doc/guix.texi:9046 | |
19558 | msgid "" | |
19559 | "The name of the default locale (@pxref{Locale Names,,, libc, The GNU C " | |
19560 | "Library Reference Manual}). @xref{Locales}, for more information." | |
19561 | msgstr "" | |
19562 | ||
19563 | #. type: item | |
19564 | #: doc/guix.texi:9047 | |
19565 | #, no-wrap | |
19566 | msgid "@code{locale-definitions} (default: @var{%default-locale-definitions})" | |
19567 | msgstr "" | |
19568 | ||
19569 | #. type: table | |
19570 | #: doc/guix.texi:9050 | |
19571 | msgid "" | |
19572 | "The list of locale definitions to be compiled and that may be used at run " | |
19573 | "time. @xref{Locales}." | |
19574 | msgstr "" | |
19575 | ||
19576 | #. type: item | |
19577 | #: doc/guix.texi:9051 | |
19578 | #, no-wrap | |
19579 | msgid "@code{locale-libcs} (default: @code{(list @var{glibc})})" | |
19580 | msgstr "" | |
19581 | ||
19582 | #. type: table | |
19583 | #: doc/guix.texi:9055 | |
19584 | msgid "" | |
19585 | "The list of GNU@tie{}libc packages whose locale data and tools are used to " | |
19586 | "build the locale definitions. @xref{Locales}, for compatibility " | |
19587 | "considerations that justify this option." | |
19588 | msgstr "" | |
19589 | ||
19590 | #. type: item | |
19591 | #: doc/guix.texi:9056 | |
19592 | #, no-wrap | |
19593 | msgid "@code{name-service-switch} (default: @var{%default-nss})" | |
19594 | msgstr "" | |
19595 | ||
19596 | #. type: table | |
19597 | #: doc/guix.texi:9060 | |
19598 | msgid "" | |
39764ef8 JL |
19599 | "Configuration of the libc name service switch (NSS)---a @code{<name-service-" |
19600 | "switch>} object. @xref{Name Service Switch}, for details." | |
b9fe8fd6 JL |
19601 | msgstr "" |
19602 | ||
19603 | #. type: item | |
19604 | #: doc/guix.texi:9061 | |
19605 | #, no-wrap | |
19606 | msgid "@code{services} (default: @var{%base-services})" | |
19607 | msgstr "" | |
19608 | ||
19609 | #. type: table | |
19610 | #: doc/guix.texi:9063 | |
19611 | msgid "A list of service objects denoting system services. @xref{Services}." | |
19612 | msgstr "" | |
19613 | ||
19614 | #. type: item | |
19615 | #: doc/guix.texi:9064 | |
19616 | #, no-wrap | |
19617 | msgid "@code{pam-services} (default: @code{(base-pam-services)})" | |
19618 | msgstr "" | |
19619 | ||
19620 | #. type: cindex | |
19621 | #: doc/guix.texi:9065 | |
19622 | #, no-wrap | |
19623 | msgid "PAM" | |
19624 | msgstr "" | |
19625 | ||
19626 | #. type: cindex | |
19627 | #: doc/guix.texi:9066 | |
19628 | #, no-wrap | |
19629 | msgid "pluggable authentication modules" | |
19630 | msgstr "" | |
19631 | ||
19632 | #. type: table | |
19633 | #: doc/guix.texi:9069 | |
19634 | msgid "Linux @dfn{pluggable authentication module} (PAM) services." | |
19635 | msgstr "" | |
19636 | ||
19637 | #. type: item | |
19638 | #: doc/guix.texi:9070 | |
19639 | #, no-wrap | |
19640 | msgid "@code{setuid-programs} (default: @var{%setuid-programs})" | |
19641 | msgstr "" | |
19642 | ||
19643 | #. type: table | |
19644 | #: doc/guix.texi:9073 | |
19645 | msgid "" | |
19646 | "List of string-valued G-expressions denoting setuid programs. @xref{Setuid " | |
19647 | "Programs}." | |
19648 | msgstr "" | |
19649 | ||
19650 | #. type: item | |
19651 | #: doc/guix.texi:9074 | |
19652 | #, no-wrap | |
19653 | msgid "@code{sudoers-file} (default: @var{%sudoers-specification})" | |
19654 | msgstr "" | |
19655 | ||
19656 | #. type: cindex | |
19657 | #: doc/guix.texi:9075 | |
19658 | #, no-wrap | |
19659 | msgid "sudoers file" | |
19660 | msgstr "" | |
19661 | ||
19662 | #. type: table | |
19663 | #: doc/guix.texi:9078 | |
19664 | msgid "" | |
39764ef8 JL |
19665 | "The contents of the @file{/etc/sudoers} file as a file-like object (@pxref{G-" |
19666 | "Expressions, @code{local-file} and @code{plain-file}})." | |
b9fe8fd6 JL |
19667 | msgstr "" |
19668 | ||
19669 | #. type: table | |
19670 | #: doc/guix.texi:9083 | |
19671 | msgid "" | |
19672 | "This file specifies which users can use the @command{sudo} command, what " | |
19673 | "they are allowed to do, and what privileges they may gain. The default is " | |
19674 | "that only @code{root} and members of the @code{wheel} group may use " | |
19675 | "@code{sudo}." | |
19676 | msgstr "" | |
19677 | ||
19678 | #. type: Plain text | |
19679 | #: doc/guix.texi:9094 | |
19680 | msgid "" | |
39764ef8 JL |
19681 | "The list of file systems to be mounted is specified in the @code{file-" |
19682 | "systems} field of the operating system declaration (@pxref{Using the " | |
19683 | "Configuration System}). Each file system is declared using the @code{file-" | |
19684 | "system} form, like this:" | |
b9fe8fd6 JL |
19685 | msgstr "" |
19686 | ||
19687 | #. type: example | |
19688 | #: doc/guix.texi:9100 | |
19689 | #, no-wrap | |
19690 | msgid "" | |
19691 | "(file-system\n" | |
19692 | " (mount-point \"/home\")\n" | |
19693 | " (device \"/dev/sda3\")\n" | |
19694 | " (type \"ext4\"))\n" | |
19695 | msgstr "" | |
19696 | ||
19697 | #. type: Plain text | |
19698 | #: doc/guix.texi:9104 | |
19699 | msgid "" | |
19700 | "As usual, some of the fields are mandatory---those shown in the example " | |
19701 | "above---while others can be omitted. These are described below." | |
19702 | msgstr "" | |
19703 | ||
19704 | #. type: deftp | |
19705 | #: doc/guix.texi:9105 | |
19706 | #, no-wrap | |
19707 | msgid "{Data Type} file-system" | |
19708 | msgstr "" | |
19709 | ||
19710 | #. type: deftp | |
19711 | #: doc/guix.texi:9108 | |
19712 | msgid "" | |
19713 | "Objects of this type represent file systems to be mounted. They contain the " | |
19714 | "following members:" | |
19715 | msgstr "" | |
19716 | ||
19717 | #. type: item | |
19718 | #: doc/guix.texi:9110 doc/guix.texi:9294 | |
19719 | #, no-wrap | |
19720 | msgid "type" | |
19721 | msgstr "" | |
19722 | ||
19723 | #. type: table | |
19724 | #: doc/guix.texi:9113 | |
19725 | msgid "" | |
19726 | "This is a string specifying the type of the file system---e.g., " | |
19727 | "@code{\"ext4\"}." | |
19728 | msgstr "" | |
19729 | ||
19730 | #. type: code{#1} | |
19731 | #: doc/guix.texi:9114 | |
19732 | #, no-wrap | |
19733 | msgid "mount-point" | |
19734 | msgstr "" | |
19735 | ||
19736 | #. type: table | |
19737 | #: doc/guix.texi:9116 | |
19738 | msgid "This designates the place where the file system is to be mounted." | |
19739 | msgstr "" | |
19740 | ||
19741 | #. type: code{#1} | |
19742 | #: doc/guix.texi:9117 | |
19743 | #, no-wrap | |
19744 | msgid "device" | |
19745 | msgstr "" | |
19746 | ||
19747 | #. type: table | |
19748 | #: doc/guix.texi:9121 | |
19749 | msgid "" | |
19750 | "This names the ``source'' of the file system. By default it is the name of " | |
19751 | "a node under @file{/dev}, but its meaning depends on the @code{title} field " | |
19752 | "described below." | |
19753 | msgstr "" | |
19754 | ||
19755 | #. type: item | |
19756 | #: doc/guix.texi:9122 | |
19757 | #, no-wrap | |
19758 | msgid "@code{title} (default: @code{'device})" | |
19759 | msgstr "" | |
19760 | ||
19761 | #. type: table | |
19762 | #: doc/guix.texi:9125 | |
19763 | msgid "" | |
19764 | "This is a symbol that specifies how the @code{device} field is to be " | |
19765 | "interpreted." | |
19766 | msgstr "" | |
19767 | ||
19768 | #. type: table | |
19769 | #: doc/guix.texi:9130 | |
19770 | msgid "" | |
19771 | "When it is the symbol @code{device}, then the @code{device} field is " | |
19772 | "interpreted as a file name; when it is @code{label}, then @code{device} is " | |
19773 | "interpreted as a file system label name; when it is @code{uuid}, " | |
19774 | "@code{device} is interpreted as a file system unique identifier (UUID)." | |
19775 | msgstr "" | |
19776 | ||
19777 | #. type: table | |
19778 | #: doc/guix.texi:9138 | |
19779 | msgid "" | |
19780 | "UUIDs may be converted from their string representation (as shown by the " | |
19781 | "@command{tune2fs -l} command) using the @code{uuid} form@footnote{The " | |
39764ef8 JL |
19782 | "@code{uuid} form expects 16-byte UUIDs as defined in @uref{https://tools." |
19783 | "ietf.org/html/rfc4122, RFC@tie{}4122}. This is the form of UUID used by the " | |
19784 | "ext2 family of file systems and others, but it is different from ``UUIDs'' " | |
19785 | "found in FAT file systems, for instance.}, like this:" | |
b9fe8fd6 JL |
19786 | msgstr "" |
19787 | ||
19788 | #. type: example | |
19789 | #: doc/guix.texi:9145 | |
19790 | #, no-wrap | |
19791 | msgid "" | |
19792 | "(file-system\n" | |
19793 | " (mount-point \"/home\")\n" | |
19794 | " (type \"ext4\")\n" | |
19795 | " (title 'uuid)\n" | |
19796 | " (device (uuid \"4dab5feb-d176-45de-b287-9b0a6e4c01cb\")))\n" | |
19797 | msgstr "" | |
19798 | ||
19799 | #. type: table | |
19800 | #: doc/guix.texi:9154 | |
19801 | msgid "" | |
19802 | "The @code{label} and @code{uuid} options offer a way to refer to file " | |
19803 | "systems without having to hard-code their actual device name@footnote{Note " | |
19804 | "that, while it is tempting to use @file{/dev/disk/by-uuid} and similar " | |
19805 | "device names to achieve the same result, this is not recommended: These " | |
19806 | "special device nodes are created by the udev daemon and may be unavailable " | |
19807 | "at the time the device is mounted.}." | |
19808 | msgstr "" | |
19809 | ||
19810 | #. type: table | |
19811 | #: doc/guix.texi:9161 | |
19812 | msgid "" | |
19813 | "However, when the source of a file system is a mapped device (@pxref{Mapped " | |
19814 | "Devices}), its @code{device} field @emph{must} refer to the mapped device " | |
19815 | "name---e.g., @file{/dev/mapper/root-partition}---and consequently " | |
19816 | "@code{title} must be set to @code{'device}. This is required so that the " | |
19817 | "system knows that mounting the file system depends on having the " | |
19818 | "corresponding device mapping established." | |
19819 | msgstr "" | |
19820 | ||
19821 | #. type: item | |
19822 | #: doc/guix.texi:9162 | |
19823 | #, no-wrap | |
19824 | msgid "@code{flags} (default: @code{'()})" | |
19825 | msgstr "" | |
19826 | ||
19827 | #. type: table | |
19828 | #: doc/guix.texi:9167 | |
19829 | msgid "" | |
19830 | "This is a list of symbols denoting mount flags. Recognized flags include " | |
19831 | "@code{read-only}, @code{bind-mount}, @code{no-dev} (disallow access to " | |
39764ef8 JL |
19832 | "special files), @code{no-suid} (ignore setuid and setgid bits), and @code{no-" |
19833 | "exec} (disallow program execution.)" | |
b9fe8fd6 JL |
19834 | msgstr "" |
19835 | ||
19836 | #. type: item | |
19837 | #: doc/guix.texi:9168 | |
19838 | #, no-wrap | |
19839 | msgid "@code{options} (default: @code{#f})" | |
19840 | msgstr "" | |
19841 | ||
19842 | #. type: table | |
19843 | #: doc/guix.texi:9170 | |
19844 | msgid "This is either @code{#f}, or a string denoting mount options." | |
19845 | msgstr "" | |
19846 | ||
19847 | #. type: item | |
19848 | #: doc/guix.texi:9171 | |
19849 | #, no-wrap | |
19850 | msgid "@code{mount?} (default: @code{#t})" | |
19851 | msgstr "" | |
19852 | ||
19853 | #. type: table | |
19854 | #: doc/guix.texi:9176 | |
19855 | msgid "" | |
19856 | "This value indicates whether to automatically mount the file system when the " | |
19857 | "system is brought up. When set to @code{#f}, the file system gets an entry " | |
19858 | "in @file{/etc/fstab} (read by the @command{mount} command) but is not " | |
19859 | "automatically mounted." | |
19860 | msgstr "" | |
19861 | ||
19862 | #. type: item | |
19863 | #: doc/guix.texi:9177 | |
19864 | #, no-wrap | |
19865 | msgid "@code{needed-for-boot?} (default: @code{#f})" | |
19866 | msgstr "" | |
19867 | ||
19868 | #. type: table | |
19869 | #: doc/guix.texi:9182 | |
19870 | msgid "" | |
19871 | "This Boolean value indicates whether the file system is needed when " | |
19872 | "booting. If that is true, then the file system is mounted when the initial " | |
19873 | "RAM disk (initrd) is loaded. This is always the case, for instance, for the " | |
19874 | "root file system." | |
19875 | msgstr "" | |
19876 | ||
19877 | #. type: item | |
19878 | #: doc/guix.texi:9183 | |
19879 | #, no-wrap | |
19880 | msgid "@code{check?} (default: @code{#t})" | |
19881 | msgstr "" | |
19882 | ||
19883 | #. type: table | |
19884 | #: doc/guix.texi:9186 | |
19885 | msgid "" | |
19886 | "This Boolean indicates whether the file system needs to be checked for " | |
19887 | "errors before being mounted." | |
19888 | msgstr "" | |
19889 | ||
19890 | #. type: item | |
19891 | #: doc/guix.texi:9187 | |
19892 | #, no-wrap | |
19893 | msgid "@code{create-mount-point?} (default: @code{#f})" | |
19894 | msgstr "" | |
19895 | ||
19896 | #. type: table | |
19897 | #: doc/guix.texi:9189 | |
19898 | msgid "When true, the mount point is created if it does not exist yet." | |
19899 | msgstr "" | |
19900 | ||
19901 | #. type: item | |
19902 | #: doc/guix.texi:9190 | |
19903 | #, no-wrap | |
19904 | msgid "@code{dependencies} (default: @code{'()})" | |
19905 | msgstr "" | |
19906 | ||
19907 | #. type: table | |
19908 | #: doc/guix.texi:9194 | |
19909 | msgid "" | |
19910 | "This is a list of @code{<file-system>} or @code{<mapped-device>} objects " | |
19911 | "representing file systems that must be mounted or mapped devices that must " | |
19912 | "be opened before (and unmounted or closed after) this one." | |
19913 | msgstr "" | |
19914 | ||
19915 | #. type: table | |
19916 | #: doc/guix.texi:9198 | |
19917 | msgid "" | |
19918 | "As an example, consider a hierarchy of mounts: @file{/sys/fs/cgroup} is a " | |
19919 | "dependency of @file{/sys/fs/cgroup/cpu} and @file{/sys/fs/cgroup/memory}." | |
19920 | msgstr "" | |
19921 | ||
19922 | #. type: table | |
19923 | #: doc/guix.texi:9201 | |
19924 | msgid "" | |
19925 | "Another example is a file system that depends on a mapped device, for " | |
19926 | "example for an encrypted partition (@pxref{Mapped Devices})." | |
19927 | msgstr "" | |
19928 | ||
19929 | #. type: Plain text | |
19930 | #: doc/guix.texi:9206 | |
39764ef8 JL |
19931 | msgid "" |
19932 | "The @code{(gnu system file-systems)} exports the following useful variables." | |
b9fe8fd6 JL |
19933 | msgstr "" |
19934 | ||
19935 | #. type: defvr | |
19936 | #: doc/guix.texi:9207 | |
19937 | #, no-wrap | |
19938 | msgid "{Scheme Variable} %base-file-systems" | |
19939 | msgstr "" | |
19940 | ||
19941 | #. type: defvr | |
19942 | #: doc/guix.texi:9212 | |
19943 | msgid "" | |
19944 | "These are essential file systems that are required on normal systems, such " | |
19945 | "as @var{%pseudo-terminal-file-system} and @var{%immutable-store} (see " | |
19946 | "below.) Operating system declarations should always contain at least these." | |
19947 | msgstr "" | |
19948 | ||
19949 | #. type: defvr | |
19950 | #: doc/guix.texi:9214 | |
19951 | #, no-wrap | |
19952 | msgid "{Scheme Variable} %pseudo-terminal-file-system" | |
19953 | msgstr "" | |
19954 | ||
19955 | #. type: defvr | |
19956 | #: doc/guix.texi:9220 | |
19957 | msgid "" | |
19958 | "This is the file system to be mounted as @file{/dev/pts}. It supports " | |
19959 | "@dfn{pseudo-terminals} created @i{via} @code{openpty} and similar functions " | |
19960 | "(@pxref{Pseudo-Terminals,,, libc, The GNU C Library Reference Manual}). " | |
19961 | "Pseudo-terminals are used by terminal emulators such as @command{xterm}." | |
19962 | msgstr "" | |
19963 | ||
19964 | #. type: defvr | |
19965 | #: doc/guix.texi:9222 | |
19966 | #, no-wrap | |
19967 | msgid "{Scheme Variable} %shared-memory-file-system" | |
19968 | msgstr "" | |
19969 | ||
19970 | #. type: defvr | |
19971 | #: doc/guix.texi:9226 | |
19972 | msgid "" | |
19973 | "This file system is mounted as @file{/dev/shm} and is used to support memory " | |
19974 | "sharing across processes (@pxref{Memory-mapped I/O, @code{shm_open},, libc, " | |
19975 | "The GNU C Library Reference Manual})." | |
19976 | msgstr "" | |
19977 | ||
19978 | #. type: defvr | |
19979 | #: doc/guix.texi:9228 | |
19980 | #, no-wrap | |
19981 | msgid "{Scheme Variable} %immutable-store" | |
19982 | msgstr "" | |
19983 | ||
19984 | #. type: defvr | |
19985 | #: doc/guix.texi:9233 | |
19986 | msgid "" | |
19987 | "This file system performs a read-only ``bind mount'' of @file{/gnu/store}, " | |
19988 | "making it read-only for all the users including @code{root}. This prevents " | |
19989 | "against accidental modification by software running as @code{root} or by " | |
19990 | "system administrators." | |
19991 | msgstr "" | |
19992 | ||
19993 | #. type: defvr | |
19994 | #: doc/guix.texi:9236 | |
19995 | msgid "" | |
39764ef8 JL |
19996 | "The daemon itself is still able to write to the store: it remounts it read-" |
19997 | "write in its own ``name space.''" | |
b9fe8fd6 JL |
19998 | msgstr "" |
19999 | ||
20000 | #. type: defvr | |
20001 | #: doc/guix.texi:9238 | |
20002 | #, no-wrap | |
20003 | msgid "{Scheme Variable} %binary-format-file-system" | |
20004 | msgstr "" | |
20005 | ||
20006 | #. type: defvr | |
20007 | #: doc/guix.texi:9242 | |
20008 | msgid "" | |
20009 | "The @code{binfmt_misc} file system, which allows handling of arbitrary " | |
20010 | "executable file types to be delegated to user space. This requires the " | |
20011 | "@code{binfmt.ko} kernel module to be loaded." | |
20012 | msgstr "" | |
20013 | ||
20014 | #. type: defvr | |
20015 | #: doc/guix.texi:9244 | |
20016 | #, no-wrap | |
20017 | msgid "{Scheme Variable} %fuse-control-file-system" | |
20018 | msgstr "" | |
20019 | ||
20020 | #. type: defvr | |
20021 | #: doc/guix.texi:9248 | |
20022 | msgid "" | |
20023 | "The @code{fusectl} file system, which allows unprivileged users to mount and " | |
20024 | "unmount user-space FUSE file systems. This requires the @code{fuse.ko} " | |
20025 | "kernel module to be loaded." | |
20026 | msgstr "" | |
20027 | ||
20028 | #. type: cindex | |
20029 | #: doc/guix.texi:9253 | |
20030 | #, no-wrap | |
20031 | msgid "device mapping" | |
20032 | msgstr "" | |
20033 | ||
20034 | #. type: cindex | |
20035 | #: doc/guix.texi:9254 | |
20036 | #, no-wrap | |
20037 | msgid "mapped devices" | |
20038 | msgstr "" | |
20039 | ||
20040 | #. type: Plain text | |
20041 | #: doc/guix.texi:9272 | |
20042 | msgid "" | |
20043 | "The Linux kernel has a notion of @dfn{device mapping}: a block device, such " | |
20044 | "as a hard disk partition, can be @dfn{mapped} into another device, usually " | |
20045 | "in @code{/dev/mapper/}, with additional processing over the data that flows " | |
20046 | "through it@footnote{Note that the GNU@tie{}Hurd makes no difference between " | |
20047 | "the concept of a ``mapped device'' and that of a file system: both boil down " | |
20048 | "to @emph{translating} input/output operations made on a file to operations " | |
20049 | "on its backing store. Thus, the Hurd implements mapped devices, like file " | |
20050 | "systems, using the generic @dfn{translator} mechanism (@pxref{Translators,,, " | |
20051 | "hurd, The GNU Hurd Reference Manual}).}. A typical example is encryption " | |
20052 | "device mapping: all writes to the mapped device are encrypted, and all reads " | |
20053 | "are deciphered, transparently. Guix extends this notion by considering any " | |
20054 | "device or set of devices that are @dfn{transformed} in some way to create a " | |
20055 | "new device; for instance, RAID devices are obtained by @dfn{assembling} " | |
20056 | "several other devices, such as hard disks or partitions, into a new one that " | |
20057 | "behaves as one partition. Other examples, not yet implemented, are LVM " | |
20058 | "logical volumes." | |
20059 | msgstr "" | |
20060 | ||
20061 | #. type: Plain text | |
20062 | #: doc/guix.texi:9275 | |
20063 | msgid "" | |
20064 | "Mapped devices are declared using the @code{mapped-device} form, defined as " | |
20065 | "follows; for examples, see below." | |
20066 | msgstr "" | |
20067 | ||
20068 | #. type: deftp | |
20069 | #: doc/guix.texi:9276 | |
20070 | #, no-wrap | |
20071 | msgid "{Data Type} mapped-device" | |
20072 | msgstr "" | |
20073 | ||
20074 | #. type: deftp | |
20075 | #: doc/guix.texi:9279 | |
20076 | msgid "" | |
20077 | "Objects of this type represent device mappings that will be made when the " | |
20078 | "system boots up." | |
20079 | msgstr "" | |
20080 | ||
20081 | #. type: table | |
20082 | #: doc/guix.texi:9285 | |
20083 | msgid "" | |
20084 | "This is either a string specifying the name of the block device to be " | |
20085 | "mapped, such as @code{\"/dev/sda3\"}, or a list of such strings when several " | |
20086 | "devices need to be assembled for creating a new one." | |
20087 | msgstr "" | |
20088 | ||
20089 | #. type: code{#1} | |
39764ef8 | 20090 | #: doc/guix.texi:9286 doc/guix.texi:20162 |
b9fe8fd6 JL |
20091 | #, no-wrap |
20092 | msgid "target" | |
20093 | msgstr "" | |
20094 | ||
20095 | #. type: table | |
20096 | #: doc/guix.texi:9293 | |
20097 | msgid "" | |
20098 | "This string specifies the name of the resulting mapped device. For kernel " | |
20099 | "mappers such as encrypted devices of type @code{luks-device-mapping}, " | |
39764ef8 JL |
20100 | "specifying @code{\"my-partition\"} leads to the creation of the @code{\"/dev/" |
20101 | "mapper/my-partition\"} device. For RAID devices of type @code{raid-device-" | |
20102 | "mapping}, the full device name such as @code{\"/dev/md0\"} needs to be given." | |
b9fe8fd6 JL |
20103 | msgstr "" |
20104 | ||
20105 | #. type: table | |
20106 | #: doc/guix.texi:9297 | |
20107 | msgid "" | |
20108 | "This must be a @code{mapped-device-kind} object, which specifies how " | |
20109 | "@var{source} is mapped to @var{target}." | |
20110 | msgstr "" | |
20111 | ||
20112 | #. type: defvr | |
20113 | #: doc/guix.texi:9300 | |
20114 | #, no-wrap | |
20115 | msgid "{Scheme Variable} luks-device-mapping" | |
20116 | msgstr "" | |
20117 | ||
20118 | #. type: defvr | |
20119 | #: doc/guix.texi:9304 | |
20120 | msgid "" | |
20121 | "This defines LUKS block device encryption using the @command{cryptsetup} " | |
39764ef8 JL |
20122 | "command from the package with the same name. It relies on the @code{dm-" |
20123 | "crypt} Linux kernel module." | |
b9fe8fd6 JL |
20124 | msgstr "" |
20125 | ||
20126 | #. type: defvr | |
20127 | #: doc/guix.texi:9306 | |
20128 | #, no-wrap | |
20129 | msgid "{Scheme Variable} raid-device-mapping" | |
20130 | msgstr "" | |
20131 | ||
20132 | #. type: defvr | |
20133 | #: doc/guix.texi:9311 | |
20134 | msgid "" | |
20135 | "This defines a RAID device, which is assembled using the @code{mdadm} " | |
20136 | "command from the package with the same name. It requires a Linux kernel " | |
20137 | "module for the appropriate RAID level to be loaded, such as @code{raid456} " | |
20138 | "for RAID-4, RAID-5 or RAID-6, or @code{raid10} for RAID-10." | |
20139 | msgstr "" | |
20140 | ||
20141 | #. type: cindex | |
20142 | #: doc/guix.texi:9313 | |
20143 | #, no-wrap | |
20144 | msgid "disk encryption" | |
20145 | msgstr "" | |
20146 | ||
20147 | #. type: cindex | |
20148 | #: doc/guix.texi:9314 | |
20149 | #, no-wrap | |
20150 | msgid "LUKS" | |
20151 | msgstr "" | |
20152 | ||
20153 | #. type: Plain text | |
20154 | #: doc/guix.texi:9322 | |
20155 | msgid "" | |
39764ef8 JL |
20156 | "The following example specifies a mapping from @file{/dev/sda3} to @file{/" |
20157 | "dev/mapper/home} using LUKS---the @url{https://gitlab.com/cryptsetup/" | |
20158 | "cryptsetup,Linux Unified Key Setup}, a standard mechanism for disk " | |
20159 | "encryption. The @file{/dev/mapper/home} device can then be used as the " | |
20160 | "@code{device} of a @code{file-system} declaration (@pxref{File Systems})." | |
b9fe8fd6 JL |
20161 | msgstr "" |
20162 | ||
20163 | #. type: example | |
20164 | #: doc/guix.texi:9328 | |
20165 | #, no-wrap | |
20166 | msgid "" | |
20167 | "(mapped-device\n" | |
20168 | " (source \"/dev/sda3\")\n" | |
20169 | " (target \"home\")\n" | |
20170 | " (type luks-device-mapping))\n" | |
20171 | msgstr "" | |
20172 | ||
20173 | #. type: Plain text | |
20174 | #: doc/guix.texi:9333 | |
20175 | msgid "" | |
20176 | "Alternatively, to become independent of device numbering, one may obtain the " | |
20177 | "LUKS UUID (@dfn{unique identifier}) of the source device by a command like:" | |
20178 | msgstr "" | |
20179 | ||
20180 | #. type: example | |
20181 | #: doc/guix.texi:9336 | |
20182 | #, no-wrap | |
20183 | msgid "cryptsetup luksUUID /dev/sda3\n" | |
20184 | msgstr "" | |
20185 | ||
20186 | #. type: Plain text | |
20187 | #: doc/guix.texi:9339 | |
20188 | msgid "and use it as follows:" | |
20189 | msgstr "" | |
20190 | ||
20191 | #. type: example | |
20192 | #: doc/guix.texi:9345 | |
20193 | #, no-wrap | |
20194 | msgid "" | |
20195 | "(mapped-device\n" | |
20196 | " (source (uuid \"cb67fc72-0d54-4c88-9d4b-b225f30b0f44\"))\n" | |
20197 | " (target \"home\")\n" | |
20198 | " (type luks-device-mapping))\n" | |
20199 | msgstr "" | |
20200 | ||
20201 | #. type: cindex | |
20202 | #: doc/guix.texi:9347 | |
20203 | #, no-wrap | |
20204 | msgid "swap encryption" | |
20205 | msgstr "" | |
20206 | ||
20207 | #. type: Plain text | |
20208 | #: doc/guix.texi:9353 | |
20209 | msgid "" | |
20210 | "It is also desirable to encrypt swap space, since swap space may contain " | |
20211 | "sensitive data. One way to accomplish that is to use a swap file in a file " | |
20212 | "system on a device mapped via LUKS encryption. In this way, the swap file " | |
20213 | "is encrypted because the entire device is encrypted. @xref{Preparing for " | |
20214 | "Installation,,Disk Partitioning}, for an example." | |
20215 | msgstr "" | |
20216 | ||
20217 | #. type: Plain text | |
20218 | #: doc/guix.texi:9356 | |
20219 | msgid "" | |
20220 | "A RAID device formed of the partitions @file{/dev/sda1} and @file{/dev/sdb1} " | |
20221 | "may be declared as follows:" | |
20222 | msgstr "" | |
20223 | ||
20224 | #. type: example | |
20225 | #: doc/guix.texi:9362 | |
20226 | #, no-wrap | |
20227 | msgid "" | |
20228 | "(mapped-device\n" | |
20229 | " (source (list \"/dev/sda1\" \"/dev/sdb1\"))\n" | |
20230 | " (target \"/dev/md0\")\n" | |
20231 | " (type raid-device-mapping))\n" | |
20232 | msgstr "" | |
20233 | ||
20234 | #. type: Plain text | |
20235 | #: doc/guix.texi:9369 | |
20236 | msgid "" | |
20237 | "The @file{/dev/md0} device can then be used as the @code{device} of a " | |
20238 | "@code{file-system} declaration (@pxref{File Systems}). Note that the RAID " | |
20239 | "level need not be given; it is chosen during the initial creation and " | |
20240 | "formatting of the RAID device and is determined automatically later." | |
20241 | msgstr "" | |
20242 | ||
20243 | #. type: cindex | |
20244 | #: doc/guix.texi:9374 | |
20245 | #, no-wrap | |
20246 | msgid "users" | |
20247 | msgstr "" | |
20248 | ||
20249 | #. type: cindex | |
20250 | #: doc/guix.texi:9375 | |
20251 | #, no-wrap | |
20252 | msgid "accounts" | |
20253 | msgstr "" | |
20254 | ||
20255 | #. type: cindex | |
20256 | #: doc/guix.texi:9376 | |
20257 | #, no-wrap | |
20258 | msgid "user accounts" | |
20259 | msgstr "" | |
20260 | ||
20261 | #. type: Plain text | |
20262 | #: doc/guix.texi:9380 | |
20263 | msgid "" | |
39764ef8 JL |
20264 | "User accounts and groups are entirely managed through the @code{operating-" |
20265 | "system} declaration. They are specified with the @code{user-account} and " | |
20266 | "@code{user-group} forms:" | |
b9fe8fd6 JL |
20267 | msgstr "" |
20268 | ||
20269 | #. type: example | |
20270 | #: doc/guix.texi:9391 | |
20271 | #, no-wrap | |
20272 | msgid "" | |
20273 | "(user-account\n" | |
20274 | " (name \"alice\")\n" | |
20275 | " (group \"users\")\n" | |
20276 | " (supplementary-groups '(\"wheel\" ;allow use of sudo, etc.\n" | |
20277 | " \"audio\" ;sound card\n" | |
20278 | " \"video\" ;video devices such as webcams\n" | |
20279 | " \"cdrom\")) ;the good ol' CD-ROM\n" | |
20280 | " (comment \"Bob's sister\")\n" | |
20281 | " (home-directory \"/home/alice\"))\n" | |
20282 | msgstr "" | |
20283 | ||
20284 | #. type: Plain text | |
20285 | #: doc/guix.texi:9400 | |
20286 | msgid "" | |
20287 | "When booting or upon completion of @command{guix system reconfigure}, the " | |
20288 | "system ensures that only the user accounts and groups specified in the " | |
20289 | "@code{operating-system} declaration exist, and with the specified " | |
20290 | "properties. Thus, account or group creations or modifications made by " | |
20291 | "directly invoking commands such as @command{useradd} are lost upon " | |
20292 | "reconfiguration or reboot. This ensures that the system remains exactly as " | |
20293 | "declared." | |
20294 | msgstr "" | |
20295 | ||
20296 | #. type: deftp | |
20297 | #: doc/guix.texi:9401 | |
20298 | #, no-wrap | |
20299 | msgid "{Data Type} user-account" | |
20300 | msgstr "" | |
20301 | ||
20302 | #. type: deftp | |
20303 | #: doc/guix.texi:9404 | |
20304 | msgid "" | |
20305 | "Objects of this type represent user accounts. The following members may be " | |
20306 | "specified:" | |
20307 | msgstr "" | |
20308 | ||
20309 | #. type: table | |
20310 | #: doc/guix.texi:9408 | |
20311 | msgid "The name of the user account." | |
20312 | msgstr "" | |
20313 | ||
20314 | #. type: itemx | |
39764ef8 | 20315 | #: doc/guix.texi:9409 doc/guix.texi:19924 |
b9fe8fd6 JL |
20316 | #, no-wrap |
20317 | msgid "group" | |
20318 | msgstr "" | |
20319 | ||
20320 | #. type: cindex | |
20321 | #: doc/guix.texi:9410 doc/guix.texi:9459 | |
20322 | #, no-wrap | |
20323 | msgid "groups" | |
20324 | msgstr "" | |
20325 | ||
20326 | #. type: table | |
20327 | #: doc/guix.texi:9413 | |
20328 | msgid "" | |
20329 | "This is the name (a string) or identifier (a number) of the user group this " | |
20330 | "account belongs to." | |
20331 | msgstr "" | |
20332 | ||
20333 | #. type: item | |
20334 | #: doc/guix.texi:9414 | |
20335 | #, no-wrap | |
20336 | msgid "@code{supplementary-groups} (default: @code{'()})" | |
20337 | msgstr "" | |
20338 | ||
20339 | #. type: table | |
20340 | #: doc/guix.texi:9417 | |
20341 | msgid "" | |
20342 | "Optionally, this can be defined as a list of group names that this account " | |
20343 | "belongs to." | |
20344 | msgstr "" | |
20345 | ||
20346 | #. type: item | |
20347 | #: doc/guix.texi:9418 | |
20348 | #, no-wrap | |
20349 | msgid "@code{uid} (default: @code{#f})" | |
20350 | msgstr "" | |
20351 | ||
20352 | #. type: table | |
20353 | #: doc/guix.texi:9422 | |
20354 | msgid "" | |
20355 | "This is the user ID for this account (a number), or @code{#f}. In the " | |
20356 | "latter case, a number is automatically chosen by the system when the account " | |
20357 | "is created." | |
20358 | msgstr "" | |
20359 | ||
20360 | #. type: item | |
20361 | #: doc/guix.texi:9423 | |
20362 | #, no-wrap | |
20363 | msgid "@code{comment} (default: @code{\"\"})" | |
20364 | msgstr "" | |
20365 | ||
20366 | #. type: table | |
20367 | #: doc/guix.texi:9425 | |
20368 | msgid "A comment about the account, such as the account owner's full name." | |
20369 | msgstr "" | |
20370 | ||
20371 | #. type: code{#1} | |
20372 | #: doc/guix.texi:9426 | |
20373 | #, no-wrap | |
20374 | msgid "home-directory" | |
20375 | msgstr "" | |
20376 | ||
20377 | #. type: table | |
20378 | #: doc/guix.texi:9428 | |
20379 | msgid "This is the name of the home directory for the account." | |
20380 | msgstr "" | |
20381 | ||
20382 | #. type: item | |
20383 | #: doc/guix.texi:9429 | |
20384 | #, no-wrap | |
20385 | msgid "@code{create-home-directory?} (default: @code{#t})" | |
20386 | msgstr "" | |
20387 | ||
20388 | #. type: table | |
20389 | #: doc/guix.texi:9432 | |
20390 | msgid "" | |
20391 | "Indicates whether the home directory of this account should be created if it " | |
20392 | "does not exist yet." | |
20393 | msgstr "" | |
20394 | ||
20395 | #. type: item | |
20396 | #: doc/guix.texi:9433 | |
20397 | #, no-wrap | |
20398 | msgid "@code{shell} (default: Bash)" | |
20399 | msgstr "" | |
20400 | ||
20401 | #. type: table | |
20402 | #: doc/guix.texi:9436 | |
20403 | msgid "" | |
20404 | "This is a G-expression denoting the file name of a program to be used as the " | |
20405 | "shell (@pxref{G-Expressions})." | |
20406 | msgstr "" | |
20407 | ||
20408 | #. type: item | |
20409 | #: doc/guix.texi:9437 doc/guix.texi:9477 | |
20410 | #, no-wrap | |
20411 | msgid "@code{system?} (default: @code{#f})" | |
20412 | msgstr "" | |
20413 | ||
20414 | #. type: table | |
20415 | #: doc/guix.texi:9441 | |
20416 | msgid "" | |
20417 | "This Boolean value indicates whether the account is a ``system'' account. " | |
20418 | "System accounts are sometimes treated specially; for instance, graphical " | |
20419 | "login managers do not list them." | |
20420 | msgstr "" | |
20421 | ||
20422 | #. type: anchor{#1} | |
20423 | #: doc/guix.texi:9443 | |
20424 | msgid "user-account-password" | |
20425 | msgstr "" | |
20426 | ||
20427 | #. type: item | |
20428 | #: doc/guix.texi:9443 doc/guix.texi:9481 | |
20429 | #, no-wrap | |
20430 | msgid "@code{password} (default: @code{#f})" | |
20431 | msgstr "" | |
20432 | ||
20433 | #. type: table | |
20434 | #: doc/guix.texi:9449 | |
20435 | msgid "" | |
20436 | "You would normally leave this field to @code{#f}, initialize user passwords " | |
20437 | "as @code{root} with the @command{passwd} command, and then let users change " | |
20438 | "it with @command{passwd}. Passwords set with @command{passwd} are of course " | |
20439 | "preserved across reboot and reconfiguration." | |
20440 | msgstr "" | |
20441 | ||
20442 | #. type: table | |
20443 | #: doc/guix.texi:9455 | |
20444 | msgid "" | |
20445 | "If you @emph{do} want to have a preset password for an account, then this " | |
20446 | "field must contain the encrypted password, as a string. @xref{crypt,,, " | |
20447 | "libc, The GNU C Library Reference Manual}, for more information on password " | |
20448 | "encryption, and @ref{Encryption,,, guile, GNU Guile Reference Manual}, for " | |
20449 | "information on Guile's @code{crypt} procedure." | |
20450 | msgstr "" | |
20451 | ||
20452 | #. type: Plain text | |
20453 | #: doc/guix.texi:9461 | |
20454 | msgid "User group declarations are even simpler:" | |
20455 | msgstr "" | |
20456 | ||
20457 | #. type: example | |
20458 | #: doc/guix.texi:9464 | |
20459 | #, no-wrap | |
20460 | msgid "(user-group (name \"students\"))\n" | |
20461 | msgstr "" | |
20462 | ||
20463 | #. type: deftp | |
20464 | #: doc/guix.texi:9466 | |
20465 | #, no-wrap | |
20466 | msgid "{Data Type} user-group" | |
20467 | msgstr "" | |
20468 | ||
20469 | #. type: deftp | |
20470 | #: doc/guix.texi:9468 | |
20471 | msgid "This type is for, well, user groups. There are just a few fields:" | |
20472 | msgstr "" | |
20473 | ||
20474 | #. type: table | |
20475 | #: doc/guix.texi:9472 | |
20476 | msgid "The name of the group." | |
20477 | msgstr "" | |
20478 | ||
20479 | #. type: item | |
20480 | #: doc/guix.texi:9473 | |
20481 | #, no-wrap | |
20482 | msgid "@code{id} (default: @code{#f})" | |
20483 | msgstr "" | |
20484 | ||
20485 | #. type: table | |
20486 | #: doc/guix.texi:9476 | |
20487 | msgid "" | |
20488 | "The group identifier (a number). If @code{#f}, a new number is " | |
20489 | "automatically allocated when the group is created." | |
20490 | msgstr "" | |
20491 | ||
20492 | #. type: table | |
20493 | #: doc/guix.texi:9480 | |
20494 | msgid "" | |
20495 | "This Boolean value indicates whether the group is a ``system'' group. " | |
20496 | "System groups have low numerical IDs." | |
20497 | msgstr "" | |
20498 | ||
20499 | #. type: table | |
20500 | #: doc/guix.texi:9484 | |
20501 | msgid "" | |
20502 | "What, user groups can have a password? Well, apparently yes. Unless " | |
20503 | "@code{#f}, this field specifies the password of the group." | |
20504 | msgstr "" | |
20505 | ||
20506 | #. type: Plain text | |
20507 | #: doc/guix.texi:9490 | |
39764ef8 JL |
20508 | msgid "" |
20509 | "For convenience, a variable lists all the basic user groups one may expect:" | |
b9fe8fd6 JL |
20510 | msgstr "" |
20511 | ||
20512 | #. type: defvr | |
20513 | #: doc/guix.texi:9491 | |
20514 | #, no-wrap | |
20515 | msgid "{Scheme Variable} %base-groups" | |
20516 | msgstr "" | |
20517 | ||
20518 | #. type: defvr | |
20519 | #: doc/guix.texi:9496 | |
20520 | msgid "" | |
20521 | "This is the list of basic user groups that users and/or packages expect to " | |
20522 | "be present on the system. This includes groups such as ``root'', ``wheel'', " | |
20523 | "and ``users'', as well as groups used to control access to specific devices " | |
20524 | "such as ``audio'', ``disk'', and ``cdrom''." | |
20525 | msgstr "" | |
20526 | ||
20527 | #. type: defvr | |
20528 | #: doc/guix.texi:9498 | |
20529 | #, no-wrap | |
20530 | msgid "{Scheme Variable} %base-user-accounts" | |
20531 | msgstr "" | |
20532 | ||
20533 | #. type: defvr | |
20534 | #: doc/guix.texi:9501 | |
20535 | msgid "" | |
20536 | "This is the list of basic system accounts that programs may expect to find " | |
20537 | "on a GNU/Linux system, such as the ``nobody'' account." | |
20538 | msgstr "" | |
20539 | ||
20540 | #. type: defvr | |
20541 | #: doc/guix.texi:9504 | |
20542 | msgid "" | |
20543 | "Note that the ``root'' account is not included here. It is a special-case " | |
20544 | "and is automatically added whether or not it is specified." | |
20545 | msgstr "" | |
20546 | ||
20547 | #. type: cindex | |
20548 | #: doc/guix.texi:9509 | |
20549 | #, no-wrap | |
20550 | msgid "locale" | |
20551 | msgstr "" | |
20552 | ||
20553 | #. type: Plain text | |
20554 | #: doc/guix.texi:9516 | |
20555 | msgid "" | |
20556 | "A @dfn{locale} defines cultural conventions for a particular language and " | |
20557 | "region of the world (@pxref{Locales,,, libc, The GNU C Library Reference " | |
20558 | "Manual}). Each locale has a name that typically has the form " | |
39764ef8 JL |
20559 | "@code{@var{language}_@var{territory}.@var{codeset}}---e.g., @code{fr_LU." |
20560 | "utf8} designates the locale for the French language, with cultural " | |
20561 | "conventions from Luxembourg, and using the UTF-8 encoding." | |
b9fe8fd6 JL |
20562 | msgstr "" |
20563 | ||
20564 | #. type: cindex | |
20565 | #: doc/guix.texi:9517 | |
20566 | #, no-wrap | |
20567 | msgid "locale definition" | |
20568 | msgstr "" | |
20569 | ||
20570 | #. type: Plain text | |
20571 | #: doc/guix.texi:9521 | |
20572 | msgid "" | |
20573 | "Usually, you will want to specify the default locale for the machine using " | |
20574 | "the @code{locale} field of the @code{operating-system} declaration " | |
20575 | "(@pxref{operating-system Reference, @code{locale}})." | |
20576 | msgstr "" | |
20577 | ||
20578 | #. type: Plain text | |
20579 | #: doc/guix.texi:9530 | |
20580 | msgid "" | |
20581 | "The selected locale is automatically added to the @dfn{locale definitions} " | |
39764ef8 JL |
20582 | "known to the system if needed, with its codeset inferred from its name---e." |
20583 | "g., @code{bo_CN.utf8} will be assumed to use the @code{UTF-8} codeset. " | |
20584 | "Additional locale definitions can be specified in the @code{locale-" | |
20585 | "definitions} slot of @code{operating-system}---this is useful, for instance, " | |
20586 | "if the codeset could not be inferred from the locale name. The default set " | |
20587 | "of locale definitions includes some widely used locales, but not all the " | |
20588 | "available locales, in order to save space." | |
b9fe8fd6 JL |
20589 | msgstr "" |
20590 | ||
20591 | #. type: Plain text | |
20592 | #: doc/guix.texi:9533 | |
20593 | msgid "" | |
20594 | "For instance, to add the North Frisian locale for Germany, the value of that " | |
20595 | "field may be:" | |
20596 | msgstr "" | |
20597 | ||
20598 | #. type: example | |
20599 | #: doc/guix.texi:9538 | |
20600 | #, no-wrap | |
20601 | msgid "" | |
20602 | "(cons (locale-definition\n" | |
20603 | " (name \"fy_DE.utf8\") (source \"fy_DE\"))\n" | |
20604 | " %default-locale-definitions)\n" | |
20605 | msgstr "" | |
20606 | ||
20607 | #. type: Plain text | |
20608 | #: doc/guix.texi:9542 | |
20609 | msgid "" | |
20610 | "Likewise, to save space, one might want @code{locale-definitions} to list " | |
20611 | "only the locales that are actually used, as in:" | |
20612 | msgstr "" | |
20613 | ||
20614 | #. type: example | |
20615 | #: doc/guix.texi:9547 | |
20616 | #, no-wrap | |
20617 | msgid "" | |
20618 | "(list (locale-definition\n" | |
20619 | " (name \"ja_JP.eucjp\") (source \"ja_JP\")\n" | |
20620 | " (charset \"EUC-JP\")))\n" | |
20621 | msgstr "" | |
20622 | ||
20623 | #. type: Plain text | |
20624 | #: doc/guix.texi:9556 | |
20625 | msgid "" | |
39764ef8 JL |
20626 | "The compiled locale definitions are available at @file{/run/current-system/" |
20627 | "locale/X.Y}, where @code{X.Y} is the libc version, which is the default " | |
20628 | "location where the GNU@tie{}libc provided by Guix looks for locale data. " | |
20629 | "This can be overridden using the @code{LOCPATH} environment variable " | |
20630 | "(@pxref{locales-and-locpath, @code{LOCPATH} and locale packages})." | |
b9fe8fd6 JL |
20631 | msgstr "" |
20632 | ||
20633 | #. type: Plain text | |
20634 | #: doc/guix.texi:9559 | |
20635 | msgid "" | |
20636 | "The @code{locale-definition} form is provided by the @code{(gnu system " | |
20637 | "locale)} module. Details are given below." | |
20638 | msgstr "" | |
20639 | ||
20640 | #. type: deftp | |
20641 | #: doc/guix.texi:9560 | |
20642 | #, no-wrap | |
20643 | msgid "{Data Type} locale-definition" | |
20644 | msgstr "" | |
20645 | ||
20646 | #. type: deftp | |
20647 | #: doc/guix.texi:9562 | |
20648 | msgid "This is the data type of a locale definition." | |
20649 | msgstr "" | |
20650 | ||
20651 | #. type: table | |
20652 | #: doc/guix.texi:9568 | |
20653 | msgid "" | |
20654 | "The name of the locale. @xref{Locale Names,,, libc, The GNU C Library " | |
20655 | "Reference Manual}, for more information on locale names." | |
20656 | msgstr "" | |
20657 | ||
20658 | #. type: table | |
20659 | #: doc/guix.texi:9572 | |
20660 | msgid "" | |
20661 | "The name of the source for that locale. This is typically the " | |
20662 | "@code{@var{language}_@var{territory}} part of the locale name." | |
20663 | msgstr "" | |
20664 | ||
20665 | #. type: item | |
20666 | #: doc/guix.texi:9573 | |
20667 | #, no-wrap | |
20668 | msgid "@code{charset} (default: @code{\"UTF-8\"})" | |
20669 | msgstr "" | |
20670 | ||
20671 | #. type: table | |
20672 | #: doc/guix.texi:9577 | |
20673 | msgid "" | |
39764ef8 JL |
20674 | "The ``character set'' or ``code set'' for that locale, @uref{http://www.iana." |
20675 | "org/assignments/character-sets, as defined by IANA}." | |
b9fe8fd6 JL |
20676 | msgstr "" |
20677 | ||
20678 | #. type: defvr | |
20679 | #: doc/guix.texi:9581 | |
20680 | #, no-wrap | |
20681 | msgid "{Scheme Variable} %default-locale-definitions" | |
20682 | msgstr "" | |
20683 | ||
20684 | #. type: defvr | |
20685 | #: doc/guix.texi:9585 | |
20686 | msgid "" | |
20687 | "A list of commonly used UTF-8 locales, used as the default value of the " | |
20688 | "@code{locale-definitions} field of @code{operating-system} declarations." | |
20689 | msgstr "" | |
20690 | ||
20691 | #. type: cindex | |
20692 | #: doc/guix.texi:9586 | |
20693 | #, no-wrap | |
20694 | msgid "locale name" | |
20695 | msgstr "" | |
20696 | ||
20697 | #. type: cindex | |
20698 | #: doc/guix.texi:9587 | |
20699 | #, no-wrap | |
20700 | msgid "normalized codeset in locale names" | |
20701 | msgstr "" | |
20702 | ||
20703 | #. type: defvr | |
20704 | #: doc/guix.texi:9593 | |
20705 | msgid "" | |
20706 | "These locale definitions use the @dfn{normalized codeset} for the part that " | |
20707 | "follows the dot in the name (@pxref{Using gettextized software, normalized " | |
20708 | "codeset,, libc, The GNU C Library Reference Manual}). So for instance it " | |
20709 | "has @code{uk_UA.utf8} but @emph{not}, say, @code{uk_UA.UTF-8}." | |
20710 | msgstr "" | |
20711 | ||
20712 | #. type: subsubsection | |
20713 | #: doc/guix.texi:9595 | |
20714 | #, no-wrap | |
20715 | msgid "Locale Data Compatibility Considerations" | |
20716 | msgstr "" | |
20717 | ||
20718 | #. type: cindex | |
20719 | #: doc/guix.texi:9597 | |
20720 | #, no-wrap | |
20721 | msgid "incompatibility, of locale data" | |
20722 | msgstr "" | |
20723 | ||
20724 | #. type: Plain text | |
20725 | #: doc/guix.texi:9604 | |
20726 | msgid "" | |
20727 | "@code{operating-system} declarations provide a @code{locale-libcs} field to " | |
20728 | "specify the GNU@tie{}libc packages that are used to compile locale " | |
20729 | "declarations (@pxref{operating-system Reference}). ``Why would I care?'', " | |
20730 | "you may ask. Well, it turns out that the binary format of locale data is " | |
20731 | "occasionally incompatible from one libc version to another." | |
20732 | msgstr "" | |
20733 | ||
20734 | #. type: Plain text | |
20735 | #: doc/guix.texi:9616 | |
20736 | msgid "" | |
20737 | "For instance, a program linked against libc version 2.21 is unable to read " | |
20738 | "locale data produced with libc 2.22; worse, that program @emph{aborts} " | |
20739 | "instead of simply ignoring the incompatible locale data@footnote{Versions " | |
20740 | "2.23 and later of GNU@tie{}libc will simply skip the incompatible locale " | |
20741 | "data, which is already an improvement.}. Similarly, a program linked " | |
20742 | "against libc 2.22 can read most, but not all, of the locale data from libc " | |
20743 | "2.21 (specifically, @code{LC_COLLATE} data is incompatible); thus calls to " | |
20744 | "@code{setlocale} may fail, but programs will not abort." | |
20745 | msgstr "" | |
20746 | ||
20747 | #. type: Plain text | |
20748 | #: doc/guix.texi:9621 | |
20749 | msgid "" | |
20750 | "The ``problem'' in GuixSD is that users have a lot of freedom: They can " | |
20751 | "choose whether and when to upgrade software in their profiles, and might be " | |
20752 | "using a libc version different from the one the system administrator used to " | |
20753 | "build the system-wide locale data." | |
20754 | msgstr "" | |
20755 | ||
20756 | #. type: Plain text | |
20757 | #: doc/guix.texi:9625 | |
20758 | msgid "" | |
20759 | "Fortunately, unprivileged users can also install their own locale data and " | |
20760 | "define @var{GUIX_LOCPATH} accordingly (@pxref{locales-and-locpath, " | |
20761 | "@code{GUIX_LOCPATH} and locale packages})." | |
20762 | msgstr "" | |
20763 | ||
20764 | #. type: Plain text | |
20765 | #: doc/guix.texi:9632 | |
20766 | msgid "" | |
39764ef8 JL |
20767 | "Still, it is best if the system-wide locale data at @file{/run/current-" |
20768 | "system/locale} is built for all the libc versions actually in use on the " | |
20769 | "system, so that all the programs can access it---this is especially crucial " | |
20770 | "on a multi-user system. To do that, the administrator can specify several " | |
20771 | "libc packages in the @code{locale-libcs} field of @code{operating-system}:" | |
b9fe8fd6 JL |
20772 | msgstr "" |
20773 | ||
20774 | #. type: example | |
20775 | #: doc/guix.texi:9635 | |
20776 | #, no-wrap | |
20777 | msgid "" | |
20778 | "(use-package-modules base)\n" | |
20779 | "\n" | |
20780 | msgstr "" | |
20781 | ||
20782 | #. type: example | |
20783 | #: doc/guix.texi:9639 | |
20784 | #, no-wrap | |
20785 | msgid "" | |
20786 | "(operating-system\n" | |
20787 | " ;; @dots{}\n" | |
20788 | " (locale-libcs (list glibc-2.21 (canonical-package glibc))))\n" | |
20789 | msgstr "" | |
20790 | ||
20791 | #. type: Plain text | |
20792 | #: doc/guix.texi:9644 | |
20793 | msgid "" | |
20794 | "This example would lead to a system containing locale definitions for both " | |
39764ef8 JL |
20795 | "libc 2.21 and the current version of libc in @file{/run/current-system/" |
20796 | "locale}." | |
b9fe8fd6 JL |
20797 | msgstr "" |
20798 | ||
20799 | #. type: cindex | |
20800 | #: doc/guix.texi:9649 | |
20801 | #, no-wrap | |
20802 | msgid "system services" | |
20803 | msgstr "" | |
20804 | ||
20805 | #. type: Plain text | |
20806 | #: doc/guix.texi:9655 | |
20807 | msgid "" | |
20808 | "An important part of preparing an @code{operating-system} declaration is " | |
20809 | "listing @dfn{system services} and their configuration (@pxref{Using the " | |
20810 | "Configuration System}). System services are typically daemons launched when " | |
20811 | "the system boots, or other actions needed at that time---e.g., configuring " | |
20812 | "network access." | |
20813 | msgstr "" | |
20814 | ||
20815 | #. type: Plain text | |
20816 | #: doc/guix.texi:9662 | |
20817 | msgid "" | |
20818 | "GuixSD has a broad definition of ``service'' (@pxref{Service Composition}), " | |
20819 | "but many services are managed by the GNU@tie{}Shepherd (@pxref{Shepherd " | |
20820 | "Services}). On a running system, the @command{herd} command allows you to " | |
20821 | "list the available services, show their status, start and stop them, or do " | |
20822 | "other specific operations (@pxref{Jump Start,,, shepherd, The GNU Shepherd " | |
20823 | "Manual}). For example:" | |
20824 | msgstr "" | |
20825 | ||
20826 | #. type: example | |
20827 | #: doc/guix.texi:9665 | |
20828 | #, no-wrap | |
20829 | msgid "# herd status\n" | |
20830 | msgstr "" | |
20831 | ||
20832 | #. type: Plain text | |
20833 | #: doc/guix.texi:9670 | |
20834 | msgid "" | |
20835 | "The above command, run as @code{root}, lists the currently defined " | |
20836 | "services. The @command{herd doc} command shows a synopsis of the given " | |
20837 | "service:" | |
20838 | msgstr "" | |
20839 | ||
20840 | #. type: example | |
20841 | #: doc/guix.texi:9674 | |
20842 | #, no-wrap | |
20843 | msgid "" | |
20844 | "# herd doc nscd\n" | |
20845 | "Run libc's name service cache daemon (nscd).\n" | |
20846 | msgstr "" | |
20847 | ||
20848 | #. type: Plain text | |
20849 | #: doc/guix.texi:9679 | |
20850 | msgid "" | |
20851 | "The @command{start}, @command{stop}, and @command{restart} sub-commands have " | |
20852 | "the effect you would expect. For instance, the commands below stop the nscd " | |
20853 | "service and restart the Xorg display server:" | |
20854 | msgstr "" | |
20855 | ||
20856 | #. type: example | |
20857 | #: doc/guix.texi:9686 | |
20858 | #, no-wrap | |
20859 | msgid "" | |
20860 | "# herd stop nscd\n" | |
20861 | "Service nscd has been stopped.\n" | |
20862 | "# herd restart xorg-server\n" | |
20863 | "Service xorg-server has been stopped.\n" | |
20864 | "Service xorg-server has been started.\n" | |
20865 | msgstr "" | |
20866 | ||
20867 | #. type: Plain text | |
20868 | #: doc/guix.texi:9691 | |
20869 | msgid "" | |
20870 | "The following sections document the available services, starting with the " | |
20871 | "core services, that may be used in an @code{operating-system} declaration." | |
20872 | msgstr "" | |
20873 | ||
20874 | #. type: Plain text | |
20875 | #: doc/guix.texi:9726 | |
20876 | msgid "" | |
20877 | "The @code{(gnu services base)} module provides definitions for the basic " | |
20878 | "services that one expects from the system. The services exported by this " | |
20879 | "module are listed below." | |
20880 | msgstr "" | |
20881 | ||
20882 | #. type: defvr | |
20883 | #: doc/guix.texi:9727 | |
20884 | #, no-wrap | |
20885 | msgid "{Scheme Variable} %base-services" | |
20886 | msgstr "" | |
20887 | ||
20888 | #. type: defvr | |
20889 | #: doc/guix.texi:9733 | |
20890 | msgid "" | |
20891 | "This variable contains a list of basic services (@pxref{Service Types and " | |
20892 | "Services}, for more information on service objects) one would expect from " | |
20893 | "the system: a login service (mingetty) on each tty, syslogd, the libc name " | |
20894 | "service cache daemon (nscd), the udev device manager, and more." | |
20895 | msgstr "" | |
20896 | ||
20897 | #. type: defvr | |
20898 | #: doc/guix.texi:9738 | |
20899 | msgid "" | |
39764ef8 JL |
20900 | "This is the default value of the @code{services} field of @code{operating-" |
20901 | "system} declarations. Usually, when customizing a system, you will want to " | |
20902 | "append services to @var{%base-services}, like this:" | |
b9fe8fd6 JL |
20903 | msgstr "" |
20904 | ||
20905 | #. type: example | |
20906 | #: doc/guix.texi:9741 | |
20907 | #, no-wrap | |
20908 | msgid "(cons* (avahi-service) (lsh-service) %base-services)\n" | |
20909 | msgstr "" | |
20910 | ||
20911 | #. type: defvr | |
20912 | #: doc/guix.texi:9744 | |
20913 | #, no-wrap | |
20914 | msgid "{Scheme Variable} special-files-service-type" | |
20915 | msgstr "" | |
20916 | ||
20917 | #. type: defvr | |
20918 | #: doc/guix.texi:9747 | |
20919 | msgid "" | |
20920 | "This is the service that sets up ``special files'' such as @file{/bin/sh}; " | |
20921 | "an instance of it is part of @code{%base-services}." | |
20922 | msgstr "" | |
20923 | ||
20924 | #. type: defvr | |
20925 | #: doc/guix.texi:9751 | |
20926 | msgid "" | |
20927 | "The value associated with @code{special-files-service-type} services must be " | |
20928 | "a list of tuples where the first element is the ``special file'' and the " | |
20929 | "second element is its target. By default it is:" | |
20930 | msgstr "" | |
20931 | ||
20932 | #. type: file{#1} | |
20933 | #: doc/guix.texi:9752 | |
20934 | #, no-wrap | |
20935 | msgid "/bin/sh" | |
20936 | msgstr "" | |
20937 | ||
20938 | #. type: cindex | |
20939 | #: doc/guix.texi:9753 | |
20940 | #, no-wrap | |
20941 | msgid "@file{sh}, in @file{/bin}" | |
20942 | msgstr "" | |
20943 | ||
20944 | #. type: example | |
20945 | #: doc/guix.texi:9756 | |
20946 | #, no-wrap | |
20947 | msgid "`((\"/bin/sh\" ,(file-append @var{bash} \"/bin/sh\")))\n" | |
20948 | msgstr "" | |
20949 | ||
20950 | #. type: file{#1} | |
20951 | #: doc/guix.texi:9758 | |
20952 | #, no-wrap | |
20953 | msgid "/usr/bin/env" | |
20954 | msgstr "" | |
20955 | ||
20956 | #. type: cindex | |
20957 | #: doc/guix.texi:9759 | |
20958 | #, no-wrap | |
20959 | msgid "@file{env}, in @file{/usr/bin}" | |
20960 | msgstr "" | |
20961 | ||
20962 | #. type: defvr | |
20963 | #: doc/guix.texi:9762 | |
20964 | msgid "" | |
20965 | "If you want to add, say, @code{/usr/bin/env} to your system, you can change " | |
20966 | "it to:" | |
20967 | msgstr "" | |
20968 | ||
20969 | #. type: example | |
20970 | #: doc/guix.texi:9766 | |
20971 | #, no-wrap | |
20972 | msgid "" | |
20973 | "`((\"/bin/sh\" ,(file-append @var{bash} \"/bin/sh\"))\n" | |
20974 | " (\"/usr/bin/env\" ,(file-append @var{coreutils} \"/bin/env\")))\n" | |
20975 | msgstr "" | |
20976 | ||
20977 | #. type: defvr | |
20978 | #: doc/guix.texi:9773 | |
20979 | msgid "" | |
39764ef8 JL |
20980 | "Since this is part of @code{%base-services}, you can use @code{modify-" |
20981 | "services} to customize the set of special files (@pxref{Service Reference, " | |
20982 | "@code{modify-services}}). But the simple way to add a special file is " | |
20983 | "@i{via} the @code{extra-special-file} procedure (see below.)" | |
b9fe8fd6 JL |
20984 | msgstr "" |
20985 | ||
20986 | #. type: deffn | |
20987 | #: doc/guix.texi:9775 | |
20988 | #, no-wrap | |
20989 | msgid "{Scheme Procedure} extra-special-file @var{file} @var{target}" | |
20990 | msgstr "" | |
20991 | ||
20992 | #. type: deffn | |
20993 | #: doc/guix.texi:9777 | |
20994 | msgid "Use @var{target} as the ``special file'' @var{file}." | |
20995 | msgstr "" | |
20996 | ||
20997 | #. type: deffn | |
20998 | #: doc/guix.texi:9781 | |
20999 | msgid "" | |
21000 | "For example, adding the following lines to the @code{services} field of your " | |
21001 | "operating system declaration leads to a @file{/usr/bin/env} symlink:" | |
21002 | msgstr "" | |
21003 | ||
21004 | #. type: example | |
21005 | #: doc/guix.texi:9785 | |
21006 | #, no-wrap | |
21007 | msgid "" | |
21008 | "(extra-special-file \"/usr/bin/env\"\n" | |
21009 | " (file-append coreutils \"/bin/env\"))\n" | |
21010 | msgstr "" | |
21011 | ||
21012 | #. type: deffn | |
21013 | #: doc/guix.texi:9788 | |
21014 | #, no-wrap | |
21015 | msgid "{Scheme Procedure} host-name-service @var{name}" | |
21016 | msgstr "" | |
21017 | ||
21018 | #. type: deffn | |
21019 | #: doc/guix.texi:9790 | |
21020 | msgid "Return a service that sets the host name to @var{name}." | |
21021 | msgstr "" | |
21022 | ||
21023 | #. type: deffn | |
21024 | #: doc/guix.texi:9792 | |
21025 | #, no-wrap | |
21026 | msgid "{Scheme Procedure} login-service @var{config}" | |
21027 | msgstr "" | |
21028 | ||
21029 | #. type: deffn | |
21030 | #: doc/guix.texi:9796 | |
21031 | msgid "" | |
39764ef8 JL |
21032 | "Return a service to run login according to @var{config}, a @code{<login-" |
21033 | "configuration>} object, which specifies the message of the day, among other " | |
21034 | "things." | |
b9fe8fd6 JL |
21035 | msgstr "" |
21036 | ||
21037 | #. type: deftp | |
21038 | #: doc/guix.texi:9798 | |
21039 | #, no-wrap | |
21040 | msgid "{Data Type} login-configuration" | |
21041 | msgstr "" | |
21042 | ||
21043 | #. type: deftp | |
21044 | #: doc/guix.texi:9800 | |
21045 | msgid "This is the data type representing the configuration of login." | |
21046 | msgstr "" | |
21047 | ||
21048 | #. type: code{#1} | |
21049 | #: doc/guix.texi:9803 | |
21050 | #, no-wrap | |
21051 | msgid "motd" | |
21052 | msgstr "" | |
21053 | ||
21054 | #. type: cindex | |
21055 | #: doc/guix.texi:9804 | |
21056 | #, no-wrap | |
21057 | msgid "message of the day" | |
21058 | msgstr "" | |
21059 | ||
21060 | #. type: table | |
21061 | #: doc/guix.texi:9806 | |
21062 | msgid "A file-like object containing the ``message of the day''." | |
21063 | msgstr "" | |
21064 | ||
21065 | #. type: item | |
39764ef8 | 21066 | #: doc/guix.texi:9807 doc/guix.texi:11469 |
b9fe8fd6 JL |
21067 | #, no-wrap |
21068 | msgid "@code{allow-empty-passwords?} (default: @code{#t})" | |
21069 | msgstr "" | |
21070 | ||
21071 | #. type: table | |
21072 | #: doc/guix.texi:9810 | |
21073 | msgid "" | |
21074 | "Allow empty passwords by default so that first-time users can log in when " | |
21075 | "the 'root' account has just been created." | |
21076 | msgstr "" | |
21077 | ||
21078 | #. type: deffn | |
21079 | #: doc/guix.texi:9814 | |
21080 | #, no-wrap | |
21081 | msgid "{Scheme Procedure} mingetty-service @var{config}" | |
21082 | msgstr "" | |
21083 | ||
21084 | #. type: deffn | |
21085 | #: doc/guix.texi:9818 | |
21086 | msgid "" | |
21087 | "Return a service to run mingetty according to @var{config}, a " | |
21088 | "@code{<mingetty-configuration>} object, which specifies the tty to run, " | |
21089 | "among other things." | |
21090 | msgstr "" | |
21091 | ||
21092 | #. type: deftp | |
21093 | #: doc/guix.texi:9820 | |
21094 | #, no-wrap | |
21095 | msgid "{Data Type} mingetty-configuration" | |
21096 | msgstr "" | |
21097 | ||
21098 | #. type: deftp | |
21099 | #: doc/guix.texi:9823 | |
21100 | msgid "" | |
21101 | "This is the data type representing the configuration of Mingetty, which " | |
21102 | "provides the default implementation of virtual console log-in." | |
21103 | msgstr "" | |
21104 | ||
21105 | #. type: code{#1} | |
21106 | #: doc/guix.texi:9826 doc/guix.texi:9862 | |
21107 | #, no-wrap | |
21108 | msgid "tty" | |
21109 | msgstr "" | |
21110 | ||
21111 | #. type: table | |
21112 | #: doc/guix.texi:9828 | |
21113 | msgid "The name of the console this Mingetty runs on---e.g., @code{\"tty1\"}." | |
21114 | msgstr "" | |
21115 | ||
21116 | #. type: item | |
21117 | #: doc/guix.texi:9829 doc/guix.texi:9891 | |
21118 | #, no-wrap | |
21119 | msgid "@code{auto-login} (default: @code{#f})" | |
21120 | msgstr "" | |
21121 | ||
21122 | #. type: table | |
21123 | #: doc/guix.texi:9833 | |
21124 | msgid "" | |
21125 | "When true, this field must be a string denoting the user name under which " | |
21126 | "the system automatically logs in. When it is @code{#f}, a user name and " | |
21127 | "password must be entered to log in." | |
21128 | msgstr "" | |
21129 | ||
21130 | #. type: item | |
21131 | #: doc/guix.texi:9834 | |
21132 | #, no-wrap | |
21133 | msgid "@code{login-program} (default: @code{#f})" | |
21134 | msgstr "" | |
21135 | ||
21136 | #. type: table | |
21137 | #: doc/guix.texi:9838 | |
21138 | msgid "" | |
21139 | "This must be either @code{#f}, in which case the default log-in program is " | |
21140 | "used (@command{login} from the Shadow tool suite), or a gexp denoting the " | |
21141 | "name of the log-in program." | |
21142 | msgstr "" | |
21143 | ||
21144 | #. type: item | |
21145 | #: doc/guix.texi:9839 | |
21146 | #, no-wrap | |
21147 | msgid "@code{login-pause?} (default: @code{#f})" | |
21148 | msgstr "" | |
21149 | ||
21150 | #. type: table | |
21151 | #: doc/guix.texi:9842 | |
21152 | msgid "" | |
21153 | "When set to @code{#t} in conjunction with @var{auto-login}, the user will " | |
21154 | "have to press a key before the log-in shell is launched." | |
21155 | msgstr "" | |
21156 | ||
21157 | #. type: item | |
21158 | #: doc/guix.texi:9843 | |
21159 | #, no-wrap | |
21160 | msgid "@code{mingetty} (default: @var{mingetty})" | |
21161 | msgstr "" | |
21162 | ||
21163 | #. type: table | |
21164 | #: doc/guix.texi:9845 | |
21165 | msgid "The Mingetty package to use." | |
21166 | msgstr "" | |
21167 | ||
21168 | #. type: deffn | |
21169 | #: doc/guix.texi:9849 | |
21170 | #, no-wrap | |
21171 | msgid "{Scheme Procedure} agetty-service @var{config}" | |
21172 | msgstr "" | |
21173 | ||
21174 | #. type: deffn | |
21175 | #: doc/guix.texi:9853 | |
21176 | msgid "" | |
39764ef8 JL |
21177 | "Return a service to run agetty according to @var{config}, an @code{<agetty-" |
21178 | "configuration>} object, which specifies the tty to run, among other things." | |
b9fe8fd6 JL |
21179 | msgstr "" |
21180 | ||
21181 | #. type: deftp | |
21182 | #: doc/guix.texi:9855 | |
21183 | #, no-wrap | |
21184 | msgid "{Data Type} agetty-configuration" | |
21185 | msgstr "" | |
21186 | ||
21187 | #. type: deftp | |
21188 | #: doc/guix.texi:9859 | |
21189 | msgid "" | |
21190 | "This is the data type representing the configuration of agetty, which " | |
21191 | "implements virtual and serial console log-in. See the @code{agetty(8)} man " | |
21192 | "page for more information." | |
21193 | msgstr "" | |
21194 | ||
21195 | #. type: table | |
21196 | #: doc/guix.texi:9866 | |
21197 | msgid "" | |
21198 | "The name of the console this agetty runs on, as a string---e.g., " | |
21199 | "@code{\"ttyS0\"}. This argument is optional, it will default to a reasonable " | |
21200 | "default serial port used by the kernel Linux." | |
21201 | msgstr "" | |
21202 | ||
21203 | #. type: table | |
21204 | #: doc/guix.texi:9870 | |
21205 | msgid "" | |
21206 | "For this, if there is a value for an option @code{agetty.tty} in the kernel " | |
21207 | "command line, agetty will extract the device name of the serial port from it " | |
21208 | "and use that." | |
21209 | msgstr "" | |
21210 | ||
21211 | #. type: table | |
21212 | #: doc/guix.texi:9874 | |
21213 | msgid "" | |
21214 | "If not and if there is a value for an option @code{console} with a tty in " | |
21215 | "the Linux command line, agetty will extract the device name of the serial " | |
21216 | "port from it and use that." | |
21217 | msgstr "" | |
21218 | ||
21219 | #. type: table | |
21220 | #: doc/guix.texi:9878 | |
21221 | msgid "" | |
21222 | "In both cases, agetty will leave the other serial device settings (baud rate " | |
21223 | "etc.) alone---in the hope that Linux pinned them to the correct values." | |
21224 | msgstr "" | |
21225 | ||
21226 | #. type: item | |
21227 | #: doc/guix.texi:9879 | |
21228 | #, no-wrap | |
21229 | msgid "@code{baud-rate} (default: @code{#f})" | |
21230 | msgstr "" | |
21231 | ||
21232 | #. type: table | |
21233 | #: doc/guix.texi:9882 | |
21234 | msgid "" | |
21235 | "A string containing a comma-separated list of one or more baud rates, in " | |
21236 | "descending order." | |
21237 | msgstr "" | |
21238 | ||
21239 | #. type: item | |
21240 | #: doc/guix.texi:9883 | |
21241 | #, no-wrap | |
21242 | msgid "@code{term} (default: @code{#f})" | |
21243 | msgstr "" | |
21244 | ||
21245 | #. type: table | |
21246 | #: doc/guix.texi:9886 | |
39764ef8 JL |
21247 | msgid "" |
21248 | "A string containing the value used for the @code{TERM} environment variable." | |
b9fe8fd6 JL |
21249 | msgstr "" |
21250 | ||
21251 | #. type: item | |
21252 | #: doc/guix.texi:9887 | |
21253 | #, no-wrap | |
21254 | msgid "@code{eight-bits?} (default: @code{#f})" | |
21255 | msgstr "" | |
21256 | ||
21257 | #. type: table | |
21258 | #: doc/guix.texi:9890 | |
21259 | msgid "" | |
21260 | "When @code{#t}, the tty is assumed to be 8-bit clean, and parity detection " | |
21261 | "is disabled." | |
21262 | msgstr "" | |
21263 | ||
21264 | #. type: table | |
21265 | #: doc/guix.texi:9894 | |
21266 | msgid "" | |
21267 | "When passed a login name, as a string, the specified user will be logged in " | |
21268 | "automatically without prompting for their login name or password." | |
21269 | msgstr "" | |
21270 | ||
21271 | #. type: item | |
21272 | #: doc/guix.texi:9895 | |
21273 | #, no-wrap | |
21274 | msgid "@code{no-reset?} (default: @code{#f})" | |
21275 | msgstr "" | |
21276 | ||
21277 | #. type: table | |
21278 | #: doc/guix.texi:9897 | |
21279 | msgid "When @code{#t}, don't reset terminal cflags (control modes)." | |
21280 | msgstr "" | |
21281 | ||
21282 | #. type: item | |
21283 | #: doc/guix.texi:9898 | |
21284 | #, no-wrap | |
21285 | msgid "@code{host} (default: @code{#f})" | |
21286 | msgstr "" | |
21287 | ||
21288 | #. type: table | |
21289 | #: doc/guix.texi:9901 | |
21290 | msgid "" | |
21291 | "This accepts a string containing the \"login_host\", which will be written " | |
21292 | "into the @file{/var/run/utmpx} file." | |
21293 | msgstr "" | |
21294 | ||
21295 | #. type: item | |
21296 | #: doc/guix.texi:9902 | |
21297 | #, no-wrap | |
21298 | msgid "@code{remote?} (default: @code{#f})" | |
21299 | msgstr "" | |
21300 | ||
21301 | #. type: table | |
21302 | #: doc/guix.texi:9906 | |
21303 | msgid "" | |
21304 | "When set to @code{#t} in conjunction with @var{host}, this will add an " | |
21305 | "@code{-r} fakehost option to the command line of the login program specified " | |
21306 | "in @var{login-program}." | |
21307 | msgstr "" | |
21308 | ||
21309 | #. type: item | |
21310 | #: doc/guix.texi:9907 | |
21311 | #, no-wrap | |
21312 | msgid "@code{flow-control?} (default: @code{#f})" | |
21313 | msgstr "" | |
21314 | ||
21315 | #. type: table | |
21316 | #: doc/guix.texi:9909 | |
21317 | msgid "When set to @code{#t}, enable hardware (RTS/CTS) flow control." | |
21318 | msgstr "" | |
21319 | ||
21320 | #. type: item | |
21321 | #: doc/guix.texi:9910 | |
21322 | #, no-wrap | |
21323 | msgid "@code{no-issue?} (default: @code{#f})" | |
21324 | msgstr "" | |
21325 | ||
21326 | #. type: table | |
21327 | #: doc/guix.texi:9913 | |
21328 | msgid "" | |
21329 | "When set to @code{#t}, the contents of the @file{/etc/issue} file will not " | |
21330 | "be displayed before presenting the login prompt." | |
21331 | msgstr "" | |
21332 | ||
21333 | #. type: item | |
21334 | #: doc/guix.texi:9914 | |
21335 | #, no-wrap | |
21336 | msgid "@code{init-string} (default: @code{#f})" | |
21337 | msgstr "" | |
21338 | ||
21339 | #. type: table | |
21340 | #: doc/guix.texi:9917 | |
21341 | msgid "" | |
21342 | "This accepts a string that will be sent to the tty or modem before sending " | |
21343 | "anything else. It can be used to initialize a modem." | |
21344 | msgstr "" | |
21345 | ||
21346 | #. type: item | |
21347 | #: doc/guix.texi:9918 | |
21348 | #, no-wrap | |
21349 | msgid "@code{no-clear?} (default: @code{#f})" | |
21350 | msgstr "" | |
21351 | ||
21352 | #. type: table | |
21353 | #: doc/guix.texi:9921 | |
21354 | msgid "" | |
21355 | "When set to @code{#t}, agetty will not clear the screen before showing the " | |
21356 | "login prompt." | |
21357 | msgstr "" | |
21358 | ||
21359 | #. type: item | |
21360 | #: doc/guix.texi:9922 | |
21361 | #, no-wrap | |
21362 | msgid "@code{login-program} (default: (file-append shadow \"/bin/login\"))" | |
21363 | msgstr "" | |
21364 | ||
21365 | #. type: table | |
21366 | #: doc/guix.texi:9926 | |
21367 | msgid "" | |
21368 | "This must be either a gexp denoting the name of a log-in program, or unset, " | |
21369 | "in which case the default value is the @command{login} from the Shadow tool " | |
21370 | "suite." | |
21371 | msgstr "" | |
21372 | ||
21373 | #. type: item | |
21374 | #: doc/guix.texi:9927 | |
21375 | #, no-wrap | |
21376 | msgid "@code{local-line} (default: @code{#f})" | |
21377 | msgstr "" | |
21378 | ||
21379 | #. type: table | |
21380 | #: doc/guix.texi:9931 | |
21381 | msgid "" | |
21382 | "Control the CLOCAL line flag. This accepts one of three symbols as " | |
21383 | "arguments, @code{'auto}, @code{'always}, or @code{'never}. If @code{#f}, the " | |
21384 | "default value chosen by agetty is @code{'auto}." | |
21385 | msgstr "" | |
21386 | ||
21387 | #. type: item | |
21388 | #: doc/guix.texi:9932 | |
21389 | #, no-wrap | |
21390 | msgid "@code{extract-baud?} (default: @code{#f})" | |
21391 | msgstr "" | |
21392 | ||
21393 | #. type: table | |
21394 | #: doc/guix.texi:9935 | |
21395 | msgid "" | |
21396 | "When set to @code{#t}, instruct agetty to try to extract the baud rate from " | |
21397 | "the status messages produced by certain types of modems." | |
21398 | msgstr "" | |
21399 | ||
21400 | #. type: item | |
21401 | #: doc/guix.texi:9936 | |
21402 | #, no-wrap | |
21403 | msgid "@code{skip-login?} (default: @code{#f})" | |
21404 | msgstr "" | |
21405 | ||
21406 | #. type: table | |
21407 | #: doc/guix.texi:9940 | |
21408 | msgid "" | |
21409 | "When set to @code{#t}, do not prompt the user for a login name. This can be " | |
21410 | "used with @var{login-program} field to use non-standard login systems." | |
21411 | msgstr "" | |
21412 | ||
21413 | #. type: item | |
21414 | #: doc/guix.texi:9941 | |
21415 | #, no-wrap | |
21416 | msgid "@code{no-newline?} (default: @code{#f})" | |
21417 | msgstr "" | |
21418 | ||
21419 | #. type: table | |
21420 | #: doc/guix.texi:9944 | |
21421 | msgid "" | |
39764ef8 JL |
21422 | "When set to @code{#t}, do not print a newline before printing the @file{/etc/" |
21423 | "issue} file." | |
b9fe8fd6 JL |
21424 | msgstr "" |
21425 | ||
21426 | #. type: item | |
21427 | #: doc/guix.texi:9946 | |
21428 | #, no-wrap | |
21429 | msgid "@code{login-options} (default: @code{#f})" | |
21430 | msgstr "" | |
21431 | ||
21432 | #. type: table | |
21433 | #: doc/guix.texi:9951 | |
21434 | msgid "" | |
21435 | "This option accepts a string containing options that are passed to the login " | |
21436 | "program. When used with the @var{login-program}, be aware that a malicious " | |
21437 | "user could try to enter a login name containing embedded options that could " | |
21438 | "be parsed by the login program." | |
21439 | msgstr "" | |
21440 | ||
21441 | #. type: item | |
21442 | #: doc/guix.texi:9952 | |
21443 | #, no-wrap | |
21444 | msgid "@code{login-pause} (default: @code{#f})" | |
21445 | msgstr "" | |
21446 | ||
21447 | #. type: table | |
21448 | #: doc/guix.texi:9956 | |
21449 | msgid "" | |
21450 | "When set to @code{#t}, wait for any key before showing the login prompt. " | |
21451 | "This can be used in conjunction with @var{auto-login} to save memory by " | |
21452 | "lazily spawning shells." | |
21453 | msgstr "" | |
21454 | ||
21455 | #. type: item | |
21456 | #: doc/guix.texi:9957 | |
21457 | #, no-wrap | |
21458 | msgid "@code{chroot} (default: @code{#f})" | |
21459 | msgstr "" | |
21460 | ||
21461 | #. type: table | |
21462 | #: doc/guix.texi:9960 | |
21463 | msgid "" | |
21464 | "Change root to the specified directory. This option accepts a directory " | |
21465 | "path as a string." | |
21466 | msgstr "" | |
21467 | ||
21468 | #. type: item | |
21469 | #: doc/guix.texi:9961 | |
21470 | #, no-wrap | |
21471 | msgid "@code{hangup?} (default: @code{#f})" | |
21472 | msgstr "" | |
21473 | ||
21474 | #. type: table | |
21475 | #: doc/guix.texi:9964 | |
21476 | msgid "" | |
21477 | "Use the Linux system call @code{vhangup} to do a virtual hangup of the " | |
21478 | "specified terminal." | |
21479 | msgstr "" | |
21480 | ||
21481 | #. type: item | |
21482 | #: doc/guix.texi:9965 | |
21483 | #, no-wrap | |
21484 | msgid "@code{keep-baud?} (default: @code{#f})" | |
21485 | msgstr "" | |
21486 | ||
21487 | #. type: table | |
21488 | #: doc/guix.texi:9969 | |
21489 | msgid "" | |
21490 | "When set to @code{#t}, try to keep the existing baud rate. The baud rates " | |
21491 | "from @var{baud-rate} are used when agetty receives a @key{BREAK} character." | |
21492 | msgstr "" | |
21493 | ||
21494 | #. type: item | |
21495 | #: doc/guix.texi:9970 | |
21496 | #, no-wrap | |
21497 | msgid "@code{timeout} (default: @code{#f})" | |
21498 | msgstr "" | |
21499 | ||
21500 | #. type: table | |
21501 | #: doc/guix.texi:9973 | |
21502 | msgid "" | |
21503 | "When set to an integer value, terminate if no user name could be read within " | |
21504 | "@var{timeout} seconds." | |
21505 | msgstr "" | |
21506 | ||
21507 | #. type: item | |
21508 | #: doc/guix.texi:9974 | |
21509 | #, no-wrap | |
21510 | msgid "@code{detect-case?} (default: @code{#f})" | |
21511 | msgstr "" | |
21512 | ||
21513 | #. type: table | |
21514 | #: doc/guix.texi:9980 | |
21515 | msgid "" | |
21516 | "When set to @code{#t}, turn on support for detecting an uppercase-only " | |
21517 | "terminal. This setting will detect a login name containing only uppercase " | |
39764ef8 JL |
21518 | "letters as indicating an uppercase-only terminal and turn on some upper-to-" |
21519 | "lower case conversions. Note that this will not support Unicode characters." | |
b9fe8fd6 JL |
21520 | msgstr "" |
21521 | ||
21522 | #. type: item | |
21523 | #: doc/guix.texi:9981 | |
21524 | #, no-wrap | |
21525 | msgid "@code{wait-cr?} (default: @code{#f})" | |
21526 | msgstr "" | |
21527 | ||
21528 | #. type: table | |
21529 | #: doc/guix.texi:9986 | |
21530 | msgid "" | |
21531 | "When set to @code{#t}, wait for the user or modem to send a carriage-return " | |
21532 | "or linefeed character before displaying @file{/etc/issue} or login prompt. " | |
21533 | "This is typically used with the @var{init-string} option." | |
21534 | msgstr "" | |
21535 | ||
21536 | #. type: item | |
21537 | #: doc/guix.texi:9987 | |
21538 | #, no-wrap | |
21539 | msgid "@code{no-hints?} (default: @code{#f})" | |
21540 | msgstr "" | |
21541 | ||
21542 | #. type: table | |
21543 | #: doc/guix.texi:9990 | |
39764ef8 JL |
21544 | msgid "" |
21545 | "When set to @code{#t}, do not print hints about Num, Caps, and Scroll locks." | |
b9fe8fd6 JL |
21546 | msgstr "" |
21547 | ||
21548 | #. type: item | |
21549 | #: doc/guix.texi:9991 | |
21550 | #, no-wrap | |
21551 | msgid "@code{no-hostname?} (default: @code{#f})" | |
21552 | msgstr "" | |
21553 | ||
21554 | #. type: table | |
21555 | #: doc/guix.texi:9994 | |
21556 | msgid "" | |
21557 | "By default, the hostname is printed. When this option is set to @code{#t}, " | |
21558 | "no hostname will be shown at all." | |
21559 | msgstr "" | |
21560 | ||
21561 | #. type: item | |
21562 | #: doc/guix.texi:9995 | |
21563 | #, no-wrap | |
21564 | msgid "@code{long-hostname?} (default: @code{#f})" | |
21565 | msgstr "" | |
21566 | ||
21567 | #. type: table | |
21568 | #: doc/guix.texi:9999 | |
21569 | msgid "" | |
21570 | "By default, the hostname is only printed until the first dot. When this " | |
21571 | "option is set to @code{#t}, the fully qualified hostname by " | |
21572 | "@code{gethostname} or @code{getaddrinfo} is shown." | |
21573 | msgstr "" | |
21574 | ||
21575 | #. type: item | |
21576 | #: doc/guix.texi:10000 | |
21577 | #, no-wrap | |
21578 | msgid "@code{erase-characters} (default: @code{#f})" | |
21579 | msgstr "" | |
21580 | ||
21581 | #. type: table | |
21582 | #: doc/guix.texi:10003 | |
21583 | msgid "" | |
21584 | "This option accepts a string of additional characters that should be " | |
21585 | "interpreted as backspace when the user types their login name." | |
21586 | msgstr "" | |
21587 | ||
21588 | #. type: item | |
21589 | #: doc/guix.texi:10004 | |
21590 | #, no-wrap | |
21591 | msgid "@code{kill-characters} (default: @code{#f})" | |
21592 | msgstr "" | |
21593 | ||
21594 | #. type: table | |
21595 | #: doc/guix.texi:10008 | |
21596 | msgid "" | |
21597 | "This option accepts a string that should be interpreted to mean \"ignore all " | |
21598 | "previous characters\" (also called a \"kill\" character) when the types " | |
21599 | "their login name." | |
21600 | msgstr "" | |
21601 | ||
21602 | #. type: item | |
21603 | #: doc/guix.texi:10009 | |
21604 | #, no-wrap | |
21605 | msgid "@code{chdir} (default: @code{#f})" | |
21606 | msgstr "" | |
21607 | ||
21608 | #. type: table | |
21609 | #: doc/guix.texi:10012 | |
21610 | msgid "" | |
21611 | "This option accepts, as a string, a directory path that will be changed to " | |
21612 | "before login." | |
21613 | msgstr "" | |
21614 | ||
21615 | #. type: item | |
21616 | #: doc/guix.texi:10013 | |
21617 | #, no-wrap | |
21618 | msgid "@code{delay} (default: @code{#f})" | |
21619 | msgstr "" | |
21620 | ||
21621 | #. type: table | |
21622 | #: doc/guix.texi:10016 | |
21623 | msgid "" | |
21624 | "This options accepts, as an integer, the number of seconds to sleep before " | |
21625 | "opening the tty and displaying the login prompt." | |
21626 | msgstr "" | |
21627 | ||
21628 | #. type: item | |
21629 | #: doc/guix.texi:10017 | |
21630 | #, no-wrap | |
21631 | msgid "@code{nice} (default: @code{#f})" | |
21632 | msgstr "" | |
21633 | ||
21634 | #. type: table | |
21635 | #: doc/guix.texi:10020 | |
21636 | msgid "" | |
21637 | "This option accepts, as an integer, the nice value with which to run the " | |
21638 | "@command{login} program." | |
21639 | msgstr "" | |
21640 | ||
21641 | #. type: item | |
21642 | #: doc/guix.texi:10021 doc/guix.texi:10221 | |
21643 | #, no-wrap | |
21644 | msgid "@code{extra-options} (default: @code{'()})" | |
21645 | msgstr "" | |
21646 | ||
21647 | #. type: table | |
21648 | #: doc/guix.texi:10024 | |
21649 | msgid "" | |
21650 | "This option provides an \"escape hatch\" for the user to provide arbitrary " | |
21651 | "command-line arguments to @command{agetty} as a list of strings." | |
21652 | msgstr "" | |
21653 | ||
21654 | #. type: deffn | |
21655 | #: doc/guix.texi:10028 | |
21656 | #, no-wrap | |
21657 | msgid "{Scheme Procedure} kmscon-service-type @var{config}" | |
21658 | msgstr "" | |
21659 | ||
21660 | #. type: deffn | |
21661 | #: doc/guix.texi:10032 | |
21662 | msgid "" | |
39764ef8 JL |
21663 | "Return a service to run @uref{https://www.freedesktop.org/wiki/Software/" |
21664 | "kmscon,kmscon} according to @var{config}, a @code{<kmscon-configuration>} " | |
21665 | "object, which specifies the tty to run, among other things." | |
b9fe8fd6 JL |
21666 | msgstr "" |
21667 | ||
21668 | #. type: deftp | |
21669 | #: doc/guix.texi:10034 | |
21670 | #, no-wrap | |
21671 | msgid "{Data Type} kmscon-configuration" | |
21672 | msgstr "" | |
21673 | ||
21674 | #. type: deftp | |
21675 | #: doc/guix.texi:10037 | |
21676 | msgid "" | |
21677 | "This is the data type representing the configuration of Kmscon, which " | |
21678 | "implements virtual console log-in." | |
21679 | msgstr "" | |
21680 | ||
21681 | #. type: code{#1} | |
21682 | #: doc/guix.texi:10040 | |
21683 | #, no-wrap | |
21684 | msgid "virtual-terminal" | |
21685 | msgstr "" | |
21686 | ||
21687 | #. type: table | |
21688 | #: doc/guix.texi:10042 | |
21689 | msgid "The name of the console this Kmscon runs on---e.g., @code{\"tty1\"}." | |
21690 | msgstr "" | |
21691 | ||
21692 | #. type: item | |
21693 | #: doc/guix.texi:10043 | |
21694 | #, no-wrap | |
39764ef8 | 21695 | msgid "@code{login-program} (default: @code{#~(string-append #$shadow \"/bin/login\")})" |
b9fe8fd6 JL |
21696 | msgstr "" |
21697 | ||
21698 | #. type: table | |
21699 | #: doc/guix.texi:10046 | |
21700 | msgid "" | |
21701 | "A gexp denoting the name of the log-in program. The default log-in program " | |
21702 | "is @command{login} from the Shadow tool suite." | |
21703 | msgstr "" | |
21704 | ||
21705 | #. type: item | |
21706 | #: doc/guix.texi:10047 | |
21707 | #, no-wrap | |
21708 | msgid "@code{login-arguments} (default: @code{'(\"-p\")})" | |
21709 | msgstr "" | |
21710 | ||
21711 | #. type: table | |
21712 | #: doc/guix.texi:10049 | |
21713 | msgid "A list of arguments to pass to @command{login}." | |
21714 | msgstr "" | |
21715 | ||
21716 | #. type: item | |
21717 | #: doc/guix.texi:10050 | |
21718 | #, no-wrap | |
21719 | msgid "@code{hardware-acceleration?} (default: #f)" | |
21720 | msgstr "" | |
21721 | ||
21722 | #. type: table | |
21723 | #: doc/guix.texi:10052 | |
21724 | msgid "Whether to use hardware acceleration." | |
21725 | msgstr "" | |
21726 | ||
21727 | #. type: item | |
21728 | #: doc/guix.texi:10053 | |
21729 | #, no-wrap | |
21730 | msgid "@code{kmscon} (default: @var{kmscon})" | |
21731 | msgstr "" | |
21732 | ||
21733 | #. type: table | |
21734 | #: doc/guix.texi:10055 | |
21735 | msgid "The Kmscon package to use." | |
21736 | msgstr "" | |
21737 | ||
21738 | #. type: cindex | |
21739 | #: doc/guix.texi:10059 | |
21740 | #, no-wrap | |
21741 | msgid "name service cache daemon" | |
21742 | msgstr "" | |
21743 | ||
21744 | #. type: cindex | |
21745 | #: doc/guix.texi:10060 | |
21746 | #, no-wrap | |
21747 | msgid "nscd" | |
21748 | msgstr "" | |
21749 | ||
21750 | #. type: deffn | |
21751 | #: doc/guix.texi:10061 | |
21752 | #, no-wrap | |
21753 | msgid "{Scheme Procedure} nscd-service [@var{config}] [#:glibc glibc] @" | |
21754 | msgstr "" | |
21755 | ||
21756 | #. type: deffn | |
21757 | #: doc/guix.texi:10066 | |
21758 | msgid "" | |
21759 | "[#:name-services '()] Return a service that runs the libc name service cache " | |
21760 | "daemon (nscd) with the given @var{config}---an @code{<nscd-configuration>} " | |
21761 | "object. @xref{Name Service Switch}, for an example." | |
21762 | msgstr "" | |
21763 | ||
21764 | #. type: defvr | |
21765 | #: doc/guix.texi:10068 | |
21766 | #, no-wrap | |
21767 | msgid "{Scheme Variable} %nscd-default-configuration" | |
21768 | msgstr "" | |
21769 | ||
21770 | #. type: defvr | |
21771 | #: doc/guix.texi:10072 | |
21772 | msgid "" | |
21773 | "This is the default @code{<nscd-configuration>} value (see below) used by " | |
39764ef8 JL |
21774 | "@code{nscd-service}. It uses the caches defined by @var{%nscd-default-" |
21775 | "caches}; see below." | |
b9fe8fd6 JL |
21776 | msgstr "" |
21777 | ||
21778 | #. type: deftp | |
21779 | #: doc/guix.texi:10074 | |
21780 | #, no-wrap | |
21781 | msgid "{Data Type} nscd-configuration" | |
21782 | msgstr "" | |
21783 | ||
21784 | #. type: deftp | |
21785 | #: doc/guix.texi:10077 | |
21786 | msgid "" | |
21787 | "This is the data type representing the name service cache daemon (nscd) " | |
21788 | "configuration." | |
21789 | msgstr "" | |
21790 | ||
21791 | #. type: item | |
21792 | #: doc/guix.texi:10080 | |
21793 | #, no-wrap | |
21794 | msgid "@code{name-services} (default: @code{'()})" | |
21795 | msgstr "" | |
21796 | ||
21797 | #. type: table | |
21798 | #: doc/guix.texi:10083 | |
21799 | msgid "" | |
21800 | "List of packages denoting @dfn{name services} that must be visible to the " | |
21801 | "nscd---e.g., @code{(list @var{nss-mdns})}." | |
21802 | msgstr "" | |
21803 | ||
21804 | #. type: item | |
21805 | #: doc/guix.texi:10084 | |
21806 | #, no-wrap | |
21807 | msgid "@code{glibc} (default: @var{glibc})" | |
21808 | msgstr "" | |
21809 | ||
21810 | #. type: table | |
21811 | #: doc/guix.texi:10087 | |
21812 | msgid "" | |
21813 | "Package object denoting the GNU C Library providing the @command{nscd} " | |
21814 | "command." | |
21815 | msgstr "" | |
21816 | ||
21817 | #. type: item | |
21818 | #: doc/guix.texi:10088 | |
21819 | #, no-wrap | |
21820 | msgid "@code{log-file} (default: @code{\"/var/log/nscd.log\"})" | |
21821 | msgstr "" | |
21822 | ||
21823 | #. type: table | |
21824 | #: doc/guix.texi:10091 | |
21825 | msgid "" | |
21826 | "Name of the nscd log file. This is where debugging output goes when " | |
21827 | "@code{debug-level} is strictly positive." | |
21828 | msgstr "" | |
21829 | ||
21830 | #. type: item | |
21831 | #: doc/guix.texi:10092 | |
21832 | #, no-wrap | |
21833 | msgid "@code{debug-level} (default: @code{0})" | |
21834 | msgstr "" | |
21835 | ||
21836 | #. type: table | |
21837 | #: doc/guix.texi:10095 | |
21838 | msgid "" | |
21839 | "Integer denoting the debugging levels. Higher numbers mean that more " | |
21840 | "debugging output is logged." | |
21841 | msgstr "" | |
21842 | ||
21843 | #. type: item | |
21844 | #: doc/guix.texi:10096 | |
21845 | #, no-wrap | |
21846 | msgid "@code{caches} (default: @var{%nscd-default-caches})" | |
21847 | msgstr "" | |
21848 | ||
21849 | #. type: table | |
21850 | #: doc/guix.texi:10099 | |
39764ef8 JL |
21851 | msgid "" |
21852 | "List of @code{<nscd-cache>} objects denoting things to be cached; see below." | |
b9fe8fd6 JL |
21853 | msgstr "" |
21854 | ||
21855 | #. type: deftp | |
21856 | #: doc/guix.texi:10103 | |
21857 | #, no-wrap | |
21858 | msgid "{Data Type} nscd-cache" | |
21859 | msgstr "" | |
21860 | ||
21861 | #. type: deftp | |
21862 | #: doc/guix.texi:10105 | |
21863 | msgid "Data type representing a cache database of nscd and its parameters." | |
21864 | msgstr "" | |
21865 | ||
21866 | #. type: cindex | |
39764ef8 | 21867 | #: doc/guix.texi:10108 doc/guix.texi:12810 |
b9fe8fd6 JL |
21868 | #, no-wrap |
21869 | msgid "database" | |
21870 | msgstr "" | |
21871 | ||
21872 | #. type: table | |
21873 | #: doc/guix.texi:10113 | |
21874 | msgid "" | |
21875 | "This is a symbol representing the name of the database to be cached. Valid " | |
21876 | "values are @code{passwd}, @code{group}, @code{hosts}, and @code{services}, " | |
21877 | "which designate the corresponding NSS database (@pxref{NSS Basics,,, libc, " | |
21878 | "The GNU C Library Reference Manual})." | |
21879 | msgstr "" | |
21880 | ||
21881 | #. type: code{#1} | |
21882 | #: doc/guix.texi:10114 | |
21883 | #, no-wrap | |
21884 | msgid "positive-time-to-live" | |
21885 | msgstr "" | |
21886 | ||
21887 | #. type: itemx | |
21888 | #: doc/guix.texi:10115 | |
21889 | #, no-wrap | |
21890 | msgid "@code{negative-time-to-live} (default: @code{20})" | |
21891 | msgstr "" | |
21892 | ||
21893 | #. type: table | |
21894 | #: doc/guix.texi:10118 | |
21895 | msgid "" | |
21896 | "A number representing the number of seconds during which a positive or " | |
21897 | "negative lookup result remains in cache." | |
21898 | msgstr "" | |
21899 | ||
21900 | #. type: item | |
21901 | #: doc/guix.texi:10119 | |
21902 | #, no-wrap | |
21903 | msgid "@code{check-files?} (default: @code{#t})" | |
21904 | msgstr "" | |
21905 | ||
21906 | #. type: table | |
21907 | #: doc/guix.texi:10122 | |
39764ef8 JL |
21908 | msgid "" |
21909 | "Whether to check for updates of the files corresponding to @var{database}." | |
b9fe8fd6 JL |
21910 | msgstr "" |
21911 | ||
21912 | #. type: table | |
21913 | #: doc/guix.texi:10126 | |
21914 | msgid "" | |
21915 | "For instance, when @var{database} is @code{hosts}, setting this flag " | |
21916 | "instructs nscd to check for updates in @file{/etc/hosts} and to take them " | |
21917 | "into account." | |
21918 | msgstr "" | |
21919 | ||
21920 | #. type: item | |
21921 | #: doc/guix.texi:10127 | |
21922 | #, no-wrap | |
21923 | msgid "@code{persistent?} (default: @code{#t})" | |
21924 | msgstr "" | |
21925 | ||
21926 | #. type: table | |
21927 | #: doc/guix.texi:10129 | |
21928 | msgid "Whether the cache should be stored persistently on disk." | |
21929 | msgstr "" | |
21930 | ||
21931 | #. type: item | |
21932 | #: doc/guix.texi:10130 | |
21933 | #, no-wrap | |
21934 | msgid "@code{shared?} (default: @code{#t})" | |
21935 | msgstr "" | |
21936 | ||
21937 | #. type: table | |
21938 | #: doc/guix.texi:10132 | |
21939 | msgid "Whether the cache should be shared among users." | |
21940 | msgstr "" | |
21941 | ||
21942 | #. type: item | |
21943 | #: doc/guix.texi:10133 | |
21944 | #, no-wrap | |
21945 | msgid "@code{max-database-size} (default: 32@tie{}MiB)" | |
21946 | msgstr "" | |
21947 | ||
21948 | #. type: table | |
21949 | #: doc/guix.texi:10135 | |
21950 | msgid "Maximum size in bytes of the database cache." | |
21951 | msgstr "" | |
21952 | ||
21953 | #. type: defvr | |
21954 | #: doc/guix.texi:10142 | |
21955 | #, no-wrap | |
21956 | msgid "{Scheme Variable} %nscd-default-caches" | |
21957 | msgstr "" | |
21958 | ||
21959 | #. type: defvr | |
21960 | #: doc/guix.texi:10145 | |
21961 | msgid "" | |
39764ef8 JL |
21962 | "List of @code{<nscd-cache>} objects used by default by @code{nscd-" |
21963 | "configuration} (see above)." | |
b9fe8fd6 JL |
21964 | msgstr "" |
21965 | ||
21966 | #. type: defvr | |
21967 | #: doc/guix.texi:10151 | |
21968 | msgid "" | |
21969 | "It enables persistent and aggressive caching of service and host name " | |
21970 | "lookups. The latter provides better host name lookup performance, " | |
39764ef8 JL |
21971 | "resilience in the face of unreliable name servers, and also better privacy---" |
21972 | "often the result of host name lookups is in local cache, so external name " | |
21973 | "servers do not even need to be queried." | |
b9fe8fd6 JL |
21974 | msgstr "" |
21975 | ||
21976 | #. type: anchor{#1} | |
21977 | #: doc/guix.texi:10154 | |
21978 | msgid "syslog-configuration-type" | |
21979 | msgstr "" | |
21980 | ||
21981 | #. type: cindex | |
21982 | #: doc/guix.texi:10154 doc/guix.texi:10170 | |
21983 | #, no-wrap | |
21984 | msgid "syslog" | |
21985 | msgstr "" | |
21986 | ||
21987 | #. type: cindex | |
21988 | #: doc/guix.texi:10155 doc/guix.texi:10588 | |
21989 | #, no-wrap | |
21990 | msgid "logging" | |
21991 | msgstr "" | |
21992 | ||
21993 | #. type: deftp | |
21994 | #: doc/guix.texi:10156 | |
21995 | #, no-wrap | |
21996 | msgid "{Data Type} syslog-configuration" | |
21997 | msgstr "" | |
21998 | ||
21999 | #. type: deftp | |
22000 | #: doc/guix.texi:10158 | |
22001 | msgid "This data type represents the configuration of the syslog daemon." | |
22002 | msgstr "" | |
22003 | ||
22004 | #. type: item | |
22005 | #: doc/guix.texi:10160 | |
22006 | #, no-wrap | |
39764ef8 | 22007 | msgid "@code{syslogd} (default: @code{#~(string-append #$inetutils \"/libexec/syslogd\")})" |
b9fe8fd6 JL |
22008 | msgstr "" |
22009 | ||
22010 | #. type: table | |
22011 | #: doc/guix.texi:10162 | |
22012 | msgid "The syslog daemon to use." | |
22013 | msgstr "" | |
22014 | ||
22015 | #. type: item | |
22016 | #: doc/guix.texi:10163 | |
22017 | #, no-wrap | |
22018 | msgid "@code{config-file} (default: @code{%default-syslog.conf})" | |
22019 | msgstr "" | |
22020 | ||
22021 | #. type: table | |
22022 | #: doc/guix.texi:10165 | |
22023 | msgid "The syslog configuration file to use." | |
22024 | msgstr "" | |
22025 | ||
22026 | #. type: anchor{#1} | |
22027 | #: doc/guix.texi:10170 | |
22028 | msgid "syslog-service" | |
22029 | msgstr "" | |
22030 | ||
22031 | #. type: deffn | |
22032 | #: doc/guix.texi:10171 | |
22033 | #, no-wrap | |
22034 | msgid "{Scheme Procedure} syslog-service @var{config}" | |
22035 | msgstr "" | |
22036 | ||
22037 | #. type: deffn | |
22038 | #: doc/guix.texi:10173 | |
22039 | msgid "Return a service that runs a syslog daemon according to @var{config}." | |
22040 | msgstr "" | |
22041 | ||
22042 | #. type: deffn | |
22043 | #: doc/guix.texi:10176 | |
22044 | msgid "" | |
22045 | "@xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more information " | |
22046 | "on the configuration file syntax." | |
22047 | msgstr "" | |
22048 | ||
22049 | #. type: anchor{#1} | |
22050 | #: doc/guix.texi:10179 | |
22051 | msgid "guix-configuration-type" | |
22052 | msgstr "" | |
22053 | ||
22054 | #. type: deftp | |
22055 | #: doc/guix.texi:10179 | |
22056 | #, no-wrap | |
22057 | msgid "{Data Type} guix-configuration" | |
22058 | msgstr "" | |
22059 | ||
22060 | #. type: deftp | |
22061 | #: doc/guix.texi:10182 | |
22062 | msgid "" | |
22063 | "This data type represents the configuration of the Guix build daemon. " | |
22064 | "@xref{Invoking guix-daemon}, for more information." | |
22065 | msgstr "" | |
22066 | ||
22067 | #. type: item | |
22068 | #: doc/guix.texi:10184 | |
22069 | #, no-wrap | |
22070 | msgid "@code{guix} (default: @var{guix})" | |
22071 | msgstr "" | |
22072 | ||
22073 | #. type: table | |
22074 | #: doc/guix.texi:10186 doc/guix.texi:10414 | |
22075 | msgid "The Guix package to use." | |
22076 | msgstr "" | |
22077 | ||
22078 | #. type: item | |
22079 | #: doc/guix.texi:10187 | |
22080 | #, no-wrap | |
22081 | msgid "@code{build-group} (default: @code{\"guixbuild\"})" | |
22082 | msgstr "" | |
22083 | ||
22084 | #. type: table | |
22085 | #: doc/guix.texi:10189 | |
22086 | msgid "Name of the group for build user accounts." | |
22087 | msgstr "" | |
22088 | ||
22089 | #. type: item | |
22090 | #: doc/guix.texi:10190 | |
22091 | #, no-wrap | |
22092 | msgid "@code{build-accounts} (default: @code{10})" | |
22093 | msgstr "" | |
22094 | ||
22095 | #. type: table | |
22096 | #: doc/guix.texi:10192 | |
22097 | msgid "Number of build user accounts to create." | |
22098 | msgstr "" | |
22099 | ||
22100 | #. type: item | |
22101 | #: doc/guix.texi:10193 | |
22102 | #, no-wrap | |
22103 | msgid "@code{authorize-key?} (default: @code{#t})" | |
22104 | msgstr "" | |
22105 | ||
22106 | #. type: table | |
22107 | #: doc/guix.texi:10198 | |
22108 | msgid "" | |
39764ef8 JL |
22109 | "Whether to authorize the substitute keys listed in @code{authorized-keys}---" |
22110 | "by default that of @code{hydra.gnu.org} (@pxref{Substitutes})." | |
b9fe8fd6 JL |
22111 | msgstr "" |
22112 | ||
22113 | #. type: vindex | |
22114 | #: doc/guix.texi:10199 | |
22115 | #, no-wrap | |
22116 | msgid "%default-authorized-guix-keys" | |
22117 | msgstr "" | |
22118 | ||
22119 | #. type: item | |
22120 | #: doc/guix.texi:10200 | |
22121 | #, no-wrap | |
22122 | msgid "@code{authorized-keys} (default: @var{%default-authorized-guix-keys})" | |
22123 | msgstr "" | |
22124 | ||
22125 | #. type: table | |
22126 | #: doc/guix.texi:10204 | |
22127 | msgid "" | |
39764ef8 JL |
22128 | "The list of authorized key files for archive imports, as a list of string-" |
22129 | "valued gexps (@pxref{Invoking guix archive}). By default, it contains that " | |
22130 | "of @code{hydra.gnu.org} (@pxref{Substitutes})." | |
b9fe8fd6 JL |
22131 | msgstr "" |
22132 | ||
22133 | #. type: item | |
22134 | #: doc/guix.texi:10205 | |
22135 | #, no-wrap | |
22136 | msgid "@code{use-substitutes?} (default: @code{#t})" | |
22137 | msgstr "" | |
22138 | ||
22139 | #. type: table | |
22140 | #: doc/guix.texi:10207 | |
22141 | msgid "Whether to use substitutes." | |
22142 | msgstr "" | |
22143 | ||
22144 | #. type: item | |
22145 | #: doc/guix.texi:10208 | |
22146 | #, no-wrap | |
22147 | msgid "@code{substitute-urls} (default: @var{%default-substitute-urls})" | |
22148 | msgstr "" | |
22149 | ||
22150 | #. type: table | |
22151 | #: doc/guix.texi:10210 | |
22152 | msgid "The list of URLs where to look for substitutes by default." | |
22153 | msgstr "" | |
22154 | ||
22155 | #. type: item | |
22156 | #: doc/guix.texi:10211 | |
22157 | #, no-wrap | |
22158 | msgid "@code{max-silent-time} (default: @code{0})" | |
22159 | msgstr "" | |
22160 | ||
22161 | #. type: itemx | |
22162 | #: doc/guix.texi:10212 | |
22163 | #, no-wrap | |
22164 | msgid "@code{timeout} (default: @code{0})" | |
22165 | msgstr "" | |
22166 | ||
22167 | #. type: table | |
22168 | #: doc/guix.texi:10216 | |
22169 | msgid "" | |
22170 | "The number of seconds of silence and the number of seconds of activity, " | |
22171 | "respectively, after which a build process times out. A value of zero " | |
22172 | "disables the timeout." | |
22173 | msgstr "" | |
22174 | ||
22175 | #. type: item | |
22176 | #: doc/guix.texi:10217 | |
22177 | #, no-wrap | |
22178 | msgid "@code{log-compression} (default: @code{'bzip2})" | |
22179 | msgstr "" | |
22180 | ||
22181 | #. type: table | |
22182 | #: doc/guix.texi:10220 | |
22183 | msgid "" | |
22184 | "The type of compression used for build logs---one of @code{gzip}, " | |
22185 | "@code{bzip2}, or @code{none}." | |
22186 | msgstr "" | |
22187 | ||
22188 | #. type: table | |
22189 | #: doc/guix.texi:10223 | |
22190 | msgid "List of extra command-line options for @command{guix-daemon}." | |
22191 | msgstr "" | |
22192 | ||
22193 | #. type: item | |
22194 | #: doc/guix.texi:10224 | |
22195 | #, no-wrap | |
22196 | msgid "@code{log-file} (default: @code{\"/var/log/guix-daemon.log\"})" | |
22197 | msgstr "" | |
22198 | ||
22199 | #. type: table | |
22200 | #: doc/guix.texi:10227 | |
22201 | msgid "" | |
22202 | "File where @command{guix-daemon}'s standard output and standard error are " | |
22203 | "written." | |
22204 | msgstr "" | |
22205 | ||
22206 | #. type: item | |
22207 | #: doc/guix.texi:10228 | |
22208 | #, no-wrap | |
22209 | msgid "@code{http-proxy} (default: @code{#f})" | |
22210 | msgstr "" | |
22211 | ||
22212 | #. type: table | |
22213 | #: doc/guix.texi:10231 | |
22214 | msgid "" | |
39764ef8 | 22215 | "The HTTP proxy used for downloading fixed-output derivations and substitutes." |
b9fe8fd6 JL |
22216 | msgstr "" |
22217 | ||
22218 | #. type: item | |
22219 | #: doc/guix.texi:10232 | |
22220 | #, no-wrap | |
22221 | msgid "@code{tmpdir} (default: @code{#f})" | |
22222 | msgstr "" | |
22223 | ||
22224 | #. type: table | |
22225 | #: doc/guix.texi:10234 | |
22226 | msgid "A directory path where the @command{guix-daemon} will perform builds." | |
22227 | msgstr "" | |
22228 | ||
22229 | #. type: deffn | |
22230 | #: doc/guix.texi:10238 | |
22231 | #, no-wrap | |
22232 | msgid "{Scheme Procedure} guix-service @var{config}" | |
22233 | msgstr "" | |
22234 | ||
22235 | #. type: deffn | |
22236 | #: doc/guix.texi:10241 | |
39764ef8 JL |
22237 | msgid "" |
22238 | "Return a service that runs the Guix build daemon according to @var{config}." | |
b9fe8fd6 JL |
22239 | msgstr "" |
22240 | ||
22241 | #. type: deffn | |
22242 | #: doc/guix.texi:10243 | |
22243 | #, no-wrap | |
22244 | msgid "{Scheme Procedure} udev-service [#:udev @var{eudev} #:rules @code{'()}]" | |
22245 | msgstr "" | |
22246 | ||
22247 | #. type: deffn | |
22248 | #: doc/guix.texi:10248 | |
22249 | msgid "" | |
22250 | "Run @var{udev}, which populates the @file{/dev} directory dynamically. udev " | |
22251 | "rules can be provided as a list of files through the @var{rules} variable. " | |
22252 | "The procedures @var{udev-rule} and @var{file->udev-rule} from @code{(gnu " | |
22253 | "services base)} simplify the creation of such rule files." | |
22254 | msgstr "" | |
22255 | ||
22256 | #. type: deffn | |
22257 | #: doc/guix.texi:10249 | |
22258 | #, no-wrap | |
22259 | msgid "{Scheme Procedure} udev-rule [@var{file-name} @var{contents}]" | |
22260 | msgstr "" | |
22261 | ||
22262 | #. type: deffn | |
22263 | #: doc/guix.texi:10252 | |
22264 | msgid "" | |
22265 | "Return a udev-rule file named @var{file-name} containing the rules defined " | |
22266 | "by the @var{contents} literal." | |
22267 | msgstr "" | |
22268 | ||
22269 | #. type: deffn | |
22270 | #: doc/guix.texi:10256 | |
22271 | msgid "" | |
22272 | "In the following example, a rule for a USB device is defined to be stored in " | |
22273 | "the file @file{90-usb-thing.rules}. The rule runs a script upon detecting a " | |
22274 | "USB device with a given product identifier." | |
22275 | msgstr "" | |
22276 | ||
22277 | #. type: example | |
22278 | #: doc/guix.texi:10264 | |
22279 | #, no-wrap | |
22280 | msgid "" | |
22281 | "(define %example-udev-rule\n" | |
22282 | " (udev-rule\n" | |
22283 | " \"90-usb-thing.rules\"\n" | |
22284 | " (string-append \"ACTION==\\\"add\\\", SUBSYSTEM==\\\"usb\\\", \"\n" | |
22285 | " \"ATTR@{product@}==\\\"Example\\\", \"\n" | |
22286 | " \"RUN+=\\\"/path/to/script\\\"\")))\n" | |
22287 | msgstr "" | |
22288 | ||
22289 | #. type: deffn | |
22290 | #: doc/guix.texi:10268 | |
39764ef8 JL |
22291 | msgid "" |
22292 | "Here we show how the default @var{udev-service} can be extended with it." | |
b9fe8fd6 JL |
22293 | msgstr "" |
22294 | ||
22295 | #. type: example | |
22296 | #: doc/guix.texi:10278 | |
22297 | #, no-wrap | |
22298 | msgid "" | |
22299 | "(operating-system\n" | |
22300 | " ;; @dots{}\n" | |
22301 | " (services\n" | |
22302 | " (modify-services %desktop-services\n" | |
22303 | " (udev-service-type config =>\n" | |
22304 | " (udev-configuration (inherit config)\n" | |
22305 | " (rules (append (udev-configuration-rules config)\n" | |
22306 | " (list %example-udev-rule))))))))\n" | |
22307 | msgstr "" | |
22308 | ||
22309 | #. type: deffn | |
22310 | #: doc/guix.texi:10280 | |
22311 | #, no-wrap | |
22312 | msgid "{Scheme Procedure} file->udev-rule [@var{file-name} @var{file}]" | |
22313 | msgstr "" | |
22314 | ||
22315 | #. type: deffn | |
22316 | #: doc/guix.texi:10283 | |
22317 | msgid "" | |
22318 | "Return a udev file named @var{file-name} containing the rules defined within " | |
22319 | "@var{file}, a file-like object." | |
22320 | msgstr "" | |
22321 | ||
22322 | #. type: deffn | |
22323 | #: doc/guix.texi:10285 | |
22324 | msgid "The following example showcases how we can use an existing rule file." | |
22325 | msgstr "" | |
22326 | ||
22327 | #. type: example | |
22328 | #: doc/guix.texi:10290 | |
22329 | #, no-wrap | |
22330 | msgid "" | |
22331 | "(use-modules (guix download) ;for url-fetch\n" | |
22332 | " (guix packages) ;for origin\n" | |
22333 | " ;; @dots{})\n" | |
22334 | "\n" | |
22335 | msgstr "" | |
22336 | ||
22337 | #. type: example | |
22338 | #: doc/guix.texi:10301 | |
22339 | #, no-wrap | |
22340 | msgid "" | |
22341 | "(define %android-udev-rules\n" | |
22342 | " (file->udev-rule\n" | |
22343 | " \"51-android-udev.rules\"\n" | |
22344 | " (let ((version \"20170910\"))\n" | |
22345 | " (origin\n" | |
22346 | " (method url-fetch)\n" | |
22347 | " (uri (string-append \"https://raw.githubusercontent.com/M0Rf30/\"\n" | |
39764ef8 | 22348 | " \"android-udev-rules/\" version \"/51-android.rules\"))\n" |
b9fe8fd6 | 22349 | " (sha256\n" |
39764ef8 | 22350 | " (base32 \"0lmmagpyb6xsq6zcr2w1cyx9qmjqmajkvrdbhjx32gqf1d9is003\"))))))\n" |
b9fe8fd6 JL |
22351 | msgstr "" |
22352 | ||
22353 | #. type: deffn | |
22354 | #: doc/guix.texi:10310 | |
22355 | msgid "" | |
22356 | "Additionally, Guix package definitions can be included in @var{rules} in " | |
22357 | "order to extend the udev rules with the definitions found under their " | |
39764ef8 JL |
22358 | "@file{lib/udev/rules.d} sub-directory. In lieu of the previous @var{file-" |
22359 | ">udev-rule} example, we could have used the @var{android-udev-rules} package " | |
22360 | "which exists in Guix in the @code{(gnu packages android)} module." | |
b9fe8fd6 JL |
22361 | msgstr "" |
22362 | ||
22363 | #. type: deffn | |
22364 | #: doc/guix.texi:10319 | |
22365 | msgid "" | |
22366 | "The following example shows how to use the @var{android-udev-rules} package " | |
22367 | "so that the Android tool @command{adb} can detect devices without root " | |
22368 | "privileges. It also details how to create the @code{adbusers} group, which " | |
22369 | "is required for the proper functioning of the rules defined within the " | |
22370 | "@var{android-udev-rules} package. To create such a group, we must define it " | |
22371 | "both as part of the @var{supplementary-groups} of our @var{user-account} " | |
39764ef8 JL |
22372 | "declaration, as well as in the @var{groups} field of the @var{operating-" |
22373 | "system} record." | |
b9fe8fd6 JL |
22374 | msgstr "" |
22375 | ||
22376 | #. type: example | |
22377 | #: doc/guix.texi:10324 | |
22378 | #, no-wrap | |
22379 | msgid "" | |
22380 | "(use-modules (gnu packages android) ;for android-udev-rules\n" | |
22381 | " (gnu system shadow) ;for user-group\n" | |
22382 | " ;; @dots{})\n" | |
22383 | "\n" | |
22384 | msgstr "" | |
22385 | ||
22386 | #. type: example | |
22387 | #: doc/guix.texi:10333 | |
22388 | #, no-wrap | |
22389 | msgid "" | |
22390 | "(operating-system\n" | |
22391 | " ;; @dots{}\n" | |
22392 | " (users (cons (user-acount\n" | |
22393 | " ;; @dots{}\n" | |
22394 | " (supplementary-groups\n" | |
22395 | " '(\"adbusers\" ;for adb\n" | |
22396 | " \"wheel\" \"netdev\" \"audio\" \"video\"))\n" | |
22397 | " ;; @dots{})))\n" | |
22398 | "\n" | |
22399 | msgstr "" | |
22400 | ||
22401 | #. type: example | |
22402 | #: doc/guix.texi:10336 | |
22403 | #, no-wrap | |
22404 | msgid "" | |
22405 | " (groups (cons (user-group (system? #t) (name \"adbusers\"))\n" | |
22406 | " %base-groups))\n" | |
22407 | "\n" | |
22408 | msgstr "" | |
22409 | ||
22410 | #. type: example | |
22411 | #: doc/guix.texi:10338 | |
22412 | #, no-wrap | |
22413 | msgid "" | |
22414 | " ;; @dots{}\n" | |
22415 | "\n" | |
22416 | msgstr "" | |
22417 | ||
22418 | #. type: example | |
22419 | #: doc/guix.texi:10345 | |
22420 | #, no-wrap | |
22421 | msgid "" | |
22422 | " (services\n" | |
22423 | " (modify-services %desktop-services\n" | |
22424 | " (udev-service-type config =>\n" | |
22425 | " (udev-configuration (inherit config)\n" | |
22426 | " (rules (cons* android-udev-rules\n" | |
22427 | " (udev-configuration-rules config))))))))\n" | |
22428 | msgstr "" | |
22429 | ||
22430 | #. type: defvr | |
22431 | #: doc/guix.texi:10348 | |
22432 | #, no-wrap | |
22433 | msgid "{Scheme Variable} urandom-seed-service-type" | |
22434 | msgstr "" | |
22435 | ||
22436 | #. type: defvr | |
22437 | #: doc/guix.texi:10353 | |
22438 | msgid "" | |
22439 | "Save some entropy in @var{%random-seed-file} to seed @file{/dev/urandom} " | |
39764ef8 JL |
22440 | "when rebooting. It also tries to seed @file{/dev/urandom} from @file{/dev/" |
22441 | "hwrng} while booting, if @file{/dev/hwrng} exists and is readable." | |
b9fe8fd6 JL |
22442 | msgstr "" |
22443 | ||
22444 | #. type: defvr | |
22445 | #: doc/guix.texi:10355 | |
22446 | #, no-wrap | |
22447 | msgid "{Scheme Variable} %random-seed-file" | |
22448 | msgstr "" | |
22449 | ||
22450 | #. type: defvr | |
22451 | #: doc/guix.texi:10359 | |
22452 | msgid "" | |
22453 | "This is the name of the file where some random bytes are saved by " | |
22454 | "@var{urandom-seed-service} to seed @file{/dev/urandom} when rebooting. It " | |
22455 | "defaults to @file{/var/lib/random-seed}." | |
22456 | msgstr "" | |
22457 | ||
22458 | #. type: cindex | |
22459 | #: doc/guix.texi:10361 | |
22460 | #, no-wrap | |
22461 | msgid "keymap" | |
22462 | msgstr "" | |
22463 | ||
22464 | #. type: cindex | |
22465 | #: doc/guix.texi:10362 | |
22466 | #, no-wrap | |
22467 | msgid "keyboard" | |
22468 | msgstr "" | |
22469 | ||
22470 | #. type: deffn | |
22471 | #: doc/guix.texi:10363 | |
22472 | #, no-wrap | |
22473 | msgid "{Scheme Procedure} console-keymap-service @var{files} ..." | |
22474 | msgstr "" | |
22475 | ||
22476 | #. type: deffn | |
22477 | #: doc/guix.texi:10368 | |
22478 | msgid "" | |
22479 | "Return a service to load console keymaps from @var{files} using " | |
22480 | "@command{loadkeys} command. Most likely, you want to load some default " | |
22481 | "keymap, which can be done like this:" | |
22482 | msgstr "" | |
22483 | ||
22484 | #. type: example | |
22485 | #: doc/guix.texi:10371 | |
22486 | #, no-wrap | |
22487 | msgid "(console-keymap-service \"dvorak\")\n" | |
22488 | msgstr "" | |
22489 | ||
22490 | #. type: deffn | |
22491 | #: doc/guix.texi:10375 | |
22492 | msgid "" | |
22493 | "Or, for example, for a Swedish keyboard, you may need to combine the " | |
22494 | "following keymaps:" | |
22495 | msgstr "" | |
22496 | ||
22497 | #. type: example | |
22498 | #: doc/guix.texi:10377 | |
22499 | #, no-wrap | |
22500 | msgid "(console-keymap-service \"se-lat6\" \"se-fi-lat6\")\n" | |
22501 | msgstr "" | |
22502 | ||
22503 | #. type: deffn | |
22504 | #: doc/guix.texi:10381 | |
22505 | msgid "" | |
22506 | "Also you can specify a full file name (or file names) of your keymap(s). " | |
22507 | "See @code{man loadkeys} for details." | |
22508 | msgstr "" | |
22509 | ||
22510 | #. type: cindex | |
22511 | #: doc/guix.texi:10384 | |
22512 | #, no-wrap | |
22513 | msgid "mouse" | |
22514 | msgstr "" | |
22515 | ||
22516 | #. type: cindex | |
22517 | #: doc/guix.texi:10385 | |
22518 | #, no-wrap | |
22519 | msgid "gpm" | |
22520 | msgstr "" | |
22521 | ||
22522 | #. type: deffn | |
22523 | #: doc/guix.texi:10386 | |
22524 | #, no-wrap | |
22525 | msgid "{Scheme Procedure} gpm-service [#:gpm @var{gpm}] @" | |
22526 | msgstr "" | |
22527 | ||
22528 | #. type: deffn | |
22529 | #: doc/guix.texi:10392 | |
22530 | msgid "" | |
22531 | "[#:options] Run @var{gpm}, the general-purpose mouse daemon, with the given " | |
22532 | "command-line @var{options}. GPM allows users to use the mouse in the " | |
22533 | "console, notably to select, copy, and paste text. The default value of " | |
22534 | "@var{options} uses the @code{ps2} protocol, which works for both USB and " | |
22535 | "PS/2 mice." | |
22536 | msgstr "" | |
22537 | ||
22538 | #. type: deffn | |
22539 | #: doc/guix.texi:10394 | |
22540 | msgid "This service is not part of @var{%base-services}." | |
22541 | msgstr "" | |
22542 | ||
22543 | #. type: anchor{#1} | |
22544 | #: doc/guix.texi:10397 | |
22545 | msgid "guix-publish-service-type" | |
22546 | msgstr "" | |
22547 | ||
22548 | #. type: deffn | |
22549 | #: doc/guix.texi:10397 | |
22550 | #, no-wrap | |
22551 | msgid "{Scheme Variable} guix-publish-service-type" | |
22552 | msgstr "" | |
22553 | ||
22554 | #. type: deffn | |
22555 | #: doc/guix.texi:10401 | |
22556 | msgid "" | |
22557 | "This is the service type for @command{guix publish} (@pxref{Invoking guix " | |
22558 | "publish}). Its value must be a @code{guix-configuration} object, as " | |
22559 | "described below." | |
22560 | msgstr "" | |
22561 | ||
22562 | #. type: deffn | |
22563 | #: doc/guix.texi:10405 | |
22564 | msgid "" | |
22565 | "This assumes that @file{/etc/guix} already contains a signing key pair as " | |
22566 | "created by @command{guix archive --generate-key} (@pxref{Invoking guix " | |
22567 | "archive}). If that is not the case, the service will fail to start." | |
22568 | msgstr "" | |
22569 | ||
22570 | #. type: deftp | |
22571 | #: doc/guix.texi:10407 | |
22572 | #, no-wrap | |
22573 | msgid "{Data Type} guix-publish-configuration" | |
22574 | msgstr "" | |
22575 | ||
22576 | #. type: deftp | |
22577 | #: doc/guix.texi:10410 | |
39764ef8 JL |
22578 | msgid "" |
22579 | "Data type representing the configuration of the @code{guix publish} service." | |
b9fe8fd6 JL |
22580 | msgstr "" |
22581 | ||
22582 | #. type: item | |
22583 | #: doc/guix.texi:10412 | |
22584 | #, no-wrap | |
22585 | msgid "@code{guix} (default: @code{guix})" | |
22586 | msgstr "" | |
22587 | ||
22588 | #. type: item | |
22589 | #: doc/guix.texi:10415 | |
22590 | #, no-wrap | |
22591 | msgid "@code{port} (default: @code{80})" | |
22592 | msgstr "" | |
22593 | ||
22594 | #. type: table | |
22595 | #: doc/guix.texi:10417 | |
22596 | msgid "The TCP port to listen for connections." | |
22597 | msgstr "" | |
22598 | ||
22599 | #. type: item | |
22600 | #: doc/guix.texi:10418 | |
22601 | #, no-wrap | |
22602 | msgid "@code{host} (default: @code{\"localhost\"})" | |
22603 | msgstr "" | |
22604 | ||
22605 | #. type: table | |
22606 | #: doc/guix.texi:10421 | |
22607 | msgid "" | |
22608 | "The host (and thus, network interface) to listen to. Use @code{\"0.0.0.0\"} " | |
22609 | "to listen on all the network interfaces." | |
22610 | msgstr "" | |
22611 | ||
22612 | #. type: table | |
22613 | #: doc/guix.texi:10426 | |
22614 | msgid "" | |
22615 | "The gzip compression level at which substitutes are compressed. Use " | |
22616 | "@code{0} to disable compression altogether, and @code{9} to get the best " | |
22617 | "compression ratio at the expense of increased CPU usage." | |
22618 | msgstr "" | |
22619 | ||
22620 | #. type: item | |
22621 | #: doc/guix.texi:10427 | |
22622 | #, no-wrap | |
22623 | msgid "@code{nar-path} (default: @code{\"nar\"})" | |
22624 | msgstr "" | |
22625 | ||
22626 | #. type: table | |
22627 | #: doc/guix.texi:10430 | |
22628 | msgid "" | |
22629 | "The URL path at which ``nars'' can be fetched. @xref{Invoking guix publish, " | |
22630 | "@code{--nar-path}}, for details." | |
22631 | msgstr "" | |
22632 | ||
22633 | #. type: item | |
22634 | #: doc/guix.texi:10431 | |
22635 | #, no-wrap | |
22636 | msgid "@code{cache} (default: @code{#f})" | |
22637 | msgstr "" | |
22638 | ||
22639 | #. type: table | |
22640 | #: doc/guix.texi:10437 | |
22641 | msgid "" | |
22642 | "When it is @code{#f}, disable caching and instead generate archives on " | |
39764ef8 JL |
22643 | "demand. Otherwise, this should be the name of a directory---e.g., @code{\"/" |
22644 | "var/cache/guix/publish\"}---where @command{guix publish} caches archives and " | |
22645 | "meta-data ready to be sent. @xref{Invoking guix publish, @option{--cache}}, " | |
22646 | "for more information on the tradeoffs involved." | |
b9fe8fd6 JL |
22647 | msgstr "" |
22648 | ||
22649 | #. type: item | |
22650 | #: doc/guix.texi:10438 | |
22651 | #, no-wrap | |
22652 | msgid "@code{workers} (default: @code{#f})" | |
22653 | msgstr "" | |
22654 | ||
22655 | #. type: table | |
22656 | #: doc/guix.texi:10442 | |
22657 | msgid "" | |
22658 | "When it is an integer, this is the number of worker threads used for " | |
22659 | "caching; when @code{#f}, the number of processors is used. @xref{Invoking " | |
22660 | "guix publish, @option{--workers}}, for more information." | |
22661 | msgstr "" | |
22662 | ||
22663 | #. type: item | |
22664 | #: doc/guix.texi:10443 | |
22665 | #, no-wrap | |
22666 | msgid "@code{ttl} (default: @code{#f})" | |
22667 | msgstr "" | |
22668 | ||
22669 | #. type: table | |
22670 | #: doc/guix.texi:10447 | |
22671 | msgid "" | |
22672 | "When it is an integer, this denotes the @dfn{time-to-live} in seconds of the " | |
22673 | "published archives. @xref{Invoking guix publish, @option{--ttl}}, for more " | |
22674 | "information." | |
22675 | msgstr "" | |
22676 | ||
22677 | #. type: anchor{#1} | |
22678 | #: doc/guix.texi:10451 | |
22679 | msgid "rngd-service" | |
22680 | msgstr "" | |
22681 | ||
22682 | #. type: deffn | |
22683 | #: doc/guix.texi:10451 | |
22684 | #, no-wrap | |
22685 | msgid "{Scheme Procedure} rngd-service [#:rng-tools @var{rng-tools}] @" | |
22686 | msgstr "" | |
22687 | ||
22688 | #. type: deffn | |
22689 | #: doc/guix.texi:10456 | |
22690 | msgid "" | |
22691 | "[#:device \"/dev/hwrng\"] Return a service that runs the @command{rngd} " | |
22692 | "program from @var{rng-tools} to add @var{device} to the kernel's entropy " | |
22693 | "pool. The service will fail if @var{device} does not exist." | |
22694 | msgstr "" | |
22695 | ||
22696 | #. type: anchor{#1} | |
22697 | #: doc/guix.texi:10459 | |
22698 | msgid "pam-limits-service" | |
22699 | msgstr "" | |
22700 | ||
22701 | #. type: cindex | |
22702 | #: doc/guix.texi:10459 | |
22703 | #, no-wrap | |
22704 | msgid "session limits" | |
22705 | msgstr "" | |
22706 | ||
22707 | #. type: cindex | |
22708 | #: doc/guix.texi:10460 | |
22709 | #, no-wrap | |
22710 | msgid "ulimit" | |
22711 | msgstr "" | |
22712 | ||
22713 | #. type: cindex | |
22714 | #: doc/guix.texi:10461 | |
22715 | #, no-wrap | |
22716 | msgid "priority" | |
22717 | msgstr "" | |
22718 | ||
22719 | #. type: cindex | |
22720 | #: doc/guix.texi:10462 | |
22721 | #, no-wrap | |
22722 | msgid "realtime" | |
22723 | msgstr "" | |
22724 | ||
22725 | #. type: cindex | |
22726 | #: doc/guix.texi:10463 | |
22727 | #, no-wrap | |
22728 | msgid "jackd" | |
22729 | msgstr "" | |
22730 | ||
22731 | #. type: deffn | |
22732 | #: doc/guix.texi:10464 | |
22733 | #, no-wrap | |
22734 | msgid "{Scheme Procedure} pam-limits-service [#:limits @code{'()}]" | |
22735 | msgstr "" | |
22736 | ||
22737 | #. type: deffn | |
22738 | #: doc/guix.texi:10471 | |
22739 | msgid "" | |
39764ef8 JL |
22740 | "Return a service that installs a configuration file for the @uref{http://" |
22741 | "linux-pam.org/Linux-PAM-html/sag-pam_limits.html, @code{pam_limits} " | |
22742 | "module}. The procedure optionally takes a list of @code{pam-limits-entry} " | |
22743 | "values, which can be used to specify @code{ulimit} limits and nice priority " | |
22744 | "limits to user sessions." | |
b9fe8fd6 JL |
22745 | msgstr "" |
22746 | ||
22747 | #. type: deffn | |
22748 | #: doc/guix.texi:10474 | |
22749 | msgid "" | |
22750 | "The following limits definition sets two hard and soft limits for all login " | |
22751 | "sessions of users in the @code{realtime} group:" | |
22752 | msgstr "" | |
22753 | ||
22754 | #. type: example | |
22755 | #: doc/guix.texi:10480 | |
22756 | #, no-wrap | |
22757 | msgid "" | |
22758 | "(pam-limits-service\n" | |
22759 | " (list\n" | |
22760 | " (pam-limits-entry \"@@realtime\" 'both 'rtprio 99)\n" | |
22761 | " (pam-limits-entry \"@@realtime\" 'both 'memlock 'unlimited)))\n" | |
22762 | msgstr "" | |
22763 | ||
22764 | #. type: deffn | |
22765 | #: doc/guix.texi:10486 | |
22766 | msgid "" | |
22767 | "The first entry increases the maximum realtime priority for non-privileged " | |
22768 | "processes; the second entry lifts any restriction of the maximum address " | |
22769 | "space that can be locked in memory. These settings are commonly used for " | |
22770 | "real-time audio systems." | |
22771 | msgstr "" | |
22772 | ||
22773 | #. type: cindex | |
22774 | #: doc/guix.texi:10491 | |
22775 | #, no-wrap | |
22776 | msgid "cron" | |
22777 | msgstr "" | |
22778 | ||
22779 | #. type: cindex | |
22780 | #: doc/guix.texi:10492 | |
22781 | #, no-wrap | |
22782 | msgid "mcron" | |
22783 | msgstr "" | |
22784 | ||
22785 | #. type: cindex | |
22786 | #: doc/guix.texi:10493 | |
22787 | #, no-wrap | |
22788 | msgid "scheduling jobs" | |
22789 | msgstr "" | |
22790 | ||
22791 | #. type: Plain text | |
22792 | #: doc/guix.texi:10500 | |
22793 | msgid "" | |
39764ef8 JL |
22794 | "The @code{(gnu services mcron)} module provides an interface to GNU@tie{}" |
22795 | "mcron, a daemon to run jobs at scheduled times (@pxref{Top,,, mcron, " | |
22796 | "GNU@tie{}mcron}). GNU@tie{}mcron is similar to the traditional Unix " | |
b9fe8fd6 JL |
22797 | "@command{cron} daemon; the main difference is that it is implemented in " |
22798 | "Guile Scheme, which provides a lot of flexibility when specifying the " | |
22799 | "scheduling of jobs and their actions." | |
22800 | msgstr "" | |
22801 | ||
22802 | #. type: Plain text | |
22803 | #: doc/guix.texi:10508 | |
22804 | msgid "" | |
22805 | "The example below defines an operating system that runs the " | |
22806 | "@command{updatedb} (@pxref{Invoking updatedb,,, find, Finding Files}) and " | |
22807 | "the @command{guix gc} commands (@pxref{Invoking guix gc}) daily, as well as " | |
22808 | "the @command{mkid} command on behalf of an unprivileged user (@pxref{mkid " | |
22809 | "invocation,,, idutils, ID Database Utilities}). It uses gexps to introduce " | |
22810 | "job definitions that are passed to mcron (@pxref{G-Expressions})." | |
22811 | msgstr "" | |
22812 | ||
22813 | #. type: lisp | |
22814 | #: doc/guix.texi:10512 | |
22815 | #, no-wrap | |
22816 | msgid "" | |
22817 | "(use-modules (guix) (gnu) (gnu services mcron))\n" | |
22818 | "(use-package-modules base idutils)\n" | |
22819 | "\n" | |
22820 | msgstr "" | |
22821 | ||
22822 | #. type: lisp | |
22823 | #: doc/guix.texi:10521 | |
22824 | #, no-wrap | |
22825 | msgid "" | |
22826 | "(define updatedb-job\n" | |
22827 | " ;; Run 'updatedb' at 3AM every day. Here we write the\n" | |
22828 | " ;; job's action as a Scheme procedure.\n" | |
22829 | " #~(job '(next-hour '(3))\n" | |
22830 | " (lambda ()\n" | |
22831 | " (execl (string-append #$findutils \"/bin/updatedb\")\n" | |
22832 | " \"updatedb\"\n" | |
22833 | " \"--prunepaths=/tmp /var/tmp /gnu/store\"))))\n" | |
22834 | "\n" | |
22835 | msgstr "" | |
22836 | ||
22837 | #. type: lisp | |
22838 | #: doc/guix.texi:10527 | |
22839 | #, no-wrap | |
22840 | msgid "" | |
22841 | "(define garbage-collector-job\n" | |
22842 | " ;; Collect garbage 5 minutes after midnight every day.\n" | |
22843 | " ;; The job's action is a shell command.\n" | |
22844 | " #~(job \"5 0 * * *\" ;Vixie cron syntax\n" | |
22845 | " \"guix gc -F 1G\"))\n" | |
22846 | "\n" | |
22847 | msgstr "" | |
22848 | ||
22849 | #. type: lisp | |
22850 | #: doc/guix.texi:10534 | |
22851 | #, no-wrap | |
22852 | msgid "" | |
22853 | "(define idutils-job\n" | |
22854 | " ;; Update the index database as user \"charlie\" at 12:15PM\n" | |
22855 | " ;; and 19:15PM. This runs from the user's home directory.\n" | |
22856 | " #~(job '(next-minute-from (next-hour '(12 19)) '(15))\n" | |
22857 | " (string-append #$idutils \"/bin/mkid src\")\n" | |
22858 | " #:user \"charlie\"))\n" | |
22859 | "\n" | |
22860 | msgstr "" | |
22861 | ||
22862 | #. type: lisp | |
22863 | #: doc/guix.texi:10541 | |
22864 | #, no-wrap | |
22865 | msgid "" | |
22866 | "(operating-system\n" | |
22867 | " ;; @dots{}\n" | |
22868 | " (services (cons (mcron-service (list garbage-collector-job\n" | |
22869 | " updatedb-job\n" | |
22870 | " idutils-job))\n" | |
22871 | " %base-services)))\n" | |
22872 | msgstr "" | |
22873 | ||
22874 | #. type: Plain text | |
22875 | #: doc/guix.texi:10546 | |
22876 | msgid "" | |
22877 | "@xref{Guile Syntax, mcron job specifications,, mcron, GNU@tie{}mcron}, for " | |
22878 | "more information on mcron job specifications. Below is the reference of the " | |
22879 | "mcron service." | |
22880 | msgstr "" | |
22881 | ||
22882 | #. type: deffn | |
22883 | #: doc/guix.texi:10547 | |
22884 | #, no-wrap | |
22885 | msgid "{Scheme Procedure} mcron-service @var{jobs} [#:mcron @var{mcron}]" | |
22886 | msgstr "" | |
22887 | ||
22888 | #. type: deffn | |
22889 | #: doc/guix.texi:10550 | |
22890 | msgid "" | |
22891 | "Return an mcron service running @var{mcron} that schedules @var{jobs}, a " | |
22892 | "list of gexps denoting mcron job specifications." | |
22893 | msgstr "" | |
22894 | ||
22895 | #. type: deffn | |
22896 | #: doc/guix.texi:10552 | |
22897 | msgid "This is a shorthand for:" | |
22898 | msgstr "" | |
22899 | ||
22900 | #. type: example | |
22901 | #: doc/guix.texi:10555 | |
22902 | #, no-wrap | |
22903 | msgid "" | |
22904 | "(service mcron-service-type\n" | |
22905 | " (mcron-configuration (mcron mcron) (jobs jobs)))\n" | |
22906 | msgstr "" | |
22907 | ||
22908 | #. type: defvr | |
22909 | #: doc/guix.texi:10558 | |
22910 | #, no-wrap | |
22911 | msgid "{Scheme Variable} mcron-service-type" | |
22912 | msgstr "" | |
22913 | ||
22914 | #. type: defvr | |
22915 | #: doc/guix.texi:10561 | |
22916 | msgid "" | |
39764ef8 JL |
22917 | "This is the type of the @code{mcron} service, whose value is an @code{mcron-" |
22918 | "configuration} object." | |
b9fe8fd6 JL |
22919 | msgstr "" |
22920 | ||
22921 | #. type: defvr | |
22922 | #: doc/guix.texi:10566 | |
22923 | msgid "" | |
22924 | "This service type can be the target of a service extension that provides it " | |
22925 | "additional job specifications (@pxref{Service Composition}). In other " | |
22926 | "words, it is possible to define services that provide additional mcron jobs " | |
22927 | "to run." | |
22928 | msgstr "" | |
22929 | ||
22930 | #. type: deftp | |
22931 | #: doc/guix.texi:10568 | |
22932 | #, no-wrap | |
22933 | msgid "{Data Type} mcron-configuration" | |
22934 | msgstr "" | |
22935 | ||
22936 | #. type: deftp | |
22937 | #: doc/guix.texi:10570 | |
22938 | msgid "Data type representing the configuration of mcron." | |
22939 | msgstr "" | |
22940 | ||
22941 | #. type: item | |
22942 | #: doc/guix.texi:10572 | |
22943 | #, no-wrap | |
22944 | msgid "@code{mcron} (default: @var{mcron})" | |
22945 | msgstr "" | |
22946 | ||
22947 | #. type: table | |
22948 | #: doc/guix.texi:10574 | |
22949 | msgid "The mcron package to use." | |
22950 | msgstr "" | |
22951 | ||
22952 | #. type: code{#1} | |
22953 | #: doc/guix.texi:10575 doc/guix.texi:10634 | |
22954 | #, no-wrap | |
22955 | msgid "jobs" | |
22956 | msgstr "" | |
22957 | ||
22958 | #. type: table | |
22959 | #: doc/guix.texi:10579 | |
22960 | msgid "" | |
22961 | "This is a list of gexps (@pxref{G-Expressions}), where each gexp corresponds " | |
22962 | "to an mcron job specification (@pxref{Syntax, mcron job specifications,, " | |
22963 | "mcron, GNU@tie{}mcron})." | |
22964 | msgstr "" | |
22965 | ||
22966 | #. type: cindex | |
22967 | #: doc/guix.texi:10586 | |
22968 | #, no-wrap | |
22969 | msgid "rottlog" | |
22970 | msgstr "" | |
22971 | ||
22972 | #. type: cindex | |
22973 | #: doc/guix.texi:10587 | |
22974 | #, no-wrap | |
22975 | msgid "log rotation" | |
22976 | msgstr "" | |
22977 | ||
22978 | #. type: Plain text | |
22979 | #: doc/guix.texi:10594 | |
22980 | msgid "" | |
22981 | "Log files such as those found in @file{/var/log} tend to grow endlessly, so " | |
22982 | "it's a good idea to @dfn{rotate} them once in a while---i.e., archive their " | |
22983 | "contents in separate files, possibly compressed. The @code{(gnu services " | |
22984 | "admin)} module provides an interface to GNU@tie{}Rot[t]log, a log rotation " | |
22985 | "tool (@pxref{Top,,, rottlog, GNU Rot[t]log Manual})." | |
22986 | msgstr "" | |
22987 | ||
22988 | #. type: Plain text | |
22989 | #: doc/guix.texi:10597 | |
22990 | msgid "" | |
22991 | "The example below defines an operating system that provides log rotation " | |
22992 | "with the default settings, for commonly encountered log files." | |
22993 | msgstr "" | |
22994 | ||
22995 | #. type: lisp | |
22996 | #: doc/guix.texi:10602 | |
22997 | #, no-wrap | |
22998 | msgid "" | |
22999 | "(use-modules (guix) (gnu))\n" | |
23000 | "(use-service-modules admin mcron)\n" | |
23001 | "(use-package-modules base idutils)\n" | |
23002 | "\n" | |
23003 | msgstr "" | |
23004 | ||
23005 | #. type: lisp | |
23006 | #: doc/guix.texi:10607 | |
23007 | #, no-wrap | |
23008 | msgid "" | |
23009 | "(operating-system\n" | |
23010 | " ;; @dots{}\n" | |
23011 | " (services (cons (service rottlog-service-type)\n" | |
23012 | " %base-services)))\n" | |
23013 | msgstr "" | |
23014 | ||
23015 | #. type: defvr | |
23016 | #: doc/guix.texi:10609 | |
23017 | #, no-wrap | |
23018 | msgid "{Scheme Variable} rottlog-service-type" | |
23019 | msgstr "" | |
23020 | ||
23021 | #. type: defvr | |
23022 | #: doc/guix.texi:10612 | |
23023 | msgid "" | |
39764ef8 JL |
23024 | "This is the type of the Rottlog service, whose value is a @code{rottlog-" |
23025 | "configuration} object." | |
b9fe8fd6 JL |
23026 | msgstr "" |
23027 | ||
23028 | #. type: defvr | |
23029 | #: doc/guix.texi:10615 | |
23030 | msgid "" | |
23031 | "Other services can extend this one with new @code{log-rotation} objects (see " | |
23032 | "below), thereby augmenting the set of files to be rotated." | |
23033 | msgstr "" | |
23034 | ||
23035 | #. type: defvr | |
23036 | #: doc/guix.texi:10618 | |
23037 | msgid "" | |
23038 | "This service type can define mcron jobs (@pxref{Scheduled Job Execution}) to " | |
23039 | "run the rottlog service." | |
23040 | msgstr "" | |
23041 | ||
23042 | #. type: deftp | |
23043 | #: doc/guix.texi:10620 | |
23044 | #, no-wrap | |
23045 | msgid "{Data Type} rottlog-configuration" | |
23046 | msgstr "" | |
23047 | ||
23048 | #. type: deftp | |
23049 | #: doc/guix.texi:10622 | |
23050 | msgid "Data type representing the configuration of rottlog." | |
23051 | msgstr "" | |
23052 | ||
23053 | #. type: item | |
23054 | #: doc/guix.texi:10624 | |
23055 | #, no-wrap | |
23056 | msgid "@code{rottlog} (default: @code{rottlog})" | |
23057 | msgstr "" | |
23058 | ||
23059 | #. type: table | |
23060 | #: doc/guix.texi:10626 | |
23061 | msgid "The Rottlog package to use." | |
23062 | msgstr "" | |
23063 | ||
23064 | #. type: item | |
23065 | #: doc/guix.texi:10627 | |
23066 | #, no-wrap | |
23067 | msgid "@code{rc-file} (default: @code{(file-append rottlog \"/etc/rc\")})" | |
23068 | msgstr "" | |
23069 | ||
23070 | #. type: table | |
23071 | #: doc/guix.texi:10630 | |
23072 | msgid "" | |
23073 | "The Rottlog configuration file to use (@pxref{Mandatory RC Variables,,, " | |
23074 | "rottlog, GNU Rot[t]log Manual})." | |
23075 | msgstr "" | |
23076 | ||
23077 | #. type: item | |
23078 | #: doc/guix.texi:10631 | |
23079 | #, no-wrap | |
23080 | msgid "@code{rotations} (default: @code{%default-rotations})" | |
23081 | msgstr "" | |
23082 | ||
23083 | #. type: table | |
23084 | #: doc/guix.texi:10633 | |
23085 | msgid "A list of @code{log-rotation} objects as defined below." | |
23086 | msgstr "" | |
23087 | ||
23088 | #. type: table | |
23089 | #: doc/guix.texi:10637 | |
23090 | msgid "" | |
23091 | "This is a list of gexps where each gexp corresponds to an mcron job " | |
23092 | "specification (@pxref{Scheduled Job Execution})." | |
23093 | msgstr "" | |
23094 | ||
23095 | #. type: deftp | |
23096 | #: doc/guix.texi:10640 | |
23097 | #, no-wrap | |
23098 | msgid "{Data Type} log-rotation" | |
23099 | msgstr "" | |
23100 | ||
23101 | #. type: deftp | |
23102 | #: doc/guix.texi:10642 | |
23103 | msgid "Data type representing the rotation of a group of log files." | |
23104 | msgstr "" | |
23105 | ||
23106 | #. type: deftp | |
23107 | #: doc/guix.texi:10646 | |
23108 | msgid "" | |
23109 | "Taking an example from the Rottlog manual (@pxref{Period Related File " | |
23110 | "Examples,,, rottlog, GNU Rot[t]log Manual}), a log rotation might be defined " | |
23111 | "like this:" | |
23112 | msgstr "" | |
23113 | ||
23114 | #. type: example | |
23115 | #: doc/guix.texi:10655 | |
23116 | #, no-wrap | |
23117 | msgid "" | |
23118 | "(log-rotation\n" | |
23119 | " (frequency 'daily)\n" | |
23120 | " (files '(\"/var/log/apache/*\"))\n" | |
23121 | " (options '(\"storedir apache-archives\"\n" | |
23122 | " \"rotate 6\"\n" | |
23123 | " \"notifempty\"\n" | |
23124 | " \"nocompress\")))\n" | |
23125 | msgstr "" | |
23126 | ||
23127 | #. type: deftp | |
23128 | #: doc/guix.texi:10658 | |
23129 | msgid "The list of fields is as follows:" | |
23130 | msgstr "" | |
23131 | ||
23132 | #. type: item | |
23133 | #: doc/guix.texi:10660 | |
23134 | #, no-wrap | |
23135 | msgid "@code{frequency} (default: @code{'weekly})" | |
23136 | msgstr "" | |
23137 | ||
23138 | #. type: table | |
23139 | #: doc/guix.texi:10662 | |
23140 | msgid "The log rotation frequency, a symbol." | |
23141 | msgstr "" | |
23142 | ||
23143 | #. type: code{#1} | |
23144 | #: doc/guix.texi:10663 | |
23145 | #, no-wrap | |
23146 | msgid "files" | |
23147 | msgstr "" | |
23148 | ||
23149 | #. type: table | |
23150 | #: doc/guix.texi:10665 | |
23151 | msgid "The list of files or file glob patterns to rotate." | |
23152 | msgstr "" | |
23153 | ||
23154 | #. type: item | |
23155 | #: doc/guix.texi:10666 | |
23156 | #, no-wrap | |
23157 | msgid "@code{options} (default: @code{'()})" | |
23158 | msgstr "" | |
23159 | ||
23160 | #. type: table | |
23161 | #: doc/guix.texi:10669 | |
23162 | msgid "" | |
23163 | "The list of rottlog options for this rotation (@pxref{Configuration " | |
23164 | "parameters,,, rottlog, GNU Rot[t]lg Manual})." | |
23165 | msgstr "" | |
23166 | ||
23167 | #. type: item | |
23168 | #: doc/guix.texi:10670 | |
23169 | #, no-wrap | |
23170 | msgid "@code{post-rotate} (default: @code{#f})" | |
23171 | msgstr "" | |
23172 | ||
23173 | #. type: table | |
23174 | #: doc/guix.texi:10672 | |
23175 | msgid "Either @code{#f} or a gexp to execute once the rotation has completed." | |
23176 | msgstr "" | |
23177 | ||
23178 | #. type: defvr | |
23179 | #: doc/guix.texi:10675 | |
23180 | #, no-wrap | |
23181 | msgid "{Scheme Variable} %default-rotations" | |
23182 | msgstr "" | |
23183 | ||
23184 | #. type: defvr | |
23185 | #: doc/guix.texi:10678 | |
23186 | msgid "" | |
23187 | "Specifies weekly rotation of @var{%rotated-files} and a couple of other " | |
23188 | "files." | |
23189 | msgstr "" | |
23190 | ||
23191 | #. type: defvr | |
23192 | #: doc/guix.texi:10680 | |
23193 | #, no-wrap | |
23194 | msgid "{Scheme Variable} %rotated-files" | |
23195 | msgstr "" | |
23196 | ||
23197 | #. type: defvr | |
23198 | #: doc/guix.texi:10683 | |
23199 | msgid "" | |
23200 | "The list of syslog-controlled files to be rotated. By default it is: " | |
23201 | "@code{'(\"/var/log/messages\" \"/var/log/secure\")}." | |
23202 | msgstr "" | |
23203 | ||
23204 | #. type: Plain text | |
23205 | #: doc/guix.texi:10690 | |
23206 | msgid "" | |
23207 | "The @code{(gnu services networking)} module provides services to configure " | |
23208 | "the network interface." | |
23209 | msgstr "" | |
23210 | ||
23211 | #. type: cindex | |
23212 | #: doc/guix.texi:10691 | |
23213 | #, no-wrap | |
23214 | msgid "DHCP, networking service" | |
23215 | msgstr "" | |
23216 | ||
23217 | #. type: deffn | |
23218 | #: doc/guix.texi:10692 | |
23219 | #, no-wrap | |
23220 | msgid "{Scheme Procedure} dhcp-client-service [#:dhcp @var{isc-dhcp}]" | |
23221 | msgstr "" | |
23222 | ||
23223 | #. type: deffn | |
23224 | #: doc/guix.texi:10695 | |
23225 | msgid "" | |
23226 | "Return a service that runs @var{dhcp}, a Dynamic Host Configuration Protocol " | |
23227 | "(DHCP) client, on all the non-loopback network interfaces." | |
23228 | msgstr "" | |
23229 | ||
39764ef8 | 23230 | #. type: deffn |
b9fe8fd6 JL |
23231 | #: doc/guix.texi:10697 |
23232 | #, no-wrap | |
39764ef8 JL |
23233 | msgid "{Scheme Procedure} dhcpd-service-type" |
23234 | msgstr "" | |
23235 | ||
23236 | #. type: deffn | |
23237 | #: doc/guix.texi:10701 | |
23238 | msgid "" | |
23239 | "This type defines a service that runs a DHCP daemon. To create a service of " | |
23240 | "this type, you must supply a @code{<dhcpd-configuration>}. For example:" | |
23241 | msgstr "" | |
23242 | ||
23243 | #. type: example | |
23244 | #: doc/guix.texi:10707 | |
23245 | #, no-wrap | |
23246 | msgid "" | |
23247 | "(service dhcpd-service-type\n" | |
23248 | " (dhcpd-configuration\n" | |
23249 | " (config-file (local-file \"my-dhcpd.conf\"))\n" | |
23250 | " (interfaces '(\"enp0s25\"))))\n" | |
23251 | msgstr "" | |
23252 | ||
23253 | #. type: deftp | |
23254 | #: doc/guix.texi:10710 | |
23255 | #, no-wrap | |
23256 | msgid "{Data Type} dhcpd-configuration" | |
23257 | msgstr "" | |
23258 | ||
23259 | #. type: item | |
23260 | #: doc/guix.texi:10712 | |
23261 | #, no-wrap | |
23262 | msgid "@code{package} (default: @code{isc-dhcp})" | |
23263 | msgstr "" | |
23264 | ||
23265 | #. type: table | |
23266 | #: doc/guix.texi:10717 | |
23267 | msgid "" | |
23268 | "The package that provides the DHCP daemon. This package is expected to " | |
23269 | "provide the daemon at @file{sbin/dhcpd} relative to its output directory. " | |
23270 | "The default package is the @uref{http://www.isc.org/products/DHCP, ISC's " | |
23271 | "DHCP server}." | |
23272 | msgstr "" | |
23273 | ||
23274 | #. type: item | |
23275 | #: doc/guix.texi:10717 doc/guix.texi:14345 | |
23276 | #, no-wrap | |
23277 | msgid "@code{config-file} (default: @code{#f})" | |
23278 | msgstr "" | |
23279 | ||
23280 | #. type: table | |
23281 | #: doc/guix.texi:10722 | |
23282 | msgid "" | |
23283 | "The configuration file to use. This is required. It will be passed to " | |
23284 | "@code{dhcpd} via its @code{-cf} option. This may be any ``file-like'' " | |
23285 | "object (@pxref{G-Expressions, file-like objects}). See @code{man dhcpd." | |
23286 | "conf} for details on the configuration file syntax." | |
23287 | msgstr "" | |
23288 | ||
23289 | #. type: item | |
23290 | #: doc/guix.texi:10722 | |
23291 | #, no-wrap | |
23292 | msgid "@code{version} (default: @code{\"4\"})" | |
23293 | msgstr "" | |
23294 | ||
23295 | #. type: table | |
23296 | #: doc/guix.texi:10727 | |
23297 | msgid "" | |
23298 | "The DHCP version to use. The ISC DHCP server supports the values ``4'', " | |
23299 | "``6'', and ``4o6''. These correspond to the @code{dhcpd} program options " | |
23300 | "@code{-4}, @code{-6}, and @code{-4o6}. See @code{man dhcpd} for details." | |
23301 | msgstr "" | |
23302 | ||
23303 | #. type: item | |
23304 | #: doc/guix.texi:10727 | |
23305 | #, no-wrap | |
23306 | msgid "@code{run-directory} (default: @code{\"/run/dhcpd\"})" | |
23307 | msgstr "" | |
23308 | ||
23309 | #. type: table | |
23310 | #: doc/guix.texi:10730 | |
23311 | msgid "" | |
23312 | "The run directory to use. At service activation time, this directory will " | |
23313 | "be created if it does not exist." | |
23314 | msgstr "" | |
23315 | ||
23316 | #. type: item | |
23317 | #: doc/guix.texi:10730 | |
23318 | #, no-wrap | |
23319 | msgid "@code{pid-file} (default: @code{\"/run/dhcpd/dhcpd.pid\"})" | |
23320 | msgstr "" | |
23321 | ||
23322 | #. type: table | |
23323 | #: doc/guix.texi:10733 | |
23324 | msgid "" | |
23325 | "The PID file to use. This corresponds to the @code{-pf} option of " | |
23326 | "@code{dhcpd}. See @code{man dhcpd} for details." | |
23327 | msgstr "" | |
23328 | ||
23329 | #. type: item | |
23330 | #: doc/guix.texi:10733 | |
23331 | #, no-wrap | |
23332 | msgid "@code{interfaces} (default: @code{'()})" | |
23333 | msgstr "" | |
23334 | ||
23335 | #. type: table | |
23336 | #: doc/guix.texi:10739 | |
23337 | msgid "" | |
23338 | "The names of the network interfaces on which dhcpd should listen for " | |
23339 | "broadcasts. If this list is not empty, then its elements (which must be " | |
23340 | "strings) will be appended to the @code{dhcpd} invocation when starting the " | |
23341 | "daemon. It may not be necessary to explicitly specify any interfaces here; " | |
23342 | "see @code{man dhcpd} for details." | |
23343 | msgstr "" | |
23344 | ||
23345 | #. type: defvr | |
23346 | #: doc/guix.texi:10742 | |
23347 | #, no-wrap | |
b9fe8fd6 JL |
23348 | msgid "{Scheme Variable} static-networking-service-type" |
23349 | msgstr "" | |
23350 | ||
23351 | #. type: defvr | |
39764ef8 | 23352 | #: doc/guix.texi:10745 |
b9fe8fd6 JL |
23353 | msgid "This is the type for statically-configured network interfaces." |
23354 | msgstr "" | |
23355 | ||
23356 | #. type: deffn | |
39764ef8 | 23357 | #: doc/guix.texi:10747 |
b9fe8fd6 JL |
23358 | #, no-wrap |
23359 | msgid "{Scheme Procedure} static-networking-service @var{interface} @var{ip} @" | |
23360 | msgstr "" | |
23361 | ||
23362 | #. type: deffn | |
39764ef8 | 23363 | #: doc/guix.texi:10755 |
b9fe8fd6 JL |
23364 | msgid "" |
23365 | "[#:netmask #f] [#:gateway #f] [#:name-servers @code{'()}] [#:requirement " | |
23366 | "@code{'(udev)}] Return a service that starts @var{interface} with address " | |
23367 | "@var{ip}. If @var{netmask} is true, use it as the network mask. If " | |
23368 | "@var{gateway} is true, it must be a string specifying the default network " | |
23369 | "gateway. @var{requirement} can be used to declare a dependency on another " | |
23370 | "service before configuring the interface." | |
23371 | msgstr "" | |
23372 | ||
23373 | #. type: deffn | |
39764ef8 | 23374 | #: doc/guix.texi:10760 |
b9fe8fd6 JL |
23375 | msgid "" |
23376 | "This procedure can be called several times, one for each network interface " | |
39764ef8 JL |
23377 | "of interest. Behind the scenes what it does is extend @code{static-" |
23378 | "networking-service-type} with additional network interfaces to handle." | |
b9fe8fd6 JL |
23379 | msgstr "" |
23380 | ||
23381 | #. type: cindex | |
39764ef8 | 23382 | #: doc/guix.texi:10762 |
b9fe8fd6 JL |
23383 | #, no-wrap |
23384 | msgid "wicd" | |
23385 | msgstr "" | |
23386 | ||
23387 | #. type: cindex | |
39764ef8 | 23388 | #: doc/guix.texi:10765 |
b9fe8fd6 JL |
23389 | #, no-wrap |
23390 | msgid "network management" | |
23391 | msgstr "" | |
23392 | ||
23393 | #. type: deffn | |
39764ef8 | 23394 | #: doc/guix.texi:10766 |
b9fe8fd6 JL |
23395 | #, no-wrap |
23396 | msgid "{Scheme Procedure} wicd-service [#:wicd @var{wicd}]" | |
23397 | msgstr "" | |
23398 | ||
23399 | #. type: deffn | |
39764ef8 | 23400 | #: doc/guix.texi:10769 |
b9fe8fd6 JL |
23401 | msgid "" |
23402 | "Return a service that runs @url{https://launchpad.net/wicd,Wicd}, a network " | |
23403 | "management daemon that aims to simplify wired and wireless networking." | |
23404 | msgstr "" | |
23405 | ||
23406 | #. type: deffn | |
39764ef8 | 23407 | #: doc/guix.texi:10774 |
b9fe8fd6 JL |
23408 | msgid "" |
23409 | "This service adds the @var{wicd} package to the global profile, providing " | |
23410 | "several commands to interact with the daemon and configure networking: " | |
39764ef8 JL |
23411 | "@command{wicd-client}, a graphical user interface, and the @command{wicd-" |
23412 | "cli} and @command{wicd-curses} user interfaces." | |
b9fe8fd6 JL |
23413 | msgstr "" |
23414 | ||
23415 | #. type: cindex | |
39764ef8 | 23416 | #: doc/guix.texi:10776 |
b9fe8fd6 JL |
23417 | #, no-wrap |
23418 | msgid "NetworkManager" | |
23419 | msgstr "" | |
23420 | ||
23421 | #. type: defvr | |
39764ef8 | 23422 | #: doc/guix.texi:10778 |
b9fe8fd6 JL |
23423 | #, no-wrap |
23424 | msgid "{Scheme Variable} network-manager-service-type" | |
23425 | msgstr "" | |
23426 | ||
23427 | #. type: defvr | |
39764ef8 | 23428 | #: doc/guix.texi:10783 |
b9fe8fd6 | 23429 | msgid "" |
39764ef8 JL |
23430 | "This is the service type for the @uref{https://wiki.gnome.org/Projects/" |
23431 | "NetworkManager, NetworkManager} service. The value for this service type is " | |
23432 | "a @code{network-manager-configuration} record." | |
b9fe8fd6 JL |
23433 | msgstr "" |
23434 | ||
23435 | #. type: defvr | |
39764ef8 JL |
23436 | #: doc/guix.texi:10786 |
23437 | msgid "" | |
23438 | "This service is part of @code{%desktop-services} (@pxref{Desktop Services})." | |
b9fe8fd6 JL |
23439 | msgstr "" |
23440 | ||
23441 | #. type: deftp | |
39764ef8 | 23442 | #: doc/guix.texi:10788 |
b9fe8fd6 JL |
23443 | #, no-wrap |
23444 | msgid "{Data Type} network-manager-configuration" | |
23445 | msgstr "" | |
23446 | ||
23447 | #. type: deftp | |
39764ef8 | 23448 | #: doc/guix.texi:10790 |
b9fe8fd6 JL |
23449 | msgid "Data type representing the configuration of NetworkManager." |
23450 | msgstr "" | |
23451 | ||
23452 | #. type: item | |
39764ef8 | 23453 | #: doc/guix.texi:10792 |
b9fe8fd6 JL |
23454 | #, no-wrap |
23455 | msgid "@code{network-manager} (default: @code{network-manager})" | |
23456 | msgstr "" | |
23457 | ||
23458 | #. type: table | |
39764ef8 | 23459 | #: doc/guix.texi:10794 |
b9fe8fd6 JL |
23460 | msgid "The NetworkManager package to use." |
23461 | msgstr "" | |
23462 | ||
23463 | #. type: item | |
39764ef8 | 23464 | #: doc/guix.texi:10795 |
b9fe8fd6 JL |
23465 | #, no-wrap |
23466 | msgid "@code{dns} (default: @code{\"default\"})" | |
23467 | msgstr "" | |
23468 | ||
23469 | #. type: table | |
39764ef8 | 23470 | #: doc/guix.texi:10798 |
b9fe8fd6 JL |
23471 | msgid "" |
23472 | "Processing mode for DNS, which affects how NetworkManager uses the " | |
23473 | "@code{resolv.conf} configuration file." | |
23474 | msgstr "" | |
23475 | ||
23476 | #. type: item | |
39764ef8 | 23477 | #: doc/guix.texi:10800 |
b9fe8fd6 JL |
23478 | #, no-wrap |
23479 | msgid "default" | |
23480 | msgstr "" | |
23481 | ||
23482 | #. type: table | |
39764ef8 | 23483 | #: doc/guix.texi:10803 |
b9fe8fd6 JL |
23484 | msgid "" |
23485 | "NetworkManager will update @code{resolv.conf} to reflect the nameservers " | |
23486 | "provided by currently active connections." | |
23487 | msgstr "" | |
23488 | ||
23489 | #. type: item | |
39764ef8 | 23490 | #: doc/guix.texi:10804 |
b9fe8fd6 JL |
23491 | #, no-wrap |
23492 | msgid "dnsmasq" | |
23493 | msgstr "" | |
23494 | ||
23495 | #. type: table | |
39764ef8 | 23496 | #: doc/guix.texi:10808 |
b9fe8fd6 JL |
23497 | msgid "" |
23498 | "NetworkManager will run @code{dnsmasq} as a local caching nameserver, using " | |
23499 | "a \"split DNS\" configuration if you are connected to a VPN, and then update " | |
23500 | "@code{resolv.conf} to point to the local nameserver." | |
23501 | msgstr "" | |
23502 | ||
23503 | #. type: item | |
39764ef8 | 23504 | #: doc/guix.texi:10809 doc/guix.texi:11795 |
b9fe8fd6 JL |
23505 | #, no-wrap |
23506 | msgid "none" | |
23507 | msgstr "" | |
23508 | ||
23509 | #. type: table | |
39764ef8 | 23510 | #: doc/guix.texi:10811 |
b9fe8fd6 JL |
23511 | msgid "NetworkManager will not modify @code{resolv.conf}." |
23512 | msgstr "" | |
23513 | ||
23514 | #. type: item | |
39764ef8 | 23515 | #: doc/guix.texi:10813 |
b9fe8fd6 JL |
23516 | #, no-wrap |
23517 | msgid "@code{vpn-plugins} (default: @code{'()})" | |
23518 | msgstr "" | |
23519 | ||
23520 | #. type: table | |
39764ef8 | 23521 | #: doc/guix.texi:10817 |
b9fe8fd6 JL |
23522 | msgid "" |
23523 | "This is the list of available plugins for virtual private networks (VPNs). " | |
23524 | "An example of this is the @code{network-manager-openvpn} package, which " | |
23525 | "allows NetworkManager to manage VPNs @i{via} OpenVPN." | |
23526 | msgstr "" | |
23527 | ||
23528 | #. type: cindex | |
39764ef8 | 23529 | #: doc/guix.texi:10821 |
b9fe8fd6 JL |
23530 | #, no-wrap |
23531 | msgid "Connman" | |
23532 | msgstr "" | |
23533 | ||
23534 | #. type: deffn | |
39764ef8 | 23535 | #: doc/guix.texi:10822 |
b9fe8fd6 JL |
23536 | #, no-wrap |
23537 | msgid "{Scheme Variable} connman-service-type" | |
23538 | msgstr "" | |
23539 | ||
23540 | #. type: deffn | |
39764ef8 | 23541 | #: doc/guix.texi:10825 |
b9fe8fd6 JL |
23542 | msgid "" |
23543 | "This is the service type to run @url{https://01.org/connman,Connman}, a " | |
23544 | "network connection manager." | |
23545 | msgstr "" | |
23546 | ||
23547 | #. type: deffn | |
39764ef8 JL |
23548 | #: doc/guix.texi:10828 |
23549 | msgid "" | |
23550 | "Its value must be an @code{connman-configuration} record as in this example:" | |
b9fe8fd6 JL |
23551 | msgstr "" |
23552 | ||
23553 | #. type: example | |
39764ef8 | 23554 | #: doc/guix.texi:10833 |
b9fe8fd6 JL |
23555 | #, no-wrap |
23556 | msgid "" | |
23557 | "(service connman-service-type\n" | |
23558 | " (connman-configuration\n" | |
23559 | " (disable-vpn? #t)))\n" | |
23560 | msgstr "" | |
23561 | ||
23562 | #. type: deffn | |
39764ef8 | 23563 | #: doc/guix.texi:10836 |
b9fe8fd6 JL |
23564 | msgid "See below for details about @code{connman-configuration}." |
23565 | msgstr "" | |
23566 | ||
23567 | #. type: deftp | |
39764ef8 | 23568 | #: doc/guix.texi:10838 |
b9fe8fd6 JL |
23569 | #, no-wrap |
23570 | msgid "{Data Type} connman-configuration" | |
23571 | msgstr "" | |
23572 | ||
23573 | #. type: deftp | |
39764ef8 | 23574 | #: doc/guix.texi:10840 |
b9fe8fd6 JL |
23575 | msgid "Data Type representing the configuration of connman." |
23576 | msgstr "" | |
23577 | ||
23578 | #. type: item | |
39764ef8 | 23579 | #: doc/guix.texi:10842 |
b9fe8fd6 JL |
23580 | #, no-wrap |
23581 | msgid "@code{connman} (default: @var{connman})" | |
23582 | msgstr "" | |
23583 | ||
23584 | #. type: table | |
39764ef8 | 23585 | #: doc/guix.texi:10844 |
b9fe8fd6 JL |
23586 | msgid "The connman package to use." |
23587 | msgstr "" | |
23588 | ||
23589 | #. type: item | |
39764ef8 | 23590 | #: doc/guix.texi:10845 |
b9fe8fd6 JL |
23591 | #, no-wrap |
23592 | msgid "@code{disable-vpn?} (default: @code{#f})" | |
23593 | msgstr "" | |
23594 | ||
23595 | #. type: table | |
39764ef8 | 23596 | #: doc/guix.texi:10847 |
b9fe8fd6 JL |
23597 | msgid "When true, enable connman's vpn plugin." |
23598 | msgstr "" | |
23599 | ||
23600 | #. type: cindex | |
39764ef8 | 23601 | #: doc/guix.texi:10850 |
b9fe8fd6 JL |
23602 | #, no-wrap |
23603 | msgid "WPA Supplicant" | |
23604 | msgstr "" | |
23605 | ||
23606 | #. type: defvr | |
39764ef8 | 23607 | #: doc/guix.texi:10851 |
b9fe8fd6 JL |
23608 | #, no-wrap |
23609 | msgid "{Scheme Variable} wpa-supplicant-service-type" | |
23610 | msgstr "" | |
23611 | ||
23612 | #. type: defvr | |
39764ef8 | 23613 | #: doc/guix.texi:10856 |
b9fe8fd6 JL |
23614 | msgid "" |
23615 | "This is the service type to run @url{https://w1.fi/wpa_supplicant/,WPA " | |
23616 | "supplicant}, an authentication daemon required to authenticate against " | |
23617 | "encrypted WiFi or ethernet networks. It is configured to listen for " | |
23618 | "requests on D-Bus." | |
23619 | msgstr "" | |
23620 | ||
23621 | #. type: defvr | |
39764ef8 | 23622 | #: doc/guix.texi:10859 |
b9fe8fd6 JL |
23623 | msgid "" |
23624 | "The value of this service is the @code{wpa-supplicant} package to use. " | |
23625 | "Thus, it can be instantiated like this:" | |
23626 | msgstr "" | |
23627 | ||
23628 | #. type: lisp | |
39764ef8 | 23629 | #: doc/guix.texi:10862 |
b9fe8fd6 JL |
23630 | #, no-wrap |
23631 | msgid "" | |
23632 | "(use-modules (gnu services networking))\n" | |
23633 | "\n" | |
23634 | msgstr "" | |
23635 | ||
23636 | #. type: lisp | |
39764ef8 | 23637 | #: doc/guix.texi:10864 |
b9fe8fd6 JL |
23638 | #, no-wrap |
23639 | msgid "(service wpa-supplicant-service-type)\n" | |
23640 | msgstr "" | |
23641 | ||
23642 | #. type: cindex | |
39764ef8 | 23643 | #: doc/guix.texi:10867 |
b9fe8fd6 JL |
23644 | #, no-wrap |
23645 | msgid "NTP" | |
23646 | msgstr "" | |
23647 | ||
23648 | #. type: cindex | |
39764ef8 | 23649 | #: doc/guix.texi:10868 |
b9fe8fd6 JL |
23650 | #, no-wrap |
23651 | msgid "real time clock" | |
23652 | msgstr "" | |
23653 | ||
23654 | #. type: deffn | |
39764ef8 | 23655 | #: doc/guix.texi:10869 |
b9fe8fd6 JL |
23656 | #, no-wrap |
23657 | msgid "{Scheme Procedure} ntp-service [#:ntp @var{ntp}] @" | |
23658 | msgstr "" | |
23659 | ||
23660 | #. type: deffn | |
39764ef8 | 23661 | #: doc/guix.texi:10877 |
b9fe8fd6 JL |
23662 | msgid "" |
23663 | "[#:servers @var{%ntp-servers}] @ [#:allow-large-adjustment? #f] Return a " | |
23664 | "service that runs the daemon from @var{ntp}, the @uref{http://www.ntp.org, " | |
23665 | "Network Time Protocol package}. The daemon will keep the system clock " | |
23666 | "synchronized with that of @var{servers}. @var{allow-large-adjustment?} " | |
23667 | "determines whether @command{ntpd} is allowed to make an initial adjustment " | |
23668 | "of more than 1,000 seconds." | |
23669 | msgstr "" | |
23670 | ||
23671 | #. type: defvr | |
39764ef8 | 23672 | #: doc/guix.texi:10879 |
b9fe8fd6 JL |
23673 | #, no-wrap |
23674 | msgid "{Scheme Variable} %ntp-servers" | |
23675 | msgstr "" | |
23676 | ||
23677 | #. type: defvr | |
39764ef8 | 23678 | #: doc/guix.texi:10881 |
b9fe8fd6 JL |
23679 | msgid "List of host names used as the default NTP servers." |
23680 | msgstr "" | |
23681 | ||
23682 | #. type: cindex | |
39764ef8 | 23683 | #: doc/guix.texi:10883 |
b9fe8fd6 JL |
23684 | #, no-wrap |
23685 | msgid "OpenNTPD" | |
23686 | msgstr "" | |
23687 | ||
23688 | #. type: deffn | |
39764ef8 | 23689 | #: doc/guix.texi:10884 |
b9fe8fd6 JL |
23690 | #, no-wrap |
23691 | msgid "{Scheme Procedure} openntpd-service-type" | |
23692 | msgstr "" | |
23693 | ||
23694 | #. type: deffn | |
39764ef8 | 23695 | #: doc/guix.texi:10888 |
b9fe8fd6 JL |
23696 | msgid "" |
23697 | "Run the @command{ntpd}, the Network Time Protocol (NTP) daemon, as " | |
23698 | "implemented by @uref{http://www.openntpd.org, OpenNTPD}. The daemon will " | |
23699 | "keep the system clock synchronized with that of the given servers." | |
23700 | msgstr "" | |
23701 | ||
23702 | #. type: example | |
39764ef8 | 23703 | #: doc/guix.texi:10898 |
b9fe8fd6 JL |
23704 | #, no-wrap |
23705 | msgid "" | |
23706 | "(service\n" | |
23707 | " openntpd-service-type\n" | |
23708 | " (openntpd-configuration\n" | |
23709 | " (listen-on '(\"127.0.0.1\" \"::1\"))\n" | |
23710 | " (sensor '(\"udcf0 correction 70000\"))\n" | |
23711 | " (constraint-from '(\"www.gnu.org\"))\n" | |
23712 | " (constraints-from '(\"https://www.google.com/\"))\n" | |
23713 | " (allow-large-adjustment? #t)))\n" | |
23714 | "\n" | |
23715 | msgstr "" | |
23716 | ||
23717 | #. type: deftp | |
39764ef8 | 23718 | #: doc/guix.texi:10902 |
b9fe8fd6 JL |
23719 | #, no-wrap |
23720 | msgid "{Data Type} openntpd-configuration" | |
23721 | msgstr "" | |
23722 | ||
23723 | #. type: item | |
39764ef8 | 23724 | #: doc/guix.texi:10904 |
b9fe8fd6 JL |
23725 | #, no-wrap |
23726 | msgid "@code{openntpd} (default: @code{(file-append openntpd \"/sbin/ntpd\")})" | |
23727 | msgstr "" | |
23728 | ||
23729 | #. type: table | |
39764ef8 | 23730 | #: doc/guix.texi:10906 |
b9fe8fd6 JL |
23731 | msgid "The openntpd executable to use." |
23732 | msgstr "" | |
23733 | ||
23734 | #. type: item | |
39764ef8 | 23735 | #: doc/guix.texi:10906 |
b9fe8fd6 JL |
23736 | #, no-wrap |
23737 | msgid "@code{listen-on} (default: @code{'(\"127.0.0.1\" \"::1\")})" | |
23738 | msgstr "" | |
23739 | ||
23740 | #. type: table | |
39764ef8 JL |
23741 | #: doc/guix.texi:10908 |
23742 | msgid "" | |
23743 | "A list of local IP addresses or hostnames the ntpd daemon should listen on." | |
b9fe8fd6 JL |
23744 | msgstr "" |
23745 | ||
23746 | #. type: item | |
39764ef8 | 23747 | #: doc/guix.texi:10908 |
b9fe8fd6 JL |
23748 | #, no-wrap |
23749 | msgid "@code{query-from} (default: @code{'()})" | |
23750 | msgstr "" | |
23751 | ||
23752 | #. type: table | |
39764ef8 JL |
23753 | #: doc/guix.texi:10910 |
23754 | msgid "" | |
23755 | "A list of local IP address the ntpd daemon should use for outgoing queries." | |
b9fe8fd6 JL |
23756 | msgstr "" |
23757 | ||
23758 | #. type: item | |
39764ef8 | 23759 | #: doc/guix.texi:10910 |
b9fe8fd6 JL |
23760 | #, no-wrap |
23761 | msgid "@code{sensor} (default: @code{'()})" | |
23762 | msgstr "" | |
23763 | ||
23764 | #. type: table | |
39764ef8 | 23765 | #: doc/guix.texi:10915 |
b9fe8fd6 JL |
23766 | msgid "" |
23767 | "Specify a list of timedelta sensor devices ntpd should use. @code{ntpd} " | |
23768 | "will listen to each sensor that acutally exists and ignore non-existant " | |
23769 | "ones. See @uref{https://man.openbsd.org/ntpd.conf, upstream documentation} " | |
23770 | "for more information." | |
23771 | msgstr "" | |
23772 | ||
23773 | #. type: item | |
39764ef8 | 23774 | #: doc/guix.texi:10915 |
b9fe8fd6 JL |
23775 | #, no-wrap |
23776 | msgid "@code{server} (default: @var{%ntp-servers})" | |
23777 | msgstr "" | |
23778 | ||
23779 | #. type: table | |
39764ef8 | 23780 | #: doc/guix.texi:10917 |
b9fe8fd6 | 23781 | msgid "" |
39764ef8 | 23782 | "Specify a list of IP addresses or hostnames of NTP servers to synchronize to." |
b9fe8fd6 JL |
23783 | msgstr "" |
23784 | ||
23785 | #. type: item | |
39764ef8 | 23786 | #: doc/guix.texi:10917 |
b9fe8fd6 JL |
23787 | #, no-wrap |
23788 | msgid "@code{servers} (default: @code{'()})" | |
23789 | msgstr "" | |
23790 | ||
23791 | #. type: table | |
39764ef8 JL |
23792 | #: doc/guix.texi:10919 |
23793 | msgid "" | |
23794 | "Specify a list of IP addresses or hostnames of NTP pools to synchronize to." | |
b9fe8fd6 JL |
23795 | msgstr "" |
23796 | ||
23797 | #. type: item | |
39764ef8 | 23798 | #: doc/guix.texi:10919 |
b9fe8fd6 JL |
23799 | #, no-wrap |
23800 | msgid "@code{constraint-from} (default: @code{'()})" | |
23801 | msgstr "" | |
23802 | ||
23803 | #. type: table | |
39764ef8 | 23804 | #: doc/guix.texi:10926 |
b9fe8fd6 JL |
23805 | msgid "" |
23806 | "@code{ntpd} can be configured to query the ‘Date’ from trusted HTTPS servers " | |
23807 | "via TLS. This time information is not used for precision but acts as an " | |
23808 | "authenticated constraint, thereby reducing the impact of unauthenticated NTP " | |
23809 | "man-in-the-middle attacks. Specify a list of URLs, IP addresses or " | |
23810 | "hostnames of HTTPS servers to provide a constraint." | |
23811 | msgstr "" | |
23812 | ||
23813 | #. type: item | |
39764ef8 | 23814 | #: doc/guix.texi:10926 |
b9fe8fd6 JL |
23815 | #, no-wrap |
23816 | msgid "@code{constraints-from} (default: @code{'()})" | |
23817 | msgstr "" | |
23818 | ||
23819 | #. type: table | |
39764ef8 | 23820 | #: doc/guix.texi:10930 |
b9fe8fd6 JL |
23821 | msgid "" |
23822 | "As with constraint from, specify a list of URLs, IP addresses or hostnames " | |
23823 | "of HTTPS servers to provide a constraint. Should the hostname resolve to " | |
23824 | "multiple IP addresses, @code{ntpd} will calculate a median constraint from " | |
23825 | "all of them." | |
23826 | msgstr "" | |
23827 | ||
23828 | #. type: item | |
39764ef8 | 23829 | #: doc/guix.texi:10930 |
b9fe8fd6 JL |
23830 | #, no-wrap |
23831 | msgid "@code{allow-large-adjustment?} (default: @code{#f})" | |
23832 | msgstr "" | |
23833 | ||
23834 | #. type: table | |
39764ef8 | 23835 | #: doc/guix.texi:10933 |
b9fe8fd6 JL |
23836 | msgid "" |
23837 | "Determines if @code{ntpd} is allowed to make an initial adjustment of more " | |
23838 | "than 180 seconds." | |
23839 | msgstr "" | |
23840 | ||
23841 | #. type: cindex | |
39764ef8 | 23842 | #: doc/guix.texi:10936 |
b9fe8fd6 JL |
23843 | #, no-wrap |
23844 | msgid "inetd" | |
23845 | msgstr "" | |
23846 | ||
23847 | #. type: deffn | |
39764ef8 | 23848 | #: doc/guix.texi:10937 |
b9fe8fd6 JL |
23849 | #, no-wrap |
23850 | msgid "{Scheme variable} inetd-service-type" | |
23851 | msgstr "" | |
23852 | ||
23853 | #. type: deffn | |
39764ef8 | 23854 | #: doc/guix.texi:10942 |
b9fe8fd6 JL |
23855 | msgid "" |
23856 | "This service runs the @command{inetd} (@pxref{inetd invocation,,, inetutils, " | |
23857 | "GNU Inetutils}) daemon. @command{inetd} listens for connections on internet " | |
23858 | "sockets, and lazily starts the specified server program when a connection is " | |
23859 | "made on one of these sockets." | |
23860 | msgstr "" | |
23861 | ||
23862 | #. type: deffn | |
39764ef8 | 23863 | #: doc/guix.texi:10948 |
b9fe8fd6 JL |
23864 | msgid "" |
23865 | "The value of this service is an @code{inetd-configuration} object. The " | |
39764ef8 JL |
23866 | "following example configures the @command{inetd} daemon to provide the built-" |
23867 | "in @command{echo} service, as well as an smtp service which forwards smtp " | |
23868 | "traffic over ssh to a server @code{smtp-server} behind a gateway " | |
b9fe8fd6 JL |
23869 | "@code{hostname}:" |
23870 | msgstr "" | |
23871 | ||
23872 | #. type: example | |
39764ef8 | 23873 | #: doc/guix.texi:10971 |
b9fe8fd6 JL |
23874 | #, no-wrap |
23875 | msgid "" | |
23876 | "(service\n" | |
23877 | " inetd-service-type\n" | |
23878 | " (inetd-configuration\n" | |
23879 | " (entries (list\n" | |
23880 | " (inetd-entry\n" | |
23881 | " (name \"echo\")\n" | |
23882 | " (socket-type 'stream)\n" | |
23883 | " (protocol \"tcp\")\n" | |
23884 | " (wait? #f)\n" | |
23885 | " (user \"root\"))\n" | |
23886 | " (inetd-entry\n" | |
23887 | " (node \"127.0.0.1\")\n" | |
23888 | " (name \"smtp\")\n" | |
23889 | " (socket-type 'stream)\n" | |
23890 | " (protocol \"tcp\")\n" | |
23891 | " (wait? #f)\n" | |
23892 | " (user \"root\")\n" | |
23893 | " (program (file-append openssh \"/bin/ssh\"))\n" | |
23894 | " (arguments\n" | |
23895 | " '(\"ssh\" \"-qT\" \"-i\" \"/path/to/ssh_key\"\n" | |
23896 | " \"-W\" \"smtp-server:25\" \"user@@hostname\")))))\n" | |
23897 | msgstr "" | |
23898 | ||
23899 | #. type: deffn | |
39764ef8 | 23900 | #: doc/guix.texi:10974 |
b9fe8fd6 JL |
23901 | msgid "See below for more details about @code{inetd-configuration}." |
23902 | msgstr "" | |
23903 | ||
23904 | #. type: deftp | |
39764ef8 | 23905 | #: doc/guix.texi:10976 |
b9fe8fd6 JL |
23906 | #, no-wrap |
23907 | msgid "{Data Type} inetd-configuration" | |
23908 | msgstr "" | |
23909 | ||
23910 | #. type: deftp | |
39764ef8 | 23911 | #: doc/guix.texi:10978 |
b9fe8fd6 JL |
23912 | msgid "Data type representing the configuration of @command{inetd}." |
23913 | msgstr "" | |
23914 | ||
23915 | #. type: item | |
39764ef8 | 23916 | #: doc/guix.texi:10980 |
b9fe8fd6 JL |
23917 | #, no-wrap |
23918 | msgid "@code{program} (default: @code{(file-append inetutils \"/libexec/inetd\")})" | |
23919 | msgstr "" | |
23920 | ||
23921 | #. type: table | |
39764ef8 | 23922 | #: doc/guix.texi:10982 |
b9fe8fd6 JL |
23923 | msgid "The @command{inetd} executable to use." |
23924 | msgstr "" | |
23925 | ||
23926 | #. type: item | |
39764ef8 | 23927 | #: doc/guix.texi:10983 doc/guix.texi:16240 |
b9fe8fd6 JL |
23928 | #, no-wrap |
23929 | msgid "@code{entries} (default: @code{'()})" | |
23930 | msgstr "" | |
23931 | ||
23932 | #. type: table | |
39764ef8 | 23933 | #: doc/guix.texi:10986 |
b9fe8fd6 JL |
23934 | msgid "" |
23935 | "A list of @command{inetd} service entries. Each entry should be created by " | |
23936 | "the @code{inetd-entry} constructor." | |
23937 | msgstr "" | |
23938 | ||
23939 | #. type: deftp | |
39764ef8 | 23940 | #: doc/guix.texi:10989 |
b9fe8fd6 JL |
23941 | #, no-wrap |
23942 | msgid "{Data Type} inetd-entry" | |
23943 | msgstr "" | |
23944 | ||
23945 | #. type: deftp | |
39764ef8 | 23946 | #: doc/guix.texi:10993 |
b9fe8fd6 JL |
23947 | msgid "" |
23948 | "Data type representing an entry in the @command{inetd} configuration. Each " | |
39764ef8 | 23949 | "entry corresponds to a socket where @command{inetd} will listen for requests." |
b9fe8fd6 JL |
23950 | msgstr "" |
23951 | ||
23952 | #. type: item | |
39764ef8 | 23953 | #: doc/guix.texi:10995 |
b9fe8fd6 JL |
23954 | #, no-wrap |
23955 | msgid "@code{node} (default: @code{#f})" | |
23956 | msgstr "" | |
23957 | ||
23958 | #. type: table | |
39764ef8 | 23959 | #: doc/guix.texi:11000 |
b9fe8fd6 JL |
23960 | msgid "" |
23961 | "Optional string, a comma-separated list of local addresses @command{inetd} " | |
23962 | "should use when listening for this service. @xref{Configuration file,,, " | |
23963 | "inetutils, GNU Inetutils} for a complete description of all options." | |
23964 | msgstr "" | |
23965 | ||
23966 | #. type: table | |
39764ef8 | 23967 | #: doc/guix.texi:11002 |
b9fe8fd6 JL |
23968 | msgid "A string, the name must correspond to an entry in @code{/etc/services}." |
23969 | msgstr "" | |
23970 | ||
23971 | #. type: code{#1} | |
39764ef8 | 23972 | #: doc/guix.texi:11002 |
b9fe8fd6 JL |
23973 | #, no-wrap |
23974 | msgid "socket-type" | |
23975 | msgstr "" | |
23976 | ||
23977 | #. type: table | |
39764ef8 | 23978 | #: doc/guix.texi:11005 |
b9fe8fd6 JL |
23979 | msgid "" |
23980 | "One of @code{'stream}, @code{'dgram}, @code{'raw}, @code{'rdm} or " | |
23981 | "@code{'seqpacket}." | |
23982 | msgstr "" | |
23983 | ||
23984 | #. type: code{#1} | |
39764ef8 | 23985 | #: doc/guix.texi:11005 |
b9fe8fd6 JL |
23986 | #, no-wrap |
23987 | msgid "protocol" | |
23988 | msgstr "" | |
23989 | ||
23990 | #. type: table | |
39764ef8 | 23991 | #: doc/guix.texi:11007 |
b9fe8fd6 JL |
23992 | msgid "A string, must correspond to an entry in @code{/etc/protocols}." |
23993 | msgstr "" | |
23994 | ||
23995 | #. type: item | |
39764ef8 | 23996 | #: doc/guix.texi:11007 |
b9fe8fd6 JL |
23997 | #, no-wrap |
23998 | msgid "@code{wait?} (default: @code{#t})" | |
23999 | msgstr "" | |
24000 | ||
24001 | #. type: table | |
39764ef8 | 24002 | #: doc/guix.texi:11010 |
b9fe8fd6 JL |
24003 | msgid "" |
24004 | "Whether @command{inetd} should wait for the server to exit before listening " | |
24005 | "to new service requests." | |
24006 | msgstr "" | |
24007 | ||
24008 | #. type: table | |
39764ef8 | 24009 | #: doc/guix.texi:11015 |
b9fe8fd6 JL |
24010 | msgid "" |
24011 | "A string containing the user (and, optionally, group) name of the user as " | |
24012 | "whom the server should run. The group name can be specified in a suffix, " | |
24013 | "separated by a colon or period, i.e. @code{\"user\"}, @code{\"user:group\"} " | |
24014 | "or @code{\"user.group\"}." | |
24015 | msgstr "" | |
24016 | ||
24017 | #. type: item | |
39764ef8 | 24018 | #: doc/guix.texi:11015 |
b9fe8fd6 JL |
24019 | #, no-wrap |
24020 | msgid "@code{program} (default: @code{\"internal\"})" | |
24021 | msgstr "" | |
24022 | ||
24023 | #. type: table | |
39764ef8 | 24024 | #: doc/guix.texi:11018 |
b9fe8fd6 JL |
24025 | msgid "" |
24026 | "The server program which will serve the requests, or @code{\"internal\"} if " | |
24027 | "@command{inetd} should use a built-in service." | |
24028 | msgstr "" | |
24029 | ||
24030 | #. type: table | |
39764ef8 | 24031 | #: doc/guix.texi:11023 |
b9fe8fd6 JL |
24032 | msgid "" |
24033 | "A list strings or file-like objects, which are the server program's " | |
24034 | "arguments, starting with the zeroth argument, i.e. the name of the program " | |
24035 | "itself. For @command{inetd}'s internal services, this entry must be " | |
24036 | "@code{'()} or @code{'(\"internal\")}." | |
24037 | msgstr "" | |
24038 | ||
24039 | #. type: deftp | |
39764ef8 | 24040 | #: doc/guix.texi:11027 |
b9fe8fd6 JL |
24041 | msgid "" |
24042 | "@xref{Configuration file,,, inetutils, GNU Inetutils} for a more detailed " | |
24043 | "discussion of each configuration field." | |
24044 | msgstr "" | |
24045 | ||
24046 | #. type: cindex | |
39764ef8 | 24047 | #: doc/guix.texi:11029 |
b9fe8fd6 JL |
24048 | #, no-wrap |
24049 | msgid "Tor" | |
24050 | msgstr "" | |
24051 | ||
24052 | #. type: deffn | |
39764ef8 | 24053 | #: doc/guix.texi:11030 |
b9fe8fd6 JL |
24054 | #, no-wrap |
24055 | msgid "{Scheme Procedure} tor-service [@var{config-file}] [#:tor @var{tor}]" | |
24056 | msgstr "" | |
24057 | ||
24058 | #. type: deffn | |
39764ef8 | 24059 | #: doc/guix.texi:11033 |
b9fe8fd6 JL |
24060 | msgid "" |
24061 | "Return a service to run the @uref{https://torproject.org, Tor} anonymous " | |
24062 | "networking daemon." | |
24063 | msgstr "" | |
24064 | ||
24065 | #. type: deffn | |
39764ef8 | 24066 | #: doc/guix.texi:11038 |
b9fe8fd6 JL |
24067 | msgid "" |
24068 | "The daemon runs as the @code{tor} unprivileged user. It is passed " | |
24069 | "@var{config-file}, a file-like object, with an additional @code{User tor} " | |
24070 | "line and lines for hidden services added via @code{tor-hidden-service}. Run " | |
24071 | "@command{man tor} for information about the configuration file." | |
24072 | msgstr "" | |
24073 | ||
24074 | #. type: cindex | |
39764ef8 | 24075 | #: doc/guix.texi:11040 |
b9fe8fd6 JL |
24076 | #, no-wrap |
24077 | msgid "hidden service" | |
24078 | msgstr "" | |
24079 | ||
24080 | #. type: deffn | |
39764ef8 | 24081 | #: doc/guix.texi:11041 |
b9fe8fd6 JL |
24082 | #, no-wrap |
24083 | msgid "{Scheme Procedure} tor-hidden-service @var{name} @var{mapping}" | |
24084 | msgstr "" | |
24085 | ||
24086 | #. type: deffn | |
39764ef8 | 24087 | #: doc/guix.texi:11044 |
b9fe8fd6 JL |
24088 | msgid "" |
24089 | "Define a new Tor @dfn{hidden service} called @var{name} and implementing " | |
24090 | "@var{mapping}. @var{mapping} is a list of port/host tuples, such as:" | |
24091 | msgstr "" | |
24092 | ||
24093 | #. type: example | |
39764ef8 | 24094 | #: doc/guix.texi:11048 |
b9fe8fd6 JL |
24095 | #, no-wrap |
24096 | msgid "" | |
24097 | " '((22 \"127.0.0.1:22\")\n" | |
24098 | " (80 \"127.0.0.1:8080\"))\n" | |
24099 | msgstr "" | |
24100 | ||
24101 | #. type: deffn | |
39764ef8 | 24102 | #: doc/guix.texi:11052 |
b9fe8fd6 JL |
24103 | msgid "" |
24104 | "In this example, port 22 of the hidden service is mapped to local port 22, " | |
24105 | "and port 80 is mapped to local port 8080." | |
24106 | msgstr "" | |
24107 | ||
24108 | #. type: deffn | |
39764ef8 | 24109 | #: doc/guix.texi:11056 |
b9fe8fd6 JL |
24110 | msgid "" |
24111 | "This creates a @file{/var/lib/tor/hidden-services/@var{name}} directory, " | |
24112 | "where the @file{hostname} file contains the @code{.onion} host name for the " | |
24113 | "hidden service." | |
24114 | msgstr "" | |
24115 | ||
24116 | #. type: deffn | |
39764ef8 | 24117 | #: doc/guix.texi:11059 |
b9fe8fd6 JL |
24118 | msgid "" |
24119 | "See @uref{https://www.torproject.org/docs/tor-hidden-service.html.en, the " | |
24120 | "Tor project's documentation} for more information." | |
24121 | msgstr "" | |
24122 | ||
24123 | #. type: Plain text | |
39764ef8 | 24124 | #: doc/guix.texi:11062 |
b9fe8fd6 JL |
24125 | msgid "The @code{(gnu services rsync)} module provides the following services:" |
24126 | msgstr "" | |
24127 | ||
24128 | #. type: Plain text | |
39764ef8 | 24129 | #: doc/guix.texi:11066 |
b9fe8fd6 JL |
24130 | msgid "" |
24131 | "You might want an rsync daemon if you have files that you want available so " | |
24132 | "anyone (or just yourself) can download existing files or upload new files." | |
24133 | msgstr "" | |
24134 | ||
24135 | #. type: deffn | |
39764ef8 | 24136 | #: doc/guix.texi:11067 |
b9fe8fd6 JL |
24137 | #, no-wrap |
24138 | msgid "{Scheme Variable} rsync-service-type" | |
24139 | msgstr "" | |
24140 | ||
24141 | #. type: deffn | |
39764ef8 | 24142 | #: doc/guix.texi:11070 |
b9fe8fd6 JL |
24143 | msgid "" |
24144 | "This is the type for the @uref{https://rsync.samba.org, rsync} rsync daemon, " | |
24145 | "@command{rsync-configuration} record as in this example:" | |
24146 | msgstr "" | |
24147 | ||
24148 | #. type: example | |
39764ef8 | 24149 | #: doc/guix.texi:11073 |
b9fe8fd6 JL |
24150 | #, no-wrap |
24151 | msgid "(service rsync-service-type)\n" | |
24152 | msgstr "" | |
24153 | ||
24154 | #. type: deffn | |
39764ef8 | 24155 | #: doc/guix.texi:11076 |
b9fe8fd6 JL |
24156 | msgid "See below for details about @code{rsync-configuration}." |
24157 | msgstr "" | |
24158 | ||
24159 | #. type: deftp | |
39764ef8 | 24160 | #: doc/guix.texi:11078 |
b9fe8fd6 JL |
24161 | #, no-wrap |
24162 | msgid "{Data Type} rsync-configuration" | |
24163 | msgstr "" | |
24164 | ||
24165 | #. type: deftp | |
39764ef8 | 24166 | #: doc/guix.texi:11080 |
b9fe8fd6 JL |
24167 | msgid "Data type representing the configuration for @code{rsync-service}." |
24168 | msgstr "" | |
24169 | ||
24170 | #. type: item | |
39764ef8 | 24171 | #: doc/guix.texi:11082 |
b9fe8fd6 JL |
24172 | #, no-wrap |
24173 | msgid "@code{package} (default: @var{rsync})" | |
24174 | msgstr "" | |
24175 | ||
24176 | #. type: table | |
39764ef8 | 24177 | #: doc/guix.texi:11084 |
b9fe8fd6 JL |
24178 | msgid "@code{rsync} package to use." |
24179 | msgstr "" | |
24180 | ||
24181 | #. type: item | |
39764ef8 | 24182 | #: doc/guix.texi:11085 |
b9fe8fd6 JL |
24183 | #, no-wrap |
24184 | msgid "@code{port-number} (default: @code{873})" | |
24185 | msgstr "" | |
24186 | ||
24187 | #. type: table | |
39764ef8 | 24188 | #: doc/guix.texi:11089 |
b9fe8fd6 JL |
24189 | msgid "" |
24190 | "TCP port on which @command{rsync} listens for incoming connections. If port " | |
24191 | "is less than @code{1024} @command{rsync} needs to be started as the " | |
24192 | "@code{root} user and group." | |
24193 | msgstr "" | |
24194 | ||
24195 | #. type: item | |
39764ef8 | 24196 | #: doc/guix.texi:11090 |
b9fe8fd6 JL |
24197 | #, no-wrap |
24198 | msgid "@code{pid-file} (default: @code{\"/var/run/rsyncd/rsyncd.pid\"})" | |
24199 | msgstr "" | |
24200 | ||
24201 | #. type: table | |
39764ef8 | 24202 | #: doc/guix.texi:11092 |
b9fe8fd6 JL |
24203 | msgid "Name of the file where @command{rsync} writes its PID." |
24204 | msgstr "" | |
24205 | ||
24206 | #. type: item | |
39764ef8 | 24207 | #: doc/guix.texi:11093 |
b9fe8fd6 JL |
24208 | #, no-wrap |
24209 | msgid "@code{lock-file} (default: @code{\"/var/run/rsyncd/rsyncd.lock\"})" | |
24210 | msgstr "" | |
24211 | ||
24212 | #. type: table | |
39764ef8 | 24213 | #: doc/guix.texi:11095 |
b9fe8fd6 JL |
24214 | msgid "Name of the file where @command{rsync} writes its lock file." |
24215 | msgstr "" | |
24216 | ||
24217 | #. type: item | |
39764ef8 | 24218 | #: doc/guix.texi:11096 |
b9fe8fd6 JL |
24219 | #, no-wrap |
24220 | msgid "@code{log-file} (default: @code{\"/var/log/rsyncd.log\"})" | |
24221 | msgstr "" | |
24222 | ||
24223 | #. type: table | |
39764ef8 | 24224 | #: doc/guix.texi:11098 |
b9fe8fd6 JL |
24225 | msgid "Name of the file where @command{rsync} writes its log file." |
24226 | msgstr "" | |
24227 | ||
24228 | #. type: item | |
39764ef8 | 24229 | #: doc/guix.texi:11099 |
b9fe8fd6 JL |
24230 | #, no-wrap |
24231 | msgid "@code{use-chroot?} (default: @var{#t})" | |
24232 | msgstr "" | |
24233 | ||
24234 | #. type: table | |
39764ef8 | 24235 | #: doc/guix.texi:11101 |
b9fe8fd6 JL |
24236 | msgid "Whether to use chroot for @command{rsync} shared directory." |
24237 | msgstr "" | |
24238 | ||
24239 | #. type: item | |
39764ef8 | 24240 | #: doc/guix.texi:11102 |
b9fe8fd6 JL |
24241 | #, no-wrap |
24242 | msgid "@code{share-path} (default: @file{/srv/rsync})" | |
24243 | msgstr "" | |
24244 | ||
24245 | #. type: table | |
39764ef8 | 24246 | #: doc/guix.texi:11104 |
b9fe8fd6 JL |
24247 | msgid "Location of the @command{rsync} shared directory." |
24248 | msgstr "" | |
24249 | ||
24250 | #. type: item | |
39764ef8 | 24251 | #: doc/guix.texi:11105 |
b9fe8fd6 JL |
24252 | #, no-wrap |
24253 | msgid "@code{share-comment} (default: @code{\"Rsync share\"})" | |
24254 | msgstr "" | |
24255 | ||
24256 | #. type: table | |
39764ef8 | 24257 | #: doc/guix.texi:11107 |
b9fe8fd6 JL |
24258 | msgid "Comment of the @command{rsync} shared directory." |
24259 | msgstr "" | |
24260 | ||
24261 | #. type: item | |
39764ef8 | 24262 | #: doc/guix.texi:11108 |
b9fe8fd6 JL |
24263 | #, no-wrap |
24264 | msgid "@code{read-only?} (default: @var{#f})" | |
24265 | msgstr "" | |
24266 | ||
24267 | #. type: table | |
39764ef8 | 24268 | #: doc/guix.texi:11110 |
b9fe8fd6 JL |
24269 | msgid "Read-write permissions to shared directory." |
24270 | msgstr "" | |
24271 | ||
24272 | #. type: item | |
39764ef8 | 24273 | #: doc/guix.texi:11111 |
b9fe8fd6 JL |
24274 | #, no-wrap |
24275 | msgid "@code{timeout} (default: @code{300})" | |
24276 | msgstr "" | |
24277 | ||
24278 | #. type: table | |
39764ef8 | 24279 | #: doc/guix.texi:11113 |
b9fe8fd6 JL |
24280 | msgid "I/O timeout in seconds." |
24281 | msgstr "" | |
24282 | ||
24283 | #. type: item | |
39764ef8 | 24284 | #: doc/guix.texi:11114 |
b9fe8fd6 JL |
24285 | #, no-wrap |
24286 | msgid "@code{user} (default: @var{\"root\"})" | |
24287 | msgstr "" | |
24288 | ||
24289 | #. type: table | |
39764ef8 | 24290 | #: doc/guix.texi:11116 |
b9fe8fd6 JL |
24291 | msgid "Owner of the @code{rsync} process." |
24292 | msgstr "" | |
24293 | ||
24294 | #. type: item | |
39764ef8 | 24295 | #: doc/guix.texi:11117 |
b9fe8fd6 JL |
24296 | #, no-wrap |
24297 | msgid "@code{group} (default: @var{\"root\"})" | |
24298 | msgstr "" | |
24299 | ||
24300 | #. type: table | |
39764ef8 | 24301 | #: doc/guix.texi:11119 |
b9fe8fd6 JL |
24302 | msgid "Group of the @code{rsync} process." |
24303 | msgstr "" | |
24304 | ||
24305 | #. type: item | |
39764ef8 | 24306 | #: doc/guix.texi:11120 |
b9fe8fd6 JL |
24307 | #, no-wrap |
24308 | msgid "@code{uid} (default: @var{\"rsyncd\"})" | |
24309 | msgstr "" | |
24310 | ||
24311 | #. type: table | |
39764ef8 | 24312 | #: doc/guix.texi:11123 |
b9fe8fd6 JL |
24313 | msgid "" |
24314 | "User name or user ID that file transfers to and from that module should take " | |
24315 | "place as when the daemon was run as @code{root}." | |
24316 | msgstr "" | |
24317 | ||
24318 | #. type: item | |
39764ef8 | 24319 | #: doc/guix.texi:11124 |
b9fe8fd6 JL |
24320 | #, no-wrap |
24321 | msgid "@code{gid} (default: @var{\"rsyncd\"})" | |
24322 | msgstr "" | |
24323 | ||
24324 | #. type: table | |
39764ef8 | 24325 | #: doc/guix.texi:11126 |
b9fe8fd6 JL |
24326 | msgid "Group name or group ID that will be used when accessing the module." |
24327 | msgstr "" | |
24328 | ||
24329 | #. type: Plain text | |
39764ef8 | 24330 | #: doc/guix.texi:11131 |
b9fe8fd6 JL |
24331 | msgid "Furthermore, @code{(gnu services ssh)} provides the following services." |
24332 | msgstr "" | |
24333 | ||
24334 | #. type: cindex | |
39764ef8 | 24335 | #: doc/guix.texi:11131 doc/guix.texi:11170 doc/guix.texi:20791 |
b9fe8fd6 JL |
24336 | #, no-wrap |
24337 | msgid "SSH" | |
24338 | msgstr "" | |
24339 | ||
24340 | #. type: cindex | |
39764ef8 | 24341 | #: doc/guix.texi:11132 doc/guix.texi:11171 doc/guix.texi:20792 |
b9fe8fd6 JL |
24342 | #, no-wrap |
24343 | msgid "SSH server" | |
24344 | msgstr "" | |
24345 | ||
24346 | #. type: deffn | |
39764ef8 | 24347 | #: doc/guix.texi:11134 |
b9fe8fd6 JL |
24348 | #, no-wrap |
24349 | msgid "{Scheme Procedure} lsh-service [#:host-key \"/etc/lsh/host-key\"] @" | |
24350 | msgstr "" | |
24351 | ||
24352 | #. type: deffn | |
39764ef8 | 24353 | #: doc/guix.texi:11143 |
b9fe8fd6 | 24354 | msgid "" |
39764ef8 JL |
24355 | "[#:daemonic? #t] [#:interfaces '()] [#:port-number 22] @ [#:allow-empty-" |
24356 | "passwords? #f] [#:root-login? #f] @ [#:syslog-output? #t] [#:x11-forwarding? " | |
24357 | "#t] @ [#:tcp/ip-forwarding? #t] [#:password-authentication? #t] @ [#:public-" | |
24358 | "key-authentication? #t] [#:initialize? #t] Run the @command{lshd} program " | |
24359 | "from @var{lsh} to listen on port @var{port-number}. @var{host-key} must " | |
24360 | "designate a file containing the host key, and readable only by root." | |
b9fe8fd6 JL |
24361 | msgstr "" |
24362 | ||
24363 | #. type: deffn | |
39764ef8 | 24364 | #: doc/guix.texi:11149 |
b9fe8fd6 JL |
24365 | msgid "" |
24366 | "When @var{daemonic?} is true, @command{lshd} will detach from the " | |
24367 | "controlling terminal and log its output to syslogd, unless one sets " | |
24368 | "@var{syslog-output?} to false. Obviously, it also makes lsh-service depend " | |
24369 | "on existence of syslogd service. When @var{pid-file?} is true, " | |
24370 | "@command{lshd} writes its PID to the file called @var{pid-file}." | |
24371 | msgstr "" | |
24372 | ||
24373 | #. type: deffn | |
39764ef8 | 24374 | #: doc/guix.texi:11153 |
b9fe8fd6 JL |
24375 | msgid "" |
24376 | "When @var{initialize?} is true, automatically create the seed and host key " | |
24377 | "upon service activation if they do not exist yet. This may take long and " | |
24378 | "require interaction." | |
24379 | msgstr "" | |
24380 | ||
24381 | #. type: deffn | |
39764ef8 | 24382 | #: doc/guix.texi:11158 |
b9fe8fd6 JL |
24383 | msgid "" |
24384 | "When @var{initialize?} is false, it is up to the user to initialize the " | |
24385 | "randomness generator (@pxref{lsh-make-seed,,, lsh, LSH Manual}), and to " | |
24386 | "create a key pair with the private key stored in file @var{host-key} " | |
24387 | "(@pxref{lshd basics,,, lsh, LSH Manual})." | |
24388 | msgstr "" | |
24389 | ||
24390 | #. type: deffn | |
39764ef8 | 24391 | #: doc/guix.texi:11162 |
b9fe8fd6 JL |
24392 | msgid "" |
24393 | "When @var{interfaces} is empty, lshd listens for connections on all the " | |
24394 | "network interfaces; otherwise, @var{interfaces} must be a list of host names " | |
24395 | "or addresses." | |
24396 | msgstr "" | |
24397 | ||
24398 | #. type: deffn | |
39764ef8 | 24399 | #: doc/guix.texi:11166 |
b9fe8fd6 JL |
24400 | msgid "" |
24401 | "@var{allow-empty-passwords?} specifies whether to accept log-ins with empty " | |
39764ef8 | 24402 | "passwords, and @var{root-login?} specifies whether to accept log-ins as root." |
b9fe8fd6 JL |
24403 | msgstr "" |
24404 | ||
24405 | #. type: deffn | |
39764ef8 | 24406 | #: doc/guix.texi:11168 |
b9fe8fd6 JL |
24407 | msgid "The other options should be self-descriptive." |
24408 | msgstr "" | |
24409 | ||
24410 | #. type: deffn | |
39764ef8 | 24411 | #: doc/guix.texi:11172 |
b9fe8fd6 JL |
24412 | #, no-wrap |
24413 | msgid "{Scheme Variable} openssh-service-type" | |
24414 | msgstr "" | |
24415 | ||
24416 | #. type: deffn | |
39764ef8 | 24417 | #: doc/guix.texi:11176 |
b9fe8fd6 JL |
24418 | msgid "" |
24419 | "This is the type for the @uref{http://www.openssh.org, OpenSSH} secure shell " | |
24420 | "daemon, @command{sshd}. Its value must be an @code{openssh-configuration} " | |
24421 | "record as in this example:" | |
24422 | msgstr "" | |
24423 | ||
24424 | #. type: example | |
39764ef8 | 24425 | #: doc/guix.texi:11185 |
b9fe8fd6 JL |
24426 | #, no-wrap |
24427 | msgid "" | |
24428 | "(service openssh-service-type\n" | |
24429 | " (openssh-configuration\n" | |
24430 | " (x11-forwarding? #t)\n" | |
24431 | " (permit-root-login 'without-password)\n" | |
24432 | " (authorized-keys\n" | |
24433 | " `((\"alice\" ,(local-file \"alice.pub\"))\n" | |
24434 | " (\"bob\" ,(local-file \"bob.pub\"))))))\n" | |
24435 | msgstr "" | |
24436 | ||
24437 | #. type: deffn | |
39764ef8 | 24438 | #: doc/guix.texi:11188 |
b9fe8fd6 JL |
24439 | msgid "See below for details about @code{openssh-configuration}." |
24440 | msgstr "" | |
24441 | ||
24442 | #. type: deffn | |
39764ef8 JL |
24443 | #: doc/guix.texi:11191 |
24444 | msgid "" | |
24445 | "This service can be extended with extra authorized keys, as in this example:" | |
b9fe8fd6 JL |
24446 | msgstr "" |
24447 | ||
24448 | #. type: example | |
39764ef8 | 24449 | #: doc/guix.texi:11196 |
b9fe8fd6 JL |
24450 | #, no-wrap |
24451 | msgid "" | |
24452 | "(service-extension openssh-service-type\n" | |
24453 | " (const `((\"charlie\"\n" | |
24454 | " ,(local-file \"charlie.pub\")))))\n" | |
24455 | msgstr "" | |
24456 | ||
24457 | #. type: deftp | |
39764ef8 | 24458 | #: doc/guix.texi:11199 |
b9fe8fd6 JL |
24459 | #, no-wrap |
24460 | msgid "{Data Type} openssh-configuration" | |
24461 | msgstr "" | |
24462 | ||
24463 | #. type: deftp | |
39764ef8 | 24464 | #: doc/guix.texi:11201 |
b9fe8fd6 JL |
24465 | msgid "This is the configuration record for OpenSSH's @command{sshd}." |
24466 | msgstr "" | |
24467 | ||
24468 | #. type: item | |
39764ef8 | 24469 | #: doc/guix.texi:11203 |
b9fe8fd6 JL |
24470 | #, no-wrap |
24471 | msgid "@code{pid-file} (default: @code{\"/var/run/sshd.pid\"})" | |
24472 | msgstr "" | |
24473 | ||
24474 | #. type: table | |
39764ef8 | 24475 | #: doc/guix.texi:11205 |
b9fe8fd6 JL |
24476 | msgid "Name of the file where @command{sshd} writes its PID." |
24477 | msgstr "" | |
24478 | ||
24479 | #. type: item | |
39764ef8 | 24480 | #: doc/guix.texi:11206 |
b9fe8fd6 JL |
24481 | #, no-wrap |
24482 | msgid "@code{port-number} (default: @code{22})" | |
24483 | msgstr "" | |
24484 | ||
24485 | #. type: table | |
39764ef8 | 24486 | #: doc/guix.texi:11208 |
b9fe8fd6 JL |
24487 | msgid "TCP port on which @command{sshd} listens for incoming connections." |
24488 | msgstr "" | |
24489 | ||
24490 | #. type: item | |
39764ef8 | 24491 | #: doc/guix.texi:11209 |
b9fe8fd6 JL |
24492 | #, no-wrap |
24493 | msgid "@code{permit-root-login} (default: @code{#f})" | |
24494 | msgstr "" | |
24495 | ||
24496 | #. type: table | |
39764ef8 | 24497 | #: doc/guix.texi:11214 |
b9fe8fd6 JL |
24498 | msgid "" |
24499 | "This field determines whether and when to allow logins as root. If " | |
24500 | "@code{#f}, root logins are disallowed; if @code{#t}, they are allowed. If " | |
24501 | "it's the symbol @code{'without-password}, then root logins are permitted but " | |
24502 | "not with password-based authentication." | |
24503 | msgstr "" | |
24504 | ||
24505 | #. type: item | |
39764ef8 | 24506 | #: doc/guix.texi:11215 doc/guix.texi:11348 |
b9fe8fd6 JL |
24507 | #, no-wrap |
24508 | msgid "@code{allow-empty-passwords?} (default: @code{#f})" | |
24509 | msgstr "" | |
24510 | ||
24511 | #. type: table | |
39764ef8 JL |
24512 | #: doc/guix.texi:11218 |
24513 | msgid "" | |
24514 | "When true, users with empty passwords may log in. When false, they may not." | |
b9fe8fd6 JL |
24515 | msgstr "" |
24516 | ||
24517 | #. type: item | |
39764ef8 | 24518 | #: doc/guix.texi:11219 doc/guix.texi:11351 |
b9fe8fd6 JL |
24519 | #, no-wrap |
24520 | msgid "@code{password-authentication?} (default: @code{#t})" | |
24521 | msgstr "" | |
24522 | ||
24523 | #. type: table | |
39764ef8 | 24524 | #: doc/guix.texi:11222 |
b9fe8fd6 JL |
24525 | msgid "" |
24526 | "When true, users may log in with their password. When false, they have " | |
24527 | "other authentication methods." | |
24528 | msgstr "" | |
24529 | ||
24530 | #. type: item | |
39764ef8 | 24531 | #: doc/guix.texi:11223 |
b9fe8fd6 JL |
24532 | #, no-wrap |
24533 | msgid "@code{public-key-authentication?} (default: @code{#t})" | |
24534 | msgstr "" | |
24535 | ||
24536 | #. type: table | |
39764ef8 | 24537 | #: doc/guix.texi:11226 |
b9fe8fd6 JL |
24538 | msgid "" |
24539 | "When true, users may log in using public key authentication. When false, " | |
24540 | "users have to use other authentication method." | |
24541 | msgstr "" | |
24542 | ||
24543 | #. type: table | |
39764ef8 | 24544 | #: doc/guix.texi:11229 |
b9fe8fd6 JL |
24545 | msgid "" |
24546 | "Authorized public keys are stored in @file{~/.ssh/authorized_keys}. This is " | |
24547 | "used only by protocol version 2." | |
24548 | msgstr "" | |
24549 | ||
24550 | #. type: item | |
39764ef8 | 24551 | #: doc/guix.texi:11230 |
b9fe8fd6 JL |
24552 | #, no-wrap |
24553 | msgid "@code{x11-forwarding?} (default: @code{#f})" | |
24554 | msgstr "" | |
24555 | ||
24556 | #. type: table | |
39764ef8 | 24557 | #: doc/guix.texi:11234 |
b9fe8fd6 JL |
24558 | msgid "" |
24559 | "When true, forwarding of X11 graphical client connections is enabled---in " | |
24560 | "other words, @command{ssh} options @option{-X} and @option{-Y} will work." | |
24561 | msgstr "" | |
24562 | ||
24563 | #. type: item | |
39764ef8 | 24564 | #: doc/guix.texi:11235 |
b9fe8fd6 JL |
24565 | #, no-wrap |
24566 | msgid "@code{challenge-response-authentication?} (default: @code{#f})" | |
24567 | msgstr "" | |
24568 | ||
24569 | #. type: table | |
39764ef8 | 24570 | #: doc/guix.texi:11238 |
b9fe8fd6 JL |
24571 | msgid "" |
24572 | "Specifies whether challenge response authentication is allowed (e.g. via " | |
24573 | "PAM)." | |
24574 | msgstr "" | |
24575 | ||
24576 | #. type: item | |
39764ef8 | 24577 | #: doc/guix.texi:11239 |
b9fe8fd6 JL |
24578 | #, no-wrap |
24579 | msgid "@code{use-pam?} (default: @code{#t})" | |
24580 | msgstr "" | |
24581 | ||
24582 | #. type: table | |
39764ef8 | 24583 | #: doc/guix.texi:11245 |
b9fe8fd6 JL |
24584 | msgid "" |
24585 | "Enables the Pluggable Authentication Module interface. If set to @code{#t}, " | |
39764ef8 JL |
24586 | "this will enable PAM authentication using @code{challenge-response-" |
24587 | "authentication?} and @code{password-authentication?}, in addition to PAM " | |
24588 | "account and session module processing for all authentication types." | |
b9fe8fd6 JL |
24589 | msgstr "" |
24590 | ||
24591 | #. type: table | |
39764ef8 | 24592 | #: doc/guix.texi:11250 |
b9fe8fd6 JL |
24593 | msgid "" |
24594 | "Because PAM challenge response authentication usually serves an equivalent " | |
39764ef8 JL |
24595 | "role to password authentication, you should disable either @code{challenge-" |
24596 | "response-authentication?} or @code{password-authentication?}." | |
b9fe8fd6 JL |
24597 | msgstr "" |
24598 | ||
24599 | #. type: item | |
39764ef8 | 24600 | #: doc/guix.texi:11251 |
b9fe8fd6 JL |
24601 | #, no-wrap |
24602 | msgid "@code{print-last-log?} (default: @code{#t})" | |
24603 | msgstr "" | |
24604 | ||
24605 | #. type: table | |
39764ef8 | 24606 | #: doc/guix.texi:11254 |
b9fe8fd6 JL |
24607 | msgid "" |
24608 | "Specifies whether @command{sshd} should print the date and time of the last " | |
24609 | "user login when a user logs in interactively." | |
24610 | msgstr "" | |
24611 | ||
24612 | #. type: item | |
39764ef8 | 24613 | #: doc/guix.texi:11255 |
b9fe8fd6 JL |
24614 | #, no-wrap |
24615 | msgid "@code{subsystems} (default: @code{'((\"sftp\" \"internal-sftp\"))})" | |
24616 | msgstr "" | |
24617 | ||
24618 | #. type: table | |
39764ef8 | 24619 | #: doc/guix.texi:11257 |
b9fe8fd6 JL |
24620 | msgid "Configures external subsystems (e.g. file transfer daemon)." |
24621 | msgstr "" | |
24622 | ||
24623 | #. type: table | |
39764ef8 | 24624 | #: doc/guix.texi:11261 |
b9fe8fd6 JL |
24625 | msgid "" |
24626 | "This is a list of two-element lists, each of which containing the subsystem " | |
24627 | "name and a command (with optional arguments) to execute upon subsystem " | |
24628 | "request." | |
24629 | msgstr "" | |
24630 | ||
24631 | #. type: table | |
39764ef8 | 24632 | #: doc/guix.texi:11264 |
b9fe8fd6 JL |
24633 | msgid "" |
24634 | "The command @command{internal-sftp} implements an in-process SFTP server. " | |
24635 | "Alternately, one can specify the @command{sftp-server} command:" | |
24636 | msgstr "" | |
24637 | ||
24638 | #. type: example | |
39764ef8 | 24639 | #: doc/guix.texi:11269 |
b9fe8fd6 JL |
24640 | #, no-wrap |
24641 | msgid "" | |
24642 | "(service openssh-service-type\n" | |
24643 | " (openssh-configuration\n" | |
24644 | " (subsystems\n" | |
39764ef8 | 24645 | " `((\"sftp\" ,(file-append openssh \"/libexec/sftp-server\"))))))\n" |
b9fe8fd6 JL |
24646 | msgstr "" |
24647 | ||
24648 | #. type: item | |
39764ef8 | 24649 | #: doc/guix.texi:11271 |
b9fe8fd6 JL |
24650 | #, no-wrap |
24651 | msgid "@code{accepted-environment} (default: @code{'()})" | |
24652 | msgstr "" | |
24653 | ||
24654 | #. type: table | |
39764ef8 | 24655 | #: doc/guix.texi:11273 |
b9fe8fd6 JL |
24656 | msgid "List of strings describing which environment variables may be exported." |
24657 | msgstr "" | |
24658 | ||
24659 | #. type: table | |
39764ef8 | 24660 | #: doc/guix.texi:11276 |
b9fe8fd6 JL |
24661 | msgid "" |
24662 | "Each string gets on its own line. See the @code{AcceptEnv} option in " | |
24663 | "@code{man sshd_config}." | |
24664 | msgstr "" | |
24665 | ||
24666 | #. type: table | |
39764ef8 | 24667 | #: doc/guix.texi:11281 |
b9fe8fd6 JL |
24668 | msgid "" |
24669 | "This example allows ssh-clients to export the @code{COLORTERM} variable. It " | |
24670 | "is set by terminal emulators, which support colors. You can use it in your " | |
24671 | "shell's ressource file to enable colors for the prompt and commands if this " | |
24672 | "variable is set." | |
24673 | msgstr "" | |
24674 | ||
24675 | #. type: example | |
39764ef8 | 24676 | #: doc/guix.texi:11286 |
b9fe8fd6 JL |
24677 | #, no-wrap |
24678 | msgid "" | |
24679 | "(service openssh-service-type\n" | |
24680 | " (openssh-configuration\n" | |
24681 | " (accepted-environment '(\"COLORTERM\"))))\n" | |
24682 | msgstr "" | |
24683 | ||
24684 | #. type: item | |
39764ef8 | 24685 | #: doc/guix.texi:11288 |
b9fe8fd6 JL |
24686 | #, no-wrap |
24687 | msgid "@code{authorized-keys} (default: @code{'()})" | |
24688 | msgstr "" | |
24689 | ||
24690 | #. type: cindex | |
39764ef8 | 24691 | #: doc/guix.texi:11289 |
b9fe8fd6 JL |
24692 | #, no-wrap |
24693 | msgid "authorized keys, SSH" | |
24694 | msgstr "" | |
24695 | ||
24696 | #. type: cindex | |
39764ef8 | 24697 | #: doc/guix.texi:11290 |
b9fe8fd6 JL |
24698 | #, no-wrap |
24699 | msgid "SSH authorized keys" | |
24700 | msgstr "" | |
24701 | ||
24702 | #. type: table | |
39764ef8 | 24703 | #: doc/guix.texi:11294 |
b9fe8fd6 JL |
24704 | msgid "" |
24705 | "This is the list of authorized keys. Each element of the list is a user " | |
24706 | "name followed by one or more file-like objects that represent SSH public " | |
24707 | "keys. For example:" | |
24708 | msgstr "" | |
24709 | ||
24710 | #. type: example | |
39764ef8 | 24711 | #: doc/guix.texi:11301 |
b9fe8fd6 JL |
24712 | #, no-wrap |
24713 | msgid "" | |
24714 | "(openssh-configuration\n" | |
24715 | " (authorized-keys\n" | |
24716 | " `((\"rekado\" ,(local-file \"rekado.pub\"))\n" | |
24717 | " (\"chris\" ,(local-file \"chris.pub\"))\n" | |
39764ef8 | 24718 | " (\"root\" ,(local-file \"rekado.pub\") ,(local-file \"chris.pub\")))))\n" |
b9fe8fd6 JL |
24719 | msgstr "" |
24720 | ||
24721 | #. type: table | |
39764ef8 | 24722 | #: doc/guix.texi:11306 |
b9fe8fd6 JL |
24723 | msgid "" |
24724 | "registers the specified public keys for user accounts @code{rekado}, " | |
24725 | "@code{chris}, and @code{root}." | |
24726 | msgstr "" | |
24727 | ||
24728 | #. type: table | |
39764ef8 | 24729 | #: doc/guix.texi:11309 |
b9fe8fd6 | 24730 | msgid "" |
39764ef8 | 24731 | "Additional authorized keys can be specified @i{via} @code{service-extension}." |
b9fe8fd6 JL |
24732 | msgstr "" |
24733 | ||
24734 | #. type: table | |
39764ef8 | 24735 | #: doc/guix.texi:11312 |
b9fe8fd6 | 24736 | msgid "" |
39764ef8 JL |
24737 | "Note that this does @emph{not} interfere with the use of @file{~/.ssh/" |
24738 | "authorized_keys}." | |
b9fe8fd6 JL |
24739 | msgstr "" |
24740 | ||
24741 | #. type: deffn | |
39764ef8 | 24742 | #: doc/guix.texi:11315 |
b9fe8fd6 JL |
24743 | #, no-wrap |
24744 | msgid "{Scheme Procedure} dropbear-service [@var{config}]" | |
24745 | msgstr "" | |
24746 | ||
24747 | #. type: deffn | |
39764ef8 | 24748 | #: doc/guix.texi:11319 |
b9fe8fd6 JL |
24749 | msgid "" |
24750 | "Run the @uref{https://matt.ucc.asn.au/dropbear/dropbear.html,Dropbear SSH " | |
24751 | "daemon} with the given @var{config}, a @code{<dropbear-configuration>} " | |
24752 | "object." | |
24753 | msgstr "" | |
24754 | ||
24755 | #. type: deffn | |
39764ef8 | 24756 | #: doc/guix.texi:11322 |
b9fe8fd6 JL |
24757 | msgid "" |
24758 | "For example, to specify a Dropbear service listening on port 1234, add this " | |
24759 | "call to the operating system's @code{services} field:" | |
24760 | msgstr "" | |
24761 | ||
24762 | #. type: example | |
39764ef8 | 24763 | #: doc/guix.texi:11326 |
b9fe8fd6 JL |
24764 | #, no-wrap |
24765 | msgid "" | |
24766 | "(dropbear-service (dropbear-configuration\n" | |
24767 | " (port-number 1234)))\n" | |
24768 | msgstr "" | |
24769 | ||
24770 | #. type: deftp | |
39764ef8 | 24771 | #: doc/guix.texi:11329 |
b9fe8fd6 JL |
24772 | #, no-wrap |
24773 | msgid "{Data Type} dropbear-configuration" | |
24774 | msgstr "" | |
24775 | ||
24776 | #. type: deftp | |
39764ef8 | 24777 | #: doc/guix.texi:11331 |
b9fe8fd6 JL |
24778 | msgid "This data type represents the configuration of a Dropbear SSH daemon." |
24779 | msgstr "" | |
24780 | ||
24781 | #. type: item | |
39764ef8 | 24782 | #: doc/guix.texi:11333 |
b9fe8fd6 JL |
24783 | #, no-wrap |
24784 | msgid "@code{dropbear} (default: @var{dropbear})" | |
24785 | msgstr "" | |
24786 | ||
24787 | #. type: table | |
39764ef8 | 24788 | #: doc/guix.texi:11335 |
b9fe8fd6 JL |
24789 | msgid "The Dropbear package to use." |
24790 | msgstr "" | |
24791 | ||
24792 | #. type: item | |
39764ef8 | 24793 | #: doc/guix.texi:11336 |
b9fe8fd6 JL |
24794 | #, no-wrap |
24795 | msgid "@code{port-number} (default: 22)" | |
24796 | msgstr "" | |
24797 | ||
24798 | #. type: table | |
39764ef8 | 24799 | #: doc/guix.texi:11338 |
b9fe8fd6 JL |
24800 | msgid "The TCP port where the daemon waits for incoming connections." |
24801 | msgstr "" | |
24802 | ||
24803 | #. type: item | |
39764ef8 | 24804 | #: doc/guix.texi:11339 |
b9fe8fd6 JL |
24805 | #, no-wrap |
24806 | msgid "@code{syslog-output?} (default: @code{#t})" | |
24807 | msgstr "" | |
24808 | ||
24809 | #. type: table | |
39764ef8 | 24810 | #: doc/guix.texi:11341 |
b9fe8fd6 JL |
24811 | msgid "Whether to enable syslog output." |
24812 | msgstr "" | |
24813 | ||
24814 | #. type: item | |
39764ef8 | 24815 | #: doc/guix.texi:11342 |
b9fe8fd6 JL |
24816 | #, no-wrap |
24817 | msgid "@code{pid-file} (default: @code{\"/var/run/dropbear.pid\"})" | |
24818 | msgstr "" | |
24819 | ||
24820 | #. type: table | |
39764ef8 | 24821 | #: doc/guix.texi:11344 |
b9fe8fd6 JL |
24822 | msgid "File name of the daemon's PID file." |
24823 | msgstr "" | |
24824 | ||
24825 | #. type: item | |
39764ef8 | 24826 | #: doc/guix.texi:11345 |
b9fe8fd6 JL |
24827 | #, no-wrap |
24828 | msgid "@code{root-login?} (default: @code{#f})" | |
24829 | msgstr "" | |
24830 | ||
24831 | #. type: table | |
39764ef8 | 24832 | #: doc/guix.texi:11347 |
b9fe8fd6 JL |
24833 | msgid "Whether to allow @code{root} logins." |
24834 | msgstr "" | |
24835 | ||
24836 | #. type: table | |
39764ef8 | 24837 | #: doc/guix.texi:11350 |
b9fe8fd6 JL |
24838 | msgid "Whether to allow empty passwords." |
24839 | msgstr "" | |
24840 | ||
24841 | #. type: table | |
39764ef8 | 24842 | #: doc/guix.texi:11353 |
b9fe8fd6 JL |
24843 | msgid "Whether to enable password-based authentication." |
24844 | msgstr "" | |
24845 | ||
24846 | #. type: defvr | |
39764ef8 | 24847 | #: doc/guix.texi:11356 |
b9fe8fd6 JL |
24848 | #, no-wrap |
24849 | msgid "{Scheme Variable} %facebook-host-aliases" | |
24850 | msgstr "" | |
24851 | ||
24852 | #. type: defvr | |
39764ef8 | 24853 | #: doc/guix.texi:11362 |
b9fe8fd6 JL |
24854 | msgid "" |
24855 | "This variable contains a string for use in @file{/etc/hosts} (@pxref{Host " | |
24856 | "Names,,, libc, The GNU C Library Reference Manual}). Each line contains a " | |
24857 | "entry that maps a known server name of the Facebook on-line service---e.g., " | |
24858 | "@code{www.facebook.com}---to the local host---@code{127.0.0.1} or its IPv6 " | |
24859 | "equivalent, @code{::1}." | |
24860 | msgstr "" | |
24861 | ||
24862 | #. type: defvr | |
39764ef8 | 24863 | #: doc/guix.texi:11366 |
b9fe8fd6 JL |
24864 | msgid "" |
24865 | "This variable is typically used in the @code{hosts-file} field of an " | |
24866 | "@code{operating-system} declaration (@pxref{operating-system Reference, " | |
24867 | "@file{/etc/hosts}}):" | |
24868 | msgstr "" | |
24869 | ||
24870 | #. type: example | |
39764ef8 | 24871 | #: doc/guix.texi:11369 |
b9fe8fd6 JL |
24872 | #, no-wrap |
24873 | msgid "" | |
24874 | "(use-modules (gnu) (guix))\n" | |
24875 | "\n" | |
24876 | msgstr "" | |
24877 | ||
24878 | #. type: example | |
39764ef8 | 24879 | #: doc/guix.texi:11379 |
b9fe8fd6 JL |
24880 | #, no-wrap |
24881 | msgid "" | |
24882 | "(operating-system\n" | |
24883 | " (host-name \"mymachine\")\n" | |
24884 | " ;; ...\n" | |
24885 | " (hosts-file\n" | |
24886 | " ;; Create a /etc/hosts file with aliases for \"localhost\"\n" | |
24887 | " ;; and \"mymachine\", as well as for Facebook servers.\n" | |
24888 | " (plain-file \"hosts\"\n" | |
24889 | " (string-append (local-host-aliases host-name)\n" | |
24890 | " %facebook-host-aliases))))\n" | |
24891 | msgstr "" | |
24892 | ||
24893 | #. type: defvr | |
39764ef8 | 24894 | #: doc/guix.texi:11383 |
b9fe8fd6 JL |
24895 | msgid "" |
24896 | "This mechanism can prevent programs running locally, such as Web browsers, " | |
24897 | "from accessing Facebook." | |
24898 | msgstr "" | |
24899 | ||
24900 | #. type: Plain text | |
39764ef8 | 24901 | #: doc/guix.texi:11386 |
b9fe8fd6 JL |
24902 | msgid "The @code{(gnu services avahi)} provides the following definition." |
24903 | msgstr "" | |
24904 | ||
24905 | #. type: deffn | |
39764ef8 | 24906 | #: doc/guix.texi:11387 |
b9fe8fd6 JL |
24907 | #, no-wrap |
24908 | msgid "{Scheme Procedure} avahi-service [#:avahi @var{avahi}] @" | |
24909 | msgstr "" | |
24910 | ||
24911 | #. type: deffn | |
39764ef8 | 24912 | #: doc/guix.texi:11399 |
b9fe8fd6 JL |
24913 | msgid "" |
24914 | "[#:host-name #f] [#:publish? #t] [#:ipv4? #t] @ [#:ipv6? #t] [#:wide-area? " | |
24915 | "#f] @ [#:domains-to-browse '()] [#:debug? #f] Return a service that runs " | |
24916 | "@command{avahi-daemon}, a system-wide mDNS/DNS-SD responder that allows for " | |
24917 | "service discovery and \"zero-configuration\" host name lookups (see " | |
24918 | "@uref{http://avahi.org/}), and extends the name service cache daemon (nscd) " | |
39764ef8 JL |
24919 | "so that it can resolve @code{.local} host names using @uref{http://0pointer." |
24920 | "de/lennart/projects/nss-mdns/, nss-mdns}. Additionally, add the @var{avahi} " | |
24921 | "package to the system profile so that commands such as @command{avahi-" | |
24922 | "browse} are directly usable." | |
b9fe8fd6 JL |
24923 | msgstr "" |
24924 | ||
24925 | #. type: deffn | |
39764ef8 | 24926 | #: doc/guix.texi:11402 |
b9fe8fd6 JL |
24927 | msgid "" |
24928 | "If @var{host-name} is different from @code{#f}, use that as the host name to " | |
24929 | "publish for this machine; otherwise, use the machine's actual host name." | |
24930 | msgstr "" | |
24931 | ||
24932 | #. type: deffn | |
39764ef8 | 24933 | #: doc/guix.texi:11406 |
b9fe8fd6 JL |
24934 | msgid "" |
24935 | "When @var{publish?} is true, publishing of host names and services is " | |
24936 | "allowed; in particular, avahi-daemon will publish the machine's host name " | |
24937 | "and IP address via mDNS on the local network." | |
24938 | msgstr "" | |
24939 | ||
24940 | #. type: deffn | |
39764ef8 | 24941 | #: doc/guix.texi:11408 |
b9fe8fd6 JL |
24942 | msgid "When @var{wide-area?} is true, DNS-SD over unicast DNS is enabled." |
24943 | msgstr "" | |
24944 | ||
24945 | #. type: deffn | |
39764ef8 | 24946 | #: doc/guix.texi:11411 |
b9fe8fd6 | 24947 | msgid "" |
39764ef8 JL |
24948 | "Boolean values @var{ipv4?} and @var{ipv6?} determine whether to use IPv4/" |
24949 | "IPv6 sockets." | |
b9fe8fd6 JL |
24950 | msgstr "" |
24951 | ||
24952 | #. type: deffn | |
39764ef8 | 24953 | #: doc/guix.texi:11413 |
b9fe8fd6 JL |
24954 | #, no-wrap |
24955 | msgid "{Scheme Variable} openvswitch-service-type" | |
24956 | msgstr "" | |
24957 | ||
24958 | #. type: deffn | |
39764ef8 | 24959 | #: doc/guix.texi:11417 |
b9fe8fd6 JL |
24960 | msgid "" |
24961 | "This is the type of the @uref{http://www.openvswitch.org, Open vSwitch} " | |
24962 | "service, whose value should be an @code{openvswitch-configuration} object." | |
24963 | msgstr "" | |
24964 | ||
24965 | #. type: deftp | |
39764ef8 | 24966 | #: doc/guix.texi:11419 |
b9fe8fd6 JL |
24967 | #, no-wrap |
24968 | msgid "{Data Type} openvswitch-configuration" | |
24969 | msgstr "" | |
24970 | ||
24971 | #. type: deftp | |
39764ef8 | 24972 | #: doc/guix.texi:11423 |
b9fe8fd6 JL |
24973 | msgid "" |
24974 | "Data type representing the configuration of Open vSwitch, a multilayer " | |
24975 | "virtual switch which is designed to enable massive network automation " | |
24976 | "through programmatic extension." | |
24977 | msgstr "" | |
24978 | ||
24979 | #. type: item | |
39764ef8 | 24980 | #: doc/guix.texi:11425 |
b9fe8fd6 JL |
24981 | #, no-wrap |
24982 | msgid "@code{package} (default: @var{openvswitch})" | |
24983 | msgstr "" | |
24984 | ||
24985 | #. type: table | |
39764ef8 | 24986 | #: doc/guix.texi:11427 |
b9fe8fd6 JL |
24987 | msgid "Package object of the Open vSwitch." |
24988 | msgstr "" | |
24989 | ||
24990 | #. type: cindex | |
39764ef8 | 24991 | #: doc/guix.texi:11434 |
b9fe8fd6 JL |
24992 | #, no-wrap |
24993 | msgid "X11" | |
24994 | msgstr "" | |
24995 | ||
24996 | #. type: cindex | |
39764ef8 | 24997 | #: doc/guix.texi:11435 |
b9fe8fd6 JL |
24998 | #, no-wrap |
24999 | msgid "X Window System" | |
25000 | msgstr "" | |
25001 | ||
25002 | #. type: cindex | |
39764ef8 | 25003 | #: doc/guix.texi:11436 doc/guix.texi:11613 |
b9fe8fd6 JL |
25004 | #, no-wrap |
25005 | msgid "login manager" | |
25006 | msgstr "" | |
25007 | ||
25008 | #. type: Plain text | |
39764ef8 | 25009 | #: doc/guix.texi:11441 |
b9fe8fd6 JL |
25010 | msgid "" |
25011 | "Support for the X Window graphical display system---specifically Xorg---is " | |
25012 | "provided by the @code{(gnu services xorg)} module. Note that there is no " | |
25013 | "@code{xorg-service} procedure. Instead, the X server is started by the " | |
25014 | "@dfn{login manager}, by default SLiM." | |
25015 | msgstr "" | |
25016 | ||
25017 | #. type: cindex | |
39764ef8 | 25018 | #: doc/guix.texi:11442 |
b9fe8fd6 JL |
25019 | #, no-wrap |
25020 | msgid "window manager" | |
25021 | msgstr "" | |
25022 | ||
25023 | #. type: Plain text | |
39764ef8 | 25024 | #: doc/guix.texi:11447 |
b9fe8fd6 JL |
25025 | msgid "" |
25026 | "To use X11, you must install at least one @dfn{window manager}---for example " | |
25027 | "the @code{windowmaker} or @code{openbox} packages---preferably by adding it " | |
25028 | "to the @code{packages} field of your operating system definition " | |
25029 | "(@pxref{operating-system Reference, system-wide packages})." | |
25030 | msgstr "" | |
25031 | ||
25032 | #. type: defvr | |
39764ef8 | 25033 | #: doc/guix.texi:11448 |
b9fe8fd6 JL |
25034 | #, no-wrap |
25035 | msgid "{Scheme Variable} slim-service-type" | |
25036 | msgstr "" | |
25037 | ||
25038 | #. type: defvr | |
39764ef8 | 25039 | #: doc/guix.texi:11450 |
b9fe8fd6 JL |
25040 | msgid "This is the type for the SLiM graphical login manager for X11." |
25041 | msgstr "" | |
25042 | ||
25043 | #. type: cindex | |
39764ef8 | 25044 | #: doc/guix.texi:11451 |
b9fe8fd6 JL |
25045 | #, no-wrap |
25046 | msgid "session types (X11)" | |
25047 | msgstr "" | |
25048 | ||
25049 | #. type: cindex | |
39764ef8 | 25050 | #: doc/guix.texi:11452 |
b9fe8fd6 JL |
25051 | #, no-wrap |
25052 | msgid "X11 session types" | |
25053 | msgstr "" | |
25054 | ||
25055 | #. type: defvr | |
39764ef8 | 25056 | #: doc/guix.texi:11459 |
b9fe8fd6 JL |
25057 | msgid "" |
25058 | "SLiM looks for @dfn{session types} described by the @file{.desktop} files in " | |
25059 | "@file{/run/current-system/profile/share/xsessions} and allows users to " | |
25060 | "choose a session from the log-in screen using @kbd{F1}. Packages such as " | |
25061 | "@code{xfce}, @code{sawfish}, and @code{ratpoison} provide @file{.desktop} " | |
25062 | "files; adding them to the system-wide set of packages automatically makes " | |
25063 | "them available at the log-in screen." | |
25064 | msgstr "" | |
25065 | ||
25066 | #. type: defvr | |
39764ef8 | 25067 | #: doc/guix.texi:11463 |
b9fe8fd6 | 25068 | msgid "" |
39764ef8 JL |
25069 | "In addition, @file{~/.xsession} files are honored. When available, @file{~/." |
25070 | "xsession} must be an executable that starts a window manager and/or other X " | |
25071 | "clients." | |
b9fe8fd6 JL |
25072 | msgstr "" |
25073 | ||
25074 | #. type: deftp | |
39764ef8 | 25075 | #: doc/guix.texi:11465 |
b9fe8fd6 JL |
25076 | #, no-wrap |
25077 | msgid "{Data Type} slim-configuration" | |
25078 | msgstr "" | |
25079 | ||
25080 | #. type: deftp | |
39764ef8 | 25081 | #: doc/guix.texi:11467 |
b9fe8fd6 JL |
25082 | msgid "Data type representing the configuration of @code{slim-service-type}." |
25083 | msgstr "" | |
25084 | ||
25085 | #. type: table | |
39764ef8 | 25086 | #: doc/guix.texi:11471 |
b9fe8fd6 JL |
25087 | msgid "Whether to allow logins with empty passwords." |
25088 | msgstr "" | |
25089 | ||
25090 | #. type: item | |
39764ef8 | 25091 | #: doc/guix.texi:11472 |
b9fe8fd6 JL |
25092 | #, no-wrap |
25093 | msgid "@code{auto-login?} (default: @code{#f})" | |
25094 | msgstr "" | |
25095 | ||
25096 | #. type: itemx | |
39764ef8 | 25097 | #: doc/guix.texi:11473 |
b9fe8fd6 JL |
25098 | #, no-wrap |
25099 | msgid "@code{default-user} (default: @code{\"\"})" | |
25100 | msgstr "" | |
25101 | ||
25102 | #. type: table | |
39764ef8 | 25103 | #: doc/guix.texi:11475 |
b9fe8fd6 JL |
25104 | msgid "When @code{auto-login?} is false, SLiM presents a log-in screen." |
25105 | msgstr "" | |
25106 | ||
25107 | #. type: table | |
39764ef8 | 25108 | #: doc/guix.texi:11478 |
b9fe8fd6 | 25109 | msgid "" |
39764ef8 JL |
25110 | "When @code{auto-login?} is true, SLiM logs in directly as @code{default-" |
25111 | "user}." | |
b9fe8fd6 JL |
25112 | msgstr "" |
25113 | ||
25114 | #. type: item | |
39764ef8 | 25115 | #: doc/guix.texi:11479 |
b9fe8fd6 JL |
25116 | #, no-wrap |
25117 | msgid "@code{theme} (default: @code{%default-slim-theme})" | |
25118 | msgstr "" | |
25119 | ||
25120 | #. type: itemx | |
39764ef8 | 25121 | #: doc/guix.texi:11480 |
b9fe8fd6 JL |
25122 | #, no-wrap |
25123 | msgid "@code{theme-name} (default: @code{%default-slim-theme-name})" | |
25124 | msgstr "" | |
25125 | ||
25126 | #. type: table | |
39764ef8 | 25127 | #: doc/guix.texi:11482 |
b9fe8fd6 JL |
25128 | msgid "The graphical theme to use and its name." |
25129 | msgstr "" | |
25130 | ||
25131 | #. type: item | |
39764ef8 | 25132 | #: doc/guix.texi:11483 |
b9fe8fd6 JL |
25133 | #, no-wrap |
25134 | msgid "@code{auto-login-session} (default: @code{#f})" | |
25135 | msgstr "" | |
25136 | ||
25137 | #. type: table | |
39764ef8 | 25138 | #: doc/guix.texi:11486 |
b9fe8fd6 JL |
25139 | msgid "" |
25140 | "If true, this must be the name of the executable to start as the default " | |
25141 | "session---e.g., @code{(file-append windowmaker \"/bin/windowmaker\")}." | |
25142 | msgstr "" | |
25143 | ||
25144 | #. type: table | |
39764ef8 | 25145 | #: doc/guix.texi:11490 |
b9fe8fd6 JL |
25146 | msgid "" |
25147 | "If false, a session described by one of the available @file{.desktop} files " | |
25148 | "in @code{/run/current-system/profile} and @code{~/.guix-profile} will be " | |
25149 | "used." | |
25150 | msgstr "" | |
25151 | ||
25152 | #. type: quotation | |
39764ef8 | 25153 | #: doc/guix.texi:11495 |
b9fe8fd6 JL |
25154 | msgid "" |
25155 | "You must install at least one window manager in the system profile or in " | |
25156 | "your user profile. Failing to do that, if @code{auto-login-session} is " | |
25157 | "false, you will be unable to log in." | |
25158 | msgstr "" | |
25159 | ||
25160 | #. type: item | |
39764ef8 | 25161 | #: doc/guix.texi:11497 |
b9fe8fd6 JL |
25162 | #, no-wrap |
25163 | msgid "@code{startx} (default: @code{(xorg-start-command)})" | |
25164 | msgstr "" | |
25165 | ||
25166 | #. type: table | |
39764ef8 | 25167 | #: doc/guix.texi:11499 |
b9fe8fd6 JL |
25168 | msgid "The command used to start the X11 graphical server." |
25169 | msgstr "" | |
25170 | ||
25171 | #. type: item | |
39764ef8 | 25172 | #: doc/guix.texi:11500 |
b9fe8fd6 JL |
25173 | #, no-wrap |
25174 | msgid "@code{xauth} (default: @code{xauth})" | |
25175 | msgstr "" | |
25176 | ||
25177 | #. type: table | |
39764ef8 | 25178 | #: doc/guix.texi:11502 |
b9fe8fd6 JL |
25179 | msgid "The XAuth package to use." |
25180 | msgstr "" | |
25181 | ||
25182 | #. type: item | |
39764ef8 | 25183 | #: doc/guix.texi:11503 |
b9fe8fd6 JL |
25184 | #, no-wrap |
25185 | msgid "@code{shepherd} (default: @code{shepherd})" | |
25186 | msgstr "" | |
25187 | ||
25188 | #. type: table | |
39764ef8 JL |
25189 | #: doc/guix.texi:11506 |
25190 | msgid "" | |
25191 | "The Shepherd package used when invoking @command{halt} and @command{reboot}." | |
b9fe8fd6 JL |
25192 | msgstr "" |
25193 | ||
25194 | #. type: item | |
39764ef8 | 25195 | #: doc/guix.texi:11507 |
b9fe8fd6 JL |
25196 | #, no-wrap |
25197 | msgid "@code{sessreg} (default: @code{sessreg})" | |
25198 | msgstr "" | |
25199 | ||
25200 | #. type: table | |
39764ef8 | 25201 | #: doc/guix.texi:11509 |
b9fe8fd6 JL |
25202 | msgid "The sessreg package used in order to register the session." |
25203 | msgstr "" | |
25204 | ||
25205 | #. type: item | |
39764ef8 | 25206 | #: doc/guix.texi:11510 |
b9fe8fd6 JL |
25207 | #, no-wrap |
25208 | msgid "@code{slim} (default: @code{slim})" | |
25209 | msgstr "" | |
25210 | ||
25211 | #. type: table | |
39764ef8 | 25212 | #: doc/guix.texi:11512 |
b9fe8fd6 JL |
25213 | msgid "The SLiM package to use." |
25214 | msgstr "" | |
25215 | ||
25216 | #. type: defvr | |
39764ef8 | 25217 | #: doc/guix.texi:11515 doc/guix.texi:20288 |
b9fe8fd6 JL |
25218 | #, no-wrap |
25219 | msgid "{Scheme Variable} %default-theme" | |
25220 | msgstr "" | |
25221 | ||
25222 | #. type: defvrx | |
39764ef8 | 25223 | #: doc/guix.texi:11516 |
b9fe8fd6 JL |
25224 | #, no-wrap |
25225 | msgid "{Scheme Variable} %default-theme-name" | |
25226 | msgstr "" | |
25227 | ||
25228 | #. type: defvr | |
39764ef8 | 25229 | #: doc/guix.texi:11518 |
b9fe8fd6 JL |
25230 | msgid "The default SLiM theme and its name." |
25231 | msgstr "" | |
25232 | ||
25233 | #. type: deftp | |
39764ef8 | 25234 | #: doc/guix.texi:11521 |
b9fe8fd6 JL |
25235 | #, no-wrap |
25236 | msgid "{Data Type} sddm-configuration" | |
25237 | msgstr "" | |
25238 | ||
25239 | #. type: deftp | |
39764ef8 | 25240 | #: doc/guix.texi:11523 |
b9fe8fd6 JL |
25241 | msgid "This is the data type representing the sddm service configuration." |
25242 | msgstr "" | |
25243 | ||
25244 | #. type: item | |
39764ef8 | 25245 | #: doc/guix.texi:11525 |
b9fe8fd6 JL |
25246 | #, no-wrap |
25247 | msgid "@code{display-server} (default: \"x11\")" | |
25248 | msgstr "" | |
25249 | ||
25250 | #. type: table | |
39764ef8 | 25251 | #: doc/guix.texi:11528 |
b9fe8fd6 JL |
25252 | msgid "" |
25253 | "Select display server to use for the greeter. Valid values are \"x11\" or " | |
25254 | "\"wayland\"." | |
25255 | msgstr "" | |
25256 | ||
25257 | #. type: item | |
39764ef8 | 25258 | #: doc/guix.texi:11529 |
b9fe8fd6 JL |
25259 | #, no-wrap |
25260 | msgid "@code{numlock} (default: \"on\")" | |
25261 | msgstr "" | |
25262 | ||
25263 | #. type: table | |
39764ef8 | 25264 | #: doc/guix.texi:11531 |
b9fe8fd6 JL |
25265 | msgid "Valid values are \"on\", \"off\" or \"none\"." |
25266 | msgstr "" | |
25267 | ||
25268 | #. type: item | |
39764ef8 | 25269 | #: doc/guix.texi:11532 |
b9fe8fd6 | 25270 | #, no-wrap |
39764ef8 | 25271 | msgid "@code{halt-command} (default @code{#~(string-apppend #$shepherd \"/sbin/halt\")})" |
b9fe8fd6 JL |
25272 | msgstr "" |
25273 | ||
25274 | #. type: table | |
39764ef8 | 25275 | #: doc/guix.texi:11534 |
b9fe8fd6 JL |
25276 | msgid "Command to run when halting." |
25277 | msgstr "" | |
25278 | ||
25279 | #. type: item | |
39764ef8 | 25280 | #: doc/guix.texi:11535 |
b9fe8fd6 | 25281 | #, no-wrap |
39764ef8 | 25282 | msgid "@code{reboot-command} (default @code{#~(string-append #$shepherd \"/sbin/reboot\")})" |
b9fe8fd6 JL |
25283 | msgstr "" |
25284 | ||
25285 | #. type: table | |
39764ef8 | 25286 | #: doc/guix.texi:11537 |
b9fe8fd6 JL |
25287 | msgid "Command to run when rebooting." |
25288 | msgstr "" | |
25289 | ||
25290 | #. type: item | |
39764ef8 | 25291 | #: doc/guix.texi:11538 |
b9fe8fd6 JL |
25292 | #, no-wrap |
25293 | msgid "@code{theme} (default \"maldives\")" | |
25294 | msgstr "" | |
25295 | ||
25296 | #. type: table | |
39764ef8 | 25297 | #: doc/guix.texi:11540 |
b9fe8fd6 | 25298 | msgid "" |
39764ef8 | 25299 | "Theme to use. Default themes provided by SDDM are \"elarun\" or \"maldives\"." |
b9fe8fd6 JL |
25300 | msgstr "" |
25301 | ||
25302 | #. type: item | |
39764ef8 | 25303 | #: doc/guix.texi:11541 |
b9fe8fd6 | 25304 | #, no-wrap |
39764ef8 | 25305 | msgid "@code{themes-directory} (default \"/run/current-system/profile/share/sddm/themes\")" |
b9fe8fd6 JL |
25306 | msgstr "" |
25307 | ||
25308 | #. type: table | |
39764ef8 | 25309 | #: doc/guix.texi:11543 |
b9fe8fd6 JL |
25310 | msgid "Directory to look for themes." |
25311 | msgstr "" | |
25312 | ||
25313 | #. type: item | |
39764ef8 | 25314 | #: doc/guix.texi:11544 |
b9fe8fd6 | 25315 | #, no-wrap |
39764ef8 | 25316 | msgid "@code{faces-directory} (default \"/run/current-system/profile/share/sddm/faces\")" |
b9fe8fd6 JL |
25317 | msgstr "" |
25318 | ||
25319 | #. type: table | |
39764ef8 | 25320 | #: doc/guix.texi:11546 |
b9fe8fd6 JL |
25321 | msgid "Directory to look for faces." |
25322 | msgstr "" | |
25323 | ||
25324 | #. type: item | |
39764ef8 | 25325 | #: doc/guix.texi:11547 |
b9fe8fd6 JL |
25326 | #, no-wrap |
25327 | msgid "@code{default-path} (default \"/run/current-system/profile/bin\")" | |
25328 | msgstr "" | |
25329 | ||
25330 | #. type: table | |
39764ef8 | 25331 | #: doc/guix.texi:11549 |
b9fe8fd6 JL |
25332 | msgid "Default PATH to use." |
25333 | msgstr "" | |
25334 | ||
25335 | #. type: item | |
39764ef8 | 25336 | #: doc/guix.texi:11550 |
b9fe8fd6 JL |
25337 | #, no-wrap |
25338 | msgid "@code{minimum-uid} (default 1000)" | |
25339 | msgstr "" | |
25340 | ||
25341 | #. type: table | |
39764ef8 | 25342 | #: doc/guix.texi:11552 |
b9fe8fd6 JL |
25343 | msgid "Minimum UID to display in SDDM." |
25344 | msgstr "" | |
25345 | ||
25346 | #. type: item | |
39764ef8 | 25347 | #: doc/guix.texi:11553 |
b9fe8fd6 JL |
25348 | #, no-wrap |
25349 | msgid "@code{maximum-uid} (default 2000)" | |
25350 | msgstr "" | |
25351 | ||
25352 | #. type: table | |
39764ef8 | 25353 | #: doc/guix.texi:11555 |
b9fe8fd6 JL |
25354 | msgid "Maximum UID to display in SDDM" |
25355 | msgstr "" | |
25356 | ||
25357 | #. type: item | |
39764ef8 | 25358 | #: doc/guix.texi:11556 |
b9fe8fd6 JL |
25359 | #, no-wrap |
25360 | msgid "@code{remember-last-user?} (default #t)" | |
25361 | msgstr "" | |
25362 | ||
25363 | #. type: table | |
39764ef8 | 25364 | #: doc/guix.texi:11558 |
b9fe8fd6 JL |
25365 | msgid "Remember last user." |
25366 | msgstr "" | |
25367 | ||
25368 | #. type: item | |
39764ef8 | 25369 | #: doc/guix.texi:11559 |
b9fe8fd6 JL |
25370 | #, no-wrap |
25371 | msgid "@code{remember-last-session?} (default #t)" | |
25372 | msgstr "" | |
25373 | ||
25374 | #. type: table | |
39764ef8 | 25375 | #: doc/guix.texi:11561 |
b9fe8fd6 JL |
25376 | msgid "Remember last session." |
25377 | msgstr "" | |
25378 | ||
25379 | #. type: item | |
39764ef8 | 25380 | #: doc/guix.texi:11562 |
b9fe8fd6 JL |
25381 | #, no-wrap |
25382 | msgid "@code{hide-users} (default \"\")" | |
25383 | msgstr "" | |
25384 | ||
25385 | #. type: table | |
39764ef8 | 25386 | #: doc/guix.texi:11564 |
b9fe8fd6 JL |
25387 | msgid "Usernames to hide from SDDM greeter." |
25388 | msgstr "" | |
25389 | ||
25390 | #. type: item | |
39764ef8 | 25391 | #: doc/guix.texi:11565 |
b9fe8fd6 | 25392 | #, no-wrap |
39764ef8 | 25393 | msgid "@code{hide-shells} (default @code{#~(string-append #$shadow \"/sbin/nologin\")})" |
b9fe8fd6 JL |
25394 | msgstr "" |
25395 | ||
25396 | #. type: table | |
39764ef8 | 25397 | #: doc/guix.texi:11567 |
b9fe8fd6 JL |
25398 | msgid "Users with shells listed will be hidden from the SDDM greeter." |
25399 | msgstr "" | |
25400 | ||
25401 | #. type: item | |
39764ef8 | 25402 | #: doc/guix.texi:11568 |
b9fe8fd6 | 25403 | #, no-wrap |
39764ef8 | 25404 | msgid "@code{session-command} (default @code{#~(string-append #$sddm \"/share/sddm/scripts/wayland-session\")})" |
b9fe8fd6 JL |
25405 | msgstr "" |
25406 | ||
25407 | #. type: table | |
39764ef8 | 25408 | #: doc/guix.texi:11570 |
b9fe8fd6 JL |
25409 | msgid "Script to run before starting a wayland session." |
25410 | msgstr "" | |
25411 | ||
25412 | #. type: item | |
39764ef8 | 25413 | #: doc/guix.texi:11571 |
b9fe8fd6 | 25414 | #, no-wrap |
39764ef8 | 25415 | msgid "@code{sessions-directory} (default \"/run/current-system/profile/share/wayland-sessions\")" |
b9fe8fd6 JL |
25416 | msgstr "" |
25417 | ||
25418 | #. type: table | |
39764ef8 | 25419 | #: doc/guix.texi:11573 |
b9fe8fd6 JL |
25420 | msgid "Directory to look for desktop files starting wayland sessions." |
25421 | msgstr "" | |
25422 | ||
25423 | #. type: item | |
39764ef8 | 25424 | #: doc/guix.texi:11574 |
b9fe8fd6 JL |
25425 | #, no-wrap |
25426 | msgid "@code{xorg-server-path} (default @code{xorg-start-command})" | |
25427 | msgstr "" | |
25428 | ||
25429 | #. type: table | |
39764ef8 | 25430 | #: doc/guix.texi:11576 |
b9fe8fd6 JL |
25431 | msgid "Path to xorg-server." |
25432 | msgstr "" | |
25433 | ||
25434 | #. type: item | |
39764ef8 | 25435 | #: doc/guix.texi:11577 |
b9fe8fd6 JL |
25436 | #, no-wrap |
25437 | msgid "@code{xauth-path} (default @code{#~(string-append #$xauth \"/bin/xauth\")})" | |
25438 | msgstr "" | |
25439 | ||
25440 | #. type: table | |
39764ef8 | 25441 | #: doc/guix.texi:11579 |
b9fe8fd6 JL |
25442 | msgid "Path to xauth." |
25443 | msgstr "" | |
25444 | ||
25445 | #. type: item | |
39764ef8 | 25446 | #: doc/guix.texi:11580 |
b9fe8fd6 | 25447 | #, no-wrap |
39764ef8 | 25448 | msgid "@code{xephyr-path} (default @code{#~(string-append #$xorg-server \"/bin/Xephyr\")})" |
b9fe8fd6 JL |
25449 | msgstr "" |
25450 | ||
25451 | #. type: table | |
39764ef8 | 25452 | #: doc/guix.texi:11582 |
b9fe8fd6 JL |
25453 | msgid "Path to Xephyr." |
25454 | msgstr "" | |
25455 | ||
25456 | #. type: item | |
39764ef8 | 25457 | #: doc/guix.texi:11583 |
b9fe8fd6 | 25458 | #, no-wrap |
39764ef8 | 25459 | msgid "@code{xdisplay-start} (default @code{#~(string-append #$sddm \"/share/sddm/scripts/Xsetup\")})" |
b9fe8fd6 JL |
25460 | msgstr "" |
25461 | ||
25462 | #. type: table | |
39764ef8 | 25463 | #: doc/guix.texi:11585 |
b9fe8fd6 JL |
25464 | msgid "Script to run after starting xorg-server." |
25465 | msgstr "" | |
25466 | ||
25467 | #. type: item | |
39764ef8 | 25468 | #: doc/guix.texi:11586 |
b9fe8fd6 | 25469 | #, no-wrap |
39764ef8 | 25470 | msgid "@code{xdisplay-stop} (default @code{#~(string-append #$sddm \"/share/sddm/scripts/Xstop\")})" |
b9fe8fd6 JL |
25471 | msgstr "" |
25472 | ||
25473 | #. type: table | |
39764ef8 | 25474 | #: doc/guix.texi:11588 |
b9fe8fd6 JL |
25475 | msgid "Script to run before stopping xorg-server." |
25476 | msgstr "" | |
25477 | ||
25478 | #. type: item | |
39764ef8 | 25479 | #: doc/guix.texi:11589 |
b9fe8fd6 JL |
25480 | #, no-wrap |
25481 | msgid "@code{xsession-command} (default: @code{xinitr })" | |
25482 | msgstr "" | |
25483 | ||
25484 | #. type: table | |
39764ef8 | 25485 | #: doc/guix.texi:11591 |
b9fe8fd6 JL |
25486 | msgid "Script to run before starting a X session." |
25487 | msgstr "" | |
25488 | ||
25489 | #. type: item | |
39764ef8 | 25490 | #: doc/guix.texi:11592 |
b9fe8fd6 | 25491 | #, no-wrap |
39764ef8 | 25492 | msgid "@code{xsessions-directory} (default: \"/run/current-system/profile/share/xsessions\")" |
b9fe8fd6 JL |
25493 | msgstr "" |
25494 | ||
25495 | #. type: table | |
39764ef8 | 25496 | #: doc/guix.texi:11594 |
b9fe8fd6 JL |
25497 | msgid "Directory to look for desktop files starting X sessions." |
25498 | msgstr "" | |
25499 | ||
25500 | #. type: item | |
39764ef8 | 25501 | #: doc/guix.texi:11595 |
b9fe8fd6 JL |
25502 | #, no-wrap |
25503 | msgid "@code{minimum-vt} (default: 7)" | |
25504 | msgstr "" | |
25505 | ||
25506 | #. type: table | |
39764ef8 | 25507 | #: doc/guix.texi:11597 |
b9fe8fd6 JL |
25508 | msgid "Minimum VT to use." |
25509 | msgstr "" | |
25510 | ||
25511 | #. type: item | |
39764ef8 | 25512 | #: doc/guix.texi:11598 |
b9fe8fd6 JL |
25513 | #, no-wrap |
25514 | msgid "@code{xserver-arguments} (default \"-nolisten tcp\")" | |
25515 | msgstr "" | |
25516 | ||
25517 | #. type: table | |
39764ef8 | 25518 | #: doc/guix.texi:11600 |
b9fe8fd6 JL |
25519 | msgid "Arguments to pass to xorg-server." |
25520 | msgstr "" | |
25521 | ||
25522 | #. type: item | |
39764ef8 | 25523 | #: doc/guix.texi:11601 |
b9fe8fd6 JL |
25524 | #, no-wrap |
25525 | msgid "@code{auto-login-user} (default \"\")" | |
25526 | msgstr "" | |
25527 | ||
25528 | #. type: table | |
39764ef8 | 25529 | #: doc/guix.texi:11603 |
b9fe8fd6 JL |
25530 | msgid "User to use for auto-login." |
25531 | msgstr "" | |
25532 | ||
25533 | #. type: item | |
39764ef8 | 25534 | #: doc/guix.texi:11604 |
b9fe8fd6 JL |
25535 | #, no-wrap |
25536 | msgid "@code{auto-login-session} (default \"\")" | |
25537 | msgstr "" | |
25538 | ||
25539 | #. type: table | |
39764ef8 | 25540 | #: doc/guix.texi:11606 |
b9fe8fd6 JL |
25541 | msgid "Desktop file to use for auto-login." |
25542 | msgstr "" | |
25543 | ||
25544 | #. type: item | |
39764ef8 | 25545 | #: doc/guix.texi:11607 |
b9fe8fd6 JL |
25546 | #, no-wrap |
25547 | msgid "@code{relogin?} (default #f)" | |
25548 | msgstr "" | |
25549 | ||
25550 | #. type: table | |
39764ef8 | 25551 | #: doc/guix.texi:11609 |
b9fe8fd6 JL |
25552 | msgid "Relogin after logout." |
25553 | msgstr "" | |
25554 | ||
25555 | #. type: cindex | |
39764ef8 | 25556 | #: doc/guix.texi:11614 |
b9fe8fd6 JL |
25557 | #, no-wrap |
25558 | msgid "X11 login" | |
25559 | msgstr "" | |
25560 | ||
25561 | #. type: deffn | |
39764ef8 | 25562 | #: doc/guix.texi:11615 |
b9fe8fd6 JL |
25563 | #, no-wrap |
25564 | msgid "{Scheme Procedure} sddm-service config" | |
25565 | msgstr "" | |
25566 | ||
25567 | #. type: deffn | |
39764ef8 | 25568 | #: doc/guix.texi:11618 |
b9fe8fd6 JL |
25569 | msgid "" |
25570 | "Return a service that spawns the SDDM graphical login manager for config of " | |
25571 | "type @code{<sddm-configuration>}." | |
25572 | msgstr "" | |
25573 | ||
25574 | #. type: example | |
39764ef8 | 25575 | #: doc/guix.texi:11623 |
b9fe8fd6 JL |
25576 | #, no-wrap |
25577 | msgid "" | |
25578 | " (sddm-service (sddm-configuration\n" | |
25579 | " (auto-login-user \"Alice\")\n" | |
25580 | " (auto-login-session \"xfce.desktop\")))\n" | |
25581 | msgstr "" | |
25582 | ||
25583 | #. type: deffn | |
39764ef8 | 25584 | #: doc/guix.texi:11626 |
b9fe8fd6 JL |
25585 | #, no-wrap |
25586 | msgid "{Scheme Procedure} xorg-start-command [#:guile] @" | |
25587 | msgstr "" | |
25588 | ||
25589 | #. type: deffn | |
39764ef8 | 25590 | #: doc/guix.texi:11635 |
b9fe8fd6 | 25591 | msgid "" |
39764ef8 JL |
25592 | "[#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ [#:" |
25593 | "configuration-file (xorg-configuration-file @dots{})] @ [#:xorg-server " | |
b9fe8fd6 JL |
25594 | "@var{xorg-server}] Return a @code{startx} script in which @var{modules}, a " |
25595 | "list of X module packages, and @var{fonts}, a list of X font directories, " | |
25596 | "are available. See @code{xorg-wrapper} for more details on the arguments. " | |
25597 | "The result should be used in place of @code{startx}." | |
25598 | msgstr "" | |
25599 | ||
25600 | #. type: deffn | |
39764ef8 | 25601 | #: doc/guix.texi:11637 |
b9fe8fd6 JL |
25602 | msgid "Usually the X server is started by a login manager." |
25603 | msgstr "" | |
25604 | ||
25605 | #. type: deffn | |
39764ef8 | 25606 | #: doc/guix.texi:11639 |
b9fe8fd6 JL |
25607 | #, no-wrap |
25608 | msgid "{Scheme Procedure} xorg-configuration-file @" | |
25609 | msgstr "" | |
25610 | ||
25611 | #. type: deffn | |
39764ef8 | 25612 | #: doc/guix.texi:11645 |
b9fe8fd6 | 25613 | msgid "" |
39764ef8 JL |
25614 | "[#:modules %default-xorg-modules] @ [#:fonts %default-xorg-fonts] @ [#:" |
25615 | "drivers '()] [#:resolutions '()] [#:extra-config '()] Return a configuration " | |
25616 | "file for the Xorg server containing search paths for all the common drivers." | |
b9fe8fd6 JL |
25617 | msgstr "" |
25618 | ||
25619 | #. type: deffn | |
39764ef8 | 25620 | #: doc/guix.texi:11650 |
b9fe8fd6 JL |
25621 | msgid "" |
25622 | "@var{modules} must be a list of @dfn{module packages} loaded by the Xorg " | |
25623 | "server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so " | |
25624 | "on. @var{fonts} must be a list of font directories to add to the server's " | |
25625 | "@dfn{font path}." | |
25626 | msgstr "" | |
25627 | ||
25628 | #. type: deffn | |
39764ef8 | 25629 | #: doc/guix.texi:11654 |
b9fe8fd6 JL |
25630 | msgid "" |
25631 | "@var{drivers} must be either the empty list, in which case Xorg chooses a " | |
25632 | "graphics driver automatically, or a list of driver names that will be tried " | |
25633 | "in this order---e.g., @code{(\"modesetting\" \"vesa\")}." | |
25634 | msgstr "" | |
25635 | ||
25636 | #. type: deffn | |
39764ef8 | 25637 | #: doc/guix.texi:11658 |
b9fe8fd6 JL |
25638 | msgid "" |
25639 | "Likewise, when @var{resolutions} is the empty list, Xorg chooses an " | |
39764ef8 JL |
25640 | "appropriate screen resolution; otherwise, it must be a list of resolutions---" |
25641 | "e.g., @code{((1024 768) (640 480))}." | |
b9fe8fd6 JL |
25642 | msgstr "" |
25643 | ||
25644 | #. type: deffn | |
39764ef8 | 25645 | #: doc/guix.texi:11662 |
b9fe8fd6 JL |
25646 | msgid "" |
25647 | "Last, @var{extra-config} is a list of strings or objects appended to the " | |
25648 | "configuration file. It is used to pass extra text to be added verbatim to " | |
25649 | "the configuration file." | |
25650 | msgstr "" | |
25651 | ||
25652 | #. type: deffn | |
39764ef8 | 25653 | #: doc/guix.texi:11664 |
b9fe8fd6 JL |
25654 | #, no-wrap |
25655 | msgid "{Scheme Procedure} screen-locker-service @var{package} [@var{program}]" | |
25656 | msgstr "" | |
25657 | ||
25658 | #. type: deffn | |
39764ef8 | 25659 | #: doc/guix.texi:11668 |
b9fe8fd6 JL |
25660 | msgid "" |
25661 | "Add @var{package}, a package for a screen locker or screen saver whose " | |
25662 | "command is @var{program}, to the set of setuid programs and add a PAM entry " | |
25663 | "for it. For example:" | |
25664 | msgstr "" | |
25665 | ||
25666 | #. type: lisp | |
39764ef8 | 25667 | #: doc/guix.texi:11671 |
b9fe8fd6 JL |
25668 | #, no-wrap |
25669 | msgid "(screen-locker-service xlockmore \"xlock\")\n" | |
25670 | msgstr "" | |
25671 | ||
25672 | #. type: deffn | |
39764ef8 | 25673 | #: doc/guix.texi:11674 |
b9fe8fd6 JL |
25674 | msgid "makes the good ol' XlockMore usable." |
25675 | msgstr "" | |
25676 | ||
25677 | #. type: cindex | |
39764ef8 | 25678 | #: doc/guix.texi:11680 |
b9fe8fd6 JL |
25679 | #, no-wrap |
25680 | msgid "printer support with CUPS" | |
25681 | msgstr "" | |
25682 | ||
25683 | #. type: Plain text | |
39764ef8 | 25684 | #: doc/guix.texi:11684 |
b9fe8fd6 JL |
25685 | msgid "" |
25686 | "The @code{(gnu services cups)} module provides a Guix service definition for " | |
25687 | "the CUPS printing service. To add printer support to a GuixSD system, add a " | |
25688 | "@code{cups-service} to the operating system definition:" | |
25689 | msgstr "" | |
25690 | ||
25691 | #. type: deffn | |
39764ef8 | 25692 | #: doc/guix.texi:11685 |
b9fe8fd6 JL |
25693 | #, no-wrap |
25694 | msgid "{Scheme Variable} cups-service-type" | |
25695 | msgstr "" | |
25696 | ||
25697 | #. type: deffn | |
39764ef8 | 25698 | #: doc/guix.texi:11689 |
b9fe8fd6 JL |
25699 | msgid "" |
25700 | "The service type for the CUPS print server. Its value should be a valid " | |
25701 | "CUPS configuration (see below). To use the default settings, simply write:" | |
25702 | msgstr "" | |
25703 | ||
25704 | #. type: example | |
39764ef8 | 25705 | #: doc/guix.texi:11691 |
b9fe8fd6 JL |
25706 | #, no-wrap |
25707 | msgid "(service cups-service-type)\n" | |
25708 | msgstr "" | |
25709 | ||
25710 | #. type: Plain text | |
39764ef8 | 25711 | #: doc/guix.texi:11701 |
b9fe8fd6 JL |
25712 | msgid "" |
25713 | "The CUPS configuration controls the basic things about your CUPS " | |
25714 | "installation: what interfaces it listens on, what to do if a print job " | |
25715 | "fails, how much logging to do, and so on. To actually add a printer, you " | |
25716 | "have to visit the @url{http://localhost:631} URL, or use a tool such as " | |
25717 | "GNOME's printer configuration services. By default, configuring a CUPS " | |
25718 | "service will generate a self-signed certificate if needed, for secure " | |
25719 | "connections to the print server." | |
25720 | msgstr "" | |
25721 | ||
25722 | #. type: Plain text | |
39764ef8 | 25723 | #: doc/guix.texi:11706 |
b9fe8fd6 JL |
25724 | msgid "" |
25725 | "Suppose you want to enable the Web interface of CUPS and also add support " | |
25726 | "for Epson printers @i{via} the @code{escpr} package and for HP printers " | |
25727 | "@i{via} the @code{hplip} package. You can do that directly, like this (you " | |
25728 | "need to use the @code{(gnu packages cups)} module):" | |
25729 | msgstr "" | |
25730 | ||
25731 | #. type: example | |
39764ef8 | 25732 | #: doc/guix.texi:11713 |
b9fe8fd6 JL |
25733 | #, no-wrap |
25734 | msgid "" | |
25735 | "(service cups-service-type\n" | |
25736 | " (cups-configuration\n" | |
25737 | " (web-interface? #t)\n" | |
25738 | " (extensions\n" | |
25739 | " (list cups-filters escpr hplip))))\n" | |
25740 | msgstr "" | |
25741 | ||
25742 | #. type: Plain text | |
39764ef8 | 25743 | #: doc/guix.texi:11721 |
b9fe8fd6 JL |
25744 | msgid "" |
25745 | "The available configuration parameters follow. Each parameter definition is " | |
25746 | "preceded by its type; for example, @samp{string-list foo} indicates that the " | |
25747 | "@code{foo} parameter should be specified as a list of strings. There is " | |
25748 | "also a way to specify the configuration as a string, if you have an old " | |
25749 | "@code{cupsd.conf} file that you want to port over from some other system; " | |
25750 | "see the end for more details." | |
25751 | msgstr "" | |
25752 | ||
25753 | #. type: Plain text | |
39764ef8 | 25754 | #: doc/guix.texi:11732 |
b9fe8fd6 JL |
25755 | msgid "Available @code{cups-configuration} fields are:" |
25756 | msgstr "" | |
25757 | ||
25758 | #. type: deftypevr | |
39764ef8 | 25759 | #: doc/guix.texi:11733 |
b9fe8fd6 JL |
25760 | #, no-wrap |
25761 | msgid "{@code{cups-configuration} parameter} package cups" | |
25762 | msgstr "" | |
25763 | ||
25764 | #. type: deftypevr | |
39764ef8 | 25765 | #: doc/guix.texi:11735 doc/guix.texi:12492 |
b9fe8fd6 JL |
25766 | msgid "The CUPS package." |
25767 | msgstr "" | |
25768 | ||
25769 | #. type: deftypevr | |
39764ef8 | 25770 | #: doc/guix.texi:11737 |
b9fe8fd6 JL |
25771 | #, no-wrap |
25772 | msgid "{@code{cups-configuration} parameter} package-list extensions" | |
25773 | msgstr "" | |
25774 | ||
25775 | #. type: deftypevr | |
39764ef8 | 25776 | #: doc/guix.texi:11739 |
b9fe8fd6 JL |
25777 | msgid "Drivers and other extensions to the CUPS package." |
25778 | msgstr "" | |
25779 | ||
25780 | #. type: deftypevr | |
39764ef8 | 25781 | #: doc/guix.texi:11741 |
b9fe8fd6 | 25782 | #, no-wrap |
39764ef8 | 25783 | msgid "{@code{cups-configuration} parameter} files-configuration files-configuration" |
b9fe8fd6 JL |
25784 | msgstr "" |
25785 | ||
25786 | #. type: deftypevr | |
39764ef8 | 25787 | #: doc/guix.texi:11744 |
b9fe8fd6 JL |
25788 | msgid "" |
25789 | "Configuration of where to write logs, what directories to use for print " | |
25790 | "spools, and related privileged configuration parameters." | |
25791 | msgstr "" | |
25792 | ||
25793 | #. type: deftypevr | |
39764ef8 | 25794 | #: doc/guix.texi:11746 |
b9fe8fd6 JL |
25795 | msgid "Available @code{files-configuration} fields are:" |
25796 | msgstr "" | |
25797 | ||
25798 | #. type: deftypevr | |
39764ef8 | 25799 | #: doc/guix.texi:11747 |
b9fe8fd6 JL |
25800 | #, no-wrap |
25801 | msgid "{@code{files-configuration} parameter} log-location access-log" | |
25802 | msgstr "" | |
25803 | ||
25804 | #. type: deftypevr | |
39764ef8 | 25805 | #: doc/guix.texi:11755 |
b9fe8fd6 JL |
25806 | msgid "" |
25807 | "Defines the access log filename. Specifying a blank filename disables " | |
25808 | "access log generation. The value @code{stderr} causes log entries to be " | |
25809 | "sent to the standard error file when the scheduler is running in the " | |
25810 | "foreground, or to the system log daemon when run in the background. The " | |
25811 | "value @code{syslog} causes log entries to be sent to the system log daemon. " | |
25812 | "The server name may be included in filenames using the string @code{%s}, as " | |
25813 | "in @code{/var/log/cups/%s-access_log}." | |
25814 | msgstr "" | |
25815 | ||
25816 | #. type: deftypevr | |
39764ef8 | 25817 | #: doc/guix.texi:11757 |
b9fe8fd6 JL |
25818 | msgid "Defaults to @samp{\"/var/log/cups/access_log\"}." |
25819 | msgstr "" | |
25820 | ||
25821 | #. type: deftypevr | |
39764ef8 | 25822 | #: doc/guix.texi:11759 |
b9fe8fd6 JL |
25823 | #, no-wrap |
25824 | msgid "{@code{files-configuration} parameter} file-name cache-dir" | |
25825 | msgstr "" | |
25826 | ||
25827 | #. type: deftypevr | |
39764ef8 | 25828 | #: doc/guix.texi:11761 |
b9fe8fd6 JL |
25829 | msgid "Where CUPS should cache data." |
25830 | msgstr "" | |
25831 | ||
25832 | #. type: deftypevr | |
39764ef8 | 25833 | #: doc/guix.texi:11763 |
b9fe8fd6 JL |
25834 | msgid "Defaults to @samp{\"/var/cache/cups\"}." |
25835 | msgstr "" | |
25836 | ||
25837 | #. type: deftypevr | |
39764ef8 | 25838 | #: doc/guix.texi:11765 |
b9fe8fd6 JL |
25839 | #, no-wrap |
25840 | msgid "{@code{files-configuration} parameter} string config-file-perm" | |
25841 | msgstr "" | |
25842 | ||
25843 | #. type: deftypevr | |
39764ef8 | 25844 | #: doc/guix.texi:11768 |
b9fe8fd6 JL |
25845 | msgid "" |
25846 | "Specifies the permissions for all configuration files that the scheduler " | |
25847 | "writes." | |
25848 | msgstr "" | |
25849 | ||
25850 | #. type: deftypevr | |
39764ef8 | 25851 | #: doc/guix.texi:11774 |
b9fe8fd6 JL |
25852 | msgid "" |
25853 | "Note that the permissions for the printers.conf file are currently masked to " | |
25854 | "only allow access from the scheduler user (typically root). This is done " | |
25855 | "because printer device URIs sometimes contain sensitive authentication " | |
25856 | "information that should not be generally known on the system. There is no " | |
25857 | "way to disable this security feature." | |
25858 | msgstr "" | |
25859 | ||
25860 | #. type: deftypevr | |
39764ef8 | 25861 | #: doc/guix.texi:11776 |
b9fe8fd6 JL |
25862 | msgid "Defaults to @samp{\"0640\"}." |
25863 | msgstr "" | |
25864 | ||
25865 | #. type: deftypevr | |
39764ef8 | 25866 | #: doc/guix.texi:11778 |
b9fe8fd6 JL |
25867 | #, no-wrap |
25868 | msgid "{@code{files-configuration} parameter} log-location error-log" | |
25869 | msgstr "" | |
25870 | ||
25871 | #. type: deftypevr | |
39764ef8 | 25872 | #: doc/guix.texi:11786 |
b9fe8fd6 JL |
25873 | msgid "" |
25874 | "Defines the error log filename. Specifying a blank filename disables access " | |
25875 | "log generation. The value @code{stderr} causes log entries to be sent to " | |
25876 | "the standard error file when the scheduler is running in the foreground, or " | |
25877 | "to the system log daemon when run in the background. The value " | |
25878 | "@code{syslog} causes log entries to be sent to the system log daemon. The " | |
25879 | "server name may be included in filenames using the string @code{%s}, as in " | |
25880 | "@code{/var/log/cups/%s-error_log}." | |
25881 | msgstr "" | |
25882 | ||
25883 | #. type: deftypevr | |
39764ef8 | 25884 | #: doc/guix.texi:11788 |
b9fe8fd6 JL |
25885 | msgid "Defaults to @samp{\"/var/log/cups/error_log\"}." |
25886 | msgstr "" | |
25887 | ||
25888 | #. type: deftypevr | |
39764ef8 | 25889 | #: doc/guix.texi:11790 |
b9fe8fd6 JL |
25890 | #, no-wrap |
25891 | msgid "{@code{files-configuration} parameter} string fatal-errors" | |
25892 | msgstr "" | |
25893 | ||
25894 | #. type: deftypevr | |
39764ef8 | 25895 | #: doc/guix.texi:11793 |
b9fe8fd6 JL |
25896 | msgid "" |
25897 | "Specifies which errors are fatal, causing the scheduler to exit. The kind " | |
25898 | "strings are:" | |
25899 | msgstr "" | |
25900 | ||
25901 | #. type: table | |
39764ef8 | 25902 | #: doc/guix.texi:11797 |
b9fe8fd6 JL |
25903 | msgid "No errors are fatal." |
25904 | msgstr "" | |
25905 | ||
25906 | #. type: table | |
39764ef8 | 25907 | #: doc/guix.texi:11800 |
b9fe8fd6 JL |
25908 | msgid "All of the errors below are fatal." |
25909 | msgstr "" | |
25910 | ||
25911 | #. type: item | |
39764ef8 | 25912 | #: doc/guix.texi:11801 |
b9fe8fd6 JL |
25913 | #, no-wrap |
25914 | msgid "browse" | |
25915 | msgstr "" | |
25916 | ||
25917 | #. type: table | |
39764ef8 | 25918 | #: doc/guix.texi:11804 |
b9fe8fd6 JL |
25919 | msgid "" |
25920 | "Browsing initialization errors are fatal, for example failed connections to " | |
25921 | "the DNS-SD daemon." | |
25922 | msgstr "" | |
25923 | ||
25924 | #. type: item | |
39764ef8 | 25925 | #: doc/guix.texi:11805 |
b9fe8fd6 JL |
25926 | #, no-wrap |
25927 | msgid "config" | |
25928 | msgstr "" | |
25929 | ||
25930 | #. type: table | |
39764ef8 | 25931 | #: doc/guix.texi:11807 |
b9fe8fd6 JL |
25932 | msgid "Configuration file syntax errors are fatal." |
25933 | msgstr "" | |
25934 | ||
25935 | #. type: item | |
39764ef8 | 25936 | #: doc/guix.texi:11808 |
b9fe8fd6 JL |
25937 | #, no-wrap |
25938 | msgid "listen" | |
25939 | msgstr "" | |
25940 | ||
25941 | #. type: table | |
39764ef8 | 25942 | #: doc/guix.texi:11811 |
b9fe8fd6 JL |
25943 | msgid "" |
25944 | "Listen or Port errors are fatal, except for IPv6 failures on the loopback or " | |
25945 | "@code{any} addresses." | |
25946 | msgstr "" | |
25947 | ||
25948 | #. type: item | |
39764ef8 | 25949 | #: doc/guix.texi:11812 |
b9fe8fd6 JL |
25950 | #, no-wrap |
25951 | msgid "log" | |
25952 | msgstr "" | |
25953 | ||
25954 | #. type: table | |
39764ef8 | 25955 | #: doc/guix.texi:11814 |
b9fe8fd6 JL |
25956 | msgid "Log file creation or write errors are fatal." |
25957 | msgstr "" | |
25958 | ||
25959 | #. type: item | |
39764ef8 | 25960 | #: doc/guix.texi:11815 |
b9fe8fd6 JL |
25961 | #, no-wrap |
25962 | msgid "permissions" | |
25963 | msgstr "" | |
25964 | ||
25965 | #. type: table | |
39764ef8 | 25966 | #: doc/guix.texi:11818 |
b9fe8fd6 JL |
25967 | msgid "" |
25968 | "Bad startup file permissions are fatal, for example shared TLS certificate " | |
25969 | "and key files with world-read permissions." | |
25970 | msgstr "" | |
25971 | ||
25972 | #. type: deftypevr | |
39764ef8 | 25973 | #: doc/guix.texi:11821 |
b9fe8fd6 JL |
25974 | msgid "Defaults to @samp{\"all -browse\"}." |
25975 | msgstr "" | |
25976 | ||
25977 | #. type: deftypevr | |
39764ef8 | 25978 | #: doc/guix.texi:11823 |
b9fe8fd6 JL |
25979 | #, no-wrap |
25980 | msgid "{@code{files-configuration} parameter} boolean file-device?" | |
25981 | msgstr "" | |
25982 | ||
25983 | #. type: deftypevr | |
39764ef8 | 25984 | #: doc/guix.texi:11826 |
b9fe8fd6 JL |
25985 | msgid "" |
25986 | "Specifies whether the file pseudo-device can be used for new printer " | |
25987 | "queues. The URI @uref{file:///dev/null} is always allowed." | |
25988 | msgstr "" | |
25989 | ||
25990 | #. type: deftypevr | |
39764ef8 JL |
25991 | #: doc/guix.texi:11828 doc/guix.texi:11898 doc/guix.texi:11934 |
25992 | #: doc/guix.texi:11946 doc/guix.texi:11952 doc/guix.texi:11968 | |
25993 | #: doc/guix.texi:12056 doc/guix.texi:12150 doc/guix.texi:12466 | |
25994 | #: doc/guix.texi:12479 doc/guix.texi:16606 doc/guix.texi:16620 | |
25995 | #: doc/guix.texi:16742 doc/guix.texi:16763 doc/guix.texi:16784 | |
25996 | #: doc/guix.texi:16791 doc/guix.texi:16836 doc/guix.texi:16843 | |
25997 | #: doc/guix.texi:17246 doc/guix.texi:17260 doc/guix.texi:17432 | |
25998 | #: doc/guix.texi:17477 doc/guix.texi:17564 doc/guix.texi:17693 | |
25999 | #: doc/guix.texi:17726 doc/guix.texi:17866 doc/guix.texi:17877 | |
26000 | #: doc/guix.texi:18127 doc/guix.texi:18769 doc/guix.texi:18778 | |
26001 | #: doc/guix.texi:18786 doc/guix.texi:18794 doc/guix.texi:18810 | |
26002 | #: doc/guix.texi:18826 doc/guix.texi:18834 doc/guix.texi:18842 | |
26003 | #: doc/guix.texi:18851 doc/guix.texi:18860 doc/guix.texi:18876 | |
26004 | #: doc/guix.texi:18940 doc/guix.texi:19046 doc/guix.texi:19054 | |
26005 | #: doc/guix.texi:19062 doc/guix.texi:19087 doc/guix.texi:19141 | |
26006 | #: doc/guix.texi:19189 doc/guix.texi:19342 doc/guix.texi:19350 | |
26007 | #: doc/guix.texi:19358 doc/guix.texi:19366 doc/guix.texi:19374 | |
26008 | #: doc/guix.texi:19382 doc/guix.texi:19390 doc/guix.texi:19397 | |
b9fe8fd6 JL |
26009 | msgid "Defaults to @samp{#f}." |
26010 | msgstr "" | |
26011 | ||
26012 | #. type: deftypevr | |
39764ef8 | 26013 | #: doc/guix.texi:11830 |
b9fe8fd6 JL |
26014 | #, no-wrap |
26015 | msgid "{@code{files-configuration} parameter} string group" | |
26016 | msgstr "" | |
26017 | ||
26018 | #. type: deftypevr | |
39764ef8 | 26019 | #: doc/guix.texi:11833 |
b9fe8fd6 JL |
26020 | msgid "" |
26021 | "Specifies the group name or ID that will be used when executing external " | |
26022 | "programs." | |
26023 | msgstr "" | |
26024 | ||
26025 | #. type: deftypevr | |
39764ef8 | 26026 | #: doc/guix.texi:11835 doc/guix.texi:11915 |
b9fe8fd6 JL |
26027 | msgid "Defaults to @samp{\"lp\"}." |
26028 | msgstr "" | |
26029 | ||
26030 | #. type: deftypevr | |
39764ef8 | 26031 | #: doc/guix.texi:11837 |
b9fe8fd6 JL |
26032 | #, no-wrap |
26033 | msgid "{@code{files-configuration} parameter} string log-file-perm" | |
26034 | msgstr "" | |
26035 | ||
26036 | #. type: deftypevr | |
39764ef8 | 26037 | #: doc/guix.texi:11839 |
b9fe8fd6 JL |
26038 | msgid "Specifies the permissions for all log files that the scheduler writes." |
26039 | msgstr "" | |
26040 | ||
26041 | #. type: deftypevr | |
39764ef8 | 26042 | #: doc/guix.texi:11841 |
b9fe8fd6 JL |
26043 | msgid "Defaults to @samp{\"0644\"}." |
26044 | msgstr "" | |
26045 | ||
26046 | #. type: deftypevr | |
39764ef8 | 26047 | #: doc/guix.texi:11843 |
b9fe8fd6 JL |
26048 | #, no-wrap |
26049 | msgid "{@code{files-configuration} parameter} log-location page-log" | |
26050 | msgstr "" | |
26051 | ||
26052 | #. type: deftypevr | |
39764ef8 | 26053 | #: doc/guix.texi:11851 |
b9fe8fd6 JL |
26054 | msgid "" |
26055 | "Defines the page log filename. Specifying a blank filename disables access " | |
26056 | "log generation. The value @code{stderr} causes log entries to be sent to " | |
26057 | "the standard error file when the scheduler is running in the foreground, or " | |
26058 | "to the system log daemon when run in the background. The value " | |
26059 | "@code{syslog} causes log entries to be sent to the system log daemon. The " | |
26060 | "server name may be included in filenames using the string @code{%s}, as in " | |
26061 | "@code{/var/log/cups/%s-page_log}." | |
26062 | msgstr "" | |
26063 | ||
26064 | #. type: deftypevr | |
39764ef8 | 26065 | #: doc/guix.texi:11853 |
b9fe8fd6 JL |
26066 | msgid "Defaults to @samp{\"/var/log/cups/page_log\"}." |
26067 | msgstr "" | |
26068 | ||
26069 | #. type: deftypevr | |
39764ef8 | 26070 | #: doc/guix.texi:11855 |
b9fe8fd6 JL |
26071 | #, no-wrap |
26072 | msgid "{@code{files-configuration} parameter} string remote-root" | |
26073 | msgstr "" | |
26074 | ||
26075 | #. type: deftypevr | |
39764ef8 | 26076 | #: doc/guix.texi:11858 |
b9fe8fd6 JL |
26077 | msgid "" |
26078 | "Specifies the username that is associated with unauthenticated accesses by " | |
26079 | "clients claiming to be the root user. The default is @code{remroot}." | |
26080 | msgstr "" | |
26081 | ||
26082 | #. type: deftypevr | |
39764ef8 | 26083 | #: doc/guix.texi:11860 |
b9fe8fd6 JL |
26084 | msgid "Defaults to @samp{\"remroot\"}." |
26085 | msgstr "" | |
26086 | ||
26087 | #. type: deftypevr | |
39764ef8 | 26088 | #: doc/guix.texi:11862 |
b9fe8fd6 JL |
26089 | #, no-wrap |
26090 | msgid "{@code{files-configuration} parameter} file-name request-root" | |
26091 | msgstr "" | |
26092 | ||
26093 | #. type: deftypevr | |
39764ef8 | 26094 | #: doc/guix.texi:11865 |
b9fe8fd6 | 26095 | msgid "" |
39764ef8 | 26096 | "Specifies the directory that contains print jobs and other HTTP request data." |
b9fe8fd6 JL |
26097 | msgstr "" |
26098 | ||
26099 | #. type: deftypevr | |
39764ef8 | 26100 | #: doc/guix.texi:11867 |
b9fe8fd6 JL |
26101 | msgid "Defaults to @samp{\"/var/spool/cups\"}." |
26102 | msgstr "" | |
26103 | ||
26104 | #. type: deftypevr | |
39764ef8 | 26105 | #: doc/guix.texi:11869 |
b9fe8fd6 JL |
26106 | #, no-wrap |
26107 | msgid "{@code{files-configuration} parameter} sandboxing sandboxing" | |
26108 | msgstr "" | |
26109 | ||
26110 | #. type: deftypevr | |
39764ef8 | 26111 | #: doc/guix.texi:11874 |
b9fe8fd6 JL |
26112 | msgid "" |
26113 | "Specifies the level of security sandboxing that is applied to print filters, " | |
26114 | "backends, and other child processes of the scheduler; either @code{relaxed} " | |
26115 | "or @code{strict}. This directive is currently only used/supported on macOS." | |
26116 | msgstr "" | |
26117 | ||
26118 | #. type: deftypevr | |
39764ef8 | 26119 | #: doc/guix.texi:11876 |
b9fe8fd6 JL |
26120 | msgid "Defaults to @samp{strict}." |
26121 | msgstr "" | |
26122 | ||
26123 | #. type: deftypevr | |
39764ef8 | 26124 | #: doc/guix.texi:11878 |
b9fe8fd6 JL |
26125 | #, no-wrap |
26126 | msgid "{@code{files-configuration} parameter} file-name server-keychain" | |
26127 | msgstr "" | |
26128 | ||
26129 | #. type: deftypevr | |
39764ef8 | 26130 | #: doc/guix.texi:11883 |
b9fe8fd6 JL |
26131 | msgid "" |
26132 | "Specifies the location of TLS certificates and private keys. CUPS will look " | |
39764ef8 JL |
26133 | "for public and private keys in this directory: a @code{.crt} files for PEM-" |
26134 | "encoded certificates and corresponding @code{.key} files for PEM-encoded " | |
b9fe8fd6 JL |
26135 | "private keys." |
26136 | msgstr "" | |
26137 | ||
26138 | #. type: deftypevr | |
39764ef8 | 26139 | #: doc/guix.texi:11885 |
b9fe8fd6 JL |
26140 | msgid "Defaults to @samp{\"/etc/cups/ssl\"}." |
26141 | msgstr "" | |
26142 | ||
26143 | #. type: deftypevr | |
39764ef8 | 26144 | #: doc/guix.texi:11887 |
b9fe8fd6 JL |
26145 | #, no-wrap |
26146 | msgid "{@code{files-configuration} parameter} file-name server-root" | |
26147 | msgstr "" | |
26148 | ||
26149 | #. type: deftypevr | |
39764ef8 | 26150 | #: doc/guix.texi:11889 |
b9fe8fd6 JL |
26151 | msgid "Specifies the directory containing the server configuration files." |
26152 | msgstr "" | |
26153 | ||
26154 | #. type: deftypevr | |
39764ef8 | 26155 | #: doc/guix.texi:11891 |
b9fe8fd6 JL |
26156 | msgid "Defaults to @samp{\"/etc/cups\"}." |
26157 | msgstr "" | |
26158 | ||
26159 | #. type: deftypevr | |
39764ef8 | 26160 | #: doc/guix.texi:11893 |
b9fe8fd6 JL |
26161 | #, no-wrap |
26162 | msgid "{@code{files-configuration} parameter} boolean sync-on-close?" | |
26163 | msgstr "" | |
26164 | ||
26165 | #. type: deftypevr | |
39764ef8 | 26166 | #: doc/guix.texi:11896 |
b9fe8fd6 JL |
26167 | msgid "" |
26168 | "Specifies whether the scheduler calls fsync(2) after writing configuration " | |
26169 | "or state files." | |
26170 | msgstr "" | |
26171 | ||
26172 | #. type: deftypevr | |
39764ef8 | 26173 | #: doc/guix.texi:11900 |
b9fe8fd6 | 26174 | #, no-wrap |
39764ef8 | 26175 | msgid "{@code{files-configuration} parameter} space-separated-string-list system-group" |
b9fe8fd6 JL |
26176 | msgstr "" |
26177 | ||
26178 | #. type: deftypevr | |
39764ef8 | 26179 | #: doc/guix.texi:11902 |
b9fe8fd6 JL |
26180 | msgid "Specifies the group(s) to use for @code{@@SYSTEM} group authentication." |
26181 | msgstr "" | |
26182 | ||
26183 | #. type: deftypevr | |
39764ef8 | 26184 | #: doc/guix.texi:11904 |
b9fe8fd6 JL |
26185 | #, no-wrap |
26186 | msgid "{@code{files-configuration} parameter} file-name temp-dir" | |
26187 | msgstr "" | |
26188 | ||
26189 | #. type: deftypevr | |
39764ef8 | 26190 | #: doc/guix.texi:11906 |
b9fe8fd6 JL |
26191 | msgid "Specifies the directory where temporary files are stored." |
26192 | msgstr "" | |
26193 | ||
26194 | #. type: deftypevr | |
39764ef8 | 26195 | #: doc/guix.texi:11908 |
b9fe8fd6 JL |
26196 | msgid "Defaults to @samp{\"/var/spool/cups/tmp\"}." |
26197 | msgstr "" | |
26198 | ||
26199 | #. type: deftypevr | |
39764ef8 | 26200 | #: doc/guix.texi:11910 |
b9fe8fd6 JL |
26201 | #, no-wrap |
26202 | msgid "{@code{files-configuration} parameter} string user" | |
26203 | msgstr "" | |
26204 | ||
26205 | #. type: deftypevr | |
39764ef8 JL |
26206 | #: doc/guix.texi:11913 |
26207 | msgid "" | |
26208 | "Specifies the user name or ID that is used when running external programs." | |
b9fe8fd6 JL |
26209 | msgstr "" |
26210 | ||
26211 | #. type: deftypevr | |
39764ef8 | 26212 | #: doc/guix.texi:11918 |
b9fe8fd6 JL |
26213 | #, no-wrap |
26214 | msgid "{@code{cups-configuration} parameter} access-log-level access-log-level" | |
26215 | msgstr "" | |
26216 | ||
26217 | #. type: deftypevr | |
39764ef8 | 26218 | #: doc/guix.texi:11925 |
b9fe8fd6 JL |
26219 | msgid "" |
26220 | "Specifies the logging level for the AccessLog file. The @code{config} level " | |
26221 | "logs when printers and classes are added, deleted, or modified and when " | |
26222 | "configuration files are accessed or updated. The @code{actions} level logs " | |
26223 | "when print jobs are submitted, held, released, modified, or canceled, and " | |
26224 | "any of the conditions for @code{config}. The @code{all} level logs all " | |
26225 | "requests." | |
26226 | msgstr "" | |
26227 | ||
26228 | #. type: deftypevr | |
39764ef8 | 26229 | #: doc/guix.texi:11927 |
b9fe8fd6 JL |
26230 | msgid "Defaults to @samp{actions}." |
26231 | msgstr "" | |
26232 | ||
26233 | #. type: deftypevr | |
39764ef8 | 26234 | #: doc/guix.texi:11929 |
b9fe8fd6 JL |
26235 | #, no-wrap |
26236 | msgid "{@code{cups-configuration} parameter} boolean auto-purge-jobs?" | |
26237 | msgstr "" | |
26238 | ||
26239 | #. type: deftypevr | |
39764ef8 | 26240 | #: doc/guix.texi:11932 |
b9fe8fd6 JL |
26241 | msgid "" |
26242 | "Specifies whether to purge job history data automatically when it is no " | |
26243 | "longer required for quotas." | |
26244 | msgstr "" | |
26245 | ||
26246 | #. type: deftypevr | |
39764ef8 | 26247 | #: doc/guix.texi:11936 |
b9fe8fd6 | 26248 | #, no-wrap |
39764ef8 | 26249 | msgid "{@code{cups-configuration} parameter} browse-local-protocols browse-local-protocols" |
b9fe8fd6 JL |
26250 | msgstr "" |
26251 | ||
26252 | #. type: deftypevr | |
39764ef8 | 26253 | #: doc/guix.texi:11938 |
b9fe8fd6 JL |
26254 | msgid "Specifies which protocols to use for local printer sharing." |
26255 | msgstr "" | |
26256 | ||
26257 | #. type: deftypevr | |
39764ef8 | 26258 | #: doc/guix.texi:11940 |
b9fe8fd6 JL |
26259 | msgid "Defaults to @samp{dnssd}." |
26260 | msgstr "" | |
26261 | ||
26262 | #. type: deftypevr | |
39764ef8 | 26263 | #: doc/guix.texi:11942 |
b9fe8fd6 JL |
26264 | #, no-wrap |
26265 | msgid "{@code{cups-configuration} parameter} boolean browse-web-if?" | |
26266 | msgstr "" | |
26267 | ||
26268 | #. type: deftypevr | |
39764ef8 | 26269 | #: doc/guix.texi:11944 |
b9fe8fd6 JL |
26270 | msgid "Specifies whether the CUPS web interface is advertised." |
26271 | msgstr "" | |
26272 | ||
26273 | #. type: deftypevr | |
39764ef8 | 26274 | #: doc/guix.texi:11948 |
b9fe8fd6 JL |
26275 | #, no-wrap |
26276 | msgid "{@code{cups-configuration} parameter} boolean browsing?" | |
26277 | msgstr "" | |
26278 | ||
26279 | #. type: deftypevr | |
39764ef8 | 26280 | #: doc/guix.texi:11950 |
b9fe8fd6 JL |
26281 | msgid "Specifies whether shared printers are advertised." |
26282 | msgstr "" | |
26283 | ||
26284 | #. type: deftypevr | |
39764ef8 | 26285 | #: doc/guix.texi:11954 |
b9fe8fd6 JL |
26286 | #, no-wrap |
26287 | msgid "{@code{cups-configuration} parameter} string classification" | |
26288 | msgstr "" | |
26289 | ||
26290 | #. type: deftypevr | |
39764ef8 | 26291 | #: doc/guix.texi:11959 |
b9fe8fd6 JL |
26292 | msgid "" |
26293 | "Specifies the security classification of the server. Any valid banner name " | |
26294 | "can be used, including \"classified\", \"confidential\", \"secret\", " | |
26295 | "\"topsecret\", and \"unclassified\", or the banner can be omitted to disable " | |
26296 | "secure printing functions." | |
26297 | msgstr "" | |
26298 | ||
26299 | #. type: deftypevr | |
39764ef8 JL |
26300 | #: doc/guix.texi:11961 doc/guix.texi:12298 doc/guix.texi:13657 |
26301 | #: doc/guix.texi:13669 doc/guix.texi:17832 doc/guix.texi:17840 | |
26302 | #: doc/guix.texi:17848 doc/guix.texi:17856 doc/guix.texi:18134 | |
26303 | #: doc/guix.texi:18612 doc/guix.texi:18620 doc/guix.texi:18628 | |
26304 | #: doc/guix.texi:18736 doc/guix.texi:18761 doc/guix.texi:18892 | |
26305 | #: doc/guix.texi:18900 doc/guix.texi:18908 doc/guix.texi:18916 | |
26306 | #: doc/guix.texi:18924 doc/guix.texi:18932 doc/guix.texi:18955 | |
26307 | #: doc/guix.texi:18963 doc/guix.texi:19015 doc/guix.texi:19031 | |
26308 | #: doc/guix.texi:19039 doc/guix.texi:19078 doc/guix.texi:19101 | |
26309 | #: doc/guix.texi:19123 doc/guix.texi:19130 doc/guix.texi:19165 | |
26310 | #: doc/guix.texi:19173 doc/guix.texi:19197 doc/guix.texi:19229 | |
26311 | #: doc/guix.texi:19258 doc/guix.texi:19265 doc/guix.texi:19272 | |
26312 | #: doc/guix.texi:19280 doc/guix.texi:19294 doc/guix.texi:19303 | |
26313 | #: doc/guix.texi:19313 doc/guix.texi:19320 doc/guix.texi:19327 | |
26314 | #: doc/guix.texi:19334 doc/guix.texi:19405 doc/guix.texi:19412 | |
26315 | #: doc/guix.texi:19419 doc/guix.texi:19428 doc/guix.texi:19444 | |
26316 | #: doc/guix.texi:19451 doc/guix.texi:19458 doc/guix.texi:19465 | |
26317 | #: doc/guix.texi:19473 doc/guix.texi:19481 | |
b9fe8fd6 JL |
26318 | msgid "Defaults to @samp{\"\"}." |
26319 | msgstr "" | |
26320 | ||
26321 | #. type: deftypevr | |
39764ef8 | 26322 | #: doc/guix.texi:11963 |
b9fe8fd6 JL |
26323 | #, no-wrap |
26324 | msgid "{@code{cups-configuration} parameter} boolean classify-override?" | |
26325 | msgstr "" | |
26326 | ||
26327 | #. type: deftypevr | |
39764ef8 | 26328 | #: doc/guix.texi:11966 |
b9fe8fd6 JL |
26329 | msgid "" |
26330 | "Specifies whether users may override the classification (cover page) of " | |
26331 | "individual print jobs using the @code{job-sheets} option." | |
26332 | msgstr "" | |
26333 | ||
26334 | #. type: deftypevr | |
39764ef8 | 26335 | #: doc/guix.texi:11970 |
b9fe8fd6 JL |
26336 | #, no-wrap |
26337 | msgid "{@code{cups-configuration} parameter} default-auth-type default-auth-type" | |
26338 | msgstr "" | |
26339 | ||
26340 | #. type: deftypevr | |
39764ef8 | 26341 | #: doc/guix.texi:11972 |
b9fe8fd6 JL |
26342 | msgid "Specifies the default type of authentication to use." |
26343 | msgstr "" | |
26344 | ||
26345 | #. type: deftypevr | |
39764ef8 | 26346 | #: doc/guix.texi:11974 |
b9fe8fd6 JL |
26347 | msgid "Defaults to @samp{Basic}." |
26348 | msgstr "" | |
26349 | ||
26350 | #. type: deftypevr | |
39764ef8 | 26351 | #: doc/guix.texi:11976 |
b9fe8fd6 JL |
26352 | #, no-wrap |
26353 | msgid "{@code{cups-configuration} parameter} default-encryption default-encryption" | |
26354 | msgstr "" | |
26355 | ||
26356 | #. type: deftypevr | |
39764ef8 | 26357 | #: doc/guix.texi:11978 |
b9fe8fd6 JL |
26358 | msgid "Specifies whether encryption will be used for authenticated requests." |
26359 | msgstr "" | |
26360 | ||
26361 | #. type: deftypevr | |
39764ef8 | 26362 | #: doc/guix.texi:11980 |
b9fe8fd6 JL |
26363 | msgid "Defaults to @samp{Required}." |
26364 | msgstr "" | |
26365 | ||
26366 | #. type: deftypevr | |
39764ef8 | 26367 | #: doc/guix.texi:11982 |
b9fe8fd6 JL |
26368 | #, no-wrap |
26369 | msgid "{@code{cups-configuration} parameter} string default-language" | |
26370 | msgstr "" | |
26371 | ||
26372 | #. type: deftypevr | |
39764ef8 | 26373 | #: doc/guix.texi:11984 |
b9fe8fd6 JL |
26374 | msgid "Specifies the default language to use for text and web content." |
26375 | msgstr "" | |
26376 | ||
26377 | #. type: deftypevr | |
39764ef8 | 26378 | #: doc/guix.texi:11986 |
b9fe8fd6 JL |
26379 | msgid "Defaults to @samp{\"en\"}." |
26380 | msgstr "" | |
26381 | ||
26382 | #. type: deftypevr | |
39764ef8 | 26383 | #: doc/guix.texi:11988 |
b9fe8fd6 JL |
26384 | #, no-wrap |
26385 | msgid "{@code{cups-configuration} parameter} string default-paper-size" | |
26386 | msgstr "" | |
26387 | ||
26388 | #. type: deftypevr | |
39764ef8 | 26389 | #: doc/guix.texi:11993 |
b9fe8fd6 JL |
26390 | msgid "" |
26391 | "Specifies the default paper size for new print queues. @samp{\"Auto\"} uses " | |
26392 | "a locale-specific default, while @samp{\"None\"} specifies there is no " | |
26393 | "default paper size. Specific size names are typically @samp{\"Letter\"} or " | |
26394 | "@samp{\"A4\"}." | |
26395 | msgstr "" | |
26396 | ||
26397 | #. type: deftypevr | |
39764ef8 | 26398 | #: doc/guix.texi:11995 |
b9fe8fd6 JL |
26399 | msgid "Defaults to @samp{\"Auto\"}." |
26400 | msgstr "" | |
26401 | ||
26402 | #. type: deftypevr | |
39764ef8 | 26403 | #: doc/guix.texi:11997 |
b9fe8fd6 JL |
26404 | #, no-wrap |
26405 | msgid "{@code{cups-configuration} parameter} string default-policy" | |
26406 | msgstr "" | |
26407 | ||
26408 | #. type: deftypevr | |
39764ef8 | 26409 | #: doc/guix.texi:11999 |
b9fe8fd6 JL |
26410 | msgid "Specifies the default access policy to use." |
26411 | msgstr "" | |
26412 | ||
26413 | #. type: deftypevr | |
39764ef8 | 26414 | #: doc/guix.texi:12001 |
b9fe8fd6 JL |
26415 | msgid "Defaults to @samp{\"default\"}." |
26416 | msgstr "" | |
26417 | ||
26418 | #. type: deftypevr | |
39764ef8 | 26419 | #: doc/guix.texi:12003 |
b9fe8fd6 JL |
26420 | #, no-wrap |
26421 | msgid "{@code{cups-configuration} parameter} boolean default-shared?" | |
26422 | msgstr "" | |
26423 | ||
26424 | #. type: deftypevr | |
39764ef8 | 26425 | #: doc/guix.texi:12005 |
b9fe8fd6 JL |
26426 | msgid "Specifies whether local printers are shared by default." |
26427 | msgstr "" | |
26428 | ||
26429 | #. type: deftypevr | |
39764ef8 JL |
26430 | #: doc/guix.texi:12007 doc/guix.texi:12087 doc/guix.texi:12383 |
26431 | #: doc/guix.texi:16576 doc/guix.texi:16583 doc/guix.texi:16591 | |
26432 | #: doc/guix.texi:16613 doc/guix.texi:16627 doc/guix.texi:16712 | |
26433 | #: doc/guix.texi:16719 doc/guix.texi:16727 doc/guix.texi:17113 | |
26434 | #: doc/guix.texi:17253 doc/guix.texi:17439 doc/guix.texi:17446 | |
26435 | #: doc/guix.texi:17468 doc/guix.texi:17507 doc/guix.texi:17527 | |
26436 | #: doc/guix.texi:17541 doc/guix.texi:17681 doc/guix.texi:18714 | |
26437 | #: doc/guix.texi:18802 doc/guix.texi:18818 doc/guix.texi:18868 | |
b9fe8fd6 JL |
26438 | msgid "Defaults to @samp{#t}." |
26439 | msgstr "" | |
26440 | ||
26441 | #. type: deftypevr | |
39764ef8 | 26442 | #: doc/guix.texi:12009 |
b9fe8fd6 | 26443 | #, no-wrap |
39764ef8 | 26444 | msgid "{@code{cups-configuration} parameter} non-negative-integer dirty-clean-interval" |
b9fe8fd6 JL |
26445 | msgstr "" |
26446 | ||
26447 | #. type: deftypevr | |
39764ef8 | 26448 | #: doc/guix.texi:12013 |
b9fe8fd6 JL |
26449 | msgid "" |
26450 | "Specifies the delay for updating of configuration and state files, in " | |
26451 | "seconds. A value of 0 causes the update to happen as soon as possible, " | |
26452 | "typically within a few milliseconds." | |
26453 | msgstr "" | |
26454 | ||
26455 | #. type: deftypevr | |
39764ef8 JL |
26456 | #: doc/guix.texi:12015 doc/guix.texi:12063 doc/guix.texi:12072 |
26457 | #: doc/guix.texi:12093 doc/guix.texi:12390 | |
b9fe8fd6 JL |
26458 | msgid "Defaults to @samp{30}." |
26459 | msgstr "" | |
26460 | ||
26461 | #. type: deftypevr | |
39764ef8 | 26462 | #: doc/guix.texi:12017 |
b9fe8fd6 JL |
26463 | #, no-wrap |
26464 | msgid "{@code{cups-configuration} parameter} error-policy error-policy" | |
26465 | msgstr "" | |
26466 | ||
26467 | #. type: deftypevr | |
39764ef8 | 26468 | #: doc/guix.texi:12023 |
b9fe8fd6 | 26469 | msgid "" |
39764ef8 JL |
26470 | "Specifies what to do when an error occurs. Possible values are @code{abort-" |
26471 | "job}, which will discard the failed print job; @code{retry-job}, which will " | |
26472 | "retry the job at a later time; @code{retry-this-job}, which retries the " | |
26473 | "failed job immediately; and @code{stop-printer}, which stops the printer." | |
b9fe8fd6 JL |
26474 | msgstr "" |
26475 | ||
26476 | #. type: deftypevr | |
39764ef8 | 26477 | #: doc/guix.texi:12025 |
b9fe8fd6 JL |
26478 | msgid "Defaults to @samp{stop-printer}." |
26479 | msgstr "" | |
26480 | ||
26481 | #. type: deftypevr | |
39764ef8 | 26482 | #: doc/guix.texi:12027 |
b9fe8fd6 JL |
26483 | #, no-wrap |
26484 | msgid "{@code{cups-configuration} parameter} non-negative-integer filter-limit" | |
26485 | msgstr "" | |
26486 | ||
26487 | #. type: deftypevr | |
39764ef8 | 26488 | #: doc/guix.texi:12035 |
b9fe8fd6 JL |
26489 | msgid "" |
26490 | "Specifies the maximum cost of filters that are run concurrently, which can " | |
26491 | "be used to minimize disk, memory, and CPU resource problems. A limit of 0 " | |
26492 | "disables filter limiting. An average print to a non-PostScript printer " | |
26493 | "needs a filter limit of about 200. A PostScript printer needs about half " | |
26494 | "that (100). Setting the limit below these thresholds will effectively limit " | |
26495 | "the scheduler to printing a single job at any time." | |
26496 | msgstr "" | |
26497 | ||
26498 | #. type: deftypevr | |
39764ef8 JL |
26499 | #: doc/guix.texi:12037 doc/guix.texi:12045 doc/guix.texi:12100 |
26500 | #: doc/guix.texi:12216 doc/guix.texi:12230 doc/guix.texi:12237 | |
26501 | #: doc/guix.texi:13761 doc/guix.texi:13773 doc/guix.texi:17129 | |
26502 | #: doc/guix.texi:17454 doc/guix.texi:18707 doc/guix.texi:19007 | |
26503 | #: doc/guix.texi:19181 | |
b9fe8fd6 JL |
26504 | msgid "Defaults to @samp{0}." |
26505 | msgstr "" | |
26506 | ||
26507 | #. type: deftypevr | |
39764ef8 | 26508 | #: doc/guix.texi:12039 |
b9fe8fd6 JL |
26509 | #, no-wrap |
26510 | msgid "{@code{cups-configuration} parameter} non-negative-integer filter-nice" | |
26511 | msgstr "" | |
26512 | ||
26513 | #. type: deftypevr | |
39764ef8 | 26514 | #: doc/guix.texi:12043 |
b9fe8fd6 JL |
26515 | msgid "" |
26516 | "Specifies the scheduling priority of filters that are run to print a job. " | |
26517 | "The nice value ranges from 0, the highest priority, to 19, the lowest " | |
26518 | "priority." | |
26519 | msgstr "" | |
26520 | ||
26521 | #. type: deftypevr | |
39764ef8 | 26522 | #: doc/guix.texi:12047 |
b9fe8fd6 JL |
26523 | #, no-wrap |
26524 | msgid "{@code{cups-configuration} parameter} host-name-lookups host-name-lookups" | |
26525 | msgstr "" | |
26526 | ||
26527 | #. type: deftypevr | |
39764ef8 | 26528 | #: doc/guix.texi:12054 |
b9fe8fd6 JL |
26529 | msgid "" |
26530 | "Specifies whether to do reverse lookups on connecting clients. The " | |
26531 | "@code{double} setting causes @code{cupsd} to verify that the hostname " | |
26532 | "resolved from the address matches one of the addresses returned for that " | |
26533 | "hostname. Double lookups also prevent clients with unregistered addresses " | |
26534 | "from connecting to your server. Only set this option to @code{#t} or " | |
26535 | "@code{double} if absolutely required." | |
26536 | msgstr "" | |
26537 | ||
26538 | #. type: deftypevr | |
39764ef8 | 26539 | #: doc/guix.texi:12058 |
b9fe8fd6 JL |
26540 | #, no-wrap |
26541 | msgid "{@code{cups-configuration} parameter} non-negative-integer job-kill-delay" | |
26542 | msgstr "" | |
26543 | ||
26544 | #. type: deftypevr | |
39764ef8 | 26545 | #: doc/guix.texi:12061 |
b9fe8fd6 JL |
26546 | msgid "" |
26547 | "Specifies the number of seconds to wait before killing the filters and " | |
26548 | "backend associated with a canceled or held job." | |
26549 | msgstr "" | |
26550 | ||
26551 | #. type: deftypevr | |
39764ef8 | 26552 | #: doc/guix.texi:12065 |
b9fe8fd6 | 26553 | #, no-wrap |
39764ef8 | 26554 | msgid "{@code{cups-configuration} parameter} non-negative-integer job-retry-interval" |
b9fe8fd6 JL |
26555 | msgstr "" |
26556 | ||
26557 | #. type: deftypevr | |
39764ef8 | 26558 | #: doc/guix.texi:12070 |
b9fe8fd6 JL |
26559 | msgid "" |
26560 | "Specifies the interval between retries of jobs in seconds. This is " | |
26561 | "typically used for fax queues but can also be used with normal print queues " | |
26562 | "whose error policy is @code{retry-job} or @code{retry-current-job}." | |
26563 | msgstr "" | |
26564 | ||
26565 | #. type: deftypevr | |
39764ef8 | 26566 | #: doc/guix.texi:12074 |
b9fe8fd6 JL |
26567 | #, no-wrap |
26568 | msgid "{@code{cups-configuration} parameter} non-negative-integer job-retry-limit" | |
26569 | msgstr "" | |
26570 | ||
26571 | #. type: deftypevr | |
39764ef8 | 26572 | #: doc/guix.texi:12079 |
b9fe8fd6 JL |
26573 | msgid "" |
26574 | "Specifies the number of retries that are done for jobs. This is typically " | |
26575 | "used for fax queues but can also be used with normal print queues whose " | |
26576 | "error policy is @code{retry-job} or @code{retry-current-job}." | |
26577 | msgstr "" | |
26578 | ||
26579 | #. type: deftypevr | |
39764ef8 JL |
26580 | #: doc/guix.texi:12081 doc/guix.texi:17933 doc/guix.texi:17953 |
26581 | #: doc/guix.texi:17969 doc/guix.texi:17983 doc/guix.texi:17990 | |
26582 | #: doc/guix.texi:17997 doc/guix.texi:18004 doc/guix.texi:18163 | |
26583 | #: doc/guix.texi:18179 doc/guix.texi:18186 doc/guix.texi:18193 | |
26584 | #: doc/guix.texi:18204 doc/guix.texi:18659 doc/guix.texi:18667 | |
26585 | #: doc/guix.texi:18675 doc/guix.texi:18699 | |
b9fe8fd6 JL |
26586 | msgid "Defaults to @samp{5}." |
26587 | msgstr "" | |
26588 | ||
26589 | #. type: deftypevr | |
39764ef8 | 26590 | #: doc/guix.texi:12083 |
b9fe8fd6 JL |
26591 | #, no-wrap |
26592 | msgid "{@code{cups-configuration} parameter} boolean keep-alive?" | |
26593 | msgstr "" | |
26594 | ||
26595 | #. type: deftypevr | |
39764ef8 | 26596 | #: doc/guix.texi:12085 |
b9fe8fd6 JL |
26597 | msgid "Specifies whether to support HTTP keep-alive connections." |
26598 | msgstr "" | |
26599 | ||
26600 | #. type: deftypevr | |
39764ef8 | 26601 | #: doc/guix.texi:12089 |
b9fe8fd6 | 26602 | #, no-wrap |
39764ef8 | 26603 | msgid "{@code{cups-configuration} parameter} non-negative-integer keep-alive-timeout" |
b9fe8fd6 JL |
26604 | msgstr "" |
26605 | ||
26606 | #. type: deftypevr | |
39764ef8 | 26607 | #: doc/guix.texi:12091 |
b9fe8fd6 JL |
26608 | msgid "Specifies how long an idle client connection remains open, in seconds." |
26609 | msgstr "" | |
26610 | ||
26611 | #. type: deftypevr | |
39764ef8 | 26612 | #: doc/guix.texi:12095 |
b9fe8fd6 | 26613 | #, no-wrap |
39764ef8 | 26614 | msgid "{@code{cups-configuration} parameter} non-negative-integer limit-request-body" |
b9fe8fd6 JL |
26615 | msgstr "" |
26616 | ||
26617 | #. type: deftypevr | |
39764ef8 | 26618 | #: doc/guix.texi:12098 |
b9fe8fd6 JL |
26619 | msgid "" |
26620 | "Specifies the maximum size of print files, IPP requests, and HTML form " | |
26621 | "data. A limit of 0 disables the limit check." | |
26622 | msgstr "" | |
26623 | ||
26624 | #. type: deftypevr | |
39764ef8 | 26625 | #: doc/guix.texi:12102 |
b9fe8fd6 JL |
26626 | #, no-wrap |
26627 | msgid "{@code{cups-configuration} parameter} multiline-string-list listen" | |
26628 | msgstr "" | |
26629 | ||
26630 | #. type: deftypevr | |
39764ef8 | 26631 | #: doc/guix.texi:12109 |
b9fe8fd6 JL |
26632 | msgid "" |
26633 | "Listens on the specified interfaces for connections. Valid values are of " | |
26634 | "the form @var{address}:@var{port}, where @var{address} is either an IPv6 " | |
26635 | "address enclosed in brackets, an IPv4 address, or @code{*} to indicate all " | |
26636 | "addresses. Values can also be file names of local UNIX domain sockets. The " | |
26637 | "Listen directive is similar to the Port directive but allows you to restrict " | |
26638 | "access to specific interfaces or networks." | |
26639 | msgstr "" | |
26640 | ||
26641 | #. type: deftypevr | |
39764ef8 | 26642 | #: doc/guix.texi:12111 |
b9fe8fd6 JL |
26643 | #, no-wrap |
26644 | msgid "{@code{cups-configuration} parameter} non-negative-integer listen-back-log" | |
26645 | msgstr "" | |
26646 | ||
26647 | #. type: deftypevr | |
39764ef8 | 26648 | #: doc/guix.texi:12118 |
b9fe8fd6 JL |
26649 | msgid "" |
26650 | "Specifies the number of pending connections that will be allowed. This " | |
26651 | "normally only affects very busy servers that have reached the MaxClients " | |
26652 | "limit, but can also be triggered by large numbers of simultaneous " | |
26653 | "connections. When the limit is reached, the operating system will refuse " | |
26654 | "additional connections until the scheduler can accept the pending ones." | |
26655 | msgstr "" | |
26656 | ||
26657 | #. type: deftypevr | |
39764ef8 | 26658 | #: doc/guix.texi:12120 |
b9fe8fd6 JL |
26659 | msgid "Defaults to @samp{128}." |
26660 | msgstr "" | |
26661 | ||
26662 | #. type: deftypevr | |
39764ef8 | 26663 | #: doc/guix.texi:12122 |
b9fe8fd6 | 26664 | #, no-wrap |
39764ef8 | 26665 | msgid "{@code{cups-configuration} parameter} location-access-control-list location-access-controls" |
b9fe8fd6 JL |
26666 | msgstr "" |
26667 | ||
26668 | #. type: deftypevr | |
39764ef8 | 26669 | #: doc/guix.texi:12124 |
b9fe8fd6 JL |
26670 | msgid "Specifies a set of additional access controls." |
26671 | msgstr "" | |
26672 | ||
26673 | #. type: deftypevr | |
39764ef8 | 26674 | #: doc/guix.texi:12126 |
b9fe8fd6 JL |
26675 | msgid "Available @code{location-access-controls} fields are:" |
26676 | msgstr "" | |
26677 | ||
26678 | #. type: deftypevr | |
39764ef8 | 26679 | #: doc/guix.texi:12127 |
b9fe8fd6 JL |
26680 | #, no-wrap |
26681 | msgid "{@code{location-access-controls} parameter} file-name path" | |
26682 | msgstr "" | |
26683 | ||
26684 | #. type: deftypevr | |
39764ef8 | 26685 | #: doc/guix.texi:12129 |
b9fe8fd6 JL |
26686 | msgid "Specifies the URI path to which the access control applies." |
26687 | msgstr "" | |
26688 | ||
26689 | #. type: deftypevr | |
39764ef8 | 26690 | #: doc/guix.texi:12131 |
b9fe8fd6 | 26691 | #, no-wrap |
39764ef8 | 26692 | msgid "{@code{location-access-controls} parameter} access-control-list access-controls" |
b9fe8fd6 JL |
26693 | msgstr "" |
26694 | ||
26695 | #. type: deftypevr | |
39764ef8 | 26696 | #: doc/guix.texi:12134 |
b9fe8fd6 JL |
26697 | msgid "" |
26698 | "Access controls for all access to this path, in the same format as the " | |
26699 | "@code{access-controls} of @code{operation-access-control}." | |
26700 | msgstr "" | |
26701 | ||
26702 | #. type: deftypevr | |
39764ef8 JL |
26703 | #: doc/guix.texi:12136 doc/guix.texi:12142 doc/guix.texi:12156 |
26704 | #: doc/guix.texi:12163 doc/guix.texi:12305 doc/guix.texi:12364 | |
26705 | #: doc/guix.texi:12448 doc/guix.texi:12459 doc/guix.texi:14247 | |
26706 | #: doc/guix.texi:16634 doc/guix.texi:16822 doc/guix.texi:17824 | |
26707 | #: doc/guix.texi:17884 doc/guix.texi:17892 doc/guix.texi:18722 | |
26708 | #: doc/guix.texi:18729 doc/guix.texi:19071 doc/guix.texi:19149 | |
26709 | #: doc/guix.texi:19243 doc/guix.texi:19251 doc/guix.texi:19287 | |
26710 | #: doc/guix.texi:19437 doc/guix.texi:19488 doc/guix.texi:19497 | |
b9fe8fd6 JL |
26711 | msgid "Defaults to @samp{()}." |
26712 | msgstr "" | |
26713 | ||
26714 | #. type: deftypevr | |
39764ef8 | 26715 | #: doc/guix.texi:12138 |
b9fe8fd6 | 26716 | #, no-wrap |
39764ef8 | 26717 | msgid "{@code{location-access-controls} parameter} method-access-control-list method-access-controls" |
b9fe8fd6 JL |
26718 | msgstr "" |
26719 | ||
26720 | #. type: deftypevr | |
39764ef8 | 26721 | #: doc/guix.texi:12140 |
b9fe8fd6 JL |
26722 | msgid "Access controls for method-specific access to this path." |
26723 | msgstr "" | |
26724 | ||
26725 | #. type: deftypevr | |
39764ef8 | 26726 | #: doc/guix.texi:12144 |
b9fe8fd6 JL |
26727 | msgid "Available @code{method-access-controls} fields are:" |
26728 | msgstr "" | |
26729 | ||
26730 | #. type: deftypevr | |
39764ef8 | 26731 | #: doc/guix.texi:12145 |
b9fe8fd6 JL |
26732 | #, no-wrap |
26733 | msgid "{@code{method-access-controls} parameter} boolean reverse?" | |
26734 | msgstr "" | |
26735 | ||
26736 | #. type: deftypevr | |
39764ef8 | 26737 | #: doc/guix.texi:12148 |
b9fe8fd6 JL |
26738 | msgid "" |
26739 | "If @code{#t}, apply access controls to all methods except the listed " | |
26740 | "methods. Otherwise apply to only the listed methods." | |
26741 | msgstr "" | |
26742 | ||
26743 | #. type: deftypevr | |
39764ef8 | 26744 | #: doc/guix.texi:12152 |
b9fe8fd6 JL |
26745 | #, no-wrap |
26746 | msgid "{@code{method-access-controls} parameter} method-list methods" | |
26747 | msgstr "" | |
26748 | ||
26749 | #. type: deftypevr | |
39764ef8 | 26750 | #: doc/guix.texi:12154 |
b9fe8fd6 JL |
26751 | msgid "Methods to which this access control applies." |
26752 | msgstr "" | |
26753 | ||
26754 | #. type: deftypevr | |
39764ef8 | 26755 | #: doc/guix.texi:12158 |
b9fe8fd6 | 26756 | #, no-wrap |
39764ef8 | 26757 | msgid "{@code{method-access-controls} parameter} access-control-list access-controls" |
b9fe8fd6 JL |
26758 | msgstr "" |
26759 | ||
26760 | #. type: deftypevr | |
39764ef8 | 26761 | #: doc/guix.texi:12161 |
b9fe8fd6 JL |
26762 | msgid "" |
26763 | "Access control directives, as a list of strings. Each string should be one " | |
26764 | "directive, such as \"Order allow,deny\"." | |
26765 | msgstr "" | |
26766 | ||
26767 | #. type: deftypevr | |
39764ef8 | 26768 | #: doc/guix.texi:12167 |
b9fe8fd6 JL |
26769 | #, no-wrap |
26770 | msgid "{@code{cups-configuration} parameter} non-negative-integer log-debug-history" | |
26771 | msgstr "" | |
26772 | ||
26773 | #. type: deftypevr | |
39764ef8 | 26774 | #: doc/guix.texi:12171 |
b9fe8fd6 JL |
26775 | msgid "" |
26776 | "Specifies the number of debugging messages that are retained for logging if " | |
26777 | "an error occurs in a print job. Debug messages are logged regardless of the " | |
26778 | "LogLevel setting." | |
26779 | msgstr "" | |
26780 | ||
26781 | #. type: deftypevr | |
39764ef8 JL |
26782 | #: doc/guix.texi:12173 doc/guix.texi:12194 doc/guix.texi:12201 |
26783 | #: doc/guix.texi:14007 doc/guix.texi:16807 | |
b9fe8fd6 JL |
26784 | msgid "Defaults to @samp{100}." |
26785 | msgstr "" | |
26786 | ||
26787 | #. type: deftypevr | |
39764ef8 | 26788 | #: doc/guix.texi:12175 |
b9fe8fd6 JL |
26789 | #, no-wrap |
26790 | msgid "{@code{cups-configuration} parameter} log-level log-level" | |
26791 | msgstr "" | |
26792 | ||
26793 | #. type: deftypevr | |
39764ef8 | 26794 | #: doc/guix.texi:12178 |
b9fe8fd6 JL |
26795 | msgid "" |
26796 | "Specifies the level of logging for the ErrorLog file. The value @code{none} " | |
26797 | "stops all logging while @code{debug2} logs everything." | |
26798 | msgstr "" | |
26799 | ||
26800 | #. type: deftypevr | |
39764ef8 | 26801 | #: doc/guix.texi:12180 |
b9fe8fd6 JL |
26802 | msgid "Defaults to @samp{info}." |
26803 | msgstr "" | |
26804 | ||
26805 | #. type: deftypevr | |
39764ef8 | 26806 | #: doc/guix.texi:12182 |
b9fe8fd6 JL |
26807 | #, no-wrap |
26808 | msgid "{@code{cups-configuration} parameter} log-time-format log-time-format" | |
26809 | msgstr "" | |
26810 | ||
26811 | #. type: deftypevr | |
39764ef8 | 26812 | #: doc/guix.texi:12185 |
b9fe8fd6 JL |
26813 | msgid "" |
26814 | "Specifies the format of the date and time in the log files. The value " | |
26815 | "@code{standard} logs whole seconds while @code{usecs} logs microseconds." | |
26816 | msgstr "" | |
26817 | ||
26818 | #. type: deftypevr | |
39764ef8 | 26819 | #: doc/guix.texi:12187 |
b9fe8fd6 JL |
26820 | msgid "Defaults to @samp{standard}." |
26821 | msgstr "" | |
26822 | ||
26823 | #. type: deftypevr | |
39764ef8 | 26824 | #: doc/guix.texi:12189 |
b9fe8fd6 JL |
26825 | #, no-wrap |
26826 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-clients" | |
26827 | msgstr "" | |
26828 | ||
26829 | #. type: deftypevr | |
39764ef8 | 26830 | #: doc/guix.texi:12192 |
b9fe8fd6 JL |
26831 | msgid "" |
26832 | "Specifies the maximum number of simultaneous clients that are allowed by the " | |
26833 | "scheduler." | |
26834 | msgstr "" | |
26835 | ||
26836 | #. type: deftypevr | |
39764ef8 | 26837 | #: doc/guix.texi:12196 |
b9fe8fd6 | 26838 | #, no-wrap |
39764ef8 | 26839 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-clients-per-host" |
b9fe8fd6 JL |
26840 | msgstr "" |
26841 | ||
26842 | #. type: deftypevr | |
39764ef8 | 26843 | #: doc/guix.texi:12199 |
b9fe8fd6 JL |
26844 | msgid "" |
26845 | "Specifies the maximum number of simultaneous clients that are allowed from a " | |
26846 | "single address." | |
26847 | msgstr "" | |
26848 | ||
26849 | #. type: deftypevr | |
39764ef8 | 26850 | #: doc/guix.texi:12203 |
b9fe8fd6 JL |
26851 | #, no-wrap |
26852 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-copies" | |
26853 | msgstr "" | |
26854 | ||
26855 | #. type: deftypevr | |
39764ef8 JL |
26856 | #: doc/guix.texi:12206 |
26857 | msgid "" | |
26858 | "Specifies the maximum number of copies that a user can print of each job." | |
b9fe8fd6 JL |
26859 | msgstr "" |
26860 | ||
26861 | #. type: deftypevr | |
39764ef8 | 26862 | #: doc/guix.texi:12208 |
b9fe8fd6 JL |
26863 | msgid "Defaults to @samp{9999}." |
26864 | msgstr "" | |
26865 | ||
26866 | #. type: deftypevr | |
39764ef8 | 26867 | #: doc/guix.texi:12210 |
b9fe8fd6 JL |
26868 | #, no-wrap |
26869 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-hold-time" | |
26870 | msgstr "" | |
26871 | ||
26872 | #. type: deftypevr | |
39764ef8 | 26873 | #: doc/guix.texi:12214 |
b9fe8fd6 JL |
26874 | msgid "" |
26875 | "Specifies the maximum time a job may remain in the @code{indefinite} hold " | |
26876 | "state before it is canceled. A value of 0 disables cancellation of held " | |
26877 | "jobs." | |
26878 | msgstr "" | |
26879 | ||
26880 | #. type: deftypevr | |
39764ef8 | 26881 | #: doc/guix.texi:12218 |
b9fe8fd6 JL |
26882 | #, no-wrap |
26883 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs" | |
26884 | msgstr "" | |
26885 | ||
26886 | #. type: deftypevr | |
39764ef8 | 26887 | #: doc/guix.texi:12221 |
b9fe8fd6 JL |
26888 | msgid "" |
26889 | "Specifies the maximum number of simultaneous jobs that are allowed. Set to " | |
26890 | "0 to allow an unlimited number of jobs." | |
26891 | msgstr "" | |
26892 | ||
26893 | #. type: deftypevr | |
39764ef8 | 26894 | #: doc/guix.texi:12223 |
b9fe8fd6 JL |
26895 | msgid "Defaults to @samp{500}." |
26896 | msgstr "" | |
26897 | ||
26898 | #. type: deftypevr | |
39764ef8 | 26899 | #: doc/guix.texi:12225 |
b9fe8fd6 | 26900 | #, no-wrap |
39764ef8 | 26901 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs-per-printer" |
b9fe8fd6 JL |
26902 | msgstr "" |
26903 | ||
26904 | #. type: deftypevr | |
39764ef8 | 26905 | #: doc/guix.texi:12228 |
b9fe8fd6 JL |
26906 | msgid "" |
26907 | "Specifies the maximum number of simultaneous jobs that are allowed per " | |
26908 | "printer. A value of 0 allows up to MaxJobs jobs per printer." | |
26909 | msgstr "" | |
26910 | ||
26911 | #. type: deftypevr | |
39764ef8 | 26912 | #: doc/guix.texi:12232 |
b9fe8fd6 JL |
26913 | #, no-wrap |
26914 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-jobs-per-user" | |
26915 | msgstr "" | |
26916 | ||
26917 | #. type: deftypevr | |
39764ef8 | 26918 | #: doc/guix.texi:12235 |
b9fe8fd6 JL |
26919 | msgid "" |
26920 | "Specifies the maximum number of simultaneous jobs that are allowed per " | |
26921 | "user. A value of 0 allows up to MaxJobs jobs per user." | |
26922 | msgstr "" | |
26923 | ||
26924 | #. type: deftypevr | |
39764ef8 | 26925 | #: doc/guix.texi:12239 |
b9fe8fd6 JL |
26926 | #, no-wrap |
26927 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-job-time" | |
26928 | msgstr "" | |
26929 | ||
26930 | #. type: deftypevr | |
39764ef8 | 26931 | #: doc/guix.texi:12242 |
b9fe8fd6 JL |
26932 | msgid "" |
26933 | "Specifies the maximum time a job may take to print before it is canceled, in " | |
26934 | "seconds. Set to 0 to disable cancellation of \"stuck\" jobs." | |
26935 | msgstr "" | |
26936 | ||
26937 | #. type: deftypevr | |
39764ef8 | 26938 | #: doc/guix.texi:12244 |
b9fe8fd6 JL |
26939 | msgid "Defaults to @samp{10800}." |
26940 | msgstr "" | |
26941 | ||
26942 | #. type: deftypevr | |
39764ef8 | 26943 | #: doc/guix.texi:12246 |
b9fe8fd6 JL |
26944 | #, no-wrap |
26945 | msgid "{@code{cups-configuration} parameter} non-negative-integer max-log-size" | |
26946 | msgstr "" | |
26947 | ||
26948 | #. type: deftypevr | |
39764ef8 | 26949 | #: doc/guix.texi:12249 |
b9fe8fd6 JL |
26950 | msgid "" |
26951 | "Specifies the maximum size of the log files before they are rotated, in " | |
26952 | "bytes. The value 0 disables log rotation." | |
26953 | msgstr "" | |
26954 | ||
26955 | #. type: deftypevr | |
39764ef8 | 26956 | #: doc/guix.texi:12251 |
b9fe8fd6 JL |
26957 | msgid "Defaults to @samp{1048576}." |
26958 | msgstr "" | |
26959 | ||
26960 | #. type: deftypevr | |
39764ef8 | 26961 | #: doc/guix.texi:12253 |
b9fe8fd6 | 26962 | #, no-wrap |
39764ef8 | 26963 | msgid "{@code{cups-configuration} parameter} non-negative-integer multiple-operation-timeout" |
b9fe8fd6 JL |
26964 | msgstr "" |
26965 | ||
26966 | #. type: deftypevr | |
39764ef8 | 26967 | #: doc/guix.texi:12256 |
b9fe8fd6 JL |
26968 | msgid "" |
26969 | "Specifies the maximum amount of time to allow between files in a multiple " | |
26970 | "file print job, in seconds." | |
26971 | msgstr "" | |
26972 | ||
26973 | #. type: deftypevr | |
39764ef8 | 26974 | #: doc/guix.texi:12258 doc/guix.texi:12472 |
b9fe8fd6 JL |
26975 | msgid "Defaults to @samp{300}." |
26976 | msgstr "" | |
26977 | ||
26978 | #. type: deftypevr | |
39764ef8 | 26979 | #: doc/guix.texi:12260 |
b9fe8fd6 JL |
26980 | #, no-wrap |
26981 | msgid "{@code{cups-configuration} parameter} string page-log-format" | |
26982 | msgstr "" | |
26983 | ||
26984 | #. type: deftypevr | |
39764ef8 | 26985 | #: doc/guix.texi:12265 |
b9fe8fd6 JL |
26986 | msgid "" |
26987 | "Specifies the format of PageLog lines. Sequences beginning with percent " | |
26988 | "(@samp{%}) characters are replaced with the corresponding information, while " | |
26989 | "all other characters are copied literally. The following percent sequences " | |
26990 | "are recognized:" | |
26991 | msgstr "" | |
26992 | ||
26993 | #. type: item | |
39764ef8 | 26994 | #: doc/guix.texi:12267 |
b9fe8fd6 JL |
26995 | #, no-wrap |
26996 | msgid "%%" | |
26997 | msgstr "" | |
26998 | ||
26999 | #. type: table | |
39764ef8 | 27000 | #: doc/guix.texi:12269 |
b9fe8fd6 JL |
27001 | msgid "insert a single percent character" |
27002 | msgstr "" | |
27003 | ||
27004 | #. type: item | |
39764ef8 | 27005 | #: doc/guix.texi:12270 |
b9fe8fd6 JL |
27006 | #, no-wrap |
27007 | msgid "%@{name@}" | |
27008 | msgstr "" | |
27009 | ||
27010 | #. type: table | |
39764ef8 | 27011 | #: doc/guix.texi:12272 |
b9fe8fd6 JL |
27012 | msgid "insert the value of the specified IPP attribute" |
27013 | msgstr "" | |
27014 | ||
27015 | #. type: item | |
39764ef8 | 27016 | #: doc/guix.texi:12273 |
b9fe8fd6 JL |
27017 | #, no-wrap |
27018 | msgid "%C" | |
27019 | msgstr "" | |
27020 | ||
27021 | #. type: table | |
39764ef8 | 27022 | #: doc/guix.texi:12275 |
b9fe8fd6 JL |
27023 | msgid "insert the number of copies for the current page" |
27024 | msgstr "" | |
27025 | ||
27026 | #. type: item | |
39764ef8 | 27027 | #: doc/guix.texi:12276 |
b9fe8fd6 JL |
27028 | #, no-wrap |
27029 | msgid "%P" | |
27030 | msgstr "" | |
27031 | ||
27032 | #. type: table | |
39764ef8 | 27033 | #: doc/guix.texi:12278 |
b9fe8fd6 JL |
27034 | msgid "insert the current page number" |
27035 | msgstr "" | |
27036 | ||
27037 | #. type: item | |
39764ef8 | 27038 | #: doc/guix.texi:12279 |
b9fe8fd6 JL |
27039 | #, no-wrap |
27040 | msgid "%T" | |
27041 | msgstr "" | |
27042 | ||
27043 | #. type: table | |
39764ef8 | 27044 | #: doc/guix.texi:12281 |
b9fe8fd6 JL |
27045 | msgid "insert the current date and time in common log format" |
27046 | msgstr "" | |
27047 | ||
27048 | #. type: item | |
39764ef8 | 27049 | #: doc/guix.texi:12282 |
b9fe8fd6 JL |
27050 | #, no-wrap |
27051 | msgid "%j" | |
27052 | msgstr "" | |
27053 | ||
27054 | #. type: table | |
39764ef8 | 27055 | #: doc/guix.texi:12284 |
b9fe8fd6 JL |
27056 | msgid "insert the job ID" |
27057 | msgstr "" | |
27058 | ||
27059 | #. type: item | |
39764ef8 | 27060 | #: doc/guix.texi:12285 doc/guix.texi:13617 |
b9fe8fd6 JL |
27061 | #, no-wrap |
27062 | msgid "%p" | |
27063 | msgstr "" | |
27064 | ||
27065 | #. type: table | |
39764ef8 | 27066 | #: doc/guix.texi:12287 |
b9fe8fd6 JL |
27067 | msgid "insert the printer name" |
27068 | msgstr "" | |
27069 | ||
27070 | #. type: item | |
39764ef8 | 27071 | #: doc/guix.texi:12288 doc/guix.texi:13640 |
b9fe8fd6 JL |
27072 | #, no-wrap |
27073 | msgid "%u" | |
27074 | msgstr "" | |
27075 | ||
27076 | #. type: table | |
39764ef8 | 27077 | #: doc/guix.texi:12290 |
b9fe8fd6 JL |
27078 | msgid "insert the username" |
27079 | msgstr "" | |
27080 | ||
27081 | #. type: deftypevr | |
39764ef8 | 27082 | #: doc/guix.texi:12296 |
b9fe8fd6 JL |
27083 | msgid "" |
27084 | "A value of the empty string disables page logging. The string @code{%p %u " | |
27085 | "%j %T %P %C %@{job-billing@} %@{job-originating-host-name@} %@{job-name@} " | |
27086 | "%@{media@} %@{sides@}} creates a page log with the standard items." | |
27087 | msgstr "" | |
27088 | ||
27089 | #. type: deftypevr | |
39764ef8 | 27090 | #: doc/guix.texi:12300 |
b9fe8fd6 | 27091 | #, no-wrap |
39764ef8 | 27092 | msgid "{@code{cups-configuration} parameter} environment-variables environment-variables" |
b9fe8fd6 JL |
27093 | msgstr "" |
27094 | ||
27095 | #. type: deftypevr | |
39764ef8 | 27096 | #: doc/guix.texi:12303 |
b9fe8fd6 JL |
27097 | msgid "" |
27098 | "Passes the specified environment variable(s) to child processes; a list of " | |
27099 | "strings." | |
27100 | msgstr "" | |
27101 | ||
27102 | #. type: deftypevr | |
39764ef8 | 27103 | #: doc/guix.texi:12307 |
b9fe8fd6 JL |
27104 | #, no-wrap |
27105 | msgid "{@code{cups-configuration} parameter} policy-configuration-list policies" | |
27106 | msgstr "" | |
27107 | ||
27108 | #. type: deftypevr | |
39764ef8 | 27109 | #: doc/guix.texi:12309 |
b9fe8fd6 JL |
27110 | msgid "Specifies named access control policies." |
27111 | msgstr "" | |
27112 | ||
27113 | #. type: deftypevr | |
39764ef8 | 27114 | #: doc/guix.texi:12311 |
b9fe8fd6 JL |
27115 | msgid "Available @code{policy-configuration} fields are:" |
27116 | msgstr "" | |
27117 | ||
27118 | #. type: deftypevr | |
39764ef8 | 27119 | #: doc/guix.texi:12312 |
b9fe8fd6 JL |
27120 | #, no-wrap |
27121 | msgid "{@code{policy-configuration} parameter} string name" | |
27122 | msgstr "" | |
27123 | ||
27124 | #. type: deftypevr | |
39764ef8 | 27125 | #: doc/guix.texi:12314 |
b9fe8fd6 JL |
27126 | msgid "Name of the policy." |
27127 | msgstr "" | |
27128 | ||
27129 | #. type: deftypevr | |
39764ef8 | 27130 | #: doc/guix.texi:12316 |
b9fe8fd6 JL |
27131 | #, no-wrap |
27132 | msgid "{@code{policy-configuration} parameter} string job-private-access" | |
27133 | msgstr "" | |
27134 | ||
27135 | #. type: deftypevr | |
39764ef8 | 27136 | #: doc/guix.texi:12326 |
b9fe8fd6 JL |
27137 | msgid "" |
27138 | "Specifies an access list for a job's private values. @code{@@ACL} maps to " | |
27139 | "the printer's requesting-user-name-allowed or requesting-user-name-denied " | |
27140 | "values. @code{@@OWNER} maps to the job's owner. @code{@@SYSTEM} maps to " | |
39764ef8 JL |
27141 | "the groups listed for the @code{system-group} field of the @code{files-" |
27142 | "config} configuration, which is reified into the @code{cups-files.conf(5)} " | |
27143 | "file. Other possible elements of the access list include specific user " | |
27144 | "names, and @code{@@@var{group}} to indicate members of a specific group. " | |
27145 | "The access list may also be simply @code{all} or @code{default}." | |
b9fe8fd6 JL |
27146 | msgstr "" |
27147 | ||
27148 | #. type: deftypevr | |
39764ef8 | 27149 | #: doc/guix.texi:12328 doc/guix.texi:12350 |
b9fe8fd6 JL |
27150 | msgid "Defaults to @samp{\"@@OWNER @@SYSTEM\"}." |
27151 | msgstr "" | |
27152 | ||
27153 | #. type: deftypevr | |
39764ef8 | 27154 | #: doc/guix.texi:12330 |
b9fe8fd6 JL |
27155 | #, no-wrap |
27156 | msgid "{@code{policy-configuration} parameter} string job-private-values" | |
27157 | msgstr "" | |
27158 | ||
27159 | #. type: deftypevr | |
39764ef8 | 27160 | #: doc/guix.texi:12333 doc/guix.texi:12355 |
b9fe8fd6 JL |
27161 | msgid "" |
27162 | "Specifies the list of job values to make private, or @code{all}, " | |
27163 | "@code{default}, or @code{none}." | |
27164 | msgstr "" | |
27165 | ||
27166 | #. type: deftypevr | |
39764ef8 | 27167 | #: doc/guix.texi:12336 |
b9fe8fd6 | 27168 | msgid "" |
39764ef8 JL |
27169 | "Defaults to @samp{\"job-name job-originating-host-name job-originating-user-" |
27170 | "name phone\"}." | |
b9fe8fd6 JL |
27171 | msgstr "" |
27172 | ||
27173 | #. type: deftypevr | |
39764ef8 | 27174 | #: doc/guix.texi:12338 |
b9fe8fd6 JL |
27175 | #, no-wrap |
27176 | msgid "{@code{policy-configuration} parameter} string subscription-private-access" | |
27177 | msgstr "" | |
27178 | ||
27179 | #. type: deftypevr | |
39764ef8 | 27180 | #: doc/guix.texi:12348 |
b9fe8fd6 JL |
27181 | msgid "" |
27182 | "Specifies an access list for a subscription's private values. @code{@@ACL} " | |
39764ef8 JL |
27183 | "maps to the printer's requesting-user-name-allowed or requesting-user-name-" |
27184 | "denied values. @code{@@OWNER} maps to the job's owner. @code{@@SYSTEM} " | |
27185 | "maps to the groups listed for the @code{system-group} field of the " | |
27186 | "@code{files-config} configuration, which is reified into the @code{cups-" | |
27187 | "files.conf(5)} file. Other possible elements of the access list include " | |
27188 | "specific user names, and @code{@@@var{group}} to indicate members of a " | |
27189 | "specific group. The access list may also be simply @code{all} or " | |
27190 | "@code{default}." | |
b9fe8fd6 JL |
27191 | msgstr "" |
27192 | ||
27193 | #. type: deftypevr | |
39764ef8 | 27194 | #: doc/guix.texi:12352 |
b9fe8fd6 JL |
27195 | #, no-wrap |
27196 | msgid "{@code{policy-configuration} parameter} string subscription-private-values" | |
27197 | msgstr "" | |
27198 | ||
27199 | #. type: deftypevr | |
39764ef8 | 27200 | #: doc/guix.texi:12358 |
b9fe8fd6 JL |
27201 | msgid "" |
27202 | "Defaults to @samp{\"notify-events notify-pull-method notify-recipient-uri " | |
27203 | "notify-subscriber-user-name notify-user-data\"}." | |
27204 | msgstr "" | |
27205 | ||
27206 | #. type: deftypevr | |
39764ef8 | 27207 | #: doc/guix.texi:12360 |
b9fe8fd6 | 27208 | #, no-wrap |
39764ef8 | 27209 | msgid "{@code{policy-configuration} parameter} operation-access-control-list access-controls" |
b9fe8fd6 JL |
27210 | msgstr "" |
27211 | ||
27212 | #. type: deftypevr | |
39764ef8 | 27213 | #: doc/guix.texi:12362 |
b9fe8fd6 JL |
27214 | msgid "Access control by IPP operation." |
27215 | msgstr "" | |
27216 | ||
27217 | #. type: deftypevr | |
39764ef8 | 27218 | #: doc/guix.texi:12367 |
b9fe8fd6 | 27219 | #, no-wrap |
39764ef8 | 27220 | msgid "{@code{cups-configuration} parameter} boolean-or-non-negative-integer preserve-job-files" |
b9fe8fd6 JL |
27221 | msgstr "" |
27222 | ||
27223 | #. type: deftypevr | |
39764ef8 | 27224 | #: doc/guix.texi:12372 |
b9fe8fd6 JL |
27225 | msgid "" |
27226 | "Specifies whether job files (documents) are preserved after a job is " | |
27227 | "printed. If a numeric value is specified, job files are preserved for the " | |
27228 | "indicated number of seconds after printing. Otherwise a boolean value " | |
27229 | "applies indefinitely." | |
27230 | msgstr "" | |
27231 | ||
27232 | #. type: deftypevr | |
39764ef8 | 27233 | #: doc/guix.texi:12374 |
b9fe8fd6 JL |
27234 | msgid "Defaults to @samp{86400}." |
27235 | msgstr "" | |
27236 | ||
27237 | #. type: deftypevr | |
39764ef8 | 27238 | #: doc/guix.texi:12376 |
b9fe8fd6 | 27239 | #, no-wrap |
39764ef8 | 27240 | msgid "{@code{cups-configuration} parameter} boolean-or-non-negative-integer preserve-job-history" |
b9fe8fd6 JL |
27241 | msgstr "" |
27242 | ||
27243 | #. type: deftypevr | |
39764ef8 | 27244 | #: doc/guix.texi:12381 |
b9fe8fd6 JL |
27245 | msgid "" |
27246 | "Specifies whether the job history is preserved after a job is printed. If a " | |
27247 | "numeric value is specified, the job history is preserved for the indicated " | |
27248 | "number of seconds after printing. If @code{#t}, the job history is " | |
27249 | "preserved until the MaxJobs limit is reached." | |
27250 | msgstr "" | |
27251 | ||
27252 | #. type: deftypevr | |
39764ef8 | 27253 | #: doc/guix.texi:12385 |
b9fe8fd6 JL |
27254 | #, no-wrap |
27255 | msgid "{@code{cups-configuration} parameter} non-negative-integer reload-timeout" | |
27256 | msgstr "" | |
27257 | ||
27258 | #. type: deftypevr | |
39764ef8 | 27259 | #: doc/guix.texi:12388 |
b9fe8fd6 JL |
27260 | msgid "" |
27261 | "Specifies the amount of time to wait for job completion before restarting " | |
27262 | "the scheduler." | |
27263 | msgstr "" | |
27264 | ||
27265 | #. type: deftypevr | |
39764ef8 | 27266 | #: doc/guix.texi:12392 |
b9fe8fd6 JL |
27267 | #, no-wrap |
27268 | msgid "{@code{cups-configuration} parameter} string rip-cache" | |
27269 | msgstr "" | |
27270 | ||
27271 | #. type: deftypevr | |
39764ef8 | 27272 | #: doc/guix.texi:12395 |
b9fe8fd6 JL |
27273 | msgid "" |
27274 | "Specifies the maximum amount of memory to use when converting documents into " | |
27275 | "bitmaps for a printer." | |
27276 | msgstr "" | |
27277 | ||
27278 | #. type: deftypevr | |
39764ef8 | 27279 | #: doc/guix.texi:12397 |
b9fe8fd6 JL |
27280 | msgid "Defaults to @samp{\"128m\"}." |
27281 | msgstr "" | |
27282 | ||
27283 | #. type: deftypevr | |
39764ef8 | 27284 | #: doc/guix.texi:12399 |
b9fe8fd6 JL |
27285 | #, no-wrap |
27286 | msgid "{@code{cups-configuration} parameter} string server-admin" | |
27287 | msgstr "" | |
27288 | ||
27289 | #. type: deftypevr | |
39764ef8 | 27290 | #: doc/guix.texi:12401 |
b9fe8fd6 JL |
27291 | msgid "Specifies the email address of the server administrator." |
27292 | msgstr "" | |
27293 | ||
27294 | #. type: deftypevr | |
39764ef8 | 27295 | #: doc/guix.texi:12403 |
b9fe8fd6 JL |
27296 | msgid "Defaults to @samp{\"root@@localhost.localdomain\"}." |
27297 | msgstr "" | |
27298 | ||
27299 | #. type: deftypevr | |
39764ef8 | 27300 | #: doc/guix.texi:12405 |
b9fe8fd6 JL |
27301 | #, no-wrap |
27302 | msgid "{@code{cups-configuration} parameter} host-name-list-or-* server-alias" | |
27303 | msgstr "" | |
27304 | ||
27305 | #. type: deftypevr | |
39764ef8 | 27306 | #: doc/guix.texi:12413 |
b9fe8fd6 JL |
27307 | msgid "" |
27308 | "The ServerAlias directive is used for HTTP Host header validation when " | |
27309 | "clients connect to the scheduler from external interfaces. Using the " | |
27310 | "special name @code{*} can expose your system to known browser-based DNS " | |
27311 | "rebinding attacks, even when accessing sites through a firewall. If the " | |
27312 | "auto-discovery of alternate names does not work, we recommend listing each " | |
27313 | "alternate name with a ServerAlias directive instead of using @code{*}." | |
27314 | msgstr "" | |
27315 | ||
27316 | #. type: deftypevr | |
39764ef8 | 27317 | #: doc/guix.texi:12415 |
b9fe8fd6 JL |
27318 | msgid "Defaults to @samp{*}." |
27319 | msgstr "" | |
27320 | ||
27321 | #. type: deftypevr | |
39764ef8 | 27322 | #: doc/guix.texi:12417 |
b9fe8fd6 JL |
27323 | #, no-wrap |
27324 | msgid "{@code{cups-configuration} parameter} string server-name" | |
27325 | msgstr "" | |
27326 | ||
27327 | #. type: deftypevr | |
39764ef8 | 27328 | #: doc/guix.texi:12419 |
b9fe8fd6 JL |
27329 | msgid "Specifies the fully-qualified host name of the server." |
27330 | msgstr "" | |
27331 | ||
27332 | #. type: deftypevr | |
39764ef8 | 27333 | #: doc/guix.texi:12421 |
b9fe8fd6 JL |
27334 | msgid "Defaults to @samp{\"localhost\"}." |
27335 | msgstr "" | |
27336 | ||
27337 | #. type: deftypevr | |
39764ef8 | 27338 | #: doc/guix.texi:12423 |
b9fe8fd6 JL |
27339 | #, no-wrap |
27340 | msgid "{@code{cups-configuration} parameter} server-tokens server-tokens" | |
27341 | msgstr "" | |
27342 | ||
27343 | #. type: deftypevr | |
39764ef8 | 27344 | #: doc/guix.texi:12431 |
b9fe8fd6 JL |
27345 | msgid "" |
27346 | "Specifies what information is included in the Server header of HTTP " | |
27347 | "responses. @code{None} disables the Server header. @code{ProductOnly} " | |
27348 | "reports @code{CUPS}. @code{Major} reports @code{CUPS 2}. @code{Minor} " | |
27349 | "reports @code{CUPS 2.0}. @code{Minimal} reports @code{CUPS 2.0.0}. " | |
27350 | "@code{OS} reports @code{CUPS 2.0.0 (@var{uname})} where @var{uname} is the " | |
27351 | "output of the @code{uname} command. @code{Full} reports @code{CUPS 2.0.0 " | |
27352 | "(@var{uname}) IPP/2.0}." | |
27353 | msgstr "" | |
27354 | ||
27355 | #. type: deftypevr | |
39764ef8 | 27356 | #: doc/guix.texi:12433 |
b9fe8fd6 JL |
27357 | msgid "Defaults to @samp{Minimal}." |
27358 | msgstr "" | |
27359 | ||
27360 | #. type: deftypevr | |
39764ef8 | 27361 | #: doc/guix.texi:12435 |
b9fe8fd6 JL |
27362 | #, no-wrap |
27363 | msgid "{@code{cups-configuration} parameter} string set-env" | |
27364 | msgstr "" | |
27365 | ||
27366 | #. type: deftypevr | |
39764ef8 | 27367 | #: doc/guix.texi:12437 |
b9fe8fd6 JL |
27368 | msgid "Set the specified environment variable to be passed to child processes." |
27369 | msgstr "" | |
27370 | ||
27371 | #. type: deftypevr | |
39764ef8 | 27372 | #: doc/guix.texi:12439 |
b9fe8fd6 JL |
27373 | msgid "Defaults to @samp{\"variable value\"}." |
27374 | msgstr "" | |
27375 | ||
27376 | #. type: deftypevr | |
39764ef8 | 27377 | #: doc/guix.texi:12441 |
b9fe8fd6 JL |
27378 | #, no-wrap |
27379 | msgid "{@code{cups-configuration} parameter} multiline-string-list ssl-listen" | |
27380 | msgstr "" | |
27381 | ||
27382 | #. type: deftypevr | |
39764ef8 | 27383 | #: doc/guix.texi:12446 |
b9fe8fd6 JL |
27384 | msgid "" |
27385 | "Listens on the specified interfaces for encrypted connections. Valid values " | |
27386 | "are of the form @var{address}:@var{port}, where @var{address} is either an " | |
27387 | "IPv6 address enclosed in brackets, an IPv4 address, or @code{*} to indicate " | |
27388 | "all addresses." | |
27389 | msgstr "" | |
27390 | ||
27391 | #. type: deftypevr | |
39764ef8 | 27392 | #: doc/guix.texi:12450 |
b9fe8fd6 JL |
27393 | #, no-wrap |
27394 | msgid "{@code{cups-configuration} parameter} ssl-options ssl-options" | |
27395 | msgstr "" | |
27396 | ||
27397 | #. type: deftypevr | |
39764ef8 | 27398 | #: doc/guix.texi:12457 |
b9fe8fd6 JL |
27399 | msgid "" |
27400 | "Sets encryption options. By default, CUPS only supports encryption using " | |
27401 | "TLS v1.0 or higher using known secure cipher suites. The @code{AllowRC4} " | |
27402 | "option enables the 128-bit RC4 cipher suites, which are required for some " | |
27403 | "older clients that do not implement newer ones. The @code{AllowSSL3} option " | |
27404 | "enables SSL v3.0, which is required for some older clients that do not " | |
27405 | "support TLS v1.0." | |
27406 | msgstr "" | |
27407 | ||
27408 | #. type: deftypevr | |
39764ef8 | 27409 | #: doc/guix.texi:12461 |
b9fe8fd6 JL |
27410 | #, no-wrap |
27411 | msgid "{@code{cups-configuration} parameter} boolean strict-conformance?" | |
27412 | msgstr "" | |
27413 | ||
27414 | #. type: deftypevr | |
39764ef8 | 27415 | #: doc/guix.texi:12464 |
b9fe8fd6 JL |
27416 | msgid "" |
27417 | "Specifies whether the scheduler requires clients to strictly adhere to the " | |
27418 | "IPP specifications." | |
27419 | msgstr "" | |
27420 | ||
27421 | #. type: deftypevr | |
39764ef8 | 27422 | #: doc/guix.texi:12468 |
b9fe8fd6 JL |
27423 | #, no-wrap |
27424 | msgid "{@code{cups-configuration} parameter} non-negative-integer timeout" | |
27425 | msgstr "" | |
27426 | ||
27427 | #. type: deftypevr | |
39764ef8 | 27428 | #: doc/guix.texi:12470 |
b9fe8fd6 JL |
27429 | msgid "Specifies the HTTP request timeout, in seconds." |
27430 | msgstr "" | |
27431 | ||
27432 | #. type: deftypevr | |
39764ef8 | 27433 | #: doc/guix.texi:12475 |
b9fe8fd6 JL |
27434 | #, no-wrap |
27435 | msgid "{@code{cups-configuration} parameter} boolean web-interface?" | |
27436 | msgstr "" | |
27437 | ||
27438 | #. type: deftypevr | |
39764ef8 | 27439 | #: doc/guix.texi:12477 |
b9fe8fd6 JL |
27440 | msgid "Specifies whether the web interface is enabled." |
27441 | msgstr "" | |
27442 | ||
27443 | #. type: Plain text | |
39764ef8 | 27444 | #: doc/guix.texi:12487 |
b9fe8fd6 JL |
27445 | msgid "" |
27446 | "At this point you're probably thinking ``oh dear, Guix manual, I like you " | |
27447 | "but you can stop already with the configuration options''. Indeed. " | |
39764ef8 JL |
27448 | "However, one more point: it could be that you have an existing @code{cupsd." |
27449 | "conf} that you want to use. In that case, you can pass an @code{opaque-cups-" | |
27450 | "configuration} as the configuration of a @code{cups-service-type}." | |
b9fe8fd6 JL |
27451 | msgstr "" |
27452 | ||
27453 | #. type: Plain text | |
39764ef8 | 27454 | #: doc/guix.texi:12489 |
b9fe8fd6 JL |
27455 | msgid "Available @code{opaque-cups-configuration} fields are:" |
27456 | msgstr "" | |
27457 | ||
27458 | #. type: deftypevr | |
39764ef8 | 27459 | #: doc/guix.texi:12490 |
b9fe8fd6 JL |
27460 | #, no-wrap |
27461 | msgid "{@code{opaque-cups-configuration} parameter} package cups" | |
27462 | msgstr "" | |
27463 | ||
27464 | #. type: deftypevr | |
39764ef8 | 27465 | #: doc/guix.texi:12494 |
b9fe8fd6 JL |
27466 | #, no-wrap |
27467 | msgid "{@code{opaque-cups-configuration} parameter} string cupsd.conf" | |
27468 | msgstr "" | |
27469 | ||
27470 | #. type: deftypevr | |
39764ef8 | 27471 | #: doc/guix.texi:12496 |
b9fe8fd6 JL |
27472 | msgid "The contents of the @code{cupsd.conf}, as a string." |
27473 | msgstr "" | |
27474 | ||
27475 | #. type: deftypevr | |
39764ef8 | 27476 | #: doc/guix.texi:12498 |
b9fe8fd6 JL |
27477 | #, no-wrap |
27478 | msgid "{@code{opaque-cups-configuration} parameter} string cups-files.conf" | |
27479 | msgstr "" | |
27480 | ||
27481 | #. type: deftypevr | |
39764ef8 | 27482 | #: doc/guix.texi:12500 |
b9fe8fd6 JL |
27483 | msgid "The contents of the @code{cups-files.conf} file, as a string." |
27484 | msgstr "" | |
27485 | ||
27486 | #. type: Plain text | |
39764ef8 | 27487 | #: doc/guix.texi:12505 |
b9fe8fd6 JL |
27488 | msgid "" |
27489 | "For example, if your @code{cupsd.conf} and @code{cups-files.conf} are in " | |
27490 | "strings of the same name, you could instantiate a CUPS service like this:" | |
27491 | msgstr "" | |
27492 | ||
27493 | #. type: example | |
39764ef8 | 27494 | #: doc/guix.texi:12511 |
b9fe8fd6 JL |
27495 | #, no-wrap |
27496 | msgid "" | |
27497 | "(service cups-service-type\n" | |
27498 | " (opaque-cups-configuration\n" | |
27499 | " (cupsd.conf cupsd.conf)\n" | |
27500 | " (cups-files.conf cups-files.conf)))\n" | |
27501 | msgstr "" | |
27502 | ||
27503 | #. type: Plain text | |
39764ef8 | 27504 | #: doc/guix.texi:12522 |
b9fe8fd6 JL |
27505 | msgid "" |
27506 | "The @code{(gnu services desktop)} module provides services that are usually " | |
27507 | "useful in the context of a ``desktop'' setup---that is, on a machine running " | |
27508 | "a graphical display server, possibly with graphical user interfaces, etc. " | |
27509 | "It also defines services that provide specific desktop environments like " | |
27510 | "GNOME, XFCE or MATE." | |
27511 | msgstr "" | |
27512 | ||
27513 | #. type: Plain text | |
39764ef8 | 27514 | #: doc/guix.texi:12526 |
b9fe8fd6 JL |
27515 | msgid "" |
27516 | "To simplify things, the module defines a variable containing the set of " | |
27517 | "services that users typically expect on a machine with a graphical " | |
27518 | "environment and networking:" | |
27519 | msgstr "" | |
27520 | ||
27521 | #. type: defvr | |
39764ef8 | 27522 | #: doc/guix.texi:12527 |
b9fe8fd6 JL |
27523 | #, no-wrap |
27524 | msgid "{Scheme Variable} %desktop-services" | |
27525 | msgstr "" | |
27526 | ||
27527 | #. type: defvr | |
39764ef8 | 27528 | #: doc/guix.texi:12530 |
b9fe8fd6 JL |
27529 | msgid "" |
27530 | "This is a list of services that builds upon @var{%base-services} and adds or " | |
27531 | "adjusts services for a typical ``desktop'' setup." | |
27532 | msgstr "" | |
27533 | ||
27534 | #. type: defvr | |
39764ef8 | 27535 | #: doc/guix.texi:12540 |
b9fe8fd6 JL |
27536 | msgid "" |
27537 | "In particular, it adds a graphical login manager (@pxref{X Window, " | |
27538 | "@code{slim-service}}), screen lockers, a network management tool " | |
27539 | "(@pxref{Networking Services, @code{network-manager-service-type}}), energy " | |
27540 | "and color management services, the @code{elogind} login and seat manager, " | |
27541 | "the Polkit privilege service, the GeoClue location service, the " | |
27542 | "AccountsService daemon that allows authorized users change system passwords, " | |
27543 | "an NTP client (@pxref{Networking Services}), the Avahi daemon, and has the " | |
27544 | "name service switch service configured to be able to use @code{nss-mdns} " | |
27545 | "(@pxref{Name Service Switch, mDNS})." | |
27546 | msgstr "" | |
27547 | ||
27548 | #. type: Plain text | |
39764ef8 | 27549 | #: doc/guix.texi:12545 |
b9fe8fd6 JL |
27550 | msgid "" |
27551 | "The @var{%desktop-services} variable can be used as the @code{services} " | |
27552 | "field of an @code{operating-system} declaration (@pxref{operating-system " | |
27553 | "Reference, @code{services}})." | |
27554 | msgstr "" | |
27555 | ||
27556 | #. type: Plain text | |
39764ef8 | 27557 | #: doc/guix.texi:12565 |
b9fe8fd6 JL |
27558 | msgid "" |
27559 | "Additionally, the @code{gnome-desktop-service}, @code{xfce-desktop-service} " | |
27560 | "and @code{mate-desktop-service} procedures can add GNOME, XFCE and/or MATE " | |
27561 | "to a system. To ``add GNOME'' means that system-level services like the " | |
27562 | "backlight adjustment helpers and the power management utilities are added to " | |
27563 | "the system, extending @code{polkit} and @code{dbus} appropriately, allowing " | |
39764ef8 JL |
27564 | "GNOME to operate with elevated privileges on a limited number of special-" |
27565 | "purpose system interfaces. Additionally, adding a service made by " | |
b9fe8fd6 JL |
27566 | "@code{gnome-desktop-service} adds the GNOME metapackage to the system " |
27567 | "profile. Likewise, adding the XFCE service not only adds the @code{xfce} " | |
27568 | "metapackage to the system profile, but it also gives the Thunar file manager " | |
27569 | "the ability to open a ``root-mode'' file management window, if the user " | |
27570 | "authenticates using the administrator's password via the standard polkit " | |
27571 | "graphical interface. To ``add MATE'' means that @code{polkit} and " | |
27572 | "@code{dbus} are extended appropriately, allowing MATE to operate with " | |
27573 | "elevated privileges on a limited number of special-purpose system " | |
39764ef8 JL |
27574 | "interfaces. Additionally, adding a service made by @code{mate-desktop-" |
27575 | "service} adds the MATE metapackage to the system profile." | |
b9fe8fd6 JL |
27576 | msgstr "" |
27577 | ||
27578 | #. type: Plain text | |
39764ef8 | 27579 | #: doc/guix.texi:12574 |
b9fe8fd6 JL |
27580 | msgid "" |
27581 | "The desktop environments in Guix use the Xorg display server by default. If " | |
27582 | "you'd like to use the newer display server protocol called Wayland, you need " | |
27583 | "to use the @code{sddm-service} instead of the @code{slim-service} for the " | |
27584 | "graphical login manager. You should then select the ``GNOME (Wayland)'' " | |
27585 | "session in SDDM. Alternatively you can also try starting GNOME on Wayland " | |
39764ef8 JL |
27586 | "manually from a TTY with the command ``XDG_SESSION_TYPE=wayland exec dbus-" |
27587 | "run-session gnome-session``. Currently only GNOME has support for Wayland." | |
b9fe8fd6 JL |
27588 | msgstr "" |
27589 | ||
27590 | #. type: deffn | |
39764ef8 | 27591 | #: doc/guix.texi:12575 |
b9fe8fd6 JL |
27592 | #, no-wrap |
27593 | msgid "{Scheme Procedure} gnome-desktop-service" | |
27594 | msgstr "" | |
27595 | ||
27596 | #. type: deffn | |
39764ef8 | 27597 | #: doc/guix.texi:12579 |
b9fe8fd6 JL |
27598 | msgid "" |
27599 | "Return a service that adds the @code{gnome} package to the system profile, " | |
27600 | "and extends polkit with the actions from @code{gnome-settings-daemon}." | |
27601 | msgstr "" | |
27602 | ||
27603 | #. type: deffn | |
39764ef8 | 27604 | #: doc/guix.texi:12581 |
b9fe8fd6 JL |
27605 | #, no-wrap |
27606 | msgid "{Scheme Procedure} xfce-desktop-service" | |
27607 | msgstr "" | |
27608 | ||
27609 | #. type: deffn | |
39764ef8 | 27610 | #: doc/guix.texi:12586 |
b9fe8fd6 JL |
27611 | msgid "" |
27612 | "Return a service that adds the @code{xfce} package to the system profile, " | |
27613 | "and extends polkit with the ability for @code{thunar} to manipulate the file " | |
27614 | "system as root from within a user session, after the user has authenticated " | |
27615 | "with the administrator's password." | |
27616 | msgstr "" | |
27617 | ||
27618 | #. type: deffn | |
39764ef8 | 27619 | #: doc/guix.texi:12588 |
b9fe8fd6 JL |
27620 | #, no-wrap |
27621 | msgid "{Scheme Procedure} mate-desktop-service" | |
27622 | msgstr "" | |
27623 | ||
27624 | #. type: deffn | |
39764ef8 | 27625 | #: doc/guix.texi:12592 |
b9fe8fd6 JL |
27626 | msgid "" |
27627 | "Return a service that adds the @code{mate} package to the system profile, " | |
27628 | "and extends polkit with the actions from @code{mate-settings-daemon}." | |
27629 | msgstr "" | |
27630 | ||
27631 | #. type: Plain text | |
39764ef8 | 27632 | #: doc/guix.texi:12599 |
b9fe8fd6 JL |
27633 | msgid "" |
27634 | "Because the GNOME, XFCE and MATE desktop services pull in so many packages, " | |
27635 | "the default @code{%desktop-services} variable doesn't include either of them " | |
27636 | "by default. To add GNOME, XFCE or MATE, just @code{cons} them onto " | |
27637 | "@code{%desktop-services} in the @code{services} field of your " | |
27638 | "@code{operating-system}:" | |
27639 | msgstr "" | |
27640 | ||
27641 | #. type: example | |
39764ef8 | 27642 | #: doc/guix.texi:12610 |
b9fe8fd6 JL |
27643 | #, no-wrap |
27644 | msgid "" | |
27645 | "(use-modules (gnu))\n" | |
27646 | "(use-service-modules desktop)\n" | |
27647 | "(operating-system\n" | |
27648 | " ...\n" | |
27649 | " ;; cons* adds items to the list given as its last argument.\n" | |
27650 | " (services (cons* (gnome-desktop-service)\n" | |
27651 | " (xfce-desktop-service)\n" | |
27652 | " %desktop-services))\n" | |
27653 | " ...)\n" | |
27654 | msgstr "" | |
27655 | ||
27656 | #. type: Plain text | |
39764ef8 | 27657 | #: doc/guix.texi:12614 |
b9fe8fd6 JL |
27658 | msgid "" |
27659 | "These desktop environments will then be available as options in the " | |
27660 | "graphical login window." | |
27661 | msgstr "" | |
27662 | ||
27663 | #. type: Plain text | |
39764ef8 | 27664 | #: doc/guix.texi:12618 |
b9fe8fd6 JL |
27665 | msgid "" |
27666 | "The actual service definitions included in @code{%desktop-services} and " | |
27667 | "provided by @code{(gnu services dbus)} and @code{(gnu services desktop)} are " | |
27668 | "described below." | |
27669 | msgstr "" | |
27670 | ||
27671 | #. type: deffn | |
39764ef8 | 27672 | #: doc/guix.texi:12619 |
b9fe8fd6 JL |
27673 | #, no-wrap |
27674 | msgid "{Scheme Procedure} dbus-service [#:dbus @var{dbus}] [#:services '()]" | |
27675 | msgstr "" | |
27676 | ||
27677 | #. type: deffn | |
39764ef8 | 27678 | #: doc/guix.texi:12622 |
b9fe8fd6 JL |
27679 | msgid "" |
27680 | "Return a service that runs the ``system bus'', using @var{dbus}, with " | |
27681 | "support for @var{services}." | |
27682 | msgstr "" | |
27683 | ||
27684 | #. type: deffn | |
39764ef8 | 27685 | #: doc/guix.texi:12626 |
b9fe8fd6 JL |
27686 | msgid "" |
27687 | "@uref{http://dbus.freedesktop.org/, D-Bus} is an inter-process communication " | |
27688 | "facility. Its system bus is used to allow system services to communicate " | |
27689 | "and to be notified of system-wide events." | |
27690 | msgstr "" | |
27691 | ||
27692 | #. type: deffn | |
39764ef8 | 27693 | #: doc/guix.texi:12631 |
b9fe8fd6 | 27694 | msgid "" |
39764ef8 JL |
27695 | "@var{services} must be a list of packages that provide an @file{etc/dbus-1/" |
27696 | "system.d} directory containing additional D-Bus configuration and policy " | |
27697 | "files. For example, to allow avahi-daemon to use the system bus, " | |
27698 | "@var{services} must be equal to @code{(list avahi)}." | |
b9fe8fd6 JL |
27699 | msgstr "" |
27700 | ||
27701 | #. type: deffn | |
39764ef8 | 27702 | #: doc/guix.texi:12633 |
b9fe8fd6 JL |
27703 | #, no-wrap |
27704 | msgid "{Scheme Procedure} elogind-service [#:config @var{config}]" | |
27705 | msgstr "" | |
27706 | ||
27707 | #. type: deffn | |
39764ef8 | 27708 | #: doc/guix.texi:12639 |
b9fe8fd6 JL |
27709 | msgid "" |
27710 | "Return a service that runs the @code{elogind} login and seat management " | |
27711 | "daemon. @uref{https://github.com/elogind/elogind, Elogind} exposes a D-Bus " | |
27712 | "interface that can be used to know which users are logged in, know what kind " | |
27713 | "of sessions they have open, suspend the system, inhibit system suspend, " | |
27714 | "reboot the system, and other tasks." | |
27715 | msgstr "" | |
27716 | ||
27717 | #. type: deffn | |
39764ef8 | 27718 | #: doc/guix.texi:12643 |
b9fe8fd6 JL |
27719 | msgid "" |
27720 | "Elogind handles most system-level power events for a computer, for example " | |
27721 | "suspending the system when a lid is closed, or shutting it down when the " | |
27722 | "power button is pressed." | |
27723 | msgstr "" | |
27724 | ||
27725 | #. type: deffn | |
39764ef8 | 27726 | #: doc/guix.texi:12648 |
b9fe8fd6 JL |
27727 | msgid "" |
27728 | "The @var{config} keyword argument specifies the configuration for elogind, " | |
27729 | "and should be the result of an @code{(elogind-configuration (@var{parameter} " | |
27730 | "@var{value})...)} invocation. Available parameters and their default values " | |
27731 | "are:" | |
27732 | msgstr "" | |
27733 | ||
27734 | #. type: item | |
39764ef8 | 27735 | #: doc/guix.texi:12650 |
b9fe8fd6 JL |
27736 | #, no-wrap |
27737 | msgid "kill-user-processes?" | |
27738 | msgstr "" | |
27739 | ||
27740 | #. type: code{#1} | |
39764ef8 JL |
27741 | #: doc/guix.texi:12652 doc/guix.texi:12670 doc/guix.texi:12672 |
27742 | #: doc/guix.texi:12674 doc/guix.texi:12686 | |
b9fe8fd6 JL |
27743 | msgid "#f" |
27744 | msgstr "" | |
27745 | ||
27746 | #. type: item | |
39764ef8 | 27747 | #: doc/guix.texi:12652 |
b9fe8fd6 JL |
27748 | #, no-wrap |
27749 | msgid "kill-only-users" | |
27750 | msgstr "" | |
27751 | ||
27752 | #. type: code{#1} | |
39764ef8 | 27753 | #: doc/guix.texi:12654 doc/guix.texi:12692 |
b9fe8fd6 JL |
27754 | msgid "()" |
27755 | msgstr "" | |
27756 | ||
27757 | #. type: item | |
39764ef8 | 27758 | #: doc/guix.texi:12654 |
b9fe8fd6 JL |
27759 | #, no-wrap |
27760 | msgid "kill-exclude-users" | |
27761 | msgstr "" | |
27762 | ||
27763 | #. type: code{#1} | |
39764ef8 | 27764 | #: doc/guix.texi:12656 |
b9fe8fd6 JL |
27765 | msgid "(\"root\")" |
27766 | msgstr "" | |
27767 | ||
27768 | #. type: item | |
39764ef8 | 27769 | #: doc/guix.texi:12656 |
b9fe8fd6 JL |
27770 | #, no-wrap |
27771 | msgid "inhibit-delay-max-seconds" | |
27772 | msgstr "" | |
27773 | ||
27774 | #. type: code{#1} | |
39764ef8 | 27775 | #: doc/guix.texi:12658 |
b9fe8fd6 JL |
27776 | msgid "5" |
27777 | msgstr "" | |
27778 | ||
27779 | #. type: item | |
39764ef8 | 27780 | #: doc/guix.texi:12658 |
b9fe8fd6 JL |
27781 | #, no-wrap |
27782 | msgid "handle-power-key" | |
27783 | msgstr "" | |
27784 | ||
27785 | #. type: code{#1} | |
39764ef8 | 27786 | #: doc/guix.texi:12660 |
b9fe8fd6 JL |
27787 | msgid "poweroff" |
27788 | msgstr "" | |
27789 | ||
27790 | #. type: item | |
39764ef8 | 27791 | #: doc/guix.texi:12660 |
b9fe8fd6 JL |
27792 | #, no-wrap |
27793 | msgid "handle-suspend-key" | |
27794 | msgstr "" | |
27795 | ||
27796 | #. type: code{#1} | |
39764ef8 | 27797 | #: doc/guix.texi:12662 doc/guix.texi:12666 |
b9fe8fd6 JL |
27798 | msgid "suspend" |
27799 | msgstr "" | |
27800 | ||
27801 | #. type: item | |
39764ef8 | 27802 | #: doc/guix.texi:12662 |
b9fe8fd6 JL |
27803 | #, no-wrap |
27804 | msgid "handle-hibernate-key" | |
27805 | msgstr "" | |
27806 | ||
27807 | #. type: code{#1} | |
39764ef8 | 27808 | #: doc/guix.texi:12664 |
b9fe8fd6 JL |
27809 | msgid "hibernate" |
27810 | msgstr "" | |
27811 | ||
27812 | #. type: item | |
39764ef8 | 27813 | #: doc/guix.texi:12664 |
b9fe8fd6 JL |
27814 | #, no-wrap |
27815 | msgid "handle-lid-switch" | |
27816 | msgstr "" | |
27817 | ||
27818 | #. type: item | |
39764ef8 | 27819 | #: doc/guix.texi:12666 |
b9fe8fd6 JL |
27820 | #, no-wrap |
27821 | msgid "handle-lid-switch-docked" | |
27822 | msgstr "" | |
27823 | ||
27824 | #. type: code{#1} | |
39764ef8 | 27825 | #: doc/guix.texi:12668 doc/guix.texi:12680 |
b9fe8fd6 JL |
27826 | msgid "ignore" |
27827 | msgstr "" | |
27828 | ||
27829 | #. type: item | |
39764ef8 | 27830 | #: doc/guix.texi:12668 |
b9fe8fd6 JL |
27831 | #, no-wrap |
27832 | msgid "power-key-ignore-inhibited?" | |
27833 | msgstr "" | |
27834 | ||
27835 | #. type: item | |
39764ef8 | 27836 | #: doc/guix.texi:12670 |
b9fe8fd6 JL |
27837 | #, no-wrap |
27838 | msgid "suspend-key-ignore-inhibited?" | |
27839 | msgstr "" | |
27840 | ||
27841 | #. type: item | |
39764ef8 | 27842 | #: doc/guix.texi:12672 |
b9fe8fd6 JL |
27843 | #, no-wrap |
27844 | msgid "hibernate-key-ignore-inhibited?" | |
27845 | msgstr "" | |
27846 | ||
27847 | #. type: item | |
39764ef8 | 27848 | #: doc/guix.texi:12674 |
b9fe8fd6 JL |
27849 | #, no-wrap |
27850 | msgid "lid-switch-ignore-inhibited?" | |
27851 | msgstr "" | |
27852 | ||
27853 | #. type: code{#1} | |
39764ef8 | 27854 | #: doc/guix.texi:12676 doc/guix.texi:12688 |
b9fe8fd6 JL |
27855 | msgid "#t" |
27856 | msgstr "" | |
27857 | ||
27858 | #. type: item | |
39764ef8 | 27859 | #: doc/guix.texi:12676 |
b9fe8fd6 JL |
27860 | #, no-wrap |
27861 | msgid "holdoff-timeout-seconds" | |
27862 | msgstr "" | |
27863 | ||
27864 | #. type: code{#1} | |
39764ef8 | 27865 | #: doc/guix.texi:12678 |
b9fe8fd6 JL |
27866 | msgid "30" |
27867 | msgstr "" | |
27868 | ||
27869 | #. type: item | |
39764ef8 | 27870 | #: doc/guix.texi:12678 |
b9fe8fd6 JL |
27871 | #, no-wrap |
27872 | msgid "idle-action" | |
27873 | msgstr "" | |
27874 | ||
27875 | #. type: item | |
39764ef8 | 27876 | #: doc/guix.texi:12680 |
b9fe8fd6 JL |
27877 | #, no-wrap |
27878 | msgid "idle-action-seconds" | |
27879 | msgstr "" | |
27880 | ||
27881 | #. type: code{#1} | |
39764ef8 | 27882 | #: doc/guix.texi:12682 |
b9fe8fd6 JL |
27883 | msgid "(* 30 60)" |
27884 | msgstr "" | |
27885 | ||
27886 | #. type: item | |
39764ef8 | 27887 | #: doc/guix.texi:12682 |
b9fe8fd6 JL |
27888 | #, no-wrap |
27889 | msgid "runtime-directory-size-percent" | |
27890 | msgstr "" | |
27891 | ||
27892 | #. type: code{#1} | |
39764ef8 | 27893 | #: doc/guix.texi:12684 |
b9fe8fd6 JL |
27894 | msgid "10" |
27895 | msgstr "" | |
27896 | ||
27897 | #. type: item | |
39764ef8 | 27898 | #: doc/guix.texi:12684 |
b9fe8fd6 JL |
27899 | #, no-wrap |
27900 | msgid "runtime-directory-size" | |
27901 | msgstr "" | |
27902 | ||
27903 | #. type: item | |
39764ef8 | 27904 | #: doc/guix.texi:12686 |
b9fe8fd6 JL |
27905 | #, no-wrap |
27906 | msgid "remove-ipc?" | |
27907 | msgstr "" | |
27908 | ||
27909 | #. type: item | |
39764ef8 | 27910 | #: doc/guix.texi:12688 |
b9fe8fd6 JL |
27911 | #, no-wrap |
27912 | msgid "suspend-state" | |
27913 | msgstr "" | |
27914 | ||
27915 | #. type: code{#1} | |
39764ef8 | 27916 | #: doc/guix.texi:12690 |
b9fe8fd6 JL |
27917 | msgid "(\"mem\" \"standby\" \"freeze\")" |
27918 | msgstr "" | |
27919 | ||
27920 | #. type: item | |
39764ef8 | 27921 | #: doc/guix.texi:12690 |
b9fe8fd6 JL |
27922 | #, no-wrap |
27923 | msgid "suspend-mode" | |
27924 | msgstr "" | |
27925 | ||
27926 | #. type: item | |
39764ef8 | 27927 | #: doc/guix.texi:12692 |
b9fe8fd6 JL |
27928 | #, no-wrap |
27929 | msgid "hibernate-state" | |
27930 | msgstr "" | |
27931 | ||
27932 | #. type: code{#1} | |
39764ef8 | 27933 | #: doc/guix.texi:12694 doc/guix.texi:12698 |
b9fe8fd6 JL |
27934 | msgid "(\"disk\")" |
27935 | msgstr "" | |
27936 | ||
27937 | #. type: item | |
39764ef8 | 27938 | #: doc/guix.texi:12694 |
b9fe8fd6 JL |
27939 | #, no-wrap |
27940 | msgid "hibernate-mode" | |
27941 | msgstr "" | |
27942 | ||
27943 | #. type: code{#1} | |
39764ef8 | 27944 | #: doc/guix.texi:12696 |
b9fe8fd6 JL |
27945 | msgid "(\"platform\" \"shutdown\")" |
27946 | msgstr "" | |
27947 | ||
27948 | #. type: item | |
39764ef8 | 27949 | #: doc/guix.texi:12696 |
b9fe8fd6 JL |
27950 | #, no-wrap |
27951 | msgid "hybrid-sleep-state" | |
27952 | msgstr "" | |
27953 | ||
27954 | #. type: item | |
39764ef8 | 27955 | #: doc/guix.texi:12698 |
b9fe8fd6 JL |
27956 | #, no-wrap |
27957 | msgid "hybrid-sleep-mode" | |
27958 | msgstr "" | |
27959 | ||
27960 | #. type: code{#1} | |
39764ef8 | 27961 | #: doc/guix.texi:12700 |
b9fe8fd6 JL |
27962 | msgid "(\"suspend\" \"platform\" \"shutdown\")" |
27963 | msgstr "" | |
27964 | ||
27965 | #. type: deffn | |
39764ef8 | 27966 | #: doc/guix.texi:12703 |
b9fe8fd6 JL |
27967 | #, no-wrap |
27968 | msgid "{Scheme Procedure} accountsservice-service @" | |
27969 | msgstr "" | |
27970 | ||
27971 | #. type: deffn | |
39764ef8 | 27972 | #: doc/guix.texi:12711 |
b9fe8fd6 JL |
27973 | msgid "" |
27974 | "[#:accountsservice @var{accountsservice}] Return a service that runs " | |
27975 | "AccountsService, a system service that can list available accounts, change " | |
27976 | "their passwords, and so on. AccountsService integrates with PolicyKit to " | |
27977 | "enable unprivileged users to acquire the capability to modify their system " | |
39764ef8 JL |
27978 | "configuration. @uref{https://www.freedesktop.org/wiki/Software/" |
27979 | "AccountsService/, the accountsservice web site} for more information." | |
b9fe8fd6 JL |
27980 | msgstr "" |
27981 | ||
27982 | #. type: deffn | |
39764ef8 | 27983 | #: doc/guix.texi:12714 |
b9fe8fd6 JL |
27984 | msgid "" |
27985 | "The @var{accountsservice} keyword argument is the @code{accountsservice} " | |
27986 | "package to expose as a service." | |
27987 | msgstr "" | |
27988 | ||
27989 | #. type: deffn | |
39764ef8 | 27990 | #: doc/guix.texi:12716 |
b9fe8fd6 JL |
27991 | #, no-wrap |
27992 | msgid "{Scheme Procedure} polkit-service @" | |
27993 | msgstr "" | |
27994 | ||
27995 | #. type: deffn | |
39764ef8 | 27996 | #: doc/guix.texi:12725 |
b9fe8fd6 | 27997 | msgid "" |
39764ef8 JL |
27998 | "[#:polkit @var{polkit}] Return a service that runs the @uref{http://www." |
27999 | "freedesktop.org/wiki/Software/polkit/, Polkit privilege management service}, " | |
28000 | "which allows system administrators to grant access to privileged operations " | |
28001 | "in a structured way. By querying the Polkit service, a privileged system " | |
28002 | "component can know when it should grant additional capabilities to ordinary " | |
28003 | "users. For example, an ordinary user can be granted the capability to " | |
28004 | "suspend the system if the user is logged in locally." | |
b9fe8fd6 JL |
28005 | msgstr "" |
28006 | ||
28007 | #. type: deffn | |
39764ef8 | 28008 | #: doc/guix.texi:12727 |
b9fe8fd6 JL |
28009 | #, no-wrap |
28010 | msgid "{Scheme Procedure} upower-service [#:upower @var{upower}] @" | |
28011 | msgstr "" | |
28012 | ||
28013 | #. type: deffn | |
39764ef8 | 28014 | #: doc/guix.texi:12744 |
b9fe8fd6 | 28015 | msgid "" |
39764ef8 JL |
28016 | "[#:watts-up-pro? #f] @ [#:poll-batteries? #t] @ [#:ignore-lid? #f] @ [#:use-" |
28017 | "percentage-for-policy? #f] @ [#:percentage-low 10] @ [#:percentage-critical " | |
28018 | "3] @ [#:percentage-action 2] @ [#:time-low 1200] @ [#:time-critical 300] @ " | |
28019 | "[#:time-action 120] @ [#:critical-power-action 'hybrid-sleep] Return a " | |
28020 | "service that runs @uref{http://upower.freedesktop.org/, @command{upowerd}}, " | |
28021 | "a system-wide monitor for power consumption and battery levels, with the " | |
28022 | "given configuration settings. It implements the @code{org.freedesktop." | |
28023 | "UPower} D-Bus interface, and is notably used by GNOME." | |
b9fe8fd6 JL |
28024 | msgstr "" |
28025 | ||
28026 | #. type: deffn | |
39764ef8 | 28027 | #: doc/guix.texi:12746 |
b9fe8fd6 JL |
28028 | #, no-wrap |
28029 | msgid "{Scheme Procedure} udisks-service [#:udisks @var{udisks}]" | |
28030 | msgstr "" | |
28031 | ||
28032 | #. type: deffn | |
39764ef8 | 28033 | #: doc/guix.texi:12751 |
b9fe8fd6 JL |
28034 | msgid "" |
28035 | "Return a service for @uref{http://udisks.freedesktop.org/docs/latest/, " | |
28036 | "UDisks}, a @dfn{disk management} daemon that provides user interfaces with " | |
28037 | "notifications and ways to mount/unmount disks. Programs that talk to UDisks " | |
28038 | "include the @command{udisksctl} command, part of UDisks, and GNOME Disks." | |
28039 | msgstr "" | |
28040 | ||
28041 | #. type: deffn | |
39764ef8 | 28042 | #: doc/guix.texi:12753 |
b9fe8fd6 JL |
28043 | #, no-wrap |
28044 | msgid "{Scheme Procedure} colord-service [#:colord @var{colord}]" | |
28045 | msgstr "" | |
28046 | ||
28047 | #. type: deffn | |
39764ef8 | 28048 | #: doc/guix.texi:12759 |
b9fe8fd6 JL |
28049 | msgid "" |
28050 | "Return a service that runs @command{colord}, a system service with a D-Bus " | |
28051 | "interface to manage the color profiles of input and output devices such as " | |
28052 | "screens and scanners. It is notably used by the GNOME Color Manager " | |
28053 | "graphical tool. See @uref{http://www.freedesktop.org/software/colord/, the " | |
28054 | "colord web site} for more information." | |
28055 | msgstr "" | |
28056 | ||
28057 | #. type: deffn | |
39764ef8 | 28058 | #: doc/guix.texi:12761 |
b9fe8fd6 | 28059 | #, no-wrap |
39764ef8 | 28060 | msgid "{Scheme Procedure} geoclue-application name [#:allowed? #t] [#:system? #f] [#:users '()]" |
b9fe8fd6 JL |
28061 | msgstr "" |
28062 | ||
28063 | #. type: deffn | |
39764ef8 | 28064 | #: doc/guix.texi:12770 |
b9fe8fd6 JL |
28065 | msgid "" |
28066 | "Return a configuration allowing an application to access GeoClue location " | |
39764ef8 JL |
28067 | "data. @var{name} is the Desktop ID of the application, without the @code{." |
28068 | "desktop} part. If @var{allowed?} is true, the application will have access " | |
28069 | "to location information by default. The boolean @var{system?} value " | |
b9fe8fd6 JL |
28070 | "indicates whether an application is a system component or not. Finally " |
28071 | "@var{users} is a list of UIDs of all users for which this application is " | |
28072 | "allowed location info access. An empty users list means that all users are " | |
28073 | "allowed." | |
28074 | msgstr "" | |
28075 | ||
28076 | #. type: defvr | |
39764ef8 | 28077 | #: doc/guix.texi:12772 |
b9fe8fd6 JL |
28078 | #, no-wrap |
28079 | msgid "{Scheme Variable} %standard-geoclue-applications" | |
28080 | msgstr "" | |
28081 | ||
28082 | #. type: defvr | |
39764ef8 | 28083 | #: doc/guix.texi:12779 |
b9fe8fd6 JL |
28084 | msgid "" |
28085 | "The standard list of well-known GeoClue application configurations, granting " | |
28086 | "authority to the GNOME date-and-time utility to ask for the current location " | |
28087 | "in order to set the time zone, and allowing the IceCat and Epiphany web " | |
28088 | "browsers to request location information. IceCat and Epiphany both query " | |
28089 | "the user before allowing a web page to know the user's location." | |
28090 | msgstr "" | |
28091 | ||
28092 | #. type: deffn | |
39764ef8 | 28093 | #: doc/guix.texi:12781 |
b9fe8fd6 JL |
28094 | #, no-wrap |
28095 | msgid "{Scheme Procedure} geoclue-service [#:colord @var{colord}] @" | |
28096 | msgstr "" | |
28097 | ||
28098 | #. type: deffn | |
39764ef8 | 28099 | #: doc/guix.texi:12794 |
b9fe8fd6 | 28100 | msgid "" |
39764ef8 JL |
28101 | "[#:whitelist '()] @ [#:wifi-geolocation-url \"https://location.services." |
28102 | "mozilla.com/v1/geolocate?key=geoclue\"] @ [#:submit-data? #f] [#:wifi-" | |
28103 | "submission-url \"https://location.services.mozilla.com/v1/submit?key=geoclue" | |
28104 | "\"] @ [#:submission-nick \"geoclue\"] @ [#:applications %standard-geoclue-" | |
28105 | "applications] Return a service that runs the GeoClue location service. This " | |
28106 | "service provides a D-Bus interface to allow applications to request access " | |
28107 | "to a user's physical location, and optionally to add information to online " | |
28108 | "location databases. See @uref{https://wiki.freedesktop.org/www/Software/" | |
28109 | "GeoClue/, the GeoClue web site} for more information." | |
b9fe8fd6 JL |
28110 | msgstr "" |
28111 | ||
28112 | #. type: deffn | |
39764ef8 | 28113 | #: doc/guix.texi:12796 |
b9fe8fd6 JL |
28114 | #, no-wrap |
28115 | msgid "{Scheme Procedure} bluetooth-service [#:bluez @var{bluez}] @" | |
28116 | msgstr "" | |
28117 | ||
28118 | #. type: deffn | |
39764ef8 | 28119 | #: doc/guix.texi:12803 |
b9fe8fd6 JL |
28120 | msgid "" |
28121 | "[@w{#:auto-enable? #f}] Return a service that runs the @command{bluetoothd} " | |
39764ef8 JL |
28122 | "daemon, which manages all the Bluetooth devices and provides a number of D-" |
28123 | "Bus interfaces. When AUTO-ENABLE? is true, the bluetooth controller is " | |
b9fe8fd6 JL |
28124 | "powered automatically at boot, which can be useful when using a bluetooth " |
28125 | "keyboard or mouse." | |
28126 | msgstr "" | |
28127 | ||
28128 | #. type: deffn | |
39764ef8 | 28129 | #: doc/guix.texi:12805 |
b9fe8fd6 JL |
28130 | msgid "Users need to be in the @code{lp} group to access the D-Bus service." |
28131 | msgstr "" | |
28132 | ||
28133 | #. type: cindex | |
39764ef8 | 28134 | #: doc/guix.texi:12811 |
b9fe8fd6 JL |
28135 | #, no-wrap |
28136 | msgid "SQL" | |
28137 | msgstr "" | |
28138 | ||
28139 | #. type: Plain text | |
39764ef8 JL |
28140 | #: doc/guix.texi:12813 |
28141 | msgid "" | |
28142 | "The @code{(gnu services databases)} module provides the following services." | |
b9fe8fd6 JL |
28143 | msgstr "" |
28144 | ||
28145 | #. type: deffn | |
39764ef8 | 28146 | #: doc/guix.texi:12814 |
b9fe8fd6 JL |
28147 | #, no-wrap |
28148 | msgid "{Scheme Procedure} postgresql-service [#:postgresql postgresql] @" | |
28149 | msgstr "" | |
28150 | ||
28151 | #. type: deffn | |
39764ef8 | 28152 | #: doc/guix.texi:12819 |
b9fe8fd6 JL |
28153 | msgid "" |
28154 | "[#:config-file] [#:data-directory ``/var/lib/postgresql/data''] @ [#:port " | |
28155 | "5432] [#:locale ``en_US.utf8''] Return a service that runs @var{postgresql}, " | |
28156 | "the PostgreSQL database server." | |
28157 | msgstr "" | |
28158 | ||
28159 | #. type: deffn | |
39764ef8 | 28160 | #: doc/guix.texi:12823 |
b9fe8fd6 | 28161 | msgid "" |
39764ef8 JL |
28162 | "The PostgreSQL daemon loads its runtime configuration from @var{config-" |
28163 | "file}, creates a database cluster with @var{locale} as the default locale, " | |
28164 | "stored in @var{data-directory}. It then listens on @var{port}." | |
b9fe8fd6 JL |
28165 | msgstr "" |
28166 | ||
28167 | #. type: deffn | |
39764ef8 | 28168 | #: doc/guix.texi:12825 |
b9fe8fd6 JL |
28169 | #, no-wrap |
28170 | msgid "{Scheme Procedure} mysql-service [#:config (mysql-configuration)]" | |
28171 | msgstr "" | |
28172 | ||
28173 | #. type: deffn | |
39764ef8 | 28174 | #: doc/guix.texi:12828 |
b9fe8fd6 JL |
28175 | msgid "" |
28176 | "Return a service that runs @command{mysqld}, the MySQL or MariaDB database " | |
28177 | "server." | |
28178 | msgstr "" | |
28179 | ||
28180 | #. type: deffn | |
39764ef8 | 28181 | #: doc/guix.texi:12831 |
b9fe8fd6 JL |
28182 | msgid "" |
28183 | "The optional @var{config} argument specifies the configuration for " | |
28184 | "@command{mysqld}, which should be a @code{<mysql-configuration>} object." | |
28185 | msgstr "" | |
28186 | ||
28187 | #. type: deftp | |
39764ef8 | 28188 | #: doc/guix.texi:12833 |
b9fe8fd6 JL |
28189 | #, no-wrap |
28190 | msgid "{Data Type} mysql-configuration" | |
28191 | msgstr "" | |
28192 | ||
28193 | #. type: deftp | |
39764ef8 | 28194 | #: doc/guix.texi:12835 |
b9fe8fd6 JL |
28195 | msgid "Data type representing the configuration of @var{mysql-service}." |
28196 | msgstr "" | |
28197 | ||
28198 | #. type: item | |
39764ef8 | 28199 | #: doc/guix.texi:12837 |
b9fe8fd6 JL |
28200 | #, no-wrap |
28201 | msgid "@code{mysql} (default: @var{mariadb})" | |
28202 | msgstr "" | |
28203 | ||
28204 | #. type: table | |
39764ef8 | 28205 | #: doc/guix.texi:12840 |
b9fe8fd6 JL |
28206 | msgid "" |
28207 | "Package object of the MySQL database server, can be either @var{mariadb} or " | |
28208 | "@var{mysql}." | |
28209 | msgstr "" | |
28210 | ||
28211 | #. type: table | |
39764ef8 | 28212 | #: doc/guix.texi:12843 |
b9fe8fd6 JL |
28213 | msgid "" |
28214 | "For MySQL, a temporary root password will be displayed at activation time. " | |
28215 | "For MariaDB, the root password is empty." | |
28216 | msgstr "" | |
28217 | ||
28218 | #. type: item | |
39764ef8 | 28219 | #: doc/guix.texi:12844 |
b9fe8fd6 JL |
28220 | #, no-wrap |
28221 | msgid "@code{port} (default: @code{3306})" | |
28222 | msgstr "" | |
28223 | ||
28224 | #. type: table | |
39764ef8 | 28225 | #: doc/guix.texi:12846 |
b9fe8fd6 JL |
28226 | msgid "TCP port on which the database server listens for incoming connections." |
28227 | msgstr "" | |
28228 | ||
28229 | #. type: defvr | |
39764ef8 | 28230 | #: doc/guix.texi:12849 |
b9fe8fd6 JL |
28231 | #, no-wrap |
28232 | msgid "{Scheme Variable} memcached-service-type" | |
28233 | msgstr "" | |
28234 | ||
28235 | #. type: defvr | |
39764ef8 | 28236 | #: doc/guix.texi:12853 |
b9fe8fd6 JL |
28237 | msgid "" |
28238 | "This is the service type for the @uref{https://memcached.org/, Memcached} " | |
28239 | "service, which provides a distributed in memory cache. The value for the " | |
28240 | "service type is a @code{memcached-configuration} object." | |
28241 | msgstr "" | |
28242 | ||
28243 | #. type: example | |
39764ef8 | 28244 | #: doc/guix.texi:12857 |
b9fe8fd6 JL |
28245 | #, no-wrap |
28246 | msgid "(service memcached-service-type)\n" | |
28247 | msgstr "" | |
28248 | ||
28249 | #. type: deftp | |
39764ef8 | 28250 | #: doc/guix.texi:12859 |
b9fe8fd6 JL |
28251 | #, no-wrap |
28252 | msgid "{Data Type} memcached-configuration" | |
28253 | msgstr "" | |
28254 | ||
28255 | #. type: deftp | |
39764ef8 | 28256 | #: doc/guix.texi:12861 |
b9fe8fd6 JL |
28257 | msgid "Data type representing the configuration of memcached." |
28258 | msgstr "" | |
28259 | ||
28260 | #. type: item | |
39764ef8 | 28261 | #: doc/guix.texi:12863 |
b9fe8fd6 JL |
28262 | #, no-wrap |
28263 | msgid "@code{memcached} (default: @code{memcached})" | |
28264 | msgstr "" | |
28265 | ||
28266 | #. type: table | |
39764ef8 | 28267 | #: doc/guix.texi:12865 |
b9fe8fd6 JL |
28268 | msgid "The Memcached package to use." |
28269 | msgstr "" | |
28270 | ||
28271 | #. type: item | |
39764ef8 | 28272 | #: doc/guix.texi:12866 |
b9fe8fd6 JL |
28273 | #, no-wrap |
28274 | msgid "@code{interfaces} (default: @code{'(\"0.0.0.0\")})" | |
28275 | msgstr "" | |
28276 | ||
28277 | #. type: table | |
39764ef8 | 28278 | #: doc/guix.texi:12868 |
b9fe8fd6 JL |
28279 | msgid "Network interfaces on which to listen." |
28280 | msgstr "" | |
28281 | ||
28282 | #. type: item | |
39764ef8 | 28283 | #: doc/guix.texi:12869 |
b9fe8fd6 JL |
28284 | #, no-wrap |
28285 | msgid "@code{tcp-port} (default: @code{11211})" | |
28286 | msgstr "" | |
28287 | ||
28288 | #. type: table | |
39764ef8 | 28289 | #: doc/guix.texi:12871 |
b9fe8fd6 JL |
28290 | msgid "Port on which to accept connections on," |
28291 | msgstr "" | |
28292 | ||
28293 | #. type: item | |
39764ef8 | 28294 | #: doc/guix.texi:12872 |
b9fe8fd6 JL |
28295 | #, no-wrap |
28296 | msgid "@code{udp-port} (default: @code{11211})" | |
28297 | msgstr "" | |
28298 | ||
28299 | #. type: table | |
39764ef8 | 28300 | #: doc/guix.texi:12875 |
b9fe8fd6 JL |
28301 | msgid "" |
28302 | "Port on which to accept UDP connections on, a value of 0 will disable " | |
28303 | "listening on a UDP socket." | |
28304 | msgstr "" | |
28305 | ||
28306 | #. type: item | |
39764ef8 | 28307 | #: doc/guix.texi:12876 |
b9fe8fd6 JL |
28308 | #, no-wrap |
28309 | msgid "@code{additional-options} (default: @code{'()})" | |
28310 | msgstr "" | |
28311 | ||
28312 | #. type: table | |
39764ef8 | 28313 | #: doc/guix.texi:12878 |
b9fe8fd6 JL |
28314 | msgid "Additional command line options to pass to @code{memcached}." |
28315 | msgstr "" | |
28316 | ||
28317 | #. type: defvr | |
39764ef8 | 28318 | #: doc/guix.texi:12881 |
b9fe8fd6 JL |
28319 | #, no-wrap |
28320 | msgid "{Scheme Variable} mongodb-service-type" | |
28321 | msgstr "" | |
28322 | ||
28323 | #. type: defvr | |
39764ef8 | 28324 | #: doc/guix.texi:12884 |
b9fe8fd6 JL |
28325 | msgid "" |
28326 | "This is the service type for @uref{https://www.mongodb.com/, MongoDB}. The " | |
28327 | "value for the service type is a @code{mongodb-configuration} object." | |
28328 | msgstr "" | |
28329 | ||
28330 | #. type: example | |
39764ef8 | 28331 | #: doc/guix.texi:12888 |
b9fe8fd6 JL |
28332 | #, no-wrap |
28333 | msgid "(service mongodb-service-type)\n" | |
28334 | msgstr "" | |
28335 | ||
28336 | #. type: deftp | |
39764ef8 | 28337 | #: doc/guix.texi:12890 |
b9fe8fd6 JL |
28338 | #, no-wrap |
28339 | msgid "{Data Type} mongodb-configuration" | |
28340 | msgstr "" | |
28341 | ||
28342 | #. type: deftp | |
39764ef8 | 28343 | #: doc/guix.texi:12892 |
b9fe8fd6 JL |
28344 | msgid "Data type representing the configuration of mongodb." |
28345 | msgstr "" | |
28346 | ||
28347 | #. type: item | |
39764ef8 | 28348 | #: doc/guix.texi:12894 |
b9fe8fd6 JL |
28349 | #, no-wrap |
28350 | msgid "@code{mongodb} (default: @code{mongodb})" | |
28351 | msgstr "" | |
28352 | ||
28353 | #. type: table | |
39764ef8 | 28354 | #: doc/guix.texi:12896 |
b9fe8fd6 JL |
28355 | msgid "The MongoDB package to use." |
28356 | msgstr "" | |
28357 | ||
28358 | #. type: item | |
39764ef8 | 28359 | #: doc/guix.texi:12897 |
b9fe8fd6 JL |
28360 | #, no-wrap |
28361 | msgid "@code{config-file} (default: @code{%default-mongodb-configuration-file})" | |
28362 | msgstr "" | |
28363 | ||
28364 | #. type: table | |
39764ef8 | 28365 | #: doc/guix.texi:12899 |
b9fe8fd6 JL |
28366 | msgid "The configuration file for MongoDB." |
28367 | msgstr "" | |
28368 | ||
28369 | #. type: item | |
39764ef8 | 28370 | #: doc/guix.texi:12900 |
b9fe8fd6 JL |
28371 | #, no-wrap |
28372 | msgid "@code{data-directory} (default: @code{\"/var/lib/mongodb\"})" | |
28373 | msgstr "" | |
28374 | ||
28375 | #. type: table | |
39764ef8 | 28376 | #: doc/guix.texi:12904 |
b9fe8fd6 JL |
28377 | msgid "" |
28378 | "This value is used to create the directory, so that it exists and is owned " | |
28379 | "by the mongodb user. It should match the data-directory which MongoDB is " | |
28380 | "configured to use through the configuration file." | |
28381 | msgstr "" | |
28382 | ||
28383 | #. type: defvr | |
39764ef8 | 28384 | #: doc/guix.texi:12907 |
b9fe8fd6 JL |
28385 | #, no-wrap |
28386 | msgid "{Scheme Variable} redis-service-type" | |
28387 | msgstr "" | |
28388 | ||
28389 | #. type: defvr | |
39764ef8 | 28390 | #: doc/guix.texi:12910 |
b9fe8fd6 JL |
28391 | msgid "" |
28392 | "This is the service type for the @uref{https://redis.io/, Redis} key/value " | |
28393 | "store, whose value is a @code{redis-configuration} object." | |
28394 | msgstr "" | |
28395 | ||
28396 | #. type: deftp | |
39764ef8 | 28397 | #: doc/guix.texi:12912 |
b9fe8fd6 JL |
28398 | #, no-wrap |
28399 | msgid "{Data Type} redis-configuration" | |
28400 | msgstr "" | |
28401 | ||
28402 | #. type: deftp | |
39764ef8 | 28403 | #: doc/guix.texi:12914 |
b9fe8fd6 JL |
28404 | msgid "Data type representing the configuration of redis." |
28405 | msgstr "" | |
28406 | ||
28407 | #. type: item | |
39764ef8 | 28408 | #: doc/guix.texi:12916 |
b9fe8fd6 JL |
28409 | #, no-wrap |
28410 | msgid "@code{redis} (default: @code{redis})" | |
28411 | msgstr "" | |
28412 | ||
28413 | #. type: table | |
39764ef8 | 28414 | #: doc/guix.texi:12918 |
b9fe8fd6 JL |
28415 | msgid "The Redis package to use." |
28416 | msgstr "" | |
28417 | ||
28418 | #. type: item | |
39764ef8 | 28419 | #: doc/guix.texi:12919 |
b9fe8fd6 JL |
28420 | #, no-wrap |
28421 | msgid "@code{bind} (default: @code{\"127.0.0.1\"})" | |
28422 | msgstr "" | |
28423 | ||
28424 | #. type: table | |
39764ef8 | 28425 | #: doc/guix.texi:12921 |
b9fe8fd6 JL |
28426 | msgid "Network interface on which to listen." |
28427 | msgstr "" | |
28428 | ||
28429 | #. type: item | |
39764ef8 | 28430 | #: doc/guix.texi:12922 |
b9fe8fd6 JL |
28431 | #, no-wrap |
28432 | msgid "@code{port} (default: @code{6379})" | |
28433 | msgstr "" | |
28434 | ||
28435 | #. type: table | |
39764ef8 | 28436 | #: doc/guix.texi:12925 |
b9fe8fd6 JL |
28437 | msgid "" |
28438 | "Port on which to accept connections on, a value of 0 will disable listening " | |
28439 | "on a TCP socket." | |
28440 | msgstr "" | |
28441 | ||
28442 | #. type: item | |
39764ef8 | 28443 | #: doc/guix.texi:12926 |
b9fe8fd6 JL |
28444 | #, no-wrap |
28445 | msgid "@code{working-directory} (default: @code{\"/var/lib/redis\"})" | |
28446 | msgstr "" | |
28447 | ||
28448 | #. type: table | |
39764ef8 | 28449 | #: doc/guix.texi:12928 |
b9fe8fd6 JL |
28450 | msgid "Directory in which to store the database and related files." |
28451 | msgstr "" | |
28452 | ||
28453 | #. type: cindex | |
39764ef8 | 28454 | #: doc/guix.texi:12934 |
b9fe8fd6 JL |
28455 | #, no-wrap |
28456 | msgid "mail" | |
28457 | msgstr "" | |
28458 | ||
28459 | #. type: code{#1} | |
39764ef8 | 28460 | #: doc/guix.texi:12935 doc/guix.texi:16030 |
b9fe8fd6 JL |
28461 | #, no-wrap |
28462 | msgid "email" | |
28463 | msgstr "" | |
28464 | ||
28465 | #. type: Plain text | |
39764ef8 | 28466 | #: doc/guix.texi:12940 |
b9fe8fd6 JL |
28467 | msgid "" |
28468 | "The @code{(gnu services mail)} module provides Guix service definitions for " | |
28469 | "email services: IMAP, POP3, and LMTP servers, as well as mail transport " | |
28470 | "agents (MTAs). Lots of acronyms! These services are detailed in the " | |
28471 | "subsections below." | |
28472 | msgstr "" | |
28473 | ||
28474 | #. type: subsubheading | |
39764ef8 | 28475 | #: doc/guix.texi:12941 |
b9fe8fd6 JL |
28476 | #, no-wrap |
28477 | msgid "Dovecot Service" | |
28478 | msgstr "" | |
28479 | ||
28480 | #. type: deffn | |
39764ef8 | 28481 | #: doc/guix.texi:12943 |
b9fe8fd6 JL |
28482 | #, no-wrap |
28483 | msgid "{Scheme Procedure} dovecot-service [#:config (dovecot-configuration)]" | |
28484 | msgstr "" | |
28485 | ||
28486 | #. type: deffn | |
39764ef8 | 28487 | #: doc/guix.texi:12945 |
b9fe8fd6 JL |
28488 | msgid "Return a service that runs the Dovecot IMAP/POP3/LMTP mail server." |
28489 | msgstr "" | |
28490 | ||
28491 | #. type: Plain text | |
39764ef8 | 28492 | #: doc/guix.texi:12955 |
b9fe8fd6 JL |
28493 | msgid "" |
28494 | "By default, Dovecot does not need much configuration; the default " | |
28495 | "configuration object created by @code{(dovecot-configuration)} will suffice " | |
28496 | "if your mail is delivered to @code{~/Maildir}. A self-signed certificate " | |
28497 | "will be generated for TLS-protected connections, though Dovecot will also " | |
28498 | "listen on cleartext ports by default. There are a number of options, " | |
28499 | "though, which mail administrators might need to change, and as is the case " | |
28500 | "with other services, Guix allows the system administrator to specify these " | |
28501 | "parameters via a uniform Scheme interface." | |
28502 | msgstr "" | |
28503 | ||
28504 | #. type: Plain text | |
39764ef8 | 28505 | #: doc/guix.texi:12958 |
b9fe8fd6 JL |
28506 | msgid "" |
28507 | "For example, to specify that mail is located at @code{maildir~/.mail}, one " | |
28508 | "would instantiate the Dovecot service like this:" | |
28509 | msgstr "" | |
28510 | ||
28511 | #. type: example | |
39764ef8 | 28512 | #: doc/guix.texi:12963 |
b9fe8fd6 JL |
28513 | #, no-wrap |
28514 | msgid "" | |
28515 | "(dovecot-service #:config\n" | |
28516 | " (dovecot-configuration\n" | |
28517 | " (mail-location \"maildir:~/.mail\")))\n" | |
28518 | msgstr "" | |
28519 | ||
28520 | #. type: Plain text | |
39764ef8 | 28521 | #: doc/guix.texi:12971 |
b9fe8fd6 JL |
28522 | msgid "" |
28523 | "The available configuration parameters follow. Each parameter definition is " | |
28524 | "preceded by its type; for example, @samp{string-list foo} indicates that the " | |
28525 | "@code{foo} parameter should be specified as a list of strings. There is " | |
28526 | "also a way to specify the configuration as a string, if you have an old " | |
28527 | "@code{dovecot.conf} file that you want to port over from some other system; " | |
28528 | "see the end for more details." | |
28529 | msgstr "" | |
28530 | ||
28531 | #. type: Plain text | |
39764ef8 | 28532 | #: doc/guix.texi:12981 |
b9fe8fd6 JL |
28533 | msgid "Available @code{dovecot-configuration} fields are:" |
28534 | msgstr "" | |
28535 | ||
28536 | #. type: deftypevr | |
39764ef8 | 28537 | #: doc/guix.texi:12982 |
b9fe8fd6 JL |
28538 | #, no-wrap |
28539 | msgid "{@code{dovecot-configuration} parameter} package dovecot" | |
28540 | msgstr "" | |
28541 | ||
28542 | #. type: deftypevr | |
39764ef8 | 28543 | #: doc/guix.texi:12984 doc/guix.texi:14271 |
b9fe8fd6 JL |
28544 | msgid "The dovecot package." |
28545 | msgstr "" | |
28546 | ||
28547 | #. type: deftypevr | |
39764ef8 | 28548 | #: doc/guix.texi:12986 |
b9fe8fd6 JL |
28549 | #, no-wrap |
28550 | msgid "{@code{dovecot-configuration} parameter} comma-separated-string-list listen" | |
28551 | msgstr "" | |
28552 | ||
28553 | #. type: deftypevr | |
39764ef8 | 28554 | #: doc/guix.texi:12992 |
b9fe8fd6 JL |
28555 | msgid "" |
28556 | "A list of IPs or hosts where to listen for connections. @samp{*} listens on " | |
28557 | "all IPv4 interfaces, @samp{::} listens on all IPv6 interfaces. If you want " | |
28558 | "to specify non-default ports or anything more complex, customize the address " | |
28559 | "and port fields of the @samp{inet-listener} of the specific services you are " | |
28560 | "interested in." | |
28561 | msgstr "" | |
28562 | ||
28563 | #. type: deftypevr | |
39764ef8 | 28564 | #: doc/guix.texi:12994 |
b9fe8fd6 | 28565 | #, no-wrap |
39764ef8 | 28566 | msgid "{@code{dovecot-configuration} parameter} protocol-configuration-list protocols" |
b9fe8fd6 JL |
28567 | msgstr "" |
28568 | ||
28569 | #. type: deftypevr | |
39764ef8 | 28570 | #: doc/guix.texi:12997 |
b9fe8fd6 JL |
28571 | msgid "" |
28572 | "List of protocols we want to serve. Available protocols include " | |
28573 | "@samp{imap}, @samp{pop3}, and @samp{lmtp}." | |
28574 | msgstr "" | |
28575 | ||
28576 | #. type: deftypevr | |
39764ef8 | 28577 | #: doc/guix.texi:12999 |
b9fe8fd6 JL |
28578 | msgid "Available @code{protocol-configuration} fields are:" |
28579 | msgstr "" | |
28580 | ||
28581 | #. type: deftypevr | |
39764ef8 | 28582 | #: doc/guix.texi:13000 |
b9fe8fd6 JL |
28583 | #, no-wrap |
28584 | msgid "{@code{protocol-configuration} parameter} string name" | |
28585 | msgstr "" | |
28586 | ||
28587 | #. type: deftypevr | |
39764ef8 | 28588 | #: doc/guix.texi:13002 |
b9fe8fd6 JL |
28589 | msgid "The name of the protocol." |
28590 | msgstr "" | |
28591 | ||
28592 | #. type: deftypevr | |
39764ef8 | 28593 | #: doc/guix.texi:13004 |
b9fe8fd6 JL |
28594 | #, no-wrap |
28595 | msgid "{@code{protocol-configuration} parameter} string auth-socket-path" | |
28596 | msgstr "" | |
28597 | ||
28598 | #. type: deftypevr | |
39764ef8 | 28599 | #: doc/guix.texi:13008 |
b9fe8fd6 JL |
28600 | msgid "" |
28601 | "UNIX socket path to the master authentication server to find users. This is " | |
39764ef8 JL |
28602 | "used by imap (for shared users) and lda. It defaults to @samp{\"/var/run/" |
28603 | "dovecot/auth-userdb\"}." | |
b9fe8fd6 JL |
28604 | msgstr "" |
28605 | ||
28606 | #. type: deftypevr | |
39764ef8 | 28607 | #: doc/guix.texi:13010 |
b9fe8fd6 | 28608 | #, no-wrap |
39764ef8 | 28609 | msgid "{@code{protocol-configuration} parameter} space-separated-string-list mail-plugins" |
b9fe8fd6 JL |
28610 | msgstr "" |
28611 | ||
28612 | #. type: deftypevr | |
39764ef8 | 28613 | #: doc/guix.texi:13012 |
b9fe8fd6 JL |
28614 | msgid "Space separated list of plugins to load." |
28615 | msgstr "" | |
28616 | ||
28617 | #. type: deftypevr | |
39764ef8 | 28618 | #: doc/guix.texi:13014 |
b9fe8fd6 | 28619 | #, no-wrap |
39764ef8 | 28620 | msgid "{@code{protocol-configuration} parameter} non-negative-integer mail-max-userip-connections" |
b9fe8fd6 JL |
28621 | msgstr "" |
28622 | ||
28623 | #. type: deftypevr | |
39764ef8 | 28624 | #: doc/guix.texi:13018 |
b9fe8fd6 JL |
28625 | msgid "" |
28626 | "Maximum number of IMAP connections allowed for a user from each IP address. " | |
28627 | "NOTE: The username is compared case-sensitively. Defaults to @samp{10}." | |
28628 | msgstr "" | |
28629 | ||
28630 | #. type: deftypevr | |
39764ef8 | 28631 | #: doc/guix.texi:13022 |
b9fe8fd6 JL |
28632 | #, no-wrap |
28633 | msgid "{@code{dovecot-configuration} parameter} service-configuration-list services" | |
28634 | msgstr "" | |
28635 | ||
28636 | #. type: deftypevr | |
39764ef8 | 28637 | #: doc/guix.texi:13026 |
b9fe8fd6 JL |
28638 | msgid "" |
28639 | "List of services to enable. Available services include @samp{imap}, " | |
28640 | "@samp{imap-login}, @samp{pop3}, @samp{pop3-login}, @samp{auth}, and " | |
28641 | "@samp{lmtp}." | |
28642 | msgstr "" | |
28643 | ||
28644 | #. type: deftypevr | |
39764ef8 | 28645 | #: doc/guix.texi:13028 |
b9fe8fd6 JL |
28646 | msgid "Available @code{service-configuration} fields are:" |
28647 | msgstr "" | |
28648 | ||
28649 | #. type: deftypevr | |
39764ef8 | 28650 | #: doc/guix.texi:13029 |
b9fe8fd6 JL |
28651 | #, no-wrap |
28652 | msgid "{@code{service-configuration} parameter} string kind" | |
28653 | msgstr "" | |
28654 | ||
28655 | #. type: deftypevr | |
39764ef8 | 28656 | #: doc/guix.texi:13034 |
b9fe8fd6 JL |
28657 | msgid "" |
28658 | "The service kind. Valid values include @code{director}, @code{imap-login}, " | |
28659 | "@code{pop3-login}, @code{lmtp}, @code{imap}, @code{pop3}, @code{auth}, " | |
28660 | "@code{auth-worker}, @code{dict}, @code{tcpwrap}, @code{quota-warning}, or " | |
28661 | "anything else." | |
28662 | msgstr "" | |
28663 | ||
28664 | #. type: deftypevr | |
39764ef8 | 28665 | #: doc/guix.texi:13036 |
b9fe8fd6 | 28666 | #, no-wrap |
39764ef8 | 28667 | msgid "{@code{service-configuration} parameter} listener-configuration-list listeners" |
b9fe8fd6 JL |
28668 | msgstr "" |
28669 | ||
28670 | #. type: deftypevr | |
39764ef8 | 28671 | #: doc/guix.texi:13041 |
b9fe8fd6 | 28672 | msgid "" |
39764ef8 JL |
28673 | "Listeners for the service. A listener is either a @code{unix-listener-" |
28674 | "configuration}, a @code{fifo-listener-configuration}, or an @code{inet-" | |
28675 | "listener-configuration}. Defaults to @samp{()}." | |
b9fe8fd6 JL |
28676 | msgstr "" |
28677 | ||
28678 | #. type: deftypevr | |
39764ef8 | 28679 | #: doc/guix.texi:13043 |
b9fe8fd6 JL |
28680 | msgid "Available @code{unix-listener-configuration} fields are:" |
28681 | msgstr "" | |
28682 | ||
28683 | #. type: deftypevr | |
39764ef8 | 28684 | #: doc/guix.texi:13044 |
b9fe8fd6 JL |
28685 | #, no-wrap |
28686 | msgid "{@code{unix-listener-configuration} parameter} string path" | |
28687 | msgstr "" | |
28688 | ||
28689 | #. type: deftypevr | |
39764ef8 | 28690 | #: doc/guix.texi:13047 doc/guix.texi:13070 |
b9fe8fd6 JL |
28691 | msgid "" |
28692 | "Path to the file, relative to @code{base-dir} field. This is also used as " | |
28693 | "the section name." | |
28694 | msgstr "" | |
28695 | ||
28696 | #. type: deftypevr | |
39764ef8 | 28697 | #: doc/guix.texi:13049 |
b9fe8fd6 JL |
28698 | #, no-wrap |
28699 | msgid "{@code{unix-listener-configuration} parameter} string mode" | |
28700 | msgstr "" | |
28701 | ||
28702 | #. type: deftypevr | |
39764ef8 | 28703 | #: doc/guix.texi:13052 doc/guix.texi:13075 |
b9fe8fd6 JL |
28704 | msgid "The access mode for the socket. Defaults to @samp{\"0600\"}." |
28705 | msgstr "" | |
28706 | ||
28707 | #. type: deftypevr | |
39764ef8 | 28708 | #: doc/guix.texi:13054 |
b9fe8fd6 JL |
28709 | #, no-wrap |
28710 | msgid "{@code{unix-listener-configuration} parameter} string user" | |
28711 | msgstr "" | |
28712 | ||
28713 | #. type: deftypevr | |
39764ef8 | 28714 | #: doc/guix.texi:13057 doc/guix.texi:13080 |
b9fe8fd6 JL |
28715 | msgid "The user to own the socket. Defaults to @samp{\"\"}." |
28716 | msgstr "" | |
28717 | ||
28718 | #. type: deftypevr | |
39764ef8 | 28719 | #: doc/guix.texi:13059 |
b9fe8fd6 JL |
28720 | #, no-wrap |
28721 | msgid "{@code{unix-listener-configuration} parameter} string group" | |
28722 | msgstr "" | |
28723 | ||
28724 | #. type: deftypevr | |
39764ef8 | 28725 | #: doc/guix.texi:13062 doc/guix.texi:13085 |
b9fe8fd6 JL |
28726 | msgid "The group to own the socket. Defaults to @samp{\"\"}." |
28727 | msgstr "" | |
28728 | ||
28729 | #. type: deftypevr | |
39764ef8 | 28730 | #: doc/guix.texi:13066 |
b9fe8fd6 JL |
28731 | msgid "Available @code{fifo-listener-configuration} fields are:" |
28732 | msgstr "" | |
28733 | ||
28734 | #. type: deftypevr | |
39764ef8 | 28735 | #: doc/guix.texi:13067 |
b9fe8fd6 JL |
28736 | #, no-wrap |
28737 | msgid "{@code{fifo-listener-configuration} parameter} string path" | |
28738 | msgstr "" | |
28739 | ||
28740 | #. type: deftypevr | |
39764ef8 | 28741 | #: doc/guix.texi:13072 |
b9fe8fd6 JL |
28742 | #, no-wrap |
28743 | msgid "{@code{fifo-listener-configuration} parameter} string mode" | |
28744 | msgstr "" | |
28745 | ||
28746 | #. type: deftypevr | |
39764ef8 | 28747 | #: doc/guix.texi:13077 |
b9fe8fd6 JL |
28748 | #, no-wrap |
28749 | msgid "{@code{fifo-listener-configuration} parameter} string user" | |
28750 | msgstr "" | |
28751 | ||
28752 | #. type: deftypevr | |
39764ef8 | 28753 | #: doc/guix.texi:13082 |
b9fe8fd6 JL |
28754 | #, no-wrap |
28755 | msgid "{@code{fifo-listener-configuration} parameter} string group" | |
28756 | msgstr "" | |
28757 | ||
28758 | #. type: deftypevr | |
39764ef8 | 28759 | #: doc/guix.texi:13089 |
b9fe8fd6 JL |
28760 | msgid "Available @code{inet-listener-configuration} fields are:" |
28761 | msgstr "" | |
28762 | ||
28763 | #. type: deftypevr | |
39764ef8 | 28764 | #: doc/guix.texi:13090 |
b9fe8fd6 JL |
28765 | #, no-wrap |
28766 | msgid "{@code{inet-listener-configuration} parameter} string protocol" | |
28767 | msgstr "" | |
28768 | ||
28769 | #. type: deftypevr | |
39764ef8 | 28770 | #: doc/guix.texi:13092 |
b9fe8fd6 JL |
28771 | msgid "The protocol to listen for." |
28772 | msgstr "" | |
28773 | ||
28774 | #. type: deftypevr | |
39764ef8 | 28775 | #: doc/guix.texi:13094 |
b9fe8fd6 JL |
28776 | #, no-wrap |
28777 | msgid "{@code{inet-listener-configuration} parameter} string address" | |
28778 | msgstr "" | |
28779 | ||
28780 | #. type: deftypevr | |
39764ef8 | 28781 | #: doc/guix.texi:13097 |
b9fe8fd6 JL |
28782 | msgid "" |
28783 | "The address on which to listen, or empty for all addresses. Defaults to " | |
28784 | "@samp{\"\"}." | |
28785 | msgstr "" | |
28786 | ||
28787 | #. type: deftypevr | |
39764ef8 | 28788 | #: doc/guix.texi:13099 |
b9fe8fd6 JL |
28789 | #, no-wrap |
28790 | msgid "{@code{inet-listener-configuration} parameter} non-negative-integer port" | |
28791 | msgstr "" | |
28792 | ||
28793 | #. type: deftypevr | |
39764ef8 | 28794 | #: doc/guix.texi:13101 |
b9fe8fd6 JL |
28795 | msgid "The port on which to listen." |
28796 | msgstr "" | |
28797 | ||
28798 | #. type: deftypevr | |
39764ef8 | 28799 | #: doc/guix.texi:13103 |
b9fe8fd6 JL |
28800 | #, no-wrap |
28801 | msgid "{@code{inet-listener-configuration} parameter} boolean ssl?" | |
28802 | msgstr "" | |
28803 | ||
28804 | #. type: deftypevr | |
39764ef8 | 28805 | #: doc/guix.texi:13107 |
b9fe8fd6 JL |
28806 | msgid "" |
28807 | "Whether to use SSL for this service; @samp{yes}, @samp{no}, or " | |
28808 | "@samp{required}. Defaults to @samp{#t}." | |
28809 | msgstr "" | |
28810 | ||
28811 | #. type: deftypevr | |
39764ef8 | 28812 | #: doc/guix.texi:13111 |
b9fe8fd6 JL |
28813 | #, no-wrap |
28814 | msgid "{@code{service-configuration} parameter} non-negative-integer service-count" | |
28815 | msgstr "" | |
28816 | ||
28817 | #. type: deftypevr | |
39764ef8 | 28818 | #: doc/guix.texi:13116 |
b9fe8fd6 JL |
28819 | msgid "" |
28820 | "Number of connections to handle before starting a new process. Typically " | |
28821 | "the only useful values are 0 (unlimited) or 1. 1 is more secure, but 0 is " | |
28822 | "faster. <doc/wiki/LoginProcess.txt>. Defaults to @samp{1}." | |
28823 | msgstr "" | |
28824 | ||
28825 | #. type: deftypevr | |
39764ef8 | 28826 | #: doc/guix.texi:13118 |
b9fe8fd6 | 28827 | #, no-wrap |
39764ef8 | 28828 | msgid "{@code{service-configuration} parameter} non-negative-integer process-min-avail" |
b9fe8fd6 JL |
28829 | msgstr "" |
28830 | ||
28831 | #. type: deftypevr | |
39764ef8 | 28832 | #: doc/guix.texi:13121 |
b9fe8fd6 JL |
28833 | msgid "" |
28834 | "Number of processes to always keep waiting for more connections. Defaults " | |
28835 | "to @samp{0}." | |
28836 | msgstr "" | |
28837 | ||
28838 | #. type: deftypevr | |
39764ef8 | 28839 | #: doc/guix.texi:13123 |
b9fe8fd6 JL |
28840 | #, no-wrap |
28841 | msgid "{@code{service-configuration} parameter} non-negative-integer vsz-limit" | |
28842 | msgstr "" | |
28843 | ||
28844 | #. type: deftypevr | |
39764ef8 | 28845 | #: doc/guix.texi:13127 |
b9fe8fd6 JL |
28846 | msgid "" |
28847 | "If you set @samp{service-count 0}, you probably need to grow this. Defaults " | |
28848 | "to @samp{256000000}." | |
28849 | msgstr "" | |
28850 | ||
28851 | #. type: deftypevr | |
39764ef8 | 28852 | #: doc/guix.texi:13131 |
b9fe8fd6 JL |
28853 | #, no-wrap |
28854 | msgid "{@code{dovecot-configuration} parameter} dict-configuration dict" | |
28855 | msgstr "" | |
28856 | ||
28857 | #. type: deftypevr | |
39764ef8 JL |
28858 | #: doc/guix.texi:13134 |
28859 | msgid "" | |
28860 | "Dict configuration, as created by the @code{dict-configuration} constructor." | |
b9fe8fd6 JL |
28861 | msgstr "" |
28862 | ||
28863 | #. type: deftypevr | |
39764ef8 | 28864 | #: doc/guix.texi:13136 |
b9fe8fd6 JL |
28865 | msgid "Available @code{dict-configuration} fields are:" |
28866 | msgstr "" | |
28867 | ||
28868 | #. type: deftypevr | |
39764ef8 | 28869 | #: doc/guix.texi:13137 |
b9fe8fd6 JL |
28870 | #, no-wrap |
28871 | msgid "{@code{dict-configuration} parameter} free-form-fields entries" | |
28872 | msgstr "" | |
28873 | ||
28874 | #. type: deftypevr | |
39764ef8 | 28875 | #: doc/guix.texi:13140 |
b9fe8fd6 | 28876 | msgid "" |
39764ef8 | 28877 | "A list of key-value pairs that this dict should hold. Defaults to @samp{()}." |
b9fe8fd6 JL |
28878 | msgstr "" |
28879 | ||
28880 | #. type: deftypevr | |
39764ef8 | 28881 | #: doc/guix.texi:13144 |
b9fe8fd6 JL |
28882 | #, no-wrap |
28883 | msgid "{@code{dovecot-configuration} parameter} passdb-configuration-list passdbs" | |
28884 | msgstr "" | |
28885 | ||
28886 | #. type: deftypevr | |
39764ef8 | 28887 | #: doc/guix.texi:13147 |
b9fe8fd6 | 28888 | msgid "" |
39764ef8 JL |
28889 | "A list of passdb configurations, each one created by the @code{passdb-" |
28890 | "configuration} constructor." | |
b9fe8fd6 JL |
28891 | msgstr "" |
28892 | ||
28893 | #. type: deftypevr | |
39764ef8 | 28894 | #: doc/guix.texi:13149 |
b9fe8fd6 JL |
28895 | msgid "Available @code{passdb-configuration} fields are:" |
28896 | msgstr "" | |
28897 | ||
28898 | #. type: deftypevr | |
39764ef8 | 28899 | #: doc/guix.texi:13150 |
b9fe8fd6 JL |
28900 | #, no-wrap |
28901 | msgid "{@code{passdb-configuration} parameter} string driver" | |
28902 | msgstr "" | |
28903 | ||
28904 | #. type: deftypevr | |
39764ef8 | 28905 | #: doc/guix.texi:13155 |
b9fe8fd6 JL |
28906 | msgid "" |
28907 | "The driver that the passdb should use. Valid values include @samp{pam}, " | |
28908 | "@samp{passwd}, @samp{shadow}, @samp{bsdauth}, and @samp{static}. Defaults " | |
28909 | "to @samp{\"pam\"}." | |
28910 | msgstr "" | |
28911 | ||
28912 | #. type: deftypevr | |
39764ef8 | 28913 | #: doc/guix.texi:13157 |
b9fe8fd6 JL |
28914 | #, no-wrap |
28915 | msgid "{@code{passdb-configuration} parameter} space-separated-string-list args" | |
28916 | msgstr "" | |
28917 | ||
28918 | #. type: deftypevr | |
39764ef8 | 28919 | #: doc/guix.texi:13160 |
b9fe8fd6 JL |
28920 | msgid "" |
28921 | "Space separated list of arguments to the passdb driver. Defaults to " | |
28922 | "@samp{\"\"}." | |
28923 | msgstr "" | |
28924 | ||
28925 | #. type: deftypevr | |
39764ef8 | 28926 | #: doc/guix.texi:13164 |
b9fe8fd6 JL |
28927 | #, no-wrap |
28928 | msgid "{@code{dovecot-configuration} parameter} userdb-configuration-list userdbs" | |
28929 | msgstr "" | |
28930 | ||
28931 | #. type: deftypevr | |
39764ef8 | 28932 | #: doc/guix.texi:13167 |
b9fe8fd6 | 28933 | msgid "" |
39764ef8 JL |
28934 | "List of userdb configurations, each one created by the @code{userdb-" |
28935 | "configuration} constructor." | |
b9fe8fd6 JL |
28936 | msgstr "" |
28937 | ||
28938 | #. type: deftypevr | |
39764ef8 | 28939 | #: doc/guix.texi:13169 |
b9fe8fd6 JL |
28940 | msgid "Available @code{userdb-configuration} fields are:" |
28941 | msgstr "" | |
28942 | ||
28943 | #. type: deftypevr | |
39764ef8 | 28944 | #: doc/guix.texi:13170 |
b9fe8fd6 JL |
28945 | #, no-wrap |
28946 | msgid "{@code{userdb-configuration} parameter} string driver" | |
28947 | msgstr "" | |
28948 | ||
28949 | #. type: deftypevr | |
39764ef8 | 28950 | #: doc/guix.texi:13174 |
b9fe8fd6 JL |
28951 | msgid "" |
28952 | "The driver that the userdb should use. Valid values include @samp{passwd} " | |
28953 | "and @samp{static}. Defaults to @samp{\"passwd\"}." | |
28954 | msgstr "" | |
28955 | ||
28956 | #. type: deftypevr | |
39764ef8 | 28957 | #: doc/guix.texi:13176 |
b9fe8fd6 JL |
28958 | #, no-wrap |
28959 | msgid "{@code{userdb-configuration} parameter} space-separated-string-list args" | |
28960 | msgstr "" | |
28961 | ||
28962 | #. type: deftypevr | |
39764ef8 | 28963 | #: doc/guix.texi:13179 |
b9fe8fd6 JL |
28964 | msgid "" |
28965 | "Space separated list of arguments to the userdb driver. Defaults to " | |
28966 | "@samp{\"\"}." | |
28967 | msgstr "" | |
28968 | ||
28969 | #. type: deftypevr | |
39764ef8 | 28970 | #: doc/guix.texi:13181 |
b9fe8fd6 JL |
28971 | #, no-wrap |
28972 | msgid "{@code{userdb-configuration} parameter} free-form-args override-fields" | |
28973 | msgstr "" | |
28974 | ||
28975 | #. type: deftypevr | |
39764ef8 | 28976 | #: doc/guix.texi:13184 |
b9fe8fd6 JL |
28977 | msgid "Override fields from passwd. Defaults to @samp{()}." |
28978 | msgstr "" | |
28979 | ||
28980 | #. type: deftypevr | |
39764ef8 | 28981 | #: doc/guix.texi:13188 |
b9fe8fd6 | 28982 | #, no-wrap |
39764ef8 | 28983 | msgid "{@code{dovecot-configuration} parameter} plugin-configuration plugin-configuration" |
b9fe8fd6 JL |
28984 | msgstr "" |
28985 | ||
28986 | #. type: deftypevr | |
39764ef8 | 28987 | #: doc/guix.texi:13191 |
b9fe8fd6 JL |
28988 | msgid "" |
28989 | "Plug-in configuration, created by the @code{plugin-configuration} " | |
28990 | "constructor." | |
28991 | msgstr "" | |
28992 | ||
28993 | #. type: deftypevr | |
39764ef8 | 28994 | #: doc/guix.texi:13193 |
b9fe8fd6 | 28995 | #, no-wrap |
39764ef8 | 28996 | msgid "{@code{dovecot-configuration} parameter} list-of-namespace-configuration namespaces" |
b9fe8fd6 JL |
28997 | msgstr "" |
28998 | ||
28999 | #. type: deftypevr | |
39764ef8 | 29000 | #: doc/guix.texi:13196 |
b9fe8fd6 | 29001 | msgid "" |
39764ef8 JL |
29002 | "List of namespaces. Each item in the list is created by the @code{namespace-" |
29003 | "configuration} constructor." | |
b9fe8fd6 JL |
29004 | msgstr "" |
29005 | ||
29006 | #. type: deftypevr | |
39764ef8 | 29007 | #: doc/guix.texi:13198 |
b9fe8fd6 JL |
29008 | msgid "Available @code{namespace-configuration} fields are:" |
29009 | msgstr "" | |
29010 | ||
29011 | #. type: deftypevr | |
39764ef8 | 29012 | #: doc/guix.texi:13199 |
b9fe8fd6 JL |
29013 | #, no-wrap |
29014 | msgid "{@code{namespace-configuration} parameter} string name" | |
29015 | msgstr "" | |
29016 | ||
29017 | #. type: deftypevr | |
39764ef8 | 29018 | #: doc/guix.texi:13201 |
b9fe8fd6 JL |
29019 | msgid "Name for this namespace." |
29020 | msgstr "" | |
29021 | ||
29022 | #. type: deftypevr | |
39764ef8 | 29023 | #: doc/guix.texi:13203 |
b9fe8fd6 JL |
29024 | #, no-wrap |
29025 | msgid "{@code{namespace-configuration} parameter} string type" | |
29026 | msgstr "" | |
29027 | ||
29028 | #. type: deftypevr | |
39764ef8 | 29029 | #: doc/guix.texi:13206 |
b9fe8fd6 JL |
29030 | msgid "" |
29031 | "Namespace type: @samp{private}, @samp{shared} or @samp{public}. Defaults to " | |
29032 | "@samp{\"private\"}." | |
29033 | msgstr "" | |
29034 | ||
29035 | #. type: deftypevr | |
39764ef8 | 29036 | #: doc/guix.texi:13208 |
b9fe8fd6 JL |
29037 | #, no-wrap |
29038 | msgid "{@code{namespace-configuration} parameter} string separator" | |
29039 | msgstr "" | |
29040 | ||
29041 | #. type: deftypevr | |
39764ef8 | 29042 | #: doc/guix.texi:13214 |
b9fe8fd6 JL |
29043 | msgid "" |
29044 | "Hierarchy separator to use. You should use the same separator for all " | |
29045 | "namespaces or some clients get confused. @samp{/} is usually a good one. " | |
29046 | "The default however depends on the underlying mail storage format. Defaults " | |
29047 | "to @samp{\"\"}." | |
29048 | msgstr "" | |
29049 | ||
29050 | #. type: deftypevr | |
39764ef8 | 29051 | #: doc/guix.texi:13216 |
b9fe8fd6 JL |
29052 | #, no-wrap |
29053 | msgid "{@code{namespace-configuration} parameter} string prefix" | |
29054 | msgstr "" | |
29055 | ||
29056 | #. type: deftypevr | |
39764ef8 | 29057 | #: doc/guix.texi:13220 |
b9fe8fd6 JL |
29058 | msgid "" |
29059 | "Prefix required to access this namespace. This needs to be different for " | |
29060 | "all namespaces. For example @samp{Public/}. Defaults to @samp{\"\"}." | |
29061 | msgstr "" | |
29062 | ||
29063 | #. type: deftypevr | |
39764ef8 | 29064 | #: doc/guix.texi:13222 |
b9fe8fd6 JL |
29065 | #, no-wrap |
29066 | msgid "{@code{namespace-configuration} parameter} string location" | |
29067 | msgstr "" | |
29068 | ||
29069 | #. type: deftypevr | |
39764ef8 | 29070 | #: doc/guix.texi:13226 |
b9fe8fd6 JL |
29071 | msgid "" |
29072 | "Physical location of the mailbox. This is in the same format as " | |
29073 | "mail_location, which is also the default for it. Defaults to @samp{\"\"}." | |
29074 | msgstr "" | |
29075 | ||
29076 | #. type: deftypevr | |
39764ef8 | 29077 | #: doc/guix.texi:13228 |
b9fe8fd6 JL |
29078 | #, no-wrap |
29079 | msgid "{@code{namespace-configuration} parameter} boolean inbox?" | |
29080 | msgstr "" | |
29081 | ||
29082 | #. type: deftypevr | |
39764ef8 | 29083 | #: doc/guix.texi:13232 |
b9fe8fd6 JL |
29084 | msgid "" |
29085 | "There can be only one INBOX, and this setting defines which namespace has " | |
29086 | "it. Defaults to @samp{#f}." | |
29087 | msgstr "" | |
29088 | ||
29089 | #. type: deftypevr | |
39764ef8 | 29090 | #: doc/guix.texi:13234 |
b9fe8fd6 JL |
29091 | #, no-wrap |
29092 | msgid "{@code{namespace-configuration} parameter} boolean hidden?" | |
29093 | msgstr "" | |
29094 | ||
29095 | #. type: deftypevr | |
39764ef8 | 29096 | #: doc/guix.texi:13242 |
b9fe8fd6 JL |
29097 | msgid "" |
29098 | "If namespace is hidden, it's not advertised to clients via NAMESPACE " | |
29099 | "extension. You'll most likely also want to set @samp{list? #f}. This is " | |
29100 | "mostly useful when converting from another server with different namespaces " | |
29101 | "which you want to deprecate but still keep working. For example you can " | |
29102 | "create hidden namespaces with prefixes @samp{~/mail/}, @samp{~%u/mail/} and " | |
29103 | "@samp{mail/}. Defaults to @samp{#f}." | |
29104 | msgstr "" | |
29105 | ||
29106 | #. type: deftypevr | |
39764ef8 | 29107 | #: doc/guix.texi:13244 |
b9fe8fd6 JL |
29108 | #, no-wrap |
29109 | msgid "{@code{namespace-configuration} parameter} boolean list?" | |
29110 | msgstr "" | |
29111 | ||
29112 | #. type: deftypevr | |
39764ef8 | 29113 | #: doc/guix.texi:13250 |
b9fe8fd6 JL |
29114 | msgid "" |
29115 | "Show the mailboxes under this namespace with the LIST command. This makes " | |
29116 | "the namespace visible for clients that do not support the NAMESPACE " | |
29117 | "extension. The special @code{children} value lists child mailboxes, but " | |
29118 | "hides the namespace prefix. Defaults to @samp{#t}." | |
29119 | msgstr "" | |
29120 | ||
29121 | #. type: deftypevr | |
39764ef8 | 29122 | #: doc/guix.texi:13252 |
b9fe8fd6 JL |
29123 | #, no-wrap |
29124 | msgid "{@code{namespace-configuration} parameter} boolean subscriptions?" | |
29125 | msgstr "" | |
29126 | ||
29127 | #. type: deftypevr | |
39764ef8 | 29128 | #: doc/guix.texi:13257 |
b9fe8fd6 JL |
29129 | msgid "" |
29130 | "Namespace handles its own subscriptions. If set to @code{#f}, the parent " | |
29131 | "namespace handles them. The empty prefix should always have this as " | |
29132 | "@code{#t}). Defaults to @samp{#t}." | |
29133 | msgstr "" | |
29134 | ||
29135 | #. type: deftypevr | |
39764ef8 | 29136 | #: doc/guix.texi:13259 |
b9fe8fd6 | 29137 | #, no-wrap |
39764ef8 | 29138 | msgid "{@code{namespace-configuration} parameter} mailbox-configuration-list mailboxes" |
b9fe8fd6 JL |
29139 | msgstr "" |
29140 | ||
29141 | #. type: deftypevr | |
39764ef8 | 29142 | #: doc/guix.texi:13262 |
b9fe8fd6 JL |
29143 | msgid "List of predefined mailboxes in this namespace. Defaults to @samp{()}." |
29144 | msgstr "" | |
29145 | ||
29146 | #. type: deftypevr | |
39764ef8 | 29147 | #: doc/guix.texi:13264 |
b9fe8fd6 JL |
29148 | msgid "Available @code{mailbox-configuration} fields are:" |
29149 | msgstr "" | |
29150 | ||
29151 | #. type: deftypevr | |
39764ef8 | 29152 | #: doc/guix.texi:13265 |
b9fe8fd6 JL |
29153 | #, no-wrap |
29154 | msgid "{@code{mailbox-configuration} parameter} string name" | |
29155 | msgstr "" | |
29156 | ||
29157 | #. type: deftypevr | |
39764ef8 | 29158 | #: doc/guix.texi:13267 |
b9fe8fd6 JL |
29159 | msgid "Name for this mailbox." |
29160 | msgstr "" | |
29161 | ||
29162 | #. type: deftypevr | |
39764ef8 | 29163 | #: doc/guix.texi:13269 |
b9fe8fd6 JL |
29164 | #, no-wrap |
29165 | msgid "{@code{mailbox-configuration} parameter} string auto" | |
29166 | msgstr "" | |
29167 | ||
29168 | #. type: deftypevr | |
39764ef8 | 29169 | #: doc/guix.texi:13273 |
b9fe8fd6 JL |
29170 | msgid "" |
29171 | "@samp{create} will automatically create this mailbox. @samp{subscribe} will " | |
29172 | "both create and subscribe to the mailbox. Defaults to @samp{\"no\"}." | |
29173 | msgstr "" | |
29174 | ||
29175 | #. type: deftypevr | |
39764ef8 | 29176 | #: doc/guix.texi:13275 |
b9fe8fd6 | 29177 | #, no-wrap |
39764ef8 | 29178 | msgid "{@code{mailbox-configuration} parameter} space-separated-string-list special-use" |
b9fe8fd6 JL |
29179 | msgstr "" |
29180 | ||
29181 | #. type: deftypevr | |
39764ef8 | 29182 | #: doc/guix.texi:13280 |
b9fe8fd6 JL |
29183 | msgid "" |
29184 | "List of IMAP @code{SPECIAL-USE} attributes as specified by RFC 6154. Valid " | |
29185 | "values are @code{\\All}, @code{\\Archive}, @code{\\Drafts}, " | |
29186 | "@code{\\Flagged}, @code{\\Junk}, @code{\\Sent}, and @code{\\Trash}. " | |
29187 | "Defaults to @samp{()}." | |
29188 | msgstr "" | |
29189 | ||
29190 | #. type: deftypevr | |
39764ef8 | 29191 | #: doc/guix.texi:13286 |
b9fe8fd6 JL |
29192 | #, no-wrap |
29193 | msgid "{@code{dovecot-configuration} parameter} file-name base-dir" | |
29194 | msgstr "" | |
29195 | ||
29196 | #. type: deftypevr | |
39764ef8 | 29197 | #: doc/guix.texi:13289 |
b9fe8fd6 | 29198 | msgid "" |
39764ef8 JL |
29199 | "Base directory where to store runtime data. Defaults to @samp{\"/var/run/" |
29200 | "dovecot/\"}." | |
b9fe8fd6 JL |
29201 | msgstr "" |
29202 | ||
29203 | #. type: deftypevr | |
39764ef8 | 29204 | #: doc/guix.texi:13291 |
b9fe8fd6 JL |
29205 | #, no-wrap |
29206 | msgid "{@code{dovecot-configuration} parameter} string login-greeting" | |
29207 | msgstr "" | |
29208 | ||
29209 | #. type: deftypevr | |
39764ef8 | 29210 | #: doc/guix.texi:13294 |
b9fe8fd6 JL |
29211 | msgid "Greeting message for clients. Defaults to @samp{\"Dovecot ready.\"}." |
29212 | msgstr "" | |
29213 | ||
29214 | #. type: deftypevr | |
39764ef8 | 29215 | #: doc/guix.texi:13296 |
b9fe8fd6 | 29216 | #, no-wrap |
39764ef8 | 29217 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-trusted-networks" |
b9fe8fd6 JL |
29218 | msgstr "" |
29219 | ||
29220 | #. type: deftypevr | |
39764ef8 | 29221 | #: doc/guix.texi:13303 |
b9fe8fd6 JL |
29222 | msgid "" |
29223 | "List of trusted network ranges. Connections from these IPs are allowed to " | |
29224 | "override their IP addresses and ports (for logging and for authentication " | |
29225 | "checks). @samp{disable-plaintext-auth} is also ignored for these networks. " | |
29226 | "Typically you would specify your IMAP proxy servers here. Defaults to " | |
29227 | "@samp{()}." | |
29228 | msgstr "" | |
29229 | ||
29230 | #. type: deftypevr | |
39764ef8 | 29231 | #: doc/guix.texi:13305 |
b9fe8fd6 | 29232 | #, no-wrap |
39764ef8 | 29233 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-access-sockets" |
b9fe8fd6 JL |
29234 | msgstr "" |
29235 | ||
29236 | #. type: deftypevr | |
39764ef8 JL |
29237 | #: doc/guix.texi:13308 |
29238 | msgid "" | |
29239 | "List of login access check sockets (e.g. tcpwrap). Defaults to @samp{()}." | |
b9fe8fd6 JL |
29240 | msgstr "" |
29241 | ||
29242 | #. type: deftypevr | |
39764ef8 | 29243 | #: doc/guix.texi:13310 |
b9fe8fd6 JL |
29244 | #, no-wrap |
29245 | msgid "{@code{dovecot-configuration} parameter} boolean verbose-proctitle?" | |
29246 | msgstr "" | |
29247 | ||
29248 | #. type: deftypevr | |
39764ef8 | 29249 | #: doc/guix.texi:13316 |
b9fe8fd6 JL |
29250 | msgid "" |
29251 | "Show more verbose process titles (in ps). Currently shows user name and IP " | |
39764ef8 JL |
29252 | "address. Useful for seeing who is actually using the IMAP processes (e.g. " |
29253 | "shared mailboxes or if the same uid is used for multiple accounts). " | |
b9fe8fd6 JL |
29254 | "Defaults to @samp{#f}." |
29255 | msgstr "" | |
29256 | ||
29257 | #. type: deftypevr | |
39764ef8 | 29258 | #: doc/guix.texi:13318 |
b9fe8fd6 JL |
29259 | #, no-wrap |
29260 | msgid "{@code{dovecot-configuration} parameter} boolean shutdown-clients?" | |
29261 | msgstr "" | |
29262 | ||
29263 | #. type: deftypevr | |
39764ef8 | 29264 | #: doc/guix.texi:13324 |
b9fe8fd6 JL |
29265 | msgid "" |
29266 | "Should all processes be killed when Dovecot master process shuts down. " | |
29267 | "Setting this to @code{#f} means that Dovecot can be upgraded without forcing " | |
29268 | "existing client connections to close (although that could also be a problem " | |
29269 | "if the upgrade is e.g. due to a security fix). Defaults to @samp{#t}." | |
29270 | msgstr "" | |
29271 | ||
29272 | #. type: deftypevr | |
39764ef8 | 29273 | #: doc/guix.texi:13326 |
b9fe8fd6 | 29274 | #, no-wrap |
39764ef8 | 29275 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer doveadm-worker-count" |
b9fe8fd6 JL |
29276 | msgstr "" |
29277 | ||
29278 | #. type: deftypevr | |
39764ef8 | 29279 | #: doc/guix.texi:13330 |
b9fe8fd6 JL |
29280 | msgid "" |
29281 | "If non-zero, run mail commands via this many connections to doveadm server, " | |
29282 | "instead of running them directly in the same process. Defaults to @samp{0}." | |
29283 | msgstr "" | |
29284 | ||
29285 | #. type: deftypevr | |
39764ef8 | 29286 | #: doc/guix.texi:13332 |
b9fe8fd6 JL |
29287 | #, no-wrap |
29288 | msgid "{@code{dovecot-configuration} parameter} string doveadm-socket-path" | |
29289 | msgstr "" | |
29290 | ||
29291 | #. type: deftypevr | |
39764ef8 | 29292 | #: doc/guix.texi:13335 |
b9fe8fd6 JL |
29293 | msgid "" |
29294 | "UNIX socket or host:port used for connecting to doveadm server. Defaults to " | |
29295 | "@samp{\"doveadm-server\"}." | |
29296 | msgstr "" | |
29297 | ||
29298 | #. type: deftypevr | |
39764ef8 | 29299 | #: doc/guix.texi:13337 |
b9fe8fd6 | 29300 | #, no-wrap |
39764ef8 | 29301 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list import-environment" |
b9fe8fd6 JL |
29302 | msgstr "" |
29303 | ||
29304 | #. type: deftypevr | |
39764ef8 | 29305 | #: doc/guix.texi:13341 |
b9fe8fd6 JL |
29306 | msgid "" |
29307 | "List of environment variables that are preserved on Dovecot startup and " | |
29308 | "passed down to all of its child processes. You can also give key=value " | |
29309 | "pairs to always set specific settings." | |
29310 | msgstr "" | |
29311 | ||
29312 | #. type: deftypevr | |
39764ef8 | 29313 | #: doc/guix.texi:13343 |
b9fe8fd6 JL |
29314 | #, no-wrap |
29315 | msgid "{@code{dovecot-configuration} parameter} boolean disable-plaintext-auth?" | |
29316 | msgstr "" | |
29317 | ||
29318 | #. type: deftypevr | |
39764ef8 | 29319 | #: doc/guix.texi:13350 |
b9fe8fd6 JL |
29320 | msgid "" |
29321 | "Disable LOGIN command and all other plaintext authentications unless SSL/TLS " | |
29322 | "is used (LOGINDISABLED capability). Note that if the remote IP matches the " | |
29323 | "local IP (i.e. you're connecting from the same computer), the connection is " | |
29324 | "considered secure and plaintext authentication is allowed. See also " | |
29325 | "ssl=required setting. Defaults to @samp{#t}." | |
29326 | msgstr "" | |
29327 | ||
29328 | #. type: deftypevr | |
39764ef8 | 29329 | #: doc/guix.texi:13352 |
b9fe8fd6 | 29330 | #, no-wrap |
39764ef8 | 29331 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer auth-cache-size" |
b9fe8fd6 JL |
29332 | msgstr "" |
29333 | ||
29334 | #. type: deftypevr | |
39764ef8 | 29335 | #: doc/guix.texi:13357 |
b9fe8fd6 JL |
29336 | msgid "" |
29337 | "Authentication cache size (e.g. @samp{#e10e6}). 0 means it's disabled. " | |
29338 | "Note that bsdauth, PAM and vpopmail require @samp{cache-key} to be set for " | |
29339 | "caching to be used. Defaults to @samp{0}." | |
29340 | msgstr "" | |
29341 | ||
29342 | #. type: deftypevr | |
39764ef8 | 29343 | #: doc/guix.texi:13359 |
b9fe8fd6 JL |
29344 | #, no-wrap |
29345 | msgid "{@code{dovecot-configuration} parameter} string auth-cache-ttl" | |
29346 | msgstr "" | |
29347 | ||
29348 | #. type: deftypevr | |
39764ef8 | 29349 | #: doc/guix.texi:13367 |
b9fe8fd6 JL |
29350 | msgid "" |
29351 | "Time to live for cached data. After TTL expires the cached record is no " | |
29352 | "longer used, *except* if the main database lookup returns internal failure. " | |
29353 | "We also try to handle password changes automatically: If user's previous " | |
29354 | "authentication was successful, but this one wasn't, the cache isn't used. " | |
29355 | "For now this works only with plaintext authentication. Defaults to " | |
29356 | "@samp{\"1 hour\"}." | |
29357 | msgstr "" | |
29358 | ||
29359 | #. type: deftypevr | |
39764ef8 | 29360 | #: doc/guix.texi:13369 |
b9fe8fd6 JL |
29361 | #, no-wrap |
29362 | msgid "{@code{dovecot-configuration} parameter} string auth-cache-negative-ttl" | |
29363 | msgstr "" | |
29364 | ||
29365 | #. type: deftypevr | |
39764ef8 | 29366 | #: doc/guix.texi:13373 |
b9fe8fd6 JL |
29367 | msgid "" |
29368 | "TTL for negative hits (user not found, password mismatch). 0 disables " | |
29369 | "caching them completely. Defaults to @samp{\"1 hour\"}." | |
29370 | msgstr "" | |
29371 | ||
29372 | #. type: deftypevr | |
39764ef8 | 29373 | #: doc/guix.texi:13375 |
b9fe8fd6 | 29374 | #, no-wrap |
39764ef8 | 29375 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list auth-realms" |
b9fe8fd6 JL |
29376 | msgstr "" |
29377 | ||
29378 | #. type: deftypevr | |
39764ef8 | 29379 | #: doc/guix.texi:13381 |
b9fe8fd6 JL |
29380 | msgid "" |
29381 | "List of realms for SASL authentication mechanisms that need them. You can " | |
29382 | "leave it empty if you don't want to support multiple realms. Many clients " | |
29383 | "simply use the first one listed here, so keep the default realm first. " | |
29384 | "Defaults to @samp{()}." | |
29385 | msgstr "" | |
29386 | ||
29387 | #. type: deftypevr | |
39764ef8 | 29388 | #: doc/guix.texi:13383 |
b9fe8fd6 JL |
29389 | #, no-wrap |
29390 | msgid "{@code{dovecot-configuration} parameter} string auth-default-realm" | |
29391 | msgstr "" | |
29392 | ||
29393 | #. type: deftypevr | |
39764ef8 | 29394 | #: doc/guix.texi:13388 |
b9fe8fd6 JL |
29395 | msgid "" |
29396 | "Default realm/domain to use if none was specified. This is used for both " | |
29397 | "SASL realms and appending @@domain to username in plaintext logins. " | |
29398 | "Defaults to @samp{\"\"}." | |
29399 | msgstr "" | |
29400 | ||
29401 | #. type: deftypevr | |
39764ef8 | 29402 | #: doc/guix.texi:13390 |
b9fe8fd6 JL |
29403 | #, no-wrap |
29404 | msgid "{@code{dovecot-configuration} parameter} string auth-username-chars" | |
29405 | msgstr "" | |
29406 | ||
29407 | #. type: deftypevr | |
39764ef8 | 29408 | #: doc/guix.texi:13397 |
b9fe8fd6 JL |
29409 | msgid "" |
29410 | "List of allowed characters in username. If the user-given username contains " | |
29411 | "a character not listed in here, the login automatically fails. This is just " | |
29412 | "an extra check to make sure user can't exploit any potential quote escaping " | |
29413 | "vulnerabilities with SQL/LDAP databases. If you want to allow all " | |
29414 | "characters, set this value to empty. Defaults to " | |
39764ef8 JL |
29415 | "@samp{\"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@@" |
29416 | "\"}." | |
b9fe8fd6 JL |
29417 | msgstr "" |
29418 | ||
29419 | #. type: deftypevr | |
39764ef8 | 29420 | #: doc/guix.texi:13399 |
b9fe8fd6 JL |
29421 | #, no-wrap |
29422 | msgid "{@code{dovecot-configuration} parameter} string auth-username-translation" | |
29423 | msgstr "" | |
29424 | ||
29425 | #. type: deftypevr | |
39764ef8 | 29426 | #: doc/guix.texi:13405 |
b9fe8fd6 JL |
29427 | msgid "" |
29428 | "Username character translations before it's looked up from databases. The " | |
29429 | "value contains series of from -> to characters. For example @samp{#@@/@@} " | |
29430 | "means that @samp{#} and @samp{/} characters are translated to @samp{@@}. " | |
29431 | "Defaults to @samp{\"\"}." | |
29432 | msgstr "" | |
29433 | ||
29434 | #. type: deftypevr | |
39764ef8 | 29435 | #: doc/guix.texi:13407 |
b9fe8fd6 JL |
29436 | #, no-wrap |
29437 | msgid "{@code{dovecot-configuration} parameter} string auth-username-format" | |
29438 | msgstr "" | |
29439 | ||
29440 | #. type: deftypevr | |
39764ef8 | 29441 | #: doc/guix.texi:13414 |
b9fe8fd6 JL |
29442 | msgid "" |
29443 | "Username formatting before it's looked up from databases. You can use the " | |
29444 | "standard variables here, e.g. %Lu would lowercase the username, %n would " | |
29445 | "drop away the domain if it was given, or @samp{%n-AT-%d} would change the " | |
39764ef8 JL |
29446 | "@samp{@@} into @samp{-AT-}. This translation is done after @samp{auth-" |
29447 | "username-translation} changes. Defaults to @samp{\"%Lu\"}." | |
b9fe8fd6 JL |
29448 | msgstr "" |
29449 | ||
29450 | #. type: deftypevr | |
39764ef8 | 29451 | #: doc/guix.texi:13416 |
b9fe8fd6 JL |
29452 | #, no-wrap |
29453 | msgid "{@code{dovecot-configuration} parameter} string auth-master-user-separator" | |
29454 | msgstr "" | |
29455 | ||
29456 | #. type: deftypevr | |
39764ef8 | 29457 | #: doc/guix.texi:13424 |
b9fe8fd6 JL |
29458 | msgid "" |
29459 | "If you want to allow master users to log in by specifying the master " | |
29460 | "username within the normal username string (i.e. not using SASL mechanism's " | |
29461 | "support for it), you can specify the separator character here. The format " | |
29462 | "is then <username><separator><master username>. UW-IMAP uses @samp{*} as " | |
29463 | "the separator, so that could be a good choice. Defaults to @samp{\"\"}." | |
29464 | msgstr "" | |
29465 | ||
29466 | #. type: deftypevr | |
39764ef8 | 29467 | #: doc/guix.texi:13426 |
b9fe8fd6 JL |
29468 | #, no-wrap |
29469 | msgid "{@code{dovecot-configuration} parameter} string auth-anonymous-username" | |
29470 | msgstr "" | |
29471 | ||
29472 | #. type: deftypevr | |
39764ef8 | 29473 | #: doc/guix.texi:13430 |
b9fe8fd6 JL |
29474 | msgid "" |
29475 | "Username to use for users logging in with ANONYMOUS SASL mechanism. " | |
29476 | "Defaults to @samp{\"anonymous\"}." | |
29477 | msgstr "" | |
29478 | ||
29479 | #. type: deftypevr | |
39764ef8 | 29480 | #: doc/guix.texi:13432 |
b9fe8fd6 | 29481 | #, no-wrap |
39764ef8 | 29482 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer auth-worker-max-count" |
b9fe8fd6 JL |
29483 | msgstr "" |
29484 | ||
29485 | #. type: deftypevr | |
39764ef8 | 29486 | #: doc/guix.texi:13437 |
b9fe8fd6 JL |
29487 | msgid "" |
29488 | "Maximum number of dovecot-auth worker processes. They're used to execute " | |
29489 | "blocking passdb and userdb queries (e.g. MySQL and PAM). They're " | |
29490 | "automatically created and destroyed as needed. Defaults to @samp{30}." | |
29491 | msgstr "" | |
29492 | ||
29493 | #. type: deftypevr | |
39764ef8 | 29494 | #: doc/guix.texi:13439 |
b9fe8fd6 JL |
29495 | #, no-wrap |
29496 | msgid "{@code{dovecot-configuration} parameter} string auth-gssapi-hostname" | |
29497 | msgstr "" | |
29498 | ||
29499 | #. type: deftypevr | |
39764ef8 | 29500 | #: doc/guix.texi:13444 |
b9fe8fd6 JL |
29501 | msgid "" |
29502 | "Host name to use in GSSAPI principal names. The default is to use the name " | |
29503 | "returned by gethostname(). Use @samp{$ALL} (with quotes) to allow all " | |
29504 | "keytab entries. Defaults to @samp{\"\"}." | |
29505 | msgstr "" | |
29506 | ||
29507 | #. type: deftypevr | |
39764ef8 | 29508 | #: doc/guix.texi:13446 |
b9fe8fd6 JL |
29509 | #, no-wrap |
29510 | msgid "{@code{dovecot-configuration} parameter} string auth-krb5-keytab" | |
29511 | msgstr "" | |
29512 | ||
29513 | #. type: deftypevr | |
39764ef8 | 29514 | #: doc/guix.texi:13452 |
b9fe8fd6 JL |
29515 | msgid "" |
29516 | "Kerberos keytab to use for the GSSAPI mechanism. Will use the system " | |
29517 | "default (usually @file{/etc/krb5.keytab}) if not specified. You may need to " | |
29518 | "change the auth service to run as root to be able to read this file. " | |
29519 | "Defaults to @samp{\"\"}." | |
29520 | msgstr "" | |
29521 | ||
29522 | #. type: deftypevr | |
39764ef8 | 29523 | #: doc/guix.texi:13454 |
b9fe8fd6 JL |
29524 | #, no-wrap |
29525 | msgid "{@code{dovecot-configuration} parameter} boolean auth-use-winbind?" | |
29526 | msgstr "" | |
29527 | ||
29528 | #. type: deftypevr | |
39764ef8 | 29529 | #: doc/guix.texi:13459 |
b9fe8fd6 JL |
29530 | msgid "" |
29531 | "Do NTLM and GSS-SPNEGO authentication using Samba's winbind daemon and " | |
29532 | "@samp{ntlm-auth} helper. <doc/wiki/Authentication/Mechanisms/Winbind.txt>. " | |
29533 | "Defaults to @samp{#f}." | |
29534 | msgstr "" | |
29535 | ||
29536 | #. type: deftypevr | |
39764ef8 | 29537 | #: doc/guix.texi:13461 |
b9fe8fd6 JL |
29538 | #, no-wrap |
29539 | msgid "{@code{dovecot-configuration} parameter} file-name auth-winbind-helper-path" | |
29540 | msgstr "" | |
29541 | ||
29542 | #. type: deftypevr | |
39764ef8 | 29543 | #: doc/guix.texi:13464 |
b9fe8fd6 | 29544 | msgid "" |
39764ef8 JL |
29545 | "Path for Samba's @samp{ntlm-auth} helper binary. Defaults to @samp{\"/usr/" |
29546 | "bin/ntlm_auth\"}." | |
b9fe8fd6 JL |
29547 | msgstr "" |
29548 | ||
29549 | #. type: deftypevr | |
39764ef8 | 29550 | #: doc/guix.texi:13466 |
b9fe8fd6 JL |
29551 | #, no-wrap |
29552 | msgid "{@code{dovecot-configuration} parameter} string auth-failure-delay" | |
29553 | msgstr "" | |
29554 | ||
29555 | #. type: deftypevr | |
39764ef8 | 29556 | #: doc/guix.texi:13469 |
b9fe8fd6 JL |
29557 | msgid "" |
29558 | "Time to delay before replying to failed authentications. Defaults to " | |
29559 | "@samp{\"2 secs\"}." | |
29560 | msgstr "" | |
29561 | ||
29562 | #. type: deftypevr | |
39764ef8 | 29563 | #: doc/guix.texi:13471 |
b9fe8fd6 | 29564 | #, no-wrap |
39764ef8 | 29565 | msgid "{@code{dovecot-configuration} parameter} boolean auth-ssl-require-client-cert?" |
b9fe8fd6 JL |
29566 | msgstr "" |
29567 | ||
29568 | #. type: deftypevr | |
39764ef8 | 29569 | #: doc/guix.texi:13475 |
b9fe8fd6 JL |
29570 | msgid "" |
29571 | "Require a valid SSL client certificate or the authentication fails. " | |
29572 | "Defaults to @samp{#f}." | |
29573 | msgstr "" | |
29574 | ||
29575 | #. type: deftypevr | |
39764ef8 | 29576 | #: doc/guix.texi:13477 |
b9fe8fd6 | 29577 | #, no-wrap |
39764ef8 | 29578 | msgid "{@code{dovecot-configuration} parameter} boolean auth-ssl-username-from-cert?" |
b9fe8fd6 JL |
29579 | msgstr "" |
29580 | ||
29581 | #. type: deftypevr | |
39764ef8 | 29582 | #: doc/guix.texi:13482 |
b9fe8fd6 JL |
29583 | msgid "" |
29584 | "Take the username from client's SSL certificate, using " | |
29585 | "@code{X509_NAME_get_text_by_NID()} which returns the subject's DN's " | |
29586 | "CommonName. Defaults to @samp{#f}." | |
29587 | msgstr "" | |
29588 | ||
29589 | #. type: deftypevr | |
39764ef8 | 29590 | #: doc/guix.texi:13484 |
b9fe8fd6 | 29591 | #, no-wrap |
39764ef8 | 29592 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list auth-mechanisms" |
b9fe8fd6 JL |
29593 | msgstr "" |
29594 | ||
29595 | #. type: deftypevr | |
39764ef8 | 29596 | #: doc/guix.texi:13490 |
b9fe8fd6 JL |
29597 | msgid "" |
29598 | "List of wanted authentication mechanisms. Supported mechanisms are: " | |
29599 | "@samp{plain}, @samp{login}, @samp{digest-md5}, @samp{cram-md5}, @samp{ntlm}, " | |
29600 | "@samp{rpa}, @samp{apop}, @samp{anonymous}, @samp{gssapi}, @samp{otp}, " | |
39764ef8 JL |
29601 | "@samp{skey}, and @samp{gss-spnego}. NOTE: See also @samp{disable-plaintext-" |
29602 | "auth} setting." | |
b9fe8fd6 JL |
29603 | msgstr "" |
29604 | ||
29605 | #. type: deftypevr | |
39764ef8 | 29606 | #: doc/guix.texi:13492 |
b9fe8fd6 | 29607 | #, no-wrap |
39764ef8 | 29608 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list director-servers" |
b9fe8fd6 JL |
29609 | msgstr "" |
29610 | ||
29611 | #. type: deftypevr | |
39764ef8 | 29612 | #: doc/guix.texi:13497 |
b9fe8fd6 JL |
29613 | msgid "" |
29614 | "List of IPs or hostnames to all director servers, including ourself. Ports " | |
29615 | "can be specified as ip:port. The default port is the same as what director " | |
29616 | "service's @samp{inet-listener} is using. Defaults to @samp{()}." | |
29617 | msgstr "" | |
29618 | ||
29619 | #. type: deftypevr | |
39764ef8 | 29620 | #: doc/guix.texi:13499 |
b9fe8fd6 | 29621 | #, no-wrap |
39764ef8 | 29622 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list director-mail-servers" |
b9fe8fd6 JL |
29623 | msgstr "" |
29624 | ||
29625 | #. type: deftypevr | |
39764ef8 | 29626 | #: doc/guix.texi:13503 |
b9fe8fd6 JL |
29627 | msgid "" |
29628 | "List of IPs or hostnames to all backend mail servers. Ranges are allowed " | |
29629 | "too, like 10.0.0.10-10.0.0.30. Defaults to @samp{()}." | |
29630 | msgstr "" | |
29631 | ||
29632 | #. type: deftypevr | |
39764ef8 | 29633 | #: doc/guix.texi:13505 |
b9fe8fd6 JL |
29634 | #, no-wrap |
29635 | msgid "{@code{dovecot-configuration} parameter} string director-user-expire" | |
29636 | msgstr "" | |
29637 | ||
29638 | #. type: deftypevr | |
39764ef8 | 29639 | #: doc/guix.texi:13509 |
b9fe8fd6 JL |
29640 | msgid "" |
29641 | "How long to redirect users to a specific server after it no longer has any " | |
29642 | "connections. Defaults to @samp{\"15 min\"}." | |
29643 | msgstr "" | |
29644 | ||
29645 | #. type: deftypevr | |
39764ef8 | 29646 | #: doc/guix.texi:13511 |
b9fe8fd6 JL |
29647 | #, no-wrap |
29648 | msgid "{@code{dovecot-configuration} parameter} string director-username-hash" | |
29649 | msgstr "" | |
29650 | ||
29651 | #. type: deftypevr | |
39764ef8 | 29652 | #: doc/guix.texi:13516 |
b9fe8fd6 JL |
29653 | msgid "" |
29654 | "How the username is translated before being hashed. Useful values include " | |
29655 | "%Ln if user can log in with or without @@domain, %Ld if mailboxes are shared " | |
29656 | "within domain. Defaults to @samp{\"%Lu\"}." | |
29657 | msgstr "" | |
29658 | ||
29659 | #. type: deftypevr | |
39764ef8 | 29660 | #: doc/guix.texi:13518 |
b9fe8fd6 JL |
29661 | #, no-wrap |
29662 | msgid "{@code{dovecot-configuration} parameter} string log-path" | |
29663 | msgstr "" | |
29664 | ||
29665 | #. type: deftypevr | |
39764ef8 | 29666 | #: doc/guix.texi:13522 |
b9fe8fd6 | 29667 | msgid "" |
39764ef8 JL |
29668 | "Log file to use for error messages. @samp{syslog} logs to syslog, @samp{/" |
29669 | "dev/stderr} logs to stderr. Defaults to @samp{\"syslog\"}." | |
b9fe8fd6 JL |
29670 | msgstr "" |
29671 | ||
29672 | #. type: deftypevr | |
39764ef8 | 29673 | #: doc/guix.texi:13524 |
b9fe8fd6 JL |
29674 | #, no-wrap |
29675 | msgid "{@code{dovecot-configuration} parameter} string info-log-path" | |
29676 | msgstr "" | |
29677 | ||
29678 | #. type: deftypevr | |
39764ef8 | 29679 | #: doc/guix.texi:13528 |
b9fe8fd6 JL |
29680 | msgid "" |
29681 | "Log file to use for informational messages. Defaults to @samp{log-path}. " | |
29682 | "Defaults to @samp{\"\"}." | |
29683 | msgstr "" | |
29684 | ||
29685 | #. type: deftypevr | |
39764ef8 | 29686 | #: doc/guix.texi:13530 |
b9fe8fd6 JL |
29687 | #, no-wrap |
29688 | msgid "{@code{dovecot-configuration} parameter} string debug-log-path" | |
29689 | msgstr "" | |
29690 | ||
29691 | #. type: deftypevr | |
39764ef8 | 29692 | #: doc/guix.texi:13534 |
b9fe8fd6 JL |
29693 | msgid "" |
29694 | "Log file to use for debug messages. Defaults to @samp{info-log-path}. " | |
29695 | "Defaults to @samp{\"\"}." | |
29696 | msgstr "" | |
29697 | ||
29698 | #. type: deftypevr | |
39764ef8 | 29699 | #: doc/guix.texi:13536 |
b9fe8fd6 JL |
29700 | #, no-wrap |
29701 | msgid "{@code{dovecot-configuration} parameter} string syslog-facility" | |
29702 | msgstr "" | |
29703 | ||
29704 | #. type: deftypevr | |
39764ef8 | 29705 | #: doc/guix.texi:13541 |
b9fe8fd6 JL |
29706 | msgid "" |
29707 | "Syslog facility to use if you're logging to syslog. Usually if you don't " | |
29708 | "want to use @samp{mail}, you'll use local0..local7. Also other standard " | |
29709 | "facilities are supported. Defaults to @samp{\"mail\"}." | |
29710 | msgstr "" | |
29711 | ||
29712 | #. type: deftypevr | |
39764ef8 | 29713 | #: doc/guix.texi:13543 |
b9fe8fd6 JL |
29714 | #, no-wrap |
29715 | msgid "{@code{dovecot-configuration} parameter} boolean auth-verbose?" | |
29716 | msgstr "" | |
29717 | ||
29718 | #. type: deftypevr | |
39764ef8 | 29719 | #: doc/guix.texi:13547 |
b9fe8fd6 JL |
29720 | msgid "" |
29721 | "Log unsuccessful authentication attempts and the reasons why they failed. " | |
29722 | "Defaults to @samp{#f}." | |
29723 | msgstr "" | |
29724 | ||
29725 | #. type: deftypevr | |
39764ef8 | 29726 | #: doc/guix.texi:13549 |
b9fe8fd6 JL |
29727 | #, no-wrap |
29728 | msgid "{@code{dovecot-configuration} parameter} boolean auth-verbose-passwords?" | |
29729 | msgstr "" | |
29730 | ||
29731 | #. type: deftypevr | |
39764ef8 | 29732 | #: doc/guix.texi:13556 |
b9fe8fd6 JL |
29733 | msgid "" |
29734 | "In case of password mismatches, log the attempted password. Valid values " | |
29735 | "are no, plain and sha1. sha1 can be useful for detecting brute force " | |
29736 | "password attempts vs. user simply trying the same password over and over " | |
39764ef8 JL |
29737 | "again. You can also truncate the value to n chars by appending \":n\" (e.g. " |
29738 | "sha1:6). Defaults to @samp{#f}." | |
b9fe8fd6 JL |
29739 | msgstr "" |
29740 | ||
29741 | #. type: deftypevr | |
39764ef8 | 29742 | #: doc/guix.texi:13558 |
b9fe8fd6 JL |
29743 | #, no-wrap |
29744 | msgid "{@code{dovecot-configuration} parameter} boolean auth-debug?" | |
29745 | msgstr "" | |
29746 | ||
29747 | #. type: deftypevr | |
39764ef8 | 29748 | #: doc/guix.texi:13562 |
b9fe8fd6 JL |
29749 | msgid "" |
29750 | "Even more verbose logging for debugging purposes. Shows for example SQL " | |
29751 | "queries. Defaults to @samp{#f}." | |
29752 | msgstr "" | |
29753 | ||
29754 | #. type: deftypevr | |
39764ef8 | 29755 | #: doc/guix.texi:13564 |
b9fe8fd6 JL |
29756 | #, no-wrap |
29757 | msgid "{@code{dovecot-configuration} parameter} boolean auth-debug-passwords?" | |
29758 | msgstr "" | |
29759 | ||
29760 | #. type: deftypevr | |
39764ef8 | 29761 | #: doc/guix.texi:13569 |
b9fe8fd6 JL |
29762 | msgid "" |
29763 | "In case of password mismatches, log the passwords and used scheme so the " | |
29764 | "problem can be debugged. Enabling this also enables @samp{auth-debug}. " | |
29765 | "Defaults to @samp{#f}." | |
29766 | msgstr "" | |
29767 | ||
29768 | #. type: deftypevr | |
39764ef8 | 29769 | #: doc/guix.texi:13571 |
b9fe8fd6 JL |
29770 | #, no-wrap |
29771 | msgid "{@code{dovecot-configuration} parameter} boolean mail-debug?" | |
29772 | msgstr "" | |
29773 | ||
29774 | #. type: deftypevr | |
39764ef8 | 29775 | #: doc/guix.texi:13575 |
b9fe8fd6 JL |
29776 | msgid "" |
29777 | "Enable mail process debugging. This can help you figure out why Dovecot " | |
29778 | "isn't finding your mails. Defaults to @samp{#f}." | |
29779 | msgstr "" | |
29780 | ||
29781 | #. type: deftypevr | |
39764ef8 | 29782 | #: doc/guix.texi:13577 |
b9fe8fd6 JL |
29783 | #, no-wrap |
29784 | msgid "{@code{dovecot-configuration} parameter} boolean verbose-ssl?" | |
29785 | msgstr "" | |
29786 | ||
29787 | #. type: deftypevr | |
39764ef8 | 29788 | #: doc/guix.texi:13580 |
b9fe8fd6 JL |
29789 | msgid "Show protocol level SSL errors. Defaults to @samp{#f}." |
29790 | msgstr "" | |
29791 | ||
29792 | #. type: deftypevr | |
39764ef8 | 29793 | #: doc/guix.texi:13582 |
b9fe8fd6 JL |
29794 | #, no-wrap |
29795 | msgid "{@code{dovecot-configuration} parameter} string log-timestamp" | |
29796 | msgstr "" | |
29797 | ||
29798 | #. type: deftypevr | |
39764ef8 | 29799 | #: doc/guix.texi:13586 |
b9fe8fd6 JL |
29800 | msgid "" |
29801 | "Prefix for each line written to log file. % codes are in strftime(3) " | |
29802 | "format. Defaults to @samp{\"\\\"%b %d %H:%M:%S \\\"\"}." | |
29803 | msgstr "" | |
29804 | ||
29805 | #. type: deftypevr | |
39764ef8 | 29806 | #: doc/guix.texi:13588 |
b9fe8fd6 | 29807 | #, no-wrap |
39764ef8 | 29808 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list login-log-format-elements" |
b9fe8fd6 JL |
29809 | msgstr "" |
29810 | ||
29811 | #. type: deftypevr | |
39764ef8 | 29812 | #: doc/guix.texi:13592 |
b9fe8fd6 JL |
29813 | msgid "" |
29814 | "List of elements we want to log. The elements which have a non-empty " | |
29815 | "variable value are joined together to form a comma-separated string." | |
29816 | msgstr "" | |
29817 | ||
29818 | #. type: deftypevr | |
39764ef8 | 29819 | #: doc/guix.texi:13594 |
b9fe8fd6 JL |
29820 | #, no-wrap |
29821 | msgid "{@code{dovecot-configuration} parameter} string login-log-format" | |
29822 | msgstr "" | |
29823 | ||
29824 | #. type: deftypevr | |
39764ef8 | 29825 | #: doc/guix.texi:13598 |
b9fe8fd6 JL |
29826 | msgid "" |
29827 | "Login log format. %s contains @samp{login-log-format-elements} string, %$ " | |
29828 | "contains the data we want to log. Defaults to @samp{\"%$: %s\"}." | |
29829 | msgstr "" | |
29830 | ||
29831 | #. type: deftypevr | |
39764ef8 | 29832 | #: doc/guix.texi:13600 |
b9fe8fd6 JL |
29833 | #, no-wrap |
29834 | msgid "{@code{dovecot-configuration} parameter} string mail-log-prefix" | |
29835 | msgstr "" | |
29836 | ||
29837 | #. type: deftypevr | |
39764ef8 | 29838 | #: doc/guix.texi:13604 |
b9fe8fd6 JL |
29839 | msgid "" |
29840 | "Log prefix for mail processes. See doc/wiki/Variables.txt for list of " | |
39764ef8 JL |
29841 | "possible variables you can use. Defaults to @samp{\"\\\"%s(%u)<%@{pid@}><" |
29842 | "%@{session@}>: \\\"\"}." | |
b9fe8fd6 JL |
29843 | msgstr "" |
29844 | ||
29845 | #. type: deftypevr | |
39764ef8 | 29846 | #: doc/guix.texi:13606 |
b9fe8fd6 JL |
29847 | #, no-wrap |
29848 | msgid "{@code{dovecot-configuration} parameter} string deliver-log-format" | |
29849 | msgstr "" | |
29850 | ||
29851 | #. type: deftypevr | |
39764ef8 | 29852 | #: doc/guix.texi:13608 |
b9fe8fd6 JL |
29853 | msgid "Format to use for logging mail deliveries. You can use variables:" |
29854 | msgstr "" | |
29855 | ||
29856 | #. type: item | |
39764ef8 | 29857 | #: doc/guix.texi:13609 |
b9fe8fd6 JL |
29858 | #, no-wrap |
29859 | msgid "%$" | |
29860 | msgstr "" | |
29861 | ||
29862 | #. type: table | |
39764ef8 | 29863 | #: doc/guix.texi:13611 |
b9fe8fd6 JL |
29864 | msgid "Delivery status message (e.g. @samp{saved to INBOX})" |
29865 | msgstr "" | |
29866 | ||
29867 | #. type: item | |
39764ef8 | 29868 | #: doc/guix.texi:13611 |
b9fe8fd6 JL |
29869 | #, no-wrap |
29870 | msgid "%m" | |
29871 | msgstr "" | |
29872 | ||
29873 | #. type: table | |
39764ef8 | 29874 | #: doc/guix.texi:13613 |
b9fe8fd6 JL |
29875 | msgid "Message-ID" |
29876 | msgstr "" | |
29877 | ||
29878 | #. type: item | |
39764ef8 | 29879 | #: doc/guix.texi:13613 doc/guix.texi:14145 |
b9fe8fd6 JL |
29880 | #, no-wrap |
29881 | msgid "%s" | |
29882 | msgstr "" | |
29883 | ||
29884 | #. type: table | |
39764ef8 | 29885 | #: doc/guix.texi:13615 |
b9fe8fd6 JL |
29886 | msgid "Subject" |
29887 | msgstr "" | |
29888 | ||
29889 | #. type: item | |
39764ef8 | 29890 | #: doc/guix.texi:13615 |
b9fe8fd6 JL |
29891 | #, no-wrap |
29892 | msgid "%f" | |
29893 | msgstr "" | |
29894 | ||
29895 | #. type: table | |
39764ef8 | 29896 | #: doc/guix.texi:13617 |
b9fe8fd6 JL |
29897 | msgid "From address" |
29898 | msgstr "" | |
29899 | ||
29900 | #. type: table | |
39764ef8 | 29901 | #: doc/guix.texi:13619 |
b9fe8fd6 JL |
29902 | msgid "Physical size" |
29903 | msgstr "" | |
29904 | ||
29905 | #. type: item | |
39764ef8 | 29906 | #: doc/guix.texi:13619 |
b9fe8fd6 JL |
29907 | #, no-wrap |
29908 | msgid "%w" | |
29909 | msgstr "" | |
29910 | ||
29911 | #. type: table | |
39764ef8 | 29912 | #: doc/guix.texi:13621 |
b9fe8fd6 JL |
29913 | msgid "Virtual size." |
29914 | msgstr "" | |
29915 | ||
29916 | #. type: deftypevr | |
39764ef8 | 29917 | #: doc/guix.texi:13623 |
b9fe8fd6 JL |
29918 | msgid "Defaults to @samp{\"msgid=%m: %$\"}." |
29919 | msgstr "" | |
29920 | ||
29921 | #. type: deftypevr | |
39764ef8 | 29922 | #: doc/guix.texi:13625 |
b9fe8fd6 JL |
29923 | #, no-wrap |
29924 | msgid "{@code{dovecot-configuration} parameter} string mail-location" | |
29925 | msgstr "" | |
29926 | ||
29927 | #. type: deftypevr | |
39764ef8 | 29928 | #: doc/guix.texi:13630 |
b9fe8fd6 JL |
29929 | msgid "" |
29930 | "Location for users' mailboxes. The default is empty, which means that " | |
29931 | "Dovecot tries to find the mailboxes automatically. This won't work if the " | |
29932 | "user doesn't yet have any mail, so you should explicitly tell Dovecot the " | |
29933 | "full location." | |
29934 | msgstr "" | |
29935 | ||
29936 | #. type: deftypevr | |
39764ef8 | 29937 | #: doc/guix.texi:13636 |
b9fe8fd6 JL |
29938 | msgid "" |
29939 | "If you're using mbox, giving a path to the INBOX file (e.g. /var/mail/%u) " | |
29940 | "isn't enough. You'll also need to tell Dovecot where the other mailboxes " | |
29941 | "are kept. This is called the \"root mail directory\", and it must be the " | |
29942 | "first path given in the @samp{mail-location} setting." | |
29943 | msgstr "" | |
29944 | ||
29945 | #. type: deftypevr | |
39764ef8 | 29946 | #: doc/guix.texi:13638 |
b9fe8fd6 JL |
29947 | msgid "There are a few special variables you can use, eg.:" |
29948 | msgstr "" | |
29949 | ||
29950 | #. type: table | |
39764ef8 | 29951 | #: doc/guix.texi:13642 |
b9fe8fd6 JL |
29952 | msgid "username" |
29953 | msgstr "" | |
29954 | ||
29955 | #. type: item | |
39764ef8 | 29956 | #: doc/guix.texi:13642 doc/guix.texi:14141 |
b9fe8fd6 JL |
29957 | #, no-wrap |
29958 | msgid "%n" | |
29959 | msgstr "" | |
29960 | ||
29961 | #. type: table | |
39764ef8 | 29962 | #: doc/guix.texi:13644 |
b9fe8fd6 JL |
29963 | msgid "user part in user@@domain, same as %u if there's no domain" |
29964 | msgstr "" | |
29965 | ||
29966 | #. type: item | |
39764ef8 | 29967 | #: doc/guix.texi:13644 |
b9fe8fd6 JL |
29968 | #, no-wrap |
29969 | msgid "%d" | |
29970 | msgstr "" | |
29971 | ||
29972 | #. type: table | |
39764ef8 | 29973 | #: doc/guix.texi:13646 |
b9fe8fd6 JL |
29974 | msgid "domain part in user@@domain, empty if there's no domain" |
29975 | msgstr "" | |
29976 | ||
29977 | #. type: item | |
39764ef8 | 29978 | #: doc/guix.texi:13646 |
b9fe8fd6 JL |
29979 | #, no-wrap |
29980 | msgid "%h" | |
29981 | msgstr "" | |
29982 | ||
29983 | #. type: table | |
39764ef8 | 29984 | #: doc/guix.texi:13648 |
b9fe8fd6 JL |
29985 | msgid "home director" |
29986 | msgstr "" | |
29987 | ||
29988 | #. type: deftypevr | |
39764ef8 | 29989 | #: doc/guix.texi:13651 |
b9fe8fd6 JL |
29990 | msgid "See doc/wiki/Variables.txt for full list. Some examples:" |
29991 | msgstr "" | |
29992 | ||
29993 | #. type: item | |
39764ef8 | 29994 | #: doc/guix.texi:13652 |
b9fe8fd6 JL |
29995 | #, no-wrap |
29996 | msgid "maildir:~/Maildir" | |
29997 | msgstr "" | |
29998 | ||
29999 | #. type: item | |
39764ef8 | 30000 | #: doc/guix.texi:13653 |
b9fe8fd6 JL |
30001 | #, no-wrap |
30002 | msgid "mbox:~/mail:INBOX=/var/mail/%u" | |
30003 | msgstr "" | |
30004 | ||
30005 | #. type: item | |
39764ef8 | 30006 | #: doc/guix.texi:13654 |
b9fe8fd6 JL |
30007 | #, no-wrap |
30008 | msgid "mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%" | |
30009 | msgstr "" | |
30010 | ||
30011 | #. type: deftypevr | |
39764ef8 | 30012 | #: doc/guix.texi:13659 |
b9fe8fd6 JL |
30013 | #, no-wrap |
30014 | msgid "{@code{dovecot-configuration} parameter} string mail-uid" | |
30015 | msgstr "" | |
30016 | ||
30017 | #. type: deftypevr | |
39764ef8 | 30018 | #: doc/guix.texi:13664 |
b9fe8fd6 JL |
30019 | msgid "" |
30020 | "System user and group used to access mails. If you use multiple, userdb can " | |
30021 | "override these by returning uid or gid fields. You can use either numbers " | |
30022 | "or names. <doc/wiki/UserIds.txt>. Defaults to @samp{\"\"}." | |
30023 | msgstr "" | |
30024 | ||
30025 | #. type: deftypevr | |
39764ef8 | 30026 | #: doc/guix.texi:13666 |
b9fe8fd6 JL |
30027 | #, no-wrap |
30028 | msgid "{@code{dovecot-configuration} parameter} string mail-gid" | |
30029 | msgstr "" | |
30030 | ||
30031 | #. type: deftypevr | |
39764ef8 | 30032 | #: doc/guix.texi:13671 |
b9fe8fd6 JL |
30033 | #, no-wrap |
30034 | msgid "{@code{dovecot-configuration} parameter} string mail-privileged-group" | |
30035 | msgstr "" | |
30036 | ||
30037 | #. type: deftypevr | |
39764ef8 | 30038 | #: doc/guix.texi:13677 |
b9fe8fd6 JL |
30039 | msgid "" |
30040 | "Group to enable temporarily for privileged operations. Currently this is " | |
30041 | "used only with INBOX when either its initial creation or dotlocking fails. " | |
30042 | "Typically this is set to \"mail\" to give access to /var/mail. Defaults to " | |
30043 | "@samp{\"\"}." | |
30044 | msgstr "" | |
30045 | ||
30046 | #. type: deftypevr | |
39764ef8 | 30047 | #: doc/guix.texi:13679 |
b9fe8fd6 JL |
30048 | #, no-wrap |
30049 | msgid "{@code{dovecot-configuration} parameter} string mail-access-groups" | |
30050 | msgstr "" | |
30051 | ||
30052 | #. type: deftypevr | |
39764ef8 | 30053 | #: doc/guix.texi:13687 |
b9fe8fd6 JL |
30054 | msgid "" |
30055 | "Grant access to these supplementary groups for mail processes. Typically " | |
30056 | "these are used to set up access to shared mailboxes. Note that it may be " | |
30057 | "dangerous to set these if users can create symlinks (e.g. if \"mail\" group " | |
30058 | "is set here, ln -s /var/mail ~/mail/var could allow a user to delete others' " | |
30059 | "mailboxes, or ln -s /secret/shared/box ~/mail/mybox would allow reading " | |
30060 | "it). Defaults to @samp{\"\"}." | |
30061 | msgstr "" | |
30062 | ||
30063 | #. type: deftypevr | |
39764ef8 | 30064 | #: doc/guix.texi:13689 |
b9fe8fd6 | 30065 | #, no-wrap |
39764ef8 | 30066 | msgid "{@code{dovecot-configuration} parameter} boolean mail-full-filesystem-access?" |
b9fe8fd6 JL |
30067 | msgstr "" |
30068 | ||
30069 | #. type: deftypevr | |
39764ef8 | 30070 | #: doc/guix.texi:13695 |
b9fe8fd6 JL |
30071 | msgid "" |
30072 | "Allow full file system access to clients. There's no access checks other " | |
30073 | "than what the operating system does for the active UID/GID. It works with " | |
39764ef8 JL |
30074 | "both maildir and mboxes, allowing you to prefix mailboxes names with e.g. /" |
30075 | "path/ or ~user/. Defaults to @samp{#f}." | |
b9fe8fd6 JL |
30076 | msgstr "" |
30077 | ||
30078 | #. type: deftypevr | |
39764ef8 | 30079 | #: doc/guix.texi:13697 |
b9fe8fd6 JL |
30080 | #, no-wrap |
30081 | msgid "{@code{dovecot-configuration} parameter} boolean mmap-disable?" | |
30082 | msgstr "" | |
30083 | ||
30084 | #. type: deftypevr | |
39764ef8 | 30085 | #: doc/guix.texi:13701 |
b9fe8fd6 JL |
30086 | msgid "" |
30087 | "Don't use mmap() at all. This is required if you store indexes to shared " | |
30088 | "file systems (NFS or clustered file system). Defaults to @samp{#f}." | |
30089 | msgstr "" | |
30090 | ||
30091 | #. type: deftypevr | |
39764ef8 | 30092 | #: doc/guix.texi:13703 |
b9fe8fd6 JL |
30093 | #, no-wrap |
30094 | msgid "{@code{dovecot-configuration} parameter} boolean dotlock-use-excl?" | |
30095 | msgstr "" | |
30096 | ||
30097 | #. type: deftypevr | |
39764ef8 | 30098 | #: doc/guix.texi:13708 |
b9fe8fd6 JL |
30099 | msgid "" |
30100 | "Rely on @samp{O_EXCL} to work when creating dotlock files. NFS supports " | |
30101 | "@samp{O_EXCL} since version 3, so this should be safe to use nowadays by " | |
30102 | "default. Defaults to @samp{#t}." | |
30103 | msgstr "" | |
30104 | ||
30105 | #. type: deftypevr | |
39764ef8 | 30106 | #: doc/guix.texi:13710 |
b9fe8fd6 JL |
30107 | #, no-wrap |
30108 | msgid "{@code{dovecot-configuration} parameter} string mail-fsync" | |
30109 | msgstr "" | |
30110 | ||
30111 | #. type: deftypevr | |
39764ef8 | 30112 | #: doc/guix.texi:13712 |
b9fe8fd6 JL |
30113 | msgid "When to use fsync() or fdatasync() calls:" |
30114 | msgstr "" | |
30115 | ||
30116 | #. type: item | |
39764ef8 | 30117 | #: doc/guix.texi:13713 |
b9fe8fd6 JL |
30118 | #, no-wrap |
30119 | msgid "optimized" | |
30120 | msgstr "" | |
30121 | ||
30122 | #. type: table | |
39764ef8 | 30123 | #: doc/guix.texi:13715 |
b9fe8fd6 JL |
30124 | msgid "Whenever necessary to avoid losing important data" |
30125 | msgstr "" | |
30126 | ||
30127 | #. type: table | |
39764ef8 | 30128 | #: doc/guix.texi:13717 |
b9fe8fd6 JL |
30129 | msgid "Useful with e.g. NFS when write()s are delayed" |
30130 | msgstr "" | |
30131 | ||
30132 | #. type: table | |
39764ef8 | 30133 | #: doc/guix.texi:13719 |
b9fe8fd6 JL |
30134 | msgid "Never use it (best performance, but crashes can lose data)." |
30135 | msgstr "" | |
30136 | ||
30137 | #. type: deftypevr | |
39764ef8 | 30138 | #: doc/guix.texi:13721 |
b9fe8fd6 JL |
30139 | msgid "Defaults to @samp{\"optimized\"}." |
30140 | msgstr "" | |
30141 | ||
30142 | #. type: deftypevr | |
39764ef8 | 30143 | #: doc/guix.texi:13723 |
b9fe8fd6 JL |
30144 | #, no-wrap |
30145 | msgid "{@code{dovecot-configuration} parameter} boolean mail-nfs-storage?" | |
30146 | msgstr "" | |
30147 | ||
30148 | #. type: deftypevr | |
39764ef8 | 30149 | #: doc/guix.texi:13728 |
b9fe8fd6 JL |
30150 | msgid "" |
30151 | "Mail storage exists in NFS. Set this to yes to make Dovecot flush NFS " | |
30152 | "caches whenever needed. If you're using only a single mail server this " | |
30153 | "isn't needed. Defaults to @samp{#f}." | |
30154 | msgstr "" | |
30155 | ||
30156 | #. type: deftypevr | |
39764ef8 | 30157 | #: doc/guix.texi:13730 |
b9fe8fd6 JL |
30158 | #, no-wrap |
30159 | msgid "{@code{dovecot-configuration} parameter} boolean mail-nfs-index?" | |
30160 | msgstr "" | |
30161 | ||
30162 | #. type: deftypevr | |
39764ef8 | 30163 | #: doc/guix.texi:13734 |
b9fe8fd6 | 30164 | msgid "" |
39764ef8 JL |
30165 | "Mail index files also exist in NFS. Setting this to yes requires @samp{mmap-" |
30166 | "disable? #t} and @samp{fsync-disable? #f}. Defaults to @samp{#f}." | |
b9fe8fd6 JL |
30167 | msgstr "" |
30168 | ||
30169 | #. type: deftypevr | |
39764ef8 | 30170 | #: doc/guix.texi:13736 |
b9fe8fd6 JL |
30171 | #, no-wrap |
30172 | msgid "{@code{dovecot-configuration} parameter} string lock-method" | |
30173 | msgstr "" | |
30174 | ||
30175 | #. type: deftypevr | |
39764ef8 | 30176 | #: doc/guix.texi:13742 |
b9fe8fd6 JL |
30177 | msgid "" |
30178 | "Locking method for index files. Alternatives are fcntl, flock and dotlock. " | |
30179 | "Dotlocking uses some tricks which may create more disk I/O than other " | |
30180 | "locking methods. NFS users: flock doesn't work, remember to change " | |
30181 | "@samp{mmap-disable}. Defaults to @samp{\"fcntl\"}." | |
30182 | msgstr "" | |
30183 | ||
30184 | #. type: deftypevr | |
39764ef8 | 30185 | #: doc/guix.texi:13744 |
b9fe8fd6 JL |
30186 | #, no-wrap |
30187 | msgid "{@code{dovecot-configuration} parameter} file-name mail-temp-dir" | |
30188 | msgstr "" | |
30189 | ||
30190 | #. type: deftypevr | |
39764ef8 | 30191 | #: doc/guix.texi:13748 |
b9fe8fd6 JL |
30192 | msgid "" |
30193 | "Directory in which LDA/LMTP temporarily stores incoming mails >128 kB. " | |
30194 | "Defaults to @samp{\"/tmp\"}." | |
30195 | msgstr "" | |
30196 | ||
30197 | #. type: deftypevr | |
39764ef8 | 30198 | #: doc/guix.texi:13750 |
b9fe8fd6 | 30199 | #, no-wrap |
39764ef8 | 30200 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer first-valid-uid" |
b9fe8fd6 JL |
30201 | msgstr "" |
30202 | ||
30203 | #. type: deftypevr | |
39764ef8 | 30204 | #: doc/guix.texi:13756 |
b9fe8fd6 JL |
30205 | msgid "" |
30206 | "Valid UID range for users. This is mostly to make sure that users can't log " | |
30207 | "in as daemons or other system users. Note that denying root logins is " | |
30208 | "hardcoded to dovecot binary and can't be done even if @samp{first-valid-uid} " | |
30209 | "is set to 0. Defaults to @samp{500}." | |
30210 | msgstr "" | |
30211 | ||
30212 | #. type: deftypevr | |
39764ef8 | 30213 | #: doc/guix.texi:13758 |
b9fe8fd6 JL |
30214 | #, no-wrap |
30215 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer last-valid-uid" | |
30216 | msgstr "" | |
30217 | ||
30218 | #. type: deftypevr | |
39764ef8 | 30219 | #: doc/guix.texi:13763 |
b9fe8fd6 | 30220 | #, no-wrap |
39764ef8 | 30221 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer first-valid-gid" |
b9fe8fd6 JL |
30222 | msgstr "" |
30223 | ||
30224 | #. type: deftypevr | |
39764ef8 | 30225 | #: doc/guix.texi:13768 |
b9fe8fd6 JL |
30226 | msgid "" |
30227 | "Valid GID range for users. Users having non-valid GID as primary group ID " | |
39764ef8 JL |
30228 | "aren't allowed to log in. If user belongs to supplementary groups with non-" |
30229 | "valid GIDs, those groups are not set. Defaults to @samp{1}." | |
b9fe8fd6 JL |
30230 | msgstr "" |
30231 | ||
30232 | #. type: deftypevr | |
39764ef8 | 30233 | #: doc/guix.texi:13770 |
b9fe8fd6 JL |
30234 | #, no-wrap |
30235 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer last-valid-gid" | |
30236 | msgstr "" | |
30237 | ||
30238 | #. type: deftypevr | |
39764ef8 | 30239 | #: doc/guix.texi:13775 |
b9fe8fd6 | 30240 | #, no-wrap |
39764ef8 | 30241 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-max-keyword-length" |
b9fe8fd6 JL |
30242 | msgstr "" |
30243 | ||
30244 | #. type: deftypevr | |
39764ef8 | 30245 | #: doc/guix.texi:13779 |
b9fe8fd6 JL |
30246 | msgid "" |
30247 | "Maximum allowed length for mail keyword name. It's only forced when trying " | |
30248 | "to create new keywords. Defaults to @samp{50}." | |
30249 | msgstr "" | |
30250 | ||
30251 | #. type: deftypevr | |
39764ef8 | 30252 | #: doc/guix.texi:13781 |
b9fe8fd6 | 30253 | #, no-wrap |
39764ef8 | 30254 | msgid "{@code{dovecot-configuration} parameter} colon-separated-file-name-list valid-chroot-dirs" |
b9fe8fd6 JL |
30255 | msgstr "" |
30256 | ||
30257 | #. type: deftypevr | |
39764ef8 | 30258 | #: doc/guix.texi:13791 |
b9fe8fd6 | 30259 | msgid "" |
39764ef8 JL |
30260 | "List of directories under which chrooting is allowed for mail processes (i." |
30261 | "e. /var/mail will allow chrooting to /var/mail/foo/bar too). This setting " | |
30262 | "doesn't affect @samp{login-chroot} @samp{mail-chroot} or auth chroot " | |
b9fe8fd6 JL |
30263 | "settings. If this setting is empty, \"/./\" in home dirs are ignored. " |
30264 | "WARNING: Never add directories here which local users can modify, that may " | |
30265 | "lead to root exploit. Usually this should be done only if you don't allow " | |
30266 | "shell access for users. <doc/wiki/Chrooting.txt>. Defaults to @samp{()}." | |
30267 | msgstr "" | |
30268 | ||
30269 | #. type: deftypevr | |
39764ef8 | 30270 | #: doc/guix.texi:13793 |
b9fe8fd6 JL |
30271 | #, no-wrap |
30272 | msgid "{@code{dovecot-configuration} parameter} string mail-chroot" | |
30273 | msgstr "" | |
30274 | ||
30275 | #. type: deftypevr | |
39764ef8 | 30276 | #: doc/guix.texi:13802 |
b9fe8fd6 JL |
30277 | msgid "" |
30278 | "Default chroot directory for mail processes. This can be overridden for " | |
39764ef8 JL |
30279 | "specific users in user database by giving /./ in user's home directory (e." |
30280 | "g. /home/./user chroots into /home). Note that usually there is no real " | |
b9fe8fd6 JL |
30281 | "need to do chrooting, Dovecot doesn't allow users to access files outside " |
30282 | "their mail directory anyway. If your home directories are prefixed with the " | |
39764ef8 JL |
30283 | "chroot directory, append \"/.\" to @samp{mail-chroot}. <doc/wiki/Chrooting." |
30284 | "txt>. Defaults to @samp{\"\"}." | |
b9fe8fd6 JL |
30285 | msgstr "" |
30286 | ||
30287 | #. type: deftypevr | |
39764ef8 | 30288 | #: doc/guix.texi:13804 |
b9fe8fd6 JL |
30289 | #, no-wrap |
30290 | msgid "{@code{dovecot-configuration} parameter} file-name auth-socket-path" | |
30291 | msgstr "" | |
30292 | ||
30293 | #. type: deftypevr | |
39764ef8 | 30294 | #: doc/guix.texi:13808 |
b9fe8fd6 JL |
30295 | msgid "" |
30296 | "UNIX socket path to master authentication server to find users. This is " | |
39764ef8 JL |
30297 | "used by imap (for shared users) and lda. Defaults to @samp{\"/var/run/" |
30298 | "dovecot/auth-userdb\"}." | |
b9fe8fd6 JL |
30299 | msgstr "" |
30300 | ||
30301 | #. type: deftypevr | |
39764ef8 | 30302 | #: doc/guix.texi:13810 |
b9fe8fd6 JL |
30303 | #, no-wrap |
30304 | msgid "{@code{dovecot-configuration} parameter} file-name mail-plugin-dir" | |
30305 | msgstr "" | |
30306 | ||
30307 | #. type: deftypevr | |
39764ef8 | 30308 | #: doc/guix.texi:13813 |
b9fe8fd6 | 30309 | msgid "" |
39764ef8 JL |
30310 | "Directory where to look up mail plugins. Defaults to @samp{\"/usr/lib/" |
30311 | "dovecot\"}." | |
b9fe8fd6 JL |
30312 | msgstr "" |
30313 | ||
30314 | #. type: deftypevr | |
39764ef8 | 30315 | #: doc/guix.texi:13815 |
b9fe8fd6 | 30316 | #, no-wrap |
39764ef8 | 30317 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mail-plugins" |
b9fe8fd6 JL |
30318 | msgstr "" |
30319 | ||
30320 | #. type: deftypevr | |
39764ef8 | 30321 | #: doc/guix.texi:13819 |
b9fe8fd6 JL |
30322 | msgid "" |
30323 | "List of plugins to load for all services. Plugins specific to IMAP, LDA, " | |
39764ef8 | 30324 | "etc. are added to this list in their own .conf files. Defaults to @samp{()}." |
b9fe8fd6 JL |
30325 | msgstr "" |
30326 | ||
30327 | #. type: deftypevr | |
39764ef8 | 30328 | #: doc/guix.texi:13821 |
b9fe8fd6 | 30329 | #, no-wrap |
39764ef8 | 30330 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-cache-min-mail-count" |
b9fe8fd6 JL |
30331 | msgstr "" |
30332 | ||
30333 | #. type: deftypevr | |
39764ef8 | 30334 | #: doc/guix.texi:13826 |
b9fe8fd6 JL |
30335 | msgid "" |
30336 | "The minimum number of mails in a mailbox before updates are done to cache " | |
30337 | "file. This allows optimizing Dovecot's behavior to do less disk writes at " | |
30338 | "the cost of more disk reads. Defaults to @samp{0}." | |
30339 | msgstr "" | |
30340 | ||
30341 | #. type: deftypevr | |
39764ef8 | 30342 | #: doc/guix.texi:13828 |
b9fe8fd6 JL |
30343 | #, no-wrap |
30344 | msgid "{@code{dovecot-configuration} parameter} string mailbox-idle-check-interval" | |
30345 | msgstr "" | |
30346 | ||
30347 | #. type: deftypevr | |
39764ef8 | 30348 | #: doc/guix.texi:13835 |
b9fe8fd6 JL |
30349 | msgid "" |
30350 | "When IDLE command is running, mailbox is checked once in a while to see if " | |
30351 | "there are any new mails or other changes. This setting defines the minimum " | |
30352 | "time to wait between those checks. Dovecot can also use dnotify, inotify " | |
30353 | "and kqueue to find out immediately when changes occur. Defaults to " | |
30354 | "@samp{\"30 secs\"}." | |
30355 | msgstr "" | |
30356 | ||
30357 | #. type: deftypevr | |
39764ef8 | 30358 | #: doc/guix.texi:13837 |
b9fe8fd6 JL |
30359 | #, no-wrap |
30360 | msgid "{@code{dovecot-configuration} parameter} boolean mail-save-crlf?" | |
30361 | msgstr "" | |
30362 | ||
30363 | #. type: deftypevr | |
39764ef8 | 30364 | #: doc/guix.texi:13844 |
b9fe8fd6 JL |
30365 | msgid "" |
30366 | "Save mails with CR+LF instead of plain LF. This makes sending those mails " | |
30367 | "take less CPU, especially with sendfile() syscall with Linux and FreeBSD. " | |
30368 | "But it also creates a bit more disk I/O which may just make it slower. Also " | |
30369 | "note that if other software reads the mboxes/maildirs, they may handle the " | |
30370 | "extra CRs wrong and cause problems. Defaults to @samp{#f}." | |
30371 | msgstr "" | |
30372 | ||
30373 | #. type: deftypevr | |
39764ef8 | 30374 | #: doc/guix.texi:13846 |
b9fe8fd6 JL |
30375 | #, no-wrap |
30376 | msgid "{@code{dovecot-configuration} parameter} boolean maildir-stat-dirs?" | |
30377 | msgstr "" | |
30378 | ||
30379 | #. type: deftypevr | |
39764ef8 | 30380 | #: doc/guix.texi:13854 |
b9fe8fd6 JL |
30381 | msgid "" |
30382 | "By default LIST command returns all entries in maildir beginning with a " | |
30383 | "dot. Enabling this option makes Dovecot return only entries which are " | |
39764ef8 JL |
30384 | "directories. This is done by stat()ing each entry, so it causes more disk I/" |
30385 | "O. (For systems setting struct @samp{dirent->d_type} this check is free and " | |
30386 | "it's done always regardless of this setting). Defaults to @samp{#f}." | |
b9fe8fd6 JL |
30387 | msgstr "" |
30388 | ||
30389 | #. type: deftypevr | |
39764ef8 | 30390 | #: doc/guix.texi:13856 |
b9fe8fd6 | 30391 | #, no-wrap |
39764ef8 | 30392 | msgid "{@code{dovecot-configuration} parameter} boolean maildir-copy-with-hardlinks?" |
b9fe8fd6 JL |
30393 | msgstr "" |
30394 | ||
30395 | #. type: deftypevr | |
39764ef8 | 30396 | #: doc/guix.texi:13861 |
b9fe8fd6 JL |
30397 | msgid "" |
30398 | "When copying a message, do it with hard links whenever possible. This makes " | |
30399 | "the performance much better, and it's unlikely to have any side effects. " | |
30400 | "Defaults to @samp{#t}." | |
30401 | msgstr "" | |
30402 | ||
30403 | #. type: deftypevr | |
39764ef8 | 30404 | #: doc/guix.texi:13863 |
b9fe8fd6 JL |
30405 | #, no-wrap |
30406 | msgid "{@code{dovecot-configuration} parameter} boolean maildir-very-dirty-syncs?" | |
30407 | msgstr "" | |
30408 | ||
30409 | #. type: deftypevr | |
39764ef8 | 30410 | #: doc/guix.texi:13868 |
b9fe8fd6 JL |
30411 | msgid "" |
30412 | "Assume Dovecot is the only MUA accessing Maildir: Scan cur/ directory only " | |
30413 | "when its mtime changes unexpectedly or when we can't find the mail " | |
30414 | "otherwise. Defaults to @samp{#f}." | |
30415 | msgstr "" | |
30416 | ||
30417 | #. type: deftypevr | |
39764ef8 | 30418 | #: doc/guix.texi:13870 |
b9fe8fd6 | 30419 | #, no-wrap |
39764ef8 | 30420 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mbox-read-locks" |
b9fe8fd6 JL |
30421 | msgstr "" |
30422 | ||
30423 | #. type: deftypevr | |
39764ef8 JL |
30424 | #: doc/guix.texi:13873 |
30425 | msgid "" | |
30426 | "Which locking methods to use for locking mbox. There are four available:" | |
b9fe8fd6 JL |
30427 | msgstr "" |
30428 | ||
30429 | #. type: item | |
39764ef8 | 30430 | #: doc/guix.texi:13875 |
b9fe8fd6 JL |
30431 | #, no-wrap |
30432 | msgid "dotlock" | |
30433 | msgstr "" | |
30434 | ||
30435 | #. type: table | |
39764ef8 | 30436 | #: doc/guix.texi:13879 |
b9fe8fd6 JL |
30437 | msgid "" |
30438 | "Create <mailbox>.lock file. This is the oldest and most NFS-safe solution. " | |
30439 | "If you want to use /var/mail/ like directory, the users will need write " | |
30440 | "access to that directory." | |
30441 | msgstr "" | |
30442 | ||
30443 | #. type: item | |
39764ef8 | 30444 | #: doc/guix.texi:13879 |
b9fe8fd6 JL |
30445 | #, no-wrap |
30446 | msgid "dotlock-try" | |
30447 | msgstr "" | |
30448 | ||
30449 | #. type: table | |
39764ef8 | 30450 | #: doc/guix.texi:13882 |
b9fe8fd6 JL |
30451 | msgid "" |
30452 | "Same as dotlock, but if it fails because of permissions or because there " | |
30453 | "isn't enough disk space, just skip it." | |
30454 | msgstr "" | |
30455 | ||
30456 | #. type: item | |
39764ef8 | 30457 | #: doc/guix.texi:13882 |
b9fe8fd6 JL |
30458 | #, no-wrap |
30459 | msgid "fcntl" | |
30460 | msgstr "" | |
30461 | ||
30462 | #. type: table | |
39764ef8 | 30463 | #: doc/guix.texi:13884 |
b9fe8fd6 JL |
30464 | msgid "Use this if possible. Works with NFS too if lockd is used." |
30465 | msgstr "" | |
30466 | ||
30467 | #. type: item | |
39764ef8 | 30468 | #: doc/guix.texi:13884 |
b9fe8fd6 JL |
30469 | #, no-wrap |
30470 | msgid "flock" | |
30471 | msgstr "" | |
30472 | ||
30473 | #. type: table | |
39764ef8 | 30474 | #: doc/guix.texi:13886 doc/guix.texi:13888 |
b9fe8fd6 JL |
30475 | msgid "May not exist in all systems. Doesn't work with NFS." |
30476 | msgstr "" | |
30477 | ||
30478 | #. type: item | |
39764ef8 | 30479 | #: doc/guix.texi:13886 |
b9fe8fd6 JL |
30480 | #, no-wrap |
30481 | msgid "lockf" | |
30482 | msgstr "" | |
30483 | ||
30484 | #. type: deftypevr | |
39764ef8 | 30485 | #: doc/guix.texi:13894 |
b9fe8fd6 JL |
30486 | msgid "" |
30487 | "You can use multiple locking methods; if you do the order they're declared " | |
30488 | "in is important to avoid deadlocks if other MTAs/MUAs are using multiple " | |
30489 | "locking methods as well. Some operating systems don't allow using some of " | |
30490 | "them simultaneously." | |
30491 | msgstr "" | |
30492 | ||
30493 | #. type: deftypevr | |
39764ef8 | 30494 | #: doc/guix.texi:13896 |
b9fe8fd6 | 30495 | #, no-wrap |
39764ef8 | 30496 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list mbox-write-locks" |
b9fe8fd6 JL |
30497 | msgstr "" |
30498 | ||
30499 | #. type: deftypevr | |
39764ef8 | 30500 | #: doc/guix.texi:13900 |
b9fe8fd6 JL |
30501 | #, no-wrap |
30502 | msgid "{@code{dovecot-configuration} parameter} string mbox-lock-timeout" | |
30503 | msgstr "" | |
30504 | ||
30505 | #. type: deftypevr | |
39764ef8 | 30506 | #: doc/guix.texi:13903 |
b9fe8fd6 JL |
30507 | msgid "" |
30508 | "Maximum time to wait for lock (all of them) before aborting. Defaults to " | |
30509 | "@samp{\"5 mins\"}." | |
30510 | msgstr "" | |
30511 | ||
30512 | #. type: deftypevr | |
39764ef8 | 30513 | #: doc/guix.texi:13905 |
b9fe8fd6 JL |
30514 | #, no-wrap |
30515 | msgid "{@code{dovecot-configuration} parameter} string mbox-dotlock-change-timeout" | |
30516 | msgstr "" | |
30517 | ||
30518 | #. type: deftypevr | |
39764ef8 | 30519 | #: doc/guix.texi:13909 |
b9fe8fd6 JL |
30520 | msgid "" |
30521 | "If dotlock exists but the mailbox isn't modified in any way, override the " | |
30522 | "lock file after this much time. Defaults to @samp{\"2 mins\"}." | |
30523 | msgstr "" | |
30524 | ||
30525 | #. type: deftypevr | |
39764ef8 | 30526 | #: doc/guix.texi:13911 |
b9fe8fd6 JL |
30527 | #, no-wrap |
30528 | msgid "{@code{dovecot-configuration} parameter} boolean mbox-dirty-syncs?" | |
30529 | msgstr "" | |
30530 | ||
30531 | #. type: deftypevr | |
39764ef8 | 30532 | #: doc/guix.texi:13922 |
b9fe8fd6 JL |
30533 | msgid "" |
30534 | "When mbox changes unexpectedly we have to fully read it to find out what " | |
30535 | "changed. If the mbox is large this can take a long time. Since the change " | |
30536 | "is usually just a newly appended mail, it'd be faster to simply read the new " | |
30537 | "mails. If this setting is enabled, Dovecot does this but still safely " | |
30538 | "fallbacks to re-reading the whole mbox file whenever something in mbox isn't " | |
30539 | "how it's expected to be. The only real downside to this setting is that if " | |
30540 | "some other MUA changes message flags, Dovecot doesn't notice it " | |
30541 | "immediately. Note that a full sync is done with SELECT, EXAMINE, EXPUNGE " | |
30542 | "and CHECK commands. Defaults to @samp{#t}." | |
30543 | msgstr "" | |
30544 | ||
30545 | #. type: deftypevr | |
39764ef8 | 30546 | #: doc/guix.texi:13924 |
b9fe8fd6 JL |
30547 | #, no-wrap |
30548 | msgid "{@code{dovecot-configuration} parameter} boolean mbox-very-dirty-syncs?" | |
30549 | msgstr "" | |
30550 | ||
30551 | #. type: deftypevr | |
39764ef8 | 30552 | #: doc/guix.texi:13929 |
b9fe8fd6 JL |
30553 | msgid "" |
30554 | "Like @samp{mbox-dirty-syncs}, but don't do full syncs even with SELECT, " | |
30555 | "EXAMINE, EXPUNGE or CHECK commands. If this is set, @samp{mbox-dirty-syncs} " | |
30556 | "is ignored. Defaults to @samp{#f}." | |
30557 | msgstr "" | |
30558 | ||
30559 | #. type: deftypevr | |
39764ef8 | 30560 | #: doc/guix.texi:13931 |
b9fe8fd6 JL |
30561 | #, no-wrap |
30562 | msgid "{@code{dovecot-configuration} parameter} boolean mbox-lazy-writes?" | |
30563 | msgstr "" | |
30564 | ||
30565 | #. type: deftypevr | |
39764ef8 | 30566 | #: doc/guix.texi:13937 |
b9fe8fd6 JL |
30567 | msgid "" |
30568 | "Delay writing mbox headers until doing a full write sync (EXPUNGE and CHECK " | |
30569 | "commands and when closing the mailbox). This is especially useful for POP3 " | |
30570 | "where clients often delete all mails. The downside is that our changes " | |
30571 | "aren't immediately visible to other MUAs. Defaults to @samp{#t}." | |
30572 | msgstr "" | |
30573 | ||
30574 | #. type: deftypevr | |
39764ef8 | 30575 | #: doc/guix.texi:13939 |
b9fe8fd6 | 30576 | #, no-wrap |
39764ef8 | 30577 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer mbox-min-index-size" |
b9fe8fd6 JL |
30578 | msgstr "" |
30579 | ||
30580 | #. type: deftypevr | |
39764ef8 | 30581 | #: doc/guix.texi:13944 |
b9fe8fd6 JL |
30582 | msgid "" |
30583 | "If mbox size is smaller than this (e.g. 100k), don't write index files. If " | |
30584 | "an index file already exists it's still read, just not updated. Defaults to " | |
30585 | "@samp{0}." | |
30586 | msgstr "" | |
30587 | ||
30588 | #. type: deftypevr | |
39764ef8 | 30589 | #: doc/guix.texi:13946 |
b9fe8fd6 | 30590 | #, no-wrap |
39764ef8 | 30591 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer mdbox-rotate-size" |
b9fe8fd6 JL |
30592 | msgstr "" |
30593 | ||
30594 | #. type: deftypevr | |
39764ef8 JL |
30595 | #: doc/guix.texi:13949 |
30596 | msgid "" | |
30597 | "Maximum dbox file size until it's rotated. Defaults to @samp{10000000}." | |
b9fe8fd6 JL |
30598 | msgstr "" |
30599 | ||
30600 | #. type: deftypevr | |
39764ef8 | 30601 | #: doc/guix.texi:13951 |
b9fe8fd6 JL |
30602 | #, no-wrap |
30603 | msgid "{@code{dovecot-configuration} parameter} string mdbox-rotate-interval" | |
30604 | msgstr "" | |
30605 | ||
30606 | #. type: deftypevr | |
39764ef8 | 30607 | #: doc/guix.texi:13956 |
b9fe8fd6 JL |
30608 | msgid "" |
30609 | "Maximum dbox file age until it's rotated. Typically in days. Day begins " | |
30610 | "from midnight, so 1d = today, 2d = yesterday, etc. 0 = check disabled. " | |
30611 | "Defaults to @samp{\"1d\"}." | |
30612 | msgstr "" | |
30613 | ||
30614 | #. type: deftypevr | |
39764ef8 | 30615 | #: doc/guix.texi:13958 |
b9fe8fd6 JL |
30616 | #, no-wrap |
30617 | msgid "{@code{dovecot-configuration} parameter} boolean mdbox-preallocate-space?" | |
30618 | msgstr "" | |
30619 | ||
30620 | #. type: deftypevr | |
39764ef8 | 30621 | #: doc/guix.texi:13963 |
b9fe8fd6 JL |
30622 | msgid "" |
30623 | "When creating new mdbox files, immediately preallocate their size to " | |
30624 | "@samp{mdbox-rotate-size}. This setting currently works only in Linux with " | |
30625 | "some file systems (ext4, xfs). Defaults to @samp{#f}." | |
30626 | msgstr "" | |
30627 | ||
30628 | #. type: deftypevr | |
39764ef8 | 30629 | #: doc/guix.texi:13965 |
b9fe8fd6 JL |
30630 | #, no-wrap |
30631 | msgid "{@code{dovecot-configuration} parameter} string mail-attachment-dir" | |
30632 | msgstr "" | |
30633 | ||
30634 | #. type: deftypevr | |
39764ef8 | 30635 | #: doc/guix.texi:13969 |
b9fe8fd6 JL |
30636 | msgid "" |
30637 | "sdbox and mdbox support saving mail attachments to external files, which " | |
30638 | "also allows single instance storage for them. Other backends don't support " | |
30639 | "this for now." | |
30640 | msgstr "" | |
30641 | ||
30642 | #. type: deftypevr | |
39764ef8 JL |
30643 | #: doc/guix.texi:13971 |
30644 | msgid "" | |
30645 | "WARNING: This feature hasn't been tested much yet. Use at your own risk." | |
b9fe8fd6 JL |
30646 | msgstr "" |
30647 | ||
30648 | #. type: deftypevr | |
39764ef8 | 30649 | #: doc/guix.texi:13974 |
b9fe8fd6 JL |
30650 | msgid "" |
30651 | "Directory root where to store mail attachments. Disabled, if empty. " | |
30652 | "Defaults to @samp{\"\"}." | |
30653 | msgstr "" | |
30654 | ||
30655 | #. type: deftypevr | |
39764ef8 | 30656 | #: doc/guix.texi:13976 |
b9fe8fd6 | 30657 | #, no-wrap |
39764ef8 | 30658 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer mail-attachment-min-size" |
b9fe8fd6 JL |
30659 | msgstr "" |
30660 | ||
30661 | #. type: deftypevr | |
39764ef8 | 30662 | #: doc/guix.texi:13981 |
b9fe8fd6 JL |
30663 | msgid "" |
30664 | "Attachments smaller than this aren't saved externally. It's also possible " | |
30665 | "to write a plugin to disable saving specific attachments externally. " | |
30666 | "Defaults to @samp{128000}." | |
30667 | msgstr "" | |
30668 | ||
30669 | #. type: deftypevr | |
39764ef8 | 30670 | #: doc/guix.texi:13983 |
b9fe8fd6 JL |
30671 | #, no-wrap |
30672 | msgid "{@code{dovecot-configuration} parameter} string mail-attachment-fs" | |
30673 | msgstr "" | |
30674 | ||
30675 | #. type: deftypevr | |
39764ef8 | 30676 | #: doc/guix.texi:13985 |
b9fe8fd6 JL |
30677 | msgid "File system backend to use for saving attachments:" |
30678 | msgstr "" | |
30679 | ||
30680 | #. type: item | |
39764ef8 | 30681 | #: doc/guix.texi:13986 |
b9fe8fd6 JL |
30682 | #, no-wrap |
30683 | msgid "posix" | |
30684 | msgstr "" | |
30685 | ||
30686 | #. type: table | |
39764ef8 | 30687 | #: doc/guix.texi:13988 |
b9fe8fd6 JL |
30688 | msgid "No SiS done by Dovecot (but this might help FS's own deduplication)" |
30689 | msgstr "" | |
30690 | ||
30691 | #. type: item | |
39764ef8 | 30692 | #: doc/guix.texi:13988 |
b9fe8fd6 JL |
30693 | #, no-wrap |
30694 | msgid "sis posix" | |
30695 | msgstr "" | |
30696 | ||
30697 | #. type: table | |
39764ef8 | 30698 | #: doc/guix.texi:13990 |
b9fe8fd6 JL |
30699 | msgid "SiS with immediate byte-by-byte comparison during saving" |
30700 | msgstr "" | |
30701 | ||
30702 | #. type: item | |
39764ef8 | 30703 | #: doc/guix.texi:13990 |
b9fe8fd6 JL |
30704 | #, no-wrap |
30705 | msgid "sis-queue posix" | |
30706 | msgstr "" | |
30707 | ||
30708 | #. type: table | |
39764ef8 | 30709 | #: doc/guix.texi:13992 |
b9fe8fd6 JL |
30710 | msgid "SiS with delayed comparison and deduplication." |
30711 | msgstr "" | |
30712 | ||
30713 | #. type: deftypevr | |
39764ef8 | 30714 | #: doc/guix.texi:13994 |
b9fe8fd6 JL |
30715 | msgid "Defaults to @samp{\"sis posix\"}." |
30716 | msgstr "" | |
30717 | ||
30718 | #. type: deftypevr | |
39764ef8 | 30719 | #: doc/guix.texi:13996 |
b9fe8fd6 JL |
30720 | #, no-wrap |
30721 | msgid "{@code{dovecot-configuration} parameter} string mail-attachment-hash" | |
30722 | msgstr "" | |
30723 | ||
30724 | #. type: deftypevr | |
39764ef8 | 30725 | #: doc/guix.texi:14002 |
b9fe8fd6 JL |
30726 | msgid "" |
30727 | "Hash format to use in attachment filenames. You can add any text and " | |
30728 | "variables: @code{%@{md4@}}, @code{%@{md5@}}, @code{%@{sha1@}}, " | |
30729 | "@code{%@{sha256@}}, @code{%@{sha512@}}, @code{%@{size@}}. Variables can be " | |
30730 | "truncated, e.g. @code{%@{sha256:80@}} returns only first 80 bits. Defaults " | |
30731 | "to @samp{\"%@{sha1@}\"}." | |
30732 | msgstr "" | |
30733 | ||
30734 | #. type: deftypevr | |
39764ef8 | 30735 | #: doc/guix.texi:14004 |
b9fe8fd6 | 30736 | #, no-wrap |
39764ef8 | 30737 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-process-limit" |
b9fe8fd6 JL |
30738 | msgstr "" |
30739 | ||
30740 | #. type: deftypevr | |
39764ef8 | 30741 | #: doc/guix.texi:14009 |
b9fe8fd6 | 30742 | #, no-wrap |
39764ef8 | 30743 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-client-limit" |
b9fe8fd6 JL |
30744 | msgstr "" |
30745 | ||
30746 | #. type: deftypevr | |
39764ef8 | 30747 | #: doc/guix.texi:14012 doc/guix.texi:17918 |
b9fe8fd6 JL |
30748 | msgid "Defaults to @samp{1000}." |
30749 | msgstr "" | |
30750 | ||
30751 | #. type: deftypevr | |
39764ef8 | 30752 | #: doc/guix.texi:14014 |
b9fe8fd6 | 30753 | #, no-wrap |
39764ef8 | 30754 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer default-vsz-limit" |
b9fe8fd6 JL |
30755 | msgstr "" |
30756 | ||
30757 | #. type: deftypevr | |
39764ef8 | 30758 | #: doc/guix.texi:14019 |
b9fe8fd6 JL |
30759 | msgid "" |
30760 | "Default VSZ (virtual memory size) limit for service processes. This is " | |
30761 | "mainly intended to catch and kill processes that leak memory before they eat " | |
30762 | "up everything. Defaults to @samp{256000000}." | |
30763 | msgstr "" | |
30764 | ||
30765 | #. type: deftypevr | |
39764ef8 | 30766 | #: doc/guix.texi:14021 |
b9fe8fd6 JL |
30767 | #, no-wrap |
30768 | msgid "{@code{dovecot-configuration} parameter} string default-login-user" | |
30769 | msgstr "" | |
30770 | ||
30771 | #. type: deftypevr | |
39764ef8 | 30772 | #: doc/guix.texi:14026 |
b9fe8fd6 JL |
30773 | msgid "" |
30774 | "Login user is internally used by login processes. This is the most " | |
30775 | "untrusted user in Dovecot system. It shouldn't have access to anything at " | |
30776 | "all. Defaults to @samp{\"dovenull\"}." | |
30777 | msgstr "" | |
30778 | ||
30779 | #. type: deftypevr | |
39764ef8 | 30780 | #: doc/guix.texi:14028 |
b9fe8fd6 JL |
30781 | #, no-wrap |
30782 | msgid "{@code{dovecot-configuration} parameter} string default-internal-user" | |
30783 | msgstr "" | |
30784 | ||
30785 | #. type: deftypevr | |
39764ef8 | 30786 | #: doc/guix.texi:14033 |
b9fe8fd6 JL |
30787 | msgid "" |
30788 | "Internal user is used by unprivileged processes. It should be separate from " | |
30789 | "login user, so that login processes can't disturb other processes. Defaults " | |
30790 | "to @samp{\"dovecot\"}." | |
30791 | msgstr "" | |
30792 | ||
30793 | #. type: deftypevr | |
39764ef8 | 30794 | #: doc/guix.texi:14035 |
b9fe8fd6 JL |
30795 | #, no-wrap |
30796 | msgid "{@code{dovecot-configuration} parameter} string ssl?" | |
30797 | msgstr "" | |
30798 | ||
30799 | #. type: deftypevr | |
39764ef8 | 30800 | #: doc/guix.texi:14038 |
b9fe8fd6 JL |
30801 | msgid "" |
30802 | "SSL/TLS support: yes, no, required. <doc/wiki/SSL.txt>. Defaults to " | |
30803 | "@samp{\"required\"}." | |
30804 | msgstr "" | |
30805 | ||
30806 | #. type: deftypevr | |
39764ef8 | 30807 | #: doc/guix.texi:14040 |
b9fe8fd6 JL |
30808 | #, no-wrap |
30809 | msgid "{@code{dovecot-configuration} parameter} string ssl-cert" | |
30810 | msgstr "" | |
30811 | ||
30812 | #. type: deftypevr | |
39764ef8 | 30813 | #: doc/guix.texi:14043 |
b9fe8fd6 | 30814 | msgid "" |
39764ef8 JL |
30815 | "PEM encoded X.509 SSL/TLS certificate (public key). Defaults to @samp{\"</" |
30816 | "etc/dovecot/default.pem\"}." | |
b9fe8fd6 JL |
30817 | msgstr "" |
30818 | ||
30819 | #. type: deftypevr | |
39764ef8 | 30820 | #: doc/guix.texi:14045 |
b9fe8fd6 JL |
30821 | #, no-wrap |
30822 | msgid "{@code{dovecot-configuration} parameter} string ssl-key" | |
30823 | msgstr "" | |
30824 | ||
30825 | #. type: deftypevr | |
39764ef8 | 30826 | #: doc/guix.texi:14050 |
b9fe8fd6 JL |
30827 | msgid "" |
30828 | "PEM encoded SSL/TLS private key. The key is opened before dropping root " | |
30829 | "privileges, so keep the key file unreadable by anyone but root. Defaults to " | |
30830 | "@samp{\"</etc/dovecot/private/default.pem\"}." | |
30831 | msgstr "" | |
30832 | ||
30833 | #. type: deftypevr | |
39764ef8 | 30834 | #: doc/guix.texi:14052 |
b9fe8fd6 JL |
30835 | #, no-wrap |
30836 | msgid "{@code{dovecot-configuration} parameter} string ssl-key-password" | |
30837 | msgstr "" | |
30838 | ||
30839 | #. type: deftypevr | |
39764ef8 | 30840 | #: doc/guix.texi:14058 |
b9fe8fd6 JL |
30841 | msgid "" |
30842 | "If key file is password protected, give the password here. Alternatively " | |
30843 | "give it when starting dovecot with -p parameter. Since this file is often " | |
30844 | "world-readable, you may want to place this setting instead to a different. " | |
30845 | "Defaults to @samp{\"\"}." | |
30846 | msgstr "" | |
30847 | ||
30848 | #. type: deftypevr | |
39764ef8 | 30849 | #: doc/guix.texi:14060 |
b9fe8fd6 JL |
30850 | #, no-wrap |
30851 | msgid "{@code{dovecot-configuration} parameter} string ssl-ca" | |
30852 | msgstr "" | |
30853 | ||
30854 | #. type: deftypevr | |
39764ef8 | 30855 | #: doc/guix.texi:14066 |
b9fe8fd6 JL |
30856 | msgid "" |
30857 | "PEM encoded trusted certificate authority. Set this only if you intend to " | |
30858 | "use @samp{ssl-verify-client-cert? #t}. The file should contain the CA " | |
39764ef8 JL |
30859 | "certificate(s) followed by the matching CRL(s). (e.g. @samp{ssl-ca </etc/" |
30860 | "ssl/certs/ca.pem}). Defaults to @samp{\"\"}." | |
b9fe8fd6 JL |
30861 | msgstr "" |
30862 | ||
30863 | #. type: deftypevr | |
39764ef8 | 30864 | #: doc/guix.texi:14068 |
b9fe8fd6 JL |
30865 | #, no-wrap |
30866 | msgid "{@code{dovecot-configuration} parameter} boolean ssl-require-crl?" | |
30867 | msgstr "" | |
30868 | ||
30869 | #. type: deftypevr | |
39764ef8 | 30870 | #: doc/guix.texi:14071 |
b9fe8fd6 JL |
30871 | msgid "" |
30872 | "Require that CRL check succeeds for client certificates. Defaults to " | |
30873 | "@samp{#t}." | |
30874 | msgstr "" | |
30875 | ||
30876 | #. type: deftypevr | |
39764ef8 | 30877 | #: doc/guix.texi:14073 |
b9fe8fd6 JL |
30878 | #, no-wrap |
30879 | msgid "{@code{dovecot-configuration} parameter} boolean ssl-verify-client-cert?" | |
30880 | msgstr "" | |
30881 | ||
30882 | #. type: deftypevr | |
39764ef8 | 30883 | #: doc/guix.texi:14077 |
b9fe8fd6 JL |
30884 | msgid "" |
30885 | "Request client to send a certificate. If you also want to require it, set " | |
30886 | "@samp{auth-ssl-require-client-cert? #t} in auth section. Defaults to " | |
30887 | "@samp{#f}." | |
30888 | msgstr "" | |
30889 | ||
30890 | #. type: deftypevr | |
39764ef8 | 30891 | #: doc/guix.texi:14079 |
b9fe8fd6 JL |
30892 | #, no-wrap |
30893 | msgid "{@code{dovecot-configuration} parameter} string ssl-cert-username-field" | |
30894 | msgstr "" | |
30895 | ||
30896 | #. type: deftypevr | |
39764ef8 | 30897 | #: doc/guix.texi:14084 |
b9fe8fd6 JL |
30898 | msgid "" |
30899 | "Which field from certificate to use for username. commonName and " | |
30900 | "x500UniqueIdentifier are the usual choices. You'll also need to set " | |
30901 | "@samp{auth-ssl-username-from-cert? #t}. Defaults to @samp{\"commonName\"}." | |
30902 | msgstr "" | |
30903 | ||
30904 | #. type: deftypevr | |
39764ef8 | 30905 | #: doc/guix.texi:14086 |
b9fe8fd6 JL |
30906 | #, no-wrap |
30907 | msgid "{@code{dovecot-configuration} parameter} string ssl-min-protocol" | |
30908 | msgstr "" | |
30909 | ||
30910 | #. type: deftypevr | |
39764ef8 | 30911 | #: doc/guix.texi:14089 |
b9fe8fd6 JL |
30912 | msgid "Minimum SSL protocol version to accept. Defaults to @samp{\"TLSv1\"}." |
30913 | msgstr "" | |
30914 | ||
30915 | #. type: deftypevr | |
39764ef8 | 30916 | #: doc/guix.texi:14091 |
b9fe8fd6 JL |
30917 | #, no-wrap |
30918 | msgid "{@code{dovecot-configuration} parameter} string ssl-cipher-list" | |
30919 | msgstr "" | |
30920 | ||
30921 | #. type: deftypevr | |
39764ef8 | 30922 | #: doc/guix.texi:14094 |
b9fe8fd6 | 30923 | msgid "" |
39764ef8 JL |
30924 | "SSL ciphers to use. Defaults to @samp{\"ALL:!kRSA:!SRP:!kDHd:!DSS:!aNULL:!" |
30925 | "eNULL:!EXPORT:!DES:!3DES:!MD5:!PSK:!RC4:!ADH:!LOW@@STRENGTH\"}." | |
b9fe8fd6 JL |
30926 | msgstr "" |
30927 | ||
30928 | #. type: deftypevr | |
39764ef8 | 30929 | #: doc/guix.texi:14096 |
b9fe8fd6 JL |
30930 | #, no-wrap |
30931 | msgid "{@code{dovecot-configuration} parameter} string ssl-crypto-device" | |
30932 | msgstr "" | |
30933 | ||
30934 | #. type: deftypevr | |
39764ef8 | 30935 | #: doc/guix.texi:14099 |
b9fe8fd6 JL |
30936 | msgid "" |
30937 | "SSL crypto device to use, for valid values run \"openssl engine\". Defaults " | |
30938 | "to @samp{\"\"}." | |
30939 | msgstr "" | |
30940 | ||
30941 | #. type: deftypevr | |
39764ef8 | 30942 | #: doc/guix.texi:14101 |
b9fe8fd6 JL |
30943 | #, no-wrap |
30944 | msgid "{@code{dovecot-configuration} parameter} string postmaster-address" | |
30945 | msgstr "" | |
30946 | ||
30947 | #. type: deftypevr | |
39764ef8 | 30948 | #: doc/guix.texi:14105 |
b9fe8fd6 JL |
30949 | msgid "" |
30950 | "Address to use when sending rejection mails. %d expands to recipient " | |
30951 | "domain. Defaults to @samp{\"postmaster@@%d\"}." | |
30952 | msgstr "" | |
30953 | ||
30954 | #. type: deftypevr | |
39764ef8 | 30955 | #: doc/guix.texi:14107 |
b9fe8fd6 JL |
30956 | #, no-wrap |
30957 | msgid "{@code{dovecot-configuration} parameter} string hostname" | |
30958 | msgstr "" | |
30959 | ||
30960 | #. type: deftypevr | |
39764ef8 | 30961 | #: doc/guix.texi:14111 |
b9fe8fd6 JL |
30962 | msgid "" |
30963 | "Hostname to use in various parts of sent mails (e.g. in Message-Id) and in " | |
30964 | "LMTP replies. Default is the system's real hostname@@domain. Defaults to " | |
30965 | "@samp{\"\"}." | |
30966 | msgstr "" | |
30967 | ||
30968 | #. type: deftypevr | |
39764ef8 | 30969 | #: doc/guix.texi:14113 |
b9fe8fd6 JL |
30970 | #, no-wrap |
30971 | msgid "{@code{dovecot-configuration} parameter} boolean quota-full-tempfail?" | |
30972 | msgstr "" | |
30973 | ||
30974 | #. type: deftypevr | |
39764ef8 | 30975 | #: doc/guix.texi:14117 |
b9fe8fd6 JL |
30976 | msgid "" |
30977 | "If user is over quota, return with temporary failure instead of bouncing the " | |
30978 | "mail. Defaults to @samp{#f}." | |
30979 | msgstr "" | |
30980 | ||
30981 | #. type: deftypevr | |
39764ef8 | 30982 | #: doc/guix.texi:14119 |
b9fe8fd6 JL |
30983 | #, no-wrap |
30984 | msgid "{@code{dovecot-configuration} parameter} file-name sendmail-path" | |
30985 | msgstr "" | |
30986 | ||
30987 | #. type: deftypevr | |
39764ef8 JL |
30988 | #: doc/guix.texi:14122 |
30989 | msgid "" | |
30990 | "Binary to use for sending mails. Defaults to @samp{\"/usr/sbin/sendmail\"}." | |
b9fe8fd6 JL |
30991 | msgstr "" |
30992 | ||
30993 | #. type: deftypevr | |
39764ef8 | 30994 | #: doc/guix.texi:14124 |
b9fe8fd6 JL |
30995 | #, no-wrap |
30996 | msgid "{@code{dovecot-configuration} parameter} string submission-host" | |
30997 | msgstr "" | |
30998 | ||
30999 | #. type: deftypevr | |
39764ef8 | 31000 | #: doc/guix.texi:14128 |
b9fe8fd6 JL |
31001 | msgid "" |
31002 | "If non-empty, send mails via this SMTP host[:port] instead of sendmail. " | |
31003 | "Defaults to @samp{\"\"}." | |
31004 | msgstr "" | |
31005 | ||
31006 | #. type: deftypevr | |
39764ef8 | 31007 | #: doc/guix.texi:14130 |
b9fe8fd6 JL |
31008 | #, no-wrap |
31009 | msgid "{@code{dovecot-configuration} parameter} string rejection-subject" | |
31010 | msgstr "" | |
31011 | ||
31012 | #. type: deftypevr | |
39764ef8 | 31013 | #: doc/guix.texi:14134 |
b9fe8fd6 JL |
31014 | msgid "" |
31015 | "Subject: header to use for rejection mails. You can use the same variables " | |
31016 | "as for @samp{rejection-reason} below. Defaults to @samp{\"Rejected: %s\"}." | |
31017 | msgstr "" | |
31018 | ||
31019 | #. type: deftypevr | |
39764ef8 | 31020 | #: doc/guix.texi:14136 |
b9fe8fd6 JL |
31021 | #, no-wrap |
31022 | msgid "{@code{dovecot-configuration} parameter} string rejection-reason" | |
31023 | msgstr "" | |
31024 | ||
31025 | #. type: deftypevr | |
39764ef8 JL |
31026 | #: doc/guix.texi:14139 |
31027 | msgid "" | |
31028 | "Human readable error message for rejection mails. You can use variables:" | |
b9fe8fd6 JL |
31029 | msgstr "" |
31030 | ||
31031 | #. type: table | |
39764ef8 | 31032 | #: doc/guix.texi:14143 |
b9fe8fd6 JL |
31033 | msgid "CRLF" |
31034 | msgstr "" | |
31035 | ||
31036 | #. type: item | |
39764ef8 | 31037 | #: doc/guix.texi:14143 |
b9fe8fd6 JL |
31038 | #, no-wrap |
31039 | msgid "%r" | |
31040 | msgstr "" | |
31041 | ||
31042 | #. type: table | |
39764ef8 | 31043 | #: doc/guix.texi:14145 |
b9fe8fd6 JL |
31044 | msgid "reason" |
31045 | msgstr "" | |
31046 | ||
31047 | #. type: table | |
39764ef8 | 31048 | #: doc/guix.texi:14147 |
b9fe8fd6 JL |
31049 | msgid "original subject" |
31050 | msgstr "" | |
31051 | ||
31052 | #. type: item | |
39764ef8 | 31053 | #: doc/guix.texi:14147 |
b9fe8fd6 JL |
31054 | #, no-wrap |
31055 | msgid "%t" | |
31056 | msgstr "" | |
31057 | ||
31058 | #. type: table | |
39764ef8 | 31059 | #: doc/guix.texi:14149 |
b9fe8fd6 JL |
31060 | msgid "recipient" |
31061 | msgstr "" | |
31062 | ||
31063 | #. type: deftypevr | |
39764ef8 JL |
31064 | #: doc/guix.texi:14151 |
31065 | msgid "" | |
31066 | "Defaults to @samp{\"Your message to <%t> was automatically rejected:%n%r\"}." | |
b9fe8fd6 JL |
31067 | msgstr "" |
31068 | ||
31069 | #. type: deftypevr | |
39764ef8 | 31070 | #: doc/guix.texi:14153 |
b9fe8fd6 JL |
31071 | #, no-wrap |
31072 | msgid "{@code{dovecot-configuration} parameter} string recipient-delimiter" | |
31073 | msgstr "" | |
31074 | ||
31075 | #. type: deftypevr | |
39764ef8 | 31076 | #: doc/guix.texi:14157 |
b9fe8fd6 JL |
31077 | msgid "" |
31078 | "Delimiter character between local-part and detail in email address. " | |
31079 | "Defaults to @samp{\"+\"}." | |
31080 | msgstr "" | |
31081 | ||
31082 | #. type: deftypevr | |
39764ef8 | 31083 | #: doc/guix.texi:14159 |
b9fe8fd6 | 31084 | #, no-wrap |
39764ef8 | 31085 | msgid "{@code{dovecot-configuration} parameter} string lda-original-recipient-header" |
b9fe8fd6 JL |
31086 | msgstr "" |
31087 | ||
31088 | #. type: deftypevr | |
39764ef8 | 31089 | #: doc/guix.texi:14165 |
b9fe8fd6 JL |
31090 | msgid "" |
31091 | "Header where the original recipient address (SMTP's RCPT TO: address) is " | |
31092 | "taken from if not available elsewhere. With dovecot-lda -a parameter " | |
31093 | "overrides this. A commonly used header for this is X-Original-To. Defaults " | |
31094 | "to @samp{\"\"}." | |
31095 | msgstr "" | |
31096 | ||
31097 | #. type: deftypevr | |
39764ef8 | 31098 | #: doc/guix.texi:14167 |
b9fe8fd6 JL |
31099 | #, no-wrap |
31100 | msgid "{@code{dovecot-configuration} parameter} boolean lda-mailbox-autocreate?" | |
31101 | msgstr "" | |
31102 | ||
31103 | #. type: deftypevr | |
39764ef8 | 31104 | #: doc/guix.texi:14171 |
b9fe8fd6 JL |
31105 | msgid "" |
31106 | "Should saving a mail to a nonexistent mailbox automatically create it?. " | |
31107 | "Defaults to @samp{#f}." | |
31108 | msgstr "" | |
31109 | ||
31110 | #. type: deftypevr | |
39764ef8 | 31111 | #: doc/guix.texi:14173 |
b9fe8fd6 JL |
31112 | #, no-wrap |
31113 | msgid "{@code{dovecot-configuration} parameter} boolean lda-mailbox-autosubscribe?" | |
31114 | msgstr "" | |
31115 | ||
31116 | #. type: deftypevr | |
39764ef8 | 31117 | #: doc/guix.texi:14177 |
b9fe8fd6 JL |
31118 | msgid "" |
31119 | "Should automatically created mailboxes be also automatically subscribed?. " | |
31120 | "Defaults to @samp{#f}." | |
31121 | msgstr "" | |
31122 | ||
31123 | #. type: deftypevr | |
39764ef8 | 31124 | #: doc/guix.texi:14179 |
b9fe8fd6 | 31125 | #, no-wrap |
39764ef8 | 31126 | msgid "{@code{dovecot-configuration} parameter} non-negative-integer imap-max-line-length" |
b9fe8fd6 JL |
31127 | msgstr "" |
31128 | ||
31129 | #. type: deftypevr | |
39764ef8 | 31130 | #: doc/guix.texi:14185 |
b9fe8fd6 JL |
31131 | msgid "" |
31132 | "Maximum IMAP command line length. Some clients generate very long command " | |
31133 | "lines with huge mailboxes, so you may need to raise this if you get \"Too " | |
31134 | "long argument\" or \"IMAP command line too large\" errors often. Defaults " | |
31135 | "to @samp{64000}." | |
31136 | msgstr "" | |
31137 | ||
31138 | #. type: deftypevr | |
39764ef8 | 31139 | #: doc/guix.texi:14187 |
b9fe8fd6 JL |
31140 | #, no-wrap |
31141 | msgid "{@code{dovecot-configuration} parameter} string imap-logout-format" | |
31142 | msgstr "" | |
31143 | ||
31144 | #. type: deftypevr | |
39764ef8 | 31145 | #: doc/guix.texi:14189 |
b9fe8fd6 JL |
31146 | msgid "IMAP logout format string:" |
31147 | msgstr "" | |
31148 | ||
31149 | #. type: item | |
39764ef8 | 31150 | #: doc/guix.texi:14190 |
b9fe8fd6 JL |
31151 | #, no-wrap |
31152 | msgid "%i" | |
31153 | msgstr "" | |
31154 | ||
31155 | #. type: table | |
39764ef8 | 31156 | #: doc/guix.texi:14192 |
b9fe8fd6 JL |
31157 | msgid "total number of bytes read from client" |
31158 | msgstr "" | |
31159 | ||
31160 | #. type: item | |
39764ef8 | 31161 | #: doc/guix.texi:14192 |
b9fe8fd6 JL |
31162 | #, no-wrap |
31163 | msgid "%o" | |
31164 | msgstr "" | |
31165 | ||
31166 | #. type: table | |
39764ef8 | 31167 | #: doc/guix.texi:14194 |
b9fe8fd6 JL |
31168 | msgid "total number of bytes sent to client." |
31169 | msgstr "" | |
31170 | ||
31171 | #. type: deftypevr | |
39764ef8 | 31172 | #: doc/guix.texi:14197 |
b9fe8fd6 JL |
31173 | msgid "" |
31174 | "See @file{doc/wiki/Variables.txt} for a list of all the variables you can " | |
39764ef8 JL |
31175 | "use. Defaults to @samp{\"in=%i out=%o deleted=%@{deleted@} expunged=" |
31176 | "%@{expunged@} trashed=%@{trashed@} hdr_count=%@{fetch_hdr_count@} hdr_bytes=" | |
31177 | "%@{fetch_hdr_bytes@} body_count=%@{fetch_body_count@} body_bytes=" | |
31178 | "%@{fetch_body_bytes@}\"}." | |
b9fe8fd6 JL |
31179 | msgstr "" |
31180 | ||
31181 | #. type: deftypevr | |
39764ef8 | 31182 | #: doc/guix.texi:14199 |
b9fe8fd6 JL |
31183 | #, no-wrap |
31184 | msgid "{@code{dovecot-configuration} parameter} string imap-capability" | |
31185 | msgstr "" | |
31186 | ||
31187 | #. type: deftypevr | |
39764ef8 | 31188 | #: doc/guix.texi:14203 |
b9fe8fd6 JL |
31189 | msgid "" |
31190 | "Override the IMAP CAPABILITY response. If the value begins with '+', add " | |
31191 | "the given capabilities on top of the defaults (e.g. +XFOO XBAR). Defaults " | |
31192 | "to @samp{\"\"}." | |
31193 | msgstr "" | |
31194 | ||
31195 | #. type: deftypevr | |
39764ef8 | 31196 | #: doc/guix.texi:14205 |
b9fe8fd6 JL |
31197 | #, no-wrap |
31198 | msgid "{@code{dovecot-configuration} parameter} string imap-idle-notify-interval" | |
31199 | msgstr "" | |
31200 | ||
31201 | #. type: deftypevr | |
39764ef8 | 31202 | #: doc/guix.texi:14209 |
b9fe8fd6 JL |
31203 | msgid "" |
31204 | "How long to wait between \"OK Still here\" notifications when client is " | |
31205 | "IDLEing. Defaults to @samp{\"2 mins\"}." | |
31206 | msgstr "" | |
31207 | ||
31208 | #. type: deftypevr | |
39764ef8 | 31209 | #: doc/guix.texi:14211 |
b9fe8fd6 JL |
31210 | #, no-wrap |
31211 | msgid "{@code{dovecot-configuration} parameter} string imap-id-send" | |
31212 | msgstr "" | |
31213 | ||
31214 | #. type: deftypevr | |
39764ef8 | 31215 | #: doc/guix.texi:14217 |
b9fe8fd6 JL |
31216 | msgid "" |
31217 | "ID field names and values to send to clients. Using * as the value makes " | |
31218 | "Dovecot use the default value. The following fields have default values " | |
31219 | "currently: name, version, os, os-version, support-url, support-email. " | |
31220 | "Defaults to @samp{\"\"}." | |
31221 | msgstr "" | |
31222 | ||
31223 | #. type: deftypevr | |
39764ef8 | 31224 | #: doc/guix.texi:14219 |
b9fe8fd6 JL |
31225 | #, no-wrap |
31226 | msgid "{@code{dovecot-configuration} parameter} string imap-id-log" | |
31227 | msgstr "" | |
31228 | ||
31229 | #. type: deftypevr | |
39764ef8 | 31230 | #: doc/guix.texi:14222 |
b9fe8fd6 JL |
31231 | msgid "" |
31232 | "ID fields sent by client to log. * means everything. Defaults to " | |
31233 | "@samp{\"\"}." | |
31234 | msgstr "" | |
31235 | ||
31236 | #. type: deftypevr | |
39764ef8 | 31237 | #: doc/guix.texi:14224 |
b9fe8fd6 | 31238 | #, no-wrap |
39764ef8 | 31239 | msgid "{@code{dovecot-configuration} parameter} space-separated-string-list imap-client-workarounds" |
b9fe8fd6 JL |
31240 | msgstr "" |
31241 | ||
31242 | #. type: deftypevr | |
39764ef8 | 31243 | #: doc/guix.texi:14226 |
b9fe8fd6 JL |
31244 | msgid "Workarounds for various client bugs:" |
31245 | msgstr "" | |
31246 | ||
31247 | #. type: item | |
39764ef8 | 31248 | #: doc/guix.texi:14228 |
b9fe8fd6 JL |
31249 | #, no-wrap |
31250 | msgid "delay-newmail" | |
31251 | msgstr "" | |
31252 | ||
31253 | #. type: table | |
39764ef8 | 31254 | #: doc/guix.texi:14235 |
b9fe8fd6 JL |
31255 | msgid "" |
31256 | "Send EXISTS/RECENT new mail notifications only when replying to NOOP and " | |
31257 | "CHECK commands. Some clients ignore them otherwise, for example OSX Mail " | |
31258 | "(<v2.1). Outlook Express breaks more badly though, without this it may show " | |
31259 | "user \"Message no longer in server\" errors. Note that OE6 still breaks " | |
31260 | "even with this workaround if synchronization is set to \"Headers Only\"." | |
31261 | msgstr "" | |
31262 | ||
31263 | #. type: item | |
39764ef8 | 31264 | #: doc/guix.texi:14236 |
b9fe8fd6 JL |
31265 | #, no-wrap |
31266 | msgid "tb-extra-mailbox-sep" | |
31267 | msgstr "" | |
31268 | ||
31269 | #. type: table | |
39764ef8 | 31270 | #: doc/guix.texi:14240 |
b9fe8fd6 JL |
31271 | msgid "" |
31272 | "Thunderbird gets somehow confused with LAYOUT=fs (mbox and dbox) and adds " | |
31273 | "extra @samp{/} suffixes to mailbox names. This option causes Dovecot to " | |
31274 | "ignore the extra @samp{/} instead of treating it as invalid mailbox name." | |
31275 | msgstr "" | |
31276 | ||
31277 | #. type: item | |
39764ef8 | 31278 | #: doc/guix.texi:14241 |
b9fe8fd6 JL |
31279 | #, no-wrap |
31280 | msgid "tb-lsub-flags" | |
31281 | msgstr "" | |
31282 | ||
31283 | #. type: table | |
39764ef8 | 31284 | #: doc/guix.texi:14245 |
b9fe8fd6 JL |
31285 | msgid "" |
31286 | "Show \\Noselect flags for LSUB replies with LAYOUT=fs (e.g. mbox). This " | |
31287 | "makes Thunderbird realize they aren't selectable and show them greyed out, " | |
31288 | "instead of only later giving \"not selectable\" popup error." | |
31289 | msgstr "" | |
31290 | ||
31291 | #. type: deftypevr | |
39764ef8 | 31292 | #: doc/guix.texi:14249 |
b9fe8fd6 JL |
31293 | #, no-wrap |
31294 | msgid "{@code{dovecot-configuration} parameter} string imap-urlauth-host" | |
31295 | msgstr "" | |
31296 | ||
31297 | #. type: deftypevr | |
39764ef8 | 31298 | #: doc/guix.texi:14252 |
b9fe8fd6 JL |
31299 | msgid "" |
31300 | "Host allowed in URLAUTH URLs sent by client. \"*\" allows all. Defaults to " | |
31301 | "@samp{\"\"}." | |
31302 | msgstr "" | |
31303 | ||
31304 | #. type: Plain text | |
39764ef8 | 31305 | #: doc/guix.texi:14260 |
b9fe8fd6 JL |
31306 | msgid "" |
31307 | "Whew! Lots of configuration options. The nice thing about it though is that " | |
31308 | "GuixSD has a complete interface to Dovecot's configuration language. This " | |
31309 | "allows not only a nice way to declare configurations, but also offers " | |
31310 | "reflective capabilities as well: users can write code to inspect and " | |
31311 | "transform configurations from within Scheme." | |
31312 | msgstr "" | |
31313 | ||
31314 | #. type: Plain text | |
39764ef8 | 31315 | #: doc/guix.texi:14266 |
b9fe8fd6 JL |
31316 | msgid "" |
31317 | "However, it could be that you just want to get a @code{dovecot.conf} up and " | |
31318 | "running. In that case, you can pass an @code{opaque-dovecot-configuration} " | |
31319 | "as the @code{#:config} parameter to @code{dovecot-service}. As its name " | |
31320 | "indicates, an opaque configuration does not have easy reflective " | |
31321 | "capabilities." | |
31322 | msgstr "" | |
31323 | ||
31324 | #. type: Plain text | |
39764ef8 | 31325 | #: doc/guix.texi:14268 |
b9fe8fd6 JL |
31326 | msgid "Available @code{opaque-dovecot-configuration} fields are:" |
31327 | msgstr "" | |
31328 | ||
31329 | #. type: deftypevr | |
39764ef8 | 31330 | #: doc/guix.texi:14269 |
b9fe8fd6 JL |
31331 | #, no-wrap |
31332 | msgid "{@code{opaque-dovecot-configuration} parameter} package dovecot" | |
31333 | msgstr "" | |
31334 | ||
31335 | #. type: deftypevr | |
39764ef8 | 31336 | #: doc/guix.texi:14273 |
b9fe8fd6 JL |
31337 | #, no-wrap |
31338 | msgid "{@code{opaque-dovecot-configuration} parameter} string string" | |
31339 | msgstr "" | |
31340 | ||
31341 | #. type: deftypevr | |
39764ef8 | 31342 | #: doc/guix.texi:14275 |
b9fe8fd6 JL |
31343 | msgid "The contents of the @code{dovecot.conf}, as a string." |
31344 | msgstr "" | |
31345 | ||
31346 | #. type: Plain text | |
39764ef8 | 31347 | #: doc/guix.texi:14279 |
b9fe8fd6 JL |
31348 | msgid "" |
31349 | "For example, if your @code{dovecot.conf} is just the empty string, you could " | |
31350 | "instantiate a dovecot service like this:" | |
31351 | msgstr "" | |
31352 | ||
31353 | #. type: example | |
39764ef8 | 31354 | #: doc/guix.texi:14284 |
b9fe8fd6 JL |
31355 | #, no-wrap |
31356 | msgid "" | |
31357 | "(dovecot-service #:config\n" | |
31358 | " (opaque-dovecot-configuration\n" | |
31359 | " (string \"\")))\n" | |
31360 | msgstr "" | |
31361 | ||
31362 | #. type: subsubheading | |
39764ef8 | 31363 | #: doc/guix.texi:14286 |
b9fe8fd6 JL |
31364 | #, no-wrap |
31365 | msgid "OpenSMTPD Service" | |
31366 | msgstr "" | |
31367 | ||
31368 | #. type: deffn | |
39764ef8 | 31369 | #: doc/guix.texi:14288 |
b9fe8fd6 JL |
31370 | #, no-wrap |
31371 | msgid "{Scheme Variable} opensmtpd-service-type" | |
31372 | msgstr "" | |
31373 | ||
31374 | #. type: deffn | |
39764ef8 | 31375 | #: doc/guix.texi:14292 |
b9fe8fd6 JL |
31376 | msgid "" |
31377 | "This is the type of the @uref{https://www.opensmtpd.org, OpenSMTPD} service, " | |
31378 | "whose value should be an @code{opensmtpd-configuration} object as in this " | |
31379 | "example:" | |
31380 | msgstr "" | |
31381 | ||
31382 | #. type: example | |
39764ef8 | 31383 | #: doc/guix.texi:14297 |
b9fe8fd6 JL |
31384 | #, no-wrap |
31385 | msgid "" | |
31386 | "(service opensmtpd-service-type\n" | |
31387 | " (opensmtpd-configuration\n" | |
31388 | " (config-file (local-file \"./my-smtpd.conf\"))))\n" | |
31389 | msgstr "" | |
31390 | ||
31391 | #. type: deftp | |
39764ef8 | 31392 | #: doc/guix.texi:14300 |
b9fe8fd6 JL |
31393 | #, no-wrap |
31394 | msgid "{Data Type} opensmtpd-configuration" | |
31395 | msgstr "" | |
31396 | ||
31397 | #. type: deftp | |
39764ef8 | 31398 | #: doc/guix.texi:14302 |
b9fe8fd6 JL |
31399 | msgid "Data type representing the configuration of opensmtpd." |
31400 | msgstr "" | |
31401 | ||
31402 | #. type: item | |
39764ef8 | 31403 | #: doc/guix.texi:14304 |
b9fe8fd6 JL |
31404 | #, no-wrap |
31405 | msgid "@code{package} (default: @var{opensmtpd})" | |
31406 | msgstr "" | |
31407 | ||
31408 | #. type: table | |
39764ef8 | 31409 | #: doc/guix.texi:14306 |
b9fe8fd6 JL |
31410 | msgid "Package object of the OpenSMTPD SMTP server." |
31411 | msgstr "" | |
31412 | ||
31413 | #. type: item | |
39764ef8 | 31414 | #: doc/guix.texi:14307 |
b9fe8fd6 JL |
31415 | #, no-wrap |
31416 | msgid "@code{config-file} (default: @var{%default-opensmtpd-file})" | |
31417 | msgstr "" | |
31418 | ||
31419 | #. type: table | |
39764ef8 | 31420 | #: doc/guix.texi:14312 |
b9fe8fd6 JL |
31421 | msgid "" |
31422 | "File-like object of the OpenSMTPD configuration file to use. By default it " | |
31423 | "listens on the loopback network interface, and allows for mail from users " | |
31424 | "and daemons on the local machine, as well as permitting email to remote " | |
31425 | "servers. Run @command{man smtpd.conf} for more information." | |
31426 | msgstr "" | |
31427 | ||
31428 | #. type: subsubheading | |
39764ef8 | 31429 | #: doc/guix.texi:14316 |
b9fe8fd6 JL |
31430 | #, no-wrap |
31431 | msgid "Exim Service" | |
31432 | msgstr "" | |
31433 | ||
31434 | #. type: cindex | |
39764ef8 | 31435 | #: doc/guix.texi:14318 |
b9fe8fd6 JL |
31436 | #, no-wrap |
31437 | msgid "mail transfer agent (MTA)" | |
31438 | msgstr "" | |
31439 | ||
31440 | #. type: cindex | |
39764ef8 | 31441 | #: doc/guix.texi:14319 |
b9fe8fd6 JL |
31442 | #, no-wrap |
31443 | msgid "MTA (mail transfer agent)" | |
31444 | msgstr "" | |
31445 | ||
31446 | #. type: cindex | |
39764ef8 | 31447 | #: doc/guix.texi:14320 |
b9fe8fd6 JL |
31448 | #, no-wrap |
31449 | msgid "SMTP" | |
31450 | msgstr "" | |
31451 | ||
31452 | #. type: deffn | |
39764ef8 | 31453 | #: doc/guix.texi:14322 |
b9fe8fd6 JL |
31454 | #, no-wrap |
31455 | msgid "{Scheme Variable} exim-service-type" | |
31456 | msgstr "" | |
31457 | ||
31458 | #. type: deffn | |
39764ef8 | 31459 | #: doc/guix.texi:14326 |
b9fe8fd6 JL |
31460 | msgid "" |
31461 | "This is the type of the @uref{https://exim.org, Exim} mail transfer agent " | |
31462 | "(MTA), whose value should be an @code{exim-configuration} object as in this " | |
31463 | "example:" | |
31464 | msgstr "" | |
31465 | ||
31466 | #. type: example | |
39764ef8 | 31467 | #: doc/guix.texi:14331 |
b9fe8fd6 JL |
31468 | #, no-wrap |
31469 | msgid "" | |
31470 | "(service exim-service-type\n" | |
31471 | " (exim-configuration\n" | |
31472 | " (config-file (local-file \"./my-exim.conf\"))))\n" | |
31473 | msgstr "" | |
31474 | ||
31475 | #. type: Plain text | |
39764ef8 | 31476 | #: doc/guix.texi:14337 |
b9fe8fd6 JL |
31477 | msgid "" |
31478 | "In order to use an @code{exim-service-type} service you must also have a " | |
39764ef8 JL |
31479 | "@code{mail-aliases-service-type} service present in your @code{operating-" |
31480 | "system} (even if it has no aliases)." | |
b9fe8fd6 JL |
31481 | msgstr "" |
31482 | ||
31483 | #. type: deftp | |
39764ef8 | 31484 | #: doc/guix.texi:14338 |
b9fe8fd6 JL |
31485 | #, no-wrap |
31486 | msgid "{Data Type} exim-configuration" | |
31487 | msgstr "" | |
31488 | ||
31489 | #. type: deftp | |
39764ef8 | 31490 | #: doc/guix.texi:14340 |
b9fe8fd6 JL |
31491 | msgid "Data type representing the configuration of exim." |
31492 | msgstr "" | |
31493 | ||
31494 | #. type: item | |
39764ef8 | 31495 | #: doc/guix.texi:14342 |
b9fe8fd6 JL |
31496 | #, no-wrap |
31497 | msgid "@code{package} (default: @var{exim})" | |
31498 | msgstr "" | |
31499 | ||
31500 | #. type: table | |
39764ef8 | 31501 | #: doc/guix.texi:14344 |
b9fe8fd6 JL |
31502 | msgid "Package object of the Exim server." |
31503 | msgstr "" | |
31504 | ||
b9fe8fd6 | 31505 | #. type: table |
39764ef8 | 31506 | #: doc/guix.texi:14351 |
b9fe8fd6 JL |
31507 | msgid "" |
31508 | "File-like object of the Exim configuration file to use. If its value is " | |
31509 | "@code{#f} then use the default configuration file from the package provided " | |
31510 | "in @code{package}. The resulting configuration file is loaded after setting " | |
31511 | "the @code{exim_user} and @code{exim_group} configuration variables." | |
31512 | msgstr "" | |
31513 | ||
31514 | #. type: subsubheading | |
39764ef8 | 31515 | #: doc/guix.texi:14355 |
b9fe8fd6 JL |
31516 | #, no-wrap |
31517 | msgid "Mail Aliases Service" | |
31518 | msgstr "" | |
31519 | ||
31520 | #. type: cindex | |
39764ef8 | 31521 | #: doc/guix.texi:14357 |
b9fe8fd6 JL |
31522 | #, no-wrap |
31523 | msgid "email aliases" | |
31524 | msgstr "" | |
31525 | ||
31526 | #. type: cindex | |
39764ef8 | 31527 | #: doc/guix.texi:14358 |
b9fe8fd6 JL |
31528 | #, no-wrap |
31529 | msgid "aliases, for email addresses" | |
31530 | msgstr "" | |
31531 | ||
31532 | #. type: deffn | |
39764ef8 | 31533 | #: doc/guix.texi:14360 |
b9fe8fd6 JL |
31534 | #, no-wrap |
31535 | msgid "{Scheme Variable} mail-aliases-service-type" | |
31536 | msgstr "" | |
31537 | ||
31538 | #. type: deffn | |
39764ef8 | 31539 | #: doc/guix.texi:14363 |
b9fe8fd6 JL |
31540 | msgid "" |
31541 | "This is the type of the service which provides @code{/etc/aliases}, " | |
31542 | "specifying how to deliver mail to users on this system." | |
31543 | msgstr "" | |
31544 | ||
31545 | #. type: example | |
39764ef8 | 31546 | #: doc/guix.texi:14368 |
b9fe8fd6 JL |
31547 | #, no-wrap |
31548 | msgid "" | |
31549 | "(service mail-aliases-service-type\n" | |
31550 | " '((\"postmaster\" \"bob\")\n" | |
31551 | " (\"bob\" \"bob@@example.com\" \"bob@@example2.com\")))\n" | |
31552 | msgstr "" | |
31553 | ||
31554 | #. type: Plain text | |
39764ef8 | 31555 | #: doc/guix.texi:14376 |
b9fe8fd6 JL |
31556 | msgid "" |
31557 | "The configuration for a @code{mail-aliases-service-type} service is an " | |
39764ef8 JL |
31558 | "association list denoting how to deliver mail that comes to this system. " |
31559 | "Each entry is of the form @code{(alias addresses ...)}, with @code{alias} " | |
31560 | "specifying the local alias and @code{addresses} specifying where to deliver " | |
31561 | "this user's mail." | |
b9fe8fd6 JL |
31562 | msgstr "" |
31563 | ||
31564 | #. type: Plain text | |
39764ef8 | 31565 | #: doc/guix.texi:14382 |
b9fe8fd6 JL |
31566 | msgid "" |
31567 | "The aliases aren't required to exist as users on the local system. In the " | |
31568 | "above example, there doesn't need to be a @code{postmaster} entry in the " | |
31569 | "@code{operating-system}'s @code{user-accounts} in order to deliver the " | |
31570 | "@code{postmaster} mail to @code{bob} (which subsequently would deliver mail " | |
31571 | "to @code{bob@@example.com} and @code{bob@@example2.com})." | |
31572 | msgstr "" | |
31573 | ||
31574 | #. type: cindex | |
39764ef8 | 31575 | #: doc/guix.texi:14386 |
b9fe8fd6 JL |
31576 | #, no-wrap |
31577 | msgid "messaging" | |
31578 | msgstr "" | |
31579 | ||
31580 | #. type: cindex | |
39764ef8 | 31581 | #: doc/guix.texi:14387 |
b9fe8fd6 JL |
31582 | #, no-wrap |
31583 | msgid "jabber" | |
31584 | msgstr "" | |
31585 | ||
31586 | #. type: cindex | |
39764ef8 | 31587 | #: doc/guix.texi:14388 |
b9fe8fd6 JL |
31588 | #, no-wrap |
31589 | msgid "XMPP" | |
31590 | msgstr "" | |
31591 | ||
31592 | #. type: Plain text | |
39764ef8 | 31593 | #: doc/guix.texi:14391 |
b9fe8fd6 JL |
31594 | msgid "" |
31595 | "The @code{(gnu services messaging)} module provides Guix service definitions " | |
31596 | "for messaging services: currently only Prosody is supported." | |
31597 | msgstr "" | |
31598 | ||
31599 | #. type: subsubheading | |
39764ef8 | 31600 | #: doc/guix.texi:14392 |
b9fe8fd6 JL |
31601 | #, no-wrap |
31602 | msgid "Prosody Service" | |
31603 | msgstr "" | |
31604 | ||
31605 | #. type: deffn | |
39764ef8 | 31606 | #: doc/guix.texi:14394 |
b9fe8fd6 JL |
31607 | #, no-wrap |
31608 | msgid "{Scheme Variable} prosody-service-type" | |
31609 | msgstr "" | |
31610 | ||
31611 | #. type: deffn | |
39764ef8 | 31612 | #: doc/guix.texi:14398 |
b9fe8fd6 JL |
31613 | msgid "" |
31614 | "This is the type for the @uref{https://prosody.im, Prosody XMPP " | |
31615 | "communication server}. Its value must be a @code{prosody-configuration} " | |
31616 | "record as in this example:" | |
31617 | msgstr "" | |
31618 | ||
31619 | #. type: example | |
39764ef8 | 31620 | #: doc/guix.texi:14413 |
b9fe8fd6 JL |
31621 | #, no-wrap |
31622 | msgid "" | |
31623 | "(service prosody-service-type\n" | |
31624 | " (prosody-configuration\n" | |
39764ef8 | 31625 | " (modules-enabled (cons \"groups\" \"mam\" %default-modules-enabled))\n" |
b9fe8fd6 JL |
31626 | " (int-components\n" |
31627 | " (list\n" | |
31628 | " (int-component-configuration\n" | |
31629 | " (hostname \"conference.example.net\")\n" | |
31630 | " (plugin \"muc\")\n" | |
31631 | " (mod-muc (mod-muc-configuration)))))\n" | |
31632 | " (virtualhosts\n" | |
31633 | " (list\n" | |
31634 | " (virtualhost-configuration\n" | |
31635 | " (domain \"example.net\"))))))\n" | |
31636 | msgstr "" | |
31637 | ||
31638 | #. type: deffn | |
39764ef8 | 31639 | #: doc/guix.texi:14416 |
b9fe8fd6 JL |
31640 | msgid "See below for details about @code{prosody-configuration}." |
31641 | msgstr "" | |
31642 | ||
31643 | #. type: Plain text | |
39764ef8 | 31644 | #: doc/guix.texi:14422 |
b9fe8fd6 JL |
31645 | msgid "" |
31646 | "By default, Prosody does not need much configuration. Only one " | |
31647 | "@code{virtualhosts} field is needed: it specifies the domain you wish " | |
31648 | "Prosody to serve." | |
31649 | msgstr "" | |
31650 | ||
31651 | #. type: Plain text | |
39764ef8 | 31652 | #: doc/guix.texi:14425 |
b9fe8fd6 JL |
31653 | msgid "" |
31654 | "You can perform various sanity checks on the generated configuration with " | |
31655 | "the @code{prosodyctl check} command." | |
31656 | msgstr "" | |
31657 | ||
31658 | #. type: Plain text | |
39764ef8 | 31659 | #: doc/guix.texi:14429 |
b9fe8fd6 JL |
31660 | msgid "" |
31661 | "Prosodyctl will also help you to import certificates from the " | |
31662 | "@code{letsencrypt} directory so that the @code{prosody} user can access " | |
31663 | "them. See @url{https://prosody.im/doc/letsencrypt}." | |
31664 | msgstr "" | |
31665 | ||
31666 | #. type: example | |
39764ef8 | 31667 | #: doc/guix.texi:14432 |
b9fe8fd6 JL |
31668 | #, no-wrap |
31669 | msgid "prosodyctl --root cert import /etc/letsencrypt/live\n" | |
31670 | msgstr "" | |
31671 | ||
31672 | #. type: Plain text | |
39764ef8 | 31673 | #: doc/guix.texi:14439 |
b9fe8fd6 JL |
31674 | msgid "" |
31675 | "The available configuration parameters follow. Each parameter definition is " | |
31676 | "preceded by its type; for example, @samp{string-list foo} indicates that the " | |
31677 | "@code{foo} parameter should be specified as a list of strings. Types " | |
31678 | "starting with @code{maybe-} denote parameters that won't show up in " | |
31679 | "@code{prosody.cfg.lua} when their value is @code{'disabled}." | |
31680 | msgstr "" | |
31681 | ||
31682 | #. type: Plain text | |
39764ef8 | 31683 | #: doc/guix.texi:14443 |
b9fe8fd6 JL |
31684 | msgid "" |
31685 | "There is also a way to specify the configuration as a string, if you have an " | |
31686 | "old @code{prosody.cfg.lua} file that you want to port over from some other " | |
31687 | "system; see the end for more details." | |
31688 | msgstr "" | |
31689 | ||
31690 | #. type: Plain text | |
39764ef8 | 31691 | #: doc/guix.texi:14446 |
b9fe8fd6 | 31692 | msgid "" |
39764ef8 JL |
31693 | "The @code{file-object} type designates either a file-like object (@pxref{G-" |
31694 | "Expressions, file-like objects}) or a file name." | |
b9fe8fd6 JL |
31695 | msgstr "" |
31696 | ||
31697 | #. type: Plain text | |
39764ef8 | 31698 | #: doc/guix.texi:14456 |
b9fe8fd6 JL |
31699 | msgid "Available @code{prosody-configuration} fields are:" |
31700 | msgstr "" | |
31701 | ||
31702 | #. type: deftypevr | |
39764ef8 | 31703 | #: doc/guix.texi:14457 |
b9fe8fd6 JL |
31704 | #, no-wrap |
31705 | msgid "{@code{prosody-configuration} parameter} package prosody" | |
31706 | msgstr "" | |
31707 | ||
31708 | #. type: deftypevr | |
39764ef8 | 31709 | #: doc/guix.texi:14459 |
b9fe8fd6 JL |
31710 | msgid "The Prosody package." |
31711 | msgstr "" | |
31712 | ||
31713 | #. type: deftypevr | |
39764ef8 | 31714 | #: doc/guix.texi:14461 |
b9fe8fd6 JL |
31715 | #, no-wrap |
31716 | msgid "{@code{prosody-configuration} parameter} file-name data-path" | |
31717 | msgstr "" | |
31718 | ||
31719 | #. type: deftypevr | |
39764ef8 | 31720 | #: doc/guix.texi:14465 |
b9fe8fd6 | 31721 | msgid "" |
39764ef8 JL |
31722 | "Location of the Prosody data storage directory. See @url{https://prosody.im/" |
31723 | "doc/configure}. Defaults to @samp{\"/var/lib/prosody\"}." | |
b9fe8fd6 JL |
31724 | msgstr "" |
31725 | ||
31726 | #. type: deftypevr | |
39764ef8 | 31727 | #: doc/guix.texi:14467 |
b9fe8fd6 JL |
31728 | #, no-wrap |
31729 | msgid "{@code{prosody-configuration} parameter} file-object-list plugin-paths" | |
31730 | msgstr "" | |
31731 | ||
31732 | #. type: deftypevr | |
39764ef8 | 31733 | #: doc/guix.texi:14471 |
b9fe8fd6 JL |
31734 | msgid "" |
31735 | "Additional plugin directories. They are searched in all the specified paths " | |
31736 | "in order. See @url{https://prosody.im/doc/plugins_directory}. Defaults to " | |
31737 | "@samp{()}." | |
31738 | msgstr "" | |
31739 | ||
31740 | #. type: deftypevr | |
39764ef8 | 31741 | #: doc/guix.texi:14473 |
b9fe8fd6 JL |
31742 | #, no-wrap |
31743 | msgid "{@code{prosody-configuration} parameter} file-name certificates" | |
31744 | msgstr "" | |
31745 | ||
31746 | #. type: deftypevr | |
39764ef8 | 31747 | #: doc/guix.texi:14478 |
b9fe8fd6 JL |
31748 | msgid "" |
31749 | "Every virtual host and component needs a certificate so that clients and " | |
31750 | "servers can securely verify its identity. Prosody will automatically load " | |
39764ef8 JL |
31751 | "certificates/keys from the directory specified here. Defaults to @samp{\"/" |
31752 | "etc/prosody/certs\"}." | |
b9fe8fd6 JL |
31753 | msgstr "" |
31754 | ||
31755 | #. type: deftypevr | |
39764ef8 | 31756 | #: doc/guix.texi:14480 |
b9fe8fd6 JL |
31757 | #, no-wrap |
31758 | msgid "{@code{prosody-configuration} parameter} string-list admins" | |
31759 | msgstr "" | |
31760 | ||
31761 | #. type: deftypevr | |
39764ef8 | 31762 | #: doc/guix.texi:14486 |
b9fe8fd6 JL |
31763 | msgid "" |
31764 | "This is a list of accounts that are admins for the server. Note that you " | |
39764ef8 JL |
31765 | "must create the accounts separately. See @url{https://prosody.im/doc/" |
31766 | "admins} and @url{https://prosody.im/doc/creating_accounts}. Example: " | |
31767 | "@code{(admins '(\"user1@@example.com\" \"user2@@example.net\"))} Defaults to " | |
31768 | "@samp{()}." | |
b9fe8fd6 JL |
31769 | msgstr "" |
31770 | ||
31771 | #. type: deftypevr | |
39764ef8 | 31772 | #: doc/guix.texi:14488 |
b9fe8fd6 JL |
31773 | #, no-wrap |
31774 | msgid "{@code{prosody-configuration} parameter} boolean use-libevent?" | |
31775 | msgstr "" | |
31776 | ||
31777 | #. type: deftypevr | |
39764ef8 | 31778 | #: doc/guix.texi:14492 |
b9fe8fd6 JL |
31779 | msgid "" |
31780 | "Enable use of libevent for better performance under high load. See " | |
31781 | "@url{https://prosody.im/doc/libevent}. Defaults to @samp{#f}." | |
31782 | msgstr "" | |
31783 | ||
31784 | #. type: deftypevr | |
39764ef8 | 31785 | #: doc/guix.texi:14494 |
b9fe8fd6 JL |
31786 | #, no-wrap |
31787 | msgid "{@code{prosody-configuration} parameter} module-list modules-enabled" | |
31788 | msgstr "" | |
31789 | ||
31790 | #. type: deftypevr | |
39764ef8 | 31791 | #: doc/guix.texi:14500 |
b9fe8fd6 JL |
31792 | msgid "" |
31793 | "This is the list of modules Prosody will load on startup. It looks for " | |
31794 | "@code{mod_modulename.lua} in the plugins folder, so make sure that exists " | |
39764ef8 JL |
31795 | "too. Documentation on modules can be found at: @url{https://prosody.im/doc/" |
31796 | "modules}. Defaults to @samp{(\"roster\" \"saslauth\" \"tls\" \"dialback\" " | |
31797 | "\"disco\" \"carbons\" \"private\" \"blocklist\" \"vcard\" \"version\" " | |
31798 | "\"uptime\" \"time\" \"ping\" \"pep\" \"register\" \"admin_adhoc\")}." | |
b9fe8fd6 JL |
31799 | msgstr "" |
31800 | ||
31801 | #. type: deftypevr | |
39764ef8 | 31802 | #: doc/guix.texi:14502 |
b9fe8fd6 JL |
31803 | #, no-wrap |
31804 | msgid "{@code{prosody-configuration} parameter} string-list modules-disabled" | |
31805 | msgstr "" | |
31806 | ||
31807 | #. type: deftypevr | |
39764ef8 | 31808 | #: doc/guix.texi:14506 |
b9fe8fd6 JL |
31809 | msgid "" |
31810 | "@samp{\"offline\"}, @samp{\"c2s\"} and @samp{\"s2s\"} are auto-loaded, but " | |
31811 | "should you want to disable them then add them to this list. Defaults to " | |
31812 | "@samp{()}." | |
31813 | msgstr "" | |
31814 | ||
31815 | #. type: deftypevr | |
39764ef8 | 31816 | #: doc/guix.texi:14508 |
b9fe8fd6 JL |
31817 | #, no-wrap |
31818 | msgid "{@code{prosody-configuration} parameter} file-object groups-file" | |
31819 | msgstr "" | |
31820 | ||
31821 | #. type: deftypevr | |
39764ef8 | 31822 | #: doc/guix.texi:14513 |
b9fe8fd6 JL |
31823 | msgid "" |
31824 | "Path to a text file where the shared groups are defined. If this path is " | |
39764ef8 JL |
31825 | "empty then @samp{mod_groups} does nothing. See @url{https://prosody.im/doc/" |
31826 | "modules/mod_groups}. Defaults to @samp{\"/var/lib/prosody/sharedgroups.txt" | |
31827 | "\"}." | |
b9fe8fd6 JL |
31828 | msgstr "" |
31829 | ||
31830 | #. type: deftypevr | |
39764ef8 | 31831 | #: doc/guix.texi:14515 |
b9fe8fd6 JL |
31832 | #, no-wrap |
31833 | msgid "{@code{prosody-configuration} parameter} boolean allow-registration?" | |
31834 | msgstr "" | |
31835 | ||
31836 | #. type: deftypevr | |
39764ef8 | 31837 | #: doc/guix.texi:14519 |
b9fe8fd6 | 31838 | msgid "" |
39764ef8 JL |
31839 | "Disable account creation by default, for security. See @url{https://prosody." |
31840 | "im/doc/creating_accounts}. Defaults to @samp{#f}." | |
b9fe8fd6 JL |
31841 | msgstr "" |
31842 | ||
31843 | #. type: deftypevr | |
39764ef8 | 31844 | #: doc/guix.texi:14521 |
b9fe8fd6 JL |
31845 | #, no-wrap |
31846 | msgid "{@code{prosody-configuration} parameter} maybe-ssl-configuration ssl" | |
31847 | msgstr "" | |
31848 | ||
31849 | #. type: deftypevr | |
39764ef8 | 31850 | #: doc/guix.texi:14526 |
b9fe8fd6 JL |
31851 | msgid "" |
31852 | "These are the SSL/TLS-related settings. Most of them are disabled so to use " | |
31853 | "Prosody's defaults. If you do not completely understand these options, do " | |
31854 | "not add them to your config, it is easy to lower the security of your server " | |
31855 | "using them. See @url{https://prosody.im/doc/advanced_ssl_config}." | |
31856 | msgstr "" | |
31857 | ||
31858 | #. type: deftypevr | |
39764ef8 | 31859 | #: doc/guix.texi:14528 |
b9fe8fd6 JL |
31860 | msgid "Available @code{ssl-configuration} fields are:" |
31861 | msgstr "" | |
31862 | ||
31863 | #. type: deftypevr | |
39764ef8 | 31864 | #: doc/guix.texi:14529 |
b9fe8fd6 JL |
31865 | #, no-wrap |
31866 | msgid "{@code{ssl-configuration} parameter} maybe-string protocol" | |
31867 | msgstr "" | |
31868 | ||
31869 | #. type: deftypevr | |
39764ef8 | 31870 | #: doc/guix.texi:14531 |
b9fe8fd6 JL |
31871 | msgid "This determines what handshake to use." |
31872 | msgstr "" | |
31873 | ||
31874 | #. type: deftypevr | |
39764ef8 | 31875 | #: doc/guix.texi:14533 |
b9fe8fd6 JL |
31876 | #, no-wrap |
31877 | msgid "{@code{ssl-configuration} parameter} maybe-file-name key" | |
31878 | msgstr "" | |
31879 | ||
31880 | #. type: deftypevr | |
39764ef8 | 31881 | #: doc/guix.texi:14535 |
b9fe8fd6 JL |
31882 | msgid "Path to your private key file." |
31883 | msgstr "" | |
31884 | ||
31885 | #. type: deftypevr | |
39764ef8 | 31886 | #: doc/guix.texi:14537 |
b9fe8fd6 JL |
31887 | #, no-wrap |
31888 | msgid "{@code{ssl-configuration} parameter} maybe-file-name certificate" | |
31889 | msgstr "" | |
31890 | ||
31891 | #. type: deftypevr | |
39764ef8 | 31892 | #: doc/guix.texi:14539 |
b9fe8fd6 JL |
31893 | msgid "Path to your certificate file." |
31894 | msgstr "" | |
31895 | ||
31896 | #. type: deftypevr | |
39764ef8 | 31897 | #: doc/guix.texi:14541 |
b9fe8fd6 JL |
31898 | #, no-wrap |
31899 | msgid "{@code{ssl-configuration} parameter} file-object capath" | |
31900 | msgstr "" | |
31901 | ||
31902 | #. type: deftypevr | |
39764ef8 | 31903 | #: doc/guix.texi:14545 |
b9fe8fd6 JL |
31904 | msgid "" |
31905 | "Path to directory containing root certificates that you wish Prosody to " | |
31906 | "trust when verifying the certificates of remote servers. Defaults to " | |
31907 | "@samp{\"/etc/ssl/certs\"}." | |
31908 | msgstr "" | |
31909 | ||
31910 | #. type: deftypevr | |
39764ef8 | 31911 | #: doc/guix.texi:14547 |
b9fe8fd6 JL |
31912 | #, no-wrap |
31913 | msgid "{@code{ssl-configuration} parameter} maybe-file-object cafile" | |
31914 | msgstr "" | |
31915 | ||
31916 | #. type: deftypevr | |
39764ef8 | 31917 | #: doc/guix.texi:14550 |
b9fe8fd6 JL |
31918 | msgid "" |
31919 | "Path to a file containing root certificates that you wish Prosody to trust. " | |
31920 | "Similar to @code{capath} but with all certificates concatenated together." | |
31921 | msgstr "" | |
31922 | ||
31923 | #. type: deftypevr | |
39764ef8 | 31924 | #: doc/guix.texi:14552 |
b9fe8fd6 JL |
31925 | #, no-wrap |
31926 | msgid "{@code{ssl-configuration} parameter} maybe-string-list verify" | |
31927 | msgstr "" | |
31928 | ||
31929 | #. type: deftypevr | |
39764ef8 | 31930 | #: doc/guix.texi:14555 |
b9fe8fd6 JL |
31931 | msgid "" |
31932 | "A list of verification options (these mostly map to OpenSSL's " | |
31933 | "@code{set_verify()} flags)." | |
31934 | msgstr "" | |
31935 | ||
31936 | #. type: deftypevr | |
39764ef8 | 31937 | #: doc/guix.texi:14557 |
b9fe8fd6 JL |
31938 | #, no-wrap |
31939 | msgid "{@code{ssl-configuration} parameter} maybe-string-list options" | |
31940 | msgstr "" | |
31941 | ||
31942 | #. type: deftypevr | |
39764ef8 | 31943 | #: doc/guix.texi:14561 |
b9fe8fd6 JL |
31944 | msgid "" |
31945 | "A list of general options relating to SSL/TLS. These map to OpenSSL's " | |
31946 | "@code{set_options()}. For a full list of options available in LuaSec, see " | |
31947 | "the LuaSec source." | |
31948 | msgstr "" | |
31949 | ||
31950 | #. type: deftypevr | |
39764ef8 | 31951 | #: doc/guix.texi:14563 |
b9fe8fd6 JL |
31952 | #, no-wrap |
31953 | msgid "{@code{ssl-configuration} parameter} maybe-non-negative-integer depth" | |
31954 | msgstr "" | |
31955 | ||
31956 | #. type: deftypevr | |
39764ef8 | 31957 | #: doc/guix.texi:14566 |
b9fe8fd6 JL |
31958 | msgid "" |
31959 | "How long a chain of certificate authorities to check when looking for a " | |
31960 | "trusted root certificate." | |
31961 | msgstr "" | |
31962 | ||
31963 | #. type: deftypevr | |
39764ef8 | 31964 | #: doc/guix.texi:14568 |
b9fe8fd6 JL |
31965 | #, no-wrap |
31966 | msgid "{@code{ssl-configuration} parameter} maybe-string ciphers" | |
31967 | msgstr "" | |
31968 | ||
31969 | #. type: deftypevr | |
39764ef8 | 31970 | #: doc/guix.texi:14571 |
b9fe8fd6 JL |
31971 | msgid "" |
31972 | "An OpenSSL cipher string. This selects what ciphers Prosody will offer to " | |
31973 | "clients, and in what order." | |
31974 | msgstr "" | |
31975 | ||
31976 | #. type: deftypevr | |
39764ef8 | 31977 | #: doc/guix.texi:14573 |
b9fe8fd6 JL |
31978 | #, no-wrap |
31979 | msgid "{@code{ssl-configuration} parameter} maybe-file-name dhparam" | |
31980 | msgstr "" | |
31981 | ||
31982 | #. type: deftypevr | |
39764ef8 | 31983 | #: doc/guix.texi:14577 |
b9fe8fd6 JL |
31984 | msgid "" |
31985 | "A path to a file containing parameters for Diffie-Hellman key exchange. You " | |
39764ef8 JL |
31986 | "can create such a file with: @code{openssl dhparam -out /etc/prosody/certs/" |
31987 | "dh-2048.pem 2048}" | |
b9fe8fd6 JL |
31988 | msgstr "" |
31989 | ||
31990 | #. type: deftypevr | |
39764ef8 | 31991 | #: doc/guix.texi:14579 |
b9fe8fd6 JL |
31992 | #, no-wrap |
31993 | msgid "{@code{ssl-configuration} parameter} maybe-string curve" | |
31994 | msgstr "" | |
31995 | ||
31996 | #. type: deftypevr | |
39764ef8 | 31997 | #: doc/guix.texi:14582 |
b9fe8fd6 JL |
31998 | msgid "" |
31999 | "Curve for Elliptic curve Diffie-Hellman. Prosody's default is " | |
32000 | "@samp{\"secp384r1\"}." | |
32001 | msgstr "" | |
32002 | ||
32003 | #. type: deftypevr | |
39764ef8 | 32004 | #: doc/guix.texi:14584 |
b9fe8fd6 JL |
32005 | #, no-wrap |
32006 | msgid "{@code{ssl-configuration} parameter} maybe-string-list verifyext" | |
32007 | msgstr "" | |
32008 | ||
32009 | #. type: deftypevr | |
39764ef8 | 32010 | #: doc/guix.texi:14586 |
b9fe8fd6 JL |
32011 | msgid "A list of \"extra\" verification options." |
32012 | msgstr "" | |
32013 | ||
32014 | #. type: deftypevr | |
39764ef8 | 32015 | #: doc/guix.texi:14588 |
b9fe8fd6 JL |
32016 | #, no-wrap |
32017 | msgid "{@code{ssl-configuration} parameter} maybe-string password" | |
32018 | msgstr "" | |
32019 | ||
32020 | #. type: deftypevr | |
39764ef8 | 32021 | #: doc/guix.texi:14590 |
b9fe8fd6 JL |
32022 | msgid "Password for encrypted private keys." |
32023 | msgstr "" | |
32024 | ||
32025 | #. type: deftypevr | |
39764ef8 | 32026 | #: doc/guix.texi:14594 |
b9fe8fd6 JL |
32027 | #, no-wrap |
32028 | msgid "{@code{prosody-configuration} parameter} boolean c2s-require-encryption?" | |
32029 | msgstr "" | |
32030 | ||
32031 | #. type: deftypevr | |
39764ef8 | 32032 | #: doc/guix.texi:14598 |
b9fe8fd6 JL |
32033 | msgid "" |
32034 | "Whether to force all client-to-server connections to be encrypted or not. " | |
32035 | "See @url{https://prosody.im/doc/modules/mod_tls}. Defaults to @samp{#f}." | |
32036 | msgstr "" | |
32037 | ||
32038 | #. type: deftypevr | |
39764ef8 | 32039 | #: doc/guix.texi:14600 |
b9fe8fd6 JL |
32040 | #, no-wrap |
32041 | msgid "{@code{prosody-configuration} parameter} string-list disable-sasl-mechanisms" | |
32042 | msgstr "" | |
32043 | ||
32044 | #. type: deftypevr | |
39764ef8 | 32045 | #: doc/guix.texi:14604 |
b9fe8fd6 | 32046 | msgid "" |
39764ef8 JL |
32047 | "Set of mechanisms that will never be offered. See @url{https://prosody.im/" |
32048 | "doc/modules/mod_saslauth}. Defaults to @samp{(\"DIGEST-MD5\")}." | |
b9fe8fd6 JL |
32049 | msgstr "" |
32050 | ||
32051 | #. type: deftypevr | |
39764ef8 | 32052 | #: doc/guix.texi:14606 |
b9fe8fd6 JL |
32053 | #, no-wrap |
32054 | msgid "{@code{prosody-configuration} parameter} boolean s2s-require-encryption?" | |
32055 | msgstr "" | |
32056 | ||
32057 | #. type: deftypevr | |
39764ef8 | 32058 | #: doc/guix.texi:14610 |
b9fe8fd6 JL |
32059 | msgid "" |
32060 | "Whether to force all server-to-server connections to be encrypted or not. " | |
32061 | "See @url{https://prosody.im/doc/modules/mod_tls}. Defaults to @samp{#f}." | |
32062 | msgstr "" | |
32063 | ||
32064 | #. type: deftypevr | |
39764ef8 | 32065 | #: doc/guix.texi:14612 |
b9fe8fd6 JL |
32066 | #, no-wrap |
32067 | msgid "{@code{prosody-configuration} parameter} boolean s2s-secure-auth?" | |
32068 | msgstr "" | |
32069 | ||
32070 | #. type: deftypevr | |
39764ef8 | 32071 | #: doc/guix.texi:14618 |
b9fe8fd6 JL |
32072 | msgid "" |
32073 | "Whether to require encryption and certificate authentication. This provides " | |
32074 | "ideal security, but requires servers you communicate with to support " | |
39764ef8 JL |
32075 | "encryption AND present valid, trusted certificates. See @url{https://" |
32076 | "prosody.im/doc/s2s#security}. Defaults to @samp{#f}." | |
b9fe8fd6 JL |
32077 | msgstr "" |
32078 | ||
32079 | #. type: deftypevr | |
39764ef8 | 32080 | #: doc/guix.texi:14620 |
b9fe8fd6 JL |
32081 | #, no-wrap |
32082 | msgid "{@code{prosody-configuration} parameter} string-list s2s-insecure-domains" | |
32083 | msgstr "" | |
32084 | ||
32085 | #. type: deftypevr | |
39764ef8 | 32086 | #: doc/guix.texi:14626 |
b9fe8fd6 JL |
32087 | msgid "" |
32088 | "Many servers don't support encryption or have invalid or self-signed " | |
32089 | "certificates. You can list domains here that will not be required to " | |
32090 | "authenticate using certificates. They will be authenticated using DNS. See " | |
32091 | "@url{https://prosody.im/doc/s2s#security}. Defaults to @samp{()}." | |
32092 | msgstr "" | |
32093 | ||
32094 | #. type: deftypevr | |
39764ef8 | 32095 | #: doc/guix.texi:14628 |
b9fe8fd6 JL |
32096 | #, no-wrap |
32097 | msgid "{@code{prosody-configuration} parameter} string-list s2s-secure-domains" | |
32098 | msgstr "" | |
32099 | ||
32100 | #. type: deftypevr | |
39764ef8 | 32101 | #: doc/guix.texi:14633 |
b9fe8fd6 JL |
32102 | msgid "" |
32103 | "Even if you leave @code{s2s-secure-auth?} disabled, you can still require " | |
32104 | "valid certificates for some domains by specifying a list here. See " | |
32105 | "@url{https://prosody.im/doc/s2s#security}. Defaults to @samp{()}." | |
32106 | msgstr "" | |
32107 | ||
32108 | #. type: deftypevr | |
39764ef8 | 32109 | #: doc/guix.texi:14635 |
b9fe8fd6 JL |
32110 | #, no-wrap |
32111 | msgid "{@code{prosody-configuration} parameter} string authentication" | |
32112 | msgstr "" | |
32113 | ||
32114 | #. type: deftypevr | |
39764ef8 | 32115 | #: doc/guix.texi:14643 |
b9fe8fd6 JL |
32116 | msgid "" |
32117 | "Select the authentication backend to use. The default provider stores " | |
32118 | "passwords in plaintext and uses Prosody's configured data storage to store " | |
32119 | "the authentication data. If you do not trust your server please see " | |
32120 | "@url{https://prosody.im/doc/modules/mod_auth_internal_hashed} for " | |
39764ef8 JL |
32121 | "information about using the hashed backend. See also @url{https://prosody." |
32122 | "im/doc/authentication} Defaults to @samp{\"internal_plain\"}." | |
b9fe8fd6 JL |
32123 | msgstr "" |
32124 | ||
32125 | #. type: deftypevr | |
39764ef8 | 32126 | #: doc/guix.texi:14645 |
b9fe8fd6 JL |
32127 | #, no-wrap |
32128 | msgid "{@code{prosody-configuration} parameter} maybe-string log" | |
32129 | msgstr "" | |
32130 | ||
32131 | #. type: deftypevr | |
39764ef8 | 32132 | #: doc/guix.texi:14649 |
b9fe8fd6 JL |
32133 | msgid "" |
32134 | "Set logging options. Advanced logging configuration is not yet supported by " | |
32135 | "the GuixSD Prosody Service. See @url{https://prosody.im/doc/logging}. " | |
32136 | "Defaults to @samp{\"*syslog\"}." | |
32137 | msgstr "" | |
32138 | ||
32139 | #. type: deftypevr | |
39764ef8 | 32140 | #: doc/guix.texi:14651 |
b9fe8fd6 JL |
32141 | #, no-wrap |
32142 | msgid "{@code{prosody-configuration} parameter} file-name pidfile" | |
32143 | msgstr "" | |
32144 | ||
32145 | #. type: deftypevr | |
39764ef8 | 32146 | #: doc/guix.texi:14654 |
b9fe8fd6 JL |
32147 | msgid "" |
32148 | "File to write pid in. See @url{https://prosody.im/doc/modules/mod_posix}. " | |
32149 | "Defaults to @samp{\"/var/run/prosody/prosody.pid\"}." | |
32150 | msgstr "" | |
32151 | ||
32152 | #. type: deftypevr | |
39764ef8 | 32153 | #: doc/guix.texi:14656 |
b9fe8fd6 | 32154 | #, no-wrap |
39764ef8 | 32155 | msgid "{@code{prosody-configuration} parameter} maybe-non-negative-integer http-max-content-size" |
b9fe8fd6 JL |
32156 | msgstr "" |
32157 | ||
32158 | #. type: deftypevr | |
39764ef8 | 32159 | #: doc/guix.texi:14658 |
b9fe8fd6 JL |
32160 | msgid "Maximum allowed size of the HTTP body (in bytes)." |
32161 | msgstr "" | |
32162 | ||
32163 | #. type: deftypevr | |
39764ef8 | 32164 | #: doc/guix.texi:14660 |
b9fe8fd6 JL |
32165 | #, no-wrap |
32166 | msgid "{@code{prosody-configuration} parameter} maybe-string http-external-url" | |
32167 | msgstr "" | |
32168 | ||
32169 | #. type: deftypevr | |
39764ef8 | 32170 | #: doc/guix.texi:14665 |
b9fe8fd6 JL |
32171 | msgid "" |
32172 | "Some modules expose their own URL in various ways. This URL is built from " | |
32173 | "the protocol, host and port used. If Prosody sits behind a proxy, the " | |
39764ef8 JL |
32174 | "public URL will be @code{http-external-url} instead. See @url{https://" |
32175 | "prosody.im/doc/http#external_url}." | |
b9fe8fd6 JL |
32176 | msgstr "" |
32177 | ||
32178 | #. type: deftypevr | |
39764ef8 | 32179 | #: doc/guix.texi:14667 |
b9fe8fd6 | 32180 | #, no-wrap |
39764ef8 | 32181 | msgid "{@code{prosody-configuration} parameter} virtualhost-configuration-list virtualhosts" |
b9fe8fd6 JL |
32182 | msgstr "" |
32183 | ||
32184 | #. type: deftypevr | |
39764ef8 | 32185 | #: doc/guix.texi:14672 |
b9fe8fd6 JL |
32186 | msgid "" |
32187 | "A host in Prosody is a domain on which user accounts can be created. For " | |
39764ef8 JL |
32188 | "example if you want your users to have addresses like @samp{\"john." |
32189 | "smith@@example.com\"} then you need to add a host @samp{\"example.com\"}. " | |
32190 | "All options in this list will apply only to this host." | |
b9fe8fd6 JL |
32191 | msgstr "" |
32192 | ||
32193 | #. type: deftypevr | |
39764ef8 | 32194 | #: doc/guix.texi:14678 |
b9fe8fd6 JL |
32195 | msgid "" |
32196 | "Note: the name \"virtual\" host is used in configuration to avoid confusion " | |
32197 | "with the actual physical host that Prosody is installed on. A single " | |
32198 | "Prosody instance can serve many domains, each one defined as a VirtualHost " | |
32199 | "entry in Prosody's configuration. Conversely a server that hosts a single " | |
32200 | "domain would have just one VirtualHost entry." | |
32201 | msgstr "" | |
32202 | ||
32203 | #. type: deftypevr | |
39764ef8 | 32204 | #: doc/guix.texi:14680 |
b9fe8fd6 JL |
32205 | msgid "See @url{https://prosody.im/doc/configure#virtual_host_settings}." |
32206 | msgstr "" | |
32207 | ||
32208 | #. type: deftypevr | |
39764ef8 | 32209 | #: doc/guix.texi:14682 |
b9fe8fd6 JL |
32210 | msgid "Available @code{virtualhost-configuration} fields are:" |
32211 | msgstr "" | |
32212 | ||
32213 | #. type: deftypevr | |
39764ef8 | 32214 | #: doc/guix.texi:14684 doc/guix.texi:14706 doc/guix.texi:14759 |
b9fe8fd6 | 32215 | msgid "" |
39764ef8 JL |
32216 | "all these @code{prosody-configuration} fields: @code{admins}, @code{use-" |
32217 | "libevent?}, @code{modules-enabled}, @code{modules-disabled}, @code{groups-" | |
32218 | "file}, @code{allow-registration?}, @code{ssl}, @code{c2s-require-" | |
32219 | "encryption?}, @code{disable-sasl-mechanisms}, @code{s2s-require-" | |
32220 | "encryption?}, @code{s2s-secure-auth?}, @code{s2s-insecure-domains}, " | |
32221 | "@code{s2s-secure-domains}, @code{authentication}, @code{log}, @code{http-max-" | |
32222 | "content-size}, @code{http-external-url}, @code{raw-content}, plus:" | |
b9fe8fd6 JL |
32223 | msgstr "" |
32224 | ||
32225 | #. type: deftypevr | |
39764ef8 | 32226 | #: doc/guix.texi:14684 |
b9fe8fd6 JL |
32227 | #, no-wrap |
32228 | msgid "{@code{virtualhost-configuration} parameter} string domain" | |
32229 | msgstr "" | |
32230 | ||
32231 | #. type: deftypevr | |
39764ef8 | 32232 | #: doc/guix.texi:14686 |
b9fe8fd6 JL |
32233 | msgid "Domain you wish Prosody to serve." |
32234 | msgstr "" | |
32235 | ||
32236 | #. type: deftypevr | |
39764ef8 | 32237 | #: doc/guix.texi:14690 |
b9fe8fd6 | 32238 | #, no-wrap |
39764ef8 | 32239 | msgid "{@code{prosody-configuration} parameter} int-component-configuration-list int-components" |
b9fe8fd6 JL |
32240 | msgstr "" |
32241 | ||
32242 | #. type: deftypevr | |
39764ef8 | 32243 | #: doc/guix.texi:14695 |
b9fe8fd6 JL |
32244 | msgid "" |
32245 | "Components are extra services on a server which are available to clients, " | |
39764ef8 JL |
32246 | "usually on a subdomain of the main server (such as @samp{\"mycomponent." |
32247 | "example.com\"}). Example components might be chatroom servers, user " | |
32248 | "directories, or gateways to other protocols." | |
b9fe8fd6 JL |
32249 | msgstr "" |
32250 | ||
32251 | #. type: deftypevr | |
39764ef8 | 32252 | #: doc/guix.texi:14699 |
b9fe8fd6 JL |
32253 | msgid "" |
32254 | "Internal components are implemented with Prosody-specific plugins. To add " | |
32255 | "an internal component, you simply fill the hostname field, and the plugin " | |
32256 | "you wish to use for the component." | |
32257 | msgstr "" | |
32258 | ||
32259 | #. type: deftypevr | |
39764ef8 | 32260 | #: doc/guix.texi:14702 |
b9fe8fd6 JL |
32261 | msgid "See @url{https://prosody.im/doc/components}. Defaults to @samp{()}." |
32262 | msgstr "" | |
32263 | ||
32264 | #. type: deftypevr | |
39764ef8 | 32265 | #: doc/guix.texi:14704 |
b9fe8fd6 JL |
32266 | msgid "Available @code{int-component-configuration} fields are:" |
32267 | msgstr "" | |
32268 | ||
32269 | #. type: deftypevr | |
39764ef8 | 32270 | #: doc/guix.texi:14706 |
b9fe8fd6 JL |
32271 | #, no-wrap |
32272 | msgid "{@code{int-component-configuration} parameter} string hostname" | |
32273 | msgstr "" | |
32274 | ||
32275 | #. type: deftypevr | |
39764ef8 | 32276 | #: doc/guix.texi:14708 doc/guix.texi:14765 |
b9fe8fd6 JL |
32277 | msgid "Hostname of the component." |
32278 | msgstr "" | |
32279 | ||
32280 | #. type: deftypevr | |
39764ef8 | 32281 | #: doc/guix.texi:14710 |
b9fe8fd6 JL |
32282 | #, no-wrap |
32283 | msgid "{@code{int-component-configuration} parameter} string plugin" | |
32284 | msgstr "" | |
32285 | ||
32286 | #. type: deftypevr | |
39764ef8 | 32287 | #: doc/guix.texi:14712 |
b9fe8fd6 JL |
32288 | msgid "Plugin you wish to use for the component." |
32289 | msgstr "" | |
32290 | ||
32291 | #. type: deftypevr | |
39764ef8 | 32292 | #: doc/guix.texi:14714 |
b9fe8fd6 | 32293 | #, no-wrap |
39764ef8 | 32294 | msgid "{@code{int-component-configuration} parameter} maybe-mod-muc-configuration mod-muc" |
b9fe8fd6 JL |
32295 | msgstr "" |
32296 | ||
32297 | #. type: deftypevr | |
39764ef8 | 32298 | #: doc/guix.texi:14717 |
b9fe8fd6 JL |
32299 | msgid "" |
32300 | "Multi-user chat (MUC) is Prosody's module for allowing you to create hosted " | |
32301 | "chatrooms/conferences for XMPP users." | |
32302 | msgstr "" | |
32303 | ||
32304 | #. type: deftypevr | |
39764ef8 | 32305 | #: doc/guix.texi:14721 |
b9fe8fd6 JL |
32306 | msgid "" |
32307 | "General information on setting up and using multi-user chatrooms can be " | |
39764ef8 JL |
32308 | "found in the \"Chatrooms\" documentation (@url{https://prosody.im/doc/" |
32309 | "chatrooms}), which you should read if you are new to XMPP chatrooms." | |
b9fe8fd6 JL |
32310 | msgstr "" |
32311 | ||
32312 | #. type: deftypevr | |
39764ef8 | 32313 | #: doc/guix.texi:14723 |
b9fe8fd6 JL |
32314 | msgid "See also @url{https://prosody.im/doc/modules/mod_muc}." |
32315 | msgstr "" | |
32316 | ||
32317 | #. type: deftypevr | |
39764ef8 | 32318 | #: doc/guix.texi:14725 |
b9fe8fd6 JL |
32319 | msgid "Available @code{mod-muc-configuration} fields are:" |
32320 | msgstr "" | |
32321 | ||
32322 | #. type: deftypevr | |
39764ef8 | 32323 | #: doc/guix.texi:14726 |
b9fe8fd6 JL |
32324 | #, no-wrap |
32325 | msgid "{@code{mod-muc-configuration} parameter} string name" | |
32326 | msgstr "" | |
32327 | ||
32328 | #. type: deftypevr | |
39764ef8 | 32329 | #: doc/guix.texi:14729 |
b9fe8fd6 JL |
32330 | msgid "" |
32331 | "The name to return in service discovery responses. Defaults to " | |
32332 | "@samp{\"Prosody Chatrooms\"}." | |
32333 | msgstr "" | |
32334 | ||
32335 | #. type: deftypevr | |
39764ef8 | 32336 | #: doc/guix.texi:14731 |
b9fe8fd6 | 32337 | #, no-wrap |
39764ef8 | 32338 | msgid "{@code{mod-muc-configuration} parameter} string-or-boolean restrict-room-creation" |
b9fe8fd6 JL |
32339 | msgstr "" |
32340 | ||
32341 | #. type: deftypevr | |
39764ef8 | 32342 | #: doc/guix.texi:14738 |
b9fe8fd6 JL |
32343 | msgid "" |
32344 | "If @samp{#t}, this will only allow admins to create new chatrooms. " | |
32345 | "Otherwise anyone can create a room. The value @samp{\"local\"} restricts " | |
39764ef8 JL |
32346 | "room creation to users on the service's parent domain. E.g. " |
32347 | "@samp{user@@example.com} can create rooms on @samp{rooms.example.com}. The " | |
32348 | "value @samp{\"admin\"} restricts to service administrators only. Defaults " | |
32349 | "to @samp{#f}." | |
b9fe8fd6 JL |
32350 | msgstr "" |
32351 | ||
32352 | #. type: deftypevr | |
39764ef8 | 32353 | #: doc/guix.texi:14740 |
b9fe8fd6 | 32354 | #, no-wrap |
39764ef8 | 32355 | msgid "{@code{mod-muc-configuration} parameter} non-negative-integer max-history-messages" |
b9fe8fd6 JL |
32356 | msgstr "" |
32357 | ||
32358 | #. type: deftypevr | |
39764ef8 | 32359 | #: doc/guix.texi:14744 |
b9fe8fd6 JL |
32360 | msgid "" |
32361 | "Maximum number of history messages that will be sent to the member that has " | |
32362 | "just joined the room. Defaults to @samp{20}." | |
32363 | msgstr "" | |
32364 | ||
32365 | #. type: deftypevr | |
39764ef8 | 32366 | #: doc/guix.texi:14750 |
b9fe8fd6 | 32367 | #, no-wrap |
39764ef8 | 32368 | msgid "{@code{prosody-configuration} parameter} ext-component-configuration-list ext-components" |
b9fe8fd6 JL |
32369 | msgstr "" |
32370 | ||
32371 | #. type: deftypevr | |
39764ef8 | 32372 | #: doc/guix.texi:14755 |
b9fe8fd6 JL |
32373 | msgid "" |
32374 | "External components use XEP-0114, which most standalone components support. " | |
32375 | "To add an external component, you simply fill the hostname field. See " | |
32376 | "@url{https://prosody.im/doc/components}. Defaults to @samp{()}." | |
32377 | msgstr "" | |
32378 | ||
32379 | #. type: deftypevr | |
39764ef8 | 32380 | #: doc/guix.texi:14757 |
b9fe8fd6 JL |
32381 | msgid "Available @code{ext-component-configuration} fields are:" |
32382 | msgstr "" | |
32383 | ||
32384 | #. type: deftypevr | |
39764ef8 | 32385 | #: doc/guix.texi:14759 |
b9fe8fd6 JL |
32386 | #, no-wrap |
32387 | msgid "{@code{ext-component-configuration} parameter} string component-secret" | |
32388 | msgstr "" | |
32389 | ||
32390 | #. type: deftypevr | |
39764ef8 | 32391 | #: doc/guix.texi:14761 |
b9fe8fd6 JL |
32392 | msgid "Password which the component will use to log in." |
32393 | msgstr "" | |
32394 | ||
32395 | #. type: deftypevr | |
39764ef8 | 32396 | #: doc/guix.texi:14763 |
b9fe8fd6 JL |
32397 | #, no-wrap |
32398 | msgid "{@code{ext-component-configuration} parameter} string hostname" | |
32399 | msgstr "" | |
32400 | ||
32401 | #. type: deftypevr | |
39764ef8 | 32402 | #: doc/guix.texi:14769 |
b9fe8fd6 | 32403 | #, no-wrap |
39764ef8 | 32404 | msgid "{@code{prosody-configuration} parameter} non-negative-integer-list component-ports" |
b9fe8fd6 JL |
32405 | msgstr "" |
32406 | ||
32407 | #. type: deftypevr | |
39764ef8 | 32408 | #: doc/guix.texi:14772 |
b9fe8fd6 JL |
32409 | msgid "" |
32410 | "Port(s) Prosody listens on for component connections. Defaults to " | |
32411 | "@samp{(5347)}." | |
32412 | msgstr "" | |
32413 | ||
32414 | #. type: deftypevr | |
39764ef8 | 32415 | #: doc/guix.texi:14774 |
b9fe8fd6 JL |
32416 | #, no-wrap |
32417 | msgid "{@code{prosody-configuration} parameter} string component-interface" | |
32418 | msgstr "" | |
32419 | ||
32420 | #. type: deftypevr | |
39764ef8 | 32421 | #: doc/guix.texi:14777 |
b9fe8fd6 JL |
32422 | msgid "" |
32423 | "Interface Prosody listens on for component connections. Defaults to " | |
32424 | "@samp{\"127.0.0.1\"}." | |
32425 | msgstr "" | |
32426 | ||
32427 | #. type: deftypevr | |
39764ef8 | 32428 | #: doc/guix.texi:14779 |
b9fe8fd6 JL |
32429 | #, no-wrap |
32430 | msgid "{@code{prosody-configuration} parameter} maybe-raw-content raw-content" | |
32431 | msgstr "" | |
32432 | ||
32433 | #. type: deftypevr | |
39764ef8 | 32434 | #: doc/guix.texi:14781 |
b9fe8fd6 JL |
32435 | msgid "Raw content that will be added to the configuration file." |
32436 | msgstr "" | |
32437 | ||
32438 | #. type: Plain text | |
39764ef8 | 32439 | #: doc/guix.texi:14789 |
b9fe8fd6 JL |
32440 | msgid "" |
32441 | "It could be that you just want to get a @code{prosody.cfg.lua} up and " | |
32442 | "running. In that case, you can pass an @code{opaque-prosody-configuration} " | |
32443 | "record as the value of @code{prosody-service-type}. As its name indicates, " | |
32444 | "an opaque configuration does not have easy reflective capabilities. " | |
32445 | "Available @code{opaque-prosody-configuration} fields are:" | |
32446 | msgstr "" | |
32447 | ||
32448 | #. type: deftypevr | |
39764ef8 | 32449 | #: doc/guix.texi:14790 |
b9fe8fd6 JL |
32450 | #, no-wrap |
32451 | msgid "{@code{opaque-prosody-configuration} parameter} package prosody" | |
32452 | msgstr "" | |
32453 | ||
32454 | #. type: deftypevr | |
39764ef8 | 32455 | #: doc/guix.texi:14792 |
b9fe8fd6 JL |
32456 | msgid "The prosody package." |
32457 | msgstr "" | |
32458 | ||
32459 | #. type: deftypevr | |
39764ef8 | 32460 | #: doc/guix.texi:14794 |
b9fe8fd6 JL |
32461 | #, no-wrap |
32462 | msgid "{@code{opaque-prosody-configuration} parameter} string prosody.cfg.lua" | |
32463 | msgstr "" | |
32464 | ||
32465 | #. type: deftypevr | |
39764ef8 | 32466 | #: doc/guix.texi:14796 |
b9fe8fd6 JL |
32467 | msgid "The contents of the @code{prosody.cfg.lua} to use." |
32468 | msgstr "" | |
32469 | ||
32470 | #. type: Plain text | |
39764ef8 | 32471 | #: doc/guix.texi:14800 |
b9fe8fd6 JL |
32472 | msgid "" |
32473 | "For example, if your @code{prosody.cfg.lua} is just the empty string, you " | |
32474 | "could instantiate a prosody service like this:" | |
32475 | msgstr "" | |
32476 | ||
32477 | #. type: example | |
39764ef8 | 32478 | #: doc/guix.texi:14805 |
b9fe8fd6 JL |
32479 | #, no-wrap |
32480 | msgid "" | |
32481 | "(service prosody-service-type\n" | |
32482 | " (opaque-prosody-configuration\n" | |
32483 | " (prosody.cfg.lua \"\")))\n" | |
32484 | msgstr "" | |
32485 | ||
32486 | #. type: subsubheading | |
39764ef8 | 32487 | #: doc/guix.texi:14809 |
b9fe8fd6 JL |
32488 | #, no-wrap |
32489 | msgid "BitlBee Service" | |
32490 | msgstr "" | |
32491 | ||
32492 | #. type: cindex | |
39764ef8 | 32493 | #: doc/guix.texi:14811 |
b9fe8fd6 JL |
32494 | #, no-wrap |
32495 | msgid "IRC (Internet Relay Chat)" | |
32496 | msgstr "" | |
32497 | ||
32498 | #. type: cindex | |
39764ef8 | 32499 | #: doc/guix.texi:14812 |
b9fe8fd6 JL |
32500 | #, no-wrap |
32501 | msgid "IRC gateway" | |
32502 | msgstr "" | |
32503 | ||
32504 | #. type: Plain text | |
39764ef8 | 32505 | #: doc/guix.texi:14815 |
b9fe8fd6 JL |
32506 | msgid "" |
32507 | "@url{http://bitlbee.org,BitlBee} is a gateway that provides an IRC interface " | |
32508 | "to a variety of messaging protocols such as XMPP." | |
32509 | msgstr "" | |
32510 | ||
32511 | #. type: defvr | |
39764ef8 | 32512 | #: doc/guix.texi:14816 |
b9fe8fd6 JL |
32513 | #, no-wrap |
32514 | msgid "{Scheme Variable} bitlbee-service-type" | |
32515 | msgstr "" | |
32516 | ||
32517 | #. type: defvr | |
39764ef8 | 32518 | #: doc/guix.texi:14820 |
b9fe8fd6 JL |
32519 | msgid "" |
32520 | "This is the service type for the @url{http://bitlbee.org,BitlBee} IRC " | |
32521 | "gateway daemon. Its value is a @code{bitlbee-configuration} (see below)." | |
32522 | msgstr "" | |
32523 | ||
32524 | #. type: defvr | |
39764ef8 | 32525 | #: doc/guix.texi:14823 |
b9fe8fd6 JL |
32526 | msgid "" |
32527 | "To have BitlBee listen on port 6667 on localhost, add this line to your " | |
32528 | "services:" | |
32529 | msgstr "" | |
32530 | ||
32531 | #. type: example | |
39764ef8 | 32532 | #: doc/guix.texi:14826 |
b9fe8fd6 JL |
32533 | #, no-wrap |
32534 | msgid "(service bitlbee-service-type)\n" | |
32535 | msgstr "" | |
32536 | ||
32537 | #. type: deftp | |
39764ef8 | 32538 | #: doc/guix.texi:14829 |
b9fe8fd6 JL |
32539 | #, no-wrap |
32540 | msgid "{Data Type} bitlbee-configuration" | |
32541 | msgstr "" | |
32542 | ||
32543 | #. type: deftp | |
39764ef8 | 32544 | #: doc/guix.texi:14831 |
b9fe8fd6 JL |
32545 | msgid "This is the configuration for BitlBee, with the following fields:" |
32546 | msgstr "" | |
32547 | ||
32548 | #. type: item | |
39764ef8 | 32549 | #: doc/guix.texi:14833 |
b9fe8fd6 JL |
32550 | #, no-wrap |
32551 | msgid "@code{interface} (default: @code{\"127.0.0.1\"})" | |
32552 | msgstr "" | |
32553 | ||
32554 | #. type: itemx | |
39764ef8 | 32555 | #: doc/guix.texi:14834 |
b9fe8fd6 JL |
32556 | #, no-wrap |
32557 | msgid "@code{port} (default: @code{6667})" | |
32558 | msgstr "" | |
32559 | ||
32560 | #. type: table | |
39764ef8 | 32561 | #: doc/guix.texi:14837 |
b9fe8fd6 JL |
32562 | msgid "" |
32563 | "Listen on the network interface corresponding to the IP address specified in " | |
32564 | "@var{interface}, on @var{port}." | |
32565 | msgstr "" | |
32566 | ||
32567 | #. type: table | |
39764ef8 | 32568 | #: doc/guix.texi:14841 |
b9fe8fd6 JL |
32569 | msgid "" |
32570 | "When @var{interface} is @code{127.0.0.1}, only local clients can connect; " | |
32571 | "when it is @code{0.0.0.0}, connections can come from any networking " | |
32572 | "interface." | |
32573 | msgstr "" | |
32574 | ||
32575 | #. type: item | |
39764ef8 | 32576 | #: doc/guix.texi:14842 |
b9fe8fd6 JL |
32577 | #, no-wrap |
32578 | msgid "@code{package} (default: @code{bitlbee})" | |
32579 | msgstr "" | |
32580 | ||
32581 | #. type: table | |
39764ef8 | 32582 | #: doc/guix.texi:14844 |
b9fe8fd6 JL |
32583 | msgid "The BitlBee package to use." |
32584 | msgstr "" | |
32585 | ||
32586 | #. type: item | |
39764ef8 | 32587 | #: doc/guix.texi:14845 |
b9fe8fd6 JL |
32588 | #, no-wrap |
32589 | msgid "@code{extra-settings} (default: @code{\"\"})" | |
32590 | msgstr "" | |
32591 | ||
32592 | #. type: table | |
39764ef8 | 32593 | #: doc/guix.texi:14847 |
b9fe8fd6 JL |
32594 | msgid "Configuration snippet added as-is to the BitlBee configuration file." |
32595 | msgstr "" | |
32596 | ||
32597 | #. type: cindex | |
39764ef8 | 32598 | #: doc/guix.texi:14854 |
b9fe8fd6 JL |
32599 | #, no-wrap |
32600 | msgid "Murmur (VoIP server)" | |
32601 | msgstr "" | |
32602 | ||
32603 | #. type: cindex | |
39764ef8 | 32604 | #: doc/guix.texi:14855 |
b9fe8fd6 JL |
32605 | #, no-wrap |
32606 | msgid "VoIP server" | |
32607 | msgstr "" | |
32608 | ||
32609 | #. type: Plain text | |
39764ef8 | 32610 | #: doc/guix.texi:14859 |
b9fe8fd6 JL |
32611 | msgid "" |
32612 | "This section describes how to set up and run a Murmur server. Murmur is the " | |
32613 | "server of the @uref{https://mumble.info, Mumble} voice-over-IP (VoIP) suite." | |
32614 | msgstr "" | |
32615 | ||
32616 | #. type: deftp | |
39764ef8 | 32617 | #: doc/guix.texi:14860 |
b9fe8fd6 JL |
32618 | #, no-wrap |
32619 | msgid "{Data Type} murmur-configuration" | |
32620 | msgstr "" | |
32621 | ||
32622 | #. type: deftp | |
39764ef8 | 32623 | #: doc/guix.texi:14863 |
b9fe8fd6 JL |
32624 | msgid "" |
32625 | "The service type for the Murmur server. An example configuration can look " | |
32626 | "like this:" | |
32627 | msgstr "" | |
32628 | ||
32629 | #. type: example | |
39764ef8 | 32630 | #: doc/guix.texi:14872 |
b9fe8fd6 JL |
32631 | #, no-wrap |
32632 | msgid "" | |
32633 | "(service murmur-service-type\n" | |
32634 | " (murmur-configuration\n" | |
32635 | " (welcome-text\n" | |
32636 | " \"Welcome to this Mumble server running on GuixSD!\")\n" | |
32637 | " (cert-required? #t) ;disallow text password logins\n" | |
39764ef8 JL |
32638 | " (ssl-cert \"/etc/letsencrypt/live/mumble.example.com/fullchain.pem\")\n" |
32639 | " (ssl-key \"/etc/letsencrypt/live/mumble.example.com/privkey.pem\")))\n" | |
b9fe8fd6 JL |
32640 | msgstr "" |
32641 | ||
32642 | #. type: deftp | |
39764ef8 | 32643 | #: doc/guix.texi:14876 |
b9fe8fd6 JL |
32644 | msgid "" |
32645 | "After reconfiguring your system, you can manually set the murmur " | |
32646 | "@code{SuperUser} password with the command that is printed during the " | |
32647 | "activation phase." | |
32648 | msgstr "" | |
32649 | ||
32650 | #. type: deftp | |
39764ef8 | 32651 | #: doc/guix.texi:14885 |
b9fe8fd6 JL |
32652 | msgid "" |
32653 | "It is recommended to register a normal Mumble user account and grant it " | |
32654 | "admin or moderator rights. You can use the @code{mumble} client to login as " | |
32655 | "new normal user, register yourself, and log out. For the next step login " | |
32656 | "with the name @code{SuperUser} use the @code{SuperUser} password that you " | |
32657 | "set previously, and grant your newly registered mumble user administrator or " | |
32658 | "moderator rights and create some channels." | |
32659 | msgstr "" | |
32660 | ||
32661 | #. type: deftp | |
39764ef8 | 32662 | #: doc/guix.texi:14887 |
b9fe8fd6 JL |
32663 | msgid "Available @code{murmur-configuration} fields are:" |
32664 | msgstr "" | |
32665 | ||
32666 | #. type: item | |
39764ef8 | 32667 | #: doc/guix.texi:14889 |
b9fe8fd6 JL |
32668 | #, no-wrap |
32669 | msgid "@code{package} (default: @code{mumble})" | |
32670 | msgstr "" | |
32671 | ||
32672 | #. type: table | |
39764ef8 | 32673 | #: doc/guix.texi:14891 |
b9fe8fd6 JL |
32674 | msgid "Package that contains @code{bin/murmurd}." |
32675 | msgstr "" | |
32676 | ||
32677 | #. type: item | |
39764ef8 | 32678 | #: doc/guix.texi:14892 |
b9fe8fd6 JL |
32679 | #, no-wrap |
32680 | msgid "@code{user} (default: @code{\"murmur\"})" | |
32681 | msgstr "" | |
32682 | ||
32683 | #. type: table | |
39764ef8 | 32684 | #: doc/guix.texi:14894 |
b9fe8fd6 JL |
32685 | msgid "User who will run the Murmur server." |
32686 | msgstr "" | |
32687 | ||
32688 | #. type: item | |
39764ef8 | 32689 | #: doc/guix.texi:14895 |
b9fe8fd6 JL |
32690 | #, no-wrap |
32691 | msgid "@code{group} (default: @code{\"murmur\"})" | |
32692 | msgstr "" | |
32693 | ||
32694 | #. type: table | |
39764ef8 | 32695 | #: doc/guix.texi:14897 |
b9fe8fd6 JL |
32696 | msgid "Group of the user who will run the murmur server." |
32697 | msgstr "" | |
32698 | ||
32699 | #. type: item | |
39764ef8 | 32700 | #: doc/guix.texi:14898 |
b9fe8fd6 JL |
32701 | #, no-wrap |
32702 | msgid "@code{port} (default: @code{64738})" | |
32703 | msgstr "" | |
32704 | ||
32705 | #. type: table | |
39764ef8 | 32706 | #: doc/guix.texi:14900 |
b9fe8fd6 JL |
32707 | msgid "Port on which the server will listen." |
32708 | msgstr "" | |
32709 | ||
32710 | #. type: item | |
39764ef8 | 32711 | #: doc/guix.texi:14901 |
b9fe8fd6 JL |
32712 | #, no-wrap |
32713 | msgid "@code{welcome-text} (default: @code{\"\"})" | |
32714 | msgstr "" | |
32715 | ||
32716 | #. type: table | |
39764ef8 | 32717 | #: doc/guix.texi:14903 |
b9fe8fd6 JL |
32718 | msgid "Welcome text sent to clients when they connect." |
32719 | msgstr "" | |
32720 | ||
32721 | #. type: item | |
39764ef8 | 32722 | #: doc/guix.texi:14904 |
b9fe8fd6 JL |
32723 | #, no-wrap |
32724 | msgid "@code{server-password} (default: @code{\"\"})" | |
32725 | msgstr "" | |
32726 | ||
32727 | #. type: table | |
39764ef8 | 32728 | #: doc/guix.texi:14906 |
b9fe8fd6 JL |
32729 | msgid "Password the clients have to enter in order to connect." |
32730 | msgstr "" | |
32731 | ||
32732 | #. type: item | |
39764ef8 | 32733 | #: doc/guix.texi:14907 |
b9fe8fd6 JL |
32734 | #, no-wrap |
32735 | msgid "@code{max-users} (default: @code{100})" | |
32736 | msgstr "" | |
32737 | ||
32738 | #. type: table | |
39764ef8 | 32739 | #: doc/guix.texi:14909 |
b9fe8fd6 JL |
32740 | msgid "Maximum of users that can be connected to the server at once." |
32741 | msgstr "" | |
32742 | ||
32743 | #. type: item | |
39764ef8 | 32744 | #: doc/guix.texi:14910 |
b9fe8fd6 JL |
32745 | #, no-wrap |
32746 | msgid "@code{max-user-bandwidth} (default: @code{#f})" | |
32747 | msgstr "" | |
32748 | ||
32749 | #. type: table | |
39764ef8 | 32750 | #: doc/guix.texi:14912 |
b9fe8fd6 JL |
32751 | msgid "Maximum voice traffic a user can send per second." |
32752 | msgstr "" | |
32753 | ||
32754 | #. type: item | |
39764ef8 | 32755 | #: doc/guix.texi:14913 |
b9fe8fd6 JL |
32756 | #, no-wrap |
32757 | msgid "@code{database-file} (default: @code{\"/var/lib/murmur/db.sqlite\"})" | |
32758 | msgstr "" | |
32759 | ||
32760 | #. type: table | |
39764ef8 | 32761 | #: doc/guix.texi:14916 |
b9fe8fd6 JL |
32762 | msgid "" |
32763 | "File name of the sqlite database. The service's user will become the owner " | |
32764 | "of the directory." | |
32765 | msgstr "" | |
32766 | ||
32767 | #. type: item | |
39764ef8 | 32768 | #: doc/guix.texi:14917 |
b9fe8fd6 JL |
32769 | #, no-wrap |
32770 | msgid "@code{log-file} (default: @code{\"/var/log/murmur/murmur.log\"})" | |
32771 | msgstr "" | |
32772 | ||
32773 | #. type: table | |
39764ef8 | 32774 | #: doc/guix.texi:14920 |
b9fe8fd6 JL |
32775 | msgid "" |
32776 | "File name of the log file. The service's user will become the owner of the " | |
32777 | "directory." | |
32778 | msgstr "" | |
32779 | ||
32780 | #. type: item | |
39764ef8 | 32781 | #: doc/guix.texi:14921 |
b9fe8fd6 JL |
32782 | #, no-wrap |
32783 | msgid "@code{autoban-attempts} (default: @code{10})" | |
32784 | msgstr "" | |
32785 | ||
32786 | #. type: table | |
39764ef8 | 32787 | #: doc/guix.texi:14924 |
b9fe8fd6 JL |
32788 | msgid "" |
32789 | "Maximum number of logins a user can make in @code{autoban-timeframe} without " | |
32790 | "getting auto banned for @code{autoban-time}." | |
32791 | msgstr "" | |
32792 | ||
32793 | #. type: item | |
39764ef8 | 32794 | #: doc/guix.texi:14925 |
b9fe8fd6 JL |
32795 | #, no-wrap |
32796 | msgid "@code{autoban-timeframe} (default: @code{120})" | |
32797 | msgstr "" | |
32798 | ||
32799 | #. type: table | |
39764ef8 | 32800 | #: doc/guix.texi:14927 |
b9fe8fd6 JL |
32801 | msgid "Timeframe for autoban in seconds." |
32802 | msgstr "" | |
32803 | ||
32804 | #. type: item | |
39764ef8 | 32805 | #: doc/guix.texi:14928 |
b9fe8fd6 JL |
32806 | #, no-wrap |
32807 | msgid "@code{autoban-time} (default: @code{300})" | |
32808 | msgstr "" | |
32809 | ||
32810 | #. type: table | |
39764ef8 | 32811 | #: doc/guix.texi:14931 |
b9fe8fd6 JL |
32812 | msgid "" |
32813 | "Amount of time in seconds for which a client gets banned when violating the " | |
32814 | "autoban limits." | |
32815 | msgstr "" | |
32816 | ||
32817 | #. type: item | |
39764ef8 | 32818 | #: doc/guix.texi:14932 |
b9fe8fd6 JL |
32819 | #, no-wrap |
32820 | msgid "@code{opus-threshold} (default: @code{100})" | |
32821 | msgstr "" | |
32822 | ||
32823 | #. type: table | |
39764ef8 | 32824 | #: doc/guix.texi:14935 |
b9fe8fd6 JL |
32825 | msgid "" |
32826 | "Percentage of clients that need to support opus before switching over to " | |
32827 | "opus audio codec." | |
32828 | msgstr "" | |
32829 | ||
32830 | #. type: item | |
39764ef8 | 32831 | #: doc/guix.texi:14936 |
b9fe8fd6 JL |
32832 | #, no-wrap |
32833 | msgid "@code{channel-nesting-limit} (default: @code{10})" | |
32834 | msgstr "" | |
32835 | ||
32836 | #. type: table | |
39764ef8 | 32837 | #: doc/guix.texi:14938 |
b9fe8fd6 JL |
32838 | msgid "How deep channels can be nested at maximum." |
32839 | msgstr "" | |
32840 | ||
32841 | #. type: item | |
39764ef8 | 32842 | #: doc/guix.texi:14939 |
b9fe8fd6 JL |
32843 | #, no-wrap |
32844 | msgid "@code{channelname-regex} (default: @code{#f})" | |
32845 | msgstr "" | |
32846 | ||
32847 | #. type: table | |
39764ef8 | 32848 | #: doc/guix.texi:14941 |
b9fe8fd6 JL |
32849 | msgid "" |
32850 | "A string in from of a Qt regular expression that channel names must conform " | |
32851 | "to." | |
32852 | msgstr "" | |
32853 | ||
32854 | #. type: item | |
39764ef8 | 32855 | #: doc/guix.texi:14942 |
b9fe8fd6 JL |
32856 | #, no-wrap |
32857 | msgid "@code{username-regex} (default: @code{#f})" | |
32858 | msgstr "" | |
32859 | ||
32860 | #. type: table | |
39764ef8 JL |
32861 | #: doc/guix.texi:14944 |
32862 | msgid "" | |
32863 | "A string in from of a Qt regular expression that user names must conform to." | |
b9fe8fd6 JL |
32864 | msgstr "" |
32865 | ||
32866 | #. type: item | |
39764ef8 | 32867 | #: doc/guix.texi:14945 |
b9fe8fd6 JL |
32868 | #, no-wrap |
32869 | msgid "@code{text-message-length} (default: @code{5000})" | |
32870 | msgstr "" | |
32871 | ||
32872 | #. type: table | |
39764ef8 | 32873 | #: doc/guix.texi:14947 |
b9fe8fd6 JL |
32874 | msgid "Maximum size in bytes that a user can send in one text chat message." |
32875 | msgstr "" | |
32876 | ||
32877 | #. type: item | |
39764ef8 | 32878 | #: doc/guix.texi:14948 |
b9fe8fd6 JL |
32879 | #, no-wrap |
32880 | msgid "@code{image-message-length} (default: @code{(* 128 1024)})" | |
32881 | msgstr "" | |
32882 | ||
32883 | #. type: table | |
39764ef8 | 32884 | #: doc/guix.texi:14950 |
b9fe8fd6 JL |
32885 | msgid "Maximum size in bytes that a user can send in one image message." |
32886 | msgstr "" | |
32887 | ||
32888 | #. type: item | |
39764ef8 | 32889 | #: doc/guix.texi:14951 |
b9fe8fd6 JL |
32890 | #, no-wrap |
32891 | msgid "@code{cert-required?} (default: @code{#f})" | |
32892 | msgstr "" | |
32893 | ||
32894 | #. type: table | |
39764ef8 | 32895 | #: doc/guix.texi:14954 |
b9fe8fd6 JL |
32896 | msgid "" |
32897 | "If it is set to @code{#t} clients that use weak password authentification " | |
32898 | "will not be accepted. Users must have completed the certificate wizard to " | |
32899 | "join." | |
32900 | msgstr "" | |
32901 | ||
32902 | #. type: item | |
39764ef8 | 32903 | #: doc/guix.texi:14955 |
b9fe8fd6 JL |
32904 | #, no-wrap |
32905 | msgid "@code{remember-channel?} (defualt @code{#f})" | |
32906 | msgstr "" | |
32907 | ||
32908 | #. type: table | |
39764ef8 | 32909 | #: doc/guix.texi:14958 |
b9fe8fd6 JL |
32910 | msgid "" |
32911 | "Should murmur remember the last channel each user was in when they " | |
32912 | "disconnected and put them into the remembered channel when they rejoin." | |
32913 | msgstr "" | |
32914 | ||
32915 | #. type: item | |
39764ef8 | 32916 | #: doc/guix.texi:14959 |
b9fe8fd6 JL |
32917 | #, no-wrap |
32918 | msgid "@code{allow-html?} (default: @code{#f})" | |
32919 | msgstr "" | |
32920 | ||
32921 | #. type: table | |
39764ef8 | 32922 | #: doc/guix.texi:14961 |
b9fe8fd6 JL |
32923 | msgid "" |
32924 | "Should html be allowed in text messages, user comments, and channel " | |
32925 | "descriptions." | |
32926 | msgstr "" | |
32927 | ||
32928 | #. type: item | |
39764ef8 | 32929 | #: doc/guix.texi:14962 |
b9fe8fd6 JL |
32930 | #, no-wrap |
32931 | msgid "@code{allow-ping?} (default: @code{#f})" | |
32932 | msgstr "" | |
32933 | ||
32934 | #. type: table | |
39764ef8 | 32935 | #: doc/guix.texi:14966 |
b9fe8fd6 JL |
32936 | msgid "" |
32937 | "Setting to true exposes the current user count, the maximum user count, and " | |
32938 | "the server's maximum bandwidth per client to unauthenticated users. In the " | |
32939 | "Mumble client, this information is shown in the Connect dialog." | |
32940 | msgstr "" | |
32941 | ||
32942 | #. type: table | |
39764ef8 | 32943 | #: doc/guix.texi:14968 |
b9fe8fd6 JL |
32944 | msgid "Disabling this setting will prevent public listing of the server." |
32945 | msgstr "" | |
32946 | ||
32947 | #. type: item | |
39764ef8 | 32948 | #: doc/guix.texi:14969 |
b9fe8fd6 JL |
32949 | #, no-wrap |
32950 | msgid "@code{bonjour?} (default: @code{#f})" | |
32951 | msgstr "" | |
32952 | ||
32953 | #. type: table | |
39764ef8 | 32954 | #: doc/guix.texi:14971 |
b9fe8fd6 JL |
32955 | msgid "" |
32956 | "Should the server advertise itself in the local network through the bonjour " | |
32957 | "protocol." | |
32958 | msgstr "" | |
32959 | ||
32960 | #. type: item | |
39764ef8 | 32961 | #: doc/guix.texi:14972 |
b9fe8fd6 JL |
32962 | #, no-wrap |
32963 | msgid "@code{send-version?} (default: @code{#f})" | |
32964 | msgstr "" | |
32965 | ||
32966 | #. type: table | |
39764ef8 | 32967 | #: doc/guix.texi:14974 |
b9fe8fd6 JL |
32968 | msgid "Should the murmur server version be exposed in ping requests." |
32969 | msgstr "" | |
32970 | ||
32971 | #. type: item | |
39764ef8 | 32972 | #: doc/guix.texi:14975 |
b9fe8fd6 JL |
32973 | #, no-wrap |
32974 | msgid "@code{log-days} (default: @code{31})" | |
32975 | msgstr "" | |
32976 | ||
32977 | #. type: table | |
39764ef8 | 32978 | #: doc/guix.texi:14979 |
b9fe8fd6 JL |
32979 | msgid "" |
32980 | "Murmur also stores logs in the database, which are accessible via RPC. The " | |
32981 | "default is 31 days of months, but you can set this setting to 0 to keep logs " | |
32982 | "forever, or -1 to disable logging to the database." | |
32983 | msgstr "" | |
32984 | ||
32985 | #. type: item | |
39764ef8 | 32986 | #: doc/guix.texi:14980 |
b9fe8fd6 JL |
32987 | #, no-wrap |
32988 | msgid "@code{obfuscate-ips?} (default @code{#t})" | |
32989 | msgstr "" | |
32990 | ||
32991 | #. type: table | |
39764ef8 | 32992 | #: doc/guix.texi:14982 |
b9fe8fd6 JL |
32993 | msgid "Should logged ips be obfuscated to protect the privacy of users." |
32994 | msgstr "" | |
32995 | ||
32996 | #. type: item | |
39764ef8 | 32997 | #: doc/guix.texi:14983 |
b9fe8fd6 JL |
32998 | #, no-wrap |
32999 | msgid "@code{ssl-cert} (default: @code{#f})" | |
33000 | msgstr "" | |
33001 | ||
33002 | #. type: table | |
39764ef8 | 33003 | #: doc/guix.texi:14985 |
b9fe8fd6 JL |
33004 | msgid "File name of the SSL/TLS certificate used for encrypted connections." |
33005 | msgstr "" | |
33006 | ||
33007 | #. type: example | |
39764ef8 | 33008 | #: doc/guix.texi:14988 |
b9fe8fd6 JL |
33009 | #, no-wrap |
33010 | msgid "(ssl-cert \"/etc/letsencrypt/live/example.com/fullchain.pem\")\n" | |
33011 | msgstr "" | |
33012 | ||
33013 | #. type: item | |
39764ef8 | 33014 | #: doc/guix.texi:14989 |
b9fe8fd6 JL |
33015 | #, no-wrap |
33016 | msgid "@code{ssl-key} (default: @code{#f})" | |
33017 | msgstr "" | |
33018 | ||
33019 | #. type: table | |
39764ef8 | 33020 | #: doc/guix.texi:14991 |
b9fe8fd6 JL |
33021 | msgid "Filepath to the ssl private key used for encrypted connections." |
33022 | msgstr "" | |
33023 | ||
33024 | #. type: example | |
39764ef8 | 33025 | #: doc/guix.texi:14993 |
b9fe8fd6 JL |
33026 | #, no-wrap |
33027 | msgid "(ssl-key \"/etc/letsencrypt/live/example.com/privkey.pem\")\n" | |
33028 | msgstr "" | |
33029 | ||
33030 | #. type: item | |
39764ef8 | 33031 | #: doc/guix.texi:14995 |
b9fe8fd6 JL |
33032 | #, no-wrap |
33033 | msgid "@code{ssl-dh-params} (default: @code{#f})" | |
33034 | msgstr "" | |
33035 | ||
33036 | #. type: table | |
39764ef8 | 33037 | #: doc/guix.texi:15000 |
b9fe8fd6 | 33038 | msgid "" |
39764ef8 JL |
33039 | "File name of a PEM-encoded file with Diffie-Hellman parameters for the SSL/" |
33040 | "TLS encryption. Alternatively you set it to @code{\"@@ffdhe2048\"}, " | |
b9fe8fd6 JL |
33041 | "@code{\"@@ffdhe3072\"}, @code{\"@@ffdhe4096\"}, @code{\"@@ffdhe6144\"} or " |
33042 | "@code{\"@@ffdhe8192\"} to use bundled parameters from RFC 7919." | |
33043 | msgstr "" | |
33044 | ||
33045 | #. type: item | |
39764ef8 | 33046 | #: doc/guix.texi:15001 |
b9fe8fd6 JL |
33047 | #, no-wrap |
33048 | msgid "@code{ssl-ciphers} (default: @code{#f})" | |
33049 | msgstr "" | |
33050 | ||
33051 | #. type: table | |
39764ef8 | 33052 | #: doc/guix.texi:15004 |
b9fe8fd6 JL |
33053 | msgid "" |
33054 | "The @code{ssl-ciphers} option chooses the cipher suites to make available " | |
33055 | "for use in SSL/TLS." | |
33056 | msgstr "" | |
33057 | ||
33058 | #. type: table | |
39764ef8 | 33059 | #: doc/guix.texi:15008 |
b9fe8fd6 | 33060 | msgid "" |
39764ef8 JL |
33061 | "This option is specified using @uref{https://www.openssl.org/docs/apps/" |
33062 | "ciphers.html#CIPHER-LIST-FORMAT, OpenSSL cipher list notation}." | |
b9fe8fd6 JL |
33063 | msgstr "" |
33064 | ||
33065 | #. type: table | |
39764ef8 | 33066 | #: doc/guix.texi:15013 |
b9fe8fd6 JL |
33067 | msgid "" |
33068 | "It is recommended that you try your cipher string using 'openssl ciphers " | |
33069 | "<string>' before setting it here, to get a feel for which cipher suites you " | |
33070 | "will get. After setting this option, it is recommend that you inspect your " | |
33071 | "Murmur log to ensure that Murmur is using the cipher suites that you " | |
33072 | "expected it to." | |
33073 | msgstr "" | |
33074 | ||
33075 | #. type: table | |
39764ef8 | 33076 | #: doc/guix.texi:15017 |
b9fe8fd6 JL |
33077 | msgid "" |
33078 | "Note: Changing this option may impact the backwards compatibility of your " | |
33079 | "Murmur server, and can remove the ability for older Mumble clients to be " | |
33080 | "able to connect to it." | |
33081 | msgstr "" | |
33082 | ||
33083 | #. type: item | |
39764ef8 | 33084 | #: doc/guix.texi:15018 |
b9fe8fd6 JL |
33085 | #, no-wrap |
33086 | msgid "@code{public-registration} (default: @code{#f})" | |
33087 | msgstr "" | |
33088 | ||
33089 | #. type: table | |
39764ef8 | 33090 | #: doc/guix.texi:15020 |
b9fe8fd6 JL |
33091 | msgid "" |
33092 | "Must be a @code{<murmur-public-registration-configuration>} record or " | |
33093 | "@code{#f}." | |
33094 | msgstr "" | |
33095 | ||
33096 | #. type: table | |
39764ef8 | 33097 | #: doc/guix.texi:15025 |
b9fe8fd6 JL |
33098 | msgid "" |
33099 | "You can optionally register your server in the public server list that the " | |
33100 | "@code{mumble} client shows on startup. You cannot register your server if " | |
39764ef8 | 33101 | "you have set a @code{server-password}, or set @code{allow-ping} to @code{#f}." |
b9fe8fd6 JL |
33102 | msgstr "" |
33103 | ||
33104 | #. type: table | |
39764ef8 | 33105 | #: doc/guix.texi:15027 |
b9fe8fd6 JL |
33106 | msgid "It might take a few hours until it shows up in the public list." |
33107 | msgstr "" | |
33108 | ||
33109 | #. type: item | |
39764ef8 | 33110 | #: doc/guix.texi:15028 doc/guix.texi:15599 |
b9fe8fd6 JL |
33111 | #, no-wrap |
33112 | msgid "@code{file} (default: @code{#f})" | |
33113 | msgstr "" | |
33114 | ||
33115 | #. type: table | |
39764ef8 | 33116 | #: doc/guix.texi:15030 |
b9fe8fd6 JL |
33117 | msgid "Optional alternative override for this configuration." |
33118 | msgstr "" | |
33119 | ||
33120 | #. type: deftp | |
39764ef8 | 33121 | #: doc/guix.texi:15033 |
b9fe8fd6 JL |
33122 | #, no-wrap |
33123 | msgid "{Data Type} murmur-public-registration-configuration" | |
33124 | msgstr "" | |
33125 | ||
33126 | #. type: deftp | |
39764ef8 | 33127 | #: doc/guix.texi:15035 |
b9fe8fd6 JL |
33128 | msgid "Configuration for public registration of a murmur service." |
33129 | msgstr "" | |
33130 | ||
33131 | #. type: table | |
39764ef8 | 33132 | #: doc/guix.texi:15039 |
b9fe8fd6 | 33133 | msgid "" |
39764ef8 | 33134 | "This is a display name for your server. Not to be confused with the hostname." |
b9fe8fd6 JL |
33135 | msgstr "" |
33136 | ||
33137 | #. type: itemx | |
39764ef8 | 33138 | #: doc/guix.texi:15040 doc/guix.texi:19930 |
b9fe8fd6 JL |
33139 | #, no-wrap |
33140 | msgid "password" | |
33141 | msgstr "" | |
33142 | ||
33143 | #. type: table | |
39764ef8 | 33144 | #: doc/guix.texi:15043 |
b9fe8fd6 JL |
33145 | msgid "" |
33146 | "A password to identify your registration. Subsequent updates will need the " | |
33147 | "same password. Don't lose your password." | |
33148 | msgstr "" | |
33149 | ||
33150 | #. type: code{#1} | |
39764ef8 | 33151 | #: doc/guix.texi:15044 |
b9fe8fd6 JL |
33152 | #, no-wrap |
33153 | msgid "url" | |
33154 | msgstr "" | |
33155 | ||
33156 | #. type: table | |
39764ef8 JL |
33157 | #: doc/guix.texi:15047 |
33158 | msgid "" | |
33159 | "This should be a @code{http://} or @code{https://} link to your web site." | |
b9fe8fd6 JL |
33160 | msgstr "" |
33161 | ||
33162 | #. type: item | |
39764ef8 | 33163 | #: doc/guix.texi:15048 |
b9fe8fd6 JL |
33164 | #, no-wrap |
33165 | msgid "@code{hostname} (default: @code{#f})" | |
33166 | msgstr "" | |
33167 | ||
33168 | #. type: table | |
39764ef8 | 33169 | #: doc/guix.texi:15051 |
b9fe8fd6 JL |
33170 | msgid "" |
33171 | "By default your server will be listed by its IP address. If it is set your " | |
33172 | "server will be linked by this host name instead." | |
33173 | msgstr "" | |
33174 | ||
33175 | #. type: subsubheading | |
39764ef8 | 33176 | #: doc/guix.texi:15059 |
b9fe8fd6 JL |
33177 | #, no-wrap |
33178 | msgid "Tailon Service" | |
33179 | msgstr "" | |
33180 | ||
33181 | #. type: Plain text | |
39764ef8 | 33182 | #: doc/guix.texi:15063 |
b9fe8fd6 JL |
33183 | msgid "" |
33184 | "@uref{https://tailon.readthedocs.io/, Tailon} is a web application for " | |
33185 | "viewing and searching log files." | |
33186 | msgstr "" | |
33187 | ||
33188 | #. type: Plain text | |
39764ef8 | 33189 | #: doc/guix.texi:15066 |
b9fe8fd6 JL |
33190 | msgid "" |
33191 | "The following example will configure the service with default values. By " | |
33192 | "default, Tailon can be accessed on port 8080 (@code{http://localhost:8080})." | |
33193 | msgstr "" | |
33194 | ||
33195 | #. type: example | |
39764ef8 | 33196 | #: doc/guix.texi:15069 |
b9fe8fd6 JL |
33197 | #, no-wrap |
33198 | msgid "(service tailon-service-type)\n" | |
33199 | msgstr "" | |
33200 | ||
33201 | #. type: Plain text | |
39764ef8 | 33202 | #: doc/guix.texi:15073 |
b9fe8fd6 JL |
33203 | msgid "" |
33204 | "The following example customises more of the Tailon configuration, adding " | |
33205 | "@command{sed} to the list of allowed commands." | |
33206 | msgstr "" | |
33207 | ||
33208 | #. type: example | |
39764ef8 | 33209 | #: doc/guix.texi:15080 |
b9fe8fd6 JL |
33210 | #, no-wrap |
33211 | msgid "" | |
33212 | "(service tailon-service-type\n" | |
33213 | " (tailon-configuration\n" | |
33214 | " (config-file\n" | |
33215 | " (tailon-configuration-file\n" | |
33216 | " (allowed-commands '(\"tail\" \"grep\" \"awk\" \"sed\"))))))\n" | |
33217 | msgstr "" | |
33218 | ||
33219 | #. type: deftp | |
39764ef8 | 33220 | #: doc/guix.texi:15083 |
b9fe8fd6 JL |
33221 | #, no-wrap |
33222 | msgid "{Data Type} tailon-configuration" | |
33223 | msgstr "" | |
33224 | ||
33225 | #. type: deftp | |
39764ef8 | 33226 | #: doc/guix.texi:15086 |
b9fe8fd6 JL |
33227 | msgid "" |
33228 | "Data type representing the configuration of Tailon. This type has the " | |
33229 | "following parameters:" | |
33230 | msgstr "" | |
33231 | ||
33232 | #. type: item | |
39764ef8 | 33233 | #: doc/guix.texi:15088 |
b9fe8fd6 JL |
33234 | #, no-wrap |
33235 | msgid "@code{config-file} (default: @code{(tailon-configuration-file)})" | |
33236 | msgstr "" | |
33237 | ||
33238 | #. type: table | |
39764ef8 | 33239 | #: doc/guix.texi:15092 |
b9fe8fd6 | 33240 | msgid "" |
39764ef8 JL |
33241 | "The configuration file to use for Tailon. This can be set to a @dfn{tailon-" |
33242 | "configuration-file} record value, or any gexp (@pxref{G-Expressions})." | |
b9fe8fd6 JL |
33243 | msgstr "" |
33244 | ||
33245 | #. type: table | |
39764ef8 | 33246 | #: doc/guix.texi:15095 |
b9fe8fd6 JL |
33247 | msgid "" |
33248 | "For example, to instead use a local file, the @code{local-file} function can " | |
33249 | "be used:" | |
33250 | msgstr "" | |
33251 | ||
33252 | #. type: example | |
39764ef8 | 33253 | #: doc/guix.texi:15100 |
b9fe8fd6 JL |
33254 | #, no-wrap |
33255 | msgid "" | |
33256 | "(service tailon-service-type\n" | |
33257 | " (tailon-configuration\n" | |
33258 | " (config-file (local-file \"./my-tailon.conf\"))))\n" | |
33259 | msgstr "" | |
33260 | ||
33261 | #. type: item | |
39764ef8 | 33262 | #: doc/guix.texi:15102 |
b9fe8fd6 JL |
33263 | #, no-wrap |
33264 | msgid "@code{package} (default: @code{tailon})" | |
33265 | msgstr "" | |
33266 | ||
33267 | #. type: table | |
39764ef8 | 33268 | #: doc/guix.texi:15104 |
b9fe8fd6 JL |
33269 | msgid "The tailon package to use." |
33270 | msgstr "" | |
33271 | ||
33272 | #. type: deftp | |
39764ef8 | 33273 | #: doc/guix.texi:15108 |
b9fe8fd6 JL |
33274 | #, no-wrap |
33275 | msgid "{Data Type} tailon-configuration-file" | |
33276 | msgstr "" | |
33277 | ||
33278 | #. type: deftp | |
39764ef8 | 33279 | #: doc/guix.texi:15111 |
b9fe8fd6 JL |
33280 | msgid "" |
33281 | "Data type representing the configuration options for Tailon. This type has " | |
33282 | "the following parameters:" | |
33283 | msgstr "" | |
33284 | ||
33285 | #. type: item | |
39764ef8 | 33286 | #: doc/guix.texi:15113 |
b9fe8fd6 JL |
33287 | #, no-wrap |
33288 | msgid "@code{files} (default: @code{(list \"/var/log\")})" | |
33289 | msgstr "" | |
33290 | ||
33291 | #. type: table | |
39764ef8 | 33292 | #: doc/guix.texi:15118 |
b9fe8fd6 JL |
33293 | msgid "" |
33294 | "List of files to display. The list can include strings for a single file or " | |
33295 | "directory, or a list, where the first item is the name of a subsection, and " | |
33296 | "the remaining items are the files or directories in that subsection." | |
33297 | msgstr "" | |
33298 | ||
33299 | #. type: item | |
39764ef8 | 33300 | #: doc/guix.texi:15119 |
b9fe8fd6 JL |
33301 | #, no-wrap |
33302 | msgid "@code{bind} (default: @code{\"localhost:8080\"})" | |
33303 | msgstr "" | |
33304 | ||
33305 | #. type: table | |
39764ef8 | 33306 | #: doc/guix.texi:15121 |
b9fe8fd6 JL |
33307 | msgid "Address and port to which Tailon should bind on." |
33308 | msgstr "" | |
33309 | ||
33310 | #. type: item | |
39764ef8 | 33311 | #: doc/guix.texi:15122 |
b9fe8fd6 JL |
33312 | #, no-wrap |
33313 | msgid "@code{relative-root} (default: @code{#f})" | |
33314 | msgstr "" | |
33315 | ||
33316 | #. type: table | |
39764ef8 | 33317 | #: doc/guix.texi:15124 |
b9fe8fd6 JL |
33318 | msgid "URL path to use for Tailon, set to @code{#f} to not use a path." |
33319 | msgstr "" | |
33320 | ||
33321 | #. type: item | |
39764ef8 | 33322 | #: doc/guix.texi:15125 |
b9fe8fd6 JL |
33323 | #, no-wrap |
33324 | msgid "@code{allow-transfers?} (default: @code{#t})" | |
33325 | msgstr "" | |
33326 | ||
33327 | #. type: table | |
39764ef8 | 33328 | #: doc/guix.texi:15127 |
b9fe8fd6 JL |
33329 | msgid "Allow downloading the log files in the web interface." |
33330 | msgstr "" | |
33331 | ||
33332 | #. type: item | |
39764ef8 | 33333 | #: doc/guix.texi:15128 |
b9fe8fd6 JL |
33334 | #, no-wrap |
33335 | msgid "@code{follow-names?} (default: @code{#t})" | |
33336 | msgstr "" | |
33337 | ||
33338 | #. type: table | |
39764ef8 | 33339 | #: doc/guix.texi:15130 |
b9fe8fd6 JL |
33340 | msgid "Allow tailing of not-yet existent files." |
33341 | msgstr "" | |
33342 | ||
33343 | #. type: item | |
39764ef8 | 33344 | #: doc/guix.texi:15131 |
b9fe8fd6 JL |
33345 | #, no-wrap |
33346 | msgid "@code{tail-lines} (default: @code{200})" | |
33347 | msgstr "" | |
33348 | ||
33349 | #. type: table | |
39764ef8 | 33350 | #: doc/guix.texi:15133 |
b9fe8fd6 JL |
33351 | msgid "Number of lines to read initially from each file." |
33352 | msgstr "" | |
33353 | ||
33354 | #. type: item | |
39764ef8 | 33355 | #: doc/guix.texi:15134 |
b9fe8fd6 JL |
33356 | #, no-wrap |
33357 | msgid "@code{allowed-commands} (default: @code{(list \"tail\" \"grep\" \"awk\")})" | |
33358 | msgstr "" | |
33359 | ||
33360 | #. type: table | |
39764ef8 | 33361 | #: doc/guix.texi:15136 |
b9fe8fd6 JL |
33362 | msgid "Commands to allow running. By default, @code{sed} is disabled." |
33363 | msgstr "" | |
33364 | ||
33365 | #. type: item | |
39764ef8 | 33366 | #: doc/guix.texi:15137 |
b9fe8fd6 JL |
33367 | #, no-wrap |
33368 | msgid "@code{debug?} (default: @code{#f})" | |
33369 | msgstr "" | |
33370 | ||
33371 | #. type: table | |
39764ef8 | 33372 | #: doc/guix.texi:15139 |
b9fe8fd6 JL |
33373 | msgid "Set @code{debug?} to @code{#t} to show debug messages." |
33374 | msgstr "" | |
33375 | ||
33376 | #. type: item | |
39764ef8 | 33377 | #: doc/guix.texi:15140 |
b9fe8fd6 JL |
33378 | #, no-wrap |
33379 | msgid "@code{wrap-lines} (default: @code{#t})" | |
33380 | msgstr "" | |
33381 | ||
33382 | #. type: table | |
39764ef8 | 33383 | #: doc/guix.texi:15144 |
b9fe8fd6 JL |
33384 | msgid "" |
33385 | "Initial line wrapping state in the web interface. Set to @code{#t} to " | |
33386 | "initially wrap lines (the default), or to @code{#f} to initially not wrap " | |
33387 | "lines." | |
33388 | msgstr "" | |
33389 | ||
33390 | #. type: item | |
39764ef8 | 33391 | #: doc/guix.texi:15145 |
b9fe8fd6 JL |
33392 | #, no-wrap |
33393 | msgid "@code{http-auth} (default: @code{#f})" | |
33394 | msgstr "" | |
33395 | ||
33396 | #. type: table | |
39764ef8 | 33397 | #: doc/guix.texi:15149 |
b9fe8fd6 JL |
33398 | msgid "" |
33399 | "HTTP authentication type to use. Set to @code{#f} to disable authentication " | |
33400 | "(the default). Supported values are @code{\"digest\"} or @code{\"basic\"}." | |
33401 | msgstr "" | |
33402 | ||
33403 | #. type: item | |
39764ef8 | 33404 | #: doc/guix.texi:15150 |
b9fe8fd6 JL |
33405 | #, no-wrap |
33406 | msgid "@code{users} (default: @code{#f})" | |
33407 | msgstr "" | |
33408 | ||
33409 | #. type: table | |
39764ef8 | 33410 | #: doc/guix.texi:15155 |
b9fe8fd6 JL |
33411 | msgid "" |
33412 | "If HTTP authentication is enabled (see @code{http-auth}), access will be " | |
33413 | "restricted to the credentials provided here. To configure users, use a list " | |
33414 | "of pairs, where the first element of the pair is the username, and the 2nd " | |
33415 | "element of the pair is the password." | |
33416 | msgstr "" | |
33417 | ||
33418 | #. type: example | |
39764ef8 | 33419 | #: doc/guix.texi:15161 |
b9fe8fd6 JL |
33420 | #, no-wrap |
33421 | msgid "" | |
33422 | "(tailon-configuration-file\n" | |
33423 | " (http-auth \"basic\")\n" | |
33424 | " (users '((\"user1\" . \"password1\")\n" | |
33425 | " (\"user2\" . \"password2\"))))\n" | |
33426 | msgstr "" | |
33427 | ||
33428 | #. type: subsubheading | |
39764ef8 | 33429 | #: doc/guix.texi:15167 |
b9fe8fd6 JL |
33430 | #, no-wrap |
33431 | msgid "Darkstat Service" | |
33432 | msgstr "" | |
33433 | ||
33434 | #. type: cindex | |
39764ef8 | 33435 | #: doc/guix.texi:15168 |
b9fe8fd6 JL |
33436 | #, no-wrap |
33437 | msgid "darkstat" | |
33438 | msgstr "" | |
33439 | ||
33440 | #. type: Plain text | |
39764ef8 | 33441 | #: doc/guix.texi:15171 |
b9fe8fd6 JL |
33442 | msgid "" |
33443 | "Darkstat is a packet sniffer that captures network traffic, calculates " | |
33444 | "statistics about usage, and serves reports over HTTP." | |
33445 | msgstr "" | |
33446 | ||
33447 | #. type: defvar | |
39764ef8 | 33448 | #: doc/guix.texi:15172 |
b9fe8fd6 JL |
33449 | #, no-wrap |
33450 | msgid "{Scheme Variable} darkstat-service-type" | |
33451 | msgstr "" | |
33452 | ||
33453 | #. type: defvar | |
39764ef8 | 33454 | #: doc/guix.texi:15177 |
b9fe8fd6 JL |
33455 | msgid "" |
33456 | "This is the service type for the @uref{https://unix4lyfe.org/darkstat/, " | |
33457 | "darkstat} service, its value must be a @code{darkstat-configuration} record " | |
33458 | "as in this example:" | |
33459 | msgstr "" | |
33460 | ||
33461 | #. type: example | |
39764ef8 | 33462 | #: doc/guix.texi:15182 |
b9fe8fd6 JL |
33463 | #, no-wrap |
33464 | msgid "" | |
33465 | "(service darkstat-service-type\n" | |
33466 | " (darkstat-configuration\n" | |
33467 | " (interface \"eno1\")))\n" | |
33468 | msgstr "" | |
33469 | ||
33470 | #. type: deftp | |
39764ef8 | 33471 | #: doc/guix.texi:15185 |
b9fe8fd6 JL |
33472 | #, no-wrap |
33473 | msgid "{Data Type} darkstat-configuration" | |
33474 | msgstr "" | |
33475 | ||
33476 | #. type: deftp | |
39764ef8 | 33477 | #: doc/guix.texi:15187 |
b9fe8fd6 JL |
33478 | msgid "Data type representing the configuration of @command{darkstat}." |
33479 | msgstr "" | |
33480 | ||
33481 | #. type: item | |
39764ef8 | 33482 | #: doc/guix.texi:15189 |
b9fe8fd6 JL |
33483 | #, no-wrap |
33484 | msgid "@code{package} (default: @code{darkstat})" | |
33485 | msgstr "" | |
33486 | ||
33487 | #. type: table | |
39764ef8 | 33488 | #: doc/guix.texi:15191 |
b9fe8fd6 JL |
33489 | msgid "The darkstat package to use." |
33490 | msgstr "" | |
33491 | ||
33492 | #. type: code{#1} | |
39764ef8 | 33493 | #: doc/guix.texi:15192 |
b9fe8fd6 JL |
33494 | #, no-wrap |
33495 | msgid "interface" | |
33496 | msgstr "" | |
33497 | ||
33498 | #. type: table | |
39764ef8 | 33499 | #: doc/guix.texi:15194 |
b9fe8fd6 JL |
33500 | msgid "Capture traffic on the specified network interface." |
33501 | msgstr "" | |
33502 | ||
33503 | #. type: item | |
39764ef8 | 33504 | #: doc/guix.texi:15195 |
b9fe8fd6 JL |
33505 | #, no-wrap |
33506 | msgid "@code{port} (default: @code{\"667\"})" | |
33507 | msgstr "" | |
33508 | ||
33509 | #. type: table | |
39764ef8 | 33510 | #: doc/guix.texi:15197 |
b9fe8fd6 JL |
33511 | msgid "Bind the web interface to the specified port." |
33512 | msgstr "" | |
33513 | ||
33514 | #. type: item | |
39764ef8 | 33515 | #: doc/guix.texi:15198 |
b9fe8fd6 JL |
33516 | #, no-wrap |
33517 | msgid "@code{bind-address} (default: @code{\"127.0.0.1\"})" | |
33518 | msgstr "" | |
33519 | ||
33520 | #. type: table | |
39764ef8 | 33521 | #: doc/guix.texi:15200 |
b9fe8fd6 JL |
33522 | msgid "Bind the web interface to the specified address." |
33523 | msgstr "" | |
33524 | ||
33525 | #. type: item | |
39764ef8 | 33526 | #: doc/guix.texi:15201 |
b9fe8fd6 JL |
33527 | #, no-wrap |
33528 | msgid "@code{base} (default: @code{\"/\"})" | |
33529 | msgstr "" | |
33530 | ||
33531 | #. type: table | |
39764ef8 | 33532 | #: doc/guix.texi:15204 |
b9fe8fd6 JL |
33533 | msgid "" |
33534 | "Specify the path of the base URL. This can be useful if @command{darkstat} " | |
33535 | "is accessed via a reverse proxy." | |
33536 | msgstr "" | |
33537 | ||
33538 | #. type: cindex | |
39764ef8 | 33539 | #: doc/guix.texi:15211 |
b9fe8fd6 JL |
33540 | #, no-wrap |
33541 | msgid "Kerberos" | |
33542 | msgstr "" | |
33543 | ||
33544 | #. type: Plain text | |
39764ef8 | 33545 | #: doc/guix.texi:15215 |
b9fe8fd6 JL |
33546 | msgid "" |
33547 | "The @code{(gnu services kerberos)} module provides services relating to the " | |
33548 | "authentication protocol @dfn{Kerberos}." | |
33549 | msgstr "" | |
33550 | ||
33551 | #. type: subsubheading | |
39764ef8 | 33552 | #: doc/guix.texi:15216 |
b9fe8fd6 JL |
33553 | #, no-wrap |
33554 | msgid "Krb5 Service" | |
33555 | msgstr "" | |
33556 | ||
33557 | #. type: Plain text | |
39764ef8 | 33558 | #: doc/guix.texi:15223 |
b9fe8fd6 JL |
33559 | msgid "" |
33560 | "Programs using a Kerberos client library normally expect a configuration " | |
33561 | "file in @file{/etc/krb5.conf}. This service generates such a file from a " | |
33562 | "definition provided in the operating system declaration. It does not cause " | |
33563 | "any daemon to be started." | |
33564 | msgstr "" | |
33565 | ||
33566 | #. type: Plain text | |
39764ef8 | 33567 | #: doc/guix.texi:15227 |
b9fe8fd6 JL |
33568 | msgid "" |
33569 | "No ``keytab'' files are provided by this service---you must explicitly " | |
33570 | "create them. This service is known to work with the MIT client library, " | |
33571 | "@code{mit-krb5}. Other implementations have not been tested." | |
33572 | msgstr "" | |
33573 | ||
33574 | #. type: defvr | |
39764ef8 | 33575 | #: doc/guix.texi:15228 |
b9fe8fd6 JL |
33576 | #, no-wrap |
33577 | msgid "{Scheme Variable} krb5-service-type" | |
33578 | msgstr "" | |
33579 | ||
33580 | #. type: defvr | |
39764ef8 | 33581 | #: doc/guix.texi:15230 |
b9fe8fd6 JL |
33582 | msgid "A service type for Kerberos 5 clients." |
33583 | msgstr "" | |
33584 | ||
33585 | #. type: Plain text | |
39764ef8 | 33586 | #: doc/guix.texi:15234 |
b9fe8fd6 JL |
33587 | msgid "Here is an example of its use:" |
33588 | msgstr "" | |
33589 | ||
33590 | #. type: lisp | |
39764ef8 | 33591 | #: doc/guix.texi:15248 |
b9fe8fd6 JL |
33592 | #, no-wrap |
33593 | msgid "" | |
33594 | "(service krb5-service-type\n" | |
33595 | " (krb5-configuration\n" | |
33596 | " (default-realm \"EXAMPLE.COM\")\n" | |
33597 | " (allow-weak-crypto? #t)\n" | |
33598 | " (realms (list\n" | |
33599 | " (krb5-realm\n" | |
33600 | " (name \"EXAMPLE.COM\")\n" | |
33601 | " (admin-server \"groucho.example.com\")\n" | |
33602 | " (kdc \"karl.example.com\"))\n" | |
33603 | " (krb5-realm\n" | |
33604 | " (name \"ARGRX.EDU\")\n" | |
33605 | " (admin-server \"kerb-admin.argrx.edu\")\n" | |
33606 | " (kdc \"keys.argrx.edu\"))))))\n" | |
33607 | msgstr "" | |
33608 | ||
33609 | #. type: Plain text | |
39764ef8 | 33610 | #: doc/guix.texi:15252 |
b9fe8fd6 JL |
33611 | msgid "This example provides a Kerberos@tie{}5 client configuration which:" |
33612 | msgstr "" | |
33613 | ||
33614 | #. type: item | |
39764ef8 | 33615 | #: doc/guix.texi:15253 |
b9fe8fd6 JL |
33616 | #, no-wrap |
33617 | msgid "Recognizes two realms, @i{viz:} ``EXAMPLE.COM'' and ``ARGRX.EDU'', both" | |
33618 | msgstr "" | |
33619 | ||
33620 | #. type: itemize | |
39764ef8 JL |
33621 | #: doc/guix.texi:15255 |
33622 | msgid "" | |
33623 | "of which have distinct administration servers and key distribution centers;" | |
b9fe8fd6 JL |
33624 | msgstr "" |
33625 | ||
33626 | #. type: item | |
39764ef8 | 33627 | #: doc/guix.texi:15255 |
b9fe8fd6 JL |
33628 | #, no-wrap |
33629 | msgid "Will default to the realm ``EXAMPLE.COM'' if the realm is not explicitly" | |
33630 | msgstr "" | |
33631 | ||
33632 | #. type: itemize | |
39764ef8 | 33633 | #: doc/guix.texi:15257 |
b9fe8fd6 JL |
33634 | msgid "specified by clients;" |
33635 | msgstr "" | |
33636 | ||
33637 | #. type: item | |
39764ef8 | 33638 | #: doc/guix.texi:15257 |
b9fe8fd6 JL |
33639 | #, no-wrap |
33640 | msgid "Accepts services which only support encryption types known to be weak." | |
33641 | msgstr "" | |
33642 | ||
33643 | #. type: Plain text | |
39764ef8 | 33644 | #: doc/guix.texi:15265 |
b9fe8fd6 JL |
33645 | msgid "" |
33646 | "The @code{krb5-realm} and @code{krb5-configuration} types have many fields. " | |
33647 | "Only the most commonly used ones are described here. For a full list, and " | |
39764ef8 JL |
33648 | "more detailed explanation of each, see the MIT @uref{http://web.mit.edu/" |
33649 | "kerberos/krb5-devel/doc/admin/conf_files/krb5_conf.html,,krb5.conf} " | |
b9fe8fd6 JL |
33650 | "documentation." |
33651 | msgstr "" | |
33652 | ||
33653 | #. type: deftp | |
39764ef8 | 33654 | #: doc/guix.texi:15267 |
b9fe8fd6 JL |
33655 | #, no-wrap |
33656 | msgid "{Data Type} krb5-realm" | |
33657 | msgstr "" | |
33658 | ||
33659 | #. type: cindex | |
39764ef8 | 33660 | #: doc/guix.texi:15268 |
b9fe8fd6 JL |
33661 | #, no-wrap |
33662 | msgid "realm, kerberos" | |
33663 | msgstr "" | |
33664 | ||
33665 | #. type: table | |
39764ef8 | 33666 | #: doc/guix.texi:15274 |
b9fe8fd6 JL |
33667 | msgid "" |
33668 | "This field is a string identifying the name of the realm. A common " | |
33669 | "convention is to use the fully qualified DNS name of your organization, " | |
33670 | "converted to upper case." | |
33671 | msgstr "" | |
33672 | ||
33673 | #. type: code{#1} | |
39764ef8 | 33674 | #: doc/guix.texi:15275 |
b9fe8fd6 JL |
33675 | #, no-wrap |
33676 | msgid "admin-server" | |
33677 | msgstr "" | |
33678 | ||
33679 | #. type: table | |
39764ef8 | 33680 | #: doc/guix.texi:15278 |
b9fe8fd6 JL |
33681 | msgid "" |
33682 | "This field is a string identifying the host where the administration server " | |
33683 | "is running." | |
33684 | msgstr "" | |
33685 | ||
33686 | #. type: code{#1} | |
39764ef8 | 33687 | #: doc/guix.texi:15279 |
b9fe8fd6 JL |
33688 | #, no-wrap |
33689 | msgid "kdc" | |
33690 | msgstr "" | |
33691 | ||
33692 | #. type: table | |
39764ef8 | 33693 | #: doc/guix.texi:15282 |
b9fe8fd6 | 33694 | msgid "" |
39764ef8 | 33695 | "This field is a string identifying the key distribution center for the realm." |
b9fe8fd6 JL |
33696 | msgstr "" |
33697 | ||
33698 | #. type: deftp | |
39764ef8 | 33699 | #: doc/guix.texi:15285 |
b9fe8fd6 JL |
33700 | #, no-wrap |
33701 | msgid "{Data Type} krb5-configuration" | |
33702 | msgstr "" | |
33703 | ||
33704 | #. type: item | |
39764ef8 | 33705 | #: doc/guix.texi:15288 |
b9fe8fd6 JL |
33706 | #, no-wrap |
33707 | msgid "@code{allow-weak-crypto?} (default: @code{#f})" | |
33708 | msgstr "" | |
33709 | ||
33710 | #. type: table | |
39764ef8 | 33711 | #: doc/guix.texi:15291 |
b9fe8fd6 JL |
33712 | msgid "" |
33713 | "If this flag is @code{#t} then services which only offer encryption " | |
33714 | "algorithms known to be weak will be accepted." | |
33715 | msgstr "" | |
33716 | ||
33717 | #. type: item | |
39764ef8 | 33718 | #: doc/guix.texi:15292 |
b9fe8fd6 JL |
33719 | #, no-wrap |
33720 | msgid "@code{default-realm} (default: @code{#f})" | |
33721 | msgstr "" | |
33722 | ||
33723 | #. type: table | |
39764ef8 | 33724 | #: doc/guix.texi:15299 |
b9fe8fd6 JL |
33725 | msgid "" |
33726 | "This field should be a string identifying the default Kerberos realm for the " | |
33727 | "client. You should set this field to the name of your Kerberos realm. If " | |
33728 | "this value is @code{#f} then a realm must be specified with every Kerberos " | |
33729 | "principal when invoking programs such as @command{kinit}." | |
33730 | msgstr "" | |
33731 | ||
33732 | #. type: code{#1} | |
39764ef8 | 33733 | #: doc/guix.texi:15300 |
b9fe8fd6 JL |
33734 | #, no-wrap |
33735 | msgid "realms" | |
33736 | msgstr "" | |
33737 | ||
33738 | #. type: table | |
39764ef8 | 33739 | #: doc/guix.texi:15305 |
b9fe8fd6 JL |
33740 | msgid "" |
33741 | "This should be a non-empty list of @code{krb5-realm} objects, which clients " | |
33742 | "may access. Normally, one of them will have a @code{name} field matching " | |
33743 | "the @code{default-realm} field." | |
33744 | msgstr "" | |
33745 | ||
33746 | #. type: subsubheading | |
39764ef8 | 33747 | #: doc/guix.texi:15309 |
b9fe8fd6 JL |
33748 | #, no-wrap |
33749 | msgid "PAM krb5 Service" | |
33750 | msgstr "" | |
33751 | ||
33752 | #. type: cindex | |
39764ef8 | 33753 | #: doc/guix.texi:15310 |
b9fe8fd6 JL |
33754 | #, no-wrap |
33755 | msgid "pam-krb5" | |
33756 | msgstr "" | |
33757 | ||
33758 | #. type: Plain text | |
39764ef8 | 33759 | #: doc/guix.texi:15316 |
b9fe8fd6 JL |
33760 | msgid "" |
33761 | "The @code{pam-krb5} service allows for login authentication and password " | |
33762 | "management via Kerberos. You will need this service if you want PAM enabled " | |
33763 | "applications to authenticate users using Kerberos." | |
33764 | msgstr "" | |
33765 | ||
33766 | #. type: defvr | |
39764ef8 | 33767 | #: doc/guix.texi:15317 |
b9fe8fd6 JL |
33768 | #, no-wrap |
33769 | msgid "{Scheme Variable} pam-krb5-service-type" | |
33770 | msgstr "" | |
33771 | ||
33772 | #. type: defvr | |
39764ef8 | 33773 | #: doc/guix.texi:15319 |
b9fe8fd6 JL |
33774 | msgid "A service type for the Kerberos 5 PAM module." |
33775 | msgstr "" | |
33776 | ||
33777 | #. type: deftp | |
39764ef8 | 33778 | #: doc/guix.texi:15321 |
b9fe8fd6 JL |
33779 | #, no-wrap |
33780 | msgid "{Data Type} pam-krb5-configuration" | |
33781 | msgstr "" | |
33782 | ||
33783 | #. type: deftp | |
39764ef8 | 33784 | #: doc/guix.texi:15324 |
b9fe8fd6 JL |
33785 | msgid "" |
33786 | "Data type representing the configuration of the Kerberos 5 PAM module This " | |
33787 | "type has the following parameters:" | |
33788 | msgstr "" | |
33789 | ||
33790 | #. type: item | |
39764ef8 | 33791 | #: doc/guix.texi:15325 |
b9fe8fd6 JL |
33792 | #, no-wrap |
33793 | msgid "@code{pam-krb5} (default: @code{pam-krb5})" | |
33794 | msgstr "" | |
33795 | ||
33796 | #. type: table | |
39764ef8 | 33797 | #: doc/guix.texi:15327 |
b9fe8fd6 JL |
33798 | msgid "The pam-krb5 package to use." |
33799 | msgstr "" | |
33800 | ||
33801 | #. type: item | |
39764ef8 | 33802 | #: doc/guix.texi:15328 |
b9fe8fd6 JL |
33803 | #, no-wrap |
33804 | msgid "@code{minimum-uid} (default: @code{1000})" | |
33805 | msgstr "" | |
33806 | ||
33807 | #. type: table | |
39764ef8 | 33808 | #: doc/guix.texi:15331 |
b9fe8fd6 JL |
33809 | msgid "" |
33810 | "The smallest user ID for which Kerberos authentications should be " | |
33811 | "attempted. Local accounts with lower values will silently fail to " | |
33812 | "authenticate." | |
33813 | msgstr "" | |
33814 | ||
33815 | #. type: cindex | |
39764ef8 | 33816 | #: doc/guix.texi:15338 |
b9fe8fd6 JL |
33817 | #, no-wrap |
33818 | msgid "web" | |
33819 | msgstr "" | |
33820 | ||
33821 | #. type: cindex | |
39764ef8 | 33822 | #: doc/guix.texi:15339 |
b9fe8fd6 JL |
33823 | #, no-wrap |
33824 | msgid "www" | |
33825 | msgstr "" | |
33826 | ||
33827 | #. type: cindex | |
39764ef8 | 33828 | #: doc/guix.texi:15340 |
b9fe8fd6 JL |
33829 | #, no-wrap |
33830 | msgid "HTTP" | |
33831 | msgstr "" | |
33832 | ||
33833 | #. type: Plain text | |
39764ef8 | 33834 | #: doc/guix.texi:15343 |
b9fe8fd6 JL |
33835 | msgid "" |
33836 | "The @code{(gnu services web)} module provides the Apache HTTP Server, the " | |
33837 | "nginx web server, and also a fastcgi wrapper daemon." | |
33838 | msgstr "" | |
33839 | ||
33840 | #. type: subsubheading | |
39764ef8 | 33841 | #: doc/guix.texi:15344 |
b9fe8fd6 JL |
33842 | #, no-wrap |
33843 | msgid "Apache HTTP Server" | |
33844 | msgstr "" | |
33845 | ||
33846 | #. type: deffn | |
39764ef8 | 33847 | #: doc/guix.texi:15346 |
b9fe8fd6 JL |
33848 | #, no-wrap |
33849 | msgid "{Scheme Variable} httpd-service-type" | |
33850 | msgstr "" | |
33851 | ||
33852 | #. type: deffn | |
39764ef8 | 33853 | #: doc/guix.texi:15350 |
b9fe8fd6 JL |
33854 | msgid "" |
33855 | "Service type for the @uref{https://httpd.apache.org/,Apache HTTP} server " | |
39764ef8 JL |
33856 | "(@dfn{httpd}). The value for this service type is a @code{https-" |
33857 | "configuration} record." | |
b9fe8fd6 JL |
33858 | msgstr "" |
33859 | ||
33860 | #. type: deffn | |
39764ef8 | 33861 | #: doc/guix.texi:15352 doc/guix.texi:15503 |
b9fe8fd6 JL |
33862 | msgid "A simple example configuration is given below." |
33863 | msgstr "" | |
33864 | ||
33865 | #. type: example | |
39764ef8 | 33866 | #: doc/guix.texi:15360 |
b9fe8fd6 JL |
33867 | #, no-wrap |
33868 | msgid "" | |
33869 | "(service httpd-service-type\n" | |
33870 | " (httpd-configuration\n" | |
33871 | " (config\n" | |
33872 | " (httpd-config-file\n" | |
33873 | " (server-name \"www.example.com\")\n" | |
33874 | " (document-root \"/srv/http/www.example.com\")))))\n" | |
33875 | msgstr "" | |
33876 | ||
33877 | #. type: deffn | |
39764ef8 | 33878 | #: doc/guix.texi:15364 |
b9fe8fd6 JL |
33879 | msgid "" |
33880 | "Other services can also extend the @code{httpd-service-type} to add to the " | |
33881 | "configuration." | |
33882 | msgstr "" | |
33883 | ||
33884 | #. type: example | |
39764ef8 | 33885 | #: doc/guix.texi:15373 doc/guix.texi:15483 |
b9fe8fd6 JL |
33886 | #, no-wrap |
33887 | msgid "" | |
33888 | "(simple-service 'my-extra-server httpd-service-type\n" | |
33889 | " (list\n" | |
33890 | " (httpd-virtualhost\n" | |
33891 | " \"*:80\"\n" | |
33892 | " (list (string-append\n" | |
33893 | " \"ServerName \"www.example.com\n" | |
39764ef8 | 33894 | " DocumentRoot \\\"/srv/http/www.example.com\\\"\")))))\n" |
b9fe8fd6 JL |
33895 | msgstr "" |
33896 | ||
33897 | #. type: Plain text | |
39764ef8 | 33898 | #: doc/guix.texi:15379 |
b9fe8fd6 JL |
33899 | msgid "" |
33900 | "The details for the @code{httpd-configuration}, @code{httpd-module}, " | |
33901 | "@code{httpd-config-file} and @code{httpd-virtualhost} record types are given " | |
33902 | "below." | |
33903 | msgstr "" | |
33904 | ||
33905 | #. type: deffn | |
39764ef8 | 33906 | #: doc/guix.texi:15380 |
b9fe8fd6 JL |
33907 | #, no-wrap |
33908 | msgid "{Data Type} httpd-configuration" | |
33909 | msgstr "" | |
33910 | ||
33911 | #. type: deffn | |
39764ef8 | 33912 | #: doc/guix.texi:15382 |
b9fe8fd6 JL |
33913 | msgid "This data type represents the configuration for the httpd service." |
33914 | msgstr "" | |
33915 | ||
33916 | #. type: item | |
39764ef8 | 33917 | #: doc/guix.texi:15384 |
b9fe8fd6 JL |
33918 | #, no-wrap |
33919 | msgid "@code{package} (default: @code{httpd})" | |
33920 | msgstr "" | |
33921 | ||
33922 | #. type: table | |
39764ef8 | 33923 | #: doc/guix.texi:15386 |
b9fe8fd6 JL |
33924 | msgid "The httpd package to use." |
33925 | msgstr "" | |
33926 | ||
33927 | #. type: item | |
39764ef8 | 33928 | #: doc/guix.texi:15387 doc/guix.texi:15446 |
b9fe8fd6 JL |
33929 | #, no-wrap |
33930 | msgid "@code{pid-file} (default: @code{\"/var/run/httpd\"})" | |
33931 | msgstr "" | |
33932 | ||
33933 | #. type: table | |
39764ef8 | 33934 | #: doc/guix.texi:15389 |
b9fe8fd6 JL |
33935 | msgid "The pid file used by the shepherd-service." |
33936 | msgstr "" | |
33937 | ||
33938 | #. type: item | |
39764ef8 | 33939 | #: doc/guix.texi:15390 |
b9fe8fd6 JL |
33940 | #, no-wrap |
33941 | msgid "@code{config} (default: @code{(httpd-config-file)})" | |
33942 | msgstr "" | |
33943 | ||
33944 | #. type: table | |
39764ef8 | 33945 | #: doc/guix.texi:15395 |
b9fe8fd6 JL |
33946 | msgid "" |
33947 | "The configuration file to use with the httpd service. The default value is a " | |
39764ef8 JL |
33948 | "@code{httpd-config-file} record, but this can also be a different G-" |
33949 | "expression that generates a file, for example a @code{plain-file}. A file " | |
b9fe8fd6 JL |
33950 | "outside of the store can also be specified through a string." |
33951 | msgstr "" | |
33952 | ||
33953 | #. type: deffn | |
39764ef8 | 33954 | #: doc/guix.texi:15399 |
b9fe8fd6 JL |
33955 | #, no-wrap |
33956 | msgid "{Data Type} httpd-module" | |
33957 | msgstr "" | |
33958 | ||
33959 | #. type: deffn | |
39764ef8 | 33960 | #: doc/guix.texi:15401 |
b9fe8fd6 JL |
33961 | msgid "This data type represents a module for the httpd service." |
33962 | msgstr "" | |
33963 | ||
33964 | #. type: table | |
39764ef8 | 33965 | #: doc/guix.texi:15405 |
b9fe8fd6 JL |
33966 | msgid "The name of the module." |
33967 | msgstr "" | |
33968 | ||
33969 | #. type: table | |
39764ef8 | 33970 | #: doc/guix.texi:15411 |
b9fe8fd6 JL |
33971 | msgid "" |
33972 | "The file for the module. This can be relative to the httpd package being " | |
33973 | "used, the absolute location of a file, or a G-expression for a file within " | |
39764ef8 JL |
33974 | "the store, for example @code{(file-append mod-wsgi \"/modules/mod_wsgi.so" |
33975 | "\")}." | |
b9fe8fd6 JL |
33976 | msgstr "" |
33977 | ||
33978 | #. type: deffn | |
39764ef8 | 33979 | #: doc/guix.texi:15415 |
b9fe8fd6 JL |
33980 | #, no-wrap |
33981 | msgid "{Data Type} httpd-config-file" | |
33982 | msgstr "" | |
33983 | ||
33984 | #. type: deffn | |
39764ef8 | 33985 | #: doc/guix.texi:15417 |
b9fe8fd6 JL |
33986 | msgid "This data type represents a configuration file for the httpd service." |
33987 | msgstr "" | |
33988 | ||
33989 | #. type: item | |
39764ef8 | 33990 | #: doc/guix.texi:15419 |
b9fe8fd6 JL |
33991 | #, no-wrap |
33992 | msgid "@code{modules} (default: @code{%default-httpd-modules})" | |
33993 | msgstr "" | |
33994 | ||
33995 | #. type: table | |
39764ef8 | 33996 | #: doc/guix.texi:15422 |
b9fe8fd6 JL |
33997 | msgid "" |
33998 | "The modules to load. Additional modules can be added here, or loaded by " | |
33999 | "additional configuration." | |
34000 | msgstr "" | |
34001 | ||
34002 | #. type: item | |
39764ef8 | 34003 | #: doc/guix.texi:15423 |
b9fe8fd6 JL |
34004 | #, no-wrap |
34005 | msgid "@code{server-root} (default: @code{httpd})" | |
34006 | msgstr "" | |
34007 | ||
34008 | #. type: table | |
39764ef8 | 34009 | #: doc/guix.texi:15427 |
b9fe8fd6 JL |
34010 | msgid "" |
34011 | "The @code{ServerRoot} in the configuration file, defaults to the httpd " | |
34012 | "package. Directives including @code{Include} and @code{LoadModule} are taken " | |
34013 | "as relative to the server root." | |
34014 | msgstr "" | |
34015 | ||
34016 | #. type: item | |
39764ef8 | 34017 | #: doc/guix.texi:15428 |
b9fe8fd6 JL |
34018 | #, no-wrap |
34019 | msgid "@code{server-name} (default: @code{#f})" | |
34020 | msgstr "" | |
34021 | ||
34022 | #. type: table | |
39764ef8 | 34023 | #: doc/guix.texi:15432 |
b9fe8fd6 JL |
34024 | msgid "" |
34025 | "The @code{ServerName} in the configuration file, used to specify the request " | |
34026 | "scheme, hostname and port that the server uses to identify itself." | |
34027 | msgstr "" | |
34028 | ||
34029 | #. type: table | |
39764ef8 | 34030 | #: doc/guix.texi:15436 |
b9fe8fd6 JL |
34031 | msgid "" |
34032 | "This doesn't need to be set in the server config, and can be specifyed in " | |
34033 | "virtual hosts. The default is @code{#f} to not specify a @code{ServerName}." | |
34034 | msgstr "" | |
34035 | ||
34036 | #. type: item | |
39764ef8 | 34037 | #: doc/guix.texi:15437 |
b9fe8fd6 JL |
34038 | #, no-wrap |
34039 | msgid "@code{document-root} (default: @code{\"/srv/http\"})" | |
34040 | msgstr "" | |
34041 | ||
34042 | #. type: table | |
39764ef8 | 34043 | #: doc/guix.texi:15439 |
b9fe8fd6 JL |
34044 | msgid "The @code{DocumentRoot} from which files will be served." |
34045 | msgstr "" | |
34046 | ||
34047 | #. type: item | |
39764ef8 | 34048 | #: doc/guix.texi:15440 |
b9fe8fd6 JL |
34049 | #, no-wrap |
34050 | msgid "@code{listen} (default: @code{'(\"80\")})" | |
34051 | msgstr "" | |
34052 | ||
34053 | #. type: table | |
39764ef8 | 34054 | #: doc/guix.texi:15445 |
b9fe8fd6 JL |
34055 | msgid "" |
34056 | "The list of values for the @code{Listen} directives in the config file. The " | |
34057 | "value should be a list of strings, when each string can specify the port " | |
34058 | "number to listen on, and optionally the IP address and protocol to use." | |
34059 | msgstr "" | |
34060 | ||
34061 | #. type: table | |
39764ef8 | 34062 | #: doc/guix.texi:15450 |
b9fe8fd6 JL |
34063 | msgid "" |
34064 | "The @code{PidFile} to use. This should match the @code{pid-file} set in the " | |
34065 | "@code{httpd-configuration} so that the Shepherd service is configured " | |
34066 | "correctly." | |
34067 | msgstr "" | |
34068 | ||
34069 | #. type: item | |
39764ef8 | 34070 | #: doc/guix.texi:15451 |
b9fe8fd6 JL |
34071 | #, no-wrap |
34072 | msgid "@code{error-log} (default: @code{\"/var/log/httpd/error_log\"})" | |
34073 | msgstr "" | |
34074 | ||
34075 | #. type: table | |
39764ef8 | 34076 | #: doc/guix.texi:15453 |
b9fe8fd6 JL |
34077 | msgid "The @code{ErrorLog} to which the server will log errors." |
34078 | msgstr "" | |
34079 | ||
34080 | #. type: item | |
39764ef8 | 34081 | #: doc/guix.texi:15454 |
b9fe8fd6 JL |
34082 | #, no-wrap |
34083 | msgid "@code{user} (default: @code{\"httpd\"})" | |
34084 | msgstr "" | |
34085 | ||
34086 | #. type: table | |
39764ef8 | 34087 | #: doc/guix.texi:15456 |
b9fe8fd6 JL |
34088 | msgid "The @code{User} which the server will answer requests as." |
34089 | msgstr "" | |
34090 | ||
34091 | #. type: item | |
39764ef8 | 34092 | #: doc/guix.texi:15457 |
b9fe8fd6 JL |
34093 | #, no-wrap |
34094 | msgid "@code{group} (default: @code{\"httpd\"})" | |
34095 | msgstr "" | |
34096 | ||
34097 | #. type: table | |
39764ef8 | 34098 | #: doc/guix.texi:15459 |
b9fe8fd6 JL |
34099 | msgid "The @code{Group} which the server will answer requests as." |
34100 | msgstr "" | |
34101 | ||
34102 | #. type: item | |
39764ef8 | 34103 | #: doc/guix.texi:15460 |
b9fe8fd6 | 34104 | #, no-wrap |
39764ef8 | 34105 | msgid "@code{extra-config} (default: @code{(list \"TypesConfig etc/httpd/mime.types\")})" |
b9fe8fd6 JL |
34106 | msgstr "" |
34107 | ||
34108 | #. type: table | |
39764ef8 | 34109 | #: doc/guix.texi:15463 |
b9fe8fd6 JL |
34110 | msgid "" |
34111 | "A flat list of strings and G-expressions which will be added to the end of " | |
34112 | "the configuration file." | |
34113 | msgstr "" | |
34114 | ||
34115 | #. type: table | |
39764ef8 JL |
34116 | #: doc/guix.texi:15466 |
34117 | msgid "" | |
34118 | "Any values which the service is extended with will be appended to this list." | |
b9fe8fd6 JL |
34119 | msgstr "" |
34120 | ||
34121 | #. type: deffn | |
39764ef8 | 34122 | #: doc/guix.texi:15470 |
b9fe8fd6 JL |
34123 | #, no-wrap |
34124 | msgid "{Data Type} httpd-virtualhost" | |
34125 | msgstr "" | |
34126 | ||
34127 | #. type: deffn | |
39764ef8 | 34128 | #: doc/guix.texi:15472 |
b9fe8fd6 JL |
34129 | msgid "" |
34130 | "This data type represents a virtualhost configuration block for the httpd " | |
34131 | "service." | |
34132 | msgstr "" | |
34133 | ||
34134 | #. type: deffn | |
39764ef8 | 34135 | #: doc/guix.texi:15474 |
b9fe8fd6 JL |
34136 | msgid "These should be added to the extra-config for the httpd-service." |
34137 | msgstr "" | |
34138 | ||
34139 | #. type: code{#1} | |
39764ef8 | 34140 | #: doc/guix.texi:15486 |
b9fe8fd6 JL |
34141 | #, no-wrap |
34142 | msgid "addresses-and-ports" | |
34143 | msgstr "" | |
34144 | ||
34145 | #. type: table | |
39764ef8 | 34146 | #: doc/guix.texi:15488 |
b9fe8fd6 JL |
34147 | msgid "The addresses and ports for the @code{VirtualHost} directive." |
34148 | msgstr "" | |
34149 | ||
34150 | #. type: code{#1} | |
39764ef8 | 34151 | #: doc/guix.texi:15489 |
b9fe8fd6 JL |
34152 | #, no-wrap |
34153 | msgid "contents" | |
34154 | msgstr "" | |
34155 | ||
34156 | #. type: table | |
39764ef8 | 34157 | #: doc/guix.texi:15492 |
b9fe8fd6 JL |
34158 | msgid "" |
34159 | "The contents of the @code{VirtualHost} directive, this should be a list of " | |
34160 | "strings and G-expressions." | |
34161 | msgstr "" | |
34162 | ||
34163 | #. type: subsubheading | |
39764ef8 | 34164 | #: doc/guix.texi:15496 |
b9fe8fd6 JL |
34165 | #, no-wrap |
34166 | msgid "NGINX" | |
34167 | msgstr "" | |
34168 | ||
34169 | #. type: deffn | |
39764ef8 | 34170 | #: doc/guix.texi:15498 |
b9fe8fd6 JL |
34171 | #, no-wrap |
34172 | msgid "{Scheme Variable} nginx-service-type" | |
34173 | msgstr "" | |
34174 | ||
34175 | #. type: deffn | |
39764ef8 | 34176 | #: doc/guix.texi:15501 |
b9fe8fd6 JL |
34177 | msgid "" |
34178 | "Service type for the @uref{https://nginx.org/,NGinx} web server. The value " | |
34179 | "for this service type is a @code{<nginx-configuration>} record." | |
34180 | msgstr "" | |
34181 | ||
34182 | #. type: example | |
39764ef8 | 34183 | #: doc/guix.texi:15511 doc/guix.texi:15565 |
b9fe8fd6 JL |
34184 | #, no-wrap |
34185 | msgid "" | |
34186 | "(service nginx-service-type\n" | |
34187 | " (nginx-configuration\n" | |
34188 | " (server-blocks\n" | |
34189 | " (list (nginx-server-configuration\n" | |
34190 | " (server-name '(\"www.example.com\"))\n" | |
34191 | " (root \"/srv/http/www.example.com\"))))))\n" | |
34192 | msgstr "" | |
34193 | ||
34194 | #. type: deffn | |
39764ef8 | 34195 | #: doc/guix.texi:15516 |
b9fe8fd6 JL |
34196 | msgid "" |
34197 | "In addition to adding server blocks to the service configuration directly, " | |
34198 | "this service can be extended by other services to add server blocks, as in " | |
34199 | "this example:" | |
34200 | msgstr "" | |
34201 | ||
34202 | #. type: example | |
39764ef8 | 34203 | #: doc/guix.texi:15522 |
b9fe8fd6 JL |
34204 | #, no-wrap |
34205 | msgid "" | |
34206 | "(simple-service 'my-extra-server nginx-service-type\n" | |
34207 | " (list (nginx-server-configuration\n" | |
34208 | " (root \"/srv/http/extra-website\")\n" | |
34209 | " (try-files (list \"$uri\" \"$uri/index.html\")))))\n" | |
34210 | msgstr "" | |
34211 | ||
34212 | #. type: Plain text | |
39764ef8 | 34213 | #: doc/guix.texi:15533 |
b9fe8fd6 JL |
34214 | msgid "" |
34215 | "At startup, @command{nginx} has not yet read its configuration file, so it " | |
34216 | "uses a default file to log error messages. If it fails to load its " | |
34217 | "configuration file, that is where error messages are logged. After the " | |
34218 | "configuration file is loaded, the default error log file changes as per " | |
39764ef8 JL |
34219 | "configuration. In our case, startup error messages can be found in @file{/" |
34220 | "var/run/nginx/logs/error.log}, and after configuration in @file{/var/log/" | |
34221 | "nginx/error.log}. The second location can be changed with the @var{log-" | |
34222 | "directory} configuration option." | |
b9fe8fd6 JL |
34223 | msgstr "" |
34224 | ||
34225 | #. type: deffn | |
39764ef8 | 34226 | #: doc/guix.texi:15534 |
b9fe8fd6 JL |
34227 | #, no-wrap |
34228 | msgid "{Data Type} nginx-configuration" | |
34229 | msgstr "" | |
34230 | ||
34231 | #. type: deffn | |
39764ef8 | 34232 | #: doc/guix.texi:15538 |
b9fe8fd6 JL |
34233 | msgid "" |
34234 | "This data type represents the configuration for NGinx. Some configuration " | |
34235 | "can be done through this and the other provided record types, or " | |
34236 | "alternatively, a config file can be provided." | |
34237 | msgstr "" | |
34238 | ||
34239 | #. type: item | |
39764ef8 | 34240 | #: doc/guix.texi:15540 |
b9fe8fd6 JL |
34241 | #, no-wrap |
34242 | msgid "@code{nginx} (default: @code{nginx})" | |
34243 | msgstr "" | |
34244 | ||
34245 | #. type: table | |
39764ef8 | 34246 | #: doc/guix.texi:15542 |
b9fe8fd6 JL |
34247 | msgid "The nginx package to use." |
34248 | msgstr "" | |
34249 | ||
34250 | #. type: item | |
39764ef8 | 34251 | #: doc/guix.texi:15543 |
b9fe8fd6 JL |
34252 | #, no-wrap |
34253 | msgid "@code{log-directory} (default: @code{\"/var/log/nginx\"})" | |
34254 | msgstr "" | |
34255 | ||
34256 | #. type: table | |
39764ef8 | 34257 | #: doc/guix.texi:15545 |
b9fe8fd6 JL |
34258 | msgid "The directory to which NGinx will write log files." |
34259 | msgstr "" | |
34260 | ||
34261 | #. type: item | |
39764ef8 | 34262 | #: doc/guix.texi:15546 |
b9fe8fd6 JL |
34263 | #, no-wrap |
34264 | msgid "@code{run-directory} (default: @code{\"/var/run/nginx\"})" | |
34265 | msgstr "" | |
34266 | ||
34267 | #. type: table | |
39764ef8 | 34268 | #: doc/guix.texi:15549 |
b9fe8fd6 JL |
34269 | msgid "" |
34270 | "The directory in which NGinx will create a pid file, and write temporary " | |
34271 | "files." | |
34272 | msgstr "" | |
34273 | ||
34274 | #. type: item | |
39764ef8 | 34275 | #: doc/guix.texi:15550 |
b9fe8fd6 JL |
34276 | #, no-wrap |
34277 | msgid "@code{server-blocks} (default: @code{'()})" | |
34278 | msgstr "" | |
34279 | ||
34280 | #. type: table | |
39764ef8 | 34281 | #: doc/guix.texi:15554 |
b9fe8fd6 JL |
34282 | msgid "" |
34283 | "A list of @dfn{server blocks} to create in the generated configuration file, " | |
34284 | "the elements should be of type @code{<nginx-server-configuration>}." | |
34285 | msgstr "" | |
34286 | ||
34287 | #. type: table | |
39764ef8 | 34288 | #: doc/guix.texi:15558 |
b9fe8fd6 JL |
34289 | msgid "" |
34290 | "The following example would setup NGinx to serve @code{www.example.com} from " | |
34291 | "the @code{/srv/http/www.example.com} directory, without using HTTPS." | |
34292 | msgstr "" | |
34293 | ||
34294 | #. type: item | |
39764ef8 | 34295 | #: doc/guix.texi:15567 |
b9fe8fd6 JL |
34296 | #, no-wrap |
34297 | msgid "@code{upstream-blocks} (default: @code{'()})" | |
34298 | msgstr "" | |
34299 | ||
34300 | #. type: table | |
39764ef8 | 34301 | #: doc/guix.texi:15571 |
b9fe8fd6 JL |
34302 | msgid "" |
34303 | "A list of @dfn{upstream blocks} to create in the generated configuration " | |
34304 | "file, the elements should be of type @code{<nginx-upstream-configuration>}." | |
34305 | msgstr "" | |
34306 | ||
34307 | #. type: table | |
39764ef8 | 34308 | #: doc/guix.texi:15578 |
b9fe8fd6 JL |
34309 | msgid "" |
34310 | "Configuring upstreams through the @code{upstream-blocks} can be useful when " | |
34311 | "combined with @code{locations} in the @code{<nginx-server-configuration>} " | |
34312 | "records. The following example creates a server configuration with one " | |
34313 | "location configuration, that will proxy requests to a upstream " | |
34314 | "configuration, which will handle requests with two servers." | |
34315 | msgstr "" | |
34316 | ||
34317 | #. type: example | |
39764ef8 | 34318 | #: doc/guix.texi:15597 |
b9fe8fd6 JL |
34319 | #, no-wrap |
34320 | msgid "" | |
34321 | "(service\n" | |
34322 | " nginx-service-type\n" | |
34323 | " (nginx-configuration\n" | |
34324 | " (server-blocks\n" | |
34325 | " (list (nginx-server-configuration\n" | |
34326 | " (server-name '(\"www.example.com\"))\n" | |
34327 | " (root \"/srv/http/www.example.com\")\n" | |
34328 | " (locations\n" | |
34329 | " (list\n" | |
34330 | " (nginx-location-configuration\n" | |
34331 | " (uri \"/path1\")\n" | |
34332 | " (body '(\"proxy_pass http://server-proxy;\"))))))))\n" | |
34333 | " (upstream-blocks\n" | |
34334 | " (list (nginx-upstream-configuration\n" | |
34335 | " (name \"server-proxy\")\n" | |
34336 | " (servers (list \"server1.example.com\"\n" | |
34337 | " \"server2.example.com\")))))))\n" | |
34338 | msgstr "" | |
34339 | ||
34340 | #. type: table | |
39764ef8 | 34341 | #: doc/guix.texi:15605 |
b9fe8fd6 JL |
34342 | msgid "" |
34343 | "If a configuration @var{file} is provided, this will be used, rather than " | |
34344 | "generating a configuration file from the provided @code{log-directory}, " | |
34345 | "@code{run-directory}, @code{server-blocks} and @code{upstream-blocks}. For " | |
34346 | "proper operation, these arguments should match what is in @var{file} to " | |
34347 | "ensure that the directories are created when the service is activated." | |
34348 | msgstr "" | |
34349 | ||
34350 | #. type: table | |
39764ef8 | 34351 | #: doc/guix.texi:15609 |
b9fe8fd6 JL |
34352 | msgid "" |
34353 | "This can be useful if you have an existing configuration file, or it's not " | |
39764ef8 JL |
34354 | "possible to do what is required through the other parts of the nginx-" |
34355 | "configuration record." | |
b9fe8fd6 JL |
34356 | msgstr "" |
34357 | ||
34358 | #. type: item | |
39764ef8 | 34359 | #: doc/guix.texi:15610 |
b9fe8fd6 JL |
34360 | #, no-wrap |
34361 | msgid "@code{server-names-hash-bucket-size} (default: @code{#f})" | |
34362 | msgstr "" | |
34363 | ||
34364 | #. type: table | |
39764ef8 | 34365 | #: doc/guix.texi:15613 |
b9fe8fd6 JL |
34366 | msgid "" |
34367 | "Bucket size for the server names hash tables, defaults to @code{#f} to use " | |
34368 | "the size of the processors cache line." | |
34369 | msgstr "" | |
34370 | ||
34371 | #. type: item | |
39764ef8 | 34372 | #: doc/guix.texi:15614 |
b9fe8fd6 JL |
34373 | #, no-wrap |
34374 | msgid "@code{server-names-hash-bucket-max-size} (default: @code{#f})" | |
34375 | msgstr "" | |
34376 | ||
34377 | #. type: table | |
39764ef8 | 34378 | #: doc/guix.texi:15616 |
b9fe8fd6 JL |
34379 | msgid "Maximum bucket size for the server names hash tables." |
34380 | msgstr "" | |
34381 | ||
34382 | #. type: deftp | |
39764ef8 | 34383 | #: doc/guix.texi:15620 |
b9fe8fd6 JL |
34384 | #, no-wrap |
34385 | msgid "{Data Type} nginx-server-configuration" | |
34386 | msgstr "" | |
34387 | ||
34388 | #. type: deftp | |
39764ef8 | 34389 | #: doc/guix.texi:15623 |
b9fe8fd6 JL |
34390 | msgid "" |
34391 | "Data type representing the configuration of an nginx server block. This " | |
34392 | "type has the following parameters:" | |
34393 | msgstr "" | |
34394 | ||
34395 | #. type: item | |
39764ef8 | 34396 | #: doc/guix.texi:15625 |
b9fe8fd6 JL |
34397 | #, no-wrap |
34398 | msgid "@code{listen} (default: @code{'(\"80\" \"443 ssl\")})" | |
34399 | msgstr "" | |
34400 | ||
34401 | #. type: table | |
39764ef8 | 34402 | #: doc/guix.texi:15630 |
b9fe8fd6 JL |
34403 | msgid "" |
34404 | "Each @code{listen} directive sets the address and port for IP, or the path " | |
34405 | "for a UNIX-domain socket on which the server will accept requests. Both " | |
34406 | "address and port, or only address or only port can be specified. An address " | |
34407 | "may also be a hostname, for example:" | |
34408 | msgstr "" | |
34409 | ||
34410 | #. type: example | |
39764ef8 | 34411 | #: doc/guix.texi:15633 |
b9fe8fd6 JL |
34412 | #, no-wrap |
34413 | msgid "'(\"127.0.0.1:8000\" \"127.0.0.1\" \"8000\" \"*:8000\" \"localhost:8000\")\n" | |
34414 | msgstr "" | |
34415 | ||
34416 | #. type: item | |
39764ef8 | 34417 | #: doc/guix.texi:15635 |
b9fe8fd6 JL |
34418 | #, no-wrap |
34419 | msgid "@code{server-name} (default: @code{(list 'default)})" | |
34420 | msgstr "" | |
34421 | ||
34422 | #. type: table | |
39764ef8 | 34423 | #: doc/guix.texi:15638 |
b9fe8fd6 JL |
34424 | msgid "" |
34425 | "A list of server names this server represents. @code{'default} represents " | |
34426 | "the default server for connections matching no other server." | |
34427 | msgstr "" | |
34428 | ||
34429 | #. type: item | |
39764ef8 | 34430 | #: doc/guix.texi:15639 |
b9fe8fd6 JL |
34431 | #, no-wrap |
34432 | msgid "@code{root} (default: @code{\"/srv/http\"})" | |
34433 | msgstr "" | |
34434 | ||
34435 | #. type: table | |
39764ef8 | 34436 | #: doc/guix.texi:15641 |
b9fe8fd6 JL |
34437 | msgid "Root of the website nginx will serve." |
34438 | msgstr "" | |
34439 | ||
34440 | #. type: item | |
39764ef8 | 34441 | #: doc/guix.texi:15642 |
b9fe8fd6 JL |
34442 | #, no-wrap |
34443 | msgid "@code{locations} (default: @code{'()})" | |
34444 | msgstr "" | |
34445 | ||
34446 | #. type: table | |
39764ef8 | 34447 | #: doc/guix.texi:15646 |
b9fe8fd6 | 34448 | msgid "" |
39764ef8 JL |
34449 | "A list of @dfn{nginx-location-configuration} or @dfn{nginx-named-location-" |
34450 | "configuration} records to use within this server block." | |
b9fe8fd6 JL |
34451 | msgstr "" |
34452 | ||
34453 | #. type: item | |
39764ef8 | 34454 | #: doc/guix.texi:15647 |
b9fe8fd6 JL |
34455 | #, no-wrap |
34456 | msgid "@code{index} (default: @code{(list \"index.html\")})" | |
34457 | msgstr "" | |
34458 | ||
34459 | #. type: table | |
39764ef8 | 34460 | #: doc/guix.texi:15650 |
b9fe8fd6 JL |
34461 | msgid "" |
34462 | "Index files to look for when clients ask for a directory. If it cannot be " | |
34463 | "found, Nginx will send the list of files in the directory." | |
34464 | msgstr "" | |
34465 | ||
34466 | #. type: item | |
39764ef8 | 34467 | #: doc/guix.texi:15651 |
b9fe8fd6 JL |
34468 | #, no-wrap |
34469 | msgid "@code{try-files} (default: @code{'()})" | |
34470 | msgstr "" | |
34471 | ||
34472 | #. type: table | |
39764ef8 | 34473 | #: doc/guix.texi:15654 |
b9fe8fd6 JL |
34474 | msgid "" |
34475 | "A list of files whose existence is checked in the specified order. " | |
34476 | "@code{nginx} will use the first file it finds to process the request." | |
34477 | msgstr "" | |
34478 | ||
34479 | #. type: item | |
39764ef8 | 34480 | #: doc/guix.texi:15655 |
b9fe8fd6 JL |
34481 | #, no-wrap |
34482 | msgid "@code{ssl-certificate} (default: @code{#f})" | |
34483 | msgstr "" | |
34484 | ||
34485 | #. type: table | |
39764ef8 | 34486 | #: doc/guix.texi:15658 |
b9fe8fd6 JL |
34487 | msgid "" |
34488 | "Where to find the certificate for secure connections. Set it to @code{#f} " | |
34489 | "if you don't have a certificate or you don't want to use HTTPS." | |
34490 | msgstr "" | |
34491 | ||
34492 | #. type: item | |
39764ef8 | 34493 | #: doc/guix.texi:15659 |
b9fe8fd6 JL |
34494 | #, no-wrap |
34495 | msgid "@code{ssl-certificate-key} (default: @code{#f})" | |
34496 | msgstr "" | |
34497 | ||
34498 | #. type: table | |
39764ef8 | 34499 | #: doc/guix.texi:15662 |
b9fe8fd6 JL |
34500 | msgid "" |
34501 | "Where to find the private key for secure connections. Set it to @code{#f} " | |
34502 | "if you don't have a key or you don't want to use HTTPS." | |
34503 | msgstr "" | |
34504 | ||
34505 | #. type: item | |
39764ef8 | 34506 | #: doc/guix.texi:15663 |
b9fe8fd6 JL |
34507 | #, no-wrap |
34508 | msgid "@code{server-tokens?} (default: @code{#f})" | |
34509 | msgstr "" | |
34510 | ||
34511 | #. type: table | |
39764ef8 | 34512 | #: doc/guix.texi:15665 |
b9fe8fd6 JL |
34513 | msgid "Whether the server should add its configuration to response." |
34514 | msgstr "" | |
34515 | ||
34516 | #. type: item | |
39764ef8 | 34517 | #: doc/guix.texi:15666 |
b9fe8fd6 JL |
34518 | #, no-wrap |
34519 | msgid "@code{raw-content} (default: @code{'()})" | |
34520 | msgstr "" | |
34521 | ||
34522 | #. type: table | |
39764ef8 | 34523 | #: doc/guix.texi:15668 |
b9fe8fd6 JL |
34524 | msgid "A list of raw lines added to the server block." |
34525 | msgstr "" | |
34526 | ||
34527 | #. type: deftp | |
39764ef8 | 34528 | #: doc/guix.texi:15672 |
b9fe8fd6 JL |
34529 | #, no-wrap |
34530 | msgid "{Data Type} nginx-upstream-configuration" | |
34531 | msgstr "" | |
34532 | ||
34533 | #. type: deftp | |
39764ef8 | 34534 | #: doc/guix.texi:15675 |
b9fe8fd6 JL |
34535 | msgid "" |
34536 | "Data type representing the configuration of an nginx @code{upstream} block. " | |
34537 | "This type has the following parameters:" | |
34538 | msgstr "" | |
34539 | ||
34540 | #. type: table | |
39764ef8 | 34541 | #: doc/guix.texi:15679 |
b9fe8fd6 JL |
34542 | msgid "Name for this group of servers." |
34543 | msgstr "" | |
34544 | ||
34545 | #. type: code{#1} | |
39764ef8 | 34546 | #: doc/guix.texi:15680 |
b9fe8fd6 JL |
34547 | #, no-wrap |
34548 | msgid "servers" | |
34549 | msgstr "" | |
34550 | ||
34551 | #. type: table | |
39764ef8 | 34552 | #: doc/guix.texi:15687 |
b9fe8fd6 JL |
34553 | msgid "" |
34554 | "Specify the addresses of the servers in the group. The address can be " | |
39764ef8 JL |
34555 | "specified as a IP address (e.g. @samp{127.0.0.1}), domain name (e.g. " |
34556 | "@samp{backend1.example.com}) or a path to a UNIX socket using the prefix " | |
34557 | "@samp{unix:}. For addresses using an IP address or domain name, the default " | |
34558 | "port is 80, and a different port can be specified explicitly." | |
b9fe8fd6 JL |
34559 | msgstr "" |
34560 | ||
34561 | #. type: deftp | |
39764ef8 | 34562 | #: doc/guix.texi:15691 |
b9fe8fd6 JL |
34563 | #, no-wrap |
34564 | msgid "{Data Type} nginx-location-configuration" | |
34565 | msgstr "" | |
34566 | ||
34567 | #. type: deftp | |
39764ef8 | 34568 | #: doc/guix.texi:15694 |
b9fe8fd6 JL |
34569 | msgid "" |
34570 | "Data type representing the configuration of an nginx @code{location} block. " | |
34571 | "This type has the following parameters:" | |
34572 | msgstr "" | |
34573 | ||
34574 | #. type: table | |
39764ef8 | 34575 | #: doc/guix.texi:15698 |
b9fe8fd6 JL |
34576 | msgid "URI which this location block matches." |
34577 | msgstr "" | |
34578 | ||
34579 | #. type: anchor{#1} | |
39764ef8 | 34580 | #: doc/guix.texi:15700 |
b9fe8fd6 JL |
34581 | msgid "nginx-location-configuration body" |
34582 | msgstr "" | |
34583 | ||
34584 | #. type: code{#1} | |
39764ef8 | 34585 | #: doc/guix.texi:15700 doc/guix.texi:15721 |
b9fe8fd6 JL |
34586 | #, no-wrap |
34587 | msgid "body" | |
34588 | msgstr "" | |
34589 | ||
34590 | #. type: table | |
39764ef8 | 34591 | #: doc/guix.texi:15707 |
b9fe8fd6 JL |
34592 | msgid "" |
34593 | "Body of the location block, specified as a list of strings. This can contain " | |
34594 | "many configuration directives. For example, to pass requests to a upstream " | |
34595 | "server group defined using an @code{nginx-upstream-configuration} block, the " | |
34596 | "following directive would be specified in the body @samp{(list \"proxy_pass " | |
34597 | "http://upstream-name;\")}." | |
34598 | msgstr "" | |
34599 | ||
34600 | #. type: deftp | |
39764ef8 | 34601 | #: doc/guix.texi:15711 |
b9fe8fd6 JL |
34602 | #, no-wrap |
34603 | msgid "{Data Type} nginx-named-location-configuration" | |
34604 | msgstr "" | |
34605 | ||
34606 | #. type: deftp | |
39764ef8 | 34607 | #: doc/guix.texi:15716 |
b9fe8fd6 JL |
34608 | msgid "" |
34609 | "Data type representing the configuration of an nginx named location block. " | |
34610 | "Named location blocks are used for request redirection, and not used for " | |
34611 | "regular request processing. This type has the following parameters:" | |
34612 | msgstr "" | |
34613 | ||
34614 | #. type: table | |
39764ef8 | 34615 | #: doc/guix.texi:15720 |
b9fe8fd6 JL |
34616 | msgid "Name to identify this location block." |
34617 | msgstr "" | |
34618 | ||
34619 | #. type: table | |
39764ef8 | 34620 | #: doc/guix.texi:15726 |
b9fe8fd6 JL |
34621 | msgid "" |
34622 | "@xref{nginx-location-configuration body}, as the body for named location " | |
39764ef8 JL |
34623 | "blocks can be used in a similar way to the @code{nginx-location-" |
34624 | "configuration body}. One restriction is that the body of a named location " | |
34625 | "block cannot contain location blocks." | |
b9fe8fd6 JL |
34626 | msgstr "" |
34627 | ||
34628 | #. type: cindex | |
39764ef8 | 34629 | #: doc/guix.texi:15730 |
b9fe8fd6 JL |
34630 | #, no-wrap |
34631 | msgid "fastcgi" | |
34632 | msgstr "" | |
34633 | ||
34634 | #. type: cindex | |
39764ef8 | 34635 | #: doc/guix.texi:15731 |
b9fe8fd6 JL |
34636 | #, no-wrap |
34637 | msgid "fcgiwrap" | |
34638 | msgstr "" | |
34639 | ||
34640 | #. type: Plain text | |
39764ef8 | 34641 | #: doc/guix.texi:15738 |
b9fe8fd6 JL |
34642 | msgid "" |
34643 | "FastCGI is an interface between the front-end and the back-end of a web " | |
34644 | "service. It is a somewhat legacy facility; new web services should " | |
34645 | "generally just talk HTTP between the front-end and the back-end. However " | |
34646 | "there are a number of back-end services such as PHP or the optimized HTTP " | |
34647 | "Git repository access that use FastCGI, so we have support for it in Guix." | |
34648 | msgstr "" | |
34649 | ||
34650 | #. type: Plain text | |
39764ef8 | 34651 | #: doc/guix.texi:15745 |
b9fe8fd6 JL |
34652 | msgid "" |
34653 | "To use FastCGI, you configure the front-end web server (e.g., nginx) to " | |
34654 | "dispatch some subset of its requests to the fastcgi backend, which listens " | |
34655 | "on a local TCP or UNIX socket. There is an intermediary @code{fcgiwrap} " | |
34656 | "program that sits between the actual backend process and the web server. " | |
34657 | "The front-end indicates which backend program to run, passing that " | |
34658 | "information to the @code{fcgiwrap} process." | |
34659 | msgstr "" | |
34660 | ||
34661 | #. type: defvr | |
39764ef8 | 34662 | #: doc/guix.texi:15746 |
b9fe8fd6 JL |
34663 | #, no-wrap |
34664 | msgid "{Scheme Variable} fcgiwrap-service-type" | |
34665 | msgstr "" | |
34666 | ||
34667 | #. type: defvr | |
39764ef8 | 34668 | #: doc/guix.texi:15748 |
b9fe8fd6 JL |
34669 | msgid "A service type for the @code{fcgiwrap} FastCGI proxy." |
34670 | msgstr "" | |
34671 | ||
34672 | #. type: deftp | |
39764ef8 | 34673 | #: doc/guix.texi:15750 |
b9fe8fd6 JL |
34674 | #, no-wrap |
34675 | msgid "{Data Type} fcgiwrap-configuration" | |
34676 | msgstr "" | |
34677 | ||
34678 | #. type: deftp | |
39764ef8 | 34679 | #: doc/guix.texi:15753 |
b9fe8fd6 JL |
34680 | msgid "" |
34681 | "Data type representing the configuration of the @code{fcgiwrap} serice. " | |
34682 | "This type has the following parameters:" | |
34683 | msgstr "" | |
34684 | ||
34685 | #. type: item | |
39764ef8 | 34686 | #: doc/guix.texi:15754 |
b9fe8fd6 JL |
34687 | #, no-wrap |
34688 | msgid "@code{package} (default: @code{fcgiwrap})" | |
34689 | msgstr "" | |
34690 | ||
34691 | #. type: table | |
39764ef8 | 34692 | #: doc/guix.texi:15756 |
b9fe8fd6 JL |
34693 | msgid "The fcgiwrap package to use." |
34694 | msgstr "" | |
34695 | ||
34696 | #. type: item | |
39764ef8 | 34697 | #: doc/guix.texi:15757 |
b9fe8fd6 JL |
34698 | #, no-wrap |
34699 | msgid "@code{socket} (default: @code{tcp:127.0.0.1:9000})" | |
34700 | msgstr "" | |
34701 | ||
34702 | #. type: table | |
39764ef8 | 34703 | #: doc/guix.texi:15763 |
b9fe8fd6 JL |
34704 | msgid "" |
34705 | "The socket on which the @code{fcgiwrap} process should listen, as a string. " | |
34706 | "Valid @var{socket} values include @code{unix:@var{/path/to/unix/socket}}, " | |
39764ef8 JL |
34707 | "@code{tcp:@var{dot.ted.qu.ad}:@var{port}} and @code{tcp6:[@var{ipv6_addr}]:" |
34708 | "port}." | |
b9fe8fd6 JL |
34709 | msgstr "" |
34710 | ||
34711 | #. type: item | |
39764ef8 | 34712 | #: doc/guix.texi:15764 |
b9fe8fd6 JL |
34713 | #, no-wrap |
34714 | msgid "@code{user} (default: @code{fcgiwrap})" | |
34715 | msgstr "" | |
34716 | ||
34717 | #. type: itemx | |
39764ef8 | 34718 | #: doc/guix.texi:15765 |
b9fe8fd6 JL |
34719 | #, no-wrap |
34720 | msgid "@code{group} (default: @code{fcgiwrap})" | |
34721 | msgstr "" | |
34722 | ||
34723 | #. type: table | |
39764ef8 | 34724 | #: doc/guix.texi:15770 |
b9fe8fd6 JL |
34725 | msgid "" |
34726 | "The user and group names, as strings, under which to run the @code{fcgiwrap} " | |
34727 | "process. The @code{fastcgi} service will ensure that if the user asks for " | |
34728 | "the specific user or group names @code{fcgiwrap} that the corresponding user " | |
34729 | "and/or group is present on the system." | |
34730 | msgstr "" | |
34731 | ||
34732 | #. type: table | |
39764ef8 | 34733 | #: doc/guix.texi:15777 |
b9fe8fd6 JL |
34734 | msgid "" |
34735 | "It is possible to configure a FastCGI-backed web service to pass HTTP " | |
34736 | "authentication information from the front-end to the back-end, and to allow " | |
34737 | "@code{fcgiwrap} to run the back-end process as a corresponding local user. " | |
34738 | "To enable this capability on the back-end., run @code{fcgiwrap} as the " | |
34739 | "@code{root} user and group. Note that this capability also has to be " | |
34740 | "configured on the front-end as well." | |
34741 | msgstr "" | |
34742 | ||
34743 | #. type: cindex | |
39764ef8 | 34744 | #: doc/guix.texi:15780 |
b9fe8fd6 JL |
34745 | #, no-wrap |
34746 | msgid "php-fpm" | |
34747 | msgstr "" | |
34748 | ||
34749 | #. type: Plain text | |
39764ef8 | 34750 | #: doc/guix.texi:15783 |
b9fe8fd6 JL |
34751 | msgid "" |
34752 | "PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI " | |
34753 | "implementation with some additional features useful for sites of any size." | |
34754 | msgstr "" | |
34755 | ||
34756 | #. type: Plain text | |
39764ef8 | 34757 | #: doc/guix.texi:15785 |
b9fe8fd6 JL |
34758 | msgid "These features include:" |
34759 | msgstr "" | |
34760 | ||
34761 | #. type: item | |
39764ef8 | 34762 | #: doc/guix.texi:15786 |
b9fe8fd6 JL |
34763 | #, no-wrap |
34764 | msgid "Adaptive process spawning" | |
34765 | msgstr "" | |
34766 | ||
34767 | #. type: item | |
39764ef8 | 34768 | #: doc/guix.texi:15787 |
b9fe8fd6 JL |
34769 | #, no-wrap |
34770 | msgid "Basic statistics (similar to Apache's mod_status)" | |
34771 | msgstr "" | |
34772 | ||
34773 | #. type: item | |
39764ef8 | 34774 | #: doc/guix.texi:15788 |
b9fe8fd6 JL |
34775 | #, no-wrap |
34776 | msgid "Advanced process management with graceful stop/start" | |
34777 | msgstr "" | |
34778 | ||
34779 | #. type: item | |
39764ef8 | 34780 | #: doc/guix.texi:15789 |
b9fe8fd6 JL |
34781 | #, no-wrap |
34782 | msgid "Ability to start workers with different uid/gid/chroot/environment" | |
34783 | msgstr "" | |
34784 | ||
34785 | #. type: itemize | |
39764ef8 | 34786 | #: doc/guix.texi:15791 |
b9fe8fd6 JL |
34787 | msgid "and different php.ini (replaces safe_mode)" |
34788 | msgstr "" | |
34789 | ||
34790 | #. type: item | |
39764ef8 | 34791 | #: doc/guix.texi:15791 |
b9fe8fd6 JL |
34792 | #, no-wrap |
34793 | msgid "Stdout & stderr logging" | |
34794 | msgstr "" | |
34795 | ||
34796 | #. type: item | |
39764ef8 | 34797 | #: doc/guix.texi:15792 |
b9fe8fd6 JL |
34798 | #, no-wrap |
34799 | msgid "Emergency restart in case of accidental opcode cache destruction" | |
34800 | msgstr "" | |
34801 | ||
34802 | #. type: item | |
39764ef8 | 34803 | #: doc/guix.texi:15793 |
b9fe8fd6 JL |
34804 | #, no-wrap |
34805 | msgid "Accelerated upload support" | |
34806 | msgstr "" | |
34807 | ||
34808 | #. type: item | |
39764ef8 | 34809 | #: doc/guix.texi:15794 |
b9fe8fd6 JL |
34810 | #, no-wrap |
34811 | msgid "Support for a \"slowlog\"" | |
34812 | msgstr "" | |
34813 | ||
34814 | #. type: item | |
39764ef8 | 34815 | #: doc/guix.texi:15795 |
b9fe8fd6 JL |
34816 | #, no-wrap |
34817 | msgid "Enhancements to FastCGI, such as fastcgi_finish_request() -" | |
34818 | msgstr "" | |
34819 | ||
34820 | #. type: itemize | |
39764ef8 | 34821 | #: doc/guix.texi:15798 |
b9fe8fd6 JL |
34822 | msgid "" |
34823 | "a special function to finish request & flush all data while continuing to do " | |
34824 | "something time-consuming (video converting, stats processing, etc.)" | |
34825 | msgstr "" | |
34826 | ||
34827 | #. type: Plain text | |
39764ef8 | 34828 | #: doc/guix.texi:15800 |
b9fe8fd6 JL |
34829 | msgid "... and much more." |
34830 | msgstr "" | |
34831 | ||
34832 | #. type: defvr | |
39764ef8 | 34833 | #: doc/guix.texi:15801 |
b9fe8fd6 JL |
34834 | #, no-wrap |
34835 | msgid "{Scheme Variable} php-fpm-service-type" | |
34836 | msgstr "" | |
34837 | ||
34838 | #. type: defvr | |
39764ef8 | 34839 | #: doc/guix.texi:15803 |
b9fe8fd6 JL |
34840 | msgid "A Service type for @code{php-fpm}." |
34841 | msgstr "" | |
34842 | ||
34843 | #. type: deftp | |
39764ef8 | 34844 | #: doc/guix.texi:15805 |
b9fe8fd6 JL |
34845 | #, no-wrap |
34846 | msgid "{Data Type} php-fpm-configuration" | |
34847 | msgstr "" | |
34848 | ||
34849 | #. type: deftp | |
39764ef8 | 34850 | #: doc/guix.texi:15807 |
b9fe8fd6 JL |
34851 | msgid "Data Type for php-fpm service configuration." |
34852 | msgstr "" | |
34853 | ||
34854 | #. type: item | |
39764ef8 | 34855 | #: doc/guix.texi:15808 |
b9fe8fd6 JL |
34856 | #, no-wrap |
34857 | msgid "@code{php} (default: @code{php})" | |
34858 | msgstr "" | |
34859 | ||
34860 | #. type: table | |
39764ef8 | 34861 | #: doc/guix.texi:15810 |
b9fe8fd6 JL |
34862 | msgid "The php package to use." |
34863 | msgstr "" | |
34864 | ||
34865 | #. type: item | |
39764ef8 | 34866 | #: doc/guix.texi:15810 |
b9fe8fd6 | 34867 | #, no-wrap |
39764ef8 | 34868 | msgid "@code{socket} (default: @code{(string-append \"/var/run/php\" (version-major (package-version php)) \"-fpm.sock\")})" |
b9fe8fd6 JL |
34869 | msgstr "" |
34870 | ||
34871 | #. type: table | |
39764ef8 | 34872 | #: doc/guix.texi:15812 |
b9fe8fd6 JL |
34873 | msgid "The address on which to accept FastCGI requests. Valid syntaxes are:" |
34874 | msgstr "" | |
34875 | ||
34876 | #. type: code{#1} | |
39764ef8 | 34877 | #: doc/guix.texi:15813 |
b9fe8fd6 JL |
34878 | #, no-wrap |
34879 | msgid "\"ip.add.re.ss:port\"" | |
34880 | msgstr "" | |
34881 | ||
34882 | #. type: table | |
39764ef8 | 34883 | #: doc/guix.texi:15815 |
b9fe8fd6 JL |
34884 | msgid "Listen on a TCP socket to a specific address on a specific port." |
34885 | msgstr "" | |
34886 | ||
34887 | #. type: code{#1} | |
39764ef8 | 34888 | #: doc/guix.texi:15815 |
b9fe8fd6 JL |
34889 | #, no-wrap |
34890 | msgid "\"port\"" | |
34891 | msgstr "" | |
34892 | ||
34893 | #. type: table | |
39764ef8 | 34894 | #: doc/guix.texi:15817 |
b9fe8fd6 JL |
34895 | msgid "Listen on a TCP socket to all addresses on a specific port." |
34896 | msgstr "" | |
34897 | ||
34898 | #. type: code{#1} | |
39764ef8 | 34899 | #: doc/guix.texi:15817 |
b9fe8fd6 JL |
34900 | #, no-wrap |
34901 | msgid "\"/path/to/unix/socket\"" | |
34902 | msgstr "" | |
34903 | ||
34904 | #. type: table | |
39764ef8 | 34905 | #: doc/guix.texi:15819 |
b9fe8fd6 JL |
34906 | msgid "Listen on a unix socket." |
34907 | msgstr "" | |
34908 | ||
34909 | #. type: item | |
39764ef8 | 34910 | #: doc/guix.texi:15821 |
b9fe8fd6 JL |
34911 | #, no-wrap |
34912 | msgid "@code{user} (default: @code{php-fpm})" | |
34913 | msgstr "" | |
34914 | ||
34915 | #. type: table | |
39764ef8 | 34916 | #: doc/guix.texi:15823 |
b9fe8fd6 JL |
34917 | msgid "User who will own the php worker processes." |
34918 | msgstr "" | |
34919 | ||
34920 | #. type: item | |
39764ef8 | 34921 | #: doc/guix.texi:15823 |
b9fe8fd6 JL |
34922 | #, no-wrap |
34923 | msgid "@code{group} (default: @code{php-fpm})" | |
34924 | msgstr "" | |
34925 | ||
34926 | #. type: table | |
39764ef8 | 34927 | #: doc/guix.texi:15825 |
b9fe8fd6 JL |
34928 | msgid "Group of the worker processes." |
34929 | msgstr "" | |
34930 | ||
34931 | #. type: item | |
39764ef8 | 34932 | #: doc/guix.texi:15825 |
b9fe8fd6 JL |
34933 | #, no-wrap |
34934 | msgid "@code{socket-user} (default: @code{php-fpm})" | |
34935 | msgstr "" | |
34936 | ||
34937 | #. type: table | |
39764ef8 | 34938 | #: doc/guix.texi:15827 |
b9fe8fd6 JL |
34939 | msgid "User who can speak to the php-fpm socket." |
34940 | msgstr "" | |
34941 | ||
34942 | #. type: item | |
39764ef8 | 34943 | #: doc/guix.texi:15827 |
b9fe8fd6 JL |
34944 | #, no-wrap |
34945 | msgid "@code{socket-group} (default: @code{php-fpm})" | |
34946 | msgstr "" | |
34947 | ||
34948 | #. type: table | |
39764ef8 | 34949 | #: doc/guix.texi:15829 |
b9fe8fd6 JL |
34950 | msgid "Group that can speak to the php-fpm socket." |
34951 | msgstr "" | |
34952 | ||
34953 | #. type: item | |
39764ef8 | 34954 | #: doc/guix.texi:15829 |
b9fe8fd6 | 34955 | #, no-wrap |
39764ef8 | 34956 | msgid "@code{pid-file} (default: @code{(string-append \"/var/run/php\" (version-major (package-version php)) \"-fpm.pid\")})" |
b9fe8fd6 JL |
34957 | msgstr "" |
34958 | ||
34959 | #. type: table | |
39764ef8 | 34960 | #: doc/guix.texi:15832 |
b9fe8fd6 JL |
34961 | msgid "" |
34962 | "The process id of the php-fpm process is written to this file once the " | |
34963 | "service has started." | |
34964 | msgstr "" | |
34965 | ||
34966 | #. type: item | |
39764ef8 | 34967 | #: doc/guix.texi:15832 |
b9fe8fd6 | 34968 | #, no-wrap |
39764ef8 | 34969 | msgid "@code{log-file} (default: @code{(string-append \"/var/log/php\" (version-major (package-version php)) \"-fpm.log\")})" |
b9fe8fd6 JL |
34970 | msgstr "" |
34971 | ||
34972 | #. type: table | |
39764ef8 | 34973 | #: doc/guix.texi:15834 |
b9fe8fd6 JL |
34974 | msgid "Log for the php-fpm master process." |
34975 | msgstr "" | |
34976 | ||
34977 | #. type: item | |
39764ef8 | 34978 | #: doc/guix.texi:15834 |
b9fe8fd6 | 34979 | #, no-wrap |
39764ef8 | 34980 | msgid "@code{process-manager} (default: @code{(php-fpm-dynamic-process-manager-configuration)})" |
b9fe8fd6 JL |
34981 | msgstr "" |
34982 | ||
34983 | #. type: table | |
39764ef8 | 34984 | #: doc/guix.texi:15837 |
b9fe8fd6 JL |
34985 | msgid "Detailed settings for the php-fpm process manager. Must be either:" |
34986 | msgstr "" | |
34987 | ||
34988 | #. type: code{#1} | |
39764ef8 | 34989 | #: doc/guix.texi:15838 |
b9fe8fd6 JL |
34990 | #, no-wrap |
34991 | msgid "<php-fpm-dynamic-process-manager-configuration>" | |
34992 | msgstr "" | |
34993 | ||
34994 | #. type: code{#1} | |
39764ef8 | 34995 | #: doc/guix.texi:15839 |
b9fe8fd6 JL |
34996 | #, no-wrap |
34997 | msgid "<php-fpm-static-process-manager-configuration>" | |
34998 | msgstr "" | |
34999 | ||
35000 | #. type: code{#1} | |
39764ef8 | 35001 | #: doc/guix.texi:15840 |
b9fe8fd6 JL |
35002 | #, no-wrap |
35003 | msgid "<php-fpm-on-demand-process-manager-configuration>" | |
35004 | msgstr "" | |
35005 | ||
35006 | #. type: item | |
39764ef8 | 35007 | #: doc/guix.texi:15842 |
b9fe8fd6 JL |
35008 | #, no-wrap |
35009 | msgid "@code{display-errors} (default @code{#f})" | |
35010 | msgstr "" | |
35011 | ||
35012 | #. type: table | |
39764ef8 | 35013 | #: doc/guix.texi:15847 |
b9fe8fd6 JL |
35014 | msgid "" |
35015 | "Determines whether php errors and warning should be sent to clients and " | |
35016 | "displayed in their browsers. This is useful for local php development, but " | |
35017 | "a security risk for public sites, as error messages can reveal passwords and " | |
35018 | "personal data." | |
35019 | msgstr "" | |
35020 | ||
35021 | #. type: item | |
39764ef8 | 35022 | #: doc/guix.texi:15847 |
b9fe8fd6 | 35023 | #, no-wrap |
39764ef8 | 35024 | msgid "@code{workers-logfile} (default @code{(string-append \"/var/log/php\" (version-major (package-version php)) \"-fpm.www.log\")})" |
b9fe8fd6 JL |
35025 | msgstr "" |
35026 | ||
35027 | #. type: table | |
39764ef8 | 35028 | #: doc/guix.texi:15850 |
b9fe8fd6 JL |
35029 | msgid "" |
35030 | "This file will log the @code{stderr} outputs of php worker processes. Can " | |
35031 | "be set to @code{#f} to disable logging." | |
35032 | msgstr "" | |
35033 | ||
35034 | #. type: item | |
39764ef8 | 35035 | #: doc/guix.texi:15850 |
b9fe8fd6 JL |
35036 | #, no-wrap |
35037 | msgid "@code{file} (default @code{#f})" | |
35038 | msgstr "" | |
35039 | ||
35040 | #. type: table | |
39764ef8 | 35041 | #: doc/guix.texi:15853 |
b9fe8fd6 JL |
35042 | msgid "" |
35043 | "An optional override of the whole configuration. You can use the " | |
35044 | "@code{mixed-text-file} function or an absolute filepath for it." | |
35045 | msgstr "" | |
35046 | ||
35047 | #. type: deftp | |
39764ef8 | 35048 | #: doc/guix.texi:15856 |
b9fe8fd6 JL |
35049 | #, no-wrap |
35050 | msgid "{Data type} php-fpm-dynamic-process-manager-configuration" | |
35051 | msgstr "" | |
35052 | ||
35053 | #. type: deftp | |
39764ef8 | 35054 | #: doc/guix.texi:15860 |
b9fe8fd6 JL |
35055 | msgid "" |
35056 | "Data Type for the @code{dynamic} php-fpm process manager. With the " | |
35057 | "@code{dynamic} process manager, spare worker processes are kept around based " | |
35058 | "on it's configured limits." | |
35059 | msgstr "" | |
35060 | ||
35061 | #. type: item | |
39764ef8 | 35062 | #: doc/guix.texi:15861 doc/guix.texi:15877 doc/guix.texi:15887 |
b9fe8fd6 JL |
35063 | #, no-wrap |
35064 | msgid "@code{max-children} (default: @code{5})" | |
35065 | msgstr "" | |
35066 | ||
35067 | #. type: table | |
39764ef8 | 35068 | #: doc/guix.texi:15863 doc/guix.texi:15879 doc/guix.texi:15889 |
b9fe8fd6 JL |
35069 | msgid "Maximum of worker processes." |
35070 | msgstr "" | |
35071 | ||
35072 | #. type: item | |
39764ef8 | 35073 | #: doc/guix.texi:15863 |
b9fe8fd6 JL |
35074 | #, no-wrap |
35075 | msgid "@code{start-servers} (default: @code{2})" | |
35076 | msgstr "" | |
35077 | ||
35078 | #. type: table | |
39764ef8 | 35079 | #: doc/guix.texi:15865 |
b9fe8fd6 JL |
35080 | msgid "How many worker processes should be started on start-up." |
35081 | msgstr "" | |
35082 | ||
35083 | #. type: item | |
39764ef8 | 35084 | #: doc/guix.texi:15865 |
b9fe8fd6 JL |
35085 | #, no-wrap |
35086 | msgid "@code{min-spare-servers} (default: @code{1})" | |
35087 | msgstr "" | |
35088 | ||
35089 | #. type: table | |
39764ef8 | 35090 | #: doc/guix.texi:15867 |
b9fe8fd6 JL |
35091 | msgid "How many spare worker processes should be kept around at minimum." |
35092 | msgstr "" | |
35093 | ||
35094 | #. type: item | |
39764ef8 | 35095 | #: doc/guix.texi:15867 |
b9fe8fd6 JL |
35096 | #, no-wrap |
35097 | msgid "@code{max-spare-servers} (default: @code{3})" | |
35098 | msgstr "" | |
35099 | ||
35100 | #. type: table | |
39764ef8 | 35101 | #: doc/guix.texi:15869 |
b9fe8fd6 JL |
35102 | msgid "How many spare worker processes should be kept around at maximum." |
35103 | msgstr "" | |
35104 | ||
35105 | #. type: deftp | |
39764ef8 | 35106 | #: doc/guix.texi:15872 |
b9fe8fd6 JL |
35107 | #, no-wrap |
35108 | msgid "{Data type} php-fpm-static-process-manager-configuration" | |
35109 | msgstr "" | |
35110 | ||
35111 | #. type: deftp | |
39764ef8 | 35112 | #: doc/guix.texi:15876 |
b9fe8fd6 JL |
35113 | msgid "" |
35114 | "Data Type for the @code{static} php-fpm process manager. With the " | |
35115 | "@code{static} process manager, an unchanging number of worker processes are " | |
35116 | "created." | |
35117 | msgstr "" | |
35118 | ||
35119 | #. type: deftp | |
39764ef8 | 35120 | #: doc/guix.texi:15882 |
b9fe8fd6 JL |
35121 | #, no-wrap |
35122 | msgid "{Data type} php-fpm-on-demand-process-manager-configuration" | |
35123 | msgstr "" | |
35124 | ||
35125 | #. type: deftp | |
39764ef8 | 35126 | #: doc/guix.texi:15886 |
b9fe8fd6 JL |
35127 | msgid "" |
35128 | "Data Type for the @code{on-demand} php-fpm process manager. With the " | |
35129 | "@code{on-demand} process manager, worker processes are only created as " | |
35130 | "requests arrive." | |
35131 | msgstr "" | |
35132 | ||
35133 | #. type: item | |
39764ef8 | 35134 | #: doc/guix.texi:15889 |
b9fe8fd6 JL |
35135 | #, no-wrap |
35136 | msgid "@code{process-idle-timeout} (default: @code{10})" | |
35137 | msgstr "" | |
35138 | ||
35139 | #. type: table | |
39764ef8 | 35140 | #: doc/guix.texi:15891 |
b9fe8fd6 JL |
35141 | msgid "The time in seconds after which a process with no requests is killed." |
35142 | msgstr "" | |
35143 | ||
35144 | #. type: deffn | |
39764ef8 | 35145 | #: doc/guix.texi:15895 |
b9fe8fd6 JL |
35146 | #, no-wrap |
35147 | msgid "{Scheme Procedure} nginx-php-fpm-location @" | |
35148 | msgstr "" | |
35149 | ||
35150 | #. type: deffn | |
39764ef8 | 35151 | #: doc/guix.texi:15901 |
b9fe8fd6 | 35152 | msgid "" |
39764ef8 JL |
35153 | "[#:nginx-package nginx] @ [socket (string-append \"/var/run/php\" @ (version-" |
35154 | "major (package-version php)) @ \"-fpm.sock\")] A helper function to quickly " | |
35155 | "add php to an @code{nginx-server-configuration}." | |
b9fe8fd6 JL |
35156 | msgstr "" |
35157 | ||
35158 | #. type: Plain text | |
39764ef8 | 35159 | #: doc/guix.texi:15904 |
b9fe8fd6 JL |
35160 | msgid "A simple services setup for nginx with php can look like this:" |
35161 | msgstr "" | |
35162 | ||
35163 | #. type: example | |
39764ef8 | 35164 | #: doc/guix.texi:15917 |
b9fe8fd6 JL |
35165 | #, no-wrap |
35166 | msgid "" | |
35167 | "(services (cons* (dhcp-client-service)\n" | |
35168 | " (service php-fpm-service-type)\n" | |
35169 | " (service nginx-service-type\n" | |
35170 | " (nginx-server-configuration\n" | |
35171 | " (server-name '(\"example.com\"))\n" | |
35172 | " (root \"/srv/http/\")\n" | |
35173 | " (locations\n" | |
35174 | " (list (nginx-php-location)))\n" | |
35175 | " (https-port #f)\n" | |
35176 | " (ssl-certificate #f)\n" | |
35177 | " (ssl-certificate-key #f)))\n" | |
35178 | " %base-services))\n" | |
35179 | msgstr "" | |
35180 | ||
35181 | #. type: cindex | |
39764ef8 | 35182 | #: doc/guix.texi:15919 |
b9fe8fd6 JL |
35183 | #, no-wrap |
35184 | msgid "cat-avatar-generator" | |
35185 | msgstr "" | |
35186 | ||
35187 | #. type: Plain text | |
39764ef8 | 35188 | #: doc/guix.texi:15923 |
b9fe8fd6 | 35189 | msgid "" |
39764ef8 JL |
35190 | "The cat avatar generator is a simple service to demonstrate the use of php-" |
35191 | "fpm in @code{Nginx}. It is used to generate cat avatar from a seed, for " | |
b9fe8fd6 JL |
35192 | "instance the hash of a user's email address." |
35193 | msgstr "" | |
35194 | ||
35195 | #. type: deffn | |
39764ef8 | 35196 | #: doc/guix.texi:15924 |
b9fe8fd6 JL |
35197 | #, no-wrap |
35198 | msgid "{Scheme Procedure} cat-avatar-generator-serice @" | |
35199 | msgstr "" | |
35200 | ||
35201 | #. type: deffn | |
39764ef8 | 35202 | #: doc/guix.texi:15932 |
b9fe8fd6 | 35203 | msgid "" |
39764ef8 JL |
35204 | "[#:cache-dir \"/var/cache/cat-avatar-generator\"] @ [#:package cat-avatar-" |
35205 | "generator] @ [#:configuration (nginx-server-configuration)] Returns an nginx-" | |
35206 | "server-configuration that inherits @code{configuration}. It extends the " | |
35207 | "nginx configuration to add a server block that serves @code{package}, a " | |
35208 | "version of cat-avatar-generator. During execution, cat-avatar-generator " | |
35209 | "will be able to use @code{cache-dir} as its cache directory." | |
b9fe8fd6 JL |
35210 | msgstr "" |
35211 | ||
35212 | #. type: Plain text | |
39764ef8 | 35213 | #: doc/guix.texi:15935 |
b9fe8fd6 JL |
35214 | msgid "A simple setup for cat-avatar-generator can look like this:" |
35215 | msgstr "" | |
35216 | ||
35217 | #. type: example | |
39764ef8 | 35218 | #: doc/guix.texi:15942 |
b9fe8fd6 JL |
35219 | #, no-wrap |
35220 | msgid "" | |
35221 | "(services (cons* (cat-avatar-generator-service\n" | |
35222 | " #:configuration\n" | |
35223 | " (nginx-server-configuration\n" | |
35224 | " (server-name '(\"example.com\"))))\n" | |
35225 | " ...\n" | |
35226 | " %base-services))\n" | |
35227 | msgstr "" | |
35228 | ||
35229 | #. type: cindex | |
39764ef8 | 35230 | #: doc/guix.texi:15947 |
b9fe8fd6 JL |
35231 | #, no-wrap |
35232 | msgid "Web" | |
35233 | msgstr "" | |
35234 | ||
35235 | #. type: cindex | |
39764ef8 | 35236 | #: doc/guix.texi:15948 |
b9fe8fd6 JL |
35237 | #, no-wrap |
35238 | msgid "HTTP, HTTPS" | |
35239 | msgstr "" | |
35240 | ||
35241 | #. type: cindex | |
39764ef8 | 35242 | #: doc/guix.texi:15949 |
b9fe8fd6 JL |
35243 | #, no-wrap |
35244 | msgid "Let's Encrypt" | |
35245 | msgstr "" | |
35246 | ||
35247 | #. type: cindex | |
39764ef8 | 35248 | #: doc/guix.texi:15950 |
b9fe8fd6 JL |
35249 | #, no-wrap |
35250 | msgid "TLS certificates" | |
35251 | msgstr "" | |
35252 | ||
35253 | #. type: Plain text | |
39764ef8 | 35254 | #: doc/guix.texi:15957 |
b9fe8fd6 JL |
35255 | msgid "" |
35256 | "The @code{(gnu services certbot)} module provides a service to automatically " | |
35257 | "obtain a valid TLS certificate from the Let's Encrypt certificate " | |
35258 | "authority. These certificates can then be used to serve content securely " | |
35259 | "over HTTPS or other TLS-based protocols, with the knowledge that the client " | |
35260 | "will be able to verify the server's authenticity." | |
35261 | msgstr "" | |
35262 | ||
35263 | #. type: Plain text | |
39764ef8 | 35264 | #: doc/guix.texi:15969 |
b9fe8fd6 JL |
35265 | msgid "" |
35266 | "@url{https://letsencrypt.org/, Let's Encrypt} provides the @code{certbot} " | |
35267 | "tool to automate the certification process. This tool first securely " | |
35268 | "generates a key on the server. It then makes a request to the Let's Encrypt " | |
35269 | "certificate authority (CA) to sign the key. The CA checks that the request " | |
35270 | "originates from the host in question by using a challenge-response protocol, " | |
35271 | "requiring the server to provide its response over HTTP. If that protocol " | |
35272 | "completes successfully, the CA signs the key, resulting in a certificate. " | |
35273 | "That certificate is valid for a limited period of time, and therefore to " | |
35274 | "continue to provide TLS services, the server needs to periodically ask the " | |
35275 | "CA to renew its signature." | |
35276 | msgstr "" | |
35277 | ||
35278 | #. type: Plain text | |
39764ef8 | 35279 | #: doc/guix.texi:15976 |
b9fe8fd6 JL |
35280 | msgid "" |
35281 | "The certbot service automates this process: the initial key generation, the " | |
35282 | "initial certification request to the Let's Encrypt service, the web server " | |
35283 | "challenge/response integration, writing the certificate to disk, the " | |
35284 | "automated periodic renewals, and the deployment tasks associated with the " | |
35285 | "renewal (e.g. reloading services, copying keys with different permissions)." | |
35286 | msgstr "" | |
35287 | ||
35288 | #. type: Plain text | |
39764ef8 | 35289 | #: doc/guix.texi:15982 |
b9fe8fd6 JL |
35290 | msgid "" |
35291 | "Certbot is run twice a day, at a random minute within the hour. It won't do " | |
35292 | "anything until your certificates are due for renewal or revoked, but running " | |
35293 | "it regularly would give your service a chance of staying online in case a " | |
35294 | "Let's Encrypt-initiated revocation happened for some reason." | |
35295 | msgstr "" | |
35296 | ||
35297 | #. type: Plain text | |
39764ef8 | 35298 | #: doc/guix.texi:15986 |
b9fe8fd6 JL |
35299 | msgid "" |
35300 | "By using this service, you agree to the ACME Subscriber Agreement, which can " | |
35301 | "be found there: @url{https://acme-v01.api.letsencrypt.org/directory}." | |
35302 | msgstr "" | |
35303 | ||
35304 | #. type: defvr | |
39764ef8 | 35305 | #: doc/guix.texi:15987 |
b9fe8fd6 JL |
35306 | #, no-wrap |
35307 | msgid "{Scheme Variable} certbot-service-type" | |
35308 | msgstr "" | |
35309 | ||
35310 | #. type: defvr | |
39764ef8 | 35311 | #: doc/guix.texi:15990 |
b9fe8fd6 JL |
35312 | msgid "" |
35313 | "A service type for the @code{certbot} Let's Encrypt client. Its value must " | |
35314 | "be a @code{certbot-configuration} record as in this example:" | |
35315 | msgstr "" | |
35316 | ||
35317 | #. type: example | |
39764ef8 | 35318 | #: doc/guix.texi:15997 |
b9fe8fd6 JL |
35319 | #, no-wrap |
35320 | msgid "" | |
35321 | "(define %nginx-deploy-hook\n" | |
35322 | " (program-file\n" | |
35323 | " \"nginx-deploy-hook\"\n" | |
35324 | " #~(let ((pid (call-with-input-file \"/var/run/nginx/pid\" read)))\n" | |
35325 | " (kill pid SIGHUP))))\n" | |
35326 | "\n" | |
35327 | msgstr "" | |
35328 | ||
35329 | #. type: example | |
39764ef8 | 35330 | #: doc/guix.texi:16008 |
b9fe8fd6 JL |
35331 | #, no-wrap |
35332 | msgid "" | |
35333 | "(service certbot-service-type\n" | |
35334 | " (certbot-configuration\n" | |
35335 | " (email \"foo@@example.net\")\n" | |
35336 | " (certificates\n" | |
35337 | " (list\n" | |
35338 | " (certificate-configuration\n" | |
35339 | " (domains '(\"example.net\" \"www.example.net\"))\n" | |
35340 | " (deploy-hook %nginx-deploy-hook))\n" | |
35341 | " (certificate-configuration\n" | |
35342 | " (domains '(\"bar.example.net\")))))))\n" | |
35343 | msgstr "" | |
35344 | ||
35345 | #. type: defvr | |
39764ef8 | 35346 | #: doc/guix.texi:16011 |
b9fe8fd6 JL |
35347 | msgid "See below for details about @code{certbot-configuration}." |
35348 | msgstr "" | |
35349 | ||
35350 | #. type: deftp | |
39764ef8 | 35351 | #: doc/guix.texi:16013 |
b9fe8fd6 JL |
35352 | #, no-wrap |
35353 | msgid "{Data Type} certbot-configuration" | |
35354 | msgstr "" | |
35355 | ||
35356 | #. type: deftp | |
39764ef8 | 35357 | #: doc/guix.texi:16016 |
b9fe8fd6 JL |
35358 | msgid "" |
35359 | "Data type representing the configuration of the @code{certbot} service. " | |
35360 | "This type has the following parameters:" | |
35361 | msgstr "" | |
35362 | ||
35363 | #. type: item | |
39764ef8 | 35364 | #: doc/guix.texi:16018 |
b9fe8fd6 JL |
35365 | #, no-wrap |
35366 | msgid "@code{package} (default: @code{certbot})" | |
35367 | msgstr "" | |
35368 | ||
35369 | #. type: table | |
39764ef8 | 35370 | #: doc/guix.texi:16020 |
b9fe8fd6 JL |
35371 | msgid "The certbot package to use." |
35372 | msgstr "" | |
35373 | ||
35374 | #. type: item | |
39764ef8 | 35375 | #: doc/guix.texi:16021 |
b9fe8fd6 JL |
35376 | #, no-wrap |
35377 | msgid "@code{webroot} (default: @code{/var/www})" | |
35378 | msgstr "" | |
35379 | ||
35380 | #. type: table | |
39764ef8 | 35381 | #: doc/guix.texi:16024 |
b9fe8fd6 | 35382 | msgid "" |
39764ef8 | 35383 | "The directory from which to serve the Let's Encrypt challenge/response files." |
b9fe8fd6 JL |
35384 | msgstr "" |
35385 | ||
35386 | #. type: item | |
39764ef8 | 35387 | #: doc/guix.texi:16025 |
b9fe8fd6 JL |
35388 | #, no-wrap |
35389 | msgid "@code{certificates} (default: @code{()})" | |
35390 | msgstr "" | |
35391 | ||
35392 | #. type: table | |
39764ef8 | 35393 | #: doc/guix.texi:16029 |
b9fe8fd6 JL |
35394 | msgid "" |
35395 | "A list of @code{certificates-configuration}s for which to generate " | |
35396 | "certificates and request signatures. Each certificate has a @code{name} and " | |
35397 | "several @code{domains}." | |
35398 | msgstr "" | |
35399 | ||
35400 | #. type: table | |
39764ef8 | 35401 | #: doc/guix.texi:16033 |
b9fe8fd6 JL |
35402 | msgid "" |
35403 | "Mandatory email used for registration, recovery contact, and important " | |
35404 | "account notifications." | |
35405 | msgstr "" | |
35406 | ||
35407 | #. type: item | |
39764ef8 | 35408 | #: doc/guix.texi:16034 |
b9fe8fd6 JL |
35409 | #, no-wrap |
35410 | msgid "@code{rsa-key-size} (default: @code{2048})" | |
35411 | msgstr "" | |
35412 | ||
35413 | #. type: table | |
39764ef8 | 35414 | #: doc/guix.texi:16036 |
b9fe8fd6 JL |
35415 | msgid "Size of the RSA key." |
35416 | msgstr "" | |
35417 | ||
35418 | #. type: item | |
39764ef8 | 35419 | #: doc/guix.texi:16037 |
b9fe8fd6 JL |
35420 | #, no-wrap |
35421 | msgid "@code{default-location} (default: @i{see below})" | |
35422 | msgstr "" | |
35423 | ||
35424 | #. type: table | |
39764ef8 | 35425 | #: doc/guix.texi:16046 |
b9fe8fd6 JL |
35426 | msgid "" |
35427 | "The default @code{nginx-location-configuration}. Because @code{certbot} " | |
35428 | "needs to be able to serve challenges and responses, it needs to be able to " | |
35429 | "run a web server. It does so by extending the @code{nginx} web service with " | |
35430 | "an @code{nginx-server-configuration} listening on the @var{domains} on port " | |
39764ef8 JL |
35431 | "80, and which has a @code{nginx-location-configuration} for the @code{/.well-" |
35432 | "known/} URI path subspace used by Let's Encrypt. @xref{Web Services}, for " | |
35433 | "more on these nginx configuration data types." | |
b9fe8fd6 JL |
35434 | msgstr "" |
35435 | ||
35436 | #. type: table | |
39764ef8 | 35437 | #: doc/guix.texi:16050 |
b9fe8fd6 JL |
35438 | msgid "" |
35439 | "Requests to other URL paths will be matched by the @code{default-location}, " | |
35440 | "which if present is added to all @code{nginx-server-configuration}s." | |
35441 | msgstr "" | |
35442 | ||
35443 | #. type: table | |
39764ef8 | 35444 | #: doc/guix.texi:16054 |
b9fe8fd6 JL |
35445 | msgid "" |
35446 | "By default, the @code{default-location} will issue a redirect from " | |
35447 | "@code{http://@var{domain}/...} to @code{https://@var{domain}/...}, leaving " | |
35448 | "you to define what to serve on your site via @code{https}." | |
35449 | msgstr "" | |
35450 | ||
35451 | #. type: table | |
39764ef8 | 35452 | #: doc/guix.texi:16056 |
b9fe8fd6 JL |
35453 | msgid "Pass @code{#f} to not issue a default location." |
35454 | msgstr "" | |
35455 | ||
35456 | #. type: deftp | |
39764ef8 | 35457 | #: doc/guix.texi:16059 |
b9fe8fd6 JL |
35458 | #, no-wrap |
35459 | msgid "{Data Type} certificate-configuration" | |
35460 | msgstr "" | |
35461 | ||
35462 | #. type: deftp | |
39764ef8 | 35463 | #: doc/guix.texi:16062 |
b9fe8fd6 JL |
35464 | msgid "" |
35465 | "Data type representing the configuration of a certificate. This type has " | |
35466 | "the following parameters:" | |
35467 | msgstr "" | |
35468 | ||
35469 | #. type: item | |
39764ef8 | 35470 | #: doc/guix.texi:16064 |
b9fe8fd6 JL |
35471 | #, no-wrap |
35472 | msgid "@code{name} (default: @i{see below})" | |
35473 | msgstr "" | |
35474 | ||
35475 | #. type: table | |
39764ef8 | 35476 | #: doc/guix.texi:16068 |
b9fe8fd6 JL |
35477 | msgid "" |
35478 | "This name is used by Certbot for housekeeping and in file paths; it doesn't " | |
35479 | "affect the content of the certificate itself. To see certificate names, run " | |
35480 | "@code{certbot certificates}." | |
35481 | msgstr "" | |
35482 | ||
35483 | #. type: table | |
39764ef8 | 35484 | #: doc/guix.texi:16070 |
b9fe8fd6 JL |
35485 | msgid "Its default is the first provided domain." |
35486 | msgstr "" | |
35487 | ||
35488 | #. type: item | |
39764ef8 | 35489 | #: doc/guix.texi:16071 |
b9fe8fd6 JL |
35490 | #, no-wrap |
35491 | msgid "@code{domains} (default: @code{()})" | |
35492 | msgstr "" | |
35493 | ||
35494 | #. type: table | |
39764ef8 | 35495 | #: doc/guix.texi:16074 |
b9fe8fd6 JL |
35496 | msgid "" |
35497 | "The first domain provided will be the subject CN of the certificate, and all " | |
35498 | "domains will be Subject Alternative Names on the certificate." | |
35499 | msgstr "" | |
35500 | ||
35501 | #. type: item | |
39764ef8 | 35502 | #: doc/guix.texi:16075 |
b9fe8fd6 JL |
35503 | #, no-wrap |
35504 | msgid "@code{deploy-hook} (default: @code{#f})" | |
35505 | msgstr "" | |
35506 | ||
35507 | #. type: table | |
39764ef8 | 35508 | #: doc/guix.texi:16083 |
b9fe8fd6 JL |
35509 | msgid "" |
35510 | "Command to be run in a shell once for each successfully issued certificate. " | |
35511 | "For this command, the shell variable @code{$RENEWED_LINEAGE} will point to " | |
39764ef8 JL |
35512 | "the config live subdirectory (for example, @samp{\"/etc/letsencrypt/live/" |
35513 | "example.com\"}) containing the new certificates and keys; the shell variable " | |
35514 | "@code{$RENEWED_DOMAINS} will contain a space-delimited list of renewed " | |
35515 | "certificate domains (for example, @samp{\"example.com www.example.com\"}." | |
b9fe8fd6 JL |
35516 | msgstr "" |
35517 | ||
35518 | #. type: Plain text | |
39764ef8 | 35519 | #: doc/guix.texi:16090 |
b9fe8fd6 JL |
35520 | msgid "" |
35521 | "For each @code{certificate-configuration}, the certificate is saved to " | |
35522 | "@code{/etc/letsencrypt/live/@var{name}/fullchain.pem} and the key is saved " | |
35523 | "to @code{/etc/letsencrypt/live/@var{name}/privkey.pem}." | |
35524 | msgstr "" | |
35525 | ||
35526 | #. type: cindex | |
39764ef8 | 35527 | #: doc/guix.texi:16092 |
b9fe8fd6 JL |
35528 | #, no-wrap |
35529 | msgid "DNS (domain name system)" | |
35530 | msgstr "" | |
35531 | ||
35532 | #. type: cindex | |
39764ef8 | 35533 | #: doc/guix.texi:16093 |
b9fe8fd6 JL |
35534 | #, no-wrap |
35535 | msgid "domain name system (DNS)" | |
35536 | msgstr "" | |
35537 | ||
35538 | #. type: Plain text | |
39764ef8 | 35539 | #: doc/guix.texi:16099 |
b9fe8fd6 JL |
35540 | msgid "" |
35541 | "The @code{(gnu services dns)} module provides services related to the " | |
35542 | "@dfn{domain name system} (DNS). It provides a server service for hosting an " | |
35543 | "@emph{authoritative} DNS server for multiple zones, slave or master. This " | |
35544 | "service uses @uref{https://www.knot-dns.cz/, Knot DNS}." | |
35545 | msgstr "" | |
35546 | ||
35547 | #. type: Plain text | |
39764ef8 | 35548 | #: doc/guix.texi:16102 |
b9fe8fd6 JL |
35549 | msgid "" |
35550 | "An example configuration of an authoritative server for two zones, one " | |
35551 | "master and one slave, is:" | |
35552 | msgstr "" | |
35553 | ||
35554 | #. type: lisp | |
39764ef8 | 35555 | #: doc/guix.texi:16109 |
b9fe8fd6 JL |
35556 | #, no-wrap |
35557 | msgid "" | |
35558 | "(define-zone-entries example.org.zone\n" | |
35559 | ";; Name TTL Class Type Data\n" | |
35560 | " (\"@@\" \"\" \"IN\" \"A\" \"127.0.0.1\")\n" | |
35561 | " (\"@@\" \"\" \"IN\" \"NS\" \"ns\")\n" | |
35562 | " (\"ns\" \"\" \"IN\" \"A\" \"127.0.0.1\"))\n" | |
35563 | "\n" | |
35564 | msgstr "" | |
35565 | ||
35566 | #. type: lisp | |
39764ef8 | 35567 | #: doc/guix.texi:16116 |
b9fe8fd6 JL |
35568 | #, no-wrap |
35569 | msgid "" | |
35570 | "(define master-zone\n" | |
35571 | " (knot-zone-configuration\n" | |
35572 | " (domain \"example.org\")\n" | |
35573 | " (zone (zone-file\n" | |
35574 | " (origin \"example.org\")\n" | |
35575 | " (entries example.org.zone)))))\n" | |
35576 | "\n" | |
35577 | msgstr "" | |
35578 | ||
35579 | #. type: lisp | |
39764ef8 | 35580 | #: doc/guix.texi:16122 |
b9fe8fd6 JL |
35581 | #, no-wrap |
35582 | msgid "" | |
35583 | "(define slave-zone\n" | |
35584 | " (knot-zone-configuration\n" | |
35585 | " (domain \"plop.org\")\n" | |
35586 | " (dnssec-policy \"default\")\n" | |
35587 | " (master (list \"plop-master\"))))\n" | |
35588 | "\n" | |
35589 | msgstr "" | |
35590 | ||
35591 | #. type: lisp | |
39764ef8 | 35592 | #: doc/guix.texi:16127 |
b9fe8fd6 JL |
35593 | #, no-wrap |
35594 | msgid "" | |
35595 | "(define plop-master\n" | |
35596 | " (knot-remote-configuration\n" | |
35597 | " (id \"plop-master\")\n" | |
35598 | " (address (list \"208.76.58.171\"))))\n" | |
35599 | "\n" | |
35600 | msgstr "" | |
35601 | ||
35602 | #. type: lisp | |
39764ef8 | 35603 | #: doc/guix.texi:16136 |
b9fe8fd6 JL |
35604 | #, no-wrap |
35605 | msgid "" | |
35606 | "(operating-system\n" | |
35607 | " ;; ...\n" | |
35608 | " (services (cons* (service knot-service-type\n" | |
35609 | " (knot-configuration\n" | |
35610 | " (remotes (list plop-master))\n" | |
35611 | " (zones (list master-zone slave-zone))))\n" | |
35612 | " ;; ...\n" | |
35613 | " %base-services)))\n" | |
35614 | msgstr "" | |
35615 | ||
35616 | #. type: deffn | |
39764ef8 | 35617 | #: doc/guix.texi:16138 |
b9fe8fd6 JL |
35618 | #, no-wrap |
35619 | msgid "{Scheme Variable} knot-service-type" | |
35620 | msgstr "" | |
35621 | ||
35622 | #. type: deffn | |
39764ef8 | 35623 | #: doc/guix.texi:16140 |
b9fe8fd6 JL |
35624 | msgid "This is the type for the Knot DNS server." |
35625 | msgstr "" | |
35626 | ||
35627 | #. type: deffn | |
39764ef8 | 35628 | #: doc/guix.texi:16148 |
b9fe8fd6 JL |
35629 | msgid "" |
35630 | "Knot DNS is an authoritative DNS server, meaning that it can serve multiple " | |
35631 | "zones, that is to say domain names you would buy from a registrar. This " | |
35632 | "server is not a resolver, meaning that it can only resolve names for which " | |
35633 | "it is authoritative. This server can be configured to serve zones as a " | |
35634 | "master server or a slave server as a per-zone basis. Slave zones will get " | |
35635 | "their data from masters, and will serve it as an authoritative server. From " | |
35636 | "the point of view of a resolver, there is no difference between master and " | |
35637 | "slave." | |
35638 | msgstr "" | |
35639 | ||
35640 | #. type: deffn | |
39764ef8 | 35641 | #: doc/guix.texi:16150 |
b9fe8fd6 JL |
35642 | msgid "The following data types are used to configure the Knot DNS server:" |
35643 | msgstr "" | |
35644 | ||
35645 | #. type: deftp | |
39764ef8 | 35646 | #: doc/guix.texi:16152 |
b9fe8fd6 JL |
35647 | #, no-wrap |
35648 | msgid "{Data Type} knot-key-configuration" | |
35649 | msgstr "" | |
35650 | ||
35651 | #. type: deftp | |
39764ef8 | 35652 | #: doc/guix.texi:16155 |
b9fe8fd6 JL |
35653 | msgid "Data type representing a key. This type has the following parameters:" |
35654 | msgstr "" | |
35655 | ||
35656 | #. type: item | |
39764ef8 JL |
35657 | #: doc/guix.texi:16157 doc/guix.texi:16177 doc/guix.texi:16292 |
35658 | #: doc/guix.texi:16318 doc/guix.texi:16353 | |
b9fe8fd6 JL |
35659 | #, no-wrap |
35660 | msgid "@code{id} (default: @code{\"\"})" | |
35661 | msgstr "" | |
35662 | ||
35663 | #. type: table | |
39764ef8 | 35664 | #: doc/guix.texi:16160 |
b9fe8fd6 JL |
35665 | msgid "" |
35666 | "An identifier for other configuration fields to refer to this key. IDs must " | |
35667 | "be unique and must not be empty." | |
35668 | msgstr "" | |
35669 | ||
35670 | #. type: item | |
39764ef8 | 35671 | #: doc/guix.texi:16161 |
b9fe8fd6 JL |
35672 | #, no-wrap |
35673 | msgid "@code{algorithm} (default: @code{#f})" | |
35674 | msgstr "" | |
35675 | ||
35676 | #. type: table | |
39764ef8 | 35677 | #: doc/guix.texi:16165 |
b9fe8fd6 JL |
35678 | msgid "" |
35679 | "The algorithm to use. Choose between @code{#f}, @code{'hmac-md5}, " | |
39764ef8 JL |
35680 | "@code{'hmac-sha1}, @code{'hmac-sha224}, @code{'hmac-sha256}, @code{'hmac-" |
35681 | "sha384} and @code{'hmac-sha512}." | |
b9fe8fd6 JL |
35682 | msgstr "" |
35683 | ||
35684 | #. type: item | |
39764ef8 | 35685 | #: doc/guix.texi:16166 |
b9fe8fd6 JL |
35686 | #, no-wrap |
35687 | msgid "@code{secret} (default: @code{\"\"})" | |
35688 | msgstr "" | |
35689 | ||
35690 | #. type: table | |
39764ef8 | 35691 | #: doc/guix.texi:16168 |
b9fe8fd6 JL |
35692 | msgid "The secret key itself." |
35693 | msgstr "" | |
35694 | ||
35695 | #. type: deftp | |
39764ef8 | 35696 | #: doc/guix.texi:16172 |
b9fe8fd6 JL |
35697 | #, no-wrap |
35698 | msgid "{Data Type} knot-acl-configuration" | |
35699 | msgstr "" | |
35700 | ||
35701 | #. type: deftp | |
39764ef8 | 35702 | #: doc/guix.texi:16175 |
b9fe8fd6 JL |
35703 | msgid "" |
35704 | "Data type representing an Access Control List (ACL) configuration. This " | |
35705 | "type has the following parameters:" | |
35706 | msgstr "" | |
35707 | ||
35708 | #. type: table | |
39764ef8 | 35709 | #: doc/guix.texi:16180 |
b9fe8fd6 JL |
35710 | msgid "" |
35711 | "An identifier for ether configuration fields to refer to this key. IDs must " | |
35712 | "be unique and must not be empty." | |
35713 | msgstr "" | |
35714 | ||
35715 | #. type: item | |
39764ef8 | 35716 | #: doc/guix.texi:16181 doc/guix.texi:16296 |
b9fe8fd6 JL |
35717 | #, no-wrap |
35718 | msgid "@code{address} (default: @code{'()})" | |
35719 | msgstr "" | |
35720 | ||
35721 | #. type: table | |
39764ef8 | 35722 | #: doc/guix.texi:16185 |
b9fe8fd6 JL |
35723 | msgid "" |
35724 | "An ordered list of IP addresses, network subnets, or network ranges " | |
35725 | "represented with strings. The query must match one of them. Empty value " | |
35726 | "means that address match is not required." | |
35727 | msgstr "" | |
35728 | ||
35729 | #. type: item | |
39764ef8 | 35730 | #: doc/guix.texi:16186 |
b9fe8fd6 JL |
35731 | #, no-wrap |
35732 | msgid "@code{key} (default: @code{'()})" | |
35733 | msgstr "" | |
35734 | ||
35735 | #. type: table | |
39764ef8 | 35736 | #: doc/guix.texi:16190 |
b9fe8fd6 JL |
35737 | msgid "" |
35738 | "An ordered list of references to keys represented with strings. The string " | |
35739 | "must match a key ID defined in a @code{knot-key-configuration}. No key " | |
35740 | "means that a key is not require to match that ACL." | |
35741 | msgstr "" | |
35742 | ||
35743 | #. type: item | |
39764ef8 | 35744 | #: doc/guix.texi:16191 |
b9fe8fd6 JL |
35745 | #, no-wrap |
35746 | msgid "@code{action} (default: @code{'()})" | |
35747 | msgstr "" | |
35748 | ||
35749 | #. type: table | |
39764ef8 | 35750 | #: doc/guix.texi:16195 |
b9fe8fd6 JL |
35751 | msgid "" |
35752 | "An ordered list of actions that are permitted or forbidden by this ACL. " | |
35753 | "Possible values are lists of zero or more elements from @code{'transfer}, " | |
35754 | "@code{'notify} and @code{'update}." | |
35755 | msgstr "" | |
35756 | ||
35757 | #. type: item | |
39764ef8 | 35758 | #: doc/guix.texi:16196 |
b9fe8fd6 JL |
35759 | #, no-wrap |
35760 | msgid "@code{deny?} (default: @code{#f})" | |
35761 | msgstr "" | |
35762 | ||
35763 | #. type: table | |
39764ef8 | 35764 | #: doc/guix.texi:16199 |
b9fe8fd6 JL |
35765 | msgid "" |
35766 | "When true, the ACL defines restrictions. Listed actions are forbidden. " | |
35767 | "When false, listed actions are allowed." | |
35768 | msgstr "" | |
35769 | ||
35770 | #. type: deftp | |
39764ef8 | 35771 | #: doc/guix.texi:16203 |
b9fe8fd6 JL |
35772 | #, no-wrap |
35773 | msgid "{Data Type} zone-entry" | |
35774 | msgstr "" | |
35775 | ||
35776 | #. type: deftp | |
39764ef8 | 35777 | #: doc/guix.texi:16206 |
b9fe8fd6 JL |
35778 | msgid "" |
35779 | "Data type represnting a record entry in a zone file. This type has the " | |
35780 | "following parameters:" | |
35781 | msgstr "" | |
35782 | ||
35783 | #. type: item | |
39764ef8 | 35784 | #: doc/guix.texi:16208 |
b9fe8fd6 JL |
35785 | #, no-wrap |
35786 | msgid "@code{name} (default: @code{\"@@\"})" | |
35787 | msgstr "" | |
35788 | ||
35789 | #. type: table | |
39764ef8 | 35790 | #: doc/guix.texi:16214 |
b9fe8fd6 JL |
35791 | msgid "" |
35792 | "The name of the record. @code{\"@@\"} refers to the origin of the zone. " | |
35793 | "Names are relative to the origin of the zone. For example, in the " | |
35794 | "@code{example.org} zone, @code{\"ns.example.org\"} actually refers to " | |
35795 | "@code{ns.example.org.example.org}. Names ending with a dot are absolute, " | |
35796 | "which means that @code{\"ns.example.org.\"} refers to @code{ns.example.org}." | |
35797 | msgstr "" | |
35798 | ||
35799 | #. type: item | |
39764ef8 | 35800 | #: doc/guix.texi:16215 |
b9fe8fd6 JL |
35801 | #, no-wrap |
35802 | msgid "@code{ttl} (default: @code{\"\"})" | |
35803 | msgstr "" | |
35804 | ||
35805 | #. type: table | |
39764ef8 JL |
35806 | #: doc/guix.texi:16217 |
35807 | msgid "" | |
35808 | "The Time-To-Live (TTL) of this record. If not set, the default TTL is used." | |
b9fe8fd6 JL |
35809 | msgstr "" |
35810 | ||
35811 | #. type: item | |
39764ef8 | 35812 | #: doc/guix.texi:16218 |
b9fe8fd6 JL |
35813 | #, no-wrap |
35814 | msgid "@code{class} (default: @code{\"IN\"})" | |
35815 | msgstr "" | |
35816 | ||
35817 | #. type: table | |
39764ef8 | 35818 | #: doc/guix.texi:16221 |
b9fe8fd6 JL |
35819 | msgid "" |
35820 | "The class of the record. Knot currently supports only @code{\"IN\"} and " | |
35821 | "partially @code{\"CH\"}." | |
35822 | msgstr "" | |
35823 | ||
35824 | #. type: item | |
39764ef8 | 35825 | #: doc/guix.texi:16222 |
b9fe8fd6 JL |
35826 | #, no-wrap |
35827 | msgid "@code{type} (default: @code{\"A\"})" | |
35828 | msgstr "" | |
35829 | ||
35830 | #. type: table | |
39764ef8 | 35831 | #: doc/guix.texi:16226 |
b9fe8fd6 JL |
35832 | msgid "" |
35833 | "The type of the record. Common types include A (IPv4 address), AAAA (IPv6 " | |
35834 | "address), NS (Name Server) and MX (Mail eXchange). Many other types are " | |
35835 | "defined." | |
35836 | msgstr "" | |
35837 | ||
35838 | #. type: item | |
39764ef8 | 35839 | #: doc/guix.texi:16227 |
b9fe8fd6 JL |
35840 | #, no-wrap |
35841 | msgid "@code{data} (default: @code{\"\"})" | |
35842 | msgstr "" | |
35843 | ||
35844 | #. type: table | |
39764ef8 | 35845 | #: doc/guix.texi:16231 |
b9fe8fd6 JL |
35846 | msgid "" |
35847 | "The data contained in the record. For instance an IP address associated " | |
35848 | "with an A record, or a domain name associated with an NS record. Remember " | |
35849 | "that domain names are relative to the origin unless they end with a dot." | |
35850 | msgstr "" | |
35851 | ||
35852 | #. type: deftp | |
39764ef8 | 35853 | #: doc/guix.texi:16235 |
b9fe8fd6 JL |
35854 | #, no-wrap |
35855 | msgid "{Data Type} zone-file" | |
35856 | msgstr "" | |
35857 | ||
35858 | #. type: deftp | |
39764ef8 | 35859 | #: doc/guix.texi:16238 |
b9fe8fd6 JL |
35860 | msgid "" |
35861 | "Data type representing the content of a zone file. This type has the " | |
35862 | "following parameters:" | |
35863 | msgstr "" | |
35864 | ||
35865 | #. type: table | |
39764ef8 | 35866 | #: doc/guix.texi:16247 |
b9fe8fd6 JL |
35867 | msgid "" |
35868 | "The list of entries. The SOA record is taken care of, so you don't need to " | |
35869 | "put it in the list of entries. This list should probably contain an entry " | |
35870 | "for your primary authoritative DNS server. Other than using a list of " | |
35871 | "entries directly, you can use @code{define-zone-entries} to define a object " | |
35872 | "containing the list of entries more easily, that you can later pass to the " | |
35873 | "@code{entries} field of the @code{zone-file}." | |
35874 | msgstr "" | |
35875 | ||
35876 | #. type: item | |
39764ef8 | 35877 | #: doc/guix.texi:16248 |
b9fe8fd6 JL |
35878 | #, no-wrap |
35879 | msgid "@code{origin} (default: @code{\"\"})" | |
35880 | msgstr "" | |
35881 | ||
35882 | #. type: table | |
39764ef8 | 35883 | #: doc/guix.texi:16250 |
b9fe8fd6 JL |
35884 | msgid "The name of your zone. This parameter cannot be empty." |
35885 | msgstr "" | |
35886 | ||
35887 | #. type: item | |
39764ef8 | 35888 | #: doc/guix.texi:16251 |
b9fe8fd6 JL |
35889 | #, no-wrap |
35890 | msgid "@code{ns} (default: @code{\"ns\"})" | |
35891 | msgstr "" | |
35892 | ||
35893 | #. type: table | |
39764ef8 | 35894 | #: doc/guix.texi:16256 |
b9fe8fd6 JL |
35895 | msgid "" |
35896 | "The domain of your primary authoritative DNS server. The name is relative " | |
35897 | "to the origin, unless it ends with a dot. It is mandatory that this primary " | |
35898 | "DNS server corresponds to an NS record in the zone and that it is associated " | |
35899 | "to an IP address in the list of entries." | |
35900 | msgstr "" | |
35901 | ||
35902 | #. type: item | |
39764ef8 | 35903 | #: doc/guix.texi:16257 |
b9fe8fd6 JL |
35904 | #, no-wrap |
35905 | msgid "@code{mail} (default: @code{\"hostmaster\"})" | |
35906 | msgstr "" | |
35907 | ||
35908 | #. type: table | |
39764ef8 | 35909 | #: doc/guix.texi:16260 |
b9fe8fd6 JL |
35910 | msgid "" |
35911 | "An email address people can contact you at, as the owner of the zone. This " | |
35912 | "is translated as @code{<mail>@@<origin>}." | |
35913 | msgstr "" | |
35914 | ||
35915 | #. type: item | |
39764ef8 | 35916 | #: doc/guix.texi:16261 |
b9fe8fd6 JL |
35917 | #, no-wrap |
35918 | msgid "@code{serial} (default: @code{1})" | |
35919 | msgstr "" | |
35920 | ||
35921 | #. type: table | |
39764ef8 | 35922 | #: doc/guix.texi:16265 |
b9fe8fd6 JL |
35923 | msgid "" |
35924 | "The serial number of the zone. As this is used to keep track of changes by " | |
35925 | "both slaves and resolvers, it is mandatory that it @emph{never} decreases. " | |
35926 | "Always increment it when you make a change in your zone." | |
35927 | msgstr "" | |
35928 | ||
35929 | #. type: item | |
39764ef8 | 35930 | #: doc/guix.texi:16266 |
b9fe8fd6 JL |
35931 | #, no-wrap |
35932 | msgid "@code{refresh} (default: @code{(* 2 24 3600)})" | |
35933 | msgstr "" | |
35934 | ||
35935 | #. type: table | |
39764ef8 | 35936 | #: doc/guix.texi:16270 |
b9fe8fd6 JL |
35937 | msgid "" |
35938 | "The frequency at which slaves will do a zone transfer. This value is a " | |
35939 | "number of seconds. It can be computed by multiplications or with " | |
35940 | "@code{(string->duration)}." | |
35941 | msgstr "" | |
35942 | ||
35943 | #. type: item | |
39764ef8 | 35944 | #: doc/guix.texi:16271 |
b9fe8fd6 JL |
35945 | #, no-wrap |
35946 | msgid "@code{retry} (default: @code{(* 15 60)})" | |
35947 | msgstr "" | |
35948 | ||
35949 | #. type: table | |
39764ef8 | 35950 | #: doc/guix.texi:16274 |
b9fe8fd6 JL |
35951 | msgid "" |
35952 | "The period after which a slave will retry to contact its master when it " | |
35953 | "fails to do so a first time." | |
35954 | msgstr "" | |
35955 | ||
35956 | #. type: item | |
39764ef8 | 35957 | #: doc/guix.texi:16275 |
b9fe8fd6 JL |
35958 | #, no-wrap |
35959 | msgid "@code{expiry} (default: @code{(* 14 24 3600)})" | |
35960 | msgstr "" | |
35961 | ||
35962 | #. type: table | |
39764ef8 | 35963 | #: doc/guix.texi:16279 |
b9fe8fd6 JL |
35964 | msgid "" |
35965 | "Default TTL of records. Existing records are considered correct for at most " | |
35966 | "this amount of time. After this period, resolvers will invalidate their " | |
35967 | "cache and check again that it still exists." | |
35968 | msgstr "" | |
35969 | ||
35970 | #. type: item | |
39764ef8 | 35971 | #: doc/guix.texi:16280 |
b9fe8fd6 JL |
35972 | #, no-wrap |
35973 | msgid "@code{nx} (default: @code{3600})" | |
35974 | msgstr "" | |
35975 | ||
35976 | #. type: table | |
39764ef8 | 35977 | #: doc/guix.texi:16283 |
b9fe8fd6 JL |
35978 | msgid "" |
35979 | "Default TTL of inexistant records. This delay is usually short because you " | |
35980 | "want your new domains to reach everyone quickly." | |
35981 | msgstr "" | |
35982 | ||
35983 | #. type: deftp | |
39764ef8 | 35984 | #: doc/guix.texi:16287 |
b9fe8fd6 JL |
35985 | #, no-wrap |
35986 | msgid "{Data Type} knot-remote-configuration" | |
35987 | msgstr "" | |
35988 | ||
35989 | #. type: deftp | |
39764ef8 | 35990 | #: doc/guix.texi:16290 |
b9fe8fd6 JL |
35991 | msgid "" |
35992 | "Data type representing a remote configuration. This type has the following " | |
35993 | "parameters:" | |
35994 | msgstr "" | |
35995 | ||
35996 | #. type: table | |
39764ef8 | 35997 | #: doc/guix.texi:16295 |
b9fe8fd6 JL |
35998 | msgid "" |
35999 | "An identifier for other configuration fields to refer to this remote. IDs " | |
36000 | "must be unique and must not be empty." | |
36001 | msgstr "" | |
36002 | ||
36003 | #. type: table | |
39764ef8 | 36004 | #: doc/guix.texi:16300 |
b9fe8fd6 JL |
36005 | msgid "" |
36006 | "An ordered list of destination IP addresses. Addresses are tried in " | |
36007 | "sequence. An optional port can be given with the @@ separator. For " | |
36008 | "instance: @code{(list \"1.2.3.4\" \"2.3.4.5@@53\")}. Default port is 53." | |
36009 | msgstr "" | |
36010 | ||
36011 | #. type: item | |
39764ef8 | 36012 | #: doc/guix.texi:16301 |
b9fe8fd6 JL |
36013 | #, no-wrap |
36014 | msgid "@code{via} (default: @code{'()})" | |
36015 | msgstr "" | |
36016 | ||
36017 | #. type: table | |
39764ef8 | 36018 | #: doc/guix.texi:16305 |
b9fe8fd6 JL |
36019 | msgid "" |
36020 | "An ordered list of source IP addresses. An empty list will have Knot choose " | |
36021 | "an appropriate source IP. An optional port can be given with the @@ " | |
36022 | "separator. The default is to choose at random." | |
36023 | msgstr "" | |
36024 | ||
36025 | #. type: item | |
39764ef8 | 36026 | #: doc/guix.texi:16306 |
b9fe8fd6 JL |
36027 | #, no-wrap |
36028 | msgid "@code{key} (default: @code{#f})" | |
36029 | msgstr "" | |
36030 | ||
36031 | #. type: table | |
39764ef8 | 36032 | #: doc/guix.texi:16309 |
b9fe8fd6 JL |
36033 | msgid "" |
36034 | "A reference to a key, that is a string containing the identifier of a key " | |
36035 | "defined in a @code{knot-key-configuration} field." | |
36036 | msgstr "" | |
36037 | ||
36038 | #. type: deftp | |
39764ef8 | 36039 | #: doc/guix.texi:16313 |
b9fe8fd6 JL |
36040 | #, no-wrap |
36041 | msgid "{Data Type} knot-keystore-configuration" | |
36042 | msgstr "" | |
36043 | ||
36044 | #. type: deftp | |
39764ef8 | 36045 | #: doc/guix.texi:16316 |
b9fe8fd6 JL |
36046 | msgid "" |
36047 | "Data type representing a keystore to hold dnssec keys. This type has the " | |
36048 | "following parameters:" | |
36049 | msgstr "" | |
36050 | ||
36051 | #. type: table | |
39764ef8 | 36052 | #: doc/guix.texi:16320 |
b9fe8fd6 JL |
36053 | msgid "The id of the keystore. It must not be empty." |
36054 | msgstr "" | |
36055 | ||
36056 | #. type: item | |
39764ef8 | 36057 | #: doc/guix.texi:16321 |
b9fe8fd6 JL |
36058 | #, no-wrap |
36059 | msgid "@code{backend} (default: @code{'pem})" | |
36060 | msgstr "" | |
36061 | ||
36062 | #. type: table | |
39764ef8 JL |
36063 | #: doc/guix.texi:16323 |
36064 | msgid "" | |
36065 | "The backend to store the keys in. Can be @code{'pem} or @code{'pkcs11}." | |
b9fe8fd6 JL |
36066 | msgstr "" |
36067 | ||
36068 | #. type: item | |
39764ef8 | 36069 | #: doc/guix.texi:16324 |
b9fe8fd6 JL |
36070 | #, no-wrap |
36071 | msgid "@code{config} (default: @code{\"/var/lib/knot/keys/keys\"})" | |
36072 | msgstr "" | |
36073 | ||
36074 | #. type: table | |
39764ef8 | 36075 | #: doc/guix.texi:16328 |
b9fe8fd6 JL |
36076 | msgid "" |
36077 | "The configuration string of the backend. An example for the PKCS#11 is: " | |
39764ef8 JL |
36078 | "@code{\"pkcs11:token=knot;pin-value=1234 /gnu/store/.../lib/pkcs11/" |
36079 | "libsofthsm2.so\"}. For the pem backend, the string reprensents a path in " | |
36080 | "the file system." | |
b9fe8fd6 JL |
36081 | msgstr "" |
36082 | ||
36083 | #. type: deftp | |
39764ef8 | 36084 | #: doc/guix.texi:16332 |
b9fe8fd6 JL |
36085 | #, no-wrap |
36086 | msgid "{Data Type} knot-policy-configuration" | |
36087 | msgstr "" | |
36088 | ||
36089 | #. type: deftp | |
39764ef8 | 36090 | #: doc/guix.texi:16336 |
b9fe8fd6 JL |
36091 | msgid "" |
36092 | "Data type representing a dnssec policy. Knot DNS is able to automatically " | |
36093 | "sign your zones. It can either generate and manage your keys automatically " | |
36094 | "or use keys that you generate." | |
36095 | msgstr "" | |
36096 | ||
36097 | #. type: deftp | |
39764ef8 | 36098 | #: doc/guix.texi:16343 |
b9fe8fd6 JL |
36099 | msgid "" |
36100 | "Dnssec is usually implemented using two keys: a Key Signing Key (KSK) that " | |
36101 | "is used to sign the second, and a Zone Signing Key (ZSK) that is used to " | |
36102 | "sign the zone. In order to be trusted, the KSK needs to be present in the " | |
36103 | "parent zone (usually a top-level domain). If your registrar supports " | |
36104 | "dnssec, you will have to send them your KSK's hash so they can add a DS " | |
36105 | "record in their zone. This is not automated and need to be done each time " | |
36106 | "you change your KSK." | |
36107 | msgstr "" | |
36108 | ||
36109 | #. type: deftp | |
39764ef8 | 36110 | #: doc/guix.texi:16349 |
b9fe8fd6 JL |
36111 | msgid "" |
36112 | "The policy also defines the lifetime of keys. Usually, ZSK can be changed " | |
36113 | "easily and use weaker cryptographic functions (they use lower parameters) in " | |
36114 | "order to sign records quickly, so they are changed often. The KSK however " | |
36115 | "requires manual interaction with the registrar, so they are changed less " | |
36116 | "often and use stronger parameters because they sign only one record." | |
36117 | msgstr "" | |
36118 | ||
36119 | #. type: deftp | |
39764ef8 | 36120 | #: doc/guix.texi:16351 |
b9fe8fd6 JL |
36121 | msgid "This type has the following parameters:" |
36122 | msgstr "" | |
36123 | ||
36124 | #. type: table | |
39764ef8 | 36125 | #: doc/guix.texi:16355 |
b9fe8fd6 JL |
36126 | msgid "The id of the policy. It must not be empty." |
36127 | msgstr "" | |
36128 | ||
36129 | #. type: item | |
39764ef8 | 36130 | #: doc/guix.texi:16356 |
b9fe8fd6 JL |
36131 | #, no-wrap |
36132 | msgid "@code{keystore} (default: @code{\"default\"})" | |
36133 | msgstr "" | |
36134 | ||
36135 | #. type: table | |
39764ef8 | 36136 | #: doc/guix.texi:16361 |
b9fe8fd6 JL |
36137 | msgid "" |
36138 | "A reference to a keystore, that is a string containing the identifier of a " | |
36139 | "keystore defined in a @code{knot-keystore-configuration} field. The " | |
36140 | "@code{\"default\"} identifier means the default keystore (a kasp database " | |
36141 | "that was setup by this service)." | |
36142 | msgstr "" | |
36143 | ||
36144 | #. type: item | |
39764ef8 | 36145 | #: doc/guix.texi:16362 |
b9fe8fd6 JL |
36146 | #, no-wrap |
36147 | msgid "@code{manual?} (default: @code{#f})" | |
36148 | msgstr "" | |
36149 | ||
36150 | #. type: table | |
39764ef8 | 36151 | #: doc/guix.texi:16364 |
b9fe8fd6 JL |
36152 | msgid "Whether the key management is manual or automatic." |
36153 | msgstr "" | |
36154 | ||
36155 | #. type: item | |
39764ef8 | 36156 | #: doc/guix.texi:16365 |
b9fe8fd6 JL |
36157 | #, no-wrap |
36158 | msgid "@code{single-type-signing?} (default: @code{#f})" | |
36159 | msgstr "" | |
36160 | ||
36161 | #. type: table | |
39764ef8 | 36162 | #: doc/guix.texi:16367 |
b9fe8fd6 JL |
36163 | msgid "When @code{#t}, use the Single-Type Signing Scheme." |
36164 | msgstr "" | |
36165 | ||
36166 | #. type: item | |
39764ef8 | 36167 | #: doc/guix.texi:16368 |
b9fe8fd6 JL |
36168 | #, no-wrap |
36169 | msgid "@code{algorithm} (default: @code{\"ecdsap256sha256\"})" | |
36170 | msgstr "" | |
36171 | ||
36172 | #. type: table | |
39764ef8 | 36173 | #: doc/guix.texi:16370 |
b9fe8fd6 JL |
36174 | msgid "An algorithm of signing keys and issued signatures." |
36175 | msgstr "" | |
36176 | ||
36177 | #. type: item | |
39764ef8 | 36178 | #: doc/guix.texi:16371 |
b9fe8fd6 JL |
36179 | #, no-wrap |
36180 | msgid "@code{ksk-size} (default: @code{256})" | |
36181 | msgstr "" | |
36182 | ||
36183 | #. type: table | |
39764ef8 | 36184 | #: doc/guix.texi:16374 |
b9fe8fd6 JL |
36185 | msgid "" |
36186 | "The length of the KSK. Note that this value is correct for the default " | |
36187 | "algorithm, but would be unsecure for other algorithms." | |
36188 | msgstr "" | |
36189 | ||
36190 | #. type: item | |
39764ef8 | 36191 | #: doc/guix.texi:16375 |
b9fe8fd6 JL |
36192 | #, no-wrap |
36193 | msgid "@code{zsk-size} (default: @code{256})" | |
36194 | msgstr "" | |
36195 | ||
36196 | #. type: table | |
39764ef8 | 36197 | #: doc/guix.texi:16378 |
b9fe8fd6 JL |
36198 | msgid "" |
36199 | "The length of the ZSK. Note that this value is correct for the default " | |
36200 | "algorithm, but would be unsecure for other algorithms." | |
36201 | msgstr "" | |
36202 | ||
36203 | #. type: item | |
39764ef8 | 36204 | #: doc/guix.texi:16379 |
b9fe8fd6 JL |
36205 | #, no-wrap |
36206 | msgid "@code{dnskey-ttl} (default: @code{'default})" | |
36207 | msgstr "" | |
36208 | ||
36209 | #. type: table | |
39764ef8 | 36210 | #: doc/guix.texi:16382 |
b9fe8fd6 JL |
36211 | msgid "" |
36212 | "The TTL value for DNSKEY records added into zone apex. The special " | |
36213 | "@code{'default} value means same as the zone SOA TTL." | |
36214 | msgstr "" | |
36215 | ||
36216 | #. type: item | |
39764ef8 | 36217 | #: doc/guix.texi:16383 |
b9fe8fd6 JL |
36218 | #, no-wrap |
36219 | msgid "@code{zsk-lifetime} (default: @code{(* 30 24 3600)})" | |
36220 | msgstr "" | |
36221 | ||
36222 | #. type: table | |
39764ef8 | 36223 | #: doc/guix.texi:16385 |
b9fe8fd6 JL |
36224 | msgid "The period between ZSK publication and the next rollover initiation." |
36225 | msgstr "" | |
36226 | ||
36227 | #. type: item | |
39764ef8 | 36228 | #: doc/guix.texi:16386 |
b9fe8fd6 JL |
36229 | #, no-wrap |
36230 | msgid "@code{propagation-delay} (default: @code{(* 24 3600)})" | |
36231 | msgstr "" | |
36232 | ||
36233 | #. type: table | |
39764ef8 | 36234 | #: doc/guix.texi:16389 |
b9fe8fd6 JL |
36235 | msgid "" |
36236 | "An extra delay added for each key rollover step. This value should be high " | |
36237 | "enough to cover propagation of data from the master server to all slaves." | |
36238 | msgstr "" | |
36239 | ||
36240 | #. type: item | |
39764ef8 | 36241 | #: doc/guix.texi:16390 |
b9fe8fd6 JL |
36242 | #, no-wrap |
36243 | msgid "@code{rrsig-lifetime} (default: @code{(* 14 24 3600)})" | |
36244 | msgstr "" | |
36245 | ||
36246 | #. type: table | |
39764ef8 | 36247 | #: doc/guix.texi:16392 |
b9fe8fd6 JL |
36248 | msgid "A validity period of newly issued signatures." |
36249 | msgstr "" | |
36250 | ||
36251 | #. type: item | |
39764ef8 | 36252 | #: doc/guix.texi:16393 |
b9fe8fd6 JL |
36253 | #, no-wrap |
36254 | msgid "@code{rrsig-refresh} (default: @code{(* 7 24 3600)})" | |
36255 | msgstr "" | |
36256 | ||
36257 | #. type: table | |
39764ef8 | 36258 | #: doc/guix.texi:16395 |
b9fe8fd6 JL |
36259 | msgid "" |
36260 | "A period how long before a signature expiration the signature will be " | |
36261 | "refreshed." | |
36262 | msgstr "" | |
36263 | ||
36264 | #. type: item | |
39764ef8 | 36265 | #: doc/guix.texi:16396 |
b9fe8fd6 JL |
36266 | #, no-wrap |
36267 | msgid "@code{nsec3?} (default: @code{#f})" | |
36268 | msgstr "" | |
36269 | ||
36270 | #. type: table | |
39764ef8 | 36271 | #: doc/guix.texi:16398 |
b9fe8fd6 JL |
36272 | msgid "When @code{#t}, NSEC3 will be used instead of NSEC." |
36273 | msgstr "" | |
36274 | ||
36275 | #. type: item | |
39764ef8 | 36276 | #: doc/guix.texi:16399 |
b9fe8fd6 JL |
36277 | #, no-wrap |
36278 | msgid "@code{nsec3-iterations} (default: @code{5})" | |
36279 | msgstr "" | |
36280 | ||
36281 | #. type: table | |
39764ef8 | 36282 | #: doc/guix.texi:16401 |
b9fe8fd6 JL |
36283 | msgid "The number of additional times the hashing is performed." |
36284 | msgstr "" | |
36285 | ||
36286 | #. type: item | |
39764ef8 | 36287 | #: doc/guix.texi:16402 |
b9fe8fd6 JL |
36288 | #, no-wrap |
36289 | msgid "@code{nsec3-salt-length} (default: @code{8})" | |
36290 | msgstr "" | |
36291 | ||
36292 | #. type: table | |
39764ef8 | 36293 | #: doc/guix.texi:16405 |
b9fe8fd6 JL |
36294 | msgid "" |
36295 | "The length of a salt field in octets, which is appended to the original " | |
36296 | "owner name before hashing." | |
36297 | msgstr "" | |
36298 | ||
36299 | #. type: item | |
39764ef8 | 36300 | #: doc/guix.texi:16406 |
b9fe8fd6 JL |
36301 | #, no-wrap |
36302 | msgid "@code{nsec3-salt-lifetime} (default: @code{(* 30 24 3600)})" | |
36303 | msgstr "" | |
36304 | ||
36305 | #. type: table | |
39764ef8 | 36306 | #: doc/guix.texi:16408 |
b9fe8fd6 JL |
36307 | msgid "The validity period of newly issued salt field." |
36308 | msgstr "" | |
36309 | ||
36310 | #. type: deftp | |
39764ef8 | 36311 | #: doc/guix.texi:16412 |
b9fe8fd6 JL |
36312 | #, no-wrap |
36313 | msgid "{Data Type} knot-zone-configuration" | |
36314 | msgstr "" | |
36315 | ||
36316 | #. type: deftp | |
39764ef8 | 36317 | #: doc/guix.texi:16415 |
b9fe8fd6 JL |
36318 | msgid "" |
36319 | "Data type representing a zone served by Knot. This type has the following " | |
36320 | "parameters:" | |
36321 | msgstr "" | |
36322 | ||
36323 | #. type: item | |
39764ef8 | 36324 | #: doc/guix.texi:16417 |
b9fe8fd6 JL |
36325 | #, no-wrap |
36326 | msgid "@code{domain} (default: @code{\"\"})" | |
36327 | msgstr "" | |
36328 | ||
36329 | #. type: table | |
39764ef8 | 36330 | #: doc/guix.texi:16419 |
b9fe8fd6 JL |
36331 | msgid "The domain served by this configuration. It must not be empty." |
36332 | msgstr "" | |
36333 | ||
36334 | #. type: item | |
39764ef8 | 36335 | #: doc/guix.texi:16420 |
b9fe8fd6 JL |
36336 | #, no-wrap |
36337 | msgid "@code{file} (default: @code{\"\"})" | |
36338 | msgstr "" | |
36339 | ||
36340 | #. type: table | |
39764ef8 | 36341 | #: doc/guix.texi:16423 |
b9fe8fd6 JL |
36342 | msgid "" |
36343 | "The file where this zone is saved. This parameter is ignored by master " | |
36344 | "zones. Empty means default location that depends on the domain name." | |
36345 | msgstr "" | |
36346 | ||
36347 | #. type: item | |
39764ef8 | 36348 | #: doc/guix.texi:16424 |
b9fe8fd6 JL |
36349 | #, no-wrap |
36350 | msgid "@code{zone} (default: @code{(zone-file)})" | |
36351 | msgstr "" | |
36352 | ||
36353 | #. type: table | |
39764ef8 | 36354 | #: doc/guix.texi:16427 |
b9fe8fd6 JL |
36355 | msgid "" |
36356 | "The content of the zone file. This parameter is ignored by slave zones. It " | |
36357 | "must contain a zone-file record." | |
36358 | msgstr "" | |
36359 | ||
36360 | #. type: item | |
39764ef8 | 36361 | #: doc/guix.texi:16428 |
b9fe8fd6 JL |
36362 | #, no-wrap |
36363 | msgid "@code{master} (default: @code{'()})" | |
36364 | msgstr "" | |
36365 | ||
36366 | #. type: table | |
39764ef8 | 36367 | #: doc/guix.texi:16431 |
b9fe8fd6 JL |
36368 | msgid "" |
36369 | "A list of master remotes. When empty, this zone is a master. When set, " | |
36370 | "this zone is a slave. This is a list of remotes identifiers." | |
36371 | msgstr "" | |
36372 | ||
36373 | #. type: item | |
39764ef8 | 36374 | #: doc/guix.texi:16432 |
b9fe8fd6 JL |
36375 | #, no-wrap |
36376 | msgid "@code{ddns-master} (default: @code{#f})" | |
36377 | msgstr "" | |
36378 | ||
36379 | #. type: table | |
39764ef8 | 36380 | #: doc/guix.texi:16435 |
b9fe8fd6 JL |
36381 | msgid "" |
36382 | "The main master. When empty, it defaults to the first master in the list of " | |
36383 | "masters." | |
36384 | msgstr "" | |
36385 | ||
36386 | #. type: item | |
39764ef8 | 36387 | #: doc/guix.texi:16436 |
b9fe8fd6 JL |
36388 | #, no-wrap |
36389 | msgid "@code{notify} (default: @code{'()})" | |
36390 | msgstr "" | |
36391 | ||
36392 | #. type: table | |
39764ef8 | 36393 | #: doc/guix.texi:16438 |
b9fe8fd6 JL |
36394 | msgid "A list of slave remote identifiers." |
36395 | msgstr "" | |
36396 | ||
36397 | #. type: item | |
39764ef8 | 36398 | #: doc/guix.texi:16439 |
b9fe8fd6 JL |
36399 | #, no-wrap |
36400 | msgid "@code{acl} (default: @code{'()})" | |
36401 | msgstr "" | |
36402 | ||
36403 | #. type: table | |
39764ef8 | 36404 | #: doc/guix.texi:16441 |
b9fe8fd6 JL |
36405 | msgid "A list of acl identifiers." |
36406 | msgstr "" | |
36407 | ||
36408 | #. type: item | |
39764ef8 | 36409 | #: doc/guix.texi:16442 |
b9fe8fd6 JL |
36410 | #, no-wrap |
36411 | msgid "@code{semantic-checks?} (default: @code{#f})" | |
36412 | msgstr "" | |
36413 | ||
36414 | #. type: table | |
39764ef8 | 36415 | #: doc/guix.texi:16444 |
b9fe8fd6 JL |
36416 | msgid "When set, this adds more semantic checks to the zone." |
36417 | msgstr "" | |
36418 | ||
36419 | #. type: item | |
39764ef8 | 36420 | #: doc/guix.texi:16445 |
b9fe8fd6 JL |
36421 | #, no-wrap |
36422 | msgid "@code{disable-any?} (default: @code{#f})" | |
36423 | msgstr "" | |
36424 | ||
36425 | #. type: table | |
39764ef8 | 36426 | #: doc/guix.texi:16447 |
b9fe8fd6 JL |
36427 | msgid "When set, this forbids queries of the ANY type." |
36428 | msgstr "" | |
36429 | ||
36430 | #. type: item | |
39764ef8 | 36431 | #: doc/guix.texi:16448 |
b9fe8fd6 JL |
36432 | #, no-wrap |
36433 | msgid "@code{zonefile-sync} (default: @code{0})" | |
36434 | msgstr "" | |
36435 | ||
36436 | #. type: table | |
39764ef8 | 36437 | #: doc/guix.texi:16451 |
b9fe8fd6 JL |
36438 | msgid "" |
36439 | "The delay between a modification in memory and on disk. 0 means immediate " | |
36440 | "synchronization." | |
36441 | msgstr "" | |
36442 | ||
36443 | #. type: item | |
39764ef8 | 36444 | #: doc/guix.texi:16452 |
b9fe8fd6 JL |
36445 | #, no-wrap |
36446 | msgid "@code{serial-policy} (default: @code{'increment})" | |
36447 | msgstr "" | |
36448 | ||
36449 | #. type: table | |
39764ef8 | 36450 | #: doc/guix.texi:16454 |
b9fe8fd6 JL |
36451 | msgid "A policy between @code{'increment} and @code{'unixtime}." |
36452 | msgstr "" | |
36453 | ||
36454 | #. type: deftp | |
39764ef8 | 36455 | #: doc/guix.texi:16458 |
b9fe8fd6 JL |
36456 | #, no-wrap |
36457 | msgid "{Data Type} knot-configuration" | |
36458 | msgstr "" | |
36459 | ||
36460 | #. type: deftp | |
39764ef8 | 36461 | #: doc/guix.texi:16461 |
b9fe8fd6 JL |
36462 | msgid "" |
36463 | "Data type representing the Knot configuration. This type has the following " | |
36464 | "parameters:" | |
36465 | msgstr "" | |
36466 | ||
36467 | #. type: item | |
39764ef8 | 36468 | #: doc/guix.texi:16463 |
b9fe8fd6 JL |
36469 | #, no-wrap |
36470 | msgid "@code{knot} (default: @code{knot})" | |
36471 | msgstr "" | |
36472 | ||
36473 | #. type: table | |
39764ef8 | 36474 | #: doc/guix.texi:16465 |
b9fe8fd6 JL |
36475 | msgid "The Knot package." |
36476 | msgstr "" | |
36477 | ||
36478 | #. type: item | |
39764ef8 | 36479 | #: doc/guix.texi:16466 |
b9fe8fd6 JL |
36480 | #, no-wrap |
36481 | msgid "@code{run-directory} (default: @code{\"/var/run/knot\"})" | |
36482 | msgstr "" | |
36483 | ||
36484 | #. type: table | |
39764ef8 JL |
36485 | #: doc/guix.texi:16468 |
36486 | msgid "" | |
36487 | "The run directory. This directory will be used for pid file and sockets." | |
b9fe8fd6 JL |
36488 | msgstr "" |
36489 | ||
36490 | #. type: item | |
39764ef8 | 36491 | #: doc/guix.texi:16469 |
b9fe8fd6 JL |
36492 | #, no-wrap |
36493 | msgid "@code{listen-v4} (default: @code{\"0.0.0.0\"})" | |
36494 | msgstr "" | |
36495 | ||
36496 | #. type: table | |
39764ef8 | 36497 | #: doc/guix.texi:16471 doc/guix.texi:16474 |
b9fe8fd6 JL |
36498 | msgid "An ip address on which to listen." |
36499 | msgstr "" | |
36500 | ||
36501 | #. type: item | |
39764ef8 | 36502 | #: doc/guix.texi:16472 |
b9fe8fd6 JL |
36503 | #, no-wrap |
36504 | msgid "@code{listen-v6} (default: @code{\"::\"})" | |
36505 | msgstr "" | |
36506 | ||
36507 | #. type: item | |
39764ef8 | 36508 | #: doc/guix.texi:16475 |
b9fe8fd6 JL |
36509 | #, no-wrap |
36510 | msgid "@code{listen-port} (default: @code{53})" | |
36511 | msgstr "" | |
36512 | ||
36513 | #. type: table | |
39764ef8 | 36514 | #: doc/guix.texi:16477 |
b9fe8fd6 JL |
36515 | msgid "A port on which to listen." |
36516 | msgstr "" | |
36517 | ||
36518 | #. type: item | |
39764ef8 | 36519 | #: doc/guix.texi:16478 |
b9fe8fd6 JL |
36520 | #, no-wrap |
36521 | msgid "@code{keys} (default: @code{'()})" | |
36522 | msgstr "" | |
36523 | ||
36524 | #. type: table | |
39764ef8 | 36525 | #: doc/guix.texi:16480 |
b9fe8fd6 JL |
36526 | msgid "The list of knot-key-configuration used by this configuration." |
36527 | msgstr "" | |
36528 | ||
36529 | #. type: item | |
39764ef8 | 36530 | #: doc/guix.texi:16481 |
b9fe8fd6 JL |
36531 | #, no-wrap |
36532 | msgid "@code{acls} (default: @code{'()})" | |
36533 | msgstr "" | |
36534 | ||
36535 | #. type: table | |
39764ef8 | 36536 | #: doc/guix.texi:16483 |
b9fe8fd6 JL |
36537 | msgid "The list of knot-acl-configuration used by this configuration." |
36538 | msgstr "" | |
36539 | ||
36540 | #. type: item | |
39764ef8 | 36541 | #: doc/guix.texi:16484 |
b9fe8fd6 JL |
36542 | #, no-wrap |
36543 | msgid "@code{remotes} (default: @code{'()})" | |
36544 | msgstr "" | |
36545 | ||
36546 | #. type: table | |
39764ef8 | 36547 | #: doc/guix.texi:16486 |
b9fe8fd6 JL |
36548 | msgid "The list of knot-remote-configuration used by this configuration." |
36549 | msgstr "" | |
36550 | ||
36551 | #. type: item | |
39764ef8 | 36552 | #: doc/guix.texi:16487 |
b9fe8fd6 JL |
36553 | #, no-wrap |
36554 | msgid "@code{zones} (default: @code{'()})" | |
36555 | msgstr "" | |
36556 | ||
36557 | #. type: table | |
39764ef8 | 36558 | #: doc/guix.texi:16489 |
b9fe8fd6 JL |
36559 | msgid "The list of knot-zone-configuration used by this configuration." |
36560 | msgstr "" | |
36561 | ||
36562 | #. type: cindex | |
39764ef8 | 36563 | #: doc/guix.texi:16496 |
b9fe8fd6 JL |
36564 | #, no-wrap |
36565 | msgid "VPN (virtual private network)" | |
36566 | msgstr "" | |
36567 | ||
36568 | #. type: cindex | |
39764ef8 | 36569 | #: doc/guix.texi:16497 |
b9fe8fd6 JL |
36570 | #, no-wrap |
36571 | msgid "virtual private network (VPN)" | |
36572 | msgstr "" | |
36573 | ||
36574 | #. type: Plain text | |
39764ef8 | 36575 | #: doc/guix.texi:16503 |
b9fe8fd6 JL |
36576 | msgid "" |
36577 | "The @code{(gnu services vpn)} module provides services related to " | |
36578 | "@dfn{virtual private networks} (VPNs). It provides a @emph{client} service " | |
36579 | "for your machine to connect to a VPN, and a @emph{servire} service for your " | |
36580 | "machine to host a VPN. Both services use @uref{https://openvpn.net/, " | |
36581 | "OpenVPN}." | |
36582 | msgstr "" | |
36583 | ||
36584 | #. type: deffn | |
39764ef8 | 36585 | #: doc/guix.texi:16504 |
b9fe8fd6 JL |
36586 | #, no-wrap |
36587 | msgid "{Scheme Procedure} openvpn-client-service @" | |
36588 | msgstr "" | |
36589 | ||
36590 | #. type: deffn | |
39764ef8 | 36591 | #: doc/guix.texi:16506 |
b9fe8fd6 JL |
36592 | msgid "[#:config (openvpn-client-configuration)]" |
36593 | msgstr "" | |
36594 | ||
36595 | #. type: deffn | |
39764ef8 JL |
36596 | #: doc/guix.texi:16508 |
36597 | msgid "" | |
36598 | "Return a service that runs @command{openvpn}, a VPN daemon, as a client." | |
b9fe8fd6 JL |
36599 | msgstr "" |
36600 | ||
36601 | #. type: deffn | |
39764ef8 | 36602 | #: doc/guix.texi:16510 |
b9fe8fd6 JL |
36603 | #, no-wrap |
36604 | msgid "{Scheme Procedure} openvpn-server-service @" | |
36605 | msgstr "" | |
36606 | ||
36607 | #. type: deffn | |
39764ef8 | 36608 | #: doc/guix.texi:16512 |
b9fe8fd6 JL |
36609 | msgid "[#:config (openvpn-server-configuration)]" |
36610 | msgstr "" | |
36611 | ||
36612 | #. type: deffn | |
39764ef8 JL |
36613 | #: doc/guix.texi:16514 |
36614 | msgid "" | |
36615 | "Return a service that runs @command{openvpn}, a VPN daemon, as a server." | |
b9fe8fd6 JL |
36616 | msgstr "" |
36617 | ||
36618 | #. type: deffn | |
39764ef8 | 36619 | #: doc/guix.texi:16516 |
b9fe8fd6 JL |
36620 | msgid "Both can be run simultaneously." |
36621 | msgstr "" | |
36622 | ||
36623 | #. type: Plain text | |
39764ef8 | 36624 | #: doc/guix.texi:16521 |
b9fe8fd6 JL |
36625 | msgid "Available @code{openvpn-client-configuration} fields are:" |
36626 | msgstr "" | |
36627 | ||
36628 | #. type: deftypevr | |
39764ef8 | 36629 | #: doc/guix.texi:16522 |
b9fe8fd6 JL |
36630 | #, no-wrap |
36631 | msgid "{@code{openvpn-client-configuration} parameter} package openvpn" | |
36632 | msgstr "" | |
36633 | ||
36634 | #. type: deftypevr | |
39764ef8 | 36635 | #: doc/guix.texi:16524 doc/guix.texi:16660 |
b9fe8fd6 JL |
36636 | msgid "The OpenVPN package." |
36637 | msgstr "" | |
36638 | ||
36639 | #. type: deftypevr | |
39764ef8 | 36640 | #: doc/guix.texi:16527 |
b9fe8fd6 JL |
36641 | #, no-wrap |
36642 | msgid "{@code{openvpn-client-configuration} parameter} string pid-file" | |
36643 | msgstr "" | |
36644 | ||
36645 | #. type: deftypevr | |
39764ef8 | 36646 | #: doc/guix.texi:16529 doc/guix.texi:16665 |
b9fe8fd6 JL |
36647 | msgid "The OpenVPN pid file." |
36648 | msgstr "" | |
36649 | ||
36650 | #. type: deftypevr | |
39764ef8 | 36651 | #: doc/guix.texi:16531 doc/guix.texi:16667 |
b9fe8fd6 JL |
36652 | msgid "Defaults to @samp{\"/var/run/openvpn/openvpn.pid\"}." |
36653 | msgstr "" | |
36654 | ||
36655 | #. type: deftypevr | |
39764ef8 | 36656 | #: doc/guix.texi:16534 |
b9fe8fd6 JL |
36657 | #, no-wrap |
36658 | msgid "{@code{openvpn-client-configuration} parameter} proto proto" | |
36659 | msgstr "" | |
36660 | ||
36661 | #. type: deftypevr | |
39764ef8 | 36662 | #: doc/guix.texi:16537 doc/guix.texi:16673 |
b9fe8fd6 | 36663 | msgid "" |
39764ef8 | 36664 | "The protocol (UDP or TCP) used to open a channel between clients and servers." |
b9fe8fd6 JL |
36665 | msgstr "" |
36666 | ||
36667 | #. type: deftypevr | |
39764ef8 | 36668 | #: doc/guix.texi:16539 doc/guix.texi:16675 |
b9fe8fd6 JL |
36669 | msgid "Defaults to @samp{udp}." |
36670 | msgstr "" | |
36671 | ||
36672 | #. type: deftypevr | |
39764ef8 | 36673 | #: doc/guix.texi:16542 |
b9fe8fd6 JL |
36674 | #, no-wrap |
36675 | msgid "{@code{openvpn-client-configuration} parameter} dev dev" | |
36676 | msgstr "" | |
36677 | ||
36678 | #. type: deftypevr | |
39764ef8 | 36679 | #: doc/guix.texi:16544 doc/guix.texi:16680 |
b9fe8fd6 JL |
36680 | msgid "The device type used to represent the VPN connection." |
36681 | msgstr "" | |
36682 | ||
36683 | #. type: deftypevr | |
39764ef8 | 36684 | #: doc/guix.texi:16546 doc/guix.texi:16682 |
b9fe8fd6 JL |
36685 | msgid "Defaults to @samp{tun}." |
36686 | msgstr "" | |
36687 | ||
36688 | #. type: deftypevr | |
39764ef8 | 36689 | #: doc/guix.texi:16549 |
b9fe8fd6 JL |
36690 | #, no-wrap |
36691 | msgid "{@code{openvpn-client-configuration} parameter} string ca" | |
36692 | msgstr "" | |
36693 | ||
36694 | #. type: deftypevr | |
39764ef8 | 36695 | #: doc/guix.texi:16551 doc/guix.texi:16687 |
b9fe8fd6 JL |
36696 | msgid "The certificate authority to check connections against." |
36697 | msgstr "" | |
36698 | ||
36699 | #. type: deftypevr | |
39764ef8 | 36700 | #: doc/guix.texi:16553 doc/guix.texi:16689 |
b9fe8fd6 JL |
36701 | msgid "Defaults to @samp{\"/etc/openvpn/ca.crt\"}." |
36702 | msgstr "" | |
36703 | ||
36704 | #. type: deftypevr | |
39764ef8 | 36705 | #: doc/guix.texi:16556 |
b9fe8fd6 JL |
36706 | #, no-wrap |
36707 | msgid "{@code{openvpn-client-configuration} parameter} string cert" | |
36708 | msgstr "" | |
36709 | ||
36710 | #. type: deftypevr | |
39764ef8 | 36711 | #: doc/guix.texi:16559 doc/guix.texi:16695 |
b9fe8fd6 JL |
36712 | msgid "" |
36713 | "The certificate of the machine the daemon is running on. It should be " | |
36714 | "signed by the authority given in @code{ca}." | |
36715 | msgstr "" | |
36716 | ||
36717 | #. type: deftypevr | |
39764ef8 | 36718 | #: doc/guix.texi:16561 doc/guix.texi:16697 |
b9fe8fd6 JL |
36719 | msgid "Defaults to @samp{\"/etc/openvpn/client.crt\"}." |
36720 | msgstr "" | |
36721 | ||
36722 | #. type: deftypevr | |
39764ef8 | 36723 | #: doc/guix.texi:16564 |
b9fe8fd6 JL |
36724 | #, no-wrap |
36725 | msgid "{@code{openvpn-client-configuration} parameter} string key" | |
36726 | msgstr "" | |
36727 | ||
36728 | #. type: deftypevr | |
39764ef8 | 36729 | #: doc/guix.texi:16567 doc/guix.texi:16703 |
b9fe8fd6 JL |
36730 | msgid "" |
36731 | "The key of the machine the daemon is running on. It must be the key whose " | |
36732 | "certificate is @code{cert}." | |
36733 | msgstr "" | |
36734 | ||
36735 | #. type: deftypevr | |
39764ef8 | 36736 | #: doc/guix.texi:16569 doc/guix.texi:16705 |
b9fe8fd6 JL |
36737 | msgid "Defaults to @samp{\"/etc/openvpn/client.key\"}." |
36738 | msgstr "" | |
36739 | ||
36740 | #. type: deftypevr | |
39764ef8 | 36741 | #: doc/guix.texi:16572 |
b9fe8fd6 JL |
36742 | #, no-wrap |
36743 | msgid "{@code{openvpn-client-configuration} parameter} boolean comp-lzo?" | |
36744 | msgstr "" | |
36745 | ||
36746 | #. type: deftypevr | |
39764ef8 | 36747 | #: doc/guix.texi:16574 doc/guix.texi:16710 |
b9fe8fd6 JL |
36748 | msgid "Whether to use the lzo compression algorithm." |
36749 | msgstr "" | |
36750 | ||
36751 | #. type: deftypevr | |
39764ef8 | 36752 | #: doc/guix.texi:16579 |
b9fe8fd6 JL |
36753 | #, no-wrap |
36754 | msgid "{@code{openvpn-client-configuration} parameter} boolean persist-key?" | |
36755 | msgstr "" | |
36756 | ||
36757 | #. type: deftypevr | |
39764ef8 | 36758 | #: doc/guix.texi:16581 doc/guix.texi:16717 |
b9fe8fd6 JL |
36759 | msgid "Don't re-read key files across SIGUSR1 or --ping-restart." |
36760 | msgstr "" | |
36761 | ||
36762 | #. type: deftypevr | |
39764ef8 | 36763 | #: doc/guix.texi:16586 |
b9fe8fd6 JL |
36764 | #, no-wrap |
36765 | msgid "{@code{openvpn-client-configuration} parameter} boolean persist-tun?" | |
36766 | msgstr "" | |
36767 | ||
36768 | #. type: deftypevr | |
39764ef8 | 36769 | #: doc/guix.texi:16589 doc/guix.texi:16725 |
b9fe8fd6 JL |
36770 | msgid "" |
36771 | "Don't close and reopen TUN/TAP device or run up/down scripts across SIGUSR1 " | |
36772 | "or --ping-restart restarts." | |
36773 | msgstr "" | |
36774 | ||
36775 | #. type: deftypevr | |
39764ef8 | 36776 | #: doc/guix.texi:16594 |
b9fe8fd6 JL |
36777 | #, no-wrap |
36778 | msgid "{@code{openvpn-client-configuration} parameter} number verbosity" | |
36779 | msgstr "" | |
36780 | ||
36781 | #. type: deftypevr | |
39764ef8 | 36782 | #: doc/guix.texi:16596 doc/guix.texi:16732 |
b9fe8fd6 JL |
36783 | msgid "Verbosity level." |
36784 | msgstr "" | |
36785 | ||
36786 | #. type: deftypevr | |
39764ef8 JL |
36787 | #: doc/guix.texi:16598 doc/guix.texi:16734 doc/guix.texi:18011 |
36788 | #: doc/guix.texi:18234 | |
b9fe8fd6 JL |
36789 | msgid "Defaults to @samp{3}." |
36790 | msgstr "" | |
36791 | ||
36792 | #. type: deftypevr | |
39764ef8 | 36793 | #: doc/guix.texi:16601 |
b9fe8fd6 JL |
36794 | #, no-wrap |
36795 | msgid "{@code{openvpn-client-configuration} parameter} tls-auth-client tls-auth" | |
36796 | msgstr "" | |
36797 | ||
36798 | #. type: deftypevr | |
39764ef8 | 36799 | #: doc/guix.texi:16604 doc/guix.texi:16740 |
b9fe8fd6 JL |
36800 | msgid "" |
36801 | "Add an additional layer of HMAC authentication on top of the TLS control " | |
36802 | "channel to protect against DoS attacks." | |
36803 | msgstr "" | |
36804 | ||
36805 | #. type: deftypevr | |
39764ef8 | 36806 | #: doc/guix.texi:16609 |
b9fe8fd6 JL |
36807 | #, no-wrap |
36808 | msgid "{@code{openvpn-client-configuration} parameter} key-usage verify-key-usage?" | |
36809 | msgstr "" | |
36810 | ||
36811 | #. type: deftypevr | |
39764ef8 | 36812 | #: doc/guix.texi:16611 |
b9fe8fd6 JL |
36813 | msgid "Whether to check the server certificate has server usage extension." |
36814 | msgstr "" | |
36815 | ||
36816 | #. type: deftypevr | |
39764ef8 | 36817 | #: doc/guix.texi:16616 |
b9fe8fd6 JL |
36818 | #, no-wrap |
36819 | msgid "{@code{openvpn-client-configuration} parameter} bind bind?" | |
36820 | msgstr "" | |
36821 | ||
36822 | #. type: deftypevr | |
39764ef8 | 36823 | #: doc/guix.texi:16618 |
b9fe8fd6 JL |
36824 | msgid "Bind to a specific local port number." |
36825 | msgstr "" | |
36826 | ||
36827 | #. type: deftypevr | |
39764ef8 | 36828 | #: doc/guix.texi:16623 |
b9fe8fd6 JL |
36829 | #, no-wrap |
36830 | msgid "{@code{openvpn-client-configuration} parameter} resolv-retry resolv-retry?" | |
36831 | msgstr "" | |
36832 | ||
36833 | #. type: deftypevr | |
39764ef8 | 36834 | #: doc/guix.texi:16625 |
b9fe8fd6 JL |
36835 | msgid "Retry resolving server address." |
36836 | msgstr "" | |
36837 | ||
36838 | #. type: deftypevr | |
39764ef8 | 36839 | #: doc/guix.texi:16630 |
b9fe8fd6 JL |
36840 | #, no-wrap |
36841 | msgid "{@code{openvpn-client-configuration} parameter} openvpn-remote-list remote" | |
36842 | msgstr "" | |
36843 | ||
36844 | #. type: deftypevr | |
39764ef8 | 36845 | #: doc/guix.texi:16632 |
b9fe8fd6 JL |
36846 | msgid "A list of remote servers to connect to." |
36847 | msgstr "" | |
36848 | ||
36849 | #. type: deftypevr | |
39764ef8 | 36850 | #: doc/guix.texi:16636 |
b9fe8fd6 JL |
36851 | msgid "Available @code{openvpn-remote-configuration} fields are:" |
36852 | msgstr "" | |
36853 | ||
36854 | #. type: deftypevr | |
39764ef8 | 36855 | #: doc/guix.texi:16637 |
b9fe8fd6 JL |
36856 | #, no-wrap |
36857 | msgid "{@code{openvpn-remote-configuration} parameter} string name" | |
36858 | msgstr "" | |
36859 | ||
36860 | #. type: deftypevr | |
39764ef8 | 36861 | #: doc/guix.texi:16639 |
b9fe8fd6 JL |
36862 | msgid "Server name." |
36863 | msgstr "" | |
36864 | ||
36865 | #. type: deftypevr | |
39764ef8 | 36866 | #: doc/guix.texi:16641 |
b9fe8fd6 JL |
36867 | msgid "Defaults to @samp{\"my-server\"}." |
36868 | msgstr "" | |
36869 | ||
36870 | #. type: deftypevr | |
39764ef8 | 36871 | #: doc/guix.texi:16644 |
b9fe8fd6 JL |
36872 | #, no-wrap |
36873 | msgid "{@code{openvpn-remote-configuration} parameter} number port" | |
36874 | msgstr "" | |
36875 | ||
36876 | #. type: deftypevr | |
39764ef8 | 36877 | #: doc/guix.texi:16646 |
b9fe8fd6 JL |
36878 | msgid "Port number the server listens to." |
36879 | msgstr "" | |
36880 | ||
36881 | #. type: deftypevr | |
39764ef8 | 36882 | #: doc/guix.texi:16648 doc/guix.texi:16749 |
b9fe8fd6 JL |
36883 | msgid "Defaults to @samp{1194}." |
36884 | msgstr "" | |
36885 | ||
36886 | #. type: Plain text | |
39764ef8 | 36887 | #: doc/guix.texi:16657 |
b9fe8fd6 JL |
36888 | msgid "Available @code{openvpn-server-configuration} fields are:" |
36889 | msgstr "" | |
36890 | ||
36891 | #. type: deftypevr | |
39764ef8 | 36892 | #: doc/guix.texi:16658 |
b9fe8fd6 JL |
36893 | #, no-wrap |
36894 | msgid "{@code{openvpn-server-configuration} parameter} package openvpn" | |
36895 | msgstr "" | |
36896 | ||
36897 | #. type: deftypevr | |
39764ef8 | 36898 | #: doc/guix.texi:16663 |
b9fe8fd6 JL |
36899 | #, no-wrap |
36900 | msgid "{@code{openvpn-server-configuration} parameter} string pid-file" | |
36901 | msgstr "" | |
36902 | ||
36903 | #. type: deftypevr | |
39764ef8 | 36904 | #: doc/guix.texi:16670 |
b9fe8fd6 JL |
36905 | #, no-wrap |
36906 | msgid "{@code{openvpn-server-configuration} parameter} proto proto" | |
36907 | msgstr "" | |
36908 | ||
36909 | #. type: deftypevr | |
39764ef8 | 36910 | #: doc/guix.texi:16678 |
b9fe8fd6 JL |
36911 | #, no-wrap |
36912 | msgid "{@code{openvpn-server-configuration} parameter} dev dev" | |
36913 | msgstr "" | |
36914 | ||
36915 | #. type: deftypevr | |
39764ef8 | 36916 | #: doc/guix.texi:16685 |
b9fe8fd6 JL |
36917 | #, no-wrap |
36918 | msgid "{@code{openvpn-server-configuration} parameter} string ca" | |
36919 | msgstr "" | |
36920 | ||
36921 | #. type: deftypevr | |
39764ef8 | 36922 | #: doc/guix.texi:16692 |
b9fe8fd6 JL |
36923 | #, no-wrap |
36924 | msgid "{@code{openvpn-server-configuration} parameter} string cert" | |
36925 | msgstr "" | |
36926 | ||
36927 | #. type: deftypevr | |
39764ef8 | 36928 | #: doc/guix.texi:16700 |
b9fe8fd6 JL |
36929 | #, no-wrap |
36930 | msgid "{@code{openvpn-server-configuration} parameter} string key" | |
36931 | msgstr "" | |
36932 | ||
36933 | #. type: deftypevr | |
39764ef8 | 36934 | #: doc/guix.texi:16708 |
b9fe8fd6 JL |
36935 | #, no-wrap |
36936 | msgid "{@code{openvpn-server-configuration} parameter} boolean comp-lzo?" | |
36937 | msgstr "" | |
36938 | ||
36939 | #. type: deftypevr | |
39764ef8 | 36940 | #: doc/guix.texi:16715 |
b9fe8fd6 JL |
36941 | #, no-wrap |
36942 | msgid "{@code{openvpn-server-configuration} parameter} boolean persist-key?" | |
36943 | msgstr "" | |
36944 | ||
36945 | #. type: deftypevr | |
39764ef8 | 36946 | #: doc/guix.texi:16722 |
b9fe8fd6 JL |
36947 | #, no-wrap |
36948 | msgid "{@code{openvpn-server-configuration} parameter} boolean persist-tun?" | |
36949 | msgstr "" | |
36950 | ||
36951 | #. type: deftypevr | |
39764ef8 | 36952 | #: doc/guix.texi:16730 |
b9fe8fd6 JL |
36953 | #, no-wrap |
36954 | msgid "{@code{openvpn-server-configuration} parameter} number verbosity" | |
36955 | msgstr "" | |
36956 | ||
36957 | #. type: deftypevr | |
39764ef8 | 36958 | #: doc/guix.texi:16737 |
b9fe8fd6 JL |
36959 | #, no-wrap |
36960 | msgid "{@code{openvpn-server-configuration} parameter} tls-auth-server tls-auth" | |
36961 | msgstr "" | |
36962 | ||
36963 | #. type: deftypevr | |
39764ef8 | 36964 | #: doc/guix.texi:16745 |
b9fe8fd6 JL |
36965 | #, no-wrap |
36966 | msgid "{@code{openvpn-server-configuration} parameter} number port" | |
36967 | msgstr "" | |
36968 | ||
36969 | #. type: deftypevr | |
39764ef8 | 36970 | #: doc/guix.texi:16747 |
b9fe8fd6 JL |
36971 | msgid "Specifies the port number on which the server listens." |
36972 | msgstr "" | |
36973 | ||
36974 | #. type: deftypevr | |
39764ef8 | 36975 | #: doc/guix.texi:16752 |
b9fe8fd6 JL |
36976 | #, no-wrap |
36977 | msgid "{@code{openvpn-server-configuration} parameter} ip-mask server" | |
36978 | msgstr "" | |
36979 | ||
36980 | #. type: deftypevr | |
39764ef8 | 36981 | #: doc/guix.texi:16754 |
b9fe8fd6 JL |
36982 | msgid "An ip and mask specifying the subnet inside the virtual network." |
36983 | msgstr "" | |
36984 | ||
36985 | #. type: deftypevr | |
39764ef8 | 36986 | #: doc/guix.texi:16756 |
b9fe8fd6 JL |
36987 | msgid "Defaults to @samp{\"10.8.0.0 255.255.255.0\"}." |
36988 | msgstr "" | |
36989 | ||
36990 | #. type: deftypevr | |
39764ef8 | 36991 | #: doc/guix.texi:16759 |
b9fe8fd6 JL |
36992 | #, no-wrap |
36993 | msgid "{@code{openvpn-server-configuration} parameter} cidr6 server-ipv6" | |
36994 | msgstr "" | |
36995 | ||
36996 | #. type: deftypevr | |
39764ef8 | 36997 | #: doc/guix.texi:16761 |
b9fe8fd6 JL |
36998 | msgid "A CIDR notation specifying the IPv6 subnet inside the virtual network." |
36999 | msgstr "" | |
37000 | ||
37001 | #. type: deftypevr | |
39764ef8 | 37002 | #: doc/guix.texi:16766 |
b9fe8fd6 JL |
37003 | #, no-wrap |
37004 | msgid "{@code{openvpn-server-configuration} parameter} string dh" | |
37005 | msgstr "" | |
37006 | ||
37007 | #. type: deftypevr | |
39764ef8 | 37008 | #: doc/guix.texi:16768 |
b9fe8fd6 JL |
37009 | msgid "The Diffie-Hellman parameters file." |
37010 | msgstr "" | |
37011 | ||
37012 | #. type: deftypevr | |
39764ef8 | 37013 | #: doc/guix.texi:16770 |
b9fe8fd6 JL |
37014 | msgid "Defaults to @samp{\"/etc/openvpn/dh2048.pem\"}." |
37015 | msgstr "" | |
37016 | ||
37017 | #. type: deftypevr | |
39764ef8 | 37018 | #: doc/guix.texi:16773 |
b9fe8fd6 JL |
37019 | #, no-wrap |
37020 | msgid "{@code{openvpn-server-configuration} parameter} string ifconfig-pool-persist" | |
37021 | msgstr "" | |
37022 | ||
37023 | #. type: deftypevr | |
39764ef8 | 37024 | #: doc/guix.texi:16775 |
b9fe8fd6 JL |
37025 | msgid "The file that records client IPs." |
37026 | msgstr "" | |
37027 | ||
37028 | #. type: deftypevr | |
39764ef8 | 37029 | #: doc/guix.texi:16777 |
b9fe8fd6 JL |
37030 | msgid "Defaults to @samp{\"/etc/openvpn/ipp.txt\"}." |
37031 | msgstr "" | |
37032 | ||
37033 | #. type: deftypevr | |
39764ef8 | 37034 | #: doc/guix.texi:16780 |
b9fe8fd6 JL |
37035 | #, no-wrap |
37036 | msgid "{@code{openvpn-server-configuration} parameter} gateway redirect-gateway?" | |
37037 | msgstr "" | |
37038 | ||
37039 | #. type: deftypevr | |
39764ef8 | 37040 | #: doc/guix.texi:16782 |
b9fe8fd6 JL |
37041 | msgid "When true, the server will act as a gateway for its clients." |
37042 | msgstr "" | |
37043 | ||
37044 | #. type: deftypevr | |
39764ef8 | 37045 | #: doc/guix.texi:16787 |
b9fe8fd6 JL |
37046 | #, no-wrap |
37047 | msgid "{@code{openvpn-server-configuration} parameter} boolean client-to-client?" | |
37048 | msgstr "" | |
37049 | ||
37050 | #. type: deftypevr | |
39764ef8 | 37051 | #: doc/guix.texi:16789 |
b9fe8fd6 JL |
37052 | msgid "When true, clients are allowed to talk to each other inside the VPN." |
37053 | msgstr "" | |
37054 | ||
37055 | #. type: deftypevr | |
39764ef8 | 37056 | #: doc/guix.texi:16794 |
b9fe8fd6 JL |
37057 | #, no-wrap |
37058 | msgid "{@code{openvpn-server-configuration} parameter} keepalive keepalive" | |
37059 | msgstr "" | |
37060 | ||
37061 | #. type: deftypevr | |
39764ef8 | 37062 | #: doc/guix.texi:16800 |
b9fe8fd6 JL |
37063 | msgid "" |
37064 | "Causes ping-like messages to be sent back and forth over the link so that " | |
37065 | "each side knows when the other side has gone down. @code{keepalive} " | |
37066 | "requires a pair. The first element is the period of the ping sending, and " | |
37067 | "the second element is the timeout before considering the other side down." | |
37068 | msgstr "" | |
37069 | ||
37070 | #. type: deftypevr | |
39764ef8 | 37071 | #: doc/guix.texi:16803 |
b9fe8fd6 JL |
37072 | #, no-wrap |
37073 | msgid "{@code{openvpn-server-configuration} parameter} number max-clients" | |
37074 | msgstr "" | |
37075 | ||
37076 | #. type: deftypevr | |
39764ef8 | 37077 | #: doc/guix.texi:16805 |
b9fe8fd6 JL |
37078 | msgid "The maximum number of clients." |
37079 | msgstr "" | |
37080 | ||
37081 | #. type: deftypevr | |
39764ef8 | 37082 | #: doc/guix.texi:16810 |
b9fe8fd6 JL |
37083 | #, no-wrap |
37084 | msgid "{@code{openvpn-server-configuration} parameter} string status" | |
37085 | msgstr "" | |
37086 | ||
37087 | #. type: deftypevr | |
39764ef8 | 37088 | #: doc/guix.texi:16813 |
b9fe8fd6 JL |
37089 | msgid "" |
37090 | "The status file. This file shows a small report on current connection. It " | |
37091 | "is truncated and rewritten every minute." | |
37092 | msgstr "" | |
37093 | ||
37094 | #. type: deftypevr | |
39764ef8 | 37095 | #: doc/guix.texi:16815 |
b9fe8fd6 JL |
37096 | msgid "Defaults to @samp{\"/var/run/openvpn/status\"}." |
37097 | msgstr "" | |
37098 | ||
37099 | #. type: deftypevr | |
39764ef8 | 37100 | #: doc/guix.texi:16818 |
b9fe8fd6 | 37101 | #, no-wrap |
39764ef8 | 37102 | msgid "{@code{openvpn-server-configuration} parameter} openvpn-ccd-list client-config-dir" |
b9fe8fd6 JL |
37103 | msgstr "" |
37104 | ||
37105 | #. type: deftypevr | |
39764ef8 | 37106 | #: doc/guix.texi:16820 |
b9fe8fd6 JL |
37107 | msgid "The list of configuration for some clients." |
37108 | msgstr "" | |
37109 | ||
37110 | #. type: deftypevr | |
39764ef8 | 37111 | #: doc/guix.texi:16824 |
b9fe8fd6 JL |
37112 | msgid "Available @code{openvpn-ccd-configuration} fields are:" |
37113 | msgstr "" | |
37114 | ||
37115 | #. type: deftypevr | |
39764ef8 | 37116 | #: doc/guix.texi:16825 |
b9fe8fd6 JL |
37117 | #, no-wrap |
37118 | msgid "{@code{openvpn-ccd-configuration} parameter} string name" | |
37119 | msgstr "" | |
37120 | ||
37121 | #. type: deftypevr | |
39764ef8 | 37122 | #: doc/guix.texi:16827 |
b9fe8fd6 JL |
37123 | msgid "Client name." |
37124 | msgstr "" | |
37125 | ||
37126 | #. type: deftypevr | |
39764ef8 | 37127 | #: doc/guix.texi:16829 |
b9fe8fd6 JL |
37128 | msgid "Defaults to @samp{\"client\"}." |
37129 | msgstr "" | |
37130 | ||
37131 | #. type: deftypevr | |
39764ef8 | 37132 | #: doc/guix.texi:16832 |
b9fe8fd6 JL |
37133 | #, no-wrap |
37134 | msgid "{@code{openvpn-ccd-configuration} parameter} ip-mask iroute" | |
37135 | msgstr "" | |
37136 | ||
37137 | #. type: deftypevr | |
39764ef8 | 37138 | #: doc/guix.texi:16834 |
b9fe8fd6 JL |
37139 | msgid "Client own network" |
37140 | msgstr "" | |
37141 | ||
37142 | #. type: deftypevr | |
39764ef8 | 37143 | #: doc/guix.texi:16839 |
b9fe8fd6 JL |
37144 | #, no-wrap |
37145 | msgid "{@code{openvpn-ccd-configuration} parameter} ip-mask ifconfig-push" | |
37146 | msgstr "" | |
37147 | ||
37148 | #. type: deftypevr | |
39764ef8 | 37149 | #: doc/guix.texi:16841 |
b9fe8fd6 JL |
37150 | msgid "Client VPN IP." |
37151 | msgstr "" | |
37152 | ||
37153 | #. type: cindex | |
39764ef8 | 37154 | #: doc/guix.texi:16854 |
b9fe8fd6 JL |
37155 | #, no-wrap |
37156 | msgid "NFS" | |
37157 | msgstr "" | |
37158 | ||
37159 | #. type: Plain text | |
39764ef8 | 37160 | #: doc/guix.texi:16859 |
b9fe8fd6 JL |
37161 | msgid "" |
37162 | "The @code{(gnu services nfs)} module provides the following services, which " | |
37163 | "are most commonly used in relation to mounting or exporting directory trees " | |
37164 | "as @dfn{network file systems} (NFS)." | |
37165 | msgstr "" | |
37166 | ||
37167 | #. type: subsubheading | |
39764ef8 | 37168 | #: doc/guix.texi:16860 |
b9fe8fd6 JL |
37169 | #, no-wrap |
37170 | msgid "RPC Bind Service" | |
37171 | msgstr "" | |
37172 | ||
37173 | #. type: cindex | |
39764ef8 | 37174 | #: doc/guix.texi:16861 |
b9fe8fd6 JL |
37175 | #, no-wrap |
37176 | msgid "rpcbind" | |
37177 | msgstr "" | |
37178 | ||
37179 | #. type: Plain text | |
39764ef8 | 37180 | #: doc/guix.texi:16867 |
b9fe8fd6 JL |
37181 | msgid "" |
37182 | "The RPC Bind service provides a facility to map program numbers into " | |
37183 | "universal addresses. Many NFS related services use this facility. Hence it " | |
37184 | "is automatically started when a dependent service starts." | |
37185 | msgstr "" | |
37186 | ||
37187 | #. type: defvr | |
39764ef8 | 37188 | #: doc/guix.texi:16868 |
b9fe8fd6 JL |
37189 | #, no-wrap |
37190 | msgid "{Scheme Variable} rpcbind-service-type" | |
37191 | msgstr "" | |
37192 | ||
37193 | #. type: defvr | |
39764ef8 | 37194 | #: doc/guix.texi:16870 |
b9fe8fd6 JL |
37195 | msgid "A service type for the RPC portmapper daemon." |
37196 | msgstr "" | |
37197 | ||
37198 | #. type: deftp | |
39764ef8 | 37199 | #: doc/guix.texi:16873 |
b9fe8fd6 JL |
37200 | #, no-wrap |
37201 | msgid "{Data Type} rpcbind-configuration" | |
37202 | msgstr "" | |
37203 | ||
37204 | #. type: deftp | |
39764ef8 | 37205 | #: doc/guix.texi:16876 |
b9fe8fd6 JL |
37206 | msgid "" |
37207 | "Data type representing the configuration of the RPC Bind Service. This type " | |
37208 | "has the following parameters:" | |
37209 | msgstr "" | |
37210 | ||
37211 | #. type: item | |
39764ef8 | 37212 | #: doc/guix.texi:16877 |
b9fe8fd6 JL |
37213 | #, no-wrap |
37214 | msgid "@code{rpcbind} (default: @code{rpcbind})" | |
37215 | msgstr "" | |
37216 | ||
37217 | #. type: table | |
39764ef8 | 37218 | #: doc/guix.texi:16879 |
b9fe8fd6 JL |
37219 | msgid "The rpcbind package to use." |
37220 | msgstr "" | |
37221 | ||
37222 | #. type: item | |
39764ef8 | 37223 | #: doc/guix.texi:16880 |
b9fe8fd6 JL |
37224 | #, no-wrap |
37225 | msgid "@code{warm-start?} (default: @code{#t})" | |
37226 | msgstr "" | |
37227 | ||
37228 | #. type: table | |
39764ef8 | 37229 | #: doc/guix.texi:16884 |
b9fe8fd6 JL |
37230 | msgid "" |
37231 | "If this parameter is @code{#t}, then the daemon will read a state file on " | |
37232 | "startup thus reloading state information saved by a previous instance." | |
37233 | msgstr "" | |
37234 | ||
37235 | #. type: subsubheading | |
39764ef8 | 37236 | #: doc/guix.texi:16888 |
b9fe8fd6 JL |
37237 | #, no-wrap |
37238 | msgid "Pipefs Pseudo File System" | |
37239 | msgstr "" | |
37240 | ||
37241 | #. type: cindex | |
39764ef8 | 37242 | #: doc/guix.texi:16889 |
b9fe8fd6 JL |
37243 | #, no-wrap |
37244 | msgid "pipefs" | |
37245 | msgstr "" | |
37246 | ||
37247 | #. type: cindex | |
39764ef8 | 37248 | #: doc/guix.texi:16890 |
b9fe8fd6 JL |
37249 | #, no-wrap |
37250 | msgid "rpc_pipefs" | |
37251 | msgstr "" | |
37252 | ||
37253 | #. type: Plain text | |
39764ef8 | 37254 | #: doc/guix.texi:16894 |
b9fe8fd6 JL |
37255 | msgid "" |
37256 | "The pipefs file system is used to transfer NFS related data between the " | |
37257 | "kernel and user space programs." | |
37258 | msgstr "" | |
37259 | ||
37260 | #. type: defvr | |
39764ef8 | 37261 | #: doc/guix.texi:16895 |
b9fe8fd6 JL |
37262 | #, no-wrap |
37263 | msgid "{Scheme Variable} pipefs-service-type" | |
37264 | msgstr "" | |
37265 | ||
37266 | #. type: defvr | |
39764ef8 | 37267 | #: doc/guix.texi:16897 |
b9fe8fd6 JL |
37268 | msgid "A service type for the pipefs pseudo file system." |
37269 | msgstr "" | |
37270 | ||
37271 | #. type: deftp | |
39764ef8 | 37272 | #: doc/guix.texi:16899 |
b9fe8fd6 JL |
37273 | #, no-wrap |
37274 | msgid "{Data Type} pipefs-configuration" | |
37275 | msgstr "" | |
37276 | ||
37277 | #. type: deftp | |
39764ef8 | 37278 | #: doc/guix.texi:16902 |
b9fe8fd6 JL |
37279 | msgid "" |
37280 | "Data type representing the configuration of the pipefs pseudo file system " | |
37281 | "service. This type has the following parameters:" | |
37282 | msgstr "" | |
37283 | ||
37284 | #. type: item | |
39764ef8 | 37285 | #: doc/guix.texi:16903 |
b9fe8fd6 JL |
37286 | #, no-wrap |
37287 | msgid "@code{mount-point} (default: @code{\"/var/lib/nfs/rpc_pipefs\"})" | |
37288 | msgstr "" | |
37289 | ||
37290 | #. type: table | |
39764ef8 | 37291 | #: doc/guix.texi:16905 |
b9fe8fd6 JL |
37292 | msgid "The directory to which the file system is to be attached." |
37293 | msgstr "" | |
37294 | ||
37295 | #. type: subsubheading | |
39764ef8 | 37296 | #: doc/guix.texi:16909 |
b9fe8fd6 JL |
37297 | #, no-wrap |
37298 | msgid "GSS Daemon Service" | |
37299 | msgstr "" | |
37300 | ||
37301 | #. type: cindex | |
39764ef8 | 37302 | #: doc/guix.texi:16910 |
b9fe8fd6 JL |
37303 | #, no-wrap |
37304 | msgid "GSSD" | |
37305 | msgstr "" | |
37306 | ||
37307 | #. type: cindex | |
39764ef8 | 37308 | #: doc/guix.texi:16911 |
b9fe8fd6 JL |
37309 | #, no-wrap |
37310 | msgid "GSS" | |
37311 | msgstr "" | |
37312 | ||
37313 | #. type: cindex | |
39764ef8 | 37314 | #: doc/guix.texi:16912 |
b9fe8fd6 JL |
37315 | #, no-wrap |
37316 | msgid "global security system" | |
37317 | msgstr "" | |
37318 | ||
37319 | #. type: Plain text | |
39764ef8 | 37320 | #: doc/guix.texi:16919 |
b9fe8fd6 JL |
37321 | msgid "" |
37322 | "The @dfn{global security system} (GSS) daemon provides strong security for " | |
37323 | "RPC based protocols. Before exchanging RPC requests an RPC client must " | |
37324 | "establish a security context. Typically this is done using the Kerberos " | |
37325 | "command @command{kinit} or automatically at login time using PAM services " | |
37326 | "(@pxref{Kerberos Services})." | |
37327 | msgstr "" | |
37328 | ||
37329 | #. type: defvr | |
39764ef8 | 37330 | #: doc/guix.texi:16920 |
b9fe8fd6 JL |
37331 | #, no-wrap |
37332 | msgid "{Scheme Variable} gss-service-type" | |
37333 | msgstr "" | |
37334 | ||
37335 | #. type: defvr | |
39764ef8 | 37336 | #: doc/guix.texi:16922 |
b9fe8fd6 JL |
37337 | msgid "A service type for the Global Security System (GSS) daemon." |
37338 | msgstr "" | |
37339 | ||
37340 | #. type: deftp | |
39764ef8 | 37341 | #: doc/guix.texi:16924 |
b9fe8fd6 JL |
37342 | #, no-wrap |
37343 | msgid "{Data Type} gss-configuration" | |
37344 | msgstr "" | |
37345 | ||
37346 | #. type: deftp | |
39764ef8 | 37347 | #: doc/guix.texi:16927 |
b9fe8fd6 JL |
37348 | msgid "" |
37349 | "Data type representing the configuration of the GSS daemon service. This " | |
37350 | "type has the following parameters:" | |
37351 | msgstr "" | |
37352 | ||
37353 | #. type: item | |
39764ef8 | 37354 | #: doc/guix.texi:16928 doc/guix.texi:16953 |
b9fe8fd6 JL |
37355 | #, no-wrap |
37356 | msgid "@code{nfs-utils} (default: @code{nfs-utils})" | |
37357 | msgstr "" | |
37358 | ||
37359 | #. type: table | |
39764ef8 | 37360 | #: doc/guix.texi:16930 |
b9fe8fd6 JL |
37361 | msgid "The package in which the @command{rpc.gssd} command is to be found." |
37362 | msgstr "" | |
37363 | ||
37364 | #. type: item | |
39764ef8 | 37365 | #: doc/guix.texi:16931 doc/guix.texi:16956 |
b9fe8fd6 JL |
37366 | #, no-wrap |
37367 | msgid "@code{pipefs-directory} (default: @code{\"/var/lib/nfs/rpc_pipefs\"})" | |
37368 | msgstr "" | |
37369 | ||
37370 | #. type: table | |
39764ef8 | 37371 | #: doc/guix.texi:16933 doc/guix.texi:16958 |
b9fe8fd6 JL |
37372 | msgid "The directory where the pipefs file system is mounted." |
37373 | msgstr "" | |
37374 | ||
37375 | #. type: subsubheading | |
39764ef8 | 37376 | #: doc/guix.texi:16938 |
b9fe8fd6 JL |
37377 | #, no-wrap |
37378 | msgid "IDMAP Daemon Service" | |
37379 | msgstr "" | |
37380 | ||
37381 | #. type: cindex | |
39764ef8 | 37382 | #: doc/guix.texi:16939 |
b9fe8fd6 JL |
37383 | #, no-wrap |
37384 | msgid "idmapd" | |
37385 | msgstr "" | |
37386 | ||
37387 | #. type: cindex | |
39764ef8 | 37388 | #: doc/guix.texi:16940 |
b9fe8fd6 JL |
37389 | #, no-wrap |
37390 | msgid "name mapper" | |
37391 | msgstr "" | |
37392 | ||
37393 | #. type: Plain text | |
39764ef8 | 37394 | #: doc/guix.texi:16944 |
b9fe8fd6 JL |
37395 | msgid "" |
37396 | "The idmap daemon service provides mapping between user IDs and user names. " | |
37397 | "Typically it is required in order to access file systems mounted via NFSv4." | |
37398 | msgstr "" | |
37399 | ||
37400 | #. type: defvr | |
39764ef8 | 37401 | #: doc/guix.texi:16945 |
b9fe8fd6 JL |
37402 | #, no-wrap |
37403 | msgid "{Scheme Variable} idmap-service-type" | |
37404 | msgstr "" | |
37405 | ||
37406 | #. type: defvr | |
39764ef8 | 37407 | #: doc/guix.texi:16947 |
b9fe8fd6 JL |
37408 | msgid "A service type for the Identity Mapper (IDMAP) daemon." |
37409 | msgstr "" | |
37410 | ||
37411 | #. type: deftp | |
39764ef8 | 37412 | #: doc/guix.texi:16949 |
b9fe8fd6 JL |
37413 | #, no-wrap |
37414 | msgid "{Data Type} idmap-configuration" | |
37415 | msgstr "" | |
37416 | ||
37417 | #. type: deftp | |
39764ef8 | 37418 | #: doc/guix.texi:16952 |
b9fe8fd6 JL |
37419 | msgid "" |
37420 | "Data type representing the configuration of the IDMAP daemon service. This " | |
37421 | "type has the following parameters:" | |
37422 | msgstr "" | |
37423 | ||
37424 | #. type: table | |
39764ef8 | 37425 | #: doc/guix.texi:16955 |
b9fe8fd6 JL |
37426 | msgid "The package in which the @command{rpc.idmapd} command is to be found." |
37427 | msgstr "" | |
37428 | ||
37429 | #. type: item | |
39764ef8 | 37430 | #: doc/guix.texi:16959 |
b9fe8fd6 JL |
37431 | #, no-wrap |
37432 | msgid "@code{domain} (default: @code{#f})" | |
37433 | msgstr "" | |
37434 | ||
37435 | #. type: table | |
39764ef8 | 37436 | #: doc/guix.texi:16963 |
b9fe8fd6 JL |
37437 | msgid "" |
37438 | "The local NFSv4 domain name. This must be a string or @code{#f}. If it is " | |
37439 | "@code{#f} then the daemon will use the host's fully qualified domain name." | |
37440 | msgstr "" | |
37441 | ||
37442 | #. type: cindex | |
39764ef8 | 37443 | #: doc/guix.texi:16970 |
b9fe8fd6 JL |
37444 | #, no-wrap |
37445 | msgid "continuous integration" | |
37446 | msgstr "" | |
37447 | ||
37448 | #. type: Plain text | |
39764ef8 | 37449 | #: doc/guix.texi:16974 |
b9fe8fd6 JL |
37450 | msgid "" |
37451 | "@uref{https://notabug.org/mthl/cuirass, Cuirass} is a continuous integration " | |
37452 | "tool for Guix. It can be used both for development and for providing " | |
37453 | "substitutes to others (@pxref{Substitutes})." | |
37454 | msgstr "" | |
37455 | ||
37456 | #. type: Plain text | |
39764ef8 JL |
37457 | #: doc/guix.texi:16976 |
37458 | msgid "" | |
37459 | "The @code{(gnu services cuirass)} module provides the following service." | |
b9fe8fd6 JL |
37460 | msgstr "" |
37461 | ||
37462 | #. type: defvr | |
39764ef8 | 37463 | #: doc/guix.texi:16977 |
b9fe8fd6 JL |
37464 | #, no-wrap |
37465 | msgid "{Scheme Procedure} cuirass-service-type" | |
37466 | msgstr "" | |
37467 | ||
37468 | #. type: defvr | |
39764ef8 | 37469 | #: doc/guix.texi:16980 |
b9fe8fd6 | 37470 | msgid "" |
39764ef8 JL |
37471 | "The type of the Cuirass service. Its value must be a @code{cuirass-" |
37472 | "configuration} object, as described below." | |
b9fe8fd6 JL |
37473 | msgstr "" |
37474 | ||
37475 | #. type: Plain text | |
39764ef8 | 37476 | #: doc/guix.texi:16987 |
b9fe8fd6 JL |
37477 | msgid "" |
37478 | "To add build jobs, you have to set the @code{specifications} field of the " | |
37479 | "configuration. Here is an example of a service defining a build job based " | |
37480 | "on a specification that can be found in Cuirass source tree. This service " | |
37481 | "polls the Guix repository and builds a subset of the Guix packages, as " | |
37482 | "prescribed in the @file{gnu-system.scm} example spec:" | |
37483 | msgstr "" | |
37484 | ||
37485 | #. type: example | |
39764ef8 | 37486 | #: doc/guix.texi:16999 |
b9fe8fd6 JL |
37487 | #, no-wrap |
37488 | msgid "" | |
37489 | "(let ((spec #~((#:name . \"guix\")\n" | |
37490 | " (#:url . \"git://git.savannah.gnu.org/guix.git\")\n" | |
37491 | " (#:load-path . \".\")\n" | |
37492 | " (#:file . \"build-aux/cuirass/gnu-system.scm\")\n" | |
37493 | " (#:proc . cuirass-jobs)\n" | |
37494 | " (#:arguments (subset . \"hello\"))\n" | |
37495 | " (#:branch . \"master\"))))\n" | |
37496 | " (service cuirass-service-type\n" | |
37497 | " (cuirass-configuration\n" | |
37498 | " (specifications #~(list '#$spec)))))\n" | |
37499 | msgstr "" | |
37500 | ||
37501 | #. type: Plain text | |
39764ef8 | 37502 | #: doc/guix.texi:17004 |
b9fe8fd6 JL |
37503 | msgid "" |
37504 | "While information related to build jobs is located directly in the " | |
37505 | "specifications, global settings for the @command{cuirass} process are " | |
37506 | "accessible in other @code{cuirass-configuration} fields." | |
37507 | msgstr "" | |
37508 | ||
37509 | #. type: deftp | |
39764ef8 | 37510 | #: doc/guix.texi:17005 |
b9fe8fd6 JL |
37511 | #, no-wrap |
37512 | msgid "{Data Type} cuirass-configuration" | |
37513 | msgstr "" | |
37514 | ||
37515 | #. type: deftp | |
39764ef8 | 37516 | #: doc/guix.texi:17007 |
b9fe8fd6 JL |
37517 | msgid "Data type representing the configuration of Cuirass." |
37518 | msgstr "" | |
37519 | ||
37520 | #. type: item | |
39764ef8 | 37521 | #: doc/guix.texi:17009 |
b9fe8fd6 JL |
37522 | #, no-wrap |
37523 | msgid "@code{log-file} (default: @code{\"/var/log/cuirass.log\"})" | |
37524 | msgstr "" | |
37525 | ||
37526 | #. type: table | |
39764ef8 | 37527 | #: doc/guix.texi:17011 |
b9fe8fd6 JL |
37528 | msgid "Location of the log file." |
37529 | msgstr "" | |
37530 | ||
37531 | #. type: item | |
39764ef8 | 37532 | #: doc/guix.texi:17012 |
b9fe8fd6 JL |
37533 | #, no-wrap |
37534 | msgid "@code{cache-directory} (default: @code{\"/var/cache/cuirass\"})" | |
37535 | msgstr "" | |
37536 | ||
37537 | #. type: table | |
39764ef8 | 37538 | #: doc/guix.texi:17014 |
b9fe8fd6 JL |
37539 | msgid "Location of the repository cache." |
37540 | msgstr "" | |
37541 | ||
37542 | #. type: item | |
39764ef8 | 37543 | #: doc/guix.texi:17015 |
b9fe8fd6 JL |
37544 | #, no-wrap |
37545 | msgid "@code{user} (default: @code{\"cuirass\"})" | |
37546 | msgstr "" | |
37547 | ||
37548 | #. type: table | |
39764ef8 | 37549 | #: doc/guix.texi:17017 |
b9fe8fd6 JL |
37550 | msgid "Owner of the @code{cuirass} process." |
37551 | msgstr "" | |
37552 | ||
37553 | #. type: item | |
39764ef8 | 37554 | #: doc/guix.texi:17018 |
b9fe8fd6 JL |
37555 | #, no-wrap |
37556 | msgid "@code{group} (default: @code{\"cuirass\"})" | |
37557 | msgstr "" | |
37558 | ||
37559 | #. type: table | |
39764ef8 | 37560 | #: doc/guix.texi:17020 |
b9fe8fd6 JL |
37561 | msgid "Owner's group of the @code{cuirass} process." |
37562 | msgstr "" | |
37563 | ||
37564 | #. type: item | |
39764ef8 | 37565 | #: doc/guix.texi:17021 |
b9fe8fd6 JL |
37566 | #, no-wrap |
37567 | msgid "@code{interval} (default: @code{60})" | |
37568 | msgstr "" | |
37569 | ||
37570 | #. type: table | |
39764ef8 | 37571 | #: doc/guix.texi:17024 |
b9fe8fd6 JL |
37572 | msgid "" |
37573 | "Number of seconds between the poll of the repositories followed by the " | |
37574 | "Cuirass jobs." | |
37575 | msgstr "" | |
37576 | ||
37577 | #. type: item | |
39764ef8 | 37578 | #: doc/guix.texi:17025 |
b9fe8fd6 JL |
37579 | #, no-wrap |
37580 | msgid "@code{database} (default: @code{\"/var/run/cuirass/cuirass.db\"})" | |
37581 | msgstr "" | |
37582 | ||
37583 | #. type: table | |
39764ef8 | 37584 | #: doc/guix.texi:17028 |
b9fe8fd6 JL |
37585 | msgid "" |
37586 | "Location of sqlite database which contains the build results and previously " | |
37587 | "added specifications." | |
37588 | msgstr "" | |
37589 | ||
37590 | #. type: item | |
39764ef8 | 37591 | #: doc/guix.texi:17029 |
b9fe8fd6 JL |
37592 | #, no-wrap |
37593 | msgid "@code{port} (default: @code{8081})" | |
37594 | msgstr "" | |
37595 | ||
37596 | #. type: table | |
39764ef8 | 37597 | #: doc/guix.texi:17031 |
b9fe8fd6 JL |
37598 | msgid "Port number used by the HTTP server." |
37599 | msgstr "" | |
37600 | ||
37601 | #. type: table | |
39764ef8 | 37602 | #: doc/guix.texi:17035 |
b9fe8fd6 JL |
37603 | msgid "" |
37604 | "Listen on the network interface for @var{host}. The default is to accept " | |
37605 | "connections from localhost." | |
37606 | msgstr "" | |
37607 | ||
37608 | #. type: item | |
39764ef8 | 37609 | #: doc/guix.texi:17036 |
b9fe8fd6 JL |
37610 | #, no-wrap |
37611 | msgid "@code{specifications} (default: @code{#~'()})" | |
37612 | msgstr "" | |
37613 | ||
37614 | #. type: table | |
39764ef8 | 37615 | #: doc/guix.texi:17042 |
b9fe8fd6 JL |
37616 | msgid "" |
37617 | "A gexp (@pxref{G-Expressions}) that evaluates to a list of specifications, " | |
37618 | "where a specification is an association list (@pxref{Associations Lists,,, " | |
39764ef8 JL |
37619 | "guile, GNU Guile Reference Manual}) whose keys are keywords (@code{#:keyword-" |
37620 | "example}) as shown in the example above." | |
b9fe8fd6 JL |
37621 | msgstr "" |
37622 | ||
37623 | #. type: item | |
39764ef8 | 37624 | #: doc/guix.texi:17043 |
b9fe8fd6 JL |
37625 | #, no-wrap |
37626 | msgid "@code{use-substitutes?} (default: @code{#f})" | |
37627 | msgstr "" | |
37628 | ||
37629 | #. type: table | |
39764ef8 | 37630 | #: doc/guix.texi:17046 |
b9fe8fd6 JL |
37631 | msgid "" |
37632 | "This allows using substitutes to avoid building every dependencies of a job " | |
37633 | "from source." | |
37634 | msgstr "" | |
37635 | ||
37636 | #. type: item | |
39764ef8 | 37637 | #: doc/guix.texi:17047 |
b9fe8fd6 JL |
37638 | #, no-wrap |
37639 | msgid "@code{one-shot?} (default: @code{#f})" | |
37640 | msgstr "" | |
37641 | ||
37642 | #. type: table | |
39764ef8 | 37643 | #: doc/guix.texi:17049 |
b9fe8fd6 JL |
37644 | msgid "Only evaluate specifications and build derivations once." |
37645 | msgstr "" | |
37646 | ||
37647 | #. type: item | |
39764ef8 | 37648 | #: doc/guix.texi:17050 |
b9fe8fd6 JL |
37649 | #, no-wrap |
37650 | msgid "@code{fallback?} (default: @code{#f})" | |
37651 | msgstr "" | |
37652 | ||
37653 | #. type: table | |
39764ef8 | 37654 | #: doc/guix.texi:17053 |
b9fe8fd6 JL |
37655 | msgid "" |
37656 | "When substituting a pre-built binary fails, fall back to building packages " | |
37657 | "locally." | |
37658 | msgstr "" | |
37659 | ||
37660 | #. type: item | |
39764ef8 | 37661 | #: doc/guix.texi:17054 |
b9fe8fd6 JL |
37662 | #, no-wrap |
37663 | msgid "@code{load-path} (default: @code{'()})" | |
37664 | msgstr "" | |
37665 | ||
37666 | #. type: table | |
39764ef8 | 37667 | #: doc/guix.texi:17057 |
b9fe8fd6 JL |
37668 | msgid "" |
37669 | "This allows users to define their own packages and make them visible to " | |
37670 | "cuirass as in @command{guix build} command." | |
37671 | msgstr "" | |
37672 | ||
37673 | #. type: item | |
39764ef8 | 37674 | #: doc/guix.texi:17058 |
b9fe8fd6 JL |
37675 | #, no-wrap |
37676 | msgid "@code{cuirass} (default: @code{cuirass})" | |
37677 | msgstr "" | |
37678 | ||
37679 | #. type: table | |
39764ef8 | 37680 | #: doc/guix.texi:17060 |
b9fe8fd6 JL |
37681 | msgid "The Cuirass package to use." |
37682 | msgstr "" | |
37683 | ||
37684 | #. type: cindex | |
39764ef8 | 37685 | #: doc/guix.texi:17066 |
b9fe8fd6 JL |
37686 | #, no-wrap |
37687 | msgid "power management with TLP" | |
37688 | msgstr "" | |
37689 | ||
37690 | #. type: Plain text | |
39764ef8 | 37691 | #: doc/guix.texi:17069 |
b9fe8fd6 JL |
37692 | msgid "" |
37693 | "The @code{(gnu services pm)} module provides a Guix service definition for " | |
37694 | "the Linux power management tool TLP." | |
37695 | msgstr "" | |
37696 | ||
37697 | #. type: Plain text | |
39764ef8 | 37698 | #: doc/guix.texi:17075 |
b9fe8fd6 JL |
37699 | msgid "" |
37700 | "TLP enables various powersaving modes in userspace and kernel. Contrary to " | |
37701 | "@code{upower-service}, it is not a passive, monitoring tool, as it will " | |
37702 | "apply custom settings each time a new power source is detected. More " | |
37703 | "information can be found at @uref{http://linrunner.de/en/tlp/tlp.html, TLP " | |
37704 | "home page}." | |
37705 | msgstr "" | |
37706 | ||
37707 | #. type: deffn | |
39764ef8 | 37708 | #: doc/guix.texi:17076 |
b9fe8fd6 JL |
37709 | #, no-wrap |
37710 | msgid "{Scheme Variable} tlp-service-type" | |
37711 | msgstr "" | |
37712 | ||
37713 | #. type: deffn | |
39764ef8 | 37714 | #: doc/guix.texi:17080 |
b9fe8fd6 JL |
37715 | msgid "" |
37716 | "The service type for the TLP tool. Its value should be a valid TLP " | |
37717 | "configuration (see below). To use the default settings, simply write:" | |
37718 | msgstr "" | |
37719 | ||
37720 | #. type: example | |
39764ef8 | 37721 | #: doc/guix.texi:17082 |
b9fe8fd6 JL |
37722 | #, no-wrap |
37723 | msgid "(service tlp-service-type)\n" | |
37724 | msgstr "" | |
37725 | ||
37726 | #. type: Plain text | |
39764ef8 | 37727 | #: doc/guix.texi:17087 |
b9fe8fd6 JL |
37728 | msgid "" |
37729 | "By default TLP does not need much configuration but most TLP parameters can " | |
37730 | "be tweaked using @code{tlp-configuration}." | |
37731 | msgstr "" | |
37732 | ||
37733 | #. type: Plain text | |
39764ef8 | 37734 | #: doc/guix.texi:17093 |
b9fe8fd6 JL |
37735 | msgid "" |
37736 | "Each parameter definition is preceded by its type; for example, " | |
37737 | "@samp{boolean foo} indicates that the @code{foo} parameter should be " | |
37738 | "specified as a boolean. Types starting with @code{maybe-} denote parameters " | |
37739 | "that won't show up in TLP config file when their value is @code{'disabled}." | |
37740 | msgstr "" | |
37741 | ||
37742 | #. type: Plain text | |
39764ef8 | 37743 | #: doc/guix.texi:17103 |
b9fe8fd6 JL |
37744 | msgid "Available @code{tlp-configuration} fields are:" |
37745 | msgstr "" | |
37746 | ||
37747 | #. type: deftypevr | |
39764ef8 | 37748 | #: doc/guix.texi:17104 |
b9fe8fd6 JL |
37749 | #, no-wrap |
37750 | msgid "{@code{tlp-configuration} parameter} package tlp" | |
37751 | msgstr "" | |
37752 | ||
37753 | #. type: deftypevr | |
39764ef8 | 37754 | #: doc/guix.texi:17106 |
b9fe8fd6 JL |
37755 | msgid "The TLP package." |
37756 | msgstr "" | |
37757 | ||
37758 | #. type: deftypevr | |
39764ef8 | 37759 | #: doc/guix.texi:17109 |
b9fe8fd6 JL |
37760 | #, no-wrap |
37761 | msgid "{@code{tlp-configuration} parameter} boolean tlp-enable?" | |
37762 | msgstr "" | |
37763 | ||
37764 | #. type: deftypevr | |
39764ef8 | 37765 | #: doc/guix.texi:17111 |
b9fe8fd6 JL |
37766 | msgid "Set to true if you wish to enable TLP." |
37767 | msgstr "" | |
37768 | ||
37769 | #. type: deftypevr | |
39764ef8 | 37770 | #: doc/guix.texi:17116 |
b9fe8fd6 JL |
37771 | #, no-wrap |
37772 | msgid "{@code{tlp-configuration} parameter} string tlp-default-mode" | |
37773 | msgstr "" | |
37774 | ||
37775 | #. type: deftypevr | |
39764ef8 | 37776 | #: doc/guix.texi:17119 |
b9fe8fd6 JL |
37777 | msgid "" |
37778 | "Default mode when no power supply can be detected. Alternatives are AC and " | |
37779 | "BAT." | |
37780 | msgstr "" | |
37781 | ||
37782 | #. type: deftypevr | |
39764ef8 | 37783 | #: doc/guix.texi:17121 |
b9fe8fd6 JL |
37784 | msgid "Defaults to @samp{\"AC\"}." |
37785 | msgstr "" | |
37786 | ||
37787 | #. type: deftypevr | |
39764ef8 | 37788 | #: doc/guix.texi:17124 |
b9fe8fd6 | 37789 | #, no-wrap |
39764ef8 | 37790 | msgid "{@code{tlp-configuration} parameter} non-negative-integer disk-idle-secs-on-ac" |
b9fe8fd6 JL |
37791 | msgstr "" |
37792 | ||
37793 | #. type: deftypevr | |
39764ef8 | 37794 | #: doc/guix.texi:17127 |
b9fe8fd6 JL |
37795 | msgid "" |
37796 | "Number of seconds Linux kernel has to wait after the disk goes idle, before " | |
37797 | "syncing on AC." | |
37798 | msgstr "" | |
37799 | ||
37800 | #. type: deftypevr | |
39764ef8 | 37801 | #: doc/guix.texi:17132 |
b9fe8fd6 | 37802 | #, no-wrap |
39764ef8 | 37803 | msgid "{@code{tlp-configuration} parameter} non-negative-integer disk-idle-secs-on-bat" |
b9fe8fd6 JL |
37804 | msgstr "" |
37805 | ||
37806 | #. type: deftypevr | |
39764ef8 | 37807 | #: doc/guix.texi:17134 |
b9fe8fd6 JL |
37808 | msgid "Same as @code{disk-idle-ac} but on BAT mode." |
37809 | msgstr "" | |
37810 | ||
37811 | #. type: deftypevr | |
39764ef8 | 37812 | #: doc/guix.texi:17136 |
b9fe8fd6 JL |
37813 | msgid "Defaults to @samp{2}." |
37814 | msgstr "" | |
37815 | ||
37816 | #. type: deftypevr | |
39764ef8 | 37817 | #: doc/guix.texi:17139 |
b9fe8fd6 | 37818 | #, no-wrap |
39764ef8 | 37819 | msgid "{@code{tlp-configuration} parameter} non-negative-integer max-lost-work-secs-on-ac" |
b9fe8fd6 JL |
37820 | msgstr "" |
37821 | ||
37822 | #. type: deftypevr | |
39764ef8 | 37823 | #: doc/guix.texi:17141 |
b9fe8fd6 JL |
37824 | msgid "Dirty pages flushing periodicity, expressed in seconds." |
37825 | msgstr "" | |
37826 | ||
37827 | #. type: deftypevr | |
39764ef8 JL |
37828 | #: doc/guix.texi:17143 doc/guix.texi:17366 doc/guix.texi:18683 |
37829 | #: doc/guix.texi:18691 | |
b9fe8fd6 JL |
37830 | msgid "Defaults to @samp{15}." |
37831 | msgstr "" | |
37832 | ||
37833 | #. type: deftypevr | |
39764ef8 | 37834 | #: doc/guix.texi:17146 |
b9fe8fd6 | 37835 | #, no-wrap |
39764ef8 | 37836 | msgid "{@code{tlp-configuration} parameter} non-negative-integer max-lost-work-secs-on-bat" |
b9fe8fd6 JL |
37837 | msgstr "" |
37838 | ||
37839 | #. type: deftypevr | |
39764ef8 | 37840 | #: doc/guix.texi:17148 |
b9fe8fd6 JL |
37841 | msgid "Same as @code{max-lost-work-secs-on-ac} but on BAT mode." |
37842 | msgstr "" | |
37843 | ||
37844 | #. type: deftypevr | |
39764ef8 | 37845 | #: doc/guix.texi:17150 |
b9fe8fd6 JL |
37846 | msgid "Defaults to @samp{60}." |
37847 | msgstr "" | |
37848 | ||
37849 | #. type: deftypevr | |
39764ef8 | 37850 | #: doc/guix.texi:17153 |
b9fe8fd6 | 37851 | #, no-wrap |
39764ef8 | 37852 | msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list cpu-scaling-governor-on-ac" |
b9fe8fd6 JL |
37853 | msgstr "" |
37854 | ||
37855 | #. type: deftypevr | |
39764ef8 | 37856 | #: doc/guix.texi:17157 |
b9fe8fd6 JL |
37857 | msgid "" |
37858 | "CPU frequency scaling governor on AC mode. With intel_pstate driver, " | |
37859 | "alternatives are powersave and performance. With acpi-cpufreq driver, " | |
37860 | "alternatives are ondemand, powersave, performance and conservative." | |
37861 | msgstr "" | |
37862 | ||
37863 | #. type: deftypevr | |
39764ef8 JL |
37864 | #: doc/guix.texi:17159 doc/guix.texi:17166 doc/guix.texi:17173 |
37865 | #: doc/guix.texi:17180 doc/guix.texi:17187 doc/guix.texi:17194 | |
37866 | #: doc/guix.texi:17202 doc/guix.texi:17210 doc/guix.texi:17217 | |
37867 | #: doc/guix.texi:17224 doc/guix.texi:17231 doc/guix.texi:17238 | |
37868 | #: doc/guix.texi:17268 doc/guix.texi:17306 doc/guix.texi:17313 | |
37869 | #: doc/guix.texi:17322 doc/guix.texi:17344 doc/guix.texi:17352 | |
37870 | #: doc/guix.texi:17359 doc/guix.texi:17514 doc/guix.texi:17534 | |
37871 | #: doc/guix.texi:17549 doc/guix.texi:17556 | |
b9fe8fd6 JL |
37872 | msgid "Defaults to @samp{disabled}." |
37873 | msgstr "" | |
37874 | ||
37875 | #. type: deftypevr | |
39764ef8 | 37876 | #: doc/guix.texi:17162 |
b9fe8fd6 | 37877 | #, no-wrap |
39764ef8 | 37878 | msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list cpu-scaling-governor-on-bat" |
b9fe8fd6 JL |
37879 | msgstr "" |
37880 | ||
37881 | #. type: deftypevr | |
39764ef8 | 37882 | #: doc/guix.texi:17164 |
b9fe8fd6 JL |
37883 | msgid "Same as @code{cpu-scaling-governor-on-ac} but on BAT mode." |
37884 | msgstr "" | |
37885 | ||
37886 | #. type: deftypevr | |
39764ef8 | 37887 | #: doc/guix.texi:17169 |
b9fe8fd6 | 37888 | #, no-wrap |
39764ef8 | 37889 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-min-freq-on-ac" |
b9fe8fd6 JL |
37890 | msgstr "" |
37891 | ||
37892 | #. type: deftypevr | |
39764ef8 | 37893 | #: doc/guix.texi:17171 |
b9fe8fd6 JL |
37894 | msgid "Set the min available frequency for the scaling governor on AC." |
37895 | msgstr "" | |
37896 | ||
37897 | #. type: deftypevr | |
39764ef8 | 37898 | #: doc/guix.texi:17176 |
b9fe8fd6 | 37899 | #, no-wrap |
39764ef8 | 37900 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-max-freq-on-ac" |
b9fe8fd6 JL |
37901 | msgstr "" |
37902 | ||
37903 | #. type: deftypevr | |
39764ef8 | 37904 | #: doc/guix.texi:17178 |
b9fe8fd6 JL |
37905 | msgid "Set the max available frequency for the scaling governor on AC." |
37906 | msgstr "" | |
37907 | ||
37908 | #. type: deftypevr | |
39764ef8 | 37909 | #: doc/guix.texi:17183 |
b9fe8fd6 | 37910 | #, no-wrap |
39764ef8 | 37911 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-min-freq-on-bat" |
b9fe8fd6 JL |
37912 | msgstr "" |
37913 | ||
37914 | #. type: deftypevr | |
39764ef8 | 37915 | #: doc/guix.texi:17185 |
b9fe8fd6 JL |
37916 | msgid "Set the min available frequency for the scaling governor on BAT." |
37917 | msgstr "" | |
37918 | ||
37919 | #. type: deftypevr | |
39764ef8 | 37920 | #: doc/guix.texi:17190 |
b9fe8fd6 | 37921 | #, no-wrap |
39764ef8 | 37922 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-scaling-max-freq-on-bat" |
b9fe8fd6 JL |
37923 | msgstr "" |
37924 | ||
37925 | #. type: deftypevr | |
39764ef8 | 37926 | #: doc/guix.texi:17192 |
b9fe8fd6 JL |
37927 | msgid "Set the max available frequency for the scaling governor on BAT." |
37928 | msgstr "" | |
37929 | ||
37930 | #. type: deftypevr | |
39764ef8 | 37931 | #: doc/guix.texi:17197 |
b9fe8fd6 | 37932 | #, no-wrap |
39764ef8 | 37933 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-min-perf-on-ac" |
b9fe8fd6 JL |
37934 | msgstr "" |
37935 | ||
37936 | #. type: deftypevr | |
39764ef8 | 37937 | #: doc/guix.texi:17200 |
b9fe8fd6 JL |
37938 | msgid "" |
37939 | "Limit the min P-state to control the power dissipation of the CPU, in AC " | |
37940 | "mode. Values are stated as a percentage of the available performance." | |
37941 | msgstr "" | |
37942 | ||
37943 | #. type: deftypevr | |
39764ef8 | 37944 | #: doc/guix.texi:17205 |
b9fe8fd6 | 37945 | #, no-wrap |
39764ef8 | 37946 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-max-perf-on-ac" |
b9fe8fd6 JL |
37947 | msgstr "" |
37948 | ||
37949 | #. type: deftypevr | |
39764ef8 | 37950 | #: doc/guix.texi:17208 |
b9fe8fd6 JL |
37951 | msgid "" |
37952 | "Limit the max P-state to control the power dissipation of the CPU, in AC " | |
37953 | "mode. Values are stated as a percentage of the available performance." | |
37954 | msgstr "" | |
37955 | ||
37956 | #. type: deftypevr | |
39764ef8 | 37957 | #: doc/guix.texi:17213 |
b9fe8fd6 | 37958 | #, no-wrap |
39764ef8 | 37959 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-min-perf-on-bat" |
b9fe8fd6 JL |
37960 | msgstr "" |
37961 | ||
37962 | #. type: deftypevr | |
39764ef8 | 37963 | #: doc/guix.texi:17215 |
b9fe8fd6 JL |
37964 | msgid "Same as @code{cpu-min-perf-on-ac} on BAT mode." |
37965 | msgstr "" | |
37966 | ||
37967 | #. type: deftypevr | |
39764ef8 | 37968 | #: doc/guix.texi:17220 |
b9fe8fd6 | 37969 | #, no-wrap |
39764ef8 | 37970 | msgid "{@code{tlp-configuration} parameter} maybe-non-negative-integer cpu-max-perf-on-bat" |
b9fe8fd6 JL |
37971 | msgstr "" |
37972 | ||
37973 | #. type: deftypevr | |
39764ef8 | 37974 | #: doc/guix.texi:17222 |
b9fe8fd6 JL |
37975 | msgid "Same as @code{cpu-max-perf-on-ac} on BAT mode." |
37976 | msgstr "" | |
37977 | ||
37978 | #. type: deftypevr | |
39764ef8 | 37979 | #: doc/guix.texi:17227 |
b9fe8fd6 JL |
37980 | #, no-wrap |
37981 | msgid "{@code{tlp-configuration} parameter} maybe-boolean cpu-boost-on-ac?" | |
37982 | msgstr "" | |
37983 | ||
37984 | #. type: deftypevr | |
39764ef8 | 37985 | #: doc/guix.texi:17229 |
b9fe8fd6 JL |
37986 | msgid "Enable CPU turbo boost feature on AC mode." |
37987 | msgstr "" | |
37988 | ||
37989 | #. type: deftypevr | |
39764ef8 | 37990 | #: doc/guix.texi:17234 |
b9fe8fd6 JL |
37991 | #, no-wrap |
37992 | msgid "{@code{tlp-configuration} parameter} maybe-boolean cpu-boost-on-bat?" | |
37993 | msgstr "" | |
37994 | ||
37995 | #. type: deftypevr | |
39764ef8 | 37996 | #: doc/guix.texi:17236 |
b9fe8fd6 JL |
37997 | msgid "Same as @code{cpu-boost-on-ac?} on BAT mode." |
37998 | msgstr "" | |
37999 | ||
38000 | #. type: deftypevr | |
39764ef8 | 38001 | #: doc/guix.texi:17241 |
b9fe8fd6 JL |
38002 | #, no-wrap |
38003 | msgid "{@code{tlp-configuration} parameter} boolean sched-powersave-on-ac?" | |
38004 | msgstr "" | |
38005 | ||
38006 | #. type: deftypevr | |
39764ef8 | 38007 | #: doc/guix.texi:17244 |
b9fe8fd6 JL |
38008 | msgid "" |
38009 | "Allow Linux kernel to minimize the number of CPU cores/hyper-threads used " | |
38010 | "under light load conditions." | |
38011 | msgstr "" | |
38012 | ||
38013 | #. type: deftypevr | |
39764ef8 | 38014 | #: doc/guix.texi:17249 |
b9fe8fd6 JL |
38015 | #, no-wrap |
38016 | msgid "{@code{tlp-configuration} parameter} boolean sched-powersave-on-bat?" | |
38017 | msgstr "" | |
38018 | ||
38019 | #. type: deftypevr | |
39764ef8 | 38020 | #: doc/guix.texi:17251 |
b9fe8fd6 JL |
38021 | msgid "Same as @code{sched-powersave-on-ac?} but on BAT mode." |
38022 | msgstr "" | |
38023 | ||
38024 | #. type: deftypevr | |
39764ef8 | 38025 | #: doc/guix.texi:17256 |
b9fe8fd6 JL |
38026 | #, no-wrap |
38027 | msgid "{@code{tlp-configuration} parameter} boolean nmi-watchdog?" | |
38028 | msgstr "" | |
38029 | ||
38030 | #. type: deftypevr | |
39764ef8 | 38031 | #: doc/guix.texi:17258 |
b9fe8fd6 JL |
38032 | msgid "Enable Linux kernel NMI watchdog." |
38033 | msgstr "" | |
38034 | ||
38035 | #. type: deftypevr | |
39764ef8 | 38036 | #: doc/guix.texi:17263 |
b9fe8fd6 JL |
38037 | #, no-wrap |
38038 | msgid "{@code{tlp-configuration} parameter} maybe-string phc-controls" | |
38039 | msgstr "" | |
38040 | ||
38041 | #. type: deftypevr | |
39764ef8 | 38042 | #: doc/guix.texi:17266 |
b9fe8fd6 JL |
38043 | msgid "" |
38044 | "For Linux kernels with PHC patch applied, change CPU voltages. An example " | |
38045 | "value would be @samp{\"F:V F:V F:V F:V\"}." | |
38046 | msgstr "" | |
38047 | ||
38048 | #. type: deftypevr | |
39764ef8 | 38049 | #: doc/guix.texi:17271 |
b9fe8fd6 JL |
38050 | #, no-wrap |
38051 | msgid "{@code{tlp-configuration} parameter} string energy-perf-policy-on-ac" | |
38052 | msgstr "" | |
38053 | ||
38054 | #. type: deftypevr | |
39764ef8 | 38055 | #: doc/guix.texi:17274 |
b9fe8fd6 JL |
38056 | msgid "" |
38057 | "Set CPU performance versus energy saving policy on AC. Alternatives are " | |
38058 | "performance, normal, powersave." | |
38059 | msgstr "" | |
38060 | ||
38061 | #. type: deftypevr | |
39764ef8 | 38062 | #: doc/guix.texi:17276 doc/guix.texi:17374 doc/guix.texi:17404 |
b9fe8fd6 JL |
38063 | msgid "Defaults to @samp{\"performance\"}." |
38064 | msgstr "" | |
38065 | ||
38066 | #. type: deftypevr | |
39764ef8 | 38067 | #: doc/guix.texi:17279 |
b9fe8fd6 JL |
38068 | #, no-wrap |
38069 | msgid "{@code{tlp-configuration} parameter} string energy-perf-policy-on-bat" | |
38070 | msgstr "" | |
38071 | ||
38072 | #. type: deftypevr | |
39764ef8 | 38073 | #: doc/guix.texi:17281 |
b9fe8fd6 JL |
38074 | msgid "Same as @code{energy-perf-policy-ac} but on BAT mode." |
38075 | msgstr "" | |
38076 | ||
38077 | #. type: deftypevr | |
39764ef8 | 38078 | #: doc/guix.texi:17283 doc/guix.texi:17381 |
b9fe8fd6 JL |
38079 | msgid "Defaults to @samp{\"powersave\"}." |
38080 | msgstr "" | |
38081 | ||
38082 | #. type: deftypevr | |
39764ef8 | 38083 | #: doc/guix.texi:17286 |
b9fe8fd6 | 38084 | #, no-wrap |
39764ef8 | 38085 | msgid "{@code{tlp-configuration} parameter} space-separated-string-list disks-devices" |
b9fe8fd6 JL |
38086 | msgstr "" |
38087 | ||
38088 | #. type: deftypevr | |
39764ef8 | 38089 | #: doc/guix.texi:17288 |
b9fe8fd6 JL |
38090 | msgid "Hard disk devices." |
38091 | msgstr "" | |
38092 | ||
38093 | #. type: deftypevr | |
39764ef8 | 38094 | #: doc/guix.texi:17291 |
b9fe8fd6 | 38095 | #, no-wrap |
39764ef8 | 38096 | msgid "{@code{tlp-configuration} parameter} space-separated-string-list disk-apm-level-on-ac" |
b9fe8fd6 JL |
38097 | msgstr "" |
38098 | ||
38099 | #. type: deftypevr | |
39764ef8 | 38100 | #: doc/guix.texi:17293 |
b9fe8fd6 JL |
38101 | msgid "Hard disk advanced power management level." |
38102 | msgstr "" | |
38103 | ||
38104 | #. type: deftypevr | |
39764ef8 | 38105 | #: doc/guix.texi:17296 |
b9fe8fd6 | 38106 | #, no-wrap |
39764ef8 | 38107 | msgid "{@code{tlp-configuration} parameter} space-separated-string-list disk-apm-level-on-bat" |
b9fe8fd6 JL |
38108 | msgstr "" |
38109 | ||
38110 | #. type: deftypevr | |
39764ef8 | 38111 | #: doc/guix.texi:17298 |
b9fe8fd6 JL |
38112 | msgid "Same as @code{disk-apm-bat} but on BAT mode." |
38113 | msgstr "" | |
38114 | ||
38115 | #. type: deftypevr | |
39764ef8 | 38116 | #: doc/guix.texi:17301 |
b9fe8fd6 | 38117 | #, no-wrap |
39764ef8 | 38118 | msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list disk-spindown-timeout-on-ac" |
b9fe8fd6 JL |
38119 | msgstr "" |
38120 | ||
38121 | #. type: deftypevr | |
39764ef8 | 38122 | #: doc/guix.texi:17304 |
b9fe8fd6 JL |
38123 | msgid "" |
38124 | "Hard disk spin down timeout. One value has to be specified for each " | |
38125 | "declared hard disk." | |
38126 | msgstr "" | |
38127 | ||
38128 | #. type: deftypevr | |
39764ef8 | 38129 | #: doc/guix.texi:17309 |
b9fe8fd6 | 38130 | #, no-wrap |
39764ef8 | 38131 | msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list disk-spindown-timeout-on-bat" |
b9fe8fd6 JL |
38132 | msgstr "" |
38133 | ||
38134 | #. type: deftypevr | |
39764ef8 | 38135 | #: doc/guix.texi:17311 |
b9fe8fd6 JL |
38136 | msgid "Same as @code{disk-spindown-timeout-on-ac} but on BAT mode." |
38137 | msgstr "" | |
38138 | ||
38139 | #. type: deftypevr | |
39764ef8 | 38140 | #: doc/guix.texi:17316 |
b9fe8fd6 | 38141 | #, no-wrap |
39764ef8 | 38142 | msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list disk-iosched" |
b9fe8fd6 JL |
38143 | msgstr "" |
38144 | ||
38145 | #. type: deftypevr | |
39764ef8 | 38146 | #: doc/guix.texi:17320 |
b9fe8fd6 JL |
38147 | msgid "" |
38148 | "Select IO scheduler for disk devices. One value has to be specified for " | |
38149 | "each declared hard disk. Example alternatives are cfq, deadline and noop." | |
38150 | msgstr "" | |
38151 | ||
38152 | #. type: deftypevr | |
39764ef8 | 38153 | #: doc/guix.texi:17325 |
b9fe8fd6 JL |
38154 | #, no-wrap |
38155 | msgid "{@code{tlp-configuration} parameter} string sata-linkpwr-on-ac" | |
38156 | msgstr "" | |
38157 | ||
38158 | #. type: deftypevr | |
39764ef8 | 38159 | #: doc/guix.texi:17328 |
b9fe8fd6 JL |
38160 | msgid "" |
38161 | "SATA aggressive link power management (ALPM) level. Alternatives are " | |
38162 | "min_power, medium_power, max_performance." | |
38163 | msgstr "" | |
38164 | ||
38165 | #. type: deftypevr | |
39764ef8 | 38166 | #: doc/guix.texi:17330 |
b9fe8fd6 JL |
38167 | msgid "Defaults to @samp{\"max_performance\"}." |
38168 | msgstr "" | |
38169 | ||
38170 | #. type: deftypevr | |
39764ef8 | 38171 | #: doc/guix.texi:17333 |
b9fe8fd6 JL |
38172 | #, no-wrap |
38173 | msgid "{@code{tlp-configuration} parameter} string sata-linkpwr-on-bat" | |
38174 | msgstr "" | |
38175 | ||
38176 | #. type: deftypevr | |
39764ef8 | 38177 | #: doc/guix.texi:17335 |
b9fe8fd6 JL |
38178 | msgid "Same as @code{sata-linkpwr-ac} but on BAT mode." |
38179 | msgstr "" | |
38180 | ||
38181 | #. type: deftypevr | |
39764ef8 | 38182 | #: doc/guix.texi:17337 |
b9fe8fd6 JL |
38183 | msgid "Defaults to @samp{\"min_power\"}." |
38184 | msgstr "" | |
38185 | ||
38186 | #. type: deftypevr | |
39764ef8 | 38187 | #: doc/guix.texi:17340 |
b9fe8fd6 JL |
38188 | #, no-wrap |
38189 | msgid "{@code{tlp-configuration} parameter} maybe-string sata-linkpwr-blacklist" | |
38190 | msgstr "" | |
38191 | ||
38192 | #. type: deftypevr | |
39764ef8 | 38193 | #: doc/guix.texi:17342 |
b9fe8fd6 JL |
38194 | msgid "Exclude specified SATA host devices for link power management." |
38195 | msgstr "" | |
38196 | ||
38197 | #. type: deftypevr | |
39764ef8 | 38198 | #: doc/guix.texi:17347 |
b9fe8fd6 | 38199 | #, no-wrap |
39764ef8 | 38200 | msgid "{@code{tlp-configuration} parameter} maybe-on-off-boolean ahci-runtime-pm-on-ac?" |
b9fe8fd6 JL |
38201 | msgstr "" |
38202 | ||
38203 | #. type: deftypevr | |
39764ef8 JL |
38204 | #: doc/guix.texi:17350 |
38205 | msgid "" | |
38206 | "Enable Runtime Power Management for AHCI controller and disks on AC mode." | |
b9fe8fd6 JL |
38207 | msgstr "" |
38208 | ||
38209 | #. type: deftypevr | |
39764ef8 | 38210 | #: doc/guix.texi:17355 |
b9fe8fd6 | 38211 | #, no-wrap |
39764ef8 | 38212 | msgid "{@code{tlp-configuration} parameter} maybe-on-off-boolean ahci-runtime-pm-on-bat?" |
b9fe8fd6 JL |
38213 | msgstr "" |
38214 | ||
38215 | #. type: deftypevr | |
39764ef8 | 38216 | #: doc/guix.texi:17357 |
b9fe8fd6 JL |
38217 | msgid "Same as @code{ahci-runtime-pm-on-ac} on BAT mode." |
38218 | msgstr "" | |
38219 | ||
38220 | #. type: deftypevr | |
39764ef8 | 38221 | #: doc/guix.texi:17362 |
b9fe8fd6 | 38222 | #, no-wrap |
39764ef8 | 38223 | msgid "{@code{tlp-configuration} parameter} non-negative-integer ahci-runtime-pm-timeout" |
b9fe8fd6 JL |
38224 | msgstr "" |
38225 | ||
38226 | #. type: deftypevr | |
39764ef8 | 38227 | #: doc/guix.texi:17364 |
b9fe8fd6 JL |
38228 | msgid "Seconds of inactivity before disk is suspended." |
38229 | msgstr "" | |
38230 | ||
38231 | #. type: deftypevr | |
39764ef8 | 38232 | #: doc/guix.texi:17369 |
b9fe8fd6 JL |
38233 | #, no-wrap |
38234 | msgid "{@code{tlp-configuration} parameter} string pcie-aspm-on-ac" | |
38235 | msgstr "" | |
38236 | ||
38237 | #. type: deftypevr | |
39764ef8 | 38238 | #: doc/guix.texi:17372 |
b9fe8fd6 JL |
38239 | msgid "" |
38240 | "PCI Express Active State Power Management level. Alternatives are default, " | |
38241 | "performance, powersave." | |
38242 | msgstr "" | |
38243 | ||
38244 | #. type: deftypevr | |
39764ef8 | 38245 | #: doc/guix.texi:17377 |
b9fe8fd6 JL |
38246 | #, no-wrap |
38247 | msgid "{@code{tlp-configuration} parameter} string pcie-aspm-on-bat" | |
38248 | msgstr "" | |
38249 | ||
38250 | #. type: deftypevr | |
39764ef8 | 38251 | #: doc/guix.texi:17379 |
b9fe8fd6 JL |
38252 | msgid "Same as @code{pcie-aspm-ac} but on BAT mode." |
38253 | msgstr "" | |
38254 | ||
38255 | #. type: deftypevr | |
39764ef8 | 38256 | #: doc/guix.texi:17384 |
b9fe8fd6 JL |
38257 | #, no-wrap |
38258 | msgid "{@code{tlp-configuration} parameter} string radeon-power-profile-on-ac" | |
38259 | msgstr "" | |
38260 | ||
38261 | #. type: deftypevr | |
39764ef8 | 38262 | #: doc/guix.texi:17387 |
b9fe8fd6 JL |
38263 | msgid "" |
38264 | "Radeon graphics clock speed level. Alternatives are low, mid, high, auto, " | |
38265 | "default." | |
38266 | msgstr "" | |
38267 | ||
38268 | #. type: deftypevr | |
39764ef8 | 38269 | #: doc/guix.texi:17389 |
b9fe8fd6 JL |
38270 | msgid "Defaults to @samp{\"high\"}." |
38271 | msgstr "" | |
38272 | ||
38273 | #. type: deftypevr | |
39764ef8 | 38274 | #: doc/guix.texi:17392 |
b9fe8fd6 JL |
38275 | #, no-wrap |
38276 | msgid "{@code{tlp-configuration} parameter} string radeon-power-profile-on-bat" | |
38277 | msgstr "" | |
38278 | ||
38279 | #. type: deftypevr | |
39764ef8 | 38280 | #: doc/guix.texi:17394 |
b9fe8fd6 JL |
38281 | msgid "Same as @code{radeon-power-ac} but on BAT mode." |
38282 | msgstr "" | |
38283 | ||
38284 | #. type: deftypevr | |
39764ef8 | 38285 | #: doc/guix.texi:17396 |
b9fe8fd6 JL |
38286 | msgid "Defaults to @samp{\"low\"}." |
38287 | msgstr "" | |
38288 | ||
38289 | #. type: deftypevr | |
39764ef8 | 38290 | #: doc/guix.texi:17399 |
b9fe8fd6 JL |
38291 | #, no-wrap |
38292 | msgid "{@code{tlp-configuration} parameter} string radeon-dpm-state-on-ac" | |
38293 | msgstr "" | |
38294 | ||
38295 | #. type: deftypevr | |
39764ef8 | 38296 | #: doc/guix.texi:17402 |
b9fe8fd6 JL |
38297 | msgid "" |
38298 | "Radeon dynamic power management method (DPM). Alternatives are battery, " | |
38299 | "performance." | |
38300 | msgstr "" | |
38301 | ||
38302 | #. type: deftypevr | |
39764ef8 | 38303 | #: doc/guix.texi:17407 |
b9fe8fd6 JL |
38304 | #, no-wrap |
38305 | msgid "{@code{tlp-configuration} parameter} string radeon-dpm-state-on-bat" | |
38306 | msgstr "" | |
38307 | ||
38308 | #. type: deftypevr | |
39764ef8 | 38309 | #: doc/guix.texi:17409 |
b9fe8fd6 JL |
38310 | msgid "Same as @code{radeon-dpm-state-ac} but on BAT mode." |
38311 | msgstr "" | |
38312 | ||
38313 | #. type: deftypevr | |
39764ef8 | 38314 | #: doc/guix.texi:17411 |
b9fe8fd6 JL |
38315 | msgid "Defaults to @samp{\"battery\"}." |
38316 | msgstr "" | |
38317 | ||
38318 | #. type: deftypevr | |
39764ef8 | 38319 | #: doc/guix.texi:17414 |
b9fe8fd6 JL |
38320 | #, no-wrap |
38321 | msgid "{@code{tlp-configuration} parameter} string radeon-dpm-perf-level-on-ac" | |
38322 | msgstr "" | |
38323 | ||
38324 | #. type: deftypevr | |
39764ef8 | 38325 | #: doc/guix.texi:17416 |
b9fe8fd6 JL |
38326 | msgid "Radeon DPM performance level. Alternatives are auto, low, high." |
38327 | msgstr "" | |
38328 | ||
38329 | #. type: deftypevr | |
39764ef8 | 38330 | #: doc/guix.texi:17418 doc/guix.texi:17425 doc/guix.texi:17499 |
b9fe8fd6 JL |
38331 | msgid "Defaults to @samp{\"auto\"}." |
38332 | msgstr "" | |
38333 | ||
38334 | #. type: deftypevr | |
39764ef8 | 38335 | #: doc/guix.texi:17421 |
b9fe8fd6 JL |
38336 | #, no-wrap |
38337 | msgid "{@code{tlp-configuration} parameter} string radeon-dpm-perf-level-on-bat" | |
38338 | msgstr "" | |
38339 | ||
38340 | #. type: deftypevr | |
39764ef8 | 38341 | #: doc/guix.texi:17423 |
b9fe8fd6 JL |
38342 | msgid "Same as @code{radeon-dpm-perf-ac} but on BAT mode." |
38343 | msgstr "" | |
38344 | ||
38345 | #. type: deftypevr | |
39764ef8 | 38346 | #: doc/guix.texi:17428 |
b9fe8fd6 JL |
38347 | #, no-wrap |
38348 | msgid "{@code{tlp-configuration} parameter} on-off-boolean wifi-pwr-on-ac?" | |
38349 | msgstr "" | |
38350 | ||
38351 | #. type: deftypevr | |
39764ef8 | 38352 | #: doc/guix.texi:17430 |
b9fe8fd6 JL |
38353 | msgid "Wifi power saving mode." |
38354 | msgstr "" | |
38355 | ||
38356 | #. type: deftypevr | |
39764ef8 | 38357 | #: doc/guix.texi:17435 |
b9fe8fd6 JL |
38358 | #, no-wrap |
38359 | msgid "{@code{tlp-configuration} parameter} on-off-boolean wifi-pwr-on-bat?" | |
38360 | msgstr "" | |
38361 | ||
38362 | #. type: deftypevr | |
39764ef8 | 38363 | #: doc/guix.texi:17437 |
b9fe8fd6 JL |
38364 | msgid "Same as @code{wifi-power-ac?} but on BAT mode." |
38365 | msgstr "" | |
38366 | ||
38367 | #. type: deftypevr | |
39764ef8 | 38368 | #: doc/guix.texi:17442 |
b9fe8fd6 JL |
38369 | #, no-wrap |
38370 | msgid "{@code{tlp-configuration} parameter} y-n-boolean wol-disable?" | |
38371 | msgstr "" | |
38372 | ||
38373 | #. type: deftypevr | |
39764ef8 | 38374 | #: doc/guix.texi:17444 |
b9fe8fd6 JL |
38375 | msgid "Disable wake on LAN." |
38376 | msgstr "" | |
38377 | ||
38378 | #. type: deftypevr | |
39764ef8 | 38379 | #: doc/guix.texi:17449 |
b9fe8fd6 | 38380 | #, no-wrap |
39764ef8 | 38381 | msgid "{@code{tlp-configuration} parameter} non-negative-integer sound-power-save-on-ac" |
b9fe8fd6 JL |
38382 | msgstr "" |
38383 | ||
38384 | #. type: deftypevr | |
39764ef8 | 38385 | #: doc/guix.texi:17452 |
b9fe8fd6 JL |
38386 | msgid "" |
38387 | "Timeout duration in seconds before activating audio power saving on Intel " | |
38388 | "HDA and AC97 devices. A value of 0 disables power saving." | |
38389 | msgstr "" | |
38390 | ||
38391 | #. type: deftypevr | |
39764ef8 | 38392 | #: doc/guix.texi:17457 |
b9fe8fd6 | 38393 | #, no-wrap |
39764ef8 | 38394 | msgid "{@code{tlp-configuration} parameter} non-negative-integer sound-power-save-on-bat" |
b9fe8fd6 JL |
38395 | msgstr "" |
38396 | ||
38397 | #. type: deftypevr | |
39764ef8 | 38398 | #: doc/guix.texi:17459 |
b9fe8fd6 JL |
38399 | msgid "Same as @code{sound-powersave-ac} but on BAT mode." |
38400 | msgstr "" | |
38401 | ||
38402 | #. type: deftypevr | |
39764ef8 | 38403 | #: doc/guix.texi:17461 doc/guix.texi:17976 doc/guix.texi:18120 |
b9fe8fd6 JL |
38404 | msgid "Defaults to @samp{1}." |
38405 | msgstr "" | |
38406 | ||
38407 | #. type: deftypevr | |
39764ef8 | 38408 | #: doc/guix.texi:17464 |
b9fe8fd6 | 38409 | #, no-wrap |
39764ef8 | 38410 | msgid "{@code{tlp-configuration} parameter} y-n-boolean sound-power-save-controller?" |
b9fe8fd6 JL |
38411 | msgstr "" |
38412 | ||
38413 | #. type: deftypevr | |
39764ef8 | 38414 | #: doc/guix.texi:17466 |
b9fe8fd6 JL |
38415 | msgid "Disable controller in powersaving mode on Intel HDA devices." |
38416 | msgstr "" | |
38417 | ||
38418 | #. type: deftypevr | |
39764ef8 | 38419 | #: doc/guix.texi:17471 |
b9fe8fd6 JL |
38420 | #, no-wrap |
38421 | msgid "{@code{tlp-configuration} parameter} boolean bay-poweroff-on-bat?" | |
38422 | msgstr "" | |
38423 | ||
38424 | #. type: deftypevr | |
39764ef8 | 38425 | #: doc/guix.texi:17475 |
b9fe8fd6 JL |
38426 | msgid "" |
38427 | "Enable optical drive in UltraBay/MediaBay on BAT mode. Drive can be powered " | |
38428 | "on again by releasing (and reinserting) the eject lever or by pressing the " | |
38429 | "disc eject button on newer models." | |
38430 | msgstr "" | |
38431 | ||
38432 | #. type: deftypevr | |
39764ef8 | 38433 | #: doc/guix.texi:17480 |
b9fe8fd6 JL |
38434 | #, no-wrap |
38435 | msgid "{@code{tlp-configuration} parameter} string bay-device" | |
38436 | msgstr "" | |
38437 | ||
38438 | #. type: deftypevr | |
39764ef8 | 38439 | #: doc/guix.texi:17482 |
b9fe8fd6 JL |
38440 | msgid "Name of the optical drive device to power off." |
38441 | msgstr "" | |
38442 | ||
38443 | #. type: deftypevr | |
39764ef8 | 38444 | #: doc/guix.texi:17484 |
b9fe8fd6 JL |
38445 | msgid "Defaults to @samp{\"sr0\"}." |
38446 | msgstr "" | |
38447 | ||
38448 | #. type: deftypevr | |
39764ef8 | 38449 | #: doc/guix.texi:17487 |
b9fe8fd6 JL |
38450 | #, no-wrap |
38451 | msgid "{@code{tlp-configuration} parameter} string runtime-pm-on-ac" | |
38452 | msgstr "" | |
38453 | ||
38454 | #. type: deftypevr | |
39764ef8 | 38455 | #: doc/guix.texi:17490 |
b9fe8fd6 JL |
38456 | msgid "" |
38457 | "Runtime Power Management for PCI(e) bus devices. Alternatives are on and " | |
38458 | "auto." | |
38459 | msgstr "" | |
38460 | ||
38461 | #. type: deftypevr | |
39764ef8 | 38462 | #: doc/guix.texi:17492 |
b9fe8fd6 JL |
38463 | msgid "Defaults to @samp{\"on\"}." |
38464 | msgstr "" | |
38465 | ||
38466 | #. type: deftypevr | |
39764ef8 | 38467 | #: doc/guix.texi:17495 |
b9fe8fd6 JL |
38468 | #, no-wrap |
38469 | msgid "{@code{tlp-configuration} parameter} string runtime-pm-on-bat" | |
38470 | msgstr "" | |
38471 | ||
38472 | #. type: deftypevr | |
39764ef8 | 38473 | #: doc/guix.texi:17497 |
b9fe8fd6 JL |
38474 | msgid "Same as @code{runtime-pm-ac} but on BAT mode." |
38475 | msgstr "" | |
38476 | ||
38477 | #. type: deftypevr | |
39764ef8 | 38478 | #: doc/guix.texi:17502 |
b9fe8fd6 JL |
38479 | #, no-wrap |
38480 | msgid "{@code{tlp-configuration} parameter} boolean runtime-pm-all?" | |
38481 | msgstr "" | |
38482 | ||
38483 | #. type: deftypevr | |
39764ef8 | 38484 | #: doc/guix.texi:17505 |
b9fe8fd6 | 38485 | msgid "" |
39764ef8 | 38486 | "Runtime Power Management for all PCI(e) bus devices, except blacklisted ones." |
b9fe8fd6 JL |
38487 | msgstr "" |
38488 | ||
38489 | #. type: deftypevr | |
39764ef8 | 38490 | #: doc/guix.texi:17510 |
b9fe8fd6 | 38491 | #, no-wrap |
39764ef8 | 38492 | msgid "{@code{tlp-configuration} parameter} maybe-space-separated-string-list runtime-pm-blacklist" |
b9fe8fd6 JL |
38493 | msgstr "" |
38494 | ||
38495 | #. type: deftypevr | |
39764ef8 JL |
38496 | #: doc/guix.texi:17512 |
38497 | msgid "" | |
38498 | "Exclude specified PCI(e) device addresses from Runtime Power Management." | |
b9fe8fd6 JL |
38499 | msgstr "" |
38500 | ||
38501 | #. type: deftypevr | |
39764ef8 | 38502 | #: doc/guix.texi:17517 |
b9fe8fd6 | 38503 | #, no-wrap |
39764ef8 | 38504 | msgid "{@code{tlp-configuration} parameter} space-separated-string-list runtime-pm-driver-blacklist" |
b9fe8fd6 JL |
38505 | msgstr "" |
38506 | ||
38507 | #. type: deftypevr | |
39764ef8 | 38508 | #: doc/guix.texi:17520 |
b9fe8fd6 JL |
38509 | msgid "" |
38510 | "Exclude PCI(e) devices assigned to the specified drivers from Runtime Power " | |
38511 | "Management." | |
38512 | msgstr "" | |
38513 | ||
38514 | #. type: deftypevr | |
39764ef8 | 38515 | #: doc/guix.texi:17523 |
b9fe8fd6 JL |
38516 | #, no-wrap |
38517 | msgid "{@code{tlp-configuration} parameter} boolean usb-autosuspend?" | |
38518 | msgstr "" | |
38519 | ||
38520 | #. type: deftypevr | |
39764ef8 | 38521 | #: doc/guix.texi:17525 |
b9fe8fd6 JL |
38522 | msgid "Enable USB autosuspend feature." |
38523 | msgstr "" | |
38524 | ||
38525 | #. type: deftypevr | |
39764ef8 | 38526 | #: doc/guix.texi:17530 |
b9fe8fd6 JL |
38527 | #, no-wrap |
38528 | msgid "{@code{tlp-configuration} parameter} maybe-string usb-blacklist" | |
38529 | msgstr "" | |
38530 | ||
38531 | #. type: deftypevr | |
39764ef8 | 38532 | #: doc/guix.texi:17532 |
b9fe8fd6 JL |
38533 | msgid "Exclude specified devices from USB autosuspend." |
38534 | msgstr "" | |
38535 | ||
38536 | #. type: deftypevr | |
39764ef8 | 38537 | #: doc/guix.texi:17537 |
b9fe8fd6 JL |
38538 | #, no-wrap |
38539 | msgid "{@code{tlp-configuration} parameter} boolean usb-blacklist-wwan?" | |
38540 | msgstr "" | |
38541 | ||
38542 | #. type: deftypevr | |
39764ef8 | 38543 | #: doc/guix.texi:17539 |
b9fe8fd6 JL |
38544 | msgid "Exclude WWAN devices from USB autosuspend." |
38545 | msgstr "" | |
38546 | ||
38547 | #. type: deftypevr | |
39764ef8 | 38548 | #: doc/guix.texi:17544 |
b9fe8fd6 JL |
38549 | #, no-wrap |
38550 | msgid "{@code{tlp-configuration} parameter} maybe-string usb-whitelist" | |
38551 | msgstr "" | |
38552 | ||
38553 | #. type: deftypevr | |
39764ef8 | 38554 | #: doc/guix.texi:17547 |
b9fe8fd6 JL |
38555 | msgid "" |
38556 | "Include specified devices into USB autosuspend, even if they are already " | |
38557 | "excluded by the driver or via @code{usb-blacklist-wwan?}." | |
38558 | msgstr "" | |
38559 | ||
38560 | #. type: deftypevr | |
39764ef8 | 38561 | #: doc/guix.texi:17552 |
b9fe8fd6 | 38562 | #, no-wrap |
39764ef8 | 38563 | msgid "{@code{tlp-configuration} parameter} maybe-boolean usb-autosuspend-disable-on-shutdown?" |
b9fe8fd6 JL |
38564 | msgstr "" |
38565 | ||
38566 | #. type: deftypevr | |
39764ef8 | 38567 | #: doc/guix.texi:17554 |
b9fe8fd6 JL |
38568 | msgid "Enable USB autosuspend before shutdown." |
38569 | msgstr "" | |
38570 | ||
38571 | #. type: deftypevr | |
39764ef8 | 38572 | #: doc/guix.texi:17559 |
b9fe8fd6 | 38573 | #, no-wrap |
39764ef8 | 38574 | msgid "{@code{tlp-configuration} parameter} boolean restore-device-state-on-startup?" |
b9fe8fd6 JL |
38575 | msgstr "" |
38576 | ||
38577 | #. type: deftypevr | |
39764ef8 | 38578 | #: doc/guix.texi:17562 |
b9fe8fd6 JL |
38579 | msgid "" |
38580 | "Restore radio device state (bluetooth, wifi, wwan) from previous shutdown on " | |
38581 | "system startup." | |
38582 | msgstr "" | |
38583 | ||
38584 | #. type: Plain text | |
39764ef8 | 38585 | #: doc/guix.texi:17570 |
b9fe8fd6 JL |
38586 | msgid "" |
38587 | "The @code{(gnu services pm)} module provides an interface to thermald, a CPU " | |
38588 | "frequency scaling service which helps prevent overheating." | |
38589 | msgstr "" | |
38590 | ||
38591 | #. type: defvr | |
39764ef8 | 38592 | #: doc/guix.texi:17571 |
b9fe8fd6 JL |
38593 | #, no-wrap |
38594 | msgid "{Scheme Variable} thermald-service-type" | |
38595 | msgstr "" | |
38596 | ||
38597 | #. type: defvr | |
39764ef8 | 38598 | #: doc/guix.texi:17576 |
b9fe8fd6 JL |
38599 | msgid "" |
38600 | "This is the service type for @uref{https://01.org/linux-thermal-daemon/, " | |
38601 | "thermald}, the Linux Thermal Daemon, which is responsible for controlling " | |
38602 | "the thermal state of processors and preventing overheating." | |
38603 | msgstr "" | |
38604 | ||
38605 | #. type: deftp | |
39764ef8 | 38606 | #: doc/guix.texi:17578 |
b9fe8fd6 JL |
38607 | #, no-wrap |
38608 | msgid "{Data Type} thermald-configuration" | |
38609 | msgstr "" | |
38610 | ||
38611 | #. type: deftp | |
39764ef8 JL |
38612 | #: doc/guix.texi:17580 |
38613 | msgid "" | |
38614 | "Data type representing the configuration of @code{thermald-service-type}." | |
b9fe8fd6 JL |
38615 | msgstr "" |
38616 | ||
38617 | #. type: item | |
39764ef8 | 38618 | #: doc/guix.texi:17582 |
b9fe8fd6 JL |
38619 | #, no-wrap |
38620 | msgid "@code{ignore-cpuid-check?} (default: @code{#f})" | |
38621 | msgstr "" | |
38622 | ||
38623 | #. type: table | |
39764ef8 | 38624 | #: doc/guix.texi:17584 |
b9fe8fd6 JL |
38625 | msgid "Ignore cpuid check for supported CPU models." |
38626 | msgstr "" | |
38627 | ||
38628 | #. type: item | |
39764ef8 | 38629 | #: doc/guix.texi:17585 |
b9fe8fd6 JL |
38630 | #, no-wrap |
38631 | msgid "@code{thermald} (default: @var{thermald})" | |
38632 | msgstr "" | |
38633 | ||
38634 | #. type: table | |
39764ef8 | 38635 | #: doc/guix.texi:17587 |
b9fe8fd6 JL |
38636 | msgid "Package object of thermald." |
38637 | msgstr "" | |
38638 | ||
38639 | #. type: Plain text | |
39764ef8 | 38640 | #: doc/guix.texi:17596 |
b9fe8fd6 JL |
38641 | msgid "" |
38642 | "The @code{(gnu services audio)} module provides a service to start MPD (the " | |
38643 | "Music Player Daemon)." | |
38644 | msgstr "" | |
38645 | ||
38646 | #. type: cindex | |
39764ef8 | 38647 | #: doc/guix.texi:17597 |
b9fe8fd6 JL |
38648 | #, no-wrap |
38649 | msgid "mpd" | |
38650 | msgstr "" | |
38651 | ||
38652 | #. type: subsubheading | |
39764ef8 | 38653 | #: doc/guix.texi:17598 |
b9fe8fd6 JL |
38654 | #, no-wrap |
38655 | msgid "Music Player Daemon" | |
38656 | msgstr "" | |
38657 | ||
38658 | #. type: Plain text | |
39764ef8 | 38659 | #: doc/guix.texi:17603 |
b9fe8fd6 JL |
38660 | msgid "" |
38661 | "The Music Player Daemon (MPD) is a service that can play music while being " | |
38662 | "controlled from the local machine or over the network by a variety of " | |
38663 | "clients." | |
38664 | msgstr "" | |
38665 | ||
38666 | #. type: Plain text | |
39764ef8 | 38667 | #: doc/guix.texi:17606 |
b9fe8fd6 | 38668 | msgid "" |
39764ef8 JL |
38669 | "The following example shows how one might run @code{mpd} as user @code{\"bob" |
38670 | "\"} on port @code{6666}. It uses pulseaudio for output." | |
b9fe8fd6 JL |
38671 | msgstr "" |
38672 | ||
38673 | #. type: example | |
39764ef8 | 38674 | #: doc/guix.texi:17612 |
b9fe8fd6 JL |
38675 | #, no-wrap |
38676 | msgid "" | |
38677 | "(service mpd-service-type\n" | |
38678 | " (mpd-configuration\n" | |
38679 | " (user \"bob\")\n" | |
38680 | " (port \"6666\")))\n" | |
38681 | msgstr "" | |
38682 | ||
38683 | #. type: defvr | |
39764ef8 | 38684 | #: doc/guix.texi:17614 |
b9fe8fd6 JL |
38685 | #, no-wrap |
38686 | msgid "{Scheme Variable} mpd-service-type" | |
38687 | msgstr "" | |
38688 | ||
38689 | #. type: defvr | |
39764ef8 | 38690 | #: doc/guix.texi:17616 |
b9fe8fd6 JL |
38691 | msgid "The service type for @command{mpd}" |
38692 | msgstr "" | |
38693 | ||
38694 | #. type: deftp | |
39764ef8 | 38695 | #: doc/guix.texi:17618 |
b9fe8fd6 JL |
38696 | #, no-wrap |
38697 | msgid "{Data Type} mpd-configuration" | |
38698 | msgstr "" | |
38699 | ||
38700 | #. type: deftp | |
39764ef8 | 38701 | #: doc/guix.texi:17620 |
b9fe8fd6 JL |
38702 | msgid "Data type representing the configuration of @command{mpd}." |
38703 | msgstr "" | |
38704 | ||
38705 | #. type: item | |
39764ef8 | 38706 | #: doc/guix.texi:17622 |
b9fe8fd6 JL |
38707 | #, no-wrap |
38708 | msgid "@code{user} (default: @code{\"mpd\"})" | |
38709 | msgstr "" | |
38710 | ||
38711 | #. type: table | |
39764ef8 | 38712 | #: doc/guix.texi:17624 |
b9fe8fd6 JL |
38713 | msgid "The user to run mpd as." |
38714 | msgstr "" | |
38715 | ||
38716 | #. type: item | |
39764ef8 | 38717 | #: doc/guix.texi:17625 |
b9fe8fd6 JL |
38718 | #, no-wrap |
38719 | msgid "@code{music-dir} (default: @code{\"~/Music\"})" | |
38720 | msgstr "" | |
38721 | ||
38722 | #. type: table | |
39764ef8 | 38723 | #: doc/guix.texi:17627 |
b9fe8fd6 JL |
38724 | msgid "The directory to scan for music files." |
38725 | msgstr "" | |
38726 | ||
38727 | #. type: item | |
39764ef8 | 38728 | #: doc/guix.texi:17628 |
b9fe8fd6 JL |
38729 | #, no-wrap |
38730 | msgid "@code{playlist-dir} (default: @code{\"~/.mpd/playlists\"})" | |
38731 | msgstr "" | |
38732 | ||
38733 | #. type: table | |
39764ef8 | 38734 | #: doc/guix.texi:17630 |
b9fe8fd6 JL |
38735 | msgid "The directory to store playlists." |
38736 | msgstr "" | |
38737 | ||
38738 | #. type: item | |
39764ef8 | 38739 | #: doc/guix.texi:17631 |
b9fe8fd6 JL |
38740 | #, no-wrap |
38741 | msgid "@code{port} (default: @code{\"6600\"})" | |
38742 | msgstr "" | |
38743 | ||
38744 | #. type: table | |
39764ef8 | 38745 | #: doc/guix.texi:17633 |
b9fe8fd6 JL |
38746 | msgid "The port to run mpd on." |
38747 | msgstr "" | |
38748 | ||
38749 | #. type: item | |
39764ef8 | 38750 | #: doc/guix.texi:17634 |
b9fe8fd6 JL |
38751 | #, no-wrap |
38752 | msgid "@code{address} (default: @code{\"any\"})" | |
38753 | msgstr "" | |
38754 | ||
38755 | #. type: table | |
39764ef8 | 38756 | #: doc/guix.texi:17637 |
b9fe8fd6 JL |
38757 | msgid "" |
38758 | "The address that mpd will bind to. To use a Unix domain socket, an absolute " | |
38759 | "path can be specified here." | |
38760 | msgstr "" | |
38761 | ||
38762 | #. type: subsubsection | |
39764ef8 | 38763 | #: doc/guix.texi:17642 |
b9fe8fd6 JL |
38764 | #, no-wrap |
38765 | msgid "Virtualization services" | |
38766 | msgstr "" | |
38767 | ||
38768 | #. type: Plain text | |
39764ef8 | 38769 | #: doc/guix.texi:17647 |
b9fe8fd6 JL |
38770 | msgid "" |
38771 | "The @code{(gnu services virtualization)} module provides services for the " | |
38772 | "libvirt and virtlog daemons, as well as other virtualization-related " | |
38773 | "services." | |
38774 | msgstr "" | |
38775 | ||
38776 | #. type: subsubheading | |
39764ef8 | 38777 | #: doc/guix.texi:17648 |
b9fe8fd6 JL |
38778 | #, no-wrap |
38779 | msgid "Libvirt daemon" | |
38780 | msgstr "" | |
38781 | ||
38782 | #. type: Plain text | |
39764ef8 | 38783 | #: doc/guix.texi:17652 |
b9fe8fd6 JL |
38784 | msgid "" |
38785 | "@code{libvirtd} is the server side daemon component of the libvirt " | |
38786 | "virtualization management system. This daemon runs on host servers and " | |
38787 | "performs required management tasks for virtualized guests." | |
38788 | msgstr "" | |
38789 | ||
38790 | #. type: deffn | |
39764ef8 | 38791 | #: doc/guix.texi:17653 |
b9fe8fd6 JL |
38792 | #, no-wrap |
38793 | msgid "{Scheme Variable} libvirt-service-type" | |
38794 | msgstr "" | |
38795 | ||
38796 | #. type: deffn | |
39764ef8 | 38797 | #: doc/guix.texi:17656 |
b9fe8fd6 JL |
38798 | msgid "" |
38799 | "This is the type of the @uref{https://libvirt.org, libvirt daemon}. Its " | |
38800 | "value must be a @code{libvirt-configuration}." | |
38801 | msgstr "" | |
38802 | ||
38803 | #. type: example | |
39764ef8 | 38804 | #: doc/guix.texi:17662 |
b9fe8fd6 JL |
38805 | #, no-wrap |
38806 | msgid "" | |
38807 | "(service libvirt-service-type\n" | |
38808 | " (libvirt-configuration\n" | |
38809 | " (unix-sock-group \"libvirt\")\n" | |
38810 | " (tls-port \"16555\")))\n" | |
38811 | msgstr "" | |
38812 | ||
38813 | #. type: Plain text | |
39764ef8 | 38814 | #: doc/guix.texi:17667 |
b9fe8fd6 JL |
38815 | msgid "Available @code{libvirt-configuration} fields are:" |
38816 | msgstr "" | |
38817 | ||
38818 | #. type: deftypevr | |
39764ef8 | 38819 | #: doc/guix.texi:17668 |
b9fe8fd6 JL |
38820 | #, no-wrap |
38821 | msgid "{@code{libvirt-configuration} parameter} package libvirt" | |
38822 | msgstr "" | |
38823 | ||
38824 | #. type: deftypevr | |
39764ef8 | 38825 | #: doc/guix.texi:17670 |
b9fe8fd6 JL |
38826 | msgid "Libvirt package." |
38827 | msgstr "" | |
38828 | ||
38829 | #. type: deftypevr | |
39764ef8 | 38830 | #: doc/guix.texi:17673 |
b9fe8fd6 JL |
38831 | #, no-wrap |
38832 | msgid "{@code{libvirt-configuration} parameter} boolean listen-tls?" | |
38833 | msgstr "" | |
38834 | ||
38835 | #. type: deftypevr | |
39764ef8 | 38836 | #: doc/guix.texi:17676 |
b9fe8fd6 JL |
38837 | msgid "" |
38838 | "Flag listening for secure TLS connections on the public TCP/IP port. must " | |
38839 | "set @code{listen} for this to have any effect." | |
38840 | msgstr "" | |
38841 | ||
38842 | #. type: deftypevr | |
39764ef8 | 38843 | #: doc/guix.texi:17679 |
b9fe8fd6 JL |
38844 | msgid "" |
38845 | "It is necessary to setup a CA and issue server certificates before using " | |
38846 | "this capability." | |
38847 | msgstr "" | |
38848 | ||
38849 | #. type: deftypevr | |
39764ef8 | 38850 | #: doc/guix.texi:17684 |
b9fe8fd6 JL |
38851 | #, no-wrap |
38852 | msgid "{@code{libvirt-configuration} parameter} boolean listen-tcp?" | |
38853 | msgstr "" | |
38854 | ||
38855 | #. type: deftypevr | |
39764ef8 | 38856 | #: doc/guix.texi:17687 |
b9fe8fd6 JL |
38857 | msgid "" |
38858 | "Listen for unencrypted TCP connections on the public TCP/IP port. must set " | |
38859 | "@code{listen} for this to have any effect." | |
38860 | msgstr "" | |
38861 | ||
38862 | #. type: deftypevr | |
39764ef8 | 38863 | #: doc/guix.texi:17691 |
b9fe8fd6 JL |
38864 | msgid "" |
38865 | "Using the TCP socket requires SASL authentication by default. Only SASL " | |
38866 | "mechanisms which support data encryption are allowed. This is DIGEST_MD5 " | |
38867 | "and GSSAPI (Kerberos5)" | |
38868 | msgstr "" | |
38869 | ||
38870 | #. type: deftypevr | |
39764ef8 | 38871 | #: doc/guix.texi:17696 |
b9fe8fd6 JL |
38872 | #, no-wrap |
38873 | msgid "{@code{libvirt-configuration} parameter} string tls-port" | |
38874 | msgstr "" | |
38875 | ||
38876 | #. type: deftypevr | |
39764ef8 | 38877 | #: doc/guix.texi:17699 |
b9fe8fd6 JL |
38878 | msgid "" |
38879 | "Port for accepting secure TLS connections This can be a port number, or " | |
38880 | "service name" | |
38881 | msgstr "" | |
38882 | ||
38883 | #. type: deftypevr | |
39764ef8 | 38884 | #: doc/guix.texi:17701 |
b9fe8fd6 JL |
38885 | msgid "Defaults to @samp{\"16514\"}." |
38886 | msgstr "" | |
38887 | ||
38888 | #. type: deftypevr | |
39764ef8 | 38889 | #: doc/guix.texi:17704 |
b9fe8fd6 JL |
38890 | #, no-wrap |
38891 | msgid "{@code{libvirt-configuration} parameter} string tcp-port" | |
38892 | msgstr "" | |
38893 | ||
38894 | #. type: deftypevr | |
39764ef8 | 38895 | #: doc/guix.texi:17707 |
b9fe8fd6 JL |
38896 | msgid "" |
38897 | "Port for accepting insecure TCP connections This can be a port number, or " | |
38898 | "service name" | |
38899 | msgstr "" | |
38900 | ||
38901 | #. type: deftypevr | |
39764ef8 | 38902 | #: doc/guix.texi:17709 |
b9fe8fd6 JL |
38903 | msgid "Defaults to @samp{\"16509\"}." |
38904 | msgstr "" | |
38905 | ||
38906 | #. type: deftypevr | |
39764ef8 | 38907 | #: doc/guix.texi:17712 |
b9fe8fd6 JL |
38908 | #, no-wrap |
38909 | msgid "{@code{libvirt-configuration} parameter} string listen-addr" | |
38910 | msgstr "" | |
38911 | ||
38912 | #. type: deftypevr | |
39764ef8 | 38913 | #: doc/guix.texi:17714 |
b9fe8fd6 JL |
38914 | msgid "IP address or hostname used for client connections." |
38915 | msgstr "" | |
38916 | ||
38917 | #. type: deftypevr | |
39764ef8 | 38918 | #: doc/guix.texi:17716 |
b9fe8fd6 JL |
38919 | msgid "Defaults to @samp{\"0.0.0.0\"}." |
38920 | msgstr "" | |
38921 | ||
38922 | #. type: deftypevr | |
39764ef8 | 38923 | #: doc/guix.texi:17719 |
b9fe8fd6 JL |
38924 | #, no-wrap |
38925 | msgid "{@code{libvirt-configuration} parameter} boolean mdns-adv?" | |
38926 | msgstr "" | |
38927 | ||
38928 | #. type: deftypevr | |
39764ef8 | 38929 | #: doc/guix.texi:17721 |
b9fe8fd6 JL |
38930 | msgid "Flag toggling mDNS advertisement of the libvirt service." |
38931 | msgstr "" | |
38932 | ||
38933 | #. type: deftypevr | |
39764ef8 | 38934 | #: doc/guix.texi:17724 |
b9fe8fd6 JL |
38935 | msgid "" |
38936 | "Alternatively can disable for all services on a host by stopping the Avahi " | |
38937 | "daemon." | |
38938 | msgstr "" | |
38939 | ||
38940 | #. type: deftypevr | |
39764ef8 | 38941 | #: doc/guix.texi:17729 |
b9fe8fd6 JL |
38942 | #, no-wrap |
38943 | msgid "{@code{libvirt-configuration} parameter} string mdns-name" | |
38944 | msgstr "" | |
38945 | ||
38946 | #. type: deftypevr | |
39764ef8 | 38947 | #: doc/guix.texi:17732 |
b9fe8fd6 JL |
38948 | msgid "" |
38949 | "Default mDNS advertisement name. This must be unique on the immediate " | |
38950 | "broadcast network." | |
38951 | msgstr "" | |
38952 | ||
38953 | #. type: deftypevr | |
39764ef8 | 38954 | #: doc/guix.texi:17734 |
b9fe8fd6 JL |
38955 | msgid "Defaults to @samp{\"Virtualization Host <hostname>\"}." |
38956 | msgstr "" | |
38957 | ||
38958 | #. type: deftypevr | |
39764ef8 | 38959 | #: doc/guix.texi:17737 |
b9fe8fd6 JL |
38960 | #, no-wrap |
38961 | msgid "{@code{libvirt-configuration} parameter} string unix-sock-group" | |
38962 | msgstr "" | |
38963 | ||
38964 | #. type: deftypevr | |
39764ef8 | 38965 | #: doc/guix.texi:17741 |
b9fe8fd6 JL |
38966 | msgid "" |
38967 | "UNIX domain socket group ownership. This can be used to allow a 'trusted' " | |
38968 | "set of users access to management capabilities without becoming root." | |
38969 | msgstr "" | |
38970 | ||
38971 | #. type: deftypevr | |
39764ef8 | 38972 | #: doc/guix.texi:17743 |
b9fe8fd6 JL |
38973 | msgid "Defaults to @samp{\"root\"}." |
38974 | msgstr "" | |
38975 | ||
38976 | #. type: deftypevr | |
39764ef8 | 38977 | #: doc/guix.texi:17746 |
b9fe8fd6 JL |
38978 | #, no-wrap |
38979 | msgid "{@code{libvirt-configuration} parameter} string unix-sock-ro-perms" | |
38980 | msgstr "" | |
38981 | ||
38982 | #. type: deftypevr | |
39764ef8 | 38983 | #: doc/guix.texi:17749 |
b9fe8fd6 JL |
38984 | msgid "" |
38985 | "UNIX socket permissions for the R/O socket. This is used for monitoring VM " | |
38986 | "status only." | |
38987 | msgstr "" | |
38988 | ||
38989 | #. type: deftypevr | |
39764ef8 | 38990 | #: doc/guix.texi:17751 doc/guix.texi:17769 |
b9fe8fd6 JL |
38991 | msgid "Defaults to @samp{\"0777\"}." |
38992 | msgstr "" | |
38993 | ||
38994 | #. type: deftypevr | |
39764ef8 | 38995 | #: doc/guix.texi:17754 |
b9fe8fd6 JL |
38996 | #, no-wrap |
38997 | msgid "{@code{libvirt-configuration} parameter} string unix-sock-rw-perms" | |
38998 | msgstr "" | |
38999 | ||
39000 | #. type: deftypevr | |
39764ef8 | 39001 | #: doc/guix.texi:17758 |
b9fe8fd6 JL |
39002 | msgid "" |
39003 | "UNIX socket permissions for the R/W socket. Default allows only root. If " | |
39004 | "PolicyKit is enabled on the socket, the default will change to allow " | |
39005 | "everyone (eg, 0777)" | |
39006 | msgstr "" | |
39007 | ||
39008 | #. type: deftypevr | |
39764ef8 | 39009 | #: doc/guix.texi:17760 |
b9fe8fd6 JL |
39010 | msgid "Defaults to @samp{\"0770\"}." |
39011 | msgstr "" | |
39012 | ||
39013 | #. type: deftypevr | |
39764ef8 | 39014 | #: doc/guix.texi:17763 |
b9fe8fd6 JL |
39015 | #, no-wrap |
39016 | msgid "{@code{libvirt-configuration} parameter} string unix-sock-admin-perms" | |
39017 | msgstr "" | |
39018 | ||
39019 | #. type: deftypevr | |
39764ef8 | 39020 | #: doc/guix.texi:17767 |
b9fe8fd6 JL |
39021 | msgid "" |
39022 | "UNIX socket permissions for the admin socket. Default allows only owner " | |
39023 | "(root), do not change it unless you are sure to whom you are exposing the " | |
39024 | "access to." | |
39025 | msgstr "" | |
39026 | ||
39027 | #. type: deftypevr | |
39764ef8 | 39028 | #: doc/guix.texi:17772 |
b9fe8fd6 JL |
39029 | #, no-wrap |
39030 | msgid "{@code{libvirt-configuration} parameter} string unix-sock-dir" | |
39031 | msgstr "" | |
39032 | ||
39033 | #. type: deftypevr | |
39764ef8 | 39034 | #: doc/guix.texi:17774 |
b9fe8fd6 JL |
39035 | msgid "The directory in which sockets will be found/created." |
39036 | msgstr "" | |
39037 | ||
39038 | #. type: deftypevr | |
39764ef8 | 39039 | #: doc/guix.texi:17776 |
b9fe8fd6 JL |
39040 | msgid "Defaults to @samp{\"/var/run/libvirt\"}." |
39041 | msgstr "" | |
39042 | ||
39043 | #. type: deftypevr | |
39764ef8 | 39044 | #: doc/guix.texi:17779 |
b9fe8fd6 JL |
39045 | #, no-wrap |
39046 | msgid "{@code{libvirt-configuration} parameter} string auth-unix-ro" | |
39047 | msgstr "" | |
39048 | ||
39049 | #. type: deftypevr | |
39764ef8 | 39050 | #: doc/guix.texi:17782 |
b9fe8fd6 JL |
39051 | msgid "" |
39052 | "Authentication scheme for UNIX read-only sockets. By default socket " | |
39053 | "permissions allow anyone to connect" | |
39054 | msgstr "" | |
39055 | ||
39056 | #. type: deftypevr | |
39764ef8 | 39057 | #: doc/guix.texi:17784 doc/guix.texi:17793 |
b9fe8fd6 JL |
39058 | msgid "Defaults to @samp{\"polkit\"}." |
39059 | msgstr "" | |
39060 | ||
39061 | #. type: deftypevr | |
39764ef8 | 39062 | #: doc/guix.texi:17787 |
b9fe8fd6 JL |
39063 | #, no-wrap |
39064 | msgid "{@code{libvirt-configuration} parameter} string auth-unix-rw" | |
39065 | msgstr "" | |
39066 | ||
39067 | #. type: deftypevr | |
39764ef8 | 39068 | #: doc/guix.texi:17791 |
b9fe8fd6 JL |
39069 | msgid "" |
39070 | "Authentication scheme for UNIX read-write sockets. By default socket " | |
39071 | "permissions only allow root. If PolicyKit support was compiled into " | |
39072 | "libvirt, the default will be to use 'polkit' auth." | |
39073 | msgstr "" | |
39074 | ||
39075 | #. type: deftypevr | |
39764ef8 | 39076 | #: doc/guix.texi:17796 |
b9fe8fd6 JL |
39077 | #, no-wrap |
39078 | msgid "{@code{libvirt-configuration} parameter} string auth-tcp" | |
39079 | msgstr "" | |
39080 | ||
39081 | #. type: deftypevr | |
39764ef8 | 39082 | #: doc/guix.texi:17800 |
b9fe8fd6 JL |
39083 | msgid "" |
39084 | "Authentication scheme for TCP sockets. If you don't enable SASL, then all " | |
39085 | "TCP traffic is cleartext. Don't do this outside of a dev/test scenario." | |
39086 | msgstr "" | |
39087 | ||
39088 | #. type: deftypevr | |
39764ef8 | 39089 | #: doc/guix.texi:17802 |
b9fe8fd6 JL |
39090 | msgid "Defaults to @samp{\"sasl\"}." |
39091 | msgstr "" | |
39092 | ||
39093 | #. type: deftypevr | |
39764ef8 | 39094 | #: doc/guix.texi:17805 |
b9fe8fd6 JL |
39095 | #, no-wrap |
39096 | msgid "{@code{libvirt-configuration} parameter} string auth-tls" | |
39097 | msgstr "" | |
39098 | ||
39099 | #. type: deftypevr | |
39764ef8 | 39100 | #: doc/guix.texi:17809 |
b9fe8fd6 JL |
39101 | msgid "" |
39102 | "Authentication scheme for TLS sockets. TLS sockets already have encryption " | |
39103 | "provided by the TLS layer, and limited authentication is done by " | |
39104 | "certificates." | |
39105 | msgstr "" | |
39106 | ||
39107 | #. type: deftypevr | |
39764ef8 | 39108 | #: doc/guix.texi:17812 |
b9fe8fd6 JL |
39109 | msgid "" |
39110 | "It is possible to make use of any SASL authentication mechanism as well, by " | |
39111 | "using 'sasl' for this option" | |
39112 | msgstr "" | |
39113 | ||
39114 | #. type: deftypevr | |
39764ef8 | 39115 | #: doc/guix.texi:17814 |
b9fe8fd6 JL |
39116 | msgid "Defaults to @samp{\"none\"}." |
39117 | msgstr "" | |
39118 | ||
39119 | #. type: deftypevr | |
39764ef8 | 39120 | #: doc/guix.texi:17817 |
b9fe8fd6 JL |
39121 | #, no-wrap |
39122 | msgid "{@code{libvirt-configuration} parameter} optional-list access-drivers" | |
39123 | msgstr "" | |
39124 | ||
39125 | #. type: deftypevr | |
39764ef8 | 39126 | #: doc/guix.texi:17819 |
b9fe8fd6 JL |
39127 | msgid "API access control scheme." |
39128 | msgstr "" | |
39129 | ||
39130 | #. type: deftypevr | |
39764ef8 | 39131 | #: doc/guix.texi:17822 |
b9fe8fd6 JL |
39132 | msgid "" |
39133 | "By default an authenticated user is allowed access to all APIs. Access " | |
39134 | "drivers can place restrictions on this." | |
39135 | msgstr "" | |
39136 | ||
39137 | #. type: deftypevr | |
39764ef8 | 39138 | #: doc/guix.texi:17827 |
b9fe8fd6 JL |
39139 | #, no-wrap |
39140 | msgid "{@code{libvirt-configuration} parameter} string key-file" | |
39141 | msgstr "" | |
39142 | ||
39143 | #. type: deftypevr | |
39764ef8 | 39144 | #: doc/guix.texi:17830 |
b9fe8fd6 JL |
39145 | msgid "" |
39146 | "Server key file path. If set to an empty string, then no private key is " | |
39147 | "loaded." | |
39148 | msgstr "" | |
39149 | ||
39150 | #. type: deftypevr | |
39764ef8 | 39151 | #: doc/guix.texi:17835 |
b9fe8fd6 JL |
39152 | #, no-wrap |
39153 | msgid "{@code{libvirt-configuration} parameter} string cert-file" | |
39154 | msgstr "" | |
39155 | ||
39156 | #. type: deftypevr | |
39764ef8 | 39157 | #: doc/guix.texi:17838 |
b9fe8fd6 JL |
39158 | msgid "" |
39159 | "Server key file path. If set to an empty string, then no certificate is " | |
39160 | "loaded." | |
39161 | msgstr "" | |
39162 | ||
39163 | #. type: deftypevr | |
39764ef8 | 39164 | #: doc/guix.texi:17843 |
b9fe8fd6 JL |
39165 | #, no-wrap |
39166 | msgid "{@code{libvirt-configuration} parameter} string ca-file" | |
39167 | msgstr "" | |
39168 | ||
39169 | #. type: deftypevr | |
39764ef8 | 39170 | #: doc/guix.texi:17846 |
b9fe8fd6 JL |
39171 | msgid "" |
39172 | "Server key file path. If set to an empty string, then no CA certificate is " | |
39173 | "loaded." | |
39174 | msgstr "" | |
39175 | ||
39176 | #. type: deftypevr | |
39764ef8 | 39177 | #: doc/guix.texi:17851 |
b9fe8fd6 JL |
39178 | #, no-wrap |
39179 | msgid "{@code{libvirt-configuration} parameter} string crl-file" | |
39180 | msgstr "" | |
39181 | ||
39182 | #. type: deftypevr | |
39764ef8 | 39183 | #: doc/guix.texi:17854 |
b9fe8fd6 JL |
39184 | msgid "" |
39185 | "Certificate revocation list path. If set to an empty string, then no CRL is " | |
39186 | "loaded." | |
39187 | msgstr "" | |
39188 | ||
39189 | #. type: deftypevr | |
39764ef8 | 39190 | #: doc/guix.texi:17859 |
b9fe8fd6 JL |
39191 | #, no-wrap |
39192 | msgid "{@code{libvirt-configuration} parameter} boolean tls-no-sanity-cert" | |
39193 | msgstr "" | |
39194 | ||
39195 | #. type: deftypevr | |
39764ef8 | 39196 | #: doc/guix.texi:17861 |
b9fe8fd6 JL |
39197 | msgid "Disable verification of our own server certificates." |
39198 | msgstr "" | |
39199 | ||
39200 | #. type: deftypevr | |
39764ef8 | 39201 | #: doc/guix.texi:17864 |
b9fe8fd6 JL |
39202 | msgid "" |
39203 | "When libvirtd starts it performs some sanity checks against its own " | |
39204 | "certificates." | |
39205 | msgstr "" | |
39206 | ||
39207 | #. type: deftypevr | |
39764ef8 | 39208 | #: doc/guix.texi:17869 |
b9fe8fd6 JL |
39209 | #, no-wrap |
39210 | msgid "{@code{libvirt-configuration} parameter} boolean tls-no-verify-cert" | |
39211 | msgstr "" | |
39212 | ||
39213 | #. type: deftypevr | |
39764ef8 | 39214 | #: doc/guix.texi:17871 |
b9fe8fd6 JL |
39215 | msgid "Disable verification of client certificates." |
39216 | msgstr "" | |
39217 | ||
39218 | #. type: deftypevr | |
39764ef8 | 39219 | #: doc/guix.texi:17875 |
b9fe8fd6 JL |
39220 | msgid "" |
39221 | "Client certificate verification is the primary authentication mechanism. " | |
39222 | "Any client which does not present a certificate signed by the CA will be " | |
39223 | "rejected." | |
39224 | msgstr "" | |
39225 | ||
39226 | #. type: deftypevr | |
39764ef8 | 39227 | #: doc/guix.texi:17880 |
b9fe8fd6 JL |
39228 | #, no-wrap |
39229 | msgid "{@code{libvirt-configuration} parameter} optional-list tls-allowed-dn-list" | |
39230 | msgstr "" | |
39231 | ||
39232 | #. type: deftypevr | |
39764ef8 | 39233 | #: doc/guix.texi:17882 |
b9fe8fd6 JL |
39234 | msgid "Whitelist of allowed x509 Distinguished Name." |
39235 | msgstr "" | |
39236 | ||
39237 | #. type: deftypevr | |
39764ef8 | 39238 | #: doc/guix.texi:17887 |
b9fe8fd6 | 39239 | #, no-wrap |
39764ef8 | 39240 | msgid "{@code{libvirt-configuration} parameter} optional-list sasl-allowed-usernames" |
b9fe8fd6 JL |
39241 | msgstr "" |
39242 | ||
39243 | #. type: deftypevr | |
39764ef8 | 39244 | #: doc/guix.texi:17890 |
b9fe8fd6 JL |
39245 | msgid "" |
39246 | "Whitelist of allowed SASL usernames. The format for username depends on the " | |
39247 | "SASL authentication mechanism." | |
39248 | msgstr "" | |
39249 | ||
39250 | #. type: deftypevr | |
39764ef8 | 39251 | #: doc/guix.texi:17895 |
b9fe8fd6 JL |
39252 | #, no-wrap |
39253 | msgid "{@code{libvirt-configuration} parameter} string tls-priority" | |
39254 | msgstr "" | |
39255 | ||
39256 | #. type: deftypevr | |
39764ef8 | 39257 | #: doc/guix.texi:17899 |
b9fe8fd6 JL |
39258 | msgid "" |
39259 | "Override the compile time default TLS priority string. The default is " | |
39260 | "usually \"NORMAL\" unless overridden at build time. Only set this is it is " | |
39261 | "desired for libvirt to deviate from the global default settings." | |
39262 | msgstr "" | |
39263 | ||
39264 | #. type: deftypevr | |
39764ef8 | 39265 | #: doc/guix.texi:17901 |
b9fe8fd6 JL |
39266 | msgid "Defaults to @samp{\"NORMAL\"}." |
39267 | msgstr "" | |
39268 | ||
39269 | #. type: deftypevr | |
39764ef8 | 39270 | #: doc/guix.texi:17904 |
b9fe8fd6 JL |
39271 | #, no-wrap |
39272 | msgid "{@code{libvirt-configuration} parameter} integer max-clients" | |
39273 | msgstr "" | |
39274 | ||
39275 | #. type: deftypevr | |
39764ef8 | 39276 | #: doc/guix.texi:17907 doc/guix.texi:18330 |
b9fe8fd6 JL |
39277 | msgid "" |
39278 | "Maximum number of concurrent client connections to allow over all sockets " | |
39279 | "combined." | |
39280 | msgstr "" | |
39281 | ||
39282 | #. type: deftypevr | |
39764ef8 | 39283 | #: doc/guix.texi:17909 |
b9fe8fd6 JL |
39284 | msgid "Defaults to @samp{5000}." |
39285 | msgstr "" | |
39286 | ||
39287 | #. type: deftypevr | |
39764ef8 | 39288 | #: doc/guix.texi:17912 |
b9fe8fd6 JL |
39289 | #, no-wrap |
39290 | msgid "{@code{libvirt-configuration} parameter} integer max-queued-clients" | |
39291 | msgstr "" | |
39292 | ||
39293 | #. type: deftypevr | |
39764ef8 | 39294 | #: doc/guix.texi:17916 |
b9fe8fd6 JL |
39295 | msgid "" |
39296 | "Maximum length of queue of connections waiting to be accepted by the " | |
39297 | "daemon. Note, that some protocols supporting retransmission may obey this " | |
39298 | "so that a later reattempt at connection succeeds." | |
39299 | msgstr "" | |
39300 | ||
39301 | #. type: deftypevr | |
39764ef8 | 39302 | #: doc/guix.texi:17921 |
b9fe8fd6 JL |
39303 | #, no-wrap |
39304 | msgid "{@code{libvirt-configuration} parameter} integer max-anonymous-clients" | |
39305 | msgstr "" | |
39306 | ||
39307 | #. type: deftypevr | |
39764ef8 | 39308 | #: doc/guix.texi:17924 |
b9fe8fd6 JL |
39309 | msgid "" |
39310 | "Maximum length of queue of accepted but not yet authenticated clients. Set " | |
39311 | "this to zero to turn this feature off" | |
39312 | msgstr "" | |
39313 | ||
39314 | #. type: deftypevr | |
39764ef8 | 39315 | #: doc/guix.texi:17926 doc/guix.texi:17944 doc/guix.texi:17960 |
b9fe8fd6 JL |
39316 | msgid "Defaults to @samp{20}." |
39317 | msgstr "" | |
39318 | ||
39319 | #. type: deftypevr | |
39764ef8 | 39320 | #: doc/guix.texi:17929 |
b9fe8fd6 JL |
39321 | #, no-wrap |
39322 | msgid "{@code{libvirt-configuration} parameter} integer min-workers" | |
39323 | msgstr "" | |
39324 | ||
39325 | #. type: deftypevr | |
39764ef8 | 39326 | #: doc/guix.texi:17931 |
b9fe8fd6 JL |
39327 | msgid "Number of workers to start up initially." |
39328 | msgstr "" | |
39329 | ||
39330 | #. type: deftypevr | |
39764ef8 | 39331 | #: doc/guix.texi:17936 |
b9fe8fd6 JL |
39332 | #, no-wrap |
39333 | msgid "{@code{libvirt-configuration} parameter} integer max-workers" | |
39334 | msgstr "" | |
39335 | ||
39336 | #. type: deftypevr | |
39764ef8 | 39337 | #: doc/guix.texi:17938 |
b9fe8fd6 JL |
39338 | msgid "Maximum number of worker threads." |
39339 | msgstr "" | |
39340 | ||
39341 | #. type: deftypevr | |
39764ef8 | 39342 | #: doc/guix.texi:17942 |
b9fe8fd6 JL |
39343 | msgid "" |
39344 | "If the number of active clients exceeds @code{min-workers}, then more " | |
39345 | "threads are spawned, up to max_workers limit. Typically you'd want " | |
39346 | "max_workers to equal maximum number of clients allowed." | |
39347 | msgstr "" | |
39348 | ||
39349 | #. type: deftypevr | |
39764ef8 | 39350 | #: doc/guix.texi:17947 |
b9fe8fd6 JL |
39351 | #, no-wrap |
39352 | msgid "{@code{libvirt-configuration} parameter} integer prio-workers" | |
39353 | msgstr "" | |
39354 | ||
39355 | #. type: deftypevr | |
39764ef8 | 39356 | #: doc/guix.texi:17951 |
b9fe8fd6 JL |
39357 | msgid "" |
39358 | "Number of priority workers. If all workers from above pool are stuck, some " | |
39359 | "calls marked as high priority (notably domainDestroy) can be executed in " | |
39360 | "this pool." | |
39361 | msgstr "" | |
39362 | ||
39363 | #. type: deftypevr | |
39764ef8 | 39364 | #: doc/guix.texi:17956 |
b9fe8fd6 JL |
39365 | #, no-wrap |
39366 | msgid "{@code{libvirt-configuration} parameter} integer max-requests" | |
39367 | msgstr "" | |
39368 | ||
39369 | #. type: deftypevr | |
39764ef8 | 39370 | #: doc/guix.texi:17958 |
b9fe8fd6 JL |
39371 | msgid "Total global limit on concurrent RPC calls." |
39372 | msgstr "" | |
39373 | ||
39374 | #. type: deftypevr | |
39764ef8 | 39375 | #: doc/guix.texi:17963 |
b9fe8fd6 JL |
39376 | #, no-wrap |
39377 | msgid "{@code{libvirt-configuration} parameter} integer max-client-requests" | |
39378 | msgstr "" | |
39379 | ||
39380 | #. type: deftypevr | |
39764ef8 | 39381 | #: doc/guix.texi:17967 |
b9fe8fd6 JL |
39382 | msgid "" |
39383 | "Limit on concurrent requests from a single client connection. To avoid one " | |
39384 | "client monopolizing the server this should be a small fraction of the global " | |
39385 | "max_requests and max_workers parameter." | |
39386 | msgstr "" | |
39387 | ||
39388 | #. type: deftypevr | |
39764ef8 | 39389 | #: doc/guix.texi:17972 |
b9fe8fd6 JL |
39390 | #, no-wrap |
39391 | msgid "{@code{libvirt-configuration} parameter} integer admin-min-workers" | |
39392 | msgstr "" | |
39393 | ||
39394 | #. type: deftypevr | |
39764ef8 | 39395 | #: doc/guix.texi:17974 |
b9fe8fd6 JL |
39396 | msgid "Same as @code{min-workers} but for the admin interface." |
39397 | msgstr "" | |
39398 | ||
39399 | #. type: deftypevr | |
39764ef8 | 39400 | #: doc/guix.texi:17979 |
b9fe8fd6 JL |
39401 | #, no-wrap |
39402 | msgid "{@code{libvirt-configuration} parameter} integer admin-max-workers" | |
39403 | msgstr "" | |
39404 | ||
39405 | #. type: deftypevr | |
39764ef8 | 39406 | #: doc/guix.texi:17981 |
b9fe8fd6 JL |
39407 | msgid "Same as @code{max-workers} but for the admin interface." |
39408 | msgstr "" | |
39409 | ||
39410 | #. type: deftypevr | |
39764ef8 | 39411 | #: doc/guix.texi:17986 |
b9fe8fd6 JL |
39412 | #, no-wrap |
39413 | msgid "{@code{libvirt-configuration} parameter} integer admin-max-clients" | |
39414 | msgstr "" | |
39415 | ||
39416 | #. type: deftypevr | |
39764ef8 | 39417 | #: doc/guix.texi:17988 |
b9fe8fd6 JL |
39418 | msgid "Same as @code{max-clients} but for the admin interface." |
39419 | msgstr "" | |
39420 | ||
39421 | #. type: deftypevr | |
39764ef8 | 39422 | #: doc/guix.texi:17993 |
b9fe8fd6 JL |
39423 | #, no-wrap |
39424 | msgid "{@code{libvirt-configuration} parameter} integer admin-max-queued-clients" | |
39425 | msgstr "" | |
39426 | ||
39427 | #. type: deftypevr | |
39764ef8 | 39428 | #: doc/guix.texi:17995 |
b9fe8fd6 JL |
39429 | msgid "Same as @code{max-queued-clients} but for the admin interface." |
39430 | msgstr "" | |
39431 | ||
39432 | #. type: deftypevr | |
39764ef8 | 39433 | #: doc/guix.texi:18000 |
b9fe8fd6 JL |
39434 | #, no-wrap |
39435 | msgid "{@code{libvirt-configuration} parameter} integer admin-max-client-requests" | |
39436 | msgstr "" | |
39437 | ||
39438 | #. type: deftypevr | |
39764ef8 | 39439 | #: doc/guix.texi:18002 |
b9fe8fd6 JL |
39440 | msgid "Same as @code{max-client-requests} but for the admin interface." |
39441 | msgstr "" | |
39442 | ||
39443 | #. type: deftypevr | |
39764ef8 | 39444 | #: doc/guix.texi:18007 |
b9fe8fd6 JL |
39445 | #, no-wrap |
39446 | msgid "{@code{libvirt-configuration} parameter} integer log-level" | |
39447 | msgstr "" | |
39448 | ||
39449 | #. type: deftypevr | |
39764ef8 | 39450 | #: doc/guix.texi:18009 doc/guix.texi:18232 |
b9fe8fd6 JL |
39451 | msgid "Logging level. 4 errors, 3 warnings, 2 information, 1 debug." |
39452 | msgstr "" | |
39453 | ||
39454 | #. type: deftypevr | |
39764ef8 | 39455 | #: doc/guix.texi:18014 |
b9fe8fd6 JL |
39456 | #, no-wrap |
39457 | msgid "{@code{libvirt-configuration} parameter} string log-filters" | |
39458 | msgstr "" | |
39459 | ||
39460 | #. type: deftypevr | |
39764ef8 | 39461 | #: doc/guix.texi:18016 doc/guix.texi:18239 |
b9fe8fd6 JL |
39462 | msgid "Logging filters." |
39463 | msgstr "" | |
39464 | ||
39465 | #. type: deftypevr | |
39764ef8 | 39466 | #: doc/guix.texi:18019 doc/guix.texi:18242 |
b9fe8fd6 JL |
39467 | msgid "" |
39468 | "A filter allows to select a different logging level for a given category of " | |
39469 | "logs The format for a filter is one of:" | |
39470 | msgstr "" | |
39471 | ||
39472 | #. type: itemize | |
39764ef8 | 39473 | #: doc/guix.texi:18023 doc/guix.texi:18246 |
b9fe8fd6 JL |
39474 | msgid "x:name" |
39475 | msgstr "" | |
39476 | ||
39477 | #. type: itemize | |
39764ef8 | 39478 | #: doc/guix.texi:18026 doc/guix.texi:18249 |
b9fe8fd6 JL |
39479 | msgid "x:+name" |
39480 | msgstr "" | |
39481 | ||
39482 | #. type: deftypevr | |
39764ef8 | 39483 | #: doc/guix.texi:18036 doc/guix.texi:18259 |
b9fe8fd6 JL |
39484 | msgid "" |
39485 | "where @code{name} is a string which is matched against the category given in " | |
39486 | "the @code{VIR_LOG_INIT()} at the top of each libvirt source file, e.g., " | |
39487 | "\"remote\", \"qemu\", or \"util.json\" (the name in the filter can be a " | |
39488 | "substring of the full category name, in order to match multiple similar " | |
39489 | "categories), the optional \"+\" prefix tells libvirt to log stack trace for " | |
39490 | "each message matching name, and @code{x} is the minimal level where matching " | |
39491 | "messages should be logged:" | |
39492 | msgstr "" | |
39493 | ||
39494 | #. type: itemize | |
39764ef8 JL |
39495 | #: doc/guix.texi:18040 doc/guix.texi:18085 doc/guix.texi:18263 |
39496 | #: doc/guix.texi:18308 | |
b9fe8fd6 JL |
39497 | msgid "1: DEBUG" |
39498 | msgstr "" | |
39499 | ||
39500 | #. type: itemize | |
39764ef8 JL |
39501 | #: doc/guix.texi:18043 doc/guix.texi:18088 doc/guix.texi:18266 |
39502 | #: doc/guix.texi:18311 | |
b9fe8fd6 JL |
39503 | msgid "2: INFO" |
39504 | msgstr "" | |
39505 | ||
39506 | #. type: itemize | |
39764ef8 JL |
39507 | #: doc/guix.texi:18046 doc/guix.texi:18091 doc/guix.texi:18269 |
39508 | #: doc/guix.texi:18314 | |
b9fe8fd6 JL |
39509 | msgid "3: WARNING" |
39510 | msgstr "" | |
39511 | ||
39512 | #. type: itemize | |
39764ef8 JL |
39513 | #: doc/guix.texi:18049 doc/guix.texi:18094 doc/guix.texi:18272 |
39514 | #: doc/guix.texi:18317 | |
b9fe8fd6 JL |
39515 | msgid "4: ERROR" |
39516 | msgstr "" | |
39517 | ||
39518 | #. type: deftypevr | |
39764ef8 | 39519 | #: doc/guix.texi:18054 doc/guix.texi:18277 |
b9fe8fd6 JL |
39520 | msgid "" |
39521 | "Multiple filters can be defined in a single filters statement, they just " | |
39522 | "need to be separated by spaces." | |
39523 | msgstr "" | |
39524 | ||
39525 | #. type: deftypevr | |
39764ef8 | 39526 | #: doc/guix.texi:18056 doc/guix.texi:18279 |
b9fe8fd6 JL |
39527 | msgid "Defaults to @samp{\"3:remote 4:event\"}." |
39528 | msgstr "" | |
39529 | ||
39530 | #. type: deftypevr | |
39764ef8 | 39531 | #: doc/guix.texi:18059 |
b9fe8fd6 JL |
39532 | #, no-wrap |
39533 | msgid "{@code{libvirt-configuration} parameter} string log-outputs" | |
39534 | msgstr "" | |
39535 | ||
39536 | #. type: deftypevr | |
39764ef8 | 39537 | #: doc/guix.texi:18061 doc/guix.texi:18284 |
b9fe8fd6 JL |
39538 | msgid "Logging outputs." |
39539 | msgstr "" | |
39540 | ||
39541 | #. type: deftypevr | |
39764ef8 | 39542 | #: doc/guix.texi:18064 doc/guix.texi:18287 |
b9fe8fd6 JL |
39543 | msgid "" |
39544 | "An output is one of the places to save logging information The format for an " | |
39545 | "output can be:" | |
39546 | msgstr "" | |
39547 | ||
39548 | #. type: item | |
39764ef8 | 39549 | #: doc/guix.texi:18066 doc/guix.texi:18289 |
b9fe8fd6 JL |
39550 | #, no-wrap |
39551 | msgid "x:stderr" | |
39552 | msgstr "" | |
39553 | ||
39554 | #. type: table | |
39764ef8 | 39555 | #: doc/guix.texi:18068 doc/guix.texi:18291 |
b9fe8fd6 JL |
39556 | msgid "output goes to stderr" |
39557 | msgstr "" | |
39558 | ||
39559 | #. type: item | |
39764ef8 | 39560 | #: doc/guix.texi:18069 doc/guix.texi:18292 |
b9fe8fd6 JL |
39561 | #, no-wrap |
39562 | msgid "x:syslog:name" | |
39563 | msgstr "" | |
39564 | ||
39565 | #. type: table | |
39764ef8 | 39566 | #: doc/guix.texi:18071 doc/guix.texi:18294 |
b9fe8fd6 JL |
39567 | msgid "use syslog for the output and use the given name as the ident" |
39568 | msgstr "" | |
39569 | ||
39570 | #. type: item | |
39764ef8 | 39571 | #: doc/guix.texi:18072 doc/guix.texi:18295 |
b9fe8fd6 JL |
39572 | #, no-wrap |
39573 | msgid "x:file:file_path" | |
39574 | msgstr "" | |
39575 | ||
39576 | #. type: table | |
39764ef8 | 39577 | #: doc/guix.texi:18074 doc/guix.texi:18297 |
b9fe8fd6 JL |
39578 | msgid "output to a file, with the given filepath" |
39579 | msgstr "" | |
39580 | ||
39581 | #. type: item | |
39764ef8 | 39582 | #: doc/guix.texi:18075 doc/guix.texi:18298 |
b9fe8fd6 JL |
39583 | #, no-wrap |
39584 | msgid "x:journald" | |
39585 | msgstr "" | |
39586 | ||
39587 | #. type: table | |
39764ef8 | 39588 | #: doc/guix.texi:18077 doc/guix.texi:18300 |
b9fe8fd6 JL |
39589 | msgid "output to journald logging system" |
39590 | msgstr "" | |
39591 | ||
39592 | #. type: deftypevr | |
39764ef8 | 39593 | #: doc/guix.texi:18081 doc/guix.texi:18304 |
b9fe8fd6 JL |
39594 | msgid "In all case the x prefix is the minimal level, acting as a filter" |
39595 | msgstr "" | |
39596 | ||
39597 | #. type: deftypevr | |
39764ef8 JL |
39598 | #: doc/guix.texi:18099 doc/guix.texi:18322 |
39599 | msgid "" | |
39600 | "Multiple outputs can be defined, they just need to be separated by spaces." | |
b9fe8fd6 JL |
39601 | msgstr "" |
39602 | ||
39603 | #. type: deftypevr | |
39764ef8 | 39604 | #: doc/guix.texi:18101 doc/guix.texi:18324 |
b9fe8fd6 JL |
39605 | msgid "Defaults to @samp{\"3:stderr\"}." |
39606 | msgstr "" | |
39607 | ||
39608 | #. type: deftypevr | |
39764ef8 | 39609 | #: doc/guix.texi:18104 |
b9fe8fd6 JL |
39610 | #, no-wrap |
39611 | msgid "{@code{libvirt-configuration} parameter} integer audit-level" | |
39612 | msgstr "" | |
39613 | ||
39614 | #. type: deftypevr | |
39764ef8 | 39615 | #: doc/guix.texi:18106 |
b9fe8fd6 JL |
39616 | msgid "Allows usage of the auditing subsystem to be altered" |
39617 | msgstr "" | |
39618 | ||
39619 | #. type: itemize | |
39764ef8 | 39620 | #: doc/guix.texi:18110 |
b9fe8fd6 JL |
39621 | msgid "0: disable all auditing" |
39622 | msgstr "" | |
39623 | ||
39624 | #. type: itemize | |
39764ef8 | 39625 | #: doc/guix.texi:18113 |
b9fe8fd6 JL |
39626 | msgid "1: enable auditing, only if enabled on host" |
39627 | msgstr "" | |
39628 | ||
39629 | #. type: itemize | |
39764ef8 | 39630 | #: doc/guix.texi:18116 |
b9fe8fd6 JL |
39631 | msgid "2: enable auditing, and exit if disabled on host." |
39632 | msgstr "" | |
39633 | ||
39634 | #. type: deftypevr | |
39764ef8 | 39635 | #: doc/guix.texi:18123 |
b9fe8fd6 JL |
39636 | #, no-wrap |
39637 | msgid "{@code{libvirt-configuration} parameter} boolean audit-logging" | |
39638 | msgstr "" | |
39639 | ||
39640 | #. type: deftypevr | |
39764ef8 | 39641 | #: doc/guix.texi:18125 |
b9fe8fd6 JL |
39642 | msgid "Send audit messages via libvirt logging infrastructure." |
39643 | msgstr "" | |
39644 | ||
39645 | #. type: deftypevr | |
39764ef8 | 39646 | #: doc/guix.texi:18130 |
b9fe8fd6 JL |
39647 | #, no-wrap |
39648 | msgid "{@code{libvirt-configuration} parameter} optional-string host-uuid" | |
39649 | msgstr "" | |
39650 | ||
39651 | #. type: deftypevr | |
39764ef8 | 39652 | #: doc/guix.texi:18132 |
b9fe8fd6 JL |
39653 | msgid "Host UUID. UUID must not have all digits be the same." |
39654 | msgstr "" | |
39655 | ||
39656 | #. type: deftypevr | |
39764ef8 | 39657 | #: doc/guix.texi:18137 |
b9fe8fd6 JL |
39658 | #, no-wrap |
39659 | msgid "{@code{libvirt-configuration} parameter} string host-uuid-source" | |
39660 | msgstr "" | |
39661 | ||
39662 | #. type: deftypevr | |
39764ef8 | 39663 | #: doc/guix.texi:18139 |
b9fe8fd6 JL |
39664 | msgid "Source to read host UUID." |
39665 | msgstr "" | |
39666 | ||
39667 | #. type: itemize | |
39764ef8 | 39668 | #: doc/guix.texi:18143 |
b9fe8fd6 JL |
39669 | msgid "@code{smbios}: fetch the UUID from @code{dmidecode -s system-uuid}" |
39670 | msgstr "" | |
39671 | ||
39672 | #. type: itemize | |
39764ef8 | 39673 | #: doc/guix.texi:18146 |
b9fe8fd6 JL |
39674 | msgid "@code{machine-id}: fetch the UUID from @code{/etc/machine-id}" |
39675 | msgstr "" | |
39676 | ||
39677 | #. type: deftypevr | |
39764ef8 | 39678 | #: doc/guix.texi:18151 |
b9fe8fd6 JL |
39679 | msgid "" |
39680 | "If @code{dmidecode} does not provide a valid UUID a temporary UUID will be " | |
39681 | "generated." | |
39682 | msgstr "" | |
39683 | ||
39684 | #. type: deftypevr | |
39764ef8 | 39685 | #: doc/guix.texi:18153 |
b9fe8fd6 JL |
39686 | msgid "Defaults to @samp{\"smbios\"}." |
39687 | msgstr "" | |
39688 | ||
39689 | #. type: deftypevr | |
39764ef8 | 39690 | #: doc/guix.texi:18156 |
b9fe8fd6 JL |
39691 | #, no-wrap |
39692 | msgid "{@code{libvirt-configuration} parameter} integer keepalive-interval" | |
39693 | msgstr "" | |
39694 | ||
39695 | #. type: deftypevr | |
39764ef8 | 39696 | #: doc/guix.texi:18161 |
b9fe8fd6 JL |
39697 | msgid "" |
39698 | "A keepalive message is sent to a client after @code{keepalive_interval} " | |
39699 | "seconds of inactivity to check if the client is still responding. If set to " | |
39700 | "-1, libvirtd will never send keepalive requests; however clients can still " | |
39701 | "send them and the daemon will send responses." | |
39702 | msgstr "" | |
39703 | ||
39704 | #. type: deftypevr | |
39764ef8 | 39705 | #: doc/guix.texi:18166 |
b9fe8fd6 JL |
39706 | #, no-wrap |
39707 | msgid "{@code{libvirt-configuration} parameter} integer keepalive-count" | |
39708 | msgstr "" | |
39709 | ||
39710 | #. type: deftypevr | |
39764ef8 | 39711 | #: doc/guix.texi:18170 |
b9fe8fd6 JL |
39712 | msgid "" |
39713 | "Maximum number of keepalive messages that are allowed to be sent to the " | |
39714 | "client without getting any response before the connection is considered " | |
39715 | "broken." | |
39716 | msgstr "" | |
39717 | ||
39718 | #. type: deftypevr | |
39764ef8 | 39719 | #: doc/guix.texi:18177 |
b9fe8fd6 JL |
39720 | msgid "" |
39721 | "In other words, the connection is automatically closed approximately after " | |
39722 | "@code{keepalive_interval * (keepalive_count + 1)} seconds since the last " | |
39723 | "message received from the client. When @code{keepalive-count} is set to 0, " | |
39724 | "connections will be automatically closed after @code{keepalive-interval} " | |
39725 | "seconds of inactivity without sending any keepalive messages." | |
39726 | msgstr "" | |
39727 | ||
39728 | #. type: deftypevr | |
39764ef8 | 39729 | #: doc/guix.texi:18182 |
b9fe8fd6 JL |
39730 | #, no-wrap |
39731 | msgid "{@code{libvirt-configuration} parameter} integer admin-keepalive-interval" | |
39732 | msgstr "" | |
39733 | ||
39734 | #. type: deftypevr | |
39764ef8 | 39735 | #: doc/guix.texi:18184 doc/guix.texi:18191 |
b9fe8fd6 JL |
39736 | msgid "Same as above but for admin interface." |
39737 | msgstr "" | |
39738 | ||
39739 | #. type: deftypevr | |
39764ef8 | 39740 | #: doc/guix.texi:18189 |
b9fe8fd6 JL |
39741 | #, no-wrap |
39742 | msgid "{@code{libvirt-configuration} parameter} integer admin-keepalive-count" | |
39743 | msgstr "" | |
39744 | ||
39745 | #. type: deftypevr | |
39764ef8 | 39746 | #: doc/guix.texi:18196 |
b9fe8fd6 JL |
39747 | #, no-wrap |
39748 | msgid "{@code{libvirt-configuration} parameter} integer ovs-timeout" | |
39749 | msgstr "" | |
39750 | ||
39751 | #. type: deftypevr | |
39764ef8 | 39752 | #: doc/guix.texi:18198 |
b9fe8fd6 JL |
39753 | msgid "Timeout for Open vSwitch calls." |
39754 | msgstr "" | |
39755 | ||
39756 | #. type: deftypevr | |
39764ef8 | 39757 | #: doc/guix.texi:18202 |
b9fe8fd6 JL |
39758 | msgid "" |
39759 | "The @code{ovs-vsctl} utility is used for the configuration and its timeout " | |
39760 | "option is set by default to 5 seconds to avoid potential infinite waits " | |
39761 | "blocking libvirt." | |
39762 | msgstr "" | |
39763 | ||
39764 | #. type: subsubheading | |
39764ef8 | 39765 | #: doc/guix.texi:18209 |
b9fe8fd6 JL |
39766 | #, no-wrap |
39767 | msgid "Virtlog daemon" | |
39768 | msgstr "" | |
39769 | ||
39770 | #. type: Plain text | |
39764ef8 | 39771 | #: doc/guix.texi:18212 |
b9fe8fd6 JL |
39772 | msgid "" |
39773 | "The virtlogd service is a server side daemon component of libvirt that is " | |
39774 | "used to manage logs from virtual machine consoles." | |
39775 | msgstr "" | |
39776 | ||
39777 | #. type: Plain text | |
39764ef8 | 39778 | #: doc/guix.texi:18218 |
b9fe8fd6 JL |
39779 | msgid "" |
39780 | "This daemon is not used directly by libvirt client applications, rather it " | |
39781 | "is called on their behalf by @code{libvirtd}. By maintaining the logs in a " | |
39782 | "standalone daemon, the main @code{libvirtd} daemon can be restarted without " | |
39764ef8 JL |
39783 | "risk of losing logs. The @code{virtlogd} daemon has the ability to re-" |
39784 | "exec() itself upon receiving @code{SIGUSR1}, to allow live upgrades without " | |
b9fe8fd6 JL |
39785 | "downtime." |
39786 | msgstr "" | |
39787 | ||
39788 | #. type: deffn | |
39764ef8 | 39789 | #: doc/guix.texi:18219 |
b9fe8fd6 JL |
39790 | #, no-wrap |
39791 | msgid "{Scheme Variable} virtlog-service-type" | |
39792 | msgstr "" | |
39793 | ||
39794 | #. type: deffn | |
39764ef8 | 39795 | #: doc/guix.texi:18222 |
b9fe8fd6 | 39796 | msgid "" |
39764ef8 JL |
39797 | "This is the type of the virtlog daemon. Its value must be a @code{virtlog-" |
39798 | "configuration}." | |
b9fe8fd6 JL |
39799 | msgstr "" |
39800 | ||
39801 | #. type: example | |
39764ef8 | 39802 | #: doc/guix.texi:18227 |
b9fe8fd6 JL |
39803 | #, no-wrap |
39804 | msgid "" | |
39805 | "(service virtlog-service-type\n" | |
39806 | " (virtlog-configuration\n" | |
39807 | " (max-clients 1000)))\n" | |
39808 | msgstr "" | |
39809 | ||
39810 | #. type: deftypevr | |
39764ef8 | 39811 | #: doc/guix.texi:18230 |
b9fe8fd6 JL |
39812 | #, no-wrap |
39813 | msgid "{@code{virtlog-configuration} parameter} integer log-level" | |
39814 | msgstr "" | |
39815 | ||
39816 | #. type: deftypevr | |
39764ef8 | 39817 | #: doc/guix.texi:18237 |
b9fe8fd6 JL |
39818 | #, no-wrap |
39819 | msgid "{@code{virtlog-configuration} parameter} string log-filters" | |
39820 | msgstr "" | |
39821 | ||
39822 | #. type: deftypevr | |
39764ef8 | 39823 | #: doc/guix.texi:18282 |
b9fe8fd6 JL |
39824 | #, no-wrap |
39825 | msgid "{@code{virtlog-configuration} parameter} string log-outputs" | |
39826 | msgstr "" | |
39827 | ||
39828 | #. type: deftypevr | |
39764ef8 | 39829 | #: doc/guix.texi:18327 |
b9fe8fd6 JL |
39830 | #, no-wrap |
39831 | msgid "{@code{virtlog-configuration} parameter} integer max-clients" | |
39832 | msgstr "" | |
39833 | ||
39834 | #. type: deftypevr | |
39764ef8 | 39835 | #: doc/guix.texi:18332 |
b9fe8fd6 JL |
39836 | msgid "Defaults to @samp{1024}." |
39837 | msgstr "" | |
39838 | ||
39839 | #. type: deftypevr | |
39764ef8 | 39840 | #: doc/guix.texi:18335 |
b9fe8fd6 JL |
39841 | #, no-wrap |
39842 | msgid "{@code{virtlog-configuration} parameter} integer max-size" | |
39843 | msgstr "" | |
39844 | ||
39845 | #. type: deftypevr | |
39764ef8 | 39846 | #: doc/guix.texi:18337 |
b9fe8fd6 JL |
39847 | msgid "Maximum file size before rolling over." |
39848 | msgstr "" | |
39849 | ||
39850 | #. type: deftypevr | |
39764ef8 | 39851 | #: doc/guix.texi:18339 |
b9fe8fd6 JL |
39852 | msgid "Defaults to @samp{2MB}" |
39853 | msgstr "" | |
39854 | ||
39855 | #. type: deftypevr | |
39764ef8 | 39856 | #: doc/guix.texi:18342 |
b9fe8fd6 JL |
39857 | #, no-wrap |
39858 | msgid "{@code{virtlog-configuration} parameter} integer max-backups" | |
39859 | msgstr "" | |
39860 | ||
39861 | #. type: deftypevr | |
39764ef8 | 39862 | #: doc/guix.texi:18344 |
b9fe8fd6 JL |
39863 | msgid "Maximum number of backup files to keep." |
39864 | msgstr "" | |
39865 | ||
39866 | #. type: deftypevr | |
39764ef8 | 39867 | #: doc/guix.texi:18346 |
b9fe8fd6 JL |
39868 | msgid "Defaults to @samp{3}" |
39869 | msgstr "" | |
39870 | ||
39871 | #. type: subsubheading | |
39764ef8 | 39872 | #: doc/guix.texi:18349 |
b9fe8fd6 JL |
39873 | #, no-wrap |
39874 | msgid "Transparent Emulation with QEMU" | |
39875 | msgstr "" | |
39876 | ||
39877 | #. type: cindex | |
39764ef8 | 39878 | #: doc/guix.texi:18351 |
b9fe8fd6 JL |
39879 | #, no-wrap |
39880 | msgid "emulation" | |
39881 | msgstr "" | |
39882 | ||
39883 | #. type: code{#1} | |
39764ef8 | 39884 | #: doc/guix.texi:18352 |
b9fe8fd6 JL |
39885 | #, no-wrap |
39886 | msgid "binfmt_misc" | |
39887 | msgstr "" | |
39888 | ||
39889 | #. type: Plain text | |
39764ef8 | 39890 | #: doc/guix.texi:18358 |
b9fe8fd6 JL |
39891 | msgid "" |
39892 | "@code{qemu-binfmt-service-type} provides support for transparent emulation " | |
39893 | "of program binaries built for different architectures---e.g., it allows you " | |
39894 | "to transparently execute an ARMv7 program on an x86_64 machine. It achieves " | |
39895 | "this by combining the @uref{https://www.qemu.org, QEMU} emulator and the " | |
39896 | "@code{binfmt_misc} feature of the kernel Linux." | |
39897 | msgstr "" | |
39898 | ||
39899 | #. type: defvr | |
39764ef8 | 39900 | #: doc/guix.texi:18359 |
b9fe8fd6 JL |
39901 | #, no-wrap |
39902 | msgid "{Scheme Variable} qemu-binfmt-service-type" | |
39903 | msgstr "" | |
39904 | ||
39905 | #. type: defvr | |
39764ef8 | 39906 | #: doc/guix.texi:18364 |
b9fe8fd6 JL |
39907 | msgid "" |
39908 | "This is the type of the QEMU/binfmt service for transparent emulation. Its " | |
39909 | "value must be a @code{qemu-binfmt-configuration} object, which specifies the " | |
39910 | "QEMU package to use as well as the architecture we want to emulated:" | |
39911 | msgstr "" | |
39912 | ||
39913 | #. type: example | |
39764ef8 | 39914 | #: doc/guix.texi:18369 |
b9fe8fd6 JL |
39915 | #, no-wrap |
39916 | msgid "" | |
39917 | "(service qemu-binfmt-service-type\n" | |
39918 | " (qemu-binfmt-configuration\n" | |
39764ef8 | 39919 | " (platforms (lookup-qemu-platforms \"arm\" \"aarch64\" \"ppc\"))))\n" |
b9fe8fd6 JL |
39920 | msgstr "" |
39921 | ||
39922 | #. type: defvr | |
39764ef8 | 39923 | #: doc/guix.texi:18375 |
b9fe8fd6 JL |
39924 | msgid "" |
39925 | "In this example, we enable transparent emulation for the ARM and aarch64 " | |
39926 | "platforms. Running @code{herd stop qemu-binfmt} turns it off, and running " | |
39927 | "@code{herd start qemu-binfmt} turns it back on (@pxref{Invoking herd, the " | |
39928 | "@command{herd} command,, shepherd, The GNU Shepherd Manual})." | |
39929 | msgstr "" | |
39930 | ||
39931 | #. type: deftp | |
39764ef8 | 39932 | #: doc/guix.texi:18377 |
b9fe8fd6 JL |
39933 | #, no-wrap |
39934 | msgid "{Data Type} qemu-binfmt-configuration" | |
39935 | msgstr "" | |
39936 | ||
39937 | #. type: deftp | |
39764ef8 | 39938 | #: doc/guix.texi:18379 |
b9fe8fd6 JL |
39939 | msgid "This is the configuration for the @code{qemu-binfmt} service." |
39940 | msgstr "" | |
39941 | ||
39942 | #. type: item | |
39764ef8 | 39943 | #: doc/guix.texi:18381 |
b9fe8fd6 JL |
39944 | #, no-wrap |
39945 | msgid "@code{platforms} (default: @code{'()})" | |
39946 | msgstr "" | |
39947 | ||
39948 | #. type: table | |
39764ef8 | 39949 | #: doc/guix.texi:18384 |
b9fe8fd6 JL |
39950 | msgid "" |
39951 | "The list of emulated QEMU platforms. Each item must be a @dfn{platform " | |
39952 | "object} as returned by @code{lookup-qemu-platforms} (see below)." | |
39953 | msgstr "" | |
39954 | ||
39955 | #. type: item | |
39764ef8 | 39956 | #: doc/guix.texi:18385 |
b9fe8fd6 JL |
39957 | #, no-wrap |
39958 | msgid "@code{guix-support?} (default: @code{#f})" | |
39959 | msgstr "" | |
39960 | ||
39961 | #. type: table | |
39764ef8 | 39962 | #: doc/guix.texi:18391 |
b9fe8fd6 JL |
39963 | msgid "" |
39964 | "When it is true, QEMU and all its dependencies are added to the build " | |
39764ef8 JL |
39965 | "environment of @command{guix-daemon} (@pxref{Invoking guix-daemon, @code{--" |
39966 | "chroot-directory} option}). This allows the @code{binfmt_misc} handlers to " | |
39967 | "be used within the build environment, which in turn means that you can " | |
39968 | "transparently build programs for another architecture." | |
b9fe8fd6 JL |
39969 | msgstr "" |
39970 | ||
39971 | #. type: table | |
39764ef8 | 39972 | #: doc/guix.texi:18394 |
b9fe8fd6 JL |
39973 | msgid "" |
39974 | "For example, let's suppose you're on an x86_64 machine and you have this " | |
39975 | "service:" | |
39976 | msgstr "" | |
39977 | ||
39978 | #. type: example | |
39764ef8 | 39979 | #: doc/guix.texi:18400 |
b9fe8fd6 JL |
39980 | #, no-wrap |
39981 | msgid "" | |
39982 | "(service qemu-binfmt-service-type\n" | |
39983 | " (qemu-binfmt-configuration\n" | |
39984 | " (platforms (lookup-qemu-platforms \"arm\"))\n" | |
39985 | " (guix-support? #t)))\n" | |
39986 | msgstr "" | |
39987 | ||
39988 | #. type: table | |
39764ef8 | 39989 | #: doc/guix.texi:18403 |
b9fe8fd6 JL |
39990 | msgid "You can run:" |
39991 | msgstr "" | |
39992 | ||
39993 | #. type: example | |
39764ef8 | 39994 | #: doc/guix.texi:18406 |
b9fe8fd6 JL |
39995 | #, no-wrap |
39996 | msgid "guix build -s armhf-linux inkscape\n" | |
39997 | msgstr "" | |
39998 | ||
39999 | #. type: table | |
39764ef8 | 40000 | #: doc/guix.texi:18413 |
b9fe8fd6 JL |
40001 | msgid "" |
40002 | "and it will build Inkscape for ARMv7 @emph{as if it were a native build}, " | |
40003 | "transparently using QEMU to emulate the ARMv7 CPU. Pretty handy if you'd " | |
40004 | "like to test a package build for an architecture you don't have access to!" | |
40005 | msgstr "" | |
40006 | ||
40007 | #. type: item | |
39764ef8 | 40008 | #: doc/guix.texi:18414 |
b9fe8fd6 JL |
40009 | #, no-wrap |
40010 | msgid "@code{qemu} (default: @code{qemu})" | |
40011 | msgstr "" | |
40012 | ||
40013 | #. type: table | |
39764ef8 | 40014 | #: doc/guix.texi:18416 |
b9fe8fd6 JL |
40015 | msgid "The QEMU package to use." |
40016 | msgstr "" | |
40017 | ||
40018 | #. type: deffn | |
39764ef8 | 40019 | #: doc/guix.texi:18419 |
b9fe8fd6 JL |
40020 | #, no-wrap |
40021 | msgid "{Scheme Procedure} lookup-qemu-platforms @var{platforms}@dots{}" | |
40022 | msgstr "" | |
40023 | ||
40024 | #. type: deffn | |
39764ef8 | 40025 | #: doc/guix.texi:18424 |
b9fe8fd6 | 40026 | msgid "" |
39764ef8 JL |
40027 | "Return the list of QEMU platform objects corresponding to @var{platforms}" |
40028 | "@dots{}. @var{platforms} must be a list of strings corresponding to " | |
40029 | "platform names, such as @code{\"arm\"}, @code{\"sparc\"}, @code{\"mips64el" | |
40030 | "\"}, and so on." | |
b9fe8fd6 JL |
40031 | msgstr "" |
40032 | ||
40033 | #. type: deffn | |
39764ef8 | 40034 | #: doc/guix.texi:18426 |
b9fe8fd6 JL |
40035 | #, no-wrap |
40036 | msgid "{Scheme Procedure} qemu-platform? @var{obj}" | |
40037 | msgstr "" | |
40038 | ||
40039 | #. type: deffn | |
39764ef8 | 40040 | #: doc/guix.texi:18428 |
b9fe8fd6 JL |
40041 | msgid "Return true if @var{obj} is a platform object." |
40042 | msgstr "" | |
40043 | ||
40044 | #. type: deffn | |
39764ef8 | 40045 | #: doc/guix.texi:18430 |
b9fe8fd6 JL |
40046 | #, no-wrap |
40047 | msgid "{Scheme Procedure} qemu-platform-name @var{platform}" | |
40048 | msgstr "" | |
40049 | ||
40050 | #. type: deffn | |
39764ef8 | 40051 | #: doc/guix.texi:18432 |
b9fe8fd6 JL |
40052 | msgid "Return the name of @var{platform}---a string such as @code{\"arm\"}." |
40053 | msgstr "" | |
40054 | ||
40055 | #. type: Plain text | |
39764ef8 | 40056 | #: doc/guix.texi:18444 |
b9fe8fd6 JL |
40057 | msgid "" |
40058 | "The @code{(gnu services version-control)} module provides a service to allow " | |
40059 | "remote access to local Git repositories. There are three options: the " | |
40060 | "@code{git-daemon-service}, which provides access to repositories via the " | |
40061 | "@code{git://} unsecured TCP-based protocol, extending the @code{nginx} web " | |
40062 | "server to proxy some requests to @code{git-http-backend}, or providing a web " | |
40063 | "interface with @code{cgit-service-type}." | |
40064 | msgstr "" | |
40065 | ||
40066 | #. type: deffn | |
39764ef8 | 40067 | #: doc/guix.texi:18445 |
b9fe8fd6 JL |
40068 | #, no-wrap |
40069 | msgid "{Scheme Procedure} git-daemon-service [#:config (git-daemon-configuration)]" | |
40070 | msgstr "" | |
40071 | ||
40072 | #. type: deffn | |
39764ef8 | 40073 | #: doc/guix.texi:18449 |
b9fe8fd6 JL |
40074 | msgid "" |
40075 | "Return a service that runs @command{git daemon}, a simple TCP server to " | |
40076 | "expose repositories over the Git protocol for anonymous access." | |
40077 | msgstr "" | |
40078 | ||
40079 | #. type: deffn | |
39764ef8 | 40080 | #: doc/guix.texi:18455 |
b9fe8fd6 | 40081 | msgid "" |
39764ef8 JL |
40082 | "The optional @var{config} argument should be a @code{<git-daemon-" |
40083 | "configuration>} object, by default it allows read-only access to " | |
40084 | "exported@footnote{By creating the magic file \"git-daemon-export-ok\" in the " | |
40085 | "repository directory.} repositories under @file{/srv/git}." | |
b9fe8fd6 JL |
40086 | msgstr "" |
40087 | ||
40088 | #. type: deftp | |
39764ef8 | 40089 | #: doc/guix.texi:18458 |
b9fe8fd6 JL |
40090 | #, no-wrap |
40091 | msgid "{Data Type} git-daemon-configuration" | |
40092 | msgstr "" | |
40093 | ||
40094 | #. type: deftp | |
39764ef8 | 40095 | #: doc/guix.texi:18460 |
b9fe8fd6 JL |
40096 | msgid "Data type representing the configuration for @code{git-daemon-service}." |
40097 | msgstr "" | |
40098 | ||
40099 | #. type: item | |
39764ef8 | 40100 | #: doc/guix.texi:18462 doc/guix.texi:18518 |
b9fe8fd6 JL |
40101 | #, no-wrap |
40102 | msgid "@code{package} (default: @var{git})" | |
40103 | msgstr "" | |
40104 | ||
40105 | #. type: table | |
39764ef8 | 40106 | #: doc/guix.texi:18464 doc/guix.texi:18520 |
b9fe8fd6 JL |
40107 | msgid "Package object of the Git distributed version control system." |
40108 | msgstr "" | |
40109 | ||
40110 | #. type: item | |
39764ef8 | 40111 | #: doc/guix.texi:18465 doc/guix.texi:18524 |
b9fe8fd6 JL |
40112 | #, no-wrap |
40113 | msgid "@code{export-all?} (default: @var{#f})" | |
40114 | msgstr "" | |
40115 | ||
40116 | #. type: table | |
39764ef8 | 40117 | #: doc/guix.texi:18468 |
b9fe8fd6 JL |
40118 | msgid "" |
40119 | "Whether to allow access for all Git repositories, even if they do not have " | |
40120 | "the @file{git-daemon-export-ok} file." | |
40121 | msgstr "" | |
40122 | ||
40123 | #. type: item | |
39764ef8 | 40124 | #: doc/guix.texi:18469 |
b9fe8fd6 JL |
40125 | #, no-wrap |
40126 | msgid "@code{base-path} (default: @file{/srv/git})" | |
40127 | msgstr "" | |
40128 | ||
40129 | #. type: table | |
39764ef8 | 40130 | #: doc/guix.texi:18474 |
b9fe8fd6 JL |
40131 | msgid "" |
40132 | "Whether to remap all the path requests as relative to the given path. If " | |
40133 | "you run git daemon with @var{(base-path \"/srv/git\")} on example.com, then " | |
40134 | "if you later try to pull @code{git://example.com/hello.git}, git daemon will " | |
40135 | "interpret the path as @code{/srv/git/hello.git}." | |
40136 | msgstr "" | |
40137 | ||
40138 | #. type: item | |
39764ef8 | 40139 | #: doc/guix.texi:18475 |
b9fe8fd6 JL |
40140 | #, no-wrap |
40141 | msgid "@code{user-path} (default: @var{#f})" | |
40142 | msgstr "" | |
40143 | ||
40144 | #. type: table | |
39764ef8 | 40145 | #: doc/guix.texi:18482 |
b9fe8fd6 JL |
40146 | msgid "" |
40147 | "Whether to allow @code{~user} notation to be used in requests. When " | |
40148 | "specified with empty string, requests to @code{git://host/~alice/foo} is " | |
40149 | "taken as a request to access @code{foo} repository in the home directory of " | |
40150 | "user @code{alice}. If @var{(user-path \"path\")} is specified, the same " | |
40151 | "request is taken as a request to access @code{path/foo} repository in the " | |
40152 | "home directory of user @code{alice}." | |
40153 | msgstr "" | |
40154 | ||
40155 | #. type: item | |
39764ef8 | 40156 | #: doc/guix.texi:18483 |
b9fe8fd6 JL |
40157 | #, no-wrap |
40158 | msgid "@code{listen} (default: @var{'()})" | |
40159 | msgstr "" | |
40160 | ||
40161 | #. type: table | |
39764ef8 JL |
40162 | #: doc/guix.texi:18486 |
40163 | msgid "" | |
40164 | "Whether to listen on specific IP addresses or hostnames, defaults to all." | |
b9fe8fd6 JL |
40165 | msgstr "" |
40166 | ||
40167 | #. type: item | |
39764ef8 | 40168 | #: doc/guix.texi:18487 |
b9fe8fd6 JL |
40169 | #, no-wrap |
40170 | msgid "@code{port} (default: @var{#f})" | |
40171 | msgstr "" | |
40172 | ||
40173 | #. type: table | |
39764ef8 | 40174 | #: doc/guix.texi:18489 |
b9fe8fd6 JL |
40175 | msgid "Whether to listen on an alternative port, which defaults to 9418." |
40176 | msgstr "" | |
40177 | ||
40178 | #. type: item | |
39764ef8 | 40179 | #: doc/guix.texi:18490 |
b9fe8fd6 JL |
40180 | #, no-wrap |
40181 | msgid "@code{whitelist} (default: @var{'()})" | |
40182 | msgstr "" | |
40183 | ||
40184 | #. type: table | |
39764ef8 | 40185 | #: doc/guix.texi:18492 |
b9fe8fd6 JL |
40186 | msgid "If not empty, only allow access to this list of directories." |
40187 | msgstr "" | |
40188 | ||
40189 | #. type: item | |
39764ef8 | 40190 | #: doc/guix.texi:18493 |
b9fe8fd6 JL |
40191 | #, no-wrap |
40192 | msgid "@code{extra-options} (default: @var{'()})" | |
40193 | msgstr "" | |
40194 | ||
40195 | #. type: table | |
39764ef8 | 40196 | #: doc/guix.texi:18496 |
b9fe8fd6 JL |
40197 | msgid "" |
40198 | "Extra options will be passed to @code{git daemon}, please run @command{man " | |
40199 | "git-daemon} for more information." | |
40200 | msgstr "" | |
40201 | ||
40202 | #. type: Plain text | |
39764ef8 | 40203 | #: doc/guix.texi:18510 |
b9fe8fd6 JL |
40204 | msgid "" |
40205 | "The @code{git://} protocol lacks authentication. When you pull from a " | |
40206 | "repository fetched via @code{git://}, you don't know that the data you " | |
40207 | "receive was modified is really coming from the specified host, and you have " | |
40208 | "your connection is subject to eavesdropping. It's better to use an " | |
40209 | "authenticated and encrypted transport, such as @code{https}. Although Git " | |
40210 | "allows you to serve repositories using unsophisticated file-based web " | |
39764ef8 JL |
40211 | "servers, there is a faster protocol implemented by the @code{git-http-" |
40212 | "backend} program. This program is the back-end of a proper Git web " | |
40213 | "service. It is designed to sit behind a FastCGI proxy. @xref{Web " | |
b9fe8fd6 JL |
40214 | "Services}, for more on running the necessary @code{fcgiwrap} daemon." |
40215 | msgstr "" | |
40216 | ||
40217 | #. type: Plain text | |
39764ef8 | 40218 | #: doc/guix.texi:18513 |
b9fe8fd6 JL |
40219 | msgid "" |
40220 | "Guix has a separate configuration data type for serving Git repositories " | |
40221 | "over HTTP." | |
40222 | msgstr "" | |
40223 | ||
40224 | #. type: deftp | |
39764ef8 | 40225 | #: doc/guix.texi:18514 |
b9fe8fd6 JL |
40226 | #, no-wrap |
40227 | msgid "{Data Type} git-http-configuration" | |
40228 | msgstr "" | |
40229 | ||
40230 | #. type: deftp | |
39764ef8 | 40231 | #: doc/guix.texi:18516 |
b9fe8fd6 JL |
40232 | msgid "Data type representing the configuration for @code{git-http-service}." |
40233 | msgstr "" | |
40234 | ||
40235 | #. type: item | |
39764ef8 | 40236 | #: doc/guix.texi:18521 |
b9fe8fd6 JL |
40237 | #, no-wrap |
40238 | msgid "@code{git-root} (default: @file{/srv/git})" | |
40239 | msgstr "" | |
40240 | ||
40241 | #. type: table | |
39764ef8 | 40242 | #: doc/guix.texi:18523 |
b9fe8fd6 JL |
40243 | msgid "Directory containing the Git repositories to expose to the world." |
40244 | msgstr "" | |
40245 | ||
40246 | #. type: table | |
39764ef8 | 40247 | #: doc/guix.texi:18527 |
b9fe8fd6 JL |
40248 | msgid "" |
40249 | "Whether to expose access for all Git repositories in @var{git-root}, even if " | |
40250 | "they do not have the @file{git-daemon-export-ok} file." | |
40251 | msgstr "" | |
40252 | ||
40253 | #. type: item | |
39764ef8 | 40254 | #: doc/guix.texi:18528 |
b9fe8fd6 JL |
40255 | #, no-wrap |
40256 | msgid "@code{uri-path} (default: @file{/git/})" | |
40257 | msgstr "" | |
40258 | ||
40259 | #. type: table | |
39764ef8 | 40260 | #: doc/guix.texi:18533 |
b9fe8fd6 JL |
40261 | msgid "" |
40262 | "Path prefix for Git access. With the default @code{/git/} prefix, this will " | |
39764ef8 JL |
40263 | "map @code{http://@var{server}/git/@var{repo}.git} to @code{/srv/git/" |
40264 | "@var{repo}.git}. Requests whose URI paths do not begin with this prefix are " | |
40265 | "not passed on to this Git instance." | |
b9fe8fd6 JL |
40266 | msgstr "" |
40267 | ||
40268 | #. type: item | |
39764ef8 | 40269 | #: doc/guix.texi:18534 |
b9fe8fd6 JL |
40270 | #, no-wrap |
40271 | msgid "@code{fcgiwrap-socket} (default: @code{127.0.0.1:9000})" | |
40272 | msgstr "" | |
40273 | ||
40274 | #. type: table | |
39764ef8 | 40275 | #: doc/guix.texi:18537 |
b9fe8fd6 JL |
40276 | msgid "" |
40277 | "The socket on which the @code{fcgiwrap} daemon is listening. @xref{Web " | |
40278 | "Services}." | |
40279 | msgstr "" | |
40280 | ||
40281 | #. type: Plain text | |
39764ef8 | 40282 | #: doc/guix.texi:18544 |
b9fe8fd6 JL |
40283 | msgid "" |
40284 | "There is no @code{git-http-service-type}, currently; instead you can create " | |
40285 | "an @code{nginx-location-configuration} from a @code{git-http-configuration} " | |
40286 | "and then add that location to a web server." | |
40287 | msgstr "" | |
40288 | ||
40289 | #. type: deffn | |
39764ef8 | 40290 | #: doc/guix.texi:18545 |
b9fe8fd6 JL |
40291 | #, no-wrap |
40292 | msgid "{Scheme Procedure} git-http-nginx-location-configuration @" | |
40293 | msgstr "" | |
40294 | ||
40295 | #. type: deffn | |
39764ef8 | 40296 | #: doc/guix.texi:18550 |
b9fe8fd6 | 40297 | msgid "" |
39764ef8 JL |
40298 | "[config=(git-http-configuration)] Compute an @code{nginx-location-" |
40299 | "configuration} that corresponds to the given Git http configuration. An " | |
40300 | "example nginx service definition to serve the default @file{/srv/git} over " | |
40301 | "HTTPS might be:" | |
b9fe8fd6 JL |
40302 | msgstr "" |
40303 | ||
40304 | #. type: example | |
39764ef8 | 40305 | #: doc/guix.texi:18567 |
b9fe8fd6 JL |
40306 | #, no-wrap |
40307 | msgid "" | |
40308 | "(service nginx-service-type\n" | |
40309 | " (nginx-configuration\n" | |
40310 | " (server-blocks\n" | |
40311 | " (list\n" | |
40312 | " (nginx-server-configuration\n" | |
40313 | " (listen '(\"443 ssl\"))\n" | |
40314 | " (server-name \"git.my-host.org\")\n" | |
40315 | " (ssl-certificate\n" | |
40316 | " \"/etc/letsencrypt/live/git.my-host.org/fullchain.pem\")\n" | |
40317 | " (ssl-certificate-key\n" | |
40318 | " \"/etc/letsencrypt/live/git.my-host.org/privkey.pem\")\n" | |
40319 | " (locations\n" | |
40320 | " (list\n" | |
40321 | " (git-http-nginx-location-configuration\n" | |
40322 | " (git-http-configuration (uri-path \"/\"))))))))))\n" | |
40323 | msgstr "" | |
40324 | ||
40325 | #. type: deffn | |
39764ef8 | 40326 | #: doc/guix.texi:18574 |
b9fe8fd6 JL |
40327 | msgid "" |
40328 | "This example assumes that you are using Let's Encrypt to get your TLS " | |
40329 | "certificate. @xref{Certificate Services}. The default @code{certbot} " | |
40330 | "service will redirect all HTTP traffic on @code{git.my-host.org} to HTTPS. " | |
40331 | "You will also need to add an @code{fcgiwrap} proxy to your system services. " | |
40332 | "@xref{Web Services}." | |
40333 | msgstr "" | |
40334 | ||
40335 | #. type: subsubheading | |
39764ef8 | 40336 | #: doc/guix.texi:18576 |
b9fe8fd6 JL |
40337 | #, no-wrap |
40338 | msgid "Cgit Service" | |
40339 | msgstr "" | |
40340 | ||
40341 | #. type: cindex | |
39764ef8 | 40342 | #: doc/guix.texi:18578 |
b9fe8fd6 JL |
40343 | #, no-wrap |
40344 | msgid "Cgit service" | |
40345 | msgstr "" | |
40346 | ||
40347 | #. type: cindex | |
39764ef8 | 40348 | #: doc/guix.texi:18579 |
b9fe8fd6 JL |
40349 | #, no-wrap |
40350 | msgid "Git, web interface" | |
40351 | msgstr "" | |
40352 | ||
40353 | #. type: Plain text | |
39764ef8 | 40354 | #: doc/guix.texi:18582 |
b9fe8fd6 JL |
40355 | msgid "" |
40356 | "@uref{https://git.zx2c4.com/cgit/, Cgit} is a web frontend for Git " | |
40357 | "repositories written in C." | |
40358 | msgstr "" | |
40359 | ||
40360 | #. type: Plain text | |
39764ef8 | 40361 | #: doc/guix.texi:18585 |
b9fe8fd6 JL |
40362 | msgid "" |
40363 | "The following example will configure the service with default values. By " | |
40364 | "default, Cgit can be accessed on port 80 (@code{http://localhost:80})." | |
40365 | msgstr "" | |
40366 | ||
40367 | #. type: example | |
39764ef8 | 40368 | #: doc/guix.texi:18588 |
b9fe8fd6 JL |
40369 | #, no-wrap |
40370 | msgid "(service cgit-service-type)\n" | |
40371 | msgstr "" | |
40372 | ||
40373 | #. type: Plain text | |
39764ef8 | 40374 | #: doc/guix.texi:18592 |
b9fe8fd6 | 40375 | msgid "" |
39764ef8 JL |
40376 | "The @code{file-object} type designates either a file-like object (@pxref{G-" |
40377 | "Expressions, file-like objects}) or a string." | |
b9fe8fd6 JL |
40378 | msgstr "" |
40379 | ||
40380 | #. type: Plain text | |
39764ef8 | 40381 | #: doc/guix.texi:18596 |
b9fe8fd6 JL |
40382 | msgid "Available @code{cgit-configuration} fields are:" |
40383 | msgstr "" | |
40384 | ||
40385 | #. type: deftypevr | |
39764ef8 | 40386 | #: doc/guix.texi:18597 |
b9fe8fd6 JL |
40387 | #, no-wrap |
40388 | msgid "{@code{cgit-configuration} parameter} package package" | |
40389 | msgstr "" | |
40390 | ||
40391 | #. type: deftypevr | |
39764ef8 | 40392 | #: doc/guix.texi:18599 |
b9fe8fd6 JL |
40393 | msgid "The CGIT package." |
40394 | msgstr "" | |
40395 | ||
40396 | #. type: deftypevr | |
39764ef8 | 40397 | #: doc/guix.texi:18602 |
b9fe8fd6 JL |
40398 | #, no-wrap |
40399 | msgid "{@code{cgit-configuration} parameter} nginx-server-configuration-list nginx" | |
40400 | msgstr "" | |
40401 | ||
40402 | #. type: deftypevr | |
39764ef8 | 40403 | #: doc/guix.texi:18604 |
b9fe8fd6 JL |
40404 | msgid "NGINX configuration." |
40405 | msgstr "" | |
40406 | ||
40407 | #. type: deftypevr | |
39764ef8 | 40408 | #: doc/guix.texi:18607 |
b9fe8fd6 JL |
40409 | #, no-wrap |
40410 | msgid "{@code{cgit-configuration} parameter} file-object about-filter" | |
40411 | msgstr "" | |
40412 | ||
40413 | #. type: deftypevr | |
39764ef8 | 40414 | #: doc/guix.texi:18610 |
b9fe8fd6 JL |
40415 | msgid "" |
40416 | "Specifies a command which will be invoked to format the content of about " | |
40417 | "pages (both top-level and for each repository)." | |
40418 | msgstr "" | |
40419 | ||
40420 | #. type: deftypevr | |
39764ef8 | 40421 | #: doc/guix.texi:18615 |
b9fe8fd6 JL |
40422 | #, no-wrap |
40423 | msgid "{@code{cgit-configuration} parameter} string agefile" | |
40424 | msgstr "" | |
40425 | ||
40426 | #. type: deftypevr | |
39764ef8 | 40427 | #: doc/guix.texi:18618 |
b9fe8fd6 JL |
40428 | msgid "" |
40429 | "Specifies a path, relative to each repository path, which can be used to " | |
40430 | "specify the date and time of the youngest commit in the repository." | |
40431 | msgstr "" | |
40432 | ||
40433 | #. type: deftypevr | |
39764ef8 | 40434 | #: doc/guix.texi:18623 |
b9fe8fd6 JL |
40435 | #, no-wrap |
40436 | msgid "{@code{cgit-configuration} parameter} file-object auth-filter" | |
40437 | msgstr "" | |
40438 | ||
40439 | #. type: deftypevr | |
39764ef8 | 40440 | #: doc/guix.texi:18626 |
b9fe8fd6 JL |
40441 | msgid "" |
40442 | "Specifies a command that will be invoked for authenticating repository " | |
40443 | "access." | |
40444 | msgstr "" | |
40445 | ||
40446 | #. type: deftypevr | |
39764ef8 | 40447 | #: doc/guix.texi:18631 |
b9fe8fd6 JL |
40448 | #, no-wrap |
40449 | msgid "{@code{cgit-configuration} parameter} string branch-sort" | |
40450 | msgstr "" | |
40451 | ||
40452 | #. type: deftypevr | |
39764ef8 | 40453 | #: doc/guix.texi:18634 |
b9fe8fd6 JL |
40454 | msgid "" |
40455 | "Flag which, when set to @samp{age}, enables date ordering in the branch ref " | |
40456 | "list, and when set @samp{name} enables ordering by branch name." | |
40457 | msgstr "" | |
40458 | ||
40459 | #. type: deftypevr | |
39764ef8 | 40460 | #: doc/guix.texi:18636 |
b9fe8fd6 JL |
40461 | msgid "Defaults to @samp{\"name\"}." |
40462 | msgstr "" | |
40463 | ||
40464 | #. type: deftypevr | |
39764ef8 | 40465 | #: doc/guix.texi:18639 |
b9fe8fd6 JL |
40466 | #, no-wrap |
40467 | msgid "{@code{cgit-configuration} parameter} string cache-root" | |
40468 | msgstr "" | |
40469 | ||
40470 | #. type: deftypevr | |
39764ef8 | 40471 | #: doc/guix.texi:18641 |
b9fe8fd6 JL |
40472 | msgid "Path used to store the cgit cache entries." |
40473 | msgstr "" | |
40474 | ||
40475 | #. type: deftypevr | |
39764ef8 | 40476 | #: doc/guix.texi:18643 |
b9fe8fd6 JL |
40477 | msgid "Defaults to @samp{\"/var/cache/cgit\"}." |
40478 | msgstr "" | |
40479 | ||
40480 | #. type: deftypevr | |
39764ef8 | 40481 | #: doc/guix.texi:18646 |
b9fe8fd6 JL |
40482 | #, no-wrap |
40483 | msgid "{@code{cgit-configuration} parameter} integer cache-static-ttl" | |
40484 | msgstr "" | |
40485 | ||
40486 | #. type: deftypevr | |
39764ef8 | 40487 | #: doc/guix.texi:18649 |
b9fe8fd6 JL |
40488 | msgid "" |
40489 | "Number which specifies the time-to-live, in minutes, for the cached version " | |
40490 | "of repository pages accessed with a fixed SHA1." | |
40491 | msgstr "" | |
40492 | ||
40493 | #. type: deftypevr | |
39764ef8 | 40494 | #: doc/guix.texi:18651 doc/guix.texi:19094 |
b9fe8fd6 JL |
40495 | msgid "Defaults to @samp{-1}." |
40496 | msgstr "" | |
40497 | ||
40498 | #. type: deftypevr | |
39764ef8 | 40499 | #: doc/guix.texi:18654 |
b9fe8fd6 JL |
40500 | #, no-wrap |
40501 | msgid "{@code{cgit-configuration} parameter} integer cache-dynamic-ttl" | |
40502 | msgstr "" | |
40503 | ||
40504 | #. type: deftypevr | |
39764ef8 | 40505 | #: doc/guix.texi:18657 |
b9fe8fd6 JL |
40506 | msgid "" |
40507 | "Number which specifies the time-to-live, in minutes, for the cached version " | |
40508 | "of repository pages accessed without a fixed SHA1." | |
40509 | msgstr "" | |
40510 | ||
40511 | #. type: deftypevr | |
39764ef8 | 40512 | #: doc/guix.texi:18662 |
b9fe8fd6 JL |
40513 | #, no-wrap |
40514 | msgid "{@code{cgit-configuration} parameter} integer cache-repo-ttl" | |
40515 | msgstr "" | |
40516 | ||
40517 | #. type: deftypevr | |
39764ef8 | 40518 | #: doc/guix.texi:18665 |
b9fe8fd6 JL |
40519 | msgid "" |
40520 | "Number which specifies the time-to-live, in minutes, for the cached version " | |
40521 | "of the repository summary page." | |
40522 | msgstr "" | |
40523 | ||
40524 | #. type: deftypevr | |
39764ef8 | 40525 | #: doc/guix.texi:18670 |
b9fe8fd6 JL |
40526 | #, no-wrap |
40527 | msgid "{@code{cgit-configuration} parameter} integer cache-root-ttl" | |
40528 | msgstr "" | |
40529 | ||
40530 | #. type: deftypevr | |
39764ef8 | 40531 | #: doc/guix.texi:18673 |
b9fe8fd6 JL |
40532 | msgid "" |
40533 | "Number which specifies the time-to-live, in minutes, for the cached version " | |
40534 | "of the repository index page." | |
40535 | msgstr "" | |
40536 | ||
40537 | #. type: deftypevr | |
39764ef8 | 40538 | #: doc/guix.texi:18678 |
b9fe8fd6 JL |
40539 | #, no-wrap |
40540 | msgid "{@code{cgit-configuration} parameter} integer cache-scanrc-ttl" | |
40541 | msgstr "" | |
40542 | ||
40543 | #. type: deftypevr | |
39764ef8 | 40544 | #: doc/guix.texi:18681 |
b9fe8fd6 JL |
40545 | msgid "" |
40546 | "Number which specifies the time-to-live, in minutes, for the result of " | |
40547 | "scanning a path for Git repositories." | |
40548 | msgstr "" | |
40549 | ||
40550 | #. type: deftypevr | |
39764ef8 | 40551 | #: doc/guix.texi:18686 |
b9fe8fd6 JL |
40552 | #, no-wrap |
40553 | msgid "{@code{cgit-configuration} parameter} integer cache-about-ttl" | |
40554 | msgstr "" | |
40555 | ||
40556 | #. type: deftypevr | |
39764ef8 | 40557 | #: doc/guix.texi:18689 |
b9fe8fd6 JL |
40558 | msgid "" |
40559 | "Number which specifies the time-to-live, in minutes, for the cached version " | |
40560 | "of the repository about page." | |
40561 | msgstr "" | |
40562 | ||
40563 | #. type: deftypevr | |
39764ef8 | 40564 | #: doc/guix.texi:18694 |
b9fe8fd6 JL |
40565 | #, no-wrap |
40566 | msgid "{@code{cgit-configuration} parameter} integer cache-snapshot-ttl" | |
40567 | msgstr "" | |
40568 | ||
40569 | #. type: deftypevr | |
39764ef8 | 40570 | #: doc/guix.texi:18697 |
b9fe8fd6 JL |
40571 | msgid "" |
40572 | "Number which specifies the time-to-live, in minutes, for the cached version " | |
40573 | "of snapshots." | |
40574 | msgstr "" | |
40575 | ||
40576 | #. type: deftypevr | |
39764ef8 | 40577 | #: doc/guix.texi:18702 |
b9fe8fd6 JL |
40578 | #, no-wrap |
40579 | msgid "{@code{cgit-configuration} parameter} integer cache-size" | |
40580 | msgstr "" | |
40581 | ||
40582 | #. type: deftypevr | |
39764ef8 | 40583 | #: doc/guix.texi:18705 |
b9fe8fd6 JL |
40584 | msgid "" |
40585 | "The maximum number of entries in the cgit cache. When set to @samp{0}, " | |
40586 | "caching is disabled." | |
40587 | msgstr "" | |
40588 | ||
40589 | #. type: deftypevr | |
39764ef8 | 40590 | #: doc/guix.texi:18710 |
b9fe8fd6 JL |
40591 | #, no-wrap |
40592 | msgid "{@code{cgit-configuration} parameter} boolean case-sensitive-sort?" | |
40593 | msgstr "" | |
40594 | ||
40595 | #. type: deftypevr | |
39764ef8 | 40596 | #: doc/guix.texi:18712 |
b9fe8fd6 JL |
40597 | msgid "Sort items in the repo list case sensitively." |
40598 | msgstr "" | |
40599 | ||
40600 | #. type: deftypevr | |
39764ef8 | 40601 | #: doc/guix.texi:18717 |
b9fe8fd6 JL |
40602 | #, no-wrap |
40603 | msgid "{@code{cgit-configuration} parameter} list clone-prefix" | |
40604 | msgstr "" | |
40605 | ||
40606 | #. type: deftypevr | |
39764ef8 | 40607 | #: doc/guix.texi:18720 |
b9fe8fd6 JL |
40608 | msgid "" |
40609 | "List of common prefixes which, when combined with a repository URL, " | |
40610 | "generates valid clone URLs for the repository." | |
40611 | msgstr "" | |
40612 | ||
40613 | #. type: deftypevr | |
39764ef8 | 40614 | #: doc/guix.texi:18725 |
b9fe8fd6 JL |
40615 | #, no-wrap |
40616 | msgid "{@code{cgit-configuration} parameter} list clone-url" | |
40617 | msgstr "" | |
40618 | ||
40619 | #. type: deftypevr | |
39764ef8 | 40620 | #: doc/guix.texi:18727 |
b9fe8fd6 JL |
40621 | msgid "List of @code{clone-url} templates." |
40622 | msgstr "" | |
40623 | ||
40624 | #. type: deftypevr | |
39764ef8 | 40625 | #: doc/guix.texi:18732 |
b9fe8fd6 JL |
40626 | #, no-wrap |
40627 | msgid "{@code{cgit-configuration} parameter} file-object commit-filter" | |
40628 | msgstr "" | |
40629 | ||
40630 | #. type: deftypevr | |
39764ef8 | 40631 | #: doc/guix.texi:18734 |
b9fe8fd6 JL |
40632 | msgid "Command which will be invoked to format commit messages." |
40633 | msgstr "" | |
40634 | ||
40635 | #. type: deftypevr | |
39764ef8 | 40636 | #: doc/guix.texi:18739 |
b9fe8fd6 JL |
40637 | #, no-wrap |
40638 | msgid "{@code{cgit-configuration} parameter} string commit-sort" | |
40639 | msgstr "" | |
40640 | ||
40641 | #. type: deftypevr | |
39764ef8 | 40642 | #: doc/guix.texi:18743 doc/guix.texi:19301 |
b9fe8fd6 JL |
40643 | msgid "" |
40644 | "Flag which, when set to @samp{date}, enables strict date ordering in the " | |
40645 | "commit log, and when set to @samp{topo} enables strict topological ordering." | |
40646 | msgstr "" | |
40647 | ||
40648 | #. type: deftypevr | |
39764ef8 | 40649 | #: doc/guix.texi:18745 |
b9fe8fd6 JL |
40650 | msgid "Defaults to @samp{\"git log\"}." |
40651 | msgstr "" | |
40652 | ||
40653 | #. type: deftypevr | |
39764ef8 | 40654 | #: doc/guix.texi:18748 |
b9fe8fd6 JL |
40655 | #, no-wrap |
40656 | msgid "{@code{cgit-configuration} parameter} file-object css" | |
40657 | msgstr "" | |
40658 | ||
40659 | #. type: deftypevr | |
39764ef8 | 40660 | #: doc/guix.texi:18750 |
b9fe8fd6 JL |
40661 | msgid "URL which specifies the css document to include in all cgit pages." |
40662 | msgstr "" | |
40663 | ||
40664 | #. type: deftypevr | |
39764ef8 | 40665 | #: doc/guix.texi:18752 |
b9fe8fd6 JL |
40666 | msgid "Defaults to @samp{\"/share/cgit/cgit.css\"}." |
40667 | msgstr "" | |
40668 | ||
40669 | #. type: deftypevr | |
39764ef8 | 40670 | #: doc/guix.texi:18755 |
b9fe8fd6 JL |
40671 | #, no-wrap |
40672 | msgid "{@code{cgit-configuration} parameter} file-object email-filter" | |
40673 | msgstr "" | |
40674 | ||
40675 | #. type: deftypevr | |
39764ef8 | 40676 | #: doc/guix.texi:18759 |
b9fe8fd6 JL |
40677 | msgid "" |
40678 | "Specifies a command which will be invoked to format names and email address " | |
40679 | "of committers, authors, and taggers, as represented in various places " | |
40680 | "throughout the cgit interface." | |
40681 | msgstr "" | |
40682 | ||
40683 | #. type: deftypevr | |
39764ef8 | 40684 | #: doc/guix.texi:18764 |
b9fe8fd6 JL |
40685 | #, no-wrap |
40686 | msgid "{@code{cgit-configuration} parameter} boolean embedded?" | |
40687 | msgstr "" | |
40688 | ||
40689 | #. type: deftypevr | |
39764ef8 | 40690 | #: doc/guix.texi:18767 |
b9fe8fd6 JL |
40691 | msgid "" |
40692 | "Flag which, when set to @samp{#t}, will make cgit generate a HTML fragment " | |
40693 | "suitable for embedding in other HTML pages." | |
40694 | msgstr "" | |
40695 | ||
40696 | #. type: deftypevr | |
39764ef8 | 40697 | #: doc/guix.texi:18772 |
b9fe8fd6 JL |
40698 | #, no-wrap |
40699 | msgid "{@code{cgit-configuration} parameter} boolean enable-commit-graph?" | |
40700 | msgstr "" | |
40701 | ||
40702 | #. type: deftypevr | |
39764ef8 | 40703 | #: doc/guix.texi:18776 |
b9fe8fd6 JL |
40704 | msgid "" |
40705 | "Flag which, when set to @samp{#t}, will make cgit print an ASCII-art commit " | |
40706 | "history graph to the left of the commit messages in the repository log page." | |
40707 | msgstr "" | |
40708 | ||
40709 | #. type: deftypevr | |
39764ef8 | 40710 | #: doc/guix.texi:18781 |
b9fe8fd6 JL |
40711 | #, no-wrap |
40712 | msgid "{@code{cgit-configuration} parameter} boolean enable-filter-overrides?" | |
40713 | msgstr "" | |
40714 | ||
40715 | #. type: deftypevr | |
39764ef8 | 40716 | #: doc/guix.texi:18784 |
b9fe8fd6 JL |
40717 | msgid "" |
40718 | "Flag which, when set to @samp{#t}, allows all filter settings to be " | |
40719 | "overridden in repository-specific cgitrc files." | |
40720 | msgstr "" | |
40721 | ||
40722 | #. type: deftypevr | |
39764ef8 | 40723 | #: doc/guix.texi:18789 |
b9fe8fd6 JL |
40724 | #, no-wrap |
40725 | msgid "{@code{cgit-configuration} parameter} boolean enable-follow-links?" | |
40726 | msgstr "" | |
40727 | ||
40728 | #. type: deftypevr | |
39764ef8 | 40729 | #: doc/guix.texi:18792 |
b9fe8fd6 JL |
40730 | msgid "" |
40731 | "Flag which, when set to @samp{#t}, allows users to follow a file in the log " | |
40732 | "view." | |
40733 | msgstr "" | |
40734 | ||
40735 | #. type: deftypevr | |
39764ef8 | 40736 | #: doc/guix.texi:18797 |
b9fe8fd6 JL |
40737 | #, no-wrap |
40738 | msgid "{@code{cgit-configuration} parameter} boolean enable-http-clone?" | |
40739 | msgstr "" | |
40740 | ||
40741 | #. type: deftypevr | |
39764ef8 JL |
40742 | #: doc/guix.texi:18800 |
40743 | msgid "" | |
40744 | "If set to @samp{#t}, cgit will act as an dumb HTTP endpoint for Git clones." | |
b9fe8fd6 JL |
40745 | msgstr "" |
40746 | ||
40747 | #. type: deftypevr | |
39764ef8 | 40748 | #: doc/guix.texi:18805 |
b9fe8fd6 JL |
40749 | #, no-wrap |
40750 | msgid "{@code{cgit-configuration} parameter} boolean enable-index-links?" | |
40751 | msgstr "" | |
40752 | ||
40753 | #. type: deftypevr | |
39764ef8 | 40754 | #: doc/guix.texi:18808 |
b9fe8fd6 JL |
40755 | msgid "" |
40756 | "Flag which, when set to @samp{#t}, will make cgit generate extra links " | |
40757 | "\"summary\", \"commit\", \"tree\" for each repo in the repository index." | |
40758 | msgstr "" | |
40759 | ||
40760 | #. type: deftypevr | |
39764ef8 | 40761 | #: doc/guix.texi:18813 |
b9fe8fd6 JL |
40762 | #, no-wrap |
40763 | msgid "{@code{cgit-configuration} parameter} boolean enable-index-owner?" | |
40764 | msgstr "" | |
40765 | ||
40766 | #. type: deftypevr | |
39764ef8 | 40767 | #: doc/guix.texi:18816 |
b9fe8fd6 JL |
40768 | msgid "" |
40769 | "Flag which, when set to @samp{#t}, will make cgit display the owner of each " | |
40770 | "repo in the repository index." | |
40771 | msgstr "" | |
40772 | ||
40773 | #. type: deftypevr | |
39764ef8 | 40774 | #: doc/guix.texi:18821 |
b9fe8fd6 JL |
40775 | #, no-wrap |
40776 | msgid "{@code{cgit-configuration} parameter} boolean enable-log-filecount?" | |
40777 | msgstr "" | |
40778 | ||
40779 | #. type: deftypevr | |
39764ef8 | 40780 | #: doc/guix.texi:18824 |
b9fe8fd6 JL |
40781 | msgid "" |
40782 | "Flag which, when set to @samp{#t}, will make cgit print the number of " | |
40783 | "modified files for each commit on the repository log page." | |
40784 | msgstr "" | |
40785 | ||
40786 | #. type: deftypevr | |
39764ef8 | 40787 | #: doc/guix.texi:18829 |
b9fe8fd6 JL |
40788 | #, no-wrap |
40789 | msgid "{@code{cgit-configuration} parameter} boolean enable-log-linecount?" | |
40790 | msgstr "" | |
40791 | ||
40792 | #. type: deftypevr | |
39764ef8 | 40793 | #: doc/guix.texi:18832 |
b9fe8fd6 JL |
40794 | msgid "" |
40795 | "Flag which, when set to @samp{#t}, will make cgit print the number of added " | |
40796 | "and removed lines for each commit on the repository log page." | |
40797 | msgstr "" | |
40798 | ||
40799 | #. type: deftypevr | |
39764ef8 | 40800 | #: doc/guix.texi:18837 |
b9fe8fd6 JL |
40801 | #, no-wrap |
40802 | msgid "{@code{cgit-configuration} parameter} boolean enable-remote-branches?" | |
40803 | msgstr "" | |
40804 | ||
40805 | #. type: deftypevr | |
39764ef8 | 40806 | #: doc/guix.texi:18840 doc/guix.texi:19364 |
b9fe8fd6 JL |
40807 | msgid "" |
40808 | "Flag which, when set to @code{#t}, will make cgit display remote branches in " | |
40809 | "the summary and refs views." | |
40810 | msgstr "" | |
40811 | ||
40812 | #. type: deftypevr | |
39764ef8 | 40813 | #: doc/guix.texi:18845 |
b9fe8fd6 JL |
40814 | #, no-wrap |
40815 | msgid "{@code{cgit-configuration} parameter} boolean enable-subject-links?" | |
40816 | msgstr "" | |
40817 | ||
40818 | #. type: deftypevr | |
39764ef8 | 40819 | #: doc/guix.texi:18849 |
b9fe8fd6 JL |
40820 | msgid "" |
40821 | "Flag which, when set to @code{1}, will make cgit use the subject of the " | |
40822 | "parent commit as link text when generating links to parent commits in commit " | |
40823 | "view." | |
40824 | msgstr "" | |
40825 | ||
40826 | #. type: deftypevr | |
39764ef8 | 40827 | #: doc/guix.texi:18854 |
b9fe8fd6 JL |
40828 | #, no-wrap |
40829 | msgid "{@code{cgit-configuration} parameter} boolean enable-html-serving?" | |
40830 | msgstr "" | |
40831 | ||
40832 | #. type: deftypevr | |
39764ef8 | 40833 | #: doc/guix.texi:18858 |
b9fe8fd6 JL |
40834 | msgid "" |
40835 | "Flag which, when set to @samp{#t}, will make cgit use the subject of the " | |
40836 | "parent commit as link text when generating links to parent commits in commit " | |
40837 | "view." | |
40838 | msgstr "" | |
40839 | ||
40840 | #. type: deftypevr | |
39764ef8 | 40841 | #: doc/guix.texi:18863 |
b9fe8fd6 JL |
40842 | #, no-wrap |
40843 | msgid "{@code{cgit-configuration} parameter} boolean enable-tree-linenumbers?" | |
40844 | msgstr "" | |
40845 | ||
40846 | #. type: deftypevr | |
39764ef8 | 40847 | #: doc/guix.texi:18866 |
b9fe8fd6 JL |
40848 | msgid "" |
40849 | "Flag which, when set to @samp{#t}, will make cgit generate linenumber links " | |
40850 | "for plaintext blobs printed in the tree view." | |
40851 | msgstr "" | |
40852 | ||
40853 | #. type: deftypevr | |
39764ef8 | 40854 | #: doc/guix.texi:18871 |
b9fe8fd6 JL |
40855 | #, no-wrap |
40856 | msgid "{@code{cgit-configuration} parameter} boolean enable-git-config?" | |
40857 | msgstr "" | |
40858 | ||
40859 | #. type: deftypevr | |
39764ef8 | 40860 | #: doc/guix.texi:18874 |
b9fe8fd6 JL |
40861 | msgid "" |
40862 | "Flag which, when set to @samp{#f}, will allow cgit to use Git config to set " | |
40863 | "any repo specific settings." | |
40864 | msgstr "" | |
40865 | ||
40866 | #. type: deftypevr | |
39764ef8 | 40867 | #: doc/guix.texi:18879 |
b9fe8fd6 JL |
40868 | #, no-wrap |
40869 | msgid "{@code{cgit-configuration} parameter} file-object favicon" | |
40870 | msgstr "" | |
40871 | ||
40872 | #. type: deftypevr | |
39764ef8 | 40873 | #: doc/guix.texi:18881 |
b9fe8fd6 JL |
40874 | msgid "URL used as link to a shortcut icon for cgit." |
40875 | msgstr "" | |
40876 | ||
40877 | #. type: deftypevr | |
39764ef8 | 40878 | #: doc/guix.texi:18883 |
b9fe8fd6 JL |
40879 | msgid "Defaults to @samp{\"/favicon.ico\"}." |
40880 | msgstr "" | |
40881 | ||
40882 | #. type: deftypevr | |
39764ef8 | 40883 | #: doc/guix.texi:18886 |
b9fe8fd6 JL |
40884 | #, no-wrap |
40885 | msgid "{@code{cgit-configuration} parameter} string footer" | |
40886 | msgstr "" | |
40887 | ||
40888 | #. type: deftypevr | |
39764ef8 | 40889 | #: doc/guix.texi:18890 |
b9fe8fd6 JL |
40890 | msgid "" |
40891 | "The content of the file specified with this option will be included verbatim " | |
39764ef8 JL |
40892 | "at the bottom of all pages (i.e. it replaces the standard \"generated by..." |
40893 | "\" message)." | |
b9fe8fd6 JL |
40894 | msgstr "" |
40895 | ||
40896 | #. type: deftypevr | |
39764ef8 | 40897 | #: doc/guix.texi:18895 |
b9fe8fd6 JL |
40898 | #, no-wrap |
40899 | msgid "{@code{cgit-configuration} parameter} string head-include" | |
40900 | msgstr "" | |
40901 | ||
40902 | #. type: deftypevr | |
39764ef8 | 40903 | #: doc/guix.texi:18898 |
b9fe8fd6 JL |
40904 | msgid "" |
40905 | "The content of the file specified with this option will be included verbatim " | |
40906 | "in the HTML HEAD section on all pages." | |
40907 | msgstr "" | |
40908 | ||
40909 | #. type: deftypevr | |
39764ef8 | 40910 | #: doc/guix.texi:18903 |
b9fe8fd6 JL |
40911 | #, no-wrap |
40912 | msgid "{@code{cgit-configuration} parameter} string header" | |
40913 | msgstr "" | |
40914 | ||
40915 | #. type: deftypevr | |
39764ef8 | 40916 | #: doc/guix.texi:18906 |
b9fe8fd6 JL |
40917 | msgid "" |
40918 | "The content of the file specified with this option will be included verbatim " | |
40919 | "at the top of all pages." | |
40920 | msgstr "" | |
40921 | ||
40922 | #. type: deftypevr | |
39764ef8 | 40923 | #: doc/guix.texi:18911 |
b9fe8fd6 JL |
40924 | #, no-wrap |
40925 | msgid "{@code{cgit-configuration} parameter} file-object include" | |
40926 | msgstr "" | |
40927 | ||
40928 | #. type: deftypevr | |
39764ef8 | 40929 | #: doc/guix.texi:18914 |
b9fe8fd6 JL |
40930 | msgid "" |
40931 | "Name of a configfile to include before the rest of the current config- file " | |
40932 | "is parsed." | |
40933 | msgstr "" | |
40934 | ||
40935 | #. type: deftypevr | |
39764ef8 | 40936 | #: doc/guix.texi:18919 |
b9fe8fd6 JL |
40937 | #, no-wrap |
40938 | msgid "{@code{cgit-configuration} parameter} string index-header" | |
40939 | msgstr "" | |
40940 | ||
40941 | #. type: deftypevr | |
39764ef8 | 40942 | #: doc/guix.texi:18922 |
b9fe8fd6 JL |
40943 | msgid "" |
40944 | "The content of the file specified with this option will be included verbatim " | |
40945 | "above the repository index." | |
40946 | msgstr "" | |
40947 | ||
40948 | #. type: deftypevr | |
39764ef8 | 40949 | #: doc/guix.texi:18927 |
b9fe8fd6 JL |
40950 | #, no-wrap |
40951 | msgid "{@code{cgit-configuration} parameter} string index-info" | |
40952 | msgstr "" | |
40953 | ||
40954 | #. type: deftypevr | |
39764ef8 | 40955 | #: doc/guix.texi:18930 |
b9fe8fd6 JL |
40956 | msgid "" |
40957 | "The content of the file specified with this option will be included verbatim " | |
40958 | "below the heading on the repository index page." | |
40959 | msgstr "" | |
40960 | ||
40961 | #. type: deftypevr | |
39764ef8 | 40962 | #: doc/guix.texi:18935 |
b9fe8fd6 JL |
40963 | #, no-wrap |
40964 | msgid "{@code{cgit-configuration} parameter} boolean local-time?" | |
40965 | msgstr "" | |
40966 | ||
40967 | #. type: deftypevr | |
39764ef8 | 40968 | #: doc/guix.texi:18938 |
b9fe8fd6 JL |
40969 | msgid "" |
40970 | "Flag which, if set to @samp{#t}, makes cgit print commit and tag times in " | |
40971 | "the servers timezone." | |
40972 | msgstr "" | |
40973 | ||
40974 | #. type: deftypevr | |
39764ef8 | 40975 | #: doc/guix.texi:18943 |
b9fe8fd6 JL |
40976 | #, no-wrap |
40977 | msgid "{@code{cgit-configuration} parameter} file-object logo" | |
40978 | msgstr "" | |
40979 | ||
40980 | #. type: deftypevr | |
39764ef8 | 40981 | #: doc/guix.texi:18946 |
b9fe8fd6 JL |
40982 | msgid "" |
40983 | "URL which specifies the source of an image which will be used as a logo on " | |
40984 | "all cgit pages." | |
40985 | msgstr "" | |
40986 | ||
40987 | #. type: deftypevr | |
39764ef8 | 40988 | #: doc/guix.texi:18948 |
b9fe8fd6 JL |
40989 | msgid "Defaults to @samp{\"/share/cgit/cgit.png\"}." |
40990 | msgstr "" | |
40991 | ||
40992 | #. type: deftypevr | |
39764ef8 | 40993 | #: doc/guix.texi:18951 |
b9fe8fd6 JL |
40994 | #, no-wrap |
40995 | msgid "{@code{cgit-configuration} parameter} string logo-link" | |
40996 | msgstr "" | |
40997 | ||
40998 | #. type: deftypevr | |
39764ef8 | 40999 | #: doc/guix.texi:18953 doc/guix.texi:19410 |
b9fe8fd6 JL |
41000 | msgid "URL loaded when clicking on the cgit logo image." |
41001 | msgstr "" | |
41002 | ||
41003 | #. type: deftypevr | |
39764ef8 | 41004 | #: doc/guix.texi:18958 |
b9fe8fd6 JL |
41005 | #, no-wrap |
41006 | msgid "{@code{cgit-configuration} parameter} file-object owner-filter" | |
41007 | msgstr "" | |
41008 | ||
41009 | #. type: deftypevr | |
39764ef8 JL |
41010 | #: doc/guix.texi:18961 |
41011 | msgid "" | |
41012 | "Command which will be invoked to format the Owner column of the main page." | |
b9fe8fd6 JL |
41013 | msgstr "" |
41014 | ||
41015 | #. type: deftypevr | |
39764ef8 | 41016 | #: doc/guix.texi:18966 |
b9fe8fd6 JL |
41017 | #, no-wrap |
41018 | msgid "{@code{cgit-configuration} parameter} integer max-atom-items" | |
41019 | msgstr "" | |
41020 | ||
41021 | #. type: deftypevr | |
39764ef8 | 41022 | #: doc/guix.texi:18968 |
b9fe8fd6 JL |
41023 | msgid "Number of items to display in atom feeds view." |
41024 | msgstr "" | |
41025 | ||
41026 | #. type: deftypevr | |
39764ef8 JL |
41027 | #: doc/guix.texi:18970 doc/guix.texi:19205 doc/guix.texi:19213 |
41028 | #: doc/guix.texi:19221 | |
b9fe8fd6 JL |
41029 | msgid "Defaults to @samp{10}." |
41030 | msgstr "" | |
41031 | ||
41032 | #. type: deftypevr | |
39764ef8 | 41033 | #: doc/guix.texi:18973 |
b9fe8fd6 JL |
41034 | #, no-wrap |
41035 | msgid "{@code{cgit-configuration} parameter} integer max-commit-count" | |
41036 | msgstr "" | |
41037 | ||
41038 | #. type: deftypevr | |
39764ef8 | 41039 | #: doc/guix.texi:18975 |
b9fe8fd6 JL |
41040 | msgid "Number of entries to list per page in \"log\" view." |
41041 | msgstr "" | |
41042 | ||
41043 | #. type: deftypevr | |
39764ef8 | 41044 | #: doc/guix.texi:18977 doc/guix.texi:18992 |
b9fe8fd6 JL |
41045 | msgid "Defaults to @samp{50}." |
41046 | msgstr "" | |
41047 | ||
41048 | #. type: deftypevr | |
39764ef8 | 41049 | #: doc/guix.texi:18980 |
b9fe8fd6 JL |
41050 | #, no-wrap |
41051 | msgid "{@code{cgit-configuration} parameter} integer max-message-length" | |
41052 | msgstr "" | |
41053 | ||
41054 | #. type: deftypevr | |
39764ef8 | 41055 | #: doc/guix.texi:18982 |
b9fe8fd6 JL |
41056 | msgid "Number of commit message characters to display in \"log\" view." |
41057 | msgstr "" | |
41058 | ||
41059 | #. type: deftypevr | |
39764ef8 | 41060 | #: doc/guix.texi:18984 doc/guix.texi:19000 |
b9fe8fd6 JL |
41061 | msgid "Defaults to @samp{80}." |
41062 | msgstr "" | |
41063 | ||
41064 | #. type: deftypevr | |
39764ef8 | 41065 | #: doc/guix.texi:18987 |
b9fe8fd6 JL |
41066 | #, no-wrap |
41067 | msgid "{@code{cgit-configuration} parameter} integer max-repo-count" | |
41068 | msgstr "" | |
41069 | ||
41070 | #. type: deftypevr | |
39764ef8 | 41071 | #: doc/guix.texi:18990 |
b9fe8fd6 JL |
41072 | msgid "" |
41073 | "Specifies the number of entries to list per page on the repository index " | |
41074 | "page." | |
41075 | msgstr "" | |
41076 | ||
41077 | #. type: deftypevr | |
39764ef8 | 41078 | #: doc/guix.texi:18995 |
b9fe8fd6 JL |
41079 | #, no-wrap |
41080 | msgid "{@code{cgit-configuration} parameter} integer max-repodesc-length" | |
41081 | msgstr "" | |
41082 | ||
41083 | #. type: deftypevr | |
39764ef8 | 41084 | #: doc/guix.texi:18998 |
b9fe8fd6 JL |
41085 | msgid "" |
41086 | "Specifies the maximum number of repo description characters to display on " | |
41087 | "the repository index page." | |
41088 | msgstr "" | |
41089 | ||
41090 | #. type: deftypevr | |
39764ef8 | 41091 | #: doc/guix.texi:19003 |
b9fe8fd6 JL |
41092 | #, no-wrap |
41093 | msgid "{@code{cgit-configuration} parameter} integer max-blob-size" | |
41094 | msgstr "" | |
41095 | ||
41096 | #. type: deftypevr | |
39764ef8 | 41097 | #: doc/guix.texi:19005 |
b9fe8fd6 JL |
41098 | msgid "Specifies the maximum size of a blob to display HTML for in KBytes." |
41099 | msgstr "" | |
41100 | ||
41101 | #. type: deftypevr | |
39764ef8 | 41102 | #: doc/guix.texi:19010 |
b9fe8fd6 JL |
41103 | #, no-wrap |
41104 | msgid "{@code{cgit-configuration} parameter} string max-stats" | |
41105 | msgstr "" | |
41106 | ||
41107 | #. type: deftypevr | |
39764ef8 | 41108 | #: doc/guix.texi:19013 |
b9fe8fd6 JL |
41109 | msgid "" |
41110 | "Maximum statistics period. Valid values are @samp{week},@samp{month}, " | |
41111 | "@samp{quarter} and @samp{year}." | |
41112 | msgstr "" | |
41113 | ||
41114 | #. type: deftypevr | |
39764ef8 | 41115 | #: doc/guix.texi:19018 |
b9fe8fd6 JL |
41116 | #, no-wrap |
41117 | msgid "{@code{cgit-configuration} parameter} mimetype-alist mimetype" | |
41118 | msgstr "" | |
41119 | ||
41120 | #. type: deftypevr | |
39764ef8 | 41121 | #: doc/guix.texi:19020 |
b9fe8fd6 JL |
41122 | msgid "Mimetype for the specified filename extension." |
41123 | msgstr "" | |
41124 | ||
41125 | #. type: deftypevr | |
39764ef8 | 41126 | #: doc/guix.texi:19024 |
b9fe8fd6 | 41127 | msgid "" |
39764ef8 JL |
41128 | "Defaults to @samp{((gif \"image/gif\") (html \"text/html\") (jpg \"image/jpeg" |
41129 | "\") (jpeg \"image/jpeg\") (pdf \"application/pdf\") (png \"image/png\") (svg " | |
41130 | "\"image/svg+xml\"))}." | |
b9fe8fd6 JL |
41131 | msgstr "" |
41132 | ||
41133 | #. type: deftypevr | |
39764ef8 | 41134 | #: doc/guix.texi:19027 |
b9fe8fd6 JL |
41135 | #, no-wrap |
41136 | msgid "{@code{cgit-configuration} parameter} file-object mimetype-file" | |
41137 | msgstr "" | |
41138 | ||
41139 | #. type: deftypevr | |
39764ef8 | 41140 | #: doc/guix.texi:19029 |
b9fe8fd6 JL |
41141 | msgid "Specifies the file to use for automatic mimetype lookup." |
41142 | msgstr "" | |
41143 | ||
41144 | #. type: deftypevr | |
39764ef8 | 41145 | #: doc/guix.texi:19034 |
b9fe8fd6 JL |
41146 | #, no-wrap |
41147 | msgid "{@code{cgit-configuration} parameter} string module-link" | |
41148 | msgstr "" | |
41149 | ||
41150 | #. type: deftypevr | |
39764ef8 | 41151 | #: doc/guix.texi:19037 |
b9fe8fd6 JL |
41152 | msgid "" |
41153 | "Text which will be used as the formatstring for a hyperlink when a submodule " | |
41154 | "is printed in a directory listing." | |
41155 | msgstr "" | |
41156 | ||
41157 | #. type: deftypevr | |
39764ef8 | 41158 | #: doc/guix.texi:19042 |
b9fe8fd6 JL |
41159 | #, no-wrap |
41160 | msgid "{@code{cgit-configuration} parameter} boolean nocache?" | |
41161 | msgstr "" | |
41162 | ||
41163 | #. type: deftypevr | |
39764ef8 | 41164 | #: doc/guix.texi:19044 |
b9fe8fd6 JL |
41165 | msgid "If set to the value @samp{#t} caching will be disabled." |
41166 | msgstr "" | |
41167 | ||
41168 | #. type: deftypevr | |
39764ef8 | 41169 | #: doc/guix.texi:19049 |
b9fe8fd6 JL |
41170 | #, no-wrap |
41171 | msgid "{@code{cgit-configuration} parameter} boolean noplainemail?" | |
41172 | msgstr "" | |
41173 | ||
41174 | #. type: deftypevr | |
39764ef8 JL |
41175 | #: doc/guix.texi:19052 |
41176 | msgid "" | |
41177 | "If set to @samp{#t} showing full author email addresses will be disabled." | |
b9fe8fd6 JL |
41178 | msgstr "" |
41179 | ||
41180 | #. type: deftypevr | |
39764ef8 | 41181 | #: doc/guix.texi:19057 |
b9fe8fd6 JL |
41182 | #, no-wrap |
41183 | msgid "{@code{cgit-configuration} parameter} boolean noheader?" | |
41184 | msgstr "" | |
41185 | ||
41186 | #. type: deftypevr | |
39764ef8 | 41187 | #: doc/guix.texi:19060 |
b9fe8fd6 JL |
41188 | msgid "" |
41189 | "Flag which, when set to @samp{#t}, will make cgit omit the standard header " | |
41190 | "on all pages." | |
41191 | msgstr "" | |
41192 | ||
41193 | #. type: deftypevr | |
39764ef8 | 41194 | #: doc/guix.texi:19065 |
b9fe8fd6 JL |
41195 | #, no-wrap |
41196 | msgid "{@code{cgit-configuration} parameter} list project-list" | |
41197 | msgstr "" | |
41198 | ||
41199 | #. type: deftypevr | |
39764ef8 | 41200 | #: doc/guix.texi:19069 |
b9fe8fd6 JL |
41201 | msgid "" |
41202 | "A list of subdirectories inside of @code{repository-directory}, relative to " | |
41203 | "it, that should loaded as Git repositories. An empty list means that all " | |
41204 | "subdirectories will be loaded." | |
41205 | msgstr "" | |
41206 | ||
41207 | #. type: deftypevr | |
39764ef8 | 41208 | #: doc/guix.texi:19074 |
b9fe8fd6 JL |
41209 | #, no-wrap |
41210 | msgid "{@code{cgit-configuration} parameter} file-object readme" | |
41211 | msgstr "" | |
41212 | ||
41213 | #. type: deftypevr | |
39764ef8 | 41214 | #: doc/guix.texi:19076 |
b9fe8fd6 JL |
41215 | msgid "Text which will be used as default value for @code{cgit-repo-readme}." |
41216 | msgstr "" | |
41217 | ||
41218 | #. type: deftypevr | |
39764ef8 | 41219 | #: doc/guix.texi:19081 |
b9fe8fd6 JL |
41220 | #, no-wrap |
41221 | msgid "{@code{cgit-configuration} parameter} boolean remove-suffix?" | |
41222 | msgstr "" | |
41223 | ||
41224 | #. type: deftypevr | |
39764ef8 | 41225 | #: doc/guix.texi:19085 |
b9fe8fd6 JL |
41226 | msgid "" |
41227 | "If set to @code{#t} and @code{repository-directory} is enabled, if any " | |
41228 | "repositories are found with a suffix of @code{.git}, this suffix will be " | |
41229 | "removed for the URL and name." | |
41230 | msgstr "" | |
41231 | ||
41232 | #. type: deftypevr | |
39764ef8 | 41233 | #: doc/guix.texi:19090 |
b9fe8fd6 JL |
41234 | #, no-wrap |
41235 | msgid "{@code{cgit-configuration} parameter} integer renamelimit" | |
41236 | msgstr "" | |
41237 | ||
41238 | #. type: deftypevr | |
39764ef8 | 41239 | #: doc/guix.texi:19092 |
b9fe8fd6 JL |
41240 | msgid "Maximum number of files to consider when detecting renames." |
41241 | msgstr "" | |
41242 | ||
41243 | #. type: deftypevr | |
39764ef8 | 41244 | #: doc/guix.texi:19097 |
b9fe8fd6 JL |
41245 | #, no-wrap |
41246 | msgid "{@code{cgit-configuration} parameter} string repository-sort" | |
41247 | msgstr "" | |
41248 | ||
41249 | #. type: deftypevr | |
39764ef8 | 41250 | #: doc/guix.texi:19099 |
b9fe8fd6 JL |
41251 | msgid "The way in which repositories in each section are sorted." |
41252 | msgstr "" | |
41253 | ||
41254 | #. type: deftypevr | |
39764ef8 | 41255 | #: doc/guix.texi:19104 |
b9fe8fd6 JL |
41256 | #, no-wrap |
41257 | msgid "{@code{cgit-configuration} parameter} robots-list robots" | |
41258 | msgstr "" | |
41259 | ||
41260 | #. type: deftypevr | |
39764ef8 | 41261 | #: doc/guix.texi:19106 |
b9fe8fd6 JL |
41262 | msgid "Text used as content for the @code{robots} meta-tag." |
41263 | msgstr "" | |
41264 | ||
41265 | #. type: deftypevr | |
39764ef8 | 41266 | #: doc/guix.texi:19108 |
b9fe8fd6 JL |
41267 | msgid "Defaults to @samp{(\"noindex\" \"nofollow\")}." |
41268 | msgstr "" | |
41269 | ||
41270 | #. type: deftypevr | |
39764ef8 | 41271 | #: doc/guix.texi:19111 |
b9fe8fd6 JL |
41272 | #, no-wrap |
41273 | msgid "{@code{cgit-configuration} parameter} string root-desc" | |
41274 | msgstr "" | |
41275 | ||
41276 | #. type: deftypevr | |
39764ef8 | 41277 | #: doc/guix.texi:19113 |
b9fe8fd6 JL |
41278 | msgid "Text printed below the heading on the repository index page." |
41279 | msgstr "" | |
41280 | ||
41281 | #. type: deftypevr | |
39764ef8 | 41282 | #: doc/guix.texi:19115 |
b9fe8fd6 JL |
41283 | msgid "Defaults to @samp{\"a fast webinterface for the git dscm\"}." |
41284 | msgstr "" | |
41285 | ||
41286 | #. type: deftypevr | |
39764ef8 | 41287 | #: doc/guix.texi:19118 |
b9fe8fd6 JL |
41288 | #, no-wrap |
41289 | msgid "{@code{cgit-configuration} parameter} string root-readme" | |
41290 | msgstr "" | |
41291 | ||
41292 | #. type: deftypevr | |
39764ef8 | 41293 | #: doc/guix.texi:19121 |
b9fe8fd6 JL |
41294 | msgid "" |
41295 | "The content of the file specified with this option will be included verbatim " | |
41296 | "below thef \"about\" link on the repository index page." | |
41297 | msgstr "" | |
41298 | ||
41299 | #. type: deftypevr | |
39764ef8 | 41300 | #: doc/guix.texi:19126 |
b9fe8fd6 JL |
41301 | #, no-wrap |
41302 | msgid "{@code{cgit-configuration} parameter} string root-title" | |
41303 | msgstr "" | |
41304 | ||
41305 | #. type: deftypevr | |
39764ef8 | 41306 | #: doc/guix.texi:19128 |
b9fe8fd6 JL |
41307 | msgid "Text printed as heading on the repository index page." |
41308 | msgstr "" | |
41309 | ||
41310 | #. type: deftypevr | |
39764ef8 | 41311 | #: doc/guix.texi:19133 |
b9fe8fd6 JL |
41312 | #, no-wrap |
41313 | msgid "{@code{cgit-configuration} parameter} boolean scan-hidden-path" | |
41314 | msgstr "" | |
41315 | ||
41316 | #. type: deftypevr | |
39764ef8 | 41317 | #: doc/guix.texi:19139 |
b9fe8fd6 | 41318 | msgid "" |
39764ef8 JL |
41319 | "If set to @samp{#t} and repository-directory is enabled, repository-" |
41320 | "directory will recurse into directories whose name starts with a period. " | |
41321 | "Otherwise, repository-directory will stay away from such directories, " | |
41322 | "considered as \"hidden\". Note that this does not apply to the \".git\" " | |
41323 | "directory in non-bare repos." | |
b9fe8fd6 JL |
41324 | msgstr "" |
41325 | ||
41326 | #. type: deftypevr | |
39764ef8 | 41327 | #: doc/guix.texi:19144 |
b9fe8fd6 JL |
41328 | #, no-wrap |
41329 | msgid "{@code{cgit-configuration} parameter} list snapshots" | |
41330 | msgstr "" | |
41331 | ||
41332 | #. type: deftypevr | |
39764ef8 | 41333 | #: doc/guix.texi:19147 |
b9fe8fd6 JL |
41334 | msgid "" |
41335 | "Text which specifies the default set of snapshot formats that cgit generates " | |
41336 | "links for." | |
41337 | msgstr "" | |
41338 | ||
41339 | #. type: deftypevr | |
39764ef8 | 41340 | #: doc/guix.texi:19152 |
b9fe8fd6 | 41341 | #, no-wrap |
39764ef8 | 41342 | msgid "{@code{cgit-configuration} parameter} repository-directory repository-directory" |
b9fe8fd6 JL |
41343 | msgstr "" |
41344 | ||
41345 | #. type: deftypevr | |
39764ef8 | 41346 | #: doc/guix.texi:19155 |
b9fe8fd6 | 41347 | msgid "" |
39764ef8 | 41348 | "Name of the directory to scan for repositories (represents @code{scan-path})." |
b9fe8fd6 JL |
41349 | msgstr "" |
41350 | ||
41351 | #. type: deftypevr | |
39764ef8 | 41352 | #: doc/guix.texi:19157 |
b9fe8fd6 JL |
41353 | msgid "Defaults to @samp{\"/srv/git\"}." |
41354 | msgstr "" | |
41355 | ||
41356 | #. type: deftypevr | |
39764ef8 | 41357 | #: doc/guix.texi:19160 |
b9fe8fd6 JL |
41358 | #, no-wrap |
41359 | msgid "{@code{cgit-configuration} parameter} string section" | |
41360 | msgstr "" | |
41361 | ||
41362 | #. type: deftypevr | |
39764ef8 | 41363 | #: doc/guix.texi:19163 doc/guix.texi:19479 |
b9fe8fd6 JL |
41364 | msgid "" |
41365 | "The name of the current repository section - all repositories defined after " | |
41366 | "this option will inherit the current section name." | |
41367 | msgstr "" | |
41368 | ||
41369 | #. type: deftypevr | |
39764ef8 | 41370 | #: doc/guix.texi:19168 |
b9fe8fd6 JL |
41371 | #, no-wrap |
41372 | msgid "{@code{cgit-configuration} parameter} string section-sort" | |
41373 | msgstr "" | |
41374 | ||
41375 | #. type: deftypevr | |
39764ef8 | 41376 | #: doc/guix.texi:19171 |
b9fe8fd6 JL |
41377 | msgid "" |
41378 | "Flag which, when set to @samp{1}, will sort the sections on the repository " | |
41379 | "listing by name." | |
41380 | msgstr "" | |
41381 | ||
41382 | #. type: deftypevr | |
39764ef8 | 41383 | #: doc/guix.texi:19176 |
b9fe8fd6 JL |
41384 | #, no-wrap |
41385 | msgid "{@code{cgit-configuration} parameter} integer section-from-path" | |
41386 | msgstr "" | |
41387 | ||
41388 | #. type: deftypevr | |
39764ef8 | 41389 | #: doc/guix.texi:19179 |
b9fe8fd6 JL |
41390 | msgid "" |
41391 | "A number which, if defined prior to repository-directory, specifies how many " | |
41392 | "path elements from each repo path to use as a default section name." | |
41393 | msgstr "" | |
41394 | ||
41395 | #. type: deftypevr | |
39764ef8 | 41396 | #: doc/guix.texi:19184 |
b9fe8fd6 JL |
41397 | #, no-wrap |
41398 | msgid "{@code{cgit-configuration} parameter} boolean side-by-side-diffs?" | |
41399 | msgstr "" | |
41400 | ||
41401 | #. type: deftypevr | |
39764ef8 | 41402 | #: doc/guix.texi:19187 |
b9fe8fd6 | 41403 | msgid "" |
39764ef8 | 41404 | "If set to @samp{#t} shows side-by-side diffs instead of unidiffs per default." |
b9fe8fd6 JL |
41405 | msgstr "" |
41406 | ||
41407 | #. type: deftypevr | |
39764ef8 | 41408 | #: doc/guix.texi:19192 |
b9fe8fd6 JL |
41409 | #, no-wrap |
41410 | msgid "{@code{cgit-configuration} parameter} file-object source-filter" | |
41411 | msgstr "" | |
41412 | ||
41413 | #. type: deftypevr | |
39764ef8 | 41414 | #: doc/guix.texi:19195 |
b9fe8fd6 JL |
41415 | msgid "" |
41416 | "Specifies a command which will be invoked to format plaintext blobs in the " | |
41417 | "tree view." | |
41418 | msgstr "" | |
41419 | ||
41420 | #. type: deftypevr | |
39764ef8 | 41421 | #: doc/guix.texi:19200 |
b9fe8fd6 JL |
41422 | #, no-wrap |
41423 | msgid "{@code{cgit-configuration} parameter} integer summary-branches" | |
41424 | msgstr "" | |
41425 | ||
41426 | #. type: deftypevr | |
39764ef8 | 41427 | #: doc/guix.texi:19203 |
b9fe8fd6 JL |
41428 | msgid "" |
41429 | "Specifies the number of branches to display in the repository \"summary\" " | |
41430 | "view." | |
41431 | msgstr "" | |
41432 | ||
41433 | #. type: deftypevr | |
39764ef8 | 41434 | #: doc/guix.texi:19208 |
b9fe8fd6 JL |
41435 | #, no-wrap |
41436 | msgid "{@code{cgit-configuration} parameter} integer summary-log" | |
41437 | msgstr "" | |
41438 | ||
41439 | #. type: deftypevr | |
39764ef8 | 41440 | #: doc/guix.texi:19211 |
b9fe8fd6 JL |
41441 | msgid "" |
41442 | "Specifies the number of log entries to display in the repository \"summary\" " | |
41443 | "view." | |
41444 | msgstr "" | |
41445 | ||
41446 | #. type: deftypevr | |
39764ef8 | 41447 | #: doc/guix.texi:19216 |
b9fe8fd6 JL |
41448 | #, no-wrap |
41449 | msgid "{@code{cgit-configuration} parameter} integer summary-tags" | |
41450 | msgstr "" | |
41451 | ||
41452 | #. type: deftypevr | |
39764ef8 JL |
41453 | #: doc/guix.texi:19219 |
41454 | msgid "" | |
41455 | "Specifies the number of tags to display in the repository \"summary\" view." | |
b9fe8fd6 JL |
41456 | msgstr "" |
41457 | ||
41458 | #. type: deftypevr | |
39764ef8 | 41459 | #: doc/guix.texi:19224 |
b9fe8fd6 JL |
41460 | #, no-wrap |
41461 | msgid "{@code{cgit-configuration} parameter} string strict-export" | |
41462 | msgstr "" | |
41463 | ||
41464 | #. type: deftypevr | |
39764ef8 | 41465 | #: doc/guix.texi:19227 |
b9fe8fd6 JL |
41466 | msgid "" |
41467 | "Filename which, if specified, needs to be present within the repository for " | |
41468 | "cgit to allow access to that repository." | |
41469 | msgstr "" | |
41470 | ||
41471 | #. type: deftypevr | |
39764ef8 | 41472 | #: doc/guix.texi:19232 |
b9fe8fd6 JL |
41473 | #, no-wrap |
41474 | msgid "{@code{cgit-configuration} parameter} string virtual-root" | |
41475 | msgstr "" | |
41476 | ||
41477 | #. type: deftypevr | |
39764ef8 | 41478 | #: doc/guix.texi:19234 |
b9fe8fd6 JL |
41479 | msgid "URL which, if specified, will be used as root for all cgit links." |
41480 | msgstr "" | |
41481 | ||
41482 | #. type: deftypevr | |
39764ef8 | 41483 | #: doc/guix.texi:19236 |
b9fe8fd6 JL |
41484 | msgid "Defaults to @samp{\"/\"}." |
41485 | msgstr "" | |
41486 | ||
41487 | #. type: deftypevr | |
39764ef8 | 41488 | #: doc/guix.texi:19239 |
b9fe8fd6 | 41489 | #, no-wrap |
39764ef8 | 41490 | msgid "{@code{cgit-configuration} parameter} repository-cgit-configuration-list repositories" |
b9fe8fd6 JL |
41491 | msgstr "" |
41492 | ||
41493 | #. type: deftypevr | |
39764ef8 | 41494 | #: doc/guix.texi:19241 |
b9fe8fd6 JL |
41495 | msgid "A list of @dfn{cgit-repo} records to use with config." |
41496 | msgstr "" | |
41497 | ||
41498 | #. type: deftypevr | |
39764ef8 | 41499 | #: doc/guix.texi:19245 |
b9fe8fd6 JL |
41500 | msgid "Available @code{repository-cgit-configuration} fields are:" |
41501 | msgstr "" | |
41502 | ||
41503 | #. type: deftypevr | |
39764ef8 | 41504 | #: doc/guix.texi:19246 |
b9fe8fd6 JL |
41505 | #, no-wrap |
41506 | msgid "{@code{repository-cgit-configuration} parameter} repo-list snapshots" | |
41507 | msgstr "" | |
41508 | ||
41509 | #. type: deftypevr | |
39764ef8 | 41510 | #: doc/guix.texi:19249 |
b9fe8fd6 JL |
41511 | msgid "" |
41512 | "A mask of snapshot formats for this repo that cgit generates links for, " | |
41513 | "restricted by the global @code{snapshots} setting." | |
41514 | msgstr "" | |
41515 | ||
41516 | #. type: deftypevr | |
39764ef8 | 41517 | #: doc/guix.texi:19254 |
b9fe8fd6 | 41518 | #, no-wrap |
39764ef8 | 41519 | msgid "{@code{repository-cgit-configuration} parameter} repo-file-object source-filter" |
b9fe8fd6 JL |
41520 | msgstr "" |
41521 | ||
41522 | #. type: deftypevr | |
39764ef8 | 41523 | #: doc/guix.texi:19256 |
b9fe8fd6 JL |
41524 | msgid "Override the default @code{source-filter}." |
41525 | msgstr "" | |
41526 | ||
41527 | #. type: deftypevr | |
39764ef8 | 41528 | #: doc/guix.texi:19261 |
b9fe8fd6 JL |
41529 | #, no-wrap |
41530 | msgid "{@code{repository-cgit-configuration} parameter} repo-string url" | |
41531 | msgstr "" | |
41532 | ||
41533 | #. type: deftypevr | |
39764ef8 | 41534 | #: doc/guix.texi:19263 |
b9fe8fd6 JL |
41535 | msgid "The relative URL used to access the repository." |
41536 | msgstr "" | |
41537 | ||
41538 | #. type: deftypevr | |
39764ef8 | 41539 | #: doc/guix.texi:19268 |
b9fe8fd6 | 41540 | #, no-wrap |
39764ef8 | 41541 | msgid "{@code{repository-cgit-configuration} parameter} repo-file-object about-filter" |
b9fe8fd6 JL |
41542 | msgstr "" |
41543 | ||
41544 | #. type: deftypevr | |
39764ef8 | 41545 | #: doc/guix.texi:19270 |
b9fe8fd6 JL |
41546 | msgid "Override the default @code{about-filter}." |
41547 | msgstr "" | |
41548 | ||
41549 | #. type: deftypevr | |
39764ef8 | 41550 | #: doc/guix.texi:19275 |
b9fe8fd6 JL |
41551 | #, no-wrap |
41552 | msgid "{@code{repository-cgit-configuration} parameter} repo-string branch-sort" | |
41553 | msgstr "" | |
41554 | ||
41555 | #. type: deftypevr | |
39764ef8 | 41556 | #: doc/guix.texi:19278 |
b9fe8fd6 JL |
41557 | msgid "" |
41558 | "Flag which, when set to @samp{age}, enables date ordering in the branch ref " | |
41559 | "list, and when set to @samp{name} enables ordering by branch name." | |
41560 | msgstr "" | |
41561 | ||
41562 | #. type: deftypevr | |
39764ef8 | 41563 | #: doc/guix.texi:19283 |
b9fe8fd6 JL |
41564 | #, no-wrap |
41565 | msgid "{@code{repository-cgit-configuration} parameter} repo-list clone-url" | |
41566 | msgstr "" | |
41567 | ||
41568 | #. type: deftypevr | |
39764ef8 | 41569 | #: doc/guix.texi:19285 |
b9fe8fd6 JL |
41570 | msgid "A list of URLs which can be used to clone repo." |
41571 | msgstr "" | |
41572 | ||
41573 | #. type: deftypevr | |
39764ef8 | 41574 | #: doc/guix.texi:19290 |
b9fe8fd6 | 41575 | #, no-wrap |
39764ef8 | 41576 | msgid "{@code{repository-cgit-configuration} parameter} repo-file-object commit-filter" |
b9fe8fd6 JL |
41577 | msgstr "" |
41578 | ||
41579 | #. type: deftypevr | |
39764ef8 | 41580 | #: doc/guix.texi:19292 |
b9fe8fd6 JL |
41581 | msgid "Override the default @code{commit-filter}." |
41582 | msgstr "" | |
41583 | ||
41584 | #. type: deftypevr | |
39764ef8 | 41585 | #: doc/guix.texi:19297 |
b9fe8fd6 JL |
41586 | #, no-wrap |
41587 | msgid "{@code{repository-cgit-configuration} parameter} repo-string commit-sort" | |
41588 | msgstr "" | |
41589 | ||
41590 | #. type: deftypevr | |
39764ef8 | 41591 | #: doc/guix.texi:19306 |
b9fe8fd6 JL |
41592 | #, no-wrap |
41593 | msgid "{@code{repository-cgit-configuration} parameter} repo-string defbranch" | |
41594 | msgstr "" | |
41595 | ||
41596 | #. type: deftypevr | |
39764ef8 | 41597 | #: doc/guix.texi:19311 |
b9fe8fd6 JL |
41598 | msgid "" |
41599 | "The name of the default branch for this repository. If no such branch " | |
41600 | "exists in the repository, the first branch name (when sorted) is used as " | |
41601 | "default instead. By default branch pointed to by HEAD, or \"master\" if " | |
41602 | "there is no suitable HEAD." | |
41603 | msgstr "" | |
41604 | ||
41605 | #. type: deftypevr | |
39764ef8 | 41606 | #: doc/guix.texi:19316 |
b9fe8fd6 JL |
41607 | #, no-wrap |
41608 | msgid "{@code{repository-cgit-configuration} parameter} repo-string desc" | |
41609 | msgstr "" | |
41610 | ||
41611 | #. type: deftypevr | |
39764ef8 | 41612 | #: doc/guix.texi:19318 |
b9fe8fd6 JL |
41613 | msgid "The value to show as repository description." |
41614 | msgstr "" | |
41615 | ||
41616 | #. type: deftypevr | |
39764ef8 | 41617 | #: doc/guix.texi:19323 |
b9fe8fd6 JL |
41618 | #, no-wrap |
41619 | msgid "{@code{repository-cgit-configuration} parameter} repo-string homepage" | |
41620 | msgstr "" | |
41621 | ||
41622 | #. type: deftypevr | |
39764ef8 | 41623 | #: doc/guix.texi:19325 |
b9fe8fd6 JL |
41624 | msgid "The value to show as repository homepage." |
41625 | msgstr "" | |
41626 | ||
41627 | #. type: deftypevr | |
39764ef8 | 41628 | #: doc/guix.texi:19330 |
b9fe8fd6 | 41629 | #, no-wrap |
39764ef8 | 41630 | msgid "{@code{repository-cgit-configuration} parameter} repo-file-object email-filter" |
b9fe8fd6 JL |
41631 | msgstr "" |
41632 | ||
41633 | #. type: deftypevr | |
39764ef8 | 41634 | #: doc/guix.texi:19332 |
b9fe8fd6 JL |
41635 | msgid "Override the default @code{email-filter}." |
41636 | msgstr "" | |
41637 | ||
41638 | #. type: deftypevr | |
39764ef8 | 41639 | #: doc/guix.texi:19337 |
b9fe8fd6 | 41640 | #, no-wrap |
39764ef8 | 41641 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-commit-graph?" |
b9fe8fd6 JL |
41642 | msgstr "" |
41643 | ||
41644 | #. type: deftypevr | |
39764ef8 | 41645 | #: doc/guix.texi:19340 |
b9fe8fd6 | 41646 | msgid "" |
39764ef8 JL |
41647 | "A flag which can be used to disable the global setting @code{enable-commit-" |
41648 | "graph?}." | |
b9fe8fd6 JL |
41649 | msgstr "" |
41650 | ||
41651 | #. type: deftypevr | |
39764ef8 | 41652 | #: doc/guix.texi:19345 |
b9fe8fd6 | 41653 | #, no-wrap |
39764ef8 | 41654 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-log-filecount?" |
b9fe8fd6 JL |
41655 | msgstr "" |
41656 | ||
41657 | #. type: deftypevr | |
39764ef8 | 41658 | #: doc/guix.texi:19348 |
b9fe8fd6 | 41659 | msgid "" |
39764ef8 JL |
41660 | "A flag which can be used to disable the global setting @code{enable-log-" |
41661 | "filecount?}." | |
b9fe8fd6 JL |
41662 | msgstr "" |
41663 | ||
41664 | #. type: deftypevr | |
39764ef8 | 41665 | #: doc/guix.texi:19353 |
b9fe8fd6 | 41666 | #, no-wrap |
39764ef8 | 41667 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-log-linecount?" |
b9fe8fd6 JL |
41668 | msgstr "" |
41669 | ||
41670 | #. type: deftypevr | |
39764ef8 | 41671 | #: doc/guix.texi:19356 |
b9fe8fd6 | 41672 | msgid "" |
39764ef8 JL |
41673 | "A flag which can be used to disable the global setting @code{enable-log-" |
41674 | "linecount?}." | |
b9fe8fd6 JL |
41675 | msgstr "" |
41676 | ||
41677 | #. type: deftypevr | |
39764ef8 | 41678 | #: doc/guix.texi:19361 |
b9fe8fd6 | 41679 | #, no-wrap |
39764ef8 | 41680 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-remote-branches?" |
b9fe8fd6 JL |
41681 | msgstr "" |
41682 | ||
41683 | #. type: deftypevr | |
39764ef8 | 41684 | #: doc/guix.texi:19369 |
b9fe8fd6 | 41685 | #, no-wrap |
39764ef8 | 41686 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-subject-links?" |
b9fe8fd6 JL |
41687 | msgstr "" |
41688 | ||
41689 | #. type: deftypevr | |
39764ef8 | 41690 | #: doc/guix.texi:19372 |
b9fe8fd6 | 41691 | msgid "" |
39764ef8 JL |
41692 | "A flag which can be used to override the global setting @code{enable-subject-" |
41693 | "links?}." | |
b9fe8fd6 JL |
41694 | msgstr "" |
41695 | ||
41696 | #. type: deftypevr | |
39764ef8 | 41697 | #: doc/guix.texi:19377 |
b9fe8fd6 | 41698 | #, no-wrap |
39764ef8 | 41699 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean enable-html-serving?" |
b9fe8fd6 JL |
41700 | msgstr "" |
41701 | ||
41702 | #. type: deftypevr | |
39764ef8 | 41703 | #: doc/guix.texi:19380 |
b9fe8fd6 | 41704 | msgid "" |
39764ef8 JL |
41705 | "A flag which can be used to override the global setting @code{enable-html-" |
41706 | "serving?}." | |
b9fe8fd6 JL |
41707 | msgstr "" |
41708 | ||
41709 | #. type: deftypevr | |
39764ef8 | 41710 | #: doc/guix.texi:19385 |
b9fe8fd6 JL |
41711 | #, no-wrap |
41712 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean hide?" | |
41713 | msgstr "" | |
41714 | ||
41715 | #. type: deftypevr | |
39764ef8 | 41716 | #: doc/guix.texi:19388 |
b9fe8fd6 JL |
41717 | msgid "" |
41718 | "Flag which, when set to @code{#t}, hides the repository from the repository " | |
41719 | "index." | |
41720 | msgstr "" | |
41721 | ||
41722 | #. type: deftypevr | |
39764ef8 | 41723 | #: doc/guix.texi:19393 |
b9fe8fd6 JL |
41724 | #, no-wrap |
41725 | msgid "{@code{repository-cgit-configuration} parameter} repo-boolean ignore?" | |
41726 | msgstr "" | |
41727 | ||
41728 | #. type: deftypevr | |
39764ef8 | 41729 | #: doc/guix.texi:19395 |
b9fe8fd6 JL |
41730 | msgid "Flag which, when set to @samp{#t}, ignores the repository." |
41731 | msgstr "" | |
41732 | ||
41733 | #. type: deftypevr | |
39764ef8 | 41734 | #: doc/guix.texi:19400 |
b9fe8fd6 JL |
41735 | #, no-wrap |
41736 | msgid "{@code{repository-cgit-configuration} parameter} repo-file-object logo" | |
41737 | msgstr "" | |
41738 | ||
41739 | #. type: deftypevr | |
39764ef8 | 41740 | #: doc/guix.texi:19403 |
b9fe8fd6 JL |
41741 | msgid "" |
41742 | "URL which specifies the source of an image which will be used as a logo on " | |
41743 | "this repo’s pages." | |
41744 | msgstr "" | |
41745 | ||
41746 | #. type: deftypevr | |
39764ef8 | 41747 | #: doc/guix.texi:19408 |
b9fe8fd6 JL |
41748 | #, no-wrap |
41749 | msgid "{@code{repository-cgit-configuration} parameter} repo-string logo-link" | |
41750 | msgstr "" | |
41751 | ||
41752 | #. type: deftypevr | |
39764ef8 | 41753 | #: doc/guix.texi:19415 |
b9fe8fd6 | 41754 | #, no-wrap |
39764ef8 | 41755 | msgid "{@code{repository-cgit-configuration} parameter} repo-file-object owner-filter" |
b9fe8fd6 JL |
41756 | msgstr "" |
41757 | ||
41758 | #. type: deftypevr | |
39764ef8 | 41759 | #: doc/guix.texi:19417 |
b9fe8fd6 JL |
41760 | msgid "Override the default @code{owner-filter}." |
41761 | msgstr "" | |
41762 | ||
41763 | #. type: deftypevr | |
39764ef8 | 41764 | #: doc/guix.texi:19422 |
b9fe8fd6 JL |
41765 | #, no-wrap |
41766 | msgid "{@code{repository-cgit-configuration} parameter} repo-string module-link" | |
41767 | msgstr "" | |
41768 | ||
41769 | #. type: deftypevr | |
39764ef8 | 41770 | #: doc/guix.texi:19426 |
b9fe8fd6 JL |
41771 | msgid "" |
41772 | "Text which will be used as the formatstring for a hyperlink when a submodule " | |
41773 | "is printed in a directory listing. The arguments for the formatstring are " | |
41774 | "the path and SHA1 of the submodule commit." | |
41775 | msgstr "" | |
41776 | ||
41777 | #. type: deftypevr | |
39764ef8 | 41778 | #: doc/guix.texi:19431 |
b9fe8fd6 | 41779 | #, no-wrap |
39764ef8 | 41780 | msgid "{@code{repository-cgit-configuration} parameter} module-link-path module-link-path" |
b9fe8fd6 JL |
41781 | msgstr "" |
41782 | ||
41783 | #. type: deftypevr | |
39764ef8 | 41784 | #: doc/guix.texi:19435 |
b9fe8fd6 JL |
41785 | msgid "" |
41786 | "Text which will be used as the formatstring for a hyperlink when a submodule " | |
41787 | "with the specified subdirectory path is printed in a directory listing." | |
41788 | msgstr "" | |
41789 | ||
41790 | #. type: deftypevr | |
39764ef8 | 41791 | #: doc/guix.texi:19440 |
b9fe8fd6 JL |
41792 | #, no-wrap |
41793 | msgid "{@code{repository-cgit-configuration} parameter} repo-string max-stats" | |
41794 | msgstr "" | |
41795 | ||
41796 | #. type: deftypevr | |
39764ef8 | 41797 | #: doc/guix.texi:19442 |
b9fe8fd6 JL |
41798 | msgid "Override the default maximum statistics period." |
41799 | msgstr "" | |
41800 | ||
41801 | #. type: deftypevr | |
39764ef8 | 41802 | #: doc/guix.texi:19447 |
b9fe8fd6 JL |
41803 | #, no-wrap |
41804 | msgid "{@code{repository-cgit-configuration} parameter} repo-string name" | |
41805 | msgstr "" | |
41806 | ||
41807 | #. type: deftypevr | |
39764ef8 | 41808 | #: doc/guix.texi:19449 |
b9fe8fd6 JL |
41809 | msgid "The value to show as repository name." |
41810 | msgstr "" | |
41811 | ||
41812 | #. type: deftypevr | |
39764ef8 | 41813 | #: doc/guix.texi:19454 |
b9fe8fd6 JL |
41814 | #, no-wrap |
41815 | msgid "{@code{repository-cgit-configuration} parameter} repo-string owner" | |
41816 | msgstr "" | |
41817 | ||
41818 | #. type: deftypevr | |
39764ef8 | 41819 | #: doc/guix.texi:19456 |
b9fe8fd6 JL |
41820 | msgid "A value used to identify the owner of the repository." |
41821 | msgstr "" | |
41822 | ||
41823 | #. type: deftypevr | |
39764ef8 | 41824 | #: doc/guix.texi:19461 |
b9fe8fd6 JL |
41825 | #, no-wrap |
41826 | msgid "{@code{repository-cgit-configuration} parameter} repo-string path" | |
41827 | msgstr "" | |
41828 | ||
41829 | #. type: deftypevr | |
39764ef8 | 41830 | #: doc/guix.texi:19463 |
b9fe8fd6 JL |
41831 | msgid "An absolute path to the repository directory." |
41832 | msgstr "" | |
41833 | ||
41834 | #. type: deftypevr | |
39764ef8 | 41835 | #: doc/guix.texi:19468 |
b9fe8fd6 JL |
41836 | #, no-wrap |
41837 | msgid "{@code{repository-cgit-configuration} parameter} repo-string readme" | |
41838 | msgstr "" | |
41839 | ||
41840 | #. type: deftypevr | |
39764ef8 | 41841 | #: doc/guix.texi:19471 |
b9fe8fd6 JL |
41842 | msgid "" |
41843 | "A path (relative to repo) which specifies a file to include verbatim as the " | |
41844 | "\"About\" page for this repo." | |
41845 | msgstr "" | |
41846 | ||
41847 | #. type: deftypevr | |
39764ef8 | 41848 | #: doc/guix.texi:19476 |
b9fe8fd6 JL |
41849 | #, no-wrap |
41850 | msgid "{@code{repository-cgit-configuration} parameter} repo-string section" | |
41851 | msgstr "" | |
41852 | ||
41853 | #. type: deftypevr | |
39764ef8 | 41854 | #: doc/guix.texi:19484 |
b9fe8fd6 JL |
41855 | #, no-wrap |
41856 | msgid "{@code{repository-cgit-configuration} parameter} repo-list extra-options" | |
41857 | msgstr "" | |
41858 | ||
41859 | #. type: deftypevr | |
39764ef8 | 41860 | #: doc/guix.texi:19486 doc/guix.texi:19495 |
b9fe8fd6 JL |
41861 | msgid "Extra options will be appended to cgitrc file." |
41862 | msgstr "" | |
41863 | ||
41864 | #. type: deftypevr | |
39764ef8 | 41865 | #: doc/guix.texi:19493 |
b9fe8fd6 JL |
41866 | #, no-wrap |
41867 | msgid "{@code{cgit-configuration} parameter} list extra-options" | |
41868 | msgstr "" | |
41869 | ||
41870 | #. type: Plain text | |
39764ef8 | 41871 | #: doc/guix.texi:19507 |
b9fe8fd6 JL |
41872 | msgid "" |
41873 | "However, it could be that you just want to get a @code{cgitrc} up and " | |
41874 | "running. In that case, you can pass an @code{opaque-cgit-configuration} as " | |
41875 | "a record to @code{cgit-service-type}. As its name indicates, an opaque " | |
41876 | "configuration does not have easy reflective capabilities." | |
41877 | msgstr "" | |
41878 | ||
41879 | #. type: Plain text | |
39764ef8 | 41880 | #: doc/guix.texi:19509 |
b9fe8fd6 JL |
41881 | msgid "Available @code{opaque-cgit-configuration} fields are:" |
41882 | msgstr "" | |
41883 | ||
41884 | #. type: deftypevr | |
39764ef8 | 41885 | #: doc/guix.texi:19510 |
b9fe8fd6 JL |
41886 | #, no-wrap |
41887 | msgid "{@code{opaque-cgit-configuration} parameter} package cgit" | |
41888 | msgstr "" | |
41889 | ||
41890 | #. type: deftypevr | |
39764ef8 | 41891 | #: doc/guix.texi:19512 |
b9fe8fd6 JL |
41892 | msgid "The cgit package." |
41893 | msgstr "" | |
41894 | ||
41895 | #. type: deftypevr | |
39764ef8 | 41896 | #: doc/guix.texi:19514 |
b9fe8fd6 JL |
41897 | #, no-wrap |
41898 | msgid "{@code{opaque-cgit-configuration} parameter} string string" | |
41899 | msgstr "" | |
41900 | ||
41901 | #. type: deftypevr | |
39764ef8 | 41902 | #: doc/guix.texi:19516 |
b9fe8fd6 JL |
41903 | msgid "The contents of the @code{cgitrc}, as a string." |
41904 | msgstr "" | |
41905 | ||
41906 | #. type: Plain text | |
39764ef8 | 41907 | #: doc/guix.texi:19520 |
b9fe8fd6 JL |
41908 | msgid "" |
41909 | "For example, if your @code{cgitrc} is just the empty string, you could " | |
41910 | "instantiate a cgit service like this:" | |
41911 | msgstr "" | |
41912 | ||
41913 | #. type: example | |
39764ef8 | 41914 | #: doc/guix.texi:19525 |
b9fe8fd6 JL |
41915 | #, no-wrap |
41916 | msgid "" | |
41917 | "(service cgit-service-type\n" | |
41918 | " (opaque-cgit-configuration\n" | |
41919 | " (cgitrc \"\")))\n" | |
41920 | msgstr "" | |
41921 | ||
41922 | #. type: subsubheading | |
39764ef8 | 41923 | #: doc/guix.texi:19531 |
b9fe8fd6 JL |
41924 | #, no-wrap |
41925 | msgid "The Battle for Wesnoth Service" | |
41926 | msgstr "" | |
41927 | ||
41928 | #. type: cindex | |
39764ef8 | 41929 | #: doc/guix.texi:19532 |
b9fe8fd6 JL |
41930 | #, no-wrap |
41931 | msgid "wesnothd" | |
41932 | msgstr "" | |
41933 | ||
41934 | #. type: Plain text | |
39764ef8 | 41935 | #: doc/guix.texi:19536 |
b9fe8fd6 JL |
41936 | msgid "" |
41937 | "@uref{https://wesnoth.org, The Battle for Wesnoth} is a fantasy, turn based " | |
41938 | "tactical strategy game, with several single player campaigns, and " | |
41939 | "multiplayer games (both networked and local)." | |
41940 | msgstr "" | |
41941 | ||
41942 | #. type: defvar | |
39764ef8 | 41943 | #: doc/guix.texi:19537 |
b9fe8fd6 JL |
41944 | #, no-wrap |
41945 | msgid "{Scheme Variable} wesnothd-service-type" | |
41946 | msgstr "" | |
41947 | ||
41948 | #. type: defvar | |
39764ef8 | 41949 | #: doc/guix.texi:19541 |
b9fe8fd6 | 41950 | msgid "" |
39764ef8 JL |
41951 | "Service type for the wesnothd service. Its value must be a @code{wesnothd-" |
41952 | "configuration} object. To run wesnothd in the default configuration, " | |
41953 | "instantiate it as:" | |
b9fe8fd6 JL |
41954 | msgstr "" |
41955 | ||
41956 | #. type: example | |
39764ef8 | 41957 | #: doc/guix.texi:19544 |
b9fe8fd6 JL |
41958 | #, no-wrap |
41959 | msgid "(service wesnothd-service-type)\n" | |
41960 | msgstr "" | |
41961 | ||
41962 | #. type: deftp | |
39764ef8 | 41963 | #: doc/guix.texi:19547 |
b9fe8fd6 JL |
41964 | #, no-wrap |
41965 | msgid "{Data Type} wesnothd-configuration" | |
41966 | msgstr "" | |
41967 | ||
41968 | #. type: deftp | |
39764ef8 | 41969 | #: doc/guix.texi:19549 |
b9fe8fd6 JL |
41970 | msgid "Data type representing the configuration of @command{wesnothd}." |
41971 | msgstr "" | |
41972 | ||
41973 | #. type: item | |
39764ef8 | 41974 | #: doc/guix.texi:19551 |
b9fe8fd6 JL |
41975 | #, no-wrap |
41976 | msgid "@code{package} (default: @code{wesnoth-server})" | |
41977 | msgstr "" | |
41978 | ||
41979 | #. type: table | |
39764ef8 | 41980 | #: doc/guix.texi:19553 |
b9fe8fd6 JL |
41981 | msgid "The wesnoth server package to use." |
41982 | msgstr "" | |
41983 | ||
41984 | #. type: item | |
39764ef8 | 41985 | #: doc/guix.texi:19554 |
b9fe8fd6 JL |
41986 | #, no-wrap |
41987 | msgid "@code{port} (default: @code{15000})" | |
41988 | msgstr "" | |
41989 | ||
41990 | #. type: table | |
39764ef8 | 41991 | #: doc/guix.texi:19556 |
b9fe8fd6 JL |
41992 | msgid "The port to bind the server to." |
41993 | msgstr "" | |
41994 | ||
41995 | #. type: cindex | |
39764ef8 | 41996 | #: doc/guix.texi:19562 |
b9fe8fd6 JL |
41997 | #, no-wrap |
41998 | msgid "sysctl" | |
41999 | msgstr "" | |
42000 | ||
42001 | #. type: subsubheading | |
39764ef8 | 42002 | #: doc/guix.texi:19563 |
b9fe8fd6 JL |
42003 | #, no-wrap |
42004 | msgid "System Control Service" | |
42005 | msgstr "" | |
42006 | ||
42007 | #. type: Plain text | |
39764ef8 | 42008 | #: doc/guix.texi:19567 |
b9fe8fd6 JL |
42009 | msgid "" |
42010 | "The @code{(gnu services sysctl)} provides a service to configure kernel " | |
42011 | "parameters at boot." | |
42012 | msgstr "" | |
42013 | ||
42014 | #. type: defvr | |
39764ef8 | 42015 | #: doc/guix.texi:19568 |
b9fe8fd6 JL |
42016 | #, no-wrap |
42017 | msgid "{Scheme Variable} sysctl-service-type" | |
42018 | msgstr "" | |
42019 | ||
42020 | #. type: defvr | |
39764ef8 | 42021 | #: doc/guix.texi:19572 |
b9fe8fd6 JL |
42022 | msgid "" |
42023 | "The service type for @command{sysctl}, which modifies kernel parameters " | |
42024 | "under @file{/proc/sys/}. To enable IPv4 forwarding, it can be instantiated " | |
42025 | "as:" | |
42026 | msgstr "" | |
42027 | ||
42028 | #. type: example | |
39764ef8 | 42029 | #: doc/guix.texi:19577 |
b9fe8fd6 JL |
42030 | #, no-wrap |
42031 | msgid "" | |
42032 | "(service sysctl-service-type\n" | |
42033 | " (sysctl-configuration\n" | |
42034 | " (settings '((\"net.ipv4.ip_forward\" . \"1\")))))\n" | |
42035 | msgstr "" | |
42036 | ||
42037 | #. type: deftp | |
39764ef8 | 42038 | #: doc/guix.texi:19580 |
b9fe8fd6 JL |
42039 | #, no-wrap |
42040 | msgid "{Data Type} sysctl-configuration" | |
42041 | msgstr "" | |
42042 | ||
42043 | #. type: deftp | |
39764ef8 | 42044 | #: doc/guix.texi:19582 |
b9fe8fd6 JL |
42045 | msgid "The data type representing the configuration of @command{sysctl}." |
42046 | msgstr "" | |
42047 | ||
42048 | #. type: item | |
39764ef8 | 42049 | #: doc/guix.texi:19584 |
b9fe8fd6 JL |
42050 | #, no-wrap |
42051 | msgid "@code{sysctl} (default: @code{(file-append procps \"/sbin/sysctl\"})" | |
42052 | msgstr "" | |
42053 | ||
42054 | #. type: table | |
39764ef8 | 42055 | #: doc/guix.texi:19586 |
b9fe8fd6 JL |
42056 | msgid "The @command{sysctl} executable to use." |
42057 | msgstr "" | |
42058 | ||
42059 | #. type: item | |
39764ef8 | 42060 | #: doc/guix.texi:19587 |
b9fe8fd6 JL |
42061 | #, no-wrap |
42062 | msgid "@code{settings} (default: @code{'()})" | |
42063 | msgstr "" | |
42064 | ||
42065 | #. type: table | |
39764ef8 | 42066 | #: doc/guix.texi:19589 |
b9fe8fd6 JL |
42067 | msgid "An association list specifies kernel parameters and their values." |
42068 | msgstr "" | |
42069 | ||
42070 | #. type: cindex | |
39764ef8 | 42071 | #: doc/guix.texi:19592 |
b9fe8fd6 JL |
42072 | #, no-wrap |
42073 | msgid "lirc" | |
42074 | msgstr "" | |
42075 | ||
42076 | #. type: subsubheading | |
39764ef8 | 42077 | #: doc/guix.texi:19593 |
b9fe8fd6 JL |
42078 | #, no-wrap |
42079 | msgid "Lirc Service" | |
42080 | msgstr "" | |
42081 | ||
42082 | #. type: Plain text | |
39764ef8 | 42083 | #: doc/guix.texi:19596 |
b9fe8fd6 JL |
42084 | msgid "The @code{(gnu services lirc)} module provides the following service." |
42085 | msgstr "" | |
42086 | ||
42087 | #. type: deffn | |
39764ef8 | 42088 | #: doc/guix.texi:19597 |
b9fe8fd6 JL |
42089 | #, no-wrap |
42090 | msgid "{Scheme Procedure} lirc-service [#:lirc lirc] @" | |
42091 | msgstr "" | |
42092 | ||
42093 | #. type: deffn | |
39764ef8 | 42094 | #: doc/guix.texi:19602 |
b9fe8fd6 JL |
42095 | msgid "" |
42096 | "[#:device #f] [#:driver #f] [#:config-file #f] @ [#:extra-options '()] " | |
42097 | "Return a service that runs @url{http://www.lirc.org,LIRC}, a daemon that " | |
42098 | "decodes infrared signals from remote controls." | |
42099 | msgstr "" | |
42100 | ||
42101 | #. type: deffn | |
39764ef8 | 42102 | #: doc/guix.texi:19606 |
b9fe8fd6 JL |
42103 | msgid "" |
42104 | "Optionally, @var{device}, @var{driver} and @var{config-file} (configuration " | |
42105 | "file name) may be specified. See @command{lircd} manual for details." | |
42106 | msgstr "" | |
42107 | ||
42108 | #. type: deffn | |
39764ef8 | 42109 | #: doc/guix.texi:19609 |
b9fe8fd6 JL |
42110 | msgid "" |
42111 | "Finally, @var{extra-options} is a list of additional command-line options " | |
42112 | "passed to @command{lircd}." | |
42113 | msgstr "" | |
42114 | ||
42115 | #. type: cindex | |
39764ef8 | 42116 | #: doc/guix.texi:19611 |
b9fe8fd6 JL |
42117 | #, no-wrap |
42118 | msgid "spice" | |
42119 | msgstr "" | |
42120 | ||
42121 | #. type: subsubheading | |
39764ef8 | 42122 | #: doc/guix.texi:19612 |
b9fe8fd6 JL |
42123 | #, no-wrap |
42124 | msgid "Spice Service" | |
42125 | msgstr "" | |
42126 | ||
42127 | #. type: Plain text | |
39764ef8 | 42128 | #: doc/guix.texi:19615 |
b9fe8fd6 JL |
42129 | msgid "The @code{(gnu services spice)} module provides the following service." |
42130 | msgstr "" | |
42131 | ||
42132 | #. type: deffn | |
39764ef8 | 42133 | #: doc/guix.texi:19616 |
b9fe8fd6 JL |
42134 | #, no-wrap |
42135 | msgid "{Scheme Procedure} spice-vdagent-service [#:spice-vdagent]" | |
42136 | msgstr "" | |
42137 | ||
42138 | #. type: deffn | |
39764ef8 | 42139 | #: doc/guix.texi:19620 |
b9fe8fd6 JL |
42140 | msgid "" |
42141 | "Returns a service that runs @url{http://www.spice-space.org,VDAGENT}, a " | |
42142 | "daemon that enables sharing the clipboard with a vm and setting the guest " | |
42143 | "display resolution when the graphical console window resizes." | |
42144 | msgstr "" | |
42145 | ||
42146 | #. type: subsubsection | |
39764ef8 | 42147 | #: doc/guix.texi:19622 |
b9fe8fd6 JL |
42148 | #, no-wrap |
42149 | msgid "Dictionary Services" | |
42150 | msgstr "" | |
42151 | ||
42152 | #. type: cindex | |
39764ef8 | 42153 | #: doc/guix.texi:19623 |
b9fe8fd6 JL |
42154 | #, no-wrap |
42155 | msgid "dictionary" | |
42156 | msgstr "" | |
42157 | ||
42158 | #. type: Plain text | |
39764ef8 | 42159 | #: doc/guix.texi:19625 |
b9fe8fd6 JL |
42160 | msgid "The @code{(gnu services dict)} module provides the following service:" |
42161 | msgstr "" | |
42162 | ||
42163 | #. type: deffn | |
39764ef8 | 42164 | #: doc/guix.texi:19626 |
b9fe8fd6 JL |
42165 | #, no-wrap |
42166 | msgid "{Scheme Procedure} dicod-service [#:config (dicod-configuration)]" | |
42167 | msgstr "" | |
42168 | ||
42169 | #. type: deffn | |
39764ef8 | 42170 | #: doc/guix.texi:19629 |
b9fe8fd6 JL |
42171 | msgid "" |
42172 | "Return a service that runs the @command{dicod} daemon, an implementation of " | |
42173 | "DICT server (@pxref{Dicod,,, dico, GNU Dico Manual})." | |
42174 | msgstr "" | |
42175 | ||
42176 | #. type: deffn | |
39764ef8 | 42177 | #: doc/guix.texi:19633 |
b9fe8fd6 JL |
42178 | msgid "" |
42179 | "The optional @var{config} argument specifies the configuration for " | |
42180 | "@command{dicod}, which should be a @code{<dicod-configuration>} object, by " | |
42181 | "default it serves the GNU Collaborative International Dictonary of English." | |
42182 | msgstr "" | |
42183 | ||
42184 | #. type: deffn | |
39764ef8 | 42185 | #: doc/guix.texi:19637 |
b9fe8fd6 JL |
42186 | msgid "" |
42187 | "You can add @command{open localhost} to your @file{~/.dico} file to make " | |
42188 | "@code{localhost} the default server for @command{dico} client " | |
42189 | "(@pxref{Initialization File,,, dico, GNU Dico Manual})." | |
42190 | msgstr "" | |
42191 | ||
42192 | #. type: deftp | |
39764ef8 | 42193 | #: doc/guix.texi:19639 |
b9fe8fd6 JL |
42194 | #, no-wrap |
42195 | msgid "{Data Type} dicod-configuration" | |
42196 | msgstr "" | |
42197 | ||
42198 | #. type: deftp | |
39764ef8 | 42199 | #: doc/guix.texi:19641 |
b9fe8fd6 JL |
42200 | msgid "Data type representing the configuration of dicod." |
42201 | msgstr "" | |
42202 | ||
42203 | #. type: item | |
39764ef8 | 42204 | #: doc/guix.texi:19643 |
b9fe8fd6 JL |
42205 | #, no-wrap |
42206 | msgid "@code{dico} (default: @var{dico})" | |
42207 | msgstr "" | |
42208 | ||
42209 | #. type: table | |
39764ef8 | 42210 | #: doc/guix.texi:19645 |
b9fe8fd6 JL |
42211 | msgid "Package object of the GNU Dico dictionary server." |
42212 | msgstr "" | |
42213 | ||
42214 | #. type: item | |
39764ef8 | 42215 | #: doc/guix.texi:19646 |
b9fe8fd6 JL |
42216 | #, no-wrap |
42217 | msgid "@code{interfaces} (default: @var{'(\"localhost\")})" | |
42218 | msgstr "" | |
42219 | ||
42220 | #. type: table | |
39764ef8 | 42221 | #: doc/guix.texi:19650 |
b9fe8fd6 JL |
42222 | msgid "" |
42223 | "This is the list of IP addresses and ports and possibly socket file names to " | |
42224 | "listen to (@pxref{Server Settings, @code{listen} directive,, dico, GNU Dico " | |
42225 | "Manual})." | |
42226 | msgstr "" | |
42227 | ||
42228 | #. type: item | |
39764ef8 | 42229 | #: doc/guix.texi:19651 |
b9fe8fd6 JL |
42230 | #, no-wrap |
42231 | msgid "@code{handlers} (default: @var{'()})" | |
42232 | msgstr "" | |
42233 | ||
42234 | #. type: table | |
39764ef8 JL |
42235 | #: doc/guix.texi:19653 |
42236 | msgid "" | |
42237 | "List of @code{<dicod-handler>} objects denoting handlers (module instances)." | |
b9fe8fd6 JL |
42238 | msgstr "" |
42239 | ||
42240 | #. type: item | |
39764ef8 | 42241 | #: doc/guix.texi:19654 |
b9fe8fd6 JL |
42242 | #, no-wrap |
42243 | msgid "@code{databases} (default: @var{(list %dicod-database:gcide)})" | |
42244 | msgstr "" | |
42245 | ||
42246 | #. type: table | |
39764ef8 JL |
42247 | #: doc/guix.texi:19656 |
42248 | msgid "" | |
42249 | "List of @code{<dicod-database>} objects denoting dictionaries to be served." | |
b9fe8fd6 JL |
42250 | msgstr "" |
42251 | ||
42252 | #. type: deftp | |
39764ef8 | 42253 | #: doc/guix.texi:19659 |
b9fe8fd6 JL |
42254 | #, no-wrap |
42255 | msgid "{Data Type} dicod-handler" | |
42256 | msgstr "" | |
42257 | ||
42258 | #. type: deftp | |
39764ef8 | 42259 | #: doc/guix.texi:19661 |
b9fe8fd6 JL |
42260 | msgid "Data type representing a dictionary handler (module instance)." |
42261 | msgstr "" | |
42262 | ||
42263 | #. type: table | |
39764ef8 | 42264 | #: doc/guix.texi:19665 |
b9fe8fd6 JL |
42265 | msgid "Name of the handler (module instance)." |
42266 | msgstr "" | |
42267 | ||
42268 | #. type: item | |
39764ef8 | 42269 | #: doc/guix.texi:19666 |
b9fe8fd6 JL |
42270 | #, no-wrap |
42271 | msgid "@code{module} (default: @var{#f})" | |
42272 | msgstr "" | |
42273 | ||
42274 | #. type: table | |
39764ef8 | 42275 | #: doc/guix.texi:19670 |
b9fe8fd6 JL |
42276 | msgid "" |
42277 | "Name of the dicod module of the handler (instance). If it is @code{#f}, the " | |
42278 | "module has the same name as the handler. (@pxref{Modules,,, dico, GNU Dico " | |
42279 | "Manual})." | |
42280 | msgstr "" | |
42281 | ||
42282 | #. type: code{#1} | |
39764ef8 | 42283 | #: doc/guix.texi:19671 doc/guix.texi:19691 |
b9fe8fd6 JL |
42284 | #, no-wrap |
42285 | msgid "options" | |
42286 | msgstr "" | |
42287 | ||
42288 | #. type: table | |
39764ef8 JL |
42289 | #: doc/guix.texi:19673 |
42290 | msgid "" | |
42291 | "List of strings or gexps representing the arguments for the module handler" | |
b9fe8fd6 JL |
42292 | msgstr "" |
42293 | ||
42294 | #. type: deftp | |
39764ef8 | 42295 | #: doc/guix.texi:19676 |
b9fe8fd6 JL |
42296 | #, no-wrap |
42297 | msgid "{Data Type} dicod-database" | |
42298 | msgstr "" | |
42299 | ||
42300 | #. type: deftp | |
39764ef8 | 42301 | #: doc/guix.texi:19678 |
b9fe8fd6 JL |
42302 | msgid "Data type representing a dictionary database." |
42303 | msgstr "" | |
42304 | ||
42305 | #. type: table | |
39764ef8 | 42306 | #: doc/guix.texi:19682 |
b9fe8fd6 JL |
42307 | msgid "Name of the database, will be used in DICT commands." |
42308 | msgstr "" | |
42309 | ||
42310 | #. type: code{#1} | |
39764ef8 | 42311 | #: doc/guix.texi:19683 |
b9fe8fd6 JL |
42312 | #, no-wrap |
42313 | msgid "handler" | |
42314 | msgstr "" | |
42315 | ||
42316 | #. type: table | |
39764ef8 | 42317 | #: doc/guix.texi:19686 |
b9fe8fd6 JL |
42318 | msgid "" |
42319 | "Name of the dicod handler (module instance) used by this database " | |
42320 | "(@pxref{Handlers,,, dico, GNU Dico Manual})." | |
42321 | msgstr "" | |
42322 | ||
42323 | #. type: item | |
39764ef8 | 42324 | #: doc/guix.texi:19687 |
b9fe8fd6 JL |
42325 | #, no-wrap |
42326 | msgid "@code{complex?} (default: @var{#f})" | |
42327 | msgstr "" | |
42328 | ||
42329 | #. type: table | |
39764ef8 | 42330 | #: doc/guix.texi:19690 |
b9fe8fd6 JL |
42331 | msgid "" |
42332 | "Whether the database configuration complex. The complex configuration will " | |
42333 | "need a corresponding @code{<dicod-handler>} object, otherwise not." | |
42334 | msgstr "" | |
42335 | ||
42336 | #. type: table | |
39764ef8 | 42337 | #: doc/guix.texi:19694 |
b9fe8fd6 JL |
42338 | msgid "" |
42339 | "List of strings or gexps representing the arguments for the database " | |
42340 | "(@pxref{Databases,,, dico, GNU Dico Manual})." | |
42341 | msgstr "" | |
42342 | ||
42343 | #. type: defvr | |
39764ef8 | 42344 | #: doc/guix.texi:19697 |
b9fe8fd6 JL |
42345 | #, no-wrap |
42346 | msgid "{Scheme Variable} %dicod-database:gcide" | |
42347 | msgstr "" | |
42348 | ||
42349 | #. type: defvr | |
39764ef8 | 42350 | #: doc/guix.texi:19700 |
b9fe8fd6 JL |
42351 | msgid "" |
42352 | "A @code{<dicod-database>} object serving the GNU Collaborative International " | |
42353 | "Dictionary of English using the @code{gcide} package." | |
42354 | msgstr "" | |
42355 | ||
42356 | #. type: Plain text | |
39764ef8 | 42357 | #: doc/guix.texi:19703 |
b9fe8fd6 JL |
42358 | msgid "The following is an example @code{dicod-service} configuration." |
42359 | msgstr "" | |
42360 | ||
42361 | #. type: example | |
39764ef8 | 42362 | #: doc/guix.texi:19718 |
b9fe8fd6 JL |
42363 | #, no-wrap |
42364 | msgid "" | |
42365 | "(dicod-service #:config\n" | |
42366 | " (dicod-configuration\n" | |
42367 | " (handlers (list (dicod-handler\n" | |
42368 | " (name \"wordnet\")\n" | |
42369 | " (module \"dictorg\")\n" | |
42370 | " (options\n" | |
42371 | " (list #~(string-append \"dbdir=\" #$wordnet))))))\n" | |
42372 | " (databases (list (dicod-database\n" | |
42373 | " (name \"wordnet\")\n" | |
42374 | " (complex? #t)\n" | |
42375 | " (handler \"wordnet\")\n" | |
42376 | " (options '(\"database=wn\")))\n" | |
42377 | " %dicod-database:gcide))))\n" | |
42378 | msgstr "" | |
42379 | ||
42380 | #. type: cindex | |
39764ef8 | 42381 | #: doc/guix.texi:19723 |
b9fe8fd6 JL |
42382 | #, no-wrap |
42383 | msgid "setuid programs" | |
42384 | msgstr "" | |
42385 | ||
42386 | #. type: Plain text | |
39764ef8 | 42387 | #: doc/guix.texi:19733 |
b9fe8fd6 JL |
42388 | msgid "" |
42389 | "Some programs need to run with ``root'' privileges, even when they are " | |
42390 | "launched by unprivileged users. A notorious example is the @command{passwd} " | |
42391 | "program, which users can run to change their password, and which needs to " | |
42392 | "access the @file{/etc/passwd} and @file{/etc/shadow} files---something " | |
42393 | "normally restricted to root, for obvious security reasons. To address that, " | |
42394 | "these executables are @dfn{setuid-root}, meaning that they always run with " | |
42395 | "root privileges (@pxref{How Change Persona,,, libc, The GNU C Library " | |
42396 | "Reference Manual}, for more info about the setuid mechanism.)" | |
42397 | msgstr "" | |
42398 | ||
42399 | #. type: Plain text | |
39764ef8 | 42400 | #: doc/guix.texi:19740 |
b9fe8fd6 JL |
42401 | msgid "" |
42402 | "The store itself @emph{cannot} contain setuid programs: that would be a " | |
42403 | "security issue since any user on the system can write derivations that " | |
42404 | "populate the store (@pxref{The Store}). Thus, a different mechanism is " | |
42405 | "used: instead of changing the setuid bit directly on files that are in the " | |
42406 | "store, we let the system administrator @emph{declare} which programs should " | |
42407 | "be setuid root." | |
42408 | msgstr "" | |
42409 | ||
42410 | #. type: Plain text | |
39764ef8 | 42411 | #: doc/guix.texi:19746 |
b9fe8fd6 JL |
42412 | msgid "" |
42413 | "The @code{setuid-programs} field of an @code{operating-system} declaration " | |
39764ef8 JL |
42414 | "contains a list of G-expressions denoting the names of programs to be setuid-" |
42415 | "root (@pxref{Using the Configuration System}). For instance, the " | |
b9fe8fd6 JL |
42416 | "@command{passwd} program, which is part of the Shadow package, can be " |
42417 | "designated by this G-expression (@pxref{G-Expressions}):" | |
42418 | msgstr "" | |
42419 | ||
42420 | #. type: example | |
39764ef8 | 42421 | #: doc/guix.texi:19749 |
b9fe8fd6 JL |
42422 | #, no-wrap |
42423 | msgid "#~(string-append #$shadow \"/bin/passwd\")\n" | |
42424 | msgstr "" | |
42425 | ||
42426 | #. type: Plain text | |
39764ef8 | 42427 | #: doc/guix.texi:19753 |
b9fe8fd6 JL |
42428 | msgid "" |
42429 | "A default set of setuid programs is defined by the @code{%setuid-programs} " | |
42430 | "variable of the @code{(gnu system)} module." | |
42431 | msgstr "" | |
42432 | ||
42433 | #. type: defvr | |
39764ef8 | 42434 | #: doc/guix.texi:19754 |
b9fe8fd6 JL |
42435 | #, no-wrap |
42436 | msgid "{Scheme Variable} %setuid-programs" | |
42437 | msgstr "" | |
42438 | ||
42439 | #. type: defvr | |
39764ef8 | 42440 | #: doc/guix.texi:19756 |
b9fe8fd6 JL |
42441 | msgid "A list of G-expressions denoting common programs that are setuid-root." |
42442 | msgstr "" | |
42443 | ||
42444 | #. type: defvr | |
39764ef8 | 42445 | #: doc/guix.texi:19759 |
b9fe8fd6 JL |
42446 | msgid "" |
42447 | "The list includes commands such as @command{passwd}, @command{ping}, " | |
42448 | "@command{su}, and @command{sudo}." | |
42449 | msgstr "" | |
42450 | ||
42451 | #. type: Plain text | |
39764ef8 | 42452 | #: doc/guix.texi:19765 |
b9fe8fd6 | 42453 | msgid "" |
39764ef8 JL |
42454 | "Under the hood, the actual setuid programs are created in the @file{/run/" |
42455 | "setuid-programs} directory at system activation time. The files in this " | |
42456 | "directory refer to the ``real'' binaries, which are in the store." | |
b9fe8fd6 JL |
42457 | msgstr "" |
42458 | ||
42459 | #. type: cindex | |
39764ef8 | 42460 | #: doc/guix.texi:19769 |
b9fe8fd6 JL |
42461 | #, no-wrap |
42462 | msgid "HTTPS, certificates" | |
42463 | msgstr "" | |
42464 | ||
42465 | #. type: cindex | |
39764ef8 | 42466 | #: doc/guix.texi:19770 |
b9fe8fd6 JL |
42467 | #, no-wrap |
42468 | msgid "X.509 certificates" | |
42469 | msgstr "" | |
42470 | ||
42471 | #. type: cindex | |
39764ef8 | 42472 | #: doc/guix.texi:19771 |
b9fe8fd6 JL |
42473 | #, no-wrap |
42474 | msgid "TLS" | |
42475 | msgstr "" | |
42476 | ||
42477 | #. type: Plain text | |
39764ef8 | 42478 | #: doc/guix.texi:19778 |
b9fe8fd6 JL |
42479 | msgid "" |
42480 | "Web servers available over HTTPS (that is, HTTP over the transport-layer " | |
42481 | "security mechanism, TLS) send client programs an @dfn{X.509 certificate} " | |
42482 | "that the client can then use to @emph{authenticate} the server. To do that, " | |
42483 | "clients verify that the server's certificate is signed by a so-called " | |
42484 | "@dfn{certificate authority} (CA). But to verify the CA's signature, clients " | |
42485 | "must have first acquired the CA's certificate." | |
42486 | msgstr "" | |
42487 | ||
42488 | #. type: Plain text | |
39764ef8 | 42489 | #: doc/guix.texi:19782 |
b9fe8fd6 JL |
42490 | msgid "" |
42491 | "Web browsers such as GNU@tie{}IceCat include their own set of CA " | |
39764ef8 | 42492 | "certificates, such that they are able to verify CA signatures out-of-the-box." |
b9fe8fd6 JL |
42493 | msgstr "" |
42494 | ||
42495 | #. type: Plain text | |
39764ef8 | 42496 | #: doc/guix.texi:19786 |
b9fe8fd6 JL |
42497 | msgid "" |
42498 | "However, most other programs that can talk HTTPS---@command{wget}, " | |
42499 | "@command{git}, @command{w3m}, etc.---need to be told where CA certificates " | |
42500 | "can be found." | |
42501 | msgstr "" | |
42502 | ||
42503 | #. type: Plain text | |
39764ef8 | 42504 | #: doc/guix.texi:19793 |
b9fe8fd6 JL |
42505 | msgid "" |
42506 | "In GuixSD, this is done by adding a package that provides certificates to " | |
42507 | "the @code{packages} field of the @code{operating-system} declaration " | |
42508 | "(@pxref{operating-system Reference}). GuixSD includes one such package, " | |
42509 | "@code{nss-certs}, which is a set of CA certificates provided as part of " | |
42510 | "Mozilla's Network Security Services." | |
42511 | msgstr "" | |
42512 | ||
42513 | #. type: Plain text | |
39764ef8 | 42514 | #: doc/guix.texi:19798 |
b9fe8fd6 JL |
42515 | msgid "" |
42516 | "Note that it is @emph{not} part of @var{%base-packages}, so you need to " | |
42517 | "explicitly add it. The @file{/etc/ssl/certs} directory, which is where most " | |
42518 | "applications and libraries look for certificates by default, points to the " | |
42519 | "certificates installed globally." | |
42520 | msgstr "" | |
42521 | ||
42522 | #. type: Plain text | |
39764ef8 | 42523 | #: doc/guix.texi:19808 |
b9fe8fd6 JL |
42524 | msgid "" |
42525 | "Unprivileged users, including users of Guix on a foreign distro, can also " | |
42526 | "install their own certificate package in their profile. A number of " | |
42527 | "environment variables need to be defined so that applications and libraries " | |
42528 | "know where to find them. Namely, the OpenSSL library honors the " | |
42529 | "@code{SSL_CERT_DIR} and @code{SSL_CERT_FILE} variables. Some applications " | |
42530 | "add their own environment variables; for instance, the Git version control " | |
42531 | "system honors the certificate bundle pointed to by the @code{GIT_SSL_CAINFO} " | |
42532 | "environment variable. Thus, you would typically run something like:" | |
42533 | msgstr "" | |
42534 | ||
42535 | #. type: example | |
39764ef8 | 42536 | #: doc/guix.texi:19814 |
b9fe8fd6 JL |
42537 | #, no-wrap |
42538 | msgid "" | |
42539 | "$ guix package -i nss-certs\n" | |
42540 | "$ export SSL_CERT_DIR=\"$HOME/.guix-profile/etc/ssl/certs\"\n" | |
39764ef8 | 42541 | "$ export SSL_CERT_FILE=\"$HOME/.guix-profile/etc/ssl/certs/ca-certificates.crt\"\n" |
b9fe8fd6 JL |
42542 | "$ export GIT_SSL_CAINFO=\"$SSL_CERT_FILE\"\n" |
42543 | msgstr "" | |
42544 | ||
42545 | #. type: Plain text | |
39764ef8 | 42546 | #: doc/guix.texi:19819 |
b9fe8fd6 JL |
42547 | msgid "" |
42548 | "As another example, R requires the @code{CURL_CA_BUNDLE} environment " | |
42549 | "variable to point to a certificate bundle, so you would have to run " | |
42550 | "something like this:" | |
42551 | msgstr "" | |
42552 | ||
42553 | #. type: example | |
39764ef8 | 42554 | #: doc/guix.texi:19823 |
b9fe8fd6 JL |
42555 | #, no-wrap |
42556 | msgid "" | |
42557 | "$ guix package -i nss-certs\n" | |
39764ef8 | 42558 | "$ export CURL_CA_BUNDLE=\"$HOME/.guix-profile/etc/ssl/certs/ca-certificates.crt\"\n" |
b9fe8fd6 JL |
42559 | msgstr "" |
42560 | ||
42561 | #. type: Plain text | |
39764ef8 | 42562 | #: doc/guix.texi:19827 |
b9fe8fd6 JL |
42563 | msgid "" |
42564 | "For other applications you may want to look up the required environment " | |
42565 | "variable in the relevant documentation." | |
42566 | msgstr "" | |
42567 | ||
42568 | #. type: cindex | |
39764ef8 | 42569 | #: doc/guix.texi:19832 |
b9fe8fd6 JL |
42570 | #, no-wrap |
42571 | msgid "name service switch" | |
42572 | msgstr "" | |
42573 | ||
42574 | #. type: cindex | |
39764ef8 | 42575 | #: doc/guix.texi:19833 |
b9fe8fd6 JL |
42576 | #, no-wrap |
42577 | msgid "NSS" | |
42578 | msgstr "" | |
42579 | ||
42580 | #. type: Plain text | |
39764ef8 | 42581 | #: doc/guix.texi:19842 |
b9fe8fd6 JL |
42582 | msgid "" |
42583 | "The @code{(gnu system nss)} module provides bindings to the configuration " | |
42584 | "file of the libc @dfn{name service switch} or @dfn{NSS} (@pxref{NSS " | |
42585 | "Configuration File,,, libc, The GNU C Library Reference Manual}). In a " | |
42586 | "nutshell, the NSS is a mechanism that allows libc to be extended with new " | |
42587 | "``name'' lookup methods for system databases, which includes host names, " | |
42588 | "service names, user accounts, and more (@pxref{Name Service Switch, System " | |
42589 | "Databases and Name Service Switch,, libc, The GNU C Library Reference " | |
42590 | "Manual})." | |
42591 | msgstr "" | |
42592 | ||
42593 | #. type: Plain text | |
39764ef8 | 42594 | #: doc/guix.texi:19849 |
b9fe8fd6 JL |
42595 | msgid "" |
42596 | "The NSS configuration specifies, for each system database, which lookup " | |
42597 | "method is to be used, and how the various methods are chained together---for " | |
42598 | "instance, under which circumstances NSS should try the next method in the " | |
42599 | "list. The NSS configuration is given in the @code{name-service-switch} " | |
42600 | "field of @code{operating-system} declarations (@pxref{operating-system " | |
42601 | "Reference, @code{name-service-switch}})." | |
42602 | msgstr "" | |
42603 | ||
42604 | #. type: cindex | |
39764ef8 | 42605 | #: doc/guix.texi:19850 |
b9fe8fd6 JL |
42606 | #, no-wrap |
42607 | msgid "nss-mdns" | |
42608 | msgstr "" | |
42609 | ||
42610 | #. type: cindex | |
39764ef8 | 42611 | #: doc/guix.texi:19851 |
b9fe8fd6 JL |
42612 | #, no-wrap |
42613 | msgid ".local, host name lookup" | |
42614 | msgstr "" | |
42615 | ||
42616 | #. type: Plain text | |
39764ef8 | 42617 | #: doc/guix.texi:19856 |
b9fe8fd6 JL |
42618 | msgid "" |
42619 | "As an example, the declaration below configures the NSS to use the " | |
39764ef8 JL |
42620 | "@uref{http://0pointer.de/lennart/projects/nss-mdns/, @code{nss-mdns} back-" |
42621 | "end}, which supports host name lookups over multicast DNS (mDNS) for host " | |
42622 | "names ending in @code{.local}:" | |
b9fe8fd6 JL |
42623 | msgstr "" |
42624 | ||
42625 | #. type: example | |
39764ef8 | 42626 | #: doc/guix.texi:19860 |
b9fe8fd6 JL |
42627 | #, no-wrap |
42628 | msgid "" | |
42629 | "(name-service-switch\n" | |
42630 | " (hosts (list %files ;first, check /etc/hosts\n" | |
42631 | "\n" | |
42632 | msgstr "" | |
42633 | ||
42634 | #. type: example | |
39764ef8 | 42635 | #: doc/guix.texi:19865 |
b9fe8fd6 JL |
42636 | #, no-wrap |
42637 | msgid "" | |
42638 | " ;; If the above did not succeed, try\n" | |
42639 | " ;; with 'mdns_minimal'.\n" | |
42640 | " (name-service\n" | |
42641 | " (name \"mdns_minimal\")\n" | |
42642 | "\n" | |
42643 | msgstr "" | |
42644 | ||
42645 | #. type: example | |
39764ef8 | 42646 | #: doc/guix.texi:19871 |
b9fe8fd6 JL |
42647 | #, no-wrap |
42648 | msgid "" | |
42649 | " ;; 'mdns_minimal' is authoritative for\n" | |
42650 | " ;; '.local'. When it returns \"not found\",\n" | |
42651 | " ;; no need to try the next methods.\n" | |
42652 | " (reaction (lookup-specification\n" | |
42653 | " (not-found => return))))\n" | |
42654 | "\n" | |
42655 | msgstr "" | |
42656 | ||
42657 | #. type: example | |
39764ef8 | 42658 | #: doc/guix.texi:19875 |
b9fe8fd6 JL |
42659 | #, no-wrap |
42660 | msgid "" | |
42661 | " ;; Then fall back to DNS.\n" | |
42662 | " (name-service\n" | |
42663 | " (name \"dns\"))\n" | |
42664 | "\n" | |
42665 | msgstr "" | |
42666 | ||
42667 | #. type: example | |
39764ef8 | 42668 | #: doc/guix.texi:19879 |
b9fe8fd6 JL |
42669 | #, no-wrap |
42670 | msgid "" | |
42671 | " ;; Finally, try with the \"full\" 'mdns'.\n" | |
42672 | " (name-service\n" | |
42673 | " (name \"mdns\")))))\n" | |
42674 | msgstr "" | |
42675 | ||
42676 | #. type: Plain text | |
39764ef8 | 42677 | #: doc/guix.texi:19884 |
b9fe8fd6 JL |
42678 | msgid "" |
42679 | "Do not worry: the @code{%mdns-host-lookup-nss} variable (see below) " | |
42680 | "contains this configuration, so you will not have to type it if all you want " | |
42681 | "is to have @code{.local} host lookup working." | |
42682 | msgstr "" | |
42683 | ||
42684 | #. type: Plain text | |
39764ef8 | 42685 | #: doc/guix.texi:19892 |
b9fe8fd6 | 42686 | msgid "" |
39764ef8 JL |
42687 | "Note that, in this case, in addition to setting the @code{name-service-" |
42688 | "switch} of the @code{operating-system} declaration, you also need to use " | |
42689 | "@code{avahi-service} (@pxref{Networking Services, @code{avahi-service}}), or " | |
42690 | "@var{%desktop-services}, which includes it (@pxref{Desktop Services}). " | |
42691 | "Doing this makes @code{nss-mdns} accessible to the name service cache daemon " | |
42692 | "(@pxref{Base Services, @code{nscd-service}})." | |
b9fe8fd6 JL |
42693 | msgstr "" |
42694 | ||
42695 | #. type: Plain text | |
39764ef8 JL |
42696 | #: doc/guix.texi:19895 |
42697 | msgid "" | |
42698 | "For convenience, the following variables provide typical NSS configurations." | |
b9fe8fd6 JL |
42699 | msgstr "" |
42700 | ||
42701 | #. type: defvr | |
39764ef8 | 42702 | #: doc/guix.texi:19896 |
b9fe8fd6 JL |
42703 | #, no-wrap |
42704 | msgid "{Scheme Variable} %default-nss" | |
42705 | msgstr "" | |
42706 | ||
42707 | #. type: defvr | |
39764ef8 | 42708 | #: doc/guix.texi:19899 |
b9fe8fd6 | 42709 | msgid "" |
39764ef8 JL |
42710 | "This is the default name service switch configuration, a @code{name-service-" |
42711 | "switch} object." | |
b9fe8fd6 JL |
42712 | msgstr "" |
42713 | ||
42714 | #. type: defvr | |
39764ef8 | 42715 | #: doc/guix.texi:19901 |
b9fe8fd6 JL |
42716 | #, no-wrap |
42717 | msgid "{Scheme Variable} %mdns-host-lookup-nss" | |
42718 | msgstr "" | |
42719 | ||
42720 | #. type: defvr | |
39764ef8 | 42721 | #: doc/guix.texi:19904 |
b9fe8fd6 JL |
42722 | msgid "" |
42723 | "This is the name service switch configuration with support for host name " | |
42724 | "lookup over multicast DNS (mDNS) for host names ending in @code{.local}." | |
42725 | msgstr "" | |
42726 | ||
42727 | #. type: Plain text | |
39764ef8 | 42728 | #: doc/guix.texi:19914 |
b9fe8fd6 JL |
42729 | msgid "" |
42730 | "The reference for name service switch configuration is given below. It is a " | |
42731 | "direct mapping of the configuration file format of the C library , so please " | |
42732 | "refer to the C library manual for more information (@pxref{NSS Configuration " | |
42733 | "File,,, libc, The GNU C Library Reference Manual}). Compared to the " | |
42734 | "configuration file format of libc NSS, it has the advantage not only of " | |
42735 | "adding this warm parenthetic feel that we like, but also static checks: you " | |
42736 | "will know about syntax errors and typos as soon as you run @command{guix " | |
42737 | "system}." | |
42738 | msgstr "" | |
42739 | ||
42740 | #. type: deftp | |
39764ef8 | 42741 | #: doc/guix.texi:19915 |
b9fe8fd6 JL |
42742 | #, no-wrap |
42743 | msgid "{Data Type} name-service-switch" | |
42744 | msgstr "" | |
42745 | ||
42746 | #. type: deftp | |
39764ef8 | 42747 | #: doc/guix.texi:19920 |
b9fe8fd6 JL |
42748 | msgid "" |
42749 | "This is the data type representation the configuration of libc's name " | |
42750 | "service switch (NSS). Each field below represents one of the supported " | |
42751 | "system databases." | |
42752 | msgstr "" | |
42753 | ||
42754 | #. type: item | |
39764ef8 | 42755 | #: doc/guix.texi:19922 |
b9fe8fd6 JL |
42756 | #, no-wrap |
42757 | msgid "aliases" | |
42758 | msgstr "" | |
42759 | ||
42760 | #. type: itemx | |
39764ef8 | 42761 | #: doc/guix.texi:19923 |
b9fe8fd6 JL |
42762 | #, no-wrap |
42763 | msgid "ethers" | |
42764 | msgstr "" | |
42765 | ||
42766 | #. type: itemx | |
39764ef8 | 42767 | #: doc/guix.texi:19925 |
b9fe8fd6 JL |
42768 | #, no-wrap |
42769 | msgid "gshadow" | |
42770 | msgstr "" | |
42771 | ||
42772 | #. type: itemx | |
39764ef8 | 42773 | #: doc/guix.texi:19926 |
b9fe8fd6 JL |
42774 | #, no-wrap |
42775 | msgid "hosts" | |
42776 | msgstr "" | |
42777 | ||
42778 | #. type: itemx | |
39764ef8 | 42779 | #: doc/guix.texi:19927 |
b9fe8fd6 JL |
42780 | #, no-wrap |
42781 | msgid "initgroups" | |
42782 | msgstr "" | |
42783 | ||
42784 | #. type: itemx | |
39764ef8 | 42785 | #: doc/guix.texi:19928 |
b9fe8fd6 JL |
42786 | #, no-wrap |
42787 | msgid "netgroup" | |
42788 | msgstr "" | |
42789 | ||
42790 | #. type: itemx | |
39764ef8 | 42791 | #: doc/guix.texi:19929 |
b9fe8fd6 JL |
42792 | #, no-wrap |
42793 | msgid "networks" | |
42794 | msgstr "" | |
42795 | ||
42796 | #. type: itemx | |
39764ef8 | 42797 | #: doc/guix.texi:19931 |
b9fe8fd6 JL |
42798 | #, no-wrap |
42799 | msgid "public-key" | |
42800 | msgstr "" | |
42801 | ||
42802 | #. type: itemx | |
39764ef8 | 42803 | #: doc/guix.texi:19932 |
b9fe8fd6 JL |
42804 | #, no-wrap |
42805 | msgid "rpc" | |
42806 | msgstr "" | |
42807 | ||
42808 | #. type: itemx | |
39764ef8 | 42809 | #: doc/guix.texi:19934 |
b9fe8fd6 JL |
42810 | #, no-wrap |
42811 | msgid "shadow" | |
42812 | msgstr "" | |
42813 | ||
42814 | #. type: table | |
39764ef8 | 42815 | #: doc/guix.texi:19937 |
b9fe8fd6 JL |
42816 | msgid "" |
42817 | "The system databases handled by the NSS. Each of these fields must be a " | |
42818 | "list of @code{<name-service>} objects (see below)." | |
42819 | msgstr "" | |
42820 | ||
42821 | #. type: deftp | |
39764ef8 | 42822 | #: doc/guix.texi:19940 |
b9fe8fd6 JL |
42823 | #, no-wrap |
42824 | msgid "{Data Type} name-service" | |
42825 | msgstr "" | |
42826 | ||
42827 | #. type: deftp | |
39764ef8 | 42828 | #: doc/guix.texi:19944 |
b9fe8fd6 JL |
42829 | msgid "" |
42830 | "This is the data type representing an actual name service and the associated " | |
42831 | "lookup action." | |
42832 | msgstr "" | |
42833 | ||
42834 | #. type: table | |
39764ef8 | 42835 | #: doc/guix.texi:19949 |
b9fe8fd6 JL |
42836 | msgid "" |
42837 | "A string denoting the name service (@pxref{Services in the NSS " | |
42838 | "configuration,,, libc, The GNU C Library Reference Manual})." | |
42839 | msgstr "" | |
42840 | ||
42841 | #. type: table | |
39764ef8 | 42842 | #: doc/guix.texi:19954 |
b9fe8fd6 JL |
42843 | msgid "" |
42844 | "Note that name services listed here must be visible to nscd. This is " | |
39764ef8 JL |
42845 | "achieved by passing the @code{#:name-services} argument to @code{nscd-" |
42846 | "service} the list of packages providing the needed name services " | |
b9fe8fd6 JL |
42847 | "(@pxref{Base Services, @code{nscd-service}})." |
42848 | msgstr "" | |
42849 | ||
42850 | #. type: item | |
39764ef8 | 42851 | #: doc/guix.texi:19955 |
b9fe8fd6 JL |
42852 | #, no-wrap |
42853 | msgid "reaction" | |
42854 | msgstr "" | |
42855 | ||
42856 | #. type: table | |
39764ef8 | 42857 | #: doc/guix.texi:19959 |
b9fe8fd6 JL |
42858 | msgid "" |
42859 | "An action specified using the @code{lookup-specification} macro " | |
42860 | "(@pxref{Actions in the NSS configuration,,, libc, The GNU C Library " | |
42861 | "Reference Manual}). For example:" | |
42862 | msgstr "" | |
42863 | ||
42864 | #. type: example | |
39764ef8 | 42865 | #: doc/guix.texi:19963 |
b9fe8fd6 JL |
42866 | #, no-wrap |
42867 | msgid "" | |
42868 | "(lookup-specification (unavailable => continue)\n" | |
42869 | " (success => return))\n" | |
42870 | msgstr "" | |
42871 | ||
42872 | #. type: Plain text | |
39764ef8 | 42873 | #: doc/guix.texi:19977 |
b9fe8fd6 JL |
42874 | msgid "" |
42875 | "For bootstrapping purposes, the Linux-Libre kernel is passed an @dfn{initial " | |
42876 | "RAM disk}, or @dfn{initrd}. An initrd contains a temporary root file system " | |
42877 | "as well as an initialization script. The latter is responsible for mounting " | |
42878 | "the real root file system, and for loading any kernel modules that may be " | |
42879 | "needed to achieve that." | |
42880 | msgstr "" | |
42881 | ||
42882 | #. type: Plain text | |
39764ef8 | 42883 | #: doc/guix.texi:19986 |
b9fe8fd6 JL |
42884 | msgid "" |
42885 | "The @code{initrd-modules} field of an @code{operating-system} declaration " | |
42886 | "allows you to specify Linux-libre kernel modules that must be available in " | |
42887 | "the initrd. In particular, this is where you would list modules needed to " | |
42888 | "actually drive the hard disk where your root partition is---although the " | |
42889 | "default value of @code{initrd-modules} should cover most use cases. For " | |
42890 | "example, assuming you need the @code{megaraid_sas} module in addition to the " | |
42891 | "default modules to be able to access your root file system, you would write:" | |
42892 | msgstr "" | |
42893 | ||
42894 | #. type: example | |
39764ef8 | 42895 | #: doc/guix.texi:19991 |
b9fe8fd6 JL |
42896 | #, no-wrap |
42897 | msgid "" | |
42898 | "(operating-system\n" | |
42899 | " ;; @dots{}\n" | |
42900 | " (initrd-modules (cons \"megaraid_sas\" %base-initrd-modules)))\n" | |
42901 | msgstr "" | |
42902 | ||
42903 | #. type: defvr | |
39764ef8 | 42904 | #: doc/guix.texi:19993 |
b9fe8fd6 JL |
42905 | #, no-wrap |
42906 | msgid "{Scheme Variable} %base-initrd-modules" | |
42907 | msgstr "" | |
42908 | ||
42909 | #. type: defvr | |
39764ef8 | 42910 | #: doc/guix.texi:19995 |
b9fe8fd6 JL |
42911 | msgid "This is the list of kernel modules included in the initrd by default." |
42912 | msgstr "" | |
42913 | ||
42914 | #. type: Plain text | |
39764ef8 | 42915 | #: doc/guix.texi:20003 |
b9fe8fd6 JL |
42916 | msgid "" |
42917 | "Furthermore, if you need lower-level customization, the @code{initrd} field " | |
42918 | "of an @code{operating-system} declaration allows you to specify which initrd " | |
42919 | "you would like to use. The @code{(gnu system linux-initrd)} module provides " | |
42920 | "three ways to build an initrd: the high-level @code{base-initrd} procedure " | |
39764ef8 | 42921 | "and the low-level @code{raw-initrd} and @code{expression->initrd} procedures." |
b9fe8fd6 JL |
42922 | msgstr "" |
42923 | ||
42924 | #. type: Plain text | |
39764ef8 | 42925 | #: doc/guix.texi:20008 |
b9fe8fd6 JL |
42926 | msgid "" |
42927 | "The @code{base-initrd} procedure is intended to cover most common uses. For " | |
42928 | "example, if you want to add a bunch of kernel modules to be loaded at boot " | |
42929 | "time, you can define the @code{initrd} field of the operating system " | |
42930 | "declaration like this:" | |
42931 | msgstr "" | |
42932 | ||
42933 | #. type: example | |
39764ef8 | 42934 | #: doc/guix.texi:20016 |
b9fe8fd6 JL |
42935 | #, no-wrap |
42936 | msgid "" | |
42937 | "(initrd (lambda (file-systems . rest)\n" | |
42938 | " ;; Create a standard initrd but set up networking\n" | |
42939 | " ;; with the parameters QEMU expects by default.\n" | |
42940 | " (apply base-initrd file-systems\n" | |
42941 | " #:qemu-networking? #t\n" | |
42942 | " rest)))\n" | |
42943 | msgstr "" | |
42944 | ||
42945 | #. type: Plain text | |
39764ef8 | 42946 | #: doc/guix.texi:20021 |
b9fe8fd6 JL |
42947 | msgid "" |
42948 | "The @code{base-initrd} procedure also handles common use cases that involves " | |
42949 | "using the system as a QEMU guest, or as a ``live'' system with volatile root " | |
42950 | "file system." | |
42951 | msgstr "" | |
42952 | ||
42953 | #. type: Plain text | |
39764ef8 | 42954 | #: doc/guix.texi:20028 |
b9fe8fd6 JL |
42955 | msgid "" |
42956 | "The @code{base-initrd} procedure is built from @code{raw-initrd} procedure. " | |
42957 | "Unlike @code{base-initrd}, @code{raw-initrd} doesn't do anything high-level, " | |
42958 | "such as trying to guess which kernel modules and packages should be included " | |
42959 | "to the initrd. An example use of @code{raw-initrd} is when a user has a " | |
42960 | "custom Linux kernel configuration and default kernel modules included by " | |
42961 | "@code{base-initrd} are not available." | |
42962 | msgstr "" | |
42963 | ||
42964 | #. type: Plain text | |
39764ef8 | 42965 | #: doc/guix.texi:20033 |
b9fe8fd6 JL |
42966 | msgid "" |
42967 | "The initial RAM disk produced by @code{base-initrd} or @code{raw-initrd} " | |
42968 | "honors several options passed on the Linux kernel command line (that is, " | |
39764ef8 JL |
42969 | "arguments passed @i{via} the @code{linux} command of GRUB, or the @code{-" |
42970 | "append} option of QEMU), notably:" | |
b9fe8fd6 JL |
42971 | msgstr "" |
42972 | ||
42973 | #. type: item | |
39764ef8 | 42974 | #: doc/guix.texi:20035 |
b9fe8fd6 JL |
42975 | #, no-wrap |
42976 | msgid "--load=@var{boot}" | |
42977 | msgstr "" | |
42978 | ||
42979 | #. type: table | |
39764ef8 | 42980 | #: doc/guix.texi:20038 |
b9fe8fd6 JL |
42981 | msgid "" |
42982 | "Tell the initial RAM disk to load @var{boot}, a file containing a Scheme " | |
42983 | "program, once it has mounted the root file system." | |
42984 | msgstr "" | |
42985 | ||
42986 | #. type: table | |
39764ef8 | 42987 | #: doc/guix.texi:20042 |
b9fe8fd6 JL |
42988 | msgid "" |
42989 | "GuixSD uses this option to yield control to a boot program that runs the " | |
42990 | "service activation programs and then spawns the GNU@tie{}Shepherd, the " | |
42991 | "initialization system." | |
42992 | msgstr "" | |
42993 | ||
42994 | #. type: item | |
39764ef8 | 42995 | #: doc/guix.texi:20043 |
b9fe8fd6 JL |
42996 | #, no-wrap |
42997 | msgid "--root=@var{root}" | |
42998 | msgstr "" | |
42999 | ||
43000 | #. type: table | |
39764ef8 | 43001 | #: doc/guix.texi:20047 |
b9fe8fd6 JL |
43002 | msgid "" |
43003 | "Mount @var{root} as the root file system. @var{root} can be a device name " | |
43004 | "like @code{/dev/sda1}, a file system label, or a file system UUID." | |
43005 | msgstr "" | |
43006 | ||
43007 | #. type: table | |
39764ef8 | 43008 | #: doc/guix.texi:20051 |
b9fe8fd6 JL |
43009 | msgid "" |
43010 | "Have @file{/run/booted-system} and @file{/run/current-system} point to " | |
43011 | "@var{system}." | |
43012 | msgstr "" | |
43013 | ||
43014 | #. type: item | |
39764ef8 | 43015 | #: doc/guix.texi:20052 |
b9fe8fd6 JL |
43016 | #, no-wrap |
43017 | msgid "modprobe.blacklist=@var{modules}@dots{}" | |
43018 | msgstr "" | |
43019 | ||
43020 | #. type: cindex | |
39764ef8 | 43021 | #: doc/guix.texi:20053 |
b9fe8fd6 JL |
43022 | #, no-wrap |
43023 | msgid "module, black-listing" | |
43024 | msgstr "" | |
43025 | ||
43026 | #. type: cindex | |
39764ef8 | 43027 | #: doc/guix.texi:20054 |
b9fe8fd6 JL |
43028 | #, no-wrap |
43029 | msgid "black list, of kernel modules" | |
43030 | msgstr "" | |
43031 | ||
43032 | #. type: table | |
39764ef8 | 43033 | #: doc/guix.texi:20059 |
b9fe8fd6 JL |
43034 | msgid "" |
43035 | "Instruct the initial RAM disk as well as the @command{modprobe} command " | |
43036 | "(from the kmod package) to refuse to load @var{modules}. @var{modules} must " | |
43037 | "be a comma-separated list of module names---e.g., @code{usbkbd,9pnet}." | |
43038 | msgstr "" | |
43039 | ||
43040 | #. type: item | |
39764ef8 | 43041 | #: doc/guix.texi:20060 |
b9fe8fd6 JL |
43042 | #, no-wrap |
43043 | msgid "--repl" | |
43044 | msgstr "" | |
43045 | ||
43046 | #. type: table | |
39764ef8 | 43047 | #: doc/guix.texi:20066 |
b9fe8fd6 JL |
43048 | msgid "" |
43049 | "Start a read-eval-print loop (REPL) from the initial RAM disk before it " | |
43050 | "tries to load kernel modules and to mount the root file system. Our " | |
43051 | "marketing team calls it @dfn{boot-to-Guile}. The Schemer in you will love " | |
43052 | "it. @xref{Using Guile Interactively,,, guile, GNU Guile Reference Manual}, " | |
43053 | "for more information on Guile's REPL." | |
43054 | msgstr "" | |
43055 | ||
43056 | #. type: Plain text | |
39764ef8 | 43057 | #: doc/guix.texi:20072 |
b9fe8fd6 JL |
43058 | msgid "" |
43059 | "Now that you know all the features that initial RAM disks produced by " | |
43060 | "@code{base-initrd} and @code{raw-initrd} provide, here is how to use it and " | |
43061 | "customize it further." | |
43062 | msgstr "" | |
43063 | ||
43064 | #. type: deffn | |
39764ef8 | 43065 | #: doc/guix.texi:20075 |
b9fe8fd6 JL |
43066 | #, no-wrap |
43067 | msgid "{Monadic Procedure} raw-initrd @var{file-systems} @" | |
43068 | msgstr "" | |
43069 | ||
43070 | #. type: deffn | |
39764ef8 | 43071 | #: doc/guix.texi:20087 |
b9fe8fd6 | 43072 | msgid "" |
39764ef8 JL |
43073 | "[#:linux-modules '()] [#:mapped-devices '()] @ [#:helper-packages '()] [#:" |
43074 | "qemu-networking? #f] [#:volatile-root? #f] Return a monadic derivation that " | |
43075 | "builds a raw initrd. @var{file-systems} is a list of file systems to be " | |
43076 | "mounted by the initrd, possibly in addition to the root file system " | |
b9fe8fd6 JL |
43077 | "specified on the kernel command line via @code{--root}. @var{linux-modules} " |
43078 | "is a list of kernel modules to be loaded at boot time. @var{mapped-devices} " | |
43079 | "is a list of device mappings to realize before @var{file-systems} are " | |
43080 | "mounted (@pxref{Mapped Devices}). @var{helper-packages} is a list of " | |
43081 | "packages to be copied in the initrd. It may include @code{e2fsck/static} or " | |
43082 | "other packages needed by the initrd to check the root file system." | |
43083 | msgstr "" | |
43084 | ||
43085 | #. type: deffn | |
39764ef8 | 43086 | #: doc/guix.texi:20091 |
b9fe8fd6 JL |
43087 | msgid "" |
43088 | "When @var{qemu-networking?} is true, set up networking with the standard " | |
43089 | "QEMU parameters. When @var{virtio?} is true, load additional modules so " | |
43090 | "that the initrd can be used as a QEMU guest with para-virtualized I/O " | |
43091 | "drivers." | |
43092 | msgstr "" | |
43093 | ||
43094 | #. type: deffn | |
39764ef8 | 43095 | #: doc/guix.texi:20094 |
b9fe8fd6 JL |
43096 | msgid "" |
43097 | "When @var{volatile-root?} is true, the root file system is writable but any " | |
43098 | "changes to it are lost." | |
43099 | msgstr "" | |
43100 | ||
43101 | #. type: deffn | |
39764ef8 | 43102 | #: doc/guix.texi:20096 |
b9fe8fd6 JL |
43103 | #, no-wrap |
43104 | msgid "{Monadic Procedure} base-initrd @var{file-systems} @" | |
43105 | msgstr "" | |
43106 | ||
43107 | #. type: deffn | |
39764ef8 | 43108 | #: doc/guix.texi:20104 |
b9fe8fd6 | 43109 | msgid "" |
39764ef8 JL |
43110 | "[#:mapped-devices '()] [#:qemu-networking? #f] [#:volatile-root? #f]@ [#:" |
43111 | "linux-modules '()] Return a monadic derivation that builds a generic initrd, " | |
43112 | "with kernel modules taken from @var{linux}. @var{file-systems} is a list of " | |
43113 | "file-systems to be mounted by the initrd, possibly in addition to the root " | |
43114 | "file system specified on the kernel command line via @code{--root}. " | |
43115 | "@var{mapped-devices} is a list of device mappings to realize before " | |
43116 | "@var{file-systems} are mounted." | |
b9fe8fd6 JL |
43117 | msgstr "" |
43118 | ||
43119 | #. type: deffn | |
39764ef8 | 43120 | #: doc/guix.texi:20106 |
b9fe8fd6 | 43121 | msgid "" |
39764ef8 JL |
43122 | "@var{qemu-networking?} and @var{volatile-root?} behaves as in @code{raw-" |
43123 | "initrd}." | |
b9fe8fd6 JL |
43124 | msgstr "" |
43125 | ||
43126 | #. type: deffn | |
39764ef8 | 43127 | #: doc/guix.texi:20111 |
b9fe8fd6 JL |
43128 | msgid "" |
43129 | "The initrd is automatically populated with all the kernel modules necessary " | |
43130 | "for @var{file-systems} and for the given options. Additional kernel modules " | |
43131 | "can be listed in @var{linux-modules}. They will be added to the initrd, and " | |
43132 | "loaded at boot time in the order in which they appear." | |
43133 | msgstr "" | |
43134 | ||
43135 | #. type: Plain text | |
39764ef8 | 43136 | #: doc/guix.texi:20118 |
b9fe8fd6 JL |
43137 | msgid "" |
43138 | "Needless to say, the initrds we produce and use embed a statically-linked " | |
43139 | "Guile, and the initialization program is a Guile program. That gives a lot " | |
43140 | "of flexibility. The @code{expression->initrd} procedure builds such an " | |
43141 | "initrd, given the program to run in that initrd." | |
43142 | msgstr "" | |
43143 | ||
43144 | #. type: deffn | |
39764ef8 | 43145 | #: doc/guix.texi:20119 |
b9fe8fd6 JL |
43146 | #, no-wrap |
43147 | msgid "{Monadic Procedure} expression->initrd @var{exp} @" | |
43148 | msgstr "" | |
43149 | ||
43150 | #. type: deffn | |
39764ef8 | 43151 | #: doc/guix.texi:20125 |
b9fe8fd6 JL |
43152 | msgid "" |
43153 | "[#:guile %guile-static-stripped] [#:name \"guile-initrd\"] Return a " | |
43154 | "derivation that builds a Linux initrd (a gzipped cpio archive) containing " | |
43155 | "@var{guile} and that evaluates @var{exp}, a G-expression, upon booting. All " | |
43156 | "the derivations referenced by @var{exp} are automatically copied to the " | |
43157 | "initrd." | |
43158 | msgstr "" | |
43159 | ||
43160 | #. type: cindex | |
39764ef8 | 43161 | #: doc/guix.texi:20131 |
b9fe8fd6 JL |
43162 | #, no-wrap |
43163 | msgid "boot loader" | |
43164 | msgstr "" | |
43165 | ||
43166 | #. type: Plain text | |
39764ef8 | 43167 | #: doc/guix.texi:20138 |
b9fe8fd6 JL |
43168 | msgid "" |
43169 | "The operating system supports multiple bootloaders. The bootloader is " | |
43170 | "configured using @code{bootloader-configuration} declaration. All the " | |
43171 | "fields of this structure are bootloader agnostic except for one field, " | |
43172 | "@code{bootloader} that indicates the bootloader to be configured and " | |
43173 | "installed." | |
43174 | msgstr "" | |
43175 | ||
43176 | #. type: Plain text | |
39764ef8 | 43177 | #: doc/guix.texi:20143 |
b9fe8fd6 | 43178 | msgid "" |
39764ef8 JL |
43179 | "Some of the bootloaders do not honor every field of @code{bootloader-" |
43180 | "configuration}. For instance, the extlinux bootloader does not support " | |
43181 | "themes and thus ignores the @code{theme} field." | |
b9fe8fd6 JL |
43182 | msgstr "" |
43183 | ||
43184 | #. type: deftp | |
39764ef8 | 43185 | #: doc/guix.texi:20144 |
b9fe8fd6 JL |
43186 | #, no-wrap |
43187 | msgid "{Data Type} bootloader-configuration" | |
43188 | msgstr "" | |
43189 | ||
43190 | #. type: deftp | |
39764ef8 | 43191 | #: doc/guix.texi:20146 |
b9fe8fd6 JL |
43192 | msgid "The type of a bootloader configuration declaration." |
43193 | msgstr "" | |
43194 | ||
43195 | #. type: cindex | |
39764ef8 | 43196 | #: doc/guix.texi:20150 |
b9fe8fd6 JL |
43197 | #, no-wrap |
43198 | msgid "EFI, bootloader" | |
43199 | msgstr "" | |
43200 | ||
43201 | #. type: cindex | |
39764ef8 | 43202 | #: doc/guix.texi:20151 |
b9fe8fd6 JL |
43203 | #, no-wrap |
43204 | msgid "UEFI, bootloader" | |
43205 | msgstr "" | |
43206 | ||
43207 | #. type: cindex | |
39764ef8 | 43208 | #: doc/guix.texi:20152 |
b9fe8fd6 JL |
43209 | #, no-wrap |
43210 | msgid "BIOS, bootloader" | |
43211 | msgstr "" | |
43212 | ||
43213 | #. type: table | |
39764ef8 | 43214 | #: doc/guix.texi:20158 |
b9fe8fd6 | 43215 | msgid "" |
39764ef8 JL |
43216 | "The bootloader to use, as a @code{bootloader} object. For now @code{grub-" |
43217 | "bootloader}, @code{grub-efi-bootloader}, @code{extlinux-bootloader} and " | |
43218 | "@code{u-boot-bootloader} are supported. @code{grub-efi-bootloader} allows " | |
43219 | "to boot on modern systems using the @dfn{Unified Extensible Firmware " | |
43220 | "Interface} (UEFI)." | |
b9fe8fd6 JL |
43221 | msgstr "" |
43222 | ||
43223 | #. type: table | |
39764ef8 | 43224 | #: doc/guix.texi:20161 |
b9fe8fd6 JL |
43225 | msgid "" |
43226 | "Available bootloaders are described in @code{(gnu bootloader @dots{})} " | |
43227 | "modules." | |
43228 | msgstr "" | |
43229 | ||
43230 | #. type: table | |
39764ef8 | 43231 | #: doc/guix.texi:20171 |
b9fe8fd6 JL |
43232 | msgid "" |
43233 | "This is a string denoting the target onto which to install the bootloader. " | |
43234 | "The exact interpretation depends on the bootloader in question; for " | |
43235 | "@code{grub-bootloader}, for example, it should be a device name understood " | |
43236 | "by the bootloader @command{installer} command, such as @code{/dev/sda} or " | |
43237 | "@code{(hd0)} (for GRUB, @pxref{Invoking grub-install,,, grub, GNU GRUB " | |
43238 | "Manual}). For @code{grub-efi-bootloader}, it should be the path to a " | |
43239 | "mounted EFI file system." | |
43240 | msgstr "" | |
43241 | ||
43242 | #. type: item | |
39764ef8 | 43243 | #: doc/guix.texi:20172 |
b9fe8fd6 JL |
43244 | #, no-wrap |
43245 | msgid "@code{menu-entries} (default: @code{()})" | |
43246 | msgstr "" | |
43247 | ||
43248 | #. type: table | |
39764ef8 | 43249 | #: doc/guix.texi:20176 |
b9fe8fd6 JL |
43250 | msgid "" |
43251 | "A possibly empty list of @code{menu-entry} objects (see below), denoting " | |
43252 | "entries to appear in the bootloader menu, in addition to the current system " | |
43253 | "entry and the entry pointing to previous system generations." | |
43254 | msgstr "" | |
43255 | ||
43256 | #. type: item | |
39764ef8 | 43257 | #: doc/guix.texi:20177 |
b9fe8fd6 JL |
43258 | #, no-wrap |
43259 | msgid "@code{default-entry} (default: @code{0})" | |
43260 | msgstr "" | |
43261 | ||
43262 | #. type: table | |
39764ef8 | 43263 | #: doc/guix.texi:20180 |
b9fe8fd6 JL |
43264 | msgid "" |
43265 | "The index of the default boot menu entry. Index 0 is for the entry of the " | |
43266 | "current system." | |
43267 | msgstr "" | |
43268 | ||
43269 | #. type: item | |
39764ef8 | 43270 | #: doc/guix.texi:20181 |
b9fe8fd6 JL |
43271 | #, no-wrap |
43272 | msgid "@code{timeout} (default: @code{5})" | |
43273 | msgstr "" | |
43274 | ||
43275 | #. type: table | |
39764ef8 | 43276 | #: doc/guix.texi:20184 |
b9fe8fd6 JL |
43277 | msgid "" |
43278 | "The number of seconds to wait for keyboard input before booting. Set to 0 " | |
43279 | "to boot immediately, and to -1 to wait indefinitely." | |
43280 | msgstr "" | |
43281 | ||
43282 | #. type: item | |
39764ef8 | 43283 | #: doc/guix.texi:20185 |
b9fe8fd6 JL |
43284 | #, no-wrap |
43285 | msgid "@code{theme} (default: @var{#f})" | |
43286 | msgstr "" | |
43287 | ||
43288 | #. type: table | |
39764ef8 | 43289 | #: doc/guix.texi:20189 |
b9fe8fd6 JL |
43290 | msgid "" |
43291 | "The bootloader theme object describing the theme to use. If no theme is " | |
43292 | "provided, some bootloaders might use a default theme, that's true for GRUB." | |
43293 | msgstr "" | |
43294 | ||
43295 | #. type: item | |
39764ef8 | 43296 | #: doc/guix.texi:20190 |
b9fe8fd6 JL |
43297 | #, no-wrap |
43298 | msgid "@code{terminal-outputs} (default: @code{'gfxterm})" | |
43299 | msgstr "" | |
43300 | ||
43301 | #. type: table | |
39764ef8 | 43302 | #: doc/guix.texi:20197 |
b9fe8fd6 JL |
43303 | msgid "" |
43304 | "The output terminals used for the bootloader boot menu, as a list of " | |
43305 | "symbols. GRUB accepts the values: @code{console}, @code{serial}, " | |
43306 | "@code{serial_@{0-3@}}, @code{gfxterm}, @code{vga_text}, @code{mda_text}, " | |
43307 | "@code{morse}, and @code{pkmodem}. This field corresponds to the GRUB " | |
43308 | "variable GRUB_TERMINAL_OUTPUT (@pxref{Simple configuration,,, grub,GNU GRUB " | |
43309 | "manual})." | |
43310 | msgstr "" | |
43311 | ||
43312 | #. type: item | |
39764ef8 | 43313 | #: doc/guix.texi:20198 |
b9fe8fd6 JL |
43314 | #, no-wrap |
43315 | msgid "@code{terminal-inputs} (default: @code{'()})" | |
43316 | msgstr "" | |
43317 | ||
43318 | #. type: table | |
39764ef8 | 43319 | #: doc/guix.texi:20206 |
b9fe8fd6 JL |
43320 | msgid "" |
43321 | "The input terminals used for the bootloader boot menu, as a list of " | |
43322 | "symbols. For GRUB, the default is the native platform terminal as " | |
43323 | "determined at run-time. GRUB accepts the values: @code{console}, " | |
43324 | "@code{serial}, @code{serial_@{0-3@}}, @code{at_keyboard}, and " | |
43325 | "@code{usb_keyboard}. This field corresponds to the GRUB variable " | |
43326 | "GRUB_TERMINAL_INPUT (@pxref{Simple configuration,,, grub,GNU GRUB manual})." | |
43327 | msgstr "" | |
43328 | ||
43329 | #. type: item | |
39764ef8 | 43330 | #: doc/guix.texi:20207 |
b9fe8fd6 JL |
43331 | #, no-wrap |
43332 | msgid "@code{serial-unit} (default: @code{#f})" | |
43333 | msgstr "" | |
43334 | ||
43335 | #. type: table | |
39764ef8 | 43336 | #: doc/guix.texi:20211 |
b9fe8fd6 JL |
43337 | msgid "" |
43338 | "The serial unit used by the bootloader, as an integer from 0 to 3. For " | |
43339 | "GRUB, it is chosen at run-time; currently GRUB chooses 0, which corresponds " | |
43340 | "to COM1 (@pxref{Serial terminal,,, grub,GNU GRUB manual})." | |
43341 | msgstr "" | |
43342 | ||
43343 | #. type: item | |
39764ef8 | 43344 | #: doc/guix.texi:20212 |
b9fe8fd6 JL |
43345 | #, no-wrap |
43346 | msgid "@code{serial-speed} (default: @code{#f})" | |
43347 | msgstr "" | |
43348 | ||
43349 | #. type: table | |
39764ef8 | 43350 | #: doc/guix.texi:20216 |
b9fe8fd6 JL |
43351 | msgid "" |
43352 | "The speed of the serial interface, as an integer. For GRUB, the default " | |
43353 | "value is chosen at run-time; currently GRUB chooses 9600@tie{}bps " | |
43354 | "(@pxref{Serial terminal,,, grub,GNU GRUB manual})." | |
43355 | msgstr "" | |
43356 | ||
43357 | #. type: cindex | |
39764ef8 | 43358 | #: doc/guix.texi:20220 |
b9fe8fd6 JL |
43359 | #, no-wrap |
43360 | msgid "dual boot" | |
43361 | msgstr "" | |
43362 | ||
43363 | #. type: cindex | |
39764ef8 | 43364 | #: doc/guix.texi:20221 |
b9fe8fd6 JL |
43365 | #, no-wrap |
43366 | msgid "boot menu" | |
43367 | msgstr "" | |
43368 | ||
43369 | #. type: Plain text | |
39764ef8 | 43370 | #: doc/guix.texi:20227 |
b9fe8fd6 | 43371 | msgid "" |
39764ef8 JL |
43372 | "Should you want to list additional boot menu entries @i{via} the @code{menu-" |
43373 | "entries} field above, you will need to create them with the @code{menu-" | |
43374 | "entry} form. For example, imagine you want to be able to boot another " | |
43375 | "distro (hard to imagine!), you can define a menu entry along these lines:" | |
b9fe8fd6 JL |
43376 | msgstr "" |
43377 | ||
43378 | #. type: example | |
39764ef8 | 43379 | #: doc/guix.texi:20234 |
b9fe8fd6 JL |
43380 | #, no-wrap |
43381 | msgid "" | |
43382 | "(menu-entry\n" | |
43383 | " (label \"The Other Distro\")\n" | |
43384 | " (linux \"/boot/old/vmlinux-2.6.32\")\n" | |
43385 | " (linux-arguments '(\"root=/dev/sda2\"))\n" | |
43386 | " (initrd \"/boot/old/initrd\"))\n" | |
43387 | msgstr "" | |
43388 | ||
43389 | #. type: Plain text | |
39764ef8 | 43390 | #: doc/guix.texi:20237 |
b9fe8fd6 JL |
43391 | msgid "Details below." |
43392 | msgstr "" | |
43393 | ||
43394 | #. type: deftp | |
39764ef8 | 43395 | #: doc/guix.texi:20238 |
b9fe8fd6 JL |
43396 | #, no-wrap |
43397 | msgid "{Data Type} menu-entry" | |
43398 | msgstr "" | |
43399 | ||
43400 | #. type: deftp | |
39764ef8 | 43401 | #: doc/guix.texi:20240 |
b9fe8fd6 JL |
43402 | msgid "The type of an entry in the bootloader menu." |
43403 | msgstr "" | |
43404 | ||
43405 | #. type: code{#1} | |
39764ef8 | 43406 | #: doc/guix.texi:20243 |
b9fe8fd6 JL |
43407 | #, no-wrap |
43408 | msgid "label" | |
43409 | msgstr "" | |
43410 | ||
43411 | #. type: table | |
39764ef8 | 43412 | #: doc/guix.texi:20245 |
b9fe8fd6 JL |
43413 | msgid "The label to show in the menu---e.g., @code{\"GNU\"}." |
43414 | msgstr "" | |
43415 | ||
43416 | #. type: code{#1} | |
39764ef8 | 43417 | #: doc/guix.texi:20246 |
b9fe8fd6 JL |
43418 | #, no-wrap |
43419 | msgid "linux" | |
43420 | msgstr "" | |
43421 | ||
43422 | #. type: table | |
39764ef8 | 43423 | #: doc/guix.texi:20248 |
b9fe8fd6 JL |
43424 | msgid "The Linux kernel image to boot, for example:" |
43425 | msgstr "" | |
43426 | ||
43427 | #. type: example | |
39764ef8 | 43428 | #: doc/guix.texi:20251 |
b9fe8fd6 JL |
43429 | #, no-wrap |
43430 | msgid "(file-append linux-libre \"/bzImage\")\n" | |
43431 | msgstr "" | |
43432 | ||
43433 | #. type: table | |
39764ef8 | 43434 | #: doc/guix.texi:20256 |
b9fe8fd6 JL |
43435 | msgid "" |
43436 | "For GRUB, it is also possible to specify a device explicitly in the file " | |
43437 | "path using GRUB's device naming convention (@pxref{Naming convention,,, " | |
43438 | "grub, GNU GRUB manual}), for example:" | |
43439 | msgstr "" | |
43440 | ||
43441 | #. type: example | |
39764ef8 | 43442 | #: doc/guix.texi:20259 |
b9fe8fd6 JL |
43443 | #, no-wrap |
43444 | msgid "\"(hd0,msdos1)/boot/vmlinuz\"\n" | |
43445 | msgstr "" | |
43446 | ||
43447 | #. type: table | |
39764ef8 | 43448 | #: doc/guix.texi:20263 |
b9fe8fd6 JL |
43449 | msgid "" |
43450 | "If the device is specified explicitly as above, then the @code{device} field " | |
43451 | "is ignored entirely." | |
43452 | msgstr "" | |
43453 | ||
43454 | #. type: item | |
39764ef8 | 43455 | #: doc/guix.texi:20264 |
b9fe8fd6 JL |
43456 | #, no-wrap |
43457 | msgid "@code{linux-arguments} (default: @code{()})" | |
43458 | msgstr "" | |
43459 | ||
43460 | #. type: table | |
39764ef8 | 43461 | #: doc/guix.texi:20267 |
b9fe8fd6 JL |
43462 | msgid "" |
43463 | "The list of extra Linux kernel command-line arguments---e.g., " | |
43464 | "@code{(\"console=ttyS0\")}." | |
43465 | msgstr "" | |
43466 | ||
43467 | #. type: table | |
39764ef8 | 43468 | #: doc/guix.texi:20271 |
b9fe8fd6 JL |
43469 | msgid "" |
43470 | "A G-Expression or string denoting the file name of the initial RAM disk to " | |
43471 | "use (@pxref{G-Expressions})." | |
43472 | msgstr "" | |
43473 | ||
43474 | #. type: item | |
39764ef8 | 43475 | #: doc/guix.texi:20271 |
b9fe8fd6 JL |
43476 | #, no-wrap |
43477 | msgid "@code{device} (default: @code{#f})" | |
43478 | msgstr "" | |
43479 | ||
43480 | #. type: table | |
39764ef8 | 43481 | #: doc/guix.texi:20274 |
b9fe8fd6 JL |
43482 | msgid "" |
43483 | "The device where the kernel and initrd are to be found---i.e., for GRUB, " | |
43484 | "@dfn{root} for this menu entry (@pxref{root,,, grub, GNU GRUB manual})." | |
43485 | msgstr "" | |
43486 | ||
43487 | #. type: table | |
39764ef8 | 43488 | #: doc/guix.texi:20280 |
b9fe8fd6 JL |
43489 | msgid "" |
43490 | "This may be a file system label (a string), a file system UUID (a " | |
43491 | "bytevector, @pxref{File Systems}), or @code{#f}, in which case the " | |
43492 | "bootloader will search the device containing the file specified by the " | |
43493 | "@code{linux} field (@pxref{search,,, grub, GNU GRUB manual}). It must " | |
43494 | "@emph{not} be an OS device name such as @file{/dev/sda1}." | |
43495 | msgstr "" | |
43496 | ||
43497 | #. type: Plain text | |
39764ef8 | 43498 | #: doc/guix.texi:20287 |
b9fe8fd6 JL |
43499 | msgid "" |
43500 | "Fow now only GRUB has theme support. GRUB themes are created using the " | |
43501 | "@code{grub-theme} form, which is not documented yet." | |
43502 | msgstr "" | |
43503 | ||
43504 | #. type: defvr | |
39764ef8 | 43505 | #: doc/guix.texi:20292 |
b9fe8fd6 JL |
43506 | msgid "" |
43507 | "This is the default GRUB theme used by the operating system if no " | |
43508 | "@code{theme} field is specified in @code{bootloader-configuration} record." | |
43509 | msgstr "" | |
43510 | ||
43511 | #. type: defvr | |
39764ef8 JL |
43512 | #: doc/guix.texi:20295 |
43513 | msgid "" | |
43514 | "It comes with a fancy background image displaying the GNU and Guix logos." | |
b9fe8fd6 JL |
43515 | msgstr "" |
43516 | ||
43517 | #. type: subsection | |
39764ef8 | 43518 | #: doc/guix.texi:20299 |
b9fe8fd6 JL |
43519 | #, no-wrap |
43520 | msgid "Invoking @code{guix system}" | |
43521 | msgstr "" | |
43522 | ||
43523 | #. type: Plain text | |
39764ef8 | 43524 | #: doc/guix.texi:20304 |
b9fe8fd6 JL |
43525 | msgid "" |
43526 | "Once you have written an operating system declaration as seen in the " | |
43527 | "previous section, it can be @dfn{instantiated} using the @command{guix " | |
43528 | "system} command. The synopsis is:" | |
43529 | msgstr "" | |
43530 | ||
43531 | #. type: example | |
39764ef8 | 43532 | #: doc/guix.texi:20307 |
b9fe8fd6 JL |
43533 | #, no-wrap |
43534 | msgid "guix system @var{options}@dots{} @var{action} @var{file}\n" | |
43535 | msgstr "" | |
43536 | ||
43537 | #. type: Plain text | |
39764ef8 | 43538 | #: doc/guix.texi:20313 |
b9fe8fd6 JL |
43539 | msgid "" |
43540 | "@var{file} must be the name of a file containing an @code{operating-system} " | |
43541 | "declaration. @var{action} specifies how the operating system is " | |
43542 | "instantiated. Currently the following values are supported:" | |
43543 | msgstr "" | |
43544 | ||
43545 | #. type: item | |
39764ef8 | 43546 | #: doc/guix.texi:20315 |
b9fe8fd6 JL |
43547 | #, no-wrap |
43548 | msgid "search" | |
43549 | msgstr "" | |
43550 | ||
43551 | #. type: table | |
39764ef8 | 43552 | #: doc/guix.texi:20318 |
b9fe8fd6 JL |
43553 | msgid "" |
43554 | "Display available service type definitions that match the given regular " | |
43555 | "expressions, sorted by relevance:" | |
43556 | msgstr "" | |
43557 | ||
43558 | #. type: example | |
39764ef8 | 43559 | #: doc/guix.texi:20330 |
b9fe8fd6 JL |
43560 | #, no-wrap |
43561 | msgid "" | |
43562 | "$ guix system search console font\n" | |
43563 | "name: console-fonts\n" | |
43564 | "location: gnu/services/base.scm:729:2\n" | |
43565 | "extends: shepherd-root\n" | |
43566 | "description: Install the given fonts on the specified ttys (fonts are\n" | |
43567 | "+ per virtual console on GNU/Linux). The value of this service is a list\n" | |
43568 | "+ of tty/font pairs like:\n" | |
43569 | "+ \n" | |
43570 | "+ '((\"tty1\" . \"LatGrkCyr-8x16\"))\n" | |
43571 | "relevance: 20\n" | |
43572 | "\n" | |
43573 | msgstr "" | |
43574 | ||
43575 | #. type: example | |
39764ef8 | 43576 | #: doc/guix.texi:20336 |
b9fe8fd6 JL |
43577 | #, no-wrap |
43578 | msgid "" | |
43579 | "name: mingetty\n" | |
43580 | "location: gnu/services/base.scm:1048:2\n" | |
43581 | "extends: shepherd-root\n" | |
43582 | "description: Provide console login using the `mingetty' program.\n" | |
43583 | "relevance: 2\n" | |
43584 | "\n" | |
43585 | msgstr "" | |
43586 | ||
43587 | #. type: example | |
39764ef8 | 43588 | #: doc/guix.texi:20343 |
b9fe8fd6 JL |
43589 | #, no-wrap |
43590 | msgid "" | |
43591 | "name: login\n" | |
43592 | "location: gnu/services/base.scm:775:2\n" | |
43593 | "extends: pam\n" | |
43594 | "description: Provide a console log-in service as specified by its\n" | |
43595 | "+ configuration value, a `login-configuration' object.\n" | |
43596 | "relevance: 2\n" | |
43597 | "\n" | |
43598 | msgstr "" | |
43599 | ||
43600 | #. type: example | |
39764ef8 | 43601 | #: doc/guix.texi:20345 |
b9fe8fd6 JL |
43602 | #, no-wrap |
43603 | msgid "@dots{}\n" | |
43604 | msgstr "" | |
43605 | ||
43606 | #. type: table | |
39764ef8 | 43607 | #: doc/guix.texi:20350 |
b9fe8fd6 JL |
43608 | msgid "" |
43609 | "As for @command{guix package --search}, the result is written in " | |
43610 | "@code{recutils} format, which makes it easy to filter the output " | |
43611 | "(@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual})." | |
43612 | msgstr "" | |
43613 | ||
43614 | #. type: item | |
39764ef8 | 43615 | #: doc/guix.texi:20351 |
b9fe8fd6 JL |
43616 | #, no-wrap |
43617 | msgid "reconfigure" | |
43618 | msgstr "" | |
43619 | ||
43620 | #. type: table | |
39764ef8 | 43621 | #: doc/guix.texi:20356 |
b9fe8fd6 JL |
43622 | msgid "" |
43623 | "Build the operating system described in @var{file}, activate it, and switch " | |
43624 | "to it@footnote{This action (and the related actions @code{switch-generation} " | |
43625 | "and @code{roll-back}) are usable only on systems already running GuixSD.}." | |
43626 | msgstr "" | |
43627 | ||
43628 | #. type: table | |
39764ef8 | 43629 | #: doc/guix.texi:20363 |
b9fe8fd6 JL |
43630 | msgid "" |
43631 | "This effects all the configuration specified in @var{file}: user accounts, " | |
43632 | "system services, global package list, setuid programs, etc. The command " | |
43633 | "starts system services specified in @var{file} that are not currently " | |
43634 | "running; if a service is currently running, it does not attempt to upgrade " | |
43635 | "it since this would not be possible without stopping it first." | |
43636 | msgstr "" | |
43637 | ||
43638 | #. type: table | |
39764ef8 | 43639 | #: doc/guix.texi:20369 |
b9fe8fd6 JL |
43640 | msgid "" |
43641 | "This command creates a new generation whose number is one greater than the " | |
43642 | "current generation (as reported by @command{guix system list-generations}). " | |
43643 | "If that generation already exists, it will be overwritten. This behavior " | |
43644 | "mirrors that of @command{guix package} (@pxref{Invoking guix package})." | |
43645 | msgstr "" | |
43646 | ||
43647 | #. type: table | |
39764ef8 | 43648 | #: doc/guix.texi:20374 |
b9fe8fd6 JL |
43649 | msgid "" |
43650 | "It also adds a bootloader menu entry for the new OS configuration, ---unless " | |
43651 | "@option{--no-bootloader} is passed. For GRUB, it moves entries for older " | |
43652 | "configurations to a submenu, allowing you to choose an older system " | |
43653 | "generation at boot time should you need it." | |
43654 | msgstr "" | |
43655 | ||
43656 | #. type: quotation | |
39764ef8 | 43657 | #: doc/guix.texi:20382 |
b9fe8fd6 JL |
43658 | msgid "" |
43659 | "It is highly recommended to run @command{guix pull} once before you run " | |
43660 | "@command{guix system reconfigure} for the first time (@pxref{Invoking guix " | |
43661 | "pull}). Failing to do that you would see an older version of Guix once " | |
43662 | "@command{reconfigure} has completed." | |
43663 | msgstr "" | |
43664 | ||
43665 | #. type: item | |
39764ef8 | 43666 | #: doc/guix.texi:20384 |
b9fe8fd6 JL |
43667 | #, no-wrap |
43668 | msgid "switch-generation" | |
43669 | msgstr "" | |
43670 | ||
43671 | #. type: table | |
39764ef8 | 43672 | #: doc/guix.texi:20393 |
b9fe8fd6 JL |
43673 | msgid "" |
43674 | "Switch to an existing system generation. This action atomically switches " | |
43675 | "the system profile to the specified system generation. It also rearranges " | |
43676 | "the system's existing bootloader menu entries. It makes the menu entry for " | |
43677 | "the specified system generation the default, and it moves the entries for " | |
43678 | "the other generatiors to a submenu, if supported by the bootloader being " | |
43679 | "used. The next time the system boots, it will use the specified system " | |
43680 | "generation." | |
43681 | msgstr "" | |
43682 | ||
43683 | #. type: table | |
39764ef8 | 43684 | #: doc/guix.texi:20397 |
b9fe8fd6 JL |
43685 | msgid "" |
43686 | "The bootloader itself is not being reinstalled when using this command. " | |
43687 | "Thus, the installed bootloader is used with an updated configuration file." | |
43688 | msgstr "" | |
43689 | ||
43690 | #. type: table | |
39764ef8 | 43691 | #: doc/guix.texi:20401 |
b9fe8fd6 JL |
43692 | msgid "" |
43693 | "The target generation can be specified explicitly by its generation number. " | |
43694 | "For example, the following invocation would switch to system generation 7:" | |
43695 | msgstr "" | |
43696 | ||
43697 | #. type: example | |
39764ef8 | 43698 | #: doc/guix.texi:20404 |
b9fe8fd6 JL |
43699 | #, no-wrap |
43700 | msgid "guix system switch-generation 7\n" | |
43701 | msgstr "" | |
43702 | ||
43703 | #. type: table | |
39764ef8 | 43704 | #: doc/guix.texi:20412 |
b9fe8fd6 JL |
43705 | msgid "" |
43706 | "The target generation can also be specified relative to the current " | |
43707 | "generation with the form @code{+N} or @code{-N}, where @code{+3} means ``3 " | |
43708 | "generations ahead of the current generation,'' and @code{-1} means ``1 " | |
43709 | "generation prior to the current generation.'' When specifying a negative " | |
43710 | "value such as @code{-1}, you must precede it with @code{--} to prevent it " | |
43711 | "from being parsed as an option. For example:" | |
43712 | msgstr "" | |
43713 | ||
43714 | #. type: example | |
39764ef8 | 43715 | #: doc/guix.texi:20415 |
b9fe8fd6 JL |
43716 | #, no-wrap |
43717 | msgid "guix system switch-generation -- -1\n" | |
43718 | msgstr "" | |
43719 | ||
43720 | #. type: table | |
39764ef8 | 43721 | #: doc/guix.texi:20423 |
b9fe8fd6 JL |
43722 | msgid "" |
43723 | "Currently, the effect of invoking this action is @emph{only} to switch the " | |
43724 | "system profile to an existing generation and rearrange the bootloader menu " | |
43725 | "entries. To actually start using the target system generation, you must " | |
43726 | "reboot after running this action. In the future, it will be updated to do " | |
43727 | "the same things as @command{reconfigure}, like activating and deactivating " | |
43728 | "services." | |
43729 | msgstr "" | |
43730 | ||
43731 | #. type: table | |
39764ef8 | 43732 | #: doc/guix.texi:20425 |
b9fe8fd6 JL |
43733 | msgid "This action will fail if the specified generation does not exist." |
43734 | msgstr "" | |
43735 | ||
43736 | #. type: item | |
39764ef8 | 43737 | #: doc/guix.texi:20426 |
b9fe8fd6 JL |
43738 | #, no-wrap |
43739 | msgid "roll-back" | |
43740 | msgstr "" | |
43741 | ||
43742 | #. type: table | |
39764ef8 | 43743 | #: doc/guix.texi:20432 |
b9fe8fd6 JL |
43744 | msgid "" |
43745 | "Switch to the preceding system generation. The next time the system boots, " | |
43746 | "it will use the preceding system generation. This is the inverse of " | |
43747 | "@command{reconfigure}, and it is exactly the same as invoking " | |
43748 | "@command{switch-generation} with an argument of @code{-1}." | |
43749 | msgstr "" | |
43750 | ||
43751 | #. type: table | |
39764ef8 | 43752 | #: doc/guix.texi:20436 |
b9fe8fd6 JL |
43753 | msgid "" |
43754 | "Currently, as with @command{switch-generation}, you must reboot after " | |
43755 | "running this action to actually start using the preceding system generation." | |
43756 | msgstr "" | |
43757 | ||
43758 | #. type: table | |
39764ef8 | 43759 | #: doc/guix.texi:20441 |
b9fe8fd6 JL |
43760 | msgid "" |
43761 | "Build the derivation of the operating system, which includes all the " | |
43762 | "configuration files and programs needed to boot and run the system. This " | |
43763 | "action does not actually install anything." | |
43764 | msgstr "" | |
43765 | ||
43766 | #. type: item | |
39764ef8 | 43767 | #: doc/guix.texi:20442 |
b9fe8fd6 JL |
43768 | #, no-wrap |
43769 | msgid "init" | |
43770 | msgstr "" | |
43771 | ||
43772 | #. type: table | |
39764ef8 | 43773 | #: doc/guix.texi:20446 |
b9fe8fd6 JL |
43774 | msgid "" |
43775 | "Populate the given directory with all the files necessary to run the " | |
43776 | "operating system specified in @var{file}. This is useful for first-time " | |
43777 | "installations of GuixSD. For instance:" | |
43778 | msgstr "" | |
43779 | ||
43780 | #. type: example | |
39764ef8 | 43781 | #: doc/guix.texi:20449 |
b9fe8fd6 JL |
43782 | #, no-wrap |
43783 | msgid "guix system init my-os-config.scm /mnt\n" | |
43784 | msgstr "" | |
43785 | ||
43786 | #. type: table | |
39764ef8 | 43787 | #: doc/guix.texi:20456 |
b9fe8fd6 JL |
43788 | msgid "" |
43789 | "copies to @file{/mnt} all the store items required by the configuration " | |
43790 | "specified in @file{my-os-config.scm}. This includes configuration files, " | |
43791 | "packages, and so on. It also creates other essential files needed for the " | |
39764ef8 JL |
43792 | "system to operate correctly---e.g., the @file{/etc}, @file{/var}, and @file{/" |
43793 | "run} directories, and the @file{/bin/sh} file." | |
b9fe8fd6 JL |
43794 | msgstr "" |
43795 | ||
43796 | #. type: table | |
39764ef8 | 43797 | #: doc/guix.texi:20460 |
b9fe8fd6 | 43798 | msgid "" |
39764ef8 JL |
43799 | "This command also installs bootloader on the target specified in @file{my-os-" |
43800 | "config}, unless the @option{--no-bootloader} option was passed." | |
b9fe8fd6 JL |
43801 | msgstr "" |
43802 | ||
43803 | #. type: item | |
39764ef8 | 43804 | #: doc/guix.texi:20461 |
b9fe8fd6 JL |
43805 | #, no-wrap |
43806 | msgid "vm" | |
43807 | msgstr "" | |
43808 | ||
43809 | #. type: cindex | |
39764ef8 | 43810 | #: doc/guix.texi:20462 doc/guix.texi:20726 |
b9fe8fd6 JL |
43811 | #, no-wrap |
43812 | msgid "virtual machine" | |
43813 | msgstr "" | |
43814 | ||
43815 | #. type: cindex | |
39764ef8 | 43816 | #: doc/guix.texi:20463 |
b9fe8fd6 JL |
43817 | #, no-wrap |
43818 | msgid "VM" | |
43819 | msgstr "" | |
43820 | ||
43821 | #. type: anchor{#1} | |
39764ef8 | 43822 | #: doc/guix.texi:20470 |
b9fe8fd6 JL |
43823 | msgid "guix system vm" |
43824 | msgstr "" | |
43825 | ||
43826 | #. type: table | |
39764ef8 | 43827 | #: doc/guix.texi:20470 |
b9fe8fd6 JL |
43828 | msgid "" |
43829 | "Build a virtual machine that contains the operating system declared in " | |
43830 | "@var{file}, and return a script to run that virtual machine (VM). Arguments " | |
43831 | "given to the script are passed to QEMU as in the example below, which " | |
43832 | "enables networking and requests 1@tie{}GiB of RAM for the emulated machine:" | |
43833 | msgstr "" | |
43834 | ||
43835 | #. type: example | |
39764ef8 | 43836 | #: doc/guix.texi:20473 |
b9fe8fd6 JL |
43837 | #, no-wrap |
43838 | msgid "$ /gnu/store/@dots{}-run-vm.sh -m 1024 -net user\n" | |
43839 | msgstr "" | |
43840 | ||
43841 | #. type: table | |
39764ef8 | 43842 | #: doc/guix.texi:20476 |
b9fe8fd6 JL |
43843 | msgid "The VM shares its store with the host system." |
43844 | msgstr "" | |
43845 | ||
43846 | #. type: table | |
39764ef8 | 43847 | #: doc/guix.texi:20481 |
b9fe8fd6 JL |
43848 | msgid "" |
43849 | "Additional file systems can be shared between the host and the VM using the " | |
43850 | "@code{--share} and @code{--expose} command-line options: the former " | |
43851 | "specifies a directory to be shared with write access, while the latter " | |
43852 | "provides read-only access to the shared directory." | |
43853 | msgstr "" | |
43854 | ||
43855 | #. type: table | |
39764ef8 | 43856 | #: doc/guix.texi:20485 |
b9fe8fd6 JL |
43857 | msgid "" |
43858 | "The example below creates a VM in which the user's home directory is " | |
39764ef8 JL |
43859 | "accessible read-only, and where the @file{/exchange} directory is a read-" |
43860 | "write mapping of @file{$HOME/tmp} on the host:" | |
b9fe8fd6 JL |
43861 | msgstr "" |
43862 | ||
43863 | #. type: example | |
39764ef8 | 43864 | #: doc/guix.texi:20489 |
b9fe8fd6 JL |
43865 | #, no-wrap |
43866 | msgid "" | |
43867 | "guix system vm my-config.scm \\\n" | |
43868 | " --expose=$HOME --share=$HOME/tmp=/exchange\n" | |
43869 | msgstr "" | |
43870 | ||
43871 | #. type: table | |
39764ef8 | 43872 | #: doc/guix.texi:20494 |
b9fe8fd6 JL |
43873 | msgid "" |
43874 | "On GNU/Linux, the default is to boot directly to the kernel; this has the " | |
43875 | "advantage of requiring only a very tiny root disk image since the store of " | |
43876 | "the host can then be mounted." | |
43877 | msgstr "" | |
43878 | ||
43879 | #. type: table | |
39764ef8 | 43880 | #: doc/guix.texi:20500 |
b9fe8fd6 JL |
43881 | msgid "" |
43882 | "The @code{--full-boot} option forces a complete boot sequence, starting with " | |
43883 | "the bootloader. This requires more disk space since a root image containing " | |
43884 | "at least the kernel, initrd, and bootloader data files must be created. The " | |
43885 | "@code{--image-size} option can be used to specify the size of the image." | |
43886 | msgstr "" | |
43887 | ||
43888 | #. type: cindex | |
39764ef8 | 43889 | #: doc/guix.texi:20501 |
b9fe8fd6 JL |
43890 | #, no-wrap |
43891 | msgid "System images, creation in various formats" | |
43892 | msgstr "" | |
43893 | ||
43894 | #. type: cindex | |
39764ef8 | 43895 | #: doc/guix.texi:20502 |
b9fe8fd6 JL |
43896 | #, no-wrap |
43897 | msgid "Creating system images in various formats" | |
43898 | msgstr "" | |
43899 | ||
43900 | #. type: item | |
39764ef8 | 43901 | #: doc/guix.texi:20503 |
b9fe8fd6 JL |
43902 | #, no-wrap |
43903 | msgid "vm-image" | |
43904 | msgstr "" | |
43905 | ||
43906 | #. type: itemx | |
39764ef8 | 43907 | #: doc/guix.texi:20504 |
b9fe8fd6 JL |
43908 | #, no-wrap |
43909 | msgid "disk-image" | |
43910 | msgstr "" | |
43911 | ||
43912 | #. type: itemx | |
39764ef8 | 43913 | #: doc/guix.texi:20505 |
b9fe8fd6 JL |
43914 | #, no-wrap |
43915 | msgid "docker-image" | |
43916 | msgstr "" | |
43917 | ||
43918 | #. type: table | |
39764ef8 | 43919 | #: doc/guix.texi:20513 |
b9fe8fd6 JL |
43920 | msgid "" |
43921 | "Return a virtual machine, disk image, or Docker image of the operating " | |
43922 | "system declared in @var{file} that stands alone. By default, @command{guix " | |
43923 | "system} estimates the size of the image needed to store the system, but you " | |
43924 | "can use the @option{--image-size} option to specify a value. Docker images " | |
43925 | "are built to contain exactly what they need, so the @option{--image-size} " | |
43926 | "option is ignored in the case of @code{docker-image}." | |
43927 | msgstr "" | |
43928 | ||
43929 | #. type: table | |
39764ef8 | 43930 | #: doc/guix.texi:20516 |
b9fe8fd6 | 43931 | msgid "" |
39764ef8 JL |
43932 | "You can specify the root file system type by using the @option{--file-system-" |
43933 | "type} option. It defaults to @code{ext4}." | |
b9fe8fd6 JL |
43934 | msgstr "" |
43935 | ||
43936 | #. type: table | |
39764ef8 | 43937 | #: doc/guix.texi:20520 |
b9fe8fd6 JL |
43938 | msgid "" |
43939 | "When using @code{vm-image}, the returned image is in qcow2 format, which the " | |
43940 | "QEMU emulator can efficiently use. @xref{Running GuixSD in a VM}, for more " | |
43941 | "information on how to run the image in a virtual machine." | |
43942 | msgstr "" | |
43943 | ||
43944 | #. type: table | |
39764ef8 | 43945 | #: doc/guix.texi:20525 |
b9fe8fd6 JL |
43946 | msgid "" |
43947 | "When using @code{disk-image}, a raw disk image is produced; it can be copied " | |
43948 | "as is to a USB stick, for instance. Assuming @code{/dev/sdc} is the device " | |
43949 | "corresponding to a USB stick, one can copy the image to it using the " | |
43950 | "following command:" | |
43951 | msgstr "" | |
43952 | ||
43953 | #. type: example | |
39764ef8 | 43954 | #: doc/guix.texi:20528 |
b9fe8fd6 JL |
43955 | #, no-wrap |
43956 | msgid "# dd if=$(guix system disk-image my-os.scm) of=/dev/sdc\n" | |
43957 | msgstr "" | |
43958 | ||
43959 | #. type: table | |
39764ef8 | 43960 | #: doc/guix.texi:20535 |
b9fe8fd6 JL |
43961 | msgid "" |
43962 | "When using @code{docker-image}, a Docker image is produced. Guix builds the " | |
43963 | "image from scratch, not from a pre-existing Docker base image. As a result, " | |
43964 | "it contains @emph{exactly} what you define in the operating system " | |
43965 | "configuration file. You can then load the image and launch a Docker " | |
43966 | "container using commands like the following:" | |
43967 | msgstr "" | |
43968 | ||
43969 | #. type: example | |
39764ef8 | 43970 | #: doc/guix.texi:20541 |
b9fe8fd6 JL |
43971 | #, no-wrap |
43972 | msgid "" | |
43973 | "image_id=\"$(docker load < guixsd-docker-image.tar.gz)\"\n" | |
43974 | "docker run -e GUIX_NEW_SYSTEM=/var/guix/profiles/system \\\\\n" | |
43975 | " --entrypoint /var/guix/profiles/system/profile/bin/guile \\\\\n" | |
43976 | " $image_id /var/guix/profiles/system/boot\n" | |
43977 | msgstr "" | |
43978 | ||
43979 | #. type: table | |
39764ef8 | 43980 | #: doc/guix.texi:20551 |
b9fe8fd6 JL |
43981 | msgid "" |
43982 | "This command starts a new Docker container from the specified image. It " | |
43983 | "will boot the GuixSD system in the usual manner, which means it will start " | |
43984 | "any services you have defined in the operating system configuration. " | |
43985 | "Depending on what you run in the Docker container, it may be necessary to " | |
43986 | "give the container additional permissions. For example, if you intend to " | |
43987 | "build software using Guix inside of the Docker container, you may need to " | |
43988 | "pass the @option{--privileged} option to @code{docker run}." | |
43989 | msgstr "" | |
43990 | ||
43991 | #. type: table | |
39764ef8 | 43992 | #: doc/guix.texi:20559 |
b9fe8fd6 JL |
43993 | msgid "" |
43994 | "Return a script to run the operating system declared in @var{file} within a " | |
43995 | "container. Containers are a set of lightweight isolation mechanisms " | |
43996 | "provided by the kernel Linux-libre. Containers are substantially less " | |
43997 | "resource-demanding than full virtual machines since the kernel, shared " | |
43998 | "objects, and other resources can be shared with the host system; this also " | |
43999 | "means they provide thinner isolation." | |
44000 | msgstr "" | |
44001 | ||
44002 | #. type: table | |
39764ef8 | 44003 | #: doc/guix.texi:20563 |
b9fe8fd6 JL |
44004 | msgid "" |
44005 | "Currently, the script must be run as root in order to support more than a " | |
44006 | "single user and group. The container shares its store with the host system." | |
44007 | msgstr "" | |
44008 | ||
44009 | #. type: table | |
39764ef8 | 44010 | #: doc/guix.texi:20567 |
b9fe8fd6 JL |
44011 | msgid "" |
44012 | "As with the @code{vm} action (@pxref{guix system vm}), additional file " | |
44013 | "systems to be shared between the host and container can be specified using " | |
44014 | "the @option{--share} and @option{--expose} options:" | |
44015 | msgstr "" | |
44016 | ||
44017 | #. type: example | |
39764ef8 | 44018 | #: doc/guix.texi:20571 |
b9fe8fd6 JL |
44019 | #, no-wrap |
44020 | msgid "" | |
44021 | "guix system container my-config.scm \\\n" | |
44022 | " --expose=$HOME --share=$HOME/tmp=/exchange\n" | |
44023 | msgstr "" | |
44024 | ||
44025 | #. type: quotation | |
39764ef8 | 44026 | #: doc/guix.texi:20575 |
b9fe8fd6 JL |
44027 | msgid "This option requires Linux-libre 3.19 or newer." |
44028 | msgstr "" | |
44029 | ||
44030 | #. type: Plain text | |
39764ef8 | 44031 | #: doc/guix.texi:20582 |
b9fe8fd6 JL |
44032 | msgid "" |
44033 | "@var{options} can contain any of the common build options (@pxref{Common " | |
44034 | "Build Options}). In addition, @var{options} can contain one of the " | |
44035 | "following:" | |
44036 | msgstr "" | |
44037 | ||
44038 | #. type: table | |
39764ef8 | 44039 | #: doc/guix.texi:20591 |
b9fe8fd6 JL |
44040 | msgid "" |
44041 | "Consider the operating-system @var{expr} evaluates to. This is an " | |
44042 | "alternative to specifying a file which evaluates to an operating system. " | |
44043 | "This is used to generate the GuixSD installer @pxref{Building the " | |
44044 | "Installation Image})." | |
44045 | msgstr "" | |
44046 | ||
44047 | #. type: table | |
39764ef8 | 44048 | #: doc/guix.texi:20596 |
b9fe8fd6 JL |
44049 | msgid "" |
44050 | "Attempt to build for @var{system} instead of the host system type. This " | |
44051 | "works as per @command{guix build} (@pxref{Invoking guix build})." | |
44052 | msgstr "" | |
44053 | ||
44054 | #. type: item | |
39764ef8 | 44055 | #: doc/guix.texi:20597 |
b9fe8fd6 JL |
44056 | #, no-wrap |
44057 | msgid "--derivation" | |
44058 | msgstr "" | |
44059 | ||
44060 | #. type: table | |
39764ef8 | 44061 | #: doc/guix.texi:20601 |
b9fe8fd6 JL |
44062 | msgid "" |
44063 | "Return the derivation file name of the given operating system without " | |
44064 | "building anything." | |
44065 | msgstr "" | |
44066 | ||
44067 | #. type: item | |
39764ef8 | 44068 | #: doc/guix.texi:20602 |
b9fe8fd6 JL |
44069 | #, no-wrap |
44070 | msgid "--file-system-type=@var{type}" | |
44071 | msgstr "" | |
44072 | ||
44073 | #. type: table | |
39764ef8 | 44074 | #: doc/guix.texi:20606 |
b9fe8fd6 JL |
44075 | msgid "" |
44076 | "For the @code{disk-image} action, create a file system of the given " | |
44077 | "@var{type} on the image." | |
44078 | msgstr "" | |
44079 | ||
44080 | #. type: table | |
39764ef8 | 44081 | #: doc/guix.texi:20608 |
b9fe8fd6 JL |
44082 | msgid "When this option is omitted, @command{guix system} uses @code{ext4}." |
44083 | msgstr "" | |
44084 | ||
44085 | #. type: cindex | |
39764ef8 | 44086 | #: doc/guix.texi:20609 |
b9fe8fd6 JL |
44087 | #, no-wrap |
44088 | msgid "ISO-9660 format" | |
44089 | msgstr "" | |
44090 | ||
44091 | #. type: cindex | |
39764ef8 | 44092 | #: doc/guix.texi:20610 |
b9fe8fd6 JL |
44093 | #, no-wrap |
44094 | msgid "CD image format" | |
44095 | msgstr "" | |
44096 | ||
44097 | #. type: cindex | |
39764ef8 | 44098 | #: doc/guix.texi:20611 |
b9fe8fd6 JL |
44099 | #, no-wrap |
44100 | msgid "DVD image format" | |
44101 | msgstr "" | |
44102 | ||
44103 | #. type: table | |
39764ef8 | 44104 | #: doc/guix.texi:20614 |
b9fe8fd6 JL |
44105 | msgid "" |
44106 | "@code{--file-system-type=iso9660} produces an ISO-9660 image, suitable for " | |
44107 | "burning on CDs and DVDs." | |
44108 | msgstr "" | |
44109 | ||
44110 | #. type: item | |
39764ef8 | 44111 | #: doc/guix.texi:20615 |
b9fe8fd6 JL |
44112 | #, no-wrap |
44113 | msgid "--image-size=@var{size}" | |
44114 | msgstr "" | |
44115 | ||
44116 | #. type: table | |
39764ef8 | 44117 | #: doc/guix.texi:20620 |
b9fe8fd6 JL |
44118 | msgid "" |
44119 | "For the @code{vm-image} and @code{disk-image} actions, create an image of " | |
44120 | "the given @var{size}. @var{size} may be a number of bytes, or it may " | |
44121 | "include a unit as a suffix (@pxref{Block size, size specifications,, " | |
44122 | "coreutils, GNU Coreutils})." | |
44123 | msgstr "" | |
44124 | ||
44125 | #. type: table | |
39764ef8 | 44126 | #: doc/guix.texi:20624 |
b9fe8fd6 JL |
44127 | msgid "" |
44128 | "When this option is omitted, @command{guix system} computes an estimate of " | |
44129 | "the image size as a function of the size of the system declared in " | |
44130 | "@var{file}." | |
44131 | msgstr "" | |
44132 | ||
44133 | #. type: item | |
39764ef8 | 44134 | #: doc/guix.texi:20630 |
b9fe8fd6 JL |
44135 | #, no-wrap |
44136 | msgid "--skip-checks" | |
44137 | msgstr "" | |
44138 | ||
44139 | #. type: table | |
39764ef8 | 44140 | #: doc/guix.texi:20632 |
b9fe8fd6 JL |
44141 | msgid "Skip pre-installation safety checks." |
44142 | msgstr "" | |
44143 | ||
44144 | #. type: table | |
39764ef8 | 44145 | #: doc/guix.texi:20639 |
b9fe8fd6 JL |
44146 | msgid "" |
44147 | "By default, @command{guix system init} and @command{guix system reconfigure} " | |
44148 | "perform safety checks: they make sure the file systems that appear in the " | |
44149 | "@code{operating-system} declaration actually exist (@pxref{File Systems}), " | |
44150 | "and that any Linux kernel modules that may be needed at boot time are listed " | |
44151 | "in @code{initrd-modules} (@pxref{Initial RAM Disk}). Passing this option " | |
44152 | "skips these tests altogether." | |
44153 | msgstr "" | |
44154 | ||
44155 | #. type: item | |
39764ef8 | 44156 | #: doc/guix.texi:20640 |
b9fe8fd6 JL |
44157 | #, no-wrap |
44158 | msgid "--on-error=@var{strategy}" | |
44159 | msgstr "" | |
44160 | ||
44161 | #. type: table | |
39764ef8 | 44162 | #: doc/guix.texi:20643 |
b9fe8fd6 JL |
44163 | msgid "" |
44164 | "Apply @var{strategy} when an error occurs when reading @var{file}. " | |
44165 | "@var{strategy} may be one of the following:" | |
44166 | msgstr "" | |
44167 | ||
44168 | #. type: item | |
39764ef8 | 44169 | #: doc/guix.texi:20645 |
b9fe8fd6 JL |
44170 | #, no-wrap |
44171 | msgid "nothing-special" | |
44172 | msgstr "" | |
44173 | ||
44174 | #. type: table | |
39764ef8 | 44175 | #: doc/guix.texi:20647 |
b9fe8fd6 JL |
44176 | msgid "Report the error concisely and exit. This is the default strategy." |
44177 | msgstr "" | |
44178 | ||
44179 | #. type: item | |
39764ef8 | 44180 | #: doc/guix.texi:20648 |
b9fe8fd6 JL |
44181 | #, no-wrap |
44182 | msgid "backtrace" | |
44183 | msgstr "" | |
44184 | ||
44185 | #. type: table | |
39764ef8 | 44186 | #: doc/guix.texi:20650 |
b9fe8fd6 JL |
44187 | msgid "Likewise, but also display a backtrace." |
44188 | msgstr "" | |
44189 | ||
44190 | #. type: item | |
39764ef8 | 44191 | #: doc/guix.texi:20651 |
b9fe8fd6 JL |
44192 | #, no-wrap |
44193 | msgid "debug" | |
44194 | msgstr "" | |
44195 | ||
44196 | #. type: table | |
39764ef8 | 44197 | #: doc/guix.texi:20657 |
b9fe8fd6 JL |
44198 | msgid "" |
44199 | "Report the error and enter Guile's debugger. From there, you can run " | |
44200 | "commands such as @code{,bt} to get a backtrace, @code{,locals} to display " | |
44201 | "local variable values, and more generally inspect the state of the program. " | |
44202 | "@xref{Debug Commands,,, guile, GNU Guile Reference Manual}, for a list of " | |
44203 | "available debugging commands." | |
44204 | msgstr "" | |
44205 | ||
44206 | #. type: quotation | |
39764ef8 | 44207 | #: doc/guix.texi:20667 |
b9fe8fd6 JL |
44208 | msgid "" |
44209 | "All the actions above, except @code{build} and @code{init}, can use KVM " | |
44210 | "support in the Linux-libre kernel. Specifically, if the machine has " | |
44211 | "hardware virtualization support, the corresponding KVM kernel module should " | |
44212 | "be loaded, and the @file{/dev/kvm} device node must exist and be readable " | |
44213 | "and writable by the user and by the build users of the daemon (@pxref{Build " | |
44214 | "Environment Setup})." | |
44215 | msgstr "" | |
44216 | ||
44217 | #. type: Plain text | |
39764ef8 | 44218 | #: doc/guix.texi:20673 |
b9fe8fd6 JL |
44219 | msgid "" |
44220 | "Once you have built, configured, re-configured, and re-re-configured your " | |
44221 | "GuixSD installation, you may find it useful to list the operating system " | |
44222 | "generations available on disk---and that you can choose from the bootloader " | |
44223 | "boot menu:" | |
44224 | msgstr "" | |
44225 | ||
44226 | #. type: item | |
39764ef8 | 44227 | #: doc/guix.texi:20676 |
b9fe8fd6 JL |
44228 | #, no-wrap |
44229 | msgid "list-generations" | |
44230 | msgstr "" | |
44231 | ||
44232 | #. type: table | |
39764ef8 | 44233 | #: doc/guix.texi:20681 |
b9fe8fd6 JL |
44234 | msgid "" |
44235 | "List a summary of each generation of the operating system available on disk, " | |
44236 | "in a human-readable way. This is similar to the @option{--list-generations} " | |
44237 | "option of @command{guix package} (@pxref{Invoking guix package})." | |
44238 | msgstr "" | |
44239 | ||
44240 | #. type: table | |
39764ef8 | 44241 | #: doc/guix.texi:20686 |
b9fe8fd6 JL |
44242 | msgid "" |
44243 | "Optionally, one can specify a pattern, with the same syntax that is used in " | |
44244 | "@command{guix package --list-generations}, to restrict the list of " | |
44245 | "generations displayed. For instance, the following command displays " | |
44246 | "generations that are up to 10 days old:" | |
44247 | msgstr "" | |
44248 | ||
44249 | #. type: example | |
39764ef8 | 44250 | #: doc/guix.texi:20689 |
b9fe8fd6 JL |
44251 | #, no-wrap |
44252 | msgid "$ guix system list-generations 10d\n" | |
44253 | msgstr "" | |
44254 | ||
44255 | #. type: Plain text | |
39764ef8 | 44256 | #: doc/guix.texi:20696 |
b9fe8fd6 | 44257 | msgid "" |
39764ef8 JL |
44258 | "The @command{guix system} command has even more to offer! The following sub-" |
44259 | "commands allow you to visualize how your system services relate to each " | |
b9fe8fd6 JL |
44260 | "other:" |
44261 | msgstr "" | |
44262 | ||
44263 | #. type: anchor{#1} | |
39764ef8 | 44264 | #: doc/guix.texi:20698 |
b9fe8fd6 JL |
44265 | msgid "system-extension-graph" |
44266 | msgstr "" | |
44267 | ||
44268 | #. type: item | |
39764ef8 | 44269 | #: doc/guix.texi:20700 |
b9fe8fd6 JL |
44270 | #, no-wrap |
44271 | msgid "extension-graph" | |
44272 | msgstr "" | |
44273 | ||
44274 | #. type: table | |
39764ef8 | 44275 | #: doc/guix.texi:20705 |
b9fe8fd6 JL |
44276 | msgid "" |
44277 | "Emit in Dot/Graphviz format to standard output the @dfn{service extension " | |
44278 | "graph} of the operating system defined in @var{file} (@pxref{Service " | |
44279 | "Composition}, for more information on service extensions.)" | |
44280 | msgstr "" | |
44281 | ||
44282 | #. type: table | |
39764ef8 | 44283 | #: doc/guix.texi:20707 |
b9fe8fd6 JL |
44284 | msgid "The command:" |
44285 | msgstr "" | |
44286 | ||
44287 | #. type: example | |
39764ef8 | 44288 | #: doc/guix.texi:20710 |
b9fe8fd6 JL |
44289 | #, no-wrap |
44290 | msgid "$ guix system extension-graph @var{file} | dot -Tpdf > services.pdf\n" | |
44291 | msgstr "" | |
44292 | ||
44293 | #. type: table | |
39764ef8 | 44294 | #: doc/guix.texi:20713 |
b9fe8fd6 JL |
44295 | msgid "produces a PDF file showing the extension relations among services." |
44296 | msgstr "" | |
44297 | ||
44298 | #. type: anchor{#1} | |
39764ef8 | 44299 | #: doc/guix.texi:20715 |
b9fe8fd6 JL |
44300 | msgid "system-shepherd-graph" |
44301 | msgstr "" | |
44302 | ||
44303 | #. type: item | |
39764ef8 | 44304 | #: doc/guix.texi:20715 |
b9fe8fd6 JL |
44305 | #, no-wrap |
44306 | msgid "shepherd-graph" | |
44307 | msgstr "" | |
44308 | ||
44309 | #. type: table | |
39764ef8 | 44310 | #: doc/guix.texi:20720 |
b9fe8fd6 JL |
44311 | msgid "" |
44312 | "Emit in Dot/Graphviz format to standard output the @dfn{dependency graph} of " | |
44313 | "shepherd services of the operating system defined in @var{file}. " | |
44314 | "@xref{Shepherd Services}, for more information and for an example graph." | |
44315 | msgstr "" | |
44316 | ||
44317 | #. type: subsection | |
39764ef8 | 44318 | #: doc/guix.texi:20724 |
b9fe8fd6 JL |
44319 | #, no-wrap |
44320 | msgid "Running GuixSD in a Virtual Machine" | |
44321 | msgstr "" | |
44322 | ||
44323 | #. type: Plain text | |
39764ef8 | 44324 | #: doc/guix.texi:20734 |
b9fe8fd6 JL |
44325 | msgid "" |
44326 | "To run GuixSD in a virtual machine (VM), one can either use the pre-built " | |
39764ef8 JL |
44327 | "GuixSD VM image distributed at @indicateurl{ftp://alpha.gnu.org/guix/guixsd-" |
44328 | "vm-image-@value{VERSION}.@var{system}.tar.xz} , or build their own virtual " | |
44329 | "machine image using @command{guix system vm-image} (@pxref{Invoking guix " | |
44330 | "system}). The returned image is in qcow2 format, which the @uref{http://" | |
44331 | "qemu.org/, QEMU emulator} can efficiently use." | |
b9fe8fd6 JL |
44332 | msgstr "" |
44333 | ||
44334 | #. type: cindex | |
39764ef8 | 44335 | #: doc/guix.texi:20735 |
b9fe8fd6 JL |
44336 | #, no-wrap |
44337 | msgid "QEMU" | |
44338 | msgstr "" | |
44339 | ||
44340 | #. type: Plain text | |
39764ef8 | 44341 | #: doc/guix.texi:20742 |
b9fe8fd6 JL |
44342 | msgid "" |
44343 | "If you built your own image, you must copy it out of the store (@pxref{The " | |
44344 | "Store}) and give yourself permission to write to the copy before you can use " | |
44345 | "it. When invoking QEMU, you must choose a system emulator that is suitable " | |
44346 | "for your hardware platform. Here is a minimal QEMU invocation that will " | |
44347 | "boot the result of @command{guix system vm-image} on x86_64 hardware:" | |
44348 | msgstr "" | |
44349 | ||
44350 | #. type: example | |
39764ef8 | 44351 | #: doc/guix.texi:20747 |
b9fe8fd6 JL |
44352 | #, no-wrap |
44353 | msgid "" | |
44354 | "$ qemu-system-x86_64 \\\n" | |
44355 | " -net user -net nic,model=virtio \\\n" | |
44356 | " -enable-kvm -m 256 /tmp/qemu-image\n" | |
44357 | msgstr "" | |
44358 | ||
44359 | #. type: Plain text | |
39764ef8 | 44360 | #: doc/guix.texi:20750 |
b9fe8fd6 JL |
44361 | msgid "Here is what each of these options means:" |
44362 | msgstr "" | |
44363 | ||
44364 | #. type: item | |
39764ef8 | 44365 | #: doc/guix.texi:20752 |
b9fe8fd6 JL |
44366 | #, no-wrap |
44367 | msgid "qemu-system-x86_64" | |
44368 | msgstr "" | |
44369 | ||
44370 | #. type: table | |
39764ef8 | 44371 | #: doc/guix.texi:20755 |
b9fe8fd6 | 44372 | msgid "" |
39764ef8 | 44373 | "This specifies the hardware platform to emulate. This should match the host." |
b9fe8fd6 JL |
44374 | msgstr "" |
44375 | ||
44376 | #. type: item | |
39764ef8 | 44377 | #: doc/guix.texi:20756 |
b9fe8fd6 JL |
44378 | #, no-wrap |
44379 | msgid "-net user" | |
44380 | msgstr "" | |
44381 | ||
44382 | #. type: table | |
39764ef8 | 44383 | #: doc/guix.texi:20760 |
b9fe8fd6 JL |
44384 | msgid "" |
44385 | "Enable the unprivileged user-mode network stack. The guest OS can access " | |
44386 | "the host but not vice versa. This is the simplest way to get the guest OS " | |
44387 | "online." | |
44388 | msgstr "" | |
44389 | ||
44390 | #. type: item | |
39764ef8 | 44391 | #: doc/guix.texi:20761 |
b9fe8fd6 JL |
44392 | #, no-wrap |
44393 | msgid "-net nic,model=virtio" | |
44394 | msgstr "" | |
44395 | ||
44396 | #. type: table | |
39764ef8 | 44397 | #: doc/guix.texi:20766 |
b9fe8fd6 JL |
44398 | msgid "" |
44399 | "You must create a network interface of a given model. If you do not create " | |
44400 | "a NIC, the boot will fail. Assuming your hardware platform is x86_64, you " | |
39764ef8 JL |
44401 | "can get a list of available NIC models by running @command{qemu-system-" |
44402 | "x86_64 -net nic,model=help}." | |
b9fe8fd6 JL |
44403 | msgstr "" |
44404 | ||
44405 | #. type: item | |
39764ef8 | 44406 | #: doc/guix.texi:20767 |
b9fe8fd6 JL |
44407 | #, no-wrap |
44408 | msgid "-enable-kvm" | |
44409 | msgstr "" | |
44410 | ||
44411 | #. type: table | |
39764ef8 | 44412 | #: doc/guix.texi:20771 |
b9fe8fd6 JL |
44413 | msgid "" |
44414 | "If your system has hardware virtualization extensions, enabling the virtual " | |
44415 | "machine support (KVM) of the Linux kernel will make things run faster." | |
44416 | msgstr "" | |
44417 | ||
44418 | #. type: item | |
39764ef8 | 44419 | #: doc/guix.texi:20772 |
b9fe8fd6 JL |
44420 | #, no-wrap |
44421 | msgid "-m 256" | |
44422 | msgstr "" | |
44423 | ||
44424 | #. type: table | |
39764ef8 | 44425 | #: doc/guix.texi:20775 |
b9fe8fd6 JL |
44426 | msgid "" |
44427 | "RAM available to the guest OS, in mebibytes. Defaults to 128@tie{}MiB, " | |
44428 | "which may be insufficient for some operations." | |
44429 | msgstr "" | |
44430 | ||
44431 | #. type: item | |
39764ef8 | 44432 | #: doc/guix.texi:20776 |
b9fe8fd6 JL |
44433 | #, no-wrap |
44434 | msgid "/tmp/qemu-image" | |
44435 | msgstr "" | |
44436 | ||
44437 | #. type: table | |
39764ef8 | 44438 | #: doc/guix.texi:20778 |
b9fe8fd6 JL |
44439 | msgid "The file name of the qcow2 image." |
44440 | msgstr "" | |
44441 | ||
44442 | #. type: Plain text | |
39764ef8 | 44443 | #: doc/guix.texi:20788 |
b9fe8fd6 JL |
44444 | msgid "" |
44445 | "The default @command{run-vm.sh} script that is returned by an invocation of " | |
44446 | "@command{guix system vm} does not add a @command{-net user} flag by " | |
39764ef8 JL |
44447 | "default. To get network access from within the vm add the @code{(dhcp-" |
44448 | "client-service)} to your system definition and start the VM using " | |
44449 | "@command{`guix system vm config.scm` -net user}. An important caveat of " | |
44450 | "using @command{-net user} for networking is that @command{ping} will not " | |
b9fe8fd6 JL |
44451 | "work, because it uses the ICMP protocol. You'll have to use a different " |
44452 | "command to check for network connectivity, for example @command{guix " | |
44453 | "download}." | |
44454 | msgstr "" | |
44455 | ||
44456 | #. type: subsubsection | |
39764ef8 | 44457 | #: doc/guix.texi:20789 |
b9fe8fd6 JL |
44458 | #, no-wrap |
44459 | msgid "Connecting Through SSH" | |
44460 | msgstr "" | |
44461 | ||
44462 | #. type: Plain text | |
39764ef8 | 44463 | #: doc/guix.texi:20798 |
b9fe8fd6 | 44464 | msgid "" |
39764ef8 JL |
44465 | "To enable SSH inside a VM you need to add a SSH server like @code{(dropbear-" |
44466 | "service)} or @code{(lsh-service)} to your VM. The @code{(lsh-service}) " | |
44467 | "doesn't currently boot unsupervised. It requires you to type some " | |
44468 | "characters to initialize the randomness generator. In addition you need to " | |
44469 | "forward the SSH port, 22 by default, to the host. You can do this with" | |
b9fe8fd6 JL |
44470 | msgstr "" |
44471 | ||
44472 | #. type: example | |
39764ef8 | 44473 | #: doc/guix.texi:20801 |
b9fe8fd6 JL |
44474 | #, no-wrap |
44475 | msgid "`guix system vm config.scm` -net user,hostfwd=tcp::10022-:22\n" | |
44476 | msgstr "" | |
44477 | ||
44478 | #. type: Plain text | |
39764ef8 | 44479 | #: doc/guix.texi:20804 |
b9fe8fd6 JL |
44480 | msgid "To connect to the VM you can run" |
44481 | msgstr "" | |
44482 | ||
44483 | #. type: example | |
39764ef8 | 44484 | #: doc/guix.texi:20807 |
b9fe8fd6 JL |
44485 | #, no-wrap |
44486 | msgid "ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p 10022\n" | |
44487 | msgstr "" | |
44488 | ||
44489 | #. type: Plain text | |
39764ef8 | 44490 | #: doc/guix.texi:20814 |
b9fe8fd6 JL |
44491 | msgid "" |
44492 | "The @command{-p} tells @command{ssh} the port you want to connect to. " | |
44493 | "@command{-o UserKnownHostsFile=/dev/null} prevents @command{ssh} from " | |
44494 | "complaining every time you modify your @command{config.scm} file and the " | |
44495 | "@command{-o StrictHostKeyChecking=no} prevents you from having to allow a " | |
44496 | "connection to an unknown host every time you connect." | |
44497 | msgstr "" | |
44498 | ||
44499 | #. type: subsubsection | |
39764ef8 | 44500 | #: doc/guix.texi:20815 |
b9fe8fd6 JL |
44501 | #, no-wrap |
44502 | msgid "Using @command{virt-viewer} with Spice" | |
44503 | msgstr "" | |
44504 | ||
44505 | #. type: Plain text | |
39764ef8 | 44506 | #: doc/guix.texi:20821 |
b9fe8fd6 JL |
44507 | msgid "" |
44508 | "As an alternative to the default @command{qemu} graphical client you can use " | |
44509 | "the @command{remote-viewer} from the @command{virt-viewer} package. To " | |
44510 | "connect pass the @command{-spice port=5930,disable-ticketing} flag to " | |
44511 | "@command{qemu}. See previous section for further information on how to do " | |
44512 | "this." | |
44513 | msgstr "" | |
44514 | ||
44515 | #. type: Plain text | |
39764ef8 | 44516 | #: doc/guix.texi:20824 |
b9fe8fd6 JL |
44517 | msgid "" |
44518 | "Spice also allows you to do some nice stuff like share your clipboard with " | |
44519 | "your VM. To enable that you'll also have to pass the following flags to " | |
44520 | "@command{qemu}:" | |
44521 | msgstr "" | |
44522 | ||
44523 | #. type: example | |
39764ef8 | 44524 | #: doc/guix.texi:20830 |
b9fe8fd6 JL |
44525 | #, no-wrap |
44526 | msgid "" | |
39764ef8 | 44527 | "-device virtio-serial-pci,id=virtio-serial0,max_ports=16,bus=pci.0,addr=0x5\n" |
b9fe8fd6 JL |
44528 | "-chardev spicevmc,name=vdagent,id=vdagent\n" |
44529 | "-device virtserialport,nr=1,bus=virtio-serial0.0,chardev=vdagent,\n" | |
44530 | "name=com.redhat.spice.0\n" | |
44531 | msgstr "" | |
44532 | ||
44533 | #. type: Plain text | |
39764ef8 JL |
44534 | #: doc/guix.texi:20833 |
44535 | msgid "" | |
44536 | "You'll also need to add the @pxref{Miscellaneous Services, Spice service}." | |
b9fe8fd6 JL |
44537 | msgstr "" |
44538 | ||
44539 | #. type: Plain text | |
39764ef8 | 44540 | #: doc/guix.texi:20840 |
b9fe8fd6 JL |
44541 | msgid "" |
44542 | "The previous sections show the available services and how one can combine " | |
44543 | "them in an @code{operating-system} declaration. But how do we define them " | |
44544 | "in the first place? And what is a service anyway?" | |
44545 | msgstr "" | |
44546 | ||
44547 | #. type: cindex | |
39764ef8 | 44548 | #: doc/guix.texi:20852 |
b9fe8fd6 JL |
44549 | #, no-wrap |
44550 | msgid "daemons" | |
44551 | msgstr "" | |
44552 | ||
44553 | #. type: Plain text | |
39764ef8 | 44554 | #: doc/guix.texi:20865 |
b9fe8fd6 JL |
44555 | msgid "" |
44556 | "Here we define a @dfn{service} as, broadly, something that extends the " | |
44557 | "functionality of the operating system. Often a service is a process---a " | |
44558 | "@dfn{daemon}---started when the system boots: a secure shell server, a Web " | |
44559 | "server, the Guix build daemon, etc. Sometimes a service is a daemon whose " | |
44560 | "execution can be triggered by another daemon---e.g., an FTP server started " | |
44561 | "by @command{inetd} or a D-Bus service activated by @command{dbus-daemon}. " | |
44562 | "Occasionally, a service does not map to a daemon. For instance, the " | |
44563 | "``account'' service collects user accounts and makes sure they exist when " | |
44564 | "the system runs; the ``udev'' service collects device management rules and " | |
44565 | "makes them available to the eudev daemon; the @file{/etc} service populates " | |
44566 | "the @file{/etc} directory of the system." | |
44567 | msgstr "" | |
44568 | ||
44569 | #. type: cindex | |
39764ef8 | 44570 | #: doc/guix.texi:20866 |
b9fe8fd6 JL |
44571 | #, no-wrap |
44572 | msgid "service extensions" | |
44573 | msgstr "" | |
44574 | ||
44575 | #. type: Plain text | |
39764ef8 | 44576 | #: doc/guix.texi:20878 |
b9fe8fd6 JL |
44577 | msgid "" |
44578 | "GuixSD services are connected by @dfn{extensions}. For instance, the secure " | |
44579 | "shell service @emph{extends} the Shepherd---the GuixSD initialization " | |
44580 | "system, running as PID@tie{}1---by giving it the command lines to start and " | |
39764ef8 JL |
44581 | "stop the secure shell daemon (@pxref{Networking Services, @code{lsh-" |
44582 | "service}}); the UPower service extends the D-Bus service by passing it its " | |
44583 | "@file{.service} specification, and extends the udev service by passing it " | |
44584 | "device management rules (@pxref{Desktop Services, @code{upower-service}}); " | |
44585 | "the Guix daemon service extends the Shepherd by passing it the command lines " | |
44586 | "to start and stop the daemon, and extends the account service by passing it " | |
44587 | "a list of required build user accounts (@pxref{Base Services})." | |
b9fe8fd6 JL |
44588 | msgstr "" |
44589 | ||
44590 | #. type: Plain text | |
39764ef8 | 44591 | #: doc/guix.texi:20882 |
b9fe8fd6 JL |
44592 | msgid "" |
44593 | "All in all, services and their ``extends'' relations form a directed acyclic " | |
44594 | "graph (DAG). If we represent services as boxes and extensions as arrows, a " | |
44595 | "typical system might provide something like this:" | |
44596 | msgstr "" | |
44597 | ||
44598 | #. type: Plain text | |
39764ef8 | 44599 | #: doc/guix.texi:20884 |
b9fe8fd6 JL |
44600 | msgid "@image{images/service-graph,,5in,Typical service extension graph.}" |
44601 | msgstr "" | |
44602 | ||
44603 | #. type: cindex | |
39764ef8 | 44604 | #: doc/guix.texi:20885 |
b9fe8fd6 JL |
44605 | #, no-wrap |
44606 | msgid "system service" | |
44607 | msgstr "" | |
44608 | ||
44609 | #. type: Plain text | |
39764ef8 | 44610 | #: doc/guix.texi:20893 |
b9fe8fd6 JL |
44611 | msgid "" |
44612 | "At the bottom, we see the @dfn{system service}, which produces the directory " | |
44613 | "containing everything to run and boot the system, as returned by the " | |
44614 | "@command{guix system build} command. @xref{Service Reference}, to learn " | |
44615 | "about the other service types shown here. @xref{system-extension-graph, the " | |
44616 | "@command{guix system extension-graph} command}, for information on how to " | |
44617 | "generate this representation for a particular operating system definition." | |
44618 | msgstr "" | |
44619 | ||
44620 | #. type: cindex | |
39764ef8 | 44621 | #: doc/guix.texi:20894 |
b9fe8fd6 JL |
44622 | #, no-wrap |
44623 | msgid "service types" | |
44624 | msgstr "" | |
44625 | ||
44626 | #. type: Plain text | |
39764ef8 | 44627 | #: doc/guix.texi:20900 |
b9fe8fd6 JL |
44628 | msgid "" |
44629 | "Technically, developers can define @dfn{service types} to express these " | |
44630 | "relations. There can be any number of services of a given type on the " | |
44631 | "system---for instance, a system running two instances of the GNU secure " | |
44632 | "shell server (lsh) has two instances of @var{lsh-service-type}, with " | |
44633 | "different parameters." | |
44634 | msgstr "" | |
44635 | ||
44636 | #. type: Plain text | |
39764ef8 | 44637 | #: doc/guix.texi:20903 |
b9fe8fd6 JL |
44638 | msgid "" |
44639 | "The following section describes the programming interface for service types " | |
44640 | "and services." | |
44641 | msgstr "" | |
44642 | ||
44643 | #. type: Plain text | |
39764ef8 | 44644 | #: doc/guix.texi:20910 |
b9fe8fd6 JL |
44645 | msgid "" |
44646 | "A @dfn{service type} is a node in the DAG described above. Let us start " | |
44647 | "with a simple example, the service type for the Guix build daemon " | |
44648 | "(@pxref{Invoking guix-daemon}):" | |
44649 | msgstr "" | |
44650 | ||
44651 | #. type: example | |
39764ef8 | 44652 | #: doc/guix.texi:20920 |
b9fe8fd6 JL |
44653 | #, no-wrap |
44654 | msgid "" | |
44655 | "(define guix-service-type\n" | |
44656 | " (service-type\n" | |
44657 | " (name 'guix)\n" | |
44658 | " (extensions\n" | |
39764ef8 | 44659 | " (list (service-extension shepherd-root-service-type guix-shepherd-service)\n" |
b9fe8fd6 JL |
44660 | " (service-extension account-service-type guix-accounts)\n" |
44661 | " (service-extension activation-service-type guix-activation)))\n" | |
44662 | " (default-value (guix-configuration))))\n" | |
44663 | msgstr "" | |
44664 | ||
44665 | #. type: Plain text | |
39764ef8 | 44666 | #: doc/guix.texi:20924 |
b9fe8fd6 JL |
44667 | msgid "It defines three things:" |
44668 | msgstr "" | |
44669 | ||
44670 | #. type: enumerate | |
39764ef8 | 44671 | #: doc/guix.texi:20928 |
b9fe8fd6 JL |
44672 | msgid "A name, whose sole purpose is to make inspection and debugging easier." |
44673 | msgstr "" | |
44674 | ||
44675 | #. type: enumerate | |
39764ef8 | 44676 | #: doc/guix.texi:20933 |
b9fe8fd6 JL |
44677 | msgid "" |
44678 | "A list of @dfn{service extensions}, where each extension designates the " | |
44679 | "target service type and a procedure that, given the parameters of the " | |
44680 | "service, returns a list of objects to extend the service of that type." | |
44681 | msgstr "" | |
44682 | ||
44683 | #. type: enumerate | |
39764ef8 | 44684 | #: doc/guix.texi:20936 |
b9fe8fd6 JL |
44685 | msgid "" |
44686 | "Every service type has at least one service extension. The only exception " | |
44687 | "is the @dfn{boot service type}, which is the ultimate service." | |
44688 | msgstr "" | |
44689 | ||
44690 | #. type: enumerate | |
39764ef8 | 44691 | #: doc/guix.texi:20939 |
b9fe8fd6 JL |
44692 | msgid "Optionally, a default value for instances of this type." |
44693 | msgstr "" | |
44694 | ||
44695 | #. type: Plain text | |
39764ef8 | 44696 | #: doc/guix.texi:20942 |
b9fe8fd6 JL |
44697 | msgid "In this example, @var{guix-service-type} extends three services:" |
44698 | msgstr "" | |
44699 | ||
44700 | #. type: item | |
39764ef8 | 44701 | #: doc/guix.texi:20944 |
b9fe8fd6 JL |
44702 | #, no-wrap |
44703 | msgid "shepherd-root-service-type" | |
44704 | msgstr "" | |
44705 | ||
44706 | #. type: table | |
39764ef8 | 44707 | #: doc/guix.texi:20949 |
b9fe8fd6 JL |
44708 | msgid "" |
44709 | "The @var{guix-shepherd-service} procedure defines how the Shepherd service " | |
44710 | "is extended. Namely, it returns a @code{<shepherd-service>} object that " | |
44711 | "defines how @command{guix-daemon} is started and stopped (@pxref{Shepherd " | |
44712 | "Services})." | |
44713 | msgstr "" | |
44714 | ||
44715 | #. type: item | |
39764ef8 | 44716 | #: doc/guix.texi:20950 |
b9fe8fd6 JL |
44717 | #, no-wrap |
44718 | msgid "account-service-type" | |
44719 | msgstr "" | |
44720 | ||
44721 | #. type: table | |
39764ef8 | 44722 | #: doc/guix.texi:20955 |
b9fe8fd6 JL |
44723 | msgid "" |
44724 | "This extension for this service is computed by @var{guix-accounts}, which " | |
44725 | "returns a list of @code{user-group} and @code{user-account} objects " | |
44726 | "representing the build user accounts (@pxref{Invoking guix-daemon})." | |
44727 | msgstr "" | |
44728 | ||
44729 | #. type: item | |
39764ef8 | 44730 | #: doc/guix.texi:20956 |
b9fe8fd6 JL |
44731 | #, no-wrap |
44732 | msgid "activation-service-type" | |
44733 | msgstr "" | |
44734 | ||
44735 | #. type: table | |
39764ef8 | 44736 | #: doc/guix.texi:20960 |
b9fe8fd6 JL |
44737 | msgid "" |
44738 | "Here @var{guix-activation} is a procedure that returns a gexp, which is a " | |
44739 | "code snippet to run at ``activation time''---e.g., when the service is " | |
44740 | "booted." | |
44741 | msgstr "" | |
44742 | ||
44743 | #. type: Plain text | |
39764ef8 | 44744 | #: doc/guix.texi:20963 |
b9fe8fd6 JL |
44745 | msgid "A service of this type is instantiated like this:" |
44746 | msgstr "" | |
44747 | ||
44748 | #. type: example | |
39764ef8 | 44749 | #: doc/guix.texi:20969 |
b9fe8fd6 JL |
44750 | #, no-wrap |
44751 | msgid "" | |
44752 | "(service guix-service-type\n" | |
44753 | " (guix-configuration\n" | |
44754 | " (build-accounts 5)\n" | |
44755 | " (use-substitutes? #f)))\n" | |
44756 | msgstr "" | |
44757 | ||
44758 | #. type: Plain text | |
39764ef8 | 44759 | #: doc/guix.texi:20977 |
b9fe8fd6 JL |
44760 | msgid "" |
44761 | "The second argument to the @code{service} form is a value representing the " | |
39764ef8 JL |
44762 | "parameters of this specific service instance. @xref{guix-configuration-" |
44763 | "type, @code{guix-configuration}}, for information about the @code{guix-" | |
44764 | "configuration} data type. When the value is omitted, the default value " | |
44765 | "specified by @code{guix-service-type} is used:" | |
b9fe8fd6 JL |
44766 | msgstr "" |
44767 | ||
44768 | #. type: example | |
39764ef8 | 44769 | #: doc/guix.texi:20980 |
b9fe8fd6 JL |
44770 | #, no-wrap |
44771 | msgid "(service guix-service-type)\n" | |
44772 | msgstr "" | |
44773 | ||
44774 | #. type: Plain text | |
39764ef8 | 44775 | #: doc/guix.texi:20984 |
b9fe8fd6 JL |
44776 | msgid "" |
44777 | "@var{guix-service-type} is quite simple because it extends other services " | |
44778 | "but is not extensible itself." | |
44779 | msgstr "" | |
44780 | ||
44781 | #. type: Plain text | |
39764ef8 | 44782 | #: doc/guix.texi:20988 |
b9fe8fd6 JL |
44783 | msgid "The service type for an @emph{extensible} service looks like this:" |
44784 | msgstr "" | |
44785 | ||
44786 | #. type: example | |
39764ef8 | 44787 | #: doc/guix.texi:20995 |
b9fe8fd6 JL |
44788 | #, no-wrap |
44789 | msgid "" | |
44790 | "(define udev-service-type\n" | |
44791 | " (service-type (name 'udev)\n" | |
44792 | " (extensions\n" | |
44793 | " (list (service-extension shepherd-root-service-type\n" | |
44794 | " udev-shepherd-service)))\n" | |
44795 | "\n" | |
44796 | msgstr "" | |
44797 | ||
44798 | #. type: example | |
39764ef8 | 44799 | #: doc/guix.texi:21003 |
b9fe8fd6 JL |
44800 | #, no-wrap |
44801 | msgid "" | |
44802 | " (compose concatenate) ;concatenate the list of rules\n" | |
44803 | " (extend (lambda (config rules)\n" | |
44804 | " (match config\n" | |
44805 | " (($ <udev-configuration> udev initial-rules)\n" | |
44806 | " (udev-configuration\n" | |
44807 | " (udev udev) ;the udev package to use\n" | |
44808 | " (rules (append initial-rules rules)))))))))\n" | |
44809 | msgstr "" | |
44810 | ||
44811 | #. type: Plain text | |
39764ef8 | 44812 | #: doc/guix.texi:21009 |
b9fe8fd6 | 44813 | msgid "" |
39764ef8 JL |
44814 | "This is the service type for the @uref{https://wiki.gentoo.org/wiki/Project:" |
44815 | "Eudev, eudev device management daemon}. Compared to the previous example, " | |
44816 | "in addition to an extension of @var{shepherd-root-service-type}, we see two " | |
44817 | "new fields:" | |
b9fe8fd6 JL |
44818 | msgstr "" |
44819 | ||
44820 | #. type: item | |
39764ef8 | 44821 | #: doc/guix.texi:21011 |
b9fe8fd6 JL |
44822 | #, no-wrap |
44823 | msgid "compose" | |
44824 | msgstr "" | |
44825 | ||
44826 | #. type: table | |
39764ef8 | 44827 | #: doc/guix.texi:21014 |
b9fe8fd6 JL |
44828 | msgid "" |
44829 | "This is the procedure to @dfn{compose} the list of extensions to services of " | |
44830 | "this type." | |
44831 | msgstr "" | |
44832 | ||
44833 | #. type: table | |
39764ef8 | 44834 | #: doc/guix.texi:21017 |
b9fe8fd6 JL |
44835 | msgid "" |
44836 | "Services can extend the udev service by passing it lists of rules; we " | |
44837 | "compose those extensions simply by concatenating them." | |
44838 | msgstr "" | |
44839 | ||
44840 | #. type: item | |
39764ef8 | 44841 | #: doc/guix.texi:21018 |
b9fe8fd6 JL |
44842 | #, no-wrap |
44843 | msgid "extend" | |
44844 | msgstr "" | |
44845 | ||
44846 | #. type: table | |
39764ef8 | 44847 | #: doc/guix.texi:21021 |
b9fe8fd6 JL |
44848 | msgid "" |
44849 | "This procedure defines how the value of the service is @dfn{extended} with " | |
44850 | "the composition of the extensions." | |
44851 | msgstr "" | |
44852 | ||
44853 | #. type: table | |
39764ef8 | 44854 | #: doc/guix.texi:21026 |
b9fe8fd6 JL |
44855 | msgid "" |
44856 | "Udev extensions are composed into a list of rules, but the udev service " | |
44857 | "value is itself a @code{<udev-configuration>} record. So here, we extend " | |
44858 | "that record by appending the list of rules it contains to the list of " | |
44859 | "contributed rules." | |
44860 | msgstr "" | |
44861 | ||
44862 | #. type: table | |
39764ef8 | 44863 | #: doc/guix.texi:21032 |
b9fe8fd6 JL |
44864 | msgid "" |
44865 | "This is a string giving an overview of the service type. The string can " | |
44866 | "contain Texinfo markup (@pxref{Overview,,, texinfo, GNU Texinfo}). The " | |
44867 | "@command{guix system search} command searches these strings and displays " | |
44868 | "them (@pxref{Invoking guix system})." | |
44869 | msgstr "" | |
44870 | ||
44871 | #. type: Plain text | |
39764ef8 | 44872 | #: doc/guix.texi:21037 |
b9fe8fd6 JL |
44873 | msgid "" |
44874 | "There can be only one instance of an extensible service type such as " | |
44875 | "@var{udev-service-type}. If there were more, the @code{service-extension} " | |
44876 | "specifications would be ambiguous." | |
44877 | msgstr "" | |
44878 | ||
44879 | #. type: Plain text | |
39764ef8 | 44880 | #: doc/guix.texi:21040 |
b9fe8fd6 JL |
44881 | msgid "" |
44882 | "Still here? The next section provides a reference of the programming " | |
44883 | "interface for services." | |
44884 | msgstr "" | |
44885 | ||
44886 | #. type: Plain text | |
39764ef8 | 44887 | #: doc/guix.texi:21048 |
b9fe8fd6 JL |
44888 | msgid "" |
44889 | "We have seen an overview of service types (@pxref{Service Types and " | |
44890 | "Services}). This section provides a reference on how to manipulate services " | |
44891 | "and service types. This interface is provided by the @code{(gnu services)} " | |
44892 | "module." | |
44893 | msgstr "" | |
44894 | ||
44895 | #. type: deffn | |
39764ef8 | 44896 | #: doc/guix.texi:21049 |
b9fe8fd6 JL |
44897 | #, no-wrap |
44898 | msgid "{Scheme Procedure} service @var{type} [@var{value}]" | |
44899 | msgstr "" | |
44900 | ||
44901 | #. type: deffn | |
39764ef8 | 44902 | #: doc/guix.texi:21053 |
b9fe8fd6 JL |
44903 | msgid "" |
44904 | "Return a new service of @var{type}, a @code{<service-type>} object (see " | |
44905 | "below.) @var{value} can be any object; it represents the parameters of this " | |
44906 | "particular service instance." | |
44907 | msgstr "" | |
44908 | ||
44909 | #. type: deffn | |
39764ef8 | 44910 | #: doc/guix.texi:21057 |
b9fe8fd6 JL |
44911 | msgid "" |
44912 | "When @var{value} is omitted, the default value specified by @var{type} is " | |
44913 | "used; if @var{type} does not specify a default value, an error is raised." | |
44914 | msgstr "" | |
44915 | ||
44916 | #. type: deffn | |
39764ef8 | 44917 | #: doc/guix.texi:21059 |
b9fe8fd6 JL |
44918 | msgid "For instance, this:" |
44919 | msgstr "" | |
44920 | ||
44921 | #. type: example | |
39764ef8 | 44922 | #: doc/guix.texi:21062 |
b9fe8fd6 JL |
44923 | #, no-wrap |
44924 | msgid "(service openssh-service-type)\n" | |
44925 | msgstr "" | |
44926 | ||
44927 | #. type: deffn | |
39764ef8 | 44928 | #: doc/guix.texi:21066 |
b9fe8fd6 JL |
44929 | msgid "is equivalent to this:" |
44930 | msgstr "" | |
44931 | ||
44932 | #. type: example | |
39764ef8 | 44933 | #: doc/guix.texi:21070 |
b9fe8fd6 JL |
44934 | #, no-wrap |
44935 | msgid "" | |
44936 | "(service openssh-service-type\n" | |
44937 | " (openssh-configuration))\n" | |
44938 | msgstr "" | |
44939 | ||
44940 | #. type: deffn | |
39764ef8 | 44941 | #: doc/guix.texi:21074 |
b9fe8fd6 JL |
44942 | msgid "" |
44943 | "In both cases the result is an instance of @code{openssh-service-type} with " | |
44944 | "the default configuration." | |
44945 | msgstr "" | |
44946 | ||
44947 | #. type: deffn | |
39764ef8 | 44948 | #: doc/guix.texi:21076 |
b9fe8fd6 JL |
44949 | #, no-wrap |
44950 | msgid "{Scheme Procedure} service? @var{obj}" | |
44951 | msgstr "" | |
44952 | ||
44953 | #. type: deffn | |
39764ef8 | 44954 | #: doc/guix.texi:21078 |
b9fe8fd6 JL |
44955 | msgid "Return true if @var{obj} is a service." |
44956 | msgstr "" | |
44957 | ||
44958 | #. type: deffn | |
39764ef8 | 44959 | #: doc/guix.texi:21080 |
b9fe8fd6 JL |
44960 | #, no-wrap |
44961 | msgid "{Scheme Procedure} service-kind @var{service}" | |
44962 | msgstr "" | |
44963 | ||
44964 | #. type: deffn | |
39764ef8 JL |
44965 | #: doc/guix.texi:21082 |
44966 | msgid "" | |
44967 | "Return the type of @var{service}---i.e., a @code{<service-type>} object." | |
b9fe8fd6 JL |
44968 | msgstr "" |
44969 | ||
44970 | #. type: deffn | |
39764ef8 | 44971 | #: doc/guix.texi:21084 |
b9fe8fd6 JL |
44972 | #, no-wrap |
44973 | msgid "{Scheme Procedure} service-value @var{service}" | |
44974 | msgstr "" | |
44975 | ||
44976 | #. type: deffn | |
39764ef8 | 44977 | #: doc/guix.texi:21087 |
b9fe8fd6 JL |
44978 | msgid "" |
44979 | "Return the value associated with @var{service}. It represents its " | |
44980 | "parameters." | |
44981 | msgstr "" | |
44982 | ||
44983 | #. type: Plain text | |
39764ef8 | 44984 | #: doc/guix.texi:21090 |
b9fe8fd6 JL |
44985 | msgid "Here is an example of how a service is created and manipulated:" |
44986 | msgstr "" | |
44987 | ||
44988 | #. type: example | |
39764ef8 | 44989 | #: doc/guix.texi:21099 |
b9fe8fd6 JL |
44990 | #, no-wrap |
44991 | msgid "" | |
44992 | "(define s\n" | |
44993 | " (service nginx-service-type\n" | |
44994 | " (nginx-configuration\n" | |
44995 | " (nginx nginx)\n" | |
44996 | " (log-directory log-directory)\n" | |
44997 | " (run-directory run-directory)\n" | |
44998 | " (file config-file))))\n" | |
44999 | "\n" | |
45000 | msgstr "" | |
45001 | ||
45002 | #. type: example | |
39764ef8 | 45003 | #: doc/guix.texi:21102 |
b9fe8fd6 JL |
45004 | #, no-wrap |
45005 | msgid "" | |
45006 | "(service? s)\n" | |
45007 | "@result{} #t\n" | |
45008 | "\n" | |
45009 | msgstr "" | |
45010 | ||
45011 | #. type: example | |
39764ef8 | 45012 | #: doc/guix.texi:21105 |
b9fe8fd6 JL |
45013 | #, no-wrap |
45014 | msgid "" | |
45015 | "(eq? (service-kind s) nginx-service-type)\n" | |
45016 | "@result{} #t\n" | |
45017 | msgstr "" | |
45018 | ||
45019 | #. type: Plain text | |
39764ef8 | 45020 | #: doc/guix.texi:21115 |
b9fe8fd6 JL |
45021 | msgid "" |
45022 | "The @code{modify-services} form provides a handy way to change the " | |
45023 | "parameters of some of the services of a list such as @var{%base-services} " | |
45024 | "(@pxref{Base Services, @code{%base-services}}). It evaluates to a list of " | |
45025 | "services. Of course, you could always use standard list combinators such as " | |
45026 | "@code{map} and @code{fold} to do that (@pxref{SRFI-1, List Library,, guile, " | |
45027 | "GNU Guile Reference Manual}); @code{modify-services} simply provides a more " | |
45028 | "concise form for this common pattern." | |
45029 | msgstr "" | |
45030 | ||
45031 | #. type: deffn | |
39764ef8 | 45032 | #: doc/guix.texi:21116 |
b9fe8fd6 JL |
45033 | #, no-wrap |
45034 | msgid "{Scheme Syntax} modify-services @var{services} @" | |
45035 | msgstr "" | |
45036 | ||
45037 | #. type: deffn | |
39764ef8 | 45038 | #: doc/guix.texi:21118 |
b9fe8fd6 JL |
45039 | msgid "(@var{type} @var{variable} => @var{body}) @dots{}" |
45040 | msgstr "" | |
45041 | ||
45042 | #. type: deffn | |
39764ef8 | 45043 | #: doc/guix.texi:21121 |
b9fe8fd6 JL |
45044 | msgid "" |
45045 | "Modify the services listed in @var{services} according to the given " | |
45046 | "clauses. Each clause has the form:" | |
45047 | msgstr "" | |
45048 | ||
45049 | #. type: example | |
39764ef8 | 45050 | #: doc/guix.texi:21124 |
b9fe8fd6 JL |
45051 | #, no-wrap |
45052 | msgid "(@var{type} @var{variable} => @var{body})\n" | |
45053 | msgstr "" | |
45054 | ||
45055 | #. type: deffn | |
39764ef8 | 45056 | #: doc/guix.texi:21131 |
b9fe8fd6 JL |
45057 | msgid "" |
45058 | "where @var{type} is a service type---e.g., @code{guix-service-type}---and " | |
45059 | "@var{variable} is an identifier that is bound within the @var{body} to the " | |
45060 | "service parameters---e.g., a @code{guix-configuration} instance---of the " | |
45061 | "original service of that @var{type}." | |
45062 | msgstr "" | |
45063 | ||
45064 | #. type: deffn | |
39764ef8 | 45065 | #: doc/guix.texi:21138 |
b9fe8fd6 JL |
45066 | msgid "" |
45067 | "The @var{body} should evaluate to the new service parameters, which will be " | |
45068 | "used to configure the new service. This new service will replace the " | |
45069 | "original in the resulting list. Because a service's service parameters are " | |
45070 | "created using @code{define-record-type*}, you can write a succinct " | |
45071 | "@var{body} that evaluates to the new service parameters by using the " | |
45072 | "@code{inherit} feature that @code{define-record-type*} provides." | |
45073 | msgstr "" | |
45074 | ||
45075 | #. type: deffn | |
39764ef8 | 45076 | #: doc/guix.texi:21140 |
b9fe8fd6 JL |
45077 | msgid "@xref{Using the Configuration System}, for example usage." |
45078 | msgstr "" | |
45079 | ||
45080 | #. type: Plain text | |
39764ef8 | 45081 | #: doc/guix.texi:21147 |
b9fe8fd6 JL |
45082 | msgid "" |
45083 | "Next comes the programming interface for service types. This is something " | |
45084 | "you want to know when writing new service definitions, but not necessarily " | |
45085 | "when simply looking for ways to customize your @code{operating-system} " | |
45086 | "declaration." | |
45087 | msgstr "" | |
45088 | ||
45089 | #. type: deftp | |
39764ef8 | 45090 | #: doc/guix.texi:21148 |
b9fe8fd6 JL |
45091 | #, no-wrap |
45092 | msgid "{Data Type} service-type" | |
45093 | msgstr "" | |
45094 | ||
45095 | #. type: cindex | |
39764ef8 | 45096 | #: doc/guix.texi:21149 |
b9fe8fd6 JL |
45097 | #, no-wrap |
45098 | msgid "service type" | |
45099 | msgstr "" | |
45100 | ||
45101 | #. type: deftp | |
39764ef8 | 45102 | #: doc/guix.texi:21152 |
b9fe8fd6 JL |
45103 | msgid "" |
45104 | "This is the representation of a @dfn{service type} (@pxref{Service Types and " | |
45105 | "Services})." | |
45106 | msgstr "" | |
45107 | ||
45108 | #. type: table | |
39764ef8 | 45109 | #: doc/guix.texi:21156 |
b9fe8fd6 JL |
45110 | msgid "This is a symbol, used only to simplify inspection and debugging." |
45111 | msgstr "" | |
45112 | ||
45113 | #. type: code{#1} | |
39764ef8 | 45114 | #: doc/guix.texi:21157 |
b9fe8fd6 JL |
45115 | #, no-wrap |
45116 | msgid "extensions" | |
45117 | msgstr "" | |
45118 | ||
45119 | #. type: table | |
39764ef8 | 45120 | #: doc/guix.texi:21159 |
b9fe8fd6 JL |
45121 | msgid "A non-empty list of @code{<service-extension>} objects (see below)." |
45122 | msgstr "" | |
45123 | ||
45124 | #. type: item | |
39764ef8 | 45125 | #: doc/guix.texi:21160 |
b9fe8fd6 JL |
45126 | #, no-wrap |
45127 | msgid "@code{compose} (default: @code{#f})" | |
45128 | msgstr "" | |
45129 | ||
45130 | #. type: table | |
39764ef8 | 45131 | #: doc/guix.texi:21164 |
b9fe8fd6 JL |
45132 | msgid "" |
45133 | "If this is @code{#f}, then the service type denotes services that cannot be " | |
39764ef8 | 45134 | "extended---i.e., services that do not receive ``values'' from other services." |
b9fe8fd6 JL |
45135 | msgstr "" |
45136 | ||
45137 | #. type: table | |
39764ef8 | 45138 | #: doc/guix.texi:21168 |
b9fe8fd6 JL |
45139 | msgid "" |
45140 | "Otherwise, it must be a one-argument procedure. The procedure is called by " | |
45141 | "@code{fold-services} and is passed a list of values collected from " | |
45142 | "extensions. It may return any single value." | |
45143 | msgstr "" | |
45144 | ||
45145 | #. type: item | |
39764ef8 | 45146 | #: doc/guix.texi:21169 |
b9fe8fd6 JL |
45147 | #, no-wrap |
45148 | msgid "@code{extend} (default: @code{#f})" | |
45149 | msgstr "" | |
45150 | ||
45151 | #. type: table | |
39764ef8 | 45152 | #: doc/guix.texi:21171 |
b9fe8fd6 JL |
45153 | msgid "If this is @code{#f}, services of this type cannot be extended." |
45154 | msgstr "" | |
45155 | ||
45156 | #. type: table | |
39764ef8 | 45157 | #: doc/guix.texi:21177 |
b9fe8fd6 JL |
45158 | msgid "" |
45159 | "Otherwise, it must be a two-argument procedure: @code{fold-services} calls " | |
45160 | "it, passing it the initial value of the service as the first argument and " | |
45161 | "the result of applying @code{compose} to the extension values as the second " | |
45162 | "argument. It must return a value that is a valid parameter value for the " | |
45163 | "service instance." | |
45164 | msgstr "" | |
45165 | ||
45166 | #. type: deftp | |
39764ef8 | 45167 | #: doc/guix.texi:21180 |
b9fe8fd6 JL |
45168 | msgid "@xref{Service Types and Services}, for examples." |
45169 | msgstr "" | |
45170 | ||
45171 | #. type: deffn | |
39764ef8 | 45172 | #: doc/guix.texi:21182 |
b9fe8fd6 JL |
45173 | #, no-wrap |
45174 | msgid "{Scheme Procedure} service-extension @var{target-type} @" | |
45175 | msgstr "" | |
45176 | ||
45177 | #. type: deffn | |
39764ef8 | 45178 | #: doc/guix.texi:21188 |
b9fe8fd6 | 45179 | msgid "" |
39764ef8 JL |
45180 | "@var{compute} Return a new extension for services of type @var{target-" |
45181 | "type}. @var{compute} must be a one-argument procedure: @code{fold-services} " | |
45182 | "calls it, passing it the value associated with the service that provides the " | |
45183 | "extension; it must return a valid value for the target service." | |
b9fe8fd6 JL |
45184 | msgstr "" |
45185 | ||
45186 | #. type: deffn | |
39764ef8 | 45187 | #: doc/guix.texi:21190 |
b9fe8fd6 JL |
45188 | #, no-wrap |
45189 | msgid "{Scheme Procedure} service-extension? @var{obj}" | |
45190 | msgstr "" | |
45191 | ||
45192 | #. type: deffn | |
39764ef8 | 45193 | #: doc/guix.texi:21192 |
b9fe8fd6 JL |
45194 | msgid "Return true if @var{obj} is a service extension." |
45195 | msgstr "" | |
45196 | ||
45197 | #. type: Plain text | |
39764ef8 | 45198 | #: doc/guix.texi:21198 |
b9fe8fd6 JL |
45199 | msgid "" |
45200 | "Occasionally, you might want to simply extend an existing service. This " | |
45201 | "involves creating a new service type and specifying the extension of " | |
45202 | "interest, which can be verbose; the @code{simple-service} procedure provides " | |
45203 | "a shorthand for this." | |
45204 | msgstr "" | |
45205 | ||
45206 | #. type: deffn | |
39764ef8 | 45207 | #: doc/guix.texi:21199 |
b9fe8fd6 JL |
45208 | #, no-wrap |
45209 | msgid "{Scheme Procedure} simple-service @var{name} @var{target} @var{value}" | |
45210 | msgstr "" | |
45211 | ||
45212 | #. type: deffn | |
39764ef8 | 45213 | #: doc/guix.texi:21203 |
b9fe8fd6 JL |
45214 | msgid "" |
45215 | "Return a service that extends @var{target} with @var{value}. This works by " | |
45216 | "creating a singleton service type @var{name}, of which the returned service " | |
45217 | "is an instance." | |
45218 | msgstr "" | |
45219 | ||
45220 | #. type: deffn | |
39764ef8 | 45221 | #: doc/guix.texi:21206 |
b9fe8fd6 JL |
45222 | msgid "" |
45223 | "For example, this extends mcron (@pxref{Scheduled Job Execution}) with an " | |
45224 | "additional job:" | |
45225 | msgstr "" | |
45226 | ||
45227 | #. type: example | |
39764ef8 | 45228 | #: doc/guix.texi:21210 |
b9fe8fd6 JL |
45229 | #, no-wrap |
45230 | msgid "" | |
45231 | "(simple-service 'my-mcron-job mcron-service-type\n" | |
45232 | " #~(job '(next-hour (3)) \"guix gc -F 2G\"))\n" | |
45233 | msgstr "" | |
45234 | ||
45235 | #. type: Plain text | |
39764ef8 | 45236 | #: doc/guix.texi:21220 |
b9fe8fd6 JL |
45237 | msgid "" |
45238 | "At the core of the service abstraction lies the @code{fold-services} " | |
45239 | "procedure, which is responsible for ``compiling'' a list of services down to " | |
45240 | "a single directory that contains everything needed to boot and run the " | |
45241 | "system---the directory shown by the @command{guix system build} command " | |
45242 | "(@pxref{Invoking guix system}). In essence, it propagates service " | |
45243 | "extensions down the service graph, updating each node parameters on the way, " | |
45244 | "until it reaches the root node." | |
45245 | msgstr "" | |
45246 | ||
45247 | #. type: deffn | |
39764ef8 | 45248 | #: doc/guix.texi:21221 |
b9fe8fd6 JL |
45249 | #, no-wrap |
45250 | msgid "{Scheme Procedure} fold-services @var{services} @" | |
45251 | msgstr "" | |
45252 | ||
45253 | #. type: deffn | |
39764ef8 | 45254 | #: doc/guix.texi:21225 |
b9fe8fd6 JL |
45255 | msgid "" |
45256 | "[#:target-type @var{system-service-type}] Fold @var{services} by propagating " | |
45257 | "their extensions down to the root of type @var{target-type}; return the root " | |
45258 | "service adjusted accordingly." | |
45259 | msgstr "" | |
45260 | ||
45261 | #. type: Plain text | |
39764ef8 | 45262 | #: doc/guix.texi:21229 |
b9fe8fd6 JL |
45263 | msgid "" |
45264 | "Lastly, the @code{(gnu services)} module also defines several essential " | |
45265 | "service types, some of which are listed below." | |
45266 | msgstr "" | |
45267 | ||
45268 | #. type: defvr | |
39764ef8 | 45269 | #: doc/guix.texi:21230 |
b9fe8fd6 JL |
45270 | #, no-wrap |
45271 | msgid "{Scheme Variable} system-service-type" | |
45272 | msgstr "" | |
45273 | ||
45274 | #. type: defvr | |
39764ef8 | 45275 | #: doc/guix.texi:21233 |
b9fe8fd6 JL |
45276 | msgid "" |
45277 | "This is the root of the service graph. It produces the system directory as " | |
45278 | "returned by the @command{guix system build} command." | |
45279 | msgstr "" | |
45280 | ||
45281 | #. type: defvr | |
39764ef8 | 45282 | #: doc/guix.texi:21235 |
b9fe8fd6 JL |
45283 | #, no-wrap |
45284 | msgid "{Scheme Variable} boot-service-type" | |
45285 | msgstr "" | |
45286 | ||
45287 | #. type: defvr | |
39764ef8 | 45288 | #: doc/guix.texi:21238 |
b9fe8fd6 JL |
45289 | msgid "" |
45290 | "The type of the ``boot service'', which produces the @dfn{boot script}. The " | |
45291 | "boot script is what the initial RAM disk runs when booting." | |
45292 | msgstr "" | |
45293 | ||
45294 | #. type: defvr | |
39764ef8 | 45295 | #: doc/guix.texi:21240 |
b9fe8fd6 JL |
45296 | #, no-wrap |
45297 | msgid "{Scheme Variable} etc-service-type" | |
45298 | msgstr "" | |
45299 | ||
45300 | #. type: defvr | |
39764ef8 | 45301 | #: doc/guix.texi:21244 |
b9fe8fd6 JL |
45302 | msgid "" |
45303 | "The type of the @file{/etc} service. This service is used to create files " | |
39764ef8 | 45304 | "under @file{/etc} and can be extended by passing it name/file tuples such as:" |
b9fe8fd6 JL |
45305 | msgstr "" |
45306 | ||
45307 | #. type: example | |
39764ef8 | 45308 | #: doc/guix.texi:21247 |
b9fe8fd6 JL |
45309 | #, no-wrap |
45310 | msgid "(list `(\"issue\" ,(plain-file \"issue\" \"Welcome!\\n\")))\n" | |
45311 | msgstr "" | |
45312 | ||
45313 | #. type: defvr | |
39764ef8 | 45314 | #: doc/guix.texi:21251 |
b9fe8fd6 JL |
45315 | msgid "" |
45316 | "In this example, the effect would be to add an @file{/etc/issue} file " | |
45317 | "pointing to the given file." | |
45318 | msgstr "" | |
45319 | ||
45320 | #. type: defvr | |
39764ef8 | 45321 | #: doc/guix.texi:21253 |
b9fe8fd6 JL |
45322 | #, no-wrap |
45323 | msgid "{Scheme Variable} setuid-program-service-type" | |
45324 | msgstr "" | |
45325 | ||
45326 | #. type: defvr | |
39764ef8 | 45327 | #: doc/guix.texi:21257 |
b9fe8fd6 JL |
45328 | msgid "" |
45329 | "Type for the ``setuid-program service''. This service collects lists of " | |
39764ef8 JL |
45330 | "executable file names, passed as gexps, and adds them to the set of setuid-" |
45331 | "root programs on the system (@pxref{Setuid Programs})." | |
b9fe8fd6 JL |
45332 | msgstr "" |
45333 | ||
45334 | #. type: defvr | |
39764ef8 | 45335 | #: doc/guix.texi:21259 |
b9fe8fd6 JL |
45336 | #, no-wrap |
45337 | msgid "{Scheme Variable} profile-service-type" | |
45338 | msgstr "" | |
45339 | ||
45340 | #. type: defvr | |
39764ef8 | 45341 | #: doc/guix.texi:21263 |
b9fe8fd6 JL |
45342 | msgid "" |
45343 | "Type of the service that populates the @dfn{system profile}---i.e., the " | |
45344 | "programs under @file{/run/current-system/profile}. Other services can " | |
45345 | "extend it by passing it lists of packages to add to the system profile." | |
45346 | msgstr "" | |
45347 | ||
45348 | #. type: cindex | |
39764ef8 | 45349 | #: doc/guix.texi:21269 |
b9fe8fd6 JL |
45350 | #, no-wrap |
45351 | msgid "shepherd services" | |
45352 | msgstr "" | |
45353 | ||
45354 | #. type: cindex | |
39764ef8 | 45355 | #: doc/guix.texi:21270 |
b9fe8fd6 JL |
45356 | #, no-wrap |
45357 | msgid "PID 1" | |
45358 | msgstr "" | |
45359 | ||
45360 | #. type: cindex | |
39764ef8 | 45361 | #: doc/guix.texi:21271 |
b9fe8fd6 JL |
45362 | #, no-wrap |
45363 | msgid "init system" | |
45364 | msgstr "" | |
45365 | ||
45366 | #. type: Plain text | |
39764ef8 | 45367 | #: doc/guix.texi:21277 |
b9fe8fd6 JL |
45368 | msgid "" |
45369 | "The @code{(gnu services shepherd)} module provides a way to define services " | |
45370 | "managed by the GNU@tie{}Shepherd, which is the GuixSD initialization " | |
45371 | "system---the first process that is started when the system boots, also known " | |
45372 | "as PID@tie{}1 (@pxref{Introduction,,, shepherd, The GNU Shepherd Manual})." | |
45373 | msgstr "" | |
45374 | ||
45375 | #. type: Plain text | |
39764ef8 | 45376 | #: doc/guix.texi:21283 |
b9fe8fd6 JL |
45377 | msgid "" |
45378 | "Services in the Shepherd can depend on each other. For instance, the SSH " | |
45379 | "daemon may need to be started after the syslog daemon has been started, " | |
45380 | "which in turn can only happen once all the file systems have been mounted. " | |
45381 | "The simple operating system defined earlier (@pxref{Using the Configuration " | |
45382 | "System}) results in a service graph like this:" | |
45383 | msgstr "" | |
45384 | ||
45385 | #. type: Plain text | |
39764ef8 | 45386 | #: doc/guix.texi:21285 |
b9fe8fd6 JL |
45387 | msgid "@image{images/shepherd-graph,,5in,Typical shepherd service graph.}" |
45388 | msgstr "" | |
45389 | ||
45390 | #. type: Plain text | |
39764ef8 | 45391 | #: doc/guix.texi:21289 |
b9fe8fd6 JL |
45392 | msgid "" |
45393 | "You can actually generate such a graph for any operating system definition " | |
39764ef8 JL |
45394 | "using the @command{guix system shepherd-graph} command (@pxref{system-" |
45395 | "shepherd-graph, @command{guix system shepherd-graph}})." | |
b9fe8fd6 JL |
45396 | msgstr "" |
45397 | ||
45398 | #. type: Plain text | |
39764ef8 | 45399 | #: doc/guix.texi:21293 |
b9fe8fd6 | 45400 | msgid "" |
39764ef8 JL |
45401 | "The @var{%shepherd-root-service} is a service object representing PID@tie{}" |
45402 | "1, of type @var{shepherd-root-service-type}; it can be extended by passing " | |
45403 | "it lists of @code{<shepherd-service>} objects." | |
b9fe8fd6 JL |
45404 | msgstr "" |
45405 | ||
45406 | #. type: deftp | |
39764ef8 | 45407 | #: doc/guix.texi:21294 |
b9fe8fd6 JL |
45408 | #, no-wrap |
45409 | msgid "{Data Type} shepherd-service" | |
45410 | msgstr "" | |
45411 | ||
45412 | #. type: deftp | |
39764ef8 | 45413 | #: doc/guix.texi:21296 |
b9fe8fd6 JL |
45414 | msgid "The data type representing a service managed by the Shepherd." |
45415 | msgstr "" | |
45416 | ||
45417 | #. type: code{#1} | |
39764ef8 | 45418 | #: doc/guix.texi:21298 |
b9fe8fd6 JL |
45419 | #, no-wrap |
45420 | msgid "provision" | |
45421 | msgstr "" | |
45422 | ||
45423 | #. type: table | |
39764ef8 | 45424 | #: doc/guix.texi:21300 |
b9fe8fd6 JL |
45425 | msgid "This is a list of symbols denoting what the service provides." |
45426 | msgstr "" | |
45427 | ||
45428 | #. type: table | |
39764ef8 | 45429 | #: doc/guix.texi:21305 |
b9fe8fd6 JL |
45430 | msgid "" |
45431 | "These are the names that may be passed to @command{herd start}, " | |
45432 | "@command{herd status}, and similar commands (@pxref{Invoking herd,,, " | |
45433 | "shepherd, The GNU Shepherd Manual}). @xref{Slots of services, the " | |
45434 | "@code{provides} slot,, shepherd, The GNU Shepherd Manual}, for details." | |
45435 | msgstr "" | |
45436 | ||
45437 | #. type: item | |
39764ef8 | 45438 | #: doc/guix.texi:21306 |
b9fe8fd6 JL |
45439 | #, no-wrap |
45440 | msgid "@code{requirements} (default: @code{'()})" | |
45441 | msgstr "" | |
45442 | ||
45443 | #. type: table | |
39764ef8 | 45444 | #: doc/guix.texi:21308 |
b9fe8fd6 JL |
45445 | msgid "List of symbols denoting the Shepherd services this one depends on." |
45446 | msgstr "" | |
45447 | ||
45448 | #. type: item | |
39764ef8 | 45449 | #: doc/guix.texi:21309 |
b9fe8fd6 JL |
45450 | #, no-wrap |
45451 | msgid "@code{respawn?} (default: @code{#t})" | |
45452 | msgstr "" | |
45453 | ||
45454 | #. type: table | |
39764ef8 | 45455 | #: doc/guix.texi:21312 |
b9fe8fd6 JL |
45456 | msgid "" |
45457 | "Whether to restart the service when it stops, for instance when the " | |
45458 | "underlying process dies." | |
45459 | msgstr "" | |
45460 | ||
45461 | #. type: code{#1} | |
39764ef8 | 45462 | #: doc/guix.texi:21313 |
b9fe8fd6 JL |
45463 | #, no-wrap |
45464 | msgid "start" | |
45465 | msgstr "" | |
45466 | ||
45467 | #. type: itemx | |
39764ef8 | 45468 | #: doc/guix.texi:21314 |
b9fe8fd6 JL |
45469 | #, no-wrap |
45470 | msgid "@code{stop} (default: @code{#~(const #f)})" | |
45471 | msgstr "" | |
45472 | ||
45473 | #. type: table | |
39764ef8 | 45474 | #: doc/guix.texi:21320 |
b9fe8fd6 JL |
45475 | msgid "" |
45476 | "The @code{start} and @code{stop} fields refer to the Shepherd's facilities " | |
45477 | "to start and stop processes (@pxref{Service De- and Constructors,,, " | |
45478 | "shepherd, The GNU Shepherd Manual}). They are given as G-expressions that " | |
45479 | "get expanded in the Shepherd configuration file (@pxref{G-Expressions})." | |
45480 | msgstr "" | |
45481 | ||
45482 | #. type: table | |
39764ef8 | 45483 | #: doc/guix.texi:21323 |
b9fe8fd6 JL |
45484 | msgid "A documentation string, as shown when running:" |
45485 | msgstr "" | |
45486 | ||
45487 | #. type: example | |
39764ef8 | 45488 | #: doc/guix.texi:21326 |
b9fe8fd6 JL |
45489 | #, no-wrap |
45490 | msgid "herd doc @var{service-name}\n" | |
45491 | msgstr "" | |
45492 | ||
45493 | #. type: table | |
39764ef8 | 45494 | #: doc/guix.texi:21330 |
b9fe8fd6 JL |
45495 | msgid "" |
45496 | "where @var{service-name} is one of the symbols in @var{provision} " | |
45497 | "(@pxref{Invoking herd,,, shepherd, The GNU Shepherd Manual})." | |
45498 | msgstr "" | |
45499 | ||
45500 | #. type: item | |
39764ef8 | 45501 | #: doc/guix.texi:21331 |
b9fe8fd6 JL |
45502 | #, no-wrap |
45503 | msgid "@code{modules} (default: @var{%default-modules})" | |
45504 | msgstr "" | |
45505 | ||
45506 | #. type: table | |
39764ef8 | 45507 | #: doc/guix.texi:21334 |
b9fe8fd6 JL |
45508 | msgid "" |
45509 | "This is the list of modules that must be in scope when @code{start} and " | |
45510 | "@code{stop} are evaluated." | |
45511 | msgstr "" | |
45512 | ||
45513 | #. type: defvr | |
39764ef8 | 45514 | #: doc/guix.texi:21338 |
b9fe8fd6 JL |
45515 | #, no-wrap |
45516 | msgid "{Scheme Variable} shepherd-root-service-type" | |
45517 | msgstr "" | |
45518 | ||
45519 | #. type: defvr | |
39764ef8 | 45520 | #: doc/guix.texi:21340 |
b9fe8fd6 JL |
45521 | msgid "The service type for the Shepherd ``root service''---i.e., PID@tie{}1." |
45522 | msgstr "" | |
45523 | ||
45524 | #. type: defvr | |
39764ef8 | 45525 | #: doc/guix.texi:21344 |
b9fe8fd6 JL |
45526 | msgid "" |
45527 | "This is the service type that extensions target when they want to create " | |
45528 | "shepherd services (@pxref{Service Types and Services}, for an example). " | |
45529 | "Each extension must pass a list of @code{<shepherd-service>}." | |
45530 | msgstr "" | |
45531 | ||
45532 | #. type: defvr | |
39764ef8 | 45533 | #: doc/guix.texi:21346 |
b9fe8fd6 JL |
45534 | #, no-wrap |
45535 | msgid "{Scheme Variable} %shepherd-root-service" | |
45536 | msgstr "" | |
45537 | ||
45538 | #. type: defvr | |
39764ef8 | 45539 | #: doc/guix.texi:21348 |
b9fe8fd6 JL |
45540 | msgid "This service represents PID@tie{}1." |
45541 | msgstr "" | |
45542 | ||
45543 | #. type: cindex | |
39764ef8 | 45544 | #: doc/guix.texi:21354 |
b9fe8fd6 JL |
45545 | #, no-wrap |
45546 | msgid "documentation, searching for" | |
45547 | msgstr "" | |
45548 | ||
45549 | #. type: cindex | |
39764ef8 | 45550 | #: doc/guix.texi:21355 |
b9fe8fd6 JL |
45551 | #, no-wrap |
45552 | msgid "searching for documentation" | |
45553 | msgstr "" | |
45554 | ||
45555 | #. type: cindex | |
39764ef8 | 45556 | #: doc/guix.texi:21356 |
b9fe8fd6 JL |
45557 | #, no-wrap |
45558 | msgid "Info, documentation format" | |
45559 | msgstr "" | |
45560 | ||
45561 | #. type: cindex | |
39764ef8 | 45562 | #: doc/guix.texi:21357 |
b9fe8fd6 JL |
45563 | #, no-wrap |
45564 | msgid "man pages" | |
45565 | msgstr "" | |
45566 | ||
45567 | #. type: cindex | |
39764ef8 | 45568 | #: doc/guix.texi:21358 |
b9fe8fd6 JL |
45569 | #, no-wrap |
45570 | msgid "manual pages" | |
45571 | msgstr "" | |
45572 | ||
45573 | #. type: Plain text | |
39764ef8 | 45574 | #: doc/guix.texi:21365 |
b9fe8fd6 JL |
45575 | msgid "" |
45576 | "In most cases packages installed with Guix come with documentation. There " | |
45577 | "are two main documentation formats: ``Info'', a browseable hypertext format " | |
45578 | "used for GNU software, and ``manual pages'' (or ``man pages''), the linear " | |
45579 | "documentation format traditionally found on Unix. Info manuals are accessed " | |
45580 | "with the @command{info} command or with Emacs, and man pages are accessed " | |
45581 | "using @command{man}." | |
45582 | msgstr "" | |
45583 | ||
45584 | #. type: Plain text | |
39764ef8 | 45585 | #: doc/guix.texi:21369 |
b9fe8fd6 JL |
45586 | msgid "" |
45587 | "You can look for documentation of software installed on your system by " | |
45588 | "keyword. For example, the following command searches for information about " | |
45589 | "``TLS'' in Info manuals:" | |
45590 | msgstr "" | |
45591 | ||
45592 | #. type: example | |
39764ef8 | 45593 | #: doc/guix.texi:21377 |
b9fe8fd6 JL |
45594 | #, no-wrap |
45595 | msgid "" | |
45596 | "$ info -k TLS\n" | |
45597 | "\"(emacs)Network Security\" -- STARTTLS\n" | |
45598 | "\"(emacs)Network Security\" -- TLS\n" | |
45599 | "\"(gnutls)Core TLS API\" -- gnutls_certificate_set_verify_flags\n" | |
45600 | "\"(gnutls)Core TLS API\" -- gnutls_certificate_set_verify_function\n" | |
45601 | "@dots{}\n" | |
45602 | msgstr "" | |
45603 | ||
45604 | #. type: Plain text | |
39764ef8 | 45605 | #: doc/guix.texi:21381 |
b9fe8fd6 JL |
45606 | msgid "The command below searches for the same keyword in man pages:" |
45607 | msgstr "" | |
45608 | ||
45609 | #. type: example | |
39764ef8 | 45610 | #: doc/guix.texi:21387 |
b9fe8fd6 JL |
45611 | #, no-wrap |
45612 | msgid "" | |
45613 | "$ man -k TLS\n" | |
45614 | "SSL (7) - OpenSSL SSL/TLS library\n" | |
45615 | "certtool (1) - GnuTLS certificate tool\n" | |
45616 | "@dots {}\n" | |
45617 | msgstr "" | |
45618 | ||
45619 | #. type: Plain text | |
39764ef8 | 45620 | #: doc/guix.texi:21393 |
b9fe8fd6 JL |
45621 | msgid "" |
45622 | "These searches are purely local to your computer so you have the guarantee " | |
45623 | "that documentation you find corresponds to what you have actually installed, " | |
45624 | "you can access it off-line, and your privacy is respected." | |
45625 | msgstr "" | |
45626 | ||
45627 | #. type: Plain text | |
39764ef8 | 45628 | #: doc/guix.texi:21396 |
b9fe8fd6 JL |
45629 | msgid "" |
45630 | "Once you have these results, you can view the relevant documentation by " | |
45631 | "running, say:" | |
45632 | msgstr "" | |
45633 | ||
45634 | #. type: example | |
39764ef8 | 45635 | #: doc/guix.texi:21399 |
b9fe8fd6 JL |
45636 | #, no-wrap |
45637 | msgid "$ info \"(gnutls)Core TLS API\"\n" | |
45638 | msgstr "" | |
45639 | ||
45640 | #. type: Plain text | |
39764ef8 | 45641 | #: doc/guix.texi:21403 |
b9fe8fd6 JL |
45642 | msgid "or:" |
45643 | msgstr "" | |
45644 | ||
45645 | #. type: example | |
39764ef8 | 45646 | #: doc/guix.texi:21406 |
b9fe8fd6 JL |
45647 | #, no-wrap |
45648 | msgid "$ man certtool\n" | |
45649 | msgstr "" | |
45650 | ||
45651 | #. type: Plain text | |
39764ef8 | 45652 | #: doc/guix.texi:21414 |
b9fe8fd6 JL |
45653 | msgid "" |
45654 | "Info manuals contain sections and indices as well as hyperlinks like those " | |
45655 | "found in Web pages. The @command{info} reader (@pxref{Top, Info reader,, " | |
45656 | "info-stnd, Stand-alone GNU Info}) and its Emacs counterpart (@pxref{Misc " | |
45657 | "Help,,, emacs, The GNU Emacs Manual}) provide intuitive key bindings to " | |
45658 | "navigate manuals. @xref{Getting Started,,, info, Info: An Introduction}, " | |
45659 | "for an introduction to Info navigation." | |
45660 | msgstr "" | |
45661 | ||
45662 | #. type: cindex | |
39764ef8 | 45663 | #: doc/guix.texi:21418 |
b9fe8fd6 JL |
45664 | #, no-wrap |
45665 | msgid "debugging files" | |
45666 | msgstr "" | |
45667 | ||
45668 | #. type: Plain text | |
39764ef8 | 45669 | #: doc/guix.texi:21424 |
b9fe8fd6 JL |
45670 | msgid "" |
45671 | "Program binaries, as produced by the GCC compilers for instance, are " | |
45672 | "typically written in the ELF format, with a section containing " | |
45673 | "@dfn{debugging information}. Debugging information is what allows the " | |
45674 | "debugger, GDB, to map binary code to source code; it is required to debug a " | |
45675 | "compiled program in good conditions." | |
45676 | msgstr "" | |
45677 | ||
45678 | #. type: Plain text | |
39764ef8 | 45679 | #: doc/guix.texi:21432 |
b9fe8fd6 JL |
45680 | msgid "" |
45681 | "The problem with debugging information is that is takes up a fair amount of " | |
45682 | "disk space. For example, debugging information for the GNU C Library weighs " | |
45683 | "in at more than 60 MiB. Thus, as a user, keeping all the debugging info of " | |
45684 | "all the installed programs is usually not an option. Yet, space savings " | |
45685 | "should not come at the cost of an impediment to debugging---especially in " | |
45686 | "the GNU system, which should make it easier for users to exert their " | |
45687 | "computing freedom (@pxref{GNU Distribution})." | |
45688 | msgstr "" | |
45689 | ||
45690 | #. type: Plain text | |
39764ef8 | 45691 | #: doc/guix.texi:21439 |
b9fe8fd6 JL |
45692 | msgid "" |
45693 | "Thankfully, the GNU Binary Utilities (Binutils) and GDB provide a mechanism " | |
45694 | "that allows users to get the best of both worlds: debugging information can " | |
45695 | "be stripped from the binaries and stored in separate files. GDB is then " | |
45696 | "able to load debugging information from those files, when they are available " | |
45697 | "(@pxref{Separate Debug Files,,, gdb, Debugging with GDB})." | |
45698 | msgstr "" | |
45699 | ||
45700 | #. type: Plain text | |
39764ef8 | 45701 | #: doc/guix.texi:21447 |
b9fe8fd6 JL |
45702 | msgid "" |
45703 | "The GNU distribution takes advantage of this by storing debugging " | |
45704 | "information in the @code{lib/debug} sub-directory of a separate package " | |
45705 | "output unimaginatively called @code{debug} (@pxref{Packages with Multiple " | |
45706 | "Outputs}). Users can choose to install the @code{debug} output of a package " | |
45707 | "when they need it. For instance, the following command installs the " | |
45708 | "debugging information for the GNU C Library and for GNU Guile:" | |
45709 | msgstr "" | |
45710 | ||
45711 | #. type: example | |
39764ef8 | 45712 | #: doc/guix.texi:21450 |
b9fe8fd6 JL |
45713 | #, no-wrap |
45714 | msgid "guix package -i glibc:debug guile:debug\n" | |
45715 | msgstr "" | |
45716 | ||
45717 | #. type: Plain text | |
39764ef8 | 45718 | #: doc/guix.texi:21456 |
b9fe8fd6 JL |
45719 | msgid "" |
45720 | "GDB must then be told to look for debug files in the user's profile, by " | |
45721 | "setting the @code{debug-file-directory} variable (consider setting it from " | |
45722 | "the @file{~/.gdbinit} file, @pxref{Startup,,, gdb, Debugging with GDB}):" | |
45723 | msgstr "" | |
45724 | ||
45725 | #. type: example | |
39764ef8 | 45726 | #: doc/guix.texi:21459 |
b9fe8fd6 JL |
45727 | #, no-wrap |
45728 | msgid "(gdb) set debug-file-directory ~/.guix-profile/lib/debug\n" | |
45729 | msgstr "" | |
45730 | ||
45731 | #. type: Plain text | |
39764ef8 | 45732 | #: doc/guix.texi:21463 |
b9fe8fd6 JL |
45733 | msgid "" |
45734 | "From there on, GDB will pick up debugging information from the @code{.debug} " | |
45735 | "files under @file{~/.guix-profile/lib/debug}." | |
45736 | msgstr "" | |
45737 | ||
45738 | #. type: Plain text | |
39764ef8 | 45739 | #: doc/guix.texi:21470 |
b9fe8fd6 JL |
45740 | msgid "" |
45741 | "In addition, you will most likely want GDB to be able to show the source " | |
45742 | "code being debugged. To do that, you will have to unpack the source code of " | |
45743 | "the package of interest (obtained with @code{guix build --source}, " | |
45744 | "@pxref{Invoking guix build}), and to point GDB to that source directory " | |
45745 | "using the @code{directory} command (@pxref{Source Path, @code{directory},, " | |
45746 | "gdb, Debugging with GDB})." | |
45747 | msgstr "" | |
45748 | ||
45749 | #. type: Plain text | |
39764ef8 | 45750 | #: doc/guix.texi:21479 |
b9fe8fd6 | 45751 | msgid "" |
39764ef8 JL |
45752 | "The @code{debug} output mechanism in Guix is implemented by the @code{gnu-" |
45753 | "build-system} (@pxref{Build Systems}). Currently, it is opt-in---debugging " | |
45754 | "information is available only for the packages with definitions explicitly " | |
45755 | "declaring a @code{debug} output. This may be changed to opt-out in the " | |
45756 | "future if our build farm servers can handle the load. To check whether a " | |
45757 | "package has a @code{debug} output, use @command{guix package --list-" | |
45758 | "available} (@pxref{Invoking guix package})." | |
b9fe8fd6 JL |
45759 | msgstr "" |
45760 | ||
45761 | #. type: cindex | |
39764ef8 | 45762 | #: doc/guix.texi:21484 |
b9fe8fd6 JL |
45763 | #, no-wrap |
45764 | msgid "security updates" | |
45765 | msgstr "" | |
45766 | ||
45767 | #. type: Plain text | |
39764ef8 | 45768 | #: doc/guix.texi:21493 |
b9fe8fd6 JL |
45769 | msgid "" |
45770 | "Occasionally, important security vulnerabilities are discovered in software " | |
45771 | "packages and must be patched. Guix developers try hard to keep track of " | |
45772 | "known vulnerabilities and to apply fixes as soon as possible in the " | |
45773 | "@code{master} branch of Guix (we do not yet provide a ``stable'' branch " | |
45774 | "containing only security updates.) The @command{guix lint} tool helps " | |
45775 | "developers find out about vulnerable versions of software packages in the " | |
45776 | "distribution:" | |
45777 | msgstr "" | |
45778 | ||
45779 | #. type: smallexample | |
39764ef8 | 45780 | #: doc/guix.texi:21500 |
b9fe8fd6 JL |
45781 | #, no-wrap |
45782 | msgid "" | |
45783 | "$ guix lint -c cve\n" | |
39764ef8 JL |
45784 | "gnu/packages/base.scm:652:2: glibc@@2.21: probably vulnerable to CVE-2015-1781, CVE-2015-7547\n" |
45785 | "gnu/packages/gcc.scm:334:2: gcc@@4.9.3: probably vulnerable to CVE-2015-5276\n" | |
45786 | "gnu/packages/image.scm:312:2: openjpeg@@2.1.0: probably vulnerable to CVE-2016-1923, CVE-2016-1924\n" | |
b9fe8fd6 JL |
45787 | "@dots{}\n" |
45788 | msgstr "" | |
45789 | ||
45790 | #. type: Plain text | |
39764ef8 | 45791 | #: doc/guix.texi:21503 |
b9fe8fd6 JL |
45792 | msgid "@xref{Invoking guix lint}, for more information." |
45793 | msgstr "" | |
45794 | ||
45795 | #. type: quotation | |
39764ef8 | 45796 | #: doc/guix.texi:21507 |
b9fe8fd6 JL |
45797 | msgid "" |
45798 | "As of version @value{VERSION}, the feature described below is considered " | |
45799 | "``beta''." | |
45800 | msgstr "" | |
45801 | ||
45802 | #. type: Plain text | |
39764ef8 | 45803 | #: doc/guix.texi:21517 |
b9fe8fd6 JL |
45804 | msgid "" |
45805 | "Guix follows a functional package management discipline " | |
45806 | "(@pxref{Introduction}), which implies that, when a package is changed, " | |
45807 | "@emph{every package that depends on it} must be rebuilt. This can " | |
45808 | "significantly slow down the deployment of fixes in core packages such as " | |
45809 | "libc or Bash, since basically the whole distribution would need to be " | |
45810 | "rebuilt. Using pre-built binaries helps (@pxref{Substitutes}), but " | |
45811 | "deployment may still take more time than desired." | |
45812 | msgstr "" | |
45813 | ||
45814 | #. type: cindex | |
39764ef8 | 45815 | #: doc/guix.texi:21518 |
b9fe8fd6 JL |
45816 | #, no-wrap |
45817 | msgid "grafts" | |
45818 | msgstr "" | |
45819 | ||
45820 | #. type: Plain text | |
39764ef8 | 45821 | #: doc/guix.texi:21526 |
b9fe8fd6 JL |
45822 | msgid "" |
45823 | "To address this, Guix implements @dfn{grafts}, a mechanism that allows for " | |
45824 | "fast deployment of critical updates without the costs associated with a " | |
45825 | "whole-distribution rebuild. The idea is to rebuild only the package that " | |
45826 | "needs to be patched, and then to ``graft'' it onto packages explicitly " | |
45827 | "installed by the user and that were previously referring to the original " | |
45828 | "package. The cost of grafting is typically very low, and order of " | |
45829 | "magnitudes lower than a full rebuild of the dependency chain." | |
45830 | msgstr "" | |
45831 | ||
45832 | #. type: cindex | |
39764ef8 | 45833 | #: doc/guix.texi:21527 |
b9fe8fd6 JL |
45834 | #, no-wrap |
45835 | msgid "replacements of packages, for grafts" | |
45836 | msgstr "" | |
45837 | ||
45838 | #. type: Plain text | |
39764ef8 | 45839 | #: doc/guix.texi:21533 |
b9fe8fd6 JL |
45840 | msgid "" |
45841 | "For instance, suppose a security update needs to be applied to Bash. Guix " | |
45842 | "developers will provide a package definition for the ``fixed'' Bash, say " | |
45843 | "@var{bash-fixed}, in the usual way (@pxref{Defining Packages}). Then, the " | |
45844 | "original package definition is augmented with a @code{replacement} field " | |
45845 | "pointing to the package containing the bug fix:" | |
45846 | msgstr "" | |
45847 | ||
45848 | #. type: example | |
39764ef8 | 45849 | #: doc/guix.texi:21540 |
b9fe8fd6 JL |
45850 | #, no-wrap |
45851 | msgid "" | |
45852 | "(define bash\n" | |
45853 | " (package\n" | |
45854 | " (name \"bash\")\n" | |
45855 | " ;; @dots{}\n" | |
45856 | " (replacement bash-fixed)))\n" | |
45857 | msgstr "" | |
45858 | ||
45859 | #. type: Plain text | |
39764ef8 | 45860 | #: doc/guix.texi:21550 |
b9fe8fd6 JL |
45861 | msgid "" |
45862 | "From there on, any package depending directly or indirectly on Bash---as " | |
45863 | "reported by @command{guix gc --requisites} (@pxref{Invoking guix gc})---that " | |
45864 | "is installed is automatically ``rewritten'' to refer to @var{bash-fixed} " | |
45865 | "instead of @var{bash}. This grafting process takes time proportional to the " | |
45866 | "size of the package, usually less than a minute for an ``average'' package " | |
45867 | "on a recent machine. Grafting is recursive: when an indirect dependency " | |
45868 | "requires grafting, then grafting ``propagates'' up to the package that the " | |
45869 | "user is installing." | |
45870 | msgstr "" | |
45871 | ||
45872 | #. type: Plain text | |
39764ef8 | 45873 | #: doc/guix.texi:21558 |
b9fe8fd6 JL |
45874 | msgid "" |
45875 | "Currently, the length of the name and version of the graft and that of the " | |
45876 | "package it replaces (@var{bash-fixed} and @var{bash} in the example above) " | |
45877 | "must be equal. This restriction mostly comes from the fact that grafting " | |
45878 | "works by patching files, including binary files, directly. Other " | |
45879 | "restrictions may apply: for instance, when adding a graft to a package " | |
45880 | "providing a shared library, the original shared library and its replacement " | |
45881 | "must have the same @code{SONAME} and be binary-compatible." | |
45882 | msgstr "" | |
45883 | ||
45884 | #. type: Plain text | |
39764ef8 | 45885 | #: doc/guix.texi:21562 |
b9fe8fd6 JL |
45886 | msgid "" |
45887 | "The @option{--no-grafts} command-line option allows you to forcefully avoid " | |
45888 | "grafting (@pxref{Common Build Options, @option{--no-grafts}}). Thus, the " | |
45889 | "command:" | |
45890 | msgstr "" | |
45891 | ||
45892 | #. type: example | |
39764ef8 | 45893 | #: doc/guix.texi:21565 |
b9fe8fd6 JL |
45894 | #, no-wrap |
45895 | msgid "guix build bash --no-grafts\n" | |
45896 | msgstr "" | |
45897 | ||
45898 | #. type: Plain text | |
39764ef8 | 45899 | #: doc/guix.texi:21569 |
b9fe8fd6 JL |
45900 | msgid "returns the store file name of the original Bash, whereas:" |
45901 | msgstr "" | |
45902 | ||
45903 | #. type: example | |
39764ef8 | 45904 | #: doc/guix.texi:21572 |
b9fe8fd6 JL |
45905 | #, no-wrap |
45906 | msgid "guix build bash\n" | |
45907 | msgstr "" | |
45908 | ||
45909 | #. type: Plain text | |
39764ef8 | 45910 | #: doc/guix.texi:21577 |
b9fe8fd6 JL |
45911 | msgid "" |
45912 | "returns the store file name of the ``fixed'', replacement Bash. This allows " | |
45913 | "you to distinguish between the two variants of Bash." | |
45914 | msgstr "" | |
45915 | ||
45916 | #. type: Plain text | |
39764ef8 | 45917 | #: doc/guix.texi:21580 |
b9fe8fd6 JL |
45918 | msgid "" |
45919 | "To verify which Bash your whole profile refers to, you can run " | |
45920 | "(@pxref{Invoking guix gc}):" | |
45921 | msgstr "" | |
45922 | ||
45923 | #. type: example | |
39764ef8 | 45924 | #: doc/guix.texi:21583 |
b9fe8fd6 JL |
45925 | #, no-wrap |
45926 | msgid "guix gc -R `readlink -f ~/.guix-profile` | grep bash\n" | |
45927 | msgstr "" | |
45928 | ||
45929 | #. type: Plain text | |
39764ef8 | 45930 | #: doc/guix.texi:21588 |
b9fe8fd6 JL |
45931 | msgid "" |
45932 | "@dots{} and compare the store file names that you get with those above. " | |
45933 | "Likewise for a complete GuixSD system generation:" | |
45934 | msgstr "" | |
45935 | ||
45936 | #. type: example | |
39764ef8 | 45937 | #: doc/guix.texi:21591 |
b9fe8fd6 JL |
45938 | #, no-wrap |
45939 | msgid "guix gc -R `guix system build my-config.scm` | grep bash\n" | |
45940 | msgstr "" | |
45941 | ||
45942 | #. type: Plain text | |
39764ef8 | 45943 | #: doc/guix.texi:21595 |
b9fe8fd6 JL |
45944 | msgid "" |
45945 | "Lastly, to check which Bash running processes are using, you can use the " | |
45946 | "@command{lsof} command:" | |
45947 | msgstr "" | |
45948 | ||
45949 | #. type: example | |
39764ef8 | 45950 | #: doc/guix.texi:21598 |
b9fe8fd6 JL |
45951 | #, no-wrap |
45952 | msgid "lsof | grep /gnu/store/.*bash\n" | |
45953 | msgstr "" | |
45954 | ||
45955 | #. type: Plain text | |
39764ef8 | 45956 | #: doc/guix.texi:21615 |
b9fe8fd6 JL |
45957 | msgid "" |
45958 | "From a programming viewpoint, the package definitions of the GNU " | |
45959 | "distribution are provided by Guile modules in the @code{(gnu packages " | |
45960 | "@dots{})} name space@footnote{Note that packages under the @code{(gnu " | |
45961 | "packages @dots{})} module name space are not necessarily ``GNU packages''. " | |
45962 | "This module naming scheme follows the usual Guile module naming convention: " | |
45963 | "@code{gnu} means that these modules are distributed as part of the GNU " | |
45964 | "system, and @code{packages} identifies modules that define packages.} " | |
45965 | "(@pxref{Modules, Guile modules,, guile, GNU Guile Reference Manual}). For " | |
45966 | "instance, the @code{(gnu packages emacs)} module exports a variable named " | |
45967 | "@code{emacs}, which is bound to a @code{<package>} object (@pxref{Defining " | |
45968 | "Packages})." | |
45969 | msgstr "" | |
45970 | ||
45971 | #. type: Plain text | |
39764ef8 | 45972 | #: doc/guix.texi:21622 |
b9fe8fd6 JL |
45973 | msgid "" |
45974 | "The @code{(gnu packages @dots{})} module name space is automatically scanned " | |
45975 | "for packages by the command-line tools. For instance, when running " | |
45976 | "@code{guix package -i emacs}, all the @code{(gnu packages @dots{})} modules " | |
45977 | "are scanned until one that exports a package object whose name is " | |
45978 | "@code{emacs} is found. This package search facility is implemented in the " | |
45979 | "@code{(gnu packages)} module." | |
45980 | msgstr "" | |
45981 | ||
45982 | #. type: cindex | |
39764ef8 | 45983 | #: doc/guix.texi:21624 |
b9fe8fd6 JL |
45984 | #, no-wrap |
45985 | msgid "package module search path" | |
45986 | msgstr "" | |
45987 | ||
45988 | #. type: Plain text | |
39764ef8 | 45989 | #: doc/guix.texi:21641 |
b9fe8fd6 JL |
45990 | msgid "" |
45991 | "Users can store package definitions in modules with different names---e.g., " | |
45992 | "@code{(my-packages emacs)}@footnote{Note that the file name and module name " | |
45993 | "must match. For instance, the @code{(my-packages emacs)} module must be " | |
45994 | "stored in a @file{my-packages/emacs.scm} file relative to the load path " | |
45995 | "specified with @option{--load-path} or @code{GUIX_PACKAGE_PATH}. " | |
45996 | "@xref{Modules and the File System,,, guile, GNU Guile Reference Manual}, for " | |
45997 | "details.}. These package definitions will not be visible by default. Users " | |
45998 | "can invoke commands such as @command{guix package} and @command{guix build} " | |
45999 | "with the @code{-e} option so that they know where to find the package. " | |
46000 | "Better yet, they can use the @code{-L} option of these commands to make " | |
46001 | "those modules visible (@pxref{Invoking guix build, @code{--load-path}}), or " | |
46002 | "define the @code{GUIX_PACKAGE_PATH} environment variable. This environment " | |
46003 | "variable makes it easy to extend or customize the distribution and is " | |
46004 | "honored by all the user interfaces." | |
46005 | msgstr "" | |
46006 | ||
46007 | #. type: defvr | |
39764ef8 | 46008 | #: doc/guix.texi:21642 |
b9fe8fd6 JL |
46009 | #, no-wrap |
46010 | msgid "{Environment Variable} GUIX_PACKAGE_PATH" | |
46011 | msgstr "" | |
46012 | ||
46013 | #. type: defvr | |
39764ef8 | 46014 | #: doc/guix.texi:21646 |
b9fe8fd6 JL |
46015 | msgid "" |
46016 | "This is a colon-separated list of directories to search for additional " | |
46017 | "package modules. Directories listed in this variable take precedence over " | |
46018 | "the own modules of the distribution." | |
46019 | msgstr "" | |
46020 | ||
46021 | #. type: Plain text | |
39764ef8 | 46022 | #: doc/guix.texi:21654 |
b9fe8fd6 JL |
46023 | msgid "" |
46024 | "The distribution is fully @dfn{bootstrapped} and @dfn{self-contained}: each " | |
46025 | "package is built based solely on other packages in the distribution. The " | |
46026 | "root of this dependency graph is a small set of @dfn{bootstrap binaries}, " | |
46027 | "provided by the @code{(gnu packages bootstrap)} module. For more " | |
46028 | "information on bootstrapping, @pxref{Bootstrapping}." | |
46029 | msgstr "" | |
46030 | ||
46031 | #. type: cindex | |
39764ef8 | 46032 | #: doc/guix.texi:21658 |
b9fe8fd6 JL |
46033 | #, no-wrap |
46034 | msgid "packages, creating" | |
46035 | msgstr "" | |
46036 | ||
46037 | #. type: Plain text | |
39764ef8 | 46038 | #: doc/guix.texi:21663 |
b9fe8fd6 JL |
46039 | msgid "" |
46040 | "The GNU distribution is nascent and may well lack some of your favorite " | |
46041 | "packages. This section describes how you can help make the distribution " | |
46042 | "grow. @xref{Contributing}, for additional information on how you can help." | |
46043 | msgstr "" | |
46044 | ||
46045 | #. type: Plain text | |
39764ef8 | 46046 | #: doc/guix.texi:21671 |
b9fe8fd6 JL |
46047 | msgid "" |
46048 | "Free software packages are usually distributed in the form of @dfn{source " | |
46049 | "code tarballs}---typically @file{tar.gz} files that contain all the source " | |
46050 | "files. Adding a package to the distribution means essentially two things: " | |
46051 | "adding a @dfn{recipe} that describes how to build the package, including a " | |
46052 | "list of other packages required to build it, and adding @dfn{package " | |
46053 | "metadata} along with that recipe, such as a description and licensing " | |
46054 | "information." | |
46055 | msgstr "" | |
46056 | ||
46057 | #. type: Plain text | |
39764ef8 | 46058 | #: doc/guix.texi:21680 |
b9fe8fd6 JL |
46059 | msgid "" |
46060 | "In Guix all this information is embodied in @dfn{package definitions}. " | |
46061 | "Package definitions provide a high-level view of the package. They are " | |
46062 | "written using the syntax of the Scheme programming language; in fact, for " | |
46063 | "each package we define a variable bound to the package definition, and " | |
39764ef8 JL |
46064 | "export that variable from a module (@pxref{Package Modules}). However, in-" |
46065 | "depth Scheme knowledge is @emph{not} a prerequisite for creating packages. " | |
46066 | "For more information on package definitions, @pxref{Defining Packages}." | |
b9fe8fd6 JL |
46067 | msgstr "" |
46068 | ||
46069 | #. type: Plain text | |
39764ef8 | 46070 | #: doc/guix.texi:21686 |
b9fe8fd6 JL |
46071 | msgid "" |
46072 | "Once a package definition is in place, stored in a file in the Guix source " | |
46073 | "tree, it can be tested using the @command{guix build} command " | |
46074 | "(@pxref{Invoking guix build}). For example, assuming the new package is " | |
46075 | "called @code{gnew}, you may run this command from the Guix build tree " | |
46076 | "(@pxref{Running Guix Before It Is Installed}):" | |
46077 | msgstr "" | |
46078 | ||
46079 | #. type: example | |
39764ef8 | 46080 | #: doc/guix.texi:21689 |
b9fe8fd6 JL |
46081 | #, no-wrap |
46082 | msgid "./pre-inst-env guix build gnew --keep-failed\n" | |
46083 | msgstr "" | |
46084 | ||
46085 | #. type: Plain text | |
39764ef8 | 46086 | #: doc/guix.texi:21695 |
b9fe8fd6 JL |
46087 | msgid "" |
46088 | "Using @code{--keep-failed} makes it easier to debug build failures since it " | |
46089 | "provides access to the failed build tree. Another useful command-line " | |
46090 | "option when debugging is @code{--log-file}, to access the build log." | |
46091 | msgstr "" | |
46092 | ||
46093 | #. type: Plain text | |
39764ef8 | 46094 | #: doc/guix.texi:21700 |
b9fe8fd6 JL |
46095 | msgid "" |
46096 | "If the package is unknown to the @command{guix} command, it may be that the " | |
46097 | "source file contains a syntax error, or lacks a @code{define-public} clause " | |
46098 | "to export the package variable. To figure it out, you may load the module " | |
46099 | "from Guile to get more information about the actual error:" | |
46100 | msgstr "" | |
46101 | ||
46102 | #. type: example | |
39764ef8 | 46103 | #: doc/guix.texi:21703 |
b9fe8fd6 JL |
46104 | #, no-wrap |
46105 | msgid "./pre-inst-env guile -c '(use-modules (gnu packages gnew))'\n" | |
46106 | msgstr "" | |
46107 | ||
46108 | #. type: Plain text | |
39764ef8 | 46109 | #: doc/guix.texi:21711 |
b9fe8fd6 JL |
46110 | msgid "" |
46111 | "Once your package builds correctly, please send us a patch " | |
46112 | "(@pxref{Contributing}). Well, if you need help, we will be happy to help " | |
46113 | "you too. Once the patch is committed in the Guix repository, the new " | |
39764ef8 JL |
46114 | "package automatically gets built on the supported platforms by @url{http://" |
46115 | "hydra.gnu.org/jobset/gnu/master, our continuous integration system}." | |
b9fe8fd6 JL |
46116 | msgstr "" |
46117 | ||
46118 | #. type: cindex | |
39764ef8 | 46119 | #: doc/guix.texi:21712 |
b9fe8fd6 JL |
46120 | #, no-wrap |
46121 | msgid "substituter" | |
46122 | msgstr "" | |
46123 | ||
46124 | #. type: Plain text | |
39764ef8 | 46125 | #: doc/guix.texi:21719 |
b9fe8fd6 JL |
46126 | msgid "" |
46127 | "Users can obtain the new package definition simply by running @command{guix " | |
46128 | "pull} (@pxref{Invoking guix pull}). When @code{hydra.gnu.org} is done " | |
46129 | "building the package, installing the package automatically downloads " | |
46130 | "binaries from there (@pxref{Substitutes}). The only place where human " | |
46131 | "intervention is needed is to review and apply the patch." | |
46132 | msgstr "" | |
46133 | ||
46134 | #. type: cindex | |
39764ef8 | 46135 | #: doc/guix.texi:21736 |
b9fe8fd6 JL |
46136 | #, no-wrap |
46137 | msgid "free software" | |
46138 | msgstr "" | |
46139 | ||
46140 | #. type: Plain text | |
39764ef8 | 46141 | #: doc/guix.texi:21744 |
b9fe8fd6 JL |
46142 | msgid "" |
46143 | "The GNU operating system has been developed so that users can have freedom " | |
46144 | "in their computing. GNU is @dfn{free software}, meaning that users have the " | |
46145 | "@url{http://www.gnu.org/philosophy/free-sw.html,four essential freedoms}: to " | |
46146 | "run the program, to study and change the program in source code form, to " | |
46147 | "redistribute exact copies, and to distribute modified versions. Packages " | |
46148 | "found in the GNU distribution provide only software that conveys these four " | |
46149 | "freedoms." | |
46150 | msgstr "" | |
46151 | ||
46152 | #. type: Plain text | |
39764ef8 | 46153 | #: doc/guix.texi:21750 |
b9fe8fd6 | 46154 | msgid "" |
39764ef8 JL |
46155 | "In addition, the GNU distribution follow the @url{http://www.gnu.org/distros/" |
46156 | "free-system-distribution-guidelines.html,free software distribution " | |
46157 | "guidelines}. Among other things, these guidelines reject non-free firmware, " | |
46158 | "recommendations of non-free software, and discuss ways to deal with " | |
46159 | "trademarks and patents." | |
b9fe8fd6 JL |
46160 | msgstr "" |
46161 | ||
46162 | #. type: Plain text | |
39764ef8 | 46163 | #: doc/guix.texi:21758 |
b9fe8fd6 JL |
46164 | msgid "" |
46165 | "Some otherwise free upstream package sources contain a small and optional " | |
46166 | "subset that violates the above guidelines, for instance because this subset " | |
46167 | "is itself non-free code. When that happens, the offending items are removed " | |
46168 | "with appropriate patches or code snippets in the @code{origin} form of the " | |
46169 | "package (@pxref{Defining Packages}). This way, @code{guix build --source} " | |
46170 | "returns the ``freed'' source rather than the unmodified upstream source." | |
46171 | msgstr "" | |
46172 | ||
46173 | #. type: cindex | |
39764ef8 | 46174 | #: doc/guix.texi:21763 |
b9fe8fd6 JL |
46175 | #, no-wrap |
46176 | msgid "package name" | |
46177 | msgstr "" | |
46178 | ||
46179 | #. type: Plain text | |
39764ef8 | 46180 | #: doc/guix.texi:21771 |
b9fe8fd6 JL |
46181 | msgid "" |
46182 | "A package has actually two names associated with it: First, there is the " | |
46183 | "name of the @emph{Scheme variable}, the one following @code{define-public}. " | |
46184 | "By this name, the package can be made known in the Scheme code, for instance " | |
46185 | "as input to another package. Second, there is the string in the @code{name} " | |
46186 | "field of a package definition. This name is used by package management " | |
46187 | "commands such as @command{guix package} and @command{guix build}." | |
46188 | msgstr "" | |
46189 | ||
46190 | #. type: Plain text | |
39764ef8 | 46191 | #: doc/guix.texi:21776 |
b9fe8fd6 JL |
46192 | msgid "" |
46193 | "Both are usually the same and correspond to the lowercase conversion of the " | |
46194 | "project name chosen upstream, with underscores replaced with hyphens. For " | |
39764ef8 JL |
46195 | "instance, GNUnet is available as @code{gnunet}, and SDL_net as @code{sdl-" |
46196 | "net}." | |
b9fe8fd6 JL |
46197 | msgstr "" |
46198 | ||
46199 | #. type: Plain text | |
39764ef8 | 46200 | #: doc/guix.texi:21781 |
b9fe8fd6 JL |
46201 | msgid "" |
46202 | "We do not add @code{lib} prefixes for library packages, unless these are " | |
46203 | "already part of the official project name. But @pxref{Python Modules} and " | |
46204 | "@ref{Perl Modules} for special rules concerning modules for the Python and " | |
46205 | "Perl languages." | |
46206 | msgstr "" | |
46207 | ||
46208 | #. type: Plain text | |
39764ef8 | 46209 | #: doc/guix.texi:21783 |
b9fe8fd6 JL |
46210 | msgid "Font package names are handled differently, @pxref{Fonts}." |
46211 | msgstr "" | |
46212 | ||
46213 | #. type: cindex | |
39764ef8 | 46214 | #: doc/guix.texi:21788 |
b9fe8fd6 JL |
46215 | #, no-wrap |
46216 | msgid "package version" | |
46217 | msgstr "" | |
46218 | ||
46219 | #. type: Plain text | |
39764ef8 | 46220 | #: doc/guix.texi:21797 |
b9fe8fd6 JL |
46221 | msgid "" |
46222 | "We usually package only the latest version of a given free software " | |
46223 | "project. But sometimes, for instance for incompatible library versions, two " | |
46224 | "(or more) versions of the same package are needed. These require different " | |
46225 | "Scheme variable names. We use the name as defined in @ref{Package Naming} " | |
46226 | "for the most recent version; previous versions use the same name, suffixed " | |
46227 | "by @code{-} and the smallest prefix of the version number that may " | |
46228 | "distinguish the two versions." | |
46229 | msgstr "" | |
46230 | ||
46231 | #. type: Plain text | |
39764ef8 | 46232 | #: doc/guix.texi:21800 |
b9fe8fd6 JL |
46233 | msgid "" |
46234 | "The name inside the package definition is the same for all versions of a " | |
46235 | "package and does not contain any version number." | |
46236 | msgstr "" | |
46237 | ||
46238 | #. type: Plain text | |
39764ef8 | 46239 | #: doc/guix.texi:21802 |
b9fe8fd6 JL |
46240 | msgid "" |
46241 | "For instance, the versions 2.24.20 and 3.9.12 of GTK+ may be packaged as " | |
46242 | "follows:" | |
46243 | msgstr "" | |
46244 | ||
46245 | #. type: example | |
39764ef8 | 46246 | #: doc/guix.texi:21814 |
b9fe8fd6 JL |
46247 | #, no-wrap |
46248 | msgid "" | |
46249 | "(define-public gtk+\n" | |
46250 | " (package\n" | |
46251 | " (name \"gtk+\")\n" | |
46252 | " (version \"3.9.12\")\n" | |
46253 | " ...))\n" | |
46254 | "(define-public gtk+-2\n" | |
46255 | " (package\n" | |
46256 | " (name \"gtk+\")\n" | |
46257 | " (version \"2.24.20\")\n" | |
46258 | " ...))\n" | |
46259 | msgstr "" | |
46260 | ||
46261 | #. type: Plain text | |
39764ef8 | 46262 | #: doc/guix.texi:21816 |
b9fe8fd6 JL |
46263 | msgid "If we also wanted GTK+ 3.8.2, this would be packaged as" |
46264 | msgstr "" | |
46265 | ||
46266 | #. type: example | |
39764ef8 | 46267 | #: doc/guix.texi:21822 |
b9fe8fd6 JL |
46268 | #, no-wrap |
46269 | msgid "" | |
46270 | "(define-public gtk+-3.8\n" | |
46271 | " (package\n" | |
46272 | " (name \"gtk+\")\n" | |
46273 | " (version \"3.8.2\")\n" | |
46274 | " ...))\n" | |
46275 | msgstr "" | |
46276 | ||
46277 | #. type: cindex | |
39764ef8 | 46278 | #: doc/guix.texi:21826 |
b9fe8fd6 JL |
46279 | #, no-wrap |
46280 | msgid "version number, for VCS snapshots" | |
46281 | msgstr "" | |
46282 | ||
46283 | #. type: Plain text | |
39764ef8 | 46284 | #: doc/guix.texi:21832 |
b9fe8fd6 JL |
46285 | msgid "" |
46286 | "Occasionally, we package snapshots of upstream's version control system " | |
46287 | "(VCS) instead of formal releases. This should remain exceptional, because " | |
46288 | "it is up to upstream developers to clarify what the stable release is. Yet, " | |
46289 | "it is sometimes necessary. So, what should we put in the @code{version} " | |
46290 | "field?" | |
46291 | msgstr "" | |
46292 | ||
46293 | #. type: Plain text | |
39764ef8 | 46294 | #: doc/guix.texi:21840 |
b9fe8fd6 JL |
46295 | msgid "" |
46296 | "Clearly, we need to make the commit identifier of the VCS snapshot visible " | |
46297 | "in the version string, but we also need to make sure that the version string " | |
46298 | "is monotonically increasing so that @command{guix package --upgrade} can " | |
46299 | "determine which version is newer. Since commit identifiers, notably with " | |
46300 | "Git, are not monotonically increasing, we add a revision number that we " | |
46301 | "increase each time we upgrade to a newer snapshot. The resulting version " | |
46302 | "string looks like this:" | |
46303 | msgstr "" | |
46304 | ||
46305 | #. type: example | |
39764ef8 | 46306 | #: doc/guix.texi:21849 |
b9fe8fd6 JL |
46307 | #, no-wrap |
46308 | msgid "" | |
46309 | "2.0.11-3.cabba9e\n" | |
46310 | " ^ ^ ^\n" | |
46311 | " | | `-- upstream commit ID\n" | |
46312 | " | |\n" | |
46313 | " | `--- Guix package revision\n" | |
46314 | " |\n" | |
46315 | "latest upstream version\n" | |
46316 | msgstr "" | |
46317 | ||
46318 | #. type: Plain text | |
39764ef8 | 46319 | #: doc/guix.texi:21858 |
b9fe8fd6 JL |
46320 | msgid "" |
46321 | "It is a good idea to strip commit identifiers in the @code{version} field " | |
46322 | "to, say, 7 digits. It avoids an aesthetic annoyance (assuming aesthetics " | |
46323 | "have a role to play here) as well as problems related to OS limits such as " | |
46324 | "the maximum shebang length (127 bytes for the Linux kernel.) It is best to " | |
46325 | "use the full commit identifiers in @code{origin}s, though, to avoid " | |
46326 | "ambiguities. A typical package definition may look like this:" | |
46327 | msgstr "" | |
46328 | ||
46329 | #. type: example | |
39764ef8 | 46330 | #: doc/guix.texi:21874 |
b9fe8fd6 JL |
46331 | #, no-wrap |
46332 | msgid "" | |
46333 | "(define my-package\n" | |
46334 | " (let ((commit \"c3f29bc928d5900971f65965feaae59e1272a3f7\")\n" | |
46335 | " (revision \"1\")) ;Guix package revision\n" | |
46336 | " (package\n" | |
46337 | " (version (git-version \"0.9\" revision commit))\n" | |
46338 | " (source (origin\n" | |
46339 | " (method git-fetch)\n" | |
46340 | " (uri (git-reference\n" | |
46341 | " (url \"git://example.org/my-package.git\")\n" | |
46342 | " (commit commit)))\n" | |
46343 | " (sha256 (base32 \"1mbikn@dots{}\"))\n" | |
46344 | " (file-name (git-file-name name version))))\n" | |
46345 | " ;; @dots{}\n" | |
46346 | " )))\n" | |
46347 | msgstr "" | |
46348 | ||
46349 | #. type: cindex | |
39764ef8 | 46350 | #: doc/guix.texi:21879 |
b9fe8fd6 JL |
46351 | #, no-wrap |
46352 | msgid "package description" | |
46353 | msgstr "" | |
46354 | ||
46355 | #. type: cindex | |
39764ef8 | 46356 | #: doc/guix.texi:21880 |
b9fe8fd6 JL |
46357 | #, no-wrap |
46358 | msgid "package synopsis" | |
46359 | msgstr "" | |
46360 | ||
46361 | #. type: Plain text | |
39764ef8 | 46362 | #: doc/guix.texi:21887 |
b9fe8fd6 JL |
46363 | msgid "" |
46364 | "As we have seen before, each package in GNU@tie{}Guix includes a synopsis " | |
46365 | "and a description (@pxref{Defining Packages}). Synopses and descriptions " | |
46366 | "are important: They are what @command{guix package --search} searches, and a " | |
46367 | "crucial piece of information to help users determine whether a given package " | |
46368 | "suits their needs. Consequently, packagers should pay attention to what " | |
46369 | "goes into them." | |
46370 | msgstr "" | |
46371 | ||
46372 | #. type: Plain text | |
39764ef8 | 46373 | #: doc/guix.texi:21895 |
b9fe8fd6 JL |
46374 | msgid "" |
46375 | "Synopses must start with a capital letter and must not end with a period. " | |
46376 | "They must not start with ``a'' or ``the'', which usually does not bring " | |
46377 | "anything; for instance, prefer ``File-frobbing tool'' over ``A tool that " | |
46378 | "frobs files''. The synopsis should say what the package is---e.g., ``Core " | |
46379 | "GNU utilities (file, text, shell)''---or what it is used for---e.g., the " | |
46380 | "synopsis for GNU@tie{}grep is ``Print lines matching a pattern''." | |
46381 | msgstr "" | |
46382 | ||
46383 | #. type: Plain text | |
39764ef8 | 46384 | #: doc/guix.texi:21905 |
b9fe8fd6 JL |
46385 | msgid "" |
46386 | "Keep in mind that the synopsis must be meaningful for a very wide audience. " | |
46387 | "For example, ``Manipulate alignments in the SAM format'' might make sense " | |
46388 | "for a seasoned bioinformatics researcher, but might be fairly unhelpful or " | |
46389 | "even misleading to a non-specialized audience. It is a good idea to come up " | |
46390 | "with a synopsis that gives an idea of the application domain of the " | |
46391 | "package. In this example, this might give something like ``Manipulate " | |
46392 | "nucleotide sequence alignments'', which hopefully gives the user a better " | |
46393 | "idea of whether this is what they are looking for." | |
46394 | msgstr "" | |
46395 | ||
46396 | #. type: Plain text | |
39764ef8 | 46397 | #: doc/guix.texi:21913 |
b9fe8fd6 JL |
46398 | msgid "" |
46399 | "Descriptions should take between five and ten lines. Use full sentences, " | |
46400 | "and avoid using acronyms without first introducing them. Please avoid " | |
46401 | "marketing phrases such as ``world-leading'', ``industrial-strength'', and " | |
39764ef8 JL |
46402 | "``next-generation'', and avoid superlatives like ``the most advanced''---" |
46403 | "they are not helpful to users looking for a package and may even sound " | |
46404 | "suspicious. Instead, try to be factual, mentioning use cases and features." | |
b9fe8fd6 JL |
46405 | msgstr "" |
46406 | ||
46407 | #. type: cindex | |
39764ef8 | 46408 | #: doc/guix.texi:21914 |
b9fe8fd6 JL |
46409 | #, no-wrap |
46410 | msgid "Texinfo markup, in package descriptions" | |
46411 | msgstr "" | |
46412 | ||
46413 | #. type: Plain text | |
39764ef8 | 46414 | #: doc/guix.texi:21923 |
b9fe8fd6 JL |
46415 | msgid "" |
46416 | "Descriptions can include Texinfo markup, which is useful to introduce " | |
46417 | "ornaments such as @code{@@code} or @code{@@dfn}, bullet lists, or hyperlinks " | |
46418 | "(@pxref{Overview,,, texinfo, GNU Texinfo}). However you should be careful " | |
46419 | "when using some characters for example @samp{@@} and curly braces which are " | |
46420 | "the basic special characters in Texinfo (@pxref{Special Characters,,, " | |
39764ef8 JL |
46421 | "texinfo, GNU Texinfo}). User interfaces such as @command{guix package --" |
46422 | "show} take care of rendering it appropriately." | |
b9fe8fd6 JL |
46423 | msgstr "" |
46424 | ||
46425 | #. type: Plain text | |
39764ef8 | 46426 | #: doc/guix.texi:21929 |
b9fe8fd6 | 46427 | msgid "" |
39764ef8 JL |
46428 | "Synopses and descriptions are translated by volunteers @uref{http://" |
46429 | "translationproject.org/domain/guix-packages.html, at the Translation " | |
46430 | "Project} so that as many users as possible can read them in their native " | |
46431 | "language. User interfaces search them and display them in the language " | |
46432 | "specified by the current locale." | |
b9fe8fd6 JL |
46433 | msgstr "" |
46434 | ||
46435 | #. type: Plain text | |
39764ef8 | 46436 | #: doc/guix.texi:21934 |
b9fe8fd6 JL |
46437 | msgid "" |
46438 | "To allow @command{xgettext} to extract them as translatable strings, " | |
46439 | "synopses and descriptions @emph{must be literal strings}. This means that " | |
46440 | "you cannot use @code{string-append} or @code{format} to construct these " | |
46441 | "strings:" | |
46442 | msgstr "" | |
46443 | ||
46444 | #. type: lisp | |
39764ef8 | 46445 | #: doc/guix.texi:21940 |
b9fe8fd6 JL |
46446 | #, no-wrap |
46447 | msgid "" | |
46448 | "(package\n" | |
46449 | " ;; @dots{}\n" | |
46450 | " (synopsis \"This is translatable\")\n" | |
46451 | " (description (string-append \"This is \" \"*not*\" \" translatable.\")))\n" | |
46452 | msgstr "" | |
46453 | ||
46454 | #. type: Plain text | |
39764ef8 | 46455 | #: doc/guix.texi:21948 |
b9fe8fd6 JL |
46456 | msgid "" |
46457 | "Translation is a lot of work so, as a packager, please pay even more " | |
46458 | "attention to your synopses and descriptions as every change may entail " | |
46459 | "additional work for translators. In order to help them, it is possible to " | |
46460 | "make recommendations or instructions visible to them by inserting special " | |
46461 | "comments like this (@pxref{xgettext Invocation,,, gettext, GNU Gettext}):" | |
46462 | msgstr "" | |
46463 | ||
46464 | #. type: example | |
39764ef8 | 46465 | #: doc/guix.texi:21953 |
b9fe8fd6 JL |
46466 | #, no-wrap |
46467 | msgid "" | |
46468 | ";; TRANSLATORS: \"X11 resize-and-rotate\" should not be translated.\n" | |
46469 | "(description \"ARandR is designed to provide a simple visual front end\n" | |
46470 | "for the X11 resize-and-rotate (RandR) extension. @dots{}\")\n" | |
46471 | msgstr "" | |
46472 | ||
46473 | #. type: cindex | |
39764ef8 | 46474 | #: doc/guix.texi:21959 |
b9fe8fd6 JL |
46475 | #, no-wrap |
46476 | msgid "python" | |
46477 | msgstr "" | |
46478 | ||
46479 | #. type: Plain text | |
39764ef8 | 46480 | #: doc/guix.texi:21965 |
b9fe8fd6 JL |
46481 | msgid "" |
46482 | "We currently package Python 2 and Python 3, under the Scheme variable names " | |
46483 | "@code{python-2} and @code{python} as explained in @ref{Version Numbers}. To " | |
46484 | "avoid confusion and naming clashes with other programming languages, it " | |
46485 | "seems desirable that the name of a package for a Python module contains the " | |
46486 | "word @code{python}." | |
46487 | msgstr "" | |
46488 | ||
46489 | #. type: Plain text | |
39764ef8 | 46490 | #: doc/guix.texi:21971 |
b9fe8fd6 JL |
46491 | msgid "" |
46492 | "Some modules are compatible with only one version of Python, others with " | |
46493 | "both. If the package Foo compiles only with Python 3, we name it " | |
46494 | "@code{python-foo}; if it compiles only with Python 2, we name it " | |
46495 | "@code{python2-foo}. If it is compatible with both versions, we create two " | |
46496 | "packages with the corresponding names." | |
46497 | msgstr "" | |
46498 | ||
46499 | #. type: Plain text | |
39764ef8 | 46500 | #: doc/guix.texi:21977 |
b9fe8fd6 JL |
46501 | msgid "" |
46502 | "If a project already contains the word @code{python}, we drop this; for " | |
46503 | "instance, the module python-dateutil is packaged under the names " | |
46504 | "@code{python-dateutil} and @code{python2-dateutil}. If the project name " | |
46505 | "starts with @code{py} (e.g. @code{pytz}), we keep it and prefix it as " | |
46506 | "described above." | |
46507 | msgstr "" | |
46508 | ||
46509 | #. type: subsubsection | |
39764ef8 | 46510 | #: doc/guix.texi:21978 |
b9fe8fd6 JL |
46511 | #, no-wrap |
46512 | msgid "Specifying Dependencies" | |
46513 | msgstr "" | |
46514 | ||
46515 | #. type: cindex | |
39764ef8 | 46516 | #: doc/guix.texi:21979 |
b9fe8fd6 JL |
46517 | #, no-wrap |
46518 | msgid "inputs, for Python packages" | |
46519 | msgstr "" | |
46520 | ||
46521 | #. type: Plain text | |
39764ef8 | 46522 | #: doc/guix.texi:21984 |
b9fe8fd6 JL |
46523 | msgid "" |
46524 | "Dependency information for Python packages is usually available in the " | |
39764ef8 JL |
46525 | "package source tree, with varying degrees of accuracy: in the @file{setup." |
46526 | "py} file, in @file{requirements.txt}, or in @file{tox.ini}." | |
b9fe8fd6 JL |
46527 | msgstr "" |
46528 | ||
46529 | #. type: Plain text | |
39764ef8 | 46530 | #: doc/guix.texi:21990 |
b9fe8fd6 JL |
46531 | msgid "" |
46532 | "Your mission, when writing a recipe for a Python package, is to map these " | |
46533 | "dependencies to the appropriate type of ``input'' (@pxref{package Reference, " | |
46534 | "inputs}). Although the @code{pypi} importer normally does a good job " | |
46535 | "(@pxref{Invoking guix import}), you may want to check the following check " | |
46536 | "list to determine which dependency goes where." | |
46537 | msgstr "" | |
46538 | ||
46539 | #. type: itemize | |
39764ef8 | 46540 | #: doc/guix.texi:21998 |
b9fe8fd6 JL |
46541 | msgid "" |
46542 | "We currently package Python 2 with @code{setuptools} and @code{pip} " | |
46543 | "installed like Python 3.4 has per default. Thus you don't need to specify " | |
46544 | "either of these as an input. @command{guix lint} will warn you if you do." | |
46545 | msgstr "" | |
46546 | ||
46547 | #. type: itemize | |
39764ef8 | 46548 | #: doc/guix.texi:22004 |
b9fe8fd6 JL |
46549 | msgid "" |
46550 | "Python dependencies required at run time go into @code{propagated-inputs}. " | |
46551 | "They are typically defined with the @code{install_requires} keyword in " | |
46552 | "@file{setup.py}, or in the @file{requirements.txt} file." | |
46553 | msgstr "" | |
46554 | ||
46555 | #. type: itemize | |
39764ef8 | 46556 | #: doc/guix.texi:22012 |
b9fe8fd6 JL |
46557 | msgid "" |
46558 | "Python packages required only at build time---e.g., those listed with the " | |
39764ef8 JL |
46559 | "@code{setup_requires} keyword in @file{setup.py}---or only for testing---e." |
46560 | "g., those in @code{tests_require}---go into @code{native-inputs}. The " | |
46561 | "rationale is that (1) they do not need to be propagated because they are not " | |
46562 | "needed at run time, and (2) in a cross-compilation context, it's the " | |
46563 | "``native'' input that we'd want." | |
b9fe8fd6 JL |
46564 | msgstr "" |
46565 | ||
46566 | #. type: itemize | |
39764ef8 | 46567 | #: doc/guix.texi:22016 |
b9fe8fd6 JL |
46568 | msgid "" |
46569 | "Examples are the @code{pytest}, @code{mock}, and @code{nose} test " | |
39764ef8 JL |
46570 | "frameworks. Of course if any of these packages is also required at run-" |
46571 | "time, it needs to go to @code{propagated-inputs}." | |
b9fe8fd6 JL |
46572 | msgstr "" |
46573 | ||
46574 | #. type: itemize | |
39764ef8 | 46575 | #: doc/guix.texi:22021 |
b9fe8fd6 JL |
46576 | msgid "" |
46577 | "Anything that does not fall in the previous categories goes to " | |
46578 | "@code{inputs}, for example programs or C libraries required for building " | |
46579 | "Python packages containing C extensions." | |
46580 | msgstr "" | |
46581 | ||
46582 | #. type: itemize | |
39764ef8 | 46583 | #: doc/guix.texi:22027 |
b9fe8fd6 JL |
46584 | msgid "" |
46585 | "If a Python package has optional dependencies (@code{extras_require}), it is " | |
39764ef8 JL |
46586 | "up to you to decide whether to add them or not, based on their usefulness/" |
46587 | "overhead ratio (@pxref{Submitting Patches, @command{guix size}})." | |
b9fe8fd6 JL |
46588 | msgstr "" |
46589 | ||
46590 | #. type: cindex | |
39764ef8 | 46591 | #: doc/guix.texi:22034 |
b9fe8fd6 JL |
46592 | #, no-wrap |
46593 | msgid "perl" | |
46594 | msgstr "" | |
46595 | ||
46596 | #. type: Plain text | |
39764ef8 | 46597 | #: doc/guix.texi:22045 |
b9fe8fd6 JL |
46598 | msgid "" |
46599 | "Perl programs standing for themselves are named as any other package, using " | |
46600 | "the lowercase upstream name. For Perl packages containing a single class, " | |
46601 | "we use the lowercase class name, replace all occurrences of @code{::} by " | |
46602 | "dashes and prepend the prefix @code{perl-}. So the class @code{XML::Parser} " | |
46603 | "becomes @code{perl-xml-parser}. Modules containing several classes keep " | |
46604 | "their lowercase upstream name and are also prepended by @code{perl-}. Such " | |
46605 | "modules tend to have the word @code{perl} somewhere in their name, which " | |
46606 | "gets dropped in favor of the prefix. For instance, @code{libwww-perl} " | |
46607 | "becomes @code{perl-libwww}." | |
46608 | msgstr "" | |
46609 | ||
46610 | #. type: cindex | |
39764ef8 | 46611 | #: doc/guix.texi:22050 |
b9fe8fd6 JL |
46612 | #, no-wrap |
46613 | msgid "java" | |
46614 | msgstr "" | |
46615 | ||
46616 | #. type: Plain text | |
39764ef8 | 46617 | #: doc/guix.texi:22053 |
b9fe8fd6 JL |
46618 | msgid "" |
46619 | "Java programs standing for themselves are named as any other package, using " | |
46620 | "the lowercase upstream name." | |
46621 | msgstr "" | |
46622 | ||
46623 | #. type: Plain text | |
39764ef8 | 46624 | #: doc/guix.texi:22059 |
b9fe8fd6 JL |
46625 | msgid "" |
46626 | "To avoid confusion and naming clashes with other programming languages, it " | |
46627 | "is desirable that the name of a package for a Java package is prefixed with " | |
46628 | "@code{java-}. If a project already contains the word @code{java}, we drop " | |
46629 | "this; for instance, the package @code{ngsjava} is packaged under the name " | |
46630 | "@code{java-ngs}." | |
46631 | msgstr "" | |
46632 | ||
46633 | #. type: Plain text | |
39764ef8 | 46634 | #: doc/guix.texi:22065 |
b9fe8fd6 JL |
46635 | msgid "" |
46636 | "For Java packages containing a single class or a small class hierarchy, we " | |
46637 | "use the lowercase class name, replace all occurrences of @code{.} by dashes " | |
46638 | "and prepend the prefix @code{java-}. So the class @code{apache.commons.cli} " | |
46639 | "becomes package @code{java-apache-commons-cli}." | |
46640 | msgstr "" | |
46641 | ||
46642 | #. type: Plain text | |
39764ef8 | 46643 | #: doc/guix.texi:22076 |
b9fe8fd6 JL |
46644 | msgid "" |
46645 | "For fonts that are in general not installed by a user for typesetting " | |
46646 | "purposes, or that are distributed as part of a larger software package, we " | |
46647 | "rely on the general packaging rules for software; for instance, this applies " | |
46648 | "to the fonts delivered as part of the X.Org system or fonts that are part of " | |
46649 | "TeX Live." | |
46650 | msgstr "" | |
46651 | ||
46652 | #. type: Plain text | |
39764ef8 | 46653 | #: doc/guix.texi:22080 |
b9fe8fd6 JL |
46654 | msgid "" |
46655 | "To make it easier for a user to search for fonts, names for other packages " | |
46656 | "containing only fonts are constructed as follows, independently of the " | |
46657 | "upstream package name." | |
46658 | msgstr "" | |
46659 | ||
46660 | #. type: Plain text | |
39764ef8 | 46661 | #: doc/guix.texi:22088 |
b9fe8fd6 JL |
46662 | msgid "" |
46663 | "The name of a package containing only one font family starts with " | |
46664 | "@code{font-}; it is followed by the foundry name and a dash @code{-} if the " | |
46665 | "foundry is known, and the font family name, in which spaces are replaced by " | |
46666 | "dashes (and as usual, all upper case letters are transformed to lower " | |
46667 | "case). For example, the Gentium font family by SIL is packaged under the " | |
46668 | "name @code{font-sil-gentium}." | |
46669 | msgstr "" | |
46670 | ||
46671 | #. type: Plain text | |
39764ef8 | 46672 | #: doc/guix.texi:22097 |
b9fe8fd6 JL |
46673 | msgid "" |
46674 | "For a package containing several font families, the name of the collection " | |
46675 | "is used in the place of the font family name. For instance, the Liberation " | |
46676 | "fonts consist of three families, Liberation Sans, Liberation Serif and " | |
46677 | "Liberation Mono. These could be packaged separately under the names " | |
46678 | "@code{font-liberation-sans} and so on; but as they are distributed together " | |
39764ef8 JL |
46679 | "under a common name, we prefer to package them together as @code{font-" |
46680 | "liberation}." | |
b9fe8fd6 JL |
46681 | msgstr "" |
46682 | ||
46683 | #. type: Plain text | |
39764ef8 | 46684 | #: doc/guix.texi:22103 |
b9fe8fd6 JL |
46685 | msgid "" |
46686 | "In the case where several formats of the same font family or font collection " | |
46687 | "are packaged separately, a short form of the format, prepended by a dash, is " | |
39764ef8 JL |
46688 | "added to the package name. We use @code{-ttf} for TrueType fonts, @code{-" |
46689 | "otf} for OpenType fonts and @code{-type1} for PostScript Type 1 fonts." | |
b9fe8fd6 JL |
46690 | msgstr "" |
46691 | ||
46692 | #. type: cindex | |
39764ef8 | 46693 | #: doc/guix.texi:22111 |
b9fe8fd6 JL |
46694 | #, no-wrap |
46695 | msgid "bootstrapping" | |
46696 | msgstr "" | |
46697 | ||
46698 | #. type: Plain text | |
39764ef8 | 46699 | #: doc/guix.texi:22121 |
b9fe8fd6 JL |
46700 | msgid "" |
46701 | "Bootstrapping in our context refers to how the distribution gets built " | |
46702 | "``from nothing''. Remember that the build environment of a derivation " | |
46703 | "contains nothing but its declared inputs (@pxref{Introduction}). So there's " | |
46704 | "an obvious chicken-and-egg problem: how does the first package get built? " | |
46705 | "How does the first compiler get compiled? Note that this is a question of " | |
46706 | "interest only to the curious hacker, not to the regular user, so you can " | |
46707 | "shamelessly skip this section if you consider yourself a ``regular user''." | |
46708 | msgstr "" | |
46709 | ||
46710 | #. type: cindex | |
39764ef8 | 46711 | #: doc/guix.texi:22122 doc/guix.texi:22244 |
b9fe8fd6 JL |
46712 | #, no-wrap |
46713 | msgid "bootstrap binaries" | |
46714 | msgstr "" | |
46715 | ||
46716 | #. type: Plain text | |
39764ef8 | 46717 | #: doc/guix.texi:22132 |
b9fe8fd6 JL |
46718 | msgid "" |
46719 | "The GNU system is primarily made of C code, with libc at its core. The GNU " | |
39764ef8 JL |
46720 | "build system itself assumes the availability of a Bourne shell and command-" |
46721 | "line tools provided by GNU Coreutils, Awk, Findutils, `sed', and `grep'. " | |
46722 | "Furthermore, build programs---programs that run @code{./configure}, " | |
b9fe8fd6 JL |
46723 | "@code{make}, etc.---are written in Guile Scheme (@pxref{Derivations}). " |
46724 | "Consequently, to be able to build anything at all, from scratch, Guix relies " | |
46725 | "on pre-built binaries of Guile, GCC, Binutils, libc, and the other packages " | |
46726 | "mentioned above---the @dfn{bootstrap binaries}." | |
46727 | msgstr "" | |
46728 | ||
46729 | #. type: Plain text | |
39764ef8 | 46730 | #: doc/guix.texi:22135 |
b9fe8fd6 | 46731 | msgid "" |
39764ef8 JL |
46732 | "These bootstrap binaries are ``taken for granted'', though we can also re-" |
46733 | "create them if needed (more on that later)." | |
b9fe8fd6 JL |
46734 | msgstr "" |
46735 | ||
46736 | #. type: unnumberedsubsec | |
39764ef8 | 46737 | #: doc/guix.texi:22136 |
b9fe8fd6 JL |
46738 | #, no-wrap |
46739 | msgid "Preparing to Use the Bootstrap Binaries" | |
46740 | msgstr "" | |
46741 | ||
46742 | #. type: Plain text | |
39764ef8 | 46743 | #: doc/guix.texi:22141 |
b9fe8fd6 JL |
46744 | msgid "" |
46745 | "@image{images/bootstrap-graph,6in,,Dependency graph of the early bootstrap " | |
46746 | "derivations}" | |
46747 | msgstr "" | |
46748 | ||
46749 | #. type: Plain text | |
39764ef8 | 46750 | #: doc/guix.texi:22146 |
b9fe8fd6 JL |
46751 | msgid "" |
46752 | "The figure above shows the very beginning of the dependency graph of the " | |
46753 | "distribution, corresponding to the package definitions of the @code{(gnu " | |
46754 | "packages bootstrap)} module. A similar figure can be generated with " | |
46755 | "@command{guix graph} (@pxref{Invoking guix graph}), along the lines of:" | |
46756 | msgstr "" | |
46757 | ||
46758 | #. type: example | |
39764ef8 | 46759 | #: doc/guix.texi:22151 |
b9fe8fd6 JL |
46760 | #, no-wrap |
46761 | msgid "" | |
46762 | "guix graph -t derivation \\\n" | |
46763 | " -e '(@@@@ (gnu packages bootstrap) %bootstrap-gcc)' \\\n" | |
46764 | " | dot -Tps > t.ps\n" | |
46765 | msgstr "" | |
46766 | ||
46767 | #. type: Plain text | |
39764ef8 | 46768 | #: doc/guix.texi:22160 |
b9fe8fd6 JL |
46769 | msgid "" |
46770 | "At this level of detail, things are slightly complex. First, Guile itself " | |
46771 | "consists of an ELF executable, along with many source and compiled Scheme " | |
46772 | "files that are dynamically loaded when it runs. This gets stored in the " | |
46773 | "@file{guile-2.0.7.tar.xz} tarball shown in this graph. This tarball is part " | |
46774 | "of Guix's ``source'' distribution, and gets inserted into the store with " | |
46775 | "@code{add-to-store} (@pxref{The Store})." | |
46776 | msgstr "" | |
46777 | ||
46778 | #. type: Plain text | |
39764ef8 | 46779 | #: doc/guix.texi:22169 |
b9fe8fd6 JL |
46780 | msgid "" |
46781 | "But how do we write a derivation that unpacks this tarball and adds it to " | |
46782 | "the store? To solve this problem, the @code{guile-bootstrap-2.0.drv} " | |
46783 | "derivation---the first one that gets built---uses @code{bash} as its " | |
46784 | "builder, which runs @code{build-bootstrap-guile.sh}, which in turn calls " | |
46785 | "@code{tar} to unpack the tarball. Thus, @file{bash}, @file{tar}, @file{xz}, " | |
46786 | "and @file{mkdir} are statically-linked binaries, also part of the Guix " | |
46787 | "source distribution, whose sole purpose is to allow the Guile tarball to be " | |
46788 | "unpacked." | |
46789 | msgstr "" | |
46790 | ||
46791 | #. type: Plain text | |
39764ef8 | 46792 | #: doc/guix.texi:22181 |
b9fe8fd6 JL |
46793 | msgid "" |
46794 | "Once @code{guile-bootstrap-2.0.drv} is built, we have a functioning Guile " | |
46795 | "that can be used to run subsequent build programs. Its first task is to " | |
46796 | "download tarballs containing the other pre-built binaries---this is what the " | |
39764ef8 JL |
46797 | "@code{.tar.xz.drv} derivations do. Guix modules such as @code{ftp-client." |
46798 | "scm} are used for this purpose. The @code{module-import.drv} derivations " | |
46799 | "import those modules in a directory in the store, using the original " | |
46800 | "layout. The @code{module-import-compiled.drv} derivations compile those " | |
46801 | "modules, and write them in an output directory with the right layout. This " | |
46802 | "corresponds to the @code{#:modules} argument of @code{build-expression-" | |
46803 | ">derivation} (@pxref{Derivations})." | |
b9fe8fd6 JL |
46804 | msgstr "" |
46805 | ||
46806 | #. type: Plain text | |
39764ef8 | 46807 | #: doc/guix.texi:22185 |
b9fe8fd6 | 46808 | msgid "" |
39764ef8 JL |
46809 | "Finally, the various tarballs are unpacked by the derivations @code{gcc-" |
46810 | "bootstrap-0.drv}, @code{glibc-bootstrap-0.drv}, etc., at which point we have " | |
46811 | "a working C tool chain." | |
b9fe8fd6 JL |
46812 | msgstr "" |
46813 | ||
46814 | #. type: unnumberedsubsec | |
39764ef8 | 46815 | #: doc/guix.texi:22187 |
b9fe8fd6 JL |
46816 | #, no-wrap |
46817 | msgid "Building the Build Tools" | |
46818 | msgstr "" | |
46819 | ||
46820 | #. type: Plain text | |
39764ef8 | 46821 | #: doc/guix.texi:22196 |
b9fe8fd6 JL |
46822 | msgid "" |
46823 | "Bootstrapping is complete when we have a full tool chain that does not " | |
46824 | "depend on the pre-built bootstrap tools discussed above. This no-dependency " | |
46825 | "requirement is verified by checking whether the files of the final tool " | |
46826 | "chain contain references to the @file{/gnu/store} directories of the " | |
46827 | "bootstrap inputs. The process that leads to this ``final'' tool chain is " | |
46828 | "described by the package definitions found in the @code{(gnu packages " | |
46829 | "commencement)} module." | |
46830 | msgstr "" | |
46831 | ||
46832 | #. type: Plain text | |
39764ef8 | 46833 | #: doc/guix.texi:22203 |
b9fe8fd6 JL |
46834 | msgid "" |
46835 | "The @command{guix graph} command allows us to ``zoom out'' compared to the " | |
46836 | "graph above, by looking at the level of package objects instead of " | |
46837 | "individual derivations---remember that a package may translate to several " | |
46838 | "derivations, typically one derivation to download its source, one to build " | |
46839 | "the Guile modules it needs, and one to actually build the package from " | |
46840 | "source. The command:" | |
46841 | msgstr "" | |
46842 | ||
46843 | #. type: example | |
39764ef8 | 46844 | #: doc/guix.texi:22208 |
b9fe8fd6 JL |
46845 | #, no-wrap |
46846 | msgid "" | |
46847 | "guix graph -t bag \\\n" | |
46848 | " -e '(@@@@ (gnu packages commencement)\n" | |
46849 | " glibc-final-with-bootstrap-bash)' | dot -Tps > t.ps\n" | |
46850 | msgstr "" | |
46851 | ||
46852 | #. type: Plain text | |
39764ef8 | 46853 | #: doc/guix.texi:22215 |
b9fe8fd6 JL |
46854 | msgid "" |
46855 | "produces the dependency graph leading to the ``final'' C " | |
46856 | "library@footnote{You may notice the @code{glibc-intermediate} label, " | |
46857 | "suggesting that it is not @emph{quite} final, but as a good approximation, " | |
46858 | "we will consider it final.}, depicted below." | |
46859 | msgstr "" | |
46860 | ||
46861 | #. type: Plain text | |
39764ef8 | 46862 | #: doc/guix.texi:22217 |
b9fe8fd6 | 46863 | msgid "" |
39764ef8 | 46864 | "@image{images/bootstrap-packages,6in,,Dependency graph of the early packages}" |
b9fe8fd6 JL |
46865 | msgstr "" |
46866 | ||
46867 | #. type: Plain text | |
39764ef8 | 46868 | #: doc/guix.texi:22223 |
b9fe8fd6 | 46869 | msgid "" |
39764ef8 JL |
46870 | "The first tool that gets built with the bootstrap binaries is GNU@tie{}" |
46871 | "Make---noted @code{make-boot0} above---which is a prerequisite for all the " | |
46872 | "following packages. From there Findutils and Diffutils get built." | |
b9fe8fd6 JL |
46873 | msgstr "" |
46874 | ||
46875 | #. type: Plain text | |
39764ef8 | 46876 | #: doc/guix.texi:22228 |
b9fe8fd6 | 46877 | msgid "" |
39764ef8 JL |
46878 | "Then come the first-stage Binutils and GCC, built as pseudo cross tools---i." |
46879 | "e., with @code{--target} equal to @code{--host}. They are used to build " | |
46880 | "libc. Thanks to this cross-build trick, this libc is guaranteed not to hold " | |
46881 | "any reference to the initial tool chain." | |
b9fe8fd6 JL |
46882 | msgstr "" |
46883 | ||
46884 | #. type: Plain text | |
39764ef8 | 46885 | #: doc/guix.texi:22234 |
b9fe8fd6 JL |
46886 | msgid "" |
46887 | "From there the final Binutils and GCC (not shown above) are built. GCC uses " | |
46888 | "@code{ld} from the final Binutils, and links programs against the just-built " | |
46889 | "libc. This tool chain is used to build the other packages used by Guix and " | |
46890 | "by the GNU Build System: Guile, Bash, Coreutils, etc." | |
46891 | msgstr "" | |
46892 | ||
46893 | #. type: Plain text | |
39764ef8 | 46894 | #: doc/guix.texi:22240 |
b9fe8fd6 JL |
46895 | msgid "" |
46896 | "And voilà! At this point we have the complete set of build tools that the " | |
46897 | "GNU Build System expects. These are in the @code{%final-inputs} variable of " | |
46898 | "the @code{(gnu packages commencement)} module, and are implicitly used by " | |
46899 | "any package that uses @code{gnu-build-system} (@pxref{Build Systems, " | |
46900 | "@code{gnu-build-system}})." | |
46901 | msgstr "" | |
46902 | ||
46903 | #. type: unnumberedsubsec | |
39764ef8 | 46904 | #: doc/guix.texi:22242 |
b9fe8fd6 JL |
46905 | #, no-wrap |
46906 | msgid "Building the Bootstrap Binaries" | |
46907 | msgstr "" | |
46908 | ||
46909 | #. type: Plain text | |
39764ef8 | 46910 | #: doc/guix.texi:22249 |
b9fe8fd6 JL |
46911 | msgid "" |
46912 | "Because the final tool chain does not depend on the bootstrap binaries, " | |
46913 | "those rarely need to be updated. Nevertheless, it is useful to have an " | |
46914 | "automated way to produce them, should an update occur, and this is what the " | |
46915 | "@code{(gnu packages make-bootstrap)} module provides." | |
46916 | msgstr "" | |
46917 | ||
46918 | #. type: Plain text | |
39764ef8 | 46919 | #: doc/guix.texi:22253 |
b9fe8fd6 JL |
46920 | msgid "" |
46921 | "The following command builds the tarballs containing the bootstrap binaries " | |
46922 | "(Guile, Binutils, GCC, libc, and a tarball containing a mixture of Coreutils " | |
46923 | "and other basic command-line tools):" | |
46924 | msgstr "" | |
46925 | ||
46926 | #. type: example | |
39764ef8 | 46927 | #: doc/guix.texi:22256 |
b9fe8fd6 JL |
46928 | #, no-wrap |
46929 | msgid "guix build bootstrap-tarballs\n" | |
46930 | msgstr "" | |
46931 | ||
46932 | #. type: Plain text | |
39764ef8 | 46933 | #: doc/guix.texi:22261 |
b9fe8fd6 JL |
46934 | msgid "" |
46935 | "The generated tarballs are those that should be referred to in the " | |
46936 | "@code{(gnu packages bootstrap)} module mentioned at the beginning of this " | |
46937 | "section." | |
46938 | msgstr "" | |
46939 | ||
46940 | #. type: Plain text | |
39764ef8 | 46941 | #: doc/guix.texi:22267 |
b9fe8fd6 JL |
46942 | msgid "" |
46943 | "Still here? Then perhaps by now you've started to wonder: when do we reach a " | |
46944 | "fixed point? That is an interesting question! The answer is unknown, but if " | |
46945 | "you would like to investigate further (and have significant computational " | |
46946 | "and storage resources to do so), then let us know." | |
46947 | msgstr "" | |
46948 | ||
46949 | #. type: unnumberedsubsec | |
39764ef8 | 46950 | #: doc/guix.texi:22268 |
b9fe8fd6 JL |
46951 | #, no-wrap |
46952 | msgid "Reducing the Set of Bootstrap Binaries" | |
46953 | msgstr "" | |
46954 | ||
46955 | #. type: Plain text | |
39764ef8 | 46956 | #: doc/guix.texi:22276 |
b9fe8fd6 JL |
46957 | msgid "" |
46958 | "Our bootstrap binaries currently include GCC, Guile, etc. That's a lot of " | |
46959 | "binary code! Why is that a problem? It's a problem because these big chunks " | |
46960 | "of binary code are practically non-auditable, which makes it hard to " | |
46961 | "establish what source code produced them. Every unauditable binary also " | |
46962 | "leaves us vulnerable to compiler backdoors as described by Ken Thompson in " | |
46963 | "the 1984 paper @emph{Reflections on Trusting Trust}." | |
46964 | msgstr "" | |
46965 | ||
46966 | #. type: Plain text | |
39764ef8 | 46967 | #: doc/guix.texi:22282 |
b9fe8fd6 JL |
46968 | msgid "" |
46969 | "This is mitigated by the fact that our bootstrap binaries were generated " | |
46970 | "from an earlier Guix revision. Nevertheless it lacks the level of " | |
46971 | "transparency that we get in the rest of the package dependency graph, where " | |
46972 | "Guix always gives us a source-to-binary mapping. Thus, our goal is to " | |
46973 | "reduce the set of bootstrap binaries to the bare minimum." | |
46974 | msgstr "" | |
46975 | ||
46976 | #. type: Plain text | |
39764ef8 | 46977 | #: doc/guix.texi:22288 |
b9fe8fd6 | 46978 | msgid "" |
39764ef8 JL |
46979 | "The @uref{http://bootstrappable.org, Bootstrappable.org web site} lists on-" |
46980 | "going projects to do that. One of these is about replacing the bootstrap " | |
b9fe8fd6 JL |
46981 | "GCC with a sequence of assemblers, interpreters, and compilers of increasing " |
46982 | "complexity, which could be built from source starting from a simple and " | |
46983 | "auditable assembler. Your help is welcome!" | |
46984 | msgstr "" | |
46985 | ||
46986 | #. type: section | |
39764ef8 | 46987 | #: doc/guix.texi:22291 |
b9fe8fd6 JL |
46988 | #, no-wrap |
46989 | msgid "Porting to a New Platform" | |
46990 | msgstr "" | |
46991 | ||
46992 | #. type: Plain text | |
39764ef8 | 46993 | #: doc/guix.texi:22300 |
b9fe8fd6 | 46994 | msgid "" |
39764ef8 JL |
46995 | "As discussed above, the GNU distribution is self-contained, and self-" |
46996 | "containment is achieved by relying on pre-built ``bootstrap " | |
46997 | "binaries'' (@pxref{Bootstrapping}). These binaries are specific to an " | |
46998 | "operating system kernel, CPU architecture, and application binary interface " | |
46999 | "(ABI). Thus, to port the distribution to a platform that is not yet " | |
47000 | "supported, one must build those bootstrap binaries, and update the " | |
47001 | "@code{(gnu packages bootstrap)} module to use them on that platform." | |
b9fe8fd6 JL |
47002 | msgstr "" |
47003 | ||
47004 | #. type: Plain text | |
39764ef8 | 47005 | #: doc/guix.texi:22305 |
b9fe8fd6 JL |
47006 | msgid "" |
47007 | "Fortunately, Guix can @emph{cross compile} those bootstrap binaries. When " | |
47008 | "everything goes well, and assuming the GNU tool chain supports the target " | |
47009 | "platform, this can be as simple as running a command like this one:" | |
47010 | msgstr "" | |
47011 | ||
47012 | #. type: example | |
39764ef8 | 47013 | #: doc/guix.texi:22308 |
b9fe8fd6 JL |
47014 | #, no-wrap |
47015 | msgid "guix build --target=armv5tel-linux-gnueabi bootstrap-tarballs\n" | |
47016 | msgstr "" | |
47017 | ||
47018 | #. type: Plain text | |
39764ef8 | 47019 | #: doc/guix.texi:22315 |
b9fe8fd6 JL |
47020 | msgid "" |
47021 | "For this to work, the @code{glibc-dynamic-linker} procedure in @code{(gnu " | |
47022 | "packages bootstrap)} must be augmented to return the right file name for " | |
39764ef8 JL |
47023 | "libc's dynamic linker on that platform; likewise, @code{system->linux-" |
47024 | "architecture} in @code{(gnu packages linux)} must be taught about the new " | |
47025 | "platform." | |
b9fe8fd6 JL |
47026 | msgstr "" |
47027 | ||
47028 | #. type: Plain text | |
39764ef8 | 47029 | #: doc/guix.texi:22324 |
b9fe8fd6 JL |
47030 | msgid "" |
47031 | "Once these are built, the @code{(gnu packages bootstrap)} module needs to be " | |
47032 | "updated to refer to these binaries on the target platform. That is, the " | |
47033 | "hashes and URLs of the bootstrap tarballs for the new platform must be added " | |
47034 | "alongside those of the currently supported platforms. The bootstrap Guile " | |
47035 | "tarball is treated specially: it is expected to be available locally, and " | |
47036 | "@file{gnu/local.mk} has rules do download it for the supported " | |
47037 | "architectures; a rule for the new platform must be added as well." | |
47038 | msgstr "" | |
47039 | ||
47040 | #. type: Plain text | |
39764ef8 | 47041 | #: doc/guix.texi:22333 |
b9fe8fd6 JL |
47042 | msgid "" |
47043 | "In practice, there may be some complications. First, it may be that the " | |
47044 | "extended GNU triplet that specifies an ABI (like the @code{eabi} suffix " | |
47045 | "above) is not recognized by all the GNU tools. Typically, glibc recognizes " | |
47046 | "some of these, whereas GCC uses an extra @code{--with-abi} configure flag " | |
47047 | "(see @code{gcc.scm} for examples of how to handle this). Second, some of " | |
47048 | "the required packages could fail to build for that platform. Lastly, the " | |
47049 | "generated binaries could be broken for some reason." | |
47050 | msgstr "" | |
47051 | ||
47052 | #. type: include | |
39764ef8 | 47053 | #: doc/guix.texi:22335 |
b9fe8fd6 JL |
47054 | #, no-wrap |
47055 | msgid "contributing.texi" | |
47056 | msgstr "" | |
47057 | ||
47058 | #. type: Plain text | |
39764ef8 | 47059 | #: doc/guix.texi:22348 |
b9fe8fd6 JL |
47060 | msgid "" |
47061 | "Guix is based on the @uref{http://nixos.org/nix/, Nix package manager}, " | |
47062 | "which was designed and implemented by Eelco Dolstra, with contributions from " | |
47063 | "other people (see the @file{nix/AUTHORS} file in Guix.) Nix pioneered " | |
47064 | "functional package management, and promoted unprecedented features, such as " | |
47065 | "transactional package upgrades and rollbacks, per-user profiles, and " | |
47066 | "referentially transparent build processes. Without this work, Guix would " | |
47067 | "not exist." | |
47068 | msgstr "" | |
47069 | ||
47070 | #. type: Plain text | |
39764ef8 | 47071 | #: doc/guix.texi:22351 |
b9fe8fd6 JL |
47072 | msgid "" |
47073 | "The Nix-based software distributions, Nixpkgs and NixOS, have also been an " | |
47074 | "inspiration for Guix." | |
47075 | msgstr "" | |
47076 | ||
47077 | #. type: Plain text | |
39764ef8 | 47078 | #: doc/guix.texi:22357 |
b9fe8fd6 JL |
47079 | msgid "" |
47080 | "GNU@tie{}Guix itself is a collective work with contributions from a number " | |
47081 | "of people. See the @file{AUTHORS} file in Guix for more information on " | |
47082 | "these fine people. The @file{THANKS} file lists people who have helped by " | |
47083 | "reporting bugs, taking care of the infrastructure, providing artwork and " | |
47084 | "themes, making suggestions, and more---thank you!" | |
47085 | msgstr "" | |
47086 | ||
47087 | #. type: cindex | |
39764ef8 | 47088 | #: doc/guix.texi:22362 |
b9fe8fd6 JL |
47089 | #, no-wrap |
47090 | msgid "license, GNU Free Documentation License" | |
47091 | msgstr "" | |
47092 | ||
47093 | #. type: include | |
39764ef8 | 47094 | #: doc/guix.texi:22363 |
b9fe8fd6 JL |
47095 | #, no-wrap |
47096 | msgid "fdl-1.3.texi" | |
47097 | msgstr "" |