On Mon, 22 Jul 2002 08:05:30 +0200, Marc Haber
<[EMAIL PROTECTED]> wrote:
>Das ist leider nicht akzeptabel, da keines meiner Systeme einem
>anderen gleicht. Mir geht es darum, die Standardfragen von netbase,
>less etc. nicht zigmal beantworten zu m�ssen, _ohne_ die Fragen der
>"spezielleren" Packages zu verpassen.
Das Problem l�sst sich durch folgenden Ansatz l�sen:
Ein script "mergedebconf":
|#!/usr/bin/perl -w
|
|use strict;
|
|my %records;
|
|$/="";
|
|while( <> ) {
| chomp;
| if( my ($name)=/^Name: (\S+)/m ) {
| $records{$name}=$_;
| } else {
| die "no Name clause in record\n";
| }
|}
|
|foreach (sort keys %records) {
| print "$records{$_}\n\n";
|}
Nach dem Update von debconf auf die aktuelle Version nehme man sich
eine Datei globals.dat, die die Debconf-Datenbank-Records mit dem
gew�nschten Inhalt enth�lt. Hier ein Beispiel, das die deutsche
Tastatur einstellt:
|Name: console-data/keymap/policy
|Template: console-data/keymap/policy
|Value: Select keymap from arch list
|Owners: console-common, console-data
|Flags: seen
|
|Name: console-data/keymap/family
|Template: console-data/keymap/family
|Value: qwertz
|Owners: console-common, console-data
|Flags: seen
|Variables:
| choices = azerty, dvorak, fgGIod, qwerty, qwertz
|
|Name: console-data/keymap/qwertz/layout
|Template: console-data/keymap/template/layout
|Value: German
|Owners: console-data
|Flags: seen
|Variables:
| choices = Croat, Czech, German, Hungarian, Serbian, Slovak, Slovene, Swiss
|
|Name: console-data/keymap/qwertz/german/variant
|Template: console-data/keymap/template/variant
|Value: Standard
|Owners: console-data
|Flags: seen
|Variables:
| choices = Apple USB, Standard
|
|Name: console-data/keymap/qwertz/german/standard/keymap
|Template: console-data/keymap/template/keymap
|Value: latin1 - no dead keys
|Owners: console-data
|Flags: seen
|Variables:
| choices = Programmer, latin1, latin1 - no dead keys
Die Ausgabe von mergedebconf /var/cache/debconf/config.dat global.dat
schiebe man nun nach /var/cache/debconf/config.dat und kann nun wie
gew�nscht installieren, ohne noch einmal behelligt zu werden.
Das Script liest beide Dateien Record f�r Record ein, und schreibt
dann auf seine Ausgabe jeweils den letzten Record, den er f�r einen
Namen gefunden hat. Das sorgt daf�r, dass die Records aus der
global.dat die aus der config.dat vollst�ndig ersetzen, was das
gew�nchte Verhalten erzeugt.
Gr��e
Marc
--
-------------------------------------- !! No courtesy copies, please !! -----
Marc Haber | " Questions are the | Mailadresse im Header
Karlsruhe, Germany | Beginning of Wisdom " | Fon: *49 721 966 32 15
Nordisch by Nature | Lt. Worf, TNG "Rightful Heir" | Fax: *49 721 966 31 29
--
Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)