#!/hint/bash -euE # Copyright (C) 2023 Umorpha Systems # SPDX-License-Identifier: AGPL-3.0-or-later load_module "$(dirname -- "${BASH_SOURCE[0]}")/base-uwsgi.sh" load_module "$(dirname -- "${BASH_SOURCE[0]}")/base-nginx.sh" load_module "$(dirname -- "${BASH_SOURCE[0]}")/base-mariadb.sh" packages+=( uwsgi-plugin-php ) post_install+=(20:bookstack:post_install) bookstack:post_install() { local arg_mountpoint=$1 install -Dm644 /dev/stdin "$arg_mountpoint/etc/nginx/sites/bookstack.conf" <<-'EOF' # -*- mode: nginx; nginx-indent-level: 4; intent-tabs-mode: nil -*- server { server_name bookstack.mothstuff.lol; include /etc/nginx/snippets/listen.conf; root /usr/share/webapps/bookstack/public; index index.php index.html; location /index.php { uwsgi_cache_key $host$request_uri; uwsgi_cache_valid 5m; include uwsgi_params; uwsgi_modifier1 14; # Standard PHP request uwsgi_pass unix:/run/uwsgi/bookstack.sock; } } EOF install -Dm755 /dev/stdin "$arg_mountpoint/etc/webapps/bookstack/config.env.sh" <<-'EOF' #!/usr/bin/env bash cat </etc/webapps/bookstack/config.env' EOF mkdir -p -- "$arg_mountpoint/etc/systemd/system/uwsgi@bookstack.service.wants" ln -s "../bookstack-init.service" "$arg_mountpoint/etc/systemd/system/uwsgi@bookstack.service.wants" install -Dm600 /dev/stdin "$arg_mountpoint/etc/uwsgi/bookstack.ini" <<-'EOF' [uwsgi] master = true processes = 4 uid = %n gid = http plugins = php php-set = extension=gd.so EOF systemctl --root="$arg_mountpoint" enable uwsgi@bookstack.socket }