1 🧵🐈 Threadcat
A radically simple, low feature, message board for shared *nix systems
Why? Because its just 4 small shell scripts and some easy-to-do directory config.
1.1 Basic Idea
You post to threadcat using
echo. Here is an example:
cat <<EOF | threadcat write SomeThread Here is a message! It can be multiline! EOF
The above would append the follwing message to a thread called
colin -- Mon Aug 15 08:23:10 AM CDT 2022 Here is a message! It can be multiline!
You can post a short message with
echo Just saying Hey | threadcat write SomeOtherThread
For very long messages, you can of course use a text editor of choice to compose it. Just save it as a file, then post it like so:
cat my-long-post.txt | threadcat write SomeThread
You can the list and search for threads with
threadcat list # just lists all the threads, newest first threadcat list | grep -i emacs # lists threads whose names mention emacs
And you can read a particular thread by doing:
threadcat read SomeThread
This prints to the standard output. You can pipe it to
tail if you want to.
threacat read SomeThread | less # read the whole thread threacat read SomeThread | tail -n 50 # read last 50 lines threacat read SomeThread | head -n 30 # readd first 30 lines
See this screencast for basic use. (Also, let me know if the video isn't there any more, I just posted it to asciinema and have no idea how long those videos remain.)
1.2 Install the client
~/.local/bin is in your
PATH, just put the threadcat scripts there:
git clone https://cicadas.surf/cgit/colin/threadcat.git threadcat cd threadcat cp *.sh ~/.local/bin cp threadcat ~/.local/bin
That's all! Type
threadcat at the command line to get started!
1.3 Server Setup
ssh email@example.com sudo su #make a group groupadd threadcat # add your users, group available on next login usermod -a -G threadcat <user1> usermod -a -G threadcat <user2> # make the threadcat directory mkdir /opt/threadcat #and make it and its contents writable by threadcat group chown root:threadcat /opt/threadcat chmod g+rwxs /opt/threadcat
Created: 2022-08-25 Thu 12:28