Skip to content

Commit

Permalink
epkowa: update (NixOS#68225)
Browse files Browse the repository at this point in the history
(cherry picked from commit 8772a1d)
  • Loading branch information
symphorien authored and dtzWill committed Oct 2, 2019
1 parent 22b5313 commit 4771f96
Showing 1 changed file with 31 additions and 56 deletions.
87 changes: 31 additions & 56 deletions pkgs/misc/drivers/epkowa/default.nix
Expand Up @@ -27,29 +27,22 @@ in
let plugins = {
v330 = stdenv.mkDerivation rec {
name = "iscan-v330-bundle";
version = "1.0.1";
pluginVersion = "0.2.0";
version = "2.30.4";

src = fetchurl {
url = "https://download2.ebz.epson.net/iscan/plugin/perfection-v330/rpm/x64/iscan-perfection-v330-bundle-${version}.x64.rpm.tar.gz";
sha256 = "f6fa455f04cdfbc3d38526573260746e9546830de93ba182d0365f557d2f7df9";
sha256 = "16iq5gmfcgkvcx5hixggxgb8lwin5gjdhnq0zabgpfqg11n2w21q";
};

buildInputs = [ patchelf rpm ];
nativeBuildInputs = [ autoPatchelfHook rpm ];

installPhase = ''
${rpm}/bin/rpm2cpio "plugins/esci-interpreter-perfection-v330-${pluginVersion}-1.x86_64.rpm" | ${cpio}/bin/cpio -idmv
${rpm}/bin/rpm2cpio plugins/esci-interpreter-perfection-v330-*.x86_64.rpm | ${cpio}/bin/cpio -idmv
mkdir $out{,/share,/lib}
cp -r ./usr/share/{iscan-data,esci}/ $out/share/
cp -r ./usr/lib64/esci $out/lib
'';

preFixup = ''
lib=$out/lib/esci/libesci-interpreter-perfection-v330.so
rpath=${gcc.cc.lib}/lib/
patchelf --set-rpath $rpath $lib
'';

passthru = {
registrationCommand = ''
$registry --add interpreter usb 0x04b8 0x0142 "$plugin/lib/esci/libesci-interpreter-perfection-v330 $plugin/share/esci/esfwad.bin"
Expand All @@ -60,28 +53,22 @@ let plugins = {
};
x770 = stdenv.mkDerivation rec {
pname = "iscan-gt-x770-bundle";
version = "1.0.1";
pluginVersion = "2.1.2-1";
version = "2.30.4";

nativeBuildInputs = [ patchelf rpm ];
nativeBuildInputs = [ autoPatchelfHook rpm ];
src = fetchurl {
url = "https://download2.ebz.epson.net/iscan/plugin/gt-x770/rpm/x64/iscan-gt-x770-bundle-${version}.x64.rpm.tar.gz";
sha256 = "0m9c60rszzdvq1pqfzygzzrjycm1giy465lj29108j7hsnfcv56r";
sha256 = "1cz4z3wz216s77z185m665jcgdslil5gn4dsi118nv1fm17z3jik";
};
installPhase = ''
cd plugins
${rpm}/bin/rpm2cpio iscan-plugin-gt-x770-${pluginVersion}.x86_64.rpm | ${cpio}/bin/cpio -idmv
${rpm}/bin/rpm2cpio iscan-plugin-gt-x770-*.x86_64.rpm | ${cpio}/bin/cpio -idmv
mkdir $out
cp -r usr/share $out
cp -r usr/lib64 $out/lib
mv $out/share/iscan $out/share/esci
mv $out/lib/iscan $out/lib/esci
'';
preFixup = ''
lib=$out/lib/esci/libesint7C.so
rpath=${gcc.cc.lib}/lib/
patchelf --set-rpath $rpath $lib
'';
passthru = {
registrationCommand = ''
$registry --add interpreter usb 0x04b8 0x0130 "$plugin/lib/esci/libesint7C $plugin/share/esci/esfw7C.bin"
Expand All @@ -92,26 +79,22 @@ let plugins = {
};
f720 = stdenv.mkDerivation rec {
pname = "iscan-gt-f720-bundle";
version = "1.0.1";
pluginVersion = "0.1.1-2";
version = "2.30.4";

buildInputs = [ patchelf ];
nativeBuildInputs= [ autoPatchelfHook ];
buildInputs = [ gcc.cc.lib ];
src = fetchurl {
url = "https://download2.ebz.epson.net/iscan/plugin/gt-f720/rpm/x64/iscan-gt-f720-bundle-${version}.x64.rpm.tar.gz";
sha256 = "0dvikq5ad6wid3lxw1amar8lsbr50g39g6zlmcjxdcsg0wb1qspp";
sha256 = "12rivh00n9mhagy5yjl1m0bv7ypbig6brqkxm0a12xy0mjq7yv8y";
};
installPhase = ''
cd plugins
${rpm}/bin/rpm2cpio esci-interpreter-gt-f720-${pluginVersion}.x86_64.rpm | ${cpio}/bin/cpio -idmv
${rpm}/bin/rpm2cpio esci-interpreter-gt-f720-*.x86_64.rpm | ${cpio}/bin/cpio -idmv
mkdir $out
cp -r usr/share $out
cp -r usr/lib64 $out/lib
'';
preFixup = ''
lib=$out/lib/esci/libesci-interpreter-gt-f720.so
rpath=${gcc.cc.lib}/lib/
patchelf --set-rpath $rpath $lib
'';

passthru = {
registrationCommand = ''
$registry --add interpreter usb 0x04b8 0x0131 "$plugin/lib/esci/libesci-interpreter-gt-f720 $plugin/share/esci/esfw8b.bin"
Expand All @@ -123,32 +106,24 @@ let plugins = {
};
s80 = stdenv.mkDerivation rec {
pname = "iscan-gt-s80-bundle";
version = "1.0.1";
esciPluginVersion = "0.2.1-1";
esdipPluginVersion = "1.0.0-5";
version = "2.30.4";

buildInputs = [ patchelf ];
nativeBuildInputs = [ autoPatchelfHook ];
buildInputs = [ gcc.cc.lib libtool ];
src = fetchurl {
url = "https://download2.ebz.epson.net/iscan/plugin/gt-s80/rpm/x64/iscan-gt-s80-bundle-${version}.x64.rpm.tar.gz";
sha256 = "14j11znx5ga2ykpyg6kjg7lbrddyr9pwxrsa82dmdishd1j7zji9";
sha256 = "1ran75zsxcdci00jakngkz6p9lj4q483hjapmf80p68rzhpmdr5y";
};
installPhase = ''
cd plugins
${rpm}/bin/rpm2cpio esci-interpreter-gt-s80-${esciPluginVersion}.x86_64.rpm | ${cpio}/bin/cpio -idmv
${rpm}/bin/rpm2cpio iscan-plugin-esdip-${esdipPluginVersion}.ltdl7.x86_64.rpm | ${cpio}/bin/cpio -idmv
${rpm}/bin/rpm2cpio esci-interpreter-gt-s80-*.x86_64.rpm | ${cpio}/bin/cpio -idmv
${rpm}/bin/rpm2cpio iscan-plugin-esdip-*.x86_64.rpm | ${cpio}/bin/cpio -idmv
mkdir $out
cp -r usr/share $out
cp -r usr/lib64 $out/lib
mkdir $out/share/esci
'';
preFixup = ''
rpath=${gcc.cc.lib}/lib/
patchelf --set-rpath $rpath $out/lib/esci/libesci-interpreter-gt-s80.so
patchelf --set-rpath $rpath $out/lib/esci/libesci-interpreter-gt-s50.so
patchelf --set-rpath $rpath $out/lib/iscan/esdip
patchelf --set-rpath $rpath $out/lib/iscan/libesdtr.so.0
patchelf --set-rpath $rpath $out/lib/iscan/libesdtr2.so.0
'';

passthru = {
registrationCommand = ''
$registry --add interpreter usb 0x04b8 0x0136 "$plugin/lib/esci/libesci-interpreter-gt-s80.so"
Expand All @@ -163,19 +138,19 @@ let plugins = {
};
network = stdenv.mkDerivation rec {
pname = "iscan-nt-bundle";
version = "1.0.0";
ntPluginVersion = "1.1.1-1";
# for the version, look for the driver of XP-750 in the search page
version = "2.30.4";

buildInputs = [ stdenv.cc.cc.lib ];
nativeBuildInputs = [ autoPatchelfHook ];

src = fetchurl {
url = "https://download2.ebz.epson.net/iscan/general/rpm/x64/iscan-bundle-${version}.x64.rpm.tar.gz";
sha256 = "1k3dmv4ml21k6mafvcvgfymb1acpcdxpvyrbfh2yf07jzmn5if4f";
sha256 = "1l0y4dy88y91jdq66pxrxqmiwsxwy0rd7x4bh0cw08r4iyhjqprz";
};
installPhase = ''
cd plugins
${rpm}/bin/rpm2cpio iscan-network-nt-${ntPluginVersion}.x86_64.rpm | ${cpio}/bin/cpio -idmv
${rpm}/bin/rpm2cpio iscan-network-nt-*.x86_64.rpm | ${cpio}/bin/cpio -idmv
mkdir $out
cp -r usr/share $out
Expand All @@ -200,12 +175,12 @@ let fwdir = symlinkJoin {
};
in
let iscan-data = stdenv.mkDerivation rec {
name = "iscan-data-${version}";
version = "1.39.0-1";
pname = "iscan-data";
version = "1.39.1-2";

src = fetchurl {
url = "http://support.epson.net/linux/src/scanner/iscan/iscan-data_${version}.tar.gz";
sha256 = "0pvm67gqyvzhnv5qyfbaz802l4sbgvaf0zb8wz60k1wcasb99vv1";
sha256 = "04zrvbnxf1k6zinrd13hwnbzscc3qhmwlvx3k2jhjys2lginw7w4";
};

buildInputs = [
Expand All @@ -216,12 +191,12 @@ let iscan-data = stdenv.mkDerivation rec {
};
in
stdenv.mkDerivation rec {
name = "iscan-${version}";
version = "2.30.3-1";
pname = "iscan";
version = "2.30.4-2";

src = fetchurl {
url = "http://support.epson.net/linux/src/scanner/iscan/iscan_${version}.tar.gz";
sha256 = "0ryy946h7ddmxh866hfszqfyff1qy4svpsk7w3739v75f4awr9li";
sha256 = "1ma76jj0k3bz0fy06fiyl4di4y77rcryb0mwjmzs5ms2vq9rjysr";
};

nativeBuildInputs = [ pkgconfig ];
Expand Down

0 comments on commit 4771f96

Please sign in to comment.