|
|
|
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
|
|
|
|
# ==============================================================================
|
|
|
|
install:
|
|
|
|
apt update
|
|
|
|
apt -y install certbot sbcl rlwrap nginx libev4
|
|
|
|
curl https://beta.quicklisp.org/quicklisp.lisp
|
|
|
|
sbcl --load "/usr/share/common-lisp/source/quicklisp/quicklisp.lisp"
|
|
|
|
sbcl --eval (quicklisp-quickstart:install) \
|
|
|
|
--eval (ql:add-to-init-file) \
|
|
|
|
--quit
|
|
|
|
@echo 'Install complete.'
|
|
|
|
|
|
|
|
quicklisp-add:
|
|
|
|
@echo 'Adding project to quicklisp...'
|
|
|
|
ln -s ~/ritherdon-archive ~/quicklisp/local-projects/
|
|
|
|
@echo 'Added to quicklisp.'
|
|
|
|
|
|
|
|
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-prod:
|
|
|
|
rlwrap $(LISP) --eval '(ql:quickload :ritherdon-archive)' \
|
|
|
|
--eval '(setf (osicat:environment-variable "APP_ENV") "production")' \
|
|
|
|
--eval '(ritherdon-archive:main :port 5000)'
|
|
|
|
|
|
|
|
run-dev:
|
|
|
|
rlwrap $(LISP) --eval '(ql:quickload :ritherdon-archive)' \
|
|
|
|
--eval '(setf (osicat:environment-variable "APP_ENV") "developement")' \
|
|
|
|
--eval '(ritherdon-archive:main :port 5000)'
|