Files
Nixos/modules/system/nixos/networks/printing.nix
T

35 lines
663 B
Nix

{
pkgs,
lib,
config,
...
}:
with lib;
let
cfg = config.os.networks.printing;
all = builtins.attrNames config.users.users;
users = builtins.filter (user: config.users.users.${user}.isNormalUser == true) all;
in
{
options.os.networks.printing = {
enable = mkEnableOption "System printing service";
};
config = mkIf cfg.enable {
services.printing = {
enable = true;
startWhenNeeded = true;
drivers = with pkgs; [ hplip ];
};
hardware.sane = {
enable = true;
extraBackends = with pkgs; [ sane-airscan ];
};
users.groups.lp.members = users;
users.groups.scanner.members = users;
};
}