Fix postupgrade reconfiguration bug.
[carnet-upgrade.git] / src / functions.sh
index c223076..6d192dd 100644 (file)
@@ -467,7 +467,7 @@ check_grsec_kernel () {
     return 0
   fi
 
-  if [ "$ver" = "${ver#2.6.2[4-9]}" ] || reboot_required; then
+  if [ "$ver" = "${ver#2.6.2[4-9]}" ]; then
     # kernel too old
     notice "
 Prije prelaska na Debian Lenny potrebno je napraviti nadogradnju na najnoviji kernel.
@@ -483,6 +483,18 @@ Nakon toga ponovno pozovite ovu skriptu."
   fi
 }
 
+check_reboot () {
+  reboot_required || return 0
+
+  LC_MESSAGES=hr_HR dialog --backtitle "$title" --yesno "$reboot_warning" 18 +75
+  if [ $? -eq 0 ]; then
+    log "Reboot before continuing."
+    exit 0
+  else
+    log "Proceed without reboot."
+  fi
+}
+
 # check if the latest kernel is booted
 reboot_required () {
   local default_kernel kernel_package running_release running_version
@@ -751,7 +763,7 @@ restore_config () {
   # force reconfiguration at the end if package is not upgraded automatically
   if [ "$config_changed" -a "$cn_package" ]; then
      cn_version=$( dpkg -s "$cn_package" | awk '/^Version:/ {print $2}' )
-     post_upgrade "pkg $cn_package eq $cn_version && dpkg-reconfigure $cn_package"
+     post_upgrade "pkg $cn_package gt $cn_version || dpkg-reconfigure $cn_package"
   fi
 }
 
@@ -937,7 +949,7 @@ upgrade_amavis () {
   local conf
 
   # remove init script diversion before upgrade
-  if pkg amavisd-cn lt 3:2.4.2-4; then 
+  if pkg amavisd-cn lt 3:2.6.1-1; then 
     if [ -L /etc/init.d/amavis -a -f /etc/init.d/amavis.amavisd-new ]; then
       rm -vf /etc/init.d/amavis
       dpkg-divert --remove /etc/init.d/amavis
@@ -970,7 +982,7 @@ upgrade_amavis () {
 
 # fix openldap-aai postinst user handling
 upgrade_openldap () {
-  pkg openldap-aai lt 2.3 || return 0
+  pkg openldap-aai lt 2.4 || return 0
 
   # openldap-aai expects org.ldif to exists
   local ldif=/var/lib/ldap/org.ldif