Dodano drugo upozorenje
[carnet-upgrade.git] / src / functions.sh
index 9100f66..d7f2e20 100644 (file)
@@ -2,6 +2,11 @@
 # Zoran 'jelly' Dzelajlija <jelly@srce.hr>
 # Zeljko Boros <zelja@carnet.hr>
 
+PHPVER="7.4"
+MDB="10.5"
+PINFILE="/etc/apt/preferences.d/99-carnet"
+
+
 notice () {
   LC_MESSAGES=hr_HR dialog --backtitle "$title" --msgbox "$*" 18 75
 }
@@ -14,6 +19,14 @@ first_warning () {
   fi
 }
 
+second_warning () {
+  LC_MESSAGES=hr_HR dialog --backtitle "$title" --yesno "$msg_second_warning" 18 75
+  if [ $? -ne 0 ]; then
+    log "Upgrade canceled."
+    exit 0
+  fi
+}
+
 pkg() {
   local version
   dpkg -l "$1" 2> /dev/null | egrep -q "^.i" || return 1
@@ -339,7 +352,7 @@ Doslo je do greske prilikom izvrsavanja akcije '$action'. Detalje problema moguc
 Da bi dovrsili zapocete operacije nad paketima pokrenite:
 
   # dpkg --configure -a
-  # apt-get -f install
+  # apt -f install
 
 Nakon toga ponovno pozovite carnet-upgrade skriptu."
 }
@@ -368,7 +381,7 @@ check_upgrade () {
 
   if [ "$upgrade" ]; then
     notice "
-Prije prelaska na Debian stretch potrebno je napraviti nadogradnju ovih paketa:
+Prije prelaska na Debian bullseye potrebno je napraviti nadogradnju ovih paketa:
   $upgrade
 
 Pokrenite:
@@ -869,11 +882,12 @@ pkgupgrade () {
   fi
 }
 
-# upgrade apache2/pthp5
+# upgrade apache2/php
 upgrade_apache2 () {
-  pkgrm apache-common # prevents installation of apache2-suexec
-  pkgupgrade libapache2-mod-php7.0 php7.0-cli php7.0-cn apache2-cn \
-    php7.0-odbc mod-security-cn
+### ne treba od etcha
+### pkgrm apache-common # prevents installation of apache2-suexec
+  pkgupgrade libapache2-mod-php$PHPVER php$PHPVER-cli php$PHPVER-cn apache2-cn \
+    php$PHPVER-odbc mod-security-cn
 }
 
 upgrade_amavis () {
@@ -912,10 +926,10 @@ upgrade_amavis () {
 # handle mysql upgrade
 upgrade_mysql () {
   if pkg mysql-server || pkg mysql-server-5.5 || \
-     pkg mariadb-server || pkg mariadb-server-10.0
+     pkg mariadb-server || pkg mariadb-server-$MDB
   then
      pkgadd default-mysql-server
-     dpkg -P mysql-server mysql-server-5.5 mariadb-server-10.0
+     dpkg -P mysql-server mysql-server-5.5 mariadb-server-$MDB
      service mysql restart
   fi
 }
@@ -943,11 +957,11 @@ upgrade_postfix () {
 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
@@ -959,8 +973,25 @@ Pin-Priority: 1001
 Package: bacula-console
 Pin: version 7.4.4*
 Pin-Priority: 1001
+
 EOF
 
+}
+
+# pinning za ocsinventory da se ne nadogradi sa 2.0.5 na 2.4.2
+
+fix_ocsinventory() {
+
+   echo "CN: Dodajem pinning ocsinventory-agenta na inačicu 2.0.5..."
+   test -f $PINFILE || touch $PINFILE
+
+   cp-update ocsinventory-agent-cn $PINFILE <<EOF
+
+Package: ocsinventory-agent
+Pin: version 2:2.0.5*
+Pin-Priority: 1001
+
+EOF
 
 }
 
@@ -969,10 +1000,10 @@ 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
+ 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
+ test -f /etc/dovecot/conf.d/95-cn9-upgrade.conf && mv /etc/dovecot/conf.d/95-cn9-upgrade.conf* /var/backups || true
    
  return 0
 
@@ -1082,7 +1113,7 @@ upgrade_syslog() {
   fi
 
   pkgadd rsyslog
-  dpkg -P sysklogd klogd
+  dpkg -P sysklogd klogd > /dev/null 2>&1
 }
 
 # restore munin configs for silent upgrade