2021-07-03 09:07:14 +00:00
|
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
|
|
PROGNAME=${0##*/}
|
|
|
|
|
VERSION="0.0.1"
|
|
|
|
|
|
|
|
|
|
error_exit() {
|
|
|
|
|
printf "%s: %s\n" "$PROGNAME" "${1:-"Unknown Error"}" >&2
|
|
|
|
|
exit 1
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
usage() {
|
|
|
|
|
printf "usage: %s [OPTIONS] COMMAND [ARGS]\n" "$PROGNAME"
|
|
|
|
|
printf "Simple client for twtxt\n"
|
|
|
|
|
printf "Options:\n
|
|
|
|
|
-c, --config PATH Specify a custom config file location.
|
|
|
|
|
-v, --verbose Enable verbose output for debugging purposes.
|
|
|
|
|
--version Show the version and exit.
|
2021-07-03 13:10:43 +00:00
|
|
|
|
-h, --help Show this message and exit.
|
2021-07-03 09:07:14 +00:00
|
|
|
|
|
|
|
|
|
Commands:
|
2021-07-03 13:10:43 +00:00
|
|
|
|
init Setting up twtxt.
|
2021-07-03 09:07:14 +00:00
|
|
|
|
config Get or set config item.
|
|
|
|
|
follow Add a new source to your followings.
|
|
|
|
|
following Return the list of sources you’re following.
|
|
|
|
|
timeline Retrieve your personal timeline.
|
|
|
|
|
tweet Append a new tweet to your twtxt file.
|
|
|
|
|
unfollow Remove an existing source from your...
|
|
|
|
|
view Show feed of given source.
|
|
|
|
|
registry Show registers\n"
|
|
|
|
|
}
|
|
|
|
|
case $1 in
|
|
|
|
|
-h | --help)
|
|
|
|
|
usage; exit ;;
|
|
|
|
|
-* | --*)
|
|
|
|
|
usage; error_exit "unknown option $1" ;;
|
2021-07-03 13:10:43 +00:00
|
|
|
|
init)
|
2021-07-04 02:31:07 +00:00
|
|
|
|
read -p "Your desired nickname [$USER]: " nick
|
2021-07-03 13:10:43 +00:00
|
|
|
|
nick=${nick:-"$USER"}
|
|
|
|
|
read -p "Type path to your twtxt [/home/$USER/twtxt.txt]: " path_to_twtxt
|
2021-07-04 02:31:07 +00:00
|
|
|
|
path_to_twtxt=${path_to_twtxt:-"/home/$USER/twtxt.txt"}
|
2021-07-03 13:10:43 +00:00
|
|
|
|
echo "" >> $path_to_twtxt
|
|
|
|
|
read -p "Type path to your twtxt config folder [/home/$USER/.config/twtxt-c/]: " config
|
|
|
|
|
config=${config:-"/home/$USER/.config/twtxt-c/"}
|
|
|
|
|
mkdir -p $config
|
|
|
|
|
read -p "URL to twtxt [https://example.com/twtxt.txt]: " url
|
|
|
|
|
url=${url:-"https://example.com/twtxt.txt"}
|
2021-07-04 02:39:01 +00:00
|
|
|
|
printf "[twtxt]\n nick = %s\n twtfile = %s\n url = %s\n" "$nick" "$path_to_twtxt" "$url" >> $config/config
|
2021-07-03 13:10:43 +00:00
|
|
|
|
;;
|
2021-07-03 14:26:18 +00:00
|
|
|
|
tweet)
|
2021-07-04 02:55:16 +00:00
|
|
|
|
export config=/home/$USER/.config/twtxt-c/config
|
2021-07-03 14:26:18 +00:00
|
|
|
|
printf "%s\t%s\n" "$(date +'%FT%T%:z')" "$2" >> $(awk '/twtfile/ {print $3}' $config)
|
|
|
|
|
;;
|
2021-07-03 09:07:14 +00:00
|
|
|
|
*)
|
2021-07-03 13:10:43 +00:00
|
|
|
|
printf "Work in progress\n" ;;
|
2021-07-03 09:07:14 +00:00
|
|
|
|
esac
|