annotate README.txt @ 199:34e1bc4fd6b2

Some fixes to the documentation.
author John "Elwin" Edwards
date Mon, 01 Feb 2016 21:20:12 -0500
parents 5041ec1fb426
children 2667aaad8e08
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
146
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
1 ===== RLGWebD =====
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
2
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
3 RLGWebD is a node.js app that enables playing roguelike games in the
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
4 browser. It is intended to be compatible with dgamelaunch.
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
5
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
6 Node
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
7 ---
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
8 RLGWebD currently works with Node v0.10.
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
9
197
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
10 It requires the 'posix', 'pty.js', and 'websocket' modules. Currently,
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
11 it expects them to be installed in the global location, which is
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
12 "/usr/lib/node_modules". It is planned to eventually use a different
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
13 location so that npm will not need to run as root.
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
14
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
15 init
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
16 ---
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
17 RLGWebD now includes a systemd unit file, which is the recommended way
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
18 to run it. See below for more instructions.
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
19
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
20 For other init systems, a shell script is provided. This is not really
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
21 a proper initscript, but it could form the basis of one.
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
22
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
23 Configuration
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
24 ---
199
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
25 You can set some options by changing some variables in the first few
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
26 lines of the rlgwebd script:
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
27
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
28 Option Variable Default
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
29
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
30 Chroot path chrootDir /var/dgl
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
31 Username dropToUser rodney
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
32 Server port httpPort 8080
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
33
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
34 If you change the chroot location, change it in the first line of the
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
35 Makefile too.
146
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
36
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
37 Installation
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
38 ---
151
9f9bc41d5006 Mostly finish README.txt.
John "Elwin" Edwards
parents: 146
diff changeset
39 RLGWebD expects to be run in a chroot used by dgamelaunch, and it makes
146
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
40 some assumptions about the configuration. It expects the dgamelaunch
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
41 playground to be at /dgldir inside the chroot. It expects the
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
42 in-progress files to be in /dgldir/inprogress/<gamename>. RLGWebD
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
43 creates in-progress files in those locations, and dgamelaunch must be
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
44 patched to prevent it from deleting them.
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
45
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
46 It needs the devpts filesystem mounted inside the chroot. This can be
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
47 done with a line in /etc/fstab like the following:
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
48 devpts CHROOT/dev/pts devpts newinstance,ptmxmode=666 0 0
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
49
197
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
50 RLGWebD uses two separate programs written in C. sqlickrypt operates
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
51 on the dgamelaunch user database. dglwatcher monitors the inprogress
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
52 directories. Run "make" to build both of them.
146
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
53
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
54 sqlickrypt needs /dev/urandom to exist in the chroot. Run as root:
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
55 mknod CHROOT/dev/urandom c 1 9
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
56
197
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
57 Running "make install" will:
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
58 Copy the Web assets into the chroot
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
59 Copy the C programs and the libraries they need into the chroot
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
60 Install the main RLGWebD script in /usr/local/bin
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
61 Place the systemd unit file in the proper directory
178
b5df69715001 Update the documentation.
John "Elwin" Edwards
parents: 151
diff changeset
62
197
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
63 If you don't use systemd, or want to change the installation locations,
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
64 you will have to edit the Makefile.
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
65
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
66 You will still need to run "systemctl enable rlgwebd" to make the
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
67 server start on boot, and "systemctl start rlgwebd" to make it start
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
68 immediately.
178
b5df69715001 Update the documentation.
John "Elwin" Edwards
parents: 151
diff changeset
69
b5df69715001 Update the documentation.
John "Elwin" Edwards
parents: 151
diff changeset
70 Starting and stopping RLGWebD
146
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
71 ---
197
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
72 If you are using systemd, "systemctl start" and "systemctl stop" should
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
73 work as with any other service.
146
5baa2d4d798b Add a README though it's still incomplete.
John "Elwin" Edwards
parents:
diff changeset
74
197
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
75 If you are using the initscript, running it with no arguments will
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
76 start RLGWebD. Stop by running it with 'stop' as an argument. (This
5041ec1fb426 Update the documentation.
John "Elwin" Edwards
parents: 178
diff changeset
77 requires socat to be installed.)
151
9f9bc41d5006 Mostly finish README.txt.
John "Elwin" Edwards
parents: 146
diff changeset
78
9f9bc41d5006 Mostly finish README.txt.
John "Elwin" Edwards
parents: 146
diff changeset
79 webtty
9f9bc41d5006 Mostly finish README.txt.
John "Elwin" Edwards
parents: 146
diff changeset
80 ---
199
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
81 "webtty" is a Node app which uses the terminal emulator to run a shell. It
151
9f9bc41d5006 Mostly finish README.txt.
John "Elwin" Edwards
parents: 146
diff changeset
82 includes NO SECURITY WHATSOEVER and should only be used for testing the
9f9bc41d5006 Mostly finish README.txt.
John "Elwin" Edwards
parents: 146
diff changeset
83 terminal emulator. Copy index-sh.html to index.html before running it.
199
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
84
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
85 Copyright status
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
86 ---
34e1bc4fd6b2 Some fixes to the documentation.
John "Elwin" Edwards
parents: 197
diff changeset
87 All files in this project are in the public domain.