A set of POSIX* shell scripts designed for personal use. No guarantees when it comes to quality, as these are also used for various minor experiments of mine.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.3 KiB

#!/bin/sh -e
rand_inst() # Choose a random invidious instance to distribute load.
# Good digital citizenship is important, you know.
{
case $(($(dd bs=2 count=1 if=/dev/random of=/dev/stdout | od - | \
sed -ne 's& *& &gp' | cut -d ' ' -f2) % 3)) in
0) printf "vid.puffyan.us" ;;
1) printf "ytprivate.com" ;;
2) printf "yewtu.be" ;;
esac
}
if [ "$(printf "%s" "${1}"|cut -b 1,2,3,4)" = "http" ]
then
case "${1}" in
*youtu*) exec Links "$(printf "%s" "${1}"|sed -ne \
"s&\(http.*://\).*\(/.*\)&\1$(rand_inst)\2&p")" & ;;
*reddit*) exec Links "$(printf "%s" "${1}"|sed -ne \
"s&\(http.*://\).*\(/.*/\)&\1libredd.it\2&p")" & ;;
*4chan.org*) exec Links "$(printf "%s" "${1}"|sed -ne \
"s&4chan&4channel&p")" & ;;
*) exec Links "${1}" & ;;
esac
else
mime=$(file --mime-type -b "${1}")
case ${mime} in
*html*) exec Links "${1}" & ;;
text*) exec xless "${1}" & ;;
video*) exec fpv "${1}" & ;;
audio*) exec fpm "${1}" & ;;
image*) exec iview "${1}" & ;;
*pdf) exec gv "${1}" & ;;
*) printf "Plumber ran into an edge case with the following string/mime\n%s"\
"${1}"|xmessage -file - & ;;
esac
fi
exit