This repository contains some crates that may be helpful to the IRC smith of the 21st century! They were built around ellidri, a modern IRC server (or IRCd, for short). You will especially find:
The rest of this document is about ellidri, the IRC server. All other projects
have their own
ellidri doesn't support any server-to-server (S2S) protocol. As such, it is impossible to make several instances of ellidri manage the same IRC network.
ellidri requires UTF-8 from clients, and for now it only supports
sqlitefeature is enabled)
postgresfeature is enabled)
Install ellidri with
cargo install ellidri, or with the AUR package.
During development, build it with
cargo build, and run it with
For packaging, build it with
cargo build --release --locked. The
flag will enable optimizations and the
locked flag will require a valid lock
Cargo.lock), to make sure that the same dependencies are used for
development and for release. The executable is generated at
doc/setup-guide.md for a step-by-step guide to have a working
Patches are welcome! Here are some links to get started:
When developing ellidri, you can use the following command to generate the documentation of all items:
cargo doc --no-deps --document-private-items --open
Also thanks to the IRCv3 working group for all the work on modernizing the IRC protocol!
ellidri is under the ISC license. See
LICENSE for a copy.