On 29 Apr 2019, Netsurge said the following...
Does anyone who run's Mystic under linux have a write up on getting
dosemu running properly.
I've tried all the stuff listed in the docs folder and I get dosemu running but it looks like there is a fossil issue as nothing is coming across the terminal.
Are you still having issues getting DOOR games to work under Mystic under Linux?
This was one of the first things I did when I first setup my Mystic BBS
running under Xubunto following the
.--------------------------------.
| Mystic BBS Linux / OSX Manual |------------------------------------
`--------------------------------'
NOTE: WHILE THE TERMINAL STUFF STILL APPLIES TO 1.11, IN MYSTIC 1.12
MYSTIC SUPPORTS UTF8 AND SO IN OPERATING SYSTEMS SUCH AS PI OR OSX
THAT DEFAULT TO UTF8, MYSTIC CAN LOOK NEARLY PERFECT WITH LITTLE TO
NO CHANGES REQUIRED TO STOCK TERMINALS.
PLEASE SEE THE WIKI AT WIKI.MYSTICBBS.COM for more up to date
instructions specific to 1.12.
INTRODUCTION
============
This document contains basic information for getting started with
Mystic BBS for Linux, OS/X, and other Unix based systems. There
are basically two things you will want to have for doing this:
1. A terminal capable of displaying high ASCII characters
2. Above average knowledge of your OS or patience to learn.
I recommend first getting your terminal setup before performing the
installation.
In addition it will contain notes and instructions for things like
archivers, protocols, and DOS doors with DOSEMU.
TERMINAL SETUP
==============
Basically you want to set a terminal profile for 80x25 with a good font.
In Linux, terminal setup is usually pretty straight forward. Most
Linux distributions ship with a decent XTERM as well as have some
fonts that can display high ASCII characters. The idea is to find a
monospaced font that can handle codepage 437 glyphs. Recent distributions
of Ubuntu, for example, use a wonderful font right out of the box.
If you are not sure or cannot find an appropriate font, I was able
to find "ASCII.ttf" pretty easily online using Google which worked
okay for me (in my OS/X setup).
Some distributions might have Windows that default to a white background
or some odd character sets and will require a little more playing around
to get going.
If you are having issues, use the next section on OS/X terminals for
guidance on things you might want to change to get it looking just right!
TERMINAL SETUP OS/X
===================
Apple seems to want to move away from supporting a normal terminal
found in most Linux distributions. Therefore, it is HIGHLY
recommended that you download a free application called "iTerm2"
which will give you a more standard terminal to use.
After you have downloaded iTerm2, install your ASCII.ttf font which
for some reason shows up under the name "New" for me. Once again, you
are looking for a monospaced font that can support CP 437 glyphs.
Here are some basic instructions for setting up a newly compatible
terminal:
1. Open an iTerm2 window, right click on it, and select "Edit session..."
2. On "keys" tab, change the two options at the bottom to "+ESC".
3. On "terminal" tab, change the character type to "Western ISO" and term
type to "xterm".
4. On "text" tab, set your ASCII.ttf font (New). I use it at 24 point
Anti-Aliased on my box, and I even slightly reduced the horizontal
and verticle spacing once I had a big ANSI loaded up to make it a show
ANSI a little cleaner.
5. Finally, go to the "General" tab and click "Copy preferences to Profile"
with Default selected. This will save it so that you never have to mess
with the settings again.
INSTALLATION
============
Type ./install in your terminal window to install Mystic BBS.
If for some reason you get an error after kicking off the installation, then
you probably do not have access rights to create the directory where you
wanted to install Mystic BBS.
You can either install it in a place where you have access, or optionally you
can exit the install, create the directory as root, then chown it to your
current user. Something like this:
sudo mkdir /mystic
sudo chown myusername:myusergroup /mystic
./install
NOTE: If for some reason you are trying to install Mystic under your user
directory, do not use the "~" shortcut as it does not always translate.
Meaning for example in OSX, type in /Users/MyUserName instead of ~/ for
the installation paths.
If you chose to ignore this, you may end up with a directory named ~
in a location where you didn't expect. And even worse, if you try to
delete it from the command prompt, you may end up wiping out your real
user home directories.
GETTING STARTED WITH MYSTIC
===========================
Once installed, you should note three major command lines that you can
execute from your installation directory:
Configuration: ./mystic -cfg
Local login: ./mystic
Startup servers: ./mis
./mis -d <- run in daemon mode *****
I recommend to type ./mystic just to create your SysOp user account, and
then after logging out upgrading your access using the user editor in
./mystic -cfg.
MYSTIC INTERNET SERVERS *****
=======================
Mystic (MIS actually) has built in Telnet (with IO redirection for things
like DOSEMU), SMTP, POP3, FTP, and NNTP servers.
When running in Linux/OSX keep in mind that by default the
operating system will not let a service bind to a port less than
1025 unless it is a ROOT user (in Linux) and NOT AT ALL in OS/X.
In Linux, MIS has the ability to switch from root back to whatever the user
and group is that owns the executable AFTER it binds to the ports it needs
for the server. So in Linux you can simply do a:
sudo ./mis
Or if you want to run it as a DAEMON you can do:
sudo ./mis -d
As mentioned, it will NOT run as root. It will only use root until it binds
to your ports, and then it will switch to the user who owns the executable.
NOW IN OS/X THIS TRICK DOES NOT SEEM TO WORK.
Instead you have to load the Mystic Configuration and set your server ports
greater than 1024. We will do TELNET for example here. Set your telnet
server port to "2323" and exit the Mystic configuration.
You can then create a rule to map connections that come in on port 23 to the
2323 port that MIS is listening on, using the following command:
sudo ipfw add 100 fwd 127.0.0.1,2323 tcp from any to any 23 in
Once that is done you can start MIS using ./mis or ./mis -d
NOTE that some people will want to use inetd or something similar to run thei
telnet, which Mystic is perfectly capable of. To do this, turn off the TELNE
server in your configuration and refer to the section on external telnet.
NODE MONITORING
===============
If you run MIS as a DAEMON, you might be very interested in the NodeSpy
program. This program will allow you to snoop, kick, and chat with users
who are connected to your BBS. It will also provide you with BBS usage
statistics and graphs. Think of this as your "Waiting for call" screen
In addition, NodeSpy also has a terminal mode that offers a full blown
ANSI BBS telnet client with dialing directory, scrollback, and Zmodem
with ZEDZAP file transfers!
It is important to note that NodeSpy does not currently monitor BBS users
while they are using doors.
INSTALLATING DOS DOORS USING DOSEMU
===================================
INTRODUCTION
------------
Setting up a DOS door with Mystic in Linux is now just about as easy as it
is to setup in DOS. You won't need to create a ton of configuration files
and custom startup nonsense unless you have an odd door that behaves
strangely.
Unfortunately, DOSEMU has not been ported to OS/X yet, but in Linux you can
use this turtorial on how to setup a DOS door with Mystic.
This turtorial was written and tested using Ubuntu 32-bit 14.04 and Mystic
BBS v1.12 alpha 36
INSTALLING DOSEMU
-----------------
Most distributions have a package for DOSEMU that will automatically
install, so we will not cover this in detail here. In my distribution of
Mint Linux, I can simply type this to install DOSEMU:
sudo apt-get install dosemu
This will install DOSEMU 1.40.0 so that is what we are using in this
tutorial.
INITIAL MYSTIC CONFIGURATION
----------------------------
In this tutorial, we will be installing all doors in /mystic/doors/, so
the first thing to do is to create the /mystic/doors directory.
You'll need to make sure this is accessible by your Linux BBS user and group
that you use to run Mystic as. In my case, I use user "bbs" so I switch to
that user to do the work so that everything is owned by "bbs". You could
also do it as root and "sudo chown -R bbs:bbs /mystic/*" to ensure all of
Mystic is owned by your bbs user.
Next you will want to download a FOSSIL driver, since most DOS doors
require one. I personally use BNU which is easily found via Google. Copy
BNU.COM into your /mystic/doors/ directory.
That's it for Mystic. Once again, make sure your ownerships are correct!
INITIAL DOSEMU CONFIGURATION
----------------------------
Now that DOSEMU is installed type "dosemu" from a command line to start
a DOS session. Once you are there, switch to DRIVE C: and type "edit
autoexec.bat".
Remove any lines you see that have lredir in them, and then add a new
lredir command to mount your Mystic directory as the D: drive in DOSEMU.
Here is what my entire C:\AUTOEXEC.BAT looks like:
@echo off
prompt $p$g
path=z:\bin;z:\dosemu
lredir d: linux\fs\mystic\
d:
cd \doors
bnu
unix -e
The contents of this batch file will mount the d: drive to point to
/mystic, then switch to the D: drive and load your BNU FOSSIL driver each
time DOSEMU starts up.
Once you have saved your AUTOEXEC.BAT, type exitemu to exit DOSEMU.
CONFIGURING A DOOR IN MYSTIC
----------------------------
In this tutorial we are going to use a door called Stack!Em which is a
Tetris-like game. The filename is called STACK!32.ZIP.
1. Extract the door ZIP file into /mystic/doors/stackem
2. Type DOSEMU on the command prompt and then switch to the stackem
directory (cd \doors\stackem)
3. Run ST!SETUP.EXE to configure the door game, make sure to set the
communication type to FOSSIL.
4. While still in DOS, move to the D:\doors directory and type
"edit stackem.bat". This will create a DOS batch file which is used to
execute the door. My stackem.bat has two lines that look like this:
cd\doors\stackem
stackem stackem.cfg \temp%1\door.sys
If you get an error when trying to save your batch file, that means you
made a mistake and your ownerships are incorrectly setup.
5. Exit DOSEMU (exitemu) and switch to your /mystic/ directory. Start
Mystic's configuration and create a new menu item in a menu of the type
"DD" which creates the drop files Stack'Em requires. The command should
look something like this:
Command: DD
Optional Data:
dosemu -I"serial { com 1 virtual }" "/mystic/doors/stackem.bat" %N /DOS
The %N passes the node number, and the /DOS tells Mystic to create the
door files in DOS text file format. Note that /DOS must be at the end
of the command line. %3 also sends the node number, and was used in
older versions of Mystic (and still works in the latest versions)
Save your menu you are done!
There you have it. Setting up a DOS door these days takes the same amount
of steps as it does/did in DOS itself, after the intial configuration of
course.
ARCHIVES AND PROTOCOLS
======================
Mystic ships with Internal Zmodem and Zmodem/8K (ZEDZAP) protocols. There
are not many protocol drivers for Linux and almost nothing for OS/X, but
Zmodem should be fine for most people.
Archives are pre-configured but may need some tweaking to work. For example
in OS/X, you probably will need to download and install the "rar" command
line tool, and then get it into your /bin directory so its accessible from
anywhere on your system.
Many Linux distributions already have rar, zip, etc, so they often times will
just magically work right out of the box.
If you are having issues with uploads of files or QWK, or FILE_ID.DIZ
importing, etc, then make sure you have the archive that is configured
installed on your system. Also, make sure any file areas that you might
be uploading to have their configured directory on disk created.
Mystic will allow you to create them from within it's editor, but be aware
that the default installation does not always create paths for the default
file bases.
EXTERNAL TELNET SERVERS
=======================
Mystic can be used with external TELNET servers, which has been the choice
of many Unix-based SysOps in the past, as MIS did not always support TELNET
directly in Unix.
The only real requirement is that you pass the -HOST and -IP command line
options from whatever TELNET daemon you are using, so that Mystic has a
record of the IP and hostname of the connection.
It is recommended that you use MIS unless you are experiencing problems,
otherwise, it is possible to use telnetd/inetx or even a special version
of ddTelnet developed specifically for Mystic BBS.
If you wish to support dialup users, you would use this same method but
with some type of mgetty-type daemon.
USING 32-BIT BINARIES ON 64-BIT LINUX (FILE NOT FOUND/DOES NOT EXIST ERRORS?)
=============================================================================
Most 64-bit Linux distributions will need support for i386 added in order to
execute Mystic, assuming you are not using native 64-bit Mystic binaries.
Symptoms of this might be the shell saying the file does not exist when you
attempt to execute it, when the file clearly does exist. What is really
happening is the operating system does not have the 32-bit libraries needed
to run the binary.
This can vary from distribution to distribution and you may need to refer to
the distributions forums for more information on how to add 32-bit support,
or your OS may already include the proper libraries.
Using the 64-bit version of Ubuntu 11.04, I had to follow these steps:
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install libc6:i386
--- Mystic BBS v1.12 A41 2018/12/27 (Linux/32)
* Origin: Clutch BBS *
telnet://bbs.clutchbbs.com (1:229/310)