diff options
| author | Luke Smith <luke@lukesmith.xyz> | 2019-02-02 13:10:43 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-02-02 13:10:43 -0500 |
| commit | a37aba2078c083fecb9761e5dd6c740cf1414989 (patch) | |
| tree | 3b9e126da9cf874285718c91702fb14501a3faf5 /.scripts | |
| parent | 18378660cae369465f520fb656c64b59dc0c5411 (diff) | |
| parent | 1bffcd12c363064829682e16690430a118d962a4 (diff) | |
| download | eibhear-a37aba2078c083fecb9761e5dd6c740cf1414989.tar.gz eibhear-a37aba2078c083fecb9761e5dd6c740cf1414989.tar.zst eibhear-a37aba2078c083fecb9761e5dd6c740cf1414989.zip | |
Merge branch 'master' into dmenuumount
Diffstat (limited to '.scripts')
| -rwxr-xr-x | .scripts/cron/checkup | 2 | ||||
| -rwxr-xr-x | .scripts/cron/newsup | 4 | ||||
| -rwxr-xr-x | .scripts/i3cmds/displayselect | 4 | ||||
| -rwxr-xr-x | .scripts/i3cmds/dmenumount | 6 | ||||
| -rwxr-xr-x | .scripts/i3cmds/dmenuumount | 4 | ||||
| -rwxr-xr-x | .scripts/i3cmds/lockscreen | 14 | ||||
| -rwxr-xr-x | .scripts/i3cmds/maimpick | 4 | ||||
| -rwxr-xr-x | .scripts/i3cmds/td-toggle | 13 | ||||
| -rwxr-xr-x | .scripts/i3cmds/torwrap | 6 | ||||
| -rwxr-xr-x | .scripts/i3cmds/xcqr | 2 | ||||
| -rwxr-xr-x | .scripts/statusbar/mpdupdate | 3 | ||||
| -rwxr-xr-x | .scripts/statusbar/torrent | 5 | ||||
| -rwxr-xr-x | .scripts/tools/compiler | 25 | ||||
| -rwxr-xr-x | .scripts/tools/ifinstalled | 2 | ||||
| -rwxr-xr-x | .scripts/tools/qndl | 11 | ||||
| -rwxr-xr-x | .scripts/tools/queueandnotify | 7 | ||||
| -rwxr-xr-x | .scripts/tools/setbg | 2 | ||||
| -rwxr-xr-x | .scripts/tools/transadd | 4 |
18 files changed, 52 insertions, 66 deletions
diff --git a/.scripts/cron/checkup b/.scripts/cron/checkup index 770c349..a32cdcb 100755 --- a/.scripts/cron/checkup +++ b/.scripts/cron/checkup @@ -3,7 +3,7 @@ ping -q -w 1 -c 1 `ip r | grep -m 1 default | cut -d ' ' -f 3` >/dev/null || exit -notify-send -i "$PIX/larbs.gif" "Checking for pacakge updates..." +notify-send -i "$PIX/larbs.svg" "Checking for pacakge updates..." sudo pacman -Syyuw --noconfirm || notify-send "Error downloading updates. diff --git a/.scripts/cron/newsup b/.scripts/cron/newsup index 598cced..32f6a37 100755 --- a/.scripts/cron/newsup +++ b/.scripts/cron/newsup @@ -4,7 +4,7 @@ ping -q -t 1 -c 1 `ip r | grep -m 1 default | cut -d ' ' -f 3` >/dev/null || exit -/usr/bin/notify-send -i "$PIX/rss.gif" "Updating RSS feeds..." +/usr/bin/notify-send -i "$PIX/rss.svg" "Updating RSS feeds..." pgrep -x newsboat >/dev/null && /usr/bin/xdotool key --window "$(/usr/bin/xdotool search --name newsboat)" R && exit @@ -13,4 +13,4 @@ pkill -RTMIN+6 i3blocks /usr/bin/newsboat -x reload rm -f ~/.config/newsboat/.update pkill -RTMIN+6 i3blocks -/usr/bin/notify-send -i "$PIX/rss.gif" "RSS feed update complete." +/usr/bin/notify-send -i "$PIX/rss.svg" "RSS feed update complete." diff --git a/.scripts/i3cmds/displayselect b/.scripts/i3cmds/displayselect index 2c3133f..e526014 100755 --- a/.scripts/i3cmds/displayselect +++ b/.scripts/i3cmds/displayselect @@ -49,7 +49,7 @@ morescreen() { # If multi-monitor is selected and there are more than two screen multimon() { # Multi-monitor handler. case "$(echo "$screens" | wc -l)" in - 1) xrandr $(echo "$allposs" | awk '{print "--output", $1, "--off"}' | tr '\n' ' ') ;; + 1) xrandr $(echo "$allposs" | grep -v "$screens" | awk '{print "--output", $1, "--off"}' | tr '\n' ' ') ;; 2) twoscreen ;; *) morescreen ;; esac ;} @@ -65,7 +65,7 @@ chosen=$(printf "%s\\nmulti-monitor\\nmanual selection" "$screens" | dmenu -i -p case "$chosen" in "manual selection") arandr ; exit ;; "multi-monitor") multimon ;; - *) xrandr --output "$chosen" --auto --scale 1.0x1.0 $(echo "$screens" | grep -v "$chosen" | awk '{print "--output", $1, "--off"}' | tr '\n' ' ') ;; + *) xrandr --output "$chosen" --auto --scale 1.0x1.0 $(echo "$allposs" | grep -v "$chosen" | awk '{print "--output", $1, "--off"}' | tr '\n' ' ') ;; esac setbg # Fix background if screen size/arangement has changed. diff --git a/.scripts/i3cmds/dmenumount b/.scripts/i3cmds/dmenumount index 4de7438..a270886 100755 --- a/.scripts/i3cmds/dmenumount +++ b/.scripts/i3cmds/dmenumount @@ -17,21 +17,21 @@ getmount() { \ mountusb() { \ chosen="$(echo "$usbdrives" | dmenu -i -p "Mount which drive?" | awk '{print $1}')" - sudo -A mount "$chosen" && notify-send "$chosen mounted." && exit 0 + sudo -A mount "$chosen" && notify-send -i "$PIX/usb.svg" "$chosen mounted." && exit 0 getmount "/mnt /media /mount /home -maxdepth 5 -type d" 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" 741 "$mp";; esac - notify-send "$chosen mounted to $mp." + notify-send -i "$PIX/usb.svg" "$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 device mounted to $mp." + notify-send -i "$PIX/android.svg" "Android device mounted to $mp." } asktype() { \ diff --git a/.scripts/i3cmds/dmenuumount b/.scripts/i3cmds/dmenuumount index 260c1c8..e4ec064 100755 --- a/.scripts/i3cmds/dmenuumount +++ b/.scripts/i3cmds/dmenuumount @@ -7,13 +7,13 @@ unmountusb() { [ -z "$drives" ] && exit chosen=$(echo "$drives" | dmenu -i -p "Unmount which drive?" | awk '{print $1}') [ -z "$chosen" ] && exit - sudo -A umount "$chosen" && pgrep -x dunst && notify-send "$chosen unmounted." + sudo -A umount "$chosen" && pgrep -x dunst && notify-send -i "$PIX/usb.svg" "$chosen unmounted." } unmountandroid() { \ chosen=$(awk '/simple-mtpfs/ {print $2}' /etc/mtab | dmenu -i -p "Unmount which device?") [ -z "$chosen" ] && exit - sudo -A umount -l "$chosen" && pgrep -x dunst && notify-send "$chosen unmounted." + sudo -A umount -l "$chosen" && pgrep -x dunst && notify-send -i "$PIX/android.svg" "$chosen unmounted." } asktype() { \ diff --git a/.scripts/i3cmds/lockscreen b/.scripts/i3cmds/lockscreen index b745a6a..456857f 100755 --- a/.scripts/i3cmds/lockscreen +++ b/.scripts/i3cmds/lockscreen @@ -1,19 +1,9 @@ #!/bin/sh - -rm -f /tmp/locked.png - -# If `imagemagick` is not installed, use a blank screen. -[ -f /usr/bin/convert ] && -scrot -m -z /tmp/base.png && -pgrep -x dunst && notify-send -i ~/.scripts/pix/lock.png "Locking computer..." && -convert /tmp/base.png -blur 0x8 /tmp/locked.png - -# Pause music (mocp, mpd and send the pause key to all mpv videos): -mocp -P >/dev/null 2>&1 +# Pause mpd and send the pause key to all mpv videos: mpc pause >/dev/null 2>&1 pauseallmpv >/dev/null 2>&1 -i3lock -e -f -c 000000 -i /tmp/locked.png +i3lock -e -f -c 1d2021 # In five seconds, turn off display unless key press in last 4 seconds. sleep 5 && [ 4000 -lt "$(xssstate -i)" ] && pgrep -x i3lock && xset dpms force off diff --git a/.scripts/i3cmds/maimpick b/.scripts/i3cmds/maimpick index f3f72fe..07d032f 100755 --- a/.scripts/i3cmds/maimpick +++ b/.scripts/i3cmds/maimpick @@ -1,9 +1,9 @@ #!/bin/sh -case "$(printf "a selected area\\ncurrent window\\nfull screen\\na selected area (copy)\\ncurrent window (copy)\\nfullscreen (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in +case "$(printf "a selected area\\ncurrent window\\nfull screen\\na selected area (copy)\\ncurrent window (copy)\\nfull screen (copy)" | dmenu -l 6 -i -p "Screenshot which area?")" in "a selected area") maim -s pic-selected-"$(date '+%y%m%d-%H%M-%S').png" ;; "current window") maim -i "$(xdotool getactivewindow)" pic-window-"$(date '+%y%m%d-%H%M-%S').png" ;; "full screen") maim pic-full-"$(date '+%y%m%d-%H%M-%S').png" ;; "a selected area (copy)") maim -s | xclip -selection clipboard -t image/png ;; - "current window (copy)") maim -i | xclip -selection clipboard -t image/png ;; + "current window (copy)") maim -i "$(xdotool getactivewindow)" | xclip -selection clipboard -t image/png ;; "full screen (copy)") maim | xclip -selection clipboard -t image/png ;; esac diff --git a/.scripts/i3cmds/td-toggle b/.scripts/i3cmds/td-toggle index 6489626..729e697 100755 --- a/.scripts/i3cmds/td-toggle +++ b/.scripts/i3cmds/td-toggle @@ -1,15 +1,10 @@ #!/bin/sh - # If transmission-daemon is running, will ask to kill, else will ask to start. - -[ ! -f /usr/bin/transmission-daemon ] && notify-send "Transmission daemon not installed." && exit - -if pgrep -x transmission-da >/dev/null ; +if pgrep -x transmission-da >/dev/null ; then - yn=$(printf "No\\nYes" | dmenu -i -p "Kill transmission-daemon?") - [ "$yn" = "Yes" ] && killall transmission-da + [ "$(printf "No\\nYes" | dmenu -i -p "Kill transmission-daemon?")" = "Yes" ] && killall transmission-da && notify-send -i "$PIX/torrent.svg" "transmission-daemon killed." else - yn=$(printf "No\\nYes" | dmenu -i -p "Start transmission daemon?") - [ "$yn" = "Yes" ] && transmission-daemon + ifinstalled transmission-cli || exit + [ "$(printf "No\\nYes" | dmenu -i -p "Start transmission daemon?")" = "Yes" ] && transmission-daemon && notify-send -i "$PIX/torrent.svg" "tranmission-daemon started." fi sleep 3 && pkill -RTMIN+7 i3blocks diff --git a/.scripts/i3cmds/torwrap b/.scripts/i3cmds/torwrap new file mode 100755 index 0000000..6b501cc --- /dev/null +++ b/.scripts/i3cmds/torwrap @@ -0,0 +1,6 @@ +#!/bin/sh +ifinstalled transmission-remote-cli transmission-cli || exit + +! pgrep -x transmission-da >/dev/null && transmission-daemon && notify-send -i "$PIX/torrent.svg" "Starting torrent daemon..." && sleep 3 && pkill -RTMIN+7 i3blocks + +$TERMINAL -e transmission-remote-cli diff --git a/.scripts/i3cmds/xcqr b/.scripts/i3cmds/xcqr index 5e7b5f0..2352599 100755 --- a/.scripts/i3cmds/xcqr +++ b/.scripts/i3cmds/xcqr @@ -1,6 +1,6 @@ #!/bin/sh # Credit to Maddison Hellstrom (@b0o on Github) -qrencode -o - -s 1 \ +ifinstalled feh && qrencode -o - -s 1 \ "$(xclip -out -selection clipboard)" | feh --zoom max \ -F \ diff --git a/.scripts/statusbar/mpdupdate b/.scripts/statusbar/mpdupdate index 84c7ab1..9a57ca4 100755 --- a/.scripts/statusbar/mpdupdate +++ b/.scripts/statusbar/mpdupdate @@ -1,8 +1,7 @@ #!/bin/sh - [ "$(pgrep -x "$(basename "$0")" | wc -l)" -gt 2 ] && exit -while : ; do +sleep 5 && while : ; do pgrep -x mpd || exit mpc idle > /dev/null pkill -RTMIN+11 i3blocks ; diff --git a/.scripts/statusbar/torrent b/.scripts/statusbar/torrent index 06ddd3e..8534cb1 100755 --- a/.scripts/statusbar/torrent +++ b/.scripts/statusbar/torrent @@ -6,10 +6,12 @@ transmission-remote -l | grep % | s/.*Seeding.*/Z/g; s/.*100%.*/N/g; s/.*Idle.*/B/g; + s/.*Uploading.*/L/g; s/.*%.*/M/g" | sort -h | uniq -c | sed " # Now we replace the standin letters with icons. s/A/🛑/g; s/B/⌛️/g; + s/L/🔼/g; s/M/🔽/g; s/N/✅/g; s/Z/🌱/g" | awk '{print $2, $1}' | tr '\n' ' ' | sed -e "s/ $//g" @@ -18,7 +20,8 @@ case $BLOCK_BUTTON in 1) $TERMINAL -e transmission-remote-cli ;; 3) pgrep -x dunst >/dev/null && notify-send "<b>Torrent module:</b> 🛑: paused -⏳: waiting +⏳: idle (seeds needed) +🔼: uploading (unfinished) 🔽: downloading ✅: done 🌱: done and seeding" ;; diff --git a/.scripts/tools/compiler b/.scripts/tools/compiler index cf628aa..7d3bf1d 100755 --- a/.scripts/tools/compiler +++ b/.scripts/tools/compiler @@ -1,21 +1,14 @@ #!/bin/sh - # This script will compile or run another finishing operation on a document. I # have this script run via vim. # -# tex files: Compiles to pdf, including bibliography if necessary -# md files: Compiles to pdf via pandoc -# rmd files: Compiles via R Markdown -# c files: Compiles via whatever compiler is set to cc. Usually gcc. -# py files: runs via python command -# go files: compiles and runs with "go run" -# config.h files: (For suckless utils) recompiles and installs program. -# all others: run `sent` to show a presentation +# Compiles .tex. groff (.mom, .ms), .rmd, .md. +# Opens .sent files as sent presentations. +# Runs scripts based on extention or shebang file=$(readlink -f "$1") dir=$(dirname "$file") base="${file%.*}" -shebang=$(sed -n 1p "$file") cd "$dir" || exit @@ -29,22 +22,16 @@ textype() { \ $command --output-directory="$dir" "$base" } -shebangtest() { - case "$shebang" in - \#\!*) "$file" ;; - *) sent "$file" 2>/dev/null & ;; - esac -} - case "$file" in *\.ms) refer -PS -e "$file" | groff -me -ms -kejpt -T pdf > "$base".pdf ;; *\.mom) refer -PS -e "$file" | groff -mom -kejpt -T pdf > "$base".pdf ;; *\.rmd) echo "require(rmarkdown); render('$file')" | R -q --vanilla ;; *\.tex) textype "$file" ;; *\.md) pandoc "$file" --pdf-engine=xelatex -o "$base".pdf ;; - *config.h) make && sudo make install ;; + *config.h) sudo make install ;; *\.c) cc "$file" -o "$base" && "$base" ;; *\.py) python "$file" ;; *\.go) go run "$file" ;; - *) shebangtest ;; + *\.sent) setsid sent "$file" 2>/dev/null & ;; + *) sed 1q "$file" | grep "^#!/" | sed "s/^#!//" | xargs -r -I % "$file" ;; esac diff --git a/.scripts/tools/ifinstalled b/.scripts/tools/ifinstalled index bdbcbc4..bbaaf11 100755 --- a/.scripts/tools/ifinstalled +++ b/.scripts/tools/ifinstalled @@ -1,3 +1,3 @@ #!/bin/sh # If $1 command is not available, error code and notify. -command -v "$1" >/dev/null || { notify-send "$1 is not installed." && exit 1 ;} +command -v "$1" >/dev/null || { notify-send -i "$PIX/larbs.svg" "<b>$1</b> must be installed for this function." && exit 1 ;} diff --git a/.scripts/tools/qndl b/.scripts/tools/qndl new file mode 100755 index 0000000..ffe3647 --- /dev/null +++ b/.scripts/tools/qndl @@ -0,0 +1,11 @@ +#!/bin/sh +# $1 is a url; $2 is a command +[ -z "$1" ] && exit +base="$(basename "$1")" +notify-send -i "$PIX/dl.svg" "Queuing $base..." +cmd="$2" +[ -z "$cmd" ] && cmd="youtube-dl --add-metadata" +idnum="$(tsp $cmd "$1")" +realname="$(echo "$base" | sed "s/?\(source\|dest\).*//;s/%20/ /g")" +tsp -D "$idnum" mv "$base" "$realname" +tsp -D "$idnum" notify-send -i "$PIX/check.svg" "$realname done." diff --git a/.scripts/tools/queueandnotify b/.scripts/tools/queueandnotify index 332668f..a1417ec 100755 --- a/.scripts/tools/queueandnotify +++ b/.scripts/tools/queueandnotify @@ -7,12 +7,7 @@ queuefile="$HOME/.local/share/newsboat/queue" while read -r line; do [ -z "$line" ] && continue url="$(echo "$line" | awk '{print $1}')" - base="$(basename "$url")" - notify-send -i "$PIX/dl.png" "Queuing $base..." - idnum="$(tsp curl -LO "$url")" - realname="$(echo "$base" | sed "s/?\(source\|dest\).*//;s/%20/ /g")" - tsp -D "$idnum" mv "$base" "$realname" - tsp -D "$idnum" notify-send -i "$PIX/check.png" "$realname done." + qndl "$url" "curl -LO" done < "$queuefile" echo > "$queuefile" diff --git a/.scripts/tools/setbg b/.scripts/tools/setbg index 00e996a..c9e4a94 100755 --- a/.scripts/tools/setbg +++ b/.scripts/tools/setbg @@ -1,4 +1,4 @@ #!/bin/sh # Sets the background. If given an argument, will set file as background. [ ! -z "$1" ] && cp "$1" ~/.config/wall.png && notify-send -i "$HOME/.config/wall.png" "Wallpaper changed." -xwallpaper --center ~/.config/wall.png +xwallpaper --maximize ~/.config/wall.png diff --git a/.scripts/tools/transadd b/.scripts/tools/transadd index 8cc7e80..0ab4784 100755 --- a/.scripts/tools/transadd +++ b/.scripts/tools/transadd @@ -7,6 +7,6 @@ # transmission-daemon sometimes fails to take remote requests in its first # moments. -pgrep -x transmission-da || (transmission-daemon && note "Starting daemon..." "$PIX/dl.png" && sleep 3 && pkill -RTMIN+7 i3blocks) +pgrep -x transmission-da || (transmission-daemon && note "Starting daemon..." "$PIX/dl.svg" && sleep 3 && pkill -RTMIN+7 i3blocks) -transmission-remote -a "$@" && note "Torrent added." "$PIX/dl.png" +transmission-remote -a "$@" && note "Torrent added." "$PIX/dl.svg" |
