3 path = "../../openarc";
6 inputs.nix-lib.url = "github:NixOS/nixpkgs";
8 description = "Private configuration for openarc";
9 outputs = { self, nix-lib, openarc }:
11 cfg = name': { config, lib, pkgs, name, ... }: lib.mkIf (name == name') {
15 socket = "local:${config.myServices.mail.milters.sockets.openarc}";
16 group = config.services.postfix.group;
17 configFile = pkgs.writeText "openarc.conf" ''
18 AuthservID mail.immae.eu
20 KeyFile ${config.secrets.fullPaths."opendkim/eldiron.private"}
27 systemd.services.openarc.serviceConfig.Slice = "mail.slice";
28 systemd.services.openarc.postStart = lib.optionalString
29 (lib.strings.hasPrefix "local:" config.services.openarc.socket) ''
30 while [ ! -S ${lib.strings.removePrefix "local:" config.services.openarc.socket} ]; do
33 chmod g+w ${lib.strings.removePrefix "local:" config.services.openarc.socket}
35 services.filesWatcher.openarc = {
38 config.secrets.fullPaths."opendkim/eldiron.private"
44 { nixosModules = openarc.nixosModules or {} // nix-lib.lib.genAttrs ["eldiron" "backup-2"] cfg; };