#!/bin/sh
# Выясняем, не установлен ли браузер с сайта.
rpm -q yandex-browser &>/dev/null && dnf rm -y yandex-browser-install || ([ -t 0 ] && echo "Запустите скрипт с sudo") && exit
# Команда установки или переустановки для терминала.
if [ -t 0 ]; then dnf in -y get-yandex-browser || dnf rei -y get-yandex-browser || echo "Запустите скрипт с sudo"; exit; fi
(
echo "10"
echo "# Обновление информации"
#
# Выясняем, установлен ли этот браузер.
rpm -q get-yandex-browser &>/dev/null && KEYIN=1 || KEYIN=0
# Обновляем метадату.
dnf refresh -q || KEY=1
# Выясняем, существует ли пакет установки браузера.
[[ $KEY = 1 ]] || (dnf rei --assumeno get-yandex-browser 2>/dev/null |grep -q "==" || dnf up --assumeno get-yandex-browser 2>/dev/null |grep -q "==" || dnf in --assumeno get-yandex-browser 2>/dev/null |grep -q "==") && KEY=0 || KEY=2
# Пробуем скачать пакет установки браузера, если есть.
if [[ $KEY = 0 ]]; then
	echo "30"
	echo "# Скачивание пакета поиска и установки Яндекс Браузера"
	(dnf rei -qy --downloadonly get-yandex-browser &>/dev/null || dnf up -qy --downloadonly get-yandex-browser &>/dev/null || dnf in -qy --downloadonly get-yandex-browser &>/dev/null) || KEY=3
fi
# Если получилось скачать - пробуем ставить браузер.
if [[ $KEY = 0 ]]; then
	echo "60"
	if [[ $KEYIN = 0 ]]; then
		echo "# Установка Яндекс Браузера"
	else
		echo "# Обновление Яндекс Браузера"
	fi
	(dnf rei -qy get-yandex-browser &>/dev/null || dnf up -qy get-yandex-browser &>/dev/null || dnf in -qy get-yandex-browser &>/dev/null) || KEY=4
fi
echo "100"
# Сообщаем результат.
if [[ $KEY = 0 ]]; then
	if [[ $KEYIN = 0 ]]; then
	echo "# Готово\n\nБраузер можно обновлять\nзапуском этого установщика\nпериодически на своё усмотрение"
	else
	echo "# Обновление Яндекс Браузера завершено"
	fi
fi
if [[ $KEY = 1 ]]; then
	echo "# Не удалось обновить метадату\nПроверьте связь с сервером"
fi
if [[ $KEY = 2 ]]; then
	echo "# Не удалось найти пакет установки браузера\nget-yandex-browser\nОн ещё поддерживается?"
fi
if [[ $KEY = 3 ]]; then
	echo "# Не удалось скачать пакет установки браузера\nget-yandex-browser\nПроверьте стабильность связи с сервером"
fi
if [[ $KEY = 4 ]]; then
	echo "# Не удалось установить браузер\nТребуется починка пакета get-yandex-browser"
fi
) |
yad --progress \
	--title="Установщик Яндекс Браузера" \
	--text="Установка..." \
	--percentage=0 \
	--width=400

if [ "$?" = -1 ]; then
	yad --error \
	--text="Установка отменена."
else
	yandex-browser-stable
fi
