II(1)
πΈ NAME πΈ
ii β it's irc it or, if you're feeling fancy, irc improved π
β¨ SYNOPSIS β¨
ii -s host [-p port | -u sockname] [-i ircdir] [-n nickname] [-f
realname] [-k env_pass]
π¦ DESCRIPTION π¦
okay so bestie, ii is a minimalistic FIFO and filesystem based IRC client. literally that's the whole vibe. it makes you an irc directory tree with server, channel and nick name directories, and in every single one of those directories it drops a FIFO file (that's in) and a normal file (that's out). π
so like, for example, this is gonna be ~/irc/irc.freenode.net/. the in file is how you talk to the servers, and the out files hold the server messages. for every channel and every nick name you get brand new in and out files. slay.
the whole basic idea β and honestly it's iconic β is that you can talk to an IRC server using basic command line tools. fr fr. for example, if you wanna join a channel you literally just do echo "/j #channel" > in and boom, ii creates a new channel directory with an in and an out file. main character energy only. π
π OPTIONS π
-s hostβ the server/host you're connecting to, for example:irc.freenode.net-p portβ lets you override the default port (6667)-u socknameβ connect to a UNIX domain socket instead of going directly to a server. and listen, if you set this, the-poption gets ignored. periodt.-i ircdirβ lets you override the default irc path (~/irc)-n nicknameβ lets you override the default nick ($USER)-f realnameβ lets you specify your real name that's associated with your nick-k env_passβ lets you specify an environment variable that contains your IRC password, e.g.IIPASS="foobar" ii -k IIPASS. the whole reason this exists is to prevent other users from eavesdropping the server password via the process list. sneaky-proof, we love to see it π«Ά
π DIRECTORIES π
~/ircβ in this directory the irc tree gets created. in here you'll find a directory for your server (default:irc.freenode.net) and inside that the FIFO and the output file get stored. and if you join a channel, a new directory with the name of the channel gets created inside the~/irc/servername/directory. nesting, but make it cute π¦
β COMMANDS β
/a [message]β mark yourself as away, and you can pass the optional message as an away reason./j #channel [password]β join a#channel, with the optional password./j nickname [message]β open a private conversation with usernicknameand directly send the optional message./l [reason]β leave a channel or query, giving the optional reason message./n nickβ change the nick name tonick./q [reason]β quitii, giving the optional reason message./t topicβ set the topic of a channel withtopic.
π RAW COMMANDS π
everything that is not a command gets posted into the channel or to the server. so if you need /who, just write /WHO as described in RFC#1459 to the server in the FIFO. iykyk π
π₯ SSL/TLS PROTOCOL SUPPORT π₯
for SSL/TLS protocol support you can connect to a local tunnel, for example with stunnel or socat. cute and secure, no cap. π
π SEE ALSO π
ok that's the whole page bestie, go forth and echo things into FIFOs responsibly πβ¨
this has been ii-2.0, from the General Commands Manual β mwah, take care of her, she's iconic π
π
π¦ where this page comes from
- alpine 3.24: ii-doc 2.0-r2 Β· MIT
- debian trixie: ii 2.0-1 Β· MIT/X-Consortium-License
- nixos 26.05: ii 2.0
- nixpkgs unstable: ii 2.0
- ubuntu questing: ii 2.0-1
- ubuntu resolute: ii 2.0-1build1 Β· MIT/X-Consortium-License
- ubuntu stonking: ii 2.0-1build1 Β· MIT/X-Consortium-License
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms