Bring in some doc updates from master
This commit is contained in:
commit
ddff36dba2
10
README.md
10
README.md
|
@ -8,8 +8,8 @@ ENiGMA½ is a modern BBS software with a nostalgic flair!
|
||||||
## Features Available Now
|
## Features Available Now
|
||||||
* Multi platform: Anywhere [Node.js](https://nodejs.org/) runs likely works (known to work under Linux, FreeBSD, OpenBSD, OS X and Windows)
|
* Multi platform: Anywhere [Node.js](https://nodejs.org/) runs likely works (known to work under Linux, FreeBSD, OpenBSD, OS X and Windows)
|
||||||
* Unlimited multi node support (for all those BBS "callers"!)
|
* Unlimited multi node support (for all those BBS "callers"!)
|
||||||
* **Highly** customizable via [HJSON](http://hjson.org/) based configuration, menus, and themes in addition to JavaScript based [mods](docs/mods.md)
|
* **Highly** customizable via [HJSON](http://hjson.org/) based configuration, menus, and themes in addition to JavaScript based [mods](docs/modding/existing-mods.md)
|
||||||
* [MCI support](docs/mci.md) for lightbars, toggles, input areas, and so on plus many other other bells and whistles
|
* [MCI support](docs/art/mci.md) for lightbars, toggles, input areas, and so on plus many other other bells and whistles
|
||||||
* Telnet, **SSH**, and both secure and non-secure [WebSocket](https://en.wikipedia.org/wiki/WebSocket) access built in! Additional servers are easy to implement
|
* Telnet, **SSH**, and both secure and non-secure [WebSocket](https://en.wikipedia.org/wiki/WebSocket) access built in! Additional servers are easy to implement
|
||||||
* [CP437](http://www.ascii-codes.com/) and UTF-8 output
|
* [CP437](http://www.ascii-codes.com/) and UTF-8 output
|
||||||
* [SyncTerm](http://syncterm.bbsdev.net/) style font and baud emulation support. Display PC/DOS and Amiga style artwork as it's intended! In general, ANSI-BBS / [cterm.txt](http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt?content-type=text%2Fplain&revision=HEAD) / [bansi.txt](http://www.bbsdocumentary.com/library/PROGRAMS/GRAPHICS/ANSI/bansi.txt) are followed for expected BBS behavior
|
* [SyncTerm](http://syncterm.bbsdev.net/) style font and baud emulation support. Display PC/DOS and Amiga style artwork as it's intended! In general, ANSI-BBS / [cterm.txt](http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt?content-type=text%2Fplain&revision=HEAD) / [bansi.txt](http://www.bbsdocumentary.com/library/PROGRAMS/GRAPHICS/ANSI/bansi.txt) are followed for expected BBS behavior
|
||||||
|
@ -17,10 +17,10 @@ ENiGMA½ is a modern BBS software with a nostalgic flair!
|
||||||
* Renegade style pipe color codes
|
* Renegade style pipe color codes
|
||||||
* [SQLite](http://sqlite.org/) storage of users, message areas, and so on
|
* [SQLite](http://sqlite.org/) storage of users, message areas, and so on
|
||||||
* Strong [PBKDF2](https://en.wikipedia.org/wiki/PBKDF2) backed password encryption
|
* Strong [PBKDF2](https://en.wikipedia.org/wiki/PBKDF2) backed password encryption
|
||||||
* [Door support](docs/doors.md) including common dropfile formats for legacy DOS doors. Built in [BBSLink](http://bbslink.net/), [DoorParty](http://forums.throwbackbbs.com/), [Exodus](https://oddnetwork.org/exodus/) and [CombatNet](http://combatnet.us/) support!
|
* [Door support](docs/modding/door-servers.md) including common dropfile formats for legacy DOS doors. Built in [BBSLink](http://bbslink.net/), [DoorParty](http://forums.throwbackbbs.com/), [Exodus](https://oddnetwork.org/exodus/) and [CombatNet](http://combatnet.us/) support!
|
||||||
* [Bunyan](https://github.com/trentm/node-bunyan) logging
|
* [Bunyan](https://github.com/trentm/node-bunyan) logging
|
||||||
* [Message networks](docs/msg_networks.md) with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export
|
* [Message networks](docs/messageareas/message-networks.md) with FidoNet Type Network (FTN) + BinkleyTerm Style Outbound (BSO) message import/export. Messages Bases can also be set to read-only viewable using a built in Gopher server!
|
||||||
* [Gazelle](https://github.com/WhatCD/Gazelle) inspirted File Bases including fast fully indexed full text search (FTS), #tags, and HTTP(S) temporary download URLs using a built in [web server](docs/web_server.md). Legacy X/Y/Z modem also supported!
|
* [Gazelle](https://github.com/WhatCD/Gazelle) inspirted File Bases including fast fully indexed full text search (FTS), #tags, and HTTP(S) temporary download URLs using a built in [web server](docs/servers/web-server.md). Legacy X/Y/Z modem also supported!
|
||||||
* Upload processor supporting [FILE_ID.DIZ](https://en.wikipedia.org/wiki/FILE_ID.DIZ) and [NFO](https://en.wikipedia.org/wiki/.nfo) extraction, year estimation, and more!
|
* Upload processor supporting [FILE_ID.DIZ](https://en.wikipedia.org/wiki/FILE_ID.DIZ) and [NFO](https://en.wikipedia.org/wiki/.nfo) extraction, year estimation, and more!
|
||||||
* ANSI support in the Full Screen Editor (FSE), file descriptions, and so on
|
* ANSI support in the Full Screen Editor (FSE), file descriptions, and so on
|
||||||
|
|
||||||
|
|
|
@ -4,8 +4,8 @@
|
||||||
- [Docker]({{ site.baseurl }}{% link installation/docker.md %})
|
- [Docker]({{ site.baseurl }}{% link installation/docker.md %})
|
||||||
- [Manual installation]({{ site.baseurl }}{% link installation/manual.md %})
|
- [Manual installation]({{ site.baseurl }}{% link installation/manual.md %})
|
||||||
- [OS / Hardware Specific]({{ site.baseurl }}{% link installation/os-hardware.md %})
|
- [OS / Hardware Specific]({{ site.baseurl }}{% link installation/os-hardware.md %})
|
||||||
- Raspberry Pi
|
- [Raspberry Pi]({{ site.baseurl }}{% link installation/rpi.md %})
|
||||||
- Windows
|
- [Windows]({{ site.baseurl }}{% link installation/windows.md %})
|
||||||
- [Your Network Setup]({{ site.baseurl }}{% link installation/network.md %})
|
- [Your Network Setup]({{ site.baseurl }}{% link installation/network.md %})
|
||||||
- [Testing Your Installation]({{ site.baseurl }}{% link installation/testing.md %})
|
- [Testing Your Installation]({{ site.baseurl }}{% link installation/testing.md %})
|
||||||
- [Production Installation]({{ site.baseurl }}{% link installation/production.md %})
|
- [Production Installation]({{ site.baseurl }}{% link installation/production.md %})
|
||||||
|
|
|
@ -26,5 +26,4 @@ email: {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
```
|
```
|
|
@ -2,31 +2,10 @@
|
||||||
layout: page
|
layout: page
|
||||||
title: OS & Hardware Specific Information
|
title: OS & Hardware Specific Information
|
||||||
---
|
---
|
||||||
## Raspberry Pi
|
There are multiple ways of installing ENiGMA BBS, depending on your level of experience and desire to do
|
||||||
|
things manually versus have it automated for you.
|
||||||
|
|
||||||
All Raspberry Pi models work great with ENiGMA½! Keep in mind compiling the dependencies with
|
| Method | Notes |
|
||||||
`npm install` will take some time and *may* appear to hang. It's still working - just be patient and let it
|
|----------------------------------------|---------------------------------------------------------------------------------------------|
|
||||||
complete.
|
| [Raspberry Pi](rpi) | All Raspberry Pi models work great with ENiGMA½! |
|
||||||
|
| [Windows](windows) | Compatible with all Windows Operating Systems |
|
||||||
### Basic Instructions
|
|
||||||
|
|
||||||
1. Download [Raspbian Stretch Lite](https://www.raspberrypi.org/downloads/raspbian/). Follow the instructions
|
|
||||||
on the [Raspbian site](https://www.raspberrypi.org/documentation/installation/installing-images/README.md) regarding how
|
|
||||||
to get it written to an SD card.
|
|
||||||
|
|
||||||
2. Run `sudo raspi-config`, then:
|
|
||||||
1. Set your timezone (option 4, option I2)
|
|
||||||
2. Enable SSH (option 5, option P2)
|
|
||||||
3. Expand the filesystem to use the entire SD card (option 7, option A1)
|
|
||||||
|
|
||||||
3. Update & upgrade all packages: `apt-get update && apt-get upgrade`
|
|
||||||
|
|
||||||
4. Install required packages: `sudo apt install lrzsz p7zip-full`
|
|
||||||
|
|
||||||
5. Follow the [installation instructions](/installation) to install ENiGMA½.
|
|
||||||
|
|
||||||
6. Profit!
|
|
||||||
|
|
||||||
## Windows
|
|
||||||
|
|
||||||
Needs more info, please submit a PR!
|
|
||||||
|
|
|
@ -0,0 +1,27 @@
|
||||||
|
---
|
||||||
|
layout: page
|
||||||
|
title: Raspberry Pi
|
||||||
|
---
|
||||||
|
|
||||||
|
All Raspberry Pi models work great with ENiGMA½! Keep in mind compiling the dependencies with
|
||||||
|
`npm install` will take some time and *may* appear to hang. It's still working - just be patient and let it
|
||||||
|
complete.
|
||||||
|
|
||||||
|
### Basic Instructions
|
||||||
|
|
||||||
|
1. Download [Raspbian Stretch Lite](https://www.raspberrypi.org/downloads/raspbian/). Follow the instructions
|
||||||
|
on the [Raspbian site](https://www.raspberrypi.org/documentation/installation/installing-images/README.md) regarding how
|
||||||
|
to get it written to an SD card.
|
||||||
|
|
||||||
|
2. Run `sudo raspi-config`, then:
|
||||||
|
1. Set your timezone (option 4, option I2)
|
||||||
|
2. Enable SSH (option 5, option P2)
|
||||||
|
3. Expand the filesystem to use the entire SD card (option 7, option A1)
|
||||||
|
|
||||||
|
3. Update & upgrade all packages: `apt-get update && apt-get upgrade`
|
||||||
|
|
||||||
|
4. Install required packages: `sudo apt install lrzsz p7zip-full`
|
||||||
|
|
||||||
|
5. Follow the [installation instructions](/installation) to install ENiGMA½.
|
||||||
|
|
||||||
|
6. Profit!
|
|
@ -0,0 +1,69 @@
|
||||||
|
---
|
||||||
|
layout: page
|
||||||
|
title: Windows Full Install
|
||||||
|
---
|
||||||
|
|
||||||
|
ENiGMA½ will run on both 32bit and 64bit Windows. If you want to run 16bit doors natively then you should use a 32bit Windows.
|
||||||
|
|
||||||
|
|
||||||
|
### Basic Instructions
|
||||||
|
|
||||||
|
1. Download and Install [Node.JS](https://nodejs.org/en/download/).
|
||||||
|
|
||||||
|
1. Upgrade NPM : At this time node comes with NPM 5.6 preinstalled. To upgrade to a newer version now or in the future on windows follow this method. `*Run PowerShell as Administrator`
|
||||||
|
|
||||||
|
`*Initial Install`
|
||||||
|
```Powershell
|
||||||
|
Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
|
||||||
|
npm install -g npm-windows-upgrade
|
||||||
|
```
|
||||||
|
`*Upgrade`
|
||||||
|
```Powershell
|
||||||
|
npm-windows-upgrade
|
||||||
|
```
|
||||||
|
|
||||||
|
Note: Do not run `npm i -g npm`. Instead use `npm-windows-upgrade` to update npm going forward.
|
||||||
|
Also if you run the NodeJS installer, it will replace the node version.
|
||||||
|
|
||||||
|
2. Install [windows-build-tools for npm](https://www.npmjs.com/package/windows-build-tools)
|
||||||
|
`*This will also install python 2.7`
|
||||||
|
```Powershell
|
||||||
|
npm install --global --production windows-build-tools
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
2. Install [7zip](https://www.7-zip.org/download.html).
|
||||||
|
|
||||||
|
*Add 7zip to your path so `7z` can be called from the console
|
||||||
|
1. Right click `This PC` and Select `Properties`
|
||||||
|
2. Go to the `Advanced` Tab and click on `Enviromental Varibles`
|
||||||
|
3. Select `Path` under `System Varibles` and click `Edit`
|
||||||
|
4. Click `New` and paste the path to 7zip
|
||||||
|
5. Close your console window and reopen. You can type `7z` to make sure it's working.
|
||||||
|
|
||||||
|
3. Install [Git](https://git-scm.com/downloads) and optionally [TortoiseGit](https://tortoisegit.org/download/).
|
||||||
|
|
||||||
|
4. Clone ENiGMA½ - browse to the directory you want and run
|
||||||
|
```Powershell
|
||||||
|
git clone "https://github.com/NuSkooler/enigma-bbs.git"
|
||||||
|
```
|
||||||
|
Optionally use the TortoiseGit by right clicking the directory and selecting `Git Clone`.
|
||||||
|
|
||||||
|
|
||||||
|
5. Install ENiGMA½.
|
||||||
|
1. In the enigma directory run
|
||||||
|
```Powershell
|
||||||
|
npm install
|
||||||
|
```
|
||||||
|
2. Generate your initial configuration: `Follow the prompts!`
|
||||||
|
```Powershell
|
||||||
|
node .\oputil.js config new
|
||||||
|
```
|
||||||
|
3. Edit your configuration files in `enigma-bbs\config` with [Notepad++](https://notepad-plus-plus.org/download/) or [Visual Studio Code](https://code.visualstudio.com/Download)
|
||||||
|
4. Run ENiGMA½
|
||||||
|
```Powershell
|
||||||
|
node .\main.js
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
6. Look at [Production Installation](/installation/production) for maintaining ENiGMA½ when you are ready to go live.
|
|
@ -35,7 +35,7 @@ Each entry's key name is referenced elsewhere in `config.hjson` for FTN oriented
|
||||||
## Message Areas
|
## Message Areas
|
||||||
|
|
||||||
The `areas` section describes a mapping of local **area tags** configured in your `messageConferences` (see
|
The `areas` section describes a mapping of local **area tags** configured in your `messageConferences` (see
|
||||||
[Configuring a Message Area][/messageareas/configuring-a-message-area]) to a message network (described
|
[Configuring a Message Area](configuring-a-message-area.md)) to a message network (described
|
||||||
above), a FTN specific area tag, and remote uplink address(s).
|
above), a FTN specific area tag, and remote uplink address(s).
|
||||||
|
|
||||||
This section can be thought of similar to the *AREAS.BBS* file used by other BBS packages.
|
This section can be thought of similar to the *AREAS.BBS* file used by other BBS packages.
|
||||||
|
|
|
@ -18,6 +18,7 @@ You then need to enable the SSH server in your `config.hjson`:
|
||||||
ssh: {
|
ssh: {
|
||||||
enabled: true
|
enabled: true
|
||||||
port: 8889
|
port: 8889
|
||||||
|
privateKeyPem: /path/to/ssh_private_key.pem
|
||||||
privateKeyPass: YOUR_PK_PASS
|
privateKeyPass: YOUR_PK_PASS
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,3 +2,24 @@
|
||||||
layout: page
|
layout: page
|
||||||
title: Telnet Server
|
title: Telnet Server
|
||||||
---
|
---
|
||||||
|
|
||||||
|
Telnet is enabled by default on port `8888` in `config.hjson`:
|
||||||
|
|
||||||
|
```hjson
|
||||||
|
{
|
||||||
|
loginServers: {
|
||||||
|
telnet: {
|
||||||
|
enabled: true
|
||||||
|
port: 8888
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Telnet Server Options
|
||||||
|
|
||||||
|
| Option | Description
|
||||||
|
|---------------------|--------------------------------------------------------------------------------------|
|
||||||
|
| `firstMenu` | First menu a telnet connected user is presented with
|
||||||
|
| `enabled` | Enable/disable telnet server
|
||||||
|
| `port` | Configure a custom port for the telnet server
|
||||||
|
|
|
@ -21,7 +21,7 @@ There are a few things out of scope of this document:
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
1. Enable the websocket in ENiGMA, by adding `webSocket` configuration to the `loginServers` block (create it if you
|
1. Enable the websocket in ENiGMA, by adding `webSocket` configuration to the `loginServers` block in `config.hjson` (create it if you
|
||||||
don't already have it defined).
|
don't already have it defined).
|
||||||
|
|
||||||
````hjson
|
````hjson
|
||||||
|
|
Loading…
Reference in New Issue