Markus Meyer <[EMAIL PROTECTED]> wrote: > Jep, hast recht. Ich hab mich nochmal schalu gemacht. Existiert eine > Datei "conffiles" in control.tar.gz, dann fragt es für jede Datei, die > in "conffiles" steht, nach, ob sie überschrieben werden soll,
ja > sollten > sie unterschiedlich sein. Aber leider steht in den Debian Developer > Dokus und in den man-Pages zu den "debconf" Mit debconf hat das *nichts* zu tun; wenn mit debconf-Hilfe Dateien in /etc/ angepasst werden, dann sind das gerade keine conffiles, sondern "sonstige configuration files", und dpkg kümmert sich nicht um sie. > und Co nicht drin, womit die > testen, ob sich die Dateien unterscheiden. Aber ich tippe da auch auf > "diff". Du tipps falsch, es wird md5sum verwendet. dpkg speichert die md5sum der Datei, wie sie zuvor mit dem Paket mitkam, in /var/lib/dpkg/status. Beim Installieren einer neuen Version macht es für jede Datei, die im neuen Paket als conffile markiert ist, folgendes: Existiert die Datei im Dateisystem? 1. Nein: Existiert eine md5sum, war sie also im alten Paket? 1.1 Nein: Neue Datei, installiere neue Version 1.2 Ja: Benutzer hat Datei gelöscht. Ist force-confnew gesetzt? 1.2.1: Nein: nächste Datei bearbeiten 1.2.2: Ja: Neue Datei installieren 2 Ja: Datei existiert. Ist die md5sum noch die gleiche wie gespeichert? 2.1: Nein: Vom Benutzer geändert. Ist die md5sum der Datei im neuen Paket die gleiche wie gespeichert? 2.1.1 Nein: Datei geändert, es gibt drei Versionen: ==> FRAGE 2.1.2 Ja: Datei im Paket unverändert, vom Benutzer geänderte beibehalten und nächste Datei bearbeiten. 2.2: Ja: Unveränderte Datei, nächste Datei bearbeiten. Bei FRAGE wird nun ein diff zwischen existierender und neuer Datei gezeigt, denn von der alten gibt es keine Kopie mehr. Dateien, die nicht als conffile markiert sind, müssen von den maintainer-Skripten analog behandelt werden, so dass Änderungen erhalten bleiben. Ein Tool dafür ist ucf, es kann optional auch eine Kopie der unveränderten Datei speichern und im Fall 2.1.1 ein three-way-diff anzeigen. Gruß, Frank -- Frank Küster Inst. f. Biochemie der Univ. Zürich Debian Developer