FIlesystem based IRC client
C Makefile
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
.gitignore
LICENSE
Makefile
README.md
config.h
config.mk
yorha.c Fix memory errors caused by Channels Sep 7, 2017

README.md

Yorha is a filesystem-based IRC client written in C inspired by suckless "ii", but written to have a cleaner, faster, and more customizable codebase.

Installation

First, customize any settings available in 'src/config.h' and 'config.mk' to your liking. Second running the following commands:

make clean all
sudo make install

Running Yorha

To run the yorha irc client, simply run the binary file with the first argument being the name of the irc server to connect to, like so:

./yorha chat.freenode.net

This will, by default, create a directory "/tmp/yorha/chat.freenode.net/" with a FIFO file name "in" and an output file named "out" inside of it.

Sending commands to the client

Yorha communicates directly through FIFO file communication. For example, joining a channel is as simple as writing text to the "in" file:

echo '/j #mychannel' > /tmp/yorha/chat.freenode.net/in

This whill create a new channel directory under the path "/tmp/yorha/chat.freenode.net/#mychannel" with an "in" and an "out" file. Writing a 'me' message:

echo '/m uses yorha irc client' > /tmp/yorha/chat.freenode.net/#mychannel/in

Leaving a channel:

echo '/p #mychannel' > /tmp/yorha/chat.freenode.net/in

To overcome the limitations of my own laziness since I haven't programmed in all of the irc commands yet, there is a way to send 'raw' irc protocol to servers in case a command is not supported by the client yet:

echo '/r JOIN #mychannel' > /tmp/yorha/chat.freenode.net/in

Dependencies

Note

Let me know if you like this "ii" rewrite and I'll be more likely to update and work on it!