Updating from Armour v3.x#
Overview#
Armour v4.x is a massive script overhaul from the v3.x releases, mainly to implement:
- a separate namespace (to improve compatibility with other eggdrop scripts)
- support for multiple channels in Armour
Warning
This overhaul also resulted in completely changing how configuration was stored, meaning v3.x configuration failes are not compatible with v4.x script code.
Armour v4.x will automatically migrate old v3.x DB files to the required v4.0 format. However, the Armour configuration file is not migrated. If loading a Armour v4.x TCL onto an existing bot running Armour v3.x, ensure:
- a brand new armour configuration file is used, copying the
armour.conf.sample
from the v4.0 download - the bot is
restarted
and notrehashed
. A rehash will not work and result in crashing the bot.
Updating from Armour v4.x Alpha#
Less issues occur here, but there are some configuration changes that need to manually be made against existing v4.x configuration files.
-
Add the
Update Settings
section:# ------------------------------------------------------------------------------------------------ # UPDATE SETTINGS # ------------------------------------------------------------------------------------------------ # -- run hourly check for new script updates? (0|1) - [1] set cfg(update) 1 # -- send notes to global 500 users when new script versions are found? (0|1) - [1] set cfg(update:notes) 1 # -- automatically update script when new updates are found? (0|1) - [0] # -- notes are sent to global level 500 users when updates are found set cfg(update:auto) 0 # -- github branch to check and apply updates from - [master] set cfg(update:branch) "4_0_beta" # -- automatically remove old script backups after N days - [7] set cfg(update:flush) 7 # -- enable debug mode to download and stage new updates but do not execute (0|1) - 0 set cfg(update:debug) 0
-
Ensure the end of the configuration file after the
Command Binds
looks similar to this, with any necessary plugins uncommented:# ------------------------------------------------------------------------------------------------ # end of command levels # ------------------------------------------------------------------------------------------------ # -- optional plugins to load # -- to load plugins, uncomment their line after editing the config parameters in each file set files { # -- plugins (optional) #./armour/plugins/smsbot.tcl # -- smsglobal plugin #./armour/plugins/trakka.tcl # -- trakka plugin #./armour/plugins/tell.tcl # -- tell plugin #./armour/plugins/push.tcl # -- pushover plugin #./armour/plugins/email.tcl # -- email plugin #./armour/plugins/quote/quote.tcl # -- quote plugin } # ------------------------------------------------------------------------------------------------ # end of configuration # ------------------------------------------------------------------------------------------------ # ------------------------------------------------------------------------------------------------ } # end of namespace; scripts must be loaded afterwards, to avoid nested namespaces # ------------------------------------------------------------------------------------------------ source ./armour/armour.tcl # ------------------------------------------------------------------------------------------------ putlog "\[@\] Armour $arm::cfg(version) Loaded (empus@undernet.org)" # ------------------------------------------------------------------------------------------------
- Ensure your Armour directory is installed to
./armour
inside the eggdrop installation directory - Ensure your Armour *.tcl file is named
./armour/armour.tcl
- Rehash the bot!
- On IRC, run a forced
update
to merge configuration and automatically remove old & unused settings. Output will look similar to the below:@Empus | c update install -f @yolk | starting script upgrade to version: 4.0 (revision: 2022121400 -- branch: 4_0_beta) @yolk | Armour script v4.0 (revision: 2022121400) installation complete (runtime: 32 secs -- files: 110) @yolk | info: retained 47 non-default settings -- check 1 new config setting (dronebl:key) @yolk | info: found 1 available new RBL (rbl.undernet.org) @yolk | info: found 4 available new plugins (tell, smsbot, push, email) <-- | yolk (armour@armour.bot) has quit (Quit: Loading Armour v4.0 (revision: 2022121400)) --> | yolk (armour@armour.bot) has joined #armour
Ongoing Updates#
Once upgraded to Armour v4.0 (or later), the script can handle subsequent updates.
For more information, see Update.