185 lines
5.2 KiB
Text
185 lines
5.2 KiB
Text
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
|
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
|
|
|
pkgname=paperless-ngx
|
|
pkgver=1.15.1
|
|
pkgrel=0
|
|
pkgdesc="A community-supported supercharged version of paperless: scan, index and archive all your physical documents"
|
|
url="https://github.com/paperless-ngx/paperless-ngx"
|
|
license="GPL-3.0-only"
|
|
# s390x: ocrmypdf py3-joblib py3-scikit-learn py3-watchfiles
|
|
# armhf / ppc64le: py3-uvloop
|
|
arch="!armv7 noarch !s390x !armhf !ppc64le"
|
|
install="$pkgname.post-install $pkgname.post-upgrade $pkgname.pre-install"
|
|
depends="
|
|
file
|
|
gnupg
|
|
imagemagick
|
|
mailcap
|
|
ocrmypdf
|
|
optipng
|
|
redis
|
|
sqlite
|
|
tesseract-ocr
|
|
tesseract-ocr-data-fra
|
|
ttf-liberation
|
|
uvicorn
|
|
py3-aiohttp
|
|
py3-anyio
|
|
py3-arrow
|
|
py3-asgiref
|
|
py3-async-timeout
|
|
py3-attrs
|
|
py3-autobahn
|
|
py3-automat
|
|
py3-blessed
|
|
py3-certifi
|
|
py3-celery
|
|
py3-django-channels
|
|
py3-django-channels-redis
|
|
py3-django-compression-middleware
|
|
py3-django-celery-results
|
|
py3-django-guardian
|
|
py3-django-rest-framework-guardian
|
|
py3-chardet
|
|
py3-charset-normalizer
|
|
py3-click
|
|
py3-concurrent-log-handler
|
|
py3-constantly
|
|
py3-cryptography
|
|
py3-daphne
|
|
py3-dateparser
|
|
py3-deprecation
|
|
py3-django-cors-headers
|
|
py3-django-extensions
|
|
py3-django-filter
|
|
py3-django-picklefield
|
|
py3-django-q
|
|
py3-django-rest-framework
|
|
py3-filelock
|
|
py3-fuzzywuzzy
|
|
py3-gunicorn
|
|
py3-h11
|
|
py3-hiredis
|
|
py3-httptools
|
|
py3-humanfriendly
|
|
py3-hyperlink
|
|
py3-idna
|
|
py3-imap-tools
|
|
py3-incremental
|
|
py3-inotify-simple
|
|
py3-inotifyrecursive
|
|
py3-ipware
|
|
py3-joblib
|
|
py3-langdetect
|
|
py3-lxml
|
|
py3-msgpack
|
|
py3-numpy
|
|
py3-pathvalidate
|
|
py3-portalocker
|
|
py3-psycopg2
|
|
py3-asn1
|
|
py3-asn1-modules
|
|
py3-cparser
|
|
py3-openssl
|
|
py3-dateutil
|
|
py3-dotenv
|
|
py3-gnupg
|
|
py3-levenshtein
|
|
py3-magic
|
|
py3-pdf2image
|
|
py3-pyzbar
|
|
py3-pillow
|
|
py3-tz
|
|
py3-redis
|
|
py3-regex
|
|
py3-requests
|
|
py3-scikit-learn
|
|
py3-scipy
|
|
py3-service_identity
|
|
py3-six
|
|
py3-sniffio
|
|
py3-sortedcontainers
|
|
py3-sqlparse
|
|
py3-threadpoolctl
|
|
py3-tika
|
|
py3-twisted
|
|
py3-txaio
|
|
py3-urllib3
|
|
py3-uvloop
|
|
py3-watchdog
|
|
py3-watchfiles
|
|
py3-wcwidth
|
|
py3-websockets
|
|
py3-whitenoise
|
|
py3-whoosh
|
|
py3-yaml
|
|
py3-zope-interface
|
|
py3-zstandard
|
|
postgresql
|
|
jbig2enc
|
|
"
|
|
builddir="$srcdir"/$pkgname
|
|
|
|
source="
|
|
$url/releases/download/v$pkgver/$pkgname-v$pkgver.tar.xz
|
|
paperless-scheduler.openrc
|
|
paperless-consumer.openrc
|
|
paperless-webserver.openrc
|
|
paperless-task-queue.openrc
|
|
paperless.conf
|
|
"
|
|
options="!strip !check" # No testsuite
|
|
subpackages="$pkgname-openrc"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
# use alpine linux canonical paths
|
|
sed -i "$srcdir"/paperless.conf \
|
|
-e "s|#PAPERLESS_CONSUMPTION_DIR=../consume|PAPERLESS_CONSUMPTION_DIR=/var/lib/paperless/consume|" \
|
|
-e "s|#PAPERLESS_DATA_DIR=../data|PAPERLESS_DATA_DIR=/var/lib/paperless/data|" \
|
|
-e "s|#PAPERLESS_MEDIA_ROOT=../media|PAPERLESS_MEDIA_ROOT=/var/lib/paperless/media|" \
|
|
-e "s|#PAPERLESS_STATICDIR=../static|PAPERLESS_STATICDIR=/usr/share/webapps/paperless/static|" \
|
|
-e "s|#PAPERLESS_CONVERT_TMPDIR=/var/tmp/paperless|PAPERLESS_CONVERT_TMPDIR=/var/lib/paperless/tmp|"
|
|
|
|
# remove hardcoded bind address
|
|
sed -i "gunicorn.conf.py" \
|
|
-e "s|bind = '0.0.0.0:8000'||"
|
|
|
|
# add custom dir for uploaded files
|
|
printf "\n# Uploads\n\nPAPERLESS_SCRATCH_DIR=/var/lib/paperless/uploads" >> "paperless.conf"
|
|
|
|
# add customizable bind address, will be used by paperless-webserver.service
|
|
printf "\n\n# Webserver\n\nGUNICORN_CMD_ARGS='--bind=127.0.0.1:8000'" >> "paperless.conf"
|
|
}
|
|
|
|
package() {
|
|
# program files
|
|
install -d "$pkgdir/usr/bin" "$pkgdir/usr/share/webapps"
|
|
cp -R "$builddir" "$pkgdir/usr/share/webapps/paperless"
|
|
|
|
# main executable
|
|
chmod 755 "$pkgdir/usr/share/webapps/paperless/src/manage.py"
|
|
ln -s "/usr/share/webapps/paperless/src/manage.py" "$pkgdir/usr/bin/paperless-manage"
|
|
|
|
# config file
|
|
install -D -m 640 "$srcdir"/paperless.conf "$pkgdir/etc/paperless.conf"
|
|
rm "$pkgdir/usr/share/webapps/paperless/paperless.conf"
|
|
ln -s "/etc/paperless.conf" "$pkgdir/usr/share/webapps/paperless/paperless.conf"
|
|
|
|
# openrc file
|
|
install -Dm 755 "$srcdir"/paperless-scheduler.openrc "$pkgdir"/etc/init.d/paperless-scheduler
|
|
install -Dm 755 "$srcdir"/paperless-consumer.openrc "$pkgdir"/etc/init.d/paperless-consumer
|
|
install -Dm 755 "$srcdir"/paperless-webserver.openrc "$pkgdir"/etc/init.d/paperless-webserver
|
|
install -Dm 755 "$srcdir"/paperless-task-queue.openrc "$pkgdir"/etc/init.d/paperless-task-queue
|
|
|
|
}
|
|
sha512sums="
|
|
aefa72e0ea5d96209c5089bec452bd7158b478954ebdb219db0379259f4b12540c02a7ae20cb998b49910c579de34be3c9b7351378b87a6f42d07f2884892200 paperless-ngx-v1.15.1.tar.xz
|
|
b782dd9479d31d2f6a82e86639bb5e2bb3675c1ffc1d6b08e027e10159dd58ed9f68b5986b9d7c8a326e95384e701bcf9834101d6a6720db7e97465e4d295d36 paperless-scheduler.openrc
|
|
b4413f48b481d53b3e10542f5ffe830928c40ae016e2dc1da533ae8b546c5b6e4ddfa1129280807f866002f61b283c4eba327be6eb04171e259fe27fec47696a paperless-consumer.openrc
|
|
e9c517f7fbae269072506316711a12a6ba5568456348305972caf023020de5ebeab45401371fe114fe8dbddfacbcc6cfd01d0fad2b2ade6ee3883f46120b904e paperless-webserver.openrc
|
|
fb51af7c4765121f7e97add4da31352e02c3888ffe5575b26c11d6dd043e0d9e7504e9ed35ccc81e3751a41ffb6fcf6dcddd22da9df25021d903494c7340105b paperless-task-queue.openrc
|
|
8dd13bf9d63ca838285978e9dc1635dc45d21ae0cbb3f1ce402097f566cc1f74bce6635f1324714aacf85c6a20bc61bab76deb04081813ac207fffd421f8ee8f paperless.conf
|
|
"
|