Organized and updated upgrade docs

This commit is contained in:
Bryan Ashby 2023-03-19 13:39:21 -06:00
parent 81edff48fe
commit 94842afd7e
No known key found for this signature in database
GPG Key ID: C2C1B501E4EFD994
7 changed files with 13 additions and 77 deletions

View File

@ -28,4 +28,4 @@ env CC=gcc CXX=gcc npm rebuild --build-from-source node-pty
### Missing Menu & Theme Entries
One thing to be sure and check after an update is your menu/prompt HJSON configurations as well as your theme(s). The default templates are updated alongside features, but you may need to merge in fragments missing from your own.
See also [Updating](./docs/_docs/admin/updating.md)
See also [Upgrading](./docs/_docs/admin/upgrading.md)

View File

@ -2,52 +2,20 @@
This document covers information for keeping your system updated through periodic upgrades as well as version-to-version upgrade notes. **Be sure to read these notes for _any_ upgrade!**
# Before Upgrading
* Always back up your system! (See [Administration](./docs/admin/administration.md))
* Seriously, always back up your system!
1. Always back up your system! (See [Administration - Backing Up Your System](./docs/_docs/admin/administration.md#backing-up-your-system))
2. Seriously, always back up your system!
3. Review the version to version release notes within this document.
4. [Upgrade](./docs/_docs/admin/upgrading.md)
# General Notes
## The Upgrade Process
# The Upgrade Process
ENiGMA½ does not currently have much of a "release process" in that instead, it is expected that if you want new features, you will `git pull` them to your system.
You will generally be pulling from `master`, so the process is as follows:
```bash
# stop system if running
cd enigma-bbs
git pull origin main
# look for any errors
rm -rf node_modules # ONLY for Node.js upgrades!
npm install # or yarn, etc.
# look for any errors
node main.js # restart system
```
![Upgrade Flow](./docs/assets/images/upgrade-flow.png)
> :information_source: After upgrading, it is always recommended to look at [UPGRADE.md](UPGRADE.md) and inspect the version-to-version notes as well as the [WHATSNEW](WHATSNEW.md).
## Configuration File Updates
After an upgrade, **it is possible that your system is missing new features exposed in the default theme/menu layout**. To check this, you can look at the template menu files in `misc/menu_templates`, and `config_template.in.hjson` as well as the default `luciano_blocktronics/theme.hjson` files for changes/additions.
Tips:
* Create a clean checkout of ENiGMA via `git https://github.com/NuSkooler/enigma-bbs.git enigma-bbs-clean` and run it to see any new features within the default configuration
* As the template files described above are likely what you built your system from, a diff viewer can go a long way!
> :information_source: See [Updating](./docs/admin/updating.md) for details on updating menu files.
# Upgrading the Code
Upgrading from GitHub is easy:
```bash
cd /path/to/enigma-bbs
git pull
rm -rf npm_modules # do this any time you update Node.js itself
npm install # or simply 'yarn'
```
Refer to [Upgrading](./docs/_docs/admin/upgrading.md) for details around this process.
# Problems
1. Check [TROUBLESHOOTING](TROUBLESHOOTING.md) first.
2. Report your issue on [Xibalba BBS](https://xibalba.l33t.codes), or [file a issue on GitHub](https://github.com/NuSkooler/enigma-bbs/issues) if you believe you've found a bug or missing feature.
2. Report your issue on [Xibalba BBS](https://xibalba.l33t.codes), or [file a issue on GitHub](https://github.com/NuSkooler/enigma-bbs/issues)!
# Version to Version Notes
> :warning: Be sure to inspect these notes during any upgrades!
@ -63,7 +31,6 @@ This will expose the default ActivityPub setup. Enabling ActivityPub functionali
> :information_source: See [Configuration Files Include Statements](./docs/_docs/configuration/config-files.md#includes) for more information on using `include`.
## 0.0.12-beta to 0.0.13-beta
* To enable the new Waiting for Caller (WFC) support, please see [WFC](docs/modding/wfc.md).
* :exclamation: The SSH server's `ssh2` module has gone through a major upgrade. Existing users will need to comment out two SSH KEX algorithms from their `config.hjson` if present else clients such as NetRunner will not be able to connect over SSH. Comment out `diffie-hellman-group-exchange-sha256` and `diffie-hellman-group-exchange-sha1`

View File

@ -34,7 +34,7 @@ This document attempts to track **major** changes and additions in ENiGMA½. For
* Additional options in the `abracadabra` module for launching doors. See [Local Doors](./docs/modding/local-doors.md)
## 0.0.12-beta
* The `master` branch has become mainline. What this means to users is `git pull` will always give you the latest and greatest. Make sure to read [Updating](./docs/admin/updating.md) and keep an eye on `WHATSNEW.md` (this file) and [UPGRADE](UPGRADE.md)! See also [ticket #276](https://github.com/NuSkooler/enigma-bbs/issues/276).
* The `master` branch has become mainline. What this means to users is `git pull` will always give you the latest and greatest. Make sure to read [Upgrading](./docs/admin/upgrading.md) and keep an eye on `WHATSNEW.md` (this file) and [UPGRADE](UPGRADE.md)! See also [ticket #276](https://github.com/NuSkooler/enigma-bbs/issues/276).
* Development now occurs against [Node.js 14 LTS](https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V14.md).
* The default configuration has been moved to [config_default.js](/core/config_default.js).
* A full configuration revamp has taken place. Configuration files such as `config.hjson`, `menu.hjson`, and `theme.hjson` can now utilize includes via the `includes` directive, reference 'self' sections using `@reference:` and import environment variables with `@environment`.

View File

@ -6,7 +6,7 @@ title: Administration
# Administration
## Keeping Up to Date
See [Updating](updating.md).
See [Upgrading](upgrading.md).
## Viewing Activity
Monitor your system via the [Waiting For Caller (WFC)](../modding/wfc.md) screen and learn how to [monitoring logs](../troubleshooting/monitoring-logs.md).

View File

@ -1,31 +0,0 @@
---
layout: page
title: Updating
---
# Updating
Keeping your system up to date ensures you have the latest fixes, features, and general improvements. Updating ENiGMA½ can be a bit of a learning curve compared to traditional binary-release systems you may be used to, especially when running from Git cloned source.
## Updating From Source
If you have installed using Git source (if you used the `install.sh` script) follow these general steps to update your system:
1. **Back up your system**!
2. Pull down the latest source:
```bash
cd /path/to/enigma-bbs
git pull
```
3. :bulb: Review `WHATSNEW.md` and `UPDATE.md` for any specific instructions or changes to be aware of.
4. Update your dependencies:
```bash
npm install # or 'yarn'
```
4. Merge updates from `config/menu_template.hjson` to your `config/yourbbsname-menu.hjson` file (or simply use the template as a reference to spot any newly added default menus that you may wish to have on your system as well!).
5. If there are updates to the `art/themes/luciano_blocktronics/theme.hjson` file and you have a custom theme, you may want to look at them as well.
6. Finally, restart your running ENiGMA½ instance.
> :information_source: Visual diff tools such as [DiffMerge](https://www.sourcegear.com/diffmerge/downloads.php) (free, works on all major platforms) can be very helpful for the tasks outlined above!
> :bulb: It is recommended to [monitor logs](../troubleshooting/monitoring-logs.md) and poke around a bit after an update!

View File

@ -15,7 +15,7 @@ The script will install `nvm`, Node.js and grab the latest ENiGMA BBS from GitHu
> :information_source: After installing:
> * Read [External Binaries](../configuration/external-binaries.md)
> * Read [Updating](../admin/updating.md)
> * Read [Upgrading](../admin/upgrading.md)
You might also check out some external guides:
* https://www.maketecheasier.com/create-bbs-linux-with-enigmabbs/

View File

@ -15,4 +15,4 @@ There are multiple ways of installing ENiGMA BBS, depending on your level of exp
:scroll: Check out [this awesome video on installation and basic configuration](https://youtu.be/WnN-ucVi3ZU) from Al's Geek Lab!
## Keeping Up To Date
After installing, you'll want to [keep your system updated](../admin/updating.md).
After installing, you'll want to [keep your system updated](../admin/upgrading.md).