#!/usr/bin/env bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x # ## Applets : Favorite Applications # Import Current Theme INPUT_THEME="$1" SCRIPT_DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")" if [ -z "$INPUT_THEME" ]; then source "$SCRIPT_DIR/../shared/theme.bash" theme="$type/$style" elif [[ $1 == "-h" || $1 == "--help" ]]; then echo "Usage: $0 [theme]" exit 0 else theme="$INPUT_THEME" if [ ! -d $theme ]; # prepend current script path if theme is not found theme="$SCRIPT_DIR/$theme" if [ ! -d "$theme" ]; then # fail if we still can't find it. echo "Theme not found!" exit 1 fi fi # Theme Elements prompt='Applications' mesg="Installed Packages : `pacman -Q | wc -l` (pacman)" if [[ ( "$theme" == *'type-1'* ) || ( "$theme" == *'type-3'* ) || ( "$theme" == *'type-5'* ) ]]; then list_col='1' list_row='6' elif [[ ( "$theme" == *'type-2'* ) || ( "$theme" == *'type-4'* ) ]]; then list_col='6' list_row='1' fi # CMDs (add your apps here) term_cmd='alacritty' file_cmd='thunar' text_cmd='geany' web_cmd='firefox' music_cmd='alacritty -e ncmpcpp' setting_cmd='xfce4-settings-manager' # Options layout=`cat ${theme} | grep 'USE_ICON' | cut -d'=' -f2` if [[ "$layout" == 'NO' ]]; then option_1=" Terminal ($term_cmd)" option_2=" Files ($file_cmd)" option_3=" Editor ($text_cmd)" option_4=" Browser ($web_cmd)" option_5=" Music ($music_cmd)" option_6=" Settings ($setting_cmd)" else option_1="" option_2="" option_3="" option_4="" option_5="" option_6="" fi # Rofi CMD rofi_cmd() { rofi -theme-str "listview {columns: $list_col; lines: $list_row;}" \ -theme-str 'textbox-prompt-colon {str: "";}' \ -dmenu \ -p "$prompt" \ -mesg "$mesg" \ -markup-rows \ -theme ${theme} } # Pass variables to rofi dmenu run_rofi() { echo -e "$option_1\n$option_2\n$option_3\n$option_4\n$option_5\n$option_6" | rofi_cmd } # Execute Command run_cmd() { if [[ "$1" == '--opt1' ]]; then ${term_cmd} elif [[ "$1" == '--opt2' ]]; then ${file_cmd} elif [[ "$1" == '--opt3' ]]; then ${text_cmd} elif [[ "$1" == '--opt4' ]]; then ${web_cmd} elif [[ "$1" == '--opt5' ]]; then ${music_cmd} elif [[ "$1" == '--opt6' ]]; then ${setting_cmd} fi } # Actions chosen="$(run_rofi)" case ${chosen} in $option_1) run_cmd --opt1 ;; $option_2) run_cmd --opt2 ;; $option_3) run_cmd --opt3 ;; $option_4) run_cmd --opt4 ;; $option_5) run_cmd --opt5 ;; $option_6) run_cmd --opt6 ;; esac