So you want to update your ircd: Difference between revisions

From pisswiki
No edit summary
No edit summary
 
Line 1: Line 1:
Tested 4x on pissircd and unrealircd, some servers with custom scripts installed, and confirmed with another dozen or so successful updates.
This process was tested 4x on pissircd and unrealircd, some servers with custom scripts installed, and confirmed with another dozen or so successful updates.


---
Guide was written to be as 'cut and paste' as possible.


== Notes ==
== Notes ==
Line 15: Line 15:
* The fun bit: You can build, upgrade and make all changes while your ircd is running, needing only to stop and restart when done.
* The fun bit: You can build, upgrade and make all changes while your ircd is running, needing only to stop and restart when done.


---


== Updating from 5.x to 6.x ==
== Updating from 5.x to 6.x ==
Line 54: Line 53:
* '''./unrealircd start'''
* '''./unrealircd start'''


---


== Post Notes ==
== Post Notes ==
Line 64: Line 62:
Nothing will be lost except uptime.
Nothing will be lost except uptime.


---


== Updating within 6.x versions ==
== Updating within 6.x versions ==

Latest revision as of 19:07, 6 April 2022

This process was tested 4x on pissircd and unrealircd, some servers with custom scripts installed, and confirmed with another dozen or so successful updates.

Guide was written to be as 'cut and paste' as possible.

Notes

  • When I was attempting to upgrade using the built in unrealircd upgrader on a server that had 5.x, it failed with an error about calling a script directly despite using the correct command to do a version upgrade. Updating required a few extra steps when done manually, all from this page: https://www.unrealircd.org/docs/Upgrading_from_5.x
  • This was documented specifically for working around the built in updater to go from 5.x to 6.x while also doing a build to run pissircd.
  • This upgrade method will also work for those running vanilla unrealircd and upgrading to pissircd. But we're making a backup of your unrealircd folder regardless.
  • There's no risk in this upgrade method aside from a minute of downtime should you be unable to restart.
  • The fun bit: You can build, upgrade and make all changes while your ircd is running, needing only to stop and restart when done.


Updating from 5.x to 6.x

  • Remove all of your previous build and backup folders (you won't be using the built in unrealircd upgrader, so clear out the old cruft.)
  • Back up your unrealircd folder (cp -R unrealircd backup.unrealircd)
  • git clone https://github.com/pissnet/pissircd
  • cd pissircd && ./Config
  • Hit enter on everything (defaults)
  • make
  • make install
  • cd ..
  • cd unrealircd
  • cd conf
  • nano unrealircd.conf
  • Comment out the entire block for > log "ircd.log"
    • from log "ircd.log"
    • including "flags {"
    • to second "}"
    • (Needed for 6.x, otherwise your conf fails checks.)
  • Add the following:
log {
        source {
            !debug;
            all;
        }
        destination {
            file "ircd.log" { maxsize 100M; }
        }
}

include "snomasks.default.conf";
loadmodule "cloak_md5";
  • Save (Ctrl X)
  • cd ..
  • ./unrealircd stop
  • ./unrealircd start


Post Notes

You should be running piss60 successfully.

If not, delete 'unrealircd' ( rm -rf ~/unrealircd ) folder and rename 'backup.unrealircd' to 'unrealircd' ( mv backup.unrealircd unrealircd ) and then restart unrealircd ( cd unrealircd then ./unrealircd start )

Nothing will be lost except uptime.


Updating within 6.x versions

Updating once you have built from git is mostly the same. Some of the above steps are one time deals.

To update from 6.x to 6.x (patches, fixes, etc)

  • Back up your unrealircd folder (cp -R unrealircd backup.unrealircd)
  • rm -rf pissircd
  • git clone https://github.com/pissnet/pissircd
  • cd pissircd && ./Config
  • Hit enter on everything (defaults)
  • make && make install
  • cd ..
  • cd unrealircd
  • ./unrealircd stop
  • ./unrealircd start

and that should be it.