#!/usr/bin/env bash ## Copyright (C) 2020-2022 Aditya Shakya # Import Current Theme DIR="$HOME/.config/themes" STYLE="easy" RASI="$DIR/$STYLE/rofi/themes.rasi" hypr="$HOME/.config/hypr/hyprland.conf" # List Available Themes THEMES=(`cd $DIR && ls -d */ | cut -d '/' -f1`) # Theme Elements prompt="Themes" mesg="Available Themes : `cd $DIR && ls -d */ | cut -d '/' -f1 | wc -l`" # Rofi CMD rofi_cmd() { rofi -dmenu \ -p "$prompt" \ -mesg "$mesg" \ -sep '|' \ -markup-rows \ -theme ${RASI} } # Pass variables to rofi dmenu run_rofi() { echo ${THEMES[@]} | sed 's/ /|/g' | sed 's/$/|/' | rofi_cmd } # Apply Theme apply_theme() { selected="`run_rofi`" current="`cat $DIR/.current`" for theme in "${THEMES[@]}"; do if [[ -z "$selected" ]]; then break elif [[ "$selected" == "$theme" ]]; then sed -i "$hypr" -e "s/\$theme = .*/\$theme = $theme/g" break fi done } apply_theme && exit 0