Tip of the day: Almost every channel mode can be disabled. Don't like halfops? Use blacklist-module chanmodes/halfop;

Modules

From UnrealIRCd documentation wiki
Jump to navigation Jump to search
This page contains changes which are not marked for translation.

In UnrealIRCd most functionality is in modules (150+ of them!). Most channel modes, user modes and all extended bans are in modules.

Advantages:

  1. Makes it possible to fully customize what exact functionality you want to load
  2. For coders it's easier to see all the source code related to a specific feature
  3. Allows bugs to be fixed without needing to restart the IRCd. Just rehash to reload the module(s).

Loading modules

For more information on how to load modules, see the Loadmodule directive.

If you just want to load all available modules (and thus all functionality) contained in UnrealIRCd, then put this in your unrealircd.conf:

include "modules.default.conf";

Available modules

UnrealIRCd has over 150 modules. Which module to load to enable/disable a certain feature is mentioned in the appropriate article:

Additionally, you may want to take a look at modules.default.conf as well.

Disabling modules

To disable certain functionality we recommend using the Blacklist-module directive. It allows you to disable specific modules, so any loadmodule lines for the module are ignored (such as those in modules.default.conf).

We do not recommend editing modules.default.conf, deleting lines there, because changes to that file are overwritten on each upgrade! So this is a bad idea. And sure, you can copy that file and use that instead, but that means you now have to track changes between each and every UnrealIRCd release or you will miss out on features or commands that have been split into new modules. So again, bad idea, as this can keep you busy for hours wondering why something is not working right.

Third party modules

It is possible to expand UnrealIRCd's functionality by modules from others. We call these modules "third party modules" because they are made by a 3rd party (not the UnrealIRCd team).

Where to find (more) third party modules

You can use the Module manager to install 3rd party modules.

Other modules can possibly be found on the Modules (3rd party) forums

How to use 3rd party modules

See FAQ: How to install 3rd party modules?

Dangers of third party modules

Although 3rd party modules are a great way to extend UnrealIRCd's features there is also a risk: any (subtle) coding mistakes can cause UnrealIRCd to crash. In fact, 90% of the crashes reported to our bug tracker are not crashes caused by UnrealIRCd but by 3rd party modules (not our bugs).

Writing 3rd party modules

See Dev:Module