50 lines
1.1 KiB
Nix
50 lines
1.1 KiB
Nix
|
with import <stockholm/lib>;
|
||
|
{ config, pkgs, ... }: {
|
||
|
|
||
|
imports = [
|
||
|
<nixpkgs/nixos/modules/services/hardware/sane_extra_backends/brscan4.nix>
|
||
|
];
|
||
|
|
||
|
krebs.nixpkgs.allowUnfreePredicate = pkg: any (flip hasPrefix pkg.name) [
|
||
|
"brother-udev-rule-type1-"
|
||
|
"brscan4-"
|
||
|
"mfcl2700dnlpr-"
|
||
|
];
|
||
|
|
||
|
hardware.sane = {
|
||
|
enable = true;
|
||
|
brscan4 = {
|
||
|
enable = true;
|
||
|
netDevices = {
|
||
|
bra = {
|
||
|
model = "MFCL2700DN";
|
||
|
ip = "10.23.1.214";
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
|
||
|
services.saned.enable = true;
|
||
|
|
||
|
# usage: scanimage -d "$(find-scanner bra)" --batch --format=tiff --resolution 150 -x 211 -y 298
|
||
|
environment.systemPackages = [
|
||
|
(pkgs.writeDashBin "find-scanner" ''
|
||
|
set -efu
|
||
|
name=$1
|
||
|
${pkgs.sane-backends}/bin/scanimage -f '%m %d
|
||
|
' \
|
||
|
| ${pkgs.gawk}/bin/awk -v dev="*$name" '$1 == dev { print $2; exit }' \
|
||
|
| ${pkgs.gnugrep}/bin/grep .
|
||
|
'')
|
||
|
];
|
||
|
|
||
|
services.printing = {
|
||
|
enable = true;
|
||
|
drivers = [
|
||
|
pkgs.mfcl2700dncupswrapper
|
||
|
];
|
||
|
};
|
||
|
|
||
|
systemd.services.cups.serviceConfig.PrivateTmp = true;
|
||
|
}
|