Pinning bacule na 7.4.4
[carnet-upgrade.git] / src / functions.sh
index 994f765..9100f66 100644 (file)
@@ -1,5 +1,6 @@
 # Ivan 'ico' Rako <irako@srce.hr>
 # Zoran 'jelly' Dzelajlija <jelly@srce.hr>
+# Zeljko Boros <zelja@carnet.hr>
 
 notice () {
   LC_MESSAGES=hr_HR dialog --backtitle "$title" --msgbox "$*" 18 75
@@ -367,7 +368,7 @@ check_upgrade () {
 
   if [ "$upgrade" ]; then
     notice "
-Prije prelaska na Debian Wheezy potrebno je napraviti nadogradnju ovih paketa:
+Prije prelaska na Debian stretch potrebno je napraviti nadogradnju ovih paketa:
   $upgrade
 
 Pokrenite:
@@ -530,16 +531,18 @@ create_sources_list () {
 
         # backup old version
         if [ -f $sl -a ! -f $sl.$backup_ext ]; then
-            cp -av $sl $sl.$backup_ext
+            cp -v $sl $sl.$backup_ext
         fi
 
         # install new version
-        cp -av $sl_new $sl
+        cp -v $sl_new $sl
         notice "Novi sadrzaj datoteke /etc/apt/sources.list:
 
 `cat /etc/apt/sources.list`"
     fi
 
+    # make sure permissions are correct
+    chmod 0644 $sl
     rm $sl_new
 }
 
@@ -866,12 +869,11 @@ pkgupgrade () {
   fi
 }
 
-# upgrade apache2/php5
+# upgrade apache2/pthp5
 upgrade_apache2 () {
   pkgrm apache-common # prevents installation of apache2-suexec
-  pkgrm php5-suhosin # not available for wheezy
-  pkgupgrade libapache2-mod-php5 php5-cli php5-cn apache2-cn \
-    php5-odbc mod-security-cn
+  pkgupgrade libapache2-mod-php7.0 php7.0-cli php7.0-cn apache2-cn \
+    php7.0-odbc mod-security-cn
 }
 
 upgrade_amavis () {
@@ -884,19 +886,37 @@ upgrade_amavis () {
     fi
   done
 
+  # workaround for insserv complaining
+  if [ -x /sbin/insserv ]; then
+    if [ -r /etc/init.d/amavis.amavisd-new ]; then
+      /sbin/insserv amavis.amavisd-new
+    fi
+  fi
+
   # install new packages
   pkgadd amavisd-cn amavisd-new
 
+  # workaround for insserv complaining
+  if [ -x /sbin/insserv ]; then
+    if [ -r /etc/init.d/amavis.amavisd-new ]; then
+      /sbin/insserv amavis.amavisd-new
+    fi
+  fi
+
   # start new packages
-  /etc/init.d/amavisd-cn restart
+  ### By zelja, nema vise amavisd-cn, vjerujemo systemd-u
+  ### /etc/init.d/amavisd-cn restart
+  /etc/init.d/amavis restart
 }
 
-# handle mysql 5.0 to 5.1 upgrade
+# handle mysql upgrade
 upgrade_mysql () {
-  if pkg mysql-server || pkg mysql-server-5.1; then
-     pkgadd mysql-server
-     dpkg -P mysql-server-5.1
-     /etc/init.d/mysql restart
+  if pkg mysql-server || pkg mysql-server-5.5 || \
+     pkg mariadb-server || pkg mariadb-server-10.0
+  then
+     pkgadd default-mysql-server
+     dpkg -P mysql-server mysql-server-5.5 mariadb-server-10.0
+     service mysql restart
   fi
 }
 
@@ -916,8 +936,48 @@ upgrade_postfix () {
   fi
 }
 
+
+# pinning za baculu da se ne nadogradi sa 7.4.4 na 9.* u busteru
+# istu stvar radi i bacula-cn.postinst
+
+fix_bacula() {
+
+   echo "CN: Dodajem pinning bacule na inačicu 7.4.4..."
+   PINFILE=/etc/apt/preferences.d/99-carnet
+
+   test -f $PINFILE || touch $PINFILE
+
+   cp-update bacula-cn $PINFILE <<EOF
+Package: bacula-fd
+Pin: version 7.4.4*
+Pin-Priority: 1001
+
+Package: bacula-common
+Pin: version 7.4.4*
+Pin-Priority: 1001
+
+Package: bacula-console
+Pin: version 7.4.4*
+Pin-Priority: 1001
+EOF
+
+
+}
+
 # upgrade the IMAP server
 upgrade_dovecot() {
+ # Funkcija koju je dodao Valentin da popravi propuste u dovecot-cn
+ # Mičem zaostale konfiguracije iz conf.d i izlazim prije njegovih akcija jer ubiju certifikate
+
+ echo "CN: Prebacujem stare konfiguracije za dovecot 95-cn\*-backup.conf u /var/backups..."
+ test -f /etc/dovecot/conf.d/95-cn6-upgrade.conf && mv /etc/dovecot/conf.d/95-cn6-upgrade.conf /var/backups || true
+ test -f /etc/dovecot/conf.d/95-cn7-upgrade.conf && mv /etc/dovecot/conf.d/95-cn7-upgrade.conf /var/backups || true
+ test -f /etc/dovecot/conf.d/95-cn8-upgrade.conf && mv /etc/dovecot/conf.d/95-cn8-upgrade.conf /var/backups || true
+   
+ return 0
+
+# ostatak se nikada ne izvrši
+
   local local_conf=/etc/dovecot/conf.d/95-${backup_ext}.conf
 
   if [ -f /etc/dovecot/conf.d/95-local -a ! -f $local_conf ]; then