How To Install EggDrop

Eggdrop is the most advanced, most popular, and best supported IRC bot. If you’ve never used a bot before, you’ll find Eggdrop provides a staggering array of options for channel management, and can easily be expanded further to provide even more functions. The Eggdrop code is free for anyone to download and use. Some of the main features of Eggdrop include:

  1. - Support for multiple channels.
  2. - An advanced, flexible userfile structure.
  3. - The 'party line', a unique feature accessed by DCC chat which allows you to speak to others connected to the bot's party line, and is also used as a console where you can control and use most of Eggdrop's features.
  4. - Botnet support, allowing you to link multiple bots to create a 'botnet' and synchronise userfiles with automatic userfile sharing.
  5. - Multi-language support, with English, German and French included.
  6. - Support for Tcl scripts and modules, allowing you to easily add extra features to the bot.

This guide was based off perhaps the most helpful Eggdrop website ever written, egghelp.org by slennox. As happens with life, slennox has moved on and no longer updates it, but the information here is still incredibly useful. We have updated his setup page here and hope it will continue to prove useful to our users

Prerequisites

Make sure Tcl AND it’s dev packages are installed on your system. On Debian-based systems, this is done with:

sudo apt-get install tcl tcl-dev

It is also STRONGLY recommended to have openssl installed, to enable SSL/TLS protection:

sudo apt-get install openssl libssl-dev

Below we will explain how to install eggdrop

    • wget https://sisrv.net/files/eggdrop/eggdrop-1.9.5.tar.gz
    • tar zxvf eggdrop-1.9.5.tar.gz
    • rm -rf eggdrop-1.9.5.tar.gz
    • cd eggdrop-1.9.5
    • ./configure
    • make config
    • make
    • make install - or if you want to install in different directory, type:
    • make install DEST=/home/user/directory/

Since version 1.8, Eggdrop can use SSL to protect botnet links. If you intend on protecting botnet traffic between Eggdrops, you must generate SSL certificates by running:

    make sslcert

Or, if you installed your eggdrop to a different directory, you will want to run:

    make sslcert DEST=<directory> 

For those using scripts to install Eggdrop, you can non-interactively generate a key and certificate by running:

     make sslsilent

If the configure doesn't complete, and you see this error:

configure: configuring Eggdrop 1.9.5
checking for Tcl configuration... configure: error: Can't find Tcl configuration                                                                              definitions. Use --with-tcl to specify a directory containing tclConfig.sh
sisrv@655:~/eggdrop-1.9.5$ ./configure

That means you are missing tcl package with you can install by typing:

Make sure Tcl AND it’s dev packages are installed on your system. On Debian-based systems, this is done with:

sudo apt-get install tcl tcl-dev

It is also STRONGLY recommended to have openssl installed, to enable SSL/TLS protection:

sudo apt-get install openssl libssl-dev

SSL SETTINGS

Settings in this section take effect when eggdrop is compiled with TLS support.

THIS IS REQUIRED if you intend to use this bot as a hub for SSL hubs/listen ports, secure file transfer, /ctcp botnick schat, or
using a certificate to authenticate with NickServ.

openssl genrsa -out eggdrop.key 4096

Add the following line to your eggdrop.conf file and make sure it is uncommented

set ssl-privatekey "eggdrop.key"

It will create a 4096 bit RSA key, strong enough for eggdrop. For your convenience, you can type 'make sslcert' after 'make install'
and you'll get a key and a certificate in your eggdrop directory.

Specify the filename where your SSL certificate is located. If you don't set this, eggdrop will not be able to act as a server in SSL
connections, as with most ciphers a certificate and a private key are required on the server side. Must be in PEM format.
If you don't have one, you can create it using the following command:

openssl req -new -key eggdrop.key -x509 -out eggdrop.crt -days 365

Add the following line to your eggdrop.conf file and make sure it is uncommented

set ssl-certificate "eggdrop.crt"

Configuration

You will need to edit the configuration file before you can start up your Eggdrop. You can find the example configuration file in the directory you extracted the Eggdrop source to, under the name ‘eggdrop.conf’. If you downloaded Eggdrop to your system, you can unzip the tarball (.tar.gz) file to its own directory using 7-Zip or a similar program, and view the example config file, botchk file, and all the documentation files locally. You can use Notepad to edit these files, although it’s sometimes desirable to use an editor that supports the Unix file format such as EditPlus. To edit the file once it is on your shell, a program such as ‘nano’ or ‘vim’ is recommended.

Editing the config file

Eggdrop comes with two versions of the configuration file- eggdrop.conf and eggdrop-basic.conf. While it is recommended that users edit a copy of eggdrop.conf to take advantage of all the features Eggdrop has to offer, using eggdrop-basic.conf to start will be a quicker path for some. Still, it is recommended that you come back to the full config file at some point to see what you are missing.

It is first recommended to rename the sample config to something other than “eggdrop.conf”. Giving it the name of the bot’s nick (e.g. NiceBot.conf) is quite common. In the config file, you set up the IRC servers you want the bot to use and set Eggdrop’s options to suit your needs. Eggdrop has many options to configure, and editing the configuration file can take some time. I recommend you go over the entire config file to ensure the bot will be configured properly for your needs. All of the options in the config file have written explanations - be sure to read them carefully. Some of them can be a little bit vague, though.

To comment out a line (prevent the bot from reading that line), you can add a ‘#’ in front of a line. When you come to a line that you need to edit, one popular option is to comment out the original and add your new line right below it. This preserves the original line as an example. For example:

# Set the nick the bot uses on IRC

set nick LameBot
set botnet-nick Bot

Continue reading on How to configure your EggDrop

Did this tutorial help? How about buy me a cup of coffee?

  • install eggdrop, how to install eggdrop, eggdrop-1.8.4, eggdrop-1.9.1, eggdrop-1.9.2, eggdrop-1.9.3, eggdrop-1.9.4, eggdrop-1.9.5
  • 319 Users Found This Useful
Was this answer helpful?

Related Articles

Using Your Eggdrop

Log on to the partyline Now that your bot is online, you’ll want to join the partyline to...

Frequently Asked Questions

Eggdrop FAQ How to start my eggdrop? How do I make the bot auto-op people? How do I make the...

Configuring eggdrop with IPv6

IPv6 support This document provides information about IPv6 support which is eggdrop feature...

GeoIP.dat.gz and GeoLiteCity.dat.gz not longer available?

Are you trying to use any TCL that requires GeoIP database like BlackCountry tcl by BLaCkShaDoW?...

Covid19.tcl Tcl error "tls::socket ?options? host port"

If you want to install the latest tls to work : First remove the tls-tcl (if installed) sudo...

Powered by WHMCompleteSolution