diff options
Diffstat (limited to 'INSTALL')
-rw-r--r-- | INSTALL | 94 |
1 files changed, 94 insertions, 0 deletions
@@ -0,0 +1,94 @@ + ++----------------------------------------------+ +| BUILDING | ++----------------------------------------------+ + +I have only tested vampire using SBCL on Linux. + +First install the dependencies that are not in quicklisp: + + git clone https://cicadas.surf/cgit/colin/derrida.git ~/quicklisp/local-projects/ + git clone https://cicadas.surf/cgit/colin/vampire.git ~/quicklisp/local-projects/ + +Then cd into the vampire repo's directory and run the build script. + + cd ~/quicklisp/local-projects/vampire + sbcl --load build.lisp + +If it worked, you should be able to find the file bin/vampire. + ++------------------------------------------------------+ +| CONFIGURATION FILE | ++------------------------------------------------------+ + +The configuration file is called config.lisp. Here is an example. + + (:datastore-directory "/home/vampire/store/" + :static-directory "/home/vampire/static/" + :swank-port 5011 + :port 8081 + :downloader-threads 8) + + +The :datastore-directory and :static-directory fields are REQUIRED and +must be writable by the vampire process. In particular, a subdirectory +of the static-directory, called media, is where media files will be +stored. + +Hence, if you want to store media elsewhere, you can mount or symlink +at the ./media subdirectory to the real location. + +The :swank-port field is optional. It is the localhost port where you +can connect via SLIME to debug the live application. + ++------------------------------------------------------+ +| REVERSE PROXY | ++------------------------------------------------------+ + +I am using apache to set up a reverse proxy. If I'm running vampire on +host at 10.0.0.6, and serving over HTTPS using the domain name +vampire.yourhost.moo, then here's how I'd configure the proxy: + + <VirtualHost *:80> + ServerName vampire.yourhost.moo + Redirect / "https://vampire.yourhost.moo/" + </VirtualHost> + + <VirtualHost _default_:443> + ServerName vampire.yourhost.moo + SSLEngine on + SSLCertificateFile "/etc/letsencrypt/live/vampire.yourhost.moo/fullchain.pem" + SSLCertificateKeyFile "/etc/letsencrypt/live/vampire.yourhost.moo/privkey.pem" + + ProxyPass /clog ws://10.0.0.6:8081/clog + ProxyPass / http://10.0.0.6:8081/ + ProxyPassReverse / http://10.0.0.6:8081/ + + </VirtualHost> + + ++------------------------------------------------------+ +| SYSTEM SERVICE | ++------------------------------------------------------+ + +Use a systemd service to run vampire, ensuring that it restarts on +reboot. + + + [Unit] + Description=Vampire Service + + [Service] + Type=simple + ExecStart=/home/vampire/vampire/config --config /home/vampire/config.lisp + Restart=always + User=vampire + Group=vampire + + + [Install] + WantedBy=multi-user.target + +Put that into /etc/systemd/system/ + +and start it like any other systemd service. |