dotfiles/nixos/modules/printing.nix
2024-11-03 17:51:58 -06:00

37 lines
804 B
Nix
Executable file

{flake, ...}: let
inherit (flake.config.system.device) printer0 printer1;
genericPPD = "drv:///sample.drv/generic.ppd";
pageSize = "Letter";
in {
hardware.printers = {
ensurePrinters = [
{
name = printer0.label;
location = "Downstairs";
deviceUri = "https://${printer0.ip.address0}";
model = genericPPD;
ppdOptions = {
PageSize = pageSize;
};
}
{
name = printer1.label;
location = "Upstairs";
deviceUri = "https://${printer1.ip.address0}";
model = genericPPD;
ppdOptions = {
PageSize = pageSize;
};
}
];
ensureDefaultPrinter = printer1.label;
};
networking = {
firewall = {
allowedTCPPorts = [
631
];
};
};
}