IRC is a chat system used by members of the AniNIX network. # Etymology [IRC](https://en.wikipedia.org/wiki/IRC) stands for Internet Relay Chat -- it is a method of text-based communication across the network via various servers. IRC has long been the self-hosted communication medium of choice for hackers, developers, and the fringe -- though overall adoption has dropped a bit with the rise of other social media, networks like [Libera](https://libera.chat/) are [still growing](https://royal.pingdom.com/2012/04/24/irc-is-dead-long-live-irc/). IRC is moving to the hacker niche, and we follow along. # Relevant Files and Software The configuration for the IRC service is divided into two parts -- the daemon and services. ## InspIRCd The IRC daemon is powered by [InspIRCd](https://inspircd.org/). Relevant configuration is in `/etc/inspircd/` and it logs to journald. ## Anope The services component is supplied by [Anope](https://www.anope.org/). Relevant configuration is in [the services.conf](file:///etc/anope/services.conf) and it logs to the [its own log](file:///var/log/anope/). Anope also takes backups of [the anope database](file:///var/db/anope/anope.db) to the backups folder in the same location. Caution: Anope with version 2.0.3 has some issues with gcc6. If you start encountering segmentation faults with Anope, sign in to `irc://anope.org#anope` (the Anope support IRC network). Script a run of "sudo -u ircd gdb /usr/bin/services core". Enter `r ` and when it crashes run `bt full`. Quit out of everything and pastebin the file. Provide this to the support staff. Caution: Arch's packaged version of Anope may be missing critical LDAP modules. We still install the package, but you may need to use a localized install in /opt to get it working. Anope Services' NickServ authentication can be linked to [[Sora|AniNIX::Sora]] for unified credentials.[[Category:LDAP]] ### Service entities The following entities can be messaged personally (PM'ed) for help with `/msg help` from inside an IRC client. * NickServ will manage IRC nicknames. * HostServ will manage IRC virtual hosts, to mask IP's. * ChanServ will manage IRC channels -- new channels can be registered on the network here. * MemoServ will manage IRC memos (short text-message-like messages between users). ### Bots #### Bitbot BitBot is a webhook engine -- we tie it into AniNIX/Yggdrasil and AniNIX/Foundation. ### discord-irc Discord-IRC acts as a bridge between our IRC network and Discord -- this lets us integrate with mobile push notifications & lowers the barrier to entry to the network. # Available Clients A [simple web client](https://irc.aninix.net) is hosted. For more advanced options like logging, you will need to use your own client. All IRC clients will connect to the service by providing the following information: * Host: aninix.net * Port: 6697 * The client should accept only valid certificates. * The client should automatically join the #lobby channel. * The client should provide a nickname and NickServ password that the user intends to use. ### Clients by OS Some example clients can be found here. * Linux hosts are strongly recommended to use [weechat](https://wiki.archlinux.org/index.php/Weechat) inside [tmux](https://wiki.archlinux.org/index.php/Tmux). * Windows hosts can connect to this service using [HexChat](https://hexchat.github.io/). * Mac and iOS hosts can use [Colloquy](http://colloquy.info/downloads.html). * Android hosts can use [AndChat](http://www.duckspike.net/andchat/). # Equivalents or Competition Rivals to IRC include other IRC networks like Libera, mail services like [Gmail](https://mail.google.com), and other chat systems like Slack, Microsoft Teams, Discord, Snapchat, WhatsApp, etc. We use Discord to provide new users with a Web-only bridge to the IRC network, but most features are only available within our own network. # Additional Reference * [IRCHelp.org for operators](https://www.irchelp.org/ircd/ircopguide.html) * [InspIRCd modes reference](https://docs.inspircd.org/3/user-modes/)