ngIRCd - Next Generation IRC Server (c)2001,2002 by Alexander Barton, alex@barton.de, http://www.barton.de/ ngIRCd ist freie Software und steht unter der GNU General Public License. -- INSTALL -- 0. Upgrade Information ~~~~~~~~~~~~~~~~~~~~~~ Differences to version 0.5.x - Starting with version 0.6.0, other servers are identified using asyncronous passwords: therefore the variable "Password" in [Server]-sections has been replaced by "MyPassword" and "PeerPassword". - New configuration variables, section [Global]: MaxConnections, MaxJoins (see example configuration file "doc/en/sample-ngircd.conf"!). I. Standard-Installation ~~~~~~~~~~~~~~~~~~~~~~~~ ngIRCd is developed for UNIX-like systems, which means, that the installation on a modern UNIX-like system should be no problem. The only thing is, that the system should be supported by GNU automake and GNU autoconf ("configure"). The normal installation is like that: 1) tar xzf ngircd-.tar.gz 2) cd ngircd- 3) ./autogen.sh [only necessary when using CVS] 4) ./configure 5) make 6) make install 3): "autogen.sh" The first step, autogen.sh, is only necessary if the configure-script isn't already generated. This never happens in official ("stable") releases in tar.gz-archieves, but when using the CVS system. The next is therefore only interesting for developpers. autogen.sh produces the makefile.in's, which are necessary for the configure script it self, and some more files for make. For this step, there must be GNU automake and GNU autoconf (in recent versions). (again: "end users" do not need this step!) to 4): "./configure" The configure-script is used to detect local system dependancies. In the perfect case, configure should recognize all needed libraries, header and so on. If this shouldn't work, "./configure --help" shows more options. to 5): "make" The make command uses the Makefiles produced by configure and compiles the ngIRCd daemon. to 6): "make install" Use "make install" to install the server and a sample configuration file on the local system. For this step, root privileges are necessary. If there is already an older configuration file present, it won't be overwritten. This are the files that are installed: - /usr/local/sbin/ngircd: exectable server - /usr/local/etc/ngircd.conf: sample configuration, if not there II. Useful make-targets ~~~~~~~~~~~~~~~~~~~~~~~ The Makefile produced by the configure-script contain always these useful targets: - clean: delete every product from the compiler/linker next step: -> make - distclean: plus erase all generated Makefiles next step: -> ./configure - maintainer-clean: erease all automatic generated files next step: -> ./autogen.sh III. Sample configuration file ngircd.conf ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In the sample configuration file, there are comments beginning with "#" OR ";" -- this is only for the better understanding of the code. The file is seperated in three blocks: [Global], [Operator], [Server]. In the [Gobal] part, there is the main configuration, like the server-name and the ports, on which the server should be listening. In the [Operator] section, the server-operators are defined and [Server] is the section, where the server-links are configured. The meaning of the variables in the configuration file is explained in the "doc/sample-ngircd.conf", which is also the sample configuration file in /usr/local/etc after running "make install" (if you don't already have one). IV. Command line options ~~~~~~~~~~~~~~~~~~~~~~~~ These parameters could be passed to the ngIRCd: -f, --config The daemon uses the file as configuration file rather than the standard configuration /usr/local/etc/ngircd.conf. -n, --nodaemon ngIRCd should be running as a foreground process. -p, --passive Server-links won't be automatically established. --configtest Reads, validates and dumps the configuration file as interpreted by the server. Then exits. Use "--help" to see a short help text describing all available parameters the server understands, with "--version" the ngIRCd shows its version number. In both cases the server exits after the output. -- $Id: INSTALL,v 1.3 2002/12/18 12:19:07 alex Exp $