#!/bin/bash


whiptail --title "Текущее ядро"  --msgbox  $( uname -r ) 0 0
#-------------------------------------------------------------------------

Kernel_1 () {
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/5.19/linux-headers-edge-sunxi64_22.08.6_arm64.deb
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/5.19/linux-image-edge-sunxi64_22.08.6_arm64.deb
  dpkg -i /tmp/linux-headers-edge-sunxi64_22.08.6_arm64.deb
  dpkg -i /tmp/linux-image-edge-sunxi64_22.08.6_arm64.deb
  
    if (whiptail --title "Чтобы изменения вступили в силу необходимо перезагрузить Repka-pi3" --yesno "Перезагрузить ?" 10 80) then
    echo "Перезагружаем $?."
      reboot
else
     return 0
fi

 
}

Kernel_2 () {
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/6.1/linux-image-edge-sunxi64_23.02.2_arm64.deb
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/6.1/linux-headers-edge-sunxi64_23.02.2_arm64.deb
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/6.1/linux-libc-dev_23.02.2_arm64.deb
  dpkg -i /tmp/linux-image-edge-sunxi64_23.02.2_arm64.deb
  dpkg -i /tmp/linux-headers-edge-sunxi64_23.02.2_arm64.deb
  dpkg -i /tmp/linux-libc-dev_23.02.2_arm64.deb
  
    if (whiptail --title "Чтобы изменения вступили в силу необходимо перезагрузить Repka-pi3" --yesno "Перезагрузить ?" 10 80) then
    echo "Перезагружаем $?."
      reboot
else
    return 0
fi

  
}

Kernel_3 () {
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/6.1-rt/linux-image-_6.1.11-rt7-1_arm64.deb 
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/6.1-rt/linux-headers-_6.1.11-rt7-1_arm64.deb 
  wget -nd -P /tmp https://download.robointellect.ru/repka-pi3/kernel/6.1-rt/linux-libc-dev_6.1.11-rt7-1_arm64.deb
  dpkg -i /tmp/linux-image-_6.1.11-rt7-1_arm64.deb 
  dpkg -i /tmp/linux-headers-_6.1.11-rt7-1_arm64.deb 
  dpkg -i /tmp/linux-libc-dev_6.1.11-rt7-1_arm64.deb
  
    if (whiptail --title "Чтобы изменения вступили в силу необходимо перезагрузить Repka-pi3" --yesno "Перезагрузить ?" 10 80) then
    echo "Перезагружаем $?."
      reboot
else
    return 0
fi

  
}

#------------------------------------------------------------------------
 
    FUN=$(whiptail --title "Repka Pi утилита для настройки (repka-config)" --menu "Установка ядра Linux" 15 80 8 --cancel-button Back --ok-button Select \
	"Kernel-1 " "5.19.16-sunxi64" \
	"Kernel-2 " "6.1.11-sunxi64" \
	"Kernel-3 " "6.1.11-rt7-sunxi64 (с патчем PREEMPT_RT)" \
      3>&1 1>&2 2>&3)
 
  RET=$?

  if [ $RET -eq 1 ] || [ $RET -eq 255 ]; then
    return 0
  elif [ $RET -eq 0 ]; then
    case "$FUN" in
      Kernel-1\ *)   Kernel_1 ;;
      Kernel-2\ *)   Kernel_2 ;;
      Kernel-3\ *)   Kernel_3 ;;
      *) whiptail --msgbox "Programmer error: unrecognized option" 20 60 1 || return 0;;
    esac || whiptail --msgbox "There was an error running option $FUN" 20 60 1 || return 0
  fi
  

#-------------------------------------------------------------------------------------------------------------



