diff --git a/nix/nixos-modules/extends/default.nix b/nix/nixos-modules/extends/default.nix index b8c77b1..6ddee2c 100644 --- a/nix/nixos-modules/extends/default.nix +++ b/nix/nixos-modules/extends/default.nix @@ -2,5 +2,6 @@ imports = [ # files ./podman.nix + ./printing.nix ]; } diff --git a/nix/nixos-modules/extends/printing.nix b/nix/nixos-modules/extends/printing.nix new file mode 100644 index 0000000..0b66a6b --- /dev/null +++ b/nix/nixos-modules/extends/printing.nix @@ -0,0 +1,25 @@ +{ config, lib, ... }: +let + cfg = config.services.printing; +in +{ + + options.services.printing = { + enableAutoDiscovery = lib.mkEnableOption '' + CUPS automatic discovery of printers. + + This will enable & configure Avahi accordingly, + including opening ports in the firewall''; + }; + + config = lib.mkIf cfg.enable { + # TODO make also possible with systemd-resolved + services.avahi = lib.mkIf cfg.enableAutoDiscovery { + enable = true; + nssmdns4 = true; + nssmdns6 = true; + openFirewall = true; + }; + }; + +}