Skip to content

Commit

Permalink
feat: init paperless for winters
Browse files Browse the repository at this point in the history
  • Loading branch information
Swarsel committed Oct 4, 2024
1 parent a0a0f6e commit 3a56b30
Show file tree
Hide file tree
Showing 6 changed files with 114 additions and 13 deletions.
65 changes: 59 additions & 6 deletions SwarselSystems.org
Original file line number Diff line number Diff line change
Expand Up @@ -6639,6 +6639,7 @@ Also, the system state version is set here. No need to touch it.
./matrix.nix
./nextcloud.nix
./immich.nix
./paperless.nix
];

nix =
Expand Down Expand Up @@ -6730,7 +6731,7 @@ Also, the system state version is set here. No need to touch it.

enable = true;
openFirewall = true;
settingssys.Eternor = {
settings.Eternor = {
browseable = "yes";
"read only" = "no";
"guest ok" = "no";
Expand Down Expand Up @@ -7424,7 +7425,7 @@ Also, the system state version is set here. No need to touch it.

services.nextcloud = {
enable = true;
packages = pkgs.nextcloud30;
package = pkgs.nextcloud30;
hostName = "stash.swarsel.win";
home = "/Vault/apps/nextcloud";
datadir = "/Vault/data/nextcloud";
Expand Down Expand Up @@ -7472,10 +7473,9 @@ Also, the system state version is set here. No need to touch it.

services.immich = {
enable = true;
port = 3001
port = 3001;
openFirewall = true;
mediaLocation = "/Vault/Eternor/Bilder";
home = "/Vault/apps/nextcloud";
mediaLocation = "/Vault/Eternor/Immich";
};


Expand All @@ -7487,7 +7487,7 @@ Also, the system state version is set here. No need to touch it.
acmeRoot = null;
locations = {
"/" = {
proxyPass = "http://192.168.1.2:3001";
proxyPass = "http://[::1]:3001";
extraConfig = ''
client_max_body_size 0;
'';
Expand All @@ -7501,6 +7501,59 @@ Also, the system state version is set here. No need to touch it.
}
#+end_src

**** paperless

#+begin_src nix :tangle profiles/server/common/paperless.nix
{ pkgs, lib, config, ... }:
{
config = lib.mkIf config.swarselsystems.server.immich {

users.users.paperless = {
extraGroups = [ "users" ];
};


sops.secrets.paperless_admin = { owner = "paperless"; };

services.paperless = {
enable = true;
mediaDir = "/Vault/Eternor/Dokumente";
user = "paperless";
port = 28981;
passwordFile = config.sops.secrets.paperless_admin.path;
address = "0.0.0.0";
extraConfig = {
PAPERLESS_OCR_LANGUAGE = "deu+eng";
PAPERLESS_URL = "scan.swarsel.win";
PAPERLESS_OCR_USER_ARGS = builtins.toJSON {
optimize = 1;
pdfa_image_compression = "lossless";
};
};
};

services.nginx = {
virtualHosts = {
"scan.swarsel.win" = {
enableACME = true;
forceSSL = true;
acmeRoot = null;
locations = {
"/" = {
proxyPass = "http://192.168.1.2:28981";
extraConfig = ''
client_max_body_size 0;
'';
};
};
};
};
};
};

}
#+end_src


*** Optional
:PROPERTIES:
Expand Down
1 change: 1 addition & 0 deletions profiles/server/common/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
./matrix.nix
./nextcloud.nix
./immich.nix
./paperless.nix
];

nix =
Expand Down
9 changes: 4 additions & 5 deletions profiles/server/common/immich.nix
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,9 @@

services.immich = {
enable = true;
port = 3001
openFirewall = true;
mediaLocation = "/Vault/Eternor/Bilder";
home = "/Vault/apps/nextcloud";
port = 3001;
openFirewall = true;
mediaLocation = "/Vault/Eternor/Immich";
};


Expand All @@ -25,7 +24,7 @@
acmeRoot = null;
locations = {
"/" = {
proxyPass = "http://192.168.1.2:3001";
proxyPass = "http://[::1]:3001";
extraConfig = ''
client_max_body_size 0;
'';
Expand Down
2 changes: 1 addition & 1 deletion profiles/server/common/nextcloud.nix
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

services.nextcloud = {
enable = true;
packages = pkgs.nextcloud30;
package = pkgs.nextcloud30;
hostName = "stash.swarsel.win";
home = "/Vault/apps/nextcloud";
datadir = "/Vault/data/nextcloud";
Expand Down
2 changes: 1 addition & 1 deletion profiles/server/common/nfs.nix
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@

enable = true;
openFirewall = true;
settingssys.Eternor = {
settings.Eternor = {
browseable = "yes";
"read only" = "no";
"guest ok" = "no";
Expand Down
48 changes: 48 additions & 0 deletions profiles/server/common/paperless.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{ pkgs, lib, config, ... }:
{
config = lib.mkIf config.swarselsystems.server.immich {

users.users.paperless = {
extraGroups = [ "users" ];
};


sops.secrets.paperless_admin = { owner = "paperless"; };

services.paperless = {
enable = true;
mediaDir = "/Vault/Eternor/Dokumente";
user = "paperless";
port = 28981;
passwordFile = config.sops.secrets.paperless_admin.path;
address = "0.0.0.0";
extraConfig = {
PAPERLESS_OCR_LANGUAGE = "deu+eng";
PAPERLESS_URL = "scan.swarsel.win";
PAPERLESS_OCR_USER_ARGS = builtins.toJSON {
optimize = 1;
pdfa_image_compression = "lossless";
};
};
};

services.nginx = {
virtualHosts = {
"scan.swarsel.win" = {
enableACME = true;
forceSSL = true;
acmeRoot = null;
locations = {
"/" = {
proxyPass = "http://192.168.1.2:28981";
extraConfig = ''
client_max_body_size 0;
'';
};
};
};
};
};
};

}

0 comments on commit 3a56b30

Please sign in to comment.