File: install.html

package info (click to toggle)
eggdrop 1.10.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 9,596 kB
  • sloc: ansic: 65,863; javascript: 8,908; sh: 5,337; tcl: 3,801; makefile: 1,771; python: 121
file content (295 lines) | stat: -rw-r--r-- 18,218 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
<!DOCTYPE html>

<html lang="en" data-content_root="../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>Installing Eggdrop &#8212; Eggdrop 1.10.1rc2 documentation</title>
    <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=03e43079" />
    <link rel="stylesheet" type="text/css" href="../_static/eggdrop.css?v=ab48a1b6" />
    <script src="../_static/documentation_options.js?v=290de6c6"></script>
    <script src="../_static/doctools.js?v=9bcbadda"></script>
    <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
    <link rel="search" title="Search" href="../search.html" />
    <link rel="next" title="Upgrading Eggdrop" href="upgrading.html" />
    <link rel="prev" title="README" href="readme.html" /> 
  </head><body>
    <div class="header-wrapper" role="banner">
      <div class="header">
        <div class="headertitle"><a
          href="../index.html">Eggdrop 1.10.1rc2 documentation</a></div>
        <div class="rel" role="navigation" aria-label="related navigation">
          <a href="readme.html" title="README"
             accesskey="P">previous</a> |
          <a href="upgrading.html" title="Upgrading Eggdrop"
             accesskey="N">next</a>
        </div>
       </div>
    </div>

    <div class="content-wrapper">
      <div class="content">
        <div class="sidebar">
          
          <h3>Table of Contents</h3>
          <p class="caption" role="heading"><span class="caption-text">Installing Eggdrop</span></p>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="readme.html">README</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">Installing Eggdrop</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#quick-startup">Quick Startup</a></li>
<li class="toctree-l2"><a class="reference internal" href="#cygwin-requirements-windows">Cygwin Requirements (Windows)</a></li>
<li class="toctree-l2"><a class="reference internal" href="#modules">Modules</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="upgrading.html">Upgrading Eggdrop</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Using Eggdrop</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../using/features.html">Eggdrop Features</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/core.html">Eggdrop Core Settings</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/partyline.html">The Party Line</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/autoscripts.html">Eggdrop Autoscripts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/users.html">Users and Flags</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/bans.html">Bans, Invites, and Exempts</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/botnet.html">Botnet Sharing and Linking</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/ipv6.html">IPv6 support</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/tls.html">TLS support</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/ircv3.html">IRCv3 support</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/accounts.html">Account tracking in Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/pbkdf2info.html">Encryption/Hashing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/python.html">Using the Python Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/twitchinfo.html">Twitch</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/tricks.html">Advanced Tips</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/text-sub.html">Textfile Substitutions</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/tcl-commands.html">Eggdrop Tcl Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/twitch-tcl-commands.html">Eggdrop Twitch Tcl Commands</a></li>
<li class="toctree-l1"><a class="reference internal" href="../using/patch.html">Patching Eggdrop</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Tutorials</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../tutorials/setup.html">Setting Up Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorials/firststeps.html">Common First Steps</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorials/tlssetup.html">Enabling TLS Security on Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorials/userfilesharing.html">Sharing Userfiles</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorials/firstscript.html">Writing an Eggdrop Tcl Script</a></li>
<li class="toctree-l1"><a class="reference internal" href="../tutorials/module.html">Writing a Basic Eggdrop Module</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Eggdrop Modules</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../modules/index.html">Eggdrop Module Information</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/included.html">Modules included with Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/writing.html">How to Write an Eggdrop Module</a></li>
<li class="toctree-l1"><a class="reference internal" href="../modules/internals.html">Eggdrop Bind Internals</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">About Eggdrop</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../about/about.html">About Eggdrop</a></li>
<li class="toctree-l1"><a class="reference internal" href="../about/legal.html">Boring legal stuff</a></li>
</ul>

          <div role="search">
            <h3 style="margin-top: 1.5em;">Search</h3>
            <form class="search" action="../search.html" method="get">
                <input type="text" name="q" />
                <input type="submit" value="Go" />
            </form>
          </div>

        </div>
        <div class="document">
            
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <section id="installing-eggdrop">
<span id="id1"></span><h1>Installing Eggdrop<a class="headerlink" href="#installing-eggdrop" title="Link to this heading">¶</a></h1>
<p>This is the quick install guide; if you have had little or no experience
with UNIX or Eggdrop, READ THE README FILE NOW! This file is best for
experienced users.</p>
<p>For more information on compiling Eggdrop, see the Compile Guide in
doc/COMPILE-GUIDE (and of course, the README FILE).</p>
<section id="quick-startup">
<h2>Quick Startup<a class="headerlink" href="#quick-startup" title="Link to this heading">¶</a></h2>
<p>Eggdrop uses the GNU autoconfigure scripts to make things easier.</p>
<ol class="arabic">
<li><dl class="simple">
<dt>Type ‘./configure’ from the Eggdrop directory. The configure script</dt><dd><p>will determine how your system is set up and figure out how to
correctly compile Eggdrop. It will also try to find Tcl, which is
required to compile.</p>
</dd>
</dl>
</li>
<li><dl class="simple">
<dt>Type either ‘make config’ or ‘make iconfig’ to determine which</dt><dd><p>modules will be compiled. ‘make config’ compiles the default modules
(everything but woobie.mod). If you want to choose which modules to
compile, use ‘make iconfig’.</p>
</dd>
</dl>
</li>
<li><dl class="simple">
<dt>Type ‘make’ from the Eggdrop directory, or to force a statically</dt><dd><p>linked module bot, type ‘make static’. Otherwise, the Makefile will
compile whatever type of bot the configure script determined your
system will support. Dynamic is always the better way to go if
possible. There are also the ‘debug’ and ‘sdebug’ (static-debug)
options, which will give more detailed output on a (highly unlikely :)
crash. This will help the development team track down the crash and
fix the bug. Debug and sdebug will take a little longer to compile
and will enlarge the binary a bit, but it’s worth it if you want to
support Eggdrop development.</p>
</dd>
</dl>
</li>
<li><dl>
<dt>Eggdrop must be installed in a directory somewhere. This is</dt><dd><p>accomplished by entering the UNIX command:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">install</span>
</pre></div>
</div>
<p>This will install the Eggdrop in your home directory in a directory
called ‘eggdrop’ (i.e. /home/user/eggdrop).</p>
<p>If you want to install to a different directory, use:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">install</span> <span class="n">DEST</span><span class="o">=&lt;</span><span class="n">directory</span><span class="o">&gt;</span>
</pre></div>
</div>
<p>For example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">install</span> <span class="n">DEST</span><span class="o">=/</span><span class="n">home</span><span class="o">/</span><span class="n">user</span><span class="o">/</span><span class="n">otherdir</span>
</pre></div>
</div>
<p>Note that you must use full path for every file to be correctly
installed.</p>
</dd>
</dl>
</li>
<li><p>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:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>    <span class="n">make</span> <span class="n">sslcert</span>

 <span class="n">Or</span><span class="p">,</span> <span class="k">if</span> <span class="n">you</span> <span class="n">installed</span> <span class="n">your</span> <span class="n">eggdrop</span> <span class="n">to</span> <span class="n">a</span> <span class="n">different</span> <span class="n">directory</span> <span class="ow">in</span> <span class="n">step</span> <span class="mi">4</span><span class="p">,</span> <span class="n">you</span>
 <span class="n">will</span> <span class="n">want</span> <span class="n">to</span> <span class="n">run</span><span class="p">:</span>

   <span class="n">make</span> <span class="n">sslcert</span> <span class="n">DEST</span><span class="o">=&lt;</span><span class="n">directory</span><span class="o">&gt;</span>

<span class="n">For</span> <span class="n">those</span> <span class="n">using</span> <span class="n">scripts</span> <span class="n">to</span> <span class="n">install</span> <span class="n">Eggdrop</span><span class="p">,</span> <span class="n">you</span> <span class="n">can</span> <span class="n">non</span><span class="o">-</span><span class="n">interactively</span>
<span class="n">generate</span> <span class="n">a</span> <span class="n">key</span> <span class="ow">and</span> <span class="n">certificate</span> <span class="n">by</span> <span class="n">running</span><span class="p">:</span>

   <span class="n">make</span> <span class="n">sslsilent</span>

 <span class="n">Read</span> <span class="n">docs</span><span class="o">/</span><span class="n">TLS</span> <span class="k">for</span> <span class="n">more</span> <span class="n">info</span> <span class="n">on</span> <span class="n">this</span> <span class="n">process</span><span class="o">.</span>
</pre></div>
</div>
</li>
</ol>
<p>[The following steps are performed in the directory you just installed Eggdrop into from the previous step]</p>
<ol class="arabic" start="6">
<li><p>Edit your config file completely.</p></li>
<li><p>Start the bot with the “-m” option to create a user file, i.e.</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">eggdrop</span> <span class="o">-</span><span class="n">m</span> <span class="n">LamestBot</span><span class="o">.</span><span class="n">conf</span>
</pre></div>
</div>
</li>
<li><dl>
<dt>When starting the bot in the future, drop the “-m”. If you have edited</dt><dd><p>your config file correctly, you can type:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">chmod</span> <span class="n">u</span><span class="o">+</span><span class="n">x</span> <span class="o">&lt;</span><span class="n">my</span><span class="o">-</span><span class="n">config</span><span class="o">-</span><span class="n">file</span><span class="o">-</span><span class="n">name</span><span class="o">&gt;</span>
</pre></div>
</div>
<p>For example:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">chmod</span> <span class="n">u</span><span class="o">+</span><span class="n">x</span> <span class="n">LamestBot</span><span class="o">.</span><span class="n">conf</span>
</pre></div>
</div>
<p>From then on, you will be able to use your config file as a shell
script. You can just type “./LamestBot.conf” from your shell prompt
to start up your bot. For this to work, the top line of your script
MUST contain the correct path to the Eggdrop executable.</p>
</dd>
</dl>
</li>
<li><dl>
<dt>It’s advisable to run your bot via crontab, so that it will</dt><dd><blockquote>
<div><p>automatically restart if the machine goes down or (heaven forbid)
the bot should crash. Eggdrop includes a helper script to auto-generate either a systemd or crontab entry. To add a systemd job, run:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">scripts</span><span class="o">/</span><span class="n">autobotchk</span> <span class="p">[</span><span class="n">yourconfig</span><span class="o">.</span><span class="n">conf</span><span class="p">]</span> <span class="o">-</span><span class="n">systemd</span>
</pre></div>
</div>
</div></blockquote>
<p>or to add a crontab job, run:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">./</span><span class="n">scripts</span><span class="o">/</span><span class="n">autobotchk</span> <span class="p">[</span><span class="n">yourconfig</span><span class="o">.</span><span class="n">conf</span><span class="p">]</span>
</pre></div>
</div>
</dd>
</dl>
</li>
<li><p>Smile. You have an Eggdrop!</p></li>
</ol>
</section>
<section id="cygwin-requirements-windows">
<h2>Cygwin Requirements (Windows)<a class="headerlink" href="#cygwin-requirements-windows" title="Link to this heading">¶</a></h2>
<p>Eggdrop requires the following packages to be added from the Cygwin
installation tool prior to compiling:</p>
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Interpreters</span><span class="p">:</span> <span class="n">tcl</span><span class="p">,</span> <span class="n">tcl</span><span class="o">-</span><span class="n">devel</span>
<span class="n">Net</span><span class="p">:</span>          <span class="n">openssl</span><span class="p">,</span> <span class="n">libssl</span><span class="o">-</span><span class="n">devel</span>
<span class="n">Devel</span><span class="p">:</span>        <span class="n">autoconf</span><span class="p">,</span> <span class="n">gcc</span><span class="o">-</span><span class="n">core</span><span class="p">,</span> <span class="n">git</span><span class="p">,</span> <span class="n">make</span>
<span class="n">Libs</span><span class="p">:</span>         <span class="n">zlib</span><span class="o">-</span><span class="n">devel</span>
</pre></div>
</div>
</section>
<section id="modules">
<h2>Modules<a class="headerlink" href="#modules" title="Link to this heading">¶</a></h2>
<p>Modules are small pieces of code that can either be compiled into the
binary or can be compiled separately into a file. This allows for a much
smaller binary.</p>
<p>If there are any modules that you have made or downloaded, you can add
them to the bot by placing them in the /src/mod directory with a mod
extension. They will be automatically compiled during make for you.
They must have a valid Makefile and, of course, be compatible with
the rest of the Eggdrop source.</p>
<p>If you wish to add a module at a later time, follow the same steps in
paragraph 2. After you have moved the appropriate files, you will only
need to type ‘make modules’ to compile only the modules portion of the
bot.</p>
<p>This is the end. If you read to this point, hopefully you have also read
the README file. If not, then READ IT!&amp;&#64;#%&#64;!</p>
<p>Have fun with Eggdrop!</p>
<blockquote>
<div><p>Copyright (C) 1997 Robey Pointer
Copyright (C) 1999 - 2025 Eggheads Development Team</p>
</div></blockquote>
</section>
</section>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
        </div>
        <div class="clearer"></div>
      </div>
    </div>

    <div class="footer-wrapper">
      <div class="footer">
        <div class="left">
          <div role="navigation" aria-label="related navigaton">
            <a href="readme.html" title="README"
              >previous</a> |
            <a href="upgrading.html" title="Upgrading Eggdrop"
              >next</a>
          </div>
          <div role="note" aria-label="source link">
          </div>
        </div>

        <div class="right">
          
    <div class="footer" role="contentinfo">
    &#169; Copyright 2025, Eggheads.
      Last updated on Aug 15, 2025.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
    </div>
        </div>
        <div class="clearer"></div>
      </div>
    </div>

  </body>
</html>