Harald Hoyer
1e96221b75
Enable Avahi service to support mDNS for both IPv4 and IPv6. Add mDNS port 5353 to the allowed UDP ports in the firewall to ensure network discovery.
59 lines
1.5 KiB
Nix
59 lines
1.5 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
|
|
];
|
|
|
|
services.avahi = {
|
|
enable = true;
|
|
nssmdns4 = true;
|
|
nssmdns6 = true;
|
|
ipv6 = true;
|
|
ipv4 = true;
|
|
};
|
|
|
|
networking.firewall.allowedUDPPorts = [ 5353 ];
|
|
|
|
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 = "w283h425";
|
|
# StpFullBleed = "True";
|
|
MediaType = "PhotoPlusGloss2";
|
|
ColorModel = "CMYK";
|
|
StpColorCorrection = "Accurate";
|
|
StpColorPrecision = "Best";
|
|
StpInkType = "CMYKk";
|
|
StpImageType = "Photo";
|
|
StpDitherAlgorithm = "Adaptive";
|
|
};
|
|
}
|
|
];
|
|
};
|
|
}
|