Merge pkgbuild

Add environment file, nginx config, systemd service, tmpfiles and PKGBUILD
This commit is contained in:
Edgar P. Burkhart 2022-12-21 14:15:43 +01:00
commit 65af7105b2
Signed by: edpibu
GPG Key ID: 9833D3C5A25BD227
7 changed files with 91 additions and 5 deletions

4
.gitignore vendored
View File

@ -1,2 +1,6 @@
env*
__pycache__
*.pkg.tar.zst
/nummi-git/
/pkg/
/src/

45
PKGBUILD Normal file
View File

@ -0,0 +1,45 @@
pkgname=nummi-git
pkgver=r80.73ce1a2
pkgrel=1
pkgdesc="Web-based accounting interface"
arch=("any")
url="https://git.edgarpierre.fr/edpibu/nummi"
license=('AGPL3')
depends=(
"gunicorn"
"python-django"
"python-matplotlib"
)
makedepends=("git")
optdepends=("postgresql: database")
backup=("etc/${pkgname%-git}.env")
source=(
"${pkgname}::git+ssh://gitea@git.edgarpierre.fr:39529/edpibu/nummi.git"
"${pkgname%-git}.service"
"${pkgname%-git}.tmpfiles"
"${pkgname%-git}.sysusers"
"${pkgname%-git}.nginx"
"${pkgname%-git}.env"
)
b2sums=('SKIP'
'9e9b62a141bb4594dc203978d5c56dd397ed6c095e6f83fdea07ded2fa46dd2e052aa8f80729a3b612e3773aa487660fcca791079ad4885b825c9c831df61b45'
'2be5a55e8582a680a17c133c28b43f0a27800acc855c90ae670486b3847b91a47216d15a029670cdc3c55c193371b060cfe3b01bf4f858a64b64da9711067188'
'3d31754c644e05ec01bc07ebfb89749d563260abb4507297aceaaeebe2f057517ccc3e1c61dbb2eb864779260cd3c7aad01939775525b6bf6461267587dea156'
'b86c46f17b5445b5631a3725ed3d4cd3bf1e864c68f8db8cecba1f8ae554e1e4872d8a86bfe6ab5172507f8315ebeccf78c9fbe3bb9eeb71c21113450e0df4d5'
'5bdc097ab3fa7e8e128d194bfb6c0fefb5528903e2b8765557a82033f8925c1174dbe73007a595e32c5e415cf6f19957c35bbe463c50d2813894c20c8a28a88d')
pkgver() {
cd "$pkgname"
printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}
package() {
install -Dm644 ${pkgname%-git}.service -t "${pkgdir}"/usr/lib/systemd/system/
install -Dm644 ${pkgname%-git}.tmpfiles "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname%-git}.conf
install -Dm644 ${pkgname%-git}.sysusers "${pkgdir}"/usr/lib/sysusers.d/${pkgname%-git}.conf
install -Dm644 ${pkgname%-git}.nginx "${pkgdir}"/etc/nginx/sites-enabled/${pkgname%-git}.conf
install -Dm750 ${pkgname%-git}.env -t "${pkgdir}"/etc/
cd ${pkgname}/${pkgname%-git}
find * -type f -exec install -Dm0644 "{}" "${pkgdir}/usr/share/webapps/${pkgname%-git}/{}" \;
}

View File

@ -2,8 +2,3 @@
Nummi is a web-based accounting software.
Nummi uses Django.
## Installation
A PKGBUILD along with system files is provided on the
[pkgbuild](https://git.edgarpierre.fr/edpibu/nummi/src/branch/pkgbuild) branch.

4
nummi.env Normal file
View File

@ -0,0 +1,4 @@
NUMMI_MEDIA_ROOT="/var/lib/nummi"
NUMMI_SECRET="xxxxxx"
#NUMMI_DEBUG="True"
NUMMI_HOST="nummi.edgarpierre.fr"

15
nummi.nginx Normal file
View File

@ -0,0 +1,15 @@
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name nummi.edgarpierre.fr;
location / {
include conf/50-proxy.conf;
proxy_pass http://unix:/run/nummi/nummi.socket;
}
location /static {
alias /srv/nummi;
}
}

21
nummi.service Normal file
View File

@ -0,0 +1,21 @@
[Unit]
Description=Nummi server (accounting)
After=network.target
[Service]
Type=simple
User=nummi
Group=nummi
RuntimeDirectory=nummi
WorkingDirectory=/usr/share/webapps/nummi
EnvironmentFile=/etc/nummi.env
ExecStartPre=/usr/bin/python manage.py migrate
ExecStartPre=/usr/bin/python manage.py collectstatic --noinput
ExecStart=/usr/bin/uvicorn nummi.asgi:application --uds /run/nummi/nummi.socket
ExecReload=/bin/kill -s HUP $MAINPID
KillMode=mixed
TimeoutStopSec=5
PrivateTmp=true
[Install]
WantedBy=multi-user.target

2
nummi.tmpfiles Normal file
View File

@ -0,0 +1,2 @@
d /var/lib/nummi 0750 nummi nummi
d /srv/nummi 0755 nummi nummi