diff options
author | Mark Nipper <nipsy@bitgnome.net> | 2024-06-19 00:56:01 -0700 |
---|---|---|
committer | Mark Nipper <nipsy@bitgnome.net> | 2024-06-19 00:56:01 -0700 |
commit | 27251f7915ef97ab639ff0c99f58baab229c1d9c (patch) | |
tree | 0c43a9ff817251652dde27dd11327504d1414272 /hosts/common/optional/services | |
parent | adbb8cab902bba93784899d17185c0dc35466f06 (diff) | |
download | nix-27251f7915ef97ab639ff0c99f58baab229c1d9c.tar nix-27251f7915ef97ab639ff0c99f58baab229c1d9c.tar.gz nix-27251f7915ef97ab639ff0c99f58baab229c1d9c.tar.bz2 nix-27251f7915ef97ab639ff0c99f58baab229c1d9c.tar.lz nix-27251f7915ef97ab639ff0c99f58baab229c1d9c.tar.xz nix-27251f7915ef97ab639ff0c99f58baab229c1d9c.tar.zst nix-27251f7915ef97ab639ff0c99f58baab229c1d9c.zip |
Add public asterisk configuration
Diffstat (limited to 'hosts/common/optional/services')
-rw-r--r-- | hosts/common/optional/services/asterisk.nix | 88 |
1 files changed, 86 insertions, 2 deletions
diff --git a/hosts/common/optional/services/asterisk.nix b/hosts/common/optional/services/asterisk.nix index 0c012bd..7bbd096 100644 --- a/hosts/common/optional/services/asterisk.nix +++ b/hosts/common/optional/services/asterisk.nix @@ -1,8 +1,92 @@ -{ lib, ... }: +{ config, lib, pkgs, ... }: { services.asterisk = { enable = true; }; - systemd.services.asterisk.wantedBy = lib.mkForce []; + sops = { + secrets = { + "asterisk/asterisk.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/cdr.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/console.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/extensions.ael" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/indications.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/logger.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/modules.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/musiconhold.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/pjsip.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/pjsip_notify.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/rtp.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + "asterisk/voicemail.conf" = { + owner = config.users.users.asterisk.name; + group = config.users.users.asterisk.group; + mode = "00400"; + }; + }; + }; + + systemd.services.asterisk = { + serviceConfig.ExecStart = lib.mkForce "${pkgs.asterisk}/bin/asterisk -U asterisk -C ${config.sops.secrets."asterisk/asterisk.conf".path} -F"; + unitConfig = { + ConditionPathExists = [ + config.sops.secrets."asterisk/asterisk.conf".path + config.sops.secrets."asterisk/cdr.conf".path + config.sops.secrets."asterisk/console.conf".path + config.sops.secrets."asterisk/extensions.ael".path + config.sops.secrets."asterisk/indications.conf".path + config.sops.secrets."asterisk/logger.conf".path + config.sops.secrets."asterisk/modules.conf".path + config.sops.secrets."asterisk/musiconhold.conf".path + config.sops.secrets."asterisk/pjsip.conf".path + config.sops.secrets."asterisk/pjsip_notify.conf".path + config.sops.secrets."asterisk/rtp.conf".path + config.sops.secrets."asterisk/voicemail.conf".path + ]; + }; + #wantedBy = lib.mkForce []; + }; } |