LISP ?= sbcl help: @echo 'Usage: make [command]' @echo @echo 'Commands to run on server:' @echo ' setup Install Debian packages and Quicklisp for website.' @echo @echo ' service Set-up and start systemd service.' @echo @echo ' http Add ritherdon-archive to nginx (http only).' @echo @echo ' run Run ritherdon-archive (port 5000).' @echo @echo 'Default target:' @echo ' help Show this help message.' # Commands for Server # ============================================================================== setup: apt update apt -y install certbot sbcl rlwrap nginx curl https://beta.quicklisp.org/quicklisp.lisp sbcl --load "/usr/share/common-lisp/source/quicklisp/quicklisp.lisp" \ --eval (quicklisp-quickstart:install) \ --eval (ql:add-to-init-file) \ --quit @echo 'Setup complete.' service: @echo 'Setting up systemd service... NOT IMPLEMENTED' sytemctl enable "conf/ritherdon-archive.service" systemctl daemon-reload systemctl start ritherdon-archive @echo 'systemd set-up and running.' http: @echo 'Adding ritherdon-archive to nginx... NOT IMPLEMENTED' systemctl restart nginx @echo 'ritherdon-archive added to nginx (HTTP only).' run: rlwrap $(LISP) --eval '(ql:quickload :ritherdon-archive)' \ --eval '(setf (osicat:environment-variable "APP_ENV") "production")' \ --eval '(ritherdon-archive:main :port 5000)'