Getting things setup for sway wayland

This commit is contained in:
Chris Cochrun 2021-04-16 06:09:09 -05:00
parent 2287ac931b
commit e94ff95428
20 changed files with 513 additions and 53 deletions

3
scripts/screenshot Executable file
View file

@ -0,0 +1,3 @@
#!/bin/sh
maim --hidecursor --select | xclip -selection clipboard -target image/png

2
scripts/waystart Executable file
View file

@ -0,0 +1,2 @@
#!/bin/sh
export QT_QPA_PLATFORMTHEME="qt5ct"

62
scripts/wofipass Executable file
View file

@ -0,0 +1,62 @@
#!/usr/bin/env bash
# Very basic interface for pass using wofi
# Get all password files and create an array
root=~/.password-store
CACHE=~/.local/tmp/pass_wofi
seat=seat0
list_passwords() {
shopt -s nullglob globstar
cd "${root}" || exit
pw_list=(**/*.gpg)
printf '%s\n' "${pw_list[@]%.gpg}" | sort -n
}
prompt='search for passwords...'
SECRET=$(list_passwords | wofi -i --width 700 --lines 20 --height 250 --prompt="${prompt}" --dmenu --cache-file ${CACHE})
# Ask whether pass, user or both are required
options=("Password" \
"User" \
"User and password" \
"QR-Code" \
"OTP")
option=$(printf '%s\n' "${options[@]%}" | wofi -i --dmenu --width 400 --lines 4 --prompt="..." --cache-file /dev/null)
echo $option
case ${option} in
Password )
echo "Test"
wtype $(pass ${SECRET} | head -n 1)
;;
User )
wtype $(pass ${SECRET} | rg user: | awk '{$1 = ""; print $0}')
;;
"User and password" )
wtype $(pass ${SECRET} | rg user: | awk '{$1 = ""; print $0}')
wtype -k TAB
wtype $(pass ${SECRET} | head -n 1)
;;
"QR-Code" )
if [[ $SECRET =~ wifi$ ]]; then
# Produce a valid wifi QR-code
WIFISSID=$(pass get_user ${SECRET})
WIFIPASS=$(pass get_pass ${SECRET})
WIFIQR="WIFI:T:WPA;S:${WIFISSID};P:${WIFIPASS};;"
qrencode -s 8 -o - $WIFIQR | feh --title "pass: QR-WIFI" -
else
# Only password
pass show -q1 ${SECRET}
fi
;;
"OTP" )
wtype $(pass otp ${SECRET})
;;
esac
# wl-copy -o -s ${seat} ${PASSWD_PASS}

51
scripts/wofiqute Executable file
View file

@ -0,0 +1,51 @@
#!/usr/bin/env bash
#
# Script name: dmqute
# Description: Search your qutebrowswer bookmarks and quickmarks.
# Dependencies: dmenu, qutebrowser
# GitLab: https://www.gitlab.com/dwt1/dmscripts
# License: https://www.gitlab.com/dwt1/dmscripts/LICENSE
# Contributors: Derek Taylor
# Defining location of bookmarks file
BMFILE="$HOME/.config/qutebrowser/bookmarks/urls"
# Defining location of quickmarks file
QMFILE="$HOME/.config/qutebrowser/quickmarks"
# Defining location of history database
HISTDB="$HOME/.local/share/qutebrowser/history.sqlite"
# A separator that will appear in between quickmarks, bookmarks and history urls.
SEPARATOR="----------"
# Read array of options to choose.
readarray -t bmarks < "$BMFILE"
readarray -t qmarks < "$QMFILE"
# Sort the bookmark, quickmark and history lists so that the url is the last field.
# We will awk print the last field later.
# History list is formed by grep'ing "http" from the history table.
bmlist=$(printf '%s\n' "${bmarks[@]}" | awk '{print $2" - "$1}')
qmlist=$(printf '%s\n' "${qmarks[@]}" | awk '{print "["$1"] - "$NF}' | sort)
SQL="SELECT h.title, h.url FROM history as h where url like 'http%';"
histlist=$(printf '%s\n' "$(sqlite3 "$HISTDB" "${SQL}")" | awk -F "|" '{print $1" - "$NF}')
# Piping the above lists into dmenu.
# We use "printf '%s\n'" to format the array one item to a line.
# The urls are listed quickmarks first, then the SEPARATOR, and then bookmarks.
choice=$(printf '%s\n' "$qmlist" "$SEPARATOR" "$bmlist" "$SEPARATOR" "$histlist" | wofi --columns=2 -p 'Qutebrowser open:' -dmenu) "$@" || exit
# What to do if the separator is chosen from the list.
# We simply launch qutebrowser without any url arguments.
# shellcheck disable=SC2154
if [ "$choice" == "$SEPARATOR" ]; then
qutebrowser
# What to do when/if we choose a url to view.
elif [ "$choice" ]; then
url=$(echo "${choice}" | awk '{print $NF}') || exit
qutebrowser "$url"
# What to do if we just escape without choosing anything.
else
echo "Program terminated." && exit 0
fi

View file

@ -6,7 +6,7 @@
# yt search query takes input from the passed arg, prompts using fzf
# yt -r takes input and prompts using rofi ($guicmd)
if [ $(hostname) = "chris-linuxlaptop" ]; then
if [ $(hostname) = "syl" ]; then
style="laptop"
#echo "this is hidpi"
else
@ -14,8 +14,6 @@ else
#echo "this is not hidpi"
fi
-no-lazy-grab -show drun -modi drun -theme launchers-git/"$style".rasi
defcmd="fzf"
guicmd="rofi -no-lazy-grab -dmenu -i -theme launchers-git/"$style".rasi" #uncomment next line for dmenu
#guicmd="dmenu -i -l 15"