paperless-gost
paperless-gost is a Paperless-ngx parser plugin for attached CMS/CAdES
documents that use GOST algorithm identifiers and encapsulate a PDF.
Paperless discovers GOSTCMSParser through the paperless_ngx.parsers entry
point. The original .p7m or .sig file remains the original document; its
embedded PDF is supplied as the PDF rendition.
Note for humans
This plugin was fully vibe-coded by Codex using 5.6-terra (high effort) on 2026-08-24. No warranty for broken documents.
Docker Compose installation
This package is not published to a package index. Build a local wheel from
this checkout and install that wheel in the Paperless container at startup.
These steps assume the standard Paperless Docker Compose service is named
webserver.
-
Build the wheel:
uv build -
Create
custom-cont-init.d/10-install-paperless-gost.shbeside yourdocker-compose.ymlwith the following contents:#!/bin/sh set -eu set -- /opt/paperless-gost/paperless_gost-*.whl test "$#" -eq 1 pip install --no-cache-dir --upgrade "$1"
Make the script executable:
chmod +x custom-cont-init.d/10-install-paperless-gost.sh
-
Add these read-only volumes to the
webserverservice indocker-compose.yml:services: webserver: volumes: - ./dist:/opt/paperless-gost:ro - ./custom-cont-init.d:/custom-cont-init.d:ro
-
Recreate the webserver and confirm that Paperless discovered the parser:
docker compose up -d --force-recreate webserver docker compose logs --tail=200 webserver | grep -F "Loaded third-party parser 'GOST CMS/CAdES PDF Parser'"
If the log line is absent, inspect the full webserver startup log and check that exactly one
paperless_gost-*.whlfile is present indist/.
Supported input is detected from CMS ASN.1 content and GOST OIDs, rather than
the filename. The plugin accepts attached CMS/CAdES payloads only when the
encapsulated content is a PDF. Detached .sig/.p7s signatures are
unsupported and attached non-PDF content fails with a clear parser error.
The plugin does not verify cryptographic signatures or otherwise check crypto validity. It does not provide a GOST crypto backend, trust-chain or revocation checks, timestamp validation, or any assertion that a signature is valid. When present, signing time, signer subject/issuer, and GOST/signature algorithm identifiers are exposed as unverified metadata.
License
Licensed under the GNU General Public License v3.0 or later.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file paperless_gost-0.1.2.tar.gz.
File metadata
- Download URL: paperless_gost-0.1.2.tar.gz
- Upload date:
- Size: 18.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
da57cd5e8d1e08e47ee7b504fb4e4b151857c509d38350bd13ed72330533911c
|
|
| MD5 |
d80de93609eb3b198f100797f71dc937
|
|
| BLAKE2b-256 |
f8a8047c130d1e399a124e48246bc412ae0cf1f4067943aca6d52c1a8b0357b9
|
Provenance
The following attestation bundles were made for paperless_gost-0.1.2.tar.gz:
Publisher:
ci.yml on alekseik1/paperless-gost
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
paperless_gost-0.1.2.tar.gz -
Subject digest:
da57cd5e8d1e08e47ee7b504fb4e4b151857c509d38350bd13ed72330533911c - Sigstore transparency entry: 2582918119
- Sigstore integration time:
-
Permalink:
alekseik1/paperless-gost@39a97fe3c5687adbc304d9c814c3a98c6f70e6c2 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/alekseik1
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@39a97fe3c5687adbc304d9c814c3a98c6f70e6c2 -
Trigger Event:
push
-
Statement type:
File details
Details for the file paperless_gost-0.1.2-py3-none-any.whl.
File metadata
- Download URL: paperless_gost-0.1.2-py3-none-any.whl
- Upload date:
- Size: 18.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7a348a504fabf75d419c50f8c7be063f88e9677b7849766781ca84b3a09a7b3
|
|
| MD5 |
5d268fcc9a13bb04ace599c2a8d08905
|
|
| BLAKE2b-256 |
20ad743d5dd88c24e92d470f3ae40ae6e6da4946a5e7cb714f5ceb7899a2bf7f
|
Provenance
The following attestation bundles were made for paperless_gost-0.1.2-py3-none-any.whl:
Publisher:
ci.yml on alekseik1/paperless-gost
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
paperless_gost-0.1.2-py3-none-any.whl -
Subject digest:
d7a348a504fabf75d419c50f8c7be063f88e9677b7849766781ca84b3a09a7b3 - Sigstore transparency entry: 2582918124
- Sigstore integration time:
-
Permalink:
alekseik1/paperless-gost@39a97fe3c5687adbc304d9c814c3a98c6f70e6c2 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/alekseik1
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
ci.yml@39a97fe3c5687adbc304d9c814c3a98c6f70e6c2 -
Trigger Event:
push
-
Statement type: