How to install InspIRCd

InspIRCd is a modular Internet Relay Chat (IRC) server written in C++ for Linux, BSD, Windows and Mac OS X systems which was created from scratch to be stable, modern and lightweight.
As InspIRCd is one of the few IRC servers written from scratch, it avoids a number of design flaws and performance issues that plague other more established projects, such as UnrealIRCd, while providing the same level of feature parity.
InspIRCd is one of only a few IRC servers to provide a tunable number of features through the use of an advanced but well documented module system. By keeping core functionality to a minimum we hope to increase the stability, security and speed of InspIRCd while also making it customisable to the needs of many different users.

How to install InspIRCd

You may need to install additional software first to be able to compile InspIRCd. On Debian this is done by:

You should make sure you have the following packages installed:
 * gnutls-bin
 * libgnutls28-dev
 * pkg-config

Installing the IRCD:

So let’s add a new user (ircd in this example) and install the IRC server:

wget https://github.com/inspircd/inspircd/archive/refs/tags/v3.16.1.tar.gz
tar xzf v3.16.1.tar.gz
rm -rf v3.16.1.tar.gz
cd inspircd-3.16.1
./configure --enable-extras=m_ssl_gnutls.cpp
./configure --prefix=/home/USERNAME/inspircd
make -j2 install
 
Paths:
  Base install: /home/USERNAME/inspircd
  Configuration: /home/USERNAME/inspircd/conf
  Binaries: /home/USERNAME/inspircd/bin
  Modules: /home/USERNAME/inspircd/modules
  Data: /home/USERNAME/inspircd/data
To start the ircd, run: /home/USERNAME/inspircd/inspircd start
Remember to create your config file: /home/USERNAME/inspircd/conf/inspircd.conf
Examples are available at: /home/USERNAME/inspircd/conf/examples

Edit configuration files. See .conf files at the bottom of the article. Those are the default inspircd example files slightly modified by me. I moved all the relevant things to the top to make it easier for you to get your server running.

I also added aliases for the services, so users can use /chanserv or /cs instead of /msg chanserv (same for NickServ, BotServ, HostServ, MemoServ and OperServ). See very bottom of inspircd.conf for the aliases if you wish to change them.

You need to edit inspircd.conf up to “CIDR CONFIGURATION” (about 2 pages).

Use echo -n “yourpassword” | sha256sum to generate a hash of your die/restart password.

Use the same method to create a hash of your NetAdmins password and set it in conf/opers.conf (OPERATOR CONFIGURATION starting at line 80)

You must carefully edit links.conf.

modules.conf can remain unchanged, all modules necessary for services are uncommented in my file.

Create a motd.txt (message of the day) and rule.txt and put them in the /conf folder.

 ./inspircd start

Connect to your server using an IRC client like Xchat or mIRC.

Get an o-line:

/oper Adminname adminpassword (this is case sensitive, the admin name as well)

That’s it.

Module Manager

InspIRCd ships with a tool called ./modulemanager. This tool allows you to easily install modules that are not included with the default distribution, such as third party modules and modules which have been backported from later versions. The module manager tool is located in the root directory of your InspIRCd installation.

Syntax

<code>Use: ./modulemanager <action> <args>
Action is one of the following
 install   install new modules
 upgrade   upgrade installed modules
 list      lists available modules

For installing a package, specify its name or name=version to force the installation of a specific version.
</code>

Common errors

Your system is missing the LWP::Simple Perl module!

Your system is missing the libwww-perl package. You should install it from your appropriate package manager.

  • CPAN — cpan LWP::Simple
  • CentOS, Fedora — yum install perl-libwww-perl
  • Debian, Ubuntu — apt-get install libwww-perl

Your system is missing the Crypt::SSLeay or IO::Socket::SSL Perl modules!

Your system is missing SSL support for the libwww-perl package. You should install one from your appropriate package manager.

Crypt::SSLeay
  • CPAN — cpan Crypt::SSLeay
  • CentOS, Fedora — yum install perl-crypt-ssleay
  • Debian, Ubuntu — apt-get install libcrypt-ssleay-perl
IO::Socket::SSL
  • CPAN — cpan IO::Socket::SSL
  • CentOS, Fedora — yum install perl-io-socket-ssl
  • Debian, Ubuntu — apt-get install libio-socket-ssl-perl

Could not retrieve https://raw.github.com/inspircd/inspircd-extras/master/modules.lst

Your version of InspIRCd is out of date. Update to the latest version and you will get a more useful error message.

Installing modules without the module manager

If for some reason you are unable to use the module manager you can download and install modules manually using the following steps:

  1. Download the module you wish to install from the inspircd-extras repository on GitHub – https://github.com/inspircd/inspircd-extras
  2. Move it to the src/modules directory.
  3. Run “make install” to build and install the module.
  • install InspIRCd, v3.6.0, v3.5.0, inspircd-3.7.0
  • 427 Users Found This Useful
Was this answer helpful?

Related Articles

InspIRCd commands

InspIRCd Commands This page only lists core commands. For details on the commands of a specific...

How to install InspIRCd

Step 1 - Install Packages In this step, we will install some RPM packages. The packages are for...

InspIRCd Modules

  Module List This is a complete list of all modules that ship with InspIRCd. If you have...

How to build your own InspIRCd IRC Server and Anope

InspIRCd is a modern and fast IRC server and one of the few IRC server applications that provides...

Powered by WHMCompleteSolution