#!/bin/bash

theme=$1
if [[ "$theme" !=  "dark" ]] && [[ "$theme" != "light" ]]; then
	echo "Usage: $0 <light|dark>"; exit 1
fi

# GTK theme
if command -v gsettings > /dev/null; then
  gsettings set org.gnome.desktop.interface color-scheme "prefer-${theme}"
fi

VIS_THEME_PATH=${XDG_CONFIG_HOME:-~/.config}/vis/themes
ln -sf solarized-"$theme".lua "${VIS_THEME_PATH}"/theme.lua

ALACRITTY_THEME_PATH=${XDG_CONFIG_HOME:-~/.config}/alacritty
ln -sf "$theme".toml "${ALACRITTY_THEME_PATH}"/theme.toml
touch "${ALACRITTY_THEME_PATH}"/alacritty.toml

FOOT_THEME_PATH=${XDG_CONFIG_HOME:-~/.config}/foot
printf 'initial-color-theme=%s\n' "$theme" > "$FOOT_THEME_PATH"/initial-color-theme.ini
if [[ "$theme" = "dark" ]]; then
	pkill -USR1 foot
else
	pkill -USR2 foot
fi
