/ircom

A simple CLI-based IRC client modeled on SDFs commode chat program. Designed for use with simple serial terminal hardware.

Primary LanguageCGNU General Public License v3.0GPL-3.0

ircom

A Blessed IRC Client

ircom is a comand-line IRC client implemented without curses. The client is designed with slow-to-update serial terminals and physical teletypes in mind. All of it's output is printed line-by-line, with no screen refreshes. Curses-based clients update the entire screen with every line, which is problematic on low-capability vintage hardware.

The control scheme is modeled after SDF's commode script.

Implemented commands:

    irCOMMODE (c)2023 - Version .27
    
      c - clear                d - dump out of ircom    e - emote
      g - goto a room          h - command help         k - kick a user
      l - list open rooms      n - change nick          p - peek into room
      P - leave current room   q - quit commode         r - room history
      R - extended history     s - send private         w - who is in the room
      Y - yank into room       < - surf rooms backward  > - surf rooms forward
      / - issue raw command
    
    To begin TALK MODE, press [SPACE]

Installation

Building requires libircclient:

git clone https://michaelShriver/libircclient.git
cd libircclient
./configure --enable-shared --enable-openssl
make && sudo make install

On BSD-based systems, including macos, you will need to also install argp-standalone.

Clone the source repo and make:

git clone https://github.com/michaelshriver/ircom
make && make install

Installation on the MetaArray

Download and install libircclient locally from source:

git clone https://michaelShriver/libircclient.git
cd libircclient
./configure --enable-shared --enable-openssl --prefix=$HOME/.local --libdir=$HOME/.local/lib
make && make install

Update env variables: (consider adding these to your .profile)

export C_INCLUDE_PATH="$C_INCLUDE_PATH:$HOME/.local/include"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$HOME/.local/lib"
export PATH="$PATH:$HOME/.local/bin"

And then build ircom:

git clone https://github.com/michaelShriver/ircom.git
cd ircom
make && make install

Execution

Usage: ircom [-te?V] [-n nick] [-p port] [-r real name] [-u username]
        [--nick=nick] [--port=port] [--realname=real name] [--enable-tls]
        [--username=username] [--verify] [--help] [--usage] [--version]
        server channel