diff --git a/files/applets/bin/powermenu.sh b/files/applets/bin/powermenu.sh index 8ed9106..b369213 100755 --- a/files/applets/bin/powermenu.sh +++ b/files/applets/bin/powermenu.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi gnugrep +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x @@ -6,124 +8,130 @@ ## Applets : Power Menu # Import Current Theme +# shellcheck source=./../shared/theme.bash source "$HOME"/.config/rofi/applets/shared/theme.bash theme="$type/$style" # Theme Elements -prompt="`hostname`" -mesg="Uptime : `uptime -p | sed -e 's/up //g'`" +prompt="$(hostname)" +mesg="Uptime : $(uptime -p | sed -e 's/up //g')" -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' +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 # Options -layout=`cat ${theme} | grep 'USE_ICON' | cut -d'=' -f2` +layout=$(cat "${theme}" | grep 'USE_ICON' | cut -d'=' -f2) if [[ "$layout" == 'NO' ]]; then - option_1=" Lock" - option_2=" Logout" - option_3=" Suspend" - option_4=" Hibernate" - option_5=" Reboot" - option_6=" Shutdown" - yes=' Yes' - no=' No' + option_1=" Lock" + option_2=" Logout" + option_3=" Suspend" + option_4=" Hibernate" + option_5=" Reboot" + option_6=" Shutdown" + yes=' Yes' + no=' No' else - option_1="" - option_2="" - option_3="" - option_4="" - option_5="" - option_6="" - yes='' - no='' + option_1="" + option_2="" + option_3="" + option_4="" + option_5="" + option_6="" + yes='' + no='' 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} +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 +run_rofi() +{ + echo -e "$option_1\n$option_2\n$option_3\n$option_4\n$option_5\n$option_6" | rofi_cmd } # Confirmation CMD -confirm_cmd() { - rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 350px;}' \ - -theme-str 'mainbox {orientation: vertical; children: [ "message", "listview" ];}' \ - -theme-str 'listview {columns: 2; lines: 1;}' \ - -theme-str 'element-text {horizontal-align: 0.5;}' \ - -theme-str 'textbox {horizontal-align: 0.5;}' \ - -dmenu \ - -p 'Confirmation' \ - -mesg 'Are you Sure?' \ - -theme ${theme} +confirm_cmd() +{ + rofi -theme-str 'window {location: center; anchor: center; fullscreen: false; width: 350px;}' \ + -theme-str 'mainbox {orientation: vertical; children: [ "message", "listview" ];}' \ + -theme-str 'listview {columns: 2; lines: 1;}' \ + -theme-str 'element-text {horizontal-align: 0.5;}' \ + -theme-str 'textbox {horizontal-align: 0.5;}' \ + -dmenu \ + -p 'Confirmation' \ + -mesg 'Are you Sure?' \ + -theme "${theme}" } # Ask for confirmation -confirm_exit() { - echo -e "$yes\n$no" | confirm_cmd +confirm_exit() +{ + echo -e "$yes\n$no" | confirm_cmd } # Confirm and execute -confirm_run () { - selected="$(confirm_exit)" - if [[ "$selected" == "$yes" ]]; then - ${1} && ${2} && ${3} - else - exit - fi +confirm_run() +{ + selected="$(confirm_exit)" + if [[ "$selected" == "$yes" ]]; then + ${1} && ${2} && ${3} + else + exit + fi } # Execute Command -run_cmd() { - if [[ "$1" == '--opt1' ]]; then - betterlockscreen -l - elif [[ "$1" == '--opt2' ]]; then - confirm_run 'kill -9 -1' - elif [[ "$1" == '--opt3' ]]; then - confirm_run 'mpc -q pause' 'amixer set Master mute' 'systemctl suspend' - elif [[ "$1" == '--opt4' ]]; then - confirm_run 'systemctl hibernate' - elif [[ "$1" == '--opt5' ]]; then - confirm_run 'systemctl reboot' - elif [[ "$1" == '--opt6' ]]; then - confirm_run 'systemctl poweroff' - fi +run_cmd() +{ + if [[ "$1" == '--opt1' ]]; then + betterlockscreen -l + elif [[ "$1" == '--opt2' ]]; then + confirm_run 'kill -9 -1' + elif [[ "$1" == '--opt3' ]]; then + confirm_run 'mpc -q pause' 'amixer set Master mute' 'systemctl suspend' + elif [[ "$1" == '--opt4' ]]; then + confirm_run 'systemctl hibernate' + elif [[ "$1" == '--opt5' ]]; then + confirm_run 'systemctl reboot' + elif [[ "$1" == '--opt6' ]]; then + confirm_run 'systemctl poweroff' + 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 - ;; + "$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 - diff --git a/files/launchers/type-1/launcher.sh b/files/launchers/type-1/launcher.sh index 6a0cb69..2ea2203 100755 --- a/files/launchers/type-1/launcher.sh +++ b/files/launchers/type-1/launcher.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x diff --git a/files/launchers/type-2/launcher.sh b/files/launchers/type-2/launcher.sh index 3422cd7..0b79eae 100755 --- a/files/launchers/type-2/launcher.sh +++ b/files/launchers/type-2/launcher.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x @@ -16,5 +18,5 @@ theme='style-1' ## Run rofi \ - -show drun \ - -theme ${dir}/${theme}.rasi + -show drun \ + -theme "${dir}"/${theme}.rasi diff --git a/files/launchers/type-3/launcher.sh b/files/launchers/type-3/launcher.sh index ae97b5f..b903574 100755 --- a/files/launchers/type-3/launcher.sh +++ b/files/launchers/type-3/launcher.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x @@ -15,5 +17,5 @@ theme='style-10' ## Run rofi \ - -show drun \ - -theme ${dir}/${theme}.rasi + -show drun \ + -theme "${dir}"/${theme}.rasi diff --git a/files/launchers/type-4/launcher.sh b/files/launchers/type-4/launcher.sh index 6572cda..c996eb9 100755 --- a/files/launchers/type-4/launcher.sh +++ b/files/launchers/type-4/launcher.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x @@ -15,5 +17,5 @@ theme='style-1' ## Run rofi \ - -show drun \ - -theme ${dir}/${theme}.rasi + -show drun \ + -theme "${dir}"/${theme}.rasi diff --git a/files/launchers/type-5/launcher.sh b/files/launchers/type-5/launcher.sh index e9d0a3a..08840aa 100755 --- a/files/launchers/type-5/launcher.sh +++ b/files/launchers/type-5/launcher.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x @@ -14,5 +16,5 @@ theme='style-1' ## Run rofi \ - -show drun \ - -theme ${dir}/${theme}.rasi + -show drun \ + -theme "${dir}"/${theme}.rasi diff --git a/files/launchers/type-6/launcher.sh b/files/launchers/type-6/launcher.sh index c0b4d33..5b5d1b1 100755 --- a/files/launchers/type-6/launcher.sh +++ b/files/launchers/type-6/launcher.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x @@ -15,5 +17,5 @@ theme='style-1' ## Run rofi \ - -show drun \ - -theme ${dir}/${theme}.rasi + -show drun \ + -theme "${dir}"/${theme}.rasi diff --git a/files/launchers/type-7/launcher.sh b/files/launchers/type-7/launcher.sh index aa45aa9..45a920c 100755 --- a/files/launchers/type-7/launcher.sh +++ b/files/launchers/type-7/launcher.sh @@ -1,4 +1,6 @@ -#!/usr/bin/env bash +#!/usr/bin/env nix-shell +#! nix-shell -i bash -p rofi +# shellcheck shell=bash ## Author : Aditya Shakya (adi1090x) ## Github : @adi1090x @@ -15,5 +17,5 @@ theme='style-1' ## Run rofi \ - -show drun \ - -theme ${dir}/${theme}.rasi + -show drun \ + -theme "${dir}"/${theme}.rasi