#! /bin/bash -e

#----------------------------------------------------------------------------------
# DARKNESS RASPBERRYPI LOCALISATION SWITCHER - (c) Nikolaus Klepp office@klepp.biz
#----------------------------------------------------------------------------------
# This is intended for one time use on the installed system image. Call it
# with the language you would like to use and restart your sysrem.
#----------------------------------------------------------------------------------
# 2026-05-21 : initial release
#----------------------------------------------------------------------------------

PATH=/usr/sbin:/usr/bin:/sbin:/bin


if ! [[ "$1" =~ ^de|en|ru$ ]]; then
	cat << XXX
usage: $(basename $0) de|ru|en
change internationalisation en/C.UTF-8 to german or russian.
XXX
	exit 1
fi


apt update
echo LANG=C.UTF-8 > /etc/locale.conf
echo LANG=C.UTF-8 > /etc/default/locale


case "$1" in
	de)
		KDB=de
		sed 's#\(Language=\).*$#\1de#g'  -i /home/*/.trinity/share/config/kdeglobals /home/*/.trinity/share/config/taskbar_panelapplet*
		sed 's#\(Country=\).*$#\1at#g'   -i /home/*/.trinity/share/config/kdeglobals /home/*/.trinity/share/config/taskbar_panelapplet*
		sed 's#\(LayoutList=\).*#\1at,ru,us#g' -i /home/*/.trinity/share/config/kxkbrc
		update-locale LANG=de_AT.UTF-8 LANGUAGE="de_AT:de"
		apt -y install tde-i18n-de-trinity
		;;

	ru) 
		KBD=ru
		sed 's#\(Language=\).*$#\1ru#g'  -i /home/*/.trinity/share/config/kdeglobals /home/*/.trinity/share/config/taskbar_panelapplet*
		sed 's#\(Country=\).*$#\1ru#g'   -i /home/*/.trinity/share/config/kdeglobals /home/*/.trinity/share/config/taskbar_panelapplet*
		sed 's#\(LayoutList=\).*#\1ru,us,at#g' -i /home/*/.trinity/share/config/kxkbrc
		update-locale LANG=ru_RU.UTF-8 LANGUAGE="ru_RU:ru"
		apt -y install tde-i18n-ru-trinity
		;;

	en) 
		KBD=en
		sed 's#\(Language=\).*$#\1en#g'  -i /home/*/.trinity/share/config/kdeglobals /home/*/.trinity/share/config/taskbar_panelapplet*
		sed 's#\(Country=\).*$#\1en#g'   -i /home/*/.trinity/share/config/kdeglobals /home/*/.trinity/share/config/taskbar_panelapplet*
		sed 's#\(LayoutList=\).*#\1en,at,ru#g' -i /home/*/.trinity/share/config/kxkbrc
		update-locale LANG=C.UTF-8 LANGUAGE
		;;
esac

# set keyboard
sed 's|XKBLAYOUT=.*$|XKBLAYOUT="'$KBD'"|' -i /etc/default/keyboard

# remove unused language packs	
for i in $(dpkg -l tde-i18n-*-trinity | grep ^ii| awk '{print $2}'|grep --invert-match "tde-i18n-${KBD}-trinity"); do
	dpkg -P $i
done

echo "reboot for all changes to take effect."

