rlgwebd/README.txt

85 lines
3 KiB
Text
Raw Normal View History

===== RLGWebD =====
RLGWebD is a node.js app that enables playing roguelike games in the
browser. It is intended to be compatible with dgamelaunch.
Node
---
RLGWebD is currently being updated to work with Node v10.x.
It requires the 'posix', 'node-pty', and 'websocket' modules. Currently,
it expects them to be installed in "/var/local/lib/node_modules". It
is not recommended to run npm as root when installing the modules.
2016-01-14 21:31:23 -05:00
init
---
RLGWebD now includes a systemd unit file, which is the recommended way
to run it. See below for more instructions.
For other init systems, a shell script is provided. This is not really
a proper initscript, but it could form the basis of one.
Configuration
---
A configuration file is installed at /etc/rlgwebd.conf. It contains a
list of options.
2016-02-01 21:20:12 -05:00
If the domain_name option and the SSL-related options are set, rlgwebd
will use HTTPS instead of insecure HTTP.
2016-02-01 21:20:12 -05:00
If you change the chroot location, change it in the first line of the
Makefile too.
Installation
---
2014-03-09 16:15:42 -07:00
RLGWebD expects to be run in a chroot used by dgamelaunch, and it makes
some assumptions about the configuration. It expects the dgamelaunch
playground to be at /dgldir inside the chroot. It expects the
in-progress files to be in /dgldir/inprogress/<gamename>. RLGWebD
creates in-progress files in those locations, and dgamelaunch must be
patched to prevent it from deleting them.
It needs the devpts filesystem mounted inside the chroot. This can be
done with a line in /etc/fstab like the following:
devpts CHROOT/dev/pts devpts newinstance,ptmxmode=666 0 0
2016-01-14 21:31:23 -05:00
RLGWebD uses two separate programs written in C. sqlickrypt operates
on the dgamelaunch user database. dglwatcher monitors the inprogress
directories. Run "make" to build both of them.
sqlickrypt needs /dev/urandom to exist in the chroot. Run as root:
mknod CHROOT/dev/urandom c 1 9
2016-01-14 21:31:23 -05:00
Running "make install" will:
Copy the Web assets into the chroot
Copy the C programs and the libraries they need into the chroot
Install the main RLGWebD script in /usr/local/bin
Place the systemd unit file in the proper directory
Copy a configuration file into /etc
2016-01-14 21:31:23 -05:00
If you don't use systemd, or want to change the installation locations,
you will have to edit the Makefile.
2015-01-14 15:32:21 -05:00
2016-01-14 21:31:23 -05:00
You will still need to run "systemctl enable rlgwebd" to make the
server start on boot, and "systemctl start rlgwebd" to make it start
immediately.
2015-01-14 15:32:21 -05:00
Starting and stopping RLGWebD
---
2016-01-14 21:31:23 -05:00
If you are using systemd, "systemctl start" and "systemctl stop" should
work as with any other service.
2016-01-14 21:31:23 -05:00
If you are using the initscript, running it with no arguments will
start RLGWebD. Stop by running it with 'stop' as an argument. (This
requires socat to be installed.)
2014-03-09 16:15:42 -07:00
webtty
---
2016-02-01 21:20:12 -05:00
"webtty" is a Node app which uses the terminal emulator to run a shell. It
2014-03-09 16:15:42 -07:00
includes NO SECURITY WHATSOEVER and should only be used for testing the
terminal emulator. Copy index-sh.html to index.html before running it.
2016-02-01 21:20:12 -05:00
Copyright status
---
All files in this project are in the public domain.