From 31b704802a57a1eb0cf780421028b8915aff0bee Mon Sep 17 00:00:00 2001 From: Felix Stupp Date: Mon, 26 Aug 2024 00:43:33 +0000 Subject: [PATCH] NixOS: add setting services.printing.enableAutoDiscovery --- nix/nixos-modules/extends/default.nix | 1 + nix/nixos-modules/extends/printing.nix | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 nix/nixos-modules/extends/printing.nix 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; + }; + }; + +}