43 lines
1.3 KiB
Bash
Executable file
43 lines
1.3 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
set -o errexit # crash the script when a command crash
|
|
set -o pipefail # same as above for piped command
|
|
set -o nounset # crash when a variable doesnt exist
|
|
|
|
# TRACE=1 for debug
|
|
if [[ "${TRACE-0}" == "1" ]]; then
|
|
set -o xtrace
|
|
fi
|
|
|
|
cd "$(dirname "$0")" # change script directory
|
|
|
|
main() {
|
|
if [ $# -eq 0 ]; then
|
|
echo "No arguments supplied"
|
|
else
|
|
local profiles
|
|
IFS=" " read -r -a profiles <<< "$(gsettings get org.gnome.Terminal.ProfilesList list | tr -d "\'[],")"
|
|
case $1 in
|
|
"sunset" ) # Go to dark mode
|
|
# Set the Dracula theme
|
|
set org.gnome.desktop.wm.preferences theme Dracula
|
|
# Set the Terminal profile
|
|
profile="${profiles[0]}"
|
|
gsettings set org.gnome.Terminal.ProfilesList default "${profile}"
|
|
# Set the fish theme
|
|
fish -c "fish_config theme choose 'Base16 Eighties' && yes | fish_config theme save"
|
|
;;
|
|
"sunrise" ) # Go to light mode
|
|
# Set the Terminal profile
|
|
profile="${profiles[1]}"
|
|
gsettings set org.gnome.Terminal.ProfilesList default "${profile}"
|
|
# Set the fish theme
|
|
fish -c "fish_config theme choose 'Solarized Light' && yes | fish_config theme save"
|
|
;;
|
|
* )
|
|
echo "Can't interpret given argument" ;;
|
|
esac
|
|
fi
|
|
}
|
|
|
|
main "$@"
|