debconf 1.5.84 - en to de translation catalogue (543 entries)

note: type: textblock
en: debconf - run a debconf-using program
de: debconf - führe ein Debconf-verwendendes Programm aus

note: type: SH
en: SYNOPSIS
de: ÜBERSICHT

note: type: verbatim
en:  debconf [options] command [args]
de:  debconf [Optionen] Befehl [Argumente]

note: type: SH
en: DESCRIPTION
de: BESCHREIBUNG

note: type: textblock
en: Debconf is a configuration system for Debian packages. For a debconf overview and documentation for sysadmins, see L<debconf(7)> (in the debconf-doc package).
de: Debconf ist ein Konfigurationssystem für Debian-Pakete. Lesen Sie L<debconf(7)> (im Paket debconf-doc) für einen Überblick und die Dokumentation von Debconf für Systemadministratoren.

note: type: textblock
en: The B<debconf> program runs a program under debconf's control, setting it up to talk with debconf on stdio. The program's output is expected to be debconf protocol commands, and it is expected to read result codes on stdin. See L<debconf-devel(7)> for details about the debconf protocol.
de: Das Programm B<debconf> führt ein Programm unter der Steuerung von Debconf aus und richtet es so ein, dass es via Stdio mit Debconf kommuniziert. Als Ausgabe des Programms werden Debconf-Protokoll-Befehle erwartet und es wird erwartet, dass es Codes via Stdin liest. Lesen Sie L<debconf-devel(7)> für Details über das Debconf-Protokoll.

note: type: textblock
en: The command to be run under debconf must be specified in a way that will let your PATH find it.
de: Der Befehl, der von Debconf ausgeführt werden soll, muss so angegeben werden, dass er in Ihrem PATH gefunden werden kann.

note: type: textblock
en: This command is not the usual way that debconf is used. It's more typical for debconf to be used via L<dpkg-preconfigure(8)> or L<dpkg-reconfigure(8)>.
de: Dieser Befehl ist nicht die normale Art, Debconf zu verwenden. Für Debconf ist die Verwendung via L<dpkg-preconfigure(8)> oder L<dpkg-reconfigure(8)> typischer.

note: type: =head1
en: OPTIONS
de: OPTIONEN

note: type: =item
en: B<-o>I<package>, B<--owner=>I<package>
de: B<-o>I<Paket>, B<--owner=>I<Paket>

note: type: textblock
en: Tell debconf what package the command it is running is a part of. This is necessary to get ownership of registered questions right, and to support unregister and purge commands properly.
de: Teilt Debconf mit, zu welchem Paket der von Debconf ausgeführte Befehl gehört. Dies ist notwendig, um den Eigentümer von registrierten Fragen korrekt zu bestimmen und um die Befehle »unregister« und »purge« vernünftig zu unterstützen.

note: type: =item
en: B<-f>I<type>, B<--frontend=>I<type>
de: B<-f>I<Typ>, B<--frontend=>I<Typ>

note: type: textblock
en: Select the frontend to use.
de: Wählt die zu verwendende Benutzerschnittstelle aus.

note: type: =item
en: B<-p>I<value>, B<--priority=>I<value>
de: B<-p>I<Wert>, B<--priority=>I<Wert>

note: type: textblock
en: Specify the minimum priority of question that will be displayed.
de: Spezifiziert die minimale Priorität der Fragen, die angezeigt werden.

note: type: textblock
en: Enables terse output mode. This affects only some frontends.
de: Aktiviert knappen Ausgabemodus. Dies betrifft nur einige Oberflächen.

note: type: =head1
en: EXAMPLES
de: BEISPIELE

note: type: textblock
en: To debug a shell script that uses debconf, you might use:
de: Um Fehler in einem Shell-Skript, das Debconf verwendet, zu finden, könnten Sie Folgendes verwenden:

note: type: verbatim
en:  DEBCONF_DEBUG=developer debconf my-shell-prog
de:  DEBCONF_DEBUG=developer debconf mein-Shell-Programm

note: type: textblock
en: Or, you might use this:
de: Sie könnten auch das Folgende verwenden:

note: type: verbatim
en:  debconf --frontend=readline sh -x my-shell-prog
de:  debconf --frontend=readline sh -x mein-Shell-Programm

note: type: SH
en: SEE ALSO
de: SIEHE AUCH

note: type: SH
en: AUTHOR
de: AUTOR

note: type: textblock
en: Debconf::Client::ConfModule - client module for ConfModules
de: Debconf::Client::ConfModule - Client-Modul für ConfModules

note: type: verbatim
en:  use Debconf::Client::ConfModule ':all';
     version('2.0');
     my $capb=capb('backup');
     input("medium", "foo/bar");
     my @ret=go();
     if ($ret[0] == 30) {
     	# Back button pressed.
     	...
     }
     ...
de:  use Debconf::Client::ConfModule ':all';
     version('2.0');
     my $capb=capb('backup');
     input("medium", "foo/bar");
     my @ret=go();
     if ($ret[0] == 30) {
     	# Zurück-Knopf gedrückt.
     	...
     }
     ...

note: type: textblock
en: This is a module to ease writing ConfModules for Debian's configuration management system. It can communicate with a FrontEnd via the debconf protocol (which is documented in full in the debconf_specification in Debian policy).
de: Dies ist ein Modul, um das Schreiben von ConfModules für Debians Konfigurationsverwaltungsystem zu erleichtern. Es kann mit einer Benutzerschnittstelle über das Debconf-Protokoll (das komplett in der Debconf-Spezifikation in den Debian-Richtlinien beschrieben ist) kommunizieren.

note: type: textblock
en: The design is that each command in the protocol is represented by one function in this module (with the name lower-cased).  Call the function and pass in any parameters you want to follow the command. If the function is called in scalar context, it will return any textual return code. If it is called in list context, an array consisting of the numeric return code and the textual return code will be returned.
de: Vom Design her ist jeder Befehl im Protokoll durch eine Funktion in diesem Modul repräsentiert (wobei der Name in Kleinbuchstaben umgewandelt ist). Rufen Sie die Funktion auf und übergeben Sie die gewünschten Parameter, die dem Befehl folgen sollen. Falls die Funktion im skalaren Kontext aufgerufen wird, gibt sie einen Rückgabecode in Textform zurück. Falls Sie im Listen-Kontext aufgerufen wird, wird ein Feld bestehend aus dem numerischen Rückgabecode und dem Rückgabecode in Textform zurückgegeben.

note: type: textblock
en: This module uses Exporter to export all functions it defines. To import everything, simply import ":all".
de: Dieses Modul verwendet Exporter, um alle von ihr definierten Funktionen zu exportieren. Um alles zu importieren, importieren Sie einfach »:all«.

note: type: textblock
en: Ensure that a FrontEnd is running.  It's a little hackish. If DEBIAN_HAS_FRONTEND is set, a FrontEnd is assumed to be running.  If not, one is started up automatically and stdin and out are connected to it. Note that this function is always run when the module is loaded in the usual way.
de: Stellt sicher, dass eine Benutzerschnittstelle läuft. Es ist ein kleiner Hack. Falls DEBIAN_HAS_FRONTEND gesetzt ist, wird angenommen, dass die Benutzerschnittstelle läuft. Falls nicht, wird eine automatisch gestartet und Standardeingabe und -ausgabe werden damit verbunden. Beachten Sie, dass diese Funktion immer ausgeführt wird, wenn das Modul auf dem normalen Weg geladen wird.

note: type: textblock
en: The frontend doesn't send a return code here, so we cannot try to read it or we'll block.
de: Die Benutzerschnittstelle sendet hier keinen Rückgabecode, daher können wir nicht versuchen, ihn zu lesen oder wir blockieren.

note: type: textblock
en: Creates handler functions for commands on the fly.
de: Erstellt Steuer-Funktionen für Befehle in situ.

note: type: textblock
en: The debconf specification (/usr/share/doc/debian-policy/debconf_specification.txt.gz).
de: Die Debconf-Spezifikation (/usr/share/doc/debian-policy/debconf_specification.txt.gz).

note: type: textblock
en: debconf-apt-progress - install packages using debconf to display a progress bar
de: debconf-apt-progress - installiere Pakete mittels Debconf zur Anzeige eines Fortschrittsbalkens

note: type: verbatim
en:  debconf-apt-progress [--] command [args ...]
     debconf-apt-progress --config
     debconf-apt-progress --start
     debconf-apt-progress --from waypoint --to waypoint [--] command [args ...]
     debconf-apt-progress --stop
de:  debconf-apt-progress [--] Befehl [Argumente ...]
     debconf-apt-progress --config
     debconf-apt-progress --start
     debconf-apt-progress --from Wegpunkt --to Wegpunkt [--] Befehl [Argumente ...]
     debconf-apt-progress --stop

note: type: textblock
en: B<debconf-apt-progress> installs packages using debconf to display a progress bar. The given I<command> should be any command-line apt frontend; specifically, it must send progress information to the file descriptor selected by the C<APT::Status-Fd> configuration option, and must keep the file descriptors nominated by the C<APT::Keep-Fds> configuration option open when invoking debconf (directly or indirectly), as those file descriptors will be used for the debconf passthrough protocol.
de: B<debconf-apt-progress> installiert Pakete und verwendet Debconf, um einen Fortschrittsbalken anzuzeigen. Der übergebene I<Befehl> sollte eine der Befehlszeilenschnittstellen von APT sein; insbesondere muss er Fortschrittsinformationen an den durch die Konfigurationsoption C<APT::Status-Fd> ausgewählten Dateideskriptor senden und muss den durch die Konfigurationsoption C<APT::Keep-Fds> bestimmten Dateideskriptor beim Aufruf von Debconf (direkt oder indirekt) offen lassen, da diese Deskriptoren für das Debconf-Weiterleitungsprotokoll benutzt werden.

note: type: textblock
en: The arguments to the command you supply should generally include B<-y> (for B<apt-get> or B<aptitude>) or similar to avoid the apt frontend prompting for input. B<debconf-apt-progress> cannot do this itself because the appropriate argument may differ between apt frontends.
de: Die Argumente zum Befehl sollten im allgemeinen B<-y> (für B<apt-get> oder B<aptitude>) oder ähnliches enthalten, um die APT-Benutzerschnittstelle daran zu hindern, um Eingaben zu bitten. B<debconf-apt-progress> kann dies nicht selbst erledigen, da das korrekte Argument bei verschiedenen APT-Benutzerschnittstellen verschieden sein kann.

note: type: textblock
en: The B<--start>, B<--stop>, B<--from>, and B<--to> options may be used to create a progress bar with multiple segments for different stages of installation, provided that the caller is a debconf confmodule. The caller may also interact with the progress bar itself using the debconf protocol if it so desires.
de: Die Optionen B<--start>, B<--stop>, B<--from> und B<--to> können zum Erstellen eines Fortschrittsbalkens mit mehreren Segmenten für verschiedene Stufen der Installation verwandt werden, vorausgesetzt dass der Aufrufende ein Debconf-Confmodule ist. Der Aufrufende darf mit dem Debconf-Protokoll auch mit dem Fortschrittsbalken selbst interagieren, falls er dies wünscht.

note: type: textblock
en: debconf locks its config database when it starts up, which makes it unfortunately inconvenient to have one instance of debconf displaying the progress bar and another passing through questions from packages being installed. If you're using a multiple-segment progress bar, you'll need to eval the output of the B<--config> option before starting the debconf frontend to work around this. See L<the EXAMPLES section/EXAMPLES> below.
de: Debconf sperrt seine Konfigurationsdatenbank beim Starten, wodurch es unpraktisch wird, eine Instanz zur Darstellung des Fortschrittsbalkens und eine andere zur Weitergabe der Fragen von zu-installierenden Paketen zu verwenden. Falls Sie einen Fortschrittsbalken mit mehreren Segmenten verwenden, müssen Sie die Ausgabe der Option B<--config> vor dem Starten der Debconf-Benutzerschnittstelle auswerten, um dies zu umgehen. Lesen Sie L<den Abschnitt BEISPIELE/BEISPIELE> unten.

note: type: textblock
en: Print environment variables necessary to start up a progress bar frontend.
de: Gebe die notwendigen Variablen aus, um die Fortschrittsbalken-Schnittstelle zu starten.

note: type: textblock
en: Start up a progress bar, running from 0 to 100 by default. Use B<--from> and B<--to> to use other endpoints.
de: Beginne einen Fortschrittsbalken, standardmäßig von 0 bis 100. Verwenden Sie B<--from> und B<--to>, um andere Endpunkte zu benutzen.

note: type: =item
en: B<--from> I<waypoint>
de: B<--from> I<Wegpunkt>

note: type: textblock
en: If used with B<--start>, make the progress bar begin at I<waypoint> rather than 0.
de: Falls mit B<--start> benutzt, wird der Fortschrittsbalken bei I<Wegpunkt> statt bei 0 beginnen.

note: type: textblock
en: Otherwise, install packages with their progress bar beginning at this "waypoint". Must be used with B<--to>.
de: Andernfalls installiere Pakete mit ihrem Fortschrittsbalken beginnend an diesem »Wegpunkt«. Muss mit B<--to> verwendet werden.

note: type: =item
en: B<--to> I<waypoint>
de: B<--to> I<Wegpunkt>

note: type: textblock
en: If used with B<--start>, make the progress bar end at I<waypoint> rather than 100.
de: Falls mit B<--start> benutzt, wird der Fortschrittsbalken bei I<Wegpunkt> statt bei 100 enden.

note: type: textblock
en: Otherwise, install packages with their progress bar ending at this "waypoint". Must be used with B<--from>.
de: Andernfalls installiere Pakete mit ihrem Fortschrittsbalken an diesem »Wegpunkt« endend. Muss mit B<--from> verwendet werden.

note: type: textblock
en: Stop a running progress bar.
de: Stoppt einen laufenden Fortschrittsbalken.

note: type: textblock
en: Avoid starting, stopping, or stepping the progress bar. Progress messages from apt, media change events, and debconf questions will still be passed through to debconf.
de: Vermeide das Starten, Stoppen oder Fortschreiten des Fortschrittsbalkens. Fortschrittsnachrichten von APT, Meldungen über geänderte Medien und Fragen von Debconf werden noch an Debconf weitergegeben.

note: type: =item
en: B<--dlwaypoint> I<percentage>
de: B<--dlwaypoint> I<Prozent>

note: type: textblock
en: Specify what percent of the progress bar to use for downloading packages.  The remainder will be used for installing packages. The default is to use 15% for downloading and the remaining 85% for installing.
de: Legt fest, welchen Prozentanteil des Fortschrittsbalkens zum Herunterladen von Paketen verwandt wird. Der Rest wird zur Installation von Paketen verwandt. Standardmäßig werden 15% zum Herunterladen und die verbleibenden 85% für die Installation verwandt.

note: type: =item
en: B<--logfile> I<file>
de: B<--logfile> I<Datei>

note: type: textblock
en: Send the normal output from apt to the given file.
de: Schicke die normale Ausgabe von APT in die angegebene Datei.

note: type: textblock
en: Send the normal output from apt to stderr. If you supply neither B<--logfile> nor B<--logstderr>, the normal output from apt will be discarded.
de: Schicke die normale Ausgabe von APT nach Stderr. Falls Sie weder die Option B<--logfile> noch B<--logstderr> verwenden, wird die normale Ausgabe von APT verworfen.

note: type: textblock
en: Terminate options. Since you will normally need to give at least the B<-y> argument to the command being run, you will usually need to use B<--> to prevent that being interpreted as an option to B<debconf-apt-progress> itself.
de: Beende Optionen. Da Sie normalerweise mindestens das Argument B<-y> an den ausgeführten Befehl übergeben müssen, werden Sie gewöhnlich B<--> verwenden müssen, um dessen Interpretation als Option für B<debconf-apt-progress> selbst zu verhindern.

note: type: textblock
en: Install the GNOME desktop and an X window system development environment within a progress bar:
de: Installiere den GNOME-Desktop und eine X-Window-System-Entwicklungsumgebung mit einem Fortschrittsbalken:

note: type: textblock
en: Install the GNOME, KDE, and XFCE desktops within a single progress bar, allocating 45% of the progress bar for each of GNOME and KDE and the remaining 10% for XFCE:
de: Installiere die GNOME-, KDE- und XFCE-Desktops innerhalb eines einzigen Fortschrittsbalkens, wobei 45% des Fortschrittsbalkens jeweils für GNOME und KDE zugeordnet werden und die verbliebenen 10% für XFCE:

note: type: =head1
en: RETURN CODE
de: RÜCKGABEWERT

note: type: textblock
en: The exit code of the specified command is returned, unless the user hit the cancel button on the progress bar. If the cancel button was hit, a value of 30 is returned. To avoid ambiguity, if the command returned 30, a value of 3 will be returned.
de: Der Exit-Code des angegebenen Befehls wird zurückgegeben, falls der Benutzer nicht den Knopf »Abbrechen« beim Fortschrittsbalken gedrückt hat. Falls dieser Knopf gedrückt wurde, wird der Wert 30 zurückgegeben. Um Mehrdeutigkeiten zu vermeiden, wird ein Wert von 3 zurückgegeben, falls der Befehl 30 zurücklieferte.

note: type: =head1
en: AUTHORS
de: AUTOREN

note: type: textblock
en: debconf-escape - helper when working with debconf's escape capability
de: debconf-escape - Helfer beim Arbeiten mit Debconfs Schutz-Fähigkeit

note: type: verbatim
en:  debconf-escape -e < unescaped-text
     debconf-escape -u < escaped-text
de:  debconf-escape -e < nicht-geschützter-text
     debconf-escape -u < geschützter-text

note: type: textblock
en: When debconf has the 'escape' capability set, it will expect commands you send it to have backslashes and newlines escaped (as C<\\> and C<\n> respectively) and will in turn escape backslashes and newlines in its replies. This can be used, for example, to substitute multi-line strings into templates, or to get multi-line extended descriptions reliably using C<METAGET>.
de: Wenn bei Debconf die Fähigkeit »escape« gesetzt ist, erwartet es, dass in den ihm gesandten Befehlen Rückwärtsschrägstriche und Zeilenumbrüche geschützt sind (als C<\\> und C<\n>, respektive) und schützt im Gegenzug Rückwärtsschrägstriche und Zeilenumbrüche in seinen Antworten. Dies kann zum Beispiel benutzt werden, um mehrzeilige Zeichenketten in Vorlagen zu transformieren, oder um mehrzeilige erweiterte Beschreibungen verlässlich durch die Benutzung von C<METAGET> zu erhalten.

note: type: textblock
en: L<debconf-devel(7)> (available in the debconf-doc package)
de: L<debconf-devel(7)> (verfügbar im Paket debconf-doc)

note: type: textblock
en: debconf-communicate - communicate with debconf
de: debconf-communicate - kommuniziere mit Debconf

note: type: verbatim
en:  echo commands | debconf-communicate [options] [package]
de:  echo Befehle | debconf-communicate [Optionen] [Paket]

note: type: textblock
en: B<debconf-communicate> allows you to communicate with debconf on the fly, from the command line. The package argument is the name of the package which you are pretending to be as you communicate with debconf, and it may be omitted if you are lazy. It reads commands in the form used by the debconf protocol from stdin. For documentation on the available commands and their usage, see the debconf specification.
de: B<debconf-communicate> erlaubt Ihnen, mit Debconf im Vorbeigehen zu kommunizieren, von der Befehlszeile. Das Argument I<Paket> ist der Name des Pakets, welches Sie vorgeben zu sein, während Sie mit Debconf kommunizieren, und es darf weggelassen werden, falls Sie zu faul sind. Es liest Befehle in der vom Debconf-Protokoll verwendeten Form von der Standardeingabe. Für die Dokumentation der verfügbaren Befehle und ihren Gebrauch lesen Sie die Debconf-Spezifikation.

note: type: textblock
en: The commands are executed in sequence. The textual return code of each is printed out to standard output.
de: Die Befehle werden sequenziell ausgeführt. Der wörtliche Rückgabewert eines jeden wird auf die Standardausgabe ausgegeben.

note: type: textblock
en: The return value of this program is the numeric return code of the last executed command.
de: Der Rückgabewert dieses Programms ist der nummerische Rückgabewert des letzten ausgeführten Befehls.

note: type: SH
en: EXAMPLE
de: BEISPIEL

note: type: textblock
en: Print out the value of the debconf/frontend question.
de: Gibt den Wert der Frage debconf/frontend aus.

note: type: =head1
en: WARNING
de: WARNUNG

note: type: textblock
en: This program should never be used from a maintainer script of a package that uses debconf! It may however, be useful in debugging.
de: Dieses Programm sollte niemals von einem Betreuerskript eines Pakets verwendet werden, das Debconf verwendet! Es kann allerdings bei der Fehlersuche nützlich sein.

note: type: textblock
en: debconf-copydb - copy a debconf database
de: debconf-copydb - kopiere eine Debconf-Datenbank

note: type: verbatim
en:  debconf-copydb sourcedb destdb [--pattern=pattern] [--owner-pattern=pattern] [--config=Foo:bar]
de:  debconf-copydb QuellDB ZielDB [--pattern=Muster] [--owner-pattern=Muster] [--config=Foo:bar]

note: type: textblock
en: B<debconf-copydb> copies items from an existing debconf database into another, possibly new database. The two databases may have different formats; if so a conversion will automatically be done.
de: B<debconf-copydb> kopiert Einträge aus einer existierenden Debconf-Datenbank in eine andere, möglicherweise neue Datenbank. Die zwei Datenbanken dürfen verschiedene Formate haben, in diesem Falle wird automatisch eine Konvertierung durchgeführt.

note: type: =item
en: I<sourcedb>
de: I<QuellDB>

note: type: textblock
en: The name of the source database. Typically it will be defined in your debconf.conf (or .debconfrc) file.
de: Der Name der Quelldatenbank. Wird typischerweise in Ihrer debconf.conf- (oder .debconfrc-)Datei definiert.

note: type: =item
en: I<destdb>
de: I<ZielDB>

note: type: textblock
en: The name of the destination database. It may be defined in debconf.conf or .debconfrc, or you might define it on the command line (see below).
de: Der Name der Zieldatenbank. Sie kann in Ihrer debconf.conf oder .debconfrc definiert sein, oder Sie könnten sie auf der Kommandozeile definieren (siehe unten).

note: type: =item
en: B<-p> I<pattern>, B<--pattern> I<pattern>
de: B<-p> I<Muster>, B<--pattern> I<Muster>

note: type: textblock
en: If this is specified, only items in I<sourcedb> whose names match the pattern will be copied.
de: Falls dies angegeben ist, werden nur Einträge aus I<QuellDB> kopiert, deren Namen auf Muster passen.

note: type: =item
en: B<--owner-pattern> I<pattern>
de: B<--owner-pattern> I<Muster>

note: type: textblock
en: If this is specified, only items in I<sourcedb> whose owners match the pattern will be copied.
de: Falls dies angegeben ist, werden nur Einträge aus I<QuellDB> kopiert, deren Eigentümer auf Muster passen.

note: type: textblock
en: Set option Foo to bar. This is similar to writing:
de: Setze Option Foo auf bar. Dies ist ähnlich zu Folgendem:

note: type: textblock
en: In debconf.conf, except you probably want to leave off the space on the command line (or quote it: "Foo: bar"). Generally must be used multiple times, to build up a full configuration stanza. While blank lines are used to separate stanzas in debconf.conf, this program will assume that "Name:dbname" denotes the beginning of a new stanza.
de: in debconf.conf, außer dass Sie möglicherweise das Leerzeichen auf der Befehlszeile auslassen (oder zitieren: "Foo: bar"). Muss generell mehrere Male benutzt werden, um einen vollen Konfigurations-Abschnitt zu formen. Während in der debconf.conf Leerzeilen benutzt werden, um Abschnitte zu trennen, nimmt dieses Programm an, dass »Name:dbname« den Beginn eines neuen Abschnittes anzeigt.

note: type: textblock
en: Copy all of configdb to backup, assuming you already have the backup database defined in debconf.conf.
de: Kopiere alles aus configdb nach backup, unter der Annahme, dass Sie die Datenbank backup bereits in der debconf.conf definiert haben.

note: type: textblock
en: Copy slrn's data out of configdb, and into newdb. newdb is not defined in the rc file, so the --config switches set up the database on the fly.
de: Kopiere slrn-bezogene Daten aus configdb nach newdb. newdb ist nicht in der rc-Datei definiert, so dass mit den Schaltern --config die Datenbank im Vorbeigehen aufgesetzt wird.

note: type: textblock
en: Spit out all the items in the debconf database related to package foo.
de: Gebe alle Einträge in der Debconf-Datenbank mit Bezug zum Paket foo aus.

note: type: textblock
en: This uses the special purpose pipe driver to copy a database to a remote system.
de: Dies benutzt den Pipe-Treiber für besondere Anlässe, um eine Datenbank auf ein anderes System zu kopieren.

note: type: textblock
en: debconf-getlang - extract a language from a templates file
de: debconf-getlang - extrahiere eine Sprache aus einer Vorlagendatei

note: type: verbatim
en:  debconf-getlang lang master [translation]
     debconf-getlang --stats master translation [...]
de:  debconf-getlang Sprache Hauptdatei [Übersetzung]
     debconf-getlang --stats Hauptdatei Übersetzung [...]

note: type: textblock
en: Note: This utility is deprecated; you should switch to using the po-debconf package.
de: Hinweis: Dieses Hilfswerkzeug ist veraltet. Sie sollten auf das Paket po-debconf umstellen.

note: type: textblock
en: This program helps make and manage translations of debconf templates.  There are basically three situations in which this program might be called:
de: Dieses Programm hilft beim Erstellen und Verwalten von Übersetzungen von Debconf-Vorlagen. Es gibt im Prinzip drei Situationen, in denen dieses Programm aufgerufen werden könnte:

note: type: =item
en: A translation is just being started.
de: Eine Übersetzung wird gerade begonnen.

note: type: textblock
en: You want to provide the translator with a file they can work on that has the English fields from your templates file, plus blank Field-ll fields for the target language that they can fill in.
de: Sie wollen die Übersetzerin mit einer Datei versorgen, mit der sie arbeiten kann, welche die englischen Felder aus Ihrer Vorlagen-Datei und leere Field-ll-Felder für die Zielsprache, die sie füllen kann, hat.

note: type: textblock
en: To do this, run the program with first parameter being the code for the language that is being translated to, and the second parameter being the filename of the English templates file.
de: Um dies zu tun, starten Sie das Programm mit dem Code für die Sprache, in die übersetzt wird, als erstem Parameter, und dem Dateinamen der englischen Vorlagen-Datei als zweitem Parameter.

note: type: =item
en: A translation is well under way.
de: Eine Übersetzung ist mitten in Arbeit.

note: type: textblock
en: You have changed some English text, or added more items to your templates file, and you want to send the translators a file with the English text plus their current translations (or you are the translator, and you want to generate such a file for your own use).
de: Sie haben etwas vom englischen Text geändert, oder Ihrer Vorlagen-Datei neue Elemente hinzugefügt, und Sie wollen der Übersetzerin eine Datei mit dem englischen Text und ihrer aktuellen Übersetzung zukommen lassen (oder Sie sind die Übersetzerin, und wollen solch eine Datei zu Ihrem eigenen Gebrauch generieren).

note: type: textblock
en: To accomplish this, run the program with the first parameter being the the code for the language that is being translated to, the second parameter being the filename of the master English templates file, and the third parameter being the filename of the current translated file.
de: Um dies zu vollbringen, führen Sie das Programm mit dem Code für die Sprache, in die übersetzt wird, als erstem Parameter, dem Dateinamen der englischen Vorlagen-Datei, dem »Master«, als zweitem Parameter, und dem Dateinamen der aktuellen übersetzten Datei als drittem Parameter aus.

note: type: textblock
en: When run this way, the program is smart enough to notice fuzzy translations. For example a fuzzy Description will be output as Description-<lang>-fuzzy, and a new, blank Description-<lang> will be added.  Translators should remove the -fuzzy fields as they correct the fuzzy translations.
de: Wenn es auf diese Weise gestartet wird, ist das Programm klever genug, unscharfe Übersetzungen zu bemerken. Zum Beispiel wird eine unscharfe Beschreibung als »Description-<sprache>-fuzzy« ausgegeben, und ein neues, leeres »Description-<sprache>« wird hinzugefügt. Die Übersetzerin sollte die Felder auf »-fuzzy« entfernen, während sie die unscharfen Übersetzungen korrigiert.

note: type: =item
en: Checking the status of a translation
de: Überprüfe den Status einer Übersetzung

note: type: textblock
en: To check the status of a translation, use the --status flag, and pass the english template file as the first parameter, and all the other translated templates after that. It will output statistics for each of them. For example:
de: Benutzen Sie, um den Status einer Übersetzung zu überprüfen, den Schalter »--status«, und übergeben Sie die englische Vorlagen-Datei als den ersten Parameter, und die anderen übersetzten Vorlagen danach. Für jede von ihnen werden Statistiken ausgegeben. Zum Beispiel:

note: type: =head1
en: NOTE
de: ANMERKUNG

note: type: textblock
en: Note that the text in the generated templates may be word-wrapped by debconf.
de: Beachten Sie, dass der Text in den generierten Vorlagen von Debconf wortweise umgebrochen werden darf.

note: type: textblock
en: debconf-get-selections - output contents of debconf database
de: debconf-get-selections - gibt den Inhalt der Debconf-Datenbank aus

note: type: textblock
en: Output the current debconf database in a format understandable by debconf-set-selections.
de: Gibt die aktuelle Debconf-Datenbank in einem Format aus, das von debconf-set-selections verstanden werden kann.

note: type: textblock
en: To dump the debconf database of the debian-installer, from /var/log/installer/cdebconf, use the --installer parameter.
de: Um die Debconf-Datenbank des Debian-Installer, aus /var/log/installer/cdebconf, auszugeben, benutzen Sie den Parameter »--installer«

note: type: textblock
en: debconf-loadtemplate - load template file into debconf database
de: debconf-loadtemplate - lade eine Vorlagen-Datei in die Debconf-Datenbank

note: type: verbatim
en:  debconf-loadtemplate owner file [file ..]
de:  debconf-loadtemplate Eigentümer Datei [Datei ..]

note: type: textblock
en: Loads one or more template files into the debconf database. The first parameter specifies the owner of the templates (typically, the owner is the name of a debian package). The remaining parameters are template files to load.
de: Lädt eine oder mehrere Vorlagen-Dateien in die Debconf-Datenbank. Der erste Parameter spezifiziert den Eigentümer der Vorlagen (typischerweise ist der Eigentümer der Name eines Debian-Pakets). Die verbleibenden Parameter sind die zu ladenden Vorlagen-Dateien.

note: type: textblock
en: This program should never be used from a maintainer script of a package that uses debconf! It may however, be useful in debugging, or to seed the debconf database.
de: Dieses Programm sollte nie aus einem Betreuer-Skript eines Debconf-benutzenden Paketes benutzt werden! Dennoch mag es bei der Fehlersuche oder beim Vorladen der Debconf-Datenbank nützlich sein.

note: type: textblock
en: debconf-mergetemplate - merge together multiple debconf template files
de: debconf-mergetemplate - füge mehrere Debconf-Vorlagen-Dateien zusammen

note: type: verbatim
en:  debconf-mergetemplate [options] [templates.ll ...] templates
de:  debconf-mergetemplate [Optionen] [Vorlagen.ll ...] Vorlagen

note: type: textblock
en: Note: This utility is deprecated. You should switch to using po-debconf's po2debconf program.
de: Hinweis: Dieses Hilfswerkzeug ist veraltet. Sie sollten auf die Verwendung des Programms po2debconf von Po-debconf umstellen.

note: type: textblock
en: This program is useful if you have multiple debconf templates files which you want to merge together into one big file. All the specified files will be read in, merged, and output to standard output.
de: Dieses Programm ist nützlich, falls Sie mehrere Debconf-Vorlage-Dateien haben, die Sie zu einer großen Datei zusammen fügen möchten. Alle angegebenen Dateien werden eingelesen, zusammengeführt und auf die Standardausgabe ausgegeben.

note: type: textblock
en: This can be especially useful if you are dealing with translated template files. In this case, you might have your main template file, plus several other files provided by the translators. These files will have translated fields in them, and maybe the translators left in the english versions of the fields they translated, for their reference.
de: Dies kann besonders nützlich sein, falls Sie mit übersetzten Vorlage-Dateien hantieren. In diesem Falle könnten Sie Ihre Haupt-Vorlage-Datei haben und mehrere andere Dateien, die Ihnen von den Übersetzerinnen zur Verfügung gestellt wurden. Diese Dateien enthalten übersetzte Felder und möglicherweise haben die Übersetzerinnen die englischen Versionen der Felder zu ihrer Referenz in den Dateien belassen.

note: type: textblock
en: So, you want to merge together all the translated templates files with your main templates file. Any fields that are unique to the translated files need to be added in to the correct templates, but any fields they have in common should be superseded by the fields in the main file (which might be more up-to-date).
de: Also wollen Sie alle übersetzten Vorlage-Dateien mit Ihrer Haupt-Vorlage-Datei zusammenfügen. Jegliche Felder, die in den übersetzten Dateien eindeutig sind, müssen zu den richtigen Vorlagen hinzugefügt werden, aber jegliche Felder, die sie gemeinsam haben, sollten durch die Felder in der Haupt-Datei ersetzt werden (welche aktueller sein könnte).

note: type: textblock
en: This program handles that case properly, just list each of the translated templates files, and then your main templates file last.
de: Dieses Programm behandelt diesen Fall korrekt. Führen Sie einfach jede der übersetzten Vorlagen-Dateien und dann als letzte Ihre Haupt-Vorlagen-Datei auf.

note: type: textblock
en: Merge in even outdated translations. The default is to drop them with a warning message.
de: Füge selbst veraltete Übersetzungen ein. Voreinstellung ist, sie mit einer Warnmeldung zu verwerfen.

note: type: textblock
en: If a translation has an entire template that is not in the master file (and thus is probably an old template), drop that entire template.
de: Falls eine Übersetzung eine vollständige Vorlage enthält, die nicht in der Master-Datei ist (und somit möglicherweise eine alte Vorlage ist), verwerfe die ganze Vorlage.

note: type: textblock
en: debconf-set-selections - insert new values into the debconf database
de: debconf-set-selections - füge neue Werte in die Debconf-Datenbank ein

note: type: verbatim
en:  debconf-set-selections file
     debconf-get-selections | ssh newhost debconf-set-selections
de:  debconf-set-selections Datei
     debconf-get-selections | ssh neuerhost debconf-set-selections

note: type: textblock
en: B<debconf-set-selections> can be used to pre-seed the debconf database with answers, or to change answers in the database. Each question will be marked as seen to prevent debconf from asking the question interactively.
de: B<debconf-set-selections> kann benutzt werden, um die Debconf-Datenbank mit Antworten vorzuladen, oder um Antworten in der Datenbank zu ändern. Jede Frage wird als gesehen markiert, um zu vermeiden, dass Debconf sie interaktiv stellt.

note: type: textblock
en: Reads from a file if a filename is given, otherwise from stdin.
de: Liest aus einer Datei, falls ein Dateiname angegeben ist, ansonsten von der Standardeingabe.

note: type: textblock
en: Only use this command to seed debconf values for packages that will be or are installed. Otherwise you can end up with values in the database for uninstalled packages that will not go away, or with worse problems involving shared values. It is recommended that this only be used to seed the database if the originating machine has an identical install.
de: Benutzen Sie diesen Befehl nur, um Debconf-Werte für Pakete, die installiert sind oder werden sollen, zu laden. Ansonsten kommen Sie dahin, dass Sie Werte für nicht-installierte Pakete haben, die nicht verschwinden, oder zu schlimmeren Problemen, die gemeinsam benutzte Werte betreffen. Es empfiehlt sich, dass dies nur zum Laden der Datenbank benutzt wird, falls die ursprüngliche Maschine eine identische Installation hat.

note: type: =head1
en: DATA FORMAT
de: DATENFORMAT

note: type: textblock
en: The data is a series of lines. Lines beginning with a # character are comments. Blank lines are ignored. All other lines set the value of one question, and should contain four values, each separated by one character of whitespace. The first value is the name of the package that owns the question. The second is the name of the question, the third value is the type of this question, and the fourth value (through the end of the line)  is the value to use for the answer of the question.
de: Die Daten sind eine Folge von Zeilen. Zeilen, die mit dem Zeichen »#« beginnen, sind Kommentare. Leerzeilen werden ignoriert. Alle anderen Zeilen setzen den Wert einer Frage, und sollten vier jeweils durch ein Leerzeichen getrennte Werte enthalten. Der erste Wert ist der Name des Pakets, dem die Frage gehört. Der zweite ist der Name der Frage, der dritte ist der Typ dieser Frage, und der vierte Wert (bis zum Zeilenende) ist der Wert, der als Antwort auf die Frage zu benutzen ist.

note: type: textblock
en: Alternatively, the third value can be "seen"; then the preseed line only controls whether the question is marked as seen in debconf's database. Note that preseeding a question's value defaults to marking that question as seen, so to override the default value without marking a question seen, you need two lines.
de: Alternativ kann der dritte Wert »seen« (gesehen) sein; dann kontrolliert die Vorladezeile nur, ob die Frage in Debconfs Datenbank als gesehen markiert wird. Beachten Sie, dass das Vorladen des Werts für eine Frage diese als gesehen markiert, also brauchen Sie, um den Vorgabewert einer Frage zu überschreiben, ohne diese Frage als gesehen zu markieren, zwei Zeilen.

note: type: textblock
en: Lines can be continued to the next line by ending them with a "\" character.
de: Zeilenfortsetzung kann benutzt werden, indem man die erste Zeile mit einem Rückwärtsschrägstrich (\) enden lässt.

note: type: verbatim
en:  # Force debconf priority to critical.
     debconf debconf/priority select critical
de:  # Erzwinge Debconf-Priority kritisch.
     debconf debconf/priority select critical

note: type: verbatim
en:  # Override default frontend to readline, but allow user to select.
     debconf debconf/frontend select readline
     debconf debconf/frontend seen false
de:  # Ändere Vorgabe für Benutzerschnittstelle auf Readline, aber erlaube Benutzer auszuwählen
     debconf debconf/frontend select readline
     debconf debconf/frontend seen false

note: type: textblock
en: verbose output
de: wortreiche Ausgabe

note: type: textblock
en: only check the input file format, do not save changes to database
de: Prüfe nur das Format der Eingabedatei, schreibe keine Änderungen in die Datenbank.

note: type: textblock
en: L<debconf-get-selections(1)> (available in the debconf-utils package)
de: L<debconf-get-selections(1)> (verfügbar im Paket debconf-utils)

note: type: textblock
en: debconf-show - query the debconf database
de: debconf-show - frage die Debconf-Datenbank ab

note: type: verbatim
en:  debconf-show packagename [...] [--db=dbname]
     debconf-show --listowners [--db=dbname]
     debconf-show --listdbs
de:  debconf-show paketname [...] [--db=dbname]
     debconf-show --listowners [--db=dbname]
     debconf-show --listdbs

note: type: textblock
en: B<debconf-show> lets you query the debconf database in different ways.
de: B<debconf-show> lässt Sie die Debconf-Datenbank auf verschiedene Arten abfragen.

note: type: textblock
en: The most common use is "debconf-show packagename", which displays all items in the debconf database owned by a given package, and their current values.  Questions that have been asked already are prefixed with an '*'.
de: Der gewöhnlichste Aufruf ist »debconf-show Paketname«, welcher alle vom angegebenen Paket besessenen Elemente in der Debconf-Datenbank und ihre aktuellen Werte anzeigt. Bereits gestellten Fragen wird ein »*« vorangestellt.

note: type: textblock
en: This can be useful as a debugging aid, and especially handy in bug reports involving a package's use of debconf.
de: Dies kann als Hilfe zur Fehlersuche nützlich sein, und besonders bei Fehlerberichten, die die Nutzung von Debconf durch ein Paket betreffen.

note: type: textblock
en: Specify the database to query. By default, debconf-show queries the main database.
de: Gibt an, welche Datenbank abgefragt wird. Als Voreinstellung fragt B<debconf-show> die Haupt-Datenbank (main) ab.

note: type: textblock
en: Lists all owners of questions in the database. Generally an owner is equivalent to a debian package name.
de: Listet alle Eigentümer von Fragen in der Datenbank. Generell ist ein Eigentümer äquivalent zu einem Namen eines Debian-Paketes.

note: type: textblock
en: Lists all available databases.
de: Listet alle verfügbaren Datenbanken.

note: type: textblock
en: Joey Hess <joeyh@debian.org> and Sylvain Ferriol
de: Joey Hess <joeyh@debian.org> und Sylvain Ferriol

note: type: textblock
en: dpkg-preconfigure - let packages ask questions prior to their installation
de: dpkg-preconfigure - lässt Pakete vor ihrer Installation Fragen stellen

note: type: verbatim
en:  dpkg-preconfigure [options] package.deb
de:  dpkg-preconfigure [optionen] paket.deb

note: type: textblock
en: B<dpkg-preconfigure> lets packages ask questions before they are installed.  It operates on a set of debian packages, and all packages that use debconf will have their config script run so they can examine the system and ask questions.
de: B<dpkg-preconfigure> lässt Pakete Fragen stellen, bevor sie installiert werden. Es arbeitet auf einem Satz von Debian-Paketen, und von allen Paketen, die Debconf benutzen, wird das Skript »config« ausgeführt, so dass sie das System examinieren und Fragen stellen können.

note: type: textblock
en: Set the lowest priority of questions you are interested in. Any questions with a priority below the selected priority will be ignored and their default answers will be used.
de: Setzt Sie die niedrigste Frage-Priorität, an der Sie interessiert sind. Jegliche Fragen mit einer Priorität unterhalb der gewählten Priorität werden ignoriert und deren Vorgabewerte werden benutzt.

note: type: textblock
en: Run in apt mode. It will expect to read a set of package filenames from stdin, rather than getting them as parameters. Typically this is used to make apt run dpkg-preconfigure on all packages before they are installed.  To do this, add something like this to /etc/apt/apt.conf:
de: Arbeite im APT-Modus. Dieser erwartet eine Folge von Dateinamen von Paketen auf der Standardeingabe, statt sie als Parameter übergeben zu bekommen. Typischerweise wird dies benutzt, um APT B<dpkg-preconfigure> für alle Pakete laufen zu lassen, bevor sie installiert werden. Um dies zu tun, fügen Sie etwas wie das Folgende in die /etc/apt/apt.conf ein:

note: type: verbatim
en:  // Pre-configure all packages before
     // they are installed.
     DPkg::Pre-Install-Pkgs {
     	"dpkg-preconfigure --apt --priority=low";
     };
de:  // Vor-Konfigurieren aller Pakete bevor
     // sie installiert werden.
     DPkg::Pre-Install-Pkgs {
     	"dpkg-preconfigure --apt --priority=low";
     };

note: type: textblock
en: Display usage help.
de: Zeige Hilfe zur Benutzung an.

note: type: textblock
en: dpkg-reconfigure - reconfigure an already installed package
de: dpkg-reconfigure - rekonfiguriere ein bereits installiertes Paket

note: type: verbatim
en:  dpkg-reconfigure [options] packages
de:  dpkg-reconfigure [Optionen] Pakete

note: type: textblock
en: B<dpkg-reconfigure> reconfigures packages after they have already been installed. Pass it the names of a package or packages to reconfigure. It will ask configuration questions, much like when the package was first installed.
de: B<dpkg-reconfigure> konfiguriert Pakete erneut, nachdem sie bereits installiert wurden. Übergeben Sie ihm den oder die Namen des oder der Pakete, die erneut konfiguriert werden sollen. Es stellt dann Konfigurationsfragen, so ähnlich wie bei der Installation des Pakets.

note: type: textblock
en: If you just want to see the current configuration of a package, see L<debconf-show(1)> instead.
de: Falls Sie nur die aktuelle Konfiguration eines Paketes anschauen wollen, lesen Sie stattdessen L<debconf-show(1)>.

note: type: textblock
en: Select the frontend to use. The default frontend can be permanently changed by:
de: Wählt die zu benutzende Benutzerschnittstelle. Die standardmäßige Schnittstelle kann durch das Folgende dauerhaft geändert werden:

note: type: textblock
en: Note that if you normally have debconf set to use the noninteractive frontend, dpkg-reconfigure will use the dialog frontend instead, so you actually get to reconfigure the package.
de: Beachten Sie, dass, falls Sie normalerweise Debconf die nicht-interaktive Schnittstelle benutzen lassen, B<dpkg-reconfigure> hier stattdessen die Benutzerschnittstelle Dialog benutzt, so dass Sie tatsächlich dazu kommen, das Paket erneut zu konfigurieren.

note: type: textblock
en: Specify the minimum priority of question that will be displayed.  dpkg-reconfigure normally shows low priority questions no matter what your default priority is. See L<debconf(7)> for a list.
de: Gibt die Schwell-Priorität für Fragen an, die angezeigt werden sollen. B<dpkg-reconfigure> zeigt normalerweise Fragen mit niedriger Priorität an, egal was Ihre voreingestellte Priorität ist. Siehe L<debconf(7)> für eine Liste.

note: type: textblock
en: Use whatever the default priority of question is, instead of forcing the priority to low.
de: Benutze was immer die voreingestellte Priorität für Fragen ist, statt die niedrige Priorität (low) zu erzwingen.

note: type: textblock
en: By default, all questions are shown, even if they have already been answered. If this parameter is set though, only questions that have not yet been seen will be asked.
de: Standardmäßig werden alle Fragen angezeigt, selbst wenn sie schon beantwortet wurden. Falls dieser Parameter aber gesetzt ist, werden nur die Fragen gestellt, die noch nicht gesehen wurden.

note: type: textblock
en: Force dpkg-reconfigure to reconfigure a package even if the package is in an inconsistent or broken state. Use with caution.
de: Zwinge B<dpkg-reconfigure> ein Paket erneut zu konfigurieren, selbst wenn es in einem inkonsistenten oder defekten Zustand ist. Mit Vorsicht zu benutzen.

note: type: textblock
en: Prevent dpkg-reconfigure from reloading templates. Use with caution; this will prevent dpkg-reconfigure from repairing broken templates databases.  However, it may be useful in constrained environments where rewriting the templates database is expensive.
de: Vermeidet, dass B<dpkg-reconfigure> Vorlagen erneut lädt. Mit Vorsicht zu benutzen; dies vermeidet, dass B<dpkg-reconfigure> defekte Vorlage-Datenbanken repariert. Es kann aber in eingeschränkten Umgebungen nützlich sein, wo das erneute Schreiben der Vorlage-Datenbank teuer ist.

note: type: Plain text
en: debconf.conf - debconf configuration file
de: debconf.conf - Konfigurations-Datei für Debconf

note: type: Plain text
en: Debconf is a configuration system for Debian packages. /etc/debconf.conf and ~/.debconfrc are configuration files debconf uses to determine which databases it should use. These databases are used for storing two types of information; dynamic config data the user enters into it, and static template data. Debconf offers a flexible, extensible database backend. New drivers can be created with a minimum of effort, and sets of drivers can be combined in various ways.
de: Debconf ist ein Konfigurationssystem für Debian-Pakete. /etc/debconf.conf und ~/.debconfrc sind Konfigurationsdateien, die Debconf benutzt, um herauszufinden, welche Datenbanken es benutzen soll. Diese Datenbanken werden für das Speichern von zwei Arten von Informationen benutzt; dynamische Konfigurationsdaten, die der Benutzer eingibt, und statische Vorlagendaten. Debconf bietet ein flexibles, erweiterbares Datenbanken-Backend. Neue Treiber können mit minimalem Aufwand erzeugt werden, und Treiber-Sätze können auf verschiedene Weise kombiniert werden.

note: type: Plain text
en:   # This is a sample config file that is
      # sufficient to use debconf.
      Config: configdb
      Templates: templatedb
de:   # Dies ist eine einfache Konfigurationsdatei,
      # die ausreichend ist, um Debconf zu benutzen
      Config: configdb
      Templates: templatedb

note: type: SH
en: FILE FORMAT
de: DATEIFORMAT

note: type: Plain text
en: The format of this file is a series of stanzas, each separated by at least one wholly blank line. Comment lines beginning with a "#" character are ignored.
de: Das Format dieser Datei ist eine Folge von Absätzen, jeweils getrennt durch mindestens eine vollständig leere Zeile. Kommentarzeilen, die mit dem Zeichen »#« beginnen, werden ignoriert.

note: type: Plain text
en: The first stanza of the file is special, is used to configure debconf as a whole. Two fields are required to be in this first stanza:
de: Der erste Absatz der Datei ist besonders, er wird benutzt, um Debconf im Ganzen zu konfigurieren. Zwei Felder sind in diesem ersten Absatz erforderlich:

note: type: Plain text
en: Specifies the name of the database from which to load config data.
de: Gibt den Namen der Datenbank an, aus der die Konfigurationsdaten geladen werden.

note: type: Plain text
en: Specifies the name of the database to use for the template cache.
de: Gibt den Namen der Datenbank an, die für das Zwischenspeichern von Vorlagen zu benutzen ist.

note: type: Plain text
en: Additional fields that can be used include:
de: Zusätzliche Felder, die benutzt werden können, schließen ein:

note: type: Plain text
en: The frontend Debconf should use, overriding any frontend set in the debconf database.
de: Die Benutzerschnittstelle, die Debconf benutzen soll, dies überstimmt jede Schnittstellen-Einstellung in der Debconf-Datenbank.

note: type: Plain text
en: The priority Debconf should use, overriding any priority set in the debconf database.
de: Die Priorität, die Debconf benutzen soll, dies überstimmt jede Prioritätseinstellung in der Debconf-Datenbank.

note: type: Plain text
en: The email address Debconf should send mail to if it needs to make sure that the admin has seen an important message. Defaults to "root", but can be set to any valid email address to send the mail there. If you prefer to never have debconf send you mail, specify a blank address. This can be overridden on the fly with the DEBCONF_ADMIN_EMAIL environment variable.
de: Die E-Mail-Adressen, an die Debconf E-Mail schicken soll, falls sichergestellt werden muss, dass der Administrator eine wichtige Nachricht gesehen hat. Standardmäßig »root«, dies kann auf jede gültige E-Mail-Adresse gesetzt werden, um die E-Mail dorthin zu schicken. Dies kann im Vorbeigehen durch die Umgebungsvariable DEBCONF_ADMIN_EMAIL überstimmt werden.

note: type: Plain text
en: If set, this will cause debconf to output debugging information to standard error. The value it is set to can be something like "user", "developer", "db", or a regular expression. Typically, rather than setting it permanently in a config file, you will only want to temporarily turn on debugging, and the DEBCONF_DEBUG environment variable can be set instead to accomplish that.
de: Falls gesetzt, lässt dies Debconf Informationen zur Fehlersuche auf die Standardfehlerausgabe ausgeben. Der Wert, auf den dies gesetzt wird, kann so etwas wie »user«, »developer«, »db« oder ein regulärer Ausdruck sein. Typischerweise, statt es permanent in einer Konfigurationsdatei zu setzen, wollen Sie die Fehlersuche nur zeitweise anstellen, und die Umgebungsvariable DEBCONF_DEBUG kann stattdessen gesetzt werden, um dies zu bewerkstelligen.

note: type: Plain text
en: If set, this will make debconf not display warnings about various things.  This can be overridden on the fly with the DEBCONF_NOWARNINGS environment variable.
de: Falls gesetzt, lässt dies Debconf Warnungen über verschiedene Dinge nicht anzeigen. Dies kann im Vorbeigehen durch die Umgebungsvariable DEBCONF_NOWARNINGS überstimmt werden.

note: type: Plain text
en: Makes debconf log debugging information as it runs, to the syslog. The value it is set to controls that is logged. See Debug, above for an explanation of the values that can be set to control what is logged.
de: Lässt Debconf, während es läuft, Informationen zur Fehlersuche in das Syslog schreiben. Der Wert, auf den dies gesetzt wird, kontrolliert, was protokolliert wird. Siehe oben »Debug« für eine Erklärung der Werte, die gesetzt werden können, um zu kontrollieren, was protokolliert wird.

note: type: Plain text
en: If set to "true", makes some debconf frontends use a special terse display mode that outputs as little as possible. Defaults to false. Terse mode may be temporarily set via the DEBCONF_TERSE environment variable.
de: Falls auf »true« gesetzt, lässt dies einige Debconf-Benutzerschnittstellen einen besonders knappen Anzeigemodus benutzen, der so wenig wie möglich ausgibt. Der knappe Modus kann temporär über die Umgebungsvariable DEBCONF_TERSE gesetzt werden.

note: type: Plain text
en: For example, the first stanza of a file might look like this:
      Config: configdb
      Templates: templatedb
de: Der erste Abschnitt der Datei kann wie folgt aussehen:
      Config: configdb
      Templates: templatedb

note: type: Plain text
en: Each remaining stanza in the file sets up a database. A database stanza
    begins by naming the database:
      Name: configdb
de: Jeder verbleibende Absatz in der Datei richtet eine Datenbank ein. Ein
    Datenbankenabschnitt beginnt mit der Benennung der Datenbank:
      Name: configdb

note: type: Plain text
en: Then it indicates what database driver should be used for this database.
    See DRIVERS, below, for information about what drivers are available.
      Driver: File
de: Dann wird angezeigt, welcher Datenbank-Treiber für diese Datenbank benutzt
    werden soll. Siehe unten TREIBER für Informationen, welche Treiber verfügbar
    sind.
      Driver: File

note: type: Plain text
en: You can indicate that the database is not essential to the proper
    functioning of debconf by saying it is not required. This will make debconf
    muddle on if the database fails for some reason.
      Required: false
de: Sie können angeben, dass die Datenbank nicht essenziell für die ordnungsgemäße
    Funktionsweise von Debconf ist, indem Sie sagen, dass sie nicht erforderlich
    ist. Dies lässt Debconf fortfahren, falls die Datenbank aus irgendeinem
    Grund scheitert.
      Required: false

note: type: Plain text
en: You can mark any database as readonly and debconf will not write anything
    to it.
      Readonly: true
de: Sie können jede Datenbank als nur-lesend markieren, und Debconf schreibt
    nichts hinein.
      Readonly: true

note: type: Plain text
en: You can also limit what types of data can go into the database with Accept- and Reject- lines; see ACCESS CONTROLS, below.
de: Sie können mit Accept- und Reject-Zeilen auch begrenzen, welche Arten von Daten in die Datenbank gelangen können; siehe unten ZUGRIFFSKONTROLLE.

note: type: Plain text
en: The remainder of each database stanza is used to provide configuration
    specific to that driver. For example, the Text driver needs to know
    a directory to put the database in, so you might say:
      Filename: /var/cache/debconf/config.dat
de: Der Rest jedes Datenbanken-Absatz wird benutzt, um Konfiguration speziell zu
    diesem Treiber bereitzustellen. Zum Beispiel muss der Treiber Text ein
    Verzeichnis wissen, in das er die Datenbank packt, so dass Sie sagen könnten:
      Filename: /var/cache/debconf/config.dat

note: type: SH
en: DRIVERS
de: TREIBER

note: type: Plain text
en: A number of drivers are available, and more can be written with little difficulty. Drivers come in two general types. First there are real drivers -- drivers that actually access and store data in some kind of database, which might be on the local filesystem, or on a remote system. Then there are meta-drivers that combine other drivers together to form more interesting systems. Let's start with the former.
de: Eine Reihe von Treibern sind verfügbar, und mehr noch können mit wenig Schwierigkeit geschrieben werden. Treiber gibt es in zwei generellen Typen. Zuerst gibt es echte Treiber -- Treiber die tatsächlich auf Daten in irgendeiner Form von Datenbank zugreifen und speichern, welche im lokalen Dateisystem oder auf einem entfernten System sein können. Dann gibt es Meta-Treiber, die andere Treiber kombinieren, um interessantere Systeme zu formen. Lassen Sie uns mit ersteren beginnen.

note: type: Plain text
en: This database driver allows debconf to store a whole database in a single flat text file. This makes it easy to archive, transfer between machines, and edit. It is one of the more compact database formats in terms of disk space used. It is also one of the slowest.
de: Dieser Datenbank-Treiber erlaubt Debconf, eine vollständige Datenbank in einer einzelnen flachen Textdatei zu speichern. Dies erlaubt einfaches Archivieren, Transferieren zwischen Maschinen und Editieren. Es ist eines der kompakteren Datenbank-Formate hinsichtlich des benutzten Plattenplatz. Es ist auch eins der langsamsten.

note: type: Plain text
en: On the downside, the entire file has to be read in each time debconf starts up, and saving it is also slow.
de: Als Nachteil muss die gesamte Datei eingelesen werden, jedes Mal, wenn Debconf startet, und Speichern ist ebenfalls langsam.

note: type: Plain text
en: The following things are configurable for this driver.
de: Die folgenden Dinge sind für diesen Treiber konfigurierbar:

note: type: Plain text
en: The file to use as the database. This is a required field.
de: Die Datei, die als Datenbank benutzt werden soll. Dies ist ein erforderliches Feld.

note: type: Plain text
en: The permissions to create the file with if it does not exist. Defaults to 600, since the file could contain passwords in some circumstances.
de: Die Berechtigungen, mit denen die Datei erzeugt wird, falls sie nicht existiert. Standardmäßig 600, weil die Datei unter Umständen Passwörter enthalten könnte.

note: type: Plain text
en: The format of the file. See FORMATS below. Defaults to using a rfc-822 like format.
de: Das Format der Datei. Siehe unten FORMATE. Standardmäßig wird ein RFC-822-ähnliches Format benutzt.

note: type: Plain text
en: Whether a backup should be made of the old file before changing it.  Defaults to true.
de: Ob von der alten Datei eine Sicherheitskopie gemacht werden soll, bevor sie verändert wird. Standardmäßig »true«.

note: type: Plain text
en: As example stanza setting up a database using this driver:
de: Ein Beispiel-Absatz, der eine Datenbank unter Benutzung dieses Treiber einrichtet:

note: type: Plain text
en: This database driver allows debconf to store data in a hierarchical directory structure. The names of the various debconf templates and questions are used as-is to form directories with files in them. This format for the database is the easiest to browse and fiddle with by hand.  It has very good load and save speeds. It also typically occupies the most space, since a lot of small files and subdirectories do take up some additional room.
de: Dieser Datenbank-Treiber erlaubt Debconf, Daten in einer hierarchischen Verzeichnisstruktur zu speichern. Die Namen der verschiedenen Debconf-Vorlagen und -Fragen werden benutzt, wie sie sind, um Verzeichnisse mit Dateien darin zu formen. Dieses Datenbanken-Format ist das einfachste, wenn es darum geht, von Hand zu stöbern und zu tricksen. Es hat sehr gute Lade- und Speicher-Geschwindigkeiten. Es beansprucht typischerweise auch den meisten Platz, weil viele kleine Dateien und Unterverzeichnis zusätzlichen Raum nehmen.

note: type: Plain text
en: The directory to put the files in. Required.
de: Das Verzeichnis, in das die Dateien gelegt werden. Erforderlich.

note: type: Plain text
en: An extension to add to the names of files. Must be set to a non-empty string; defaults to ".dat"
de: Eine Erweiterung, die den Namen von Dateien hinzugefügt werden. Muss auf eine nicht-leere Zeichenkette gesetzt werden; standardmäßig ».dat«

note: type: Plain text
en: This database driver is a compromise between the File and DirTree databases. It uses a directory, in which there is (approximately) one file per package that uses debconf. This is fairly fast, while using little more room than the File database driver.
de: Dieser Datenbank-Treiber ist ein Kompromiss zwischen den Datenbanken »File« und »DirTree«. Er benutzt ein Verzeichnis, in dem es (ungefähr) eine Datei pro Paket, das Debconf benutzt, gibt. Dies ist ziemlich schnell, während es wenig mehr Platz als der Datenbank-Treiber »File« benutzt.

note: type: Plain text
en: This driver is configurable in the same ways as is the DirTree driver, plus:
de: Dieser Treiber ist auf dieselbe Weise wie der Treiber DirTree konfigurierbar, und zusätzlich:

note: type: Plain text
en: The permissions to create files with. Defaults to 600, since the files could contain passwords in some circumstances.
de: Die Berechtigungen, mit denen Dateien erzeugt werden. Standardmäßig 600, da die Dateien unter Umständen Passwörter enthalten könnten.

note: type: Plain text
en: WARNING: This database driver is currently experimental. Use with caution.
de: WARNUNG: Dieser Datenbank-Treiber ist gegenwärtig experimentell. Mit Vorsicht zu benutzen.

note: type: Plain text
en: This database driver accesses a LDAP directory for debconf configuration data. Due to the nature of the beast, LDAP directories should typically be accessed in read-only mode. This is because multiple accesses can take place, and it's generally better for data consistency if nobody tries to modify the data while this is happening. Of course, write access is supported for those cases where you do want to update the config data in the directory.
de: Dieser Datenbank-Treiber greift für Debconf-Konfigurationsdaten auf ein LDAP-Verzeichnis zu. Wegen ihrer vertrackten Natur sollte auf LDAP-Verzeichnisse typischerweise im Nur-Lese-Modus zugegriffen werden. Dies ist notwendig, weil mehrere gleichzeitige Zugriffe stattfinden können, und es ist generell besser für die Daten-Konsistenz, dass niemand versucht, die Daten zu verändern, während der Zugriff erfolgt. Selbstverständlich wird Schreibzugriff unterstützt, in den Fällen, in denen Sie die Konfigurationsdaten in dem Verzeichnis aktualisieren wollen.

note: type: Plain text
en: For information about setting up a LDAP server for debconf, read /usr/share/doc/debconf-doc/README.LDAP (from the debconf-doc package).
de: Für Informationen über das Einrichten eines LDAP-Server für Debconf lesen Sie /usr/share/doc/debconf-doc/README.LDAP (im Paket debconf-doc)

note: type: Plain text
en: To use this database driver, you must have the libnet-ldap-perl package installed. Debconf suggests that package, but does not depend on it.
de: Um diesen Datenbank-Treiber zu benutzen, müssen Sie das Paket libnet-ldap-perl installieren. Debconf schlägt dieses Paket vor, hängt aber nicht von ihm ab.

note: type: Plain text
en: Please carefully consider the security implications of using a remote debconf database. Unless you trust the source, and you trust the intervening network, it is not a very safe thing to do.
de: Bitte erwägen Sie sorgfältig die Sicherheits-Auswirkungen, die die Verwendung einer entfernten Debconf-Datenbank mit sich bringt. Solange Sie nicht der Quelle und dem zwischengelegenen Netzwerk vertrauen, ist dies keine sichere Sache.

note: type: Plain text
en: The host name or IP address of an LDAP server to connect to.
de: Hostname oder IP-Adresse des LDAP-Servers, mit dem verbunden werden soll.

note: type: Plain text
en: The port on which to connect to the LDAP server. If none is given, the default port is used.
de: Der Port, auf dem mit dem LDAP-Server verbunden werden soll. Falls nicht angegeben, wird der standardmäßige Port benutzt.

note: type: Plain text
en: The DN under which all config items will be stored. Each config item will be assumed to live in a DN of cn=E<lt>item nameE<gt>,E<lt>Base DNE<gt>. If this structure is not followed, all bets are off.
de: Die DN, unter der alle Konfigurationselemente gespeichert werden. Von jedem Konfigurationselement wird angenommen, dass es in einer DN cn=E<lt>item nameE<gt>,E<lt>Base DNE<gt> existiert. Falls dieser Struktur nicht gefolgt wird, wird für nichts garantiert.

note: type: Plain text
en: The DN to bind to the directory as. Anonymous bind will be used if none is specified.
de: Die DN, als die das Verzeichnis zu binden ist. Anonyme Bindung wird benutzt, falls keine angegeben wird.

note: type: Plain text
en: The password to use in an authenticated bind (used with binddn, above). If not specified, anonymous bind will be used.
de: Das bei einer authentifizierten Bindung zu benutzende Passwort (benutzt mit binddn oben). Falls nicht angegeben, wird anonyme Bindung benutzt.

note: type: Plain text
en: This option should not be used in the general case. Anonymous binding should be sufficient most of the time for read-only access. Specifying a bind DN and password should be reserved for the occasional case where you wish to update the debconf configuration data.
de: Diese Option sollte nicht im generellen Falle benutzt werden. Anonyme Bindung sollte die meiste Zeit für Nur-Lese-Zugriff ausreichend sein. Bindungs-DN und -Password sollte für den gelegentlichen Fall reserviert werden, in dem Sie die Debconf-Konfigurationsdaten aktualisieren wollen.

note: type: Plain text
en: Enable access to individual LDAP entries, instead of fetching them all at once in the beginning. This is very useful if you want to monitor your LDAP logs for specific debconf keys requested. In this way, you could also write custom handling code on the LDAP server part.
de: Aktiviere Zugriff auf individuelle LDAP-Einträge, anstatt sie am Anfang alle auf einmal zu holen. Dies ist sehr nützlich, falls Sie die Abfrage bestimmter Debconf-Schlüssel in Ihren LDAP-Protokollen überwachen wollen. Auf diese Weise könnten Sie auch eigenen Behandlungscode auf der Seite des LDAP-Servers schreiben.

note: type: Plain text
en: Note that when this option is enabled, the connection to the LDAP server is kept active during the whole Debconf run. This is a little different from the all-in-one behavior where two brief connections are made to LDAP; in the beginning to retrieve all the entries, and in the end to save eventual changes.
de: Beachten Sie, dass, wenn diese Option gesetzt ist, die Verbindung zum LDAP-Server während des gesamten Debconf-Laufs aktiv gehalten wird. Dies ist ein wenig verschieden zu dem Alles-in-Einem-Verhalten, wo zwei kurze LDAP-Verbindungen erfolgen; am Anfang, um alle Einträge zu holen, und am Ende, um mögliche Änderungen zu speichern.

note: type: Plain text
en: An example stanza setting up a database using this driver, assuming the remote database is on example.com and can be accessed anonymously:
de: Ein Beispiel-Absatz, der eine Datenbank einrichtet, die diesen Treiber benutzt, unter Annahme, dass die entfernte Datenbank auf example.com ist und anonym zugegriffen werden kann:

note: type: Plain text
en: Another example, this time the LDAP database is on localhost, and can be written to:
de: Noch ein Beispiel, diesmal ist die LDAP-Datenbank auf localhost, und kann beschrieben werden:

note: type: Plain text
en: This special-purpose database driver reads and writes the database from standard input/output. It may be useful for people with special needs.
de: Dieser Datenbankentreiber für besondere Anlässe liest und schreibt die Datenbank von der Standardein/-ausgabe. Er mag für Leute mit besonderen Bedürfnissen nützlich sein.

note: type: Plain text
en: The format to read and write. See FORMATS below. Defaults to using a rfc-822 like format.
de: Das zu lesende und zu schreibende Format. Siehe unten FORMATE. Standardmäßig ein RFC-822-ähnliches Format.

note: type: Plain text
en: File descriptor number to read from. Defaults to reading from stdin. If set to "none", the database will not read any data on startup.
de: Nummer des Dateideskriptors von dem gelesen werden soll. Liest standardmäßig von Stdin. Falls auf »none« gesetzt, liest die Datenbank beim Starten keine Daten.

note: type: Plain text
en: File descriptor number to write to. Defaults to writing to stdout. If set to "none", the database will be thrown away on shutdown.
de: Nummer des Dateideskriptors auf den geschrieben werden soll. Schreibt standardmäßig auf Stdout. Falls auf »none« gesetzt, wird die Datenbank beim Schließen verworfen.

note: type: Plain text
en: That's all of the real drivers, now moving on to meta-drivers..
de: Das sind alle echten Treiber, lassen Sie uns nun zu den Meta-Treibern gehen.

note: type: Plain text
en: This driver stacks up a number of other databases (of any type), and allows them to be accessed as one. When debconf asks for a value, the first database on the stack that contains the value returns it. If debconf writes something to the database, the write normally goes to the first driver on the stack that has the item debconf is modifying, and if none do, the new item is added to the first writable database on the stack.
de: Dieser Treiber stapelt eine Anzahl anderer Datenbanken (jeglichen Typs), und erlaubt, auf sie zuzugreifen, als ob sie eine einzige wären. Wenn Debconf einen Wert anfragt, gibt die erste Datenbank in dem Stapel, die den Wert enthält, ihn zurück. Falls Debconf etwas in die Datenbank schreibt, wird normalerweise auf den ersten Treiber in dem Stapel, der das modifizierte Element enthält, geschrieben, und falls es keiner hat, wird das neue Element der ersten schreibbaren Datenbank auf dem Stapel hinzugefügt.

note: type: Plain text
en: Things become more interesting if one of the databases on the stack is readonly. Consider a stack of the databases foo, bar, and baz, where foo and baz are both readonly. Debconf wants to change an item, and this item is only present in baz, which is readonly. The stack driver is smart enough to realize that won't work, and it will copy the item from baz to bar, and the write will take place in bar. Now the item in baz is shadowed by the item in bar, and it will not longer be visible to debconf.
de: Die Dinge werden interessanter, falls eine der Datenbanken auf dem Stapel nur-lesend ist. Betrachten wir einen Stapel der Datenbanken Foo, Bar und Baz, wo Foo und Baz beide nur-lesend sind. Debconf will ein Element ändern, und dieses Element ist nur in Baz präsent, die nur-lesend ist. Der Stapel-Treiber ist klever genug, zu erkennen, dass das nicht funktioniert, und kopiert das Element von Baz nach Bar, und das Schreiben findet in Bar statt. Nun wird das Element in Baz von dem in Bar verdeckt, und ist für Debconf nicht mehr sichtbar.

note: type: Plain text
en: This kind of thing is particularly useful if you want to point many systems at a central, readonly database, while still allowing things to be overridden on each system. When access controls are added to the picture, stacks allow you to do many other interesting things, like redirect all passwords to one database while a database underneath it handles everything else.
de: Dieses ist vor allem nützlich, falls Sie viele Systeme auf eine zentrale, nur-lesende Datenbank verweisen wollen, wobei immer noch auf jedem System erlaubt ist, Dinge zu überstimmen. Wenn dem Bild Zugriffskontrollen hinzugefügt werden, erlauben Ihnen Stapel viele andere interessante Dinge zu tun, wie alle Passwörter in eine Datenbank umzuleiten, während eine Datenbank darunter alles andere behandelt.

note: type: Plain text
en: Only one piece of configuration is needed to set up a stack:
de: Nur ein Konfigurationselement wird zum Einrichten eines Stapels benötigt:

note: type: Plain text
en: This is where you specify a list of other databases, by name, to tell it what makes up the stack.
de: Hier geben Sie eine Liste anderer Datenbanken namentlich an, um dem Treiber zu sagen, was den Stapel bildet.

note: type: Plain text
en: For example:
de: Zum Beispiel:

note: type: Plain text
en: WARNING: The stack driver is not very well tested yet. Use at your own risk.
de: WARNUNG: Der Stapel-Treiber ist noch nicht sehr gut getestet. Auf eigenes Risiko zu verwenden.

note: type: Plain text
en: This driver passes all requests on to another database driver. But it also copies all write requests to a backup database driver.
de: Dieser Treiber leitet alle Anfragen an einen anderen Datenbankentreiber weiter. Aber er kopiert auch alle Schreibe-Anfragen als Sicherheitskopie an einen zweiten Datenbankentreiber.

note: type: Plain text
en: You must specify the following fields to set up this driver:
de: Sie müssen für die Einrichtung dieses Treibers die folgenden Felder angeben.

note: type: Plain text
en: The database to read from and write to.
de: Die Datenbank, von der gelesen und auf die geschrieben werden soll.

note: type: Plain text
en: The name of the database to send copies of writes to.
de: Der Name der Datenbank, an die Kopien von Schreibzugriffen gesendet werden sollen.

note: type: Plain text
en: This driver passes all requests on to another database driver, outputting verbose debugging output about the request and the result.
de: Dieser Treiber leitet alle Anfragen an einen anderen Datenbankentreiber weiter, und gibt eine wortreiche Ausgabe zur Fehlersuche über Anfrage und Ergebnis aus.

note: type: SH
en: ACCESS CONTROLS
de: ZUGRIFFSKONTROLLEN

note: type: Plain text
en: When you set up a database, you can also use some fields to specify access controls. You can specify that a database only accepts passwords, for example, or make a database only accept things with "foo" in their name.
de: Wenn Sie eine Datenbank einrichten, können Sie auch einige Felder benutzen, um Zugriffskontrollen anzugeben. Sie können zum Beispiel angeben, dass eine Datenbank nur Passwörter akzeptiert, oder eine Datenbank nur Dinge mit »foo« in ihrem Namen annehmen lassen.

note: type: Plain text
en: As was mentioned earlier, this access control, if set to "true", makes a database readonly. Debconf will read values from it, but will never write anything to it.
de: Wie vorher erwähnt, macht diese Zugriffskontrolle, falls auf »true« gesetzt, eine Datenbank nur-lesend. Debconf liest aus ihr Werte, aber schreibt niemals etwas in sie hinein.

note: type: Plain text
en: The text in this field is a perl-compatible regular expression that is matched against the names of items as they are requested from the database. Only if an items name matches the regular expression, will the database allow debconf to access or modify it.
de: Der Text in diesem Feld ist ein Perl-kompatibler regulärer Ausdruck, der auf die Namen der Elemente, wie sie von der Datenbank angefragt werden, angewendet wird. Nur wenn der Name eines Elements mit dem regulären Ausdruck übereinstimmt, erlaubt die Datenbank Debconf auf es zuzugreifen oder es zu modifizieren.

note: type: Plain text
en: Like Accept-Name, except any item name matching this regular expression will be rejected.
de: Wie Accept-Name, außer dass jedes Element, dessen Namen mit diesem regulären Ausdruck übereinstimmt, zurückgewiesen wird.

note: type: Plain text
en: Another regular expression, this matches against the type of the item that is being accessed. Only if the type matches the regex will access be granted.
de: Noch ein regulärer Ausdruck, dieser wird auf den Typ des zugegriffenen Elementes angewendet. Nur falls der Typ auf den Ausdruck passt, wird der Zugriff gestattet.

note: type: Plain text
en: Like Accept-Type, except any type matching this regular expression will be rejected.
de: Wie Accept-Type, außer dass jeder Typ, der auf diesen regulären Ausdruck passt, zurückgewiesen wird.

note: type: SH
en: FORMATS
de: FORMATE

note: type: Plain text
en: Some of the database drivers use format modules to control the actual format in which the database is stored on disk. These formats are currently supported:
de: Einige der Datenbankentreiber benutzen Format-Module, um das eigentliche Format zu kontrollieren, in welchem die Datenbank auf Platte gespeichert wird. Diese Formate werden gegenwärtig unterstützt:

note: type: Plain text
en: This is a file format loosely based upon the rfc-822 format for email message headers. Similar formats are used throughout Debian; in the dpkg status file, and so on.
de: Dies ist ein Dateiformat, das ungefähr auf dem RFC-822-Format für Kopfzeilen von E-Mails basiert. Ähnliche Formate werden überall in Debian benutzt; bei der dpkg-Status-Datei und so weiter.

note: type: Plain text
en: Here is a more complicated example of a debconf.conf file.
de: Hier ist ein komplizierteres Beispiel einer Datei debconf.conf.

note: type: Plain text
en:   # This stanza is used for general debconf setup.
      Config: stack
      Templates: templates
      Log: developer
      Debug: developer
de:   # Dieser Absatz richtet Debconf generell ein.
      Config: stack
      Templates: templates
      Log: developer
      Debug: developer

note: type: Plain text
en:   # This is my own local database.
      Name: mydb
      Driver: DirTree
      Directory: /var/cache/debconf/config
de:   # Dies ist meine eigene lokale Datenbank.
      Name: mydb
      Driver: DirTree
      Directory: /var/cache/debconf/config

note: type: Plain text
en:   # This is another database that I use to hold
      # only X server configuration.
      Name: X
      Driver: File
      Filename: /etc/X11/debconf.dat
      Mode: 644
      # It's sorta hard to work out what questions
      # belong to X; it should be using a deeper
      # tree structure so I could just match on ^X/
      # Oh well.
      Accept-Name: xserver|xfree86|xbase
de:   # Dies ist eine weitere Datenbank, in der ich
      # nur Konfiguration für den X-Server habe.
      Name: X
      Driver: File
      Filename: /etc/X11/debconf.dat
      Mode: 644
      # Es ist ein wenig schwer, zu bestimmen,
      # welche Fragen zu X11 gehören; man sollte
      # eine tiefere Baumstruktur verwenden, so
      # dass ich nur auf ^X/ zu schauen bräuchte
      # Ach ja.
      Accept-Name: xserver|xfree86|xbase

note: type: Plain text
en:   # This is our company's global, read-only
      # (for me!) debconf database.
      Name: company
      Driver: LDAP
      Server: debconf.foo.com
      BaseDN: cn=debconf,dc=foo,dc=com
      BindDN: uid=admin,dc=foo,dc=com
      BindPasswd: secret
      Readonly: true
      # I don't want any passwords that might be
      # floating around in there.
      Reject-Type: password
      # If this db is not accessible for whatever
      # reason, carry on anyway.
      Required: false
de:   # Die ist die globale Debconf-Datenbank
      # unserer Firma, (für mich) nur lesbar.
      Name: company
      Driver: LDAP
      Server: debconf.foo.com
      BaseDN: cn=debconf,dc=foo,dc=com
      BindDN: uid=admin,dc=foo,dc=com
      BindPasswd: secret
      Readonly: true
      # Ich möchte keine Passwörter, die in
      # ihr enthalten sein könnten.
      Reject-Type: password
      # Falls diese DB aus welchem Grund auch nicht
      # zugreifbar ist, mache einfach weiter.
      Required: false

note: type: Plain text
en:   # I use this database to hold
      # passwords safe and secure.
      Name: passwords
      Driver: File
      Filename: /etc/debconf/passwords
      Mode: 600
      Accept-Type: password
de:   # In dieser Datenbank halte ich
      # sicher Passwörter
      Name: passwords
      Driver: File
      Filename: /etc/debconf/passwords
      Mode: 600
      Accept-Type: password

note: type: Plain text
en:   # Let's put them all together
      # in a database stack.
      Name: stack
      Driver: Stack
      Stack: passwords, X, mydb, company
      # So, all passwords go to the password database.
      # Most X configuration stuff goes to the X
      # database, and anything else goes to my main
      # database. Values are looked up in each of those
      # in turn, and if none has a particular value, it
      # is looked up in the company-wide LDAP database
      # (unless it's a password).
de:   # Lassen Sie uns sie alle in
      # einem Datenbankenstapel
      # zusammenpacken
      Name: stack
      Driver: Stack
      Stack: passwords, X, mydb, company
      # Also kommen alle Passwörter in die
      # Passwortdatenbank. Die meiste
      # Konfiguration für X11 kommt in die
      # Datenbank X, und alles andere kommt
      # in meine Datenbank. Werte werden der
      # Reihe nach in diesen nachgeschlagen,
      # und wenn keine einen bestimmten Wert
      # hat, wird in der Firmen-weiten LDAP-
      # Datenbank nachgeschlagen (außer es
      # ist ein Passwort).

note: type: Plain text
en:   # A database is also used to hold templates. We
      # don't need to make this as fancy.
      Name: templates
      Driver: File
      Mode: 644
      Format: 822
      Filename: /var/cache/debconf/templates
de:   # Auch für das Halten von Vorlagen wird eine
      # Datenbank benutzt. Wir brauchen diese
      # nicht so hübsch zu machen.
      Driver: File
      Mode: 644
      Format: 822
      Filename: /var/cache/debconf/templates

note: type: SH
en: NOTES
de: ANMERKUNGEN

note: type: Plain text
en: If you use something like ${HOME} in this file, it will be replaced with the value of the named environment variable.
de: Falls Sie in dieser Datei etwas wie ${HOME} benutzen, wird es durch den Wert der benannten Umgebungsvariablen ersetzt.

note: type: Plain text
en: Environment variables can also be used to override the databases on the fly, see B<debconf>(7)
de: Umgebungsvariablen können auch benutzt werden, um die Datenbanken im Vorbeigehen zu überstimmen, siehe B<debconf>(7).

note: type: Plain text
en: The field names (the part of the line before the colon) is case-insensitive. The values, though, are case sensitive.
de: Bei den Feldnamen (der Teil der Zeile vor dem Doppelpunkt) wird nicht auf Groß-/Kleinschreibung geachtet. Aber bei den Werten.

note: type: SH
en: PLANNED ENHANCEMENTS
de: GEPLANTE ERWEITERUNGEN

note: type: Plain text
en: More drivers and formats. Some ideas include: A SQL driver, with the capability to access a remote database.  A DHCP driver, that makes available some special things like hostname, IP address, and DNS servers.  A driver that pulls values out of public DNS records TXT fields.  A format that is compatible with the output of cdebconf.  An override driver, which can override the value field or flags of all requests that pass through it.
de: Mehr Treiber und Formate. Einige Ideen beinhalten: Ein SQL-Treiber, mit der Fähigkeit, auf eine entfernte Datenbank zuzugreifen. Ein DHCP-Treiber, der einige besondere Dinge wie Hostname, IP-Adresse und DNS-Server verfügbar macht. Ein Treiber, der Werte aus TXT-Feldern in öffentlichen DNS-Einträgen zieht. Ein Format, das kompatibel mit der Ausgabe von cdebconf ist. Ein Überstimmungstreiber, der die Wert-Felder oder Flags von allen Anfragen, die durch ihn hindurchgeleitet werden, überstimmen kann.

note: type: SH
en: FILES
de: DATEIEN

note: type: Plain text
en: confmodule - communicate with Debian configuration system FrontEnd.
de: confmodule - mit Debians Konfigurationssystemschnittstelle kommunizieren.

note: type: Plain text
en: This is a library of shell functions that eases communication with Debian's configuration management system. It can communicate with a FrontEnd via the debconf protocol. The design is that each command in the protocol is represented by one function in this module. The functionname is the same as the command, except it is prefixed with "db_" and is lower-case. Call the function and pass in any parameters you want to follow the command. Any textual return code from the FrontEnd will be returned to you in the $RET variable, while the numeric return code from the FrontEnd will be returned as a return code (and so those return codes must be captured or ignored).
de: Dies ist eine Bibliothek von Shell-Funktionen, die die Kommunikation mit Debians Konfigurationsmanagementsystem erleichtert. Sie kann mit einer Benutzerschnittstelle über das Debconf-Protokoll kommunizieren. Nach dem Design wird jeder Befehl in dem Protokoll durch eine Funktion in diesem Modul repräsentiert. Der Funktionsname ist derselbe wie der Befehl, außer dass er das Präfix »db_« hat und kleingeschrieben wird. Rufen Sie die Funktion auf und übergeben Sie ihr jegliche Parameter, die Sie dem Befehl folgen lassen wollen. Jeglicher wörtliche Rückgabewert von der Benutzerschnittstelle wird Ihnen in der Variablen $RET zurückgegeben, während der nummerische Rückgabewert von der Benutzerschnittstelle als Rückgabewert $? zurückgegeben wird (und deshalb müssen diese Rückgabewerte aufgefangen oder ignoriert werden).

note: type: Plain text
en: Once this library is loaded, any text you later output will go to standard
    error, rather than standard output. This is a good thing in general, because
    text sent to standard output is interpreted by the FrontEnd as commands. If
    you do want to send a command directly to the FrontEnd, you must output it
    to file descriptor 3, like this:
      echo GET foo/bar E<gt>&3
de: Sobald diese Bibliothek geladen ist, kommt jeglicher Text, den Sie später
    ausgeben, auf die Standardfehlerausgabe, statt auf die Standardausgabe.
    Generell ist dies eine gute Sache, da Text, der auf die Standardausgabe
    geschickt wird, von der Schnittstelle als Befehle interpretiert wird. Falls Sie
    direkt einen Befehl an die Schnittstelle schicken wollen, müssen Sie ihn auf den
    Dateideskriptor 3 ausgeben, wie folgt:
      echo GET foo/bar E<gt>&3

note: type: Plain text
en: The library checks to make sure it is actually speaking to a FrontEnd by examining the DEBIAN_HAS_FRONTEND variable. If it is set, a FrontEnd is assumed to be running. If not, the library turns into one, and runs a copy of the script that loaded the library connected to it. This means that if you source this library, you should do so very near to the top of your script, because everything before the sourcing of the library may well be run again.
de: Die Bibliothek prüft die Variable DEBIAN_HAS_FRONTEND, um sicherzustellen, dass sie tatsächlich mit einer Benutzerschnittstelle spricht. Falls diese gesetzt ist, wird angenommen, dass eine Benutzerschnittstelle läuft. Falls nicht, verwandelt sich die Bibliothek in eine, und führt eine Kopie des Skripts aus, das die mit ihm verbundene Bibliothek geladen hat. Dies bedeutet, dass Sie dies ganz am Anfang Ihres Skriptes tun sollten, falls Sie diese Bibliothek sourcen, weil alles vor dem Sourcen der Bibliothek wahrscheinlich nochmals ausgeführt werden könnte.

note: type: Plain text
en: B<debconf-devel>(7), B<dpkg-preconfigure>(8), B<dpkg-reconfigure>(8), debconf_specification in the debian-policy package
de: B<debconf-devel>(7), B<dpkg-preconfigure>(8), B<dpkg-reconfigure>(8), debconf_specification im Paket debian-policy

note: type: Plain text
en: debconf - Debian package configuration system
de: debconf - Debian-Paket-Konfigurationssystem

note: type: Plain text
en: Debconf is a configuration system for Debian packages. There is a rarely-used command named debconf, documented in B<debconf>(1)
de: Debconf ist ein Konfigurationssystem für Debian-Pakete. Es gibt auch einen selten verwandten Befehl namens debconf, der in B<debconf>(1) dokumentiert ist.

note: type: Plain text
en: Debconf provides a consistent interface for configuring packages, allowing you to choose from several user interface frontends. It supports preconfiguring packages before they are installed, which allows large installs and upgrades to ask you for all the necessary information up front, and then go do the work while you do something else. It lets you, if you're in a hurry, skip over less important questions and information while installing a package (and revisit it later).
de: Debconf stellt eine konsistente Schnittstelle zur Paketkonfiguration bereit und erlaubt es Ihnen, aus mehreren Benutzerschnittstellen auszuwählen. Es unterstützt die Vorkonfiguration von Paketen vor der Installation, womit bei großen Installationen und Upgrades alle notwendigen Informationen am Anfang abgefragt werden können und Sie dann während der Installation selbst sich anderen Dingen widmen können. Falls Sie in Eile sind, können Sie damit während der Paketinstallation weniger wichtige Fragen und Informationen überspringen (und diese dann später nochmal angehen).

note: type: SH
en: Preconfiguring packages
de: Pakete vorkonfigurieren

note: type: Plain text
en: Debconf can configure packages before they are even installed onto your system. This is useful because it lets all the questions the packages are going to ask be asked at the beginning of an install, so the rest of the install can proceed while you are away getting a cup of coffee.
de: Debconf kann sogar Pakete konfigurieren, bevor Sie auf Ihrem System installiert sind. Dies ist nützlich, weil damit alle Fragen, die die Pakete stellen werden, am Anfang der Installation gestellt werden können, so dass der Rest der Installation ablaufen kann, während Sie eine Tasse Kaffee holen.

note: type: Plain text
en: If you use apt (version 0.5 or above), and you have apt-utils installed, each package apt installs will be automatically preconfigured. This is controlled via I</etc/apt/apt.conf.d/70debconf>
de: Falls Sie Apt (Version 0.6 oder neuer) verwenden und apt-utils ist installiert, wird jedes von Apt installierte Paket automatisch vorkonfiguriert. Dies wird über I</etc/apt/apt.conf.d/70debconf> gesteuert.

note: type: Plain text
en: Sometimes you might want to preconfigure a package by hand, when you're not installing it with apt. You can use B<dpkg-preconfigure>(8)  to do that, just pass it the filenames of the packages you want to preconfigure. You will need apt-utils installed for that to work.
de: Manchmal möchten Sie vielleicht ein Paket von Hand vorkonfigurieren, wenn Sie es nicht mit APT installieren. Sie können B<dpkg-preconfigure> (8)benutzen, um das zu machen, übergeben Sie einfach die Dateinamen der Pakete, die Sie vorkonfigurieren wollen. Damit dies funktioniert, muss das Paket apt-utils installiert sein.

note: type: SH
en: Reconfiguring packages
de: Pakete erneut konfigurieren

note: type: Plain text
en: Suppose you installed the package, and answered debconf's questions, but now that you've used it awhile, you realize you want to go back and change some of your answers. In the past, reinstalling a package was often the thing to do when you got in this situation, but when you reinstall the package, debconf seems to remember you have answered the questions, and doesn't ask them again (this is a feature).
de: Angenommen Sie haben ein Paket installiert und Debconfs Fragen beantwortet, aber nun, da Sie es eine Weile benutzt haben, erkennen Sie, dass Sie zurückgehen und einige Ihrer Antworten ändern wollen. Früher mussten Sie das Paket erneut installieren, wenn Sie in diese Situation gerieten. Wenn Sie aber das Paket erneut installieren, scheint Debconf sich zu erinnern, dass Sie die Fragen beantwortet haben, und stellt sie nicht erneut (Dies ist eine Funktionalität).

note: type: Plain text
en: Luckily, debconf makes it easy to reconfigure any package that uses it.
    Suppose you want to reconfigure debconf itself. Just run, as root:
      dpkg-reconfigure debconf
de: Glücklicherweise macht es Debconf einfach, jedes Paket, das es benutzt,
    erneut zu konfigurieren. Angenommen, Sie wollen Debconf selbst erneut
    konfigurieren. Führen Sie als root einfach das Folgende aus:
      dpkg-reconfigure debconf

note: type: Plain text
en: This will ask all the questions you saw when debconf was first installed.  It may ask you other questions as well, since it asks even low priority questions that may have been skipped when the package was installed.  You can use it on any other package that uses debconf, as well.
de: Dies stellt alle Fragen, die Sie sahen, als Debconf das erste Mal installiert wurde. Es mag Ihnen auch andere Fragen stellen, weil es selbst Fragen mit niedriger Priorität stellt, die übersprungen wurden, als das Paket installiert wurde. Sie können diesen Befehl auch mit jedem anderen Paket verwenden, das Debconf benutzt.

note: type: SH
en: Frontends
de: Benutzerschnittstellen (Frontends)

note: type: Plain text
en: One of debconf's unique features is that the interface it presents to you is only one of many, that can be swapped in at will. There are many debconf frontends available:
de: Eines von Debconfs einzigartigen Funktionalitäten ist, dass die Ihnen präsentierte Schnittstelle nur eine von vielen ist, die nach Belieben ausgetauscht werden kann. Es gibt viele Debconf-Benutzerschnittstellen:

note: type: Plain text
en: The default frontend, this uses the B<whiptail>(1)  or B<dialog>(1)  programs to display questions to you. It works in text mode.
de: Die vorgegeben Benutzerschnittstelle, diese benutzt die Programme B<whiptail>(1) oder B<dialog>(1), um die Fragen an Sie anzuzeigen. Sie arbeitet im Textmodus.

note: type: Plain text
en: The most traditional frontend, this looks quite similar to how Debian configuration always has been: a series of questions, printed out at the console using plain text, and prompts done using the readline library. It even supports tab completion. The libterm-readline-gnu-perl package is strongly recommended if you chose to use this frontend; the default readline module does not support prompting with default values.  At the minimum, you'll need the perl-modules package installed to use this frontend.
de: Die traditionellste Benutzerschnittstelle, diese sieht ziemlich ähnlich aus, wie Debians Konfiguration immer war: eine Reihe von Fragen, ausgegeben auf die Konsole als reiner Texts, und Eingabeaufforderungen, die durch die Bibliothek readline erledigt werden. Es unterstützt sogar Vervollständigung durch die Tabulator-Taste. Das Paket libterm-readline-gnu-perl wird wärmstens empfohlen, wenn Sie die Benutzung dieser Benutzerschnittstelle wählen; das Standard-Module für readline ermöglicht keine Eingabeauforderung mit Vorgabewerten. Als Minimum muss das Paket perl-modules installiert sein, um diese Benutzerschnittstelle zu benutzen.

note: type: Plain text
en: This frontend has some special hotkeys. Pageup (or ctrl-u)  will go back to the previous question (if that is supported by the package that is using debconf), and pagedown (or ctrl-v) will skip forward to the next question.
de: Diese Benutzerschnittstelle hat einige Sondertasten. Bild-nach-oben (oder Ctrl-u) geht zur vorigen Frage zurück (falls dies von dem Debconf-benutzenden Paket unterstützt) und Bild-nach-unten (oder Ctrl-v) springt weiter zur nächsten Frage.

note: type: Plain text
en: This is the best frontend for remote admin work over a slow connection, or for those who are comfortable with unix.
de: Dies ist die beste Benutzerschnittstelle für Administrationsarbeit aus der Ferne über eine langsame Verbindung oder für alle, die mit Unix vertraut sind.

note: type: Plain text
en: This is the anti-frontend. It never interacts with you at all, and makes the default answers be used for all questions. It might mail error messages to root, but that's it; otherwise it is completely silent and unobtrusive, a perfect frontend for automatic installs. If you are using this front-end, and require non-default answers to questions, you will need to preseed the debconf database; see the section below on Unattended Package Installation for more details.
de: Dies ist die Anti-Benutzerschnittstelle. Sie tritt nie mit Ihnen in Kontakt, und lässt für alle Fragen die vorgegebenen Antworten benutzen. Sie mag Fehlermeldungen an root mailen, aber das war es; ansonsten ist sie komplett still und unaufdringlich, eine perfekte Schnittstelle für automatische Installationen. Falls Sie diese Benutzerschnittstelle benutzen und nicht-vorgegebene Antworten auf Fragen benötigen, müssen Sie die Debconf-Datenbank mit Voreinstellungen versehen; für weitere Details siehe unten den Abschnitt »Unbeaufsichtigte Paket-Installation«.

note: type: Plain text
en: This is a modern X GUI using the gtk and gnome libraries. Of course, it requires a valid DISPLAY to work; debconf will fall back to other frontends if it can't work. Note that this frontend requires you have the libgtk3-perl package installed.
de: Dies ist eine modern X-GUI, die die GTK und GNOME-Bibliotheken benutzt. Natürlich benötigtes es zum Funktionieren ein gültiges DISPLAY; Debconf greift auf andere Benutzerschnittstellen zurück, falls sie nicht funktionieren kann. Beachten Sie, dass diese Benutzerschnittstelle die Installation des Pakets libgtk3-perl erfordert.

note: type: Plain text
en: This frontend provides a modern X GUI based on the KDE Platform. You of course need a DISPLAY to use this frontend and you must install debconf-kde-helper package. The frontend will fall back to dialog if some of the prerequisites are not met.
de: Diese Benutzerschnittstelle stellt eine moderne X-Benutzerschnittstelle auf der KDE-Plattform bereit. Sie benötigen natürlich ein DISPLAY, um diese Oberfläche zu benutzen und müssen das Hilfspaket debconf-kde-helper installieren. Die Schnittstelle fällt auf Dialog zurück, falls einige der Voraussetzungen nicht zutreffen.

note: type: Plain text
en: This is for those fanatics who have to do everything in a text editor. It runs your editor on a file that looks something like a typical unix config file, and you edit the file to communicate with debconf. Debconf's author prefers to not comment regarding the circumstances that led to this frontend being written.
de: Dies ist für diese Fanatiker, die alles mit einem Texteditor erledigen müssen. Es ruft Ihren Editor mit einer Datei auf, die ein wenig wie eine typische Unix-Konfigurationsdatei aussieht, und Sie editieren die Datei, um mit Debconf zu kommunizieren. Der Autor von Debconf zieht es vor, nicht die Umstände zu kommentieren, die dazu geführt haben, dass diese Benutzerschnittstelle geschrieben wurde.

note: type: Plain text
en: This frontend acts as a web server, that you connect to with your web browser, to browse the questions and answer them.  It has a lot of promise, but is a little rough so far.  When this frontend starts up, it will print out the location you should point your web browser to. You have to run the web browser on the same machine you are configuring, for security reasons.
de: Diese Benutzerschnittstelle fungiert als Webserver, mit dem Sie sich mit Ihrem Web-Browser verbinden, um die Fragen zu sehen und sie zu beantworten. Sie ist vielversprechend, aber soweit ein wenig roh. Wenn diese Schnittstelle startet, gibt es die Adresse, die Sie mit Ihrem Web-Browser anzeigen sollten. Der Web-Browser muss aus Sicherheitsgründen auf der selben Maschine laufen, die Sie konfigurieren.

note: type: Plain text
en: Do keep in mind that this is not a very secure frontend.  Anyone who has access to the computer being configured can currently access the web server and configure things while this frontend is running. So this is more of a proof of concept than anything.
de: Behalten Sie im Kopf, dass diese Benutzerschnittstelle nicht sehr sicher ist. Jeder, der auf den zu konfigurierenden Rechner Zugriff hat, kann derzeit auf den den Web-Server zugreifen und Dinge konfigurieren, während diese Schnittstelle läuft. Also ist dies mehr eine Konzeptstudie als alles andere.

note: type: Plain text
en: You can change the default frontend debconf uses by reconfiguring
    debconf. On the other hand, if you just want to change the frontend
    for a minute, you can set the DEBIAN_FRONTEND environment variable to
    the name of the frontend to use. For example:
      DEBIAN_FRONTEND=readline apt-get install slrn
de: Sie können die standardmäßige Benutzerschnittstelle, die Debconf benutzt,
    ändern, indem Sie Debconf erneut konfigurieren. Falls Sie andererseits
    die Benutzerschnittstelle nur für kurze Zeit ändern wollen, können
    Sie die Umgebungsvariable DEBIAN_FRONTEND auf den Namen der zu benutzenden
    Benutzerschnittstelle setzen. Zum Beispiel:
      DEBIAN_FRONTEND=readline apt-get install slrn

note: type: Plain text
en: The B<dpkg-reconfigure>(8)  and B<dpkg-preconfigure>(8)  commands also let you pass I<--frontend=> to them, followed by the frontend you want them to use.
de: Die Befehle B<dpkg-reconfigure>(8) und B<dpkg-preconfigure>(8) lassen sich auch I<--frontend> übergeben, gefolgt von der Benutzerschnittstelle, die Sie benutzen sollen.

note: type: Plain text
en: Note that not all frontends will work in all circumstances. If a frontend fails to start up for some reason, debconf will print out a message explaining why, and fall back to the next-most similar frontend.
de: Beachten Sie, dass nicht alle Benutzerschnittstellen unter allen Umständen funktionieren. Falls eine Benutzerschnittstelle aus irgendwelchen Gründen scheitert, gibt Debconf eine Meldung aus, warum, und greift auf die ähnlichste Benutzerschnittstelle zurück.

note: type: SH
en: Priorities
de: Prioritäten

note: type: Plain text
en: Another nice feature of debconf is that the questions it asks you are prioritized. If you don't want to be bothered about every little thing, you can set up debconf to only ask you the most important questions.  On the other hand, if you are a control freak, you can make it show you all questions. Each question has a priority. In increasing order of importance:
de: Ein weitere nette Funktionalität von Debconf ist, dass die Fragen, die es Ihnen stellt, priorisiert sind. Falls Sie nicht mit jeder kleinen Sache belästigt werden wollen, können Sie Debconf so einstellen, dass es Ihnen nur die wichtigsten Fragen stellt. Falls Sie auf der anderen Seite ein Kontroll-Freak sind, können Sie es Ihnen alle Fragen zeigen lassen. Jede Frage hat eine Priorität. In nach Wichtigkeit aufsteigender Folge:

note: type: TP
en: B<low>
de: B<niedrig (low)>

note: type: Plain text
en: Very trivial questions that have defaults that will work in the vast majority of cases.
de: Sehr triviale Fragen, die Voreinstellungen haben, die in den allermeisten Fällen funktionieren.

note: type: Plain text
en: Normal questions that have reasonable defaults.
de: Normale Fragen, die vernünftige Voreinstellungen haben.

note: type: TP
en: B<high>
de: B<hoch (high)>

note: type: Plain text
en: Questions that don't have a reasonable default.
de: Fragen, die keine vernünftige Voreinstellung haben.

note: type: TP
en: B<critical>
de: B<kritisch (critical)>

note: type: Plain text
en: Questions that you really, really need to see (or else).
de: Fragen, die Sie wirklich, wirklich sehen müssen (ansonsten ...).

note: type: Plain text
en: Only questions with a priority equal to or greater than the priority you choose will be shown to you. You can set the priority value by reconfiguring debconf, or temporarily by passing I<--priority=> followed by the value to the B<dpkg-reconfigure>(8)  and B<dpkg-preconfigure>(8)  commands, or by setting the DEBIAN_PRIORITY environment variable.
de: Nur Fragen mit einer Priorität gleich oder größer der Priorität, die Sie wählen, werden Ihnen gezeigt. Sie können den Prioritätswert setzen, indem Sie Debconf erneut konfigurieren, oder temporär, indem Sie I<--priority> gefolgt von dem Wert an die Befehle B<dpkg-reconfigure>(8) und B<dpkg-preconfigure>(8) übergeben oder durch Setzen der Umgebungsvariablen DEBIAN_PRIORITY.

note: type: SH
en: Backend Database
de: Datenbanken-Backend

note: type: Plain text
en: Debconf uses a rather flexible and potentially complicated backend database for storing data such as the answers to questions. The file B</etc/debconf.conf> is used to configure this database. If you need to set up something complicated, like make debconf read a remote database to get defaults, with local overrides, read the B<debconf.conf>(5)  man page for all the gory details. Generally, the backend database is located in B</var/cache/debconf/> .
de: Debconf benutzt ein ziemlich flexibles und potenziell kompliziertes Datenbanken-Backend, um solche Daten wie die Antworten auf Fragen zu speichern. Die Datei B</etc/debconf.conf> wird benutzt, um diese Datenbank zu konfigurieren. Falls Sie etwas Kompliziertes aufsetzen müssen, etwa Debconf eine entfernte Datenbank für Voreinstellungen mit lokalen Aufhebungen lesen zu lassen, schauen Sie sich die Handbuchseite B<debconf.conf>(5) für alle Details an. Generell befindet sich das Datenbanken-Backend unter B</var/cache/debconf/>.

note: type: SH
en: Unattended Package Installation
de: Unbeaufsichtigte Paket-Installation

note: type: Plain text
en: If you have many machines to manage you will sometimes find yourself in the position of needing to perform an unattended installation or upgrade of packages on many systems, when the default answers to some configuration questions are not acceptable. There are many ways to approach this; all involve setting up a database and making debconf use it to get the answers you want.
de: Falls Sie viele Maschinen verwalten müssen, finden Sie sich manchmal in der Situation, eine unbeaufsichtigte Installation oder Aktualisierung von Paketen auf vielen Systemen vornehmen zu müssen, bei der die vorgegebenen Antworten auf manche Konfigurationsfragen nicht akzeptabel sind. Es gibt viele Wege, dies zu erreichen; alle schließen ein, eine Datenbank aufzusetzen und sie Debconf benutzen lassen, um die Antworten zu bekommen, die Sie wollen.

note: type: Plain text
en: You should really read B<debconf.conf>(5)  before this section, as you need to understand how debconf's databases work.
de: Sie sollten vor diesem Abschnitt wirklich B<debconf.conf>(5) lesen, weil Sie verstehen müssen, wie Debconfs Datenbanken funktionieren.

note: type: Plain text
en: The easiest way to set up the database is to install the packages on one machine and answer their questions as usual. Or you might just use B<dpkg-preconfigure>(8)  to configure a set of packages without actually installing them. Or you might even decide to write a plain text debconf database by hand or something.
de: Der einfachste Weg, um die Datenbank aufzusetzen, ist es, die Pakete auf einer Maschine zu installieren und ihre Fragen wie üblich zu beantworten. Oder Sie könnten einfach B<dpkg-preconfigure>(8) benutzen, um eine Reihe von Paketen zu konfigurieren, ohne sie tatsächlich zu installieren. Oder Sie mögen sich sogar dazu entscheiden, eine Klartext-Debconf-Datenbank von Hand zu schreiben, oder soetwas.

note: type: Plain text
en: Once you have the database, you need to figure out how to make the remote systems use it. This depends of course on the configuration of those systems and what database types they are set up to use.
de: Sobald Sie die Datenbank haben, müssen Sie herausfinden, wie Sie die Systeme in der Ferne dazu bekommen, sie zu benutzen. Dies hängt selbstverständlich von der Konfiguration dieser Systeme ab und davon, für die Benutzung welcher Datenbanken-Typen sie aufgesetzt sind.

note: type: Plain text
en: If you are using the LDAP debconf database, an entire network of debian machines can also have any or all package installation questions answered automatically by a single LDAP server.
de: Falls Sie die LDAP-Debconf-Datenbank benutzen, kann ein gesamtes Netzwerk von Debian-Maschinen einige oder alle Fragen zur Paket-Installation automatisch von einem einzelnen LDAP-Server beantwortet bekommen.

note: type: Plain text
en: But perhaps you're using something a little bit easier to set up like, say, the default debconf database configuration, or you just don't want your remote systems to use LDAP all the time. In this case the best approach is to temporarily configure the remote systems to stack your database underneath their own existing databases, so they pull default values out of it. Debconf offers two environment variables, DEBCONF_DB_FALLBACK and DEBCONF_DB_OVERRIDE, to make it easy to do this on the fly. Here is a sample use:
de: Aber vielleicht benutzen Sie etwas, das ein wenig leichter aufzusetzen ist, wie, sagen wir, die standardmäßige Debconf-Datenbanken-Konfiguration oder Sie wollen einfach nicht, dass Ihre System in der Ferne LDAP die ganze Zeit benutzen. In diesem Falle ist der beste Ansatz, die Systeme in der Ferne temporär so zu konfigurieren, dass sie Ihre Datenbank unter ihre eigenen existierenden Datenbanken stapeln, so dass sie vorgegebene Werte aus ihr herausziehen können. Debconf bietet zwei Umgebungvariablen, DEBCONF_DB_FALLBACK und DEBCONF_DB_OVERRIDE, um es einfach zu machen, dies im Vorbeigehen zu tun. Hier ist eine Beispielanwendung:

note: type: Plain text
en: This makes the debconf on the remote host read in the data that is piped across the ssh connection and interpret it as a plain text format debconf database. It then uses that database as a fallback database -- a read-only database that is queried for answers to questions if the system's main debconf database lacks answers.
de: Dies lässt das Debconf auf dem Rechner in der Ferne die Daten, die über die SSH-Verbindung transferiert werden, einlesen und als eine Debconf-Datenbank im Klartextformat interpretieren. Dann benutzt es diese Datenbank als Rückgriffsdatenbank -- eine nur-lesende Datenbank, die nach Antworten zu Fragen abgefragt wird, falls die Haupt-Debconf-Datenbank des Systems keine Antworten bietet.

note: type: Plain text
en: Here's another way to use the DEBCONF_DB_FALLBACK environment variable:
de: Noch ein Weg, die Umgebungsvariable DEBCONF_DB_FALLBACK zu benutzen:

note: type: Plain text
en: Here ssh is used to set up a tunneled LDAP connection and run debconf.  Debconf is told to use the LDAP server as the fallback database. Note the use of "{host:localhost}" to configure how debconf accesses the LDAP database by providing the "host" field with a value of "localhost".
de: Hier wird SSH benutzt, um eine getunnelte LDAP-Verbindung aufzusetzen und Debconf auszuführen. Debconf soll den LDAP-Server als Rückgriffs-Datenbank benutzen. Beachten Sie die Benutzung von »{host:localhost}«, um zu konfigurieren, wie Debconf auf die LDAP-Datenbank zugreift, indem das Feld »host« mit dem Wert »localhost« geliefert wird.

note: type: Plain text
en: Here's another method:
de: Noch eine Methode:

note: type: Plain text
en: Here you copy the database over with scp, and then ssh over and make debconf use the file you copied over. This illustrates a shorthand you can use in the DEBCONF_DB_FALLBACK parameters -- if a field name is left off, it defaults to "filename".
de: Hier kopieren Sie die Datenbank mit scp hinüber, und dann öffnen Sie SSH und lassen Debconf die hinüber-kopierte Datei benutzen. Dies illustriert einen Abkürzung, die Sie bei den Parametern für DEBCONF_DB_FALLBACK benutzen können -- falls der Feldname ausgelassen wird, wird »filename« angenommen.

note: type: Plain text
en: There is only one problem with these uses of the DEBCONF_DB_FALLBACK parameter: While the fallback database can provide answers to questions the other debconf databases have never seen, it is only queried as a fallback; after the other databases. If you need to instead temporarily override an existing value on the remote host, you should instead use the DEBCONF_DB_OVERRIDE variable. Like DEBCONF_DB_FALLBACK, it sets up a temporary database, but this database is consulted before any others, and can be used to override existing values.
de: Es gibt nur ein Problem mit diesen Anwendungen des Parameters DEBCONF_DB_FALLBACK: Während die Rückgriffsdatenbank Antworten auf Fragen liefern kann, die die anderen Datenbanken noch nicht gesehen haben, wird sie nur als Rückgriff abgefragt; nach den anderen Datenbanken. Falls Sie stattdessen auf dem entfernten Rechner einen bestehenden Wert temporär außer Kraft setzen müssen, sollten Sie stattdessen die Variable DEBCONF_DB_OVERRIDE benutzen. Wie DEBCONF_DB_FALLBACK setzt sie eine temporäre Datenbank auf, aber diese Datenbank wird vor allen anderen befragt, und kann benutzt werden, um bestehende Werte außer Kraft zu setzen.

note: type: SH
en: Developing for Debconf
de: Entwickeln für Debconf

note: type: Plain text
en: Package developers and others who want to develop packages that use debconf should read B<debconf-devel>(7)  .
de: Paket-Entwickler und andere, die Pakete entwickeln wollen, die Debconf benutzen, sollten B<debconf-devel>(7) lesen.

note: type: Plain text
en: Briefly, debconf communicates with maintainer scripts or other programs via standard input and output, using a simple line-oriented command language similar to that used by common internet protocols such as SMTP. Programs use this protocol to ask debconf to display questions to the user, and retrieve the user's answers. The questions themselves are defined in a separate file, called the "templates file", which has a format not unlike a debian control file.
de: Kurz gesagt kommuniziert Debconf mit Maintainer-Skripten oder anderen Programmen über die Standardein- und -ausgabe, unter Benutzung einer einfachen Befehlssprache ähnlich denen, wie sie von gängigen Internet-Protokollen wie SMTP benutzt werden. Programme benutzen dieses Protokoll, um Debconf zu bitten, Fragen an den Benutzer zu stellen und die Antworten des Benutzers einzuholen. Die Fragen selbst sind in einer eigenen Datei, »Vorlagendatei« genannt, definiert, die ein Format ähnlich einer Debian-Control-Datei hat.

note: type: Plain text
en: Debian packages which use debconf typically provide both a templates file and a "config" script (run to preconfigure the package) in the control metadata section of the package.
de: Debian-Pakete, die Debconf benutzen, liefern typischerweise eine Vorlagendatei »templates« und ein Skript »config« (welches ausgeführt wird, um das Paket vorzukonfigurieren) in dem Abschnitt für die Kontroll-Metadaten des Pakets aus.

note: type: SH
en: ENVIRONMENT
de: UMGEBUNG

note: type: Plain text
en: Used to temporarily change the frontend debconf uses. See above.
de: Wird benutzt, um temporär die Benutzerschnittstelle zu ändern, die Debconf benutzt. Siehe oben.

note: type: TP
en: B<DEBIAN_PRIORITY>
de: B<DEBCONF_PRIORITY>

note: type: Plain text
en: Used to temporarily change the minimum priority of question debconf will display. See above.
de: Wird benutzt, um temporär die Schwell-Priorität der von Debconf angezeigten Fragen zu ändern. Siehe oben.

note: type: Plain text
en: Turns on debugging output on standard error. May be set to a facility name or a regular expression which matches a facility name (such as '.*' to output all debug info). The facility names include:
de: Schaltet Ausgaben zur Fehlersuche auf der Standardfehlerausgabe ein. Kann auf den Namen einer Gruppe oder einen regulären Ausdruck, der mit den Namen von Gruppen übereinstimmt, gesetzt werden (beispielsweise ».*« um alle Fehlersuchinformationen auszugeben). Die Gruppennamen sind:

note: type: Plain text
en: Debugging info of interest to a debconf user.
de: Informationen zur Fehlersuche, die für einen Debconf-Benutzer von Interesse sind.

note: type: Plain text
en: Debugging info of interest to a package developer.
de: Informationen zur Fehlersuche, die für einen Paket-Entwickler von Interesse sind.

note: type: Plain text
en: Debugging info about the backend database.
de: Informationen zur Fehlersuche über die Backend-Datenbank.

note: type: Plain text
en: Set to "yes" to disable some warnings that debconf may display. Does not suppress display of fatal errors.
de: Setzen Sie dies auf »yes«, um einige Warnungen zu deaktivieren, die Debconf anzeigen könnte. Unterdrückt keine fatalen Fehler.

note: type: Plain text
en: Set to "yes" to enable terse mode, in which debconf frontends cut down on the verbiage as much as possible.
de: Setzen Sie dies auf »yes«, um den knappen Modus zu aktivieren, in dem Debconfs Benutzerschnittstellen den Wortreichtum so weit wie möglich einschränken.

note: type: Plain text
en: Stack a database after the normally used databases, so that it is used as a fallback to get configuration information from. See "Unattended Package Installation" above. If the value of the variable is the name of an existing database in debconf.conf, then that database will be used.  Otherwise, the environment variable can be used to configure a database on the fly, by telling the type of database, and optionally passing field:value settings, inside curly braces after the type. Spaces are used to separate fields, so you cannot specify a field value containing whitespace.
de: Stapel eine Datenbank nach den normalerweise benutzten Datenbanken, so dass sie als ein Rückgriff benutzt wird, um Konfigurationsinformationen zu beziehen. Siehe oben »Unbeaufsichtigte Paket-Installation«. Falls der Wert der Variablen ein Name einer existierenden Datenbank in debconf.conf ist wird diese Datenbank benutzt. Ansonsten kann die Umgebungsvariable benutzt werden, um eine Datenbank im Vorbeigehen (»on the fly«) zu konfigurieren, indem der Typ der Datenbank genannt und optional Feld:Wert-Einstellungen in geschwungenen Klammern nach dem Typ übergeben werden. Leerzeichen werden benutzt, um Felder zu trennen, also können Sie keinen Feldwert angeben, der Leerrzeichen enthält.

note: type: Plain text
en: Thus, this uses the fallbackdb in debconf.conf:
      DEBCONF_DB_FALLBACK=fallbackdb
de: Dieses benutzt also die Datenbank fallbackdb in debconf.conf:
      DEBCONF_DB_FALLBACK=fallbackdb

note: type: Plain text
en: While this sets up a new database of type File, and tells it a filename to
    use and turns off backups:
      DEBCONF_DB_FALLBACK=File{Filename:/root/config.dat Backup:no}
de: Während dies eine neue Datenbank vom Typ »File« aufsetzt und ihr den zu
    benutzenden Dateinamen und die Anweisung, das Erstellen von
    Sicherheitskopien zu deaktivieren, übergibt:
      DEBCONF_DB_FALLBACK=File{Filename:/root/config.dat Backup:no}

note: type: Plain text
en: And as a shorthand, this sets up a database of type File with a filename:
      DEBCONF_DB_FALLBACK=File{/root/config.dat}
de: Und als Kurzform setzt dies eine Datenbank vom Typ »File« mit einem
    Dateinamen auf:
      DEBCONF_DB_FALLBACK=File{/root/config.dat}

note: type: Plain text
en: Note that if a fallback database is set up on the fly, it will be read-only by default.
de: Beachten Sie, dass eine Rückgriffsdatenbank, falls sie im Vorbeigehen aufgesetzt wird, standardmäßig nur-lesend ist.

note: type: Plain text
en: Stack a database before the normally used databases, so that it can override values from them. The value of the variable works the same as does the value of DEBCONF_DB_FALLBACK.
de: Stapelt eine Datenbank vor die normalerweise benutzten Datenbanken, so dass sie Werte aus ihnen überstimmen kann. Der Wert dieser Variablen funktioniert auf dieselbe Weise wie der Wert von DEBCONF_DB_FALLBACK.

note: type: Plain text
en: Use a given database instead of the normally used databases.  This may be useful for testing with a separate database without having to create a separate debconf.conf, or to avoid locking the normal databases.
de: Benutze eine gegebene Datenbank anstelle der normalerweise benutzten Datenbanken. Dies kann nützlich sein, um mit einer separaten Datenbank zu testen, ohne dafür eine eigene debconf.conf zu erstellen, oder um das Sperren der normalen Datenbanken zu vermeiden.

note: type: Plain text
en: If this environment variable is set, debconf will ignore a user's ~/.debconfrc file, and use the system one instead.  If it is set to the name of a regular file, debconf will use that file in preference to the system configuration files.
de: Falls diese Umgebungsvariable gesetzt ist, ignoriert Debconf die Datei ~/.debconfrc des Benutzer, und benutzt stattdessen die systemweite debconf.conf. Falls diese auf den Namen einer regulären Datei gesetzt ist, zieht Debconf diese Datei der systemweiten Konfigurationsdatei vor.

note: type: Plain text
en: If this environment variable is set, debconf will use dialog in preference to whiptail for the dialog frontend.
de: Falls diese Umgebungsvariable gesetzt ist, bevorzugt Debconf B<dialog> gegenüber B<whiptail> für die Benutzerschnittstelle Dialog.

note: type: Plain text
en: If this environment variable is set, debconf will use Xdialog in preference to whiptail for the dialog frontend.
de: Falls diese Umgebungsvariable gesetzt ist, bevorzugt Debconf B<Xdialog> vor B<whiptail> für die Benutzerschnittstelle Dialog.

note: type: Plain text
en: Set to "true" to cause the seen flag to be set for questions asked in the noninteractive frontend.
de: Setzen Sie diese auf »true«, damit die Markierung gesehen (»seen«) für Fragen, die in der nicht-interaktiven (»noninteractive«) Schnittstelle gestellt werden, gesetzt wird.

note: type: SH
en: BUGS
de: FEHLER

note: type: Plain text
en: Probably quite a few, there's a lot of code here.
de: möglicherweise einige, es gibt hier eine Menge an Kode.

note: type: Plain text
en: If you do file a bug report, be sure to include the following information:
de: Falls Sie einen Fehlerbericht einreichen (auf Englisch!), stellen Sie sicher, dass Sie die folgenden Informationen einbeziehen:

note: type: Plain text
en: The debconf frontend you were using when the problem occurred
de: Die Debconf-Benutzerschnittstelle, die Sie benutzten, als der Fehler auftrat.

note: type: Plain text
en: What you did to trigger the problem.
de: Was Sie taten, um das Problem auszulösen.

note: type: Plain text
en: The full text of any error messages. If you can reproduce the bug, do so with DEBCONF_DEBUG='.*' set and exported. This speeds up debugging a lot.
de: Den vollständigen Text jeder Fehlermeldung. Falls Sie den Fehler reproduzieren können, tun Sie dies mit auf gesetztem und exportiertem DEBCONF_DEBUG='.*'.Dies beschleunigt die Fehlersuche sehr.

note: type: Plain text
en: debconf - developers guide
de: debconf - Leitfaden für Entwickler

note: type: Plain text
en: This is a guide for developing packages that use debconf.
de: Dies ist ein Leitfaden zum Entwickeln von Paketen, die Debconf benutzen.

note: type: Plain text
en: This manual assumes that you are familiar with debconf as a user, and are familiar with the basics of debian package construction.
de: Dieses Handbuch nimmt an, dass Sie als Benutzer mit Debconf und mit den Grundlagen der Konstruktion von Debian-Paketen vertraut sind.

note: type: Plain text
en: This manual begins by explaining two new files that are added to debian packages that use debconf. Then it explains how the debconf protocol works, and points you at some libraries that will let your programs speak the protocol. It discusses other maintainer scripts that debconf is typically used in: the postinst and postrm scripts. Then moves on to more advanced topics like shared debconf templates, debugging, and some common techniques and pitfalls of programming with debconf. It closes with a discussion of debconf's current shortcomings.
de: Dieses Handbuch beginnt, indem zwei neue Dateien erklärt werden, die Debian-Paketen hinzugefügt werden, die Debconf benutzen. Dann erklärt es, wie das Debconf-Protokoll arbeitet und verweist Sie auf einige Bibliotheken, die Ihre Programme das Protokoll sprechen lassen. Es diskutiert andere Betreuer-Skripte, in denen Debconf typischerweise benutzt wird: die Skripte postinst und postrm. Dann geht es weiter zu fortgeschritteneren Themen, wie gemeinsam benutzte Debconf-Vorlagen, Fehlersuche und einige allgemeine Techniken und Stolperfallen der Programmierung mit Debconf. Es schließt mit einer Diskussion Debconfs gegenwärtiger Einschränkungen.

note: type: SH
en: THE CONFIG SCRIPT
de: DAS SKRIPT CONFIG

note: type: Plain text
en: Debconf adds an additional maintainer script, the config script, to the set of maintainer scripts that can be in debian packages (the postinst, preinst, postrm, and prerm). The config script is responsible for asking any questions necessary to configure the package.
de: Debconf fügt ein zusätzliches Betreuer-Skript, das Skript config, zu der Reihe von Betreuer-Skripten, die in Debian-Paketen sein können (preinst, postinst, prerm und postrm), hinzu. Das Skript config ist verantwortlich dafür, alle für die Konfiguration des Paketes notwendigen Fragen zu stellen.

note: type: Plain text
en: Note: It is a little confusing that dpkg refers to running a package's postinst script as "configuring" the package, since a package that uses debconf is often fully pre-configured, by its config script, before the postinst ever runs. Oh well.
de: Anmerkung: Es ist ein wenig verwirrend, dass dpkg das Ausführen des Skriptes postinst eines Paketes als »Konfiguration« dieses Paketes bezeichnet, weil ein Paket, das Debconf benutzt, oft vor der ersten Ausführung von postinst durch sein Skript config bereits voll vorkonfiguriert ist. Ach ja.

note: type: Plain text
en: Like the postinst, the config script is passed two parameters when it is run. The first tells what action is being performed, and the second is the version of the package that is currently installed. So, like in a postinst, you can use dpkg --compare-versions on $2 to make some behavior happen only on upgrade from a particular version of a package, and things like that.
de: Wie dem Skript postinst werden config zwei Parameter übergeben wenn es ausgeführt wird. Der erste sagt, welche Aktion durchgeführt wird und der zweite ist die Version des Paketes, die gegenwärtig installiert ist. Also können Sie, wie in postinst, dpkg --compare-versions mit $2 benutzen, um ein bestimmtes Verhalten nur erfolgen zu lassen, wenn von einer bestimmten Version des Pakets aktualisiert wird und ähnliche Sachen.

note: type: Plain text
en: The config script can be run in one of three ways:
de: Das Skript config kann auf eine von drei Arten aufgerufen werden:

note: type: Plain text
en: If a package is pre-configured, with dpkg-preconfigure, its config script is run, and is passed the parameters "configure", and installed-version.
de: Falls ein Paket mit dpkg-preconfigure vorkonfiguriert wird, wird sein Skript config aufgerufen und ihm werden die Parameter »configure« und die installierte Version übergeben.

note: type: Plain text
en: When a package's postinst is run, debconf will try to run the config script then too, and it will be passed the same parameters it was passed when it is pre-configured. This is necessary because the package might not have been pre-configured, and the config script still needs to get a chance to run. See HACKS for details.
de: Wenn das postinst eines Paketes ausgeführt wird, versucht Debconf auch das Skript config auszuführen und ihm werden dieselben Parameter übergeben, die ihm übergeben werden, wenn es vorkonfiguriert wird. Dies ist notwendig, weil das Paket möglicherweise nicht vor-konfiguriert wurde und das Skript config noch eine Chance zum Laufen braucht. Siehe HACKS für Details.

note: type: Plain text
en: If a package is reconfigured, with dpkg-reconfigure, its config script it run, and is passed the parameters "reconfigure" and installed-version.
de: Falls ein Paket mit dpkg-reconfigure erneut konfiguriert wird, wird sein Skript config ausgeführt und ihm werden die Parameter »reconfigure« und installierte Version übergeben.

note: type: Plain text
en: Note that since a typical package install or upgrade using apt runs steps 1 and 2, the config script will typically be run twice. It should do nothing the second time (to ask questions twice in a row is annoying), and it should definitely be idempotent. Luckily, debconf avoids repeating questions by default, so this is generally easy to accomplish.
de: Beachten Sie, da es typisch ist, ein Paket mit APT zu installieren oder zu aktualisieren, Schritte eins und zwei laufen, das Skript config also zweimal ausgeführt wird. Es sollte beim zweiten Mal nichts tun (zweimal hintereinander Fragen zu stellen ist nervig) und es sollte definitiv idempotent sein. Glücklicherweise vermeidet es Debconf standardmäßig, Fragen wiederholt zu stellen, so dass dies generell einfach zu erreichen ist.

note: type: Plain text
en: Note that the config script is run before the package is unpacked. It should only use commands that are in essential packages. The only dependency of your package that is guaranteed to be met when its config script is run is a dependency (possibly versioned) on debconf itself.
de: Beachten Sie, dass das Skript config ausgeführt wird, bevor das Paket entpackt wird. Es sollte nur Befehle benutzen, die in essenziellen Paketen enthalten sind. Die einzige Abhängigkeit Ihres Paketes, die garantierterweise erfüllt ist, wenn sein Skript config läuft, ist eine (möglicherweise versionierte) Abhängigkeit von Debconf selbst.

note: type: Plain text
en: The config script should not need to modify the filesystem at all. It just examines the state of the system, and asks questions, and debconf stores the answers to be acted on later by the postinst script. Conversely, the postinst script should almost never use debconf to ask questions, but should instead act on the answers to questions asked by the config script.
de: Das Skript config sollte überhaupt nicht das Dateisystem verändern müssen. Es examiniert einfach den Zustand des Systems und stellt Fragen und Debconf speichert die Antworten, damit später vom Skript postinst nach Ihnen gehandelt wird. Umgekehrt sollte das Skript postinst fast nie Debconf benutzen, um Fragen zu stellen, sondern sollte stattdessen nach den Antworten auf die Fragen, die das Skript config gestellt hat, handeln.

note: type: SH
en: THE TEMPLATES FILE
de: DIE DATEI TEMPLATES

note: type: Plain text
en: A package that uses debconf probably wants to ask some questions. These questions are stored, in template form, in the templates file.
de: Ein Paket, das Debconf benutzt, möchte möglicherweise einige Fragen stellen. Diese Fragen werden in Vorlagenform in der Datei »templates« gespeichert.

note: type: Plain text
en: Like the config script, the templates file is put in the control.tar.gz section of a deb. Its format is similar to a debian control file; a set of stanzas separated by blank lines, with each stanza having a RFC822-like form:
de: Wie das Skript config, wird die Datei templates in dem Abschnitt control.tar.gz eines .deb abgelegt. Ihr Format ist ähnlich dem einer Debian-Control-Datei; eine Reihe von durch Leerzeichen getrennten Instanzen, wobei jeder dieser Instanzen eine Form ähnlich RFC822 hat:

note: type: Plain text
en:   Template: foo/bar
      Type: string
      Default: foo
      Description: This is a sample string question.
       This is its extended description.
       .
       Notice that:
        - Like in a debian package description, a dot
          on its own line sets off a new paragraph.
        - Most text is word-wrapped, but doubly-indented
          text is left alone, so you can use it for lists
          of items, like this list. Be careful, since
          it is not word-wrapped, if it's too wide
          it will look bad. Using it for short items
          is best (so this is a bad example).
de:   Template: foo/bar
      Type: string
      Default: foo
      Description: Dies ist ein Muster einer Zeichenkettenfrage.
       Dies ist die erweiterte Beschreibung.
       .
       Beachten Sie dass:
        - Wie in einer Paketbeschreibung Debians,
          leitet ein Punkt auf seiner eigenen Zeile
          einen neuen Absatz ein.
        - Der meiste Text wird wortweise umbrochen,
          aber zweifach eingerückter Text wird
          belassen, so dass Sie dies für Listen von
          Elementen benutzen können, wie diese Liste.
          Seien Sie vorsichtig, weil der Text nicht
          wortweise umbrochen wird, sieht er
          schlecht aus, falls er zu breit ist. Es für
          kurze Elemente benutzen ist am Besten
          (also ist dies ein schlechtes Beispiel).

note: type: Plain text
en:   Template: foo/baz
      Type: boolean
      Description: Clear enough, no?
       This is another question, of boolean type.
de:   Template: foo/baz
      Type: boolean
      Description: Klar genug, nein?
       Dies ist eine weitere Frage, vom Booleschen Typ.

note: type: Plain text
en: For some real-life examples of templates files, see /var/lib/dpkg/info/debconf.templates, and other .templates files in that directory.
de: Für einige Beispiele von Vorlagendatei aus dem wahren Leben, siehe /var\:/lib\:/dpkg\:/info\:/debconf\:.templates und andere auf .templates endende Dateien in dem Verzeichnis.

note: type: Plain text
en: Let's look at each of the fields in turn..
de: Lassen Sie uns jedes der Felder der Reihe nach ansehen:

note: type: TP
en: B<Template>
de: B<Template (Vorlage)>

note: type: Plain text
en: The name of the template, in the 'Template' field, is generally prefixed with the name of the package. After that the namespace is wide open; you can use a simple flat layout like the one above, or set up "subdirectories" containing related questions.
de: Dem Namen der Vorlage, in dem Feld »Template«, wird generell der Name des Paketes vorangestellt. Danach ist der Namensraum weit offen; Sie können ein einfaches flaches Layout wie das oben benutzen, oder »Unterverzeichnisse« aufsetzen, die verwandte Fragen enthalten.

note: type: TP
en: B<Type>
de: B<Type (Typ)>

note: type: Plain text
en: The type of the template determines what kind of widget is displayed to the user. The currently supported types are:
de: Der Typ der Vorlage bestimmt, welche Art von Oberflächen-Element dem Benutzer angezeigt wird. Die gegenwärtig unterstützten Typen sind:

note: type: TP
en: B<string>
de: B<string (Zeichenkette)>

note: type: Plain text
en: Results in a free-form input field that the user can type any string into.
de: Resultiert in einem Eingabefeld freier Form, in das der Benutzer jegliche Zeichenkette eingeben kann.

note: type: TP
en: B<password>
de: B<password (Passwort)>

note: type: Plain text
en: Prompts the user for a password. Use this with caution; be aware that the password the user enters will be written to debconf's database. You should probably clean that value out of the database as soon as is possible.
de: Gibt dem Benutzer eine Eingabeaufforderung für ein Passwort aus. Benutzen Sie dies mit Vorsicht; vergegenwärtigen Sie sich, dass das Passwort, das der Benutzer eingibt, in Debconfs Datenbank geschrieben wird. Sie sollten diesen Wert möglicherweise aus der Datenbank säubern, sobald dies möglich ist.

note: type: TP
en: B<boolean>
de: B<boolean (Boolesch)>

note: type: Plain text
en: A true/false choice.
de: Eine Auswahl »wahr/falsch« (true/false).

note: type: TP
en: B<select>
de: B<select (Auswahl)>

note: type: Plain text
en: A choice between one of a number of values. The choices must be specified in a field named 'Choices'. Separate the possible values with commas and spaces, like this:
de: Eine Auswahl aus einer Anzahl von Werten. Die Auswahlen müssen in einem »Choices« benannten Feld angegeben werden. Trennen Sie die möglichen Werte mit Komma und Leerzeichen, wie hier:

note: type: Plain text
en:   Choices: yes, no, maybe
de:   Choices: Ja, Nein, Vielleicht

note: type: TP
en: B<multiselect>
de: B<multiselect (Mehrfachauswahl)>

note: type: Plain text
en: Like the select data type, except the user can choose any number of items from the choices list (or choose none of them).
de: Wie der Datentyp select, außer dass der Benutzer eine beliebige Anzahl von Elementen aus der Auswahlliste auswählen kann (oder gar keins).

note: type: TP
en: B<note>
de: B<note (Anmerkung)>

note: type: Plain text
en: Rather than being a question per se, this datatype indicates a note that can be displayed to the user. It should be used only for important notes that the user really should see, since debconf will go to great pains to make sure the user sees it; halting the install for them to press a key.  It's best to use these only for warning about very serious problems, and the error datatype is often more suitable.
de: Statt per se eine Frage zu sein, gibt dieser Datentyp eine Anmerkung an, die dem Benutzer angezeigt werden kann. Sie sollte nur für wichtige Anmerkungen benutzt werden, die der Benutzer wirklich sehen sollte, weil Debconf großen Aufwand betreibt, um sicherzustellen, dass der Benutzer sie sieht; die Installation anhält, so dass der Benutzer eine Taste drückt. Es ist am Besten, dies nur für Warnungen über sehr ernsthafte Probleme zu benutzen, und oft ist der passendere Datentyp »error«.

note: type: TP
en: B<error>
de: B<error (Fehler)>

note: type: Plain text
en: This datatype is used for error messages, such as input validation errors.  Debconf will show a question of this type even if the priority is too high or the user has already seen it.
de: Dieser Datentyp wird für Fehlermeldungen benutzt, so wie Fehler bei der Eingabe-Validierung. Debconf zeigt eine Frage dieses Typs selbst dann, wenn die Priorität zu hoch ist oder der Benutzer sie bereits gesehen hat.

note: type: TP
en: B<title>
de: B<title (Titel)>

note: type: Plain text
en: This datatype is used for titles, to be set with the SETTITLE command.
de: Dieser Datentyp wird für Titel benutzt, die mit dem Befehl SETTITLE gesetzt werden.

note: type: TP
en: B<text>
de: B<text (Text)>

note: type: Plain text
en: This datatype can be used for fragments of text, such as labels, that can be used for cosmetic reasons in the displays of some frontends. Other frontends will not use it at all. There is no point in using this datatype yet, since no frontends support it well. It may even be removed in the future.
de: Dieser Datentyp kann für Textfragmente benutzt werden, zum Beispiel Beschriftungen, die aus kosmetischen Gründen in der Anzeige mancher Benutzerschnittstellen benutzt werden können. Andere Benutzerschnittstellen benutzen ihn überhaupt nicht. Es gibt noch keinen Anlass, diesen Datentyp zu benutzen, weil keine Benutzerschnittstelle ihn gut unterstützt. Er mag in der Zukunft sogar entfernt werden.

note: type: TP
en: B<Default>
de: B<Default (Vorgabe)>

note: type: Plain text
en: The 'Default' field tells debconf what the default value should be. For multiselect, it can be a list of choices, separated by commas and spaces, similar to the 'Choices' field. For select, it should be one of the choices. For boolean, it is "true" or "false", while it can be anything for a string, and it is ignored for passwords.
de: Das Feld »Default« sagt Debconf, was der Vorgabe-Wert sein sollte. Für den Datentyp multiselect kann es eine durch Komma und Leerzeichen getrennte Liste von Auswahlen sein, ähnlich dem Feld »Choices«. Für den Datentyp select sollte es eine der Auswahlmöglichkeiten sein. Für den Booleschen Datentyp ist es »true« oder »false«, während es bei einer Zeichenkette alles sein kann, und für Passwörter ignoriert wird.

note: type: Plain text
en: Don't make the mistake of thinking that the default field contains the "value" of the question, or that it can be used to change the value of the question. It does not, and cannot, it just provides a default value for the first time the question is displayed. To provide a default that changes on the fly, you'd have to use the SET command to change the value of a question.
de: Machen Sie nicht den Fehler zu denken, dass das Feld »Default« den »Wert« der Frage enthält, oder dass es benutzt werden kann, um den Wert der Frage zu ändern. Es tut dies nicht, und kann es nicht, es liefert lediglich einen Vorgabe-Wert, wenn die Frage das erste Mal angezeigt wird. Um eine Vorgabe zu liefern, die sich im Vorbeigehen ändert, müssten Sie den Befehl SET benutzen, um den Wert einer Frage zu ändern.

note: type: TP
en: B<Description>
de: B<Description (Beschreibung)>

note: type: Plain text
en: The 'Description' field, like the description of a Debian package, has two parts: A short description and an extended description. Note that some debconf frontends don't display the long description, or might only display it if the user asks for help. So the short description should be able to stand on its own.
de: Das Feld »Description« hat, wie die Beschreibung eines Debian-Paketes, zwei Teile: Eine Kurzbeschreibung und eine erweiterte Beschreibung. Beachten Sie, dass einige von Debconfs Benutzerschnittstellen die lange Beschreibung nicht anzeigen, oder sie nur anzeigen, falls der Benutzer um Hilfe bittet. Also sollte die Kurzbeschreibung für sich alleine stehen können.

note: type: Plain text
en: If you can't think up a long description, then first, think some more. Post to debian-devel. Ask for help. Take a writing class! That extended description is important. If after all that you still can't come up with anything, leave it blank. There is no point in duplicating the short description.
de: Falls Sie sich keine lange Beschreibung ausdenken können, dann denken Sie zuerst weiter nach. Schreiben Sie auf debian-devel. Bitten Sie um Hilfe. Besuchen Sie ein Schriftsteller-Seminar! Diese erweiterte Beschreibung ist wichtig. Falls Sie nach allem immer noch nichts haben, lassen Sie sie leer. Es gibt keinen Anlass, die Kurzbeschreibung zu kopieren.

note: type: Plain text
en: Text in the extended description will be word-wrapped, unless it is prefixed by additional whitespace (beyond the one required space). You can break it up into separate paragraphs by putting " ." on a line by itself between them.
de: Der Text in der erweiterten Beschreibung wird wortweise umbrochen, solange ihm nicht zusätzlicher Leerraum vorangestellt wird (über das eine erforderliche Leerzeichen hinaus). Sie können den Text auf getrennte Absätze verteilen, indem Sie » .« (Leerzeichen Punkt) auf eine eigene Zeile zwischen diesen setzen.

note: type: SH
en: QUESTIONS
de: FRAGEN

note: type: Plain text
en: A question is an instantiated template. By asking debconf to display a question, your config script can interact with the user. When debconf loads a templates file (this happens whenever a config or postinst script is run), it automatically instantiates a question from each template. It is actually possible to instantiate several independent questions from the same template (using the REGISTER command), but that is rarely necessary. Templates are static data that comes from the templates file, while questions are used to store dynamic data, like the current value of the question, whether a user has seen a question, and so on. Keep the distinction between a template and a question in mind, but don't worry too much about it.
de: Eine Frage ist eine instanziierte Vorlage. Indem Sie Debconf bitten, eine Frage anzuzeigen, kann Ihr Skript config mit dem Benutzer interagieren. Wenn Debconf eine Vorlagendatei lädt (dies passiert wann immer ein Skript config oder postinst ausgeführt wird), instanziiert es automatisch aus jeder Vorlage eine Frage. Es ist tatsächlich möglich, aus derselben Vorlage mehrere unabhängige Fragen zu instanziieren (indem man den Befehl REGISTER benutzt), aber das ist selten notwendig. Vorlagen sind statische Daten, die aus der Vorlagendatei kommen, während Fragen benutzt werden, um dynamische Daten, wie der aktuelle Wert der Frage, ob der Benutzer die Frage gesehen hat, und so weiter, zu speichern. Behalten Sie die Unterscheidung zwischen einer Vorlage und einer Frage im Sinne, aber sorgen Sie sich nicht zu sehr darum.

note: type: SH
en: SHARED TEMPLATES
de: GEMEINSAM BENUTZTE VORLAGEN

note: type: Plain text
en: It's actually possible to have a template and a question that are shared among a set of packages. All the packages have to provide an identical copy of the template in their templates files. This can be useful if a bunch of packages need to ask the same question, and you only want to bother the user with it once. Shared templates are generally put in the shared/ pseudo-directory in the debconf template namespace.
de: Es ist tatsächlich möglich, eine Vorlage und eine Frage zu haben, die von einer Reihe von Paketen gemeinsam benutzt werden. Alle Pakete müssen in ihren Vorlagedateien eine identische Kopie der Vorlage liefern. Dies kann nützlich sein, falls ein Haufen von Paketen dieselbe Frage stellen muss und Sie den Benutzer damit nur einmal belästigen wollen. Gemeinsam benutzte Vorlagen werden generell in Debconfs Vorlagennamensraum in dem Pseudo-Verzeichnis »shared/« eingerichtet.

note: type: SH
en: THE DEBCONF PROTOCOL
de: DAS DEBCONF-PROTOKOLL

note: type: Plain text
en: Config scripts communicate with debconf using the debconf protocol. This is a simple line-oriented protocol, similar to common internet protocols such as SMTP. The config script sends debconf a command by writing the command to standard output. Then it can read debconf's reply from standard input.
de: Die Skripte config können unter Benutzung des Debconf-Protokolls mit Debconf kommunizieren. Dies ist ein einfaches zeilen-orientiertes Protokoll, ähnlich gängigen Internetprotokollen wie SMTP. Das Skript config schickt Debconf einen Befehl, indem es den Befehl auf die Standardausgabe schreibt. Dann kann es Debconfs Antwort von der Standardeingabe lesen.

note: type: Plain text
en: Debconf's reply can be broken down into two parts: A numeric result code (the first word of the reply), and an optional extended result code (the remainder of the reply). The numeric code uses 0 to indicate success, and other numbers to indicate various kinds of failure. For full details, see the table in Debian policy's debconf specification document.
de: Debconfs Antwort kann auf zwei Teile aufgeteilt sein: Einen nummerischen Ergebniscode (das erste Wort der Antwort) und einen optionalen erweiterten Ergebniscode (der Rest der Antwort). Der nummerische Code benutzt 0, um Erfolg anzuzeigen, und andere Nummern, um verschiedene Arten von Fehlschlägen anzuzeigen. Für die vollen Details siehe die Tabelle im Dokument Debconf-Spezifikation in den Debian-Richtlinien (policy).

note: type: Plain text
en: The extended return code is generally free form and unspecified, so you should generally ignore it, and should certainly not try to parse it in a program to work out what debconf is doing. The exception is commands like GET, that cause a value to be returned in the extended return code.
de: Der erweiterte Rückgabewert ist generell formfrei und unspezifiziert, so dass Sie ihn generell ignorieren sollten, und sicherlich nicht versuchen sollten, ihn in einem Programm zu analysieren, um herauszuarbeiten, was Debconf tut. Die Ausnahme sind Befehle wie GET, die veranlassen, einen Wert in dem erweiterten Rückgabewert zurückzugeben.

note: type: Plain text
en: Generally you'll want to use a language-specific library that handles the nuts and bolts of setting up these connections to debconf and communicating with it.
de: Im Allgemeinen ist es sinnvoll, eine sprachspezifische Bibliothek benutzen, die sich um die Details der Einrichtung von und Kommunikation über diese Verbindungen mit Debconf kümmert.

note: type: Plain text
en: For now, here are the commands in the protocol. This is not the definitive definition, see Debian policy's debconf specification document for that.
de: Für soweit sind hier die Befehle in dem Protokoll. Dies ist nicht die maßgebliche Definition, siehe hierzu das Dokument der Debconf-Spezifikation in den Debian-Richtlinien.

note: type: TP
en: B<VERSION number>
de: B<VERSION> I<Nummer>

note: type: Plain text
en: You generally don't need to use this command. It exchanges with debconf the protocol version number that is being used. The current protocol version is 2.0, and versions in the 2.x series will be backwards-compatible. You may specify the protocol version number you are speaking and debconf will return the version of the protocol it speaks in the extended result code. If the version you specify is too low, debconf will reply with numeric code 30.
de: Im Allgemeinen brauchen Sie diesen Befehl nicht zu benutzen. Er tauscht mit Debconf die benutzte Versionsnummer des Protokolles aus. Die aktuelle Protokoll-Version ist 2.0, und Versionen in der 2.x Serie werden rückwärts-kompatibel sein. Sie können die Nummer der Protokoll-Version angeben, die Sie sprechen, und Debconf gibt die Protokoll-Version, die es spricht, in dem erweiterten Ergebniscode zurück. Falls die Version, die Sie angeben, zu niedrig ist, antwortet Debconf mit dem nummerischen Code 30.

note: type: TP
en: B<CAPB capabilities>
de: B<CAPB> I<Fähigkeiten>

note: type: Plain text
en: You generally don't need to use this command. It exchanges with debconf a list of supported capabilities (separated by spaces). Capabilities that both you and debconf support will be used, and debconf will reply with all the capabilities it supports.
de: Im Allgemeinen brauchen Sie diesen Befehl nicht zu benutzen. Er tauscht mit Debconf eine Liste unterstützter Fähigkeiten (getrennt durch Leerzeichen) aus. Fähigkeiten, die sowohl Debconf und Sie unterstützen, werden benutzt, und Debconf antwortet mit allen Fähigkeiten, die es unterstützt.

note: type: Plain text
en: If 'escape' is found among your capabilities, debconf will expect commands you send it to have backslashes and newlines escaped (as \e\e and \en respectively) and will in turn escape backslashes and newlines in its replies. This can be used, for example, to substitute multi-line strings into templates, or to get multi-line extended descriptions reliably using METAGET. In this mode, you must escape input text yourself (you can use B<debconf-escape>(1)  to help with this if you want), but the confmodule libraries will unescape replies for you.
de: Falls »escape« unter Ihren Fähigkeiten zu finden ist, erwartet Debconf, dass in den Befehlen, die Sie ihm schicken, Rückwärtsschrägstriche und Zeilenumbrüche geschützt sind (respektive als \e\e und \en) und es schützt im Gegenzug Rückwärtsschrägstriche und Zeilenumbrüche in seinen Antworten. Die kann zum Beispiel benutzt werden, um mehrzeilige Zeichenketten zu Vorlagen zu ersetzen, oder bei der Benutzung von METAGET mehrzeilige erweiterte Beschreibungen verlässlich zu bekommen. In diesem Modus müssen Sie Texteingaben selbst schützen (Sie können als Hilfe B<debconf-escape>(1) benutzen, falls Sie wollen), aber die confmodule-Bibliotheken entfernen für Sie den Schutz in Antworten.

note: type: TP
en: B<SETTITLE question>
de: B<SETTITLE> I<Frage>

note: type: Plain text
en: This sets the title debconf displays to the user, using the short description of the template for the specified question. The template should be of type title. You rarely need to use this command since debconf can automatically generate a title based on your package's name.
de: Dies setzt den Titel, den Debconf dem Benutzer anzeigt. Hierzu wird die Kurzbeschreibung der Vorlage für die angegebene Frage verwandt. Die Vorlage sollte vom Typ »Title« sein. Sie müssen diesen Befehl selten benutzen, weil Debconf automatisch einen Titel basierend auf dem Namen Ihres Paketes erstellt.

note: type: Plain text
en: Setting the title from a template means they are stored in the same place as the rest of the debconf questions, and allows them to be translated.
de: Setzen des Titel aus einer Vorlage bedeutet, dass sie am gleichen Ort wie der Rest der Debconf-Fragen gespeichert sind und dass eine Übersetzung erlaubt wird.

note: type: TP
en: B<TITLE string>
de: B<TITLE> I<Zeichenkette>

note: type: Plain text
en: This sets the title debconf displays to the user to the specified string.  Use of the SETTITLE command is normally to be preferred as it allows for translation of the title.
de: Dies setzt den Titel, den Debconf dem Benutzer anzeigt. Hierzu wird die angegebene Zeichenkette verwandt. Die Verwendung des Befehls »SETTITLE« wird normalerweise bevorzugt, da es die Übersetzung des Titels erlaubt.

note: type: TP
en: B<INPUT priority question>
de: B<INPUT> I<Priorität Frage>

note: type: Plain text
en: Ask debconf to prepare to display a question to the user. The question is not actually displayed until a GO command is issued; this lets several INPUT commands be given in series, to build up a set of questions, which might all be asked on a single screen.
de: Bitte Debconf, die Anzeige einer Frage an den Benutzer vorzubereiten. Die Frage wird solange nicht tatsächlich angezeigt, bis der Befehl GO gegeben wird; dies erlaubt es, mehrere INPUT-Befehle in Serie zu geben, um eine Reihe von Fragen aufzubauen, die alle auf einem einzelnen Bildschirm gestellt werden könnten.

note: type: Plain text
en: The priority field tells debconf how important it is that this question be shown to the user. The priority values are:
de: Das Feld Priorität sagt Debconf, wie wichtig es ist, dass diese Frage dem Benutzer angezeigt wird. Die Prioritäts-Werte sind:

note: type: Plain text
en: Very trivial items that have defaults that will work in the vast majority of cases; only control freaks see these.
de: Sehr triviale Elemente, die Vorgaben haben, die in der großen Mehrheit der Fälle funktionieren; nur Kontroll-Freaks sehen diese.

note: type: Plain text
en: Normal items that have reasonable defaults.
de: Normale Elemente, die vernünftige Vorgaben haben.

note: type: Plain text
en: Items that don't have a reasonable default.
de: Elemente, die keine vernünftigen Vorgaben haben.

note: type: Plain text
en: Items that will probably break the system without user intervention.
de: Elemente, die möglicherweise ohne Intervention des Benutzers die Systemintegrität stören.

note: type: Plain text
en: Debconf decides if the question is actually displayed, based on its priority, and whether the user has seen it before, and which frontend is being used. If the question will not be displayed, debconf replies with code 30.
de: Debconf entscheidet, ob die Frage tatsächlich angezeigt wird, basierend auf seiner Priorität, und ob der Benutzer sie schon gesehen hat, und welche Benutzerschnittstelle benutzt wird. Falls die Frage nicht angezeigt wird, antwortet Debconf mit Code 30.

note: type: Plain text
en: Tells debconf to display the accumulated set of questions (from INPUT commands) to the user.
de: Lässt Debconf die angesammelte Reihe von Fragen (aus den INPUT-Befehlen) dem Benutzer anzeigen.

note: type: Plain text
en: If the backup capability is supported and the user indicates they want to back up a step, debconf replies with code 30.
de: Falls die Fähigkeit backup unterstützt wird und der Benutzer anzeigt, dass er einen Schritt zurückgehen will, antwortet Debconf mit Code 30.

note: type: Plain text
en: Clears the accumulated set of questions (from INPUT commands) without displaying them.
de: Löscht die angesammelte Reihe von Fragen (aus den INPUT-Befehlen) ohne sie anzuzeigen.

note: type: Plain text
en: Some debconf frontends can display a number of questions to the user at once.  Maybe in the future a frontend will even be able to group these questions into blocks on screen. BEGINBLOCK and ENDBLOCK can be placed around a set of INPUT commands to indicate blocks of questions (and blocks can even be nested). Since no debconf frontend is so sophisticated yet, these commands are ignored for now.
de: Einige Debconf-Benutzerschnittstellen können eine Anzahl von Fragen dem Benutzer auf einmal anzeigen. Vielleicht kann zukünftig sogar eine Benutzerschnittstelle diese Fragen auf dem Bildschirm in Blöcke gruppieren. BEGINBLOCK und ENDBLOCK können um eine Reihe von INPUT-Befehlen platziert werden, um Blöcke von Fragen anzuzeigen (und Blöcke können sogar geschachtelt werden). Weil noch keine Debconf-Benutzerschnittstelle so fortgeschritten ist, werden diese Befehle derzeit ignoriert.

note: type: Plain text
en: This command tells debconf that you're done talking to it. Often debconf can detect termination of your program and this command is not necessary.
de: Dieser Befehl sagt Debconf, dass Sie fertig damit sind, mit ihm zu reden. Oft kann Debconf die Beendigung Ihres Programmes erkennen und dieser Befehl ist nicht notwendig.

note: type: TP
en: B<GET question>
de: B<GET> I<Frage>

note: type: Plain text
en: After using INPUT and GO to display a question, you can use this command to get the value the user entered. The value is returned in the extended result code.
de: Nach der Benutzung von INPUT und GO, um eine Frage anzuzeigen, können Sie diesen Befehl benutzen, um den Wert zu erhalten, den der Benutzer eingegeben hat. Der Wert wird in dem erweiterten Ergebniscode zurückgegeben.

note: type: TP
en: B<SET question value>
de: B<SET> I<Frage Wert>

note: type: Plain text
en: This sets the value of a question, and it can be used to override the default value with something your program calculates on the fly.
de: Dies setzt den Wert einer Frage, und es kann benutzt werden, um die Vorgabe zu überstimmen, mit etwas, das Ihr Programm direkt berechnet.

note: type: TP
en: B<RESET question>
de: B<RESET> I<Frage>

note: type: Plain text
en: This resets the question to its default value (as is specified in the 'Default' field of its template).
de: Dies setzt die Frage wieder auf ihren Vorgabe-Wert (wie er in dem Feld »Default« ihrer Vorlage angegeben ist).

note: type: TP
en: B<SUBST question key value>
de: B<SUBST> I<Frage Schlüssel Wert>

note: type: Plain text
en: Questions can have substitutions embedded in their 'Description' and 'Choices' fields (use of substitutions in 'Choices' fields is a bit of a hack though; a better mechanism will eventually be developed). These substitutions look like "${key}". When the question is displayed, the substitutions are replaced with their values. This command can be used to set the value of a substitution. This is useful if you need to display some message to the user that you can't hard-code in the templates file.
de: Fragen können in ihren Feldern »Description« und »Choices« Ersetzungen eingebettet haben (die Benutzung von Ersetzungen in »Choices«-Feldern ist allerdings ein wenig ein Hack; ein besserer Mechanismus wird irgendwann einmal entwickelt). Diese Ersetzungen sehen aus wie »${schlüssel}«. Wenn die Frage angezeigt wird, werden die Ersetzungen mit ihren Werten gefüllt. Dieser Befehl kann benutzt werden, um den Wert einer Ersetzung zu setzen. Dies ist nützlich, falls Sie dem Benutzer eine Meldung anzeigen müssen, die Sie nicht fest in der Vorlagen-Datei kodieren können.

note: type: Plain text
en: Do not try to use SUBST to change the default value of a question; it won't work since there is a SET command explicitly for that purpose.
de: Versuchen Sie nicht, SUBST zu benutzen, um den Vorgabe-Wert einer Frage zu ändern; es wird nicht funktionieren, da es für diesen Zweck explizit einen Befehl SET gibt.

note: type: TP
en: B<FGET question flag>
de: B<FGET> I<Frage Schalter>

note: type: Plain text
en: Questions can have flags associated with them. The flags can have a value of "true" or "false". This command returns the value of a flag.
de: Fragen können Schalter assoziiert werden. Die Schalter können die Werte »true« oder »false« haben. Dieser Befehl gibt den Wert eines Schalters zurück.

note: type: TP
en: B<FSET question flag value>
de: B<FSET> I<Frage Schalter Wert>

note: type: Plain text
en: This sets the value of a question's flag. The value must be either "true" or "false".
de: Dies setzt den Wert eines Schalters einer Frage. Der Wert muss entweder »true« oder »false« sein.

note: type: Plain text
en: One common flag is the "seen" flag. It is normally only set if a user has already seen a question. Debconf usually only displays questions to users if they have the seen flag set to "false" (or if it is reconfiguring a package).  Sometimes you want the user to see a question again -- in these cases you can set the seen flag to false to force debconf to redisplay it.
de: Ein gängiger Schalter ist der Schalter »seen«. Es ist normalerweise nur gesetzt, falls ein Benutzer eine Frage bereits gesehen hat. Debconf zeigt Benutzern für gewöhnlich nur Fragen an, falls der Schalter »seen« auf »false« gesetzt ist (oder falls es ein Paket erneut konfiguriert). Manchmal wollen Sie, dass der Benutzer eine Frage erneut sieht -- in diesen Fällen können Sie den Schalter »seen« auf »false« setzen, um von Debconf zu erzwingen, dass es die Frage erneut anzeigt.

note: type: TP
en: B<METAGET question field>
de: B<METAGET> I<Frage Feld>

note: type: Plain text
en: This returns the value of any field of a question's associated template (the Description, for example).
de: Dies gibt den Wert eines jeglichen Felds der einer Frage zugeordneten Vorlage (zum Beispiel die Beschreibung) zurück.

note: type: TP
en: B<REGISTER template question>
de: B<REGISTER> I<Vorlage Frage>

note: type: Plain text
en: This creates a new question that is bound to a template. By default each template has an associated question with the same name. However, any number of questions can really be associated with a template, and this lets you create more such questions.
de: Dies erzeugt eine neue Frage, die an eine Vorlage gebunden ist. Standardmäßig hat jede Vorlage eine zugeordnete Frage mit demselben Namen. Jedoch kann wirklich jede Anzahl Fragen mit einer Vorlage assoziiert sein, und dies lässt Sie mehr solcher Fragen erzeugen.

note: type: TP
en: B<UNREGISTER question>
de: B<UNREGISTER> I<Frage>

note: type: Plain text
en: This removes a question from the database.
de: Dies entfernt eine Frage aus der Datenbank.

note: type: Plain text
en: Call this in your postrm when your package is purged. It removes all of your package's questions from debconf's database.
de: Rufen Sie dies in Ihrem postrm auf, wenn Ihr Paket vollständig entfernt wird. Es entfernt alle Fragen Ihres Paketes aus Debconfs Datenbank.

note: type: TP
en: B<X_LOADTEMPLATEFILE /path/to/templates [owner]>
de: B<X_LOADTEMPLATEFILE> I</pfad/zu/templates> [I<Eigentümer>]

note: type: Plain text
en: This extension loads the specified template file into debconf's database.  The owner defaults to the package that is being configured with debconf.
de: Diese Erweiterung lädt die angegebene Vorlage-Datei in Debconfs Datenbank. Der Eigentümer ist standardmäßig das Paket, das mit Debconf konfiguriert wird.

note: type: Plain text
en: Here is a simple example of the debconf protocol in action.
de: Hier ist ein einfaches Beispiel des Debconf-Protokolles in Aktion.

note: type: Plain text
en:   INPUT medium debconf/frontend
      30 question skipped
      FSET debconf/frontend seen false
      0 false
      INPUT high debconf/frontend
      0 question will be asked
      GO
      [ Here debconf displays a question to the user. ]
      0 ok
      GET no/such/question
      10 no/such/question doesn't exist
      GET debconf/frontend
      0 Dialog
de:   INPUT medium debconf/frontend
      30 question skipped
      FSET debconf/frontend seen false
      0 false
      INPUT high debconf/frontend
      0 question will be asked
      GO
      [ I<Hier zeigt Debconf dem Benutzer eine Frage an.> ]
      0 ok
      GET no/such/question
      10 no/such/question doesn't exist
      GET debconf/frontend
      0 Dialog

note: type: SH
en: LIBRARIES
de: BIBLIOTHEKEN

note: type: Plain text
en: Setting things up so you can talk to debconf, and speaking the debconf protocol by hand is a little too much work, so some thin libraries exist to relieve this minor drudgery.
de: Die Dinge von Hand aufsetzen, so dass Sie mit Debconf reden können und das Debconf-Protokoll sprechen ist ein wenig zu viel Arbeit, also existieren einige schlanke Bibliotheken, um diese kleinere Schinderei zu erleichtern.

note: type: Plain text
en: For shell programming, there is the /usr/share/debconf/confmodule library, which you can source at the top of a shell script, and talk to debconf in a fairly natural way, using lower-case versions of the debconf protocol commands, that are prefixed with "db_" (ie, "db_input" and "db_go"). For details, see B<confmodule>(3)  .
de: Für Shell-Programmierung gibt es die Bibliothek /usr\:/share\:/debconf\:/confmodule, die Sie am Anfang eines Shell-Skriptes einlesen und mit Debconf auf ziemlich natürliche Art reden können, indem Sie klein-buchstabige Versionen der Befehle des Debconf-Protokolles benutzen, denen »db_« vorangestellt ist (zB »db_input« und »db_go«). Für Details siehe B<confmodule>(3).

note: type: Plain text
en: Perl programmers can use the B<Debconf::Client::ConfModule>(3pm)  perl module, and python programmers can use the debconf python module.
de: Perl-Programmierer können das Perl-Modul B<Debconf::\:Client::\:ConfModule>(3pm) und Python-Programmierer können das Python-Modul debconf benutzen.

note: type: Plain text
en: The rest of this manual will use the /usr/share/debconf/confmodule library in example shell scripts. Here is an example config script using that library, that just asks a question:
de: Der Rest dieses Handbuches benutzt die Bibliothek /usr\:/share\:/debconf\:/confmodule in Beispiel-Shell-Skripten. Hier ist ein Beispiel-Skript für config, das diese Bibliothek benutzt und einfach eine Frage stellt:

note: type: Plain text
en:   #!/bin/sh
      set -e
      . /usr/share/debconf/confmodule
      db_set mypackage/reboot-now false
      db_input high mypackage/reboot-now || true
      db_go || true
de:   #!/bin/sh
      set -e
      . /usr/share/debconf/confmodule
      db_set meinpaket/reboot-now false
      db_input high meinpaket/reboot-now || true
      db_go || true

note: type: Plain text
en: Notice the uses of "|| true" to prevent the script from dying if debconf decides it can't display a question, or the user tries to back up. In those situations, debconf returns a non-zero exit code, and since this shell script is set -e, an untrapped exit code would make it abort.
de: Bemerken Sie den Gebrauch von »|| true«, um zu vermeiden, dass sich das Skript vorzeitig beendet, falls Debconf entscheidet, dass es eine Frage nicht anzeigen kann oder der Benutzer versucht zurückzugehen. In diesen Situationen gibt Debconf einen Rückgabewert ungleich null zurück und da dies Shell-Skript mit »set -e« beginnt würde es ein nicht-abgefangener Rückgabewert abbrechen lassen.

note: type: Plain text
en: And here is a corresponding postinst script, that uses the user's answer to the question to see if the system should be rebooted (a rather absurd example..):
de: Und hier ist ein entsprechendes Skript postinst, das die Antwort des Benutzers auf die Frage benutzt, um zu sehen, ob das System neu gestartet werden sollte (ein eher absurdes Beispiel ...):

note: type: Plain text
en:   #!/bin/sh
      set -e
      . /usr/share/debconf/confmodule
      db_get mypackage/reboot-now
      if [ "$RET" = true ]; then
      	shutdown -r now
      fi
de:   #!/bin/sh
      set -e
      . /usr/share/debconf/confmodule
      db_get meinpaket/reboot-now
      if [ "$RET" = true ]; then
      	shutdown -r now
      fi

note: type: Plain text
en: Notice the use of the $RET variable to get at the extended return code from the GET command, which holds the user's answer to the question.
de: Bemerken Sie den Gebrauch der Variablen $RET, um den erweiterten Rückgabewert des Befehls GET zu erhalten, die die Antwort des Benutzers auf die Frage enthält.

note: type: SH
en: THE POSTINST SCRIPT
de: DAS SCRIPT POSTINST

note: type: Plain text
en: The last section had an example of a postinst script that uses debconf to get the value of a question, and act on it. Here are some things to keep in mind when writing postinst scripts that use debconf:
de: Der letzte Abschnitt enthielt ein Beispiel eines Skriptes postinst, das Debconf benutzt, um den Wert einer Frage zu erhalten und danach zu handeln. Hier nun einige Dinge, die Sie im Kopf behalten sollten, wenn Sie postinst-Skripte schreiben, die Debconf benutzen:

note: type: Plain text
en: Avoid asking questions in the postinst. Instead, the config script should ask questions using debconf, so that pre-configuration will work.
de: Vermeiden Sie es, im postinst Fragen zu stellen. Stattdessen sollte das Skript config Fragen unter Benutzung von Debconf stellen, so dass die Vor-Konfiguration funktioniert.

note: type: Plain text
en: Always source /usr/share/debconf/confmodule at the top of your postinst, even if you won't be running any db_* commands in it.  This is required to make sure the config script gets a chance to run (see HACKS for details).
de: Lesen Sie immer /usr\:/share\:/debconf\:/confmodule am Beginn Ihres postinst ein, selbst falls Sie in ihm keine Befehle db_* ausführen. Dies ist erforderlich, um sicherzustellen, dass das Skript config die Chance erhält zu laufen (siehe HACKS für Details).

note: type: Plain text
en: Avoid outputting anything to stdout in your postinst, since that can confuse debconf, and postinst should not be verbose anyway. Output to stderr is ok, if you must.
de: Vermeiden Sie, irgendwas auf die Standardausgabe auszugeben, weil das Debconf verwirren kann, und postinst sollte ohnehin nicht wortreich sein. Ausgabe auf die Standardfehlerausgabe ist in Ordnung, falls Sie müssen.

note: type: Plain text
en: If your postinst launches a daemon, make sure you tell debconf to STOP at the end, since debconf can become a little confused about when your postinst is done otherwise.
de: Falls Ihr postinst einen Daemon startet, stellen Sie sicher, dass Sie Debconf am Ende ein STOP übermitteln, weil Debconf sonst darüber, wann Ihr postinst zu Ende ist, ein wenig verwirrt werden kann.

note: type: Plain text
en: Make your postinst script accept a first parameter of "reconfigure". It can treat it just like "configure". This will be used in a later version of debconf to let postinsts know when they are reconfigured.
de: Lassen Sie Ihr Skript postinst einen ersten Parameter »reconfigure« akzeptieren. Es kann ihn genau wie »configure« behandeln. Dies wird in einer späteren Version von Debconf benutzt werden, um postinsts wissen zu lassen, dass sie erneut konfiguriert werden.

note: type: SH
en: OTHER SCRIPTS
de: ANDERE SKRIPTE

note: type: Plain text
en: Besides the config script and postinst, you can use debconf in any of the other maintainer scripts. Most commonly, you'll be using debconf in your postrm, to call the PURGE command when your package is purged, to clean out its entries in the debconf database. (This is automatically set up for you by B<dh_installdebconf>(1)B<,> by the way.)
de: Neben den Skripten config und postinst können Sie Debconf in jedem der anderen Betreuerskripten benutzen. Am gängigsten werden Sie Debconf in Ihrem postrm benutzen, um den Befehl PURGE aufzurufen, wenn Ihr Paket vollständig entfernt wird, um seine Einträge aus der Debconf-Datenbank zu säubern. (Dies wird übrigens automatisch für Sie von B<dh_installdebconf>(1) eingerichtet.)

note: type: Plain text
en: A more involved use of debconf would be if you want to use it in the postrm when your package is purged, to ask a question about deleting something. Or maybe you find you need to use it in the preinst or prerm for some reason. All of these uses will work, though they'll probably involve asking questions and acting on the answers in the same program, rather than separating the two activities as is done in the config and postinst scripts.
de: Ein umfassenderer Gebrauch von Debconf wäre es, falls Sie es im postrm benutzen wollten, wenn Ihr Paket vollständig entfernt wird, um eine Frage zu stellen, ob etwas gelöscht werden soll. Oder vielleicht finden Sie, dass Sie es aus irgendeinem Grund in Ihrem preinst oder prerm benutzen müssen. Alle diese Anwendungen werden funktionieren, obwohl sie es möglicherweise mit sich ziehen, in demselben Programm Fragen zu stellen und nach den Antworten zu handeln, statt diese beiden Aktivitäten zu trennen, wie es in den Skripten config und postinst geschieht.

note: type: Plain text
en: Note that if your package's sole use of debconf is in the postrm, you should make your package's postinst source /usr/share/debconf/confmodule, to give debconf a chance to load up your templates file into its database. Then the templates will be available when your package is being purged.
de: Beachten Sie, dass falls der einzige Gebrauch von Debconf Ihres Paketes im postrm ist, Sie das postinst Ihres Paketes /usr\%/share\%/debconf\%/confmodule einlesen lassen sollten, um Debconf die Chance zu geben, Ihre Vorlagendatei in seine Datenbank einzulesen. Dann werden die Vorlagen verfügbar sein, wenn Ihr Paket vollständig entfernt wird.

note: type: Plain text
en: You can also use debconf in other, standalone programs. The issue to watch out for here is that debconf is not intended to be, and must not be used as a registry. This is unix after all, and programs are configured by files in /etc, not by some nebulous debconf database (that is only a cache anyway and might get blown away). So think long and hard before using debconf in a standalone program.
de: Sie können Debconf auch in anderen, alleinstehenden Programmen benutzen. Sie müssen hierbei aufpassen, dass Debconf nicht als eine Registrierung ausgelegt ist und als solche nicht verwendet werden darf. Dies ist immer noch Unix und Programme werden durch Dateien in /etc konfiguriert, nicht von irgendeiner nebulösen Debconf-Datenbank (das ist ohnehin nur ein Zwischenspeicher und könnte entfernt werden). Also denken Sie lange und scharf nach bevor Sie Debconf in einem alleinstehenden Programm verwenden.

note: type: Plain text
en: There are times when it can make sense, as in the apt-setup program which uses debconf to prompt the user in a manner consistent with the rest of the debian install process, and immediately acts on their answers to set up apt's sources.list.
de: Es gibt Fälle, wo es Sinn ergeben kann, wie in dem Programm apt-setup. Es benutzt Debconf, um den Benutzer in einer Weise zu befragen, die konsistent mit dem Rest von Debians Installationsprozess ist und dann unmittelbar nach seinen Antworten handelt, um APTs sources.list einzurichten.

note: type: SH
en: LOCALIZATION
de: LOKALISIERUNG

note: type: Plain text
en: Debconf supports localization of templates files. This is accomplished by adding more fields, with translated text in them. Any of the fields can be translated. For example, you might want to translate the description into Spanish. Just make a field named 'Description-es' that holds the translation. If a translated field is not available, debconf falls back to the normal English field.
de: Debconf unterstützt die Lokalisierung von Vorlage-Dateien. Dies wird durch das Hinzufügen weiterer Felder erreicht, die übersetzten Text enthalten. Jedes der Felder kann übersetzt werden. Zum Beispiel könnten Sie die Beschreibung ins Spanische übersetzen wollen. Erstellen Sie einfach ein »Description-es« benanntes Feld, welches die Übersetzung enthält. Falls ein übersetztes Feld nicht verfügbar ist, greift Debconf auf das normale englische Feld zurück.

note: type: Plain text
en: Besides the 'Description' field, you should translate the 'Choices' field of a select or multiselect template. Be sure to list the translated choices in the same order as they appear in the main 'Choices' field. You do not need to translate the 'Default' field of a select or multiselect question, and the value of the question will be automatically returned in English.
de: Neben dem Feld »Description« sollten Sie das Feld »Choices« einer (Mehrfach-)Auswahl-Vorlage übersetzen. Stellen Sie sicher, dass Sie die übersetzten Optionen in derselben Reihenfolge auflisten, wie Sie in dem Hauptfeld »Choices« erscheinen. Sie brauchen nicht das Feld »Default« einer (Mehrfach-)Auswahl-Frage zu übersetzen, und der Wert der Frage wird automatisch auf Englisch zurückgegeben.

note: type: Plain text
en: You will find it easier to manage translations if you keep them in separate files; one file per translation. In the past, the B<debconf-getlang>(1)  and B<debconf-mergetemplate>(1)  programs were used to manage debian/template.ll files. This has been superseded by the B<po-debconf>(7)  package, which lets you deal with debconf translations in .po files, just like any other translations. Your translators will thank you for using this new improved mechanism.
de: Sie werden es einfacher finden, Übersetzungen zu verwalten, falls Sie sie in getrennten Dateien halten; eine Datei pro Übersetzung. In der Vergangenheit wurden die Programme B<debconf-getlang>(1) und B<debconf-mergetemplate>(1) benutzt, um Dateien debian/template.ll zu verwalten. Dies wurde durch das Paket B<po-debconf>(7) ersetzt, welches Sie mit Debconf-Übersetzungen in .po-Dateien agieren lässt, genauso wie mit anderen Übersetzungen. Ihre Übersetzer werden Ihnen den Gebrauch dieses neuen, verbesserten Mechanismus danken.

note: type: Plain text
en: For the details on po-debconf, see its man page. If you're using debhelper, converting to po-debconf is as simple as running the B<debconf-gettextize>(1)  command once, and adding a Build-Dependency on po-debconf and on debhelper (E<gt>= 4.1.13).
de: Für die Details zu po-debconf lesen Sie seine Handbuchseite. Falls Sie debhelper benutzen, ist das Konvertieren nach po-debconf ein einfaches einmaliges Ausführen des Befehls B<debconf-gettextize>(1) und das Hinzufügen einer Bauzeit-Abhängigkeit auf po-debconf und debhelper (E<gt>= 4.1.13).

note: type: SH
en: PUTTING IT ALL TOGETHER
de: DAS ALLES ZUSAMMENSETZEN

note: type: Plain text
en: So you have a config script, a templates file, a postinst script that uses debconf, and so on. Putting these pieces together into a debian package isn't hard. You can do it by hand, or can use B<dh_installdebconf>(1)  which will merge your translated templates, copy the files into the right places for you, and can even generate the call to PURGE that should go in your postrm script. Make sure that your package depends on debconf (E<gt>= 0.5), since earlier versions were not compatible with everything described in this manual. And you're done.
de: Nun haben Sie also ein Skript config, eine Datei templates, ein Skript postinst, das Debconf benutzt und so weiter. Diese Teile zu einem Debian-Paket zusammenzusetzen ist nicht schwer. Sie können es von Hand machen oder Sie können B<dh_installdebconf>(1) benutzen, welches Ihre übersetzten Vorlagen zusammenfügt, für Sie die Dateien an die richtigen Stellen kopiert, und das sogar den Aufruf von PURGE generieren kann, der in Ihren Skript postrm stehen sollte. Stellen Sie sicher, dass Ihr Paket von debconf (E<gt>= 0.5) abhängt, da frühere Versionen nicht mit allem in diesem Handbuch beschriebenen kompatibel waren. Und Sie sind fertig.

note: type: Plain text
en: Well, except for testing, debugging, and actually using debconf for more interesting things than asking a few basic questions. For that, read on..
de: Nun, außer was das Testen, die Fehlersuche und das tatsächliche Benutzen von Debconf für interessantere Dinge, als ein Paar grundlegende Fragen zu stellen, angeht. Lesen Sie dafür weiter.

note: type: SH
en: DEBUGGING
de: FEHLERSUCHE

note: type: Plain text
en: So you have a package that's supposed to use debconf, but it doesn't quite work. Maybe debconf is just not asking that question you set up. Or maybe something weirder is happening; it spins forever in some kind of loop, or worse. Luckily, debconf has plenty of debugging facilities.
de: Sie haben nun also ein Paket, welches Debconf benutzen soll, aber es funktioniert nicht so richtig. Vielleicht stellt Debconf einfach nicht die Fragen, die Sie eingerichtet haben. Oder vielleicht geschieht etwas verrückteres; es hängt in irgendeiner Endlosschleife, oder schlimmer. Glücklicherweise hat Debconf viele Fähigkeiten zur Fehlersuche.

note: type: Plain text
en: The first thing to reach for is the DEBCONF_DEBUG environment variable.  If you set and export DEBCONF_DEBUG=developer, debconf will output to stderr a dump of the debconf protocol as your program runs. It'll look something like this -- the typo is made clear:
de: Die erste Sache, nach der zu greifen ist, ist die Umgebungsvariable DEBCONF_DEBUG. Falls Sie DEBCONF_DEBUG=developer setzen und exportieren, gibt Debconf auf der Standardfehlerausgabe einen Abzug des Debconf-Protokolles aus, während Ihr Programm läuft. Er sieht ungefähr so aus -- der Tippfehler ist klar:

note: type: Plain text
en: It's rather useful to use debconf's readline frontend when you're debugging (in the author's opinion), as the questions don't get in the way, and all the debugging output is easily preserved and logged.
de: Es ist ziemlich nützlich (nach der Meinung des Autors), Debconfs Benutzerschnittstelle readline zu benutzen, während Sie auf der Fehlersuche sind, da die Fragen nicht im Weg sind, und alle Ausgabe zur Fehlersuche einfach aufbewahrt und protokolliert werden kann.

note: type: Plain text
en: If this environment variable is set to 'true', the frontend will display the values in Choices-C fields (if present) of select and multiselect templates rather than the descriptive values.
de: Falls diese Umgebungsvariable auf »true« gesetzt ist, wird die Benutzerschnittstelle die Werte statt die beschreibenden Werte in Choices-C-Feldern (so vorhanden) von select- und multiselect-Vorlagen anzeigen.

note: type: Plain text
en: Another useful tool is the B<debconf-communicate>(1)  program. Fire it up and you can speak the raw debconf protocol to debconf, interactively. This is a great way to try stuff out on the fly.
de: Ein weiteres nützliches Werkzeug ist das Programm B<debconf-communicate>(1). Starten Sie es und Sie können interaktiv das rohe Debconf-Protokoll mit Debconf sprechen. Dies ist großartig, um Sachen im Vorbeigehen auszuprobieren.

note: type: Plain text
en: If a user is reporting a problem, B<debconf-show>(1)  can be used to dump out all the questions owned by your package, displaying their values and whether the user has seen them.
de: Falls ein Benutzer von einem Problem berichtet, kann B<debconf-show>(1) benutzt werden, um einen Abzug aller Fragen, die Ihr Paket besitzt, zu erstellen, unter Anzeige ihrer Werte und ob der Benutzer sie gesehen hat.

note: type: Plain text
en: To avoid the often tedious build/install/debug cycle, it can be useful to load up your templates with B<debconf-loadtemplate>(1)  and run your config script by hand with the B<debconf>(1)  command. However, you still have to do that as root, right? Not so good.  And ideally you'd like to be able to see what a fresh installation of your package looks like, with a clean debconf database.
de: Um den oft ermüdenden Zyklus Bauen/Installieren/Fehlersuchen zu vermeiden, kann es nützlich sein, Ihre Vorlagen mit B<debconf-loadtemplate>(1) zu laden, und Ihr Skript config von Hand mit dem Befehl B<debconf>(1) auszuführen. Jedoch müssen Sie dies immer noch als root machen, richtig? Nicht so gut. Und idealerweise würden Sie gerne sehen, wie eine frische Installation Ihres Paketes aussieht, mit einer sauberen Debconf-Datenbank.

note: type: Plain text
en: It turns out that if you set up a ~/.debconfrc file for a normal user, pointing at a personal config.dat and template.dat for the user, you can load up templates and run config scripts all you like, without any root access. If you want to start over with a clean database, just blow away the *.dat files.
de: Es stellt sich heraus, dass falls Sie eine Datei ~/.debconfrc für einen normalen Benutzer aufsetzen, die auf persönliche config.dat und template.dat für diesen Benutzer verweist, Sie nach Belieben ohne irgendeinen root-Zugriff Vorlagen laden und config-Skripte ausführen können. Falls Sie mit einer sauberen Datenbank von Vorne beginnen möchten, löschen Sie einfach die Dateien *.dat.

note: type: Plain text
en: For details about setting this up, see B<debconf.conf>(5)B<,> and note that /etc/debconf.conf makes a good template for a personal ~/.debconfrc file.
de: Für Details, dies aufzusetzen, siehe B<debconf.conf>(5) und beachten Sie dass /etc/debconf.conf eine gute Vorlage für eine persönliche Datei ~/.debconfrc abgibt.

note: type: SH
en: ADVANCED PROGRAMMING WITH DEBCONF
de: FORTGESCHRITTENES PROGRAMMIEREN MIT DEBCONF

note: type: SS
en: Config file handling
de: Handhabung von Konfigurationsdateien

note: type: Plain text
en: Many of you seem to want to use debconf to help manage config files that are part of your package. Perhaps there is no good default to ship in a conffile, and so you want to use debconf to prompt the user, and write out a config file based on their answers. That seems easy enough to do, but then you consider upgrades, and what to do when someone modifies the config file you generate, and dpkg-reconfigure, and ...
de: Viele von Ihnen scheinen Debconf benutzen zu wollen, um bei der Verwaltung von Konfigurationsdateien zu helfen, die Teil Ihres Paketes sind. Vielleicht gibt es keine gute Voreinstellung, die man mit einem Conffile ausliefern könnte, und deshalb wollen Sie Debconf benutzen, um den Benutzer zu fragen und basierend auf seinen Antworten eine Konfigurationsdatei schreiben. Das scheint einfach genug zu erledigen, aber dann denken Sie an Upgrades, und was zu tun ist, wenn jemand die von Ihnen generierte Konfigurationsdatei verändert, und dpkg-reconfigure, und ...

note: type: Plain text
en: There are a lot of ways to do this, and most of them are wrong, and will often earn you annoyed bug reports. Here is one right way to do it. It assumes that your config file is really just a series of shell variables being set, with comments in between, and so you can just source the file to "load" it.  If you have a more complicated format, reading (and writing) it becomes a bit trickier.
de: Es gibt viele Arten dies zu machen, und die meisten von ihnen sind falsch und werden Ihnen oft verärgerte Fehlerberichte einbringen. Hier gibt es einen richtigen Weg, es zu machen. Er nimmt an, dass Ihre Konfigurationsdatei wirklich nur eine Reihe von gesetzten Shell-Variablen ist, mit Kommentaren dazwischen, und Sie deshalb die Datei nur einzulesen brauchen, um sie zu »laden«. Falls Sie ein komplizierteres Format haben, wird es ein wenig verzwickter, sie zu lesen (und zu schreiben).

note: type: Plain text
en: Your config script will look something like this:
de: Ihr Skript config sollte ungefähr so aussehen:

note: type: Plain text
en:  # Load config file, if it exists.
     if [ -e $CONFIGFILE ]; then
     	. $CONFIGFILE || true
de:  # Laden die Konfigurationsdatei,
     # falls sie existiert.
     if [ -e $CONFIGFILE ]; then
     	. $CONFIGFILE || true

note: type: Plain text
en:  	# Store values from config file into
     	# debconf db.
     	db_set mypackage/foo "$FOO"
     	db_set mypackage/bar "$BAR"
     fi
de:  	# Speicher Werte aus der
     	# Konfigurationsdatei in die
     	# Debconf-Datenbank.
     	db_set mypackage/foo "$FOO"
     	db_set mypackage/bar "$BAR"
     fi

note: type: Plain text
en:  # Ask questions.
     db_input medium mypackage/foo || true
     db_input medium mypackage/bar || true
     db_go || true
de:  # Stelle Fragen.
     db_input medium mypackage/foo || true
     db_input medium mypackage/bar || true
     db_go || true

note: type: Plain text
en: And the postinst will look something like this:
de: Und postinst sollte ungefähr so aussehen:

note: type: Plain text
en:  # Generate config file, if it doesn't exist.
     # An alternative is to copy in a template
     # file from elsewhere.
     if [ ! -e $CONFIGFILE ]; then
     	echo "# Config file for my package" E<gt> $CONFIGFILE
     	echo "FOO=" E<gt>E<gt> $CONFIGFILE
     	echo "BAR=" E<gt>E<gt> $CONFIGFILE
     fi
de:  # Generiere die Konfigurationsdatei,
     # falls sie nicht existiert. Eine
     # Alternative ist, von irgendwoanders eine
     # Vorlagen-Datei zu kopieren.
     if [ ! -e $CONFIGFILE ]; then
     	echo "# Config file for my package" E<gt> $CONFIGFILE
     	echo "FOO=" E<gt>E<gt> $CONFIGFILE
     	echo "BAR=" E<gt>E<gt> $CONFIGFILE
     fi

note: type: Plain text
en:  # Substitute in the values from the debconf db.
     # There are obvious optimizations possible here.
     # The cp before the sed ensures we do not mess up
     # the config file's ownership and permissions.
     db_get mypackage/foo
     FOO="$RET"
     db_get mypackage/bar
     BAR="$RET"
     cp -a -f $CONFIGFILE $CONFIGFILE.tmp
de:  # Setzen Sie die Werte aus den Debconf-DB ein.
     # Hier gibt es möglicherweise offensichtliche
     # Optimierungen. Das cp vor dem sed stellt
     # sicher, dass wir nicht die Besitzer und
     # Rechte der Konfigurationsdatei
     # durcheinanderbringen.
     db_get mypackage/foo
     FOO="$RET"
     db_get mypackage/bar
     BAR="$RET"
     cp -a -f $CONFIGFILE $CONFIGFILE.tmp

note: type: Plain text
en:  # If the admin deleted or commented some variables but then set
     # them via debconf, (re-)add them to the conffile.
     test -z "$FOO" || grep -Eq '^ *FOO=' $CONFIGFILE || \e
     	echo "FOO=" E<gt>E<gt> $CONFIGFILE
     test -z "$BAR" || grep -Eq '^ *BAR=' $CONFIGFILE || \e
     	echo "BAR=" E<gt>E<gt> $CONFIGFILE
de:  # Falls der Administrator einige Variablen gelöscht
     # oder auskommentiert, aber sie dann über Debconf
     # gesetzt hat, füge sie dem Conffile wieder hinzu.
     test -z "$FOO" || grep -Eq '^ *FOO=' $CONFIGFILE || \e
     	echo "FOO=" E<gt>E<gt> $CONFIGFILE
     test -z "$BAR" || grep -Eq '^ *BAR=' $CONFIGFILE || \e
     	echo "BAR=" E<gt>E<gt> $CONFIGFILE

note: type: Plain text
en: Consider how these two scripts handle all the cases. On fresh installs the questions are asked by the config script, and a new config file generated by the postinst. On upgrades and reconfigures, the config file is read in, and the values in it are used to change the values in the debconf database, so the admin's manual changes are not lost. The questions are asked again (and may or may not be displayed). Then the postinst substitutes the values back into the config file, leaving the rest of it unchanged.
de: Bedenken Sie, wie diese beiden Skripte alle Fälle handhaben. Bei einer frischen Installation stellt das Skript config die Fragen und postinst generiert eine neue Konfigurationsdatei. Bei Upgrades und erneutem Konfigurieren wird die Konfigurationsdatei eingelesen und die Werte darin werden benutzt, um die Werte in der Debconf-Datenbank zu ändern, so dass händische Änderungen des Administrators nicht verloren gehen. Die Fragen werden wieder gestellt (und werden möglicherweise angezeigt oder nicht angezeigt). Dann ersetzt postinst die Werte zurück in die Konfigurationsdatei, den Rest von ihr unverändert lassend.

note: type: SS
en: Letting the user back up
de: Den Benutzer zurück gehen lassen

note: type: Plain text
en: Few things are more frustrating when using a system like debconf than being asked a question, and answering it, then moving on to another screen with a new question on it, and realizing that hey, you made a mistake, with that last question, and you want to go back to it, and discovering that you can't.
de: Es gibt wenige Dinge, die frustrierender bei der Benutzung eines Systems wie Debconf sind, als dieses: Ihnen wird eine Frage gestellt und Sie beantworten sie, dann gehen Sie zu einem neuen Bildschirm mit einer neuen Frage, und Sie merken -- hoppla, dass Sie bei der letzten Frage einen Fehler gemacht haben, und Sie wollen zu ihr zurückgehen, und Sie erkennen, dass Sie dies nicht können.

note: type: Plain text
en: Since debconf is driven by your config script, it can't jump back to a previous question on its own but with a little help from you, it can accomplish this feat. The first step is to make your config script let debconf know it is capable of handling the user pressing a back button.  You use the CAPB command to do this, passing backup as a parameter.
de: Weil Debconf von Ihrem Skript config betrieben wird, kann es nicht von allein zu einer vorigen Frage zurückspringen, aber mit ein wenig Hilfe von Ihnen kann es dieses leisten. Der erste Schritt ist, dass Sie Ihr Skript config Debconf wissen lassen, dass es fähig ist, einen Druck des Benutzers auf den »Zurück«-Knopf zu handhaben. Um dies zu tun, benutzen Sie den Befehl CAPB, indem Sie »backup« als Parameter übergeben.

note: type: Plain text
en: Then after each GO command, you must test to see if the user asked to back up (debconf returns a code of 30), and if so jump back to the previous question.
de: Dann müssen Sie nach jedem Befehl »GO« testen, um zu sehen, ob der Benutzer angefordert hat, zurück zu gehen (Debconf gibt dann einen Code 30 zurück) und falls ja, müssen Sie zu der vorigen Frage zurück springen.

note: type: Plain text
en: There are several ways to write the control structures of your program so it can jump back to previous questions when necessary. You can write goto-laden spaghetti code. Or you can create several functions and use recursion. But perhaps the cleanest and easiest way is to construct a state machine. Here is a skeleton of a state machine that you can fill out and expand.
de: Es gibt mehrere Möglichkeiten, die Kontrollstrukturen Ihres Programmes zu schreiben, so dass sie bei Bedarf zu vorhergehenden Fragen zurückspringen können. Sie können Spaghetti-Code (voller GOTOs) schreiben. Oder Sie können mehrere Funktionen erstellen und Rekursion verwenden. Aber die wahrscheinlich sauberste und leichteste Art ist die Erstellung einer Zustandsmaschine. Hier ist ein Skelett einer Zustandsmaschine, das Sie ausfüllen und erweitern können:

note: type: Plain text
en:  STATE=1
     while true; do
     	case "$STATE" in
      	1)
      		# Two unrelated questions.
     		db_input medium my/question || true
     		db_input medium my/other_question || true
     	;;
     	2)
     		# Only ask this question if the
     		# first question was answered in
     		# the affirmative.
            	db_get my/question
     		if [ "$RET" = "true" ]; then
     			db_input medium my/dep_question || true
     		fi
      	;;
     	*)
     		# The default case catches when $STATE is greater than the
     		# last implemented state, and breaks out of the loop. This
     		# requires that states be numbered consecutively from 1
     		# with no gaps, as the default case will also be entered
     		# if there is a break in the numbering
     		break # exits the enclosing "while" loop
      	;;
      	esac
de:  ZUSTAND=1
     while true; do
     	case "$ZUSTAND" in
      	1)
      		# Zwei Fragen ohne Bezug zueinander.
     		db_input medium meine/frage || true
     		db_input medium meine/andere_frage || true
     	;;
     	2)
     		# Stelle diese Frage nur, falls die
     		# erste Frage positiv beantwortet
     		# wurde.
     		db_get meine/frage
     		if [ "$RET" = "true" ]; then
     			db_input medium meine/abhaengige_frage || true
     		fi
      	;;
     	*)
     		# Der Standard-Fall wird erreicht, wenn $ZUSTAND größer als
     		# der letzte implementierte Zustand ist und springt
     		# aus der Schleife heraus. Dies erfordert, dass die
     		# Zustände durchgehend ohne Lücken von 1 an
     		# nummeriert werden, weil der Standard-Fall auch erreicht
     		# wird, falls es eine Unterbrechung in der
     		# Nummerierung gibt.
     		break # verlässt die umschließende »while«-Schleife
     	;;
      	esac

note: type: Plain text
en:  	if db_go; then
     		STATE=$((STATE + 1))
     	else
     		STATE=$((STATE - 1))
     	fi
     done
de:  	if db_go; then
     		ZUSTAND=$((ZUSTAND + 1))
     	else
     		ZUSTAND=$((ZUSTAND - 1))
     	fi
     done

note: type: Plain text
en:  if [ $STATE -eq 0 ]; then
     	# The user has asked to back up from the first
     	# question. This case is problematical. Regular
     	# dpkg and apt package installation isn't capable
     	# of backing up questions between packages as this
     	# is written, so this will exit leaving the package
     	# unconfigured - probably the best way to handle
     	# the situation.
     	exit 10
     fi
de:  if [ $ZUSTAND -eq 0 ]; then
     	# Der Benutzer hat angefordert, von der ersten
     	# Frage aus zurückzugehen. Dieser Fall ist
     	# problematisch. Die reguläre Paket-Installation
     	# mit dpkg und APT ist nicht fähig, zwischen
     	# Fragen von zwei Paketen zurückzugehen,
     	# zumindest, als dies geschrieben wurde, also
     	# wird dies beenden, wobei das Paket
     	# unkonfiguriert bleibt - möglicherweise
     	# die beste Weise, die Situation zu behandeln.
     	exit 10
     fi

note: type: Plain text
en: Note that if all your config script does is ask a few unrelated questions, then there is no need for the state machine. Just ask them all, and GO; debconf will do its best to present them all in one screen, and the user won't need to back up.
de: Beachten Sie: Falls das Skript config nur ein Paar Fragen ohne Bezug zueinander stellt ist eine Zustandsmaschine unnötig. Stellen Sie einfach alle Fragen und sagen Sie »GO«; Debconf wird sein Bestes geben, sie alle auf einem Bildschirm anzuzeigen, und der Benutzer wird nicht zurück gehen müssen.

note: type: SS
en: Preventing infinite loops
de: Verhinderung von Endlosschleifen

note: type: Plain text
en: One gotcha with debconf comes up if you have a loop in your config script. Suppose you're asking for input and validating it, and looping if it's not valid:
de: Ein häufiger Fehler bei Debconf tritt in Erscheinung, falls Sie eine Schleife in Ihrem Skript config haben. Angenommen, Sie fordern eine Eingabe an und prüfen sie auf ihre Gültigkeit, und gehen in eine Schleife, falls sie nicht gültig ist:

note: type: Plain text
en: This looks ok at first glance. But consider what happens if the value of foo/bar is "" when this loop is entered, and the user has their priority set high, or is using a non-interactive frontend, and so they are not really asked for input. The value of foo/bar is not changed by the db_input, and so it fails the test and loops. And loops ...
de: Auf den ersten Blick sieht dies gut aus. Aber bedenken Sie, was passiert, falls der Wert von »foo/bar« leer (»«) ist, wenn diese Schleife betreten wird, und der Benutzer die Priorität auf »hoch« (high) gesetzt hat, oder er die nicht-interaktive Schnittstelle benutzt, und deshalb nicht wirklich um Eingabe gebeten wird. Der Wert von »foo/bar« wird von »db_input« nicht verändert, also scheitert der Test und wir bleiben in der Schleife. Und bleiben in der Schleife ...

note: type: Plain text
en: One fix for this is to make sure that before the loop is entered, the value of foo/bar is set to something that will pass the test in the loop. So for example if the default value of foo/bar is "1", then you could RESET foo/bar just before entering the loop.
de: Eine Korrektur hierfür ist, sicherzustellen, dass der Wert von »foo/bar« auf etwas gesetzt wird, das den Test in der Schleife passiert, bevor die Schleife betreten wird. Falls also zum Beispiel der Standardwert von »foo/bar« »1« ist, dann könnten Sie, gerade vor dem Betreten der Schleife, »RESET« anwenden, um den Wert von »foo/bar« zurück zu setzten.

note: type: Plain text
en: Another fix is to check the return code of the INPUT command. If it is 30 then the user is not being shown the question you asked them, and you should break out of the loop.
de: Eine weitere Korrektur besteht darin, den Rückgabewert des Befehls »INPUT« zu prüfen. Falls er 30 ist, dann wird dem Benutzer die Frage, die Sie ihm gestellt haben, nicht angezeigt, und Sie sollten die Schleife verlassen.

note: type: SS
en: Choosing among related packages
de: Zwischen verwandten Paketen auswählen

note: type: Plain text
en: Sometimes a set of related packages can be installed, and you want to prompt the user which of the set should be used by default. Examples of such sets are window managers, or ispell dictionary files.
de: Manchmal kann eine Reihe verwandter Pakete installiert sein und Sie wollen den Benutzer fragen, welches aus der Menge als Voreinstellung benutzt werden sollte. Beispiele solcher Mengen sind Fenster-Manager, oder Wörterbuch-Dateien für »ispell«.

note: type: Plain text
en: While it would be possible for each package in the set to simply prompt, "Should this package be default?", this leads to a lot of repetitive questions if several of the packages are installed. It's possible with debconf to present a list of all the packages in the set and allow the user to choose between them. Here's how.
de: Während es möglich wäre, dass jedes Paket in der Reihe einfach fragt, »Soll dieses Paket die Voreinstellung sein?«, führt dies zu vielen sich wiederholenden Fragen, falls mehrere der Pakete installiert werden. Mit Debconf ist es möglich, eine Liste aller Pakete der Menge anzuzeigen und dem Benutzer zu erlauben, zwischen ihnen zu wählen. Hier folgt wie.

note: type: Plain text
en: Make all the packages in the set use a shared template. Something like this:
de: Lassen Sie alle Pakete in der Menge eine gemeinsam benutzte Vorlage benutzen. Etwas wie dies:

note: type: Plain text
en: Each package should include a copy of the template. Then it should include some code like this in its config script:
de: Jedes Paket sollte eine Kopie der Vorlage beinhalten. Dann sollte es auch Code der folgenden Art in seinem Konfigurationsskript enthalten:

note: type: Plain text
en: A bit of an explanation is called for. By the time your config script runs, debconf has already read in all the templates for the packages that are being installed. Since the set of packages share a question, debconf records that fact in the owners field. By a strange coincidence, the format of the owners field is the same as that of the choices field (a comma and space delimited list of values).
de: Dies verlangt etwas Erklärung. Zu der Zeit zu der Ihr Skript config läuft hat Debconf bereits alle Vorlagen für die Pakete, die installiert werden, eingelesen. Weil die Menge von Paketen eine Frage gemeinsam benutzt, speichert Debconf diese Tatsache in dem Eigentümer-Feld. Durch eine merkwürdige Fügung haben das Eigentümer-Feld und das Auswahlen-Feld dasselbe Format (eine durch Komma und Leerzeichen getrennte Liste von Werten).

note: type: Plain text
en: The METAGET command can be used to get the list of owners and the list of choices. If they are different, then a new package has been installed. So use the SUBST command to change the list of choices to be the same as the list of owners, and ask the question.
de: Der Befehl »METAGET« kann benutzt werden, um die Liste der Eigentümer und die Liste der Auswahlen zu erhalten. Falls Sie verschieden sind wurde ein neues Paket installiert. Also benutzen Sie den Befehl »SUBST«, um die Liste der Auswahlen so zu ändern, dass sie die selbe ist, wie die Liste der Eigentümer, und stellen die Frage.

note: type: Plain text
en: When a package is removed, you probably want to see if that package is the currently selected choice, and if so, prompt the user to select a different package to replace it.
de: Wenn ein Paket entfernt wird, wollen Sie möglicherweise sehen, ob das Paket die gegenwärtig ausgewählte Auswahl ist, und falls ja, den Benutzer bitten, ein anderes Paket auszuwählen, um es zu ersetzen.

note: type: Plain text
en: This can be accomplished by adding something like this to the prerm scripts of all related packages (replacing E<lt>packageE<gt> with the package name):
de: Dies kann erreicht werden, in dem etwas der folgenden Art in die Prerm-Skripte aller betroffenen Pakete eingefügt wird (ersetzen Sie E<lt>PaketE<gt> durch den Namen des Pakets).

note: type: Plain text
en:  if [ -e /usr/share/debconf/confmodule ]; then
     	. /usr/share/debconf/confmodule
     	# I no longer claim this question.
     	db_unregister shared/window-manager
de:  if [ -e /usr/share/debconf/confmodule ]; then
     	. /usr/share/debconf/confmodule
     	# Ich beanspruche nicht mehr diese Frage.
     	db_unregister shared/window-manager

note: type: Plain text
en:  	# See if the shared question still exists.
     	if db_get shared/window-manager; then
     		db_metaget shared/window-manager owners
     		db_subst shared/window-manager choices $RET
     		db_metaget shared/window-manager value
     		if [ "E<lt>packageE<gt>" = "$RET" ] ; then
     			db_fset shared/window-manager seen false
     			db_input high shared/window-manager || true
     			db_go || true
     		fi
de:  	# Prüfe, ob die gemeinsam benutzte Frage noch existiert.
     	if db_get shared/window-manager; then
     		db_metaget shared/window-manager owners
     		db_subst shared/window-manager choices $RET
     		db_metaget shared/window-manager value
     		if [ "E<lt>PaketE<gt>" = "$RET" ] ; then
     			db_fset shared/window-manager seen false
     			db_input high shared/window-manager || true
     			db_go || true
     		fi

note: type: Plain text
en:  		# Now do whatever the postinst script did
     		# to update the window manager symlink.
     	fi
     fi
de:  		# Nun tun Sie, was immer das Skript postinst tat,
     		# um den symbolischen Link des Fenster-Managers
     		# zu aktualisieren.
     	fi
     fi

note: type: Plain text
en: Debconf is currently not fully integrated into dpkg (but I want to change this in the future), and so some messy hacks are currently called for.
de: Debconf ist derzeit nicht komplett in Dpkg integriert (ich möchte dies aber zukünftig ändern) und daher werden einige schmutzige Hacks benötigt.

note: type: Plain text
en: The worst of these involves getting the config script to run. The way that works now is the config script will be run when the package is pre-configured. Then, when the postinst script runs, it starts up debconf again. Debconf notices it is being used by the postinst script, and so it goes off and runs the config script. This can only work if your postinst loads up one of the debconf libraries though, so postinsts always have to take care to do that. We hope to address this later by adding explicit support to dpkg for debconf. The B<debconf>(1)  program is a step in this direction.
de: Der schlimmste von diesen beinhaltet, das Skript »config« zum Laufen zu bringen. Derzeit funktionniert es so, dass das Skript »config« ausgeführt wird, wenn das Paket vorkonfiguriert wird. Wenn dann das Skript »postinst« läuft, startet es Debconf erneut. Debconf bemerkt, dass es von dem Skript »postinst« benutzt wird, also fährt es fort und führt das Skript »config« aus. Dies kann allerdings nur funktionieren, falls Ihr »postinst« eine der Debconf-Bibliotheken lädt, so dass postinst-Skripte immer bedacht sein müssen, dies zu tun. Wir hoffen, uns dem später zuzuwenden, indem wir Dpkg explizite Unterstützung für Debconf hinzufügen. Das Programm B<debconf>(1) ist ein Schritt in diese Richtung.

note: type: Plain text
en: A related hack is getting debconf running when a config script, postinst, or other program that uses it starts up. After all, they expect to be able to talk to debconf right away. The way this is accomplished for now is that when such a script loads a debconf library (like /usr/share/debconf/confmodule), and debconf is not already running, it is started up, and a new copy of the script is re-execed. The only noticeable result is that you need to put the line that loads a debconf library at the very top of the script, or weird things will happen. We hope to address this later by changing how debconf is invoked, and turning it into something more like a transient daemon.
de: Ein verwandter Hack ist es, Debconf zum Laufen zu bringen, wenn ein Skript »config«, »postinst« oder ein anderes Programm, das es benutzt, startet. Schließlich erwarten sie, sofort mit Debconf reden zu können. Derzeit wird dies erreicht, dass wenn solch ein Skript eine Debconf-Bibliothek lädt (wie /usr/share/debconf/confmodule) und Debconf noch nicht läuft, es gestartet wird und eine neue Kopie des Skripts wieder ausgeführt wird. Das einzige spürbare Ergebnis ist, dass Sie die Zeile, die eine Debconf-Bibliothek lädt, ganz an den Anfang des Skripts setzen müssen (andernfalls passieren komische Dinge). Wir hoffen, uns dem später zuzuwenden, indem wir ändern, wie Debconf aufgerufen wird, und indem wir es in etwas einem vorübergehenden Daemon ähnlicheres verwandeln.

note: type: Plain text
en: It's rather hackish how debconf figures out what templates files to load, and when it loads them. When the config, preinst, and postinst scripts invoke debconf, it will automatically figure out where the templates file is, and load it. Standalone programs that use debconf will cause debconf to look for templates files in /usr/share/debconf/templates/progname.templates.  And if a postrm wants to use debconf at purge time, the templates won't be available unless debconf had a chance to load them in its postinst. This is messy, but rather unavoidable. In the future some of these programs may be able to use debconf-loadtemplate by hand though.
de: Es ähnelt ziemlich einem Hack, wie Debconf herausfindet, welche Vorlagen-Dateien es laden muss und wann es sie lädt. Wenn die Skripte »config«, »preinst« und »postinst« Debconf aufrufen, findet es automatisch heraus, wo die Vorlagen-Datei ist, und lädt sie. Alleinstehende Programme veranlassen Debconf dazu, die Vorlagen-Dateien unter /usr/share/debconf/templates/I<Programmname>.templates zu suchen. Und falls ein Skript »postrm« Debconf benutzen will, wenn sein Paket vollständig entfernt wird, werden die Vorlagen nicht verfügbar sein, falls Debconf keine Gelegenheit hatte, sie in seinem »postinst« zu laden. Dies ist unordentlich, aber ziemlich unvermeidbar. In der Zukunft dürften allerdings einige dieser Programme in der Lage sein, B<debconf-loadtemplate>(1) von Hand zu benutzen.

note: type: Plain text
en: /usr/share/debconf/confmodule's historic behavior of playing with file descriptors and setting up a fd #3 that talks to debconf, can cause all sorts of trouble when a postinst runs a daemon, since the daemon ends up talking to debconf, and debconf can't figure out when the script terminates. The STOP command can work around this. In the future, we are considering making debconf communication happen over a socket or some other mechanism than stdio.
de: /usr/share/debconf/confmodules historisches Verhalten, mit Datei-Deskriptoren zu spielen und einen Datei-Deskriptor #3 einzurichten, der mit Debconf spricht, kann alle Arten von Problemen verursachen, wenn ein »postinst« einen Dämon ausführt, weil es dazu kommt, dass der Dämon mit Debconf spricht, und Debconf nicht herausfinden kann, wann das Skript beendet wird. Der Befehl STOP kann dies umgehen. Für die Zukunft überlegen wir, die Debconf-Kommunikation über ein Socket oder irgendeinen anderen Mechanismus als Standardein-/-ausgabe geschehen lassen.

note: type: Plain text
en: Debconf sets DEBCONF_RECONFIGURE=1 before running postinst scripts, so a postinst script that needs to avoid some expensive operation when reconfigured can look at that variable. This is a hack because the right thing would be to pass $1 = "reconfigure", but doing so without breaking all the postinsts that use debconf is difficult. The migration plan away from this hack is to encourage people to write postinsts that accept "reconfigure", and once they all do, begin passing that parameter.
de: Debconf setzt DEBCONF_RECONFIGURE=1 bevor es »postinst«-Skripte ausführt, also kann ein Skript »postinst«, das bei erneuter Konfiguration irgendeine aufwendige Operation vermeiden muss, auf diese Variable schauen. Dies ist ein Hack, weil das Richtige wäre, »reconfigure« als ersten Parameter zu übergeben, aber dies zu tun, ohne alle die »postinst«-Skripte, die Debconf benutzen, zu beschädigen, ist schwierig. Der Migrations-Plan weg von diesem Hack besteht darin, die Leute zu ermuntern, »postinst«-Skripte zu schreiben, die »reconfigure« akzeptieren, und sobald dies alle tun, beginnen, diesen Parameter zu übergeben.

note: type: Plain text
en: B<debconf>(7)  is the debconf user's guide.
de: B<debconf>(7) ist der Benutzerleitfaden von Debconf.

note: type: Plain text
en: The debconf specification in debian policy is the canonical definition of the debconf protocol. /usr/share/doc/debian-policy/debconf_specification.txt.gz
de: Die Debconf-Spezifikation in den Debian-Richtlinien (»policy«) ist die kanonische Definition des Debconf-Protokolls. /usr/share/doc/debian-policy/debconf_specification.txt.gz

note: type: Plain text
en: B<debconf.conf>(5)  has much useful information, including some info about the backend database.
de: In B<debconf.conf>(5) sind viele nützliche Informationen, darunter auch über die Backend-Datenbank.
