nixos/hylafax: add `package` option

Yarny0 39003ad9 eb52347d

Changed files
+10 -7
nixos
modules
services
+1 -1
nixos/modules/services/networking/hylafax/default.nix
···
];
config = lib.modules.mkIf config.services.hylafax.enable {
-
environment.systemPackages = [ pkgs.hylafaxplus ];
+
environment.systemPackages = [ config.services.hylafax.package ];
users.users.uucp = {
uid = config.ids.uids.uucp;
group = "uucp";
+3
nixos/modules/services/networking/hylafax/options.nix
···
mkIf
mkMerge
mkOption
+
mkPackageOption
;
inherit (lib.types)
attrsOf
···
options.services.hylafax = {
enable = mkEnableOption "HylaFAX server";
+
+
package = mkPackageOption pkgs "HylaFAX" { default = "hylafaxplus"; };
autostart = mkOption {
type = bool;
+2 -2
nixos/modules/services/networking/hylafax/spool.sh
···
chown @faxuser@:@faxgroup@ clientlog faxcron.lastrun xferfaxlog
# create symlinks for frozen directories/files
-
lnsym --target-directory=. "@hylafaxplus@"/spool/{COPYRIGHT,bin,config}
+
lnsym --target-directory=. "@package@"/spool/{COPYRIGHT,bin,config}
# create empty temporary directories
update --mode=0700 -d client dev status
···
cd "@spoolAreaPath@/etc"
# create symlinks to all files in template's etc
-
lnsym --target-directory=. "@hylafaxplus@/spool/etc"/*
+
lnsym --target-directory=. "@package@/spool/etc"/*
# set LOCKDIR in setup.cache
sed --regexp-extended 's|^(UUCP_LOCKDIR=).*$|\1'"'@lockPath@'|g" --in-place setup.cache
+4 -4
nixos/modules/services/networking/hylafax/systemd.nix
···
mkSpoolCmd =
prefix: program: posArg: options:
let
-
start = "${prefix}${pkgs.hylafaxplus}/spool/bin/${program}";
+
start = "${prefix}${cfg.package}/spool/bin/${program}";
optionsList = toGNUCommandLine { mkOptionName = k: "-${k}"; } (
{ q = cfg.spoolAreaPath; } // options
);
···
{ name, type, ... }@modem:
''
# check if modem config file exists:
-
test -f "${pkgs.hylafaxplus}/spool/config/${type}"
+
test -f "${cfg.package}/spool/config/${type}"
ln \
--symbolic \
--no-target-directory \
···
faxgroup = "uucp";
lockPath = "/var/lock";
inherit globalConfigPath modemConfigPath;
-
inherit (cfg) spoolAreaPath userAccessFile;
-
inherit (pkgs) hylafaxplus runtimeShell;
+
inherit (cfg) package spoolAreaPath userAccessFile;
+
inherit (pkgs) runtimeShell;
};
};