diff --git a/.config/i3/config b/.config/i3/config index 78a4a19..39b6bc1 100644 --- a/.config/i3/config +++ b/.config/i3/config @@ -60,9 +60,11 @@ exec --no-startup-id remaps # Unclutter makes the mouse invisible after a brief period exec --no-startup-id unclutter # Run the script to update the mpd i3block on change. -exec --no-startup-id i3mpdupdate +exec_always --no-startup-id i3mpdupdate # mpd startup exec --no-startup-id mpd +# Podboat automatic queue and download +exec --no-startup-id podentr # Set Xresources colors: set_from_resource $darkblack color0 #000000 diff --git a/.scripts/tools/podentr b/.scripts/tools/podentr new file mode 100755 index 0000000..13ab4a8 --- /dev/null +++ b/.scripts/tools/podentr @@ -0,0 +1,6 @@ +#!/bin/sh +# entr command to run `queueandnotify` when newsboat queue is changed + +[ "$(pgrep -x $(basename $0) | wc -l)" -gt 2 ] && exit + +echo ~/.local/share/newsboat/queue | entr -p queueandnotify 2>/dev/null diff --git a/.scripts/tools/queueandnotify b/.scripts/tools/queueandnotify new file mode 100755 index 0000000..d9a43c8 --- /dev/null +++ b/.scripts/tools/queueandnotify @@ -0,0 +1,19 @@ +#!/bin/sh + +# Podboat sucks. This script replaces it. +# It reads the newsboat queue, queuing downloads with taskspooler. + +dlcmd="curl -LO" +queuefile="$HOME/.local/share/newsboat/queue" + +while read -r line; do + [ -z "$line" ] && continue + url="$(echo $line | awk '{print $1}')" + base="$(basename $url)" + note "Queuing $base..." "$PIX/dl.png" + idnum="$(tsp $dlcmd $url)" + tsp -D "$idnum" notify-send -i "$PIX/check.png" "$base done." + tsp -D "$idnum" mv "$base" "$(echo $base | sed "s/?dest.*//")" +done < "$queuefile" + +echo > "$queuefile"