itardis - bitreich-tardis - Front-end for navigating bitreich memes and TV dimensions Err bitreich.org 70 hgit clone git://bitreich.org/bitreich-tardis git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/bitreich-tardis URL:git://bitreich.org/bitreich-tardis git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/bitreich-tardis bitreich.org 70 1Log /scm/bitreich-tardis/log.gph bitreich.org 70 1Files /scm/bitreich-tardis/files.gph bitreich.org 70 1Refs /scm/bitreich-tardis/refs.gph bitreich.org 70 1Tags /scm/bitreich-tardis/tag bitreich.org 70 1README /scm/bitreich-tardis/file/README.gph bitreich.org 70 1LICENSE /scm/bitreich-tardis/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 itardis (1771B) Err bitreich.org 70 i--- Err bitreich.org 70 i 1 #!/bin/sh Err bitreich.org 70 i 2 # select bitreich tv dimensions and memecache memes. Err bitreich.org 70 i 3 # requirements: lots. Err bitreich.org 70 i 4 Err bitreich.org 70 i 5 annna="$HOME/.cache/annna" Err bitreich.org 70 i 6 hashtags="${annna}/modules/hashtags/hashtags.txt" Err bitreich.org 70 i 7 dimensions="${annna}/dimensions.txt" Err bitreich.org 70 i 8 updatestr="update local memecache" Err bitreich.org 70 i 9 interludestr="watch Bitreich TV interlude" Err bitreich.org 70 i 10 Err bitreich.org 70 i 11 TARDIS_MENU=${TARDIS_MENU:-"dmenu -l 10 -p ${0##*/}:"} Err bitreich.org 70 i 12 TARDIS_PLUMB=${TARDIS_PLUMB:-xdg-open} Err bitreich.org 70 i 13 TARDIS_VIDEO=${TARDIS_VIDEO:-mpv} Err bitreich.org 70 i 14 Err bitreich.org 70 i 15 usage() { Err bitreich.org 70 i 16 printf 'usage: %s [-cuU]\n' "${0##*/}" 1>&2 Err bitreich.org 70 i 17 exit 1 Err bitreich.org 70 i 18 } Err bitreich.org 70 i 19 Err bitreich.org 70 i 20 update() { Err bitreich.org 70 i 21 cd "$annna" && git pull >/dev/null Err bitreich.org 70 i 22 getdimensions Err bitreich.org 70 i 23 cd - >/dev/null Err bitreich.org 70 i 24 } Err bitreich.org 70 i 25 Err bitreich.org 70 i 26 getdimensions() { Err bitreich.org 70 i 27 printf '/tv\n' | nc bitreich.org 70 | grep -E '^9.*\.m3u' |\ Err bitreich.org 70 i 28 awk -F' ' '{printf("gopher://%s:%d/%c%s\n", $3, $4, $1, $2)}' \ Err bitreich.org 70 i 29 > "$dimensions" Err bitreich.org 70 i 30 } Err bitreich.org 70 i 31 Err bitreich.org 70 i 32 init() { Err bitreich.org 70 i 33 if ! test -r "$hashtags"; then Err bitreich.org 70 i 34 if ! test -d "$(dirname "$annna")"; then Err bitreich.org 70 i 35 mkdir -p "$(dirname "$annna")" Err bitreich.org 70 i 36 fi Err bitreich.org 70 i 37 cd "$(dirname "$annna")" Err bitreich.org 70 i 38 git clone git://bitreich.org/annna Err bitreich.org 70 i 39 fi Err bitreich.org 70 i 40 if ! test -r "$dimensions"; then Err bitreich.org 70 i 41 getdimensions Err bitreich.org 70 i 42 fi Err bitreich.org 70 i 43 } Err bitreich.org 70 i 44 Err bitreich.org 70 i 45 init Err bitreich.org 70 i 46 clip="" Err bitreich.org 70 i 47 while getopts uUc arg; do Err bitreich.org 70 i 48 case ${arg} in Err bitreich.org 70 i 49 u) update; exit 0 ;; Err bitreich.org 70 i 50 U) update ;; Err bitreich.org 70 i 51 c) clip=1 ;; Err bitreich.org 70 i 52 *) usage ;; Err bitreich.org 70 i 53 esac Err bitreich.org 70 i 54 done Err bitreich.org 70 i 55 shift $((OPTIND - 1)) Err bitreich.org 70 i 56 if test $# != 0; then Err bitreich.org 70 i 57 usage Err bitreich.org 70 i 58 fi Err bitreich.org 70 i 59 Err bitreich.org 70 i 60 meme="$( (printf '%s\n%s\n' "$updatestr" "$interludestr"; \ Err bitreich.org 70 i 61 cat "$dimensions" "$hashtags") | ${TARDIS_MENU})" Err bitreich.org 70 i 62 if test "$meme" = "$updatestr"; then Err bitreich.org 70 i 63 update && exec "$0" Err bitreich.org 70 i 64 elif test "$meme" = "$interludestr"; then Err bitreich.org 70 i 65 ${TARDIS_PLUMB} ssh://time-machine@bitreich.org Err bitreich.org 70 i 66 elif test "$meme"; then Err bitreich.org 70 i 67 if printf '%s\n' "$meme" | grep -qE '\.m3u$'; then Err bitreich.org 70 i 68 if test "$clip"; then Err bitreich.org 70 i 69 printf '%s' "${meme}" | xclip -i Err bitreich.org 70 i 70 fi Err bitreich.org 70 i 71 ${TARDIS_VIDEO} "$meme" Err bitreich.org 70 i 72 else Err bitreich.org 70 i 73 if test "$clip"; then Err bitreich.org 70 i 74 printf '%s' "${meme% *}" | xclip -i Err bitreich.org 70 i 75 printf '%s' "${meme#* }" | xclip -i -selection clipboard Err bitreich.org 70 i 76 fi Err bitreich.org 70 i 77 ${TARDIS_PLUMB} "${meme#* }" Err bitreich.org 70 i 78 fi Err bitreich.org 70 i 79 else Err bitreich.org 70 i 80 exit 1 Err bitreich.org 70 i 81 fi Err bitreich.org 70 .