summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-gfx/iscan-plugin-perfection-v370/iscan-plugin-perfection-v370-1.0.0.2.ebuild')
-rw-r--r--media-gfx/iscan-plugin-perfection-v370/iscan-plugin-perfection-v370-1.0.0.2.ebuild94
1 files changed, 94 insertions, 0 deletions
diff --git a/media-gfx/iscan-plugin-perfection-v370/iscan-plugin-perfection-v370-1.0.0.2.ebuild b/media-gfx/iscan-plugin-perfection-v370/iscan-plugin-perfection-v370-1.0.0.2.ebuild
new file mode 100644
index 000000000000..ba6803d81669
--- /dev/null
+++ b/media-gfx/iscan-plugin-perfection-v370/iscan-plugin-perfection-v370-1.0.0.2.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit rpm versionator multilib
+
+MY_PV="$(get_version_component_range 1-3)"
+MY_PVR="$(replace_version_separator 3 -)"
+
+SCANNER="Perfection V370"
+FIRMWARE="esfwdd.bin"
+
+DESCRIPTION="Epson ${SCANNER} and similar scanner plugin for SANE 'epkowa' backend"
+HOMEPAGE="http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX"
+SRC_URI="amd64? ( http://dev.gentoo.org/~flameeyes/avasys/${PN}-${MY_PVR}.x86_64.rpm )
+ x86? ( http://dev.gentoo.org/~flameeyes/avasys/${PN}-${MY_PVR}.i386.rpm )"
+
+LICENSE="AVASYS"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86"
+
+IUSE=""
+
+DEPEND=">=media-gfx/iscan-2.21.0"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}"
+
+QA_PREBUILT="/opt/iscan/lib/*"
+
+src_configure() { :; }
+src_compile() { :; }
+
+src_install() {
+ # install scanner firmware
+ insinto /usr/share/iscan
+ doins "${WORKDIR}"/usr/share/iscan/*
+
+ dodoc usr/share/doc/*/*
+
+ # install scanner plugins
+ exeinto /opt/iscan/lib
+ doexe "${WORKDIR}/usr/$(get_libdir)/iscan/"*
+}
+
+pkg_setup() {
+ basecmds=(
+ "iscan-registry --COMMAND interpreter usb 0x04b8 0x014a /opt/iscan/lib/libiscan-plugin-perfection-v370 /usr/share/iscan/${FIRMWARE}"
+ )
+}
+
+pkg_postinst() {
+ elog
+ elog "Firmware file ${FIRMWARE} for ${SCANNER}"
+ elog "has been installed in /usr/share/iscan."
+ elog
+
+ # Only register scanner on new installs
+ [[ -n ${REPLACING_VERSIONS} ]] && return
+
+ # Needed for scanner to work properly.
+ if [[ ${ROOT} == "/" ]]; then
+ for basecmd in "${basecmds[@]}"; do
+ eval ${basecmd/COMMAND/add}
+ done
+ elog "New firmware has been registered automatically."
+ elog
+ else
+ ewarn "Unable to register the plugin and firmware when installing outside of /."
+ ewarn "execute the following command yourself:"
+ for basecmd in "${basecmds[@]}"; do
+ ewarn "${basecmd/COMMAND/add}"
+ done
+ fi
+}
+
+pkg_prerm() {
+ # Only unregister on on uninstall
+ [[ -n ${REPLACED_BY_VERSION} ]] && return
+
+ if [[ ${ROOT} == "/" ]]; then
+ for basecmd in "${basecmds[@]}"; do
+ eval ${basecmd/COMMAND/remove}
+ done
+ else
+ ewarn "Unable to register the plugin and firmware when installing outside of /."
+ ewarn "execute the following command yourself:"
+ for basecmd in "${basecmds[@]}"; do
+ ewarn "${basecmd/COMMAND/remove}"
+ done
+ fi
+}