diff options
Diffstat (limited to 'pkgs/misc/drivers/utsushi/default.nix')
-rw-r--r-- | pkgs/misc/drivers/utsushi/default.nix | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/pkgs/misc/drivers/utsushi/default.nix b/pkgs/misc/drivers/utsushi/default.nix new file mode 100644 index 0000000000000..328e8ce456250 --- /dev/null +++ b/pkgs/misc/drivers/utsushi/default.nix @@ -0,0 +1,154 @@ +{ stdenv, fetchurl, autoreconfHook, boost, gtkmm2 +, pkg-config, libtool, udev, libjpeg, file, texlive +, libusb, libtiff, imagemagick, sane-backends, tesseract }: + +/* +Alternatively, this package could use the "community source" at +https://gitlab.com/utsushi/utsushi/ +Epson provides proprietary plugins for networking, ocr and some more +scanner models. Those are not (yet ?) packaged here. +*/ + +stdenv.mkDerivation rec { + pname = "utsushi"; + version = "3.57.0"; + + src = fetchurl { + url = "http://support.epson.net/linux/src/scanner/imagescanv3/common/imagescan_${version}.orig.tar.gz"; + sha256 = "0qy6n6nbisbvy0q3idj7hpmj9i85cd0a18klfd8nsqsa2nkg57ny"; + }; + + nativeBuildInputs = [ + pkg-config + autoreconfHook + libtool + ]; + + buildInputs = [ + boost + libusb + libtiff + libjpeg + udev + imagemagick + sane-backends + gtkmm2 + file + tesseract + ]; + + patches = [ + ./patches/absolute-path-to-convert.patch + ./patches/print-errors.patch + ./patches/absolute_path_for_tesseract.patch + ]; + + postPatch = '' + # remove vendored dependencies + rm -r upstream/boost + # create fake udev and sane config + mkdir -p $out/etc/{sane.d,udev/rules.d} + touch $out/etc/sane.d/dll.conf + ''; + + configureFlags = [ + "--with-boost-libdir=${boost}/lib" + "--with-sane-confdir=${placeholder "out"}/etc/sane.d" + "--with-udev-confdir=${placeholder "out"}/etc/udev" + "--with-sane" + "--with-gtkmm" + "--with-jpeg" + "--with-magick" + "--with-sane" + "--with-tiff" + ]; + + installFlags = [ "SANE_BACKENDDIR=${placeholder "out"}/lib/sane" ]; + + enableParallelBuilding = true; + + meta = { + description = "SANE utsushi backend for some Epson scanners"; + longDescription = '' + ImageScanV3 (aka utsushi) scanner driver. + Non-free plugins are not included so no network support. + To use the SANE backend, in /etc/nixos/configuration.nix: + + hardware.sane = { + enable = true; + extraBackends = [ pkgs.utsushi ]; + }; + services.udev.packages = [ pkgs.utsushi ]; + + Supported hardware: + - DS-40 + - DS-70 + - DS-80W + - DS-410 + - DS-510 + - DS-520 + - DS-530 + - DS-535 + - DS-535H + - DS-560 + - DS-575W + - DS-760 + - DS-775 + - DS-780N + - DS-860 + - DS-1630 + - DS-5500 + - DS-6500 + - DS-7500 + - DS-50000 + - DS-60000 + - DS-70000 + - EP-10VA Series + - EP-808A Series + - EP-978A3 Series + - ES-50 + - ES-55R + - ES-60W + - ES-65WR + - ES-300WR + - ES-400 + - ES-500WR + - ES-8500 + - ET-2500 Series + - ET-2550 Series + - ET-4500 Series + - ET-4550 Series + - Expression 1640XL + - FF-680W + - L220/L360 Series + - L365/L366 Series + - L380 Series + - L455 Series + - L565/L566 Series + - L655 Series + - PX-M840FX + - PX-M860F + - PX-M884F + - PX-M7050 Series + - PX-M7050FX Series + - WF-4720 + - WF-6530 Series + - WF-6590 Series + - WF-8510/8590 Series + - WF-R8590 Series + - XP-220 Series + - XP-230 Series + - XP-235 Series + - XP-332 335 Series + - XP-430 Series + - XP-432 435 Series + - XP-530 Series + - XP-540 + - XP-630 Series + - XP-640 + - XP-830 Series + - XP-960 Series + ''; + license = stdenv.lib.licenses.gpl3Plus; + }; +} |