#!/usr/bin/env bash
menu() {
    dialog --clear --backtitle "StratOS theme changer" \
        --title "Select a theme" \
        --menu "Choose one of the following options:" 15 40 3 \
        1 "TokyoNight Dark" \
        2 "Gruvbox" \
        2>&1 >/dev/tty
}

while true; do
    choice=$(menu)
    case $choice in
        1)
	    clear
	    export GTKTHEME="tokyonight-gtk-theme-Dark"
	    gsettings set org.gnome.shell.extensions.user-theme name "$GTKTHEME"
	    gsettings set org.gnome.desktop.interface gtk-theme "$GTKTHEME"
	    gsettings set org.gnome.desktop.interface icon-theme "Tokyonight-Moon" 
	    ln -sf $HOME/.themes/Tokyonight-Dark-B/gtk-4.0/  ~/.config/
	    sudo cp -f /usr/share/grub/themes/StratOS-grub/tokyo-night/theme.txt /usr/share/grub/themes/StratOS-grub/theme.txt
	    sudo cp -f /usr/share/grub/themes/StratOS-grub/tokyo-night/background.png /usr/share/grub/themes/StratOS-grub/background.png
	    sudo ln -sf /etc/calamares/branding/tokyonight-dark/stylesheet.qss  /etc/calamares/branding/default/stylesheet.qss  
	    sudo ln -sf "$HOME"/.config/starship/tokyonight-dark/starship.toml "$HOME"/.config/starship.toml 
	    sudo cp /opt/maneki-neko/src/ui/TokyoNight-Dark/** /opt/maneki-neko/src/ui/
	    exit 0
            ;;
        2)
	    clear
	    gsettings set org.gnome.shell.extensions.user-theme name "'Gruvbox-Dark-B'"
	    gsettings set org.gnome.desktop.interface gtk-theme "'Gruvbox-Dark-B'"
	    gsettings set org.gnome.desktop.interface icon-theme "'Gruvbox-Dark'" 
	    ln -sf "$HOME"/.themes/Gruvbox-Dark-B/gtk-4.0/  ~/.config/
	    sudo cp -f /usr/share/grub/themes/StratOS-grub/gruvbox/theme.txt /usr/share/grub/themes/StratOS-grub/theme.txt
	    sudo cp -f /usr/share/grub/themes/StratOS-grub/gruvbox/background.png /usr/share/grub/themes/StratOS-grub/background.png
	    sudo ln -sf /etc/calamares/branding/gruvbox/stylesheet.qss  /etc/calamares/branding/default/stylesheet.qss
	    sudo ln -sf "$HOME"/.config/starship/gruvbox/starship.toml "$HOME"/.config/starship.toml 
	    sudo cp /opt/maneki-neko/src/ui/GruvBox-Dark/** /opt/maneki-neko/src/ui/
	    exit 0
            ;;
        *)
            # If Cancel or Escape pressed
            # echo "Exiting..."
            exit 0
            ;;
    esac
done
