haccfiles/services/murmur.nix

43 lines
1.2 KiB
Nix
Raw Normal View History

2021-08-07 13:14:15 +00:00
{ config, lib, pkgs, sources, ... }:
2020-11-27 20:56:20 +00:00
{
2021-08-07 13:14:15 +00:00
hexchen.bindmounts."/var/lib/murmur" = "/persist/var/lib/murmur";
2020-11-27 20:56:20 +00:00
services.murmur = {
2020-12-27 10:17:38 +00:00
enable = true;
2020-11-27 20:56:20 +00:00
logDays = -1;
welcometext = "Welcome to mumble4future! Brought to you by infra4future. The server is now reachable under mumble.hacc.space, please update your bookmarks.";
2020-11-27 20:56:20 +00:00
sslKey = "/var/lib/acme/mumble.hacc.space/key.pem";
sslCert = "/var/lib/acme/mumble.hacc.space/fullchain.pem";
bandwidth = 128000;
2020-11-27 20:56:20 +00:00
};
networking.firewall.allowedTCPPorts = [ config.services.murmur.port ];
networking.firewall.allowedUDPPorts = [ config.services.murmur.port ];
2022-09-24 14:30:14 +00:00
# create ssl certs for all used domains
services.nginx.virtualHosts = let
vhost = {
enableACME = true;
forceSSL = true;
};
in {
"mumble.hacc.space" = vhost;
"mumble.infra4future.de" = vhost;
};
# create group to share the certs
users.groups.mumblecert = {};
users.users.nginx.extraGroups = [ "mumblecert" ];
users.users.murmur.extraGroups = [ "mumblecert" ];
2022-09-24 14:30:14 +00:00
# merge the certs into one and reload murmur on update
security.acme.certs."mumble.hacc.space" = {
group = "mumblecert";
extraDomainNames = [ "pad.infra4future.de" ];
reloadServices = [ "murmur" ];
};
2020-11-27 20:56:20 +00:00
}