diff --git a/.scripts/color.sh b/.scripts/color.sh new file mode 100644 index 0000000..1a9c3cb --- /dev/null +++ b/.scripts/color.sh @@ -0,0 +1,17 @@ +T='gYw' # The test text + +echo -e "\n 40m 41m 42m 43m\ + 44m 45m 46m 47m"; + +for FGs in ' m' ' 1m' ' 30m' '1;30m' ' 31m' '1;31m' ' 32m' \ + '1;32m' ' 33m' '1;33m' ' 34m' '1;34m' ' 35m' '1;35m' \ + ' 36m' '1;36m' ' 37m' '1;37m'; + do FG=${FGs// /} + echo -en " $FGs \033[$FG $T " + for BG in 40m 41m 42m 43m 44m 45m 46m 47m; + do echo -en "$EINS \033[$FG\033[$BG $T \033[0m"; + done + echo; +done +echo +' diff --git a/.scripts/dmenumount b/.scripts/dmenumount new file mode 100755 index 0000000..6784402 --- /dev/null +++ b/.scripts/dmenumount @@ -0,0 +1,60 @@ +#!/usr/bin/env sh + +# Gives a dmenu prompt to mount unmounted drives and Android phones. If +# they're in /etc/fstab, they'll be mounted automatically. Otherwise, you'll +# be prompted to give a mountpoint from already existsing directories. If you +# input a novel directory, it will prompt you to create that directory. + +getmount() { \ + [ -z "$chosen" ] && exit 1 + mp="$(find $1 2>/dev/null | dmenu -i -p "Type in mount point.")" + [ "$mp" = "" ] && exit 1 + if [ ! -d "$mp" ]; then + mkdiryn=$(printf "No\\nYes" | dmenu -i -p "$mp does not exist. Create it?") + [ "$mkdiryn" = "Yes" ] && (mkdir -p "$mp" || sudo -A mkdir -p "$mp") + fi + } + +mountusb() { \ + chosen="$(echo "$usbdrives" | dmenu -i -p "Mount which drive?" | awk '{print $1}')" + sudo -A mount "$chosen" 2>/dev/null && notify-send "💻 USB mounting" "$chosen mounted." && exit 0 + alreadymounted=$(lsblk -nrpo "name,type,mountpoint" | awk '$2=="part"&&$3!~/\/boot|\/home$|SWAP/&&length($3)>1{printf "-not \\( -path *%s -prune \\) \\ \n",$3}') + getmount "/mnt /media /mount /home -maxdepth 5 -type d $alreadymounted" + partitiontype="$(lsblk -no "fstype" "$chosen")" + case "$partitiontype" in + "vfat") sudo -A mount -t vfat "$chosen" "$mp" -o rw,umask=0000;; + *) sudo -A mount "$chosen" "$mp"; user="$(whoami)"; ug="$(groups | awk '{print $1}')"; sudo -A chown "$user":"$ug" "$mp";; + esac + notify-send "💻 USB mounting" "$chosen mounted to $mp." + } + +mountandroid() { \ + chosen=$(echo "$anddrives" | dmenu -i -p "Which Android device?" | cut -d : -f 1) + getmount "$HOME -maxdepth 3 -type d" + simple-mtpfs --device "$chosen" "$mp" + notify-send "🤖 Android Mounting" "Android device mounted to $mp." + } + +asktype() { \ + case $(printf "USB\\nAndroid" | dmenu -i -p "Mount a USB drive or Android device?") in + USB) mountusb ;; + Android) mountandroid ;; + esac + } + +anddrives=$(simple-mtpfs -l 2>/dev/null) +usbdrives="$(lsblk -rpo "name,type,size,mountpoint" | awk '$2=="part"&&$4==""{printf "%s (%s)\n",$1,$3}')" + +if [ -z "$usbdrives" ]; then + [ -z "$anddrives" ] && echo "No USB drive or Android device detected" && exit + echo "Android device(s) detected." + mountandroid +else + if [ -z "$anddrives" ]; then + echo "USB drive(s) detected." + mountusb + else + echo "Mountable USB drive(s) and Android device(s) detected." + asktype + fi +fi diff --git a/.scripts/games/3ds.sh b/.scripts/games/3ds.sh new file mode 100755 index 0000000..a31a79f --- /dev/null +++ b/.scripts/games/3ds.sh @@ -0,0 +1,31 @@ +#!/bin/dash +#Game Lists ------------ +tridsgame="Back\0icon\x1fzback +Animal Crossing - New Leaf +Corpse Party\0icon\x1fzcorpseparty +Harvest Moon 3D - A New Beginning\0icon\x1fzHarvMoon_Newb +New Super Mario Bros. 2\0icon\x1fznsmb2 +Pokemon Omega Ruby\0icon\x1fzpokemon-omegaruby +Pokemon Ultra Moon\0icon\x1fzpokemon-ultramoon +Pokemon X\0icon\x1fzpokemon-x +Radiant Historia\0icon\x1fzradiant +Super Mario 3D Land\0icon\x1fzsm3d +" + +#Scripts --------------- +chosen3ds=$(echo -e "$tridsgame" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case $chosen3ds in + "Back") sh ~/.scripts/play.sh ;; + "Super Mario 3D Land") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/$chosen3ds.3ds" ;; + "New Super Mario Bros. 2") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/$chosen3ds.3ds" ;; + "Corpse Party") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/Corpse Party.3ds" ;; + "Pokemon X") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/Pokemon X.3ds" ;; + "Pokemon Ultra Moon") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/Pokemon Ultra Moon.cxi" ;; + "Pokemon Omega Ruby") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/Pokemon Omega Ruby.3ds" ;; + "Radiant Historia") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/Radiant Historia.3ds" ;; + "Harvest Moon 3D - A New Beginning") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/$chosen3ds.3ds" ;; + "Animal Crossing - New Leaf") notify-send "Launching..." "$chosen3ds" && citra-qt "my Games/3DS/$chosen3ds.3ds" ;; + +esac + diff --git a/.scripts/games/mcpe.sh b/.scripts/games/mcpe.sh new file mode 100755 index 0000000..12a02d0 --- /dev/null +++ b/.scripts/games/mcpe.sh @@ -0,0 +1,21 @@ +#!/bin/dash +#Version Lists --------- +mcpeversion="Back\0icon\x1fzback +Latest +1.14.30.51 +1.14.25.1 +1.14.1.4" + +#Scripts --------------- +chosenmcpe=$(echo -e "$mcpeversion" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case "$chosenmcpe" in + Back) sh ~/.scripts/play.sh ;; + Latest) notify-send "Launching..." "MCPE Latest Version" && mcpelauncher-client -dg ~/.local/share/mcpelauncher/versions/1.14.30.51 ;; + 1.14.30.51) notify-send "Launching..." "MCPE Version: $chosenmcpe" && mcpelauncher-client -dg ~/.local/share/mcpelauncher/versions/$chosenmcpe ;; + 1.14.25.1) notify-send "Launching..." "MCPE Version: $chosenmcpe" && mcpelauncher-client -dg ~/.local/share/mcpelauncher/versions/$chosenmcpe ;; + 1.14.1.5) notify-send "Launching..." "MCPE Version: $chosenmcpe" && mcpelauncher-client -dg ~/.local/share/mcpelauncher/versions/1.14.1.5 ;; + 1.14.1.4) notify-send "Launching..." "MCPE Version: $chosenmcpe" && mcpelauncher-client -dg ~/.local/share/mcpelauncher/versions/1.14.1.4 ;; + +esac + diff --git a/.scripts/games/nds.sh b/.scripts/games/nds.sh new file mode 100755 index 0000000..42ba90c --- /dev/null +++ b/.scripts/games/nds.sh @@ -0,0 +1,15 @@ +#!/bin/dash +#Game Lists ------------ +games="Back\0icon\x1fzback +Pokemon Black\0icon\x1fzndscart +Pokemon Black 2\0icon\x1fzndscart" + +#Scripts --------------- +chosen=$(echo -e "$games" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case $chosen in + Back) sh ~/.scripts/play.sh ;; + "Pokemon Black") notify-send "$chosen" "Not available yet." ;; + "Pokemon Black 2") notify-send "$chosen" "Not available yet." ;; +esac + diff --git a/.scripts/games/nes.sh b/.scripts/games/nes.sh new file mode 100755 index 0000000..1471289 --- /dev/null +++ b/.scripts/games/nes.sh @@ -0,0 +1,17 @@ +#!/bin/dash +#Game Lists ------------ +games="Back\0icon\x1fzback +Pac-Man\0icon\x1fznescart +Super Mario Bros.\0icon\x1fznescart +Tetris\0icon\x1fznescart" + +#Scripts --------------- +chosenNes=$(echo -e "$games" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case $chosenNes in + Back) sh ~/.scripts/play.sh ;; + "Pac-Man") notify-send "$chosenNes" "Not available yet." ;; + "Super Mario Bros.") notify-send "$chosenNes" "Not available yet." ;; + "Tetris") notify-send "Launching..." "$chosenNes" && nestopia -f "$HOME/my Games/NES/Tetris (USA).nes" +esac + diff --git a/.scripts/games/pc.sh b/.scripts/games/pc.sh new file mode 100755 index 0000000..3c1066f --- /dev/null +++ b/.scripts/games/pc.sh @@ -0,0 +1,13 @@ +#!/bin/dash +#Game Lists ------------ +games="Back\0icon\x1fzback\nTint (Tetris Clone)\nNothing." + +#Scripts --------------- +chosen=$(echo -e "$games" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case $chosen in + Back) sh ~/.scripts/play.sh ;; + "Tint (Tetris Clone)") notify-send "Launching..." "$chosen" && urxvt -e tint ;; + "Nothing.") notify-send "$chosen" "Not available yet." ;; +esac + diff --git a/.scripts/games/ps2.sh b/.scripts/games/ps2.sh new file mode 100755 index 0000000..a31559e --- /dev/null +++ b/.scripts/games/ps2.sh @@ -0,0 +1,17 @@ +#!/bin/dash +#Game Lists ------------ +pstwo="Back\0icon\x1fzback +Okami\0icon\x1fzdisk +Persona 3 FES\0icon\x1fzdisk +Persona 4\0icon\x1fzdisk" + +#Scripts --------------- +chosenps2=$(echo -e "$pstwo" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case $chosenps2 in + Back)sh ~/.scripts/play.sh ;; + "Okami") notify-send "Launching..." "$chosenps2" && PCSX2 --nogui --fullscreen "$HOME/my Games/PS2/Okami.iso" ;; + "Persona 3 FES") notify-send "Launching..." "$chosenps2" && PCSX2 --nogui --fullscreen "$HOME/my Games/PS2/Persona 3 FES.iso" ;; + "Persona 4") notify-send "$chosenps2" "Not available yet." ;; +esac + diff --git a/.scripts/launch-conky.sh b/.scripts/launch-conky.sh new file mode 100755 index 0000000..be91fd7 --- /dev/null +++ b/.scripts/launch-conky.sh @@ -0,0 +1,6 @@ +#!/bin/dash +killall conky + +while pgrep -u $UID -x conky >/dev/null; do sleep 1; done + +conky --config=$HOME/.config/conky/conkyrc -b diff --git a/.scripts/launch-vim b/.scripts/launch-vim new file mode 100755 index 0000000..91b07d7 --- /dev/null +++ b/.scripts/launch-vim @@ -0,0 +1,2 @@ +#!/bin/sh +urxvt -name vim -e vim diff --git a/.scripts/motd.sh b/.scripts/motd.sh new file mode 100644 index 0000000..1ae1693 --- /dev/null +++ b/.scripts/motd.sh @@ -0,0 +1,30 @@ +BLACK='\e[40m' +RED='\e[0;41m' +GREEN='\e[0;42m' +ORANGE='\e[0;43m' +BLUE='\e[0;44m' +PUR='\e[0;45m' +CYAN='\e[0;46m' +GRAY='\e[0;47m' +DGRAY='\e[48;5;0m' +LRED='\e[1;41m' +LGREEN='\e[1;42m' +YELLOW='\e[1;43m' +LBLUE='\e[1;44m' +LPUR='\e[1;45m' +LCYAN='\e[1;46m' +WHITE='\e[1;47m' +N='\033[0m' +echo "$(tput setaf 4) dhhhhhhhhhhhhhhhd" +echo ' yooooooooooo+//+d' +echo ' ds/+h' +echo ' ds/+h' +echo ' ds/+h hoy' +echo ' ds/+h hy' +echo ' ds/+h' +echo ' ds/+h do+d' +echo ' ds/+h do/od' +echo ' ds/+h do/od' +echo ' y///oooooo+/od' +echo -e " dddddddddddd ${DGRAY} ${LRED} ${LGREEN} ${YELLOW} ${LBLUE} ${LPUR} ${LCYAN} ${WHITE} ${N}" +echo -e " ${BLACK} ${RED} ${GREEN} ${ORANGE} ${BLUE} ${PUR} ${CYAN} ${GRAY} ${N}" diff --git a/.scripts/mpris.sh b/.scripts/mpris.sh new file mode 100755 index 0000000..a768adc --- /dev/null +++ b/.scripts/mpris.sh @@ -0,0 +1,70 @@ +#!/bin/bash + +rofi_command="rofi -theme $HOME/.config/rofi/theme/Android/six.rasi" + +# Gets the current status of mpd (for us to parse it later on) +status="$(python3 $HOME/.config/polybar/scripts/player-mpris-tail.py)" +# Defines the Play / Pause option content +if [[ $status == *"[playing]"* ]]; then + play_pause="" +else + play_pause="" +fi +active="" +urgent="" + +# Display if repeat mode is on / off +tog_repeat="" +if [[ $status == *"repeat: on"* ]]; then + active="-a 4" +elif [[ $status == *"repeat: off"* ]]; then + urgent="-u 4" +else + tog_repeat=" Parsing error" +fi + +# Display if random mode is on / off +tog_random="" +if [[ $status == *"random: on"* ]]; then + [ -n "$active" ] && active+=",5" || active="-a 5" +elif [[ $status == *"random: off"* ]]; then + [ -n "$urgent" ] && urgent+=",5" || urgent="-u 5" +else + tog_random=" Parsing error" +fi +stop="" +next="" +previous="" + +# Variable passed to rofi +options="$previous\n$play_pause\n$stop\n$next\n$tog_repeat\n$tog_random" + +# Get the current playing song +current=$(mpc -f %title% current) +# If mpd isn't running it will return an empty string, we don't want to display that +if [[ -z "$current" ]]; then + current="-" +fi + +# Spawn the mpd menu with the "Play / Pause" entry selected by default +chosen="$(echo -e "$options" | $rofi_command -p " $current" -dmenu $active $urgent -selected-row 1)" +case $chosen in + $previous) + mpc -q prev && notify-send -u low -t 1800 " $(mpc current)" + ;; + $play_pause) + mpc -q toggle && notify-send -u low -t 1800 " $(mpc current)" + ;; + $stop) + mpc -q stop + ;; + $next) + mpc -q next && notify-send -u low -t 1800 " $(mpc current)" + ;; + $tog_repeat) + mpc -q repeat + ;; + $tog_random) + mpc -q random + ;; +esac diff --git a/.scripts/musicplayer.sh b/.scripts/musicplayer.sh new file mode 100755 index 0000000..cbe7ccd --- /dev/null +++ b/.scripts/musicplayer.sh @@ -0,0 +1,18 @@ +#!/bin/dash +choices="Cancel\0icon\x1fzcancel +cmus\0icon\x1fzcmus +Spotify\0icon\x1fzspotify +VLC\0icon\x1fzvlc" + +message="What music player do you want to launch?" + +chosen=$(echo -e "$choices" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + + +case "$chosen" in + cmus) notify-send "Launching..." "cmus" && urxvt -name cmus -e cmus ;; + Spotify) notify-send "Launching..." "Spotify" && env LD_PRELOAD=/usr/local/lib/spotify-adblock.so spotify ;; + VLC) notify-send "Launching..." "VLC" && vlc ;; +esac + + diff --git a/.scripts/play.sh b/.scripts/play.sh new file mode 100755 index 0000000..e19178e --- /dev/null +++ b/.scripts/play.sh @@ -0,0 +1,40 @@ +#!/bin/dash +#Option Display ------------ +cancel="Cancel" +trids="3DS" +pc="PC" +mcbe="Minecraft: Bedrock Edition" +mcje="Minecraft: Java Edition" +#Game Types ------------- +choices="$cancel\0icon\x1fzcancel +$trids\0icon\x1fz3ds +$pc\0icon\x1fzfullss +$mcbe\0icon\x1fzminecraftbe +$mcje\0icon\x1fzminecraft +NDS\0icon\x1fznds +NES\0icon\x1fznes +PS2\0icon\x1fzps2 +RetroArch\0icon\x1fzretroarch +Steam" +gamedir="$HOME/.scripts/games" + +#Message ---------------- +message="What game do you want to launch?" + +#Choice ----------------- +chosen=$(echo -e "$choices" | rofi -p Games -dmenu -i -theme ~/.config/rofi/theme/sidebar.rasi) + +#Choice Execution ------- +case "$chosen" in + RetroArch) notify-send "Launching..." "$chosen" && retroarch ;; + $pc) sh $gamedir/pc.sh ;; + PS2) sh $HOME/.scripts/games/ps2.sh ;; + NDS) sh $HOME/.scripts/games/nds.sh ;; + $trids) sh $HOME/.scripts/games/3ds.sh ;; + Steam) notify-send "Launching..." "$chosen" && steam ;; + $mcbe) sh $gamedir/mcpe.sh ;; + "NES") sh $HOME/.scripts/games/nes.sh ;; + $mcje) notify-send "Launching..." "$chosen" && gamemoderun java -jar "$HOME/my Games/PC/TLauncher.jar";; +esac + + diff --git a/.scripts/prompt b/.scripts/prompt new file mode 100755 index 0000000..ef27f04 --- /dev/null +++ b/.scripts/prompt @@ -0,0 +1,23 @@ +#!/bin/sh +#--- Option ------------------ +cancel="" +suspend="" +log_out="" +restart="" +shutdown="" +#--- Choices ----------------- +choice="$cancel +$shutdown +$restart +$suspend +$log_out" + +chosen=$(echo -en "$choice" | rofi -selected-row 0 -dmenu -i -theme ~/.config/rofi/theme/Android/five.rasi) + +case "$chosen" in + $cancel) ;; + $log_out) bspc quit ;; + $suspend) systemctl suspend ;; + $restart) systemctl reboot ;; + $shutdown) systemctl poweroff ;; +esac diff --git a/.scripts/ps2c b/.scripts/ps2c new file mode 100755 index 0000000..8226897 --- /dev/null +++ b/.scripts/ps2c @@ -0,0 +1,5 @@ +xboxdrv --evdev /dev/input/event14 \ + --evdev-absmap ABS_X=x1,ABS_Y=y1,ABS_RZ=x2,ABS_Z=y2,ABS_HAT0X=dpad_x,ABS_HAT0Y=dpad_y \ + --axismap -Y1=Y1,-Y2=Y2 \ + --evdev-keymap BTN_TOP=x,BTN_TRIGGER=y,BTN_THUMB2=a,BTN_THUMB=b,BTN_BASE3=back,BTN_BASE4=start,BTN_BASE=lb,BTN_BASE2=rb,BTN_TOP2=lt,BTN_PINKIE=rt,BTN_BASE5=tl,BTN_BASE6=tr \ + --mimic-xpad --silent diff --git a/.scripts/rateUSD.sh b/.scripts/rateUSD.sh new file mode 100644 index 0000000..77f2741 --- /dev/null +++ b/.scripts/rateUSD.sh @@ -0,0 +1,12 @@ +if [ ! -f /tmp/rate.html ]; then + curl -s "https://www.cnbcindonesia.com/market-data/currencies/IDR=/USD-IDR" > /tmp/rate.html +fi +if [ ! -f /tmp/rateUSD.txt ]; then + cat /tmp/rate.html | grep -A1 'class="mark_val"' | cut -d'"' -f2 | cut -d'<' -f2 | cut -d'>' -f2 > /tmp/rateUSD.txt + sed -i "s/mark_val/Kurs USD -> IDR:/g" /tmp/rateUSD.txt + cat /tmp/rateUSD.txt + echo "Sumber: CNBC Indonesia" +else + cat /tmp/rateUSD.txt + echo "Sumber: CNBC Indonesia" +fi diff --git a/.scripts/resolution.sh b/.scripts/resolution.sh new file mode 100755 index 0000000..2f8a1a9 --- /dev/null +++ b/.scripts/resolution.sh @@ -0,0 +1,15 @@ +#!/bin/dash +choices="1366x768 +1360x765 +1280x720" + +message="What music player do you want to launch?" + +chosen=$(echo -e "$choices" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case "$chosen" in + 1366x768) xrandr --output VGA-1 --mode $chosen && notify-send "Resolution has been changed to" "$chosen";; + 1360x765) xrandr --output VGA-1 --mode 1360x765_60.00 && notify-send "Resolution has been changed to" "1360x765";; + 1280x720) xrandr --output VGA-1 --mode $chosen && notify-send "Resolution has been changed to" "$chosen";; +esac + diff --git a/.scripts/shutdown b/.scripts/shutdown new file mode 100755 index 0000000..28a60b4 --- /dev/null +++ b/.scripts/shutdown @@ -0,0 +1,3 @@ +#!/bin/bash +[[ $(echo -e "No\nYes" | dmenu -i -p "Are you sure") == [Yes]* ]] && systemctl suspend + diff --git a/.scripts/ss.sh b/.scripts/ss.sh new file mode 100755 index 0000000..30f76d1 --- /dev/null +++ b/.scripts/ss.sh @@ -0,0 +1,21 @@ +#!/bin/dash + +cancel="" +quickSS="" +timer="" +select="" + +choices="$cancel +$quickSS +$timer +$select" + +message="What type of screenshot?" + +chosen=$(echo -en "$choices" | rofi -dmenu -i -theme ~/.config/rofi/theme/Android/four.rasi) + +case "$chosen" in + $quickSS) scrot '%m-%d-%y.%H:%M:%S.$wx$h.Zi.png' -e 'mv $f ~/Pictures/scrot/' && notify-send -u low "Screenshot saved." ;; + $timer) scrot '%m-%d-%y.%H:%M:%S.$wx$h.Zi.png' -d 5 -e 'mv $f ~/Pictures/scrot/' && notify-send -u low "Screenshot saved." ;; + $select) scrot -s '%m-%d-%y.%H:%M:%S.$wx$h.Zi.png' -e 'mv $f ~/Pictures/scrot/' && notify-send -u low "Screenshot saved." ;; +esac diff --git a/.scripts/test.sh b/.scripts/test.sh new file mode 100755 index 0000000..8662da3 --- /dev/null +++ b/.scripts/test.sh @@ -0,0 +1,31 @@ +#!/bin/dash +#Option Display ------------ +screen="" +area="" +window="" +#Game Types ------------- +choices="$screen +$area +$window" +gamedir="$HOME/.scripts/games" + +#Message ---------------- +message="What game do you want to launch?" + +#Choice ----------------- +chosen=$(echo -e "$choices" | rofi -p '' -dmenu -i -theme ~/.config/rofi/theme/Android/three.rasi) + +#Choice Execution ------- +case "$chosen" in + RetroArch) notify-send "Launching..." "$chosen" && retroarch ;; + $pc) sh $gamedir/pc.sh ;; + PS2) sh $HOME/.scripts/games/ps2.sh ;; + NDS) sh $HOME/.scripts/games/nds.sh ;; + $trids) sh $HOME/.scripts/games/3ds.sh ;; + Steam) notify-send "Launching..." "$chosen" && steam ;; + $mcbe) sh $gamedir/mcpe.sh ;; + "NES") sh $HOME/.scripts/games/nes.sh ;; + $mcje) notify-send "$chosen" "Not available yet." ;; +esac + + diff --git a/.scripts/video.sh b/.scripts/video.sh new file mode 100755 index 0000000..3da2083 --- /dev/null +++ b/.scripts/video.sh @@ -0,0 +1,21 @@ +#!/bin/dash +choices="Cancel\0icon\x1fzcancel +Electron Player\0icon\x1fzE +KODI\0icon\x1fzkodi +Twitch\0icon\x1fztwitch +VLC\0icon\x1fzvlc +YouTube\0icon\x1fzyt" + +message="What video player do you want to launch?" + +chosen=$(echo -e "$choices" | rofi -dmenu -i -theme ~/.config/rofi/theme/sidebar) + +case "$chosen" in + KODI) notify-send "Launching..." "KODI" && kodi ;; + "Electron Player") notify-send "Launching..." "Electron Player" && electronplayer ;; + VLC) notify-send "Launching..." "VLC" && vlc ;; + YouTube) notify-send "Launching..." "$chosen" && urxvt -e youtube-viewer ;; + Twitch) notify-send "Launching..." "$chosen" && urxvt -e twitch-curses ;; +esac + + diff --git a/.scripts/volume.sh b/.scripts/volume.sh new file mode 100755 index 0000000..b89b249 --- /dev/null +++ b/.scripts/volume.sh @@ -0,0 +1,59 @@ +#!/bin/bash + +## Author : Aditya Shakya (adi1090x) +## Mail : adi1090x@gmail.com +## Github : @adi1090x +## Reddit : @adi1090x + +rofi_command="rofi -theme $HOME/.config/rofi/theme/Android/three.rasi" + +## Get Volume +#VOLUME=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%') +MUTE=$(amixer get Master | tail -n 1 | awk -F ' ' '{print $6}' | tr -d '[]%') + +active="" +urgent="" + +if [[ $MUTE == *"off"* ]]; then + active="-a 1" +else + urgent="-u 1" +fi + +if [[ $MUTE == *"off"* ]]; then + active="-a 1" +else + urgent="-u 1" +fi + +if [[ $MUTE == *"on"* ]]; then + VOLUME="$(amixer get Master | tail -n 1 | awk -F ' ' '{print $5}' | tr -d '[]%')%" +else + VOLUME="Mu..." +fi + +## Icons +ICON_UP="" +ICON_DOWN="" +ICON_MUTED="" + +options="$ICON_UP\n$ICON_MUTED\n$ICON_DOWN" + +## Main +chosen="$(echo -e "$options" | $rofi_command -p "$VOLUME" -dmenu $active $urgent -selected-row 0)" +case $chosen in + $ICON_UP) + amixer -Mq set Master,0 5%+ unmute && notify-send -u low -t 1500 "Volume Up $ICON_UP" + sh $HOME/.scripts/volume.sh + ;; + $ICON_DOWN) + amixer -Mq set Master,0 5%- unmute && notify-send -u low -t 1500 "Volume Down $ICON_DOWN" + sh $HOME/.scripts/volume.sh + ;; + $ICON_MUTED) + amixer -q set Master toggle + sh $HOME/.scripts/volume.sh + ;; +esac + +