summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD39
-rw-r--r--sane-epson-perfection-firmware.install13
3 files changed, 73 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..1f4449299935
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,21 @@
+pkgbase = sane-epson-perfection-firmware
+ pkgdesc = Firmware binaries for Epson Perfection 1670/2480/2580/3490/3590
+ pkgver = 1.0
+ pkgrel = 1
+ url = http://www.epson.com/cgi-bin/Store/support/SupportIndex.jsp
+ install = sane-epson-perfection-firmware.install
+ arch = any
+ license = Copyright© 2000 - 2016 Epson America, Inc.
+ makedepends = cabextract
+ optdepends = sane: scanner backend
+ noextract = epson12204.exe
+ noextract = epson13829.exe
+ options = !strip
+ options = staticlibs
+ source = https://ftp.epson.com/drivers/epson12204.exe
+ source = https://ftp.epson.com/drivers/epson13829.exe
+ sha512sums = ed7ebb87ecb1d5fffa516c119e71b540a2490d81604e18e721026f81f83a824b8c6224c03ae9f9dc618e10180f3d4734dad5f05f3444a61cfac6342b29694fda
+ sha512sums = e4ac06cfd8f982758e690ee96f34b6e9d5f5fd6a15d70b7f60bef87d5f8afdc9ca825afed6e7aa106ee172afade0b1b1e5f2f779dd8828778ff6b380389f2a7f
+
+pkgname = sane-epson-perfection-firmware
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..fb10ed901015
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,39 @@
+# Maintainer: NicoHood <aur {at} nicohood {dot} de>
+
+pkgname=sane-epson-perfection-firmware
+pkgver=1.0
+pkgrel=1
+pkgdesc="Firmware binaries for Epson Perfection 1670/2480/2580/3490/3590"
+arch=('any')
+url="http://www.epson.com/cgi-bin/Store/support/SupportIndex.jsp"
+license=('Copyright© 2000 - 2016 Epson America, Inc.')
+depends=('')
+makedepends=('cabextract')
+optdepends=('sane: scanner backend')
+options=(!strip staticlibs)
+install="sane-epson-perfection-firmware.install"
+source=( #"https://ftp.epson.com/drivers/epson12699.exe" # 1670 - esfw30.bin (checksum differs from download below)
+ "https://ftp.epson.com/drivers/epson12204.exe" # 2480/2580/(1670) - esfw41.bin, (esfw30.bin)
+ "https://ftp.epson.com/drivers/epson13829.exe" # 3490/3590 - esfw52.bin
+ )
+# Alternative firmware sources:
+# Installation cd
+# https://wiki.ubuntuusers.de/Scanner/Epson_Perfection/
+# https://wiki.ubuntuusers.de/Scanner/Epson_Perfection/esfw30.bin/
+# http://esupport.epson-europe.com/SupportHome.aspx
+noextract=("${source[@]##*/}")
+sha512sums=('ed7ebb87ecb1d5fffa516c119e71b540a2490d81604e18e721026f81f83a824b8c6224c03ae9f9dc618e10180f3d4734dad5f05f3444a61cfac6342b29694fda'
+ 'e4ac06cfd8f982758e690ee96f34b6e9d5f5fd6a15d70b7f60bef87d5f8afdc9ca825afed6e7aa106ee172afade0b1b1e5f2f779dd8828778ff6b380389f2a7f')
+
+prepare() {
+ # Extract all firmware binaries from .cab sources
+ for file in "${source[@]##*/}"
+ do
+ bsdtar xf "${file}" ModUsd.cab
+ cabextract ModUsd.cab -F "esfw*.bin" -L
+ done
+}
+
+package() {
+ install -Dm644 -t "${pkgdir}/usr/share/sane/snapscan/" ${srcdir}/esfw*.bin
+}
diff --git a/sane-epson-perfection-firmware.install b/sane-epson-perfection-firmware.install
new file mode 100644
index 000000000000..7de4bb4388da
--- /dev/null
+++ b/sane-epson-perfection-firmware.install
@@ -0,0 +1,13 @@
+post_install() {
+ echo "Warning! Firmware binaries are NOT tested for Epson Perfection 1670/2480/2580/3490!"
+ echo "Tested binaries: Epson Perfection 3590 - 2016-08-20 NicoHood"
+ echo "Please report any information if the binary works. Use at your own risk!"
+ echo ""
+ echo "Add the desired firmware binary to /etc/sane.d/snapscan.conf"
+ echo "Epson Perfection 1670: 'firmware /usr/share/sane/snapscan/esfw30.bin'"
+ echo "Epson Perfection 2480: 'firmware /usr/share/sane/snapscan/esfw41.bin'"
+ echo "Epson Perfection 2580: 'firmware /usr/share/sane/snapscan/esfw41.bin'"
+ echo "Epson Perfection 3490: 'firmware /usr/share/sane/snapscan/esfw52.bin'"
+ echo "Epson Perfection 3950: 'firmware /usr/share/sane/snapscan/esfw52.bin'"
+ echo "Also check https://wiki.archlinux.org/index.php/SANE/Scanner-specific_problems#Epson"
+}