-{ lib, pkgs, config, myconfig, ... }:
+{ lib, pkgs, config, ... }:
let
cfg = config.myServices.tasks;
server_vardir = config.services.taskserver.dataDir;
fqdn = "task.immae.eu";
user = config.services.taskserver.user;
- env = myconfig.env.tools.task;
+ env = config.myEnv.tools.task;
group = config.services.taskserver.group;
taskserver-user-certs = pkgs.runCommand "taskserver-user-certs" {} ''
mkdir -p $out/bin
};
config = lib.mkIf cfg.enable {
+ services.duplyBackup.profiles.tasks = {
+ rootDir = "/var/lib";
+ excludeFile = ''
+ + /var/lib/taskserver
+ + /var/lib/taskwarrior-web
+ - /var/lib
+ '';
+ };
+
secrets.keys = [{
dest = "webapps/tools-taskwarrior-web";
user = "wwwrun";
SetEnv TASKD_LDAP_DN "${env.ldap.dn}"
SetEnv TASKD_LDAP_PASSWORD "${env.ldap.password}"
SetEnv TASKD_LDAP_BASE "${env.ldap.base}"
- SetEnv TASKD_LDAP_FILTER "${env.ldap.search}"
+ SetEnv TASKD_LDAP_FILTER "${env.ldap.filter}"
'';
}];
services.websites.env.tools.watchPaths = [ "/var/secrets/webapps/tools-taskwarrior-web" ];
myServices.websites.webappDirs._task = ./www;
- security.acme.certs."task" = config.services.myCertificates.certConfig // {
+ security.acme2.certs."task" = config.myServices.certificates.certConfig // {
inherit user group;
- plugins = [ "fullchain.pem" "key.pem" "cert.pem" "account_key.json" ];
+ plugins = [ "fullchain.pem" "key.pem" "cert.pem" "account_key.json" "account_reg.json" ];
domain = fqdn;
postRun = ''
systemctl restart taskserver.service
inherit fqdn;
listenHost = "::";
pki.manual.ca.cert = "${server_vardir}/keys/ca.cert";
- pki.manual.server.cert = "${config.security.acme.directory}/task/fullchain.pem";
- pki.manual.server.crl = "${config.security.acme.directory}/task/invalid.crl";
- pki.manual.server.key = "${config.security.acme.directory}/task/key.pem";
+ pki.manual.server.cert = "${config.security.acme2.certs.task.directory}/fullchain.pem";
+ pki.manual.server.crl = "${config.security.acme2.certs.task.directory}/invalid.crl";
+ pki.manual.server.key = "${config.security.acme2.certs.task.directory}/key.pem";
requestLimit = 104857600;
};