Arke, the evil sister of Iris!
Arke is a discussion software for a single multi-user Unix host. It is directly inspired by iris, the forum software many ^C users are familiar with. While iris is written in Ruby and creates a single file inside the user's home dir (~/.iris.messages), Arke is written in Bash and creates a directory (~/.arke).
Currently, you have to a) run Arke from my home dir, or b) clone the Git repo and run it from your clone:
$ /home/kiseratu/code/arke/arke.sh # option a
$ git clone /home/kiseratu/code/arke && cd arke && ./arke.sh # option b
I had several reasons for making Arke:
I considered that. I read the source code of iris, something around 1000 lines of Ruby code. I know a bit of Ruby (wrote an API client in it once), but I'm by no means as proficient as Calamitous. In the end, I could have simply edited the lines that `print` output and added a call to `dialog` there, but I simply didn't want to invest the mental effort to understand the code first.
Arke uses three Unix tools to do its job: Bash, `dialog`, and `find`. I learned, that `find` is usually much better than tools like `ls` and using globbing (*) (a Bash feature). However, some performance-critical parts of Arke work with `ls` and globbing, because `find` doesn't let you order files or directories in chronological order (as far as I know).
`dialog` is a pretty great tool for creating graphical user interfaces in the terminal. It takes a while to get good at using it though, practice makes perfect. A beginner would maybe not be able to use `dialog` very well, because it has a lot of traps.
I also learned to appreciate `iris` a lot, because it avoids many problems by doing things in Ruby and using json. It has features that Arke lacks so far, like showing the date and time when something was posted.
Unfortunately, Arke is incompatible with iris due to the choice of a directory (~/.arke) instead of iris' single file (~/.iris.messages). I don't intend for Arke to replace iris in any capacity though. Instead, I hope Arke gets a few users for a while and then dies a quiet death.
Why would I want a software that I wrote to not be used, though? Well, there are basically 3 hearts beating in my chest when it comes to that:
In Greek mythology, Iris is a messenger of the gods. I believe the connection to messages led Calamitous, to name the discussion software that he wrote for us "iris".
Iris had a sister: Arke (Wikipedia). This quote explains what happened:
During the divine war known as the Titanomachy, Arke and Iris originally sided with the Olympian gods, but soon after Arke betrayed them for the Titans and flew to their camp to become their own messenger-goddess, while Iris remained loyal as the Olympian gods' messenger.
So when I wanted to write a program that does almost what iris does, I thought it would be funny to choose the name Arke.
Additionally, since Arke would be competing with iris in a sense, the project had a touch of evilness to it. I don't intend Arke to outshine iris in any way, though!
I'm not really trying to make Arke into an actively maintained project, but you can send me a git patch or a bug report to my email here. I'll get to it when I have time :)