# CUPS and SANE configuration
{ config, pkgs, lib, ... }: {
  # Enable CUPS with Zeroconf
  services.printing = {
    enable = true;
    drivers = with pkgs; [ hplip ];
    browsing = true;
    listenAddresses = [ "0.0.0.0:631" ];
    defaultShared = true;
  };

  # Enable SANE
  hardware.sane = {
    enable = true;
    extraBackends = with pkgs; [ hplip ];
  };

  # Allow scanning over LAN and VPN
  services.saned = {
    enable = true;
    extraConfig = ''
      192.168.1.0/24
      10.8.0.2/32
    '';
  };

  # Give SANE access to the printer
  users.users.scanner = { extraGroups = [ "lp" ]; };

}