ngIRCd - Next Generation IRC Server
+ http://ngircd.barton.de/
- (c)2001-2008 Alexander Barton,
- alex@barton.de, http://www.barton.de/
-
+ (c)2001-2011 Alexander Barton and Contributors.
ngIRCd is free software and published under the
terms of the GNU General Public License.
-- Services.txt --
-At the moment, ngIRCd doesn't implement a "special IRC services interface".
-But services acting as a "regular server" are supported, either using the IRC
-protocol defined in RFC 1459 or RFC 2812.
+ngIRCd doesn't implement a "special IRC services interface", but services
+acting as a "regular servers" ("pseudo servers") are supported, either
+using the IRC protocol as defined in RFC 1459 or RFC 2812.
+
+Support for Services has been tested using
+ - Anope 1.9.8 or later (<http://www.anope.org/>; unreleased!)
+ - Atheme 7.0.2 or later (<http://www.atheme.net>)
+ - "IRC Services" 5.1.x by Andrew Church (<http://achurch.org/services/>)
+
+This document describes setting up ngIRCd and these services.
-Services have been tested using "IRC Services" version 5.x of Andrew Church,
-homepage: <http://www.ircservices.za.net/>. This document describes setting up
-ngIRCd and these services.
+Please let us know if you are successfully using other IRC service packages or
+which problems you encounter -- thanks!
Setting up ngIRCd
The "pseudo server" handling the IRC services is configured as a regular
remote server in the ngircd.conf(5). In addition the variable "ServiceMask"
should be set, enabling this ngIRCd to recognize the "pseudo users" as IRC
-services insted of regular IRC users.
+services instead of regular IRC users.
Example:
ServiceMask = *Serv
+Setting up Anope 1.9.x
+~~~~~~~~~~~~~~~~~~~~~~
+
+Anope 1.9.8 or later (<http://www.anope.org/>; unreleased as of 2012-11-10)
+may be used with ngIRCd using the "ngircd" protocol module.
+Until Anope 1.9.8 is released, you have to use the sources from the Anope
+development GIT tree, see <http://sourceforge.net/projects/anope/develop/>!
+
+At least the following settings have to be tweaked, in addition to all the
+settings marked as required by Anope:
+
+In conf/services.conf:
+
+ define
+ {
+ name = "services.host"
+ value = "services.irc.net"
+ }
+
+ uplink
+ {
+ host = "server.irc.net"
+ port = 6667
+ password = "123abc"
+ }
+
+ # Load ngIRCd protocol module
+ module { name = "ngircd" }
+
+ networkinfo
+ {
+ # Must be set to the "MaxNickLength" setting of ngIRCd!
+ nicklen = 9
+
+ chanlen = 50
+ }
+
+In conf/nickserv.conf:
+
+ nickserv
+ {
+ # not required if you are running ngIRCd with a higher nickname limit
+ # ("MaxNickLength") than 11 characters, but REQUIRED by default!
+ guestnickprefix = "G-"
+ }
+
+
+Setting up Atheme 7.0.2 or later
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Atheme 7.0.2 or later (<http://www.atheme.net>) may be used with ngIRCd using
+the "ngircd" protocol module.
+
+The following settings need to be in atheme.conf:
+
+ loadmodule "modules/protocol/ngircd";
+
+ uplink "server.irc.net" {
+ password = "123abc";
+ port = 6667;
+ };
+
+The documentation of Atheme can be found in the doc/ directory of the
+Atheme source distribution.
+
+
Setting up IRC Services 5.1.x
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-IRC Services 5.1.x can be used with ngIRCd using the "rfc1459" protocol
-module. At least the following settings have to be tweaked, in addition to all
-the settings marked as required by IRC Services:
+IRC Services 5.1.3 and above can be used with ngIRCd using the "rfc1459"
+protocol module.
+
+Please note that versions up to and including 5.1.3 contain a bug that
+sometimes causes IRC Services to hang on startup. There are two workarounds:
+ a) send the services process a HUP signal ("killall -HUP ircservices")
+ b) apply this patch to the IRC Services source tree:
+ <ftp://ngircd.barton.de/ngircd/contrib/IRCServices513-FlushBuffer.patch>
+
+At least the following settings have to be tweaked, in addition to all the
+settings marked as required by IRC Services:
In ircservices.conf: