171 lines
4.5 KiB
Text
171 lines
4.5 KiB
Text
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
|
|
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
|
|
|
|
pkgname=paperless-ngx
|
|
pkgver=1.11.3
|
|
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="noarch !s390x !armhf !ppc64le"
|
|
depends="
|
|
file
|
|
gnupg
|
|
py3-gunicorn
|
|
imagemagick
|
|
mailcap
|
|
ocrmypdf
|
|
optipng
|
|
redis
|
|
sqlite
|
|
tesseract-ocr
|
|
tesseract-ocr-data-fra
|
|
ttf-liberation
|
|
py3-uvicorn
|
|
py3-aiohttp
|
|
py3-anyio
|
|
py3-arrow
|
|
py3-asgiref
|
|
py3-async-timeout
|
|
py3-attrs
|
|
py3-autobahn
|
|
py3-automat
|
|
py3-blessed
|
|
py3-certifi
|
|
py3-django-channels
|
|
py3-django-channels-redis
|
|
py3-chardet
|
|
py3-charset-normalizer
|
|
py3-click
|
|
py3-concurrent-log-handler
|
|
py3-constantly
|
|
py3-cryptography
|
|
py3-daphne
|
|
py3-dateparser py3-django
|
|
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-h11
|
|
py3-hiredis
|
|
py3-httptools
|
|
py3-humanfriendly
|
|
py3-hyperlink
|
|
py3-idna
|
|
py3-imap-tools
|
|
py3-incremental
|
|
py3-inotify-simple
|
|
py3-inotifyrecursive
|
|
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
|
|
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
|
|
"
|
|
options="!strip !check" # No testsuite
|
|
subpackages="$pkgname-openrc"
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
# use alpine linux canonical paths
|
|
sed -i "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 "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
|
|
}
|
|
sha512sums="
|
|
c2bf0ef90c9df938f8165944737b6a4157f2d94ab577e13b8202b2c1372e2e34b213a57a535b19c88421acdb73dc04b9e633cc9cd4c857c1868809e08e79fd24 paperless-ngx-v1.11.3.tar.xz
|
|
a62a499c1d8fede5685e98f639c1155fdc7387eaf7908b04317a9af6594427d11416730f4dd127cf2e249ac97242634acf900fe32541edfe95ac9298eeea0cd6 paperless-scheduler.openrc
|
|
b4413f48b481d53b3e10542f5ffe830928c40ae016e2dc1da533ae8b546c5b6e4ddfa1129280807f866002f61b283c4eba327be6eb04171e259fe27fec47696a paperless-consumer.openrc
|
|
e9c517f7fbae269072506316711a12a6ba5568456348305972caf023020de5ebeab45401371fe114fe8dbddfacbcc6cfd01d0fad2b2ade6ee3883f46120b904e paperless-webserver.openrc
|
|
"
|