Moarrrrrr doc updates
This commit is contained in:
parent
df2bf4477e
commit
f0e7b46a2f
|
@ -82,8 +82,6 @@
|
||||||
|
|
||||||
- Administration
|
- Administration
|
||||||
- [oputil]({{ site.baseurl }}{% link admin/oputil.md %})
|
- [oputil]({{ site.baseurl }}{% link admin/oputil.md %})
|
||||||
|
|
||||||
- [Oputil]({{ site.baseurl }}{% link oputil/index.md %})
|
|
||||||
|
|
||||||
- Troubleshooting
|
- Troubleshooting
|
||||||
- [Monitoring Logs]({{ site.baseurl }}{% link troubleshooting/monitoring-logs.md %})
|
- [Monitoring Logs]({{ site.baseurl }}{% link troubleshooting/monitoring-logs.md %})
|
||||||
|
|
|
@ -27,7 +27,7 @@ Commands break up operations by groups:
|
||||||
| Command | Description |
|
| Command | Description |
|
||||||
|-----------|---------------|
|
|-----------|---------------|
|
||||||
| `user` | User management |
|
| `user` | User management |
|
||||||
| `config` | System configuration and maintentance |
|
| `config` | System configuration and maintenance |
|
||||||
| `fb` | File base configuration and management |
|
| `fb` | File base configuration and management |
|
||||||
| `mb` | Message base configuration and management |
|
| `mb` | Message base configuration and management |
|
||||||
|
|
||||||
|
@ -45,11 +45,12 @@ usage: optutil.js user <action> [<args>]
|
||||||
|
|
||||||
actions:
|
actions:
|
||||||
pw USERNAME PASSWORD set password to PASSWORD for USERNAME
|
pw USERNAME PASSWORD set password to PASSWORD for USERNAME
|
||||||
rm USERNAME permanantely removes USERNAME user from system
|
rm USERNAME permanently removes USERNAME user from system
|
||||||
activate USERNAME sets USERNAME's status to active
|
activate USERNAME sets USERNAME's status to active
|
||||||
deactivate USERNAME sets USERNAME's status to deactive
|
deactivate USERNAME sets USERNAME's status to inactive
|
||||||
disable USERNAME sets USERNAME's status to disabled
|
disable USERNAME sets USERNAME's status to disabled
|
||||||
group USERNAME [+|-]GROUP adds (+) or removes (-) USERNAME from GROUP
|
lock USERNAME sets USERNAME's status to locked
|
||||||
|
group USERNAME [+|-]GROUP adds (+) or removes (-) user from GROUP
|
||||||
```
|
```
|
||||||
|
|
||||||
| Action | Description | Examples | Aliases |
|
| Action | Description | Examples | Aliases |
|
||||||
|
@ -59,6 +60,7 @@ actions:
|
||||||
| `activate` | Activates user | `./oputil.js user activate joeuser` | N/A |
|
| `activate` | Activates user | `./oputil.js user activate joeuser` | N/A |
|
||||||
| `deactivate` | Deactivates user | `./oputil.js user deactivate joeuser` | N/A |
|
| `deactivate` | Deactivates user | `./oputil.js user deactivate joeuser` | N/A |
|
||||||
| `disable` | Disables user (user will not be able to login) | `./oputil.js user disable joeuser` | N/A |
|
| `disable` | Disables user (user will not be able to login) | `./oputil.js user disable joeuser` | N/A |
|
||||||
|
| `lock` | Locks the user account (prevents logins) | `./oputil.js user lock joeuser` | N/A |
|
||||||
| `group` | Modifies users group membership | Add to group: `./oputil.js user group joeuser +derp`<br/>Remove from group: `./oputil.js user group joeuser -derp` | N/A |
|
| `group` | Modifies users group membership | Add to group: `./oputil.js user group joeuser +derp`<br/>Remove from group: `./oputil.js user group joeuser -derp` | N/A |
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
@ -82,7 +84,7 @@ import-areas args:
|
||||||
| Action | Description | Examples |
|
| Action | Description | Examples |
|
||||||
|-----------|-------------------|---------------------------------------|
|
|-----------|-------------------|---------------------------------------|
|
||||||
| `new` | Generates a new/initial configuration | `./oputil.js config new` (follow the prompts) |
|
| `new` | Generates a new/initial configuration | `./oputil.js config new` (follow the prompts) |
|
||||||
| `import-areas` | Imports areas using a Fidonet style *.NA or AREAS.BBS formatted file | `./oputil.js config import-areas /some/path/l33tnet.na` |
|
| `import-areas` | Imports areas using a FidoNet style *.NA or AREAS.BBS formatted file | `./oputil.js config import-areas /some/path/l33tnet.na` |
|
||||||
|
|
||||||
When using the `import-areas` action, you will be prompted for any missing additional arguments described in "import-areas args".
|
When using the `import-areas` action, you will be prompted for any missing additional arguments described in "import-areas args".
|
||||||
|
|
||||||
|
@ -138,7 +140,7 @@ general information:
|
||||||
The `scan` action can (re)scan a file area for new entries as well as update (`--update`) existing entry records (description, etc.). When scanning, a valid area tag must be specified. Optionally, storage tag may also be supplied in order to scan a specific filesystem location using the `@the_storage_tag` syntax. If a [GLOB](http://man7.org/linux/man-pages/man7/glob.7.html) is supplied as the last argument, only file entries with filenames matching will be processed.
|
The `scan` action can (re)scan a file area for new entries as well as update (`--update`) existing entry records (description, etc.). When scanning, a valid area tag must be specified. Optionally, storage tag may also be supplied in order to scan a specific filesystem location using the `@the_storage_tag` syntax. If a [GLOB](http://man7.org/linux/man-pages/man7/glob.7.html) is supplied as the last argument, only file entries with filenames matching will be processed.
|
||||||
|
|
||||||
##### Examples
|
##### Examples
|
||||||
Performing a quick scan of a specific area's storage location ("retro_warez", "retro_warez_games) matching only *.zip extentions:
|
Performing a quick scan of a specific area's storage location ("retro_warez", "retro_warez_games) matching only *.zip extensions:
|
||||||
```
|
```
|
||||||
$ ./oputil.js fb scan --quick retro_warez@retro_warez_games *.zip`
|
$ ./oputil.js fb scan --quick retro_warez@retro_warez_games *.zip`
|
||||||
```
|
```
|
||||||
|
|
|
@ -8,7 +8,7 @@ The main system configuration file, `config.hjson` both overrides defaults and p
|
||||||
See also [HJSON General Information](hjson.md) for more information on the HJSON format.
|
See also [HJSON General Information](hjson.md) for more information on the HJSON format.
|
||||||
|
|
||||||
### Creating a Configuration
|
### Creating a Configuration
|
||||||
Your initial configuration skeleton can be created using the `oputil.js` command line utility. From your enigma-bbs root directory:
|
Your initial configuration skeleton should be created using the `oputil.js` command line utility. From your enigma-bbs root directory:
|
||||||
```
|
```
|
||||||
./oputil.js config new
|
./oputil.js config new
|
||||||
```
|
```
|
||||||
|
@ -30,10 +30,21 @@ general: {
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
(Note the very slightly different syntax. **You can use standard JSON if you wish**)
|
(Note the very slightly [HJSON](hjson.md) different syntax. **You can use standard JSON if you wish!**)
|
||||||
|
|
||||||
While not everything that is available in your `config.hjson` file can be found defaulted in `core/config.js`, a lot is. [Poke around and see what you can find](https://github.com/NuSkooler/enigma-bbs/blob/master/core/config.js)!
|
While not everything that is available in your `config.hjson` file can be found defaulted in `core/config.js`, a lot is. [Poke around and see what you can find](https://github.com/NuSkooler/enigma-bbs/blob/master/core/config.js)!
|
||||||
|
|
||||||
|
### Configuration Sections
|
||||||
|
Below is a list of various configuration sections. There are many more, but this should get you started:
|
||||||
|
|
||||||
|
* [ACS](acs.md)
|
||||||
|
* [Archivers](archivers.md): Set up external archive utilities for handling things like ZIP, ARJ, RAR, and so on.
|
||||||
|
* [Email](email.md): System email support.
|
||||||
|
* [Event Scheduler](event-scheduler.md): Set up events as you see fit!
|
||||||
|
* [File Base](/docs/filebase/index.md)
|
||||||
|
* [File Transfer Protocols](file-transfer-protocols.md): Oldschool file transfer protocols such as X/Y/Z-Modem!
|
||||||
|
* [Message Areas](/docs/messageareas/configuring-a-message-area.md), [Networks](/docs/messageareas/message-networks.md), [NetMail](/docs/messageareas/netmail.md), etc.
|
||||||
|
|
||||||
|
|
||||||
### A Sample Configuration
|
### A Sample Configuration
|
||||||
Below is a **sample** `config.hjson` illustrating various (but certainly not all!) elements that can be configured / tweaked.
|
Below is a **sample** `config.hjson` illustrating various (but certainly not all!) elements that can be configured / tweaked.
|
||||||
|
|
|
@ -2,5 +2,4 @@
|
||||||
layout: page
|
layout: page
|
||||||
title: SysOp Setup
|
title: SysOp Setup
|
||||||
---
|
---
|
||||||
SySop privileges will be granted to the first user to log into a fresh ENiGMA½ installation.
|
SySop privileges will be granted to the first user to log into a fresh ENiGMA½ installation. +ops belong to the `sysop` user group by default.
|
||||||
|
|
|
@ -19,16 +19,21 @@ are OK) for Windows users. Note that you **should only need the Visual C++ compo
|
||||||
* [git](https://git-scm.com/downloads) to check out the ENiGMA source code.
|
* [git](https://git-scm.com/downloads) to check out the ENiGMA source code.
|
||||||
|
|
||||||
## Node.js
|
## Node.js
|
||||||
If you're new to Node.js and/or do not care about Node itself and just want to get ENiGMA½ running
|
### With NVM
|
||||||
these steps should get you going on most \*nix type environments:
|
Node Version Manager (NVM) is an excellent way to install and manage Node.js versions on most UNIX-like environments. [Get the latest version here](https://github.com/creationix/nvm). The install should look something like this:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
|
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
|
||||||
nvm install 6
|
|
||||||
nvm use 6
|
|
||||||
```
|
```
|
||||||
|
|
||||||
If the above completed without errors, you should now have `nvm`, `node`, and `npm` installed and in your environment.
|
Next, install Node.js with NVM:
|
||||||
|
```bash
|
||||||
|
nvm install 10
|
||||||
|
nvm use 10
|
||||||
|
nvm alias default 10
|
||||||
|
```
|
||||||
|
|
||||||
|
If the above steps completed without errors, you should now have `nvm`, `node`, and `npm` installed and in your environment.
|
||||||
|
|
||||||
For Windows nvm-like systems exist ([nvm-windows](https://github.com/coreybutler/nvm-windows), ...) or [just download the installer](https://nodejs.org/en/download/).
|
For Windows nvm-like systems exist ([nvm-windows](https://github.com/coreybutler/nvm-windows), ...) or [just download the installer](https://nodejs.org/en/download/).
|
||||||
|
|
||||||
|
@ -41,31 +46,25 @@ git clone https://github.com/NuSkooler/enigma-bbs.git
|
||||||
## Install Node Packages
|
## Install Node Packages
|
||||||
```bash
|
```bash
|
||||||
cd enigma-bbs
|
cd enigma-bbs
|
||||||
npm install
|
npm install # yarn also works
|
||||||
```
|
```
|
||||||
|
|
||||||
## Other Recommended Packages
|
## Other Recommended Packages
|
||||||
|
ENiGMA BBS makes use of a few packages for archive and legacy protocol support. They're not pre-requisites for running ENiGMA, but without them you'll miss certain functionality. Once installed, they should be made available on your system path.
|
||||||
|
|
||||||
ENiGMA BBS makes use of a few packages for unarchiving and modem support. They're not pre-requisites for
|
| Package | Description | Debian/Ubuntu Package (APT/DEP) | Red Hat Package (YUM/RPM) | Windows Package |
|
||||||
running ENiGMA, but without them you'll miss certain functionality. Once installed, they should be made
|
|
||||||
available on your system path.
|
|
||||||
|
|
||||||
| Package | Description | Debian/Ubuntu Package (APT/DEP) | Red Hat Package (YUM/RPM) | Windows Package |
|
|
||||||
|------------|-----------------------------------|--------------------------------------------|---------------------------------------------------|------------------------------------------------------------------|
|
|------------|-----------------------------------|--------------------------------------------|---------------------------------------------------|------------------------------------------------------------------|
|
||||||
| arj | Unpacking arj archives | `arj` | n/a, binaries [here](http://arj.sourceforge.net/) | [ARJ](http://arj.sourceforge.net/) |
|
| arj | Unpacking arj archives | `arj` | n/a, binaries [here](http://arj.sourceforge.net/) | [ARJ](http://arj.sourceforge.net/) |
|
||||||
| 7zip | Unpacking zip, rar, archives | `p7zip-full` | `p7zip-full` | [7-zip](http://www.7-zip.org/) |
|
| 7zip | Unpacking zip, rar, archives | `p7zip-full` | `p7zip-full` | [7-zip](http://www.7-zip.org/) |
|
||||||
| lha | Unpacking lha archives | `lhasa` | n/a, source [here](http://www2m.biglobe.ne.jp/~dolphin/lha/lha.htm) | Unknown |
|
| lha | Unpacking lha archives | `lhasa` | n/a, source [here](http://www2m.biglobe.ne.jp/~dolphin/lha/lha.htm) | Unknown |
|
||||||
| Rar | Unpacking rar archives | `unrar` | n/a, binaries [here](https://www.rarlab.com/download.htm) | Unknown |
|
| Rar | Unpacking rar archives | `unrar` | n/a, binaries [here](https://www.rarlab.com/download.htm) | Unknown |
|
||||||
| lrzsz | sz/rz: X/Y/Z modem support | `lrzsz` | `lrzsz` | Unknown |
|
| lrzsz | sz/rz: X/Y/Z protocol support | `lrzsz` | `lrzsz` | Unknown |
|
||||||
| sexyz | SexyZ modem support | [sexyz](https://l33t.codes/outgoing/sexyz) | [sexyz](https://l33t.codes/outgoing/sexyz) | Available with [Synchronet](http://wiki.synchro.net/install:win) |
|
| sexyz | SexyZ protocol support | [sexyz](https://l33t.codes/outgoing/sexyz) | [sexyz](https://l33t.codes/outgoing/sexyz) | Available with [Synchronet](http://wiki.synchro.net/install:win) |
|
||||||
| exiftool | [ExifTool](https://www.sno.phy.queensu.ca/~phil/exiftool/) | libimage-exiftool-perl | perl-Image-ExifTool | Unknown
|
| exiftool | [ExifTool](https://www.sno.phy.queensu.ca/~phil/exiftool/) | libimage-exiftool-perl | perl-Image-ExifTool | Unknown
|
||||||
| xdms | Unpack/view Amiga DMS | [xdms](http://manpages.ubuntu.com/manpages/trusty/man1/xdms.1.html) | xdms | Unknown
|
| xdms | Unpack/view Amiga DMS | [xdms](http://manpages.ubuntu.com/manpages/trusty/man1/xdms.1.html) | xdms | Unknown
|
||||||
|
|
||||||
## Config Files
|
## Config Files
|
||||||
|
You'll need a basic configuration to get started. The main system configuration is handled via `config/config.hjson`. This is an [HJSON](http://hjson.org/) file (compiliant JSON is also OK). See [Configuration](../configuration/) for more information.
|
||||||
You'll need a basic configuration to get started. The main system configuration is handled via
|
|
||||||
`config/config.hjson`. This is an [HJSON](http://hjson.org/) file (compiliant JSON is also OK).
|
|
||||||
See [Configuration](../configuration/) for more information.
|
|
||||||
|
|
||||||
Use `oputil.js` to generate your **initial** configuration:
|
Use `oputil.js` to generate your **initial** configuration:
|
||||||
|
|
||||||
|
|
|
@ -2,10 +2,13 @@
|
||||||
layout: page
|
layout: page
|
||||||
title: OS & Hardware Specific Information
|
title: OS & Hardware Specific Information
|
||||||
---
|
---
|
||||||
There are multiple ways of installing ENiGMA BBS, depending on your level of experience and desire to do
|
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.
|
||||||
things manually versus have it automated for you.
|
|
||||||
|
|
||||||
| Method | Notes |
|
In general, please see [Installation Methods](installation-methods.md) and [Install Script](install-script.md).
|
||||||
|----------------------------------------|---------------------------------------------------------------------------------------------|
|
|
||||||
| [Raspberry Pi](rpi) | All Raspberry Pi models work great with ENiGMA½! |
|
Below are some special cases:
|
||||||
| [Windows](windows) | Compatible with all Windows Operating Systems |
|
|
||||||
|
| Method | Notes |
|
||||||
|
|--------|-------|
|
||||||
|
| [Raspberry Pi](rpi.md) | All Raspberry Pi models work great with ENiGMA½! |
|
||||||
|
| [Windows](windows.md) | Compatible with all Windows Operating Systems |
|
||||||
|
|
|
@ -36,11 +36,13 @@ ENiGMA½ will run on both 32bit and 64bit Windows. If you want to run 16bit door
|
||||||
|
|
||||||
*Add 7zip to your path so `7z` can be called from the console
|
*Add 7zip to your path so `7z` can be called from the console
|
||||||
1. Right click `This PC` and Select `Properties`
|
1. Right click `This PC` and Select `Properties`
|
||||||
2. Go to the `Advanced` Tab and click on `Enviromental Varibles`
|
2. Go to the `Advanced` Tab and click on `Environment Variables`
|
||||||
3. Select `Path` under `System Varibles` and click `Edit`
|
3. Select `Path` under `System Variables` and click `Edit`
|
||||||
4. Click `New` and paste the path to 7zip
|
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.
|
5. Close your console window and reopen. You can type `7z` to make sure it's working.
|
||||||
|
|
||||||
|
(Please see [Archivers](/docs/archivers.md) for additional archive utilities!)
|
||||||
|
|
||||||
3. Install [Git](https://git-scm.com/downloads) and optionally [TortoiseGit](https://tortoisegit.org/download/).
|
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
|
4. Clone ENiGMA½ - browse to the directory you want and run
|
||||||
|
|
|
@ -1,17 +0,0 @@
|
||||||
---
|
|
||||||
layout: page
|
|
||||||
title: oputil
|
|
||||||
---
|
|
||||||
|
|
||||||
oputil is the ENiGMA½ command line utility for maintaining users, file areas and message areas, as well as
|
|
||||||
generating your initial ENiGMA½ config.
|
|
||||||
|
|
||||||
## File areas
|
|
||||||
The `oputil.js` +op utilty `fb` command has tools for managing file bases. For example, to import existing
|
|
||||||
files found within **all** storage locations tied to an area and set tags `tag1` and `tag2` to each import:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
oputil.js fb scan some_area --tags tag1,tag2
|
|
||||||
```
|
|
||||||
|
|
||||||
See `oputil.js fb --help` for additional information.
|
|
|
@ -2,14 +2,21 @@
|
||||||
layout: page
|
layout: page
|
||||||
title: Monitoring Logs
|
title: Monitoring Logs
|
||||||
---
|
---
|
||||||
ENiGMA½ does not produce much to stdout. Logs are produced by Bunyan which outputs each entry as a
|
ENiGMA½ does not produce much to stdout. Logs are produced by Bunyan which outputs each entry as a JSON object.
|
||||||
JSON object.
|
|
||||||
|
|
||||||
Start by installing bunyan and making it available on your path:
|
Start by installing bunyan and making it available on your path:
|
||||||
|
|
||||||
npm install bunyan -g
|
```bash
|
||||||
|
npm install bunyan -g
|
||||||
|
```
|
||||||
|
|
||||||
|
or with Yarn:
|
||||||
|
```bash
|
||||||
|
yarn global add bunyan
|
||||||
|
```
|
||||||
|
|
||||||
To tail logs in a colorized and pretty format, issue the following command:
|
To tail logs in a colorized and pretty format, issue the following command:
|
||||||
|
```bash
|
||||||
tail -F /path/to/enigma-bbs/logs/enigma-bbs.log | bunyan
|
tail -F /path/to/enigma-bbs/logs/enigma-bbs.log | bunyan
|
||||||
|
```
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue