diff options
author | Jörg Thalheim <Mic92@users.noreply.github.com> | 2019-01-14 11:02:02 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-14 11:02:02 +0000 |
commit | ff0dc34c1d36c53049a833c3e86806c846deccdb (patch) | |
tree | 9b623e7d2e885b924a9d47b704131753b8b6bb25 /pkgs/misc | |
parent | 7f6ca93029f4f43262144bd730d487c2564ae1b6 (diff) | |
parent | e0809da91bae49b8bb560eaffc2b9e906c1a69b4 (diff) |
Merge pull request #48752 from jorsn/new.epson-workforce-635-nx625-series
epson-workforce-635-nx625-series: init at 1.0.1
Diffstat (limited to 'pkgs/misc')
-rw-r--r-- | pkgs/misc/drivers/epson-workforce-635-nx625-series/default.nix | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/pkgs/misc/drivers/epson-workforce-635-nx625-series/default.nix b/pkgs/misc/drivers/epson-workforce-635-nx625-series/default.nix new file mode 100644 index 0000000000000..15a7ba3cd3c48 --- /dev/null +++ b/pkgs/misc/drivers/epson-workforce-635-nx625-series/default.nix @@ -0,0 +1,98 @@ +{ + autoreconfHook, cups, gzip, libjpeg, rpmextract, + fetchurl, lib, stdenv +}: + +let + srcdirs = { + filter = "epson-inkjet-printer-filter-1.0.0"; + driver = "epson-inkjet-printer-workforce-635-nx625-series-1.0.1"; + }; +in stdenv.mkDerivation rec { + name = "epson-inkjet-printer-workforce-635-nx625-series"; + version = "1.0.1"; + + src = fetchurl { + url = "https://download.ebz.epson.net/dsc/op/stable/SRPMS/${name}-${version}-1lsb3.2.src.rpm"; + sha256 = "19nb2h0y9rvv6rg7j262f8sqap9kjvz8kmisxnjg1w0v19zb9zf2"; + }; + sourceRoot = srcdirs.filter; + + nativeBuildInputs = [ autoreconfHook gzip rpmextract ]; + buildInputs = [ cups libjpeg ]; + + unpackPhase = '' + rpmextract "$src" + for i in ${lib.concatStringsSep " " (builtins.attrValues srcdirs)}; do + tar xvf "$i".tar.gz + done + ''; + + preConfigure = '' + chmod u+x configure + ''; + + installPhase = + let + filterdir = "$out/cups/lib/filter"; + docdir = "$out/share/doc"; + ppddir = "$out/share/cups/model/${name}"; + libdir = + if stdenv.system == "x86_64-linux" then "lib64" + else if stdenv.system == "i686_linux" then "lib" + else throw "other platforms than i686_linux and x86_64-linux are not yet supported"; + in '' + mkdir -p "$out" "${docdir}" "${filterdir}" "${ppddir}" + cp src/epson_inkjet_printer_filter "${filterdir}" + + cd ../${srcdirs.driver} + for ppd in ppds/*; do + substituteInPlace "$ppd" --replace '/opt/${name}' "$out" + gzip -c "$ppd" > "${ppddir}/''${ppd#*/}" + done + cp COPYING.EPSON README "${docdir}" + cp -r resource watermark ${libdir} "$out" + ''; + + meta = { + description = "Proprietary CUPS drivers for Epson inkjet printers"; + longDescription = '' + This software is a filter program used with Common UNIX Printing + System (CUPS) from the Linux. This can supply the high quality print + with Seiko Epson Color Ink Jet Printers. + + This printer driver is supporting the following printers. + + WorkForce 60 + WorkForce 625 + WorkForce 630 + WorkForce 633 + WorkForce 635 + WorkForce T42WD + Epson Stylus NX625 + Epson Stylus SX525WD + Epson Stylus SX620FW + Epson Stylus TX560WD + Epson Stylus Office B42WD + Epson Stylus Office BX525WD + Epson Stylus Office BX625FWD + Epson Stylus Office TX620FWD + Epson ME OFFICE 82WD + Epson ME OFFICE 85ND + Epson ME OFFICE 900WD + Epson ME OFFICE 960FWD + + License: LGPL and SEIKO EPSON CORPORATION SOFTWARE LICENSE AGREEMENT + + To use the driver adjust your configuration.nix file: + services.printing = { + enable = true; + drivers = [ pkgs.${name} ]; + }; + ''; + downloadPage = https://download.ebz.epson.net/dsc/du/02/DriverDownloadInfo.do?LG2=EN&CN2=&DSCMI=16857&DSCCHK=4334d3487503d7f916ccf5d58071b05b7687294f; + license = with lib.licenses; [ lgpl21 epson ]; + maintainers = [ lib.maintainers.jorsn ]; + platforms = [ "x86_64-linux" "i686-linux" ]; + }; +} |