Arke discussion software

Arke, the evil sister of Iris!

navigation links

What is Arke?

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).

How do I run 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

Why did I make Arke?

I had several reasons for making Arke:

Why not improve iris instead?

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.

What did I learn from writing Arke?

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.

Arke vs. iris

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:

Missing features compared to iris

The name "Arke"

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!

How can I contribute to the development of Arke?

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 :)

Screenshots of Arke

Arke main menu

Arke topic list

Arke topic view

Arke write reply

Arke create topic - title

Arke create topic - body