diff --git a/README b/README new file mode 100644 index 0000000..a26a4e8 --- /dev/null +++ b/README @@ -0,0 +1,92 @@ +Abstract +-------- +ii is a minimalistic FIFO and filesystem based IRC client. It creates an irc +directory tree with server, channel and nick name directories. In every +directory a FIFO file (in) and normal file (out) is placed. + +The in file is used to communicate with the servers and the out files include +the server messages. For every channel and every nick name there will be new in +and out files. + +The basic idea of this is to be able to communicate with an IRC server with +standard command line tools. For example if you want to join a channel just do +echo "/j #channel" > in and ii creates a new channel directory with in and out +file. + + +Installation +------------ +Edit config.mk to match your local setup. ii is installed into +/usr/local by default. + +Afterwards enter the following command to build and install ii (if +necessary as root): + + $ make clean install + + +Running ii +------------ +Simply invoke the 'ii' command with required arguments + +To make ii a bit more comfortable use it in combination with the multitail +program and for example with vim. Run vim in the server directory and use +key mapping like: +map w1 :.w >> \#ii/in +map w2 :.w >> \#wmii/in +to post to channels. + +If you use the next editor line for a new posting you can use ctrl-p for nick +completion if you wrote the nick in the past. +Thanks to Matthias Kopfermann for this hint. + +You can find an example of how this nested environment could look like on: +http://nion.modprobe.de/blog/archives/440-Using-the-ii-irc-client.html + + +SSL/TLS support +--------------- + +Below is an example using OpenBSD relayd which sets up a TCP TLS relay +connection on localhost. A similar setup can be accomplished using +stunnel or netcat with TLS support. This also works for other programs +that don't support TLS natively. + +/etc/relayd.conf: + + table { irc.freenode.net } + table { irc.oftc.net } + + protocol "irctls" { + tcp { nodelay, sack } + } + + relay "freenode" { + listen on 127.0.0.1 port 6668 + protocol "irctls" + forward with tls to port 6697 + } + + relay "oftc" { + listen on 127.0.0.1 port 6669 + protocol "irctls" + forward with tls to port 6697 + } + + +Then connect: + + ./irc -n nick -u name -s 127.0.0.1 -p 6668 + ./irc -n nick -u name -s 127.0.0.1 -p 6669 + + +Configuration +------------- +No configuration is needed. + + +Changelog +--------- +Since I missed the chance to add a proper changelog right from the beginning, +please have a look at the commit messages on http://git.suckless.org/ii/ +they are fairly descriptive on releases prior to 1.2.