Mirror of GNU Guix
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

51893 lines
2.6 MiB

# German translation of the Guix user manual.
# Copyright (C) 2018-2020 the authors of Guix (msgids)
# This file is distributed under the same license as the guix package.
# Mario Blättermann <mario.blaettermann@gmail.com>, 2018.
# Florian Pelz <pelzflorian@pelzflorian.de>, 2018, 2019, 2020.
# Jonathan Brielmaier <jonathan.brielmaier@web.de>, 2019.
#
msgid ""
msgstr ""
"Project-Id-Version: guix-manual 1.1.0-pre1\n"
"Report-Msgid-Bugs-To: ludo@gnu.org\n"
"POT-Creation-Date: 2020-02-12 00:12+0100\n"
"PO-Revision-Date: 2020-02-14 07:53+0100\n"
"Last-Translator: Florian Pelz <pelzflorian@pelzflorian.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
#. #-#-#-#-# contributing.pot (guix 1.1.0-pre1) #-#-#-#-#
#. type: chapter
#. #-#-#-#-# guix.pot (guix 1.1.0-pre1) #-#-#-#-#
#. type: menuentry
#: doc/contributing.texi:1 doc/contributing.texi:2 doc/guix.texi:151
#, no-wrap
msgid "Contributing"
msgstr "Mitwirken"
#. type: Plain text
#: doc/contributing.texi:9
msgid "This project is a cooperative effort, and we need your help to make it grow! Please get in touch with us on @email{guix-devel@@gnu.org} and @code{#guix} on the Freenode IRC network. We welcome ideas, bug reports, patches, and anything that may be helpful to the project. We particularly welcome help on packaging (@pxref{Packaging Guidelines})."
msgstr "Dieses Projekt basiert auf Kooperation, daher benötigen wir Ihre Hilfe, um es wachsen zu lassen! Bitte kontaktieren Sie uns auf @email{guix-devel@@gnu.org} und @code{#guix} im Freenode-IRC-Netzwerk. Wir freuen uns auf Ihre Ideen, Fehlerberichte, Patches und alles, was hilfreich für das Projekt sein könnte. Besonders willkommen ist Hilfe bei der Erstellung von Paketen (siehe @ref{Packaging Guidelines})."
#. type: cindex
#: doc/contributing.texi:10
#, no-wrap
msgid "code of conduct, of contributors"
msgstr "Verhaltensregeln, für Mitwirkende"
#. type: cindex
#: doc/contributing.texi:11
#, no-wrap
msgid "contributor covenant"
msgstr "Verhaltenskodex für Mitwirkende"
#. type: Plain text
#: doc/contributing.texi:17
msgid "We want to provide a warm, friendly, and harassment-free environment, so that anyone can contribute to the best of their abilities. To this end our project uses a ``Contributor Covenant'', which was adapted from @url{http://contributor-covenant.org/}. You can find a local version in the @file{CODE-OF-CONDUCT} file in the source tree."
msgstr "Wir möchten eine angenehme, freundliche und von Belästigungen freie Umgebung bereitstellen, so dass jeder Beiträge nach seinen Fähigkeiten leisten kann. Zu diesem Zweck verwendet unser Projekt einen „Verhaltenskodex für Mitwirkende“, der von @url{http://contributor-covenant.org/} übernommen wurde. Eine übersetzte Fassung finden Sie auf @url{https://www.contributor-covenant.org/de/version/1/4/code-of-conduct} sowie eine mitgelieferte, englische Fassung in der Datei @file{CODE-OF-CONDUCT} im Quellbaum."
#. type: Plain text
#: doc/contributing.texi:21
msgid "Contributors are not required to use their legal name in patches and on-line communication; they can use any name or pseudonym of their choice."
msgstr "Von Mitwirkenden wird nicht erwartet, dass sie in Patches oder in der Online-Kommunikation ihre echten Namen preisgeben. Sie können einen beliebigen Namen oder ein Pseudonym ihrer Wahl verwenden."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:33 doc/contributing.texi:34
#, no-wrap
msgid "Building from Git"
msgstr "Erstellung aus dem Git"
#. type: menuentry
#: doc/contributing.texi:31
msgid "The latest and greatest."
msgstr "Das Neueste und Beste."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:150
#: doc/contributing.texi:151
#, no-wrap
msgid "Running Guix Before It Is Installed"
msgstr "Guix vor der Installation ausführen"
#. type: menuentry
#: doc/contributing.texi:31
msgid "Hacker tricks."
msgstr "Hacker-Tricks."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:214
#: doc/contributing.texi:215
#, no-wrap
msgid "The Perfect Setup"
msgstr "Perfekt eingerichtet"
#. type: menuentry
#: doc/contributing.texi:31
msgid "The right tools."
msgstr "Die richtigen Werkzeuge."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:278
#: doc/contributing.texi:279
#, no-wrap
msgid "Packaging Guidelines"
msgstr "Paketrichtlinien"
#. type: menuentry
#: doc/contributing.texi:31
msgid "Growing the distribution."
msgstr "Die Distribution wachsen lassen."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:726
#: doc/contributing.texi:727
#, no-wrap
msgid "Coding Style"
msgstr "Programmierstil"
#. type: menuentry
#: doc/contributing.texi:31
msgid "Hygiene of the contributor."
msgstr "Wie Mitwirkende hygienisch arbeiten."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:824
#: doc/contributing.texi:825
#, no-wrap
msgid "Submitting Patches"
msgstr "Einreichen von Patches"
#. type: menuentry
#: doc/contributing.texi:31
msgid "Share your work."
msgstr "Teilen Sie Ihre Arbeit."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:1048
#: doc/contributing.texi:1049
#, no-wrap
msgid "Tracking Bugs and Patches"
msgstr "Überblick über gemeldete Fehler und Patches"
#. type: menuentry
#: doc/contributing.texi:31
msgid "Using Debbugs."
msgstr "Debbugs benutzen."
#. type: section
#: doc/contributing.texi:31 doc/contributing.texi:1097
#: doc/contributing.texi:1098
#, no-wrap
msgid "Commit Access"
msgstr "Commit-Zugriff"
#. type: menuentry
#: doc/contributing.texi:31
msgid "Pushing to the official repository."
msgstr "Auf die offiziellen Repositorys pushen."
#. type: Plain text
#: doc/contributing.texi:38
msgid "If you want to hack Guix itself, it is recommended to use the latest version from the Git repository:"
msgstr "Wenn Sie an Guix selbst hacken wollen, ist es empfehlenswert, dass Sie die neueste Version aus dem Git-Softwarebestand verwenden:"
#. type: example
#: doc/contributing.texi:41
#, no-wrap
msgid "git clone https://git.savannah.gnu.org/git/guix.git\n"
msgstr "git clone https://git.savannah.gnu.org/git/guix.git\n"
#. type: cindex
#: doc/contributing.texi:43
#, no-wrap
msgid "authentication, of a Guix checkout"
msgstr "Authentifizieren, eines Guix-Checkouts"
#. type: Plain text
#: doc/contributing.texi:48
msgid "How do you ensure that you obtained a genuine copy of the repository? Guix itself provides a tool to @dfn{authenticate} your checkout, but you must first make sure this tool is genuine in order to ``bootstrap'' the trust chain. To do that, run:"
msgstr "Wie stellen Sie sicher, dass Sie eine echte Kopie des Repositorys heruntergeladen haben? Guix liefert ein Werkzeug mit, mit dem Sie Ihr Checkout @dfn{authentifizieren} können, aber Sie müssen vorher sicherstellen, dass dieses Werkzeug überhaupt echt ist, wenn Sie Ihre Vertrauenskette („Trust Chain“) bootstrappen wollen. Führen Sie dazu dies aus:"
#. type: example
#: doc/contributing.texi:52
#, no-wrap
msgid "git verify-commit `git log --format=%H build-aux/git-authenticate.scm`\n"
msgstr "git verify-commit `git log --format=%H build-aux/git-authenticate.scm`\n"
#. type: Plain text
#: doc/contributing.texi:55
msgid "The output must look something like:"
msgstr "Die Ausgabe sollte etwa so aussehen:"
#. type: example
#: doc/contributing.texi:63
#, no-wrap
msgid ""
"gpg: Signature made Fri 27 Dec 2019 01:27:41 PM CET\n"
"gpg: using RSA key 3CE464558A84FDC69DB40CFB090B11993D9AEBB5\n"
"@dots{}\n"
"gpg: Signature made Fri 27 Dec 2019 01:25:22 PM CET\n"
"gpg: using RSA key 3CE464558A84FDC69DB40CFB090B11993D9AEBB5\n"
"@dots{}\n"
msgstr ""
"gpg: Signatur vom Fr 27 Dez 2019 13:27:41 CET\n"
"gpg: mittels RSA-Schlüssel 3CE464558A84FDC69DB40CFB090B11993D9AEBB5\n"
"…\n"
"gpg: Signatur vom Fr 27 Dez 2019 13:25:22 CET\n"
"gpg: mittels RSA-Schlüssel 3CE464558A84FDC69DB40CFB090B11993D9AEBB5\n"
"…\n"
#. type: Plain text
#: doc/contributing.texi:69
msgid "... meaning that changes to this file are all signed with key @code{3CE464558A84FDC69DB40CFB090B11993D9AEBB5} (you may need to fetch this key from a key server, if you have not done it yet)."
msgstr "Das bedeutet, dass Änderungen an dieser Datei alle mit dem Schlüssel @code{3CE464558A84FDC69DB40CFB090B11993D9AEBB5} signiert wurden (eventuell müssen Sie diesen Schlüssel erst von einem Server beziehen, wenn Sie es noch nicht getan haben)."
#. type: Plain text
#: doc/contributing.texi:72
msgid "From there on, you can authenticate all the commits included in your checkout by running:"
msgstr "Von da an können Sie alle Commits in Ihrem Checkout authentifizieren, indem Sie dies ausführen:"
#. type: example
#: doc/contributing.texi:75
#, no-wrap
msgid "make authenticate\n"
msgstr "make authenticate\n"
#. type: Plain text
#: doc/contributing.texi:78
msgid "The first run takes a couple of minutes, but subsequent runs are faster."
msgstr "Die erste Ausführung dauert ein paar Minuten, aber nachfolgende Ausführungen gehen schneller."
#. type: quotation
#: doc/contributing.texi:79 doc/contributing.texi:1144 doc/guix.texi:492
#: doc/guix.texi:541 doc/guix.texi:1558 doc/guix.texi:1823 doc/guix.texi:2034
#: doc/guix.texi:2243 doc/guix.texi:2438 doc/guix.texi:4244 doc/guix.texi:4460
#: doc/guix.texi:4761 doc/guix.texi:5002 doc/guix.texi:5123 doc/guix.texi:5175
#: doc/guix.texi:6766 doc/guix.texi:6834 doc/guix.texi:8543 doc/guix.texi:8555
#: doc/guix.texi:10609 doc/guix.texi:11155 doc/guix.texi:11707
#: doc/guix.texi:14407 doc/guix.texi:20844 doc/guix.texi:26096
#: doc/guix.texi:26307 doc/guix.texi:26466 doc/guix.texi:26587
#: doc/guix.texi:26769
#, no-wrap
msgid "Note"
msgstr "Anmerkung"
#. type: quotation
#: doc/contributing.texi:83
msgid "You are advised to run @command{make authenticate} after every @command{git pull} invocation. This ensures you keep receiving valid changes to the repository"
msgstr "Wir raten Ihnen dazu, nach jedem Aufruf von @command{git pull} auch @command{make authenticate} auszuführen. Das stellt sicher, dass Sie weiterhin nur gültige Änderungen in Ihr Repository übernehmen."
#. type: Plain text
#: doc/contributing.texi:89
msgid "The easiest way to set up a development environment for Guix is, of course, by using Guix! The following command starts a new shell where all the dependencies and appropriate environment variables are set up to hack on Guix:"
msgstr "Der einfachste Weg, eine Entwicklungsumgebung für Guix einzurichten, ist natürlich, Guix zu benutzen! Der folgende Befehl startet eine neue Shell, in der alle Abhängigkeiten und Umgebungsvariablen bereits eingerichtet sind, um an Guix zu arbeiten:"
#. type: example
#: doc/contributing.texi:92
#, no-wrap
msgid "guix environment guix --pure\n"
msgstr "guix environment guix --pure\n"
#. type: Plain text
#: doc/contributing.texi:95
msgid "@xref{Invoking guix environment}, for more information on that command."
msgstr "Siehe @ref{Invoking guix environment} für weitere Informationen zu diesem Befehl."
#. type: Plain text
#: doc/contributing.texi:99
msgid "If you are unable to use Guix when building Guix from a checkout, the following are the required packages in addition to those mentioned in the installation instructions (@pxref{Requirements})."
msgstr "Wenn Sie Guix nicht benutzen können, wenn Sie es aus einem Checkout erstellen, werden die folgenden Pakete zusätzlich zu denen benötigt, die in den Installationsanweisungen angegeben sind (siehe @ref{Requirements})."
#. type: item
#: doc/contributing.texi:101
#, no-wrap
msgid "@url{http://gnu.org/software/autoconf/, GNU Autoconf};"
msgstr "@url{http://gnu.org/software/autoconf/, GNU Autoconf};"
#. type: item
#: doc/contributing.texi:102
#, no-wrap
msgid "@url{http://gnu.org/software/automake/, GNU Automake};"
msgstr "@url{http://gnu.org/software/automake/, GNU Automake};"
#. type: item
#: doc/contributing.texi:103
#, no-wrap
msgid "@url{http://gnu.org/software/gettext/, GNU Gettext};"
msgstr "@url{http://gnu.org/software/gettext/, GNU Gettext};"
#. type: item
#: doc/contributing.texi:104
#, no-wrap
msgid "@url{http://gnu.org/software/texinfo/, GNU Texinfo};"
msgstr "@url{http://gnu.org/software/texinfo/, GNU Texinfo};"
#. type: item
#: doc/contributing.texi:105
#, no-wrap
msgid "@url{http://www.graphviz.org/, Graphviz};"
msgstr "@url{http://www.graphviz.org/, Graphviz};"
#. type: item
#: doc/contributing.texi:106
#, no-wrap
msgid "@url{http://www.gnu.org/software/help2man/, GNU Help2man (optional)}."
msgstr "@url{http://www.gnu.org/software/help2man/, GNU Help2man (optional)}."
#. type: Plain text
#: doc/contributing.texi:111
msgid "On Guix, extra dependencies can be added by instead running @command{guix environment} with @option{--ad-hoc}:"
msgstr "Auf Guix können zusätzliche Abhängigkeiten hinzugefügt werden, indem Sie stattdessen @command{guix environment} mit @option{--ad-hoc} ausführen:"
#. type: example
#: doc/contributing.texi:114
#, no-wrap
msgid "guix environment guix --pure --ad-hoc help2man git strace\n"
msgstr "guix environment guix --pure --ad-hoc help2man git strace\n"
#. type: Plain text
#: doc/contributing.texi:118
msgid "Run @command{./bootstrap} to generate the build system infrastructure using Autoconf and Automake. If you get an error like this one:"
msgstr "Führen Sie @command{./bootstrap} aus, um die Infrastruktur des Erstellungssystems mit Autoconf und Automake zu erzeugen. Möglicherweise erhalten Sie eine Fehlermeldung wie diese:"
#. type: example
#: doc/contributing.texi:121
#, no-wrap
msgid "configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES\n"
msgstr "configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES\n"
#. type: Plain text
#: doc/contributing.texi:130
msgid "it probably means that Autoconf couldn’t find @file{pkg.m4}, which is provided by pkg-config. Make sure that @file{pkg.m4} is available. The same holds for the @file{guile.m4} set of macros provided by Guile. For instance, if you installed Automake in @file{/usr/local}, it wouldn’t look for @file{.m4} files in @file{/usr/share}. In that case, you have to invoke the following command:"
msgstr "Das bedeutet wahrscheinlich, dass Autoconf @file{pkg.m4} nicht finden konnte, welches von pkg-config bereitgestellt wird. Stellen Sie sicher, dass @file{pkg.m4} verfügbar ist. Gleiches gilt für den von Guile bereitgestellten Makrosatz @file{guile.m4}. Wenn Sie beispielsweise Automake in @file{/usr/local} installiert haben, würde in @file{/usr/share} nicht nach @file{.m4}-Dateien geschaut. In einem solchen Fall müssen Sie folgenden Befehl aufrufen:"
#. type: example
#: doc/contributing.texi:133
#, no-wrap
msgid "export ACLOCAL_PATH=/usr/share/aclocal\n"
msgstr "export ACLOCAL_PATH=/usr/share/aclocal\n"
#. type: Plain text
#: doc/contributing.texi:137
msgid "@xref{Macro Search Path,,, automake, The GNU Automake Manual}, for more information."
msgstr "In @ref{Macro Search Path,,, automake, The GNU Automake Manual} finden Sie weitere Informationen."
#. type: Plain text
#: doc/contributing.texi:143
msgid "Then, run @command{./configure} as usual. Make sure to pass @code{--localstatedir=@var{directory}} where @var{directory} is the @code{localstatedir} value used by your current installation (@pxref{The Store}, for information about this). We recommend to use the value @code{/var}."
msgstr "Dann führen Sie wie gewohnt @command{./configure} aus. Achten Sie darauf, @code{--localstatedir=@var{Verzeichnis}} zu übergeben, wobei @var{Verzeichnis} der von Ihrer aktuellen Installation verwendete @code{localstatedir}-Wert ist (weitere Informationen siehe @ref{The Store}). Unsere Empfehlung ist, dass Sie als Wert immer @code{/var} verwenden."
#. type: Plain text
#: doc/contributing.texi:148
msgid "Finally, you have to invoke @code{make check} to run tests (@pxref{Running the Test Suite}). If anything fails, take a look at installation instructions (@pxref{Installation}) or send a message to the @email{guix-devel@@gnu.org, mailing list}."
msgstr "Zum Schluss müssen Sie @code{make check} aufrufen, um die Tests auszuführen (siehe @ref{Running the Test Suite}). Falls etwas fehlschlägt, werfen Sie einen Blick auf die Installationsanweisungen (siehe @ref{Installation}) oder senden Sie eine E-Mail an die @email{guix-devel@@gnu.org, Mailingliste}."
#. type: Plain text
#: doc/contributing.texi:157
msgid "In order to keep a sane working environment, you will find it useful to test the changes made in your local source tree checkout without actually installing them. So that you can distinguish between your ``end-user'' hat and your ``motley'' costume."
msgstr "Um eine gesunde Arbeitsumgebung zu erhalten, ist es hilfreich, die im lokalen Quellbaum vorgenommenen Änderungen zunächst zu testen, ohne sie tatsächlich zu installieren. So können Sie zwischen Ihrem Endnutzer-„Straßenanzug“ und Ihrem „Faschingskostüm“ unterscheiden."
#. type: Plain text
#: doc/contributing.texi:168
msgid "To that end, all the command-line tools can be used even if you have not run @code{make install}. To do that, you first need to have an environment with all the dependencies available (@pxref{Building from Git}), and then simply prefix each command with @command{./pre-inst-env} (the @file{pre-inst-env} script lives in the top build tree of Guix; it is generated by @command{./configure}). An example@footnote{The @option{-E} flag to @command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set such that @command{guix-daemon} and the tools it uses can find the Guile modules they need.}:"
msgstr "Zu diesem Zweck können alle Befehlszeilenwerkzeuge auch schon benutzt werden, ohne dass Sie @code{make install} laufen lassen. Dazu müssen Sie sich in einer Umgebung befinden, in der alle Abhängigkeiten von Guix verfügbar sind (siehe @ref{Building from Git}) und darin einfach vor jeden Befehl @command{./pre-inst-env} schreiben (das Skript @file{pre-inst-env} befindet sich auf oberster Ebene im Verzeichnis, wo Guix erstellt wird, wo es durch @command{./configure} erzeugt wird). Zum Beispiel so@footnote{Die Befehlszeilenoption @option{-E} von @command{sudo} stellt sicher, dass @code{GUILE_LOAD_PATH} richtig gesetzt wird, damit @command{guix-daemon} und die davon benutzten Werkzeuge die von ihnen benötigten Guile-Module finden können.}:"
#. type: example
#: doc/contributing.texi:172
#, no-wrap
msgid ""
"$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild\n"
"$ ./pre-inst-env guix build hello\n"
msgstr ""
"$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild\n"
"$ ./pre-inst-env guix build hello\n"
#. type: Plain text
#: doc/contributing.texi:176
msgid "Similarly, an example for a Guile session using the Guix modules:"
msgstr "Entsprechend würden Sie dies eingeben, um eine Guile-Sitzung zu öffnen, die die Guix-Module benutzt:"
#. type: example
#: doc/contributing.texi:179
#, no-wrap
msgid ""
"$ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))'\n"
"\n"
msgstr ""
"$ ./pre-inst-env guile -c '(use-modules (guix utils)) (pk (%current-system))'\n"
"\n"
#. type: example
#: doc/contributing.texi:181
#, no-wrap
msgid ";;; (\"x86_64-linux\")\n"
msgstr ";;; (\"x86_64-linux\")\n"
#. type: cindex
#: doc/contributing.texi:184
#, no-wrap
msgid "REPL"
msgstr "REPL"
#. type: cindex
#: doc/contributing.texi:185
#, no-wrap
msgid "read-eval-print loop"
msgstr "Lese-Auswerten-Schreiben-Schleife"
#. type: Plain text
#: doc/contributing.texi:188
msgid "@dots{} and for a REPL (@pxref{Using Guile Interactively,,, guile, Guile Reference Manual}):"
msgstr "…@: und auf einer REPL (siehe @ref{Using Guile Interactively,,, guile, Guile Reference Manual}):"
#. type: example
#: doc/contributing.texi:203
#, no-wrap
msgid ""
"$ ./pre-inst-env guile\n"
"scheme@@(guile-user)> ,use(guix)\n"
"scheme@@(guile-user)> ,use(gnu)\n"
"scheme@@(guile-user)> (define snakes\n"
" (fold-packages\n"
" (lambda (package lst)\n"
" (if (string-prefix? \"python\"\n"
" (package-name package))\n"
" (cons package lst)\n"
" lst))\n"
" '()))\n"
"scheme@@(guile-user)> (length snakes)\n"
"$1 = 361\n"
msgstr ""
"$ ./pre-inst-env guile\n"
"scheme@@(guile-user)> ,use(guix)\n"
"scheme@@(guile-user)> ,use(gnu)\n"
"scheme@@(guile-user)> (define snakes\n"
" (fold-packages\n"
" (lambda (package lst)\n"
" (if (string-prefix? \"python\"\n"
" (package-name package))\n"
" (cons package lst)\n"
" lst))\n"
" '()))\n"
"scheme@@(guile-user)> (length snakes)\n"
"$1 = 361\n"
#. type: Plain text
#: doc/contributing.texi:207
msgid "The @command{pre-inst-env} script sets up all the environment variables necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}."
msgstr "Das @command{pre-inst-env}-Skript richtet alle Umgebungsvariablen ein, die nötig sind, um dies zu ermöglichen, einschließlich @env{PATH} und @env{GUILE_LOAD_PATH}."
#. type: Plain text
#: doc/contributing.texi:212
msgid "Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the local source tree; it simply updates the @file{~/.config/guix/current} symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if you want to upgrade your local source tree."
msgstr "Beachten Sie, dass @command{./pre-inst-env guix pull} den lokalen Quellbaum @emph{nicht} aktualisiert; es aktualisiert lediglich die symbolische Verknüpfung @file{~/.config/guix/current} (siehe @ref{Invoking guix pull}). Um Ihren lokalen Quellbaum zu aktualisieren, müssen Sie stattdessen @command{git pull} benutzen."
#. type: Plain text
#: doc/contributing.texi:222
msgid "The Perfect Setup to hack on Guix is basically the perfect setup used for Guile hacking (@pxref{Using Guile in Emacs,,, guile, Guile Reference Manual}). First, you need more than an editor, you need @url{http://www.gnu.org/software/emacs, Emacs}, empowered by the wonderful @url{http://nongnu.org/geiser/, Geiser}. To set that up, run:"
msgstr "Um perfekt für das Hacken an Guix eingerichtet zu sein, brauchen Sie an sich dasselbe wie um perfekt für das Hacken mit Guile (siehe @ref{Using Guile in Emacs,,, guile, Guile Reference Manual}). Zunächst brauchen Sie mehr als ein Textverarbeitungsprogramm, Sie brauchen @url{http://www.gnu.org/software/emacs, Emacs} zusammen mit den vom wunderbaren @url{http://nongnu.org/geiser/, Geiser} verliehenen Kräften. Um diese zu installieren, können Sie Folgendes ausführen:"
#. type: example
#: doc/contributing.texi:225
#, no-wrap
msgid "guix package -i emacs guile emacs-geiser\n"
msgstr "guix package -i emacs guile emacs-geiser\n"
#. type: Plain text
#: doc/contributing.texi:234
msgid "Geiser allows for interactive and incremental development from within Emacs: code compilation and evaluation from within buffers, access to on-line documentation (docstrings), context-sensitive completion, @kbd{M-.} to jump to an object definition, a REPL to try out your code, and more (@pxref{Introduction,,, geiser, Geiser User Manual}). For convenient Guix development, make sure to augment Guile’s load path so that it finds source files from your checkout:"
msgstr "Geiser ermöglicht interaktive und inkrementelle Entwicklung aus Emacs heraus: Code kann in Puffern kompiliert und ausgewertet werden. Zugang zu Online-Dokumentation (Docstrings) steht ebenso zur Verfügung wie kontextabhängige Vervollständigung, @kbd{M-.} um zu einer Objektdefinition zu springen, eine REPL, um Ihren Code auszuprobieren, und mehr (siehe @ref{Introduction,,, geiser, Geiser User Manual}). Zur bequemen Guix-Entwicklung sollten Sie Guiles Ladepfad so ergänzen, dass die Quelldateien in Ihrem Checkout gefunden werden."
#. type: lisp
#: doc/contributing.texi:239
#, no-wrap
msgid ""
";; @r{Assuming the Guix checkout is in ~/src/guix.}\n"
"(with-eval-after-load 'geiser-guile\n"
" (add-to-list 'geiser-guile-load-path \"~/src/guix\"))\n"
msgstr ""
";; @r{Angenommen das Guix-Checkout ist in ~/src/guix.}\n"
"(with-eval-after-load 'geiser-guile\n"
" (add-to-list 'geiser-guile-load-path \"~/src/guix\"))\n"
#. type: Plain text
#: doc/contributing.texi:247
msgid "To actually edit the code, Emacs already has a neat Scheme mode. But in addition to that, you must not miss @url{https://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides facilities to directly operate on the syntax tree, such as raising an s-expression or wrapping it, swallowing or rejecting the following s-expression, etc."
msgstr "Um den Code tatsächlich zu bearbeiten, bietet Emacs schon einen netten Scheme-Modus. Aber Sie dürfen auch @url{https://www.emacswiki.org/emacs/ParEdit, Paredit} nicht verpassen. Es bietet Hilfsmittel, um direkt mit dem Syntaxbaum zu arbeiten, und kann so zum Beispiel einen S-Ausdruck hochheben oder ihn umhüllen, ihn verschlucken oder den nachfolgenden S-Ausdruck verwerfen, etc."
#. type: cindex
#: doc/contributing.texi:248
#, no-wrap
msgid "code snippets"
msgstr "Code-Schnipsel"
#. type: cindex
#: doc/contributing.texi:249
#, no-wrap
msgid "templates"
msgstr "Vorlagen"
#. type: cindex
#: doc/contributing.texi:250
#, no-wrap
msgid "reducing boilerplate"
msgstr "Tipparbeit sparen"
#. type: Plain text
#: doc/contributing.texi:257
msgid "We also provide templates for common git commit messages and package definitions in the @file{etc/snippets} directory. These templates can be used with @url{http://joaotavora.github.io/yasnippet/, YASnippet} to expand short trigger strings to interactive text snippets. You may want to add the snippets directory to the @var{yas-snippet-dirs} variable in Emacs."
msgstr "Wir bieten auch Vorlagen für häufige Git-Commit-Nachrichten und Paketdefinitionen im Verzeichnis @file{etc/snippets}. Diese Vorlagen können mit @url{http://joaotavora.github.io/yasnippet/, YASnippet} zusammen benutzt werden, um kurze Auslöse-Zeichenketten zu interaktiven Textschnipseln umzuschreiben. Vielleicht möchten Sie das Schnipselverzeichnis zu Ihrer @var{yas-snippet-dirs}-Variablen in Emacs hinzufügen."
#. type: lisp
#: doc/contributing.texi:262
#, no-wrap
msgid ""
";; @r{Assuming the Guix checkout is in ~/src/guix.}\n"
"(with-eval-after-load 'yasnippet\n"
" (add-to-list 'yas-snippet-dirs \"~/src/guix/etc/snippets\"))\n"
msgstr ""
";; @r{Angenommen das Guix-Checkout ist in ~/src/guix.}\n"
"(with-eval-after-load 'yasnippet\n"
" (add-to-list 'yas-snippet-dirs \"~/src/guix/etc/snippets\"))\n"
#. type: Plain text
#: doc/contributing.texi:270
msgid "The commit message snippets depend on @url{https://magit.vc/, Magit} to display staged files. When editing a commit message type @code{add} followed by @kbd{TAB} to insert a commit message template for adding a package; type @code{update} followed by @kbd{TAB} to insert a template for updating a package; type @code{https} followed by @kbd{TAB} to insert a template for changing the home page URI of a package to HTTPS."
msgstr "Die Schnipsel für Commit-Nachrichten setzen @url{https://magit.vc/, Magit} voraus, um zum Commit vorgemerkte Dateien anzuzeigen. Wenn Sie eine Commit-Nachricht bearbeiten, können Sie @code{add} gefolgt von @kbd{TAB} eintippen, um eine Commit-Nachrichten-Vorlage für das Hinzufügen eines Pakets zu erhalten; tippen Sie @code{update} gefolgt von @kbd{TAB} ein, um eine Vorlage zum Aktualisieren eines Pakets zu bekommen; tippen Sie @code{https} gefolgt von @kbd{TAB} ein, um eine Vorlage zum Ändern der Homepage-URI eines Pakets auf HTTPS einzufügen."
#. type: Plain text
#: doc/contributing.texi:276
msgid "The main snippet for @code{scheme-mode} is triggered by typing @code{package...} followed by @kbd{TAB}. This snippet also inserts the trigger string @code{origin...}, which can be expanded further. The @code{origin} snippet in turn may insert other trigger strings ending on @code{...}, which also can be expanded further."
msgstr "Das Hauptschnipsel für @code{scheme-mode} wird ausgelöst, indem Sie @code{package...} gefolgt von @kbd{TAB} eintippen. Dieses Snippet fügt auch die Auslöse-Zeichenkette @code{origin...} ein, die danach weiter umgeschrieben werden kann. Das @code{origin}-Schnipsel kann wiederum andere Auslöse-Zeichenketten einfügen, die alle auf @code{...} enden, was selbst wieder weiter umgeschrieben werden kann."
#. type: cindex
#: doc/contributing.texi:281
#, no-wrap
msgid "packages, creating"
msgstr "Pakete definieren"
#. type: Plain text
#: doc/contributing.texi:285
msgid "The GNU distribution is nascent and may well lack some of your favorite packages. This section describes how you can help make the distribution grow."
msgstr "Die GNU-Distribution ist noch sehr jung und einige Ihrer Lieblingspakete könnten noch fehlen. Dieser Abschnitt beschreibt, wie Sie dabei helfen können, die Distribution wachsen zu lassen."
#. type: Plain text
#: doc/contributing.texi:293
msgid "Free software packages are usually distributed in the form of @dfn{source code tarballs}---typically @file{tar.gz} files that contain all the source files. Adding a package to the distribution means essentially two things: adding a @dfn{recipe} that describes how to build the package, including a list of other packages required to build it, and adding @dfn{package metadata} along with that recipe, such as a description and licensing information."
msgstr "Pakete mit freier Software werden normalerweise in Form von @dfn{Tarballs mit dem Quellcode} angeboten — typischerweise in @file{tar.gz}-Archivdateien, in denen alle Quelldateien enthalten sind. Ein Paket zur Distribution hinzuzufügen, bedeutet also zweierlei Dinge: Zum einen fügt man ein @dfn{Rezept} ein, das beschreibt, wie das Paket erstellt werden kann, einschließlich einer Liste von anderen Paketen, die für diese Erstellung gebraucht werden, zum anderen fügt man @dfn{Paketmetadaten} zum Rezept hinzu, wie zum Beispiel eine Beschreibung und Lizenzinformationen."
#. type: Plain text
#: doc/contributing.texi:302
msgid "In Guix all this information is embodied in @dfn{package definitions}. Package definitions provide a high-level view of the package. They are written using the syntax of the Scheme programming language; in fact, for each package we define a variable bound to the package definition, and export that variable from a module (@pxref{Package Modules}). However, in-depth Scheme knowledge is @emph{not} a prerequisite for creating packages. For more information on package definitions, @pxref{Defining Packages}."
msgstr "In Guix sind all diese Informationen ein Teil der @dfn{Paketdefinitionen}. In Paketdefinitionen hat man eine abstrahierte, hochsprachliche Sicht auf das Paket. Sie werden in der Syntax der Scheme-Programmiersprache verfasst; tatsächlich definieren wir für jedes Paket eine Variable und binden diese an dessen Definition, um die Variable anschließend aus einem Modul heraus zu exportieren (siehe @ref{Package Modules}). Allerdings ist @emph{kein} tiefgehendes Wissen über Scheme erforderlich, um Pakete zu erstellen. Mehr Informationen über Paketdefinitionen finden Sie im Abschnitt @ref{Defining Packages}."
#. type: Plain text
#: doc/contributing.texi:308
msgid "Once a package definition is in place, stored in a file in the Guix source tree, it can be tested using the @command{guix build} command (@pxref{Invoking guix build}). For example, assuming the new package is called @code{gnew}, you may run this command from the Guix build tree (@pxref{Running Guix Before It Is Installed}):"
msgstr "Eine fertige Paketdefinition kann, nachdem sie in eine Datei im Quell-Verzeichnisbaum von Guix eingesetzt wurde, mit Hilfe des Befehls @command{guix build} getestet werden (siehe @ref{Invoking guix build}). Wenn das Paket zum Beispiel den Namen @code{gnew} trägt, können Sie folgenden Befehl aus dem Erstellungs-Verzeichnisbaum von Guix heraus ausführen (siehe @ref{Running Guix Before It Is Installed}):"
#. type: example
#: doc/contributing.texi:311
#, no-wrap
msgid "./pre-inst-env guix build gnew --keep-failed\n"
msgstr "./pre-inst-env guix build gnew --keep-failed\n"
#. type: Plain text
#: doc/contributing.texi:317
msgid "Using @code{--keep-failed} makes it easier to debug build failures since it provides access to the failed build tree. Another useful command-line option when debugging is @code{--log-file}, to access the build log."
msgstr "Wenn Sie @code{--keep-failed} benutzen, ist es leichter, fehlgeschlagene Erstellungen zu untersuchen, weil dann der Verzeichnisbaum der fehlgeschlagenen Erstellung zugänglich bleibt. Eine andere nützliche Befehlszeilenoption bei der Fehlersuche ist @code{--log-file}, womit das Erstellungsprotokoll eingesehen werden kann."
#. type: Plain text
#: doc/contributing.texi:322
msgid "If the package is unknown to the @command{guix} command, it may be that the source file contains a syntax error, or lacks a @code{define-public} clause to export the package variable. To figure it out, you may load the module from Guile to get more information about the actual error:"
msgstr "Wenn der @command{guix}-Befehl das Paket nicht erkennt, kann es daran liegen, dass die Quelldatei einen Syntaxfehler hat oder ihr eine @code{define-public}-Klausel fehlt, die die Paketvariable exportiert. Um das herauszufinden, können Sie das Modul aus Guile heraus laden, um mehr Informationen über den tatsächlichen Fehler zu bekommen:"
#. type: example
#: doc/contributing.texi:325
#, no-wrap
msgid "./pre-inst-env guile -c '(use-modules (gnu packages gnew))'\n"
msgstr "./pre-inst-env guile -c '(use-modules (gnu packages gnew))'\n"
#. type: Plain text
#: doc/contributing.texi:332
msgid "Once your package builds correctly, please send us a patch (@pxref{Submitting Patches}). Well, if you need help, we will be happy to help you too. Once the patch is committed in the Guix repository, the new package automatically gets built on the supported platforms by @url{@value{SUBSTITUTE-SERVER}, our continuous integration system}."
msgstr "Sobald Ihr Paket erfolgreich erstellt werden kann, schicken Sie uns bitte einen Patch (siehe @ref{Submitting Patches}). Wenn Sie dabei Hilfe brauchen sollten, helfen wir gerne. Ab dem Zeitpunkt, zu dem der Patch als Commit ins Guix-Repository eingepflegt wurde, wird das neue Paket automatisch durch @url{@value{SUBSTITUTE-SERVER}, unser System zur Kontinuierlichen Integration} auf allen unterstützten Plattformen erstellt."
#. type: cindex
#: doc/contributing.texi:333
#, no-wrap
msgid "substituter"
msgstr "Substituierer"
#. type: Plain text
#: doc/contributing.texi:340
msgid "Users can obtain the new package definition simply by running @command{guix pull} (@pxref{Invoking guix pull}). When @code{@value{SUBSTITUTE-SERVER}} is done building the package, installing the package automatically downloads binaries from there (@pxref{Substitutes}). The only place where human intervention is needed is to review and apply the patch."
msgstr "Benutzern steht die neue Paketdefinition zur Verfügung, nachdem sie das nächste Mal @command{guix pull} ausgeführt haben (siehe @ref{Invoking guix pull}). Wenn @code{@value{SUBSTITUTE-SERVER}} selbst damit fertig ist, das Paket zu erstellen, werden bei der Installation automatisch Binärdateien von dort heruntergeladen (siehe @ref{Substitutes}). Menschliches Eingreifen muss nur stattfinden, um den Patch zu überprüfen und anzuwenden."
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:353
#: doc/contributing.texi:354
#, no-wrap
msgid "Software Freedom"
msgstr "Software-Freiheit"
#. type: menuentry
#: doc/contributing.texi:351
msgid "What may go into the distribution."
msgstr "Was in die Distribution aufgenommen werden darf."
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:381
#: doc/contributing.texi:382
#, no-wrap
msgid "Package Naming"
msgstr "Paketbenennung"
#. type: menuentry
#: doc/contributing.texi:351
msgid "What's in a name?"
msgstr "Was macht einen Namen aus?"
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:406
#: doc/contributing.texi:407
#, no-wrap
msgid "Version Numbers"
msgstr "Versionsnummern"
#. type: menuentry
#: doc/contributing.texi:351
msgid "When the name is not enough."
msgstr "Wenn der Name noch nicht genug ist."
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:497
#: doc/contributing.texi:498
#, no-wrap
msgid "Synopses and Descriptions"
msgstr "Zusammenfassungen und Beschreibungen"
#. type: menuentry
#: doc/contributing.texi:351
msgid "Helping users find the right package."
msgstr "Den Nutzern helfen, das richtige Paket zu finden."
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:577
#: doc/contributing.texi:578
#, no-wrap
msgid "Python Modules"
msgstr "Python-Module"
#. type: menuentry
#: doc/contributing.texi:351
msgid "A touch of British comedy."
msgstr "Ein Touch britischer Comedy."
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:652
#: doc/contributing.texi:653
#, no-wrap
msgid "Perl Modules"
msgstr "Perl-Module"
#. type: menuentry
#: doc/contributing.texi:351
msgid "Little pearls."
msgstr "Kleine Perlen."
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:668
#: doc/contributing.texi:669
#, no-wrap
msgid "Java Packages"
msgstr "Java-Pakete"
#. type: menuentry
#: doc/contributing.texi:351
msgid "Coffee break."
msgstr "Kaffeepause."
#. type: subsection
#: doc/contributing.texi:351 doc/contributing.texi:688
#: doc/contributing.texi:689
#, no-wrap
msgid "Fonts"
msgstr "Schriftarten"
#. type: menuentry
#: doc/contributing.texi:351
msgid "Fond of fonts."
msgstr "Schriften verschriftlicht."
#. type: cindex
#: doc/contributing.texi:357
#, no-wrap
msgid "free software"
msgstr "freie Software"
#. type: Plain text
#: doc/contributing.texi:365
msgid "The GNU operating system has been developed so that users can have freedom in their computing. GNU is @dfn{free software}, meaning that users have the @url{http://www.gnu.org/philosophy/free-sw.html,four essential freedoms}: to run the program, to study and change the program in source code form, to redistribute exact copies, and to distribute modified versions. Packages found in the GNU distribution provide only software that conveys these four freedoms."
msgstr "Das GNU-Betriebssystem wurde entwickelt, um Menschen Freiheit zu ermöglichen, wie sie ihre Rechengeräte benutzen. GNU ist @dfn{freie Software}, was bedeutet, dass Benutzer die @url{http://www.gnu.org/philosophy/free-sw.de.html,vier wesentlichen Freiheiten} haben: das Programm auszuführen, es zu untersuchen, das Programm in Form seines Quellcodes anzupassen und exakte Kopien ebenso wie modifizierte Versionen davon an andere weiterzugeben. Die Pakete, die Sie in der GNU-Distribution finden, stellen ausschließlich solche Software zur Verfügung, die Ihnen diese vier Freiheiten gewährt."
#. type: Plain text
#: doc/contributing.texi:371
msgid "In addition, the GNU distribution follow the @url{http://www.gnu.org/distros/free-system-distribution-guidelines.html,free software distribution guidelines}. Among other things, these guidelines reject non-free firmware, recommendations of non-free software, and discuss ways to deal with trademarks and patents."
msgstr "Außerdem befolgt die GNU-Distribution die @url{http://www.gnu.org/distros/free-system-distribution-guidelines.de.html,Richtlinien für freie Systemverteilungen}. Unter anderem werden unfreie Firmware sowie Empfehlungen von unfreier Software abgelehnt und Möglichkeiten zum Umgang mit Markenzeichen und Patenten werden diskutiert."
#. type: Plain text
#: doc/contributing.texi:379
msgid "Some otherwise free upstream package sources contain a small and optional subset that violates the above guidelines, for instance because this subset is itself non-free code. When that happens, the offending items are removed with appropriate patches or code snippets in the @code{origin} form of the package (@pxref{Defining Packages}). This way, @code{guix build --source} returns the ``freed'' source rather than the unmodified upstream source."
msgstr "Ansonsten freier Paketquellcode von manchen Anbietern enthält einen kleinen und optionalen Teil, der diese Richtlinien verletzt. Zum Beispiel kann dieser Teil selbst unfreier Code sein. Wenn das vorkommt, wird der sie verletzende Teil mit angemessenen Patches oder Code-Schnipseln innerhalb der @code{origin}-Form des Pakets entfernt (siehe @ref{Defining Packages}). Dadurch liefert Ihnen @code{guix build --source} nur den „befreiten“ Quellcode und nicht den unmodifizierten Quellcode des Anbieters."
#. type: cindex
#: doc/contributing.texi:384
#, no-wrap
msgid "package name"
msgstr "Paketname"
#. type: Plain text
#: doc/contributing.texi:392
msgid "A package has actually two names associated with it: First, there is the name of the @emph{Scheme variable}, the one following @code{define-public}. By this name, the package can be made known in the Scheme code, for instance as input to another package. Second, there is the string in the @code{name} field of a package definition. This name is used by package management commands such as @command{guix package} and @command{guix build}."
msgstr "Tatsächlich sind mit jedem Paket zwei Namen assoziiert: Zum einen gibt es den Namen der @emph{Scheme-Variablen}, der direkt nach @code{define-public} im Code steht. Mit diesem Namen kann das Paket im Scheme-Code nutzbar gemacht und zum Beispiel als Eingabe eines anderen Pakets benannt werden. Zum anderen gibt es die Zeichenkette im @code{name}-Feld einer Paketdefinition. Dieser Name wird von Paketverwaltungsbefehlen wie @command{guix package} und @command{guix build} benutzt."
#. type: Plain text
#: doc/contributing.texi:397
msgid "Both are usually the same and correspond to the lowercase conversion of the project name chosen upstream, with underscores replaced with hyphens. For instance, GNUnet is available as @code{gnunet}, and SDL_net as @code{sdl-net}."
msgstr "Meistens sind die beiden identisch und ergeben sich aus einer Umwandlung des vom Anbieter verwendeten Projektnamens in Kleinbuchstaben, bei der Unterstriche durch Bindestriche ersetzt werden. Zum Beispiel wird GNUnet unter dem Paketnamen @code{gnunet} angeboten und SDL_net als @code{sdl-net}."
#. type: Plain text
#: doc/contributing.texi:402
msgid "We do not add @code{lib} prefixes for library packages, unless these are already part of the official project name. But @pxref{Python Modules} and @ref{Perl Modules} for special rules concerning modules for the Python and Perl languages."
msgstr "An Bibliothekspakete hängen wir vorne kein @code{lib} als Präfix an, solange es nicht Teil des offiziellen Projektnamens ist. Beachten Sie aber die Abschnitte @ref{Python Modules} und @ref{Perl Modules}, in denen Sonderregeln für Module der Programmiersprachen Python und Perl beschrieben sind."
#. type: Plain text
#: doc/contributing.texi:404
msgid "Font package names are handled differently, @pxref{Fonts}."
msgstr "Auch Pakete mit Schriftarten werden anders behandelt, siehe @ref{Fonts}."
#. type: cindex
#: doc/contributing.texi:409
#, no-wrap
msgid "package version"
msgstr "Paketversion"
#. type: Plain text
#: doc/contributing.texi:418
msgid "We usually package only the latest version of a given free software project. But sometimes, for instance for incompatible library versions, two (or more) versions of the same package are needed. These require different Scheme variable names. We use the name as defined in @ref{Package Naming} for the most recent version; previous versions use the same name, suffixed by @code{-} and the smallest prefix of the version number that may distinguish the two versions."
msgstr "Normalerweise stellen wir nur für die neueste Version eines Freie-Software-Projekts ein Paket bereit. Manchmal gibt es allerdings Fälle wie zum Beispiel untereinander inkompatible Bibliotheksversionen, so dass zwei (oder mehr) Versionen desselben Pakets angeboten werden müssen. In diesem Fall müssen wir verschiedene Scheme-Variablennamen benutzen. Wir benutzen dann für die neueste Version den Namen, wie er im Abschnitt @ref{Package Naming} festgelegt wird, und geben vorherigen Versionen denselben Namen mit einem zusätzlichen Suffix aus @code{-} gefolgt vom kürzesten Präfix der Versionsnummer, mit dem noch immer zwei Versionen unterschieden werden können."
#. type: Plain text
#: doc/contributing.texi:421
msgid "The name inside the package definition is the same for all versions of a package and does not contain any version number."
msgstr "Der Name innerhalb der Paketdefinition ist hingegen derselbe für alle Versionen eines Pakets und enthält keine Versionsnummer."
#. type: Plain text
#: doc/contributing.texi:423
msgid "For instance, the versions 2.24.20 and 3.9.12 of GTK+ may be packaged as follows:"
msgstr "Zum Beispiel können für GTK in den Versionen 2.24.20 und 3.9.12 Pakete wie folgt geschrieben werden:"
#. type: lisp
#: doc/contributing.texi:435
#, no-wrap
msgid ""
"(define-public gtk+\n"
" (package\n"
" (name \"gtk+\")\n"
" (version \"3.9.12\")\n"
" ...))\n"
"(define-public gtk+-2\n"
" (package\n"
" (name \"gtk+\")\n"
" (version \"2.24.20\")\n"
" ...))\n"
msgstr ""
"(define-public gtk+\n"
" (package\n"
" (name \"gtk+\")\n"
" (version \"3.9.12\")\n"
" …))\n"
"(define-public gtk+-2\n"
" (package\n"
" (name \"gtk+\")\n"
" (version \"2.24.20\")\n"
" …))\n"
#. type: Plain text
#: doc/contributing.texi:437
msgid "If we also wanted GTK+ 3.8.2, this would be packaged as"
msgstr "Wenn wir auch GTK 3.8.2 wollten, würden wir das Paket schreiben als"
#. type: lisp
#: doc/contributing.texi:443
#, no-wrap
msgid ""
"(define-public gtk+-3.8\n"
" (package\n"
" (name \"gtk+\")\n"
" (version \"3.8.2\")\n"
" ...))\n"
msgstr ""
"(define-public gtk+-3.8\n"
" (package\n"
" (name \"gtk+\")\n"
" (version \"3.8.2\")\n"
" …))\n"
#. type: cindex
#: doc/contributing.texi:447
#, no-wrap
msgid "version number, for VCS snapshots"
msgstr "Versionsnummer, bei Snapshots aus Versionskontrolle"
#. type: Plain text
#: doc/contributing.texi:453
msgid "Occasionally, we package snapshots of upstream's version control system (VCS) instead of formal releases. This should remain exceptional, because it is up to upstream developers to clarify what the stable release is. Yet, it is sometimes necessary. So, what should we put in the @code{version} field?"
msgstr "Gelegentlich fügen wir auch Pakete für Snapshots aus dem Versionskontrollsystem des Anbieters statt formaler Veröffentlichungen zur Distribution hinzu. Das sollte die Ausnahme bleiben, weil die Entwickler selbst klarstellen sollten, welche Version als die stabile Veröffentlichung gelten sollte, ab und zu ist es jedoch notwendig. Was also sollten wir dann im @code{version}-Feld eintragen?"
#. type: Plain text
#: doc/contributing.texi:461
msgid "Clearly, we need to make the commit identifier of the VCS snapshot visible in the version string, but we also need to make sure that the version string is monotonically increasing so that @command{guix package --upgrade} can determine which version is newer. Since commit identifiers, notably with Git, are not monotonically increasing, we add a revision number that we increase each time we upgrade to a newer snapshot. The resulting version string looks like this:"
msgstr "Offensichtlich muss der Bezeichner des Commits, den wir als Snapshot aus dem Versionskontrollsystem nehmen, in der Versionszeichenkette zu erkennen sein, aber wir müssen auch sicherstellen, dass die Version monoton steigend ist, damit @command{guix package --upgrade} feststellen kann, welche Version die neuere ist. Weil Commit-Bezeichner, insbesondere bei Git, nicht monoton steigen, müssen wir eine Revisionsnummer hinzufügen, die wir jedes Mal erhöhen, wenn wir das Paket auf einen neueren Snapshot aktualisieren. Die sich ergebende Versionszeichenkette sieht dann so aus:"
#. type: example
#: doc/contributing.texi:470
#, no-wrap
msgid ""
"2.0.11-3.cabba9e\n"
" ^ ^ ^\n"
" | | `-- upstream commit ID\n"
" | |\n"
" | `--- Guix package revision\n"
" |\n"
"latest upstream version\n"
msgstr ""
"2.0.11-3.cabba9e\n"
" ^ ^ ^\n"
" | | `-- Commit-ID beim Anbieter\n"
" | |\n"
" | `--- Revisionsnummer des Guix-Pakets\n"
" |\n"
"die neueste Version, die der Anbieter veröffentlicht hat\n"
#. type: Plain text
#: doc/contributing.texi:479
msgid "It is a good idea to strip commit identifiers in the @code{version} field to, say, 7 digits. It avoids an aesthetic annoyance (assuming aesthetics have a role to play here) as well as problems related to OS limits such as the maximum shebang length (127 bytes for the Linux kernel.) It is best to use the full commit identifiers in @code{origin}s, though, to avoid ambiguities. A typical package definition may look like this:"
msgstr "Es ist eine gute Idee, die Commit-Bezeichner im @code{version}-Feld auf, sagen wir, 7 Ziffern zu beschränken. Das sieht besser aus (angenommen, das sollte hier eine Rolle spielen) und vermeidet Probleme, die mit der maximalen Länge von Shebangs zu tun haben (127 Bytes beim Linux-Kernel). Am besten benutzt man jedoch den vollständigen Commit-Bezeichner in @code{origin}s, um Mehrdeutigkeiten zu vermeiden. Eine typische Paketdefinition könnte so aussehen:"
#. type: lisp
#: doc/contributing.texi:495
#, no-wrap
msgid ""
"(define my-package\n"
" (let ((commit \"c3f29bc928d5900971f65965feaae59e1272a3f7\")\n"
" (revision \"1\")) ;Guix package revision\n"
" (package\n"
" (version (git-version \"0.9\" revision commit))\n"
" (source (origin\n"
" (method git-fetch)\n"
" (uri (git-reference\n"
" (url \"git://example.org/my-package.git\")\n"
" (commit commit)))\n"
" (sha256 (base32 \"1mbikn@dots{}\"))\n"
" (file-name (git-file-name name version))))\n"
" ;; @dots{}\n"
" )))\n"
msgstr ""
"(define mein-paket\n"
" (let ((commit \"c3f29bc928d5900971f65965feaae59e1272a3f7\")\n"
" (revision \"1\")) ;Guix-Paketrevision\n"
" (package\n"
" (version (git-version \"0.9\" revision commit))\n"
" (source (origin\n"
" (method git-fetch)\n"
" (uri (git-reference\n"
" (url \"git://example.org/mein-paket.git\")\n"
" (commit commit)))\n"
" (sha256 (base32 \"1mbikn…\"))\n"
" (file-name (git-file-name name version))))\n"
" ;; …\n"
" )))\n"
#. type: cindex
#: doc/contributing.texi:500
#, no-wrap
msgid "package description"
msgstr "Paketbeschreibung"
#. type: cindex
#: doc/contributing.texi:501
#, no-wrap
msgid "package synopsis"
msgstr "Paketzusammenfassung"
#. type: Plain text
#: doc/contributing.texi:508
msgid "As we have seen before, each package in GNU@tie{}Guix includes a synopsis and a description (@pxref{Defining Packages}). Synopses and descriptions are important: They are what @command{guix package --search} searches, and a crucial piece of information to help users determine whether a given package suits their needs. Consequently, packagers should pay attention to what goes into them."
msgstr "Wie wir bereits gesehen haben, enthält jedes Paket in GNU@tie{}Guix eine (im Code englischsprachige) Zusammenfassung (englisch: Synopsis) und eine Beschreibung (englisch: Description; siehe @ref{Defining Packages}). Zusammenfassungen und Beschreibungen sind wichtig: Sie werden mit @command{guix package --search} durchsucht und stellen eine entscheidende Informationsquelle für Nutzer dar, die entscheiden wollen, ob das Paket Ihren Bedürfnissen entspricht, daher sollten Paketentwickler Acht geben, was sie dort eintragen."
#. type: Plain text
#: doc/contributing.texi:516
msgid "Synopses must start with a capital letter and must not end with a period. They must not start with ``a'' or ``the'', which usually does not bring anything; for instance, prefer ``File-frobbing tool'' over ``A tool that frobs files''. The synopsis should say what the package is---e.g., ``Core GNU utilities (file, text, shell)''---or what it is used for---e.g., the synopsis for GNU@tie{}grep is ``Print lines matching a pattern''."
msgstr "Zusammenfassungen müssen mit einem Großbuchstaben beginnen und dürfen nicht mit einem Punkt enden. Sie dürfen nicht mit den Artikeln „a“ oder „the“ beginnen, die meistens ohnehin nichts zum Verständnis beitragen. Zum Beispiel sollte „File-frobbing tool“ gegenüber „A tool that frobs files“ vorgezogen werden. Die Zusammenfassung sollte aussagen, um was es sich beim Paket handelt — z.B.@: „Core GNU utilities (file, text, shell)“ —, oder aussagen, wofür es benutzt wird — z.B.@: ist die Zusammenfassung für GNU@tie{}grep „Print lines matching a pattern“."
#. type: Plain text
#: doc/contributing.texi:526
msgid "Keep in mind that the synopsis must be meaningful for a very wide audience. For example, ``Manipulate alignments in the SAM format'' might make sense for a seasoned bioinformatics researcher, but might be fairly unhelpful or even misleading to a non-specialized audience. It is a good idea to come up with a synopsis that gives an idea of the application domain of the package. In this example, this might give something like ``Manipulate nucleotide sequence alignments'', which hopefully gives the user a better idea of whether this is what they are looking for."
msgstr "Beachten Sie, dass die Zusammenfassung für eine sehr große Leserschaft einen Sinn ergeben muss. Zum Beispiel würde „Manipulate alignments in the SAM format“ vielleicht von einem erfahrenen Forscher in der Bioinformatik verstanden, könnte für die Nicht-Spezialisten in Guix’ Zielgruppe aber wenig hilfreich sein oder würde diesen sogar eine falsche Vorstellung geben. Es ist eine gute Idee, sich eine Zusammenfassung zu überlegen, die eine Vorstellung von der Anwendungsdomäne des Pakets vermittelt. Im Beispiel hier würden sich die Nutzer mit „Manipulate nucleotide sequence alignments“ hoffentlich ein besseres Bild davon machen können, ob das Paket ist, wonach sie suchen."
#. type: Plain text
#: doc/contributing.texi:534
msgid "Descriptions should take between five and ten lines. Use full sentences, and avoid using acronyms without first introducing them. Please avoid marketing phrases such as ``world-leading'', ``industrial-strength'', and ``next-generation'', and avoid superlatives like ``the most advanced''---they are not helpful to users looking for a package and may even sound suspicious. Instead, try to be factual, mentioning use cases and features."
msgstr "Beschreibungen sollten zwischen fünf und zehn Zeilen lang sein. Benutzen Sie vollständige Sätze und vermeiden Sie Abkürzungen, die Sie nicht zuvor eingeführt haben. Vermeiden Sie bitte Marketing-Phrasen wie „world-leading“ („weltweit führend“), „industrial-strength“ („industrietauglich“) und „next-generation“ („der nächsten Generation“) ebenso wie Superlative wie „the most advanced“ („das fortgeschrittenste“) — davon haben Nutzer nichts, wenn sie ein Paket suchen, und es könnte sogar verdächtig klingen. Versuchen Sie stattdessen, bei den Fakten zu bleiben und dabei Anwendungszwecke und Funktionalitäten zu erwähnen."
#. type: cindex
#: doc/contributing.texi:535
#, no-wrap
msgid "Texinfo markup, in package descriptions"
msgstr "Texinfo-Auszeichnungen, in Paketbeschreibungen"
#. type: Plain text
#: doc/contributing.texi:544
msgid "Descriptions can include Texinfo markup, which is useful to introduce ornaments such as @code{@@code} or @code{@@dfn}, bullet lists, or hyperlinks (@pxref{Overview,,, texinfo, GNU Texinfo}). However you should be careful when using some characters for example @samp{@@} and curly braces which are the basic special characters in Texinfo (@pxref{Special Characters,,, texinfo, GNU Texinfo}). User interfaces such as @command{guix package --show} take care of rendering it appropriately."
msgstr "Beschreibungen können wie bei Texinfo ausgezeichneten Text enthalten. Das bedeutet, Text kann Verzierungen wie @code{@@code} oder @code{@@dfn}, Auflistungen oder Hyperlinks enthalten (siehe @ref{Overview,,, texinfo, GNU Texinfo}). Sie sollten allerdings vorsichtig sein, wenn Sie bestimmte Zeichen wie @samp{@@} und geschweifte Klammern schreiben, weil es sich dabei um die grundlegenden Sonderzeichen in Texinfo handelt (siehe @ref{Special Characters,,, texinfo, GNU Texinfo}). Benutzungsschnittstellen wie @command{guix package --show} kümmern sich darum, solche Auszeichnungen angemessen darzustellen."
#. type: Plain text
#: doc/contributing.texi:550
msgid "Synopses and descriptions are translated by volunteers @uref{http://translationproject.org/domain/guix-packages.html, at the Translation Project} so that as many users as possible can read them in their native language. User interfaces search them and display them in the language specified by the current locale."
msgstr "Zusammenfassungen und Beschreibungen werden von Freiwilligen @uref{http://translationproject.org/domain/guix-packages.html, beim Translation Project} übersetzt, damit so viele Nutzer wie möglich sie in ihrer Muttersprache lesen können. Mit Schnittstellen für Benutzer können sie in der von der aktuell eingestellten Locale festgelegten Sprache durchsucht und angezeigt werden."
#. type: Plain text
#: doc/contributing.texi:555
msgid "To allow @command{xgettext} to extract them as translatable strings, synopses and descriptions @emph{must be literal strings}. This means that you cannot use @code{string-append} or @code{format} to construct these strings:"
msgstr "Damit @command{xgettext} sie als übersetzbare Zeichenketten extrahieren kann, @emph{müssen} Zusammenfassungen und Beschreibungen einfache Zeichenketten-Literale sein. Das bedeutet, dass Sie diese Zeichenketten nicht mit Prozeduren wie @code{string-append} oder @code{format} konstruieren können:"
#. type: lisp
#: doc/contributing.texi:561
#, no-wrap
msgid ""
"(package\n"
" ;; @dots{}\n"
" (synopsis \"This is translatable\")\n"
" (description (string-append \"This is \" \"*not*\" \" translatable.\")))\n"
msgstr ""
"(package\n"
" ;; …\n"
" (synopsis \"This is translatable\")\n"
" (description (string-append \"This is \" \"*not*\" \" translatable.\")))\n"
#. type: Plain text
#: doc/contributing.texi:569
msgid "Translation is a lot of work so, as a packager, please pay even more attention to your synopses and descriptions as every change may entail additional work for translators. In order to help them, it is possible to make recommendations or instructions visible to them by inserting special comments like this (@pxref{xgettext Invocation,,, gettext, GNU Gettext}):"
msgstr "Übersetzen ist viel Arbeit, also passen Sie als Paketentwickler bitte umso mehr auf, wenn Sie Ihre Zusammenfassungen und Beschreibungen formulieren, weil jede Änderung zusätzliche Arbeit für Übersetzer bedeutet. Um den Übersetzern zu helfen, können Sie Empfehlungen und Anweisungen für diese sichtbar machen, indem Sie spezielle Kommentare wie in diesem Beispiel einfügen (siehe @ref{xgettext Invocation,,, gettext, GNU Gettext}):"
#. type: example
#: doc/contributing.texi:574
#, no-wrap
msgid ""
";; TRANSLATORS: \"X11 resize-and-rotate\" should not be translated.\n"
"(description \"ARandR is designed to provide a simple visual front end\n"
"for the X11 resize-and-rotate (RandR) extension. @dots{}\")\n"
msgstr ""
";; TRANSLATORS: \"X11 resize-and-rotate\" should not be translated.\n"
"(description \"ARandR is designed to provide a simple visual front end\n"
"for the X11 resize-and-rotate (RandR) extension. …\")\n"
#. type: cindex
#: doc/contributing.texi:580
#, no-wrap
msgid "python"
msgstr "python"
#. type: Plain text
#: doc/contributing.texi:586
msgid "We currently package Python 2 and Python 3, under the Scheme variable names @code{python-2} and @code{python} as explained in @ref{Version Numbers}. To avoid confusion and naming clashes with other programming languages, it seems desirable that the name of a package for a Python module contains the word @code{python}."
msgstr "Zur Zeit stellen wir ein Paket für Python 2 und eines für Python 3 jeweils über die Scheme-Variablen mit den Namen @code{python-2} und @code{python} zur Verfügung, entsprechend der Erklärungen im Abschnitt @ref{Version Numbers}. Um Verwirrungen und Namenskollisionen mit anderen Programmiersprachen zu vermeiden, erscheint es als wünschenswert, dass der Name eines Pakets für ein Python-Modul auch das Wort @code{python} enthält."
#. type: Plain text
#: doc/contributing.texi:592
msgid "Some modules are compatible with only one version of Python, others with both. If the package Foo compiles only with Python 3, we name it @code{python-foo}; if it compiles only with Python 2, we name it @code{python2-foo}. If it is compatible with both versions, we create two packages with the corresponding names."
msgstr "Manche Module sind nur mit einer Version von Python kompatibel, andere mit beiden. Wenn das Paket Foo nur mit Python 3 kompiliert werden kann, geben wir ihm den Namen @code{python-foo}, wenn es nur mit Python 2 kompilierbar ist, wählen wir den Namen @code{python2-foo}. Ist es mit beiden Versionen kompatibel, erstellen wir zwei Pakete jeweils mit dem entsprechenden Namen."
#. type: Plain text
#: doc/contributing.texi:598
msgid "If a project already contains the word @code{python}, we drop this; for instance, the module python-dateutil is packaged under the names @code{python-dateutil} and @code{python2-dateutil}. If the project name starts with @code{py} (e.g.@: @code{pytz}), we keep it and prefix it as described above."
msgstr "Wenn ein Projekt bereits das Wort @code{python} im Namen hat, lassen wir es weg; zum Beispiel ist das Modul python-dateutil unter den Namen @code{python-dateutil} und @code{python2-dateutil} verfügbar. Wenn der Projektname mit @code{py} beginnt (z.B.@: @code{pytz}), behalten wir ihn bei und stellen das oben beschriebene Präfix voran."
#. type: subsubsection
#: doc/contributing.texi:599
#, no-wrap
msgid "Specifying Dependencies"
msgstr "Abhängigkeiten angeben"
#. type: cindex
#: doc/contributing.texi:600
#, no-wrap
msgid "inputs, for Python packages"
msgstr "Eingaben, für Python-Pakete"
#. type: Plain text
#: doc/contributing.texi:605
msgid "Dependency information for Python packages is usually available in the package source tree, with varying degrees of accuracy: in the @file{setup.py} file, in @file{requirements.txt}, or in @file{tox.ini}."
msgstr "Informationen über Abhängigkeiten von Python-Paketen, welche mal mehr und mal weniger stimmen, finden sich normalerweise im Verzeichnisbaum des Paketquellcodes: in der Datei @file{setup.py}, in @file{requirements.txt} oder in @file{tox.ini}."
#. type: Plain text
#: doc/contributing.texi:611
msgid "Your mission, when writing a recipe for a Python package, is to map these dependencies to the appropriate type of ``input'' (@pxref{package Reference, inputs}). Although the @code{pypi} importer normally does a good job (@pxref{Invoking guix import}), you may want to check the following check list to determine which dependency goes where."
msgstr "Wenn Sie ein Rezept für ein Python-Paket schreiben, lautet Ihr Auftrag, diese Abhängigkeiten auf angemessene Arten von „Eingaben“ abzubilden (siehe @ref{package Reference, inputs}). Obwohl der @code{pypi}-Importer hier normalerweise eine gute Arbeit leistet (siehe @ref{Invoking guix import}), könnten Sie die folgende Prüfliste durchgehen wollen, um zu bestimmen, wo welche Abhängigkeit eingeordnet werden sollte."
#. type: itemize
#: doc/contributing.texi:619
msgid "We currently package Python 2 with @code{setuptools} and @code{pip} installed like Python 3.4 has per default. Thus you don't need to specify either of these as an input. @command{guix lint} will warn you if you do."
msgstr "Derzeit ist unser Python-2-Paket so geschrieben, dass es @code{setuptools} und @code{pip} installiert, wie es auch in den Vorgaben zu Python 3.4 gemacht wird. Sie müssen also keines der beiden als Eingabe angeben. Wenn Sie es doch tun, wird @command{guix lint} Sie darauf mit einer Warnung aufmerksam machen."
#. type: itemize
#: doc/contributing.texi:625
msgid "Python dependencies required at run time go into @code{propagated-inputs}. They are typically defined with the @code{install_requires} keyword in @file{setup.py}, or in the @file{requirements.txt} file."
msgstr "Python-Abhängigkeiten, die zur Laufzeit gebraucht werden, stehen im @code{propagated-inputs}-Feld. Solche werden typischerweise mit dem Schlüsselwort @code{install_requires} in @file{setup.py} oder in der Datei @file{requirements.txt} definiert."
#. type: itemize
#: doc/contributing.texi:633
msgid "Python packages required only at build time---e.g., those listed with the @code{setup_requires} keyword in @file{setup.py}---or only for testing---e.g., those in @code{tests_require}---go into @code{native-inputs}. The rationale is that (1) they do not need to be propagated because they are not needed at run time, and (2) in a cross-compilation context, it's the ``native'' input that we'd want."
msgstr "Python-Pakete, die nur zur Erstellungszeit gebraucht werden — z.B.@: jene, die mit dem Schlüsselwort @code{setup_requires} in @file{setup.py} aufgeführt sind — oder die nur zum Testen gebraucht werden — also die in @code{tests_require} —, stehen in @code{native-inputs}. Die Begründung ist, dass (1) sie nicht propagiert werden müssen, weil sie zur Laufzeit nicht gebraucht werden, und (2) wir beim Cross-Kompilieren die „native“ Eingabe des Wirtssystems wollen."
#. type: itemize
#: doc/contributing.texi:637
msgid "Examples are the @code{pytest}, @code{mock}, and @code{nose} test frameworks. Of course if any of these packages is also required at run-time, it needs to go to @code{propagated-inputs}."
msgstr "Beispiele sind die Testrahmen @code{pytest}, @code{mock} und @code{nose}. Wenn natürlich irgendeines dieser Pakete auch zur Laufzeit benötigt wird, muss es doch in @code{propagated-inputs} stehen."
#. type: itemize
#: doc/contributing.texi:642
msgid "Anything that does not fall in the previous categories goes to @code{inputs}, for example programs or C libraries required for building Python packages containing C extensions."
msgstr "Alles, was nicht in die bisher genannten Kategorien fällt, steht in @code{inputs}, zum Beispiel Programme oder C-Bibliotheken, die zur Erstellung von Python-Paketen mit enthaltenen C-Erweiterungen gebraucht werden."
#. type: itemize
#: doc/contributing.texi:648
msgid "If a Python package has optional dependencies (@code{extras_require}), it is up to you to decide whether to add them or not, based on their usefulness/overhead ratio (@pxref{Submitting Patches, @command{guix size}})."
msgstr "Wenn ein Python-Paket optionale Abhängigkeiten hat (@code{extras_require}), ist es Ihnen überlassen, sie hinzuzufügen oder nicht hinzuzufügen, je nachdem wie es um deren Verhältnis von Nützlichkeit zu anderen Nachteilen steht (siehe @ref{Submitting Patches, @command{guix size}})."
#. type: cindex
#: doc/contributing.texi:655
#, no-wrap
msgid "perl"
msgstr "perl"
#. type: Plain text
#: doc/contributing.texi:666
msgid "Perl programs standing for themselves are named as any other package, using the lowercase upstream name. For Perl packages containing a single class, we use the lowercase class name, replace all occurrences of @code{::} by dashes and prepend the prefix @code{perl-}. So the class @code{XML::Parser} becomes @code{perl-xml-parser}. Modules containing several classes keep their lowercase upstream name and are also prepended by @code{perl-}. Such modules tend to have the word @code{perl} somewhere in their name, which gets dropped in favor of the prefix. For instance, @code{libwww-perl} becomes @code{perl-libwww}."
msgstr "Eigenständige Perl-Programme bekommen einen Namen wie jedes andere Paket, unter Nutzung des Namens beim Anbieter in Kleinbuchstaben. Für Perl-Pakete, die eine einzelne Klasse enthalten, ersetzen wir alle Vorkommen von @code{::} durch Striche und hängen davor das Präfix @code{perl-} an. Die Klasse @code{XML::Parser} wird also zu @code{perl-xml-parser}. Module, die mehrere Klassen beinhalten, behalten ihren Namen beim Anbieter, in Kleinbuchstaben gesetzt, und auch an sie wird vorne das Präfix @code{perl-} angehängt. Es gibt die Tendenz, solche Module mit dem Wort @code{perl} irgendwo im Namen zu versehen, das wird zu Gunsten des Präfixes weggelassen. Zum Beispiel wird aus @code{libwww-perl} bei uns @code{perl-libwww}."
#. type: cindex
#: doc/contributing.texi:671
#, no-wrap
msgid "java"
msgstr "java"
#. type: Plain text
#: doc/contributing.texi:674
msgid "Java programs standing for themselves are named as any other package, using the lowercase upstream name."
msgstr "Eigenständige Java-Programme werden wie jedes andere Paket benannt, d.h.@: mit ihrem in Kleinbuchstaben geschriebenen Namen beim Anbieter."
#. type: Plain text
#: doc/contributing.texi:680
msgid "To avoid confusion and naming clashes with other programming languages, it is desirable that the name of a package for a Java package is prefixed with @code{java-}. If a project already contains the word @code{java}, we drop this; for instance, the package @code{ngsjava} is packaged under the name @code{java-ngs}."
msgstr "Um Verwirrungen und Namenskollisionen mit anderen Programmiersprachen zu vermeiden, ist es wünschenswert, dass dem Namem eines Pakets zu einem Java-Paket das Präfix @code{java-} vorangestellt wird. Wenn ein Projekt bereits das Wort @code{java} im Namen trägt, lassen wir es weg; zum Beispiel befindet sich das Java-Paket @code{ngsjava} in einem Paket namens @code{java-ngs}."
#. type: Plain text
#: doc/contributing.texi:686
msgid "For Java packages containing a single class or a small class hierarchy, we use the lowercase class name, replace all occurrences of @code{.} by dashes and prepend the prefix @code{java-}. So the class @code{apache.commons.cli} becomes package @code{java-apache-commons-cli}."
msgstr "Bei Java-Paketen, die eine einzelne Klasse oder eine kleine Klassenhierarchie enthalten, benutzen wir den Klassennamen in Kleinbuchstaben und ersetzen dabei alle Vorkommen von @code{.} durch Striche und setzen das Präfix @code{java-} davor. Die Klasse @code{apache.commons.cli} wird also zum Paket @code{java-apache-commons-cli}."
#. type: cindex
#: doc/contributing.texi:691 doc/guix.texi:1675
#, no-wrap
msgid "fonts"
msgstr "Schriftarten"
#. type: Plain text
#: doc/contributing.texi:697
msgid "For fonts that are in general not installed by a user for typesetting purposes, or that are distributed as part of a larger software package, we rely on the general packaging rules for software; for instance, this applies to the fonts delivered as part of the X.Org system or fonts that are part of TeX Live."
msgstr "Wenn Schriftarten in der Regel nicht von Nutzern zur Textbearbeitung installiert werden oder als Teil eines größeren Software-Pakets mitgeliefert werden, gelten dafür die allgemeinen Paketrichtlinien für Software. Zum Beispiel trifft das auf als Teil des X.Org-Systems ausgelieferte Schriftarten zu, oder auf Schriftarten, die ein Teil von TeX Live sind."
#. type: Plain text
#: doc/contributing.texi:701
msgid "To make it easier for a user to search for fonts, names for other packages containing only fonts are constructed as follows, independently of the upstream package name."
msgstr "Damit es Nutzer leichter haben, nach Schriftarten zu suchen, konstruieren wir die Namen von anderen Paketen, die nur Schriftarten enthalten, nach dem folgenden Schema, egal was der Paketname beim Anbieter ist."
#. type: Plain text
#: doc/contributing.texi:709
msgid "The name of a package containing only one font family starts with @code{font-}; it is followed by the foundry name and a dash @code{-} if the foundry is known, and the font family name, in which spaces are replaced by dashes (and as usual, all upper case letters are transformed to lower case). For example, the Gentium font family by SIL is packaged under the name @code{font-sil-gentium}."
msgstr "Der Name eines Pakets, das nur eine Schriftfamilie enthält, beginnt mit @code{font-}. Darauf folgt der Name des Schriftenherstellers und ein Strich @code{-}, sofern bekannt ist, wer der Schriftenhersteller ist, und dann der Name der Schriftfamilie, in dem Leerzeichen durch Striche ersetzt werden (und wie immer mit Großbuchstaben statt Kleinbuchstaben). Zum Beispiel befindet sich die von SIL hergestellte Gentium-Schriftfamilie im Paket mit dem Namen @code{font-sil-gentium}."
#. type: Plain text
#: doc/contributing.texi:718
msgid "For a package containing several font families, the name of the collection is used in the place of the font family name. For instance, the Liberation fonts consist of three families, Liberation Sans, Liberation Serif and Liberation Mono. These could be packaged separately under the names @code{font-liberation-sans} and so on; but as they are distributed together under a common name, we prefer to package them together as @code{font-liberation}."
msgstr "Wenn ein Paket mehrere Schriftfamilien enthält, wird der Name der Sammlung anstelle des Schriftfamiliennamens benutzt. Zum Beispiel umfassen die Liberation-Schriftarten drei Familien: Liberation Sans, Liberation Serif und Liberation Mono. Man könnte sie getrennt voneinander mit den Namen @code{font-liberation-sans} und so weiter in Pakete einteilen, da sie aber unter einem gemeinsamen Namen angeboten werden, packen wir sie lieber zusammen in ein Paket mit dem Namen @code{font-liberation}."
#. type: Plain text
#: doc/contributing.texi:724
msgid "In the case where several formats of the same font family or font collection are packaged separately, a short form of the format, prepended by a dash, is added to the package name. We use @code{-ttf} for TrueType fonts, @code{-otf} for OpenType fonts and @code{-type1} for PostScript Type 1 fonts."
msgstr "Für den Fall, dass mehrere Formate derselben Schriftfamilie oder Schriftartensammlung in separate Pakete kommen, wird ein Kurzname für das Format mit einem Strich vorne zum Paketnamen hinzugefügt. Wir benutzen @code{-ttf} für TrueType-Schriftarten, @code{-otf} für OpenType-Schriftarten und @code{-type1} für PostScript-Typ-1-Schriftarten."
#. type: Plain text
#: doc/contributing.texi:732
msgid "In general our code follows the GNU Coding Standards (@pxref{Top,,, standards, GNU Coding Standards}). However, they do not say much about Scheme, so here are some additional rules."
msgstr "Im Allgemeinen folgt unser Code den GNU Coding Standards (siehe @ref{Top,,, standards, GNU Coding Standards}). Da diese aber nicht viel über Scheme zu sagen haben, folgen hier einige zusätzliche Regeln."
#. type: subsection
#: doc/contributing.texi:738 doc/contributing.texi:740
#: doc/contributing.texi:741
#, no-wrap
msgid "Programming Paradigm"
msgstr "Programmierparadigmen"
#. type: menuentry
#: doc/contributing.texi:738
msgid "How to compose your elements."
msgstr "Wie Sie Ihre Elemente zusammenstellen."
#. type: subsection
#: doc/contributing.texi:738 doc/contributing.texi:747
#: doc/contributing.texi:748
#, no-wrap
msgid "Modules"
msgstr "Module"
#. type: menuentry
#: doc/contributing.texi:738
msgid "Where to store your code?"
msgstr "Wo Sie Ihren Code unterbringen."
#. type: subsection
#: doc/contributing.texi:738 doc/contributing.texi:758
#: doc/contributing.texi:759
#, no-wrap
msgid "Data Types and Pattern Matching"
msgstr "Datentypen und Mustervergleich"
#. type: menuentry
#: doc/contributing.texi:738
msgid "Implementing data structures."
msgstr "Implementierung von Datenstrukturen."
#. type: subsection
#: doc/contributing.texi:738 doc/contributing.texi:772
#: doc/contributing.texi:773
#, no-wrap
msgid "Formatting Code"
msgstr "Formatierung von Code"
#. type: menuentry
#: doc/contributing.texi:738
msgid "Writing conventions."
msgstr "Schreibkonventionen."
#. type: Plain text
#: doc/contributing.texi:746
msgid "Scheme code in Guix is written in a purely functional style. One exception is code that involves input/output, and procedures that implement low-level concepts, such as the @code{memoize} procedure."
msgstr "Scheme-Code wird in Guix auf rein funktionale Weise geschrieben. Eine Ausnahme ist Code, der mit Ein- und Ausgabe zu tun hat, und Prozeduren, die grundlegende Konzepte implementieren, wie zum Beispiel die Prozedur @code{memoize}."
#. type: Plain text
#: doc/contributing.texi:754
msgid "Guile modules that are meant to be used on the builder side must live in the @code{(guix build @dots{})} name space. They must not refer to other Guix or GNU modules. However, it is OK for a ``host-side'' module to use a build-side module."
msgstr "Guile-Module, die beim Erstellen nutzbar sein sollen, müssen im Namensraum @code{(guix build …)} leben. Sie dürfen auf keine anderen Guix- oder GNU-Module Bezug nehmen. Jedoch ist es in Ordnung, wenn ein „wirtsseitiges“ Modul ein erstellungsseitiges Modul benutzt."
#. type: Plain text
#: doc/contributing.texi:757
msgid "Modules that deal with the broader GNU system should be in the @code{(gnu @dots{})} name space rather than @code{(guix @dots{})}."
msgstr "Module, die mit dem weiteren GNU-System zu tun haben, sollten im Namensraum @code{(gnu …)} und nicht in @code{(guix …)} stehen."
#. type: Plain text
#: doc/contributing.texi:766
msgid "The tendency in classical Lisp is to use lists to represent everything, and then to browse them ``by hand'' using @code{car}, @code{cdr}, @code{cadr}, and co. There are several problems with that style, notably the fact that it is hard to read, error-prone, and a hindrance to proper type error reports."
msgstr "Im klassischen Lisp gibt es die Tendenz, Listen zur Darstellung von allem zu benutzen, und diese dann „händisch“ zu durchlaufen mit @code{car}, @code{cdr}, @code{cadr} und so weiter. Dieser Stil ist aus verschiedenen Gründen problematisch, insbesondere wegen der Tatsache, dass er schwer zu lesen, schnell fehlerbehaftet und ein Hindernis beim Melden von Typfehlern ist."
#. type: Plain text
#: doc/contributing.texi:771
msgid "Guix code should define appropriate data types (for instance, using @code{define-record-type*}) rather than abuse lists. In addition, it should use pattern matching, via Guile’s @code{(ice-9 match)} module, especially when matching lists."
msgstr "Guix-Code sollte angemessene Datentypen definieren (zum Beispiel mit @code{define-record-type*}) statt Listen zu missbrauchen. Außerdem sollte er das @code{(ice-9 match)}-Modul von Guile zum Mustervergleich benutzen, besonders mit Listen."
#. type: cindex
#: doc/contributing.texi:775
#, no-wrap
msgid "formatting code"
msgstr "Formatierung von Code"
#. type: cindex
#: doc/contributing.texi:776
#, no-wrap
msgid "coding style"
msgstr "Code-Stil"
#. type: Plain text
#: doc/contributing.texi:783
msgid "When writing Scheme code, we follow common wisdom among Scheme programmers. In general, we follow the @url{http://mumble.net/~campbell/scheme/style.txt, Riastradh's Lisp Style Rules}. This document happens to describe the conventions mostly used in Guile’s code too. It is very thoughtful and well written, so please do read it."
msgstr "Beim Schreiben von Scheme-Code halten wir uns an die üblichen Gepflogenheiten unter Scheme-Programmierern. Im Allgemeinen bedeutet das, dass wir uns an @url{http://mumble.net/~campbell/scheme/style.txt, Riastradh's Lisp Style Rules} halten. Es hat sich ergeben, dass dieses Dokument auch die Konventionen beschreibt, die im Code von Guile hauptsächlich verwendet werden. Es ist gut durchdacht und schön geschrieben, also lesen Sie es bitte."
#. type: Plain text
#: doc/contributing.texi:790
msgid "Some special forms introduced in Guix, such as the @code{substitute*} macro, have special indentation rules. These are defined in the @file{.dir-locals.el} file, which Emacs automatically uses. Also note that Emacs-Guix provides @code{guix-devel-mode} mode that indents and highlights Guix code properly (@pxref{Development,,, emacs-guix, The Emacs-Guix Reference Manual})."
msgstr "Ein paar in Guix eingeführte Sonderformen, wie zum Beispiel das @code{substitute*}-Makro, haben abweichende Regeln für die Einrückung. Diese sind in der Datei @file{.dir-locals.el} definiert, die Emacs automatisch benutzt. Beachten Sie auch, dass Emacs-Guix einen Modus namens @code{guix-devel-mode} bereitstellt, der Guix-Code richtig einrückt und hervorhebt (siehe @ref{Development,,, emacs-guix, The Emacs-Guix Reference Manual})."
#. type: cindex
#: doc/contributing.texi:791
#, no-wrap
msgid "indentation, of code"
msgstr "Einrückung, Code-"
#. type: cindex
#: doc/contributing.texi:792
#, no-wrap
msgid "formatting, of code"
msgstr "Formatierung, Code-"
#. type: Plain text
#: doc/contributing.texi:795
msgid "If you do not use Emacs, please make sure to let your editor knows these rules. To automatically indent a package definition, you can also run:"
msgstr "Falls Sie nicht Emacs verwenden, sollten Sie sicherstellen, dass Ihr Editor diese Regeln kennt. Um eine Paketdefinition automatisch einzurücken, können Sie auch Folgendes ausführen:"
#. type: example
#: doc/contributing.texi:798
#, no-wrap
msgid "./etc/indent-code.el gnu/packages/@var{file}.scm @var{package}\n"
msgstr "./etc/indent-code.el gnu/packages/@var{Datei}.scm @var{Paket}\n"
#. type: Plain text
#: doc/contributing.texi:804
msgid "This automatically indents the definition of @var{package} in @file{gnu/packages/@var{file}.scm} by running Emacs in batch mode. To indent a whole file, omit the second argument:"
msgstr "Dadurch wird die Definition von @var{Paket} in @file{gnu/packages/@var{Datei}.scm} automatisch eingerückt, indem Emacs im Batch-Modus läuft. Um die Einrückung in einer gesamten Datei vorzunehmen, lassen Sie das zweite Argument weg:"
#. type: example
#: doc/contributing.texi:807
#, no-wrap
msgid "./etc/indent-code.el gnu/services/@var{file}.scm\n"
msgstr "./etc/indent-code.el gnu/services/@var{Datei}.scm\n"
#. type: cindex
#: doc/contributing.texi:809
#, no-wrap
msgid "Vim, Scheme code editing"
msgstr "Vim, zum Editieren von Scheme-Code"
#. type: Plain text
#: doc/contributing.texi:815
msgid "If you are editing code with Vim, we recommend that you run @code{:set autoindent} so that your code is automatically indented as you type. Additionally, @uref{https://www.vim.org/scripts/script.php?script_id=3998, @code{paredit.vim}} may help you deal with all these parentheses."
msgstr "Wenn Sie Code mit Vim bearbeiten, empfehlen wir, dass Sie @code{:set autoindent} ausführen, damit Ihr Code automatisch eingerückt wird, während Sie ihn schreiben. Außerdem könnte Ihnen @uref{https://www.vim.org/scripts/script.php?script_id=3998, @code{paredit.vim}} dabei helfen, mit all diesen Klammern fertigzuwerden."
#. type: Plain text
#: doc/contributing.texi:819
msgid "We require all top-level procedures to carry a docstring. This requirement can be relaxed for simple private procedures in the @code{(guix build @dots{})} name space, though."
msgstr "Wir fordern von allen Prozeduren auf oberster Ebene, dass sie über einen Docstring verfügen. Diese Voraussetzung kann jedoch bei einfachen, privaten Prozeduren im Namensraum @code{(guix build …)} aufgeweicht werden."
#. type: Plain text
#: doc/contributing.texi:822
msgid "Procedures should not have more than four positional parameters. Use keyword parameters for procedures that take more than four parameters."
msgstr "Prozeduren sollten nicht mehr als vier positionsbestimmte Parameter haben. Benutzen Sie Schlüsselwort-Parameter für Prozeduren, die mehr als vier Parameter entgegennehmen."
#. type: Plain text
#: doc/contributing.texi:833
msgid "Development is done using the Git distributed version control system. Thus, access to the repository is not strictly necessary. We welcome contributions in the form of patches as produced by @code{git format-patch} sent to the @email{guix-patches@@gnu.org} mailing list. Seasoned Guix developers may also want to look at the section on commit access (@pxref{Commit Access})."
msgstr "Die Entwicklung wird mit Hilfe des verteilten Versionskontrollsystems Git durchgeführt. Daher ist eine ständige Verbindung zum Repository nicht unbedingt erforderlich. Wir begrüßen Beiträge in Form von Patches, die mittels @code{git format-patch} erstellt und an die Mailingliste @email{guix-patches@@gnu.org} geschickt werden. Erfahrene Guix-Entwickler möchten vielleicht auch einen Blick auf den Abschnitt über Commit-Zugriff werfen (siehe @ref{Commit Access})."
#. type: Plain text
#: doc/contributing.texi:840
msgid "This mailing list is backed by a Debbugs instance, which allows us to keep track of submissions (@pxref{Tracking Bugs and Patches}). Each message sent to that mailing list gets a new tracking number assigned; people can then follow up on the submission by sending email to @code{@var{NNN}@@debbugs.gnu.org}, where @var{NNN} is the tracking number (@pxref{Sending a Patch Series})."
msgstr "Diese Mailing-Liste setzt auf einer Debbugs-Instanz auf, wodurch wir den Überblick über Eingereichtes behalten können (siehe @ref{Tracking Bugs and Patches}). Jede an diese Mailing-Liste gesendete Nachricht bekommt eine neue Folgenummer zugewiesen, so dass man eine Folge-E-Mail zur Einreichung an @code{@var{NNN}@@debbugs.gnu.org} senden kann, wobei @var{NNN} für die Folgenummer steht (siehe @ref{Sending a Patch Series})."
#. type: Plain text
#: doc/contributing.texi:844
msgid "Please write commit logs in the ChangeLog format (@pxref{Change Logs,,, standards, GNU Coding Standards}); you can check the commit history for examples."
msgstr "Bitte schreiben Sie Commit-Logs im ChangeLog-Format (siehe @ref{Change Logs,,, standards, GNU Coding Standards}); dazu finden Sie Beispiele unter den bisherigen Commits."
#. type: Plain text
#: doc/contributing.texi:847
msgid "Before submitting a patch that adds or modifies a package definition, please run through this check list:"
msgstr "Bevor Sie einen Patch einreichen, der eine Paketdefinition hinzufügt oder verändert, gehen Sie bitte diese Prüfliste durch:"
#. type: enumerate
#: doc/contributing.texi:854
msgid "If the authors of the packaged software provide a cryptographic signature for the release tarball, make an effort to verify the authenticity of the archive. For a detached GPG signature file this would be done with the @code{gpg --verify} command."
msgstr "Wenn die Autoren der verpackten Software eine kryptografische Signatur bzw. Beglaubigung für den Tarball der Veröffentlichung anbieten, so machen Sie sich bitte die Mühe, die Echtheit des Archivs zu überprüfen. Für eine abgetrennte GPG-Signaturdatei würden Sie das mit dem Befehl @code{gpg --verify} tun."
#. type: enumerate
#: doc/contributing.texi:858
msgid "Take some time to provide an adequate synopsis and description for the package. @xref{Synopses and Descriptions}, for some guidelines."
msgstr "Nehmen Sie sich die Zeit, eine passende Zusammenfassung und Beschreibung für das Paket zu verfassen. Unter @ref{Synopses and Descriptions} finden Sie dazu einige Richtlinien."
#. type: enumerate
#: doc/contributing.texi:863
msgid "Run @code{guix lint @var{package}}, where @var{package} is the name of the new or modified package, and fix any errors it reports (@pxref{Invoking guix lint})."
msgstr "Verwenden Sie @code{guix lint @var{Paket}}, wobei @var{Paket} das neue oder geänderte Paket bezeichnet, und beheben Sie alle gemeldeten Fehler (siehe @ref{Invoking guix lint})."
#. type: enumerate
#: doc/contributing.texi:867
msgid "Make sure the package builds on your platform, using @code{guix build @var{package}}."
msgstr "Stellen Sie sicher, dass das Paket auf Ihrer Plattform erstellt werden kann, indem Sie @code{guix build @var{Paket}} ausführen."
#. type: enumerate
#: doc/contributing.texi:874
msgid "We recommend you also try building the package on other supported platforms. As you may not have access to actual hardware platforms, we recommend using the @code{qemu-binfmt-service-type} to emulate them. In order to enable it, add the following service to the list of services in your @code{operating-system} configuration:"
msgstr "Wir empfehlen, dass Sie auch versuchen, das Paket auf anderen unterstützten Plattformen zu erstellen. Da Sie vielleicht keinen Zugang zu echter Hardware für diese Plattformen haben, empfehlen wir, den @code{qemu-binfmt-service-type} zu benutzen, um sie zu emulieren. Um ihn zu aktivieren, fügen Sie den folgenden Dienst in die Liste der Dienste („services“) in Ihrer @code{operating-system}-Konfiguration ein:"
#. type: lisp
#: doc/contributing.texi:880
#, no-wrap
msgid ""
"(service qemu-binfmt-service-type\n"
" (qemu-binfmt-configuration\n"
" (platforms (lookup-qemu-platforms \"arm\" \"aarch64\" \"mips64el\"))\n"
" (guix-support? #t)))\n"
msgstr ""
"(service qemu-binfmt-service-type\n"
" (qemu-binfmt-configuration\n"
" (platforms (lookup-qemu-platforms \"arm\" \"aarch64\" \"mips64el\"))\n"
" (guix-support? #t)))\n"
#. type: enumerate
#: doc/contributing.texi:883
msgid "Then reconfigure your system."
msgstr "Rekonfigurieren Sie anschließend Ihr System."
#. type: enumerate
#: doc/contributing.texi:888
msgid "You can then build packages for different platforms by specifying the @code{--system} option. For example, to build the \"hello\" package for the armhf, aarch64, or mips64 architectures, you would run the following commands, respectively:"
msgstr "Sie können Pakete für andere Plattformen erstellen lassen, indem Sie die Befehlszeilenoption @code{--system} angeben. Um zum Beispiel das Paket „hello“ für die Architekturen armhf, aarch64 oder mips64 erstellen zu lassen, würden Sie jeweils die folgenden Befehle angeben:"
#. type: example
#: doc/contributing.texi:892
#, no-wrap
msgid ""
"guix build --system=armhf-linux --rounds=2 hello\n"
"guix build --system=aarch64-linux --rounds=2 hello\n"
"guix build --system=mips64el-linux --rounds=2 hello\n"
msgstr ""
"guix build --system=armhf-linux --rounds=2 hello\n"
"guix build --system=aarch64-linux --rounds=2 hello\n"
"guix build --system=mips64el-linux --rounds=2 hello\n"
#. type: cindex
#: doc/contributing.texi:895
#, no-wrap
msgid "bundling"
msgstr "gebündelt"
#. type: enumerate
#: doc/contributing.texi:898
msgid "Make sure the package does not use bundled copies of software already available as separate packages."
msgstr "Achten Sie darauf, dass im Paket keine Software gebündelt mitgeliefert wird, die bereits in separaten Paketen zur Verfügung steht."
#. type: enumerate
#: doc/contributing.texi:907
msgid "Sometimes, packages include copies of the source code of their dependencies as a convenience for users. However, as a distribution, we want to make sure that such packages end up using the copy we already have in the distribution, if there is one. This improves resource usage (the dependency is built and stored only once), and allows the distribution to make transverse changes such as applying security updates for a given software package in a single place and have them affect the whole system---something that bundled copies prevent."
msgstr "Manchmal enthalten Pakete Kopien des Quellcodes ihrer Abhängigkeiten, um Nutzern die Installation zu erleichtern. Als eine Distribution wollen wir jedoch sicherstellen, dass solche Pakete die schon in der Distribution verfügbare Fassung benutzen, sofern es eine gibt. Dadurch wird sowohl der Ressourcenverbrauch optimiert (die Abhängigkeit wird so nur einmal erstellt und gespeichert) als auch der Distribution die Möglichkeit gegeben, ergänzende Änderungen durchzuführen, um beispielsweise Sicherheitsaktualisierungen für ein bestimmtes Paket an nur einem Ort einzuspielen, die aber das gesamte System betreffen — gebündelt mitgelieferte Kopien würden dies verhindern."
#. type: enumerate
#: doc/contributing.texi:916
msgid "Take a look at the profile reported by @command{guix size} (@pxref{Invoking guix size}). This will allow you to notice references to other packages unwillingly retained. It may also help determine whether to split the package (@pxref{Packages with Multiple Outputs}), and which optional dependencies should be used. In particular, avoid adding @code{texlive} as a dependency: because of its extreme size, use @code{texlive-tiny} or @code{texlive-union} instead."
msgstr "Schauen Sie sich das von @command{guix size} ausgegebene Profil an (siehe @ref{Invoking guix size}). Dadurch können Sie Referenzen auf andere Pakete finden, die ungewollt vorhanden sind. Dies kann auch dabei helfen, zu entscheiden, ob das Paket aufgespalten werden sollte (siehe @ref{Packages with Multiple Outputs}) und welche optionalen Abhängigkeiten verwendet werden sollten. Dabei sollten Sie es wegen seiner enormen Größe insbesondere vermeiden, @code{texlive} als eine Abhängigkeit hinzuzufügen; benutzen Sie stattdessen @code{texlive-tiny} oder @code{texlive-union}."
#. type: enumerate
#: doc/contributing.texi:921
msgid "For important changes, check that dependent package (if applicable) are not affected by the change; @code{guix refresh --list-dependent @var{package}} will help you do that (@pxref{Invoking guix refresh})."
msgstr "Achten Sie bei wichtigen Änderungen darauf, dass abhängige Pakete (falls vorhanden) nicht von der Änderung beeinträchtigt werden; @code{guix refresh --list-dependent @var{Paket}} hilft Ihnen dabei (siehe @ref{Invoking guix refresh})."
#. type: cindex
#: doc/contributing.texi:923
#, no-wrap
msgid "branching strategy"
msgstr "Branching-Strategie"
#. type: cindex
#: doc/contributing.texi:924
#, no-wrap
msgid "rebuild scheduling strategy"
msgstr "Neuerstellungs-Zeitplan"
#. type: enumerate
#: doc/contributing.texi:927
msgid "Depending on the number of dependent packages and thus the amount of rebuilding induced, commits go to different branches, along these lines:"
msgstr "Je nachdem, wieviele abhängige Pakete es gibt, und entsprechend wieviele Neuerstellungen dadurch nötig würden, finden Commits auf anderen Branches statt, nach ungefähr diesen Regeln:"
#. type: item
#: doc/contributing.texi:929
#, no-wrap
msgid "300 dependent packages or less"
msgstr "300 abhängige Pakete oder weniger"
#. type: table
#: doc/contributing.texi:931
msgid "@code{master} branch (non-disruptive changes)."
msgstr "@code{master}-Branch (störfreie Änderungen)."
#. type: item
#: doc/contributing.texi:932
#, no-wrap
msgid "between 300 and 1,200 dependent packages"
msgstr "zwischen 300 und 1200 abhängige Pakete"
#. type: table
#: doc/contributing.texi:937
msgid "@code{staging} branch (non-disruptive changes). This branch is intended to be merged in @code{master} every 3 weeks or so. Topical changes (e.g., an update of the GNOME stack) can instead go to a specific branch (say, @code{gnome-updates})."
msgstr "@code{staging}-Branch (störfreie Änderungen). Dieser Branch wird circa alle 3 Wochen mit @code{master} zusammengeführt. Themenbezogene Änderungen (z.B.@: eine Aktualisierung der GNOME-Plattform) können stattdessen auch auf einem eigenen Branch umgesetzt werden (wie @code{gnome-updates})."
#. type: item
#: doc/contributing.texi:938
#, no-wrap
msgid "more than 1,200 dependent packages"
msgstr "mehr als 1200 abhängige Pakete"
#. type: table
#: doc/contributing.texi:942
msgid "@code{core-updates} branch (may include major and potentially disruptive changes). This branch is intended to be merged in @code{master} every 2.5 months or so."
msgstr "@code{core-updates}-Branch (kann auch größere und womöglich andere Software beeinträchtigende Änderungen umfassen). Dieser Branch wird planmäßig in @code{master} alle 2,5 Monate oder so gemerget."
#. type: enumerate
#: doc/contributing.texi:949
msgid "All these branches are @uref{@value{SUBSTITUTE-SERVER}, tracked by our build farm} and merged into @code{master} once everything has been successfully built. This allows us to fix issues before they hit users, and to reduce the window during which pre-built binaries are not available."
msgstr "All diese Branches werden kontinuierlich @uref{@value{SUBSTITUTE-SERVER}, auf unserer Erstellungsfarm} erstellt und in @code{master} gemerget, sobald alles erfolgreich erstellt worden ist. Dadurch können wir Probleme beheben, bevor sie bei Nutzern auftreten, und zudem das Zeitfenster, während dessen noch keine vorerstellten Binärdateien verfügbar sind, verkürzen."
#. type: enumerate
#: doc/contributing.texi:956
msgid "Generally, branches other than @code{master} are considered @emph{frozen} if there has been a recent evaluation, or there is a corresponding @code{-next} branch. Please ask on the mailing list or IRC if unsure where to place a patch."
msgstr "Im Allgemeinen werden Branches außer @code{master} als @emph{unveränderlich} angesehen, wenn sie kürzlich ausgewertet wurden oder ein entsprechender @code{-next}-Branch existiert. Bitte fragen Sie auf der Mailing-Liste oder IRC, wenn Sie sich nicht sicher sind, wo ein Patch eingespielt werden sollte."
#. type: cindex
#: doc/contributing.texi:958
#, no-wrap
msgid "determinism, of build processes"
msgstr "Determinismus, von Erstellungsprozessen"
#. type: cindex
#: doc/contributing.texi:959
#, no-wrap
msgid "reproducible builds, checking"
msgstr "Reproduzierbare Erstellungen, Überprüfung"
#. type: enumerate
#: doc/contributing.texi:963
msgid "Check whether the package's build process is deterministic. This typically means checking whether an independent build of the package yields the exact same result that you obtained, bit for bit."
msgstr "Überprüfen Sie, ob der Erstellungsprozess deterministisch ist. Dazu prüfen Sie typischerweise, ob eine unabhängige Erstellung des Pakets genau dasselbe Ergebnis wie Ihre Erstellung hat, Bit für Bit."
#. type: enumerate
#: doc/contributing.texi:966
msgid "A simple way to do that is by building the same package several times in a row on your machine (@pxref{Invoking guix build}):"
msgstr "Dies können Sie leicht tun, indem Sie dasselbe Paket mehrere Male hintereinander auf Ihrer Maschine erstellen (siehe @ref{Invoking guix build}):"
#. type: example
#: doc/contributing.texi:969
#, no-wrap
msgid "guix build --rounds=2 my-package\n"
msgstr "guix build --rounds=2 mein-paket\n"
#. type: enumerate
#: doc/contributing.texi:973
msgid "This is enough to catch a class of common non-determinism issues, such as timestamps or randomly-generated output in the build result."
msgstr "Dies reicht aus, um eine ganze Klasse häufiger Ursachen von Nichtdeterminismus zu finden, wie zum Beispiel Zeitstempel oder zufallsgenerierte Ausgaben im Ergebnis der Erstellung."
#. type: enumerate
#: doc/contributing.texi:983
msgid "Another option is to use @command{guix challenge} (@pxref{Invoking guix challenge}). You may run it once the package has been committed and built by @code{@value{SUBSTITUTE-SERVER}} to check whether it obtains the same result as you did. Better yet: Find another machine that can build it and run @command{guix publish}. Since the remote build machine is likely different from yours, this can catch non-determinism issues related to the hardware---e.g., use of different instruction set extensions---or to the operating system kernel---e.g., reliance on @code{uname} or @file{/proc} files."
msgstr "Eine weitere Möglichkeit ist, @command{guix challenge} (siehe @ref{Invoking guix challenge}) zu benutzen. Sie können es ausführen, sobald ein Paket commitet und von @code{@value{SUBSTITUTE-SERVER}} erstellt wurde, um zu sehen, ob dort dasselbe Ergebnis wie bei Ihnen geliefert wurde. Noch besser: Finden Sie eine andere Maschine, die das Paket erstellen kann, und führen Sie @command{guix publish} aus. Da sich die entfernte Erstellungsmaschine wahrscheinlich von Ihrer unterscheidet, können Sie auf diese Weise Probleme durch Nichtdeterminismus erkennen, die mit der Hardware zu tun haben — zum Beispiel die Nutzung anderer Befehlssatzerweiterungen — oder mit dem Betriebssystem-Kernel — zum Beispiel, indem @code{uname} oder @file{/proc}-Dateien verwendet werden."
# Hier gehe ich mal davon aus, dass Dokumentation generell zuerst in Englisch geschrieben wird, daher, werden solche Begriffe auch hier nicht übersetzt.
#. type: enumerate
#: doc/contributing.texi:989
msgid "When writing documentation, please use gender-neutral wording when referring to people, such as @uref{https://en.wikipedia.org/wiki/Singular_they, singular ``they''@comma{} ``their''@comma{} ``them''}, and so forth."
msgstr "Beim Schreiben von Dokumentation achten Sie bitte auf eine geschlechtsneutrale Wortwahl, wenn Sie sich auf Personen beziehen, wie @uref{https://en.wikipedia.org/wiki/Singular_they, „they“@comma{} „their“@comma{} „them“ im Singular} und so weiter."
#. type: enumerate
#: doc/contributing.texi:993
msgid "Verify that your patch contains only one set of related changes. Bundling unrelated changes together makes reviewing harder and slower."
msgstr "Stellen Sie sicher, dass Ihr Patch nur einen Satz zusammengehöriger Änderungen umfasst. Das Zusammenfassen nicht zusammengehöriger Änderungen erschwert und bremst das Durchsehen Ihres Patches."
#. type: enumerate
#: doc/contributing.texi:996
msgid "Examples of unrelated changes include the addition of several packages, or a package update along with fixes to that package."
msgstr "Beispiele für nicht zusammengehörige Änderungen sind das Hinzufügen mehrerer Pakete auf einmal, oder das Aktualisieren eines Pakets auf eine neue Version zusammen mit Fehlerbehebungen für das Paket."
#. type: enumerate
#: doc/contributing.texi:1001
msgid "Please follow our code formatting rules, possibly running the @command{etc/indent-code.el} script to do that automatically for you (@pxref{Formatting Code})."
msgstr "Bitte befolgen Sie unsere Richtlinien für die Code-Formatierung, womöglich wollen Sie dies automatisch tun lassen durch das Skript @command{etc/indent-code.el} (siehe @ref{Formatting Code})."
#. type: enumerate
#: doc/contributing.texi:1009
msgid "When possible, use mirrors in the source URL (@pxref{Invoking guix download}). Use reliable URLs, not generated ones. For instance, GitHub archives are not necessarily identical from one generation to the next, so in this case it's often better to clone the repository. Don't use the @command{name} field in the URL: it is not very useful and if the name changes, the URL will probably be wrong."
msgstr "Benutzen Sie, wenn möglich, Spiegelserver (Mirrors) in der Quell-URL (siehe @ref{Invoking guix download}). Verwenden Sie verlässliche URLs, keine automatisch generierten. Zum Beispiel sind Archive von GitHub nicht immer identisch von einer Generation auf die nächste, daher ist es in diesem Fall besser, als Quelle einen Klon des Repositorys zu verwenden. Benutzen Sie @emph{nicht} das @command{name}-Feld beim Angeben der URL; er hilft nicht wirklich und wenn sich der Name ändert, stimmt die URL nicht mehr."
#. type: enumerate
#: doc/contributing.texi:1013
msgid "Check if Guix builds (@pxref{Building from Git}) and address the warnings, especially those about use of undefined symbols."
msgstr "Überprüfen Sie, ob Guix erstellt werden kann (siehe @ref{Building from Git}) und kümmern Sie sich um die Warnungen, besonders um solche über nicht definierte Symbole."
#. type: enumerate
#: doc/contributing.texi:1016
msgid "Make sure your changes do not break Guix and simulate a @code{guix pull} with:"
msgstr "Stellen Sie sicher, dass Ihre Änderungen Guix nicht beeinträchtigen, und simulieren Sie eine Ausführung von @code{guix pull} über den Befehl:"
#. type: example
#: doc/contributing.texi:1018
#, no-wrap
msgid "guix pull --url=/path/to/your/checkout --profile=/tmp/guix.master\n"
msgstr "guix pull --url=/pfad/zu/ihrem/checkout --profile=/tmp/guix.master\n"
#. type: Plain text
#: doc/contributing.texi:1029
msgid "When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as a subject. You may use your email client or the @command{git send-email} command (@pxref{Sending a Patch Series}). We prefer to get patches in plain text messages, either inline or as MIME attachments. You are advised to pay attention if your email client changes anything like line breaks or indentation which could potentially break the patches."
msgstr "Bitte benutzen Sie @samp{[PATCH] …} als Betreff, wenn Sie einen Patch an die Mailing-Liste schicken. Sie können dazu Ihr E-Mail-Programm oder den Befehl @command{git send-email} benutzen (siehe @ref{Sending a Patch Series}). Wir bevorzugen es, Patches als reine Textnachrichten zu erhalten, entweder eingebettet (inline) oder als MIME-Anhänge. Sie sind dazu angehalten, zu überprüfen, ob Ihr Mail-Programm solche Dinge wie Zeilenumbrüche oder die Einrückung verändert, wodurch die Patches womöglich nicht mehr funktionieren."
#. type: Plain text
#: doc/contributing.texi:1032
msgid "When a bug is resolved, please close the thread by sending an email to @email{@var{NNN}-done@@debbugs.gnu.org}."
msgstr "Wenn dadurch ein Fehler behoben wurde, schließen Sie bitte den Thread, indem Sie eine E-Mail an @email{@var{NNN}-done@@debbugs.gnu.org} senden."
#. type: anchor{#1}
#: doc/contributing.texi:1033 doc/contributing.texi:1035
#, no-wrap
msgid "Sending a Patch Series"
msgstr "Senden einer Patch-Reihe"
#. type: cindex
#: doc/contributing.texi:1035
#, no-wrap
msgid "patch series"
msgstr "Patch-Reihe"
#. type: code{#1}
#: doc/contributing.texi:1036
#, no-wrap
msgid "git send-email"
msgstr "git send-email"
#. type: code{#1}
#: doc/contributing.texi:1037
#, no-wrap
msgid "git-send-email"
msgstr "git-send-email"
#. type: Plain text
#: doc/contributing.texi:1047
msgid "When sending a patch series (e.g., using @code{git send-email}), please first send one message to @email{guix-patches@@gnu.org}, and then send subsequent patches to @email{@var{NNN}@@debbugs.gnu.org} to make sure they are kept together. See @uref{https://debbugs.gnu.org/Advanced.html, the Debbugs documentation} for more information. You can install @command{git send-email} with @command{guix install git:send-email}."
msgstr "Wenn Sie eine Patch-Reihe senden (z.B.@: mit @code{git send-email}), schicken Sie bitte als Erstes eine Nachricht an @email{guix-patches@@gnu.org} und dann nachfolgende Patches an @email{@var{NNN}@@debbugs.gnu.org}, um sicherzustellen, dass sie zusammen bearbeitet werden. Siehe @uref{https://debbugs.gnu.org/Advanced.html, die Debbugs-Dokumentation} für weitere Informationen. Sie können @command{git send-email} mit dem Befehl @command{guix install git:send-email} installieren."
#. type: cindex
#: doc/contributing.texi:1051
#, no-wrap
msgid "bug reports, tracking"
msgstr "Bug-Meldungen, Überblick"
#. type: cindex
#: doc/contributing.texi:1052
#, no-wrap
msgid "patch submissions, tracking"
msgstr "Patch-Einreichungen, Überblick"
#. type: cindex
#: doc/contributing.texi:1053
#, no-wrap
msgid "issue tracking"
msgstr "gemeldete Fehler überblicken"
#. type: cindex
#: doc/contributing.texi:1054
#, no-wrap
msgid "Debbugs, issue tracking system"
msgstr "Debbugs, System zum Überblicken gemeldeter Fehler"
#. type: Plain text
#: doc/contributing.texi:1061
msgid "Bug reports and patch submissions are currently tracked using the Debbugs instance at @uref{https://bugs.gnu.org}. Bug reports are filed against the @code{guix} ``package'' (in Debbugs parlance), by sending email to @email{bug-guix@@gnu.org}, while patch submissions are filed against the @code{guix-patches} package by sending email to @email{guix-patches@@gnu.org} (@pxref{Submitting Patches})."
msgstr "Einen Überblick über gemeldete Fehler („Bugs“) und eingereichte Patches finden Sie derzeit auf der Debbugs-Instanz unter @uref{https://bugs.gnu.org}. Fehler werden für das „Paket“ (so sagt man im Sprachgebrauch von Debbugs) namens @code{guix} gemeldet, indem Sie eine E-Mail an @email{bug-guix@@gnu.org} schicken. Dagegen werden Patches für das Paket @code{guix-patches} eingereicht, indem Sie eine E-Mail an @email{guix-patches@@gnu.org} schicken (siehe @ref{Submitting Patches})."
#. type: Plain text
#: doc/contributing.texi:1064
msgid "A web interface (actually @emph{two} web interfaces!) are available to browse issues:"
msgstr "Ihnen steht eine Weboberfläche (tatsächlich sogar @emph{zwei} Weboberflächen!) zur Verfügung, um die Fehlerdatenbank zu durchsuchen:"
#. type: itemize
#: doc/contributing.texi:1068
msgid "@url{https://bugs.gnu.org/guix} lists bug reports;"
msgstr "Auf @url{https://bugs.gnu.org/guix} werden gemeldete Fehler aufgeführt,"
#. type: itemize
#: doc/contributing.texi:1070
msgid "@url{https://bugs.gnu.org/guix-patches} lists patch submissions."
msgstr "auf @url{https://bugs.gnu.org/guix-patches} eingereichte Patches."
#. type: Plain text
#: doc/contributing.texi:1080
msgid "You can also access both of these @i{via} the (nicer) @url{https://issues.guix.gnu.org} interface@footnote{The web interface at @url{https://issues.guix.gnu.org} is powered by Mumi, a nice piece of software written in Guile, and you can help! See @url{https://git.elephly.net/gitweb.cgi?p=software/mumi.git}.}. To view discussions related to issue number @var{n}, go to @indicateurl{https://issues.guix.gnu.org/issue/@var{n}} or @indicateurl{https://bugs.gnu.org/@var{n}}."
msgstr "Sie können auf beides auch über die (hübschere) Schnittstelle unter @url{https://issues.guix.gnu.org} zugreifen@footnote{Die Weboberfläche unter @url{https://issues.guix.gnu.org} läuft über das Programm Mumi, ein schönes Stück in Guile geschriebene Software, bei der Sie uns helfen können! Siehe @url{https://git.elephly.net/gitweb.cgi?p=software/mumi.git}.}. Um Diskussionen zum Fehler mit Fehlernummer @var{n} einzusehen, schauen Sie auf @indicateurl{https://issues.guix.gnu.org/issue/@var{n}} oder @indicateurl{https://bugs.gnu.org/@var{n}}."
#. type: Plain text
#: doc/contributing.texi:1083
msgid "If you use Emacs, you may find it more convenient to interact with issues using @file{debbugs.el}, which you can install with:"
msgstr "Wenn Sie Emacs benutzen, finden Sie es vielleicht bequemer, sich durch Nutzung von @file{debbugs.el} mit Fehlern zu befassen, was Sie mit folgendem Befehl installieren können:"
#. type: example
#: doc/contributing.texi:1086
#, no-wrap
msgid "guix install emacs-debbugs\n"
msgstr "guix install emacs-debbugs\n"
#. type: Plain text
#: doc/contributing.texi:1089
msgid "For example, to list all open issues on @code{guix-patches}, hit:"
msgstr "Um zum Beispiel alle noch ausstehenden, „offenen“ Fehler bezüglich @code{guix-patches} anzusehen, geben Sie dies ein:"
#. type: example
#: doc/contributing.texi:1092
#, no-wrap
msgid "@kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y\n"
msgstr "@kbd{C-u} @kbd{M-x} debbugs-gnu @kbd{RET} @kbd{RET} guix-patches @kbd{RET} n y\n"
#. type: Plain text
#: doc/contributing.texi:1096
msgid "@xref{Top,,, debbugs-ug, Debbugs User Guide}, for more information on this nifty tool!"
msgstr "Siehe @ref{Top,,, debbugs-ug, Debbugs User Guide} für weitere Informationen zu diesem raffinierten Werkzeug."
#. type: cindex
#: doc/contributing.texi:1100
#, no-wrap
msgid "commit access, for developers"
msgstr "Commit-Zugriff, für Entwickler"
#. type: Plain text
#: doc/contributing.texi:1104
msgid "For frequent contributors, having write access to the repository is convenient. When you deem it necessary, consider applying for commit access by following these steps:"
msgstr "Für Leute, die häufig zu Guix beitragen, ist es praktischer, Schreibzugriff auf das Repository zu haben. Wenn Sie es für angemessen halten, dann sollten Sie in Erwägung ziehen, sich wie folgt um Commit-Zugriff zu bewerben:"
#. type: enumerate
#: doc/contributing.texi:1113
msgid "Find three committers who would vouch for you. You can view the list of committers at @url{https://savannah.gnu.org/project/memberlist.php?group=guix}. Each of them should email a statement to @email{guix-maintainers@@gnu.org} (a private alias for the collective of maintainers), signed with their OpenPGP key."
msgstr "Finden Sie drei Commiter, die für Sie eintreten. Sie können die Liste der Commiter unter @url{https://savannah.gnu.org/project/memberlist.php?group=guix} finden. Jeder von ihnen sollte eine entsprechende Erklärung per E-Mail an @email{guix-maintainers@@gnu.org} schicken (eine private Alias-Adresse für das Kollektiv aus allen Betreuern bzw.@: Maintainern), die jeweils mit ihrem OpenPGP-Schlüssel signiert wurde."
#. type: enumerate
#: doc/contributing.texi:1119
msgid "Committers are expected to have had some interactions with you as a contributor and to be able to judge whether you are sufficiently familiar with the project's practices. It is @emph{not} a judgment on the value of your work, so a refusal should rather be interpreted as ``let's try again later''."
msgstr "Von den Commitern wird erwartet, dass sie bereits mit Ihnen als Mitwirkendem zu tun hatten und beurteilen können, ob Sie mit den Richtlinien des Projekts hinreichend vertraut sind. Dabei geht es @emph{nicht} darum, wie wertvoll Ihre Beiträge sind, daher sollte eine Ablehnung mehr als „schauen wir später nochmal“ verstanden werden."
#. type: enumerate
#: doc/contributing.texi:1126
msgid "Send @email{guix-maintainers@@gnu.org} a message stating your intent, listing the three committers who support your application, signed with the OpenPGP key you will use to sign commits, and giving its fingerprint (see below). See @uref{https://emailselfdefense.fsf.org/en/}, for an introduction to public-key cryptography with GnuPG."
msgstr "Senden Sie eine Nachricht an @email{guix-maintainers@@gnu.org}, in der Sie Ihre Bereitschaft darlegen und die Namen der drei Commiter nennen, die Ihre Bewerbung unterstützen. Die Nachricht sollte mit dem OpenPGP-Schlüssel signiert sein, mit dem Sie später auch Ihre Commits signieren, und Sie sollten den Fingerabdruck hinterlegen (siehe unten). Siehe @uref{https://emailselfdefense.fsf.org/de/} für eine Einführung in asymmetrische Kryptografie („Public-Key“) mit GnuPG."
#. type: enumerate
#: doc/contributing.texi:1130
msgid "Maintainers ultimately decide whether to grant you commit access, usually following your referrals' recommendation."
msgstr "Betreuer entscheiden letztendlich darüber, ob Ihnen Commit-Zugriff gegeben wird, folgen dabei aber normalerweise der Empfehlung Ihrer Fürsprecher."
#. type: enumerate
#: doc/contributing.texi:1136
msgid "If and once you've been given access, please send a message to @email{guix-devel@@gnu.org} to say so, again signed with the OpenPGP key you will use to sign commits (do that before pushing your first commit). That way, everyone can notice and ensure you control that OpenPGP key."
msgstr "Wenn und sobald Ihnen Zugriff gewährt wurde, senden Sie bitte eine Nachricht an @email{guix-devel@@gnu.org}, um dies bekanntzugeben, die Sie erneut mit dem OpenPGP-Schlüssel signiert haben, mit dem Sie Commits signieren (tun Sie das, bevor Sie Ihren ersten Commit pushen). Auf diese Weise kann jeder Ihren Beitritt mitbekommen und nachprüfen, dass dieser OpenPGP-Schlüssel wirklich Ihnen gehört."
#. type: enumerate
#: doc/contributing.texi:1142
msgid "Make sure to read the rest of this section and... profit!"
msgstr "Wenn Sie den Rest dieses Abschnitts jetzt auch noch lesen, steht Ihrer Karriere nichts mehr im Weg!"
#. type: quotation
#: doc/contributing.texi:1148
msgid "Maintainers are happy to give commit access to people who have been contributing for some time and have a track record---don't be shy and don't underestimate your work!"
msgstr "Betreuer geben gerne anderen Leuten Commit-Zugriff, die schon einige Zeit dabei waren und ihre Eignung unter Beweis gestellt haben. Seien Sie nicht schüchtern und unterschätzen Sie Ihre Arbeit nicht!"
#. type: quotation
#: doc/contributing.texi:1152
msgid "However, note that the project is working towards a more automated patch review and merging system, which, as a consequence, may lead us to have fewer people with commit access to the main repository. Stay tuned!"
msgstr "Sie sollten sich bewusst sein, dass unser Projekt auf ein besser automatisiertes System hinarbeitet, um Patches zu überprüfen und zu mergen. Als Folge davon werden wir vielleicht weniger Leuten Commit-Zugriff auf das Haupt-Repository geben. Bleiben Sie auf dem Laufenden!"
#. type: Plain text
#: doc/contributing.texi:1157
msgid "If you get commit access, please make sure to follow the policy below (discussions of the policy can take place on @email{guix-devel@@gnu.org})."
msgstr "Wenn Sie Commit-Zugriff erhalten, passen Sie bitte auf, dass Sie der folgenden Richtlinie folgen (Diskussionen über die Richtlinie können wir auf @email{guix-devel@@gnu.org} führen)."
#. type: Plain text
#: doc/contributing.texi:1162
msgid "Non-trivial patches should always be posted to @email{guix-patches@@gnu.org} (trivial patches include fixing typos, etc.). This mailing list fills the patch-tracking database (@pxref{Tracking Bugs and Patches})."
msgstr "Nichttriviale Patches sollten immer zuerst an @email{guix-patches@@gnu.org} geschickt werden (zu den trivialen Patches gehört zum Beispiel das Beheben von Schreibfehlern usw.). Was an diese Mailing-Liste geschickt wird, steht danach in der Patch-Datenbank (siehe @ref{Tracking Bugs and Patches})."
#. type: Plain text
#: doc/contributing.texi:1171
msgid "For patches that just add a new package, and a simple one, it's OK to commit, if you're confident (which means you successfully built it in a chroot setup, and have done a reasonable copyright and license auditing). Likewise for package upgrades, except upgrades that trigger a lot of rebuilds (for example, upgrading GnuTLS or GLib). We have a mailing list for commit notifications (@email{guix-commits@@gnu.org}), so people can notice. Before pushing your changes, make sure to run @code{git pull --rebase}."
msgstr "Bei Patches, die nur ein einziges neues Paket hinzufügen, das auch noch einfach ist, ist es in Ordnung, sie zu commiten, wenn Sie von von ihnen überzeugt sind (das bedeutet, Sie sollten es in einer chroot-Umgebung erstellt haben und Urheberrecht und Lizenzen mit angemessener Gründlichkeit geprüft haben). Für Paketaktualisierungen gilt dasselbe, außer die Aktualisierung hat viele Neuerstellungen zur Folge (wenn Sie zum Beispiel GnuTLS oder GLib aktualisieren). Wir haben eine Mailing-Liste für Commit-Benachrichtigungen (@email{guix-commits@@gnu.org}), damit andere sie bemerken. Bevor Sie Ihre Änderungen pushen, führen Sie @code{git pull --rebase} aus."
#. type: Plain text
#: doc/contributing.texi:1177
msgid "All commits that are pushed to the central repository on Savannah must be signed with an OpenPGP key, and the public key should be uploaded to your user account on Savannah and to public key servers, such as @code{keys.openpgp.org}. To configure Git to automatically sign commits, run:"
msgstr "Alle Commits, die auf das zentrale Repository auf Savannah gepusht werden, müssen mit einem OpenPGP-Schlüssel signiert worden sein, und diesen öffentlichen Schlüssel sollten Sie auf Ihr Benutzerkonto auf Savannah und auf öffentliche Schlüsselserver wie @code{keys.openpgp.org} hochladen. Um Git so zu konfigurieren, dass es Commits automatisch signiert, führen Sie diese Befehle aus:"
#. type: example
#: doc/contributing.texi:1181
#, no-wrap
msgid ""
"git config commit.gpgsign true\n"
"git config user.signingkey CABBA6EA1DC0FF33\n"
msgstr ""
"git config commit.gpgsign true\n"
"git config user.signingkey CABBA6EA1DC0FF33\n"
#. type: Plain text
#: doc/contributing.texi:1186
msgid "You can prevent yourself from accidentally pushing unsigned commits to Savannah by using the pre-push Git hook called located at @file{etc/git/pre-push}:"
msgstr "Sie können als Vorsichtsmaßnahme, um @emph{nicht} versehentlich unsignierte Commits auf Savannah zu pushen, den Pre-Push-Git-Hook benutzen, der sich unter @file{etc/git/pre-push} befindet:"
#. type: example
#: doc/contributing.texi:1189
#, no-wrap
msgid "cp etc/git/pre-push .git/hooks/pre-push\n"
msgstr "cp etc/git/pre-push .git/hooks/pre-push\n"
#. type: Plain text
#: doc/contributing.texi:1195
msgid "When pushing a commit on behalf of somebody else, please add a @code{Signed-off-by} line at the end of the commit log message---e.g., with @command{git am --signoff}. This improves tracking of who did what."
msgstr "Wenn Sie einen Commit für jemand anderen pushen, fügen Sie bitte eine @code{Signed-off-by}-Zeile am Ende der Commit-Log-Nachricht hinzu — z.B.@: mit @command{git am --signoff}. Dadurch lässt es sich leichter überblicken, wer was getan hat."
#. type: Plain text
#: doc/contributing.texi:1200
msgid "For anything else, please post to @email{guix-patches@@gnu.org} and leave time for a review, without committing anything (@pxref{Submitting Patches}). If you didn’t receive any reply after two weeks, and if you're confident, it's OK to commit."
msgstr "Alles andere schicken Sie bitte an @email{guix-patches@@gnu.org} und warten eine Weile, ohne etwas zu commiten, damit andere Zeit haben, sich die Änderungen anzuschauen (siehe @ref{Submitting Patches}). Wenn Sie nach zwei Wochen keine Antwort erhalten haben und von den Änderungen überzeugt sind, ist es in Ordnung, sie zu commiten."
#. type: Plain text
#: doc/contributing.texi:1203
msgid "That last part is subject to being adjusted, allowing individuals to commit directly on non-controversial changes on parts they’re familiar with."
msgstr "Die letzten Anweisungen werden wir vielleicht noch ändern, damit man unstrittige Änderungen direkt commiten kann, wenn man mit von Änderungen betroffenen Teilen vertraut ist."
#. type: Plain text
#: doc/contributing.texi:1208
msgid "One last thing: the project keeps moving forward because committers not only push their own awesome changes, but also offer some of their time @emph{reviewing} and pushing other people's changes. As a committer, you're welcome to use your expertise and commit rights to help other contributors, too!"
msgstr "Eine Sache noch: Das Projekt entwickelt sich nicht nur deswegen schnell, weil Commiter ihre eigenen tollen Änderungen pushen, sondern auch, weil sie sich Zeit nehmen, die Änderungen anderer Leute in „Reviews“ zu @emph{überprüfen} und zu pushen. Als Commiter begrüßen wir es, wenn Sie Ihre Expertise und Commit-Rechte dafür einsetzen, auch anderen Mitwirkenden zu helfen!"
#. type: Plain text
#: doc/guix.texi:7
msgid "@documentencoding UTF-8"
msgstr ""
"@documentencoding UTF-8\n"
"@documentlanguage de\n"
"@frenchspacing on"
#. type: title
#: doc/guix.texi:7 doc/guix.texi:103
#, no-wrap
msgid "GNU Guix Reference Manual"
msgstr "Referenzhandbuch zu GNU Guix"
#. type: include
#: doc/guix.texi:10
#, no-wrap
msgid "version.texi"
msgstr "version-de.texi"
#. type: copying
#: doc/guix.texi:76
msgid "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017, 2019 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018, 2019 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 ng0@* Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@* Copyright @copyright{} 2017, 2018, 2019 Clément Lassieur@* Copyright @copyright{} 2017, 2018 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017, 2018 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018, 2019 Marius Bakke@* Copyright @copyright{} 2017, 2019, 2020 Hartmut Goebel@* Copyright @copyright{} 2017, 2019, 2020 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018, 2019 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018, 2019 Gábor Boskovits@* Copyright @copyright{} 2018, 2019 Florian Pelz@* Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2019 Josh Holland@* Copyright @copyright{} 2019 Diego Nicola Barbato@* Copyright @copyright{} 2019 Ivan Petkov@* Copyright @copyright{} 2019 Jakob L. Kreuze@* Copyright @copyright{} 2019 Kyle Andrews@* Copyright @copyright{} 2019 Alex Griffin@* Copyright @copyright{} 2019 Guillaume Le Vaillant@* Copyright @copyright{} 2020 Leo Prikler@* Copyright @copyright{} 2019, 2020 Simon Tournier@* Copyright @copyright{} 2020 Wiktor Żelazny@* Copyright @copyright{} 2020 Damien Cassou@*"
msgstr "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017, 2019 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018, 2019 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 ng0@* Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@* Copyright @copyright{} 2017, 2018, 2019 Clément Lassieur@* Copyright @copyright{} 2017, 2018 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017, 2018 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018, 2019 Marius Bakke@* Copyright @copyright{} 2017, 2019, 2020 Hartmut Goebel@* Copyright @copyright{} 2017, 2019, 2020 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018, 2019 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018, 2019 Gábor Boskovits@* Copyright @copyright{} 2018, 2019 Florian Pelz@* Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2019 Josh Holland@* Copyright @copyright{} 2019 Diego Nicola Barbato@* Copyright @copyright{} 2019 Ivan Petkov@* Copyright @copyright{} 2019 Jakob L. Kreuze@* Copyright @copyright{} 2019 Kyle Andrews@* Copyright @copyright{} 2019 Alex Griffin@* Copyright @copyright{} 2019 Guillaume Le Vaillant@* Copyright @copyright{} 2020 Leo Prikler@* Copyright @copyright{} 2019, 2020 Simon Tournier@* Copyright @copyright{} 2020 Wiktor Żelazny@* Copyright @copyright{} 2020 Damien Cassou@*"
#. type: copying
#: doc/guix.texi:83
msgid "Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''."
msgstr "Es ist Ihnen gestattet, dieses Dokument zu vervielfältigen, weiterzugeben und/oder zu verändern, unter den Bedingungen der GNU Free Documentation License, entweder gemäß Version 1.3 der Lizenz oder (nach Ihrer Option) einer späteren Version, die von der Free Software Foundation veröffentlicht wurde, ohne unveränderliche Abschnitte, ohne vorderen Umschlagtext und ohne hinteren Umschlagtext. Eine Kopie der Lizenz finden Sie im Abschnitt mit dem Titel „GNU Free Documentation License“."
#. type: dircategory
#: doc/guix.texi:85
#, no-wrap
msgid "System administration"
msgstr "Systemadministration"
#. type: menuentry
#: doc/guix.texi:93
msgid "Guix: (guix)"
msgstr "Guix: (guix.de)"
#. type: menuentry
#: doc/guix.texi:93
msgid "Manage installed software and system configuration."
msgstr "Installierte Software und Systemkonfigurationen verwalten."
#. type: menuentry
#: doc/guix.texi:93
msgid "guix package: (guix)Invoking guix package"
msgstr "guix package: (guix.de)guix package aufrufen"
#. type: menuentry
#: doc/guix.texi:93
msgid "Installing, removing, and upgrading packages."
msgstr "Pakete installieren, entfernen und aktualisieren."
#. type: menuentry
#: doc/guix.texi:93
msgid "guix gc: (guix)Invoking guix gc"
msgstr "guix gc: (guix.de)guix gc aufrufen"
#. type: menuentry
#: doc/guix.texi:93
msgid "Reclaiming unused disk space."
msgstr "Unbenutzten Plattenspeicher wieder freigeben."
#. type: menuentry
#: doc/guix.texi:93
msgid "guix pull: (guix)Invoking guix pull"
msgstr "guix pull: (guix.de)guix pull aufrufen"
#. type: menuentry
#: doc/guix.texi:93
msgid "Update the list of available packages."
msgstr "Die Liste verfügbarer Pakete aktualisieren."
#. type: menuentry
#: doc/guix.texi:93
msgid "guix system: (guix)Invoking guix system"
msgstr "guix system: (guix.de)guix system aufrufen"
#. type: menuentry
#: doc/guix.texi:93
msgid "Manage the operating system configuration."
msgstr "Die Betriebssystemkonfiguration verwalten."
#. type: menuentry
#: doc/guix.texi:93
msgid "guix deploy: (guix)Invoking guix deploy"
msgstr "guix deploy: (guix.de)guix deploy aufrufen"
#. type: menuentry
#: doc/guix.texi:93
msgid "Manage operating system configurations for remote hosts."
msgstr "Betriebssystemkonfigurationen entfernter Rechner verwalten."
#. type: dircategory
#: doc/guix.texi:95
#, no-wrap
msgid "Software development"
msgstr "Softwareentwicklung"
#. type: menuentry
#: doc/guix.texi:100
msgid "guix environment: (guix)Invoking guix environment"
msgstr "guix environment: (guix.de)guix environment aufrufen"
#. type: menuentry
#: doc/guix.texi:100
msgid "Building development environments with Guix."
msgstr "Umgebungen für Entwickler erstellen"
#. type: menuentry
#: doc/guix.texi:100
msgid "guix build: (guix)Invoking guix build"
msgstr "guix build: (guix.de)guix build aufrufen"
#. type: menuentry
#: doc/guix.texi:100
msgid "Building packages."
msgstr "Erstellen von Paketen."
#. type: menuentry
#: doc/guix.texi:100
msgid "guix pack: (guix)Invoking guix pack"
msgstr "guix pack: (guix.de)guix pack aufrufen"
#. type: menuentry
#: doc/guix.texi:100
msgid "Creating binary bundles."
msgstr "Bündel aus Binärdateien erstellen."
#. type: subtitle
#: doc/guix.texi:104
#, no-wrap
msgid "Using the GNU Guix Functional Package Manager"
msgstr "Den funktionalen Paketmanager GNU Guix benutzen"
#. type: author
#: doc/guix.texi:105
#, no-wrap
msgid "The GNU Guix Developers"
msgstr "Die Entwickler von GNU Guix"
#. type: titlepage
#: doc/guix.texi:111
msgid "Edition @value{EDITION} @* @value{UPDATED} @*"
msgstr "Edition @value{EDITION} @* @value{UPDATED} @*"
#. type: node
#: doc/guix.texi:118
#, no-wrap
msgid "Top"
msgstr "Top"
#. type: top
#: doc/guix.texi:119
#, no-wrap
msgid "GNU Guix"
msgstr "GNU Guix"
#. type: Plain text
#: doc/guix.texi:123
msgid "This document describes GNU Guix version @value{VERSION}, a functional package management tool written for the GNU system."
msgstr "Dieses Dokument beschreibt GNU Guix, Version @value{VERSION}, ein Werkzeug zur funktionalen Verwaltung von Softwarepaketen, das für das GNU-System geschrieben wurde."
#. type: Plain text
#: doc/guix.texi:135
msgid "This manual is also available in Simplified Chinese (@pxref{Top,,, guix.zh_CN, GNU Guix参考手册}), French (@pxref{Top,,, guix.fr, Manuel de référence de GNU Guix}), German (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), Spanish (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}), and Russian (@pxref{Top,,, guix.ru, Руководство GNU Guix}). If you would like to translate it in your native language, consider joining the @uref{https://translationproject.org/domain/guix-manual.html, Translation Project}."
msgstr "Dieses Handbuch ist auch auf Englisch (siehe @ref{Top,,, guix, GNU Guix Reference Manual}), in Vereinfachtem Chinesisch (siehe @ref{Top,,, guix.zh_CN, GNU Guix参考手册}), auf Französisch (siehe @ref{Top,,, guix.fr, Manuel de référence de GNU Guix}), auf Spanisch (siehe @ref{Top,,, guix.es, Manual de referencia de GNU Guix}) und auf Russisch verfügbar (siehe @ref{Top,,, guix.ru, Руководство GNU Guix}). Wenn Sie es in Ihre eigene Sprache übersetzen möchten, dann sind Sie beim @uref{https://translationproject.org/domain/guix-manual.html, Translation Project} herzlich willkommen."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:161 doc/guix.texi:328 doc/guix.texi:329
#, no-wrap
msgid "Introduction"
msgstr "Einführung"
#. type: menuentry
#: doc/guix.texi:151
msgid "What is Guix about?"
msgstr "Was ist Guix überhaupt?"
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:166 doc/guix.texi:487 doc/guix.texi:488
#, no-wrap
msgid "Installation"
msgstr "Installation"
#. type: menuentry
#: doc/guix.texi:151
msgid "Installing Guix."
msgstr "Guix installieren."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:181 doc/guix.texi:1812 doc/guix.texi:1813
#, no-wrap
msgid "System Installation"
msgstr "Systeminstallation"
#. type: menuentry
#: doc/guix.texi:151
msgid "Installing the whole operating system."
msgstr "Das ganze Betriebssystem installieren."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:198 doc/guix.texi:2533 doc/guix.texi:2534
#, no-wrap
msgid "Package Management"
msgstr "Paketverwaltung"
#. type: menuentry
#: doc/guix.texi:151
msgid "Package installation, upgrade, etc."
msgstr "Pakete installieren, aktualisieren usw."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:221 doc/guix.texi:4627 doc/guix.texi:4628
#, no-wrap
msgid "Development"
msgstr "Entwicklung"
#. type: menuentry
#: doc/guix.texi:151
msgid "Guix-aided software development."
msgstr "Von Guix unterstützte Softwareentwicklung."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:226 doc/guix.texi:5320 doc/guix.texi:5321
#, no-wrap
msgid "Programming Interface"
msgstr "Programmierschnittstelle"
#. type: menuentry
#: doc/guix.texi:151
msgid "Using Guix in Scheme."
msgstr "Guix in Scheme verwenden."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:242 doc/guix.texi:8048 doc/guix.texi:8049
#, no-wrap
msgid "Utilities"
msgstr "Zubehör"
#. type: menuentry
#: doc/guix.texi:151
msgid "Package management commands."
msgstr "Befehle zur Paketverwaltung."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:267 doc/guix.texi:10835 doc/guix.texi:10836
#, no-wrap
msgid "System Configuration"
msgstr "Systemkonfiguration"
#. type: menuentry
#: doc/guix.texi:151
msgid "Configuring the operating system."
msgstr "Das Betriebssystem konfigurieren."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:27696 doc/guix.texi:27697
#, no-wrap
msgid "Documentation"
msgstr "Dokumentation"
#. type: menuentry
#: doc/guix.texi:151
msgid "Browsing software user manuals."
msgstr "Wie man Nutzerhandbücher von Software liest."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:27760 doc/guix.texi:27761
#, no-wrap
msgid "Installing Debugging Files"
msgstr "Dateien zur Fehlersuche installieren"
#. type: menuentry
#: doc/guix.texi:151
msgid "Feeding the debugger."
msgstr "Womit man seinen Debugger füttert."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:27826 doc/guix.texi:27827
#, no-wrap
msgid "Security Updates"
msgstr "Sicherheitsaktualisierungen"
#. type: menuentry
#: doc/guix.texi:151
msgid "Deploying security fixes quickly."
msgstr "Sicherheits-Patches schnell einspielen."
#. type: chapter
#: doc/guix.texi:151 doc/guix.texi:27941 doc/guix.texi:27942
#, no-wrap
msgid "Bootstrapping"
msgstr "Bootstrapping"
#. type: menuentry
#: doc/guix.texi:151
msgid "GNU/Linux built from scratch."
msgstr "GNU/Linux von Grund auf selbst erstellen."
#. type: node
#: doc/guix.texi:151 doc/guix.texi:28219
#, no-wrap
msgid "Porting"
msgstr "Portierung"
#. type: menuentry
#: doc/guix.texi:151
msgid "Targeting another platform or kernel."
msgstr "Guix auf andere Plattformen und Kernels bringen."
#. type: menuentry
#: doc/guix.texi:151
msgid "Your help needed!"
msgstr "Ihre Hilfe ist nötig!"
#. type: chapter
#: doc/guix.texi:156 doc/guix.texi:28267 doc/guix.texi:28268
#, no-wrap
msgid "Acknowledgments"
msgstr "Danksagungen"
#. type: menuentry
#: doc/guix.texi:156
msgid "Thanks!"
msgstr "Danke!"
#. type: appendix
#: doc/guix.texi:156 doc/guix.texi:28289 doc/guix.texi:28290
#, no-wrap
msgid "GNU Free Documentation License"
msgstr "GNU-Lizenz für freie Dokumentation"
#. type: menuentry
#: doc/guix.texi:156
msgid "The license of this manual."
msgstr "Die Lizenz dieses Handbuchs."
#. type: unnumbered
#: doc/guix.texi:156 doc/guix.texi:28295 doc/guix.texi:28296
#, no-wrap
msgid "Concept Index"
msgstr "Konzeptverzeichnis"
#. type: menuentry
#: doc/guix.texi:156
msgid "Concepts."
msgstr "Konzepte."
#. type: unnumbered
#: doc/guix.texi:156 doc/guix.texi:28299 doc/guix.texi:28300
#, no-wrap
msgid "Programming Index"
msgstr "Programmierverzeichnis"
#. type: menuentry
#: doc/guix.texi:156
msgid "Data types, functions, and variables."
msgstr "Datentypen, Funktionen und Variable."
#. type: menuentry
#: doc/guix.texi:159
msgid "--- The Detailed Node Listing ---"
msgstr "--- Detaillierte Liste der Knoten ---"
#. type: section
#: doc/guix.texi:164 doc/guix.texi:355 doc/guix.texi:357 doc/guix.texi:358
#, no-wrap
msgid "Managing Software the Guix Way"
msgstr "Auf Guix-Art Software verwalten"
#. type: menuentry
#: doc/guix.texi:164 doc/guix.texi:355
msgid "What's special."
msgstr "Was Guix besonders macht."
#. type: section
#: doc/guix.texi:164 doc/guix.texi:355 doc/guix.texi:412 doc/guix.texi:413
#, no-wrap
msgid "GNU Distribution"
msgstr "GNU-Distribution"
#. type: menuentry
#: doc/guix.texi:164 doc/guix.texi:355
msgid "The packages and tools."
msgstr "Die Pakete und Werkzeuge."
#. type: section
#: doc/guix.texi:173 doc/guix.texi:527 doc/guix.texi:529 doc/guix.texi:530
#, no-wrap
msgid "Binary Installation"
msgstr "Aus Binärdatei installieren"
#. type: menuentry
#: doc/guix.texi:173 doc/guix.texi:527
msgid "Getting Guix running in no time!"
msgstr "Guix installieren, ohne Zeit zu verlieren!"
#. type: section
#: doc/guix.texi:173 doc/guix.texi:527 doc/guix.texi:735 doc/guix.texi:736
#, no-wrap
msgid "Requirements"
msgstr "Voraussetzungen"
#. type: menuentry
#: doc/guix.texi:173 doc/guix.texi:527
msgid "Software needed to build and run Guix."
msgstr "Zum Erstellen und Benutzen von Guix nötige Software."
#. type: section
#: doc/guix.texi:173 doc/guix.texi:527 doc/guix.texi:810 doc/guix.texi:811
#, no-wrap
msgid "Running the Test Suite"
msgstr "Den Testkatalog laufen lassen"
#. type: menuentry
#: doc/guix.texi:173 doc/guix.texi:527
msgid "Testing Guix."
msgstr "Guix testen."
#. type: section
#: doc/guix.texi:173 doc/guix.texi:175 doc/guix.texi:527 doc/guix.texi:875
#: doc/guix.texi:876
#, no-wrap
msgid "Setting Up the Daemon"
msgstr "Den Daemon einrichten"
#. type: menuentry
#: doc/guix.texi:173 doc/guix.texi:527
msgid "Preparing the build daemon's environment."
msgstr "Wie man die Umgebung des Erstellungs-Daemons einrichtet."
#. type: node
#: doc/guix.texi:173 doc/guix.texi:527 doc/guix.texi:1306
#, no-wrap
msgid "Invoking guix-daemon"
msgstr "Aufruf des guix-daemon"
#. type: menuentry
#: doc/guix.texi:173 doc/guix.texi:527
msgid "Running the build daemon."
msgstr "Den Erstellungs-Daemon laufen lassen."
#. type: section
#: doc/guix.texi:173 doc/guix.texi:527 doc/guix.texi:1572 doc/guix.texi:1573
#, no-wrap
msgid "Application Setup"
msgstr "Anwendungen einrichten"
#. type: menuentry
#: doc/guix.texi:173 doc/guix.texi:527
msgid "Application-specific setup."
msgstr "Anwendungsspezifische Einstellungen."
#. type: subsection
#: doc/guix.texi:179 doc/guix.texi:895 doc/guix.texi:897 doc/guix.texi:898
#, no-wrap
msgid "Build Environment Setup"
msgstr "Einrichten der Erstellungsumgebung"
#. type: menuentry
#: doc/guix.texi:179 doc/guix.texi:895
msgid "Preparing the isolated build environment."
msgstr "Die isolierte Umgebung zum Erstellen vorbereiten."
#. type: node
#: doc/guix.texi:179 doc/guix.texi:895 doc/guix.texi:1014
#, no-wrap
msgid "Daemon Offload Setup"
msgstr "Auslagern des Daemons einrichten"
#. type: menuentry
#: doc/guix.texi:179 doc/guix.texi:895
msgid "Offloading builds to remote machines."
msgstr "Erstellungen auf entfernte Maschinen auslagern."
#. type: subsection
#: doc/guix.texi:179 doc/guix.texi:895 doc/guix.texi:1220 doc/guix.texi:1221
#, no-wrap
msgid "SELinux Support"
msgstr "SELinux-Unterstützung"
#. type: menuentry
#: doc/guix.texi:179 doc/guix.texi:895
msgid "Using an SELinux policy for the daemon."
msgstr "Wie man eine SELinux-Richtlinie für den Daemon einrichtet."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:1256 doc/guix.texi:1846 doc/guix.texi:1848
#: doc/guix.texi:1849
#, no-wrap
msgid "Limitations"
msgstr "Einschränkungen"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "What you can expect."
msgstr "Was Sie erwarten dürfen."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:1846 doc/guix.texi:1877 doc/guix.texi:1878
#, no-wrap
msgid "Hardware Considerations"
msgstr "Hardware-Überlegungen"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "Supported hardware."
msgstr "Unterstützte Hardware."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:1846 doc/guix.texi:1912 doc/guix.texi:1913
#, no-wrap
msgid "USB Stick and DVD Installation"
msgstr "Installation von USB-Stick oder DVD"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "Preparing the installation medium."
msgstr "Das Installationsmedium vorbereiten."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:1846 doc/guix.texi:2017 doc/guix.texi:2018
#, no-wrap
msgid "Preparing for Installation"
msgstr "Vor der Installation"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "Networking, partitioning, etc."
msgstr "Netzwerkanbindung, Partitionierung etc."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:1846 doc/guix.texi:2040 doc/guix.texi:2041
#, no-wrap
msgid "Guided Graphical Installation"
msgstr "Geführte grafische Installation"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "Easy graphical installation."
msgstr "Leichte grafische Installation."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:193 doc/guix.texi:1846 doc/guix.texi:2071
#: doc/guix.texi:2072
#, no-wrap
msgid "Manual Installation"
msgstr "Manuelle Installation"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "Manual installation for wizards."
msgstr "Manuelle Installation für Zauberer."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:1846 doc/guix.texi:2421 doc/guix.texi:2422
#, no-wrap
msgid "After System Installation"
msgstr "Nach der Systeminstallation"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "When installation succeeded."
msgstr "Wenn die Installation erfolgreich war."
#. type: node
#: doc/guix.texi:191 doc/guix.texi:1846 doc/guix.texi:2449
#, no-wrap
msgid "Installing Guix in a VM"
msgstr "Guix in einer VM installieren"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "Guix System playground."
msgstr "Ein „Guix System“-Spielplatz."
#. type: section
#: doc/guix.texi:191 doc/guix.texi:1846 doc/guix.texi:2500 doc/guix.texi:2501
#, no-wrap
msgid "Building the Installation Image"
msgstr "Ein Abbild zur Installation erstellen"
#. type: menuentry
#: doc/guix.texi:191 doc/guix.texi:1846
msgid "How this comes to be."
msgstr "Wie ein solches entsteht."
# Commas in node names would prevent the terminal info viewer from following links.
#. type: node
#: doc/guix.texi:196 doc/guix.texi:2089 doc/guix.texi:2091
#, no-wrap
msgid "Keyboard Layout and Networking and Partitioning"
msgstr "Tastaturbelegung und Netzwerkanbindung und Partitionierung"
#. type: menuentry
#: doc/guix.texi:196 doc/guix.texi:2089
msgid "Initial setup."
msgstr "Erstes Einrichten."
#. type: subsection
#: doc/guix.texi:196 doc/guix.texi:2089 doc/guix.texi:2333 doc/guix.texi:2334
#, no-wrap
msgid "Proceeding with the Installation"
msgstr "Fortfahren mit der Installation"
#. type: menuentry
#: doc/guix.texi:196 doc/guix.texi:2089
msgid "Installing."
msgstr "Installieren."
#. type: section
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:2568 doc/guix.texi:2569
#, no-wrap
msgid "Features"
msgstr "Funktionalitäten"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "How Guix will make your life brighter."
msgstr "Wie Guix Ihr Leben schöner machen wird."
#. type: node
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:2654
#, no-wrap
msgid "Invoking guix package"
msgstr "Aufruf von guix package"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Package installation, removal, etc."
msgstr "Pakete installieren, entfernen usw."
#. type: section
#: doc/guix.texi:210 doc/guix.texi:212 doc/guix.texi:2566 doc/guix.texi:3190
#: doc/guix.texi:3191
#, no-wrap
msgid "Substitutes"
msgstr "Substitute"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Downloading pre-built binaries."
msgstr "Vorerstelle Binärdateien herunterladen."
#. type: section
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:3413 doc/guix.texi:3414
#, no-wrap
msgid "Packages with Multiple Outputs"
msgstr "Pakete mit mehreren Ausgaben."
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Single source package, multiple outputs."
msgstr "Ein Quellpaket, mehrere Ausgaben."
#. type: node
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:3467
#, no-wrap
msgid "Invoking guix gc"
msgstr "Aufruf von guix gc"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Running the garbage collector."
msgstr "Den Müllsammler laufen lassen."
#. type: node
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:3677
#, no-wrap
msgid "Invoking guix pull"
msgstr "Aufruf von guix pull"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Fetching the latest Guix and distribution."
msgstr "Das neueste Guix samt Distribution laden."
#. type: section
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:3894 doc/guix.texi:3895
#, no-wrap
msgid "Channels"
msgstr "Kanäle"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Customizing the package collection."
msgstr "Die Paketsammlung anpassen."
#. type: node
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:4185
#, no-wrap
msgid "Invoking guix time-machine"
msgstr "Aufruf von time-machine"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Running an older revision of Guix."
msgstr "Alte Guix-Versionen verwenden."
#. type: section
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:4240 doc/guix.texi:4241
#, no-wrap
msgid "Inferiors"
msgstr "Untergeordnete"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Interacting with another revision of Guix."
msgstr "Mit einer anderen Version von Guix interagieren."
#. type: node
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:4368
#, no-wrap
msgid "Invoking guix describe"
msgstr "Aufruf von guix describe"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Display information about your Guix revision."
msgstr "Informationen über Ihre Guix-Version anzeigen."
#. type: node
#: doc/guix.texi:210 doc/guix.texi:2566 doc/guix.texi:4449
#, no-wrap
msgid "Invoking guix archive"
msgstr "Aufruf von guix archive"
#. type: menuentry
#: doc/guix.texi:210 doc/guix.texi:2566
msgid "Exporting and importing store files."
msgstr "Import und Export von Store-Dateien."
#. type: subsection
#: doc/guix.texi:219 doc/guix.texi:3213 doc/guix.texi:3215 doc/guix.texi:3216
#, no-wrap
msgid "Official Substitute Server"
msgstr "Offizieller Substitut-Server"
#. type: menuentry
#: doc/guix.texi:219 doc/guix.texi:3213
msgid "One particular source of substitutes."
msgstr "Eine besondere Quelle von Substituten."
#. type: subsection
#: doc/guix.texi:219 doc/guix.texi:3213 doc/guix.texi:3244 doc/guix.texi:3245
#, no-wrap
msgid "Substitute Server Authorization"
msgstr "Substitut-Server autorisieren"
#. type: menuentry
#: doc/guix.texi:219 doc/guix.texi:3213
msgid "How to enable or disable substitutes."
msgstr "Wie man Substitute an- und abschaltet."
#. type: subsection
#: doc/guix.texi:219 doc/guix.texi:3213 doc/guix.texi:3308 doc/guix.texi:3309
#, no-wrap
msgid "Substitute Authentication"
msgstr "Substitutauthentifizierung"
#. type: menuentry
#: doc/guix.texi:219 doc/guix.texi:3213
msgid "How Guix verifies substitutes."
msgstr "Wie Guix Substitute verifiziert."
#. type: subsection
#: doc/guix.texi:219 doc/guix.texi:3213 doc/guix.texi:3343 doc/guix.texi:3344
#, no-wrap
msgid "Proxy Settings"
msgstr "Proxy-Einstellungen"
#. type: menuentry
#: doc/guix.texi:219 doc/guix.texi:3213
msgid "How to get substitutes via proxy."
msgstr "Wie Sie Substitute über einen Proxy beziehen."
#. type: subsection
#: doc/guix.texi:219 doc/guix.texi:3213 doc/guix.texi:3355 doc/guix.texi:3356
#, no-wrap
msgid "Substitution Failure"
msgstr "Fehler bei der Substitution"
#. type: menuentry
#: doc/guix.texi:219 doc/guix.texi:3213
msgid "What happens when substitution fails."
msgstr "Was passiert, wenn die Substitution fehlschlägt."
#. type: subsection
#: doc/guix.texi:219 doc/guix.texi:3213 doc/guix.texi:3383 doc/guix.texi:3384
#, no-wrap
msgid "On Trusting Binaries"
msgstr "Vom Vertrauen gegenüber Binärdateien"
#. type: menuentry
#: doc/guix.texi:219 doc/guix.texi:3213
msgid "How can you trust that binary blob?"
msgstr "Wie können Sie diesem binären Blob trauen?"
#. type: node
#: doc/guix.texi:224 doc/guix.texi:4644 doc/guix.texi:4646
#, no-wrap
msgid "Invoking guix environment"
msgstr "Aufruf von guix environment"
#. type: menuentry
#: doc/guix.texi:224 doc/guix.texi:4644
msgid "Setting up development environments."
msgstr "Entwicklungsumgebungen einrichten."
#. type: node
#: doc/guix.texi:224 doc/guix.texi:4644 doc/guix.texi:4994
#, no-wrap
msgid "Invoking guix pack"
msgstr "Aufruf von guix pack"
#. type: menuentry
#: doc/guix.texi:224 doc/guix.texi:4644
msgid "Creating software bundles."
msgstr "Software-Bündel erstellen."
#. type: section
#: doc/guix.texi:235 doc/guix.texi:5357 doc/guix.texi:5359 doc/guix.texi:5360
#, no-wrap
msgid "Package Modules"
msgstr "Paketmodule"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Packages from the programmer's viewpoint."
msgstr "Pakete aus Sicht des Programmierers."
#. type: section
#: doc/guix.texi:235 doc/guix.texi:237 doc/guix.texi:5357 doc/guix.texi:5421
#: doc/guix.texi:5422
#, no-wrap
msgid "Defining Packages"
msgstr "Pakete definieren"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Defining new packages."
msgstr "Wie Sie neue Pakete definieren."
#. type: section
#: doc/guix.texi:235 doc/guix.texi:5357 doc/guix.texi:5921 doc/guix.texi:5922
#, no-wrap
msgid "Build Systems"
msgstr "Erstellungssysteme"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Specifying how packages are built."
msgstr "Angeben, wie Pakete erstellt werden."
#. type: section
#: doc/guix.texi:235 doc/guix.texi:5357 doc/guix.texi:6744 doc/guix.texi:6745
#, no-wrap
msgid "The Store"
msgstr "Der Store"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Manipulating the package store."
msgstr "Den Paket-Store verändern."
#. type: section
#: doc/guix.texi:235 doc/guix.texi:5357 doc/guix.texi:6895 doc/guix.texi:6896
#, no-wrap
msgid "Derivations"
msgstr "Ableitungen"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Low-level interface to package derivations."
msgstr "Systemnahe Schnittstelle für Paketableitungen."
#. type: section
#: doc/guix.texi:235 doc/guix.texi:5357 doc/guix.texi:7089 doc/guix.texi:7090
#, no-wrap
msgid "The Store Monad"
msgstr "Die Store-Monade"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Purely functional interface to the store."
msgstr "Rein funktionale Schnittstelle zum Store."
#. type: section
#: doc/guix.texi:235 doc/guix.texi:5357 doc/guix.texi:7404 doc/guix.texi:7405
#, no-wrap
msgid "G-Expressions"
msgstr "G-Ausdrücke"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Manipulating build expressions."
msgstr "Erstellungsausdrücke verarbeiten."
#. type: node
#: doc/guix.texi:235 doc/guix.texi:5357 doc/guix.texi:7983
#, no-wrap
msgid "Invoking guix repl"
msgstr "Aufruf von guix repl"
#. type: menuentry
#: doc/guix.texi:235 doc/guix.texi:5357
msgid "Fiddling with Guix interactively."
msgstr "Interaktiv an Guix herumbasteln."
#. type: node
#: doc/guix.texi:240 doc/guix.texi:5689 doc/guix.texi:5692
#, no-wrap
msgid "package Reference"
msgstr "„package“-Referenz"
#. type: menuentry
#: doc/guix.texi:240 doc/guix.texi:5689
msgid "The package data type."
msgstr "Der Datentyp für Pakete."
#. type: node
#: doc/guix.texi:240 doc/guix.texi:5689 doc/guix.texi:5833
#, no-wrap
msgid "origin Reference"
msgstr "„origin“-Referenz"
#. type: menuentry
#: doc/guix.texi:240 doc/guix.texi:5689
msgid "The origin data type."
msgstr "Datentyp für Paketursprünge."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:8074
#, no-wrap
msgid "Invoking guix build"
msgstr "Aufruf von guix build"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Building packages from the command line."
msgstr "Pakete aus der Befehlszeile heraus erstellen."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:8730
#, no-wrap
msgid "Invoking guix edit"
msgstr "Aufruf von guix edit"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Editing package definitions."
msgstr "Paketdefinitionen bearbeiten."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:8760
#, no-wrap
msgid "Invoking guix download"
msgstr "Aufruf von guix download"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Downloading a file and printing its hash."
msgstr "Herunterladen einer Datei und Ausgabe ihres Hashes."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:8813
#, no-wrap
msgid "Invoking guix hash"
msgstr "Aufruf von guix hash"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Computing the cryptographic hash of a file."
msgstr "Den kryptografischen Hash einer Datei berechnen."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:8875
#, no-wrap
msgid "Invoking guix import"
msgstr "Aufruf von guix import"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Importing package definitions."
msgstr "Paketdefinitionen importieren."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:9306
#, no-wrap
msgid "Invoking guix refresh"
msgstr "Aufruf von guix refresh"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Updating package definitions."
msgstr "Paketdefinitionen aktualisieren."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:9627
#, no-wrap
msgid "Invoking guix lint"
msgstr "Aufruf von guix lint"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Finding errors in package definitions."
msgstr "Fehler in Paketdefinitionen finden."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:9776
#, no-wrap
msgid "Invoking guix size"
msgstr "Aufruf von guix size"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Profiling disk usage."
msgstr "Plattenplatzverbrauch profilieren."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:9907
#, no-wrap
msgid "Invoking guix graph"
msgstr "Aufruf von guix graph"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Visualizing the graph of packages."
msgstr "Den Paketgraphen visualisieren."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:10129
#, no-wrap
msgid "Invoking guix publish"
msgstr "Aufruf von guix publish"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Sharing substitutes."
msgstr "Substitute teilen."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:10359
#, no-wrap
msgid "Invoking guix challenge"
msgstr "Aufruf von guix challenge"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Challenging substitute servers."
msgstr "Die Substitut-Server anfechten."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:10542
#, no-wrap
msgid "Invoking guix copy"
msgstr "Aufruf von guix copy"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Copying to and from a remote store."
msgstr "Mit einem entfernten Store Dateien austauschen."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:10605
#, no-wrap
msgid "Invoking guix container"
msgstr "Aufruf von guix container"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Process isolation."
msgstr "Prozesse isolieren."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:10659
#, no-wrap
msgid "Invoking guix weather"
msgstr "Aufruf von guix weather"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Assessing substitute availability."
msgstr "Die Verfügbarkeit von Substituten einschätzen."
#. type: node
#: doc/guix.texi:258 doc/guix.texi:8072 doc/guix.texi:10779
#, no-wrap
msgid "Invoking guix processes"
msgstr "Aufruf von guix processes"
#. type: menuentry
#: doc/guix.texi:258 doc/guix.texi:8072
msgid "Listing client processes."
msgstr "Auflisten der Client-Prozesse"
#. type: section
#: doc/guix.texi:260 doc/guix.texi:8075
#, no-wrap
msgid "Invoking @command{guix build}"
msgstr "Aufruf von @command{guix build}"
#. type: subsection
#: doc/guix.texi:265 doc/guix.texi:8126 doc/guix.texi:8128 doc/guix.texi:8129
#, no-wrap
msgid "Common Build Options"
msgstr "Gemeinsame Erstellungsoptionen"
#. type: menuentry
#: doc/guix.texi:265 doc/guix.texi:8126
msgid "Build options for most commands."
msgstr "Erstellungsoptionen für die meisten Befehle."
#. type: subsection
#: doc/guix.texi:265 doc/guix.texi:8126 doc/guix.texi:8284 doc/guix.texi:8285
#, no-wrap
msgid "Package Transformation Options"
msgstr "Paketumwandlungsoptionen"
#. type: menuentry
#: doc/guix.texi:265 doc/guix.texi:8126
msgid "Creating variants of packages."
msgstr "Varianten von Paketen erzeugen."
#. type: subsection
#: doc/guix.texi:265 doc/guix.texi:8126 doc/guix.texi:8433 doc/guix.texi:8434
#, no-wrap
msgid "Additional Build Options"
msgstr "Zusätzliche Erstellungsoptionen"
#. type: menuentry
#: doc/guix.texi:265 doc/guix.texi:8126
msgid "Options specific to 'guix build'."
msgstr "Optionen spezifisch für „guix build“."
#. type: subsection
#: doc/guix.texi:265 doc/guix.texi:8126 doc/guix.texi:8650 doc/guix.texi:8651
#, no-wrap
msgid "Debugging Build Failures"
msgstr "Fehlschläge beim Erstellen untersuchen"
#. type: menuentry
#: doc/guix.texi:265 doc/guix.texi:8126
msgid "Real life packaging experience."
msgstr "Praxiserfahrung bei der Paketerstellung."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:10880
#: doc/guix.texi:10881
#, no-wrap
msgid "Using the Configuration System"
msgstr "Das Konfigurationssystem nutzen"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Customizing your GNU system."
msgstr "Ihr GNU-System anpassen."
#. type: node
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:11116
#, no-wrap
msgid "operating-system Reference"
msgstr "„operating-system“-Referenz"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Detail of operating-system declarations."
msgstr "Details der Betriebssystem-Deklarationen."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:11320
#: doc/guix.texi:11321
#, no-wrap
msgid "File Systems"
msgstr "Dateisysteme"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Configuring file system mounts."
msgstr "Die Dateisystemeinbindungen konfigurieren."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:11493
#: doc/guix.texi:11494
#, no-wrap
msgid "Mapped Devices"
msgstr "Zugeordnete Geräte"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Block device extra processing."
msgstr "Näheres zu blockorientierten Speichermedien."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:11614
#: doc/guix.texi:11615
#, no-wrap
msgid "User Accounts"
msgstr "Benutzerkonten"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Specifying user accounts."
msgstr "Benutzerkonten festlegen."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:2098 doc/guix.texi:10878
#: doc/guix.texi:11767 doc/guix.texi:11768
#, no-wrap
msgid "Keyboard Layout"
msgstr "Tastaturbelegung"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "How the system interprets key strokes."
msgstr "Wie das System Tastendrücke interpretiert."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:1580 doc/guix.texi:10878
#: doc/guix.texi:11899 doc/guix.texi:11900
#, no-wrap
msgid "Locales"
msgstr "Locales"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Language and cultural convention settings."
msgstr "Sprache und kulturelle Konventionen."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:287 doc/guix.texi:10878 doc/guix.texi:12039
#: doc/guix.texi:12040
#, no-wrap
msgid "Services"
msgstr "Dienste"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Specifying system services."
msgstr "Systemdienste festlegen."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:25596
#: doc/guix.texi:25597
#, no-wrap
msgid "Setuid Programs"
msgstr "Setuid-Programme"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Programs running with root privileges."
msgstr "Mit Administratorrechten startende Programme."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:1725 doc/guix.texi:10878
#: doc/guix.texi:25642 doc/guix.texi:25643
#, no-wrap
msgid "X.509 Certificates"
msgstr "X.509-Zertifikate"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Authenticating HTTPS servers."
msgstr "HTTPS-Server authentifizieren."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:1623 doc/guix.texi:10878
#: doc/guix.texi:25705 doc/guix.texi:25706
#, no-wrap
msgid "Name Service Switch"
msgstr "Name Service Switch"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Configuring libc's name service switch."
msgstr "Den Name Service Switch von libc konfigurieren."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:25843
#: doc/guix.texi:25844
#, no-wrap
msgid "Initial RAM Disk"
msgstr "Initiale RAM-Disk"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Linux-Libre bootstrapping."
msgstr "Linux-libre hochfahren."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:26017
#: doc/guix.texi:26018
#, no-wrap
msgid "Bootloader Configuration"
msgstr "Bootloader-Konfiguration"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Configuring the boot loader."
msgstr "Den Bootloader konfigurieren."
#. type: node
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:26238
#, no-wrap
msgid "Invoking guix system"
msgstr "Aufruf von guix system"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Instantiating a system configuration."
msgstr "Instanziierung einer Systemkonfiguration."
#. type: node
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:26759
#, no-wrap
msgid "Invoking guix deploy"
msgstr "Aufruf von guix deploy"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Deploying a system configuration to a remote host."
msgstr "Eine Systemkonfiguration auf einen entfernten Rechner aufspielen."
#. type: node
#: doc/guix.texi:285 doc/guix.texi:10878 doc/guix.texi:26934
#, no-wrap
msgid "Running Guix in a VM"
msgstr "Guix in einer VM starten"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "How to run Guix System in a virtual machine."
msgstr "Wie man „Guix System“ in einer virtuellen Maschine startet."
#. type: section
#: doc/guix.texi:285 doc/guix.texi:318 doc/guix.texi:10878 doc/guix.texi:27062
#: doc/guix.texi:27063
#, no-wrap
msgid "Defining Services"
msgstr "Dienste definieren"
#. type: menuentry
#: doc/guix.texi:285 doc/guix.texi:10878
msgid "Adding new service definitions."
msgstr "Neue Dienstdefinitionen hinzufügen."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:12121
#: doc/guix.texi:12122
#, no-wrap
msgid "Base Services"
msgstr "Basisdienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Essential system services."
msgstr "Essenzielle Systemdienste."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:12922
#: doc/guix.texi:12923
#, no-wrap
msgid "Scheduled Job Execution"
msgstr "Geplante Auftragsausführung"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "The mcron service."
msgstr "Der mcron-Dienst."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:13057
#: doc/guix.texi:13058
#, no-wrap
msgid "Log Rotation"
msgstr "Log-Rotation"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "The rottlog service."
msgstr "Der rottlog-Dienst."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:13160
#: doc/guix.texi:13161
#, no-wrap
msgid "Networking Services"
msgstr "Netzwerkdienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Network setup, SSH daemon, etc."
msgstr "Netzwerkeinrichtung, SSH-Daemon etc."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:14275
#: doc/guix.texi:14276
#, no-wrap
msgid "X Window"
msgstr "X Window"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Graphical display."
msgstr "Grafische Anzeige."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:14652
#: doc/guix.texi:14653
#, no-wrap
msgid "Printing Services"
msgstr "Druckdienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Local and remote printer support."
msgstr "Unterstützung für lokale und entfernte Drucker."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:15504
#: doc/guix.texi:15505
#, no-wrap
msgid "Desktop Services"
msgstr "Desktop-Dienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "D-Bus and desktop services."
msgstr "D-Bus- und Desktop-Dienste."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:15956
#: doc/guix.texi:15957
#, no-wrap
msgid "Sound Services"
msgstr "Tondienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "ALSA and Pulseaudio services."
msgstr "Dienste für ALSA und Pulseaudio."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:16089
#: doc/guix.texi:16090
#, no-wrap
msgid "Database Services"
msgstr "Datenbankdienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "SQL databases, key-value stores, etc."
msgstr "SQL-Datenbanken, Schlüssel-Wert-Speicher etc."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:16249
#: doc/guix.texi:16250
#, no-wrap
msgid "Mail Services"
msgstr "Mail-Dienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "IMAP, POP3, SMTP, and all that."
msgstr "IMAP, POP3, SMTP und so weiter."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:18041
#: doc/guix.texi:18042
#, no-wrap
msgid "Messaging Services"
msgstr "Kurznachrichtendienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Messaging services."
msgstr "Dienste für Kurznachrichten."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:18543
#: doc/guix.texi:18544
#, no-wrap
msgid "Telephony Services"
msgstr "Telefondienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Telephony services."
msgstr "Telefoniedienste."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:18748
#: doc/guix.texi:18749
#, no-wrap
msgid "Monitoring Services"
msgstr "Systemüberwachungsdienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Monitoring services."
msgstr "Dienste zur Systemüberwachung."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:19253
#: doc/guix.texi:19254
#, no-wrap
msgid "Kerberos Services"
msgstr "Kerberos-Dienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Kerberos services."
msgstr "Kerberos-Dienste."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:19857
#: doc/guix.texi:19858
#, no-wrap
msgid "Web Services"
msgstr "Web-Dienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Web servers."
msgstr "Web-Server."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:20855
#: doc/guix.texi:20856
#, no-wrap
msgid "Certificate Services"
msgstr "Zertifikatsdienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "TLS certificates via Let's Encrypt."
msgstr "TLS-Zertifikate via Let’s Encrypt."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:21023
#: doc/guix.texi:21024
#, no-wrap
msgid "DNS Services"
msgstr "DNS-Dienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "DNS daemons."
msgstr "DNS-Daemons."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:21697
#: doc/guix.texi:21698
#, no-wrap
msgid "VPN Services"
msgstr "VPN-Dienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "VPN daemons."
msgstr "VPN-Daemons."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:22055
#: doc/guix.texi:22056
#, no-wrap
msgid "Network File System"
msgstr "Network File System"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "NFS related services."
msgstr "Dienste mit Bezug zum Netzwerkdateisystem."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:22245
#: doc/guix.texi:22246
#, no-wrap
msgid "Continuous Integration"
msgstr "Kontinuierliche Integration"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "The Cuirass service."
msgstr "Der Cuirass-Dienst."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:22365
#: doc/guix.texi:22366
#, no-wrap
msgid "Power Management Services"
msgstr "Dienste zur Stromverbrauchsverwaltung"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Extending battery life."
msgstr "Den Akku schonen."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:22899
#: doc/guix.texi:22900
#, no-wrap
msgid "Audio Services"
msgstr "Audio-Dienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "The MPD."
msgstr "Der MPD."
#. type: node
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:23018
#, no-wrap
msgid "Virtualization Services"
msgstr "Virtualisierungsdienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Virtualization services."
msgstr "Dienste für virtuelle Maschinen."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:23811
#: doc/guix.texi:23812
#, no-wrap
msgid "Version Control Services"
msgstr "Versionskontrolldienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Providing remote access to Git repositories."
msgstr "Entfernten Zugang zu Git-Repositorys bieten."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:24999
#: doc/guix.texi:25000
#, no-wrap
msgid "Game Services"
msgstr "Spieldienste"
#. type: menuentry
#: doc/guix.texi:316 doc/guix.texi:12119
msgid "Game servers."
msgstr "Spielserver."
#. type: subsection
#: doc/guix.texi:316 doc/guix.texi:12119 doc/guix.texi:25031
#: doc/guix.texi:25032
#, no-wrap
msgid "PAM Mount Service"
msgstr "PAM-Einbindedienst"
#. type: menuentry