holy moly we're almost there
This commit is contained in:
+11
@@ -0,0 +1,11 @@
|
||||
#! /usr/bin/env bash
|
||||
|
||||
connect() {
|
||||
xrandr --output HDMI-2 --same-as eDP-1
|
||||
}
|
||||
|
||||
disconnect() {
|
||||
xrandr --output HDMI-2 --off
|
||||
}
|
||||
|
||||
xrandr | grep "HDMI-2 connected" &>>/dev/null && connect || disconnect
|
||||
Executable
+3
@@ -0,0 +1,3 @@
|
||||
#!/usr/bin/env bash
|
||||
URL="$(xclip -selection clipboard -o)"
|
||||
mpv $URL
|
||||
Executable
+68
@@ -0,0 +1,68 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Prompts for a pass entry, then for a specific field. Similar to passmenu, but
|
||||
# uses rofi, and can resume from a previous session.
|
||||
#
|
||||
# Example: passmenu [RESUME]
|
||||
|
||||
ROFI_CMD='rofi -dmenu -theme theme/passmenu.rasi'
|
||||
MSG_CMD='notify-send'
|
||||
set -e
|
||||
shopt -s nullglob globstar
|
||||
|
||||
for prog in xclip pass; do
|
||||
if ! command -v "$prog" >/dev/null; then
|
||||
>&2 echo "$prog not installed, aborting"
|
||||
exit 1
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ $1 == -r ]]; then
|
||||
resume=1; shift
|
||||
fi
|
||||
|
||||
url=
|
||||
# Get qutebrowser's current url
|
||||
win=$(xdotool getactivewindow)
|
||||
if [[ -n $win ]]; then
|
||||
winname=$(xdotool getwindowname $win)
|
||||
if [[ $winname =~ " - Mozilla Firefox$" ]]; then
|
||||
url=${winname% - Mozilla*}
|
||||
url=${url##* - }
|
||||
while (( ${#url//[^.]/} > 1 )); do
|
||||
url=${url#*.}
|
||||
done
|
||||
fi
|
||||
fi
|
||||
|
||||
LAST_ENTRY_FILE=/tmp/_upm
|
||||
if [[ -n $resume && -f $LAST_ENTRY_FILE ]]; then
|
||||
entry="$(<$LAST_ENTRY_FILE)"
|
||||
else
|
||||
prefix=${PASSWORD_STORE_DIR-~/.password-store}
|
||||
password_files=( "$prefix"/**/*.gpg )
|
||||
password_files=( "${password_files[@]#"$prefix"/}" )
|
||||
password_files=( "${password_files[@]%.gpg}" )
|
||||
entry=$(printf "%s\n" "${password_files[@]}" | $ROFI_CMD -p "..." -filter "$url")
|
||||
fi
|
||||
|
||||
if [[ -z $entry ]]; then
|
||||
$MSG_CMD "Error!" "Failed to select $entry"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "$entry" >/tmp/_upm
|
||||
secrets="$(pass show "$entry")"
|
||||
if [[ -n $secrets ]]; then
|
||||
fields=$(awk -F': ' 'NR>1 && !/^otpauth:/ {print $1}' <<<"$secrets")
|
||||
field=$(printf "password\n%s\notp\n" "${fields[@]}" | $ROFI_CMD -p "$entry")
|
||||
case $field in
|
||||
password) pass -c "$entry" ;;
|
||||
otp) printf "%s" "$(pass otp -c "$entry")" ;;
|
||||
*) printf "%s" "$(awk -v "key=$field:" '$1 == key {print $2}' <<<"$secrets")" | xclip -selection clipboard -in ;;
|
||||
esac
|
||||
$MSG_CMD "Success!" "Copied <b>$entry/$field</b> to clipboard for 45s"
|
||||
else
|
||||
$MSG_CMD "Error!" "Failed to retrieve $entry"
|
||||
exit 2
|
||||
fi
|
||||
Executable
+31
@@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env sh
|
||||
|
||||
rofi_command="rofi -theme theme/powermenu.rasi"
|
||||
|
||||
### Options ###
|
||||
power_off="\tShutdown"
|
||||
reboot="\tReboot"
|
||||
lock="\tLock"
|
||||
suspend="鈴\tSleep"
|
||||
log_out="\tLogout"
|
||||
# Variable passed to rofi
|
||||
options="$power_off\n$reboot\n$lock\n$suspend\n$log_out"
|
||||
|
||||
case "$(echo -e "$options" | $rofi_command -dmenu)" in
|
||||
" Shutdown")
|
||||
systemctl poweroff
|
||||
;;
|
||||
" Reboot")
|
||||
systemctl reboot
|
||||
;;
|
||||
" Lock")
|
||||
dm-tool lock
|
||||
;;
|
||||
"鈴 Sleep")
|
||||
dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Pause
|
||||
systemctl suspend
|
||||
;;
|
||||
" Logout")
|
||||
bspc quit
|
||||
;;
|
||||
esac
|
||||
Executable
+53
@@ -0,0 +1,53 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
timer=5
|
||||
|
||||
# Options
|
||||
select="麗"
|
||||
window="类"
|
||||
screen=""
|
||||
delay=""
|
||||
cancel=""
|
||||
|
||||
# Variable passed to rofi
|
||||
options="$select\n$window\n$screen\n$delay\n$cancel"
|
||||
|
||||
rofi_command="rofi -theme theme/screenshotmenu.rasi"
|
||||
|
||||
setFilename() {
|
||||
directory="/tmp/"
|
||||
filename="IMG_$(date +%Y%m%d_%H%M%S).jpg"
|
||||
filepath=$directory$filename
|
||||
}
|
||||
|
||||
notify() {
|
||||
dunstify "Screenshot saved and copied to clipboard" -i accessories-screenshot
|
||||
}
|
||||
|
||||
chosen="$(echo -e "$options" | $rofi_command -dmenu)"
|
||||
case $chosen in
|
||||
$select)
|
||||
setFilename
|
||||
maim -Buosd 0.25 \
|
||||
| tee $filepath | xclip -selection c -t image/png
|
||||
notify
|
||||
;;
|
||||
$window)
|
||||
setFilename
|
||||
maim -Buod 0.25 -i $(xdotool getactivewindow) \
|
||||
| tee $filepath | xclip -selection c -t image/png
|
||||
notify
|
||||
;;
|
||||
$screen)
|
||||
setFilename
|
||||
maim -Buod 0.25 \
|
||||
| tee $filepath | xclip -selection c -t image/png
|
||||
notify
|
||||
;;
|
||||
$delay)
|
||||
setFilename
|
||||
maim -Buod $timer \
|
||||
| tee $filepath | xclip -selection c -t image/png
|
||||
notify
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user