2023-07-20 02:40:45 +00:00
|
|
|
{ config, lib, pkgs, ... }:
|
|
|
|
|
|
|
|
# We're setting up Wezterm mux server with TLS domains.
|
|
|
|
let
|
|
|
|
weztermDomain = "mux.${config.networking.domain}";
|
|
|
|
in
|
|
|
|
{
|
|
|
|
services.wezterm-mux-server = {
|
|
|
|
enable = true;
|
2023-07-27 05:36:05 +00:00
|
|
|
configFile = ../../config/wezterm/config.lua;
|
2023-07-20 02:40:45 +00:00
|
|
|
};
|
|
|
|
|
2023-07-27 05:36:05 +00:00
|
|
|
systemd.services.wezterm-mux-server.serviceConfig = {
|
|
|
|
LoadCredential = let
|
|
|
|
certDir = config.security.acme.certs."${weztermDomain}".directory;
|
|
|
|
credentialCertPath = path: "${path}:${certDir}/${path}";
|
|
|
|
in
|
|
|
|
[
|
|
|
|
(credentialCertPath "key.pem")
|
|
|
|
(credentialCertPath "cert.pem")
|
|
|
|
(credentialCertPath "fullchain.pem")
|
|
|
|
];
|
2023-07-20 02:40:45 +00:00
|
|
|
};
|
2023-07-27 05:36:05 +00:00
|
|
|
|
|
|
|
security.acme.certs."${weztermDomain}".postRun = ''
|
|
|
|
systemctl restart wezterm-mux-server.service
|
|
|
|
'';
|
2023-07-20 02:40:45 +00:00
|
|
|
}
|