From 6da8accf457a5aff307a5749f12c4bf398276117 Mon Sep 17 00:00:00 2001 From: Nick Chambers Date: Thu, 2 Jul 2020 02:23:20 -0500 Subject: [PATCH] Add ahti paste client --- karahti | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100755 karahti diff --git a/karahti b/karahti new file mode 100755 index 0000000..6ad71cf --- /dev/null +++ b/karahti @@ -0,0 +1,53 @@ +#!/usr/bin/env bash + +has() { + if (( $# )); then + hash "$1" 2>/dev/null + else + return 1 + fi +} + +for prog in curl; do + if ! has "$prog"; then + printf 'please install %s\n' "$prog" >&2 + exit 1 + fi +done + +declare -A opts + +while (( $# )); do + case $1 in + --*=*) + key=${1#--} key=${key%%=*} + val=${1#--"$key"=} + opts[$key]=$val + ;; + --no-*) + opts[${1#--no-}]=false + ;; + --) + shift + break + ;; + --*) + opts[${1#--}]=true + ;; + *) + break + ;; + esac + + shift +done + +tail -n +1 -- "$@" | { + paste=$( + curl -sSA karahti/1.0 -w "%{redirect_url}" -F "paste_content=<-" \ + -F "language=${opts[lang]:-auto}" -F "expiry=${opts[expire]}" \ + https://p.ahti.space/nanopaste-get.cgi + ) + + printf "%s\n" "$paste" +}