add tardis script - bitreich-tardis - Front-end for navigating bitreich memes and TV dimensions
(HTM) git clone git://bitreich.org/bitreich-tardis git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/bitreich-tardis
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Tags
(DIR) README
(DIR) LICENSE
---
(DIR) commit 8a0d872bd6059d8e4cc00ab30bfef64fcfd8563d
(HTM) Author: Anders Damsgaard <anders@adamsgaard.dk>
Date: Mon, 15 Feb 2021 14:32:04 +0100
add tardis script
Diffstat:
A tardis | 52 +++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+), 0 deletions(-)
---
(DIR) diff --git a/tardis b/tardis
@@ -0,0 +1,52 @@
+#!/bin/sh
+# select bitreich tv dimensions and memecache memes.
+
+annna="$HOME/.cache/annna"
+hashtags="${annna}/modules/hashtags/hashtags.txt"
+dimensions="${annna}/dimensions.txt"
+updatestr="update local memecache"
+interludestr="watch Bitreich TV interlude"
+
+update() {
+ cd "$annna" && git pull >/dev/null
+ getdimensions
+}
+
+getdimensions() {
+ printf '/tv\n' | nc bitreich.org 70 | grep -E '^9.*\.m3u' |\
+ awk -F' ' '{printf("gopher://%s:%d/%c%s\n", $3, $4, $1, $2)}' \
+ > "$dimensions"
+}
+
+init() {
+ if ! test -r "$hashtags"; then
+ if ! test -d "$(dirname "$annna")"; then
+ mkdir -p "$(dirname "$annna")"
+ fi
+ cd "$(dirname "$annna")"
+ git clone git://bitreich.org/annna
+ fi
+ if ! test -r "$dimensions"; then
+ getdimensions
+ fi
+}
+
+init
+meme="$((printf '%s\n%s\n' "$updatestr" "$interludestr"; \
+ cat "$dimensions" "$hashtags") | dmenu -l 10 -p "${0##*/}:")"
+if test "$meme" = "$updatestr"; then
+ update
+elif test "$meme" = "$interludestr"; then
+ xdg-open ssh://time-machine@bitreich.org
+elif test "$meme"; then
+ if printf '%s\n' "$meme" | grep -qE '\.m3u$'; then
+ printf '%s' "${meme}" | xclip -i
+ mpv "$meme"
+ else
+ printf '%s' "${meme% *}" | xclip -i
+ printf '%s' "${meme#* }" | xclip -i -selection clipboard
+ xdg-open "${meme#* }"
+ fi
+else
+ exit 1
+fi