Jump to content

Paperless-ngx: Difference between revisions

From NixOS Wiki
Tboston (talk | contribs)
Add one more example with showing settings and user generation
the address must be an ip address, with a domain name, the paperless-web service will fail to start. but in the settings there's an option for PAPERLESS_URL that needs to be set to allow requests from that origin.
Line 12: Line 12:
   enable = true;
   enable = true;
   consumptionDirIsPublic = true;
   consumptionDirIsPublic = true;
  address = "paperless.example.com";
   settings = {
   settings = {
     PAPERLESS_CONSUMER_IGNORE_PATTERN = [
     PAPERLESS_CONSUMER_IGNORE_PATTERN = [
Line 23: Line 22:
       pdfa_image_compression = "lossless";
       pdfa_image_compression = "lossless";
     };
     };
    PAPERLESS_URL = "https://paperless.example.com";
   };
   };
};
};
</syntaxhighlight>After the installation, you can set an admin user yourself via the following command on the server <syntaxhighlight lang="bash">
</syntaxhighlight>After the installation, you can set an admin user yourself via the following command on the server <syntaxhighlight lang="bash">
sudo /var/lib/paperless/paperless-manage createsuperuser
sudo paperless-manage createsuperuser
</syntaxhighlight>
</syntaxhighlight>
[[Category:Server]]
[[Category:Server]]
[[Category:Web Applications]]
[[Category:Web Applications]]

Revision as of 14:25, 9 June 2025

Paperless-ngx is a community-supported open-source document management system that transforms your physical documents into a searchable online archive, allowing you to reduce paper clutter.

Setup

The following example configuration will enable Paperless locally

❄︎ /etc/nixos/configuration.nix
environment.etc."paperless-admin-pass".text = "admin";
services.paperless = {
  enable = true;
  passwordFile = "/etc/paperless-admin-pass";
};

After applying the configuration you can access the instance via http://localhost:28981 and login with username admin and password admin. Another example below could be used on a server with an actual URL and some extra settings.

services.paperless = {
  enable = true;
  consumptionDirIsPublic = true;
  settings = {
    PAPERLESS_CONSUMER_IGNORE_PATTERN = [
      ".DS_STORE/*"
      "desktop.ini"
    ];
    PAPERLESS_OCR_LANGUAGE = "deu+eng";
    PAPERLESS_OCR_USER_ARGS = {
      optimize = 1;
      pdfa_image_compression = "lossless";
    };
    PAPERLESS_URL = "https://paperless.example.com";
  };
};

After the installation, you can set an admin user yourself via the following command on the server

sudo paperless-manage createsuperuser