Upgrading from 2.0 to 2.1

Upgrading from 2.0 to 2.1 can be done by:

General

  1. Update any scripts you have that execute services to execute anope instead.

  2. If you are using the db_sql or db_sql_live modules it is recommended that on 2.0 you load db_flatfile and export your database to a file and re-import on 2.1 to update the schema of your database.

services.conf

  1. Rename services.conf to anope.conf.

  2. Replace uplink:ipv6 with uplink:protocol (example).

  3. If you are using the charybdis protocol module then migrate to Solanum and replace it with the solanum module.

  4. If you are using the inspircd3 protocol module then replace it with the inspircd module.

  5. If you are using the inspircd12 or inspircd20 protocol modules then upgrade your IRCd and replace it with the inspircd module.

  6. If you are using the unreal4 protocol module then replace it with the unrealircd module.

  7. If you are using the unreal protocol module then upgrade your IRCd and replace it with the unrealircd module.

  8. Move the enc_md5, enc_none, enc_sha1, and enc_sha256 modules to be secondary encryption modules and add enc_argon2, enc_bcrypt, or enc_sha2 as a new primary encryption module (example).

  9. Replace the nickserv/access privilege in operator accounts with the nickserv/cert privilege.

  10. Add the global/queue and global/server privileges to operator accounts with the global/global privilege.

  11. Update serverinfo:motd to be relative to the config directory.

  12. Update serverinfo:pid to be relative to the data directory.

  13. If you are using email then add the i flag to the sendmail command (example).

  14. Replace options:usestrictprivmsg with options:servicealias (example).

  15. Update options:languages to no longer include ca_ES.UTF-8, hu_HU.UTF-8, and ru_RU.UTF-8.

botserv.conf

  1. Add a description to the GREET privilege (example).

chanserv.conf

  1. Rename the FANTASIA privilege to FANTASY (example).

  2. Add a description to the ACCESS_CHANGE, ACCESS_LIST, AKICK, ASSIGN, AUTOHALFOP, AUTOOP, AUTOOWNER, AUTOPROTECT, AUTOVOICE, BADWORDS, BAN, FANTASY, FOUNDER, GETKEY, HALFOP, HALFOPME, INFO, INVITE, KICK, MEMO, MODE, NOKICK, OP, OPME, OWNER, OWNERME, PROTECT, PROTECTME, SAY, SET, SIGNKICK, TOPIC, UNBAN, UNBANME, VOICE, and VOICEME privileges (example).

  3. Add the UNBANME privilege for chanserv/unban (example).

  4. Remove the cs_secure option from defaults from the chanserv module.

  5. Add the misc_numeric field to the SET URL command of the ns_set_misc module (example).

  6. Rename expire on the cs_suspend module to suspendexpire.

global.conf

  1. Add the gl_queue and gl_server modules and their commands (example).

chanstats.conf

  1. Remove the m_ prefix from the chanstats module.

nickserv.conf

  1. Add the nickserv/set/neverop and nickserv/saset/neverop commands (example).

  2. Remove the nickserv/set/secure and nickserv/saset/secure commands.

  3. Remove the ns_access module and nickserv/access command. .
  4. Remove the ns_getpass module and nickserv/getpass command.

  5. Remove the ns_status module and nickserv/status command.

  6. Remove the ns_secure option from defaults on the nickserv module.

  7. Rename passlen on the nickserv module to maxpasslen.

  8. Replace guestnickprefix on the nickserv module with guestnick (example).

  9. Replace options:strictpasswords with nickserv:minpasslen (example).

  10. Load the ns_set_language module (example).

  11. Load the ns_set_kill module (example).

  12. If options:useprivmsg was enabled load the ns_set_message module (example).

modules.conf

  1. If enabled add tlsv10, tlsv11, and tlsv12 to the ssl_openssl module (example).

  2. If enabled remove sslv3 from the ssl_openssl module (now always disabled).

  3. If enabled remove the the m_ prefix from the dns, dnsbl, helpchan, httpd, ldap, ldap_oper, mysql, proxyscan, redis, regex_pcre2, regex_posix, regex_stdlib, regex_tre, rewrite, sasl, sql_log, sql_oper, sqlite, ssl_gnutls, ssl_openssl, xmlrpc, and xmlrpc_main modules.

  4. If enabled replace the m_regex_pcre module with the regex_pcre2 module.

  5. If enabled update cert, dhparams, and key on the ssl_gnutls module to be relative to the config directory.

  6. If enabled update cert and key on the ssl_openssl module to be relative to the config directory.

  7. If enable replace template on the webcpanel module with template_dir (example).

operserv.conf

  1. Remove the os_oline module and operserv/oline command.

stats.standalone.conf

  1. Remove the m_ prefix from the mysql module.