#!/usr/bin/env bash
# To elevate privileges, use the timeshift-launcher script.
# License: GPLv2+

app_command='python3 /usr/share/alt-mirror-switcher/alt-mirror-switcher.py'

if [ "$(id -u)" -eq 0 ]; then
         # user is admin
         ${app_command}
else
         # user is not admin
         if echo $- | grep "i" >/dev/null 2>&1; then
                 # script is running in interactive mode
                 su - -c "pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY ${app_command}"
         else
                 # script is running in non-interactive mode
                 if [ "$XDG_SESSION_TYPE" = "wayland" ] ; then
                         xhost +SI:localuser:root
                         pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY ${app_command}
                         xhost -SI:localuser:root
                         xhost
                 elif command -v pkexec >/dev/null 2>&1; then
                         pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY ${app_command}
                 elif command -v sudo >/dev/null 2>&1; then
                         x-terminal-emulator -e "sudo ${app_command}"
                 elif command -v su >/dev/null 2>&1; then
                         x-terminal-emulator -e "su - -c '${app_command}'"
                 else
                         x-terminal-emulator -e "echo 'Command must be run as root user: ${app_command}'"
                 fi
         fi
fi
