This site is deprecated; docs have moved to docs.inspircd.org!

Installation From Source

From the makers of InspIRCd.
Revision as of 06:06, 16 August 2007 by Special (Talk | contribs)

Jump to: navigation, search

Building and Installing InspIRCd

Download

There are two choices for downloading InspIRCd. Depending on the resources available to you, and what you require, you can either install it from a tarball, or via svn. The two possibilities are documented below.

Release

Download the latest tarball from the InspIRCd website, here

SVN

Check out the latest version of InspIRCd from our subversion (SVN) repository, either get a tarball of it from ViewVC here. You can check it out of SVN directly with this command for trunk:

svn co http://svn.inspircd.org/repository/trunk/inspircd inspircd

or this for the 1.0 legacy branch:

svn co http://svn.inspircd.org/repository/branches/1_0_stable inspircd
Trunk vs. Stable

Trunk is for adventurous people and those who want their hotfixes steaming hot. We branched InspIRCd into two versions, trunk and 1_0_stable (1.0 stable):

  • Trunk receives active development of NEW FEATURES, as well as fixes. It is also surprisingly the most stable and scalable version right now.
  • 1.0 stable is a legacy branch, which is no longer maintained.

In the near future, we will branch again, with 1.1 becoming 1_1_stable, and 1.2 becoming trunk.

Extract

If you got a tarball of InspIRCd (not directly from SVN) then extract it with:

 tar xjf tarballfilename.tar.bz2

Optional: Add Extra Modules

If you want to add any modules with dependencies in src/modules/extra/ then do this now (Note: ./configure automatically does this for the ssl modules if you answer yes and it detects the required libraries):

ln -s extra/m_moduleiwant.cpp src/modules

Also if you want to add any modules from the Unofficial Modules SVN Repository then do this now, make sure you copy or link them to src/modules.

NOTE: This is an optional example. Do not type this command literally, and do not symlink anything unless you need it! If you have already built InspIRCd once, you may proceed to Adding Modules.

Configure

Run the ./configure script in the InspIRCd base directory and enter the details of your server when prompted. Remember that the values you enter here are constrained by the 512 maximum character limit on a line, so there's no point setting the maximum topic length to 1024 chars when you're only going to be able to use about 420 of them.

Build

Type 'make' to build the ircd binaries, if configure has not already done this. Then type 'make install' to install them, you can skip 'make' and go straight to 'make install' if you're lazy. It'll work.

Configuring and Running

Edit Configuration

Edit your Configuration files, it's easiest to copy docs/inspircd.conf.example to conf/inspircd.conf and edit that. See the Modules List to find specific documentation for modules' config. See the wiki page on Configuration for more details on the core configuration.

Run!

Start inspircd with ./inspircd start, make sure you execute the script in the InspIRCd base directory and not the binary in bin/ (or wherever you told configure to install the binaries to) See the page on Commandline Parameters for more details on how you can use the script.

Notes

Priveleges

It is easiest to do all configuration as compiling the non-priveleged user that InspIRCd will run as. root access is not needed for any part of the configuration and building (unless you install it to a priveleged directory, but don't do that).

Adding Modules

If you want to add a module which you did not install to start with then copy or link the module's .cpp to src/modules, then run:

./configure -modupdate

and then

make install

Nonstandard Paths

If you have libraries installed in non-standard places, such as a local install of libgnutls in your home directory then you need the path to the binaries of your local install in your $PATH variable. You can (temporarily) add a path to $PATH by running:

export PATH=/your/path:"${PATH}"

And then running configure and make as normal, to make the path changes permenant you need to put the PATH definiton into your shell's startup script.