touchprint/stage2/04-octoprint/01-run.sh

23 lines
809 B
Bash
Executable file

#!/bin/bash -e
install -m 644 files/octoprint.service ${ROOTFS_DIR}/etc/systemd/system/octoprint.service
install -m 644 files/nginx.conf ${ROOTFS_DIR}/etc/nginx/nginx.conf
echo -e "listen 80;" > ${ROOTFS_DIR}/etc/nginx/listen.conf
on_chroot << EOF
# If OctoPrint already exists, skip this (for debugging)
if [[ ! -f /srv/octoprint/venv/bin/octoprint ]]; then
if [[ ! -d /srv/octoprint ]]; then mkdir -p /srv/octoprint; fi
cd /srv/octoprint || exit 1
# https://community.octoprint.org/t/setting-up-octoprint-on-a-raspberry-pi-running-raspbian/2337/
virtualenv venv || exit 1
source venv/bin/activate || exit 1
pip install pip --upgrade
pip install octoprint || exit 1
# Fix permissions
chown -R octoprint:octoprint /srv/octoprint
fi
# Enable the reverse proxy
systemctl enable nginx
EOF