docspell/nix/configuration-test.nix

88 lines
1.8 KiB
Nix

{ config, pkgs, ... }:
let
docspell = import ./release.nix;
full-text-search = {
enabled = true;
solr.url = "http://localhost:${toString config.services.solr.port}/solr/docspell";
};
in
{
imports = docspell.modules ++ [ ./solr.nix ];
i18n = {
defaultLocale = "en_US.UTF-8";
};
console.keyMap = "neo";
users.users.root = {
password = "root";
};
nixpkgs = {
config = {
packageOverrides = pkgs:
let
callPackage = pkgs.lib.callPackageWith(custom // pkgs);
custom = {
docspell = callPackage docspell.currentPkg {};
};
in custom;
};
};
services.docspell-joex = {
enable = true;
waitForTarget = "solr-init.target";
bind.address = "0.0.0.0";
base-url = "http://localhost:7878";
inherit full-text-search;
};
services.docspell-restserver = {
enable = true;
bind.address = "0.0.0.0";
integration-endpoint = {
enabled = true;
http-header = {
enabled = true;
header-value = "test123";
};
};
inherit full-text-search;
};
services.docspell-consumedir = {
enable = true;
integration-endpoint = {
enabled = true;
header = "Docspell-Integration:test123";
};
watchDirs = ["/tmp/docs"];
urls = ["http://localhost:7880/api/v1/open/integration/item"];
};
environment.systemPackages =
[ pkgs.docspell.tools
pkgs.docspell.server
pkgs.docspell.joex
pkgs.jq
pkgs.telnet
];
services.xserver = {
enable = false;
};
networking = {
hostName = "docspelltest";
firewall.allowedTCPPorts = [7880];
};
system.activationScripts = {
initUploadDir = ''
mkdir -p ${builtins.concatStringsSep " " config.services.docspell-consumedir.watchDirs}
'';
};
system.stateVersion = "20.03";
}