Upgrading Last revised: September 21, 2018 _________________________________________________________________ UPGRADING Eggdrop 1.6.x -> v1.8.x: What's new? To gain a full understanding of changes to the Eggdrop v1.8 version line, you can read the following documents: INSTALL README doc/TLS doc/IPV6 doc/Changes1.8 doc/tcl-commands.doc All of these documents combined will fill you in on the latest changes to Eggdrop in version 1.8.x. All files, with the exception of Changes1.8, are also available in html format in doc/html/. For support, feel free to visit us on Freenode #eggdrop. If you are upgrading from a pre-1.6 version of Eggdrop: 1. Before you start the bot for the first time, BACKUP your userfile. 2. DON'T USE YOUR OLD CONFIG FILE. MAKE A NEW ONE! _________________________________________________________________ Changes made to Eggdrop 1.8.x from Eggdrop1.6.x: MODULES While most 3rd party modules that worked on Eggdrop1.6.x should still work with Eggdrop1.8.x, many of them contain a version check that only allows them to run on 1.6.x bots. We have removed the version check from some of the more popular modules provide them at ftp://eggheads.org/pub/eggdrop/modules/1.8/ SCRIPTS All 3rd party Tcl scripts that work with Eggdrop1.6.x fully work with Eggdrop1.8.x. ENCODINGS Eggdrop1.8 has been modified to support the utf-8 encoding with a fallback of iso8859-1. Other single-byte encodings are not yet supported, but full support for them is planned for a later version of Eggdrop1.8. IPV6 Full IPv6 support for servers, telnet and script connections, dcc and botnet. See doc/IPV6 for more information. SSL Full SSL support has been added for all kinds of connections, including certificate verification and authorization, and partyline SSL. See doc/TLS. BOTNET Because 1.8 bots attempt to link with SSL if available everytime, make sure you generate a certificate on your hub bot with "make sslcert" after "make install". CONFIG eggdrop.conf changes: To ease the transition from Eggdrop1.6.x to Eggdrop1.8.0, we have created a list of config file changes needed at http://eggheads.org/eggconf180.txt. Perhaps the most important changes are the removal of the my-ip and my-hostname settings, replaced by vhost4, vhost6 and the listen-addr setting. Check our new eggdrop.conf for examples. eggdrop-basic.conf: Eggdrop1.8.0 includes a simpler configuration file called eggdrop-basic.conf, which is recommended for users that do not need advanced Eggdrop features such as botnets. We still recommend reading the full eggdrop.conf and copying settings over that you might want to modify. WIRE REMOVED The wire module has been removed from eggdrop 1.8. You can still get it from ftp://eggheads.org/pub/eggdrop/modules/1.8/wire-2.1.tar.gz Note that with ssl support you can have encrypted botnet and partyline without wire.mod. DOCUMENTATION Documentation has been updated to reflect new and removed commands and variables. Almost all files have changed, so take a look at them. TCL COMMANDS A lot of changes have been made to Tcl commands. Please look at doc/tcl-commands.doc to see them. ________________________________________________________________________ UPGRADING Eggdrop 1.4.x -> v1.6.x: What's new? First, read the following documents: INSTALL README doc/BOTNET doc/Changes1.6 doc/tcl-commands.doc All of these documents combined will fill you in on the latest changes to Eggdrop in version 1.6.x. All files, with the exception of Changes1.6, are also available in html format in doc/html/. A lot of things have changed in this version, so at a minimum, read the Changes1.6 text file. Changes shows what's been added and fixed along the way. If you are upgrading from a pre-1.6 version of Eggdrop: 1. Before you start the bot for the first time, BACKUP your userfile. 2. DON'T USE YOUR OLD CONFIG FILE. MAKE A NEW ONE! _________________________________________________________________ Changes made to Eggdrop 1.6.x from Eggdrop1.4.x: !CHANNELS Support for IRCnet !channels was added to Eggdrop. This might still be a bit buggy. We appreciate bug reports! +/-NODESYNCH This new channel setting replaces the old 'allow-desync' config file setting. It is useful if you use some type of ChanServ or if you don't care about your channel being desynched. ASYNCHRONOUS DNS MODULE Eggdrop 1.6 is shipped with a new module, the dns module. It replaces those old dns-lookups performed by Eggdrop which could halt the whole bot during a timeout. We also added a new Tcl command, 'dnslookup', so scripts can now use DNS functions asynchronously, too. See doc/settings/mod.dns for more information. COMPRESS MODULE A new module called compress was introduced to Eggdrop. It provides gzip support to Eggdrop (via Tcl commands) and enables compressed userfile transfer. See doc/settings/mod.compress for more information. SHARE MODULE The share module has a new setting now (override-bots) which allows hub bots to override the leaf bots' bot settings (botaddress, telnet port, and password). Please note that this won't work with a version 1.4 or below bot. See doc/settings/mod.share for more information. TRANSFER / FILESYS MODULES The filesys and transfer modules have changed completely. Both can now handle unlimited filename lengths and description sizes. Incomplete downloads from the bot can also now be resumed. The db format of the filesys module was changed to remove the limits imposed by the old format. There's nothing special for you to do, as the old db is automatically converted to the new format when you first access it. You won't be able to downgrade to older versions after this, so you may want to make a backup first. See doc/settings/mod.transfer and doc/settings/mod.filesys for more information. UPTIME MODULE This module reports uptime statistics to http://uptime.eggheads.org. Go look and see what your uptime is! It takes about 9 hours to show up, so if your bot isn't listed, try again later. See doc/settings/mod.uptime for more information. DCC COMMANDS * ".nick" was renamed to ".handle". ".nick" will still be kept up to version 1.8. * ".chnick" was renamed to ".chhandle". ".chnick" will still be kept up to version 1.8. * ".binds" now supports wildcards. * ".halfop" and ".dehalfop" have been added. * The 'optimise' file system command was renamed to 'optimize'. The old command will still be kept up to version 1.8. * Eggdrop now counts all of the traffic which it generates and receives through IRC, the botnet, scripts, and dcc. You can access these statistics via the dcc command ".traffic". Please note that the counter gets reset every time a restart is done. * ".modules" now works locally as well as remotely. CHANNEL MODES Support for IRCnet negative limits and DALnet's +R, +M, and +c channel modes has been added. Eggdrop now also supports halfops (+h). DOCUMENTATION A lot has happened to the documentation; nearly every file was changed, so take a look at them. Also, we have discovered html, and full html documentation is available now in doc/html. Additionally, all possible settings for Eggdrop are documented in doc/settings. CONFIG FILES * To support longer nicknames, as some IRC servers do, a new 'nick-len' setting was added. * Eggdrop uses strftime now to support different logfile suffixes. The new config file setting is 'logfile-suffix'. * A new 'pidfile' setting was added to allow you to specify the name of Eggdrop's pid file. * The 'strict-servernames' setting was removed. PENALTY CALCULATION Eggdrop calculates penalty points on IRCnet now, so it won't flood itself off anymore. This feature also works on EFnet and Undernet, and should work on other networks as well. TCL COMMANDS * The 'chnick' command was renamed to 'chhandle'. The use of 'chnick' is deprecated. 'chnick' is still accessible if you load compat.tcl. * All three commands to add data to the queues (puthelp, putserv and putquick) now support the '-next' parameter which pushes data to the front of the queue. * A command to calculate md5 checksums, 'md5', was added. * To support the new asynch dns module, the command 'dnslookup' was added. * Four new commands regarding exempts/invites were added: stickexempt, unstickexempt, stickinvite, and unstickinvite. * A new 'wasop' command was added to check if a user had op before a mode change. * 'washalfop', 'ishalfop', and 'botishalfop' have been added. * Three new Tcl commands were added as part of the compress module: compressfile, uncompressfile, and iscompressed. * A new command to check whether the bot's nick is juped was added (isjuped). * The fileresend command was added to support mIRC's dcc resume feature. * A new bind type called 'NEED' was added which triggers when the bot needs op, unban, limit, key, or invite. * LOST and TOUT bind types were added. * Two new commands, 'channame2dname' and 'chandname2name', were added to allow scripts to support !channels. * A new evnt type, loaded, was added. * The 'setudef', 'renudef', and 'deludef' commands were added to allow for user-defined channel settings. * A 'traffic' command was added which returns a list of sublists containing information about the bot's traffic usage in bytes. * The CTCP bind type now supports wildcards. * A 'handlen' variable was added (set to the value of the HANDLEN define in eggdrop.h. 'nick-len' was also renamed to 'nicklen' (the old variable will remain until version 1.8. * The 'channel get' command was added to allow channel settings to be easily retrieved. * The 'server' variable now contains the server's realname instead of its serverlist entry regardless of the 'strict-servernames' setting. * The 'serveraddress' variable was added, which contains the server's serverlist address and port. * The 'onchan', 'botonchan', 'botisvoice', 'botisop', 'onchansplit', 'isop', 'isvoice', and 'handonchan' commands no longer require an argument. * Added a "stripcodes" command to remove control codes/etc from strings. For more information about changed or added Tcl commands, see doc/tcl-commands.doc. TRAFFIC ACCOUNTING Eggdrop now counts all of the traffic which it generates and receives through IRC, the botnet, scripts, and dcc. You can access these statistics via the dcc command '.traffic'. Please note that the counter gets reset every time a restart is done. ________________________________________________________________________ Copyright (C) 1997 Robey Pointer Copyright (C) 1999 - 2018 Eggheads Development Team