38 lines
828 B
Nix
38 lines
828 B
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
let
|
|
cfg = config.grimmShared;
|
|
in
|
|
{
|
|
config =
|
|
with cfg;
|
|
lib.mkIf (enable && printing) {
|
|
# Enable CUPS to print documents.
|
|
services.printing.enable = true;
|
|
services.printing.drivers = with pkgs; [
|
|
brgenml1lpr
|
|
brgenml1cupswrapper
|
|
];
|
|
services.avahi = {
|
|
enable = true;
|
|
nssmdns4 = true;
|
|
openFirewall = true;
|
|
};
|
|
services.printing.cups-pdf.enable = true;
|
|
hardware.sane.brscan4.enable = true; # enables support for SANE scanners
|
|
|
|
environment.systemPackages =
|
|
with pkgs;
|
|
(lib.optionals cfg.graphical [
|
|
kdePackages.skanpage
|
|
# libsForQt5.skanpage
|
|
]);
|
|
};
|
|
|
|
options.grimmShared.printing = lib.mkEnableOption "Enables print and scan related options";
|
|
}
|