diff options
Diffstat (limited to 'www-apps/paperless-ngx')
-rw-r--r-- | www-apps/paperless-ngx/Manifest | 16 | ||||
-rw-r--r-- | www-apps/paperless-ngx/files/paperless-consumer.service | 2 | ||||
-rw-r--r-- | www-apps/paperless-ngx/files/paperless-webserver.service | 4 | ||||
-rw-r--r-- | www-apps/paperless-ngx/files/paperless-webserver.socket | 13 | ||||
-rw-r--r-- | www-apps/paperless-ngx/files/paperless.conf.example | 86 | ||||
-rw-r--r-- | www-apps/paperless-ngx/metadata.xml | 4 | ||||
-rw-r--r-- | www-apps/paperless-ngx/paperless-ngx-2.7.2.ebuild (renamed from www-apps/paperless-ngx/paperless-ngx-1.13.0.ebuild) | 130 | ||||
-rw-r--r-- | www-apps/paperless-ngx/paperless-ngx-2.8.3.ebuild (renamed from www-apps/paperless-ngx/paperless-ngx-1.12.2.ebuild) | 128 |
8 files changed, 185 insertions, 198 deletions
diff --git a/www-apps/paperless-ngx/Manifest b/www-apps/paperless-ngx/Manifest index 8bf6c34..8fbd93b 100644 --- a/www-apps/paperless-ngx/Manifest +++ b/www-apps/paperless-ngx/Manifest @@ -1,12 +1,12 @@ -AUX paperless-consumer.service 307 BLAKE2B db97750cb7db44cd99c4a26ab9cc3742edeb22da1126c526754a58159025720416116378b6e6bf453d80657c462ce366a8922f86729fded9e9163f4fcd352a29 SHA512 85875d092c758e54d6942dabd2348445fce36e1f0526d66fd669c0d5ed874b266df35bf52d5bb9c31b2c6a6d8ffc8e481527eff716ba71e4b14cebdeea1196ec +AUX paperless-consumer.service 306 BLAKE2B ebdeb8abf56a144a7a6ef281ac179aac0a9b2831a2093e9e6741fbb616078b84596c4a990995d8996ffb67ab653f4af356bd469eb965cab970f5c4c7f62a355e SHA512 d45f1e5be9130623eef21715ad3e2f80ff33e722ba2cbb29c56014008a105bca7add4507e116e8dbda53e4b41afa177b04f98a3e2d8553afd548a8846a19720c AUX paperless-scheduler.service 307 BLAKE2B 4abe32ad0cc4a565675dce7f01323343ff6c3fe2309049971764865acc3f8da20894ecb624137ecd2c367bc4972c55e554f7d5aabc5df4fd8fda6e8bfb8496fa SHA512 424d116d083c536bf979911700bf2bc5f66a415d2732b5e68c3bd9efd3ba0c18d78de3a885e2fe6c49613bae3be3cb8917d5d91d2dffa0c25e1764b78389b815 AUX paperless-task-queue.service 306 BLAKE2B fb04b70fc9d3461dff1f4ba78a92f5e299f38d77c8bbae9f4449b52bfbb8d4b56dd50e8ced8126ba5224e316e1462590a0ccc227cd2219615430338a75a385e0 SHA512 a5f6ec9dd63d743dae42bad473c9147a66792b7b168521e9d1b7726d226829263fe5c4546ed1c1e9d8e86cf862581187fcf25b722e70f115c072c66b1bcde4f8 -AUX paperless-webserver.service 406 BLAKE2B e1f00059be8e814f9ab67e18ef790665f3eb8077c0d7ce5d25b371a908a24d9802643db95ae1090d99f7c0420b9e55271197351b32d816cb6cf6afafd0f17c90 SHA512 74531b12c30f7bfe30a7b74685107d03b38dd134703484107d4c4d6ce675c703fd6322fb6eeb0957bedeb51e649c13f05bf6ff7e24f38c85c73a8c5602b35e0f -AUX paperless.conf.example 2577 BLAKE2B 4f786c02663300c3e8eb12a7702316621d917be4620ab2e89b33d246486bb78cdf2d6bd0ebaa830d8bedd815fe778c0edf9c8869b8e8b2b63d468ec527b7ce5e SHA512 8dd13bf9d63ca838285978e9dc1635dc45d21ae0cbb3f1ce402097f566cc1f74bce6635f1324714aacf85c6a20bc61bab76deb04081813ac207fffd421f8ee8f +AUX paperless-webserver.service 496 BLAKE2B 5a818886de0dfa0bb724b9c7e9d64a2707f78cfabce132f5255c7027bbfd5656a613de76675fecf85bd9491389997f3267c8d97d52742b846d7fb032e3cba8fa SHA512 37a4dbacd8ebc00f93dcd370dfc97d6657c091dbd062dd621b102de69a2b6307fbd1790b1766737ec8db6d65274d892a3998639a8a5a6880f654a3818482f433 +AUX paperless-webserver.socket 240 BLAKE2B 127735356bdd1ac1a46d85e757299f13a2224596fbc9e41b20b8d70aa2bbd31e8f20f571c636e6421960f2e5250386422c10ef16e7cab373f5625c7a3d053db1 SHA512 860ca3e6f3f2358684be356dbc9d2e770a22363e8324dea4d9547e99c02f9e36708b62b9da32df1d838852ca2ae0092a6795a368e7704d53981de87e4dc24df8 AUX paperless.target 215 BLAKE2B 95b67ebfc166b888ee5aea32c5565002ae451a10c0d0851df79eeabf3a6e900c7112d447ccbc170bca771bf33e07261aa05f32a25e742ded0b10e6f31ee78870 SHA512 ae3d1dcc8f056f303a0c628c1aabb60e0c93f4006352c5d05a5ee673238c56085ccd2d95ff53555767d9a31a639cd571a26083aab274237cb9f8563ce50c25d6 AUX paperless.tmpfiles 349 BLAKE2B 4a59f0a0c6a4abad23cba01e216909f45a7064e93911b8ba3e3b394f52379e41898b8c9e1246ba034bc8d2fe6dc83f5cad926e265a17da7c7093d997cfe8b4f3 SHA512 63af6e4359d5fa7bfc3f3669263a36f5d3b5f60c95cf6579d7324bb2116647bb447968b1bab5916e831918344b963d1026116e8cdfb57bce8063ed5ba119c9ea -DIST paperless-ngx-v1.12.2.tar.xz 16064564 BLAKE2B 2fbad657037336a4f05b577f73ac8f9a1e9bfe5eed3773d17c3ef6a74fca4c5bae9aca20be9dc02b3e0b425b1182f7c1e50a5df61bb70bfa960364b7c3c9e47f SHA512 75cdfb6aa2ddffac1d4e1860e31d8cc8a9344ecdd17b686da27bc9af1270dcdde34bcea3d45839043fd12048a9f39ce046fc7e3a2b44d18cc8d5af5d1addc0bf -DIST paperless-ngx-v1.13.0.tar.xz 16206396 BLAKE2B 6ba1dee5834d6571055dd2227ea3b29fea7b5c1194037c62842f048dc1fc3f5fc201ec5180fb7f46001c07b745300a4b0cf622fabeb88e8c9676047579307a8a SHA512 e26b9006a8e4c3b192dbeb138582d2f16810905e1ef37e4e9f6526ad311d136aebe6577dbe675298ce3d5493e025087697f686556d5936d0ed5ba700402d3632 -EBUILD paperless-ngx-1.12.2.ebuild 4559 BLAKE2B 8e17fa9f5895c17f8908d015caa3acc1f11c1d1761256c331615b8cf8814f7434214120263f4ddb2d996206e201cf55a04ee926db62a37d1f4d914d516a0755f SHA512 3777865762bdfd75435d0c312f1bd5266fa40d1f1d853e3d398842684afe4437927b422d2b5611eef2a80756eb12dcb56600efef345e3fb4b76398a2bc4d8b19 -EBUILD paperless-ngx-1.13.0.ebuild 4848 BLAKE2B 2764a3dacc9ec26e6ced22099940be5ed89e07bf1e7a1bac4ed0f3316c10c5a2af98d39eff633c4cbe9c6c07be5df02097e4adab6b31a48ce0c3da7e27be21d6 SHA512 ea98e841a4b1a0c69b09fc6611e3dd62691234a1d39a257d4a15ec2c71ef3e9a3c03c0c1404919d216fe502653468b4b0f01f826e40989c236f9d842857663f0 -MISC metadata.xml 659 BLAKE2B bc331f596aa68542a4e27ba044fdc7186eb524b0de650e4d719faff4c20a3ddf1903c7d780b05a58f61d120672d8d7882ac927338fcd048310e5cf78ee55966c SHA512 95fdd2bcd0ab9e144a8284c4047a2e8509fc68786d9304cd968956d4d74379f2f79496c08ca231fa6e6d527a1ecc565b30c3d12506942c7514876c3a397b7217 +DIST paperless-ngx-v2.7.2.tar.xz 64558580 BLAKE2B c04d545363853c4b16cac300b653fa7c4c40894a98780f5636534427824132ae61ae4caa51253d5c4fd042200dcaaad02e180108a1ff11ef7c9c37964ef3047e SHA512 276f7f3368562280fbbeb57ef9486d53730f888e08cba6721c0f7c6d37450f5509acc7632c3d742e91106f2bcf0b0f5740d82512776f3ea78259e73aadd79dcf +DIST paperless-ngx-v2.8.3.tar.xz 63607556 BLAKE2B 13547d054b199a4b471f0ad002ffd2273d581198dbc41463c3ca1e40a516617ea7726ef14518ad06a4ca0454b5e6bfe53f120e1a8490dc802761005eb1b6ec68 SHA512 5e713f4c0302871a75313c4fafb72fd66296d079ea80bbf09ebc60bdc137bde37797b9d5fc7ccba2e097f5e0b762a99b55b1c6bba4b4b3b1e9b8f906f1f29622 +EBUILD paperless-ngx-2.7.2.ebuild 6363 BLAKE2B 419a727c29d6cf775e903b3367b1d1f4513b61132cf3bb97908fd3bb252567cdcaa8e686abb7f60ce95850b2052d13a910ba78be0dfde9aec0cb1d6fc9206906 SHA512 05a161eee91b55b6696998938f7c1e31016cef55454d67b2acf05efb76b9bc39397aabf618c86f7b000bd89ff7e6f4cc353119e1d946644e249b91dcb9583ede +EBUILD paperless-ngx-2.8.3.ebuild 6363 BLAKE2B 9cbf5accf4b90534d8e09f854e63f865f98c822a257c7fd00ec2f1c021ce3a8ee91c01c217535a0765c75f184878b3e057a741d50201120d6840e966f49dd3a0 SHA512 78bcec04b0d5a4f81e98a71e40c47e85742cee4154d28e241dd06f6c67d45ed0db6d869693bde0f41bca9b5125e6dd7b9143e0e1c6e335432cdf73b89ab215d4 +MISC metadata.xml 851 BLAKE2B dfb395b418d92c0c7318c4862dfbce74a312222b3a2848334806c2f8063bb63947a4c0315c289f1db83987d5e7649483efb484944afd6963b3f74c1a488877f5 SHA512 e7622cfe74bee71e3698241cb234221d9d40c9a41eca4f8b3e5e3c7338940652f5c5652cd72a675339cc6620d777e858fe5310f29cf7f87f5585eb8742b58405 diff --git a/www-apps/paperless-ngx/files/paperless-consumer.service b/www-apps/paperless-ngx/files/paperless-consumer.service index a5b474f..a43178a 100644 --- a/www-apps/paperless-ngx/files/paperless-consumer.service +++ b/www-apps/paperless-ngx/files/paperless-consumer.service @@ -12,4 +12,4 @@ ExecStart=/usr/bin/paperless-manage document_consumer Restart=on-abort [Install] -WantedBy=multi-user.target +WantedBy=paperless.target diff --git a/www-apps/paperless-ngx/files/paperless-webserver.service b/www-apps/paperless-ngx/files/paperless-webserver.service index 2568805..5394909 100644 --- a/www-apps/paperless-ngx/files/paperless-webserver.service +++ b/www-apps/paperless-ngx/files/paperless-webserver.service @@ -1,6 +1,6 @@ [Unit] Description=Paperless webserver service -Requires=redis.service +Requires=redis.service paperless-webserver.socket After=network.target Wants=network.target PartOf=paperless.target @@ -8,10 +8,12 @@ PartOf=paperless.target [Service] User=paperless Group=paperless +Environment=PYTHONUNBUFFERED=1 EnvironmentFile=/etc/paperless.conf WorkingDirectory=/usr/share/paperless/src ExecStart=/usr/bin/gunicorn -c /usr/share/paperless/gunicorn.conf.py paperless.asgi:application Restart=on-abort [Install] +Also=paperless-webserver.socket WantedBy=paperless.target diff --git a/www-apps/paperless-ngx/files/paperless-webserver.socket b/www-apps/paperless-ngx/files/paperless-webserver.socket new file mode 100644 index 0000000..4c458c7 --- /dev/null +++ b/www-apps/paperless-ngx/files/paperless-webserver.socket @@ -0,0 +1,13 @@ +[Unit] +Description=Socket for Paperless webserver +PartOf=paperless-webserver.service + +[Socket] +ListenStream=/run/paperless.sock +SocketUser=paperless +SocketGroup=paperless +SocketMode=0660 +RemoveOnStop=True + +[Install] +WantedBy=sockets.target diff --git a/www-apps/paperless-ngx/files/paperless.conf.example b/www-apps/paperless-ngx/files/paperless.conf.example deleted file mode 100644 index 524d926..0000000 --- a/www-apps/paperless-ngx/files/paperless.conf.example +++ /dev/null @@ -1,86 +0,0 @@ -# Have a look at the docs for documentation. -# https://docs.paperless-ngx.com/configuration/ - -# Debug. Only enable this for development. - -#PAPERLESS_DEBUG=false - -# Required services - -#PAPERLESS_REDIS=redis://localhost:6379 -#PAPERLESS_DBHOST=localhost -#PAPERLESS_DBPORT=5432 -#PAPERLESS_DBNAME=paperless -#PAPERLESS_DBUSER=paperless -#PAPERLESS_DBPASS=paperless -#PAPERLESS_DBSSLMODE=prefer - -# Paths and folders - -#PAPERLESS_CONSUMPTION_DIR=../consume -#PAPERLESS_DATA_DIR=../data -#PAPERLESS_TRASH_DIR= -#PAPERLESS_MEDIA_ROOT=../media -#PAPERLESS_STATICDIR=../static -#PAPERLESS_FILENAME_FORMAT= -#PAPERLESS_FILENAME_FORMAT_REMOVE_NONE= - -# Security and hosting - -#PAPERLESS_SECRET_KEY=change-me -#PAPERLESS_URL=https://example.com -#PAPERLESS_CSRF_TRUSTED_ORIGINS=https://example.com # can be set using PAPERLESS_URL -#PAPERLESS_ALLOWED_HOSTS=example.com,www.example.com # can be set using PAPERLESS_URL -#PAPERLESS_CORS_ALLOWED_HOSTS=https://localhost:8080,https://example.com # can be set using PAPERLESS_URL -#PAPERLESS_FORCE_SCRIPT_NAME= -#PAPERLESS_STATIC_URL=/static/ -#PAPERLESS_AUTO_LOGIN_USERNAME= -#PAPERLESS_COOKIE_PREFIX= -#PAPERLESS_ENABLE_HTTP_REMOTE_USER=false - -# OCR settings - -#PAPERLESS_OCR_LANGUAGE=eng -#PAPERLESS_OCR_MODE=skip -#PAPERLESS_OCR_OUTPUT_TYPE=pdfa -#PAPERLESS_OCR_PAGES=1 -#PAPERLESS_OCR_IMAGE_DPI=300 -#PAPERLESS_OCR_CLEAN=clean -#PAPERLESS_OCR_DESKEW=true -#PAPERLESS_OCR_ROTATE_PAGES=true -#PAPERLESS_OCR_ROTATE_PAGES_THRESHOLD=12.0 -#PAPERLESS_OCR_USER_ARGS={} -#PAPERLESS_CONVERT_MEMORY_LIMIT=0 -#PAPERLESS_CONVERT_TMPDIR=/var/tmp/paperless - -# Software tweaks - -#PAPERLESS_TASK_WORKERS=1 -#PAPERLESS_THREADS_PER_WORKER=1 -#PAPERLESS_TIME_ZONE=UTC -#PAPERLESS_CONSUMER_POLLING=10 -#PAPERLESS_CONSUMER_DELETE_DUPLICATES=false -#PAPERLESS_CONSUMER_RECURSIVE=false -#PAPERLESS_CONSUMER_IGNORE_PATTERNS=[".DS_STORE/*", "._*", ".stfolder/*", ".stversions/*", ".localized/*", "desktop.ini"] -#PAPERLESS_CONSUMER_SUBDIRS_AS_TAGS=false -#PAPERLESS_CONSUMER_ENABLE_BARCODES=false -#PAPERLESS_CONSUMER_BARCODE_STRING=PATCHT -#PAPERLESS_PRE_CONSUME_SCRIPT=/path/to/an/arbitrary/script.sh -#PAPERLESS_POST_CONSUME_SCRIPT=/path/to/an/arbitrary/script.sh -#PAPERLESS_FILENAME_DATE_ORDER=YMD -#PAPERLESS_FILENAME_PARSE_TRANSFORMS=[] -#PAPERLESS_NUMBER_OF_SUGGESTED_DATES=5 -#PAPERLESS_THUMBNAIL_FONT_NAME= -#PAPERLESS_IGNORE_DATES= -#PAPERLESS_ENABLE_UPDATE_CHECK= - -# Tika settings - -#PAPERLESS_TIKA_ENABLED=false -#PAPERLESS_TIKA_ENDPOINT=http://localhost:9998 -#PAPERLESS_TIKA_GOTENBERG_ENDPOINT=http://localhost:3000 - -# Binaries - -#PAPERLESS_CONVERT_BINARY=/usr/bin/convert -#PAPERLESS_GS_BINARY=/usr/bin/gs diff --git a/www-apps/paperless-ngx/metadata.xml b/www-apps/paperless-ngx/metadata.xml index 070c2bb..fad0d28 100644 --- a/www-apps/paperless-ngx/metadata.xml +++ b/www-apps/paperless-ngx/metadata.xml @@ -6,9 +6,11 @@ <name>Marcin Deranek</name> </maintainer> <use> + <flag name="audit">Enables an audit trail for documents, document types, correspondents and tags</flag> + <flag name="compression">Enable compression of the responses in application</flag> <flag name="ocr">Enable support for Optical Character Recognition</flag> <flag name="remote-redis">Use remote Redis instance</flag> - <flag name="compression">Enable compression of the responses in application</flag> + <flag name="zxing">Use zxing-cpp as an alternative barcodes scanning library</flag> </use> <upstream> <bugs-to>https://github.com/paperless-ngx/paperless-ngx/issues</bugs-to> diff --git a/www-apps/paperless-ngx/paperless-ngx-1.13.0.ebuild b/www-apps/paperless-ngx/paperless-ngx-2.7.2.ebuild index 298bf38..28c6491 100644 --- a/www-apps/paperless-ngx/paperless-ngx-1.13.0.ebuild +++ b/www-apps/paperless-ngx/paperless-ngx-2.7.2.ebuild @@ -1,8 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit systemd + +PYTHON_COMPAT=( python3_{9..11} ) + +inherit python-single-r1 systemd DESCRIPTION="Community supported paperless: scan, index and archive your physical documents" HOMEPAGE="https://github.com/paperless-ngx/paperless-ngx" @@ -12,8 +15,11 @@ S="${WORKDIR}/${PN}" LICENSE="GPL-3" SLOT="0" KEYWORDS="~amd64" -IUSE="compression mysql +ocr postgres remote-redis +sqlite" -REQUIRED_USE="|| ( mysql postgres sqlite )" +IUSE="audit compression mysql +ocr postgres remote-redis +sqlite zxing" +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + || ( mysql postgres sqlite ) +" ACCT_DEPEND=" acct-group/paperless @@ -21,65 +27,77 @@ ACCT_DEPEND=" " EXTRA_DEPEND=" app-text/unpaper - dev-python/hiredis - dev-python/websockets + $(python_gen_cond_dep ' + dev-python/hiredis[${PYTHON_USEDEP}] + dev-python/websockets[${PYTHON_USEDEP}]') " DEPEND=" ${ACCT_DEPEND} ${EXTRA_DEPEND} + ${PYTHON_DEPS} app-text/poppler[utils] - app-text/pdfminer - dev-python/asgiref - dev-python/bleach - dev-python/celery - >=dev-python/channels-3.0 - <dev-python/channels-4.0 - >=dev-python/channels-redis-3.4.1 - <dev-python/channels-redis-4.0 - dev-python/concurrent-log-handler - >=dev-python/dateparser-1.1 - >=dev-python/django-4.1 - dev-python/django-celery-results - dev-python/django-cors-headers - dev-python/django-extensions - >=dev-python/django-filter-22.1 - dev-python/django-redis - >=dev-python/djangorestframework-3.14 - dev-python/filelock - dev-python/imap-tools - >=dev-python/inotifyrecursive-0.3 - dev-python/langdetect - dev-python/nltk - dev-python/pathvalidate - dev-python/pdf2image - dev-python/pikepdf - >=dev-python/pillow-9.3 - dev-python/python-dateutil - dev-python/python-dotenv - dev-python/python-gnupg - dev-python/python-magic - dev-python/pyzbar - dev-python/rapidfuzz - dev-python/redis - dev-python/tqdm - dev-python/uvicorn - >=dev-python/watchdog-2.1 - >=dev-python/whitenoise-6.2 - >=dev-python/whoosh-2.7 - media-gfx/imagemagick + $(python_gen_cond_dep ' + dev-python/asgiref[${PYTHON_USEDEP}] + dev-python/bleach[${PYTHON_USEDEP}] + dev-python/celery[${PYTHON_USEDEP}] + >=dev-python/channels-4.0[${PYTHON_USEDEP}] + >=dev-python/channels-redis-4.0[${PYTHON_USEDEP}] + dev-python/concurrent-log-handler[${PYTHON_USEDEP}] + >=dev-python/dateparser-1.2[${PYTHON_USEDEP}] + >=dev-python/django-4.2.11[${PYTHON_USEDEP}] + <dev-python/django-5.0[${PYTHON_USEDEP}] + dev-python/django-allauth[${PYTHON_USEDEP}] + dev-python/django-celery-results[${PYTHON_USEDEP}] + dev-python/django-cors-headers[${PYTHON_USEDEP}] + dev-python/django-extensions[${PYTHON_USEDEP}] + >=dev-python/django-filter-24.1[${PYTHON_USEDEP}] + dev-python/django-guardian[${PYTHON_USEDEP}] + dev-python/django-multiselectfield[${PYTHON_USEDEP}] + dev-python/django-redis[${PYTHON_USEDEP}] + ~dev-python/djangorestframework-3.14.0[${PYTHON_USEDEP}] + dev-python/djangorestframework-guardian[${PYTHON_USEDEP}] + dev-python/drf-writable-nested[${PYTHON_USEDEP}] + dev-python/filelock[${PYTHON_USEDEP}] + dev-python/imap-tools[${PYTHON_USEDEP}] + >=dev-python/inotifyrecursive-0.3[${PYTHON_USEDEP}] + dev-python/langdetect[${PYTHON_USEDEP}] + dev-python/nltk[${PYTHON_USEDEP}] + dev-python/pathvalidate[${PYTHON_USEDEP}] + dev-python/pdf2image[${PYTHON_USEDEP}] + dev-python/pikepdf[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + dev-python/python-dotenv[${PYTHON_USEDEP}] + dev-python/python-gnupg[${PYTHON_USEDEP}] + >=dev-python/python-ipware-2.0.0[${PYTHON_USEDEP}] + dev-python/python-magic[${PYTHON_USEDEP}] + dev-python/pyzbar[${PYTHON_USEDEP}] + dev-python/rapidfuzz[${PYTHON_USEDEP}] + dev-python/redis[${PYTHON_USEDEP}] + >=dev-python/scikit-learn-1.4 + dev-python/tqdm[${PYTHON_USEDEP}] + <dev-python/uvicorn-0.26.0[${PYTHON_USEDEP}] + >=dev-python/watchdog-4.0[${PYTHON_USEDEP}] + >=dev-python/whitenoise-6.6[${PYTHON_USEDEP}] + >=dev-python/whoosh-2.7[${PYTHON_USEDEP}]') + media-gfx/imagemagick[xml] media-gfx/optipng media-libs/jbig2enc - >=sci-libs/scikit-learn-1.1 www-servers/gunicorn - compression? ( dev-python/django-compression-middleware ) + audit? ( $(python_gen_cond_dep ' + dev-python/django-auditlog[${PYTHON_USEDEP}]') ) + compression? ( $(python_gen_cond_dep ' + dev-python/django-compression-middleware[${PYTHON_USEDEP}]') ) mysql? ( dev-python/mysqlclient ) - ocr? ( >=app-text/OCRmyPDF-14.0 ) + ocr? ( >=app-text/OCRmyPDF-15.4 ) postgres? ( dev-python/psycopg:2 ) !remote-redis? ( dev-db/redis ) + zxing? ( media-libs/zxing-cpp[python,${PYTHON_SINGLE_USEDEP}] ) " RDEPEND="${DEPEND}" # dev-python/tika +# dev-python/gotenberg-client DOCS=( docker/imagemagick-policy.xml ) @@ -92,10 +110,17 @@ src_prepare() { -e "s|#PAPERLESS_MEDIA_ROOT=../media|PAPERLESS_MEDIA_ROOT=/var/lib/paperless/media|" \ -e "s|#PAPERLESS_STATICDIR=../static|PAPERLESS_STATICDIR=/usr/share/paperless/static|" \ -e "s|#PAPERLESS_CONVERT_TMPDIR=/var/tmp/paperless|PAPERLESS_CONVERT_TMPDIR=/var/lib/paperless/tmp|" \ - "${FILESDIR}/paperless.conf.example" > "paperless.conf" || die "Cannot update paperless.conf" - #-i "paperless.conf.example" || die "Cannot update paperless.conf" + -i "paperless.conf" || die "Cannot update paperless.conf" + + cat >> "paperless.conf" <<- EOF + + # Custom + PAPERLESS_BIND_ADDR=unix + PAPERLESS_PORT=/run/paperless.sock - echo -e "\n# Custom\nPAPERLESS_ENABLE_COMPRESSION=$(use compression && echo 1 || echo 0)" >> "paperless.conf" + PAPERLESS_ENABLE_COMPRESSION=$(use compression && echo true || echo false) + PAPERLESS_AUDIT_LOG_ENABLED=$(use audit && echo true || echo false) + EOF } src_install() { @@ -103,6 +128,7 @@ src_install() { # Install service files systemd_newunit "${FILESDIR}"/paperless-webserver.service paperless-webserver.service + systemd_newunit "${FILESDIR}"/paperless-webserver.socket paperless-webserver.socket systemd_newunit "${FILESDIR}"/paperless-scheduler.service paperless-scheduler.service systemd_newunit "${FILESDIR}"/paperless-consumer.service paperless-consumer.service systemd_newunit "${FILESDIR}"/paperless-task-queue.service paperless-task-queue.service @@ -125,7 +151,7 @@ src_install() { fperms 644 /usr/lib/tmpfiles.d/paperless.tmpfiles # Set directories - for dir in data media tmp; do + for dir in consume data media tmp; do keepdir /var/lib/paperless/${dir} fowners paperless:paperless /var/lib/paperless/${dir} case "${dir}" in diff --git a/www-apps/paperless-ngx/paperless-ngx-1.12.2.ebuild b/www-apps/paperless-ngx/paperless-ngx-2.8.3.ebuild index f0f3bcc..d1559a0 100644 --- a/www-apps/paperless-ngx/paperless-ngx-1.12.2.ebuild +++ b/www-apps/paperless-ngx/paperless-ngx-2.8.3.ebuild @@ -1,8 +1,11 @@ -# Copyright 1999-2022 Gentoo Authors +# Copyright 1999-2023 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -inherit systemd + +PYTHON_COMPAT=( python3_{9..11} ) + +inherit python-single-r1 systemd DESCRIPTION="Community supported paperless: scan, index and archive your physical documents" HOMEPAGE="https://github.com/paperless-ngx/paperless-ngx" @@ -12,8 +15,11 @@ S="${WORKDIR}/${PN}" LICENSE="GPL-3" SLOT="0" KEYWORDS="~amd64" -IUSE="mysql +ocr postgres remote-redis +sqlite" -REQUIRED_USE="|| ( mysql postgres sqlite )" +IUSE="audit compression mysql +ocr postgres remote-redis +sqlite zxing" +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + || ( mysql postgres sqlite ) +" ACCT_DEPEND=" acct-group/paperless @@ -21,64 +27,77 @@ ACCT_DEPEND=" " EXTRA_DEPEND=" app-text/unpaper - dev-python/hiredis - dev-python/websockets + $(python_gen_cond_dep ' + dev-python/hiredis[${PYTHON_USEDEP}] + dev-python/websockets[${PYTHON_USEDEP}]') " DEPEND=" ${ACCT_DEPEND} ${EXTRA_DEPEND} + ${PYTHON_DEPS} app-text/poppler[utils] - app-text/pdfminer - dev-python/asgiref - dev-python/bleach - dev-python/celery - >=dev-python/channels-3.0 - <dev-python/channels-4.0 - >=dev-python/channels-redis-3.4.1 - <dev-python/channels-redis-4.0 - dev-python/concurrent-log-handler - >=dev-python/dateparser-1.1 - >=dev-python/django-4.1 - dev-python/django-celery-results - dev-python/django-cors-headers - dev-python/django-extensions - >=dev-python/django-filter-22.1 - dev-python/django-redis - >=dev-python/djangorestframework-3.14 - dev-python/filelock - dev-python/imap-tools - >=dev-python/inotifyrecursive-0.3 - dev-python/langdetect - dev-python/nltk - dev-python/pathvalidate - dev-python/pdf2image - dev-python/pikepdf - >=dev-python/pillow-9.3 - dev-python/python-dateutil - dev-python/python-dotenv - dev-python/python-gnupg - dev-python/python-magic - dev-python/pyzbar - dev-python/rapidfuzz - dev-python/redis - dev-python/tqdm - dev-python/uvicorn - >=dev-python/watchdog-2.1 - >=dev-python/whitenoise-6.2 - >=dev-python/whoosh-2.7 - media-gfx/imagemagick + $(python_gen_cond_dep ' + dev-python/asgiref[${PYTHON_USEDEP}] + dev-python/bleach[${PYTHON_USEDEP}] + dev-python/celery[${PYTHON_USEDEP}] + >=dev-python/channels-4.1[${PYTHON_USEDEP}] + >=dev-python/channels-redis-4.0[${PYTHON_USEDEP}] + dev-python/concurrent-log-handler[${PYTHON_USEDEP}] + >=dev-python/dateparser-1.2[${PYTHON_USEDEP}] + >=dev-python/django-4.2.11[${PYTHON_USEDEP}] + <dev-python/django-5.0[${PYTHON_USEDEP}] + dev-python/django-allauth[${PYTHON_USEDEP}] + dev-python/django-celery-results[${PYTHON_USEDEP}] + dev-python/django-cors-headers[${PYTHON_USEDEP}] + dev-python/django-extensions[${PYTHON_USEDEP}] + >=dev-python/django-filter-24.2[${PYTHON_USEDEP}] + dev-python/django-guardian[${PYTHON_USEDEP}] + dev-python/django-multiselectfield[${PYTHON_USEDEP}] + dev-python/django-redis[${PYTHON_USEDEP}] + ~dev-python/djangorestframework-3.14.0[${PYTHON_USEDEP}] + dev-python/djangorestframework-guardian[${PYTHON_USEDEP}] + dev-python/drf-writable-nested[${PYTHON_USEDEP}] + dev-python/filelock[${PYTHON_USEDEP}] + dev-python/imap-tools[${PYTHON_USEDEP}] + >=dev-python/inotifyrecursive-0.3[${PYTHON_USEDEP}] + dev-python/langdetect[${PYTHON_USEDEP}] + dev-python/nltk[${PYTHON_USEDEP}] + dev-python/pathvalidate[${PYTHON_USEDEP}] + dev-python/pdf2image[${PYTHON_USEDEP}] + dev-python/pikepdf[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + dev-python/python-dotenv[${PYTHON_USEDEP}] + dev-python/python-gnupg[${PYTHON_USEDEP}] + >=dev-python/python-ipware-2.0.0[${PYTHON_USEDEP}] + dev-python/python-magic[${PYTHON_USEDEP}] + dev-python/pyzbar[${PYTHON_USEDEP}] + dev-python/rapidfuzz[${PYTHON_USEDEP}] + dev-python/redis[${PYTHON_USEDEP}] + >=dev-python/scikit-learn-1.4 + dev-python/tqdm[${PYTHON_USEDEP}] + <dev-python/uvicorn-0.26.0[${PYTHON_USEDEP}] + >=dev-python/watchdog-4.0[${PYTHON_USEDEP}] + >=dev-python/whitenoise-6.6[${PYTHON_USEDEP}] + >=dev-python/whoosh-2.7[${PYTHON_USEDEP}]') + media-gfx/imagemagick[xml] media-gfx/optipng media-libs/jbig2enc - >=sci-libs/scikit-learn-1.1 www-servers/gunicorn + audit? ( $(python_gen_cond_dep ' + dev-python/django-auditlog[${PYTHON_USEDEP}]') ) + compression? ( $(python_gen_cond_dep ' + dev-python/django-compression-middleware[${PYTHON_USEDEP}]') ) mysql? ( dev-python/mysqlclient ) - ocr? ( >=app-text/OCRmyPDF-14.0 ) + ocr? ( >=app-text/OCRmyPDF-15.4 ) postgres? ( dev-python/psycopg:2 ) !remote-redis? ( dev-db/redis ) + zxing? ( media-libs/zxing-cpp[python,${PYTHON_SINGLE_USEDEP}] ) " RDEPEND="${DEPEND}" # dev-python/tika +# dev-python/gotenberg-client DOCS=( docker/imagemagick-policy.xml ) @@ -91,7 +110,17 @@ src_prepare() { -e "s|#PAPERLESS_MEDIA_ROOT=../media|PAPERLESS_MEDIA_ROOT=/var/lib/paperless/media|" \ -e "s|#PAPERLESS_STATICDIR=../static|PAPERLESS_STATICDIR=/usr/share/paperless/static|" \ -e "s|#PAPERLESS_CONVERT_TMPDIR=/var/tmp/paperless|PAPERLESS_CONVERT_TMPDIR=/var/lib/paperless/tmp|" \ - -i "paperless.conf" || die "Cannot update paperless.conf" + -i "paperless.conf" || die "Cannot update paperless.conf" + + cat >> "paperless.conf" <<- EOF + + # Custom + PAPERLESS_BIND_ADDR=unix + PAPERLESS_PORT=/run/paperless.sock + + PAPERLESS_ENABLE_COMPRESSION=$(use compression && echo true || echo false) + PAPERLESS_AUDIT_LOG_ENABLED=$(use audit && echo true || echo false) + EOF } src_install() { @@ -99,6 +128,7 @@ src_install() { # Install service files systemd_newunit "${FILESDIR}"/paperless-webserver.service paperless-webserver.service + systemd_newunit "${FILESDIR}"/paperless-webserver.socket paperless-webserver.socket systemd_newunit "${FILESDIR}"/paperless-scheduler.service paperless-scheduler.service systemd_newunit "${FILESDIR}"/paperless-consumer.service paperless-consumer.service systemd_newunit "${FILESDIR}"/paperless-task-queue.service paperless-task-queue.service @@ -121,7 +151,7 @@ src_install() { fperms 644 /usr/lib/tmpfiles.d/paperless.tmpfiles # Set directories - for dir in data media tmp; do + for dir in consume data media tmp; do keepdir /var/lib/paperless/${dir} fowners paperless:paperless /var/lib/paperless/${dir} case "${dir}" in |