Updated apache2 upgrade function.
[carnet-upgrade.git] / src / functions.sh
index 27c6133..d832d8f 100644 (file)
@@ -286,7 +286,7 @@ check_apache_version () {
 
   if pkg apache-cn && ! pkg apache2-cn; then
     notice "
-Prije prelaska na Debian Etch potrebno je napraviti nadogradnju sa apache 1.3 na apache 2.0.
+Prije prelaska na Debian Etch potrebno je napraviti nadogradnju sa Apache 1.3 na Apache 2.0.
 
 Pokrenite:
   'apt-get install apache2-cn'
@@ -539,6 +539,7 @@ restore_configs () {
   do 
       config_backup=$config.$backup_ext
       if [ -e $config -a ! -e $config_backup ]; then
+          log "Saving config file $config"
           cp -av $config $config_backup
           ucf $config_backup $config
       fi
@@ -593,38 +594,22 @@ upgrade_libc () {
   DEBIAN_FRONTEND=noninteractive pkgadd libc6
 }
 
-# upgrade apache -> apache2
-upgrade_apache () {
-  local delpkg p
+# upgrade apache2 to etch
+upgrade_apache2 () {
+  local package
 
-  # bugfix for apache2-cn postinst
-  mkdir -p /etc/apache2
-  touch /etc/apache2/httpd.conf
-
-  # temporary remove packages conflicting with apache2
-  delpkg=""
-  for p in aosi-aai aosi-www-aai \
-           php4-cn php4-odbc php4-xslt \
-           squirrelmail-cn; do
-
-     # remember installed packages
-     if pkg $p; then
-         delpkg="$delpkg $p"
-     fi
+  for package in \
+      libapache-mod-php4 \
+      libapache2-mod-php4 \
+      php4-cli \
+      php4-cgi \
+      php4-cn \
+      apache2-cn
+  do
+      if pkg $package; then
+          pkgadd $package
+      fi
   done
-
-  # remove (but not purge) problematic packages
-  if [ "$delpkg" ]; then
-      eval apt-get --yes remove $delpkg
-  fi
-
-  # remove old apache
-  pkgrm apache apache-common
-
-  # install new packages
-  eval pkgadd apache2-cn apache2-mpm-prefork \
-              php4-cn libapache2-mod-php4 \
-              $delpkg
 }
 
 upgrade_amavis () {
@@ -706,6 +691,16 @@ upgrade_dovecot () {
   fi
 }
 
+# vsftpd.postinst tries to start vsftpd so make sure it is not running 
+upgrade_vsftpd () {
+  if [ -x /etc/init.d/vsftpd ]; then
+      /etc/init.d/vsftpd stop || true
+  fi
+
+  pkg vsftpd    && pkgadd vsftpd
+  pkg vsftpd-cn && pkgadd vsftpd-cn
+}
+
 # fix /etc/dpkg/dpkg.cfg
 comment_force_overwrite () {
   if [ -f /etc/dpkg/dpkg.cfg ]; then