#!/bin/bash

# install-xanmod script lets you install the 3th party Xanmod Linux kernel
# Copyright 2020 Paweł "pavroo" Pijanowski <pavroo@onet.eu>
# Licensed under the GPLv2 license see /usr/share/common-licenses/GPL-2
# Created 2020/10/19
# Last update 2020/10/19

# get default's locale file
DEFLOCDIR="/usr/share/pearl/pearl-aptus"
if [ "`cat /etc/default/locale | grep LANG= | grep de`" != "" ]; then
. $DEFLOCDIR/de
elif [ "`cat /etc/default/locale | grep LANG= | grep el`" != "" ]; then
. $DEFLOCDIR/el
elif [ "`cat /etc/default/locale | grep LANG= | grep es`" != "" ]; then
. $DEFLOCDIR/es
elif [ "`cat /etc/default/locale | grep LANG= | grep fr`" != "" ]; then
. $DEFLOCDIR/fr
elif [ "`cat /etc/default/locale | grep LANG= | grep hu`" != "" ]; then
. $DEFLOCDIR/hu
elif [ "`cat /etc/default/locale | grep LANG= | grep id_ID`" != "" ]; then
. $DEFLOCDIR/id_ID
elif [ "`cat /etc/default/locale | grep LANG= | grep it`" != "" ]; then
. $DEFLOCDIR/it
elif [ "`cat /etc/default/locale | grep LANG= | grep ja`" != "" ]; then
. $DEFLOCDIR/ja
elif [ "`cat /etc/default/locale | grep LANG= | grep pl`" != "" ]; then
. $DEFLOCDIR/pl
elif [ "`cat /etc/default/locale | grep LANG= | grep pt_BR`" != "" ]; then
. $DEFLOCDIR/pt_BR
elif [ "`cat /etc/default/locale | grep LANG= | grep pt_PT`" != "" ]; then
. $DEFLOCDIR/pt_PT
elif [ "`cat /etc/default/locale | grep LANG= | grep ru`" != "" ]; then
. $DEFLOCDIR/ru
elif [ "`cat /etc/default/locale | grep LANG= | grep zh_CN`" != "" ]; then
. $DEFLOCDIR/zh_CN
else
. $DEFLOCDIR/en
fi

testroot="`whoami`"
if [ "$testroot" != "root" ]; then
	echo " Must be root... Exiting"
	exit 1
fi

DIALOG="yad --window-icon=prefernces-other --width=500 --height=320 --center"
TITLE="--always-print-result --dialog-sep --image=preferences-other --title="
TEXT="--text="
MENU="--list --column=$LOCAL21 --column=$LOCAL22"
OKEXIT=" --button=Ok:0 --button=$LOCAL24:1"
MSGBOX="--button=Ok:0"
TITLETEXT="$LOCAL107"
ARCH64=`uname -r | grep "amd64" | awk '{print $1}'`
TESTXANREPO=`dpkg-query -l | grep xanmod-repository`
if [ -f /usr/bin/pearl-xterm ];then
	PEARLXTERM="/usr/bin/pearl-xterm"
else
	echo "pearl-xterm is missing... Exiting..."
	exit 1
fi

# check is the XanMod kernel installed already
#if [ "$TESTXAN" != "" ]; then
#	$DIALOG $TITLE"$TITLETEXT" $MSGBOX $TEXT"$LOCAL25"
#	exit 1
#fi

# check connection
PINGTEST=$(ping -c 1 debian.org | grep [0-9])

if [ "$PINGTEST" = "" ]; then
	$DIALOG $TITLE"$TITLETEXT" $MSGBOX $TEXT"\n$LOCAL16"
	exit 1
fi

# check arch64
if [ "$ARCH64" = "" ]; then
	$DIALOG $TITLE"$TITLETEXT" $MSGBOX $TEXT"\n$LOCAL108"
	exit 1
fi

CHOICES=`$DIALOG $TITLE"$TITLETEXT" $OKEXIT $MENU $TEXT"$LOCAL26" \
EDGE "$LOCAL109" \
STABLE "$LOCAL110" \
LTS "$LOCAL111" \
RTEDGE "$LOCAL112" \
RTSTABLE "$LOCAL113" \
Exit "$LOCAL30"`

if [ "$?" = "0" ]; then
	CHOICE=`echo $CHOICES | cut -d "|" -f 1`
else
	exit 0
fi

if [ "$CHOICE" != "Exit" ]; then
	if [ "$TESTXANREPO" = "" ]; then
		$PEARLXTERM "apt-get update && apt-get install xanmod-repository -y"
	fi
fi

if [ "$CHOICE" = "EDGE" ]; then
	# install latest EDGE kernel
	$PEARLXTERM "apt-get update && apt-get install linux-xanmod-edge"
elif [ "$CHOICE" = "STABLE" ]; then
	# install current STABLE kernel
	$PEARLXTERM "apt-get update && apt-get install linux-xanmod"
elif [ "$CHOICE" = "LTS" ]; then
	# install stable LTS kernel
	$PEARLXTERM "apt-get update && apt-get install linux-xanmod-lts"
elif [ "$CHOICE" = "RTEDGE" ]; then
	# install latest EDGE real-time kernel
	$PEARLXTERM "apt-get update && apt-get install linux-xanmod-rt-edge"
elif [ "$CHOICE" = "RTSTABLE" ]; then
	# install current STABLE real-time kernel
	$PEARLXTERM "apt-get update && apt-get install linux-xanmod-rt-edge"
elif [ "$CHOICE" = "Exit" ]; then
	exit 1
else
	exit 1
fi

exit 0
