[pmg-devel] [PATCH pmg-api] debian/postinst: add old default values on upgrade to 8.x

Dominik Csapak d.csapak at proxmox.com
Mon Jun 26 15:42:49 CEST 2023


in /etc/pmg/pmg.conf for
advfilter
use_bayes
use_awl

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
we could use a little helper script, but the grep/sed lines look
harmless and easy enough to keep it here imho

 debian/postinst | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/debian/postinst b/debian/postinst
index d4d434a..6ee7a24 100644
--- a/debian/postinst
+++ b/debian/postinst
@@ -87,8 +87,37 @@ case "$1" in
             fi
         fi
 
+        # on upgrade add pre 8.0 default values for advfilter, use_awl and use_bayes
+        # TODO: remove with 9.0
         if test ! -e /proxmox_install_mode ; then
 
+            pmgconf="/etc/pmg/pmg.conf"
+
+            if test -n "$2" && dpkg --compare-versions "$2" 'lt' '8.0.0'; then
+                if test ! -e $pmgconf ; then
+                    # if the config does not exist at all, fill with previous default configs
+                    printf "section: admin\n\tadvfilter 1\n" > $pmgconf
+                    printf "\nsection: spam\n\tuse_bayes 1\n\tuse_awl 1\n" >> $pmgconf
+                else
+                    if ! grep -q 'section: admin' $pmgconf ; then
+                        printf "\nsection: admin" >> $pmgconf
+                    fi
+                    if ! grep -q 'advfilter' $pmgconf ; then
+                        sed -i '/section: admin/a\\tadvfilter 1' $pmgconf
+                    fi
+
+                    if ! grep -q 'section: spam' $pmgconf ; then
+                        printf "\nsection: spam" >> $pmgconf
+                    fi
+                    if ! grep -q 'use_bayes' $pmgconf ; then
+                        sed -i '/section: spam/a\\tuse_bayes 1' $pmgconf
+                    fi
+                    if ! grep -q 'use_awl' $pmgconf ; then
+                        sed -i '/section: spam/a\\tuse_awl 1' $pmgconf
+                    fi
+                fi
+            fi
+
             pmgconfig init || true
             pmgdb init || true
 
-- 
2.30.2





More information about the pmg-devel mailing list