Handle CN upgrade.
[carnet-upgrade.git] / src / functions.sh
index acc4dad..fa0406b 100644 (file)
@@ -500,7 +500,12 @@ install_new () {
 create_sources_list () {
     local sl sl_new
     sl=/etc/apt/sources.list
-    sl_new=/usr/share/carnet-upgrade/files/etc/apt/sources.list
+    sl_new=$( copy_template $sl )
+
+    # comment aai repository if not in use
+    if ! pkg srce-keyring; then
+        sed -i 's/^\(deb.*ftp.srce.hr\)/#\1/' $sl_new
+    fi
 
     # check if already installed
     if ! cmp $sl $sl_new >/dev/null; then
@@ -516,8 +521,9 @@ create_sources_list () {
 
 `cat /etc/apt/sources.list`"
     fi
-}
 
+    rm $sl_new
+}
 
 # funkcija koja brise grupu proc
 remove_group_proc () {
@@ -733,6 +739,10 @@ restore_configs () {
      restore_file /etc/issue.net
   fi
 
+  if pkg slapd lt 2.4.23-7.2; then
+     restore_file /etc/default/slapd
+  fi
+
   # dovecot won't start with these options
   if pkg dovecot-cn && pkg dovecot-common lt 1:1.2.15-7; then
      sed -i 's/^\( *\)\(sieve\(_storage\)\?=.*\)/\1#\2/' \
@@ -778,9 +788,14 @@ apt_listchanges () {
 
 # make a silent installation of carnet and srce keyrings
 install_keyrings () {
-  pkgadd carnet-keyring srce-keyring debian-archive-keyring
+  pkgadd carnet-keyring debian-archive-keyring
+  dpkg-reconfigure carnet-keyring debian-archive-keyring
+
+  if pkg srce-keyring; then
+    pkgadd srce-keyring
+    dpkg-reconfigure srce-keyring
+  fi
 
-  dpkg-reconfigure carnet-keyring srce-keyring debian-archive-keyring
   apt_update
 }
 
@@ -900,19 +915,6 @@ upgrade_freeradius () {
   pkgadd freeradius-aai
 }
 
-# handle openldap upgrade
-upgrade_openldap () {
-  # aai discovers database type from debconf
-  if [ -f /etc/ldap/slapd.conf ] && grep -q ^database.*bdb /etc/ldap/slapd.conf
-  then
-     echo set slapd/backend BDB | debconf-communicate >/dev/null
-  fi
-
-  # aai does not depend on the new openldap version
-  pkgadd slapd
-  pkgadd openldap-aai
-}
-
 # handle mysql 5.0 to 5.1 upgrade
 upgrade_mysql () {
   if pkg mysql-server || pkg mysql-server-5.0; then
@@ -961,8 +963,10 @@ upgrade_munin () {
   local config backup hostname domain
 
   # new htmldir location
-  mkdir -p /var/cache/munin
-  mv /var/www/munin /var/cache/munin/www
+  if [ -d /var/www/munin -a ! -e /var/cache/munin/www ]; then
+    mkdir -p /var/cache/munin
+    mv /var/www/munin /var/cache/munin/www
+  fi
 
   for pkg_name in munin munin-node; do
      pkg $pkg_name lt '1.4.5-3' || continue