diff --git a/README.adoc b/README.adoc index cb31d83..ffeced7 100644 --- a/README.adoc +++ b/README.adoc @@ -1,18 +1,16 @@ uirc3 ===== -:compact-option: The unreasonable IRC trinity. This project consists of an IRC client, daemon, and bot. It's all you're ever going to need for chatting, as long as you can make do with minimalist software. -All of them have these potentially interesting properties: +They have these potentially interesting properties: - - IPv6 support - - TLS support, including client certificates - - lean on dependencies (with the exception of 'xC') + - supporting IRCv3, SOCKS, IPv6, TLS (including client certificates) + - lean on dependencies - compact and arguably easy to hack on - - very permissive license + - maximally permissive license xC -- @@ -22,11 +20,12 @@ weechat or irssi users. image::xC.png[align="center"] -This is the largest application within the project. It has most of the stuff -you'd expect of an IRC client, such as being able to set up multiple servers, -a powerful configuration system, integrated help, text formatting, CTCP queries, -automatic splitting of overlong messages, autocomplete, logging to file, -auto-away, command aliases and basic support for Lua scripting. +This is the core of the project. It has most of the stuff you'd expect of +an IRC client, such as being multiserver, a powerful configuration system, +integrated help, text formatting, automatic splitting of overlong messages, +multiline editing, bracketed paste support, decent word wrapping, autocomplete, +logging, CTCP queries, auto-away, command aliases, and basic support for Lua +scripting. As a unique bonus, you can launch a full text editor from within. xD -- @@ -37,10 +36,8 @@ do it just fine. Notable features: - - TLS autodetection (why doesn't everyone have this?), using secure defaults + - TLS autodetection (I'm still wondering why everyone doesn't have this) - IRCop authentication via TLS client certificates - - epoll/kqueue support; this means that it should be able to handle quite - a number of concurrent user connections - partial IRCv3 support Not supported: @@ -58,16 +55,14 @@ and development continues over there. xB -- -The IRC bot. It builds upon the concept of my other VitaminA IRC bot. The main -characteristic of these two bots is that they run plugins as coprocesses, which -allows for enhanced reliability and programming language freedom. +The IRC bot. While originally intended to be a simple rewrite of my old GNU AWK +bot in C, it fairly quickly became a playground, and it eventually got me into +writing the rest of this package. -While originally intended to be a simple rewrite of the original AWK bot in C, -it fairly quickly became a playground, and it eventually got me into writing -the rest of the package. - -It survives crashes, server disconnects and timeouts, and also has native SOCKS -support (even though socksify can add that easily to any program). +Its main characteristic is that it runs plugins as coprocesses, allowing for +enhanced reliability and programming language freedom. Moreover, it recovers +from any crashes, and offers native SOCKS support (even though socksify can add +that easily to any program). Packages -------- @@ -87,7 +82,7 @@ acting up and I have no clue about fixing it. $ git clone --recursive https://git.janouch.name/p/uirc3.git $ mkdir uirc3/build $ cd uirc3/build - $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Debug \ + $ cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DWANT_READLINE=ON -DWANT_LIBEDIT=OFF -DWANT_LUA=ON $ make @@ -95,9 +90,9 @@ To install the application, you can do either the usual: # make install -Or you can try telling CMake to make a package for you. For Debian it is: +Or you can try telling CMake to make a package for you: - $ cpack -G DEB + $ cpack -G DEB # also supported: RPM, FreeBSD # dpkg -i uirc3-*.deb Usage