Harald Hoyer
45433d0622
Created a new module for home printer setup and enabled it on x86_64-linux systems. The module configures printing drivers and ensures that printers are set up properly. In addition, moved specific printer configurations into the newly created homeprinter module.
41 lines
1.1 KiB
Nix
41 lines
1.1 KiB
Nix
{ options, config, lib, pkgs, ... }:
|
|
|
|
with lib;
|
|
with lib.metacfg;
|
|
let cfg = config.metacfg.homeprinter;
|
|
in
|
|
{
|
|
options.metacfg.homeprinter = with types; {
|
|
enable = mkBoolOpt false "Whether or not to enable the home printers.";
|
|
};
|
|
|
|
config = mkIf cfg.enable {
|
|
services.printing.drivers = with pkgs; [
|
|
metacfg.dcpl2530dw-cups
|
|
gutenprintBin
|
|
gutenprint
|
|
];
|
|
|
|
hardware.printers.ensurePrinters = [
|
|
{
|
|
name = "Brother_DCP-L2530DW_series";
|
|
location = "Dach";
|
|
deviceUri = "dnssd://Brother%20DCP-L2530DW%20series._ipp._tcp.local/?uuid=e3248000-80ce-11db-8000-cc6b1e5cd0ea";
|
|
model = "brother-DCPL2530DW-cups-en.ppd";
|
|
ppdOptions = {
|
|
PageSize = "A4";
|
|
};
|
|
}
|
|
{
|
|
name = "Canon_MG6300_series";
|
|
location = "Dach";
|
|
deviceUri = "dnssd://Canon%20MG6300%20series._ipp._tcp.local/?uuid=00000000-0000-1000-8000-2C9EFC9C7BA5";
|
|
model = "gutenprint.5.3://bjc-PIXMA-MG6350/expert";
|
|
ppdOptions = {
|
|
PageSize = "A4";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
}
|