A lightweight terminal IRC client in C

1cc35bc fix incorrect status for channels when not joined

~rcr pushed to ~rcr/rirc git

10 days ago

597c7e2 fix sonarscan script names, bump version

~rcr pushed to ~rcr/rirc git

10 days ago


sonarcloud coverity sonarcloud sonarcloud sonarcloud


A minimalistic irc client written in C.

Connections are TLS enabled over port 6697 by default.


Configure rirc by editing config.h. Defaults are in config.def.h


rirc requires the latest version of GNU gperf to compile.

See: https://www.gnu.org/software/gperf/

Build rirc:

git submodule init
git submodule update --recursive


Default install path:

BIN_DIR = /usr/local/bin
MAN_DIR = /usr/local/share/man/man1

Edit Makefile to alter install path if needed, then:

make install


rirc [-hv] [-s server [...]]

  -h, --help      Print help message and exit
  -v, --version   Print rirc version and exit

Server options:
  -s, --server=SERVER       Connect to SERVER
  -p, --port=PORT           Connect to SERVER using PORT
  -w, --pass=PASS           Connect to SERVER using PASS
  -u, --username=USERNAME   Connect to SERVER using USERNAME
  -r, --realname=REALNAME   Connect to SERVER using REALNAME
  -n, --nicks=NICKS         Comma separated list of nicks to use for SERVER
  -c, --chans=CHANNELS      Comma separated list of channels to join for SERVER

Server connection options:
   --ipv4                   Connect to server using only ipv4 addresses
   --ipv6                   Connect to server using only ipv6 addresses
   --tls-disable            Set server TLS disabled
   --tls-verify=<mode>      Set server TLS peer certificate verification mode




  ^N : go to next channel
  ^P : go to previous channel
  ^L : clear channel
  ^X : close channel
  ^C : cancel input/action
  ^U : scroll buffer up
  ^D : scroll buffer down
   ← : input cursor back
   → : input cursor forward
   ↑ : input history back
   ↓ : input history forward

#More info: