UnrealIRCd has a module manager which allows you to install, update and uninstall 3rd party modules easily on *NIX (not on Windows).
Third party modules are a great way to extend the functionality of UnrealIRCd. They allow anyone with sufficient coding experience to create and publish UnrealIRCd modules that have functionality not present in the UnrealIRCd product itself.
Third party modules are not written by the UnrealIRCd team (although some team members may publish them on a personal title). This means the UnrealIRCd team is NOT responsible for any problems caused by 3rd party modules. Modules can do almost anything with the IRCd, including freezing or crashing the server or doing malicious things.
If there's a bug in a 3rd party module then you must contact the author of the module directly, and not the UnrealIRCd team.
How to list available modules
In the UnrealIRCd directory, run ./unrealircd module list
You can also see the list of modules online at https://modules.unrealircd.org/
NOTE: If the module you are looking for is not listed, then maybe you need to add another module repository.
How to install a module
In the UnrealIRCd directory, run ./unrealircd module install third/name-of-module
This will download and compile the requested module and print some documentation/instructions. It will NOT add the loadmodule line to your configuration file automatically. That's the only thing you need to do, and REHASH.
How to uninstall a module
In the UnrealIRCd directory, run ./unrealircd module uninstall third/name-of-module
How to upgrade modules
You can check for updates (and install them) for all modules by running ./unrealircd module upgrade. Or, to only do this for a specific module: ./unrealircd module upgrade third/name-of-module
This will check if the module(s) you are using is the same as the latest version available online. If not, the latest version is downloaded, compiled and installed.
Remember, that after an upgrade you will have to REHASH if you want to load the new module(s).
Module upgrades when upgrading UnrealIRCd
When upgrading UnrealIRCd to a newer version, the ./unrealircd module upgrade command is also executed by the compile and installation process. This is to make sure your modules are compatible with the latest UnrealIRCd version.
How to add a repository
By default, UnrealIRCd ships with the unrealircd-contrib module repository..
If you still need to add another repository then you have to edit the conf/modules.sources.list file. Simply add the URL of the repository in that file. Your module author should have provided instructions for this.
Problems with modules
If a module fails to compile or has any other problem then contact the module author. You can view the module author and contact information by running ./unrealircd module info third/name-of-module
Do not contact the UnrealIRCd team when you are having problems compiling 3rd party modules, as the modules are not written by them.