So you want to live on the edge and run the latest Synchronet development code? Cool, we do too!
The instructions on this page will perform an incremental update from a Synchronet v3.16 or later install to the latest development build of Synchronet.
Note:
Some of the archive files referenced on this page include sub-directories with important files. When unzipping (e.g. on Windows), be sure to include the sub-directories and recreate the same sub-directory hierarchy in the target directories (e.g. do not extract files from exec/load/
into your exec
directory - this is a common mistake).
Note:
As of February 17th, 2018, Synchronet for Win32 now uses Cryptlib v3.4.4 which requires VCRUNTIME140.dll
. You can download the required Microsoft Visual C++ 2015 Redistributable Package for x86 (vc_redist.x86.exe
) here.
Stop all instances of sbbs
, scfg
, sbbsctrl
, sbbsntsvcs
, jsexec
, umonitor
, echocfg
, etc. from running.
We want to avoid problems with copying or over-writing files that may be in-use when BBS processes are running.
Seriously, you never know what could go wrong. Make a backup of your entire Synchronet directory tree before you begin.
If you have any customized modules/scripts in the exec
directory, move them to your mods
directory to protect them from over-write during update (and leave them there). You may want to manually merge in any “upstream” changes to benefit from fixes or new features added to those same files. You can use the GitLab web interface to perform comparisons (diff's) between revisions and find out what was added that you might have missed in your modified version of the file(s) from exec
.
If you are building Synchronet from source code (the normal case for *nix installations):
If you are using pre-built executables (from Windows-installer or archive):
exec
directory, stripping any sub-directory information and over-writing existing files in the processPlatform | Nightly Build | Continuous Build |
---|---|---|
Windows-i386 | sbbs_dev.zip https http ftp | https |
Linux-x64 | sbbs_dev.tgz https http ftp | https |
FreeBSD-amd64 | N/A | https |
Now that your “program files” (executable binaries) are updated, you need to update the run-time files next.
exec
and text
directories, the only file you might need to manually update or merge would be the ctrl/text.dat
file and creating any new symlinks to new files in exec. Other existing files should be automatically updated with your git pull
command.ctrl/text.dat
file from here. If you see some corrupted text output from the terminal server or some features don't work as expected, skipping this step could be the cause. If you don't have have or expect to make any edits to your text.dat
file, consider just using a 0-byte text.dat
file to always use defaults.
Note:
The sbbs_run
archive file (sbbs_run.tgz
for *nix, sbbs_run.zip
for Windows) contains a super-set of the files contained within the archive files referenced below. If you've already downloaded the sbbs_run
archive, then you already have all the necessary files (plus a lot more) and do not need to download the smaller archives referenced below.
ctrl/text.dat
file from here. If you see some corrupted text output from the terminal server or some features don't work as expected, skipping this step could be the cause. If you don't have have or expect to make any edits to your text.dat
file, consider just using a 0-byte text.dat
file to always use defaults.text
directory, extract the sbbstext
archive into your Synchronet text
directory, over-writing existing filesexec
directory), run: jsexec update
NOTE:
The following one-time error message displayed by jsexec
when upgrading from Synchronet versions prior to v3.20 is expected and should be ignored:
!ERROR loading configuration files: 2 (No such file or directory) opening /sbbs/ctrl/msgs.ini
... because later in the upgrade process, the msgs.ini
(and other) missing configuration files will be created (converted from *.cnf
):
Upgrading Synchronet v3.1x config files to v3.20 main.cnf -> main.ini ../node1\node.cnf -> node.ini ../node2\node.cnf -> node.ini ../node3\node.cnf -> node.ini ../node4\node.cnf -> node.ini msgs.cnf -> msgs.ini
Now you are ready to re-run the BBS and enjoy the “latest and greatest”!