Attached is a conceptual patch for this, completly untested.

Gruesse,
-- 
Frank Lichtenheld <[EMAIL PROTECTED]>
www: http://www.djpig.de/
diff -ru fwanalog-0.6.3/debian/config fwanalog-0.6.3~/debian/config
--- fwanalog-0.6.3/debian/config        2004-01-04 17:37:02.000000000 +0100
+++ fwanalog-0.6.3~/debian/config       2004-01-04 17:36:12.000000000 +0100
@@ -21,8 +21,6 @@
                                db_get fwanalog/logformat
                                if [ ! -z "$RET" ]
                                then
-                                       sed 
's{^logformat=.*${logformat="'$RET'"{' $CONFIG >$TEMP
-                                       mv -f $TEMP $CONFIG
                                        STATE=2
                                else
                                        STATE=0
@@ -36,7 +34,6 @@
                                db_get fwanalog/language || true
                                if [ ! -z "$RET" ]
                                then
-                                       sh 
/usr/share/doc/fwanalog/support/mklangfile.$RET.sh 
/usr/lib/analog/lang/$RET.lng > /usr/share/fwanalog/fwanalog.lng
                                        STATE=3
                                else
                                        STATE=1
@@ -50,9 +47,6 @@
                                db_get fwanalog/outdir || true
                                if [ ! -z $"RET" ]
                                then
-                                       test -d "$RET" || mkdir "$RET"
-                                       sed 's{^outdir=.*${outdir="'$RET'"{' 
$CONFIG > $TEMP
-                                       mv -f $TEMP $CONFIG
                                        STATE=4
                                else
                                        STATE=2
@@ -66,7 +60,6 @@
                                db_get fwanalog/cron || true
                                if [ ! -z "$RET" ]
                                then
-                                       echo "cron=$RET" >> $CFG
                                        if [ $RET = "true" ]
                                        then
                                                STATE=5
@@ -85,7 +78,6 @@
                                db_get fwanalog/mailto || true
                                if [ ! -z "$RET" ]
                                then
-                                       echo "mailto=$RET" >> $CFG
                                        STATE=6
                                else
                                        STATE=5
@@ -101,8 +93,6 @@
                                db_get fwanalog/logdir || true
                                if [ ! -z "$RET" ]
                                then
-                                       sed 
's{^inputfiles_dir=.*${inputfiles_dir="'$RET'"{' $CONFIG > $TEMP
-                                       mv -f $TEMP $CONFIG
                                        STATE=7
                                else
                                        STATE=6
@@ -118,8 +108,6 @@
                                db_get fwanalog/onehost || true
                                if [ ! -z "$RET" ]
                                then
-                                       sed 's{^onehost=.*${onehost="'$RET'"{' 
$CONFIG > $TEMP
-                                       mv -f $TEMP $CONFIG
                                        STATE=8
                                fi
                        else
@@ -128,4 +116,3 @@
                ;;
        esac
 done
-
diff -ru fwanalog-0.6.3/debian/postinst fwanalog-0.6.3~/debian/postinst
--- fwanalog-0.6.3/debian/postinst      2004-01-04 17:37:02.000000000 +0100
+++ fwanalog-0.6.3~/debian/postinst     2004-01-04 17:34:14.000000000 +0100
@@ -4,9 +4,64 @@
 
 . /usr/share/debconf/confmodule
 
+CONFIG="/etc/fwanalog/fwanalog.opts"
+TEMP="/etc/fwanalog/fwanalog.opts.tmp"
+CFG="/etc/fwanalog/debian_config"
+echo "#!/bin/sh" > $CFG
+
 case "$1" in
        configure)
 
+       db_get fwanalog/logformat || true
+       if [ ! -z "$RET" ]; then
+           sed 's{^logformat=.*${logformat="'$RET'"{' $CONFIG >$TEMP
+           mv -f $TEMP $CONFIG
+       fi
+
+       db_get fwanalog/language || true
+       if [ ! -z "$RET" ]; then
+           sh /usr/share/doc/fwanalog/support/mklangfile.$RET.sh 
/usr/lib/analog/lang/$RET.lng > /usr/share/fwanalog/fwanalog.lng
+       fi
+
+       db_get fwanalog/outdir || true
+       if [ ! -z $"RET" ]; then
+           test -d "$RET" || mkdir "$RET"
+           sed 's{^outdir=.*${outdir="'$RET'"{' $CONFIG > $TEMP
+           mv -f $TEMP $CONFIG
+       fi
+
+       STATE="nocron"
+       db_get fwanalog/cron || true
+       if [ ! -z "$RET" ]; then
+           echo "cron=$RET" >> $CFG
+           if [ $RET = "true" ]; then
+               STATE="cron"
+           else
+               STATE="nocron"
+           fi
+       fi
+
+       if [ $STATE = "cron" ]; then
+           db_get fwanalog/mailto || true
+           if [ ! -z "$RET" ]; then
+               echo "mailto=$RET" >> $CFG
+           fi
+       fi
+       
+       db_get fwanalog/logdir || true
+       if [ ! -z "$RET" ]; then
+           sed 's{^inputfiles_dir=.*${inputfiles_dir="'$RET'"{' $CONFIG > $TEMP
+           mv -f $TEMP $CONFIG
+       fi
+
+       db_get fwanalog/onehost || true
+       if [ ! -z "$RET" ]; then
+           sed 's{^onehost=.*${onehost="'$RET'"{' $CONFIG > $TEMP
+           mv -f $TEMP $CONFIG
+       fi
+
+       db_stop
+
        ;;
        abort-upgrade|abort-remove|abort-deconfigure)
        ;;

Reply via email to